summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChet Ramey <chet.ramey@case.edu>2014-02-26 10:31:21 -0500
committerChet Ramey <chet.ramey@case.edu>2014-02-26 10:31:21 -0500
commit7628b745a813aac53586b640da056a975f1c443e (patch)
treef27689da65e9873cd0a77f64f334814989ef5478
parent3fede80c7ae9d396a98137ec8e7188a27c327e96 (diff)
downloadreadline-7628b745a813aac53586b640da056a975f1c443e.tar.gz
Readline-6.3 distribution sources and documentationreadline-6.3
-rw-r--r--CHANGELOG129
-rw-r--r--CHANGES139
-rw-r--r--INSTALL2
-rw-r--r--MANIFEST9
-rw-r--r--Makefile.in54
-rw-r--r--NEWS66
-rw-r--r--README11
-rw-r--r--aclocal.m434
-rw-r--r--bind.c207
-rw-r--r--callback.c44
-rw-r--r--chardefs.h2
-rw-r--r--colors.c251
-rw-r--r--colors.h122
-rw-r--r--complete.c373
-rw-r--r--config.h.in19
-rwxr-xr-xconfigure8163
-rw-r--r--configure.ac303
-rw-r--r--display.c336
-rw-r--r--doc/Makefile.in5
-rw-r--r--doc/history.011
-rw-r--r--doc/history.315
-rw-r--r--doc/history.dvibin86016 -> 85108 bytes
-rw-r--r--doc/history.html8
-rw-r--r--doc/history.info71
-rw-r--r--doc/history.pdfbin158355 -> 88219 bytes
-rw-r--r--doc/history.ps7797
-rw-r--r--doc/history.texi26
-rw-r--r--doc/history_3.ps395
-rw-r--r--doc/hstech.texi4
-rw-r--r--doc/hsuser.texi24
-rw-r--r--doc/readline.0522
-rw-r--r--doc/readline.381
-rw-r--r--doc/readline.dvibin300184 -> 314656 bytes
-rw-r--r--doc/readline.html2146
-rw-r--r--doc/readline.info633
-rw-r--r--doc/readline.pdfbin299675 -> 210088 bytes
-rw-r--r--doc/readline.ps14382
-rw-r--r--doc/readline_3.ps1606
-rw-r--r--doc/rlman.texi27
-rw-r--r--doc/rltech.texi210
-rw-r--r--doc/rluser.texi228
-rw-r--r--doc/rluserman.dvibin102724 -> 105200 bytes
-rw-r--r--doc/rluserman.html468
-rw-r--r--doc/rluserman.info145
-rw-r--r--doc/rluserman.pdfbin172796 -> 105809 bytes
-rw-r--r--doc/rluserman.ps8231
-rw-r--r--doc/rluserman.texi27
-rw-r--r--doc/texinfo.tex2723
-rw-r--r--doc/version.texi12
-rw-r--r--examples/Makefile.in35
-rw-r--r--examples/excallback.c7
-rw-r--r--examples/hist_erasedups.c121
-rw-r--r--examples/hist_purgecmd.c151
-rw-r--r--examples/rl-callbacktest.c87
-rw-r--r--examples/rlfe/config.h.in4
-rwxr-xr-xexamples/rlfe/configure4134
-rw-r--r--examples/rlfe/configure.in6
-rw-r--r--examples/rlfe/os.h6
-rw-r--r--examples/rlfe/rlfe.c9
-rw-r--r--examples/rlptytest.c6
-rw-r--r--funmap.c5
-rw-r--r--histexpand.c70
-rw-r--r--histfile.c62
-rw-r--r--history.c8
-rw-r--r--history.h2
-rw-r--r--input.c53
-rw-r--r--isearch.c128
-rw-r--r--macro.c38
-rw-r--r--mbutil.c11
-rw-r--r--misc.c39
-rw-r--r--nls.c35
-rw-r--r--parse-colors.c440
-rw-r--r--parse-colors.h46
-rw-r--r--posixdir.h14
-rw-r--r--posixjmp.h2
-rw-r--r--readline.c154
-rw-r--r--readline.h36
-rw-r--r--rlconf.h12
-rw-r--r--rldefs.h10
-rw-r--r--rlmbutil.h9
-rw-r--r--rlprivate.h35
-rw-r--r--rlstdc.h12
-rw-r--r--rltty.c10
-rw-r--r--rltypedefs.h14
-rw-r--r--search.c93
-rw-r--r--shell.c48
-rw-r--r--shlib/Makefile.in85
-rw-r--r--signals.c120
-rw-r--r--support/config.guess587
-rw-r--r--support/config.sub332
-rwxr-xr-xsupport/mkdist15
-rwxr-xr-xsupport/shlib-install9
-rw-r--r--support/shobj-conf71
-rw-r--r--terminal.c85
-rw-r--r--text.c7
-rw-r--r--undo.c39
-rw-r--r--util.c83
-rw-r--r--vi_keymap.c1
-rw-r--r--vi_mode.c100
99 files changed, 32892 insertions, 24655 deletions
diff --git a/CHANGELOG b/CHANGELOG
index 5513f12..c7c3077 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1093,3 +1093,132 @@ xfree.c
-----
{examples,shlib}/Makefile.in
- Cygwin-based changes from Eric Blake <eblake@redhat.com>
+
+ 3/26/2011
+ ---------
+Makefile.in
+ - don't ignore failures when building, installing, or cleaning in
+ the shlib subdirectory. Sample patch from Mike Frysinger
+ <vapier@gentoo.org>
+
+shlib/Makefile.in
+ - split the install and uninstall targets into install-supported and
+ install-unsupported targets that depend on the value of
+ SHLIB_STATUS
+
+ 4/2
+ ---
+{,shlib}/Makefile.in
+ - add dependency for callback.o/callback.so on xmalloc.h. From
+ Jan Kratochvil <jan.kratochvil@redhat.com>
+
+{,doc,examples,shlib}/Makefile.in
+ - fix typo: htm target should be html. From Jan Kratochvil
+ <jan.kratochvil@redhat.com>
+ - remove `.' from VPATH. From Jan Kratochvil
+ <jan.kratochvil@redhat.com>
+
+examples/rlfe/configure.in
+ - quote AC_PROGRAM_SOURCE. From Jan Kratochvil
+ <jan.kratochvil@redhat.com>
+
+ 5/17
+ ----
+config.h.in
+ - WCWIDTH_BROKEN: new define, picked up from bash, defined on systems
+ where wcwidth returns 1 for Unicode combining characters
+
+ 11/28
+ -----
+support/shlib-install
+ - make sure solaris2 systems make the installed shared library
+ executable. ldd warns about it otherwise. Bug and fix from
+ Tim Mooney <tim.mooney@ndsu.edu>
+
+examples/hist_erasedups.c
+ - new example program, shows how to erase duplicates from the history
+ list
+
+examples/hist_purgecmd.c
+ - new example program, shows how to remove all entries matching a
+ string or pattern from the history list
+
+ 1/12/2012
+ ---------
+colors.[ch],parse-colors.[ch]}
+ - new files, part of color infrastructure support
+
+Makefile.in,shlib/Makefile.in
+ - arrange to have colors.o and parse-colors.o added to library
+ (static and shared versions)
+
+{configure,config.h}.in
+ - check for stdbool.h, define HAVE_STDBOOL_H if found
+
+rldefs.h
+ - COLOR_SUPPORT: if defined, compile in colors.c and parse-colors.c
+ for color support
+
+ 1/18
+ ----
+
+{configure,config.h}.in
+ - new check: check for AUDIT_USER_TTY defined in <linux/audit.h>,
+ define HAVE_DECL_AUDIT_USER_TTY if both are found
+
+ 8/7
+ ---
+configure.in
+ - AC_CANONICAL_BUILD: call to set the build_xxx variables
+ - use $build_os instead of $host_os to decide when DJGPP should run
+ `pwd.exe' to figure out the build directory. Report and fix from
+ Yao Qi <yao@codesourcery.com>
+
+ 8/29
+ ----
+configure.ac
+ - new name for configure.in
+
+MANIFEST,Makefile.in
+ - configure.in -> configure.ac
+
+ 1/5/2013
+ --------
+configure.ac
+ - move version number up to 6.3
+
+ 1/31
+ ----
+configure.ac
+ - use AC_CHECK_TOOL instead of AC_CHECK_PROG to check for ar, since it
+ will find $host-prefixed versions of utilities. Report and fix from
+ Mike Frysinger <vapier@gentoo.org>
+
+ 3/4
+ ---
+Makefile.in
+ - PACKAGE_TARNAME, docdir: new variables substituted by autoconf
+ - OTHER_DOCS,OTHER_INSTALLED_DOCS: new variables with auxiliary
+ documentation files to be installed into $(docdir)
+ - install: add new rule to install $(OTHER_DOCS)
+ - uninstall: add new rule to uninstall $(docdir)/$(OTHER_INSTALLED_DOCS)
+
+ 4/29
+ ----
+Makefile.in
+ - installdirs: make sure to create $(DESTDIR)$(docdir). Report from
+ <hiroo.hayashi@computer.org>
+
+ 1/27/2014
+ ---------
+Makefile.in
+ - install-examples: should not depend on `shared', since the examples
+ themselves are not built using shared libraries. Report from
+ <hiroo.hayashi@computer.org>
+
+support/shobj-conf
+ - [from bash] darwin: changed the install_name embedded into the
+ shared library to contain only the major version number, not the
+ minor one. The idea is that the minor versions should all be API/ABI
+ compatible, and it is better to link automatically with the latest
+ one. Idea from Max Horn <max@quendi.de>
diff --git a/CHANGES b/CHANGES
index 9d58988..337275d 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1,3 +1,142 @@
+This document details the changes between this version, readline-6.3, and the
+previous version, readline-6.2.
+
+1. Changes to Readline
+
+a. Fixed a bug that did not allow the `dd', `cc', or `yy' vi editing mode
+ commands to work on the entire line.
+
+b. Fixed a bug that caused redisplay problems with prompts longer than 128
+ characters and history searches.
+
+c. Fixed a bug that caused readline to try and run code to modify its idea
+ of the screen size in a signal handler context upon receiving a SIGWINCH.
+
+d. Fixed a bug that caused the `meta' key to be enabled beyond the duration
+ of an individual call top readline().
+
+e. Added a workaround for a wcwidth bug in Mac OS X that caused readline's
+ redisplay to mishandle zero-width combining characters.
+
+f. Fixed a bug that caused readline to `forget' part of a key sequence when
+ a multiple-key sequence caused it to break out of an incremental search.
+
+g. Fixed bugs that caused readline to execute code in a signal handler
+ context if interrupted while reading from the file system during completion.
+
+h. Fixed a bug that caused readline to `forget' part of a key sequence when
+ reading an unbound multi-character key sequence.
+
+i. Fixed a bug that caused Readline's signal handlers to be installed beyond
+ the bounds of a single call to readline().
+
+j. Fixed a bug that caused the `.' command to not redo the most recent `R'
+ command in vi mode.
+
+k. Fixed a bug that caused ignoring case in completion matches to result in
+ readline using the wrong match.
+
+l. Paren matching now works in vi insert mode.
+
+m. Fix menu-completion to make show-all-if-ambiguous and menu-complete-display-prefix
+ work together.
+
+n. Fixed a bug that didn't allow the `cc', `dd', or `yy' commands to be redone
+ in vi editing mode.
+
+o. Fixed a bug that caused the filename comparison code to not compare
+ multibyte characters correctly when using case-sensitive or case-mapping
+ comparisons.
+
+p. Fixed the input reading loop to call the input hook function only when there
+ is no terminal input available.
+
+q. Fixed a bug that caused binding a macro to a multi-character key sequence
+ where the sequence and macro value share a common prefix to not perform
+ the macro replacement.
+
+r. Fixed several redisplay errors with multibyte characters and prompts
+ containing invisible characters when using horizontal scrolling.
+
+s. Fixed a bug that caused redisplay errors when trying to overwrite
+ existing characters using multibyte characters.
+
+t. Fixed a bug in vi mode that caused the arrow keys to set the saved last
+ vi-mode command to the wrong value.
+
+u. Fixed a bug that caused double-quoted strings to be scanned incorrectly
+ when being used as the value of a readline variable assignment.
+
+v. Fixed a bug with vi mode that prevented `.' from repeating a command
+ entered on a previous line (command).
+
+w. Fixed a bug that could cause completion to core dump if it was interrupted
+ by a signal.
+
+x. Fixed a bug that could cause readline to crash and seg fault attempting to
+ expand an empty history entry.
+
+y. Fixed a bug that caused display problems with multi-line prompts containing
+ invisible characters on multiple lines.
+
+z. Fixed a bug that caused effects made by undoing changes to a history line to
+ be discarded.
+
+2. New Features in Readline
+
+a. Readline is now more responsive to SIGHUP and other fatal signals when
+ reading input from the terminal or performing word completion but no
+ longer attempts to run any not-allowable functions from a signal handler
+ context.
+
+b. There are new bindable commands to search the history for the string of
+ characters between the beginning of the line and the point
+ (history-substring-search-forward, history-substring-search-backward)
+
+c. Readline allows quoted strings as the values of variables when setting
+ them with `set'. As a side effect, trailing spaces and tabs are ignored
+ when setting a string variable's value.
+
+d. The history library creates a backup of the history file when writing it
+ and restores the backup on a write error.
+
+e. New application-settable variable: rl_filename_stat_hook: a function called
+ with a filename before using it in a call to stat(2). Bash uses it to
+ expand shell variables so things like $HOME/Downloads have a slash
+ appended.
+
+f. New bindable function `print-last-kbd-macro', prints the most-recently-
+ defined keyboard macro in a reusable format.
+
+g. New user-settable variable `colored-stats', enables use of colored text
+ to denote file types when displaying possible completions (colored analog
+ of visible-stats).
+
+h. New user-settable variable `keyseq-timout', acts as an inter-character
+ timeout when reading input or incremental search strings.
+
+i. New application-callable function: rl_clear_history. Clears the history list
+ and frees all readline-associated private data.
+
+j. New user-settable variable, show-mode-in-prompt, adds a characters to the
+ beginning of the prompt indicating the current editing mode.
+
+k. New application-settable variable: rl_input_available_hook; function to be
+ called when readline needs to check whether there is data available on its
+ input source. The default hook checks rl_instream.
+
+l. Readline calls an application-set event hook (rl_signal_event_hook) after
+ it gets a signal while reading input (read returns -1/EINTR but readline
+ does not handle the signal immediately) to allow the application to handle
+ or otherwise note it. Not currently called for SIGHUP or SIGTERM.
+
+m. If the user-settable variable `history-size' is set to a value less than
+ 0, the history list size is unlimited.
+
+n. When creating shared libraries on Mac OS X, the pathname written into the
+ library (install_name) no longer includes the minor version number.
+
+-------------------------------------------------------------------------------
This document details the changes between this version, readline-6.2,
and the previous version, readline-6.1.
diff --git a/INSTALL b/INSTALL
index a0b0976..7e67623 100644
--- a/INSTALL
+++ b/INSTALL
@@ -1,7 +1,7 @@
Basic Installation
==================
-These are installation instructions for Readline-6.2.
+These are installation instructions for Readline-6.3.
The simplest way to compile readline is:
diff --git a/MANIFEST b/MANIFEST
index 8972bdd..ec98f19 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -18,13 +18,15 @@ USAGE f
aclocal.m4 f
config.h.in f
configure f
-configure.in f
+configure.ac f
Makefile.in f
ansi_stdlib.h f
chardefs.h f
+colors.h f
history.h f
histlib.h f
keymaps.h f
+parse-colors.h f
posixdir.h f
posixjmp.h f
posixselect.h f
@@ -44,6 +46,7 @@ tilde.h f
xmalloc.h f
bind.c f
callback.c f
+colors.c f
compat.c f
complete.c f
display.c f
@@ -58,6 +61,7 @@ mbutil.c f
misc.c f
nls.c f
parens.c f
+parse-colors.c f
readline.c f
rltty.c f
savestring.c f
@@ -113,10 +117,13 @@ examples/rl-fgets.c f
examples/rlcat.c f
examples/rlevent.c f
examples/rltest.c f
+examples/rl-callbacktest.c f
examples/rl.c f
examples/rlptytest.c f
examples/rlversion.c f
examples/histexamp.c f
+examples/hist_erasedups.c f
+examples/hist_purgecmd.c f
examples/Inputrc f
examples/autoconf/BASH_CHECK_LIB_TERMCAP f
examples/autoconf/RL_LIB_READLINE_VERSION f
diff --git a/Makefile.in b/Makefile.in
index de440f4..c0a0f1c 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -26,8 +26,10 @@ PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_VERSION = @PACKAGE_VERSION@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+
srcdir = @srcdir@
-VPATH = .:@srcdir@
+VPATH = @srcdir@
top_srcdir = @top_srcdir@
BUILD_DIR = @BUILD_DIR@
@@ -62,6 +64,8 @@ localedir = @localedir@
infodir = @infodir@
+docdir = @docdir@
+
man3dir = $(mandir)/man3
# Support an alternate destination root directory for package building
@@ -112,7 +116,7 @@ CSOURCES = $(srcdir)/readline.c $(srcdir)/funmap.c $(srcdir)/keymaps.c \
$(srcdir)/histfile.c $(srcdir)/nls.c $(srcdir)/search.c \
$(srcdir)/shell.c $(srcdir)/savestring.c $(srcdir)/tilde.c \
$(srcdir)/text.c $(srcdir)/misc.c $(srcdir)/compat.c \
- $(srcdir)/mbutil.c
+ $(srcdir)/mbutil.c $(srcdir)/xfree.c
# The header files for this library.
HSOURCES = $(srcdir)/readline.h $(srcdir)/rldefs.h $(srcdir)/chardefs.h \
@@ -121,14 +125,17 @@ HSOURCES = $(srcdir)/readline.h $(srcdir)/rldefs.h $(srcdir)/chardefs.h \
$(srcdir)/tilde.h $(srcdir)/rlconf.h $(srcdir)/rltty.h \
$(srcdir)/ansi_stdlib.h $(srcdir)/tcap.h $(srcdir)/rlstdc.h \
$(srcdir)/xmalloc.h $(srcdir)/rlprivate.h $(srcdir)/rlshell.h \
- $(srcdir)/rltypedefs.h $(srcdir)/rlmbutil.h
+ $(srcdir)/rltypedefs.h $(srcdir)/rlmbutil.h \
+ $(srcdir)/colors.h $(srcdir)/parse-colors.h
HISTOBJ = history.o histexpand.o histfile.o histsearch.o shell.o mbutil.o
TILDEOBJ = tilde.o
+COLORSOBJ = colors.o parse-colors.o
OBJECTS = readline.o vi_mode.o funmap.o keymaps.o parens.o search.o \
rltty.o complete.o bind.o isearch.o display.o signals.o \
util.o kill.o undo.o macro.o input.o callback.o terminal.o \
- text.o nls.o misc.o compat.o xfree.o xmalloc.o $(HISTOBJ) $(TILDEOBJ)
+ text.o nls.o misc.o $(HISTOBJ) $(TILDEOBJ) $(COLORSOBJ) \
+ xmalloc.o xfree.o compat.o
# The texinfo files which document this library.
DOCSOURCE = doc/rlman.texinfo doc/rltech.texinfo doc/rluser.texinfo
@@ -144,6 +151,9 @@ CREATED_TAGS = TAGS tags
INSTALLED_HEADERS = readline.h chardefs.h keymaps.h history.h tilde.h \
rlstdc.h rlconf.h rltypedefs.h
+OTHER_DOCS = $(srcdir)/CHANGES $(srcdir)/INSTALL $(srcdir)/README
+OTHER_INSTALLED_DOCS = CHANGES INSTALL README
+
##########################################################################
TARGETS = @STATIC_TARGET@ @SHARED_TARGET@
INSTALL_TARGETS = @STATIC_INSTALL_TARGET@ @SHARED_INSTALL_TARGET@
@@ -193,13 +203,13 @@ stamp-h: config.status $(srcdir)/config.h.in
CONFIG_FILES= CONFIG_HEADERS=config.h ./config.status
echo > $@
-#$(srcdir)/configure: $(srcdir)/configure.in ## Comment-me-out in distribution
+#$(srcdir)/configure: $(srcdir)/configure.ac ## Comment-me-out in distribution
# cd $(srcdir) && autoconf ## Comment-me-out in distribution
shared: force
-test -d shlib || mkdir shlib
- -( cd shlib ; ${MAKE} ${MFLAGS} all )
+ ( cd shlib ; ${MAKE} ${MFLAGS} all )
documentation: force
-test -d doc || mkdir doc
@@ -235,7 +245,7 @@ install-static: installdirs $(STATIC_LIBS) install-headers install-doc install-e
installdirs: $(srcdir)/support/mkinstalldirs
-$(SHELL) $(srcdir)/support/mkinstalldirs $(DESTDIR)$(includedir) \
$(DESTDIR)$(includedir)/readline $(DESTDIR)$(libdir) \
- $(DESTDIR)$(infodir) $(DESTDIR)$(man3dir)
+ $(DESTDIR)$(infodir) $(DESTDIR)$(man3dir) $(DESTDIR)$(docdir)
uninstall: uninstall-headers uninstall-doc uninstall-examples
-test -n "$(DESTDIR)$(libdir)" && cd $(DESTDIR)$(libdir) && \
@@ -243,24 +253,26 @@ uninstall: uninstall-headers uninstall-doc uninstall-examples
-( cd shlib; ${MAKE} ${MFLAGS} DESTDIR=${DESTDIR} uninstall )
install-shared: installdirs install-headers shared install-doc
- -( cd shlib ; ${MAKE} ${MFLAGS} DESTDIR=${DESTDIR} install )
+ ( cd shlib ; ${MAKE} ${MFLAGS} DESTDIR=${DESTDIR} install )
uninstall-shared: maybe-uninstall-headers
-( cd shlib; ${MAKE} ${MFLAGS} DESTDIR=${DESTDIR} uninstall )
-install-examples: installdirs install-headers shared
+install-examples: installdirs install-headers
-( cd examples ; ${MAKE} ${MFLAGS} DESTDIR=${DESTDIR} install )
uninstall-examples: maybe-uninstall-headers
-( cd examples; ${MAKE} ${MFLAGS} DESTDIR=${DESTDIR} uninstall )
install-doc: installdirs
+ $(INSTALL_DATA) $(OTHER_DOCS) $(DESTDIR)$(docdir)
-( if test -d doc ; then \
cd doc && \
${MAKE} ${MFLAGS} infodir=$(infodir) DESTDIR=${DESTDIR} install; \
fi )
uninstall-doc:
+ -( cd $(DESTDIR)$(docdir) && ${RM} ${OTHER_INSTALLED_DOCS} )
-( if test -d doc ; then \
cd doc && \
${MAKE} ${MFLAGS} infodir=$(infodir) DESTDIR=${DESTDIR} uninstall; \
@@ -275,24 +287,24 @@ tags: force
clean: force
$(RM) $(OBJECTS) $(STATIC_LIBS)
$(RM) readline readline.exe
- -( cd shlib && $(MAKE) $(MFLAGS) $@ )
+ ( cd shlib && $(MAKE) $(MFLAGS) $@ )
-( cd doc && $(MAKE) $(MFLAGS) $@ )
-( cd examples && $(MAKE) $(MFLAGS) $@ )
mostlyclean: clean
- -( cd shlib && $(MAKE) $(MFLAGS) $@ )
+ ( cd shlib && $(MAKE) $(MFLAGS) $@ )
-( cd doc && $(MAKE) $(MFLAGS) $@ )
-( cd examples && $(MAKE) $(MFLAGS) $@ )
distclean maintainer-clean: clean
- -( cd shlib && $(MAKE) $(MFLAGS) $@ )
+ ( cd shlib && $(MAKE) $(MFLAGS) $@ )
-( cd doc && $(MAKE) $(MFLAGS) $@ )
-( cd examples && $(MAKE) $(MFLAGS) $@ )
$(RM) Makefile
$(RM) $(CREATED_CONFIGURE)
$(RM) $(CREATED_TAGS)
-info dvi htm pdf ps:
+info dvi html pdf ps:
-( cd doc && $(MAKE) $(MFLAGS) $@ )
install-info:
@@ -416,6 +428,14 @@ xfree.o: ansi_stdlib.h
xmalloc.o: ${BUILD_DIR}/config.h
xmalloc.o: ansi_stdlib.h
+colors.o: ${BUILD_DIR}/config.h colors.h
+colors.o: readline.h keymaps.h rltypedefs.h chardefs.h tilde.h rlstdc.h
+colors.o: rlconf.h
+colors.o: ansi_stdlib.h posixstat.h
+parse-colors.o: ${BUILD_DIR}/config.h colors.h parse-colors.h
+parse-colors.o: rldefs.h rlconf.h
+parse-colors.o: readline.h keymaps.h rltypedefs.h chardefs.h tilde.h rlstdc.h
+
bind.o: rlshell.h
histfile.o: rlshell.h
nls.o: rlshell.h
@@ -445,8 +465,11 @@ text.o: rlprivate.h
undo.o: rlprivate.h
util.o: rlprivate.h
vi_mode.o: rlprivate.h
+colors.o: rlprivate.h
+parse-colors.o: rlprivate.h
bind.o: xmalloc.h
+callback.o: xmalloc.h
complete.o: xmalloc.h
display.o: xmalloc.h
funmap.o: xmalloc.h
@@ -472,6 +495,8 @@ util.o: xmalloc.h
vi_mode.o: xmalloc.h
xfree.o: xmalloc.h
xmalloc.o: xmalloc.h
+colors.o: xmalloc.h
+parse-colors.o: xmalloc.h
complete.o: rlmbutil.h
display.o: rlmbutil.h
@@ -515,6 +540,9 @@ vi_mode.o: $(srcdir)/vi_mode.c
xfree.o: $(srcdir)/xfree.c
xmalloc.o: $(srcdir)/xmalloc.c
+colors.o: $(srcdir)/parse-colors.c
+parse-colors.o: $(srcdir)/parse-colors.c
+
histexpand.o: $(srcdir)/histexpand.c
histfile.o: $(srcdir)/histfile.c
history.o: $(srcdir)/history.c
diff --git a/NEWS b/NEWS
index 0ec6e09..ba5b581 100644
--- a/NEWS
+++ b/NEWS
@@ -1,19 +1,57 @@
-This is a terse description of the new features added to readline-6.2 since
-the release of readline-6.1.
+This is a terse description of the new features added to readline-6.3 since
+the release of readline-6.2.
-a. The history library does not try to write the history filename in the
- current directory if $HOME is unset. This closes a potential security
- problem if the application does not specify a history filename.
+New Features in Readline
-b. New bindable variable `completion-display-width' to set the number of
- columns used when displaying completions.
+a. Readline is now more responsive to SIGHUP and other fatal signals when
+ reading input from the terminal or performing word completion but no
+ longer attempts to run any not-allowable functions from a signal handler
+ context.
-c. New bindable variable `completion-case-map' to cause case-insensitive
- completion to treat `-' and `_' as identical.
+b. There are new bindable commands to search the history for the string of
+ characters between the beginning of the line and the point
+ (history-substring-search-forward, history-substring-search-backward)
-d. There are new bindable vi-mode command names to avoid readline's case-
- insensitive matching not allowing them to be bound separately.
+c. Readline allows quoted strings as the values of variables when setting
+ them with `set'. As a side effect, trailing spaces and tabs are ignored
+ when setting a string variable's value.
-e. New bindable variable `menu-complete-display-prefix' causes the menu
- completion code to display the common prefix of the possible completions
- before cycling through the list, instead of after.
+d. The history library creates a backup of the history file when writing it
+ and restores the backup on a write error.
+
+e. New application-settable variable: rl_filename_stat_hook: a function called
+ with a filename before using it in a call to stat(2). Bash uses it to
+ expand shell variables so things like $HOME/Downloads have a slash
+ appended.
+
+f. New bindable function `print-last-kbd-macro', prints the most-recently-
+ defined keyboard macro in a reusable format.
+
+g. New user-settable variable `colored-stats', enables use of colored text
+ to denote file types when displaying possible completions (colored analog
+ of visible-stats).
+
+h. New user-settable variable `keyseq-timout', acts as an inter-character
+ timeout when reading input or incremental search strings.
+
+i. New application-callable function: rl_clear_history. Clears the history list
+ and frees all readline-associated private data.
+
+j. New user-settable variable, show-mode-in-prompt, adds a characters to the
+ beginning of the prompt indicating the current editing mode.
+
+k. New application-settable variable: rl_input_available_hook; function to be
+ called when readline detects there is data available on its input file
+ descriptor.
+
+l. Readline calls an application-set event hook (rl_event_hook) after it gets
+ a signal while reading input (read returns -1/EINTR but readline does not
+ handle the signal immediately) to allow the application to handle or
+ otherwise note it.
+
+m. If the user-settable variable `history-size' is set to a value less than
+ 0, the history list size is unlimited.
+
+n. New application-settable variable: rl_signal_event_hook; function that is
+ called when readline is reading terminal input and read(2) is interrupted
+ by a signal. Currently not called for SIGHUP or SIGTERM.
diff --git a/README b/README
index bc89f46..8395c34 100644
--- a/README
+++ b/README
@@ -1,7 +1,7 @@
Introduction
============
-This is the Gnu Readline library, version 6.2.
+This is the Gnu Readline library, version 6.3.
The Readline library provides a set of functions for use by applications
that allow users to edit command lines as they are typed in. Both
@@ -159,6 +159,15 @@ Readline library. The texinfo files include both user and
programmer's manuals. HTML versions of the manuals appear in the
`doc' subdirectory as well.
+Usage
+=====
+
+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.
+
Reporting Bugs
==============
diff --git a/aclocal.m4 b/aclocal.m4
index 716a043..a947272 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -1698,7 +1698,6 @@ AC_CHECK_FUNC(mbscmp, AC_DEFINE(HAVE_MBSCMP))
AC_CHECK_FUNC(mbsnrtowcs, AC_DEFINE(HAVE_MBSNRTOWCS))
AC_CHECK_FUNC(mbsrtowcs, AC_DEFINE(HAVE_MBSRTOWCS))
-
AC_REPLACE_FUNCS(mbschr)
AC_CHECK_FUNC(wcrtomb, AC_DEFINE(HAVE_WCRTOMB))
@@ -1763,6 +1762,33 @@ if test $bash_cv_type_wint_t = yes; then
AC_DEFINE(HAVE_WINT_T, 1, [systems should define this type here])
fi
+dnl check for broken wcwidth
+AC_CACHE_CHECK([for wcwidth broken with unicode combining characters],
+bash_cv_wcwidth_broken,
+[AC_TRY_RUN([
+#include <unistd.h>
+#include <stdlib.h>
+#include <stdio.h>
+
+#include <locale.h>
+#include <wchar.h>
+
+main(c, v)
+int c;
+char **v;
+{
+ int w;
+
+ setlocale(LC_ALL, "en_US.UTF-8");
+ w = wcwidth (0x0301);
+ exit (w == 0); /* exit 0 if wcwidth broken */
+}
+],
+bash_cv_wcwidth_broken=yes, bash_cv_wcwdith_broken=no, bash_cv_wcwidth_broken=no)])
+if test "$bash_cv_wcwidth_broken" = yes; then
+ AC_DEFINE(WCWIDTH_BROKEN, 1, [wcwidth is usually not broken])
+fi
+
if test "$am_cv_func_iconv" = yes; then
OLDLIBS="$LIBS"
LIBS="$LIBS $LIBICONV"
@@ -3098,7 +3124,7 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
found_so=
found_a=
if test $use_additional = yes; then
- if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then
+ if test "X$prefer_shared" = "Xyes" && test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then
found_dir="$additional_libdir"
found_so="$additional_libdir/lib$name.$shlibext"
if test -f "$additional_libdir/lib$name.la"; then
@@ -3120,7 +3146,7 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
case "$x" in
-L*)
dir=`echo "X$x" | sed -e 's/^X-L//'`
- if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then
+ if test "X$prefer_shared" = "Xyes" && test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then
found_dir="$dir"
found_so="$dir/lib$name.$shlibext"
if test -f "$dir/lib$name.la"; then
@@ -4123,7 +4149,7 @@ main()
AC_DEFUN(BASH_STRUCT_WEXITSTATUS_OFFSET,
[AC_MSG_CHECKING(for offset of exit status in return status from wait)
AC_CACHE_VAL(bash_cv_wexitstatus_offset,
-[AC_RUN_IFELSE([
+[AC_TRY_RUN([
#include <stdlib.h>
#include <unistd.h>
diff --git a/bind.c b/bind.c
index 59e7964..8acf4ac 100644
--- a/bind.c
+++ b/bind.c
@@ -1,6 +1,6 @@
/* bind.c -- key binding and startup file support for the readline library. */
-/* Copyright (C) 1987-2010 Free Software Foundation, Inc.
+/* Copyright (C) 1987-2012 Free Software Foundation, Inc.
This file is part of the GNU Readline Library (Readline), a library
for reading lines of text with interactive input and history editing.
@@ -72,11 +72,15 @@ extern char *strchr (), *strrchr ();
/* Variables exported by this file. */
Keymap rl_binding_keymap;
+static int _rl_skip_to_delim PARAMS((char *, int, int));
+
static char *_rl_read_file PARAMS((char *, size_t *));
static void _rl_init_file_error PARAMS((const char *));
static int _rl_read_init_file PARAMS((const char *, int));
static int glean_key_from_name PARAMS((char *));
+
static int find_boolean_var PARAMS((const char *));
+static int find_string_var PARAMS((const char *));
static char *_rl_get_string_variable_value PARAMS((const char *));
static int substring_member_of_array PARAMS((const char *, const char * const *));
@@ -567,6 +571,40 @@ rl_translate_keyseq (seq, array, len)
return (0);
}
+static int
+_rl_isescape (c)
+ int c;
+{
+ switch (c)
+ {
+ case '\007':
+ case '\b':
+ case '\f':
+ case '\n':
+ case '\r':
+ case TAB:
+ case 0x0b: return (1);
+ default: return (0);
+ }
+}
+
+static int
+_rl_escchar (c)
+ int c;
+{
+ switch (c)
+ {
+ case '\007': return ('a');
+ case '\b': return ('b');
+ case '\f': return ('f');
+ case '\n': return ('n');
+ case '\r': return ('r');
+ case TAB: return ('t');
+ case 0x0b: return ('v');
+ default: return (c);
+ }
+}
+
char *
rl_untranslate_keyseq (seq)
int seq;
@@ -618,9 +656,10 @@ rl_untranslate_keyseq (seq)
return kseq;
}
-static char *
-_rl_untranslate_macro_value (seq)
+char *
+_rl_untranslate_macro_value (seq, use_escapes)
char *seq;
+ int use_escapes;
{
char *ret, *r, *s;
int c;
@@ -644,9 +683,14 @@ _rl_untranslate_macro_value (seq)
else if (CTRL_CHAR (c))
{
*r++ = '\\';
- *r++ = 'C';
- *r++ = '-';
- c = _rl_to_lower (UNCTRL (c));
+ if (use_escapes && _rl_isescape (c))
+ c = _rl_escchar (c);
+ else
+ {
+ *r++ = 'C';
+ *r++ = '-';
+ c = _rl_to_lower (UNCTRL (c));
+ }
}
else if (c == RUBOUT)
{
@@ -1157,6 +1201,38 @@ handle_parser_directive (statement)
return (1);
}
+/* Start at STRING[START] and look for DELIM. Return I where STRING[I] ==
+ DELIM or STRING[I] == 0. DELIM is usually a double quote. */
+static int
+_rl_skip_to_delim (string, start, delim)
+ char *string;
+ int start, delim;
+{
+ int i, c, passc;
+
+ for (i = start,passc = 0; c = string[i]; i++)
+ {
+ if (passc)
+ {
+ passc = 0;
+ if (c == 0)
+ break;
+ continue;
+ }
+
+ if (c == '\\')
+ {
+ passc = 1;
+ continue;
+ }
+
+ if (c == delim)
+ break;
+ }
+
+ return i;
+}
+
/* Read the binding command from STRING and perform it.
A key binding command looks like: Keyname: function-name\0,
a variable binding command looks like: set variable value.
@@ -1172,7 +1248,7 @@ rl_parse_and_bind (string)
while (string && whitespace (*string))
string++;
- if (!string || !*string || *string == '#')
+ if (string == 0 || *string == 0 || *string == '#')
return 0;
/* If this is a parser directive, act on it. */
@@ -1192,31 +1268,16 @@ rl_parse_and_bind (string)
backslash to quote characters in the key expression. */
if (*string == '"')
{
- int passc = 0;
+ i = _rl_skip_to_delim (string, 1, '"');
- for (i = 1; c = string[i]; i++)
- {
- if (passc)
- {
- passc = 0;
- continue;
- }
-
- if (c == '\\')
- {
- passc++;
- continue;
- }
-
- if (c == '"')
- break;
- }
/* If we didn't find a closing quote, abort the line. */
if (string[i] == '\0')
{
_rl_init_file_error ("no closing `\"' in key binding");
return 1;
}
+ else
+ i++; /* skip past closing double quote */
}
/* Advance to the colon (:) or whitespace which separates the two objects. */
@@ -1236,6 +1297,7 @@ rl_parse_and_bind (string)
if (_rl_stricmp (string, "set") == 0)
{
char *var, *value, *e;
+ int s;
var = string + i;
/* Make VAR point to start of variable name. */
@@ -1243,25 +1305,37 @@ rl_parse_and_bind (string)
/* Make VALUE point to start of value string. */
value = var;
- while (*value && !whitespace (*value)) value++;
+ while (*value && whitespace (*value) == 0) value++;
if (*value)
*value++ = '\0';
while (*value && whitespace (*value)) value++;
- /* Strip trailing whitespace from values to boolean variables. Temp
- fix until I get a real quoted-string parser here. */
- i = find_boolean_var (var);
- if (i >= 0)
+ /* Strip trailing whitespace from values of boolean variables. */
+ if (find_boolean_var (var) >= 0)
{
/* remove trailing whitespace */
+remove_trailing:
e = value + strlen (value) - 1;
while (e >= value && whitespace (*e))
e--;
e++; /* skip back to whitespace or EOS */
+
if (*e && e >= value)
*e = '\0';
}
-
+ else if ((i = find_string_var (var)) >= 0)
+ {
+ /* Allow quoted strings in variable values */
+ if (*value == '"')
+ {
+ i = _rl_skip_to_delim (value, 1, *value);
+ value[i] = '\0';
+ value++; /* skip past the quote */
+ }
+ else
+ goto remove_trailing;
+ }
+
rl_variable_bind (var, value);
return 0;
}
@@ -1282,32 +1356,13 @@ rl_parse_and_bind (string)
the quoted string delimiter, like the shell. */
if (*funname == '\'' || *funname == '"')
{
- int delimiter, passc;
-
- delimiter = string[i++];
- for (passc = 0; c = string[i]; i++)
- {
- if (passc)
- {
- passc = 0;
- continue;
- }
-
- if (c == '\\')
- {
- passc = 1;
- continue;
- }
-
- if (c == delimiter)
- break;
- }
- if (c)
+ i = _rl_skip_to_delim (string, i+1, *funname);
+ if (string[i])
i++;
}
/* Advance to the end of the string. */
- for (; string[i] && !whitespace (string[i]); i++);
+ for (; string[i] && whitespace (string[i]) == 0; i++);
/* No extra whitespace at the end of the string. */
string[i] = '\0';
@@ -1367,7 +1422,7 @@ rl_parse_and_bind (string)
/* Get the actual character we want to deal with. */
kname = strrchr (string, '-');
- if (!kname)
+ if (kname == 0)
kname = string;
else
kname++;
@@ -1423,6 +1478,9 @@ static const struct {
{ "bind-tty-special-chars", &_rl_bind_stty_chars, 0 },
{ "blink-matching-paren", &rl_blink_matching_paren, V_SPECIAL },
{ "byte-oriented", &rl_byte_oriented, 0 },
+#if defined (COLOR_SUPPORT)
+ { "colored-stats", &_rl_colored_stats, 0 },
+#endif
{ "completion-ignore-case", &_rl_completion_case_fold, 0 },
{ "completion-map-case", &_rl_completion_case_map, 0 },
{ "convert-meta", &_rl_convert_meta_chars_to_ascii, 0 },
@@ -1447,6 +1505,7 @@ static const struct {
{ "revert-all-at-newline", &_rl_revert_all_at_newline, 0 },
{ "show-all-if-ambiguous", &_rl_complete_show_all, 0 },
{ "show-all-if-unmodified", &_rl_complete_show_unmodified, 0 },
+ { "show-mode-in-prompt", &_rl_show_mode_in_prompt, 0 },
{ "skip-completed-text", &_rl_skip_completed_text, 0 },
#if defined (VISIBLE_STATS)
{ "visible-stats", &rl_visible_stats, 0 },
@@ -1486,6 +1545,8 @@ hack_special_boolean_var (i)
else
_rl_bell_preference = AUDIBLE_BELL;
}
+ else if (_rl_stricmp (name, "show-mode-in-prompt") == 0)
+ _rl_reset_prompt ();
}
typedef int _rl_sv_func_t PARAMS((const char *));
@@ -1511,6 +1572,7 @@ static int sv_editmode PARAMS((const char *));
static int sv_histsize PARAMS((const char *));
static int sv_isrchterm PARAMS((const char *));
static int sv_keymap PARAMS((const char *));
+static int sv_seqtimeout PARAMS((const char *));
static const struct {
const char * const name;
@@ -1526,6 +1588,7 @@ static const struct {
{ "history-size", V_INT, sv_histsize },
{ "isearch-terminators", V_STRING, sv_isrchterm },
{ "keymap", V_STRING, sv_keymap },
+ { "keyseq-timeout", V_INT, sv_seqtimeout },
{ (char *)NULL, 0, (_rl_sv_func_t *)0 }
};
@@ -1683,13 +1746,17 @@ static int
sv_histsize (value)
const char *value;
{
- int nval = 500;
+ int nval;
+ nval = 500;
if (value && *value)
{
nval = atoi (value);
if (nval < 0)
- return 1;
+ {
+ unstifle_history ();
+ return 0;
+ }
}
stifle_history (nval);
return 0;
@@ -1711,6 +1778,23 @@ sv_keymap (value)
}
static int
+sv_seqtimeout (value)
+ const char *value;
+{
+ int nval;
+
+ nval = 0;
+ if (value && *value)
+ {
+ nval = atoi (value);
+ if (nval < 0)
+ nval = 0;
+ }
+ _rl_keyseq_timeout = nval;
+ return 0;
+}
+
+static int
sv_bell_style (value)
const char *value;
{
@@ -2167,6 +2251,8 @@ rl_function_dumper (print_readably)
}
}
}
+
+ xfree (names);
}
/* Print all of the current functions and their bindings to
@@ -2199,7 +2285,7 @@ _rl_macro_dumper_internal (print_readably, map, prefix)
{
case ISMACR:
keyname = _rl_get_keyname (key);
- out = _rl_untranslate_macro_value ((char *)map[key].function);
+ out = _rl_untranslate_macro_value ((char *)map[key].function, 0);
if (print_readably)
fprintf (rl_outstream, "\"%s%s\": \"%s\"\n", prefix ? prefix : "",
@@ -2311,7 +2397,7 @@ _rl_get_string_variable_value (name)
{
if (_rl_isearch_terminators == 0)
return 0;
- ret = _rl_untranslate_macro_value (_rl_isearch_terminators);
+ ret = _rl_untranslate_macro_value (_rl_isearch_terminators, 0);
if (ret)
{
strncpy (numbuf, ret, sizeof (numbuf) - 1);
@@ -2329,6 +2415,11 @@ _rl_get_string_variable_value (name)
ret = rl_get_keymap_name_from_edit_mode ();
return (ret ? ret : "none");
}
+ else if (_rl_stricmp (name, "keyseq-timeout") == 0)
+ {
+ sprintf (numbuf, "%d", _rl_keyseq_timeout);
+ return (numbuf);
+ }
else
return (0);
}
diff --git a/callback.c b/callback.c
index 7682cd0..6bb2c3e 100644
--- a/callback.c
+++ b/callback.c
@@ -62,8 +62,10 @@ _rl_callback_generic_arg *_rl_callback_data = 0;
whenever a complete line of input is ready. The user must then
call rl_callback_read_char() every time some input is available, and
rl_callback_read_char() will call the user's function with the complete
- text read in at each end of line. The terminal is kept prepped and
- signals handled all the time, except during calls to the user's function. */
+ text read in at each end of line. The terminal is kept prepped
+ all the time, except during calls to the user's function. Signal
+ handlers are only installed when the application calls back into
+ readline, so readline doesn't `steal' signals from the application. */
rl_vcpfunc_t *rl_linefunc; /* user callback function */
static int in_handler; /* terminal_prepped and signals set? */
@@ -80,10 +82,6 @@ _rl_callback_newline ()
if (rl_prep_term_function)
(*rl_prep_term_function) (_rl_meta_flag);
-
-#if defined (HANDLE_SIGNALS)
- rl_set_signals ();
-#endif
}
readline_internal_setup ();
@@ -102,6 +100,16 @@ rl_callback_handler_install (prompt, linefunc)
_rl_callback_newline ();
}
+#if defined (HANDLE_SIGNALS)
+#define CALLBACK_READ_RETURN() \
+ do { \
+ rl_clear_signals (); \
+ return; \
+ } while (0)
+#else
+#define CALLBACK_READ_RETURN() return
+#endif
+
/* Read one character, and dispatch to the handler if it ends the line. */
void
rl_callback_read_char ()
@@ -117,15 +125,24 @@ rl_callback_read_char ()
}
memcpy ((void *)olevel, (void *)_rl_top_level, sizeof (procenv_t));
+#if defined (HAVE_POSIX_SIGSETJMP)
+ jcode = sigsetjmp (_rl_top_level, 0);
+#else
jcode = setjmp (_rl_top_level);
+#endif
if (jcode)
{
(*rl_redisplay_function) ();
_rl_want_redisplay = 0;
memcpy ((void *)_rl_top_level, (void *)olevel, sizeof (procenv_t));
- return;
+ CALLBACK_READ_RETURN ();
}
+#if defined (HANDLE_SIGNALS)
+ /* Install signal handlers only when readline has control. */
+ rl_set_signals ();
+#endif
+
do
{
RL_CHECK_SIGNALS ();
@@ -135,12 +152,13 @@ rl_callback_read_char ()
if (eof == 0 && (RL_ISSTATE (RL_STATE_ISEARCH) == 0) && RL_ISSTATE (RL_STATE_INPUTPENDING))
rl_callback_read_char ();
- return;
+ CALLBACK_READ_RETURN ();
}
else if (RL_ISSTATE (RL_STATE_NSEARCH))
{
eof = _rl_nsearch_callback (_rl_nscxt);
- return;
+
+ CALLBACK_READ_RETURN ();
}
#if defined (VI_MODE)
else if (RL_ISSTATE (RL_STATE_VIMOTION))
@@ -151,7 +169,7 @@ rl_callback_read_char ()
if (RL_ISSTATE (RL_STATE_NUMERICARG) == 0)
_rl_internal_char_cleanup ();
- return;
+ CALLBACK_READ_RETURN ();
}
#endif
else if (RL_ISSTATE (RL_STATE_NUMERICARG))
@@ -163,7 +181,7 @@ rl_callback_read_char ()
else if (RL_ISSTATE (RL_STATE_NUMERICARG) == 0)
_rl_internal_char_cleanup ();
- return;
+ CALLBACK_READ_RETURN ();
}
else if (RL_ISSTATE (RL_STATE_MULTIKEY))
{
@@ -180,7 +198,7 @@ rl_callback_read_char ()
{
/* This allows functions that simply need to read an additional
character (like quoted-insert) to register a function to be
- called when input is available. _rl_callback_data is simply a
+ called when input is available. _rl_callback_data is a
pointer to a struct that has the argument count originally
passed to the registering function and space for any additional
parameters. */
@@ -230,6 +248,8 @@ rl_callback_read_char ()
}
}
while (rl_pending_input || _rl_pushed_input_available () || RL_ISSTATE (RL_STATE_MACROINPUT));
+
+ CALLBACK_READ_RETURN ();
}
/* Remove the handler, and make sure the terminal is in its normal state. */
diff --git a/chardefs.h b/chardefs.h
index e76c34b..1fa1b08 100644
--- a/chardefs.h
+++ b/chardefs.h
@@ -72,7 +72,7 @@
# define IN_CTYPE_DOMAIN(c) isascii(c)
#endif
-#if !defined (isxdigit) && !defined (HAVE_ISXDIGIT)
+#if !defined (isxdigit) && !defined (HAVE_ISXDIGIT) && !defined (__cplusplus)
# define isxdigit(c) (isdigit((c)) || ((c) >= 'a' && (c) <= 'f') || ((c) >= 'A' && (c) <= 'F'))
#endif
diff --git a/colors.c b/colors.c
new file mode 100644
index 0000000..89d9035
--- /dev/null
+++ b/colors.c
@@ -0,0 +1,251 @@
+/* `dir', `vdir' and `ls' directory listing programs for GNU.
+
+ Modified by Chet Ramey for Readline.
+
+ Copyright (C) 1985, 1988, 1990-1991, 1995-2010, 2012 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 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>. */
+
+/* Written by Richard Stallman and David MacKenzie. */
+
+/* Color support by Peter Anvin <Peter.Anvin@linux.org> and Dennis
+ Flaherty <dennisf@denix.elk.miles.com> based on original patches by
+ Greg Lee <lee@uhunix.uhcc.hawaii.edu>. */
+
+#define READLINE_LIBRARY
+
+#if defined (HAVE_CONFIG_H)
+# include <config.h>
+#endif
+
+#include "rlconf.h"
+
+#include <stdio.h>
+
+#include "posixstat.h" // stat related macros (S_ISREG, ...)
+#include <fcntl.h> // S_ISUID
+
+// strlen()
+#if defined (HAVE_STRING_H)
+# include <string.h>
+#else /* !HAVE_STRING_H */
+# include <strings.h>
+#endif /* !HAVE_STRING_H */
+
+// abort()
+#if defined (HAVE_STDLIB_H)
+# include <stdlib.h>
+#else
+# include "ansi_stdlib.h"
+#endif /* HAVE_STDLIB_H */
+
+#include "readline.h"
+#include "rldefs.h"
+
+#ifdef COLOR_SUPPORT
+
+#include "xmalloc.h"
+#include "colors.h"
+
+static bool is_colored (enum indicator_no type);
+static void restore_default_color (void);
+
+COLOR_EXT_TYPE *_rl_color_ext_list = 0;
+
+/* Output a color indicator (which may contain nulls). */
+void
+_rl_put_indicator (const struct bin_str *ind) {
+ fwrite (ind->string, ind->len, 1, rl_outstream);
+}
+
+static bool
+is_colored (enum indicator_no colored_filetype)
+{
+ size_t len = _rl_color_indicator[colored_filetype].len;
+ char const *s = _rl_color_indicator[colored_filetype].string;
+ return ! (len == 0
+ || (len == 1 && strncmp (s, "0", 1) == 0)
+ || (len == 2 && strncmp (s, "00", 2) == 0));
+}
+
+static void
+restore_default_color (void)
+{
+ _rl_put_indicator (&_rl_color_indicator[C_LEFT]);
+ _rl_put_indicator (&_rl_color_indicator[C_RIGHT]);
+}
+
+void
+_rl_set_normal_color (void)
+{
+ if (is_colored (C_NORM))
+ {
+ _rl_put_indicator (&_rl_color_indicator[C_LEFT]);
+ _rl_put_indicator (&_rl_color_indicator[C_NORM]);
+ _rl_put_indicator (&_rl_color_indicator[C_RIGHT]);
+ }
+}
+
+/* Returns whether any color sequence was printed. */
+bool
+_rl_print_color_indicator (char *f)
+{
+ enum indicator_no colored_filetype;
+ COLOR_EXT_TYPE *ext; /* Color extension */
+ size_t len; /* Length of name */
+
+ const char* name;
+ char *filename;
+ struct stat astat;
+ mode_t mode;
+ int linkok;
+
+ int stat_ok;
+
+ name = f;
+
+ /* This should already have undergone tilde expansion */
+ filename = 0;
+ if (rl_filename_stat_hook)
+ {
+ filename = savestring (f);
+ (*rl_filename_stat_hook) (&filename);
+ name = filename;
+ }
+
+#if defined (HAVE_LSTAT)
+ stat_ok = lstat(name, &astat);
+#else
+ stat_ok = stat(name, &astat);
+#endif
+ if( stat_ok == 0 ) {
+ mode = astat.st_mode;
+ linkok = 1; //f->linkok;
+ }
+ else
+ linkok = -1;
+
+ /* Is this a nonexistent file? If so, linkok == -1. */
+
+ if (linkok == -1 && _rl_color_indicator[C_MISSING].string != NULL)
+ colored_filetype = C_MISSING;
+ else if(stat_ok != 0)
+ {
+ static enum indicator_no filetype_indicator[] = FILETYPE_INDICATORS;
+ colored_filetype = filetype_indicator[normal]; //f->filetype];
+ }
+ else
+ {
+ if (S_ISREG (mode))
+ {
+ colored_filetype = C_FILE;
+
+ if ((mode & S_ISUID) != 0 && is_colored (C_SETUID))
+ colored_filetype = C_SETUID;
+ else if ((mode & S_ISGID) != 0 && is_colored (C_SETGID))
+ colored_filetype = C_SETGID;
+ else if (is_colored (C_CAP) && 0) //f->has_capability)
+ colored_filetype = C_CAP;
+ else if ((mode & S_IXUGO) != 0 && is_colored (C_EXEC))
+ colored_filetype = C_EXEC;
+ else if ((1 < astat.st_nlink) && is_colored (C_MULTIHARDLINK))
+ colored_filetype = C_MULTIHARDLINK;
+ }
+ else if (S_ISDIR (mode))
+ {
+ colored_filetype = C_DIR;
+
+#if defined (S_ISVTX)
+ if ((mode & S_ISVTX) && (mode & S_IWOTH)
+ && is_colored (C_STICKY_OTHER_WRITABLE))
+ colored_filetype = C_STICKY_OTHER_WRITABLE;
+ else
+#endif
+ if ((mode & S_IWOTH) != 0 && is_colored (C_OTHER_WRITABLE))
+ colored_filetype = C_OTHER_WRITABLE;
+#if defined (S_ISVTX)
+ else if ((mode & S_ISVTX) != 0 && is_colored (C_STICKY))
+ colored_filetype = C_STICKY;
+#endif
+ }
+ else if (S_ISLNK (mode))
+ colored_filetype = ((linkok == 0
+ && (!strncmp (_rl_color_indicator[C_LINK].string, "target", 6)
+ || _rl_color_indicator[C_ORPHAN].string))
+ ? C_ORPHAN : C_LINK);
+ else if (S_ISFIFO (mode))
+ colored_filetype = C_FIFO;
+ else if (S_ISSOCK (mode))
+ colored_filetype = C_SOCK;
+ else if (S_ISBLK (mode))
+ colored_filetype = C_BLK;
+ else if (S_ISCHR (mode))
+ colored_filetype = C_CHR;
+ else
+ {
+ /* Classify a file of some other type as C_ORPHAN. */
+ colored_filetype = C_ORPHAN;
+ }
+ }
+
+ /* Check the file's suffix only if still classified as C_FILE. */
+ ext = NULL;
+ if (colored_filetype == C_FILE)
+ {
+ /* Test if NAME has a recognized suffix. */
+ len = strlen (name);
+ name += len; /* Pointer to final \0. */
+ for (ext = _rl_color_ext_list; ext != NULL; ext = ext->next)
+ {
+ if (ext->ext.len <= len
+ && strncmp (name - ext->ext.len, ext->ext.string,
+ ext->ext.len) == 0)
+ break;
+ }
+ }
+
+ free (filename); /* NULL or savestring return value */
+
+ {
+ const struct bin_str *const s
+ = ext ? &(ext->seq) : &_rl_color_indicator[colored_filetype];
+ if (s->string != NULL)
+ {
+ /* Need to reset so not dealing with attribute combinations */
+ if (is_colored (C_NORM))
+ restore_default_color ();
+ _rl_put_indicator (&_rl_color_indicator[C_LEFT]);
+ _rl_put_indicator (s);
+ _rl_put_indicator (&_rl_color_indicator[C_RIGHT]);
+ return 0;
+ }
+ else
+ return 1;
+ }
+}
+
+void
+_rl_prep_non_filename_text (void)
+{
+ if (_rl_color_indicator[C_END].string != NULL)
+ _rl_put_indicator (&_rl_color_indicator[C_END]);
+ else
+ {
+ _rl_put_indicator (&_rl_color_indicator[C_LEFT]);
+ _rl_put_indicator (&_rl_color_indicator[C_RESET]);
+ _rl_put_indicator (&_rl_color_indicator[C_RIGHT]);
+ }
+}
+#endif /* COLOR_SUPPORT */
diff --git a/colors.h b/colors.h
new file mode 100644
index 0000000..fc926e5
--- /dev/null
+++ b/colors.h
@@ -0,0 +1,122 @@
+/* `dir', `vdir' and `ls' directory listing programs for GNU.
+
+ Modified by Chet Ramey for Readline.
+
+ Copyright (C) 1985, 1988, 1990-1991, 1995-2010, 2012 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 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>. */
+
+/* Written by Richard Stallman and David MacKenzie. */
+
+/* Color support by Peter Anvin <Peter.Anvin@linux.org> and Dennis
+ Flaherty <dennisf@denix.elk.miles.com> based on original patches by
+ Greg Lee <lee@uhunix.uhcc.hawaii.edu>. */
+
+#ifndef _COLORS_H_
+#define _COLORS_H_
+
+#include <stdio.h> // size_t
+
+#if defined(__TANDEM) && defined(HAVE_STDBOOL_H) && (__STDC_VERSION__ < 199901L)
+typedef int _Bool;
+#endif
+
+#if defined (HAVE_STDBOOL_H)
+# include <stdbool.h> // bool
+#else
+typedef int _rl_bool_t;
+
+#ifdef bool
+# undef bool
+#endif
+#define bool _rl_bool_t
+
+#ifndef true
+# define true 1
+# define false 0
+#endif
+
+#endif /* !HAVE_STDBOOL_H */
+
+/* Null is a valid character in a color indicator (think about Epson
+ printers, for example) so we have to use a length/buffer string
+ type. */
+struct bin_str
+ {
+ size_t len;
+ const char *string;
+ };
+
+/* file type indicators (dir, sock, fifo, ...)
+ Default value is initialized in parse-colors.c.
+ It is then modified from the values of $LS_COLORS. */
+extern struct bin_str _rl_color_indicator[];
+
+/* The LS_COLORS variable is in a termcap-like format. */
+typedef struct _color_ext_type
+ {
+ struct bin_str ext; /* The extension we're looking for */
+ struct bin_str seq; /* The sequence to output when we do */
+ struct _color_ext_type *next; /* Next in list */
+ } COLOR_EXT_TYPE;
+
+/* file extensions indicators (.txt, .log, .jpg, ...)
+ Values are taken from $LS_COLORS in rl_parse_colors(). */
+extern COLOR_EXT_TYPE *_rl_color_ext_list;
+
+#define FILETYPE_INDICATORS \
+ { \
+ C_ORPHAN, C_FIFO, C_CHR, C_DIR, C_BLK, C_FILE, \
+ C_LINK, C_SOCK, C_FILE, C_DIR \
+ }
+
+/* Whether we used any colors in the output so far. If so, we will
+ need to restore the default color later. If not, we will need to
+ call prep_non_filename_text before using color for the first time. */
+
+enum indicator_no
+ {
+ C_LEFT, C_RIGHT, C_END, C_RESET, C_NORM, C_FILE, C_DIR, C_LINK,
+ C_FIFO, C_SOCK,
+ C_BLK, C_CHR, C_MISSING, C_ORPHAN, C_EXEC, C_DOOR, C_SETUID, C_SETGID,
+ C_STICKY, C_OTHER_WRITABLE, C_STICKY_OTHER_WRITABLE, C_CAP, C_MULTIHARDLINK,
+ C_CLR_TO_EOL
+ };
+
+
+#if !S_IXUGO
+# define S_IXUGO (S_IXUSR | S_IXGRP | S_IXOTH)
+#endif
+
+enum filetype
+ {
+ unknown,
+ fifo,
+ chardev,
+ directory,
+ blockdev,
+ normal,
+ symbolic_link,
+ sock,
+ whiteout,
+ arg_directory
+ };
+
+extern void _rl_put_indicator (const struct bin_str *ind);
+extern void _rl_set_normal_color (void);
+extern bool _rl_print_color_indicator (char *f);
+extern void _rl_prep_non_filename_text (void);
+
+#endif /* !_COLORS_H_ */
diff --git a/complete.c b/complete.c
index e67cfeb..cd9aebe 100644
--- a/complete.c
+++ b/complete.c
@@ -1,6 +1,6 @@
/* complete.c -- filename completion for readline. */
-/* Copyright (C) 1987-2011 Free Software Foundation, Inc.
+/* Copyright (C) 1987-2012 Free Software Foundation, Inc.
This file is part of the GNU Readline Library (Readline), a library
for reading lines of text with interactive input and history editing.
@@ -31,6 +31,8 @@
# include <sys/file.h>
#endif
+#include <signal.h>
+
#if defined (HAVE_UNISTD_H)
# include <unistd.h>
#endif /* HAVE_UNISTD_H */
@@ -64,6 +66,10 @@ extern int errno;
#include "xmalloc.h"
#include "rlprivate.h"
+#if defined (COLOR_SUPPORT)
+# include "colors.h"
+#endif
+
#ifdef __STDC__
typedef int QSFUNC (const void *, const void *);
#else
@@ -94,17 +100,27 @@ extern struct passwd *getpwent PARAMS((void));
longest string in that array. */
rl_compdisp_func_t *rl_completion_display_matches_hook = (rl_compdisp_func_t *)NULL;
-#if defined (VISIBLE_STATS)
+#if defined (VISIBLE_STATS) || defined (COLOR_SUPPORT)
# if !defined (X_OK)
# define X_OK 1
# endif
+#endif
+
+#if defined (VISIBLE_STATS)
static int stat_char PARAMS((char *));
#endif
+#if defined (COLOR_SUPPORT)
+static int colored_stat_start PARAMS((char *));
+static void colored_stat_end PARAMS((void));
+#endif
+
static int path_isdir PARAMS((const char *));
static char *rl_quote_filename PARAMS((char *, int, char *));
+static void _rl_complete_sigcleanup PARAMS((int, void *));
+
static void set_completion_defaults PARAMS((int));
static int get_y_or_n PARAMS((int));
static int _rl_internal_pager PARAMS((int));
@@ -189,6 +205,12 @@ int _rl_completion_columns = -1;
int rl_visible_stats = 0;
#endif /* VISIBLE_STATS */
+#if defined (COLOR_SUPPORT)
+/* Non-zero means to use colors to indicate file type when listing possible
+ completions. The colors used are taken from $LS_COLORS, if set. */
+int _rl_colored_stats = 0;
+#endif
+
/* If non-zero, when completing in the middle of a word, don't insert
characters from the match that match characters following point in
the word. This means, for instance, completing when the cursor is
@@ -206,6 +228,8 @@ rl_icppfunc_t *rl_directory_completion_hook = (rl_icppfunc_t *)NULL;
rl_icppfunc_t *rl_directory_rewrite_hook = (rl_icppfunc_t *)NULL;
+rl_icppfunc_t *rl_filename_stat_hook = (rl_icppfunc_t *)NULL;
+
/* If non-zero, this is the address of a function to call when reading
directory entries from the filesystem for completion and comparing
them to the partial word to be completed. The function should
@@ -457,6 +481,15 @@ _rl_reset_completion_state ()
rl_completion_quote_character = 0;
}
+static void
+_rl_complete_sigcleanup (sig, ptr)
+ int sig;
+ void *ptr;
+{
+ if (sig == SIGINT) /* XXX - for now */
+ _rl_free_match_list ((char **)ptr);
+}
+
/* Set default values for readline word completion. These are the variables
that application completion functions can change or inspect. */
static void
@@ -551,6 +584,8 @@ stat_char (filename)
{
struct stat finfo;
int character, r;
+ char *f;
+ const char *fn;
/* Short-circuit a //server on cygwin, since that will always behave as
a directory. */
@@ -559,10 +594,20 @@ stat_char (filename)
return '/';
#endif
+ f = 0;
+ if (rl_filename_stat_hook)
+ {
+ f = savestring (filename);
+ (*rl_filename_stat_hook) (&f);
+ fn = f;
+ }
+ else
+ fn = filename;
+
#if defined (HAVE_LSTAT) && defined (S_ISLNK)
- r = lstat (filename, &finfo);
+ r = lstat (fn, &finfo);
#else
- r = stat (filename, &finfo);
+ r = stat (fn, &finfo);
#endif
if (r == -1)
@@ -596,10 +641,29 @@ stat_char (filename)
if (access (filename, X_OK) == 0)
character = '*';
}
+
+ free (f);
return (character);
}
#endif /* VISIBLE_STATS */
+#if defined (COLOR_SUPPORT)
+static int
+colored_stat_start (filename)
+ char *filename;
+{
+ _rl_set_normal_color ();
+ return (_rl_print_color_indicator (filename));
+}
+
+static void
+colored_stat_end ()
+{
+ _rl_prep_non_filename_text ();
+ _rl_put_indicator (&_rl_color_indicator[C_CLR_TO_EOL]);
+}
+#endif
+
/* Return the portion of PATHNAME that should be output when listing
possible completions. If we are hacking filename completion, we
are only interested in the basename, the portion following the
@@ -679,7 +743,7 @@ fnwidth (string)
else
{
pos += clen;
- w = wcwidth (wc);
+ w = WCWIDTH (wc);
width += (w >= 0) ? w : 1;
}
#else
@@ -766,7 +830,7 @@ fnprint (to_print, prefix_bytes)
break;
else
{
- w = wcwidth (wc);
+ w = WCWIDTH (wc);
width = (w >= 0) ? w : 1;
}
fwrite (s, 1, tlen, rl_outstream);
@@ -796,13 +860,20 @@ print_filename (to_print, full_pathname, prefix_bytes)
char *s, c, *new_full_pathname, *dn;
extension_char = 0;
- printed_len = fnprint (to_print, prefix_bytes);
+#if defined (COLOR_SUPPORT)
+ /* Defer printing if we want to prefix with a color indicator */
+ if (_rl_colored_stats == 0 || rl_filename_completion_desired == 0)
+#endif
+ printed_len = fnprint (to_print, prefix_bytes);
+ if (rl_filename_completion_desired && (
#if defined (VISIBLE_STATS)
- if (rl_filename_completion_desired && (rl_visible_stats || _rl_complete_mark_directories))
-#else
- if (rl_filename_completion_desired && _rl_complete_mark_directories)
+ rl_visible_stats ||
#endif
+#if defined (COLOR_SUPPORT)
+ _rl_colored_stats ||
+#endif
+ _rl_complete_mark_directories))
{
/* If to_print != full_pathname, to_print is the basename of the
path passed. In this case, we try to expand the directory
@@ -848,8 +919,28 @@ print_filename (to_print, full_pathname, prefix_bytes)
extension_char = stat_char (new_full_pathname);
else
#endif
- if (path_isdir (new_full_pathname))
- extension_char = '/';
+ if (_rl_complete_mark_directories)
+ {
+ dn = 0;
+ if (rl_directory_completion_hook == 0 && rl_filename_stat_hook)
+ {
+ dn = savestring (new_full_pathname);
+ (*rl_filename_stat_hook) (&dn);
+ free (new_full_pathname);
+ new_full_pathname = dn;
+ }
+ if (path_isdir (new_full_pathname))
+ extension_char = '/';
+ }
+
+#if defined (COLOR_SUPPORT)
+ if (_rl_colored_stats)
+ {
+ colored_stat_start (new_full_pathname);
+ printed_len = fnprint (to_print, prefix_bytes);
+ colored_stat_end ();
+ }
+#endif
xfree (new_full_pathname);
to_print[-1] = c;
@@ -862,8 +953,18 @@ print_filename (to_print, full_pathname, prefix_bytes)
extension_char = stat_char (s);
else
#endif
- if (path_isdir (s))
+ if (_rl_complete_mark_directories && path_isdir (s))
extension_char = '/';
+
+#if defined (COLOR_SUPPORT)
+ if (_rl_colored_stats)
+ {
+ colored_stat_start (s);
+ printed_len = fnprint (to_print, prefix_bytes);
+ colored_stat_end ();
+ }
+#endif
+
}
xfree (s);
@@ -1058,10 +1159,13 @@ gen_completion_matches (text, start, end, our_func, found_quote, quote_char)
variable rl_attempted_completion_function. */
if (rl_attempted_completion_function)
{
- _rl_interrupt_immediately++;
matches = (*rl_attempted_completion_function) (text, start, end);
- if (_rl_interrupt_immediately > 0)
- _rl_interrupt_immediately--;
+ if (RL_SIG_RECEIVED())
+ {
+ _rl_free_match_list (matches);
+ matches = 0;
+ RL_CHECK_SIGNALS ();
+ }
if (matches || rl_attempted_completion_over)
{
@@ -1072,7 +1176,15 @@ gen_completion_matches (text, start, end, our_func, found_quote, quote_char)
/* XXX -- filename dequoting moved into rl_filename_completion_function */
+ /* rl_completion_matches will check for signals as well to avoid a long
+ delay while reading a directory. */
matches = rl_completion_matches (text, our_func);
+ if (RL_SIG_RECEIVED())
+ {
+ _rl_free_match_list (matches);
+ matches = 0;
+ RL_CHECK_SIGNALS ();
+ }
return matches;
}
@@ -1147,9 +1259,11 @@ compute_lcd_of_matches (match_list, matches, text)
{
register int i, c1, c2, si;
int low; /* Count of max-matched characters. */
+ int lx;
char *dtext; /* dequoted TEXT, if needed */
#if defined (HANDLE_MULTIBYTE)
int v;
+ size_t v1, v2;
mbstate_t ps1, ps2;
wchar_t wc1, wc2;
#endif
@@ -1182,14 +1296,20 @@ compute_lcd_of_matches (match_list, matches, text)
#if defined (HANDLE_MULTIBYTE)
if (MB_CUR_MAX > 1 && rl_byte_oriented == 0)
{
- v = mbrtowc (&wc1, match_list[i]+si, strlen (match_list[i]+si), &ps1);
- mbrtowc (&wc2, match_list[i+1]+si, strlen (match_list[i+1]+si), &ps2);
+ v1 = mbrtowc(&wc1, match_list[i]+si, strlen (match_list[i]+si), &ps1);
+ v2 = mbrtowc (&wc2, match_list[i+1]+si, strlen (match_list[i+1]+si), &ps2);
+ if (MB_INVALIDCH (v1) || MB_INVALIDCH (v2))
+ {
+ if (c1 != c2) /* do byte comparison */
+ break;
+ continue;
+ }
wc1 = towlower (wc1);
wc2 = towlower (wc2);
if (wc1 != wc2)
break;
- else if (v > 1)
- si += v - 1;
+ else if (v1 > 1)
+ si += v1 - 1;
}
else
#endif
@@ -1264,21 +1384,20 @@ compute_lcd_of_matches (match_list, matches, text)
qsort (match_list+1, matches, sizeof(char *), (QSFUNC *)_rl_qsort_string_compare);
si = strlen (text);
- if (si <= low)
- {
- for (i = 1; i <= matches; i++)
- if (strncmp (match_list[i], text, si) == 0)
- {
- strncpy (match_list[0], match_list[i], low);
- break;
- }
- /* no casematch, use first entry */
- if (i > matches)
- strncpy (match_list[0], match_list[1], low);
- }
- else
- /* otherwise, just use the text the user typed. */
- strncpy (match_list[0], text, low);
+ lx = (si <= low) ? si : low; /* check shorter of text and matches */
+ /* Try to preserve the case of what the user typed in the presence of
+ multiple matches: check each match for something that matches
+ what the user typed taking case into account; use it up to common
+ length of matches if one is found. If not, just use first match. */
+ for (i = 1; i <= matches; i++)
+ if (strncmp (match_list[i], text, lx) == 0)
+ {
+ strncpy (match_list[0], match_list[i], low);
+ break;
+ }
+ /* no casematch, use first entry */
+ if (i > matches)
+ strncpy (match_list[0], match_list[1], low);
FREE (dtext);
}
@@ -1305,7 +1424,7 @@ postprocess_matches (matchesp, matching_filenames)
return 0;
/* It seems to me that in all the cases we handle we would like
- to ignore duplicate possiblilities. Scan for the text to
+ to ignore duplicate possibilities. Scan for the text to
insert being identical to the other completions. */
if (rl_ignore_completion_duplicates)
{
@@ -1463,7 +1582,7 @@ rl_display_match_list (matches, len, max)
/* Have we reached the end of this line? */
if (matches[i+1])
{
- if (i && (limit > 1) && (i % limit) == 0)
+ if (limit == 1 || (i && (limit > 1) && (i % limit) == 0))
{
rl_crlf ();
lines++;
@@ -1672,7 +1791,7 @@ append_to_match (text, delimiter, quote_char, nontrivial_match)
char *text;
int delimiter, quote_char, nontrivial_match;
{
- char temp_string[4], *filename;
+ char temp_string[4], *filename, *fn;
int temp_string_index, s;
struct stat finfo;
@@ -1691,6 +1810,13 @@ append_to_match (text, delimiter, quote_char, nontrivial_match)
if (rl_filename_completion_desired)
{
filename = tilde_expand (text);
+ if (rl_filename_stat_hook)
+ {
+ fn = savestring (filename);
+ (*rl_filename_stat_hook) (&fn);
+ xfree (filename);
+ filename = fn;
+ }
s = (nontrivial_match && rl_completion_mark_symlink_dirs == 0)
? LSTAT (filename, &finfo)
: stat (filename, &finfo);
@@ -1710,8 +1836,7 @@ append_to_match (text, delimiter, quote_char, nontrivial_match)
#ifdef S_ISLNK
/* Don't add anything if the filename is a symlink and resolves to a
directory. */
- else if (s == 0 && S_ISLNK (finfo.st_mode) &&
- stat (filename, &finfo) == 0 && S_ISDIR (finfo.st_mode))
+ else if (s == 0 && S_ISLNK (finfo.st_mode) && path_isdir (filename))
;
#endif
else
@@ -1831,10 +1956,8 @@ rl_complete_internal (what_to_do)
/* nontrivial_lcd is set if the common prefix adds something to the word
being completed. */
nontrivial_lcd = matches && strcmp (text, matches[0]) != 0;
-#if 1
if (what_to_do == '!' || what_to_do == '@')
tlen = strlen (text);
-#endif
xfree (text);
if (matches == 0)
@@ -1868,10 +1991,6 @@ rl_complete_internal (what_to_do)
case '!':
case '@':
/* Insert the first match with proper quoting. */
-#if 0
- if (*matches[0])
- insert_match (matches[0], start, matches[1] ? MULT_MATCH : SINGLE_MATCH, &quote_char);
-#else
if (what_to_do == TAB)
{
if (*matches[0])
@@ -1886,7 +2005,6 @@ rl_complete_internal (what_to_do)
if (mlen >= tlen)
insert_match (matches[0], start, matches[1] ? MULT_MATCH : SINGLE_MATCH, &quote_char);
}
-#endif
/* If there are more matches, ring the bell to indicate.
If we are in vi mode, Posix.2 says to not ring the bell.
@@ -1922,7 +2040,14 @@ rl_complete_internal (what_to_do)
break;
case '?':
+ if (rl_completion_display_matches_hook == 0)
+ {
+ _rl_sigcleanup = _rl_complete_sigcleanup;
+ _rl_sigcleanarg = matches;
+ }
display_matches (matches);
+ _rl_sigcleanup = 0;
+ _rl_sigcleanarg = 0;
break;
default:
@@ -1930,6 +2055,7 @@ rl_complete_internal (what_to_do)
rl_ding ();
FREE (saved_line_buffer);
RL_UNSETSTATE(RL_STATE_COMPLETING);
+ _rl_free_match_list (matches);
_rl_reset_completion_state ();
return 1;
}
@@ -1971,6 +2097,8 @@ rl_completion_matches (text, entry_function)
const char *text;
rl_compentry_func_t *entry_function;
{
+ register int i;
+
/* Number of slots in match_list. */
int match_list_size;
@@ -1988,18 +2116,36 @@ rl_completion_matches (text, entry_function)
match_list = (char **)xmalloc ((match_list_size + 1) * sizeof (char *));
match_list[1] = (char *)NULL;
- _rl_interrupt_immediately++;
while (string = (*entry_function) (text, matches))
{
- if (matches + 1 == match_list_size)
+ if (RL_SIG_RECEIVED ())
+ {
+ /* Start at 1 because we don't set matches[0] in this function.
+ Only free the list members if we're building match list from
+ rl_filename_completion_function, since we know that doesn't
+ free the strings it returns. */
+ if (entry_function == rl_filename_completion_function)
+ {
+ for (i = 1; match_list[i]; i++)
+ xfree (match_list[i]);
+ }
+ xfree (match_list);
+ match_list = 0;
+ match_list_size = 0;
+ matches = 0;
+ RL_CHECK_SIGNALS ();
+ }
+
+ if (matches + 1 >= match_list_size)
match_list = (char **)xrealloc
(match_list, ((match_list_size += 10) + 1) * sizeof (char *));
+ if (match_list == 0)
+ return (match_list);
+
match_list[++matches] = string;
match_list[matches + 1] = (char *)NULL;
}
- if (_rl_interrupt_immediately > 0)
- _rl_interrupt_immediately--;
/* If there were any matches, then look through them finding out the
lowest common denominator. That then becomes match_list[0]. */
@@ -2038,7 +2184,9 @@ rl_username_completion_function (text, state)
username = savestring (&text[first_char_loc]);
namelen = strlen (username);
+#if defined (HAVE_GETPWENT)
setpwent ();
+#endif
}
#if defined (HAVE_GETPWENT)
@@ -2075,8 +2223,9 @@ rl_username_completion_function (text, state)
/* Return non-zero if CONVFN matches FILENAME up to the length of FILENAME
(FILENAME_LEN). If _rl_completion_case_fold is set, compare without
- regard to the alphabetic case of characters. CONVFN is the possibly-
- converted directory entry; FILENAME is what the user typed. */
+ regard to the alphabetic case of characters. If
+ _rl_completion_case_map is set, make `-' and `_' equivalent. CONVFN is
+ the possibly-converted directory entry; FILENAME is what the user typed. */
static int
complete_fncmp (convfn, convlen, filename, filename_len)
const char *convfn;
@@ -2086,34 +2235,110 @@ complete_fncmp (convfn, convlen, filename, filename_len)
{
register char *s1, *s2;
int d, len;
+#if defined (HANDLE_MULTIBYTE)
+ size_t v1, v2;
+ mbstate_t ps1, ps2;
+ wchar_t wc1, wc2;
+#endif
+
+#if defined (HANDLE_MULTIBYTE)
+ memset (&ps1, 0, sizeof (mbstate_t));
+ memset (&ps2, 0, sizeof (mbstate_t));
+#endif
+
+ if (filename_len == 0)
+ return 1;
+ if (convlen < filename_len)
+ return 0;
+
+ len = filename_len;
+ s1 = (char *)convfn;
+ s2 = (char *)filename;
/* Otherwise, if these match up to the length of filename, then
it is a match. */
if (_rl_completion_case_fold && _rl_completion_case_map)
{
/* Case-insensitive comparison treating _ and - as equivalent */
- if (filename_len == 0)
- return 1;
- if (convlen < filename_len)
- return 0;
- s1 = (char *)convfn;
- s2 = (char *)filename;
- len = filename_len;
- do
+#if defined (HANDLE_MULTIBYTE)
+ if (MB_CUR_MAX > 1 && rl_byte_oriented == 0)
+ {
+ do
+ {
+ v1 = mbrtowc (&wc1, s1, convlen, &ps1);
+ v2 = mbrtowc (&wc2, s2, filename_len, &ps2);
+ if (v1 == 0 && v2 == 0)
+ return 1;
+ else if (MB_INVALIDCH (v1) || MB_INVALIDCH (v2))
+ {
+ if (*s1 != *s2) /* do byte comparison */
+ return 0;
+ else if ((*s1 == '-' || *s1 == '_') && (*s2 == '-' || *s2 == '_'))
+ return 0;
+ s1++; s2++; len--;
+ continue;
+ }
+ wc1 = towlower (wc1);
+ wc2 = towlower (wc2);
+ s1 += v1;
+ s2 += v1;
+ len -= v1;
+ if ((wc1 == L'-' || wc1 == L'_') && (wc2 == L'-' || wc2 == L'_'))
+ continue;
+ if (wc1 != wc2)
+ return 0;
+ }
+ while (len != 0);
+ }
+ else
+#endif
{
- d = _rl_to_lower (*s1) - _rl_to_lower (*s2);
- /* *s1 == [-_] && *s2 == [-_] */
- if ((*s1 == '-' || *s1 == '_') && (*s2 == '-' || *s2 == '_'))
- d = 0;
- if (d != 0)
- return 0;
- s1++; s2++; /* already checked convlen >= filename_len */
+ do
+ {
+ d = _rl_to_lower (*s1) - _rl_to_lower (*s2);
+ /* *s1 == [-_] && *s2 == [-_] */
+ if ((*s1 == '-' || *s1 == '_') && (*s2 == '-' || *s2 == '_'))
+ d = 0;
+ if (d != 0)
+ return 0;
+ s1++; s2++; /* already checked convlen >= filename_len */
+ }
+ while (--len != 0);
}
- while (--len != 0);
+
return 1;
}
else if (_rl_completion_case_fold)
{
+#if defined (HANDLE_MULTIBYTE)
+ if (MB_CUR_MAX > 1 && rl_byte_oriented == 0)
+ {
+ do
+ {
+ v1 = mbrtowc (&wc1, s1, convlen, &ps1);
+ v2 = mbrtowc (&wc2, s2, filename_len, &ps2);
+ if (v1 == 0 && v2 == 0)
+ return 1;
+ else if (MB_INVALIDCH (v1) || MB_INVALIDCH (v2))
+ {
+ if (*s1 != *s2) /* do byte comparison */
+ return 0;
+ s1++; s2++; len--;
+ continue;
+ }
+ wc1 = towlower (wc1);
+ wc2 = towlower (wc2);
+ if (wc1 != wc2)
+ return 0;
+ s1 += v1;
+ s2 += v1;
+ len -= v1;
+ }
+ while (len != 0);
+ return 1;
+ }
+ else
+#endif
if ((_rl_to_lower (convfn[0]) == _rl_to_lower (filename[0])) &&
(convlen >= filename_len) &&
(_rl_strnicmp (filename, convfn, filename_len) == 0))
@@ -2233,8 +2458,9 @@ rl_filename_completion_function (text, state)
}
directory = opendir (dirname);
- /* Now dequote a non-null filename. */
- if (filename && *filename && rl_completion_found_quote && rl_filename_dequoting_function)
+ /* Now dequote a non-null filename. FILENAME will not be NULL, but may
+ be empty. */
+ if (*filename && rl_completion_found_quote && rl_filename_dequoting_function)
{
/* delete single and double quotes */
temp = (*rl_filename_dequoting_function) (filename, rl_completion_quote_character);
@@ -2598,6 +2824,11 @@ rl_menu_complete (count, ignore)
full_completion = 1;
return (0);
}
+ else if (_rl_menu_complete_prefix_first)
+ {
+ rl_ding ();
+ return (0);
+ }
}
else if (match_list_size <= 1)
{
diff --git a/config.h.in b/config.h.in
index 8560c4b..a67e43e 100644
--- a/config.h.in
+++ b/config.h.in
@@ -124,6 +124,9 @@
/* Define if you have the wcwidth function. */
#undef HAVE_WCWIDTH
+/* and whether it works */
+#undef WCWIDTH_BROKEN
+
#undef STDC_HEADERS
/* Define if you have the <dirent.h> header file. */
@@ -153,6 +156,9 @@
/* Define if you have the <stdarg.h> header file. */
#undef HAVE_STDARG_H
+/* Define if you have the <stdbool.h> header file. */
+#undef HAVE_STDBOOL_H
+
/* Define if you have the <stdlib.h> header file. */
#undef HAVE_STDLIB_H
@@ -218,6 +224,9 @@
/* Define if you have <langinfo.h> and nl_langinfo(CODESET). */
#undef HAVE_LANGINFO_CODESET
+/* Define if you have <linux/audit.h> and it defines AUDIT_USER_TTY */
+#undef HAVE_DECL_AUDIT_USER_TTY
+
/* Definitions pulled in from aclocal.m4. */
#undef VOID_SIGHANDLER
@@ -259,12 +268,4 @@
# define TERMIOS_MISSING
#endif
-#if defined (__STDC__) && defined (HAVE_STDARG_H)
-# define PREFER_STDARG
-# define USE_VARARGS
-#else
-# if defined (HAVE_VARARGS_H)
-# define PREFER_VARARGS
-# define USE_VARARGS
-# endif
-#endif
+/* VARARGS defines moved to rlstdc.h */
diff --git a/configure b/configure
index 55b3e73..f11ee25 100755
--- a/configure
+++ b/configure
@@ -1,21 +1,25 @@
#! /bin/sh
-# From configure.in for Readline 6.2, version 2.67.
+# From configure.ac for Readline 6.3, version 2.73.
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.63 for readline 6.2.
+# Generated by GNU Autoconf 2.68 for readline 6.3.
#
# Report bugs to <bug-readline@gnu.org>.
#
+#
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
-# 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software
+# Foundation, Inc.
+#
+#
# This configure script is free software; the Free Software Foundation
# gives unlimited permission to copy, distribute and modify it.
-## --------------------- ##
-## M4sh Initialization. ##
-## --------------------- ##
+## -------------------- ##
+## M4sh Initialization. ##
+## -------------------- ##
# Be more Bourne compatible
DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
emulate sh
NULLCMD=:
# Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
@@ -23,23 +27,15 @@ if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
alias -g '${1+"$@"}'='"$@"'
setopt NO_GLOB_SUBST
else
- case `(set -o) 2>/dev/null` in
- *posix*) set -o posix ;;
+ case `(set -o) 2>/dev/null` in #(
+ *posix*) :
+ set -o posix ;; #(
+ *) :
+ ;;
esac
-
fi
-
-
-# PATH needs CR
-# Avoid depending upon Character Ranges.
-as_cr_letters='abcdefghijklmnopqrstuvwxyz'
-as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
-as_cr_Letters=$as_cr_letters$as_cr_LETTERS
-as_cr_digits='0123456789'
-as_cr_alnum=$as_cr_Letters$as_cr_digits
-
as_nl='
'
export as_nl
@@ -47,7 +43,13 @@ export as_nl
as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
-if (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
+# Prefer a ksh shell builtin over an external printf program on Solaris,
+# but without wasting forks for bash or zsh.
+if test -z "$BASH_VERSION$ZSH_VERSION" \
+ && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
+ as_echo='print -r --'
+ as_echo_n='print -rn --'
+elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
as_echo='printf %s\n'
as_echo_n='printf %s'
else
@@ -58,7 +60,7 @@ else
as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
as_echo_n_body='eval
arg=$1;
- case $arg in
+ case $arg in #(
*"$as_nl"*)
expr "X$arg" : "X\\(.*\\)$as_nl";
arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
@@ -81,13 +83,6 @@ if test "${PATH_SEPARATOR+set}" != set; then
}
fi
-# Support unset when possible.
-if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
- as_unset=unset
-else
- as_unset=false
-fi
-
# IFS
# We need space, tab and new line, in precisely that order. Quoting is
@@ -97,15 +92,16 @@ fi
IFS=" "" $as_nl"
# Find who we are. Look in the path if we contain no directory separator.
-case $0 in
+as_myself=
+case $0 in #((
*[\\/]* ) as_myself=$0 ;;
*) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
-done
+ test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
+ done
IFS=$as_save_IFS
;;
@@ -117,12 +113,16 @@ if test "x$as_myself" = x; then
fi
if test ! -f "$as_myself"; then
$as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
- { (exit 1); exit 1; }
+ exit 1
fi
-# Work around bugs in pre-3.0 UWIN ksh.
-for as_var in ENV MAIL MAILPATH
-do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
+# Unset variables that we do not need and which cause bugs (e.g. in
+# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1"
+# suppresses any "Segmentation fault" message there. '((' could
+# trigger a bug in pdksh 5.2.14.
+for as_var in BASH_ENV ENV MAIL MAILPATH
+do eval test x\${$as_var+set} = xset \
+ && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
done
PS1='$ '
PS2='> '
@@ -134,330 +134,307 @@ export LC_ALL
LANGUAGE=C
export LANGUAGE
-# Required to use basename.
-if expr a : '\(a\)' >/dev/null 2>&1 &&
- test "X`expr 00001 : '.*\(...\)'`" = X001; then
- as_expr=expr
-else
- as_expr=false
-fi
-
-if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
- as_basename=basename
-else
- as_basename=false
-fi
-
-
-# Name of the executable.
-as_me=`$as_basename -- "$0" ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
- X"$0" : 'X\(//\)$' \| \
- X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X/"$0" |
- sed '/^.*\/\([^/][^/]*\)\/*$/{
- s//\1/
- q
- }
- /^X\/\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\/\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
-
# CDPATH.
-$as_unset CDPATH
-
+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
if test "x$CONFIG_SHELL" = x; then
- if (eval ":") 2>/dev/null; then
- as_have_required=yes
+ as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
+ emulate sh
+ NULLCMD=:
+ # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which
+ # is contrary to our usage. Disable this feature.
+ alias -g '\${1+\"\$@\"}'='\"\$@\"'
+ setopt NO_GLOB_SUBST
else
- as_have_required=no
+ case \`(set -o) 2>/dev/null\` in #(
+ *posix*) :
+ set -o posix ;; #(
+ *) :
+ ;;
+esac
fi
-
- if test $as_have_required = yes && (eval ":
-(as_func_return () {
- (exit \$1)
-}
-as_func_success () {
- as_func_return 0
-}
-as_func_failure () {
- as_func_return 1
-}
-as_func_ret_success () {
- return 0
-}
-as_func_ret_failure () {
- return 1
-}
+"
+ as_required="as_fn_return () { (exit \$1); }
+as_fn_success () { as_fn_return 0; }
+as_fn_failure () { as_fn_return 1; }
+as_fn_ret_success () { return 0; }
+as_fn_ret_failure () { return 1; }
exitcode=0
-if as_func_success; then
- :
-else
- exitcode=1
- echo as_func_success failed.
-fi
-
-if as_func_failure; then
- exitcode=1
- echo as_func_failure succeeded.
-fi
-
-if as_func_ret_success; then
- :
-else
- exitcode=1
- echo as_func_ret_success failed.
-fi
-
-if as_func_ret_failure; then
- exitcode=1
- echo as_func_ret_failure succeeded.
-fi
-
-if ( set x; as_func_ret_success y && test x = \"\$1\" ); then
- :
+as_fn_success || { exitcode=1; echo as_fn_success failed.; }
+as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; }
+as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; }
+as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; }
+if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
+
+else
+ exitcode=1; echo positional parameters were not saved.
+fi
+test x\$exitcode = x0 || exit 1"
+ as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
+ as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
+ eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
+ test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1
+test \$(( 1 + 1 )) = 2 || exit 1"
+ if (eval "$as_required") 2>/dev/null; then :
+ as_have_required=yes
else
- exitcode=1
- echo positional parameters were not saved.
+ as_have_required=no
fi
+ if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then :
-test \$exitcode = 0) || { (exit 1); exit 1; }
-
-(
- as_lineno_1=\$LINENO
- as_lineno_2=\$LINENO
- test \"x\$as_lineno_1\" != \"x\$as_lineno_2\" &&
- test \"x\`expr \$as_lineno_1 + 1\`\" = \"x\$as_lineno_2\") || { (exit 1); exit 1; }
-") 2> /dev/null; then
- :
else
- as_candidate_shells=
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+as_found=false
for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- case $as_dir in
+ as_found=:
+ case $as_dir in #(
/*)
for as_base in sh bash ksh sh5; do
- as_candidate_shells="$as_candidate_shells $as_dir/$as_base"
+ # Try only shells that exist, to save several forks.
+ as_shell=$as_dir/$as_base
+ if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
+ { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then :
+ CONFIG_SHELL=$as_shell as_have_required=yes
+ if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then :
+ break 2
+fi
+fi
done;;
esac
+ as_found=false
done
+$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } &&
+ { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then :
+ CONFIG_SHELL=$SHELL as_have_required=yes
+fi; }
IFS=$as_save_IFS
- for as_shell in $as_candidate_shells $SHELL; do
- # Try only shells that exist, to save several forks.
- if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
- { ("$as_shell") 2> /dev/null <<\_ASEOF
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
- emulate sh
- NULLCMD=:
- # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
- # is contrary to our usage. Disable this feature.
- alias -g '${1+"$@"}'='"$@"'
- setopt NO_GLOB_SUBST
-else
- case `(set -o) 2>/dev/null` in
- *posix*) set -o posix ;;
-esac
-
+ if test "x$CONFIG_SHELL" != x; then :
+ # We cannot yet assume a decent shell, so we have to provide a
+ # neutralization value for shells without unset; and this also
+ # works around shells that cannot unset nonexistent variables.
+ # Preserve -v and -x to the replacement shell.
+ BASH_ENV=/dev/null
+ ENV=/dev/null
+ (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
+ export CONFIG_SHELL
+ case $- in # ((((
+ *v*x* | *x*v* ) as_opts=-vx ;;
+ *v* ) as_opts=-v ;;
+ *x* ) as_opts=-x ;;
+ * ) as_opts= ;;
+ esac
+ exec "$CONFIG_SHELL" $as_opts "$as_myself" ${1+"$@"}
fi
-
-:
-_ASEOF
-}; then
- CONFIG_SHELL=$as_shell
- as_have_required=yes
- if { "$as_shell" 2> /dev/null <<\_ASEOF
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
- emulate sh
- NULLCMD=:
- # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
- # is contrary to our usage. Disable this feature.
- alias -g '${1+"$@"}'='"$@"'
- setopt NO_GLOB_SUBST
-else
- case `(set -o) 2>/dev/null` in
- *posix*) set -o posix ;;
-esac
-
+ if test x$as_have_required = xno; then :
+ $as_echo "$0: This script requires a shell more modern than all"
+ $as_echo "$0: the shells that I found on your system."
+ if test x${ZSH_VERSION+set} = xset ; then
+ $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should"
+ $as_echo "$0: be upgraded to zsh 4.3.4 or later."
+ else
+ $as_echo "$0: Please tell bug-autoconf@gnu.org and
+$0: bug-readline@gnu.org about your system, including any
+$0: error possibly output before this message. Then install
+$0: a modern shell, or manually run the script under such a
+$0: shell if you do have one."
+ fi
+ exit 1
fi
+fi
+fi
+SHELL=${CONFIG_SHELL-/bin/sh}
+export SHELL
+# Unset more variables known to interfere with behavior of common tools.
+CLICOLOR_FORCE= GREP_OPTIONS=
+unset CLICOLOR_FORCE GREP_OPTIONS
-
-:
-(as_func_return () {
- (exit $1)
-}
-as_func_success () {
- as_func_return 0
-}
-as_func_failure () {
- as_func_return 1
-}
-as_func_ret_success () {
- return 0
-}
-as_func_ret_failure () {
- return 1
+## --------------------- ##
+## M4sh Shell Functions. ##
+## --------------------- ##
+# as_fn_unset VAR
+# ---------------
+# Portably unset VAR.
+as_fn_unset ()
+{
+ { eval $1=; unset $1;}
}
+as_unset=as_fn_unset
-exitcode=0
-if as_func_success; then
- :
-else
- exitcode=1
- echo as_func_success failed.
-fi
+# as_fn_set_status STATUS
+# -----------------------
+# Set $? to STATUS, without forking.
+as_fn_set_status ()
+{
+ return $1
+} # as_fn_set_status
-if as_func_failure; then
- exitcode=1
- echo as_func_failure succeeded.
-fi
+# as_fn_exit STATUS
+# -----------------
+# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
+as_fn_exit ()
+{
+ set +e
+ as_fn_set_status $1
+ exit $1
+} # as_fn_exit
+
+# as_fn_mkdir_p
+# -------------
+# Create "$as_dir" as a directory, including parents if necessary.
+as_fn_mkdir_p ()
+{
-if as_func_ret_success; then
- :
+ case $as_dir in #(
+ -*) as_dir=./$as_dir;;
+ esac
+ test -d "$as_dir" || eval $as_mkdir_p || {
+ as_dirs=
+ while :; do
+ case $as_dir in #(
+ *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
+ *) as_qdir=$as_dir;;
+ esac
+ as_dirs="'$as_qdir' $as_dirs"
+ as_dir=`$as_dirname -- "$as_dir" ||
+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$as_dir" : 'X\(//\)[^/]' \| \
+ X"$as_dir" : 'X\(//\)$' \| \
+ X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X"$as_dir" |
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)[^/].*/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\).*/{
+ s//\1/
+ q
+ }
+ s/.*/./; q'`
+ test -d "$as_dir" && break
+ done
+ test -z "$as_dirs" || eval "mkdir $as_dirs"
+ } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
+
+
+} # as_fn_mkdir_p
+# as_fn_append VAR VALUE
+# ----------------------
+# Append the text in VALUE to the end of the definition contained in VAR. Take
+# advantage of any shell optimizations that allow amortized linear growth over
+# repeated appends, instead of the typical quadratic growth present in naive
+# implementations.
+if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
+ eval 'as_fn_append ()
+ {
+ eval $1+=\$2
+ }'
else
- exitcode=1
- echo as_func_ret_success failed.
-fi
-
-if as_func_ret_failure; then
- exitcode=1
- echo as_func_ret_failure succeeded.
-fi
-
-if ( set x; as_func_ret_success y && test x = "$1" ); then
- :
+ as_fn_append ()
+ {
+ eval $1=\$$1\$2
+ }
+fi # as_fn_append
+
+# as_fn_arith ARG...
+# ------------------
+# Perform arithmetic evaluation on the ARGs, and store the result in the
+# global $as_val. Take advantage of shells that can avoid forks. The arguments
+# must be portable across $(()) and expr.
+if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
+ eval 'as_fn_arith ()
+ {
+ as_val=$(( $* ))
+ }'
else
- exitcode=1
- echo positional parameters were not saved.
-fi
-
-test $exitcode = 0) || { (exit 1); exit 1; }
-
-(
- as_lineno_1=$LINENO
- as_lineno_2=$LINENO
- test "x$as_lineno_1" != "x$as_lineno_2" &&
- test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2") || { (exit 1); exit 1; }
-
-_ASEOF
-}; then
- break
-fi
-
-fi
-
- done
-
- if test "x$CONFIG_SHELL" != x; then
- for as_var in BASH_ENV ENV
- do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
- done
- export CONFIG_SHELL
- exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"}
-fi
-
-
- if test $as_have_required = no; then
- echo This script requires a shell more modern than all the
- echo shells that I found on your system. Please install a
- echo modern shell, or manually run the script under such a
- echo shell if you do have one.
- { (exit 1); exit 1; }
-fi
-
-
-fi
-
-fi
-
+ as_fn_arith ()
+ {
+ as_val=`expr "$@" || test $? -eq 1`
+ }
+fi # as_fn_arith
-(eval "as_func_return () {
- (exit \$1)
-}
-as_func_success () {
- as_func_return 0
-}
-as_func_failure () {
- as_func_return 1
-}
-as_func_ret_success () {
- return 0
-}
-as_func_ret_failure () {
- return 1
-}
+# as_fn_error STATUS ERROR [LINENO LOG_FD]
+# ----------------------------------------
+# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are
+# provided, also output the error to LOG_FD, referencing LINENO. Then exit the
+# script with STATUS, using 1 if that was 0.
+as_fn_error ()
+{
+ as_status=$1; test $as_status -eq 0 && as_status=1
+ if test "$4"; then
+ as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
+ fi
+ $as_echo "$as_me: error: $2" >&2
+ as_fn_exit $as_status
+} # as_fn_error
-exitcode=0
-if as_func_success; then
- :
+if expr a : '\(a\)' >/dev/null 2>&1 &&
+ test "X`expr 00001 : '.*\(...\)'`" = X001; then
+ as_expr=expr
else
- exitcode=1
- echo as_func_success failed.
-fi
-
-if as_func_failure; then
- exitcode=1
- echo as_func_failure succeeded.
+ as_expr=false
fi
-if as_func_ret_success; then
- :
+if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
+ as_basename=basename
else
- exitcode=1
- echo as_func_ret_success failed.
-fi
-
-if as_func_ret_failure; then
- exitcode=1
- echo as_func_ret_failure succeeded.
+ as_basename=false
fi
-if ( set x; as_func_ret_success y && test x = \"\$1\" ); then
- :
+if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
+ as_dirname=dirname
else
- exitcode=1
- echo positional parameters were not saved.
+ as_dirname=false
fi
-test \$exitcode = 0") || {
- echo No shell found that supports shell functions.
- echo Please tell bug-autoconf@gnu.org about your system,
- echo including any error possibly output before this message.
- echo This can help us improve future autoconf versions.
- echo Configuration will now proceed without shell functions.
-}
-
+as_me=`$as_basename -- "$0" ||
+$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
+ X"$0" : 'X\(//\)$' \| \
+ X"$0" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X/"$0" |
+ sed '/^.*\/\([^/][^/]*\)\/*$/{
+ s//\1/
+ q
+ }
+ /^X\/\(\/\/\)$/{
+ s//\1/
+ q
+ }
+ /^X\/\(\/\).*/{
+ s//\1/
+ q
+ }
+ s/.*/./; q'`
+# Avoid depending upon Character Ranges.
+as_cr_letters='abcdefghijklmnopqrstuvwxyz'
+as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
+as_cr_Letters=$as_cr_letters$as_cr_LETTERS
+as_cr_digits='0123456789'
+as_cr_alnum=$as_cr_Letters$as_cr_digits
- as_lineno_1=$LINENO
- as_lineno_2=$LINENO
- test "x$as_lineno_1" != "x$as_lineno_2" &&
- test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || {
- # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
- # uniformly replaced by the line number. The first 'sed' inserts a
- # line-number line after each line using $LINENO; the second 'sed'
- # does the real work. The second script uses 'N' to pair each
- # line-number line with the line containing $LINENO, and appends
- # trailing '-' during substitution so that $LINENO is not a special
- # case at line end.
- # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
- # scripts with optimization help from Paolo Bonzini. Blame Lee
- # E. McMahon (1931-1989) for sed's syntax. :-)
+ as_lineno_1=$LINENO as_lineno_1a=$LINENO
+ as_lineno_2=$LINENO as_lineno_2a=$LINENO
+ eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" &&
+ test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || {
+ # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-)
sed -n '
p
/[$]LINENO/=
@@ -474,8 +451,7 @@ test \$exitcode = 0") || {
s/-\n.*//
' >$as_me.lineno &&
chmod +x "$as_me.lineno" ||
- { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2
- { (exit 1); exit 1; }; }
+ { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
# Don't try to exec as it changes $[0], causing all sort of problems
# (the dirname of $[0] is not the place where we might find the
@@ -485,29 +461,18 @@ test \$exitcode = 0") || {
exit
}
-
-if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
- as_dirname=dirname
-else
- as_dirname=false
-fi
-
ECHO_C= ECHO_N= ECHO_T=
-case `echo -n x` in
+case `echo -n x` in #(((((
-n*)
- case `echo 'x\c'` in
+ case `echo 'xy\c'` in
*c*) ECHO_T=' ';; # ECHO_T is single tab character.
- *) ECHO_C='\c';;
+ xy) ECHO_C='\c';;
+ *) echo `echo ksh88 bug on AIX 6.1` > /dev/null
+ ECHO_T=' ';;
esac;;
*)
ECHO_N='-n';;
esac
-if expr a : '\(a\)' >/dev/null 2>&1 &&
- test "X`expr 00001 : '.*\(...\)'`" = X001; then
- as_expr=expr
-else
- as_expr=false
-fi
rm -f conf$$ conf$$.exe conf$$.file
if test -d conf$$.dir; then
@@ -537,7 +502,7 @@ rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
rmdir conf$$.dir 2>/dev/null
if mkdir -p . 2>/dev/null; then
- as_mkdir_p=:
+ as_mkdir_p='mkdir -p "$as_dir"'
else
test -d ./-p && rmdir ./-p
as_mkdir_p=false
@@ -556,10 +521,10 @@ else
if test -d "$1"; then
test -d "$1/.";
else
- case $1 in
+ case $1 in #(
-*)set "./$1";;
esac;
- case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in
+ case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
???[sx]*):;;*)false;;esac;fi
'\'' sh
'
@@ -573,11 +538,11 @@ as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
-
-exec 7<&0 </dev/null 6>&1
+test -n "$DJDIR" || exec 7<&0 </dev/null
+exec 6>&1
# Name of the host.
-# hostname on some systems (SVR3.2, Linux) returns a bogus exit status,
+# hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status,
# so uname gets run too.
ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
@@ -592,14 +557,14 @@ cross_compiling=no
subdirs=
MFLAGS=
MAKEFLAGS=
-SHELL=${CONFIG_SHELL-/bin/sh}
# Identity of this package.
PACKAGE_NAME='readline'
PACKAGE_TARNAME='readline'
-PACKAGE_VERSION='6.2'
-PACKAGE_STRING='readline 6.2'
+PACKAGE_VERSION='6.3'
+PACKAGE_STRING='readline 6.3'
PACKAGE_BUGREPORT='bug-readline@gnu.org'
+PACKAGE_URL=''
ac_unique_file="readline.h"
# Factoring default headers for most tests.
@@ -725,6 +690,7 @@ bindir
program_transform_name
prefix
exec_prefix
+PACKAGE_URL
PACKAGE_BUGREPORT
PACKAGE_STRING
PACKAGE_VERSION
@@ -813,8 +779,9 @@ do
fi
case $ac_option in
- *=*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;
- *) ac_optarg=yes ;;
+ *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;
+ *=) ac_optarg= ;;
+ *) ac_optarg=yes ;;
esac
# Accept the important Cygnus configure options, so we can diagnose typos.
@@ -859,8 +826,7 @@ do
ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
# Reject names that are not valid shell variable names.
expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
- { $as_echo "$as_me: error: invalid feature name: $ac_useropt" >&2
- { (exit 1); exit 1; }; }
+ as_fn_error $? "invalid feature name: $ac_useropt"
ac_useropt_orig=$ac_useropt
ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
case $ac_user_opts in
@@ -886,8 +852,7 @@ do
ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
# Reject names that are not valid shell variable names.
expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
- { $as_echo "$as_me: error: invalid feature name: $ac_useropt" >&2
- { (exit 1); exit 1; }; }
+ as_fn_error $? "invalid feature name: $ac_useropt"
ac_useropt_orig=$ac_useropt
ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
case $ac_user_opts in
@@ -1091,8 +1056,7 @@ do
ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
# Reject names that are not valid shell variable names.
expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
- { $as_echo "$as_me: error: invalid package name: $ac_useropt" >&2
- { (exit 1); exit 1; }; }
+ as_fn_error $? "invalid package name: $ac_useropt"
ac_useropt_orig=$ac_useropt
ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
case $ac_user_opts in
@@ -1108,8 +1072,7 @@ do
ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'`
# Reject names that are not valid shell variable names.
expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
- { $as_echo "$as_me: error: invalid package name: $ac_useropt" >&2
- { (exit 1); exit 1; }; }
+ as_fn_error $? "invalid package name: $ac_useropt"
ac_useropt_orig=$ac_useropt
ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
case $ac_user_opts in
@@ -1139,17 +1102,17 @@ do
| --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
x_libraries=$ac_optarg ;;
- -*) { $as_echo "$as_me: error: unrecognized option: $ac_option
-Try \`$0 --help' for more information." >&2
- { (exit 1); exit 1; }; }
+ -*) as_fn_error $? "unrecognized option: \`$ac_option'
+Try \`$0 --help' for more information"
;;
*=*)
ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
# Reject names that are not valid shell variable names.
- expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null &&
- { $as_echo "$as_me: error: invalid variable name: $ac_envvar" >&2
- { (exit 1); exit 1; }; }
+ case $ac_envvar in #(
+ '' | [0-9]* | *[!_$as_cr_alnum]* )
+ as_fn_error $? "invalid variable name: \`$ac_envvar'" ;;
+ esac
eval $ac_envvar=\$ac_optarg
export $ac_envvar ;;
@@ -1158,7 +1121,7 @@ Try \`$0 --help' for more information." >&2
$as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2
expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
$as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2
- : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
+ : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}"
;;
esac
@@ -1166,15 +1129,13 @@ done
if test -n "$ac_prev"; then
ac_option=--`echo $ac_prev | sed 's/_/-/g'`
- { $as_echo "$as_me: error: missing argument to $ac_option" >&2
- { (exit 1); exit 1; }; }
+ as_fn_error $? "missing argument to $ac_option"
fi
if test -n "$ac_unrecognized_opts"; then
case $enable_option_checking in
no) ;;
- fatal) { $as_echo "$as_me: error: unrecognized options: $ac_unrecognized_opts" >&2
- { (exit 1); exit 1; }; } ;;
+ fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;;
*) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;;
esac
fi
@@ -1197,8 +1158,7 @@ do
[\\/$]* | ?:[\\/]* ) continue;;
NONE | '' ) case $ac_var in *prefix ) continue;; esac;;
esac
- { $as_echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2
- { (exit 1); exit 1; }; }
+ as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val"
done
# There might be people who depend on the old broken behavior: `$host'
@@ -1212,8 +1172,8 @@ target=$target_alias
if test "x$host_alias" != x; then
if test "x$build_alias" = x; then
cross_compiling=maybe
- $as_echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host.
- If a cross compiler is detected then cross compile mode will be used." >&2
+ $as_echo "$as_me: WARNING: if you wanted to set the --build type, don't use --host.
+ If a cross compiler is detected then cross compile mode will be used" >&2
elif test "x$build_alias" != "x$host_alias"; then
cross_compiling=yes
fi
@@ -1228,11 +1188,9 @@ test "$silent" = yes && exec 6>/dev/null
ac_pwd=`pwd` && test -n "$ac_pwd" &&
ac_ls_di=`ls -di .` &&
ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` ||
- { $as_echo "$as_me: error: working directory cannot be determined" >&2
- { (exit 1); exit 1; }; }
+ as_fn_error $? "working directory cannot be determined"
test "X$ac_ls_di" = "X$ac_pwd_ls_di" ||
- { $as_echo "$as_me: error: pwd does not report name of working directory" >&2
- { (exit 1); exit 1; }; }
+ as_fn_error $? "pwd does not report name of working directory"
# Find the source files, if location was not specified.
@@ -1271,13 +1229,11 @@ else
fi
if test ! -r "$srcdir/$ac_unique_file"; then
test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .."
- { $as_echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2
- { (exit 1); exit 1; }; }
+ as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir"
fi
ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work"
ac_abs_confdir=`(
- cd "$srcdir" && test -r "./$ac_unique_file" || { $as_echo "$as_me: error: $ac_msg" >&2
- { (exit 1); exit 1; }; }
+ cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg"
pwd)`
# When building in place, set srcdir=.
if test "$ac_abs_confdir" = "$ac_pwd"; then
@@ -1303,7 +1259,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures readline 6.2 to adapt to many kinds of systems.
+\`configure' configures readline 6.3 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1317,7 +1273,7 @@ Configuration:
--help=short display options specific to this package
--help=recursive display the short help of all the included packages
-V, --version display version information and exit
- -q, --quiet, --silent do not print \`checking...' messages
+ -q, --quiet, --silent do not print \`checking ...' messages
--cache-file=FILE cache test results in FILE [disabled]
-C, --config-cache alias for \`--cache-file=config.cache'
-n, --no-create do not create output files
@@ -1368,7 +1324,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of readline 6.2:";;
+ short | recursive ) echo "Configuration of readline 6.3:";;
esac
cat <<\_ACEOF
@@ -1377,8 +1333,8 @@ Optional Features:
--disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
--enable-FEATURE[=ARG] include FEATURE [ARG=yes]
--enable-multibyte enable multibyte characters if OS supports them
- --enable-shared build shared libraries [default=YES]
- --enable-static build static libraries [default=YES]
+ --enable-shared build shared libraries [[default=YES]]
+ --enable-static build static libraries [[default=YES]]
--disable-largefile omit support for large files
Optional Packages:
@@ -1394,7 +1350,7 @@ Some influential environment variables:
LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a
nonstandard directory <lib dir>
LIBS libraries to pass to the linker, e.g. -l<library>
- CPPFLAGS C/C++/Objective C preprocessor flags, e.g. -I<include dir> if
+ CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if
you have headers in a nonstandard directory <include dir>
CPP C preprocessor
@@ -1464,22 +1420,477 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-readline configure 6.2
-generated by GNU Autoconf 2.63
+readline configure 6.3
+generated by GNU Autoconf 2.68
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
-2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+Copyright (C) 2010 Free Software Foundation, Inc.
This configure script is free software; the Free Software Foundation
gives unlimited permission to copy, distribute and modify it.
_ACEOF
exit
fi
+
+## ------------------------ ##
+## Autoconf initialization. ##
+## ------------------------ ##
+
+# ac_fn_c_try_compile LINENO
+# --------------------------
+# Try to compile conftest.$ac_ext, and return whether this succeeded.
+ac_fn_c_try_compile ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ rm -f conftest.$ac_objext
+ if { { ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_compile") 2>conftest.err
+ ac_status=$?
+ if test -s conftest.err; then
+ grep -v '^ *+' conftest.err >conftest.er1
+ cat conftest.er1 >&5
+ mv -f conftest.er1 conftest.err
+ fi
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then :
+ ac_retval=0
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_retval=1
+fi
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+ as_fn_set_status $ac_retval
+
+} # ac_fn_c_try_compile
+
+# ac_fn_c_try_cpp LINENO
+# ----------------------
+# Try to preprocess conftest.$ac_ext, and return whether this succeeded.
+ac_fn_c_try_cpp ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ if { { ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err
+ ac_status=$?
+ if test -s conftest.err; then
+ grep -v '^ *+' conftest.err >conftest.er1
+ cat conftest.er1 >&5
+ mv -f conftest.er1 conftest.err
+ fi
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; } > conftest.i && {
+ test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ }; then :
+ ac_retval=0
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_retval=1
+fi
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+ as_fn_set_status $ac_retval
+
+} # ac_fn_c_try_cpp
+
+# ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES
+# -------------------------------------------------------
+# Tests whether HEADER exists, giving a warning if it cannot be compiled using
+# the include files in INCLUDES and setting the cache variable VAR
+# accordingly.
+ac_fn_c_check_header_mongrel ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ if eval \${$3+:} false; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+$as_echo_n "checking for $2... " >&6; }
+if eval \${$3+:} false; then :
+ $as_echo_n "(cached) " >&6
+fi
+eval ac_res=\$$3
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+else
+ # Is the header compilable?
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5
+$as_echo_n "checking $2 usability... " >&6; }
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+$4
+#include <$2>
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ ac_header_compiler=yes
+else
+ ac_header_compiler=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5
+$as_echo "$ac_header_compiler" >&6; }
+
+# Is the header present?
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5
+$as_echo_n "checking $2 presence... " >&6; }
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <$2>
+_ACEOF
+if ac_fn_c_try_cpp "$LINENO"; then :
+ ac_header_preproc=yes
+else
+ ac_header_preproc=no
+fi
+rm -f conftest.err conftest.i conftest.$ac_ext
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5
+$as_echo "$ac_header_preproc" >&6; }
+
+# So? What about this header?
+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #((
+ yes:no: )
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5
+$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
+$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
+ ;;
+ no:yes:* )
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5
+$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5
+$as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5
+$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5
+$as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
+$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
+( $as_echo "## ----------------------------------- ##
+## Report this to bug-readline@gnu.org ##
+## ----------------------------------- ##"
+ ) | sed "s/^/$as_me: WARNING: /" >&2
+ ;;
+esac
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+$as_echo_n "checking for $2... " >&6; }
+if eval \${$3+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ eval "$3=\$ac_header_compiler"
+fi
+eval ac_res=\$$3
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+fi
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+
+} # ac_fn_c_check_header_mongrel
+
+# ac_fn_c_try_run LINENO
+# ----------------------
+# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes
+# that executables *can* be run.
+ac_fn_c_try_run ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ if { { ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
+ { { case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; }; then :
+ ac_retval=0
+else
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_retval=$ac_status
+fi
+ rm -rf conftest.dSYM conftest_ipa8_conftest.oo
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+ as_fn_set_status $ac_retval
+
+} # ac_fn_c_try_run
+
+# ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES
+# -------------------------------------------------------
+# Tests whether HEADER exists and can be compiled using the include files in
+# INCLUDES, setting the cache variable VAR accordingly.
+ac_fn_c_check_header_compile ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+$as_echo_n "checking for $2... " >&6; }
+if eval \${$3+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+$4
+#include <$2>
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ eval "$3=yes"
+else
+ eval "$3=no"
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+eval ac_res=\$$3
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+
+} # ac_fn_c_check_header_compile
+
+# ac_fn_c_check_type LINENO TYPE VAR INCLUDES
+# -------------------------------------------
+# Tests whether TYPE exists after having included INCLUDES, setting cache
+# variable VAR accordingly.
+ac_fn_c_check_type ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+$as_echo_n "checking for $2... " >&6; }
+if eval \${$3+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ eval "$3=no"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+$4
+int
+main ()
+{
+if (sizeof ($2))
+ return 0;
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+$4
+int
+main ()
+{
+if (sizeof (($2)))
+ return 0;
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+
+else
+ eval "$3=yes"
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+eval ac_res=\$$3
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+
+} # ac_fn_c_check_type
+
+# ac_fn_c_try_link LINENO
+# -----------------------
+# Try to link conftest.$ac_ext, and return whether this succeeded.
+ac_fn_c_try_link ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ rm -f conftest.$ac_objext conftest$ac_exeext
+ if { { ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_link") 2>conftest.err
+ ac_status=$?
+ if test -s conftest.err; then
+ grep -v '^ *+' conftest.err >conftest.er1
+ cat conftest.er1 >&5
+ mv -f conftest.er1 conftest.err
+ fi
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then :
+ ac_retval=0
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_retval=1
+fi
+ # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information
+ # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would
+ # interfere with the next link command; also delete a directory that is
+ # left behind by Apple's compiler. We do this before executing the actions.
+ rm -rf conftest.dSYM conftest_ipa8_conftest.oo
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+ as_fn_set_status $ac_retval
+
+} # ac_fn_c_try_link
+
+# ac_fn_c_check_func LINENO FUNC VAR
+# ----------------------------------
+# Tests whether FUNC exists, setting the cache variable VAR accordingly
+ac_fn_c_check_func ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+$as_echo_n "checking for $2... " >&6; }
+if eval \${$3+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+/* Define $2 to an innocuous variant, in case <limits.h> declares $2.
+ For example, HP-UX 11i <limits.h> declares gettimeofday. */
+#define $2 innocuous_$2
+
+/* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char $2 (); below.
+ Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+ <limits.h> exists even on freestanding compilers. */
+
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+
+#undef $2
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char $2 ();
+/* The GNU C library defines this for functions which it implements
+ to always fail with ENOSYS. Some functions are actually named
+ something starting with __ and the normal name is an alias. */
+#if defined __stub_$2 || defined __stub___$2
+choke me
+#endif
+
+int
+main ()
+{
+return $2 ();
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+ eval "$3=yes"
+else
+ eval "$3=no"
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+fi
+eval ac_res=\$$3
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+
+} # ac_fn_c_check_func
+
+# ac_fn_c_check_decl LINENO SYMBOL VAR INCLUDES
+# ---------------------------------------------
+# Tests whether SYMBOL is declared in INCLUDES, setting cache variable VAR
+# accordingly.
+ac_fn_c_check_decl ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ as_decl_name=`echo $2|sed 's/ *(.*//'`
+ as_decl_use=`echo $2|sed -e 's/(/((/' -e 's/)/) 0&/' -e 's/,/) 0& (/g'`
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $as_decl_name is declared" >&5
+$as_echo_n "checking whether $as_decl_name is declared... " >&6; }
+if eval \${$3+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+$4
+int
+main ()
+{
+#ifndef $as_decl_name
+#ifdef __cplusplus
+ (void) $as_decl_use;
+#else
+ (void) $as_decl_name;
+#endif
+#endif
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ eval "$3=yes"
+else
+ eval "$3=no"
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+eval ac_res=\$$3
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+
+} # ac_fn_c_check_decl
cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by readline $as_me 6.2, which was
-generated by GNU Autoconf 2.63. Invocation command line was
+It was created by readline $as_me 6.3, which was
+generated by GNU Autoconf 2.68. Invocation command line was
$ $0 $@
@@ -1515,8 +1926,8 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- $as_echo "PATH: $as_dir"
-done
+ $as_echo "PATH: $as_dir"
+ done
IFS=$as_save_IFS
} >&5
@@ -1553,9 +1964,9 @@ do
ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
esac
case $ac_pass in
- 1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;;
+ 1) as_fn_append ac_configure_args0 " '$ac_arg'" ;;
2)
- ac_configure_args1="$ac_configure_args1 '$ac_arg'"
+ as_fn_append ac_configure_args1 " '$ac_arg'"
if test $ac_must_keep_next = true; then
ac_must_keep_next=false # Got value, back to normal.
else
@@ -1571,13 +1982,13 @@ do
-* ) ac_must_keep_next=true ;;
esac
fi
- ac_configure_args="$ac_configure_args '$ac_arg'"
+ as_fn_append ac_configure_args " '$ac_arg'"
;;
esac
done
done
-$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; }
-$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; }
+{ ac_configure_args0=; unset ac_configure_args0;}
+{ ac_configure_args1=; unset ac_configure_args1;}
# When interrupted or exit'd, cleanup temporary files, and complete
# config.log. We remove comments because anyway the quotes in there
@@ -1589,11 +2000,9 @@ trap 'exit_status=$?
{
echo
- cat <<\_ASBOX
-## ---------------- ##
+ $as_echo "## ---------------- ##
## Cache variables. ##
-## ---------------- ##
-_ASBOX
+## ---------------- ##"
echo
# The following way of writing the cache mishandles newlines in values,
(
@@ -1602,13 +2011,13 @@ _ASBOX
case $ac_val in #(
*${as_nl}*)
case $ac_var in #(
- *_cv_*) { $as_echo "$as_me:$LINENO: WARNING: cache variable $ac_var contains a newline" >&5
+ *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
esac
case $ac_var in #(
_ | IFS | as_nl) ;; #(
BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
- *) $as_unset $ac_var ;;
+ *) { eval $ac_var=; unset $ac_var;} ;;
esac ;;
esac
done
@@ -1627,11 +2036,9 @@ $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
)
echo
- cat <<\_ASBOX
-## ----------------- ##
+ $as_echo "## ----------------- ##
## Output variables. ##
-## ----------------- ##
-_ASBOX
+## ----------------- ##"
echo
for ac_var in $ac_subst_vars
do
@@ -1644,11 +2051,9 @@ _ASBOX
echo
if test -n "$ac_subst_files"; then
- cat <<\_ASBOX
-## ------------------- ##
+ $as_echo "## ------------------- ##
## File substitutions. ##
-## ------------------- ##
-_ASBOX
+## ------------------- ##"
echo
for ac_var in $ac_subst_files
do
@@ -1662,11 +2067,9 @@ _ASBOX
fi
if test -s confdefs.h; then
- cat <<\_ASBOX
-## ----------- ##
+ $as_echo "## ----------- ##
## confdefs.h. ##
-## ----------- ##
-_ASBOX
+## ----------- ##"
echo
cat confdefs.h
echo
@@ -1680,46 +2083,53 @@ _ASBOX
exit $exit_status
' 0
for ac_signal in 1 2 13 15; do
- trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal
+ trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal
done
ac_signal=0
# confdefs.h avoids OS command line length limits that DEFS can exceed.
rm -f -r conftest* confdefs.h
+$as_echo "/* confdefs.h */" > confdefs.h
+
# Predefined preprocessor variables.
cat >>confdefs.h <<_ACEOF
#define PACKAGE_NAME "$PACKAGE_NAME"
_ACEOF
-
cat >>confdefs.h <<_ACEOF
#define PACKAGE_TARNAME "$PACKAGE_TARNAME"
_ACEOF
-
cat >>confdefs.h <<_ACEOF
#define PACKAGE_VERSION "$PACKAGE_VERSION"
_ACEOF
-
cat >>confdefs.h <<_ACEOF
#define PACKAGE_STRING "$PACKAGE_STRING"
_ACEOF
-
cat >>confdefs.h <<_ACEOF
#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
_ACEOF
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE_URL "$PACKAGE_URL"
+_ACEOF
+
# Let the site file select an alternate cache file if it wants to.
# Prefer an explicitly selected file to automatically selected ones.
ac_site_file1=NONE
ac_site_file2=NONE
if test -n "$CONFIG_SITE"; then
- ac_site_file1=$CONFIG_SITE
+ # We do not want a PATH search for config.site.
+ case $CONFIG_SITE in #((
+ -*) ac_site_file1=./$CONFIG_SITE;;
+ */*) ac_site_file1=$CONFIG_SITE;;
+ *) ac_site_file1=./$CONFIG_SITE;;
+ esac
elif test "x$prefix" != xNONE; then
ac_site_file1=$prefix/share/config.site
ac_site_file2=$prefix/etc/config.site
@@ -1730,19 +2140,23 @@ fi
for ac_site_file in "$ac_site_file1" "$ac_site_file2"
do
test "x$ac_site_file" = xNONE && continue
- if test -r "$ac_site_file"; then
- { $as_echo "$as_me:$LINENO: loading site script $ac_site_file" >&5
+ if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5
$as_echo "$as_me: loading site script $ac_site_file" >&6;}
sed 's/^/| /' "$ac_site_file" >&5
- . "$ac_site_file"
+ . "$ac_site_file" \
+ || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error $? "failed to load site script $ac_site_file
+See \`config.log' for more details" "$LINENO" 5; }
fi
done
if test -r "$cache_file"; then
- # Some versions of bash will fail to source /dev/null (special
- # files actually), so we avoid doing that.
- if test -f "$cache_file"; then
- { $as_echo "$as_me:$LINENO: loading cache $cache_file" >&5
+ # Some versions of bash will fail to source /dev/null (special files
+ # actually), so we avoid doing that. DJGPP emulates it as a regular file.
+ if test /dev/null != "$cache_file" && test -f "$cache_file"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5
$as_echo "$as_me: loading cache $cache_file" >&6;}
case $cache_file in
[\\/]* | ?:[\\/]* ) . "$cache_file";;
@@ -1750,7 +2164,7 @@ $as_echo "$as_me: loading cache $cache_file" >&6;}
esac
fi
else
- { $as_echo "$as_me:$LINENO: creating cache $cache_file" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5
$as_echo "$as_me: creating cache $cache_file" >&6;}
>$cache_file
fi
@@ -1765,11 +2179,11 @@ for ac_var in $ac_precious_vars; do
eval ac_new_val=\$ac_env_${ac_var}_value
case $ac_old_set,$ac_new_set in
set,)
- { $as_echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
ac_cache_corrupted=: ;;
,set)
- { $as_echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5
$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
ac_cache_corrupted=: ;;
,);;
@@ -1779,17 +2193,17 @@ $as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
ac_old_val_w=`echo x $ac_old_val`
ac_new_val_w=`echo x $ac_new_val`
if test "$ac_old_val_w" != "$ac_new_val_w"; then
- { $as_echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5
$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
ac_cache_corrupted=:
else
- { $as_echo "$as_me:$LINENO: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5
$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;}
eval $ac_var=\$ac_old_val
fi
- { $as_echo "$as_me:$LINENO: former value: \`$ac_old_val'" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5
$as_echo "$as_me: former value: \`$ac_old_val'" >&2;}
- { $as_echo "$as_me:$LINENO: current value: \`$ac_new_val'" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5
$as_echo "$as_me: current value: \`$ac_new_val'" >&2;}
fi;;
esac
@@ -1801,43 +2215,20 @@ $as_echo "$as_me: current value: \`$ac_new_val'" >&2;}
esac
case " $ac_configure_args " in
*" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy.
- *) ac_configure_args="$ac_configure_args '$ac_arg'" ;;
+ *) as_fn_append ac_configure_args " '$ac_arg'" ;;
esac
fi
done
if $ac_cache_corrupted; then
- { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
- { $as_echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5
$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;}
- { { $as_echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5
-$as_echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;}
- { (exit 1); exit 1; }; }
+ as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5
fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+## -------------------- ##
+## Main body of script. ##
+## -------------------- ##
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
@@ -1867,9 +2258,7 @@ for ac_dir in ./support "$srcdir"/./support; do
fi
done
if test -z "$ac_aux_dir"; then
- { { $as_echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in ./support \"$srcdir\"/./support" >&5
-$as_echo "$as_me: error: cannot find install-sh or install.sh in ./support \"$srcdir\"/./support" >&2;}
- { (exit 1); exit 1; }; }
+ as_fn_error $? "cannot find install-sh, install.sh, or shtool in ./support \"$srcdir\"/./support" "$LINENO" 5
fi
# These three variables are undocumented and unsupported,
@@ -1884,39 +2273,31 @@ ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var.
ac_config_headers="$ac_config_headers config.h"
-LIBVERSION=6.2
+LIBVERSION=6.3
# Make sure we can run config.sub.
$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||
- { { $as_echo "$as_me:$LINENO: error: cannot run $SHELL $ac_aux_dir/config.sub" >&5
-$as_echo "$as_me: error: cannot run $SHELL $ac_aux_dir/config.sub" >&2;}
- { (exit 1); exit 1; }; }
+ as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5
-{ $as_echo "$as_me:$LINENO: checking build system type" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5
$as_echo_n "checking build system type... " >&6; }
-if test "${ac_cv_build+set}" = set; then
+if ${ac_cv_build+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_build_alias=$build_alias
test "x$ac_build_alias" = x &&
ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"`
test "x$ac_build_alias" = x &&
- { { $as_echo "$as_me:$LINENO: error: cannot guess build type; you must specify one" >&5
-$as_echo "$as_me: error: cannot guess build type; you must specify one" >&2;}
- { (exit 1); exit 1; }; }
+ as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5
ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` ||
- { { $as_echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $ac_build_alias failed" >&5
-$as_echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $ac_build_alias failed" >&2;}
- { (exit 1); exit 1; }; }
+ as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5
fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_build" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5
$as_echo "$ac_cv_build" >&6; }
case $ac_cv_build in
*-*-*) ;;
-*) { { $as_echo "$as_me:$LINENO: error: invalid value of canonical build" >&5
-$as_echo "$as_me: error: invalid value of canonical build" >&2;}
- { (exit 1); exit 1; }; };;
+*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;;
esac
build=$ac_cv_build
ac_save_IFS=$IFS; IFS='-'
@@ -1932,28 +2313,24 @@ IFS=$ac_save_IFS
case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac
-{ $as_echo "$as_me:$LINENO: checking host system type" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5
$as_echo_n "checking host system type... " >&6; }
-if test "${ac_cv_host+set}" = set; then
+if ${ac_cv_host+:} false; then :
$as_echo_n "(cached) " >&6
else
if test "x$host_alias" = x; then
ac_cv_host=$ac_cv_build
else
ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` ||
- { { $as_echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $host_alias failed" >&5
-$as_echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $host_alias failed" >&2;}
- { (exit 1); exit 1; }; }
+ as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5
fi
fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_host" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5
$as_echo "$ac_cv_host" >&6; }
case $ac_cv_host in
*-*-*) ;;
-*) { { $as_echo "$as_me:$LINENO: error: invalid value of canonical host" >&5
-$as_echo "$as_me: error: invalid value of canonical host" >&2;}
- { (exit 1); exit 1; }; };;
+*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;;
esac
host=$ac_cv_host
ac_save_IFS=$IFS; IFS='-'
@@ -1970,18 +2347,19 @@ case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac
+
opt_curses=no
opt_purify=no
# Check whether --with-curses was given.
-if test "${with_curses+set}" = set; then
+if test "${with_curses+set}" = set; then :
withval=$with_curses; opt_curses=$withval
fi
# Check whether --with-purify was given.
-if test "${with_purify+set}" = set; then
+if test "${with_purify+set}" = set; then :
withval=$with_purify; opt_purify=$withval
fi
@@ -2001,25 +2379,23 @@ opt_static_libs=yes
opt_shared_libs=yes
# Check whether --enable-multibyte was given.
-if test "${enable_multibyte+set}" = set; then
+if test "${enable_multibyte+set}" = set; then :
enableval=$enable_multibyte; opt_multibyte=$enableval
fi
# Check whether --enable-shared was given.
-if test "${enable_shared+set}" = set; then
+if test "${enable_shared+set}" = set; then :
enableval=$enable_shared; opt_shared_libs=$enableval
fi
# Check whether --enable-static was given.
-if test "${enable_static+set}" = set; then
+if test "${enable_static+set}" = set; then :
enableval=$enable_static; opt_static_libs=$enableval
fi
if test $opt_multibyte = no; then
-cat >>confdefs.h <<\_ACEOF
-#define NO_MULTIBYTE_SUPPORT 1
-_ACEOF
+$as_echo "#define NO_MULTIBYTE_SUPPORT 1" >>confdefs.h
fi
@@ -2056,11 +2432,11 @@ echo ""
# We want these before the checks, so the checks can modify their values.
test -z "$CFLAGS" && CFLAGS=-g auto_cflags=1
-{ $as_echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5
$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
set x ${MAKE-make}
ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
-if { as_var=ac_cv_prog_make_${ac_make}_set; eval "test \"\${$as_var+set}\" = set"; }; then
+if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then :
$as_echo_n "(cached) " >&6
else
cat >conftest.make <<\_ACEOF
@@ -2068,7 +2444,7 @@ SHELL = /bin/sh
all:
@echo '@@@%%%=$(MAKE)=@@@%%%'
_ACEOF
-# GNU make sometimes prints "make[1]: Entering...", which would confuse us.
+# GNU make sometimes prints "make[1]: Entering ...", which would confuse us.
case `${MAKE-make} -f conftest.make 2>/dev/null` in
*@@@%%%=?*=@@@%%%*)
eval ac_cv_prog_make_${ac_make}_set=yes;;
@@ -2078,11 +2454,11 @@ esac
rm -f conftest.make
fi
if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then
- { $as_echo "$as_me:$LINENO: result: yes" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
SET_MAKE=
else
- { $as_echo "$as_me:$LINENO: result: no" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
SET_MAKE="MAKE=${MAKE-make}"
fi
@@ -2095,9 +2471,9 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
set dummy ${ac_tool_prefix}gcc; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then
+if ${ac_cv_prog_CC+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$CC"; then
@@ -2108,24 +2484,24 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_CC="${ac_tool_prefix}gcc"
- $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
IFS=$as_save_IFS
fi
fi
CC=$ac_cv_prog_CC
if test -n "$CC"; then
- { $as_echo "$as_me:$LINENO: result: $CC" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
$as_echo "$CC" >&6; }
else
- { $as_echo "$as_me:$LINENO: result: no" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
fi
@@ -2135,9 +2511,9 @@ if test -z "$ac_cv_prog_CC"; then
ac_ct_CC=$CC
# Extract the first word of "gcc", so it can be a program name with args.
set dummy gcc; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+if ${ac_cv_prog_ac_ct_CC+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$ac_ct_CC"; then
@@ -2148,24 +2524,24 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_ac_ct_CC="gcc"
- $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
IFS=$as_save_IFS
fi
fi
ac_ct_CC=$ac_cv_prog_ac_ct_CC
if test -n "$ac_ct_CC"; then
- { $as_echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
$as_echo "$ac_ct_CC" >&6; }
else
- { $as_echo "$as_me:$LINENO: result: no" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
fi
@@ -2174,7 +2550,7 @@ fi
else
case $cross_compiling:$ac_tool_warned in
yes:)
-{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
ac_tool_warned=yes ;;
esac
@@ -2188,9 +2564,9 @@ if test -z "$CC"; then
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
set dummy ${ac_tool_prefix}cc; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then
+if ${ac_cv_prog_CC+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$CC"; then
@@ -2201,24 +2577,24 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_CC="${ac_tool_prefix}cc"
- $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
IFS=$as_save_IFS
fi
fi
CC=$ac_cv_prog_CC
if test -n "$CC"; then
- { $as_echo "$as_me:$LINENO: result: $CC" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
$as_echo "$CC" >&6; }
else
- { $as_echo "$as_me:$LINENO: result: no" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
fi
@@ -2228,9 +2604,9 @@ fi
if test -z "$CC"; then
# Extract the first word of "cc", so it can be a program name with args.
set dummy cc; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then
+if ${ac_cv_prog_CC+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$CC"; then
@@ -2242,18 +2618,18 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
ac_prog_rejected=yes
continue
fi
ac_cv_prog_CC="cc"
- $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
IFS=$as_save_IFS
if test $ac_prog_rejected = yes; then
@@ -2272,10 +2648,10 @@ fi
fi
CC=$ac_cv_prog_CC
if test -n "$CC"; then
- { $as_echo "$as_me:$LINENO: result: $CC" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
$as_echo "$CC" >&6; }
else
- { $as_echo "$as_me:$LINENO: result: no" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
fi
@@ -2287,9 +2663,9 @@ if test -z "$CC"; then
do
# Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then
+if ${ac_cv_prog_CC+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$CC"; then
@@ -2300,24 +2676,24 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
- $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
IFS=$as_save_IFS
fi
fi
CC=$ac_cv_prog_CC
if test -n "$CC"; then
- { $as_echo "$as_me:$LINENO: result: $CC" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
$as_echo "$CC" >&6; }
else
- { $as_echo "$as_me:$LINENO: result: no" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
fi
@@ -2331,9 +2707,9 @@ if test -z "$CC"; then
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+if ${ac_cv_prog_ac_ct_CC+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$ac_ct_CC"; then
@@ -2344,24 +2720,24 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_ac_ct_CC="$ac_prog"
- $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
IFS=$as_save_IFS
fi
fi
ac_ct_CC=$ac_cv_prog_ac_ct_CC
if test -n "$ac_ct_CC"; then
- { $as_echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
$as_echo "$ac_ct_CC" >&6; }
else
- { $as_echo "$as_me:$LINENO: result: no" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
fi
@@ -2374,7 +2750,7 @@ done
else
case $cross_compiling:$ac_tool_warned in
yes:)
-{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
ac_tool_warned=yes ;;
esac
@@ -2385,57 +2761,37 @@ fi
fi
-test -z "$CC" && { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: no acceptable C compiler found in \$PATH
-See \`config.log' for more details." >&2;}
- { (exit 1); exit 1; }; }; }
+as_fn_error $? "no acceptable C compiler found in \$PATH
+See \`config.log' for more details" "$LINENO" 5; }
# Provide some information about the compiler.
-$as_echo "$as_me:$LINENO: checking for C compiler version" >&5
+$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
set X $ac_compile
ac_compiler=$2
-{ (ac_try="$ac_compiler --version >&5"
+for ac_option in --version -v -V -qversion; do
+ { { ac_try="$ac_compiler $ac_option >&5"
case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compiler --version >&5") 2>&5
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_compiler $ac_option >&5") 2>conftest.err
ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }
-{ (ac_try="$ac_compiler -v >&5"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compiler -v >&5") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }
-{ (ac_try="$ac_compiler -V >&5"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compiler -V >&5") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }
+ if test -s conftest.err; then
+ sed '10a\
+... rest of stderr output deleted ...
+ 10q' conftest.err >conftest.er1
+ cat conftest.er1 >&5
+ fi
+ rm -f conftest.er1 conftest.err
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }
+done
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
@@ -2451,8 +2807,8 @@ ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out"
# Try to create an executable without -o first, disregard a.out.
# It will help us diagnose broken compilers, and finding out an intuition
# of exeext.
-{ $as_echo "$as_me:$LINENO: checking for C compiler default output file name" >&5
-$as_echo_n "checking for C compiler default output file name... " >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5
+$as_echo_n "checking whether the C compiler works... " >&6; }
ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
# The possible output files:
@@ -2468,17 +2824,17 @@ do
done
rm -f $ac_rmfiles
-if { (ac_try="$ac_link_default"
+if { { ac_try="$ac_link_default"
case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
(eval "$ac_link_default") 2>&5
ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; then
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; then :
# Autoconf-2.13 could set the ac_cv_exeext variable to `no'.
# So ignore a value of `no', otherwise this would lead to `EXEEXT = no'
# in a Makefile. We should not override ac_cv_exeext if it was cached,
@@ -2495,7 +2851,7 @@ do
# certainly right.
break;;
*.* )
- if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no;
+ if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no;
then :; else
ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
fi
@@ -2514,84 +2870,41 @@ test "$ac_cv_exeext" = no && ac_cv_exeext=
else
ac_file=''
fi
-
-{ $as_echo "$as_me:$LINENO: result: $ac_file" >&5
-$as_echo "$ac_file" >&6; }
-if test -z "$ac_file"; then
- $as_echo "$as_me: failed program was:" >&5
+if test -z "$ac_file"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+$as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
-{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: C compiler cannot create executables
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: C compiler cannot create executables
-See \`config.log' for more details." >&2;}
- { (exit 77); exit 77; }; }; }
+as_fn_error 77 "C compiler cannot create executables
+See \`config.log' for more details" "$LINENO" 5; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
fi
-
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5
+$as_echo_n "checking for C compiler default output file name... " >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5
+$as_echo "$ac_file" >&6; }
ac_exeext=$ac_cv_exeext
-# Check that the compiler produces executables we can run. If not, either
-# the compiler is broken, or we cross compile.
-{ $as_echo "$as_me:$LINENO: checking whether the C compiler works" >&5
-$as_echo_n "checking whether the C compiler works... " >&6; }
-# FIXME: These cross compiler hacks should be removed for Autoconf 3.0
-# If not cross compiling, check that we can run a simple program.
-if test "$cross_compiling" != yes; then
- if { ac_try='./$ac_file'
- { (case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_try") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cross_compiling=no
- else
- if test "$cross_compiling" = maybe; then
- cross_compiling=yes
- else
- { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: cannot run C compiled programs.
-If you meant to cross compile, use \`--host'.
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: cannot run C compiled programs.
-If you meant to cross compile, use \`--host'.
-See \`config.log' for more details." >&2;}
- { (exit 1); exit 1; }; }; }
- fi
- fi
-fi
-{ $as_echo "$as_me:$LINENO: result: yes" >&5
-$as_echo "yes" >&6; }
-
rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out
ac_clean_files=$ac_clean_files_save
-# Check that the compiler produces executables we can run. If not, either
-# the compiler is broken, or we cross compile.
-{ $as_echo "$as_me:$LINENO: checking whether we are cross compiling" >&5
-$as_echo_n "checking whether we are cross compiling... " >&6; }
-{ $as_echo "$as_me:$LINENO: result: $cross_compiling" >&5
-$as_echo "$cross_compiling" >&6; }
-
-{ $as_echo "$as_me:$LINENO: checking for suffix of executables" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5
$as_echo_n "checking for suffix of executables... " >&6; }
-if { (ac_try="$ac_link"
+if { { ac_try="$ac_link"
case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
(eval "$ac_link") 2>&5
ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; then
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; then :
# If both `conftest.exe' and `conftest' are `present' (well, observable)
# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will
# work properly (i.e., refer to `conftest.exe'), while it won't with
@@ -2606,32 +2919,83 @@ for ac_file in conftest.exe conftest conftest.*; do
esac
done
else
- { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: cannot compute suffix of executables: cannot compile and link
-See \`config.log' for more details." >&2;}
- { (exit 1); exit 1; }; }; }
+as_fn_error $? "cannot compute suffix of executables: cannot compile and link
+See \`config.log' for more details" "$LINENO" 5; }
fi
-
-rm -f conftest$ac_cv_exeext
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5
+rm -f conftest conftest$ac_cv_exeext
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5
$as_echo "$ac_cv_exeext" >&6; }
rm -f conftest.$ac_ext
EXEEXT=$ac_cv_exeext
ac_exeext=$EXEEXT
-{ $as_echo "$as_me:$LINENO: checking for suffix of object files" >&5
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <stdio.h>
+int
+main ()
+{
+FILE *f = fopen ("conftest.out", "w");
+ return ferror (f) || fclose (f) != 0;
+
+ ;
+ return 0;
+}
+_ACEOF
+ac_clean_files="$ac_clean_files conftest.out"
+# Check that the compiler produces executables we can run. If not, either
+# the compiler is broken, or we cross compile.
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5
+$as_echo_n "checking whether we are cross compiling... " >&6; }
+if test "$cross_compiling" != yes; then
+ { { ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }
+ if { ac_try='./conftest$ac_cv_exeext'
+ { { case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; }; then
+ cross_compiling=no
+ else
+ if test "$cross_compiling" = maybe; then
+ cross_compiling=yes
+ else
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error $? "cannot run C compiled programs.
+If you meant to cross compile, use \`--host'.
+See \`config.log' for more details" "$LINENO" 5; }
+ fi
+ fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5
+$as_echo "$cross_compiling" >&6; }
+
+rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out
+ac_clean_files=$ac_clean_files_save
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5
$as_echo_n "checking for suffix of object files... " >&6; }
-if test "${ac_cv_objext+set}" = set; then
+if ${ac_cv_objext+:} false; then :
$as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
@@ -2643,17 +3007,17 @@ main ()
}
_ACEOF
rm -f conftest.o conftest.obj
-if { (ac_try="$ac_compile"
+if { { ac_try="$ac_compile"
case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
(eval "$ac_compile") 2>&5
ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; then
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; then :
for ac_file in conftest.o conftest.obj conftest.*; do
test -f "$ac_file" || continue;
case $ac_file in
@@ -2666,31 +3030,23 @@ else
$as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
-{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: cannot compute suffix of object files: cannot compile
-See \`config.log' for more details." >&2;}
- { (exit 1); exit 1; }; }; }
+as_fn_error $? "cannot compute suffix of object files: cannot compile
+See \`config.log' for more details" "$LINENO" 5; }
fi
-
rm -f conftest.$ac_cv_objext conftest.$ac_ext
fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_objext" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5
$as_echo "$ac_cv_objext" >&6; }
OBJEXT=$ac_cv_objext
ac_objext=$OBJEXT
-{ $as_echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5
$as_echo_n "checking whether we are using the GNU C compiler... " >&6; }
-if test "${ac_cv_c_compiler_gnu+set}" = set; then
+if ${ac_cv_c_compiler_gnu+:} false; then :
$as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
@@ -2704,37 +3060,16 @@ main ()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
ac_compiler_gnu=yes
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_compiler_gnu=no
+ ac_compiler_gnu=no
fi
-
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
ac_cv_c_compiler_gnu=$ac_compiler_gnu
fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5
$as_echo "$ac_cv_c_compiler_gnu" >&6; }
if test $ac_compiler_gnu = yes; then
GCC=yes
@@ -2743,20 +3078,16 @@ else
fi
ac_test_CFLAGS=${CFLAGS+set}
ac_save_CFLAGS=$CFLAGS
-{ $as_echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
$as_echo_n "checking whether $CC accepts -g... " >&6; }
-if test "${ac_cv_prog_cc_g+set}" = set; then
+if ${ac_cv_prog_cc_g+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_save_c_werror_flag=$ac_c_werror_flag
ac_c_werror_flag=yes
ac_cv_prog_cc_g=no
CFLAGS="-g"
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
@@ -2767,35 +3098,11 @@ main ()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
ac_cv_prog_cc_g=yes
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- CFLAGS=""
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ CFLAGS=""
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
@@ -2806,36 +3113,12 @@ main ()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
- :
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+if ac_fn_c_try_compile "$LINENO"; then :
- ac_c_werror_flag=$ac_save_c_werror_flag
+else
+ ac_c_werror_flag=$ac_save_c_werror_flag
CFLAGS="-g"
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
@@ -2846,42 +3129,17 @@ main ()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
ac_cv_prog_cc_g=yes
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-
fi
-
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
ac_c_werror_flag=$ac_save_c_werror_flag
fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5
$as_echo "$ac_cv_prog_cc_g" >&6; }
if test "$ac_test_CFLAGS" = set; then
CFLAGS=$ac_save_CFLAGS
@@ -2898,18 +3156,14 @@ else
CFLAGS=
fi
fi
-{ $as_echo "$as_me:$LINENO: checking for $CC option to accept ISO C89" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5
$as_echo_n "checking for $CC option to accept ISO C89... " >&6; }
-if test "${ac_cv_prog_cc_c89+set}" = set; then
+if ${ac_cv_prog_cc_c89+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_cv_prog_cc_c89=no
ac_save_CC=$CC
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <stdarg.h>
#include <stdio.h>
@@ -2966,32 +3220,9 @@ for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \
-Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
do
CC="$ac_save_CC $ac_arg"
- rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
+ if ac_fn_c_try_compile "$LINENO"; then :
ac_cv_prog_cc_c89=$ac_arg
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-
fi
-
rm -f core conftest.err conftest.$ac_objext
test "x$ac_cv_prog_cc_c89" != "xno" && break
done
@@ -3002,17 +3233,19 @@ fi
# AC_CACHE_VAL
case "x$ac_cv_prog_cc_c89" in
x)
- { $as_echo "$as_me:$LINENO: result: none needed" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
$as_echo "none needed" >&6; } ;;
xno)
- { $as_echo "$as_me:$LINENO: result: unsupported" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
$as_echo "unsupported" >&6; } ;;
*)
CC="$CC $ac_cv_prog_cc_c89"
- { $as_echo "$as_me:$LINENO: result: $ac_cv_prog_cc_c89" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5
$as_echo "$ac_cv_prog_cc_c89" >&6; } ;;
esac
+if test "x$ac_cv_prog_cc_c89" != xno; then :
+fi
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
@@ -3026,14 +3259,14 @@ ac_cpp='$CPP $CPPFLAGS'
ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
-{ $as_echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5
$as_echo_n "checking how to run the C preprocessor... " >&6; }
# On Suns, sometimes $CPP names a directory.
if test -n "$CPP" && test -d "$CPP"; then
CPP=
fi
if test -z "$CPP"; then
- if test "${ac_cv_prog_CPP+set}" = set; then
+ if ${ac_cv_prog_CPP+:} false; then :
$as_echo_n "(cached) " >&6
else
# Double quotes because CPP needs to be expanded
@@ -3048,11 +3281,7 @@ do
# <limits.h> exists even on freestanding compilers.
# On the NeXT, cc -E runs the code through the compiler's parser,
# not just through cpp. "Syntax error" is here to catch this case.
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#ifdef __STDC__
# include <limits.h>
@@ -3061,78 +3290,34 @@ cat >>conftest.$ac_ext <<_ACEOF
#endif
Syntax error
_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null && {
- test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
- test ! -s conftest.err
- }; then
- :
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+if ac_fn_c_try_cpp "$LINENO"; then :
+else
# Broken: fails on valid input.
continue
fi
-
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err conftest.i conftest.$ac_ext
# OK, works on sane cases. Now check whether nonexistent headers
# can be detected and how.
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <ac_nonexistent.h>
_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null && {
- test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
- test ! -s conftest.err
- }; then
+if ac_fn_c_try_cpp "$LINENO"; then :
# Broken: success on invalid input.
continue
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
# Passes both tests.
ac_preproc_ok=:
break
fi
-
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err conftest.i conftest.$ac_ext
done
# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then
+rm -f conftest.i conftest.err conftest.$ac_ext
+if $ac_preproc_ok; then :
break
fi
@@ -3144,7 +3329,7 @@ fi
else
ac_cv_prog_CPP=$CPP
fi
-{ $as_echo "$as_me:$LINENO: result: $CPP" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5
$as_echo "$CPP" >&6; }
ac_preproc_ok=false
for ac_c_preproc_warn_flag in '' yes
@@ -3155,11 +3340,7 @@ do
# <limits.h> exists even on freestanding compilers.
# On the NeXT, cc -E runs the code through the compiler's parser,
# not just through cpp. "Syntax error" is here to catch this case.
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#ifdef __STDC__
# include <limits.h>
@@ -3168,87 +3349,40 @@ cat >>conftest.$ac_ext <<_ACEOF
#endif
Syntax error
_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null && {
- test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
- test ! -s conftest.err
- }; then
- :
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+if ac_fn_c_try_cpp "$LINENO"; then :
+else
# Broken: fails on valid input.
continue
fi
-
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err conftest.i conftest.$ac_ext
# OK, works on sane cases. Now check whether nonexistent headers
# can be detected and how.
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <ac_nonexistent.h>
_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null && {
- test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
- test ! -s conftest.err
- }; then
+if ac_fn_c_try_cpp "$LINENO"; then :
# Broken: success on invalid input.
continue
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
# Passes both tests.
ac_preproc_ok=:
break
fi
-
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err conftest.i conftest.$ac_ext
done
# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then
- :
+rm -f conftest.i conftest.err conftest.$ac_ext
+if $ac_preproc_ok; then :
+
else
- { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check
-See \`config.log' for more details." >&2;}
- { (exit 1); exit 1; }; }; }
+as_fn_error $? "C preprocessor \"$CPP\" fails sanity check
+See \`config.log' for more details" "$LINENO" 5; }
fi
ac_ext=c
@@ -3258,9 +3392,9 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $
ac_compiler_gnu=$ac_cv_c_compiler_gnu
-{ $as_echo "$as_me:$LINENO: checking for grep that handles long lines and -e" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5
$as_echo_n "checking for grep that handles long lines and -e... " >&6; }
-if test "${ac_cv_path_GREP+set}" = set; then
+if ${ac_cv_path_GREP+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -z "$GREP"; then
@@ -3271,7 +3405,7 @@ for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_prog in grep ggrep; do
+ for ac_prog in grep ggrep; do
for ac_exec_ext in '' $ac_executable_extensions; do
ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
{ test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue
@@ -3291,7 +3425,7 @@ case `"$ac_path_GREP" --version 2>&1` in
$as_echo 'GREP' >> "conftest.nl"
"$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break
diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
- ac_count=`expr $ac_count + 1`
+ as_fn_arith $ac_count + 1 && ac_count=$as_val
if test $ac_count -gt ${ac_path_GREP_max-0}; then
# Best one so far, save it but keep looking for a better one
ac_cv_path_GREP="$ac_path_GREP"
@@ -3306,26 +3440,24 @@ esac
$ac_path_GREP_found && break 3
done
done
-done
+ done
IFS=$as_save_IFS
if test -z "$ac_cv_path_GREP"; then
- { { $as_echo "$as_me:$LINENO: error: no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5
-$as_echo "$as_me: error: no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;}
- { (exit 1); exit 1; }; }
+ as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
fi
else
ac_cv_path_GREP=$GREP
fi
fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_path_GREP" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5
$as_echo "$ac_cv_path_GREP" >&6; }
GREP="$ac_cv_path_GREP"
-{ $as_echo "$as_me:$LINENO: checking for egrep" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
$as_echo_n "checking for egrep... " >&6; }
-if test "${ac_cv_path_EGREP+set}" = set; then
+if ${ac_cv_path_EGREP+:} false; then :
$as_echo_n "(cached) " >&6
else
if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
@@ -3339,7 +3471,7 @@ for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_prog in egrep; do
+ for ac_prog in egrep; do
for ac_exec_ext in '' $ac_executable_extensions; do
ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
{ test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue
@@ -3359,7 +3491,7 @@ case `"$ac_path_EGREP" --version 2>&1` in
$as_echo 'EGREP' >> "conftest.nl"
"$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
- ac_count=`expr $ac_count + 1`
+ as_fn_arith $ac_count + 1 && ac_count=$as_val
if test $ac_count -gt ${ac_path_EGREP_max-0}; then
# Best one so far, save it but keep looking for a better one
ac_cv_path_EGREP="$ac_path_EGREP"
@@ -3374,12 +3506,10 @@ esac
$ac_path_EGREP_found && break 3
done
done
-done
+ done
IFS=$as_save_IFS
if test -z "$ac_cv_path_EGREP"; then
- { { $as_echo "$as_me:$LINENO: error: no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5
-$as_echo "$as_me: error: no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;}
- { (exit 1); exit 1; }; }
+ as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
fi
else
ac_cv_path_EGREP=$EGREP
@@ -3387,21 +3517,17 @@ fi
fi
fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_path_EGREP" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5
$as_echo "$ac_cv_path_EGREP" >&6; }
EGREP="$ac_cv_path_EGREP"
-{ $as_echo "$as_me:$LINENO: checking for ANSI C header files" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5
$as_echo_n "checking for ANSI C header files... " >&6; }
-if test "${ac_cv_header_stdc+set}" = set; then
+if ${ac_cv_header_stdc+:} false; then :
$as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <stdlib.h>
#include <stdarg.h>
@@ -3416,48 +3542,23 @@ main ()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
ac_cv_header_stdc=yes
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_cv_header_stdc=no
+ ac_cv_header_stdc=no
fi
-
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
if test $ac_cv_header_stdc = yes; then
# SunOS 4.x string.h does not declare mem*, contrary to ANSI.
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <string.h>
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "memchr" >/dev/null 2>&1; then
- :
+ $EGREP "memchr" >/dev/null 2>&1; then :
+
else
ac_cv_header_stdc=no
fi
@@ -3467,18 +3568,14 @@ fi
if test $ac_cv_header_stdc = yes; then
# ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <stdlib.h>
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "free" >/dev/null 2>&1; then
- :
+ $EGREP "free" >/dev/null 2>&1; then :
+
else
ac_cv_header_stdc=no
fi
@@ -3488,14 +3585,10 @@ fi
if test $ac_cv_header_stdc = yes; then
# /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
- if test "$cross_compiling" = yes; then
+ if test "$cross_compiling" = yes; then :
:
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <ctype.h>
#include <stdlib.h>
@@ -3522,118 +3615,33 @@ main ()
return 0;
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_try") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- :
-else
- $as_echo "$as_me: program exited with status $ac_status" >&5
-$as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+if ac_fn_c_try_run "$LINENO"; then :
-( exit $ac_status )
-ac_cv_header_stdc=no
+else
+ ac_cv_header_stdc=no
fi
-rm -rf conftest.dSYM
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
-
fi
fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5
$as_echo "$ac_cv_header_stdc" >&6; }
if test $ac_cv_header_stdc = yes; then
-cat >>confdefs.h <<\_ACEOF
-#define STDC_HEADERS 1
-_ACEOF
+$as_echo "#define STDC_HEADERS 1" >>confdefs.h
fi
# On IRIX 5.3, sys/types and inttypes.h are conflicting.
-
-
-
-
-
-
-
-
-
for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
inttypes.h stdint.h unistd.h
-do
-as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
-$as_echo_n "checking for $ac_header... " >&6; }
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
- $as_echo_n "(cached) " >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-$ac_includes_default
-
-#include <$ac_header>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
- eval "$as_ac_Header=yes"
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- eval "$as_ac_Header=no"
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-ac_res=`eval 'as_val=${'$as_ac_Header'}
- $as_echo "$as_val"'`
- { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-as_val=`eval 'as_val=${'$as_ac_Header'}
- $as_echo "$as_val"'`
- if test "x$as_val" = x""yes; then
+do :
+ as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
+ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default
+"
+if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
cat >>confdefs.h <<_ACEOF
#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
_ACEOF
@@ -3644,139 +3652,8 @@ done
- if test "${ac_cv_header_minix_config_h+set}" = set; then
- { $as_echo "$as_me:$LINENO: checking for minix/config.h" >&5
-$as_echo_n "checking for minix/config.h... " >&6; }
-if test "${ac_cv_header_minix_config_h+set}" = set; then
- $as_echo_n "(cached) " >&6
-fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_minix_config_h" >&5
-$as_echo "$ac_cv_header_minix_config_h" >&6; }
-else
- # Is the header compilable?
-{ $as_echo "$as_me:$LINENO: checking minix/config.h usability" >&5
-$as_echo_n "checking minix/config.h usability... " >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-$ac_includes_default
-#include <minix/config.h>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
- ac_header_compiler=yes
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_header_compiler=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-$as_echo "$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ $as_echo "$as_me:$LINENO: checking minix/config.h presence" >&5
-$as_echo_n "checking minix/config.h presence... " >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-#include <minix/config.h>
-_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null && {
- test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
- test ! -s conftest.err
- }; then
- ac_header_preproc=yes
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_header_preproc=no
-fi
-
-rm -f conftest.err conftest.$ac_ext
-{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-$as_echo "$ac_header_preproc" >&6; }
-
-# So? What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
- yes:no: )
- { $as_echo "$as_me:$LINENO: WARNING: minix/config.h: accepted by the compiler, rejected by the preprocessor!" >&5
-$as_echo "$as_me: WARNING: minix/config.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: minix/config.h: proceeding with the compiler's result" >&5
-$as_echo "$as_me: WARNING: minix/config.h: proceeding with the compiler's result" >&2;}
- ac_header_preproc=yes
- ;;
- no:yes:* )
- { $as_echo "$as_me:$LINENO: WARNING: minix/config.h: present but cannot be compiled" >&5
-$as_echo "$as_me: WARNING: minix/config.h: present but cannot be compiled" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: minix/config.h: check for missing prerequisite headers?" >&5
-$as_echo "$as_me: WARNING: minix/config.h: check for missing prerequisite headers?" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: minix/config.h: see the Autoconf documentation" >&5
-$as_echo "$as_me: WARNING: minix/config.h: see the Autoconf documentation" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: minix/config.h: section \"Present But Cannot Be Compiled\"" >&5
-$as_echo "$as_me: WARNING: minix/config.h: section \"Present But Cannot Be Compiled\"" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: minix/config.h: proceeding with the preprocessor's result" >&5
-$as_echo "$as_me: WARNING: minix/config.h: proceeding with the preprocessor's result" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: minix/config.h: in the future, the compiler will take precedence" >&5
-$as_echo "$as_me: WARNING: minix/config.h: in the future, the compiler will take precedence" >&2;}
- ( cat <<\_ASBOX
-## ----------------------------------- ##
-## Report this to bug-readline@gnu.org ##
-## ----------------------------------- ##
-_ASBOX
- ) | sed "s/^/$as_me: WARNING: /" >&2
- ;;
-esac
-{ $as_echo "$as_me:$LINENO: checking for minix/config.h" >&5
-$as_echo_n "checking for minix/config.h... " >&6; }
-if test "${ac_cv_header_minix_config_h+set}" = set; then
- $as_echo_n "(cached) " >&6
-else
- ac_cv_header_minix_config_h=$ac_header_preproc
-fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_minix_config_h" >&5
-$as_echo "$ac_cv_header_minix_config_h" >&6; }
-
-fi
-if test "x$ac_cv_header_minix_config_h" = x""yes; then
+ ac_fn_c_check_header_mongrel "$LINENO" "minix/config.h" "ac_cv_header_minix_config_h" "$ac_includes_default"
+if test "x$ac_cv_header_minix_config_h" = xyes; then :
MINIX=yes
else
MINIX=
@@ -3785,34 +3662,23 @@ fi
if test "$MINIX" = yes; then
-cat >>confdefs.h <<\_ACEOF
-#define _POSIX_SOURCE 1
-_ACEOF
+$as_echo "#define _POSIX_SOURCE 1" >>confdefs.h
-cat >>confdefs.h <<\_ACEOF
-#define _POSIX_1_SOURCE 2
-_ACEOF
+$as_echo "#define _POSIX_1_SOURCE 2" >>confdefs.h
-cat >>confdefs.h <<\_ACEOF
-#define _MINIX 1
-_ACEOF
+$as_echo "#define _MINIX 1" >>confdefs.h
fi
-
- { $as_echo "$as_me:$LINENO: checking whether it is safe to define __EXTENSIONS__" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether it is safe to define __EXTENSIONS__" >&5
$as_echo_n "checking whether it is safe to define __EXTENSIONS__... " >&6; }
-if test "${ac_cv_safe_to_define___extensions__+set}" = set; then
+if ${ac_cv_safe_to_define___extensions__+:} false; then :
$as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
# define __EXTENSIONS__ 1
@@ -3825,56 +3691,26 @@ main ()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
ac_cv_safe_to_define___extensions__=yes
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_cv_safe_to_define___extensions__=no
+ ac_cv_safe_to_define___extensions__=no
fi
-
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_safe_to_define___extensions__" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_safe_to_define___extensions__" >&5
$as_echo "$ac_cv_safe_to_define___extensions__" >&6; }
test $ac_cv_safe_to_define___extensions__ = yes &&
- cat >>confdefs.h <<\_ACEOF
-#define __EXTENSIONS__ 1
-_ACEOF
+ $as_echo "#define __EXTENSIONS__ 1" >>confdefs.h
- cat >>confdefs.h <<\_ACEOF
-#define _ALL_SOURCE 1
-_ACEOF
+ $as_echo "#define _ALL_SOURCE 1" >>confdefs.h
- cat >>confdefs.h <<\_ACEOF
-#define _GNU_SOURCE 1
-_ACEOF
+ $as_echo "#define _GNU_SOURCE 1" >>confdefs.h
- cat >>confdefs.h <<\_ACEOF
-#define _POSIX_PTHREAD_SEMANTICS 1
-_ACEOF
+ $as_echo "#define _POSIX_PTHREAD_SEMANTICS 1" >>confdefs.h
+
+ $as_echo "#define _TANDEM_SOURCE 1" >>confdefs.h
- cat >>confdefs.h <<\_ACEOF
-#define _TANDEM_SOURCE 1
-_ACEOF
@@ -3882,23 +3718,19 @@ _ACEOF
test -n "$GCC" && test -n "$auto_cflags" && CFLAGS="$CFLAGS -O"
if test $ac_cv_c_compiler_gnu = yes; then
- { $as_echo "$as_me:$LINENO: checking whether $CC needs -traditional" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC needs -traditional" >&5
$as_echo_n "checking whether $CC needs -traditional... " >&6; }
-if test "${ac_cv_prog_gcc_traditional+set}" = set; then
+if ${ac_cv_prog_gcc_traditional+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_pattern="Autoconf.*'x'"
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <sgtty.h>
Autoconf TIOCGETP
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "$ac_pattern" >/dev/null 2>&1; then
+ $EGREP "$ac_pattern" >/dev/null 2>&1; then :
ac_cv_prog_gcc_traditional=yes
else
ac_cv_prog_gcc_traditional=no
@@ -3907,24 +3739,20 @@ rm -f conftest*
if test $ac_cv_prog_gcc_traditional = no; then
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <termio.h>
Autoconf TCGETA
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "$ac_pattern" >/dev/null 2>&1; then
+ $EGREP "$ac_pattern" >/dev/null 2>&1; then :
ac_cv_prog_gcc_traditional=yes
fi
rm -f conftest*
fi
fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_prog_gcc_traditional" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_gcc_traditional" >&5
$as_echo "$ac_cv_prog_gcc_traditional" >&6; }
if test $ac_cv_prog_gcc_traditional = yes; then
CC="$CC -traditional"
@@ -3945,10 +3773,10 @@ fi
# OS/2's system install, which has a completely different semantic
# ./install, which can be erroneously created by make from ./install.sh.
# Reject install programs that cannot install multiple files.
-{ $as_echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5
$as_echo_n "checking for a BSD-compatible install... " >&6; }
if test -z "$INSTALL"; then
-if test "${ac_cv_path_install+set}" = set; then
+if ${ac_cv_path_install+:} false; then :
$as_echo_n "(cached) " >&6
else
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
@@ -3956,11 +3784,11 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- # Account for people who put trailing slashes in PATH elements.
-case $as_dir/ in
- ./ | .// | /cC/* | \
+ # Account for people who put trailing slashes in PATH elements.
+case $as_dir/ in #((
+ ./ | .// | /[cC]/* | \
/etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
- ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \
+ ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \
/usr/ucb/* ) ;;
*)
# OSF1 and SCO ODT 3.0 have their own names for install.
@@ -3997,7 +3825,7 @@ case $as_dir/ in
;;
esac
-done
+ done
IFS=$as_save_IFS
rm -rf conftest.one conftest.two conftest.dir
@@ -4013,7 +3841,7 @@ fi
INSTALL=$ac_install_sh
fi
fi
-{ $as_echo "$as_me:$LINENO: result: $INSTALL" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5
$as_echo "$INSTALL" >&6; }
# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
@@ -4024,11 +3852,12 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-# Extract the first word of "ar", so it can be a program name with args.
-set dummy ar; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
+set dummy ${ac_tool_prefix}ar; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_AR+set}" = set; then
+if ${ac_cv_prog_AR+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$AR"; then
@@ -4039,36 +3868,89 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_AR=""
- $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ ac_cv_prog_AR="${ac_tool_prefix}ar"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
IFS=$as_save_IFS
- test -z "$ac_cv_prog_AR" && ac_cv_prog_AR="ar"
fi
fi
AR=$ac_cv_prog_AR
if test -n "$AR"; then
- { $as_echo "$as_me:$LINENO: result: $AR" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5
$as_echo "$AR" >&6; }
else
- { $as_echo "$as_me:$LINENO: result: no" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_AR"; then
+ ac_ct_AR=$AR
+ # Extract the first word of "ar", so it can be a program name with args.
+set dummy ar; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_prog_ac_ct_AR+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_AR"; then
+ ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_ac_ct_AR="ar"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+ done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_AR=$ac_cv_prog_ac_ct_AR
+if test -n "$ac_ct_AR"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5
+$as_echo "$ac_ct_AR" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
fi
+ if test "x$ac_ct_AR" = x; then
+ AR=""
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ AR=$ac_ct_AR
+ fi
+else
+ AR="$ac_cv_prog_AR"
+fi
test -n "$ARFLAGS" || ARFLAGS="cr"
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
set dummy ${ac_tool_prefix}ranlib; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_RANLIB+set}" = set; then
+if ${ac_cv_prog_RANLIB+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$RANLIB"; then
@@ -4079,24 +3961,24 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
- $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
IFS=$as_save_IFS
fi
fi
RANLIB=$ac_cv_prog_RANLIB
if test -n "$RANLIB"; then
- { $as_echo "$as_me:$LINENO: result: $RANLIB" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5
$as_echo "$RANLIB" >&6; }
else
- { $as_echo "$as_me:$LINENO: result: no" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
fi
@@ -4106,9 +3988,9 @@ if test -z "$ac_cv_prog_RANLIB"; then
ac_ct_RANLIB=$RANLIB
# Extract the first word of "ranlib", so it can be a program name with args.
set dummy ranlib; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then
+if ${ac_cv_prog_ac_ct_RANLIB+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$ac_ct_RANLIB"; then
@@ -4119,24 +4001,24 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_ac_ct_RANLIB="ranlib"
- $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
IFS=$as_save_IFS
fi
fi
ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
if test -n "$ac_ct_RANLIB"; then
- { $as_echo "$as_me:$LINENO: result: $ac_ct_RANLIB" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5
$as_echo "$ac_ct_RANLIB" >&6; }
else
- { $as_echo "$as_me:$LINENO: result: no" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
fi
@@ -4145,7 +4027,7 @@ fi
else
case $cross_compiling:$ac_tool_warned in
yes:)
-{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
ac_tool_warned=yes ;;
esac
@@ -4159,16 +4041,12 @@ fi
MAKE_SHELL=/bin/sh
-{ $as_echo "$as_me:$LINENO: checking for an ANSI C-conforming const" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for an ANSI C-conforming const" >&5
$as_echo_n "checking for an ANSI C-conforming const... " >&6; }
-if test "${ac_cv_c_const+set}" = set; then
+if ${ac_cv_c_const+:} false; then :
$as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
@@ -4228,75 +4106,43 @@ main ()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
ac_cv_c_const=yes
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_cv_c_const=no
+ ac_cv_c_const=no
fi
-
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_c_const" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_const" >&5
$as_echo "$ac_cv_c_const" >&6; }
if test $ac_cv_c_const = no; then
-cat >>confdefs.h <<\_ACEOF
-#define const /**/
-_ACEOF
+$as_echo "#define const /**/" >>confdefs.h
fi
-{ $as_echo "$as_me:$LINENO: checking for function prototypes" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for function prototypes" >&5
$as_echo_n "checking for function prototypes... " >&6; }
if test "$ac_cv_prog_cc_c89" != no; then
- { $as_echo "$as_me:$LINENO: result: yes" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
-cat >>confdefs.h <<\_ACEOF
-#define PROTOTYPES 1
-_ACEOF
+$as_echo "#define PROTOTYPES 1" >>confdefs.h
-cat >>confdefs.h <<\_ACEOF
-#define __PROTOTYPES 1
-_ACEOF
+$as_echo "#define __PROTOTYPES 1" >>confdefs.h
else
- { $as_echo "$as_me:$LINENO: result: no" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
fi
-
-{ $as_echo "$as_me:$LINENO: checking whether char is unsigned" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether char is unsigned" >&5
$as_echo_n "checking whether char is unsigned... " >&6; }
-if test "${ac_cv_c_char_unsigned+set}" = set; then
+if ${ac_cv_c_char_unsigned+:} false; then :
$as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
$ac_includes_default
int
@@ -4309,53 +4155,26 @@ test_array [0] = 0
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
ac_cv_c_char_unsigned=no
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_cv_c_char_unsigned=yes
+ ac_cv_c_char_unsigned=yes
fi
-
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_c_char_unsigned" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_char_unsigned" >&5
$as_echo "$ac_cv_c_char_unsigned" >&6; }
if test $ac_cv_c_char_unsigned = yes && test "$GCC" != yes; then
- cat >>confdefs.h <<\_ACEOF
-#define __CHAR_UNSIGNED__ 1
-_ACEOF
+ $as_echo "#define __CHAR_UNSIGNED__ 1" >>confdefs.h
fi
-{ $as_echo "$as_me:$LINENO: checking for working volatile" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for working volatile" >&5
$as_echo_n "checking for working volatile... " >&6; }
-if test "${ac_cv_c_volatile+set}" = set; then
+if ${ac_cv_c_volatile+:} false; then :
$as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
@@ -4369,55 +4188,28 @@ return !x && !y;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
ac_cv_c_volatile=yes
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_cv_c_volatile=no
+ ac_cv_c_volatile=no
fi
-
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_c_volatile" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_volatile" >&5
$as_echo "$ac_cv_c_volatile" >&6; }
if test $ac_cv_c_volatile = no; then
-cat >>confdefs.h <<\_ACEOF
-#define volatile /**/
-_ACEOF
+$as_echo "#define volatile /**/" >>confdefs.h
fi
-{ $as_echo "$as_me:$LINENO: checking return type of signal handlers" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking return type of signal handlers" >&5
$as_echo_n "checking return type of signal handlers... " >&6; }
-if test "${ac_cv_type_signal+set}" = set; then
+if ${ac_cv_type_signal+:} false; then :
$as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <sys/types.h>
#include <signal.h>
@@ -4430,35 +4222,14 @@ return *(signal (0, 0)) (0) == 1;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
ac_cv_type_signal=int
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_cv_type_signal=void
+ ac_cv_type_signal=void
fi
-
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_signal" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_signal" >&5
$as_echo "$ac_cv_type_signal" >&6; }
cat >>confdefs.h <<_ACEOF
@@ -4467,102 +4238,9 @@ _ACEOF
-{ $as_echo "$as_me:$LINENO: checking for size_t" >&5
-$as_echo_n "checking for size_t... " >&6; }
-if test "${ac_cv_type_size_t+set}" = set; then
- $as_echo_n "(cached) " >&6
-else
- ac_cv_type_size_t=no
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-$ac_includes_default
-int
-main ()
-{
-if (sizeof (size_t))
- return 0;
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-$ac_includes_default
-int
-main ()
-{
-if (sizeof ((size_t)))
- return 0;
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
- :
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_cv_type_size_t=yes
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-
-fi
+ac_fn_c_check_type "$LINENO" "size_t" "ac_cv_type_size_t" "$ac_includes_default"
+if test "x$ac_cv_type_size_t" = xyes; then :
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_size_t" >&5
-$as_echo "$ac_cv_type_size_t" >&6; }
-if test "x$ac_cv_type_size_t" = x""yes; then
- :
else
cat >>confdefs.h <<_ACEOF
@@ -4571,102 +4249,9 @@ _ACEOF
fi
-{ $as_echo "$as_me:$LINENO: checking for ssize_t" >&5
-$as_echo_n "checking for ssize_t... " >&6; }
-if test "${ac_cv_type_ssize_t+set}" = set; then
- $as_echo_n "(cached) " >&6
-else
- ac_cv_type_ssize_t=no
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-$ac_includes_default
-int
-main ()
-{
-if (sizeof (ssize_t))
- return 0;
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-$ac_includes_default
-int
-main ()
-{
-if (sizeof ((ssize_t)))
- return 0;
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
- :
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_cv_type_ssize_t=yes
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
+ac_fn_c_check_type "$LINENO" "ssize_t" "ac_cv_type_ssize_t" "$ac_includes_default"
+if test "x$ac_cv_type_ssize_t" = xyes; then :
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_ssize_t" >&5
-$as_echo "$ac_cv_type_ssize_t" >&6; }
-if test "x$ac_cv_type_ssize_t" = x""yes; then
- :
else
cat >>confdefs.h <<_ACEOF
@@ -4676,16 +4261,12 @@ _ACEOF
fi
-{ $as_echo "$as_me:$LINENO: checking for ANSI C header files" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5
$as_echo_n "checking for ANSI C header files... " >&6; }
-if test "${ac_cv_header_stdc+set}" = set; then
+if ${ac_cv_header_stdc+:} false; then :
$as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <stdlib.h>
#include <stdarg.h>
@@ -4700,48 +4281,23 @@ main ()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
ac_cv_header_stdc=yes
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_cv_header_stdc=no
+ ac_cv_header_stdc=no
fi
-
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
if test $ac_cv_header_stdc = yes; then
# SunOS 4.x string.h does not declare mem*, contrary to ANSI.
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <string.h>
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "memchr" >/dev/null 2>&1; then
- :
+ $EGREP "memchr" >/dev/null 2>&1; then :
+
else
ac_cv_header_stdc=no
fi
@@ -4751,18 +4307,14 @@ fi
if test $ac_cv_header_stdc = yes; then
# ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <stdlib.h>
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "free" >/dev/null 2>&1; then
- :
+ $EGREP "free" >/dev/null 2>&1; then :
+
else
ac_cv_header_stdc=no
fi
@@ -4772,14 +4324,10 @@ fi
if test $ac_cv_header_stdc = yes; then
# /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
- if test "$cross_compiling" = yes; then
+ if test "$cross_compiling" = yes; then :
:
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <ctype.h>
#include <stdlib.h>
@@ -4806,65 +4354,32 @@ main ()
return 0;
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_try") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- :
-else
- $as_echo "$as_me: program exited with status $ac_status" >&5
-$as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+if ac_fn_c_try_run "$LINENO"; then :
-( exit $ac_status )
-ac_cv_header_stdc=no
+else
+ ac_cv_header_stdc=no
fi
-rm -rf conftest.dSYM
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
-
fi
fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5
$as_echo "$ac_cv_header_stdc" >&6; }
if test $ac_cv_header_stdc = yes; then
-cat >>confdefs.h <<\_ACEOF
-#define STDC_HEADERS 1
-_ACEOF
+$as_echo "#define STDC_HEADERS 1" >>confdefs.h
fi
-{ $as_echo "$as_me:$LINENO: checking whether stat file-mode macros are broken" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stat file-mode macros are broken" >&5
$as_echo_n "checking whether stat file-mode macros are broken... " >&6; }
-if test "${ac_cv_header_stat_broken+set}" = set; then
+if ${ac_cv_header_stat_broken+:} false; then :
$as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <sys/types.h>
#include <sys/stat.h>
@@ -4886,62 +4401,30 @@ extern char c4[S_ISSOCK (S_IFREG) ? -1 : 1];
#endif
_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
ac_cv_header_stat_broken=no
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_cv_header_stat_broken=yes
+ ac_cv_header_stat_broken=yes
fi
-
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_stat_broken" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stat_broken" >&5
$as_echo "$ac_cv_header_stat_broken" >&6; }
if test $ac_cv_header_stat_broken = yes; then
-cat >>confdefs.h <<\_ACEOF
-#define STAT_MACROS_BROKEN 1
-_ACEOF
+$as_echo "#define STAT_MACROS_BROKEN 1" >>confdefs.h
fi
-
-
-
-
-
ac_header_dirent=no
for ac_hdr in dirent.h sys/ndir.h sys/dir.h ndir.h; do
as_ac_Header=`$as_echo "ac_cv_header_dirent_$ac_hdr" | $as_tr_sh`
-{ $as_echo "$as_me:$LINENO: checking for $ac_hdr that defines DIR" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_hdr that defines DIR" >&5
$as_echo_n "checking for $ac_hdr that defines DIR... " >&6; }
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+if eval \${$as_ac_Header+:} false; then :
$as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <sys/types.h>
#include <$ac_hdr>
@@ -4955,41 +4438,17 @@ return 0;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
eval "$as_ac_Header=yes"
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- eval "$as_ac_Header=no"
+ eval "$as_ac_Header=no"
fi
-
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-ac_res=`eval 'as_val=${'$as_ac_Header'}
- $as_echo "$as_val"'`
- { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
+eval ac_res=\$$as_ac_Header
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
$as_echo "$ac_res" >&6; }
-as_val=`eval 'as_val=${'$as_ac_Header'}
- $as_echo "$as_val"'`
- if test "x$as_val" = x""yes; then
+if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
cat >>confdefs.h <<_ACEOF
#define `$as_echo "HAVE_$ac_hdr" | $as_tr_cpp` 1
_ACEOF
@@ -5000,17 +4459,13 @@ fi
done
# Two versions of opendir et al. are in -ldir and -lx on SCO Xenix.
if test $ac_header_dirent = dirent.h; then
- { $as_echo "$as_me:$LINENO: checking for library containing opendir" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing opendir" >&5
$as_echo_n "checking for library containing opendir... " >&6; }
-if test "${ac_cv_search_opendir+set}" = set; then
+if ${ac_cv_search_opendir+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
/* Override any GCC internal prototype to avoid an error.
@@ -5035,70 +4490,39 @@ for ac_lib in '' dir; do
ac_res=-l$ac_lib
LIBS="-l$ac_lib $ac_func_search_save_LIBS"
fi
- rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
+ if ac_fn_c_try_link "$LINENO"; then :
ac_cv_search_opendir=$ac_res
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-
fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext
- if test "${ac_cv_search_opendir+set}" = set; then
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_opendir+:} false; then :
break
fi
done
-if test "${ac_cv_search_opendir+set}" = set; then
- :
+if ${ac_cv_search_opendir+:} false; then :
+
else
ac_cv_search_opendir=no
fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_search_opendir" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_opendir" >&5
$as_echo "$ac_cv_search_opendir" >&6; }
ac_res=$ac_cv_search_opendir
-if test "$ac_res" != no; then
+if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
fi
else
- { $as_echo "$as_me:$LINENO: checking for library containing opendir" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing opendir" >&5
$as_echo_n "checking for library containing opendir... " >&6; }
-if test "${ac_cv_search_opendir+set}" = set; then
+if ${ac_cv_search_opendir+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
/* Override any GCC internal prototype to avoid an error.
@@ -5123,54 +4547,27 @@ for ac_lib in '' x; do
ac_res=-l$ac_lib
LIBS="-l$ac_lib $ac_func_search_save_LIBS"
fi
- rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
+ if ac_fn_c_try_link "$LINENO"; then :
ac_cv_search_opendir=$ac_res
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-
fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext
- if test "${ac_cv_search_opendir+set}" = set; then
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_opendir+:} false; then :
break
fi
done
-if test "${ac_cv_search_opendir+set}" = set; then
- :
+if ${ac_cv_search_opendir+:} false; then :
+
else
ac_cv_search_opendir=no
fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_search_opendir" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_opendir" >&5
$as_echo "$ac_cv_search_opendir" >&6; }
ac_res=$ac_cv_search_opendir
-if test "$ac_res" != no; then
+if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
fi
@@ -5178,102 +4575,11 @@ fi
fi
-
-
-
for ac_func in fcntl kill lstat
-do
-as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5
-$as_echo_n "checking for $ac_func... " >&6; }
-if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then
- $as_echo_n "(cached) " >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
- For example, HP-UX 11i <limits.h> declares gettimeofday. */
-#define $ac_func innocuous_$ac_func
-
-/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $ac_func (); below.
- Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- <limits.h> exists even on freestanding compilers. */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
- to always fail with ENOSYS. Some functions are actually named
- something starting with __ and the normal name is an alias. */
-#if defined __stub_$ac_func || defined __stub___$ac_func
-choke me
-#endif
-
-int
-main ()
-{
-return $ac_func ();
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
- eval "$as_ac_var=yes"
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- eval "$as_ac_var=no"
-fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
-fi
-ac_res=`eval 'as_val=${'$as_ac_var'}
- $as_echo "$as_val"'`
- { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-as_val=`eval 'as_val=${'$as_ac_var'}
- $as_echo "$as_val"'`
- if test "x$as_val" = x""yes; then
+do :
+ as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
+ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
+if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
cat >>confdefs.h <<_ACEOF
#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
_ACEOF
@@ -5281,109 +4587,12 @@ _ACEOF
fi
done
-
-
-
-
-
-
-
-
-
for ac_func in memmove putenv select setenv setlocale \
strcasecmp strpbrk tcgetattr vsnprintf
-do
-as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5
-$as_echo_n "checking for $ac_func... " >&6; }
-if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then
- $as_echo_n "(cached) " >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
- For example, HP-UX 11i <limits.h> declares gettimeofday. */
-#define $ac_func innocuous_$ac_func
-
-/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $ac_func (); below.
- Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- <limits.h> exists even on freestanding compilers. */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
- to always fail with ENOSYS. Some functions are actually named
- something starting with __ and the normal name is an alias. */
-#if defined __stub_$ac_func || defined __stub___$ac_func
-choke me
-#endif
-
-int
-main ()
-{
-return $ac_func ();
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
- eval "$as_ac_var=yes"
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- eval "$as_ac_var=no"
-fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
-fi
-ac_res=`eval 'as_val=${'$as_ac_var'}
- $as_echo "$as_val"'`
- { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-as_val=`eval 'as_val=${'$as_ac_var'}
- $as_echo "$as_val"'`
- if test "x$as_val" = x""yes; then
+do :
+ as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
+ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
+if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
cat >>confdefs.h <<_ACEOF
#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
_ACEOF
@@ -5391,101 +4600,11 @@ _ACEOF
fi
done
-
-
for ac_func in isascii isxdigit
-do
-as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5
-$as_echo_n "checking for $ac_func... " >&6; }
-if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then
- $as_echo_n "(cached) " >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
- For example, HP-UX 11i <limits.h> declares gettimeofday. */
-#define $ac_func innocuous_$ac_func
-
-/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $ac_func (); below.
- Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- <limits.h> exists even on freestanding compilers. */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
- to always fail with ENOSYS. Some functions are actually named
- something starting with __ and the normal name is an alias. */
-#if defined __stub_$ac_func || defined __stub___$ac_func
-choke me
-#endif
-
-int
-main ()
-{
-return $ac_func ();
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
- eval "$as_ac_var=yes"
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- eval "$as_ac_var=no"
-fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
-fi
-ac_res=`eval 'as_val=${'$as_ac_var'}
- $as_echo "$as_val"'`
- { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-as_val=`eval 'as_val=${'$as_ac_var'}
- $as_echo "$as_val"'`
- if test "x$as_val" = x""yes; then
+do :
+ as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
+ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
+if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
cat >>confdefs.h <<_ACEOF
#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
_ACEOF
@@ -5493,102 +4612,11 @@ _ACEOF
fi
done
-
-
-
for ac_func in getpwent getpwnam getpwuid
-do
-as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5
-$as_echo_n "checking for $ac_func... " >&6; }
-if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then
- $as_echo_n "(cached) " >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
- For example, HP-UX 11i <limits.h> declares gettimeofday. */
-#define $ac_func innocuous_$ac_func
-
-/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $ac_func (); below.
- Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- <limits.h> exists even on freestanding compilers. */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
- to always fail with ENOSYS. Some functions are actually named
- something starting with __ and the normal name is an alias. */
-#if defined __stub_$ac_func || defined __stub___$ac_func
-choke me
-#endif
-
-int
-main ()
-{
-return $ac_func ();
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
- eval "$as_ac_var=yes"
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- eval "$as_ac_var=no"
-fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
-fi
-ac_res=`eval 'as_val=${'$as_ac_var'}
- $as_echo "$as_val"'`
- { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-as_val=`eval 'as_val=${'$as_ac_var'}
- $as_echo "$as_val"'`
- if test "x$as_val" = x""yes; then
+do :
+ as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
+ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
+if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
cat >>confdefs.h <<_ACEOF
#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
_ACEOF
@@ -5597,19 +4625,15 @@ fi
done
-{ $as_echo "$as_me:$LINENO: checking for working strcoll" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for working strcoll" >&5
$as_echo_n "checking for working strcoll... " >&6; }
-if test "${ac_cv_func_strcoll_works+set}" = set; then
+if ${ac_cv_func_strcoll_works+:} false; then :
$as_echo_n "(cached) " >&6
else
- if test "$cross_compiling" = yes; then
+ if test "$cross_compiling" = yes; then :
ac_cv_func_strcoll_works=no
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
$ac_includes_default
int
@@ -5622,211 +4646,32 @@ return (strcoll ("abc", "def") >= 0 ||
return 0;
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_try") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+if ac_fn_c_try_run "$LINENO"; then :
ac_cv_func_strcoll_works=yes
else
- $as_echo "$as_me: program exited with status $ac_status" >&5
-$as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-ac_cv_func_strcoll_works=no
+ ac_cv_func_strcoll_works=no
fi
-rm -rf conftest.dSYM
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
-
fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_strcoll_works" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_strcoll_works" >&5
$as_echo "$ac_cv_func_strcoll_works" >&6; }
if test $ac_cv_func_strcoll_works = yes; then
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_STRCOLL 1
-_ACEOF
+$as_echo "#define HAVE_STRCOLL 1" >>confdefs.h
fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-for ac_header in fcntl.h unistd.h stdlib.h varargs.h stdarg.h string.h strings.h \
+for ac_header in fcntl.h unistd.h stdlib.h varargs.h stdarg.h stdbool.h \
+ string.h strings.h \
limits.h locale.h pwd.h memory.h termcap.h termios.h termio.h
-do
-as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
- { $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
-$as_echo_n "checking for $ac_header... " >&6; }
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
- $as_echo_n "(cached) " >&6
-fi
-ac_res=`eval 'as_val=${'$as_ac_Header'}
- $as_echo "$as_val"'`
- { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-else
- # Is the header compilable?
-{ $as_echo "$as_me:$LINENO: checking $ac_header usability" >&5
-$as_echo_n "checking $ac_header usability... " >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-$ac_includes_default
-#include <$ac_header>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
- ac_header_compiler=yes
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_header_compiler=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-$as_echo "$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ $as_echo "$as_me:$LINENO: checking $ac_header presence" >&5
-$as_echo_n "checking $ac_header presence... " >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-#include <$ac_header>
-_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null && {
- test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
- test ! -s conftest.err
- }; then
- ac_header_preproc=yes
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_header_preproc=no
-fi
-
-rm -f conftest.err conftest.$ac_ext
-{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-$as_echo "$ac_header_preproc" >&6; }
-
-# So? What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
- yes:no: )
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-$as_echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-$as_echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
- ac_header_preproc=yes
- ;;
- no:yes:* )
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-$as_echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
-$as_echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-$as_echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
-$as_echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-$as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-$as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
- ( cat <<\_ASBOX
-## ----------------------------------- ##
-## Report this to bug-readline@gnu.org ##
-## ----------------------------------- ##
-_ASBOX
- ) | sed "s/^/$as_me: WARNING: /" >&2
- ;;
-esac
-{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
-$as_echo_n "checking for $ac_header... " >&6; }
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
- $as_echo_n "(cached) " >&6
-else
- eval "$as_ac_Header=\$ac_header_preproc"
-fi
-ac_res=`eval 'as_val=${'$as_ac_Header'}
- $as_echo "$as_val"'`
- { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-
-fi
-as_val=`eval 'as_val=${'$as_ac_Header'}
- $as_echo "$as_val"'`
- if test "x$as_val" = x""yes; then
+do :
+ as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
+ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
+if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
cat >>confdefs.h <<_ACEOF
#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
_ACEOF
@@ -5835,152 +4680,11 @@ fi
done
-
-
-
-
for ac_header in sys/pte.h sys/stream.h sys/select.h sys/file.h
-do
-as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
- { $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
-$as_echo_n "checking for $ac_header... " >&6; }
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
- $as_echo_n "(cached) " >&6
-fi
-ac_res=`eval 'as_val=${'$as_ac_Header'}
- $as_echo "$as_val"'`
- { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-else
- # Is the header compilable?
-{ $as_echo "$as_me:$LINENO: checking $ac_header usability" >&5
-$as_echo_n "checking $ac_header usability... " >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-$ac_includes_default
-#include <$ac_header>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
- ac_header_compiler=yes
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_header_compiler=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-$as_echo "$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ $as_echo "$as_me:$LINENO: checking $ac_header presence" >&5
-$as_echo_n "checking $ac_header presence... " >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-#include <$ac_header>
-_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null && {
- test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
- test ! -s conftest.err
- }; then
- ac_header_preproc=yes
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_header_preproc=no
-fi
-
-rm -f conftest.err conftest.$ac_ext
-{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-$as_echo "$ac_header_preproc" >&6; }
-
-# So? What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
- yes:no: )
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-$as_echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-$as_echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
- ac_header_preproc=yes
- ;;
- no:yes:* )
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-$as_echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
-$as_echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-$as_echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
-$as_echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-$as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-$as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
- ( cat <<\_ASBOX
-## ----------------------------------- ##
-## Report this to bug-readline@gnu.org ##
-## ----------------------------------- ##
-_ASBOX
- ) | sed "s/^/$as_me: WARNING: /" >&2
- ;;
-esac
-{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
-$as_echo_n "checking for $ac_header... " >&6; }
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
- $as_echo_n "(cached) " >&6
-else
- eval "$as_ac_Header=\$ac_header_preproc"
-fi
-ac_res=`eval 'as_val=${'$as_ac_Header'}
- $as_echo "$as_val"'`
- { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-
-fi
-as_val=`eval 'as_val=${'$as_ac_Header'}
- $as_echo "$as_val"'`
- if test "x$as_val" = x""yes; then
+do :
+ as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
+ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
+if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
cat >>confdefs.h <<_ACEOF
#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
_ACEOF
@@ -5990,66 +4694,17 @@ fi
done
-
for ac_header in sys/ptem.h
-do
-as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
-$as_echo_n "checking for $ac_header... " >&6; }
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
- $as_echo_n "(cached) " >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-
+do :
+ ac_fn_c_check_header_compile "$LINENO" "sys/ptem.h" "ac_cv_header_sys_ptem_h" "
#if HAVE_SYS_STREAM_H
# include <sys/stream.h>
#endif
-
-#include <$ac_header>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
- eval "$as_ac_Header=yes"
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- eval "$as_ac_Header=no"
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-ac_res=`eval 'as_val=${'$as_ac_Header'}
- $as_echo "$as_val"'`
- { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-as_val=`eval 'as_val=${'$as_ac_Header'}
- $as_echo "$as_val"'`
- if test "x$as_val" = x""yes; then
+"
+if test "x$ac_cv_header_sys_ptem_h" = xyes; then :
cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
+#define HAVE_SYS_PTEM_H 1
_ACEOF
fi
@@ -6058,15 +4713,15 @@ done
# Check whether --enable-largefile was given.
-if test "${enable_largefile+set}" = set; then
+if test "${enable_largefile+set}" = set; then :
enableval=$enable_largefile;
fi
if test "$enable_largefile" != no; then
- { $as_echo "$as_me:$LINENO: checking for special C compiler options needed for large files" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for special C compiler options needed for large files" >&5
$as_echo_n "checking for special C compiler options needed for large files... " >&6; }
-if test "${ac_cv_sys_largefile_CC+set}" = set; then
+if ${ac_cv_sys_largefile_CC+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_cv_sys_largefile_CC=no
@@ -6075,11 +4730,7 @@ else
while :; do
# IRIX 6.2 and later do not support large files by default,
# so use the C compiler's -n32 option if that helps.
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <sys/types.h>
/* Check that off_t can represent 2**63 - 1 correctly.
@@ -6098,60 +4749,14 @@ main ()
return 0;
}
_ACEOF
- rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
+ if ac_fn_c_try_compile "$LINENO"; then :
break
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-
fi
-
rm -f core conftest.err conftest.$ac_objext
CC="$CC -n32"
- rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
+ if ac_fn_c_try_compile "$LINENO"; then :
ac_cv_sys_largefile_CC=' -n32'; break
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-
fi
-
rm -f core conftest.err conftest.$ac_objext
break
done
@@ -6159,23 +4764,19 @@ rm -f core conftest.err conftest.$ac_objext
rm -f conftest.$ac_ext
fi
fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_sys_largefile_CC" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_largefile_CC" >&5
$as_echo "$ac_cv_sys_largefile_CC" >&6; }
if test "$ac_cv_sys_largefile_CC" != no; then
CC=$CC$ac_cv_sys_largefile_CC
fi
- { $as_echo "$as_me:$LINENO: checking for _FILE_OFFSET_BITS value needed for large files" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _FILE_OFFSET_BITS value needed for large files" >&5
$as_echo_n "checking for _FILE_OFFSET_BITS value needed for large files... " >&6; }
-if test "${ac_cv_sys_file_offset_bits+set}" = set; then
+if ${ac_cv_sys_file_offset_bits+:} false; then :
$as_echo_n "(cached) " >&6
else
while :; do
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <sys/types.h>
/* Check that off_t can represent 2**63 - 1 correctly.
@@ -6194,38 +4795,11 @@ main ()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
ac_cv_sys_file_offset_bits=no; break
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-
fi
-
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#define _FILE_OFFSET_BITS 64
#include <sys/types.h>
@@ -6245,38 +4819,15 @@ main ()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
ac_cv_sys_file_offset_bits=64; break
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-
fi
-
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
ac_cv_sys_file_offset_bits=unknown
break
done
fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_sys_file_offset_bits" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_file_offset_bits" >&5
$as_echo "$ac_cv_sys_file_offset_bits" >&6; }
case $ac_cv_sys_file_offset_bits in #(
no | unknown) ;;
@@ -6288,17 +4839,13 @@ _ACEOF
esac
rm -rf conftest*
if test $ac_cv_sys_file_offset_bits = unknown; then
- { $as_echo "$as_me:$LINENO: checking for _LARGE_FILES value needed for large files" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _LARGE_FILES value needed for large files" >&5
$as_echo_n "checking for _LARGE_FILES value needed for large files... " >&6; }
-if test "${ac_cv_sys_large_files+set}" = set; then
+if ${ac_cv_sys_large_files+:} false; then :
$as_echo_n "(cached) " >&6
else
while :; do
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <sys/types.h>
/* Check that off_t can represent 2**63 - 1 correctly.
@@ -6317,38 +4864,11 @@ main ()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
ac_cv_sys_large_files=no; break
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-
fi
-
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#define _LARGE_FILES 1
#include <sys/types.h>
@@ -6368,38 +4888,15 @@ main ()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
ac_cv_sys_large_files=1; break
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-
fi
-
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
ac_cv_sys_large_files=unknown
break
done
fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_sys_large_files" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_large_files" >&5
$as_echo "$ac_cv_sys_large_files" >&6; }
case $ac_cv_sys_large_files in #(
no | unknown) ;;
@@ -6415,17 +4912,13 @@ fi
-{ $as_echo "$as_me:$LINENO: checking for type of signal functions" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for type of signal functions" >&5
$as_echo_n "checking for type of signal functions... " >&6; }
-if test "${bash_cv_signal_vintage+set}" = set; then
+if ${bash_cv_signal_vintage+:} false; then :
$as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <signal.h>
int
@@ -6442,38 +4935,11 @@ main ()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
+if ac_fn_c_try_link "$LINENO"; then :
bash_cv_signal_vintage=posix
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <signal.h>
int
@@ -6487,38 +4953,11 @@ main ()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
+if ac_fn_c_try_link "$LINENO"; then :
bash_cv_signal_vintage=4.2bsd
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <signal.h>
@@ -6535,91 +4974,52 @@ main ()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
+if ac_fn_c_try_link "$LINENO"; then :
bash_cv_signal_vintage=svr3
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- bash_cv_signal_vintage=v7
+ bash_cv_signal_vintage=v7
fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
fi
-{ $as_echo "$as_me:$LINENO: result: $bash_cv_signal_vintage" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_signal_vintage" >&5
$as_echo "$bash_cv_signal_vintage" >&6; }
if test "$bash_cv_signal_vintage" = posix; then
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_POSIX_SIGNALS 1
-_ACEOF
+$as_echo "#define HAVE_POSIX_SIGNALS 1" >>confdefs.h
elif test "$bash_cv_signal_vintage" = "4.2bsd"; then
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_BSD_SIGNALS 1
-_ACEOF
+$as_echo "#define HAVE_BSD_SIGNALS 1" >>confdefs.h
elif test "$bash_cv_signal_vintage" = svr3; then
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_USG_SIGHOLD 1
-_ACEOF
+$as_echo "#define HAVE_USG_SIGHOLD 1" >>confdefs.h
fi
-{ $as_echo "$as_me:$LINENO: checking if signal handlers must be reinstalled when invoked" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if signal handlers must be reinstalled when invoked" >&5
$as_echo_n "checking if signal handlers must be reinstalled when invoked... " >&6; }
-if test "${bash_cv_must_reinstall_sighandlers+set}" = set; then
+if ${bash_cv_must_reinstall_sighandlers+:} false; then :
$as_echo_n "(cached) " >&6
else
- if test "$cross_compiling" = yes; then
- { $as_echo "$as_me:$LINENO: WARNING: cannot check signal handling if cross compiling -- defaulting to no" >&5
+ if test "$cross_compiling" = yes; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check signal handling if cross compiling -- defaulting to no" >&5
$as_echo "$as_me: WARNING: cannot check signal handling if cross compiling -- defaulting to no" >&2;}
bash_cv_must_reinstall_sighandlers=no
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <signal.h>
@@ -6666,71 +5066,38 @@ main()
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_try") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+if ac_fn_c_try_run "$LINENO"; then :
bash_cv_must_reinstall_sighandlers=no
else
- $as_echo "$as_me: program exited with status $ac_status" >&5
-$as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-bash_cv_must_reinstall_sighandlers=yes
+ bash_cv_must_reinstall_sighandlers=yes
fi
-rm -rf conftest.dSYM
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
-
fi
-{ $as_echo "$as_me:$LINENO: result: $bash_cv_must_reinstall_sighandlers" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_must_reinstall_sighandlers" >&5
$as_echo "$bash_cv_must_reinstall_sighandlers" >&6; }
if test $bash_cv_must_reinstall_sighandlers = yes; then
-cat >>confdefs.h <<\_ACEOF
-#define MUST_REINSTALL_SIGHANDLERS 1
-_ACEOF
+$as_echo "#define MUST_REINSTALL_SIGHANDLERS 1" >>confdefs.h
fi
-{ $as_echo "$as_me:$LINENO: checking for presence of POSIX-style sigsetjmp/siglongjmp" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for presence of POSIX-style sigsetjmp/siglongjmp" >&5
$as_echo_n "checking for presence of POSIX-style sigsetjmp/siglongjmp... " >&6; }
-if test "${bash_cv_func_sigsetjmp+set}" = set; then
+if ${bash_cv_func_sigsetjmp+:} false; then :
$as_echo_n "(cached) " >&6
else
- if test "$cross_compiling" = yes; then
- { $as_echo "$as_me:$LINENO: WARNING: cannot check for sigsetjmp/siglongjmp if cross-compiling -- defaulting to missing" >&5
+ if test "$cross_compiling" = yes; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check for sigsetjmp/siglongjmp if cross-compiling -- defaulting to missing" >&5
$as_echo "$as_me: WARNING: cannot check for sigsetjmp/siglongjmp if cross-compiling -- defaulting to missing" >&2;}
bash_cv_func_sigsetjmp=missing
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#ifdef HAVE_UNISTD_H
@@ -6771,63 +5138,30 @@ exit(1);
#endif
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_try") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+if ac_fn_c_try_run "$LINENO"; then :
bash_cv_func_sigsetjmp=present
else
- $as_echo "$as_me: program exited with status $ac_status" >&5
-$as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-bash_cv_func_sigsetjmp=missing
+ bash_cv_func_sigsetjmp=missing
fi
-rm -rf conftest.dSYM
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
-
fi
-{ $as_echo "$as_me:$LINENO: result: $bash_cv_func_sigsetjmp" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_func_sigsetjmp" >&5
$as_echo "$bash_cv_func_sigsetjmp" >&6; }
if test $bash_cv_func_sigsetjmp = present; then
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_POSIX_SIGSETJMP 1
-_ACEOF
+$as_echo "#define HAVE_POSIX_SIGSETJMP 1" >>confdefs.h
fi
-{ $as_echo "$as_me:$LINENO: checking for lstat" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for lstat" >&5
$as_echo_n "checking for lstat... " >&6; }
-if test "${bash_cv_func_lstat+set}" = set; then
+if ${bash_cv_func_lstat+:} false; then :
$as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <sys/types.h>
@@ -6841,65 +5175,34 @@ main ()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
+if ac_fn_c_try_link "$LINENO"; then :
bash_cv_func_lstat=yes
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- bash_cv_func_lstat=no
+ bash_cv_func_lstat=no
fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
fi
-{ $as_echo "$as_me:$LINENO: result: $bash_cv_func_lstat" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_func_lstat" >&5
$as_echo "$bash_cv_func_lstat" >&6; }
if test $bash_cv_func_lstat = yes; then
- cat >>confdefs.h <<\_ACEOF
-#define HAVE_LSTAT 1
-_ACEOF
+ $as_echo "#define HAVE_LSTAT 1" >>confdefs.h
fi
-{ $as_echo "$as_me:$LINENO: checking whether or not strcoll and strcmp differ" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether or not strcoll and strcmp differ" >&5
$as_echo_n "checking whether or not strcoll and strcmp differ... " >&6; }
-if test "${bash_cv_func_strcoll_broken+set}" = set; then
+if ${bash_cv_func_strcoll_broken+:} false; then :
$as_echo_n "(cached) " >&6
else
- if test "$cross_compiling" = yes; then
- { $as_echo "$as_me:$LINENO: WARNING: cannot check strcoll if cross compiling -- defaulting to no" >&5
+ if test "$cross_compiling" = yes; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check strcoll if cross compiling -- defaulting to no" >&5
$as_echo "$as_me: WARNING: cannot check strcoll if cross compiling -- defaulting to no" >&2;}
bash_cv_func_strcoll_broken=no
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <stdio.h>
@@ -6938,70 +5241,37 @@ char *v[];
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_try") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+if ac_fn_c_try_run "$LINENO"; then :
bash_cv_func_strcoll_broken=yes
else
- $as_echo "$as_me: program exited with status $ac_status" >&5
-$as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-bash_cv_func_strcoll_broken=no
+ bash_cv_func_strcoll_broken=no
fi
-rm -rf conftest.dSYM
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
-
fi
-{ $as_echo "$as_me:$LINENO: result: $bash_cv_func_strcoll_broken" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_func_strcoll_broken" >&5
$as_echo "$bash_cv_func_strcoll_broken" >&6; }
if test $bash_cv_func_strcoll_broken = yes; then
-cat >>confdefs.h <<\_ACEOF
-#define STRCOLL_BROKEN 1
-_ACEOF
+$as_echo "#define STRCOLL_BROKEN 1" >>confdefs.h
fi
-{ $as_echo "$as_me:$LINENO: checking whether the ctype macros accept non-ascii characters" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the ctype macros accept non-ascii characters" >&5
$as_echo_n "checking whether the ctype macros accept non-ascii characters... " >&6; }
-if test "${bash_cv_func_ctype_nonascii+set}" = set; then
+if ${bash_cv_func_ctype_nonascii+:} false; then :
$as_echo_n "(cached) " >&6
else
- if test "$cross_compiling" = yes; then
- { $as_echo "$as_me:$LINENO: WARNING: cannot check ctype macros if cross compiling -- defaulting to no" >&5
+ if test "$cross_compiling" = yes; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check ctype macros if cross compiling -- defaulting to no" >&5
$as_echo "$as_me: WARNING: cannot check ctype macros if cross compiling -- defaulting to no" >&2;}
bash_cv_func_ctype_nonascii=no
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#ifdef HAVE_LOCALE_H
@@ -7035,64 +5305,31 @@ char *v[];
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_try") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+if ac_fn_c_try_run "$LINENO"; then :
bash_cv_func_ctype_nonascii=yes
else
- $as_echo "$as_me: program exited with status $ac_status" >&5
-$as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-bash_cv_func_ctype_nonascii=no
+ bash_cv_func_ctype_nonascii=no
fi
-rm -rf conftest.dSYM
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
-
fi
-{ $as_echo "$as_me:$LINENO: result: $bash_cv_func_ctype_nonascii" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_func_ctype_nonascii" >&5
$as_echo "$bash_cv_func_ctype_nonascii" >&6; }
if test $bash_cv_func_ctype_nonascii = yes; then
-cat >>confdefs.h <<\_ACEOF
-#define CTYPE_NON_ASCII 1
-_ACEOF
+$as_echo "#define CTYPE_NON_ASCII 1" >>confdefs.h
fi
-{ $as_echo "$as_me:$LINENO: checking whether getpw functions are declared in pwd.h" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether getpw functions are declared in pwd.h" >&5
$as_echo_n "checking whether getpw functions are declared in pwd.h... " >&6; }
-if test "${bash_cv_getpw_declared+set}" = set; then
+if ${bash_cv_getpw_declared+:} false; then :
$as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <sys/types.h>
@@ -7103,7 +5340,7 @@ cat >>conftest.$ac_ext <<_ACEOF
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "getpwuid" >/dev/null 2>&1; then
+ $EGREP "getpwuid" >/dev/null 2>&1; then :
bash_cv_getpw_declared=yes
else
bash_cv_getpw_declared=no
@@ -7112,26 +5349,20 @@ rm -f conftest*
fi
-{ $as_echo "$as_me:$LINENO: result: $bash_cv_getpw_declared" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_getpw_declared" >&5
$as_echo "$bash_cv_getpw_declared" >&6; }
if test $bash_cv_getpw_declared = yes; then
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_GETPW_DECLS 1
-_ACEOF
+$as_echo "#define HAVE_GETPW_DECLS 1" >>confdefs.h
fi
-{ $as_echo "$as_me:$LINENO: checking whether termios.h defines TIOCGWINSZ" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether termios.h defines TIOCGWINSZ" >&5
$as_echo_n "checking whether termios.h defines TIOCGWINSZ... " >&6; }
-if test "${ac_cv_sys_tiocgwinsz_in_termios_h+set}" = set; then
+if ${ac_cv_sys_tiocgwinsz_in_termios_h+:} false; then :
$as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <sys/types.h>
#include <termios.h>
@@ -7141,7 +5372,7 @@ cat >>conftest.$ac_ext <<_ACEOF
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "yes" >/dev/null 2>&1; then
+ $EGREP "yes" >/dev/null 2>&1; then :
ac_cv_sys_tiocgwinsz_in_termios_h=yes
else
ac_cv_sys_tiocgwinsz_in_termios_h=no
@@ -7149,20 +5380,16 @@ fi
rm -f conftest*
fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_sys_tiocgwinsz_in_termios_h" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_tiocgwinsz_in_termios_h" >&5
$as_echo "$ac_cv_sys_tiocgwinsz_in_termios_h" >&6; }
if test $ac_cv_sys_tiocgwinsz_in_termios_h != yes; then
- { $as_echo "$as_me:$LINENO: checking whether sys/ioctl.h defines TIOCGWINSZ" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether sys/ioctl.h defines TIOCGWINSZ" >&5
$as_echo_n "checking whether sys/ioctl.h defines TIOCGWINSZ... " >&6; }
-if test "${ac_cv_sys_tiocgwinsz_in_sys_ioctl_h+set}" = set; then
+if ${ac_cv_sys_tiocgwinsz_in_sys_ioctl_h+:} false; then :
$as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <sys/types.h>
#include <sys/ioctl.h>
@@ -7172,7 +5399,7 @@ cat >>conftest.$ac_ext <<_ACEOF
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "yes" >/dev/null 2>&1; then
+ $EGREP "yes" >/dev/null 2>&1; then :
ac_cv_sys_tiocgwinsz_in_sys_ioctl_h=yes
else
ac_cv_sys_tiocgwinsz_in_sys_ioctl_h=no
@@ -7180,29 +5407,23 @@ fi
rm -f conftest*
fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_sys_tiocgwinsz_in_sys_ioctl_h" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_tiocgwinsz_in_sys_ioctl_h" >&5
$as_echo "$ac_cv_sys_tiocgwinsz_in_sys_ioctl_h" >&6; }
if test $ac_cv_sys_tiocgwinsz_in_sys_ioctl_h = yes; then
-cat >>confdefs.h <<\_ACEOF
-#define GWINSZ_IN_SYS_IOCTL 1
-_ACEOF
+$as_echo "#define GWINSZ_IN_SYS_IOCTL 1" >>confdefs.h
fi
fi
-{ $as_echo "$as_me:$LINENO: checking for sig_atomic_t in signal.h" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sig_atomic_t in signal.h" >&5
$as_echo_n "checking for sig_atomic_t in signal.h... " >&6; }
-if test "${ac_cv_have_sig_atomic_t+set}" = set; then
+if ${ac_cv_have_sig_atomic_t+:} false; then :
$as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <signal.h>
@@ -7215,139 +5436,21 @@ main ()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
+if ac_fn_c_try_link "$LINENO"; then :
ac_cv_have_sig_atomic_t=yes
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_cv_have_sig_atomic_t=no
+ ac_cv_have_sig_atomic_t=no
fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_have_sig_atomic_t" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_have_sig_atomic_t" >&5
$as_echo "$ac_cv_have_sig_atomic_t" >&6; }
if test "$ac_cv_have_sig_atomic_t" = "no"
then
- { $as_echo "$as_me:$LINENO: checking for sig_atomic_t" >&5
-$as_echo_n "checking for sig_atomic_t... " >&6; }
-if test "${ac_cv_type_sig_atomic_t+set}" = set; then
- $as_echo_n "(cached) " >&6
-else
- ac_cv_type_sig_atomic_t=no
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-$ac_includes_default
-int
-main ()
-{
-if (sizeof (sig_atomic_t))
- return 0;
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-$ac_includes_default
-int
-main ()
-{
-if (sizeof ((sig_atomic_t)))
- return 0;
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
- :
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_cv_type_sig_atomic_t=yes
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+ ac_fn_c_check_type "$LINENO" "sig_atomic_t" "ac_cv_type_sig_atomic_t" "$ac_includes_default"
+if test "x$ac_cv_type_sig_atomic_t" = xyes; then :
-
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_sig_atomic_t" >&5
-$as_echo "$ac_cv_type_sig_atomic_t" >&6; }
-if test "x$ac_cv_type_sig_atomic_t" = x""yes; then
- :
else
cat >>confdefs.h <<_ACEOF
@@ -7358,16 +5461,12 @@ fi
fi
-{ $as_echo "$as_me:$LINENO: checking whether signal handlers are of type void" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether signal handlers are of type void" >&5
$as_echo_n "checking whether signal handlers are of type void... " >&6; }
-if test "${bash_cv_void_sighandler+set}" = set; then
+if ${bash_cv_void_sighandler+:} false; then :
$as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <sys/types.h>
#include <signal.h>
@@ -7386,54 +5485,27 @@ int i;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
bash_cv_void_sighandler=yes
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- bash_cv_void_sighandler=no
+ bash_cv_void_sighandler=no
fi
-
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-{ $as_echo "$as_me:$LINENO: result: $bash_cv_void_sighandler" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_void_sighandler" >&5
$as_echo "$bash_cv_void_sighandler" >&6; }
if test $bash_cv_void_sighandler = yes; then
-cat >>confdefs.h <<\_ACEOF
-#define VOID_SIGHANDLER 1
-_ACEOF
+$as_echo "#define VOID_SIGHANDLER 1" >>confdefs.h
fi
-{ $as_echo "$as_me:$LINENO: checking for TIOCSTAT in sys/ioctl.h" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for TIOCSTAT in sys/ioctl.h" >&5
$as_echo_n "checking for TIOCSTAT in sys/ioctl.h... " >&6; }
-if test "${bash_cv_tiocstat_in_ioctl+set}" = set; then
+if ${bash_cv_tiocstat_in_ioctl+:} false; then :
$as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <sys/types.h>
#include <sys/ioctl.h>
@@ -7445,54 +5517,27 @@ int x = TIOCSTAT;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
bash_cv_tiocstat_in_ioctl=yes
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- bash_cv_tiocstat_in_ioctl=no
+ bash_cv_tiocstat_in_ioctl=no
fi
-
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-{ $as_echo "$as_me:$LINENO: result: $bash_cv_tiocstat_in_ioctl" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_tiocstat_in_ioctl" >&5
$as_echo "$bash_cv_tiocstat_in_ioctl" >&6; }
if test $bash_cv_tiocstat_in_ioctl = yes; then
-cat >>confdefs.h <<\_ACEOF
-#define TIOCSTAT_IN_SYS_IOCTL 1
-_ACEOF
+$as_echo "#define TIOCSTAT_IN_SYS_IOCTL 1" >>confdefs.h
fi
-{ $as_echo "$as_me:$LINENO: checking for FIONREAD in sys/ioctl.h" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for FIONREAD in sys/ioctl.h" >&5
$as_echo_n "checking for FIONREAD in sys/ioctl.h... " >&6; }
-if test "${bash_cv_fionread_in_ioctl+set}" = set; then
+if ${bash_cv_fionread_in_ioctl+:} false; then :
$as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <sys/types.h>
#include <sys/ioctl.h>
@@ -7504,54 +5549,27 @@ int x = FIONREAD;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
bash_cv_fionread_in_ioctl=yes
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- bash_cv_fionread_in_ioctl=no
+ bash_cv_fionread_in_ioctl=no
fi
-
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-{ $as_echo "$as_me:$LINENO: result: $bash_cv_fionread_in_ioctl" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_fionread_in_ioctl" >&5
$as_echo "$bash_cv_fionread_in_ioctl" >&6; }
if test $bash_cv_fionread_in_ioctl = yes; then
-cat >>confdefs.h <<\_ACEOF
-#define FIONREAD_IN_SYS_IOCTL 1
-_ACEOF
+$as_echo "#define FIONREAD_IN_SYS_IOCTL 1" >>confdefs.h
fi
-{ $as_echo "$as_me:$LINENO: checking for speed_t in sys/types.h" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for speed_t in sys/types.h" >&5
$as_echo_n "checking for speed_t in sys/types.h... " >&6; }
-if test "${bash_cv_speed_t_in_sys_types+set}" = set; then
+if ${bash_cv_speed_t_in_sys_types+:} false; then :
$as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <sys/types.h>
int
@@ -7562,54 +5580,27 @@ speed_t x;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
bash_cv_speed_t_in_sys_types=yes
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- bash_cv_speed_t_in_sys_types=no
+ bash_cv_speed_t_in_sys_types=no
fi
-
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-{ $as_echo "$as_me:$LINENO: result: $bash_cv_speed_t_in_sys_types" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_speed_t_in_sys_types" >&5
$as_echo "$bash_cv_speed_t_in_sys_types" >&6; }
if test $bash_cv_speed_t_in_sys_types = yes; then
-cat >>confdefs.h <<\_ACEOF
-#define SPEED_T_IN_SYS_TYPES 1
-_ACEOF
+$as_echo "#define SPEED_T_IN_SYS_TYPES 1" >>confdefs.h
fi
-{ $as_echo "$as_me:$LINENO: checking for struct winsize in sys/ioctl.h and termios.h" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct winsize in sys/ioctl.h and termios.h" >&5
$as_echo_n "checking for struct winsize in sys/ioctl.h and termios.h... " >&6; }
-if test "${bash_cv_struct_winsize_header+set}" = set; then
+if ${bash_cv_struct_winsize_header+:} false; then :
$as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <sys/types.h>
#include <sys/ioctl.h>
@@ -7621,34 +5612,10 @@ struct winsize x;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
bash_cv_struct_winsize_header=ioctl_h
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <sys/types.h>
#include <termios.h>
@@ -7660,69 +5627,39 @@ struct winsize x;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
bash_cv_struct_winsize_header=termios_h
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- bash_cv_struct_winsize_header=other
+ bash_cv_struct_winsize_header=other
fi
-
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
if test $bash_cv_struct_winsize_header = ioctl_h; then
- { $as_echo "$as_me:$LINENO: result: sys/ioctl.h" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: sys/ioctl.h" >&5
$as_echo "sys/ioctl.h" >&6; }
- cat >>confdefs.h <<\_ACEOF
-#define STRUCT_WINSIZE_IN_SYS_IOCTL 1
-_ACEOF
+ $as_echo "#define STRUCT_WINSIZE_IN_SYS_IOCTL 1" >>confdefs.h
elif test $bash_cv_struct_winsize_header = termios_h; then
- { $as_echo "$as_me:$LINENO: result: termios.h" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: termios.h" >&5
$as_echo "termios.h" >&6; }
- cat >>confdefs.h <<\_ACEOF
-#define STRUCT_WINSIZE_IN_TERMIOS 1
-_ACEOF
+ $as_echo "#define STRUCT_WINSIZE_IN_TERMIOS 1" >>confdefs.h
else
- { $as_echo "$as_me:$LINENO: result: not found" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
$as_echo "not found" >&6; }
fi
-{ $as_echo "$as_me:$LINENO: checking for struct dirent.d_ino" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct dirent.d_ino" >&5
$as_echo_n "checking for struct dirent.d_ino... " >&6; }
-if test "${bash_cv_dirent_has_dino+set}" = set; then
+if ${bash_cv_dirent_has_dino+:} false; then :
$as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <stdio.h>
@@ -7755,55 +5692,28 @@ struct dirent d; int z; z = d.d_ino;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
bash_cv_dirent_has_dino=yes
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- bash_cv_dirent_has_dino=no
+ bash_cv_dirent_has_dino=no
fi
-
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-{ $as_echo "$as_me:$LINENO: result: $bash_cv_dirent_has_dino" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_dirent_has_dino" >&5
$as_echo "$bash_cv_dirent_has_dino" >&6; }
if test $bash_cv_dirent_has_dino = yes; then
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_STRUCT_DIRENT_D_INO 1
-_ACEOF
+$as_echo "#define HAVE_STRUCT_DIRENT_D_INO 1" >>confdefs.h
fi
-{ $as_echo "$as_me:$LINENO: checking for struct dirent.d_fileno" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct dirent.d_fileno" >&5
$as_echo_n "checking for struct dirent.d_fileno... " >&6; }
-if test "${bash_cv_dirent_has_d_fileno+set}" = set; then
+if ${bash_cv_dirent_has_d_fileno+:} false; then :
$as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <stdio.h>
@@ -7836,44 +5746,34 @@ struct dirent d; int z; z = d.d_fileno;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
bash_cv_dirent_has_d_fileno=yes
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- bash_cv_dirent_has_d_fileno=no
+ bash_cv_dirent_has_d_fileno=no
fi
-
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-{ $as_echo "$as_me:$LINENO: result: $bash_cv_dirent_has_d_fileno" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_dirent_has_d_fileno" >&5
$as_echo "$bash_cv_dirent_has_d_fileno" >&6; }
if test $bash_cv_dirent_has_d_fileno = yes; then
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_STRUCT_DIRENT_D_FILENO 1
-_ACEOF
+$as_echo "#define HAVE_STRUCT_DIRENT_D_FILENO 1" >>confdefs.h
+
+fi
+
+ac_fn_c_check_decl "$LINENO" "AUDIT_USER_TTY" "ac_cv_have_decl_AUDIT_USER_TTY" "#include <linux/audit.h>
+"
+if test "x$ac_cv_have_decl_AUDIT_USER_TTY" = xyes; then :
+ ac_have_decl=1
+else
+ ac_have_decl=0
fi
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_AUDIT_USER_TTY $ac_have_decl
+_ACEOF
+
case "$host_os" in
aix*) prefer_curses=yes ;;
@@ -7882,113 +5782,25 @@ esac
if test "X$bash_cv_termcap_lib" = "X"; then
_bash_needmsg=yes
else
-{ $as_echo "$as_me:$LINENO: checking which library has the termcap functions" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking which library has the termcap functions" >&5
$as_echo_n "checking which library has the termcap functions... " >&6; }
_bash_needmsg=
fi
-if test "${bash_cv_termcap_lib+set}" = set; then
+if ${bash_cv_termcap_lib+:} false; then :
$as_echo_n "(cached) " >&6
else
- { $as_echo "$as_me:$LINENO: checking for tgetent" >&5
-$as_echo_n "checking for tgetent... " >&6; }
-if test "${ac_cv_func_tgetent+set}" = set; then
- $as_echo_n "(cached) " >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-/* Define tgetent to an innocuous variant, in case <limits.h> declares tgetent.
- For example, HP-UX 11i <limits.h> declares gettimeofday. */
-#define tgetent innocuous_tgetent
-
-/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char tgetent (); below.
- Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- <limits.h> exists even on freestanding compilers. */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef tgetent
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char tgetent ();
-/* The GNU C library defines this for functions which it implements
- to always fail with ENOSYS. Some functions are actually named
- something starting with __ and the normal name is an alias. */
-#if defined __stub_tgetent || defined __stub___tgetent
-choke me
-#endif
-
-int
-main ()
-{
-return tgetent ();
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
- ac_cv_func_tgetent=yes
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_cv_func_tgetent=no
-fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_tgetent" >&5
-$as_echo "$ac_cv_func_tgetent" >&6; }
-if test "x$ac_cv_func_tgetent" = x""yes; then
+ ac_fn_c_check_func "$LINENO" "tgetent" "ac_cv_func_tgetent"
+if test "x$ac_cv_func_tgetent" = xyes; then :
bash_cv_termcap_lib=libc
else
- { $as_echo "$as_me:$LINENO: checking for tgetent in -ltermcap" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tgetent in -ltermcap" >&5
$as_echo_n "checking for tgetent in -ltermcap... " >&6; }
-if test "${ac_cv_lib_termcap_tgetent+set}" = set; then
+if ${ac_cv_lib_termcap_tgetent+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-ltermcap $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
/* Override any GCC internal prototype to avoid an error.
@@ -8006,57 +5818,28 @@ return tgetent ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
+if ac_fn_c_try_link "$LINENO"; then :
ac_cv_lib_termcap_tgetent=yes
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_cv_lib_termcap_tgetent=no
+ ac_cv_lib_termcap_tgetent=no
fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_termcap_tgetent" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_termcap_tgetent" >&5
$as_echo "$ac_cv_lib_termcap_tgetent" >&6; }
-if test "x$ac_cv_lib_termcap_tgetent" = x""yes; then
+if test "x$ac_cv_lib_termcap_tgetent" = xyes; then :
bash_cv_termcap_lib=libtermcap
else
- { $as_echo "$as_me:$LINENO: checking for tgetent in -ltinfo" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tgetent in -ltinfo" >&5
$as_echo_n "checking for tgetent in -ltinfo... " >&6; }
-if test "${ac_cv_lib_tinfo_tgetent+set}" = set; then
+if ${ac_cv_lib_tinfo_tgetent+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-ltinfo $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
/* Override any GCC internal prototype to avoid an error.
@@ -8074,57 +5857,28 @@ return tgetent ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
+if ac_fn_c_try_link "$LINENO"; then :
ac_cv_lib_tinfo_tgetent=yes
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_cv_lib_tinfo_tgetent=no
+ ac_cv_lib_tinfo_tgetent=no
fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_tinfo_tgetent" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_tinfo_tgetent" >&5
$as_echo "$ac_cv_lib_tinfo_tgetent" >&6; }
-if test "x$ac_cv_lib_tinfo_tgetent" = x""yes; then
+if test "x$ac_cv_lib_tinfo_tgetent" = xyes; then :
bash_cv_termcap_lib=libtinfo
else
- { $as_echo "$as_me:$LINENO: checking for tgetent in -lcurses" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tgetent in -lcurses" >&5
$as_echo_n "checking for tgetent in -lcurses... " >&6; }
-if test "${ac_cv_lib_curses_tgetent+set}" = set; then
+if ${ac_cv_lib_curses_tgetent+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lcurses $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
/* Override any GCC internal prototype to avoid an error.
@@ -8142,57 +5896,28 @@ return tgetent ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
+if ac_fn_c_try_link "$LINENO"; then :
ac_cv_lib_curses_tgetent=yes
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_cv_lib_curses_tgetent=no
+ ac_cv_lib_curses_tgetent=no
fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_curses_tgetent" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_curses_tgetent" >&5
$as_echo "$ac_cv_lib_curses_tgetent" >&6; }
-if test "x$ac_cv_lib_curses_tgetent" = x""yes; then
+if test "x$ac_cv_lib_curses_tgetent" = xyes; then :
bash_cv_termcap_lib=libcurses
else
- { $as_echo "$as_me:$LINENO: checking for tgetent in -lncurses" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tgetent in -lncurses" >&5
$as_echo_n "checking for tgetent in -lncurses... " >&6; }
-if test "${ac_cv_lib_ncurses_tgetent+set}" = set; then
+if ${ac_cv_lib_ncurses_tgetent+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lncurses $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
/* Override any GCC internal prototype to avoid an error.
@@ -8210,43 +5935,18 @@ return tgetent ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
+if ac_fn_c_try_link "$LINENO"; then :
ac_cv_lib_ncurses_tgetent=yes
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_cv_lib_ncurses_tgetent=no
+ ac_cv_lib_ncurses_tgetent=no
fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_ncurses_tgetent" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ncurses_tgetent" >&5
$as_echo "$ac_cv_lib_ncurses_tgetent" >&6; }
-if test "x$ac_cv_lib_ncurses_tgetent" = x""yes; then
+if test "x$ac_cv_lib_ncurses_tgetent" = xyes; then :
bash_cv_termcap_lib=libncurses
else
bash_cv_termcap_lib=gnutermcap
@@ -8263,10 +5963,10 @@ fi
fi
if test "X$_bash_needmsg" = "Xyes"; then
-{ $as_echo "$as_me:$LINENO: checking which library has the termcap functions" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking which library has the termcap functions" >&5
$as_echo_n "checking which library has the termcap functions... " >&6; }
fi
-{ $as_echo "$as_me:$LINENO: result: using $bash_cv_termcap_lib" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: using $bash_cv_termcap_lib" >&5
$as_echo "using $bash_cv_termcap_lib" >&6; }
if test $bash_cv_termcap_lib = gnutermcap && test -z "$prefer_curses"; then
LDFLAGS="$LDFLAGS -L./lib/termcap"
@@ -8298,453 +5998,36 @@ if test "$TERMCAP_LIB" = "./lib/termcap/libtermcap.a"; then
fi
-
for ac_header in wctype.h
-do
-as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
- { $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
-$as_echo_n "checking for $ac_header... " >&6; }
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
- $as_echo_n "(cached) " >&6
-fi
-ac_res=`eval 'as_val=${'$as_ac_Header'}
- $as_echo "$as_val"'`
- { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-else
- # Is the header compilable?
-{ $as_echo "$as_me:$LINENO: checking $ac_header usability" >&5
-$as_echo_n "checking $ac_header usability... " >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-$ac_includes_default
-#include <$ac_header>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
- ac_header_compiler=yes
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_header_compiler=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-$as_echo "$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ $as_echo "$as_me:$LINENO: checking $ac_header presence" >&5
-$as_echo_n "checking $ac_header presence... " >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-#include <$ac_header>
-_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null && {
- test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
- test ! -s conftest.err
- }; then
- ac_header_preproc=yes
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_header_preproc=no
-fi
-
-rm -f conftest.err conftest.$ac_ext
-{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-$as_echo "$ac_header_preproc" >&6; }
-
-# So? What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
- yes:no: )
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-$as_echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-$as_echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
- ac_header_preproc=yes
- ;;
- no:yes:* )
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-$as_echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
-$as_echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-$as_echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
-$as_echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-$as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-$as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
- ( cat <<\_ASBOX
-## ----------------------------------- ##
-## Report this to bug-readline@gnu.org ##
-## ----------------------------------- ##
-_ASBOX
- ) | sed "s/^/$as_me: WARNING: /" >&2
- ;;
-esac
-{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
-$as_echo_n "checking for $ac_header... " >&6; }
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
- $as_echo_n "(cached) " >&6
-else
- eval "$as_ac_Header=\$ac_header_preproc"
-fi
-ac_res=`eval 'as_val=${'$as_ac_Header'}
- $as_echo "$as_val"'`
- { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-
-fi
-as_val=`eval 'as_val=${'$as_ac_Header'}
- $as_echo "$as_val"'`
- if test "x$as_val" = x""yes; then
+do :
+ ac_fn_c_check_header_mongrel "$LINENO" "wctype.h" "ac_cv_header_wctype_h" "$ac_includes_default"
+if test "x$ac_cv_header_wctype_h" = xyes; then :
cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
+#define HAVE_WCTYPE_H 1
_ACEOF
fi
done
-
for ac_header in wchar.h
-do
-as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
- { $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
-$as_echo_n "checking for $ac_header... " >&6; }
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
- $as_echo_n "(cached) " >&6
-fi
-ac_res=`eval 'as_val=${'$as_ac_Header'}
- $as_echo "$as_val"'`
- { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-else
- # Is the header compilable?
-{ $as_echo "$as_me:$LINENO: checking $ac_header usability" >&5
-$as_echo_n "checking $ac_header usability... " >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-$ac_includes_default
-#include <$ac_header>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
- ac_header_compiler=yes
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_header_compiler=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-$as_echo "$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ $as_echo "$as_me:$LINENO: checking $ac_header presence" >&5
-$as_echo_n "checking $ac_header presence... " >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-#include <$ac_header>
-_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null && {
- test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
- test ! -s conftest.err
- }; then
- ac_header_preproc=yes
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_header_preproc=no
-fi
-
-rm -f conftest.err conftest.$ac_ext
-{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-$as_echo "$ac_header_preproc" >&6; }
-
-# So? What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
- yes:no: )
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-$as_echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-$as_echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
- ac_header_preproc=yes
- ;;
- no:yes:* )
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-$as_echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
-$as_echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-$as_echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
-$as_echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-$as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-$as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
- ( cat <<\_ASBOX
-## ----------------------------------- ##
-## Report this to bug-readline@gnu.org ##
-## ----------------------------------- ##
-_ASBOX
- ) | sed "s/^/$as_me: WARNING: /" >&2
- ;;
-esac
-{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
-$as_echo_n "checking for $ac_header... " >&6; }
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
- $as_echo_n "(cached) " >&6
-else
- eval "$as_ac_Header=\$ac_header_preproc"
-fi
-ac_res=`eval 'as_val=${'$as_ac_Header'}
- $as_echo "$as_val"'`
- { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-
-fi
-as_val=`eval 'as_val=${'$as_ac_Header'}
- $as_echo "$as_val"'`
- if test "x$as_val" = x""yes; then
+do :
+ ac_fn_c_check_header_mongrel "$LINENO" "wchar.h" "ac_cv_header_wchar_h" "$ac_includes_default"
+if test "x$ac_cv_header_wchar_h" = xyes; then :
cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
+#define HAVE_WCHAR_H 1
_ACEOF
fi
done
-
for ac_header in langinfo.h
-do
-as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
- { $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
-$as_echo_n "checking for $ac_header... " >&6; }
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
- $as_echo_n "(cached) " >&6
-fi
-ac_res=`eval 'as_val=${'$as_ac_Header'}
- $as_echo "$as_val"'`
- { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-else
- # Is the header compilable?
-{ $as_echo "$as_me:$LINENO: checking $ac_header usability" >&5
-$as_echo_n "checking $ac_header usability... " >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-$ac_includes_default
-#include <$ac_header>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
- ac_header_compiler=yes
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_header_compiler=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-$as_echo "$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ $as_echo "$as_me:$LINENO: checking $ac_header presence" >&5
-$as_echo_n "checking $ac_header presence... " >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-#include <$ac_header>
-_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null && {
- test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
- test ! -s conftest.err
- }; then
- ac_header_preproc=yes
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_header_preproc=no
-fi
-
-rm -f conftest.err conftest.$ac_ext
-{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-$as_echo "$ac_header_preproc" >&6; }
-
-# So? What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
- yes:no: )
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-$as_echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-$as_echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
- ac_header_preproc=yes
- ;;
- no:yes:* )
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-$as_echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
-$as_echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-$as_echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
-$as_echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-$as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-$as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
- ( cat <<\_ASBOX
-## ----------------------------------- ##
-## Report this to bug-readline@gnu.org ##
-## ----------------------------------- ##
-_ASBOX
- ) | sed "s/^/$as_me: WARNING: /" >&2
- ;;
-esac
-{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
-$as_echo_n "checking for $ac_header... " >&6; }
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
- $as_echo_n "(cached) " >&6
-else
- eval "$as_ac_Header=\$ac_header_preproc"
-fi
-ac_res=`eval 'as_val=${'$as_ac_Header'}
- $as_echo "$as_val"'`
- { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-
-fi
-as_val=`eval 'as_val=${'$as_ac_Header'}
- $as_echo "$as_val"'`
- if test "x$as_val" = x""yes; then
+do :
+ ac_fn_c_check_header_mongrel "$LINENO" "langinfo.h" "ac_cv_header_langinfo_h" "$ac_includes_default"
+if test "x$ac_cv_header_langinfo_h" = xyes; then :
cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
+#define HAVE_LANGINFO_H 1
_ACEOF
fi
@@ -8752,1160 +6035,105 @@ fi
done
-{ $as_echo "$as_me:$LINENO: checking for mbrlen" >&5
-$as_echo_n "checking for mbrlen... " >&6; }
-if test "${ac_cv_func_mbrlen+set}" = set; then
- $as_echo_n "(cached) " >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-/* Define mbrlen to an innocuous variant, in case <limits.h> declares mbrlen.
- For example, HP-UX 11i <limits.h> declares gettimeofday. */
-#define mbrlen innocuous_mbrlen
-
-/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char mbrlen (); below.
- Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- <limits.h> exists even on freestanding compilers. */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef mbrlen
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char mbrlen ();
-/* The GNU C library defines this for functions which it implements
- to always fail with ENOSYS. Some functions are actually named
- something starting with __ and the normal name is an alias. */
-#if defined __stub_mbrlen || defined __stub___mbrlen
-choke me
-#endif
-
-int
-main ()
-{
-return mbrlen ();
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
- ac_cv_func_mbrlen=yes
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+ac_fn_c_check_func "$LINENO" "mbrlen" "ac_cv_func_mbrlen"
+if test "x$ac_cv_func_mbrlen" = xyes; then :
+ $as_echo "#define HAVE_MBRLEN 1" >>confdefs.h
- ac_cv_func_mbrlen=no
fi
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_mbrlen" >&5
-$as_echo "$ac_cv_func_mbrlen" >&6; }
-if test "x$ac_cv_func_mbrlen" = x""yes; then
- cat >>confdefs.h <<\_ACEOF
-#define HAVE_MBRLEN 1
-_ACEOF
+ac_fn_c_check_func "$LINENO" "mbscasecmp" "ac_cv_func_mbscasecmp"
+if test "x$ac_cv_func_mbscasecmp" = xyes; then :
+ $as_echo "#define HAVE_MBSCMP 1" >>confdefs.h
fi
-{ $as_echo "$as_me:$LINENO: checking for mbscasecmp" >&5
-$as_echo_n "checking for mbscasecmp... " >&6; }
-if test "${ac_cv_func_mbscasecmp+set}" = set; then
- $as_echo_n "(cached) " >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-/* Define mbscasecmp to an innocuous variant, in case <limits.h> declares mbscasecmp.
- For example, HP-UX 11i <limits.h> declares gettimeofday. */
-#define mbscasecmp innocuous_mbscasecmp
-
-/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char mbscasecmp (); below.
- Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- <limits.h> exists even on freestanding compilers. */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef mbscasecmp
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char mbscasecmp ();
-/* The GNU C library defines this for functions which it implements
- to always fail with ENOSYS. Some functions are actually named
- something starting with __ and the normal name is an alias. */
-#if defined __stub_mbscasecmp || defined __stub___mbscasecmp
-choke me
-#endif
-
-int
-main ()
-{
-return mbscasecmp ();
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
- ac_cv_func_mbscasecmp=yes
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+ac_fn_c_check_func "$LINENO" "mbscmp" "ac_cv_func_mbscmp"
+if test "x$ac_cv_func_mbscmp" = xyes; then :
+ $as_echo "#define HAVE_MBSCMP 1" >>confdefs.h
- ac_cv_func_mbscasecmp=no
fi
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_mbscasecmp" >&5
-$as_echo "$ac_cv_func_mbscasecmp" >&6; }
-if test "x$ac_cv_func_mbscasecmp" = x""yes; then
- cat >>confdefs.h <<\_ACEOF
-#define HAVE_MBSCMP 1
-_ACEOF
+ac_fn_c_check_func "$LINENO" "mbsnrtowcs" "ac_cv_func_mbsnrtowcs"
+if test "x$ac_cv_func_mbsnrtowcs" = xyes; then :
+ $as_echo "#define HAVE_MBSNRTOWCS 1" >>confdefs.h
fi
-{ $as_echo "$as_me:$LINENO: checking for mbscmp" >&5
-$as_echo_n "checking for mbscmp... " >&6; }
-if test "${ac_cv_func_mbscmp+set}" = set; then
- $as_echo_n "(cached) " >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-/* Define mbscmp to an innocuous variant, in case <limits.h> declares mbscmp.
- For example, HP-UX 11i <limits.h> declares gettimeofday. */
-#define mbscmp innocuous_mbscmp
-
-/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char mbscmp (); below.
- Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- <limits.h> exists even on freestanding compilers. */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef mbscmp
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char mbscmp ();
-/* The GNU C library defines this for functions which it implements
- to always fail with ENOSYS. Some functions are actually named
- something starting with __ and the normal name is an alias. */
-#if defined __stub_mbscmp || defined __stub___mbscmp
-choke me
-#endif
-
-int
-main ()
-{
-return mbscmp ();
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
- ac_cv_func_mbscmp=yes
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+ac_fn_c_check_func "$LINENO" "mbsrtowcs" "ac_cv_func_mbsrtowcs"
+if test "x$ac_cv_func_mbsrtowcs" = xyes; then :
+ $as_echo "#define HAVE_MBSRTOWCS 1" >>confdefs.h
- ac_cv_func_mbscmp=no
fi
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_mbscmp" >&5
-$as_echo "$ac_cv_func_mbscmp" >&6; }
-if test "x$ac_cv_func_mbscmp" = x""yes; then
- cat >>confdefs.h <<\_ACEOF
-#define HAVE_MBSCMP 1
-_ACEOF
-fi
-
-{ $as_echo "$as_me:$LINENO: checking for mbsnrtowcs" >&5
-$as_echo_n "checking for mbsnrtowcs... " >&6; }
-if test "${ac_cv_func_mbsnrtowcs+set}" = set; then
- $as_echo_n "(cached) " >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-/* Define mbsnrtowcs to an innocuous variant, in case <limits.h> declares mbsnrtowcs.
- For example, HP-UX 11i <limits.h> declares gettimeofday. */
-#define mbsnrtowcs innocuous_mbsnrtowcs
-
-/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char mbsnrtowcs (); below.
- Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- <limits.h> exists even on freestanding compilers. */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef mbsnrtowcs
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char mbsnrtowcs ();
-/* The GNU C library defines this for functions which it implements
- to always fail with ENOSYS. Some functions are actually named
- something starting with __ and the normal name is an alias. */
-#if defined __stub_mbsnrtowcs || defined __stub___mbsnrtowcs
-choke me
-#endif
-
-int
-main ()
-{
-return mbsnrtowcs ();
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
- ac_cv_func_mbsnrtowcs=yes
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_cv_func_mbsnrtowcs=no
-fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_mbsnrtowcs" >&5
-$as_echo "$ac_cv_func_mbsnrtowcs" >&6; }
-if test "x$ac_cv_func_mbsnrtowcs" = x""yes; then
- cat >>confdefs.h <<\_ACEOF
-#define HAVE_MBSNRTOWCS 1
-_ACEOF
-
-fi
-
-{ $as_echo "$as_me:$LINENO: checking for mbsrtowcs" >&5
-$as_echo_n "checking for mbsrtowcs... " >&6; }
-if test "${ac_cv_func_mbsrtowcs+set}" = set; then
- $as_echo_n "(cached) " >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-/* Define mbsrtowcs to an innocuous variant, in case <limits.h> declares mbsrtowcs.
- For example, HP-UX 11i <limits.h> declares gettimeofday. */
-#define mbsrtowcs innocuous_mbsrtowcs
-
-/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char mbsrtowcs (); below.
- Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- <limits.h> exists even on freestanding compilers. */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef mbsrtowcs
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char mbsrtowcs ();
-/* The GNU C library defines this for functions which it implements
- to always fail with ENOSYS. Some functions are actually named
- something starting with __ and the normal name is an alias. */
-#if defined __stub_mbsrtowcs || defined __stub___mbsrtowcs
-choke me
-#endif
-
-int
-main ()
-{
-return mbsrtowcs ();
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
- ac_cv_func_mbsrtowcs=yes
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_cv_func_mbsrtowcs=no
-fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_mbsrtowcs" >&5
-$as_echo "$ac_cv_func_mbsrtowcs" >&6; }
-if test "x$ac_cv_func_mbsrtowcs" = x""yes; then
- cat >>confdefs.h <<\_ACEOF
-#define HAVE_MBSRTOWCS 1
-_ACEOF
-
-fi
-
-
-
-
-for ac_func in mbschr
-do
-as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5
-$as_echo_n "checking for $ac_func... " >&6; }
-if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then
- $as_echo_n "(cached) " >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
- For example, HP-UX 11i <limits.h> declares gettimeofday. */
-#define $ac_func innocuous_$ac_func
-
-/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $ac_func (); below.
- Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- <limits.h> exists even on freestanding compilers. */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
- to always fail with ENOSYS. Some functions are actually named
- something starting with __ and the normal name is an alias. */
-#if defined __stub_$ac_func || defined __stub___$ac_func
-choke me
-#endif
-
-int
-main ()
-{
-return $ac_func ();
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
- eval "$as_ac_var=yes"
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- eval "$as_ac_var=no"
-fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
-fi
-ac_res=`eval 'as_val=${'$as_ac_var'}
- $as_echo "$as_val"'`
- { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-as_val=`eval 'as_val=${'$as_ac_var'}
- $as_echo "$as_val"'`
- if test "x$as_val" = x""yes; then
- cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
+ac_fn_c_check_func "$LINENO" "mbschr" "ac_cv_func_mbschr"
+if test "x$ac_cv_func_mbschr" = xyes; then :
+ $as_echo "#define HAVE_MBSCHR 1" >>confdefs.h
else
case " $LIBOBJS " in
- *" $ac_func.$ac_objext "* ) ;;
- *) LIBOBJS="$LIBOBJS $ac_func.$ac_objext"
+ *" mbschr.$ac_objext "* ) ;;
+ *) LIBOBJS="$LIBOBJS mbschr.$ac_objext"
;;
esac
fi
-done
-
-
-
-{ $as_echo "$as_me:$LINENO: checking for wcrtomb" >&5
-$as_echo_n "checking for wcrtomb... " >&6; }
-if test "${ac_cv_func_wcrtomb+set}" = set; then
- $as_echo_n "(cached) " >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-/* Define wcrtomb to an innocuous variant, in case <limits.h> declares wcrtomb.
- For example, HP-UX 11i <limits.h> declares gettimeofday. */
-#define wcrtomb innocuous_wcrtomb
-
-/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char wcrtomb (); below.
- Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- <limits.h> exists even on freestanding compilers. */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef wcrtomb
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char wcrtomb ();
-/* The GNU C library defines this for functions which it implements
- to always fail with ENOSYS. Some functions are actually named
- something starting with __ and the normal name is an alias. */
-#if defined __stub_wcrtomb || defined __stub___wcrtomb
-choke me
-#endif
-
-int
-main ()
-{
-return wcrtomb ();
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
- ac_cv_func_wcrtomb=yes
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_cv_func_wcrtomb=no
-fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_wcrtomb" >&5
-$as_echo "$ac_cv_func_wcrtomb" >&6; }
-if test "x$ac_cv_func_wcrtomb" = x""yes; then
- cat >>confdefs.h <<\_ACEOF
-#define HAVE_WCRTOMB 1
-_ACEOF
-
-fi
-
-{ $as_echo "$as_me:$LINENO: checking for wcscoll" >&5
-$as_echo_n "checking for wcscoll... " >&6; }
-if test "${ac_cv_func_wcscoll+set}" = set; then
- $as_echo_n "(cached) " >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-/* Define wcscoll to an innocuous variant, in case <limits.h> declares wcscoll.
- For example, HP-UX 11i <limits.h> declares gettimeofday. */
-#define wcscoll innocuous_wcscoll
-
-/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char wcscoll (); below.
- Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- <limits.h> exists even on freestanding compilers. */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef wcscoll
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char wcscoll ();
-/* The GNU C library defines this for functions which it implements
- to always fail with ENOSYS. Some functions are actually named
- something starting with __ and the normal name is an alias. */
-#if defined __stub_wcscoll || defined __stub___wcscoll
-choke me
-#endif
-
-int
-main ()
-{
-return wcscoll ();
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
- ac_cv_func_wcscoll=yes
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_cv_func_wcscoll=no
-fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_wcscoll" >&5
-$as_echo "$ac_cv_func_wcscoll" >&6; }
-if test "x$ac_cv_func_wcscoll" = x""yes; then
- cat >>confdefs.h <<\_ACEOF
-#define HAVE_WCSCOLL 1
-_ACEOF
-
-fi
-
-{ $as_echo "$as_me:$LINENO: checking for wcsdup" >&5
-$as_echo_n "checking for wcsdup... " >&6; }
-if test "${ac_cv_func_wcsdup+set}" = set; then
- $as_echo_n "(cached) " >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-/* Define wcsdup to an innocuous variant, in case <limits.h> declares wcsdup.
- For example, HP-UX 11i <limits.h> declares gettimeofday. */
-#define wcsdup innocuous_wcsdup
-
-/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char wcsdup (); below.
- Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- <limits.h> exists even on freestanding compilers. */
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef wcsdup
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char wcsdup ();
-/* The GNU C library defines this for functions which it implements
- to always fail with ENOSYS. Some functions are actually named
- something starting with __ and the normal name is an alias. */
-#if defined __stub_wcsdup || defined __stub___wcsdup
-choke me
-#endif
-
-int
-main ()
-{
-return wcsdup ();
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
- ac_cv_func_wcsdup=yes
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
- ac_cv_func_wcsdup=no
-fi
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_wcsdup" >&5
-$as_echo "$ac_cv_func_wcsdup" >&6; }
-if test "x$ac_cv_func_wcsdup" = x""yes; then
- cat >>confdefs.h <<\_ACEOF
-#define HAVE_WCSDUP 1
-_ACEOF
+ac_fn_c_check_func "$LINENO" "wcrtomb" "ac_cv_func_wcrtomb"
+if test "x$ac_cv_func_wcrtomb" = xyes; then :
+ $as_echo "#define HAVE_WCRTOMB 1" >>confdefs.h
fi
-{ $as_echo "$as_me:$LINENO: checking for wcwidth" >&5
-$as_echo_n "checking for wcwidth... " >&6; }
-if test "${ac_cv_func_wcwidth+set}" = set; then
- $as_echo_n "(cached) " >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-/* Define wcwidth to an innocuous variant, in case <limits.h> declares wcwidth.
- For example, HP-UX 11i <limits.h> declares gettimeofday. */
-#define wcwidth innocuous_wcwidth
-
-/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char wcwidth (); below.
- Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- <limits.h> exists even on freestanding compilers. */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef wcwidth
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char wcwidth ();
-/* The GNU C library defines this for functions which it implements
- to always fail with ENOSYS. Some functions are actually named
- something starting with __ and the normal name is an alias. */
-#if defined __stub_wcwidth || defined __stub___wcwidth
-choke me
-#endif
-
-int
-main ()
-{
-return wcwidth ();
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
- ac_cv_func_wcwidth=yes
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+ac_fn_c_check_func "$LINENO" "wcscoll" "ac_cv_func_wcscoll"
+if test "x$ac_cv_func_wcscoll" = xyes; then :
+ $as_echo "#define HAVE_WCSCOLL 1" >>confdefs.h
- ac_cv_func_wcwidth=no
fi
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_wcwidth" >&5
-$as_echo "$ac_cv_func_wcwidth" >&6; }
-if test "x$ac_cv_func_wcwidth" = x""yes; then
- cat >>confdefs.h <<\_ACEOF
-#define HAVE_WCWIDTH 1
-_ACEOF
+ac_fn_c_check_func "$LINENO" "wcsdup" "ac_cv_func_wcsdup"
+if test "x$ac_cv_func_wcsdup" = xyes; then :
+ $as_echo "#define HAVE_WCSDUP 1" >>confdefs.h
fi
-{ $as_echo "$as_me:$LINENO: checking for wctype" >&5
-$as_echo_n "checking for wctype... " >&6; }
-if test "${ac_cv_func_wctype+set}" = set; then
- $as_echo_n "(cached) " >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-/* Define wctype to an innocuous variant, in case <limits.h> declares wctype.
- For example, HP-UX 11i <limits.h> declares gettimeofday. */
-#define wctype innocuous_wctype
-
-/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char wctype (); below.
- Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- <limits.h> exists even on freestanding compilers. */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef wctype
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char wctype ();
-/* The GNU C library defines this for functions which it implements
- to always fail with ENOSYS. Some functions are actually named
- something starting with __ and the normal name is an alias. */
-#if defined __stub_wctype || defined __stub___wctype
-choke me
-#endif
-
-int
-main ()
-{
-return wctype ();
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
- ac_cv_func_wctype=yes
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+ac_fn_c_check_func "$LINENO" "wcwidth" "ac_cv_func_wcwidth"
+if test "x$ac_cv_func_wcwidth" = xyes; then :
+ $as_echo "#define HAVE_WCWIDTH 1" >>confdefs.h
- ac_cv_func_wctype=no
fi
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_wctype" >&5
-$as_echo "$ac_cv_func_wctype" >&6; }
-if test "x$ac_cv_func_wctype" = x""yes; then
- cat >>confdefs.h <<\_ACEOF
-#define HAVE_WCTYPE 1
-_ACEOF
+ac_fn_c_check_func "$LINENO" "wctype" "ac_cv_func_wctype"
+if test "x$ac_cv_func_wctype" = xyes; then :
+ $as_echo "#define HAVE_WCTYPE 1" >>confdefs.h
fi
-
-for ac_func in wcswidth
-do
-as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5
-$as_echo_n "checking for $ac_func... " >&6; }
-if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then
- $as_echo_n "(cached) " >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
- For example, HP-UX 11i <limits.h> declares gettimeofday. */
-#define $ac_func innocuous_$ac_func
-
-/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $ac_func (); below.
- Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- <limits.h> exists even on freestanding compilers. */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
- to always fail with ENOSYS. Some functions are actually named
- something starting with __ and the normal name is an alias. */
-#if defined __stub_$ac_func || defined __stub___$ac_func
-choke me
-#endif
-
-int
-main ()
-{
-return $ac_func ();
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
- eval "$as_ac_var=yes"
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- eval "$as_ac_var=no"
-fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
-fi
-ac_res=`eval 'as_val=${'$as_ac_var'}
- $as_echo "$as_val"'`
- { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-as_val=`eval 'as_val=${'$as_ac_var'}
- $as_echo "$as_val"'`
- if test "x$as_val" = x""yes; then
- cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
+ac_fn_c_check_func "$LINENO" "wcswidth" "ac_cv_func_wcswidth"
+if test "x$ac_cv_func_wcswidth" = xyes; then :
+ $as_echo "#define HAVE_WCSWIDTH 1" >>confdefs.h
else
case " $LIBOBJS " in
- *" $ac_func.$ac_objext "* ) ;;
- *) LIBOBJS="$LIBOBJS $ac_func.$ac_objext"
+ *" wcswidth.$ac_objext "* ) ;;
+ *) LIBOBJS="$LIBOBJS wcswidth.$ac_objext"
;;
esac
fi
-done
- { $as_echo "$as_me:$LINENO: checking whether mbrtowc and mbstate_t are properly declared" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mbrtowc and mbstate_t are properly declared" >&5
$as_echo_n "checking whether mbrtowc and mbstate_t are properly declared... " >&6; }
-if test "${ac_cv_func_mbrtowc+set}" = set; then
+if ${ac_cv_func_mbrtowc+:} false; then :
$as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <wchar.h>
int
@@ -9920,154 +6148,32 @@ wchar_t wc;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
+if ac_fn_c_try_link "$LINENO"; then :
ac_cv_func_mbrtowc=yes
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_cv_func_mbrtowc=no
+ ac_cv_func_mbrtowc=no
fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_func_mbrtowc" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_mbrtowc" >&5
$as_echo "$ac_cv_func_mbrtowc" >&6; }
if test $ac_cv_func_mbrtowc = yes; then
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_MBRTOWC 1
-_ACEOF
+$as_echo "#define HAVE_MBRTOWC 1" >>confdefs.h
fi
if test $ac_cv_func_mbrtowc = yes; then
- cat >>confdefs.h <<\_ACEOF
-#define HAVE_MBSTATE_T 1
-_ACEOF
+ $as_echo "#define HAVE_MBSTATE_T 1" >>confdefs.h
fi
-
-
-
-
-
for ac_func in iswlower iswupper towlower towupper iswctype
-do
-as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5
-$as_echo_n "checking for $ac_func... " >&6; }
-if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then
- $as_echo_n "(cached) " >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
- For example, HP-UX 11i <limits.h> declares gettimeofday. */
-#define $ac_func innocuous_$ac_func
-
-/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $ac_func (); below.
- Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- <limits.h> exists even on freestanding compilers. */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
- to always fail with ENOSYS. Some functions are actually named
- something starting with __ and the normal name is an alias. */
-#if defined __stub_$ac_func || defined __stub___$ac_func
-choke me
-#endif
-
-int
-main ()
-{
-return $ac_func ();
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
- eval "$as_ac_var=yes"
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- eval "$as_ac_var=no"
-fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
-fi
-ac_res=`eval 'as_val=${'$as_ac_var'}
- $as_echo "$as_val"'`
- { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-as_val=`eval 'as_val=${'$as_ac_var'}
- $as_echo "$as_val"'`
- if test "x$as_val" = x""yes; then
+do :
+ as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
+ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
+if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
cat >>confdefs.h <<_ACEOF
#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
_ACEOF
@@ -10076,16 +6182,12 @@ fi
done
-{ $as_echo "$as_me:$LINENO: checking for nl_langinfo and CODESET" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for nl_langinfo and CODESET" >&5
$as_echo_n "checking for nl_langinfo and CODESET... " >&6; }
-if test "${bash_cv_langinfo_codeset+set}" = set; then
+if ${bash_cv_langinfo_codeset+:} false; then :
$as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <langinfo.h>
int
@@ -10096,58 +6198,27 @@ char* cs = nl_langinfo(CODESET);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
+if ac_fn_c_try_link "$LINENO"; then :
bash_cv_langinfo_codeset=yes
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- bash_cv_langinfo_codeset=no
+ bash_cv_langinfo_codeset=no
fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
fi
-{ $as_echo "$as_me:$LINENO: result: $bash_cv_langinfo_codeset" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_langinfo_codeset" >&5
$as_echo "$bash_cv_langinfo_codeset" >&6; }
if test $bash_cv_langinfo_codeset = yes; then
- cat >>confdefs.h <<\_ACEOF
-#define HAVE_LANGINFO_CODESET 1
-_ACEOF
+ $as_echo "#define HAVE_LANGINFO_CODESET 1" >>confdefs.h
fi
-{ $as_echo "$as_me:$LINENO: checking for wchar_t in wchar.h" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for wchar_t in wchar.h" >&5
$as_echo_n "checking for wchar_t in wchar.h... " >&6; }
-if test "${bash_cv_type_wchar_t+set}" = set; then
+if ${bash_cv_type_wchar_t+:} false; then :
$as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <wchar.h>
@@ -10162,54 +6233,27 @@ main ()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
bash_cv_type_wchar_t=yes
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- bash_cv_type_wchar_t=no
+ bash_cv_type_wchar_t=no
fi
-
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-{ $as_echo "$as_me:$LINENO: result: $bash_cv_type_wchar_t" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_type_wchar_t" >&5
$as_echo "$bash_cv_type_wchar_t" >&6; }
if test $bash_cv_type_wchar_t = yes; then
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_WCHAR_T 1
-_ACEOF
+$as_echo "#define HAVE_WCHAR_T 1" >>confdefs.h
fi
-{ $as_echo "$as_me:$LINENO: checking for wctype_t in wctype.h" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for wctype_t in wctype.h" >&5
$as_echo_n "checking for wctype_t in wctype.h... " >&6; }
-if test "${bash_cv_type_wctype_t+set}" = set; then
+if ${bash_cv_type_wctype_t+:} false; then :
$as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <wctype.h>
int
@@ -10223,54 +6267,27 @@ main ()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
bash_cv_type_wctype_t=yes
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- bash_cv_type_wctype_t=no
+ bash_cv_type_wctype_t=no
fi
-
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-{ $as_echo "$as_me:$LINENO: result: $bash_cv_type_wctype_t" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_type_wctype_t" >&5
$as_echo "$bash_cv_type_wctype_t" >&6; }
if test $bash_cv_type_wctype_t = yes; then
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_WCTYPE_T 1
-_ACEOF
+$as_echo "#define HAVE_WCTYPE_T 1" >>confdefs.h
fi
-{ $as_echo "$as_me:$LINENO: checking for wint_t in wctype.h" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for wint_t in wctype.h" >&5
$as_echo_n "checking for wint_t in wctype.h... " >&6; }
-if test "${bash_cv_type_wint_t+set}" = set; then
+if ${bash_cv_type_wint_t+:} false; then :
$as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <wctype.h>
int
@@ -10284,143 +6301,81 @@ main ()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
bash_cv_type_wint_t=yes
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- bash_cv_type_wint_t=no
+ bash_cv_type_wint_t=no
fi
-
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-{ $as_echo "$as_me:$LINENO: result: $bash_cv_type_wint_t" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_type_wint_t" >&5
$as_echo "$bash_cv_type_wint_t" >&6; }
if test $bash_cv_type_wint_t = yes; then
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_WINT_T 1
-_ACEOF
+$as_echo "#define HAVE_WINT_T 1" >>confdefs.h
fi
-if test "$am_cv_func_iconv" = yes; then
- OLDLIBS="$LIBS"
- LIBS="$LIBS $LIBICONV"
-
-for ac_func in locale_charset
-do
-as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5
-$as_echo_n "checking for $ac_func... " >&6; }
-if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for wcwidth broken with unicode combining characters" >&5
+$as_echo_n "checking for wcwidth broken with unicode combining characters... " >&6; }
+if ${bash_cv_wcwidth_broken+:} false; then :
$as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ if test "$cross_compiling" = yes; then :
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error $? "cannot run test program while cross compiling
+See \`config.log' for more details" "$LINENO" 5; }
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
- For example, HP-UX 11i <limits.h> declares gettimeofday. */
-#define $ac_func innocuous_$ac_func
-
-/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $ac_func (); below.
- Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- <limits.h> exists even on freestanding compilers. */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef $ac_func
+#include <unistd.h>
+#include <stdlib.h>
+#include <stdio.h>
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
- to always fail with ENOSYS. Some functions are actually named
- something starting with __ and the normal name is an alias. */
-#if defined __stub_$ac_func || defined __stub___$ac_func
-choke me
-#endif
+#include <locale.h>
+#include <wchar.h>
-int
-main ()
+main(c, v)
+int c;
+char **v;
{
-return $ac_func ();
- ;
- return 0;
+ int w;
+
+ setlocale(LC_ALL, "en_US.UTF-8");
+ w = wcwidth (0x0301);
+ exit (w == 0); /* exit 0 if wcwidth broken */
}
+
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
- eval "$as_ac_var=yes"
+if ac_fn_c_try_run "$LINENO"; then :
+ bash_cv_wcwidth_broken=yes
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+ bash_cv_wcwdith_broken=no
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
- eval "$as_ac_var=no"
fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $bash_cv_wcwidth_broken" >&5
+$as_echo "$bash_cv_wcwidth_broken" >&6; }
+if test "$bash_cv_wcwidth_broken" = yes; then
+
+$as_echo "#define WCWIDTH_BROKEN 1" >>confdefs.h
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
fi
-ac_res=`eval 'as_val=${'$as_ac_var'}
- $as_echo "$as_val"'`
- { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-as_val=`eval 'as_val=${'$as_ac_var'}
- $as_echo "$as_val"'`
- if test "x$as_val" = x""yes; then
+
+if test "$am_cv_func_iconv" = yes; then
+ OLDLIBS="$LIBS"
+ LIBS="$LIBS $LIBICONV"
+ for ac_func in locale_charset
+do :
+ ac_fn_c_check_func "$LINENO" "locale_charset" "ac_cv_func_locale_charset"
+if test "x$ac_cv_func_locale_charset" = xyes; then :
cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
+#define HAVE_LOCALE_CHARSET 1
_ACEOF
fi
@@ -10446,7 +6401,7 @@ esac
# ${srcdir}/support/shobj-conf
#
if test -f ${srcdir}/support/shobj-conf; then
- { $as_echo "$as_me:$LINENO: checking configuration for building shared libraries" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking configuration for building shared libraries" >&5
$as_echo_n "checking configuration for building shared libraries... " >&6; }
eval `TERMCAP_LIB=$TERMCAP_LIB ${CONFIG_SHELL-/bin/sh} ${srcdir}/support/shobj-conf -C "${CC}" -c ${host_cpu} -o ${host_os} -v ${host_vendor}`
@@ -10470,7 +6425,7 @@ $as_echo_n "checking configuration for building shared libraries... " >&6; }
- { $as_echo "$as_me:$LINENO: result: $SHLIB_STATUS" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $SHLIB_STATUS" >&5
$as_echo "$SHLIB_STATUS" >&6; }
# SHLIB_STATUS is either `supported' or `unsupported'. If it's
@@ -10501,7 +6456,7 @@ fi
-case "$host_os" in
+case "$build_os" in
msdosdjgpp*) BUILD_DIR=`pwd.exe` ;; # to prevent //d/path/file
*) BUILD_DIR=`pwd` ;;
esac
@@ -10560,13 +6515,13 @@ _ACEOF
case $ac_val in #(
*${as_nl}*)
case $ac_var in #(
- *_cv_*) { $as_echo "$as_me:$LINENO: WARNING: cache variable $ac_var contains a newline" >&5
+ *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
esac
case $ac_var in #(
_ | IFS | as_nl) ;; #(
BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
- *) $as_unset $ac_var ;;
+ *) { eval $ac_var=; unset $ac_var;} ;;
esac ;;
esac
done
@@ -10574,8 +6529,8 @@ $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
(set) 2>&1 |
case $as_nl`(ac_space=' '; set) 2>&1` in #(
*${as_nl}ac_space=\ *)
- # `set' does not quote correctly, so add quotes (double-quote
- # substitution turns \\\\ into \\, and sed turns \\ into \).
+ # `set' does not quote correctly, so add quotes: double-quote
+ # substitution turns \\\\ into \\, and sed turns \\ into \.
sed -n \
"s/'/'\\\\''/g;
s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
@@ -10597,12 +6552,23 @@ $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
:end' >>confcache
if diff "$cache_file" confcache >/dev/null 2>&1; then :; else
if test -w "$cache_file"; then
- test "x$cache_file" != "x/dev/null" &&
- { $as_echo "$as_me:$LINENO: updating cache $cache_file" >&5
+ if test "x$cache_file" != "x/dev/null"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5
$as_echo "$as_me: updating cache $cache_file" >&6;}
- cat confcache >$cache_file
+ if test ! -f "$cache_file" || test -h "$cache_file"; then
+ cat confcache >"$cache_file"
+ else
+ case $cache_file in #(
+ */* | ?:*)
+ mv -f confcache "$cache_file"$$ &&
+ mv -f "$cache_file"$$ "$cache_file" ;; #(
+ *)
+ mv -f confcache "$cache_file" ;;
+ esac
+ fi
+ fi
else
- { $as_echo "$as_me:$LINENO: not updating unwritable cache $cache_file" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5
$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;}
fi
fi
@@ -10616,14 +6582,15 @@ DEFS=-DHAVE_CONFIG_H
ac_libobjs=
ac_ltlibobjs=
+U=
for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
# 1. Remove the extension, and $U if already installed.
ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'
ac_i=`$as_echo "$ac_i" | sed "$ac_script"`
# 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR
# will be set to the directory where LIBOBJS objects are built.
- ac_libobjs="$ac_libobjs \${LIBOBJDIR}$ac_i\$U.$ac_objext"
- ac_ltlibobjs="$ac_ltlibobjs \${LIBOBJDIR}$ac_i"'$U.lo'
+ as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext"
+ as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo'
done
LIBOBJS=$ac_libobjs
@@ -10631,13 +6598,14 @@ LTLIBOBJS=$ac_ltlibobjs
-: ${CONFIG_STATUS=./config.status}
+: "${CONFIG_STATUS=./config.status}"
ac_write_fail=0
ac_clean_files_save=$ac_clean_files
ac_clean_files="$ac_clean_files $CONFIG_STATUS"
-{ $as_echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5
$as_echo "$as_me: creating $CONFIG_STATUS" >&6;}
-cat >$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+as_write_fail=0
+cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1
#! $SHELL
# Generated by $as_me.
# Run this file to recreate the current configuration.
@@ -10647,17 +6615,18 @@ cat >$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
debug=false
ac_cs_recheck=false
ac_cs_silent=false
-SHELL=\${CONFIG_SHELL-$SHELL}
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-## --------------------- ##
-## M4sh Initialization. ##
-## --------------------- ##
+SHELL=\${CONFIG_SHELL-$SHELL}
+export SHELL
+_ASEOF
+cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1
+## -------------------- ##
+## M4sh Initialization. ##
+## -------------------- ##
# Be more Bourne compatible
DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
emulate sh
NULLCMD=:
# Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
@@ -10665,23 +6634,15 @@ if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
alias -g '${1+"$@"}'='"$@"'
setopt NO_GLOB_SUBST
else
- case `(set -o) 2>/dev/null` in
- *posix*) set -o posix ;;
+ case `(set -o) 2>/dev/null` in #(
+ *posix*) :
+ set -o posix ;; #(
+ *) :
+ ;;
esac
-
fi
-
-
-# PATH needs CR
-# Avoid depending upon Character Ranges.
-as_cr_letters='abcdefghijklmnopqrstuvwxyz'
-as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
-as_cr_Letters=$as_cr_letters$as_cr_LETTERS
-as_cr_digits='0123456789'
-as_cr_alnum=$as_cr_Letters$as_cr_digits
-
as_nl='
'
export as_nl
@@ -10689,7 +6650,13 @@ export as_nl
as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
-if (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
+# Prefer a ksh shell builtin over an external printf program on Solaris,
+# but without wasting forks for bash or zsh.
+if test -z "$BASH_VERSION$ZSH_VERSION" \
+ && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
+ as_echo='print -r --'
+ as_echo_n='print -rn --'
+elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
as_echo='printf %s\n'
as_echo_n='printf %s'
else
@@ -10700,7 +6667,7 @@ else
as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
as_echo_n_body='eval
arg=$1;
- case $arg in
+ case $arg in #(
*"$as_nl"*)
expr "X$arg" : "X\\(.*\\)$as_nl";
arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
@@ -10723,13 +6690,6 @@ if test "${PATH_SEPARATOR+set}" != set; then
}
fi
-# Support unset when possible.
-if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
- as_unset=unset
-else
- as_unset=false
-fi
-
# IFS
# We need space, tab and new line, in precisely that order. Quoting is
@@ -10739,15 +6699,16 @@ fi
IFS=" "" $as_nl"
# Find who we are. Look in the path if we contain no directory separator.
-case $0 in
+as_myself=
+case $0 in #((
*[\\/]* ) as_myself=$0 ;;
*) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
-done
+ test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
+ done
IFS=$as_save_IFS
;;
@@ -10759,12 +6720,16 @@ if test "x$as_myself" = x; then
fi
if test ! -f "$as_myself"; then
$as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
- { (exit 1); exit 1; }
+ exit 1
fi
-# Work around bugs in pre-3.0 UWIN ksh.
-for as_var in ENV MAIL MAILPATH
-do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
+# Unset variables that we do not need and which cause bugs (e.g. in
+# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1"
+# suppresses any "Segmentation fault" message there. '((' could
+# trigger a bug in pdksh 5.2.14.
+for as_var in BASH_ENV ENV MAIL MAILPATH
+do eval test x\${$as_var+set} = xset \
+ && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
done
PS1='$ '
PS2='> '
@@ -10776,7 +6741,89 @@ export LC_ALL
LANGUAGE=C
export LANGUAGE
-# Required to use basename.
+# CDPATH.
+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
+
+
+# as_fn_error STATUS ERROR [LINENO LOG_FD]
+# ----------------------------------------
+# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are
+# provided, also output the error to LOG_FD, referencing LINENO. Then exit the
+# script with STATUS, using 1 if that was 0.
+as_fn_error ()
+{
+ as_status=$1; test $as_status -eq 0 && as_status=1
+ if test "$4"; then
+ as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
+ fi
+ $as_echo "$as_me: error: $2" >&2
+ as_fn_exit $as_status
+} # as_fn_error
+
+
+# as_fn_set_status STATUS
+# -----------------------
+# Set $? to STATUS, without forking.
+as_fn_set_status ()
+{
+ return $1
+} # as_fn_set_status
+
+# as_fn_exit STATUS
+# -----------------
+# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
+as_fn_exit ()
+{
+ set +e
+ as_fn_set_status $1
+ exit $1
+} # as_fn_exit
+
+# as_fn_unset VAR
+# ---------------
+# Portably unset VAR.
+as_fn_unset ()
+{
+ { eval $1=; unset $1;}
+}
+as_unset=as_fn_unset
+# as_fn_append VAR VALUE
+# ----------------------
+# Append the text in VALUE to the end of the definition contained in VAR. Take
+# advantage of any shell optimizations that allow amortized linear growth over
+# repeated appends, instead of the typical quadratic growth present in naive
+# implementations.
+if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
+ eval 'as_fn_append ()
+ {
+ eval $1+=\$2
+ }'
+else
+ as_fn_append ()
+ {
+ eval $1=\$$1\$2
+ }
+fi # as_fn_append
+
+# as_fn_arith ARG...
+# ------------------
+# Perform arithmetic evaluation on the ARGs, and store the result in the
+# global $as_val. Take advantage of shells that can avoid forks. The arguments
+# must be portable across $(()) and expr.
+if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
+ eval 'as_fn_arith ()
+ {
+ as_val=$(( $* ))
+ }'
+else
+ as_fn_arith ()
+ {
+ as_val=`expr "$@" || test $? -eq 1`
+ }
+fi # as_fn_arith
+
+
if expr a : '\(a\)' >/dev/null 2>&1 &&
test "X`expr 00001 : '.*\(...\)'`" = X001; then
as_expr=expr
@@ -10790,8 +6837,12 @@ else
as_basename=false
fi
+if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
+ as_dirname=dirname
+else
+ as_dirname=false
+fi
-# Name of the executable.
as_me=`$as_basename -- "$0" ||
$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
X"$0" : 'X\(//\)$' \| \
@@ -10811,76 +6862,25 @@ $as_echo X/"$0" |
}
s/.*/./; q'`
-# CDPATH.
-$as_unset CDPATH
-
-
-
- as_lineno_1=$LINENO
- as_lineno_2=$LINENO
- test "x$as_lineno_1" != "x$as_lineno_2" &&
- test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || {
-
- # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
- # uniformly replaced by the line number. The first 'sed' inserts a
- # line-number line after each line using $LINENO; the second 'sed'
- # does the real work. The second script uses 'N' to pair each
- # line-number line with the line containing $LINENO, and appends
- # trailing '-' during substitution so that $LINENO is not a special
- # case at line end.
- # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
- # scripts with optimization help from Paolo Bonzini. Blame Lee
- # E. McMahon (1931-1989) for sed's syntax. :-)
- sed -n '
- p
- /[$]LINENO/=
- ' <$as_myself |
- sed '
- s/[$]LINENO.*/&-/
- t lineno
- b
- :lineno
- N
- :loop
- s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
- t loop
- s/-\n.*//
- ' >$as_me.lineno &&
- chmod +x "$as_me.lineno" ||
- { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2
- { (exit 1); exit 1; }; }
-
- # Don't try to exec as it changes $[0], causing all sort of problems
- # (the dirname of $[0] is not the place where we might find the
- # original and so on. Autoconf is especially sensitive to this).
- . "./$as_me.lineno"
- # Exit status is that of the last command.
- exit
-}
-
-
-if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
- as_dirname=dirname
-else
- as_dirname=false
-fi
+# Avoid depending upon Character Ranges.
+as_cr_letters='abcdefghijklmnopqrstuvwxyz'
+as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
+as_cr_Letters=$as_cr_letters$as_cr_LETTERS
+as_cr_digits='0123456789'
+as_cr_alnum=$as_cr_Letters$as_cr_digits
ECHO_C= ECHO_N= ECHO_T=
-case `echo -n x` in
+case `echo -n x` in #(((((
-n*)
- case `echo 'x\c'` in
+ case `echo 'xy\c'` in
*c*) ECHO_T=' ';; # ECHO_T is single tab character.
- *) ECHO_C='\c';;
+ xy) ECHO_C='\c';;
+ *) echo `echo ksh88 bug on AIX 6.1` > /dev/null
+ ECHO_T=' ';;
esac;;
*)
ECHO_N='-n';;
esac
-if expr a : '\(a\)' >/dev/null 2>&1 &&
- test "X`expr 00001 : '.*\(...\)'`" = X001; then
- as_expr=expr
-else
- as_expr=false
-fi
rm -f conf$$ conf$$.exe conf$$.file
if test -d conf$$.dir; then
@@ -10909,8 +6909,56 @@ fi
rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
rmdir conf$$.dir 2>/dev/null
+
+# as_fn_mkdir_p
+# -------------
+# Create "$as_dir" as a directory, including parents if necessary.
+as_fn_mkdir_p ()
+{
+
+ case $as_dir in #(
+ -*) as_dir=./$as_dir;;
+ esac
+ test -d "$as_dir" || eval $as_mkdir_p || {
+ as_dirs=
+ while :; do
+ case $as_dir in #(
+ *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
+ *) as_qdir=$as_dir;;
+ esac
+ as_dirs="'$as_qdir' $as_dirs"
+ as_dir=`$as_dirname -- "$as_dir" ||
+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$as_dir" : 'X\(//\)[^/]' \| \
+ X"$as_dir" : 'X\(//\)$' \| \
+ X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X"$as_dir" |
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)[^/].*/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\).*/{
+ s//\1/
+ q
+ }
+ s/.*/./; q'`
+ test -d "$as_dir" && break
+ done
+ test -z "$as_dirs" || eval "mkdir $as_dirs"
+ } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
+
+
+} # as_fn_mkdir_p
if mkdir -p . 2>/dev/null; then
- as_mkdir_p=:
+ as_mkdir_p='mkdir -p "$as_dir"'
else
test -d ./-p && rmdir ./-p
as_mkdir_p=false
@@ -10929,10 +6977,10 @@ else
if test -d "$1"; then
test -d "$1/.";
else
- case $1 in
+ case $1 in #(
-*)set "./$1";;
esac;
- case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in
+ case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
???[sx]*):;;*)false;;esac;fi
'\'' sh
'
@@ -10947,13 +6995,19 @@ as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
exec 6>&1
+## ----------------------------------- ##
+## Main body of $CONFIG_STATUS script. ##
+## ----------------------------------- ##
+_ASEOF
+test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1
-# Save the log message, to keep $[0] and so on meaningful, and to
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
+# Save the log message, to keep $0 and so on meaningful, and to
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by readline $as_me 6.2, which was
-generated by GNU Autoconf 2.63. Invocation command line was
+This file was extended by readline $as_me 6.3, which was
+generated by GNU Autoconf 2.68. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
CONFIG_HEADERS = $CONFIG_HEADERS
@@ -10985,13 +7039,15 @@ _ACEOF
cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
ac_cs_usage="\
-\`$as_me' instantiates files from templates according to the
-current configuration.
+\`$as_me' instantiates files and other configuration actions
+from templates according to the current configuration. Unless the files
+and actions are specified as TAGs, all are instantiated by default.
-Usage: $0 [OPTION]... [FILE]...
+Usage: $0 [OPTION]... [TAG]...
-h, --help print this help, then exit
-V, --version print version number and configuration settings, then exit
+ --config print configuration, then exit
-q, --quiet, --silent
do not print progress messages
-d, --debug don't remove temporary files
@@ -11010,16 +7066,17 @@ $config_headers
Configuration commands:
$config_commands
-Report bugs to <bug-autoconf@gnu.org>."
+Report bugs to <bug-readline@gnu.org>."
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-readline config.status 6.2
-configured by $0, generated by GNU Autoconf 2.63,
- with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
+readline config.status 6.3
+configured by $0, generated by GNU Autoconf 2.68,
+ with options \\"\$ac_cs_config\\"
-Copyright (C) 2008 Free Software Foundation, Inc.
+Copyright (C) 2010 Free Software Foundation, Inc.
This config.status script is free software; the Free Software Foundation
gives unlimited permission to copy, distribute and modify it."
@@ -11035,11 +7092,16 @@ ac_need_defaults=:
while test $# != 0
do
case $1 in
- --*=*)
+ --*=?*)
ac_option=`expr "X$1" : 'X\([^=]*\)='`
ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'`
ac_shift=:
;;
+ --*=)
+ ac_option=`expr "X$1" : 'X\([^=]*\)='`
+ ac_optarg=
+ ac_shift=:
+ ;;
*)
ac_option=$1
ac_optarg=$2
@@ -11053,27 +7115,29 @@ do
ac_cs_recheck=: ;;
--version | --versio | --versi | --vers | --ver | --ve | --v | -V )
$as_echo "$ac_cs_version"; exit ;;
+ --config | --confi | --conf | --con | --co | --c )
+ $as_echo "$ac_cs_config"; exit ;;
--debug | --debu | --deb | --de | --d | -d )
debug=: ;;
--file | --fil | --fi | --f )
$ac_shift
case $ac_optarg in
*\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
+ '') as_fn_error $? "missing file argument" ;;
esac
- CONFIG_FILES="$CONFIG_FILES '$ac_optarg'"
+ as_fn_append CONFIG_FILES " '$ac_optarg'"
ac_need_defaults=false;;
--header | --heade | --head | --hea )
$ac_shift
case $ac_optarg in
*\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
esac
- CONFIG_HEADERS="$CONFIG_HEADERS '$ac_optarg'"
+ as_fn_append CONFIG_HEADERS " '$ac_optarg'"
ac_need_defaults=false;;
--he | --h)
# Conflict between --help and --header
- { $as_echo "$as_me: error: ambiguous option: $1
-Try \`$0 --help' for more information." >&2
- { (exit 1); exit 1; }; };;
+ as_fn_error $? "ambiguous option: \`$1'
+Try \`$0 --help' for more information.";;
--help | --hel | -h )
$as_echo "$ac_cs_usage"; exit ;;
-q | -quiet | --quiet | --quie | --qui | --qu | --q \
@@ -11081,11 +7145,10 @@ Try \`$0 --help' for more information." >&2
ac_cs_silent=: ;;
# This is an error.
- -*) { $as_echo "$as_me: error: unrecognized option: $1
-Try \`$0 --help' for more information." >&2
- { (exit 1); exit 1; }; } ;;
+ -*) as_fn_error $? "unrecognized option: \`$1'
+Try \`$0 --help' for more information." ;;
- *) ac_config_targets="$ac_config_targets $1"
+ *) as_fn_append ac_config_targets " $1"
ac_need_defaults=false ;;
esac
@@ -11138,9 +7201,7 @@ do
"shlib/Makefile") CONFIG_FILES="$CONFIG_FILES shlib/Makefile" ;;
"default") CONFIG_COMMANDS="$CONFIG_COMMANDS default" ;;
- *) { { $as_echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5
-$as_echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
- { (exit 1); exit 1; }; };;
+ *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;;
esac
done
@@ -11163,26 +7224,24 @@ fi
# after its creation but before its name has been assigned to `$tmp'.
$debug ||
{
- tmp=
+ tmp= ac_tmp=
trap 'exit_status=$?
- { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status
+ : "${ac_tmp:=$tmp}"
+ { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status
' 0
- trap '{ (exit 1); exit 1; }' 1 2 13 15
+ trap 'as_fn_exit 1' 1 2 13 15
}
# Create a (secure) tmp directory for tmp files.
{
tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` &&
- test -n "$tmp" && test -d "$tmp"
+ test -d "$tmp"
} ||
{
tmp=./conf$$-$RANDOM
(umask 077 && mkdir "$tmp")
-} ||
-{
- $as_echo "$as_me: cannot create a temporary directory in ." >&2
- { (exit 1); exit 1; }
-}
+} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5
+ac_tmp=$tmp
# Set up the scripts for CONFIG_FILES section.
# No need to generate them if there are no CONFIG_FILES.
@@ -11190,7 +7249,13 @@ $debug ||
if test -n "$CONFIG_FILES"; then
-ac_cr=' '
+ac_cr=`echo X | tr X '\015'`
+# On cygwin, bash can eat \r inside `` if the user requested igncr.
+# But we know of no other shell where ac_cr would be empty at this
+# point, so we can use a bashism as a fallback.
+if test "x$ac_cr" = x; then
+ eval ac_cr=\$\'\\r\'
+fi
ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' </dev/null 2>/dev/null`
if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then
ac_cs_awk_cr='\\r'
@@ -11198,7 +7263,7 @@ else
ac_cs_awk_cr=$ac_cr
fi
-echo 'BEGIN {' >"$tmp/subs1.awk" &&
+echo 'BEGIN {' >"$ac_tmp/subs1.awk" &&
_ACEOF
@@ -11207,24 +7272,18 @@ _ACEOF
echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' &&
echo "_ACEOF"
} >conf$$subs.sh ||
- { { $as_echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
-$as_echo "$as_me: error: could not make $CONFIG_STATUS" >&2;}
- { (exit 1); exit 1; }; }
-ac_delim_num=`echo "$ac_subst_vars" | grep -c '$'`
+ as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
+ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'`
ac_delim='%!_!# '
for ac_last_try in false false false false false :; do
. ./conf$$subs.sh ||
- { { $as_echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
-$as_echo "$as_me: error: could not make $CONFIG_STATUS" >&2;}
- { (exit 1); exit 1; }; }
+ as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X`
if test $ac_delim_n = $ac_delim_num; then
break
elif $ac_last_try; then
- { { $as_echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
-$as_echo "$as_me: error: could not make $CONFIG_STATUS" >&2;}
- { (exit 1); exit 1; }; }
+ as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
else
ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
fi
@@ -11232,7 +7291,7 @@ done
rm -f conf$$subs.sh
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-cat >>"\$tmp/subs1.awk" <<\\_ACAWK &&
+cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK &&
_ACEOF
sed -n '
h
@@ -11246,7 +7305,7 @@ s/'"$ac_delim"'$//
t delim
:nl
h
-s/\(.\{148\}\).*/\1/
+s/\(.\{148\}\)..*/\1/
t more1
s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/
p
@@ -11260,7 +7319,7 @@ s/.\{148\}//
t nl
:delim
h
-s/\(.\{148\}\).*/\1/
+s/\(.\{148\}\)..*/\1/
t more2
s/["\\]/\\&/g; s/^/"/; s/$/"/
p
@@ -11280,7 +7339,7 @@ t delim
rm -f conf$$subs.awk
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
_ACAWK
-cat >>"\$tmp/subs1.awk" <<_ACAWK &&
+cat >>"\$ac_tmp/subs1.awk" <<_ACAWK &&
for (key in S) S_is_set[key] = 1
FS = ""
@@ -11312,23 +7371,29 @@ if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then
sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g"
else
cat
-fi < "$tmp/subs1.awk" > "$tmp/subs.awk" \
- || { { $as_echo "$as_me:$LINENO: error: could not setup config files machinery" >&5
-$as_echo "$as_me: error: could not setup config files machinery" >&2;}
- { (exit 1); exit 1; }; }
+fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \
+ || as_fn_error $? "could not setup config files machinery" "$LINENO" 5
_ACEOF
-# VPATH may cause trouble with some makes, so we remove $(srcdir),
-# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and
+# VPATH may cause trouble with some makes, so we remove sole $(srcdir),
+# ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and
# trailing colons and then remove the whole line if VPATH becomes empty
# (actually we leave an empty line to preserve line numbers).
if test "x$srcdir" = x.; then
- ac_vpsub='/^[ ]*VPATH[ ]*=/{
-s/:*\$(srcdir):*/:/
-s/:*\${srcdir}:*/:/
-s/:*@srcdir@:*/:/
-s/^\([^=]*=[ ]*\):*/\1/
+ ac_vpsub='/^[ ]*VPATH[ ]*=[ ]*/{
+h
+s///
+s/^/:/
+s/[ ]*$/:/
+s/:\$(srcdir):/:/g
+s/:\${srcdir}:/:/g
+s/:@srcdir@:/:/g
+s/^:*//
s/:*$//
+x
+s/\(=[ ]*\).*/\1/
+G
+s/\n//
s/^[^=]*=[ ]*$//
}'
fi
@@ -11340,7 +7405,7 @@ fi # test -n "$CONFIG_FILES"
# No need to generate them if there are no CONFIG_HEADERS.
# This happens for instance with `./config.status Makefile'.
if test -n "$CONFIG_HEADERS"; then
-cat >"$tmp/defines.awk" <<\_ACAWK ||
+cat >"$ac_tmp/defines.awk" <<\_ACAWK ||
BEGIN {
_ACEOF
@@ -11352,13 +7417,11 @@ _ACEOF
# handling of long lines.
ac_delim='%!_!# '
for ac_last_try in false false :; do
- ac_t=`sed -n "/$ac_delim/p" confdefs.h`
- if test -z "$ac_t"; then
+ ac_tt=`sed -n "/$ac_delim/p" confdefs.h`
+ if test -z "$ac_tt"; then
break
elif $ac_last_try; then
- { { $as_echo "$as_me:$LINENO: error: could not make $CONFIG_HEADERS" >&5
-$as_echo "$as_me: error: could not make $CONFIG_HEADERS" >&2;}
- { (exit 1); exit 1; }; }
+ as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5
else
ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
fi
@@ -11443,9 +7506,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
_ACAWK
_ACEOF
cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
- { { $as_echo "$as_me:$LINENO: error: could not setup config headers machinery" >&5
-$as_echo "$as_me: error: could not setup config headers machinery" >&2;}
- { (exit 1); exit 1; }; }
+ as_fn_error $? "could not setup config headers machinery" "$LINENO" 5
fi # test -n "$CONFIG_HEADERS"
@@ -11458,9 +7519,7 @@ do
esac
case $ac_mode$ac_tag in
:[FHL]*:*);;
- :L* | :C*:*) { { $as_echo "$as_me:$LINENO: error: invalid tag $ac_tag" >&5
-$as_echo "$as_me: error: invalid tag $ac_tag" >&2;}
- { (exit 1); exit 1; }; };;
+ :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;;
:[FH]-) ac_tag=-:-;;
:[FH]*) ac_tag=$ac_tag:$ac_tag.in;;
esac
@@ -11479,7 +7538,7 @@ $as_echo "$as_me: error: invalid tag $ac_tag" >&2;}
for ac_f
do
case $ac_f in
- -) ac_f="$tmp/stdin";;
+ -) ac_f="$ac_tmp/stdin";;
*) # Look for the file first in the build tree, then in the source tree
# (if the path is not absolute). The absolute path cannot be DOS-style,
# because $ac_f cannot contain `:'.
@@ -11488,12 +7547,10 @@ $as_echo "$as_me: error: invalid tag $ac_tag" >&2;}
[\\/$]*) false;;
*) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";;
esac ||
- { { $as_echo "$as_me:$LINENO: error: cannot find input file: $ac_f" >&5
-$as_echo "$as_me: error: cannot find input file: $ac_f" >&2;}
- { (exit 1); exit 1; }; };;
+ as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;;
esac
case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac
- ac_file_inputs="$ac_file_inputs '$ac_f'"
+ as_fn_append ac_file_inputs " '$ac_f'"
done
# Let's still pretend it is `configure' which instantiates (i.e., don't
@@ -11504,7 +7561,7 @@ $as_echo "$as_me: error: cannot find input file: $ac_f" >&2;}
`' by configure.'
if test x"$ac_file" != x-; then
configure_input="$ac_file. $configure_input"
- { $as_echo "$as_me:$LINENO: creating $ac_file" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5
$as_echo "$as_me: creating $ac_file" >&6;}
fi
# Neutralize special characters interpreted by sed in replacement strings.
@@ -11516,10 +7573,8 @@ $as_echo "$as_me: creating $ac_file" >&6;}
esac
case $ac_tag in
- *:-:* | *:-) cat >"$tmp/stdin" \
- || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5
-$as_echo "$as_me: error: could not create $ac_file" >&2;}
- { (exit 1); exit 1; }; } ;;
+ *:-:* | *:-) cat >"$ac_tmp/stdin" \
+ || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;;
esac
;;
esac
@@ -11547,47 +7602,7 @@ $as_echo X"$ac_file" |
q
}
s/.*/./; q'`
- { as_dir="$ac_dir"
- case $as_dir in #(
- -*) as_dir=./$as_dir;;
- esac
- test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || {
- as_dirs=
- while :; do
- case $as_dir in #(
- *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
- *) as_qdir=$as_dir;;
- esac
- as_dirs="'$as_qdir' $as_dirs"
- as_dir=`$as_dirname -- "$as_dir" ||
-$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$as_dir" : 'X\(//\)[^/]' \| \
- X"$as_dir" : 'X\(//\)$' \| \
- X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_dir" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
- test -d "$as_dir" && break
- done
- test -z "$as_dirs" || eval "mkdir $as_dirs"
- } || test -d "$as_dir" || { { $as_echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5
-$as_echo "$as_me: error: cannot create directory $as_dir" >&2;}
- { (exit 1); exit 1; }; }; }
+ as_dir="$ac_dir"; as_fn_mkdir_p
ac_builddir=.
case "$ac_dir" in
@@ -11639,7 +7654,6 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# If the template does not know about datarootdir, expand it.
# FIXME: This hack should be removed a few years after 2.60.
ac_datarootdir_hack=; ac_datarootdir_seen=
-
ac_sed_dataroot='
/datarootdir/ {
p
@@ -11649,12 +7663,11 @@ ac_sed_dataroot='
/@docdir@/p
/@infodir@/p
/@localedir@/p
-/@mandir@/p
-'
+/@mandir@/p'
case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in
*datarootdir*) ac_datarootdir_seen=yes;;
*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*)
- { $as_echo "$as_me:$LINENO: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
@@ -11664,7 +7677,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
s&@infodir@&$infodir&g
s&@localedir@&$localedir&g
s&@mandir@&$mandir&g
- s&\\\${datarootdir}&$datarootdir&g' ;;
+ s&\\\${datarootdir}&$datarootdir&g' ;;
esac
_ACEOF
@@ -11691,27 +7704,24 @@ s&@abs_top_builddir@&$ac_abs_top_builddir&;t t
s&@INSTALL@&$ac_INSTALL&;t t
$ac_datarootdir_hack
"
-eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$tmp/subs.awk" >$tmp/out \
- || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5
-$as_echo "$as_me: error: could not create $ac_file" >&2;}
- { (exit 1); exit 1; }; }
+eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \
+ >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5
test -z "$ac_datarootdir_hack$ac_datarootdir_seen" &&
- { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } &&
- { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } &&
- { $as_echo "$as_me:$LINENO: WARNING: $ac_file contains a reference to the variable \`datarootdir'
-which seems to be undefined. Please make sure it is defined." >&5
+ { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } &&
+ { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \
+ "$ac_tmp/out"`; test -z "$ac_out"; } &&
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir'
+which seems to be undefined. Please make sure it is defined" >&5
$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
-which seems to be undefined. Please make sure it is defined." >&2;}
+which seems to be undefined. Please make sure it is defined" >&2;}
- rm -f "$tmp/stdin"
+ rm -f "$ac_tmp/stdin"
case $ac_file in
- -) cat "$tmp/out" && rm -f "$tmp/out";;
- *) rm -f "$ac_file" && mv "$tmp/out" "$ac_file";;
+ -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";;
+ *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";;
esac \
- || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5
-$as_echo "$as_me: error: could not create $ac_file" >&2;}
- { (exit 1); exit 1; }; }
+ || as_fn_error $? "could not create $ac_file" "$LINENO" 5
;;
:H)
#
@@ -11720,31 +7730,25 @@ $as_echo "$as_me: error: could not create $ac_file" >&2;}
if test x"$ac_file" != x-; then
{
$as_echo "/* $configure_input */" \
- && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs"
- } >"$tmp/config.h" \
- || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5
-$as_echo "$as_me: error: could not create $ac_file" >&2;}
- { (exit 1); exit 1; }; }
- if diff "$ac_file" "$tmp/config.h" >/dev/null 2>&1; then
- { $as_echo "$as_me:$LINENO: $ac_file is unchanged" >&5
+ && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs"
+ } >"$ac_tmp/config.h" \
+ || as_fn_error $? "could not create $ac_file" "$LINENO" 5
+ if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5
$as_echo "$as_me: $ac_file is unchanged" >&6;}
else
rm -f "$ac_file"
- mv "$tmp/config.h" "$ac_file" \
- || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5
-$as_echo "$as_me: error: could not create $ac_file" >&2;}
- { (exit 1); exit 1; }; }
+ mv "$ac_tmp/config.h" "$ac_file" \
+ || as_fn_error $? "could not create $ac_file" "$LINENO" 5
fi
else
$as_echo "/* $configure_input */" \
- && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" \
- || { { $as_echo "$as_me:$LINENO: error: could not create -" >&5
-$as_echo "$as_me: error: could not create -" >&2;}
- { (exit 1); exit 1; }; }
+ && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \
+ || as_fn_error $? "could not create -" "$LINENO" 5
fi
;;
- :C) { $as_echo "$as_me:$LINENO: executing $ac_file commands" >&5
+ :C) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5
$as_echo "$as_me: executing $ac_file commands" >&6;}
;;
esac
@@ -11760,15 +7764,12 @@ echo > stamp-h
done # for ac_tag
-{ (exit 0); exit 0; }
+as_fn_exit 0
_ACEOF
-chmod +x $CONFIG_STATUS
ac_clean_files=$ac_clean_files_save
test $ac_write_fail = 0 ||
- { { $as_echo "$as_me:$LINENO: error: write failure creating $CONFIG_STATUS" >&5
-$as_echo "$as_me: error: write failure creating $CONFIG_STATUS" >&2;}
- { (exit 1); exit 1; }; }
+ as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5
# configure is writing to config.log, and then calls config.status.
@@ -11789,10 +7790,10 @@ if test "$no_create" != yes; then
exec 5>>config.log
# Use ||, not &&, to avoid exiting from the if with $? = 1, which
# would make configure fail if this is the last instruction.
- $ac_cs_success || { (exit 1); exit 1; }
+ $ac_cs_success || as_fn_exit 1
fi
if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then
- { $as_echo "$as_me:$LINENO: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
fi
diff --git a/configure.ac b/configure.ac
new file mode 100644
index 0000000..cea8f91
--- /dev/null
+++ b/configure.ac
@@ -0,0 +1,303 @@
+dnl
+dnl Configure script for readline library
+dnl
+dnl report bugs to chet@po.cwru.edu
+dnl
+dnl Process this file with autoconf to produce a configure script.
+
+# Copyright (C) 1987-2014 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 3 of the License, or
+# (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+AC_REVISION([for Readline 6.3, version 2.73])
+
+AC_INIT(readline, 6.3, bug-readline@gnu.org)
+
+dnl make sure we are using a recent autoconf version
+AC_PREREQ(2.50)
+
+AC_CONFIG_SRCDIR(readline.h)
+AC_CONFIG_AUX_DIR(./support)
+AC_CONFIG_HEADERS(config.h)
+
+dnl update the value of RL_READLINE_VERSION in readline.h when this changes
+LIBVERSION=6.3
+
+AC_CANONICAL_HOST
+AC_CANONICAL_BUILD
+
+dnl configure defaults
+opt_curses=no
+opt_purify=no
+
+dnl arguments to configure
+AC_ARG_WITH(curses, AC_HELP_STRING([--with-curses], [use the curses library instead of the termcap library]), opt_curses=$withval)
+AC_ARG_WITH(purify, AC_HELP_STRING([--with-purify], [configure to postprocess with purify]), opt_purify=$withval)
+
+if test "$opt_curses" = "yes"; then
+ prefer_curses=yes
+fi
+
+if test "$opt_purify" = yes; then
+ PURIFY="purify"
+else
+ PURIFY=
+fi
+
+dnl option parsing for optional features
+opt_multibyte=yes
+opt_static_libs=yes
+opt_shared_libs=yes
+
+AC_ARG_ENABLE(multibyte, AC_HELP_STRING([--enable-multibyte], [enable multibyte characters if OS supports them]), opt_multibyte=$enableval)
+AC_ARG_ENABLE(shared, AC_HELP_STRING([--enable-shared], [build shared libraries [[default=YES]]]), opt_shared_libs=$enableval)
+AC_ARG_ENABLE(static, AC_HELP_STRING([--enable-static], [build static libraries [[default=YES]]]), opt_static_libs=$enableval)
+
+if test $opt_multibyte = no; then
+AC_DEFINE(NO_MULTIBYTE_SUPPORT)
+fi
+
+dnl load up the cross-building cache file -- add more cases and cache
+dnl files as necessary
+
+dnl Note that host and target machine are the same, and different than the
+dnl build machine.
+
+CROSS_COMPILE=
+if test "x$cross_compiling" = "xyes"; then
+ case "${host}" in
+ *-cygwin*)
+ cross_cache=${srcdir}/cross-build/cygwin.cache
+ ;;
+ *-mingw*)
+ cross_cache=${srcdir}/cross-build/mingw.cache
+ ;;
+ i[[3456]]86-*-beos*)
+ cross_cache=${srcdir}/cross-build/x86-beos.cache
+ ;;
+ *) echo "configure: cross-compiling for $host is not supported" >&2
+ ;;
+ esac
+ if test -n "${cross_cache}" && test -r "${cross_cache}"; then
+ echo "loading cross-build cache file ${cross_cache}"
+ . ${cross_cache}
+ fi
+ unset cross_cache
+ CROSS_COMPILE='-DCROSS_COMPILING'
+ AC_SUBST(CROSS_COMPILE)
+fi
+
+echo ""
+echo "Beginning configuration for readline-$LIBVERSION for ${host_cpu}-${host_vendor}-${host_os}"
+echo ""
+
+# We want these before the checks, so the checks can modify their values.
+test -z "$CFLAGS" && CFLAGS=-g auto_cflags=1
+
+AC_PROG_MAKE_SET
+AC_PROG_CC
+dnl AC_AIX
+AC_MINIX
+
+# If we're using gcc and the user hasn't specified CFLAGS, add -O to CFLAGS.
+test -n "$GCC" && test -n "$auto_cflags" && CFLAGS="$CFLAGS -O"
+
+AC_PROG_GCC_TRADITIONAL
+AC_PROG_INSTALL
+AC_CHECK_TOOL(AR, ar)
+dnl Set default for ARFLAGS, since autoconf does not have a macro for it.
+dnl This allows people to set it when running configure or make
+test -n "$ARFLAGS" || ARFLAGS="cr"
+AC_PROG_RANLIB
+
+MAKE_SHELL=/bin/sh
+AC_SUBST(MAKE_SHELL)
+
+AC_C_CONST
+AC_C_PROTOTYPES
+AC_C_CHAR_UNSIGNED
+AC_C_VOLATILE
+
+AC_TYPE_SIGNAL
+
+AC_TYPE_SIZE_T
+AC_CHECK_TYPE(ssize_t, int)
+
+AC_HEADER_STDC
+
+AC_HEADER_STAT
+AC_HEADER_DIRENT
+
+AC_CHECK_FUNCS(fcntl kill lstat)
+AC_CHECK_FUNCS(memmove putenv select setenv setlocale \
+ strcasecmp strpbrk tcgetattr vsnprintf)
+AC_CHECK_FUNCS(isascii isxdigit)
+AC_CHECK_FUNCS(getpwent getpwnam getpwuid)
+
+AC_FUNC_STRCOLL
+
+AC_CHECK_HEADERS(fcntl.h unistd.h stdlib.h varargs.h stdarg.h stdbool.h \
+ string.h strings.h \
+ limits.h locale.h pwd.h memory.h termcap.h termios.h termio.h)
+AC_CHECK_HEADERS(sys/pte.h sys/stream.h sys/select.h sys/file.h)
+
+AC_CHECK_HEADERS(sys/ptem.h,,,
+[[
+#if HAVE_SYS_STREAM_H
+# include <sys/stream.h>
+#endif
+]])
+
+AC_SYS_LARGEFILE
+
+BASH_SYS_SIGNAL_VINTAGE
+BASH_SYS_REINSTALL_SIGHANDLERS
+
+BASH_FUNC_POSIX_SETJMP
+BASH_FUNC_LSTAT
+BASH_FUNC_STRCOLL
+BASH_FUNC_CTYPE_NONASCII
+
+BASH_CHECK_GETPW_FUNCS
+
+AC_HEADER_TIOCGWINSZ
+
+BASH_TYPE_SIG_ATOMIC_T
+BASH_TYPE_SIGHANDLER
+
+BASH_HAVE_TIOCSTAT
+BASH_HAVE_FIONREAD
+BASH_CHECK_SPEED_T
+BASH_STRUCT_WINSIZE
+BASH_STRUCT_DIRENT_D_INO
+BASH_STRUCT_DIRENT_D_FILENO
+
+AC_CHECK_DECLS([AUDIT_USER_TTY],,, [[#include <linux/audit.h>]])
+
+dnl yuck
+case "$host_os" in
+aix*) prefer_curses=yes ;;
+esac
+BASH_CHECK_LIB_TERMCAP
+if test "$TERMCAP_LIB" = "./lib/termcap/libtermcap.a"; then
+ if test "$prefer_curses" = yes; then
+ TERMCAP_LIB=-lcurses
+ else
+ TERMCAP_LIB=-ltermcap #default
+ fi
+fi
+
+BASH_CHECK_MULTIBYTE
+
+case "$host_cpu" in
+*cray*) LOCAL_CFLAGS=-DCRAY ;;
+*s390*) LOCAL_CFLAGS=-fsigned-char ;;
+esac
+
+case "$host_os" in
+isc*) LOCAL_CFLAGS=-Disc386 ;;
+esac
+
+# shared library configuration section
+#
+# Shared object configuration section. These values are generated by
+# ${srcdir}/support/shobj-conf
+#
+if test -f ${srcdir}/support/shobj-conf; then
+ AC_MSG_CHECKING(configuration for building shared libraries)
+ eval `TERMCAP_LIB=$TERMCAP_LIB ${CONFIG_SHELL-/bin/sh} ${srcdir}/support/shobj-conf -C "${CC}" -c ${host_cpu} -o ${host_os} -v ${host_vendor}`
+
+# case "$SHLIB_LIBS" in
+# *curses*|*termcap*|*termlib*) ;;
+# *) SHLIB_LIBS="$SHLIB_LIBS $TERMCAP_LIB" ;;
+# esac
+
+ AC_SUBST(SHOBJ_CC)
+ AC_SUBST(SHOBJ_CFLAGS)
+ AC_SUBST(SHOBJ_LD)
+ AC_SUBST(SHOBJ_LDFLAGS)
+ AC_SUBST(SHOBJ_XLDFLAGS)
+ AC_SUBST(SHOBJ_LIBS)
+ AC_SUBST(SHOBJ_STATUS)
+ AC_SUBST(SHLIB_STATUS)
+ AC_SUBST(SHLIB_XLDFLAGS)
+ AC_SUBST(SHLIB_DOT)
+ AC_SUBST(SHLIB_LIBPREF)
+ AC_SUBST(SHLIB_LIBSUFF)
+ AC_SUBST(SHLIB_LIBVERSION)
+ AC_SUBST(SHLIB_DLLVERSION)
+ AC_SUBST(SHLIB_LIBS)
+ AC_MSG_RESULT($SHLIB_STATUS)
+
+ # SHLIB_STATUS is either `supported' or `unsupported'. If it's
+ # `unsupported', turn off any default shared library building
+ if test "$SHLIB_STATUS" = 'unsupported'; then
+ opt_shared_libs=no
+ fi
+
+ # 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
+
+if test "$opt_static_libs" = "yes"; then
+ STATIC_TARGET=static
+ STATIC_INSTALL_TARGET=install-static
+fi
+if test "$opt_shared_libs" = "yes"; then
+ SHARED_TARGET=shared
+ SHARED_INSTALL_TARGET=install-shared
+fi
+
+AC_SUBST(STATIC_TARGET)
+AC_SUBST(SHARED_TARGET)
+AC_SUBST(STATIC_INSTALL_TARGET)
+AC_SUBST(SHARED_INSTALL_TARGET)
+
+case "$build_os" in
+msdosdjgpp*) BUILD_DIR=`pwd.exe` ;; # to prevent //d/path/file
+*) BUILD_DIR=`pwd` ;;
+esac
+
+case "$BUILD_DIR" in
+*\ *) BUILD_DIR=`echo "$BUILD_DIR" | sed 's: :\\\\ :g'` ;;
+*) ;;
+esac
+
+AC_SUBST(PURIFY)
+AC_SUBST(BUILD_DIR)
+
+AC_SUBST(CFLAGS)
+AC_SUBST(LOCAL_CFLAGS)
+AC_SUBST(LOCAL_LDFLAGS)
+AC_SUBST(LOCAL_DEFS)
+
+AC_SUBST(AR)
+AC_SUBST(ARFLAGS)
+
+AC_SUBST(host_cpu)
+AC_SUBST(host_os)
+
+AC_SUBST(LIBVERSION)
+
+AC_SUBST(TERMCAP_LIB)
+
+AC_OUTPUT([Makefile doc/Makefile examples/Makefile shlib/Makefile],
+[
+# Makefile uses this timestamp file to record whether config.h is up to date.
+echo > stamp-h
+])
diff --git a/display.c b/display.c
index e4105ee..913e0da 100644
--- a/display.c
+++ b/display.c
@@ -1,6 +1,6 @@
/* display.c -- readline redisplay facility. */
-/* Copyright (C) 1987-2009 Free Software Foundation, Inc.
+/* Copyright (C) 1987-2013 Free Software Foundation, Inc.
This file is part of the GNU Readline Library (Readline), a library
for reading lines of text with interactive input and history editing.
@@ -41,6 +41,10 @@
#include <stdio.h>
+#ifdef __MSDOS__
+# include <pc.h>
+#endif
+
/* System-specific feature definitions and include files. */
#include "rldefs.h"
#include "rlmbutil.h"
@@ -63,6 +67,7 @@ static void update_line PARAMS((char *, char *, int, int, int, int));
static void space_to_eol PARAMS((int));
static void delete_chars PARAMS((int));
static void insert_some_chars PARAMS((char *, int, int));
+static void open_some_spaces PARAMS((int));
static void cr PARAMS((void));
/* State of visible and invisible lines. */
@@ -165,6 +170,7 @@ int _rl_last_v_pos = 0;
static int cpos_adjusted;
static int cpos_buffer_position;
+static int displaying_prompt_first_line;
static int prompt_multibyte_chars;
/* Number of lines currently on screen minus 1. */
@@ -176,7 +182,8 @@ int _rl_vis_botlin = 0;
static int last_lmargin;
/* A buffer for `modeline' messages. */
-static char msg_buf[128];
+static char *msg_buf = 0;
+static int msg_bufsiz = 0;
/* Non-zero forces the redisplay even if we thought it was unnecessary. */
static int forced_display;
@@ -232,6 +239,18 @@ static int saved_local_length;
static int saved_invis_chars_first_line;
static int saved_physical_chars;
+/* Return a character indicating the editing mode, for use in the prompt. */
+static int
+prompt_modechar ()
+{
+ if (rl_editing_mode == emacs_mode)
+ return '@';
+ else if (_rl_keymap == vi_insertion_keymap)
+ return '+'; /* vi insert mode */
+ else
+ return ':'; /* vi command mode */
+}
+
/* Expand the prompt string S and return the number of visible
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
@@ -258,7 +277,16 @@ expand_prompt (pmt, lp, lip, niflp, vlp)
/* Short-circuit if we can. */
if ((MB_CUR_MAX <= 1 || rl_byte_oriented) && strchr (pmt, RL_PROMPT_START_IGNORE) == 0)
{
- r = savestring (pmt);
+ if (pmt == rl_prompt && _rl_show_mode_in_prompt)
+ {
+ l = strlen (pmt);
+ r = (char *)xmalloc (l + 2);
+ r[0] = prompt_modechar ();
+ strcpy (r + 1, pmt);
+ }
+ else
+ r = savestring (pmt);
+
if (lp)
*lp = strlen (r);
if (lip)
@@ -271,13 +299,20 @@ expand_prompt (pmt, lp, lip, niflp, vlp)
}
l = strlen (pmt);
- r = ret = (char *)xmalloc (l + 1);
+ r = ret = (char *)xmalloc (l + 2);
+
+ rl = physchars = 0; /* move up here so mode show can set them */
+ if (pmt == rl_prompt && _rl_show_mode_in_prompt)
+ {
+ *r++ = prompt_modechar ();
+ rl = physchars = 1;
+ }
invfl = 0; /* invisible chars in first line of prompt */
invflset = 0; /* we only want to set invfl once */
igstart = 0;
- for (rl = ignoring = last = ninvis = physchars = 0, p = pmt; p && *p; p++)
+ for (ignoring = last = ninvis = 0, p = pmt; p && *p; p++)
{
/* This code strips the invisible character string markers
RL_PROMPT_START_IGNORE and RL_PROMPT_END_IGNORE */
@@ -366,6 +401,12 @@ _rl_strip_prompt (pmt)
return ret;
}
+void
+_rl_reset_prompt ()
+{
+ rl_visible_prompt_length = rl_expand_prompt (rl_prompt);
+}
+
/*
* Expand the prompt string into the various display components, if
* necessary.
@@ -707,10 +748,9 @@ rl_redisplay ()
/* Now account for invisible characters in the current line. */
/* XXX - this assumes that the invisible characters may be split, but only
between the first and the last lines. */
- temp += ((local_prompt_prefix == 0) ? ((newlines == 0) ? prompt_invis_chars_first_line
- : ((newlines == prompt_lines_estimate) ? wrap_offset : prompt_invis_chars_first_line))
- : ((newlines == 0) ? wrap_offset : 0));
-
+ temp += (newlines == 0) ? prompt_invis_chars_first_line
+ : ((newlines == prompt_lines_estimate) ? wrap_offset : prompt_invis_chars_first_line);
+
inv_lbreaks[++newlines] = temp;
#if defined (HANDLE_MULTIBYTE)
if (MB_CUR_MAX > 1 && rl_byte_oriented == 0 && prompt_multibyte_chars > 0)
@@ -761,7 +801,7 @@ rl_redisplay ()
break; /* Found '\0' */
else
{
- temp = wcwidth (wc);
+ temp = WCWIDTH (wc);
wc_width = (temp >= 0) ? temp : 1;
}
}
@@ -925,7 +965,7 @@ rl_redisplay ()
/* If we can move the cursor up and down, then use multiple lines,
otherwise, let long lines display in a single terminal line, and
horizontally scroll it. */
-
+ displaying_prompt_first_line = 1;
if (_rl_horizontal_scroll_mode == 0 && _rl_term_up && *_rl_term_up)
{
int nleft, pos, changed_screen_line, tx;
@@ -1179,6 +1219,8 @@ rl_redisplay ()
else
lmargin = last_lmargin;
+ displaying_prompt_first_line = lmargin < nleft;
+
/* If the first character on the screen isn't the first character
in the display line, indicate this with a special character. */
if (lmargin > 0)
@@ -1204,7 +1246,8 @@ rl_redisplay ()
_rl_screenwidth + (lmargin ? 0 : wrap_offset),
0);
- if ((MB_CUR_MAX > 1 && rl_byte_oriented == 0) && OLD_CPOS_IN_PROMPT())
+ if ((MB_CUR_MAX > 1 && rl_byte_oriented == 0) &&
+ displaying_prompt_first_line && OLD_CPOS_IN_PROMPT())
_rl_last_c_pos -= prompt_invis_chars_first_line; /* XXX - was wrap_offset */
/* If the visible new line is shorter than the old, but the number
@@ -1212,7 +1255,7 @@ rl_redisplay ()
the new line, we need to clear to eol. */
t = _rl_last_c_pos - M_OFFSET (lmargin, wrap_offset);
if ((M_OFFSET (lmargin, wrap_offset) > visible_wrap_offset) &&
- (_rl_last_c_pos == out) &&
+ (_rl_last_c_pos == out) && displaying_prompt_first_line &&
t < visible_first_line_len)
{
nleft = _rl_screenwidth - t;
@@ -1274,6 +1317,7 @@ update_line (old, new, current_line, omax, nmax, inv_botlin)
int temp, lendiff, wsatend, od, nd, twidth, o_cpos;
int current_invis_chars;
int col_lendiff, col_temp;
+ int bytes_to_insert;
#if defined (HANDLE_MULTIBYTE)
mbstate_t ps_new, ps_old;
int new_offset, old_offset;
@@ -1300,7 +1344,7 @@ update_line (old, new, current_line, omax, nmax, inv_botlin)
size_t ret;
/* This fixes only double-column characters, but if the wrapped
- character comsumes more than three columns, spaces will be
+ character consumes more than three columns, spaces will be
inserted in the string buffer. */
if (current_line < line_state_visible->wbsize && line_state_visible->wrapped_line[current_line] > 0)
_rl_clear_to_eol (line_state_visible->wrapped_line[current_line]);
@@ -1315,7 +1359,7 @@ update_line (old, new, current_line, omax, nmax, inv_botlin)
else if (MB_NULLWCH (ret))
tempwidth = 0;
else
- tempwidth = wcwidth (wc);
+ tempwidth = WCWIDTH (wc);
if (tempwidth > 0)
{
@@ -1335,7 +1379,7 @@ update_line (old, new, current_line, omax, nmax, inv_botlin)
memcpy (old, new, bytes);
/* Fix up indices if we copy data from one line to another */
omax += bytes - ret;
- for (i = current_line+1; i < inv_botlin+1; i++)
+ for (i = current_line+1; i <= inv_botlin+1; i++)
vis_lbreaks[i] += bytes - ret;
}
}
@@ -1372,6 +1416,7 @@ update_line (old, new, current_line, omax, nmax, inv_botlin)
temp = (omax < nmax) ? omax : nmax;
if (memcmp (old, new, temp) == 0) /* adding at the end */
{
+ new_offset = old_offset = temp;
ofd = old + temp;
nfd = new + temp;
}
@@ -1382,6 +1427,8 @@ update_line (old, new, current_line, omax, nmax, inv_botlin)
if (omax == nmax && STREQN (new, old, omax))
{
+ old_offset = omax;
+ new_offset = nmax;
ofd = old + omax;
nfd = new + nmax;
}
@@ -1394,6 +1441,7 @@ update_line (old, new, current_line, omax, nmax, inv_botlin)
{
old_offset = _rl_find_next_mbchar (old, old_offset, 1, MB_FIND_ANY);
new_offset = _rl_find_next_mbchar (new, new_offset, 1, MB_FIND_ANY);
+
ofd = old + old_offset;
nfd = new + new_offset;
}
@@ -1417,6 +1465,27 @@ update_line (old, new, current_line, omax, nmax, inv_botlin)
if (ofd == oe && nfd == ne)
return;
+#if defined (HANDLE_MULTIBYTE)
+ if (MB_CUR_MAX > 1 && rl_byte_oriented == 0 && _rl_utf8locale)
+ {
+ wchar_t wc;
+ mbstate_t ps = { 0 };
+ int t;
+
+ /* If the first character in the difference is a zero-width character,
+ assume it's a combining character and back one up so the two base
+ characters no longer compare equivalently. */
+ t = mbrtowc (&wc, ofd, MB_CUR_MAX, &ps);
+ if (t > 0 && UNICODE_COMBINING_CHAR (wc) && WCWIDTH (wc) == 0)
+ {
+ old_offset = _rl_find_prev_mbchar (old, ofd - old, MB_FIND_ANY);
+ new_offset = _rl_find_prev_mbchar (new, nfd - new, MB_FIND_ANY);
+ ofd = old + old_offset; /* equal by definition */
+ nfd = new + new_offset;
+ }
+ }
+#endif
+
wsatend = 1; /* flag for trailing whitespace */
#if defined (HANDLE_MULTIBYTE)
@@ -1424,6 +1493,7 @@ update_line (old, new, current_line, omax, nmax, inv_botlin)
{
ols = old + _rl_find_prev_mbchar (old, oe - old, MB_FIND_ANY);
nls = new + _rl_find_prev_mbchar (new, ne - new, MB_FIND_ANY);
+
while ((ols > ofd) && (nls > nfd))
{
memset (&ps_old, 0, sizeof (mbstate_t));
@@ -1540,10 +1610,10 @@ update_line (old, new, current_line, omax, nmax, inv_botlin)
o_cpos = _rl_last_c_pos;
/* When this function returns, _rl_last_c_pos is correct, and an absolute
- cursor postion in multibyte mode, but a buffer index when not in a
+ cursor position in multibyte mode, but a buffer index when not in a
multibyte locale. */
_rl_move_cursor_relative (od, old);
-#if 1
+
#if defined (HANDLE_MULTIBYTE)
/* We need to indicate that the cursor position is correct in the presence of
invisible characters in the prompt string. Let's see if setting this when
@@ -1553,11 +1623,10 @@ update_line (old, new, current_line, omax, nmax, inv_botlin)
_rl_last_c_pos == prompt_physical_chars)
cpos_adjusted = 1;
#endif
-#endif
/* if (len (new) > len (old))
- lendiff == difference in buffer
- col_lendiff == difference on screen
+ lendiff == difference in buffer (bytes)
+ col_lendiff == difference on screen (columns)
When not using multibyte characters, these are equal */
lendiff = (nls - nfd) - (ols - ofd);
if (MB_CUR_MAX > 1 && rl_byte_oriented == 0)
@@ -1583,6 +1652,10 @@ update_line (old, new, current_line, omax, nmax, inv_botlin)
}
}
+ /* We use temp as a count of the number of bytes from the first difference
+ to the end of the new line. col_temp is the corresponding number of
+ screen columns. A `dumb' update moves to the spot of first difference
+ and writes TEMP bytes. */
/* Insert (diff (len (old), len (new)) ch. */
temp = ne - nfd;
if (MB_CUR_MAX > 1 && rl_byte_oriented == 0)
@@ -1590,6 +1663,10 @@ update_line (old, new, current_line, omax, nmax, inv_botlin)
else
col_temp = temp;
+ /* how many bytes from the new line buffer to write to the display */
+ bytes_to_insert = nls - nfd;
+
+ /* col_lendiff > 0 if we are adding characters to the line */
if (col_lendiff > 0) /* XXX - was lendiff */
{
/* Non-zero if we're increasing the number of lines. */
@@ -1603,11 +1680,11 @@ update_line (old, new, current_line, omax, nmax, inv_botlin)
if (lendiff < 0)
{
_rl_output_some_chars (nfd, temp);
- _rl_last_c_pos += _rl_col_width (nfd, 0, temp, 1);
+ _rl_last_c_pos += col_temp; /* XXX - was _rl_col_width (nfd, 0, temp, 1); */
/* If nfd begins before any invisible characters in the prompt,
adjust _rl_last_c_pos to account for wrap_offset and set
cpos_adjusted to let the caller know. */
- if (current_line == 0 && wrap_offset && ((nfd - new) <= prompt_last_invisible))
+ if (current_line == 0 && displaying_prompt_first_line && wrap_offset && ((nfd - new) <= prompt_last_invisible))
{
_rl_last_c_pos -= wrap_offset;
cpos_adjusted = 1;
@@ -1638,57 +1715,42 @@ update_line (old, new, current_line, omax, nmax, inv_botlin)
(col_lendiff < prompt_visible_length)) == 0) &&
(visible_wrap_offset >= current_invis_chars))
{
- insert_some_chars (nfd, lendiff, col_lendiff);
- _rl_last_c_pos += col_lendiff;
- }
-#if 0 /* XXX - for now */
- else if ((MB_CUR_MAX > 1 && rl_byte_oriented == 0) && _rl_last_c_pos == 0 && wrap_offset && (nfd-new) <= prompt_last_invisible && col_lendiff < prompt_visible_length && visible_wrap_offset >= current_invis_chars)
- {
- _rl_output_some_chars (nfd, lendiff);
- _rl_last_c_pos += col_lendiff;
+ open_some_spaces (col_lendiff);
+ _rl_output_some_chars (nfd, bytes_to_insert);
+ if (MB_CUR_MAX > 1 && rl_byte_oriented == 0)
+ _rl_last_c_pos += _rl_col_width (nfd, 0, bytes_to_insert, 1);
+ else
+ _rl_last_c_pos += bytes_to_insert;
}
-#endif
else if ((MB_CUR_MAX == 1 || rl_byte_oriented != 0) && *ols == 0 && lendiff > 0)
{
/* At the end of a line the characters do not have to
be "inserted". They can just be placed on the screen. */
- /* However, this screws up the rest of this block, which
- assumes you've done the insert because you can. */
- _rl_output_some_chars (nfd, lendiff);
- _rl_last_c_pos += col_lendiff;
+ _rl_output_some_chars (nfd, temp);
+ _rl_last_c_pos += col_temp;
+ return;
}
- else
+ else /* just write from first difference to end of new line */
{
_rl_output_some_chars (nfd, temp);
_rl_last_c_pos += col_temp;
/* If nfd begins before the last invisible character in the
prompt, adjust _rl_last_c_pos to account for wrap_offset
and set cpos_adjusted to let the caller know. */
- if ((MB_CUR_MAX > 1 && rl_byte_oriented == 0) && current_line == 0 && wrap_offset && ((nfd - new) <= prompt_last_invisible))
+ if ((MB_CUR_MAX > 1 && rl_byte_oriented == 0) && current_line == 0 && displaying_prompt_first_line && wrap_offset && ((nfd - new) <= prompt_last_invisible))
{
_rl_last_c_pos -= wrap_offset;
cpos_adjusted = 1;
}
return;
}
- /* Copy (new) chars to screen from first diff to last match. */
- temp = nls - nfd;
- if ((temp - lendiff) > 0)
+
+ if (bytes_to_insert > lendiff)
{
- _rl_output_some_chars (nfd + lendiff, temp - lendiff);
- /* XXX -- this bears closer inspection. Fixes a redisplay bug
- reported against bash-3.0-alpha by Andreas Schwab involving
- multibyte characters and prompt strings with invisible
- characters, but was previously disabled. */
- if (MB_CUR_MAX > 1 && rl_byte_oriented == 0)
- twidth = _rl_col_width (nfd+lendiff, 0, temp-col_lendiff, 1);
- else
- twidth = temp - lendiff;
- _rl_last_c_pos += twidth;
/* If nfd begins before the last invisible character in the
prompt, adjust _rl_last_c_pos to account for wrap_offset
and set cpos_adjusted to let the caller know. */
- if ((MB_CUR_MAX > 1 && rl_byte_oriented == 0) && current_line == 0 && wrap_offset && ((nfd - new) <= prompt_last_invisible))
+ if ((MB_CUR_MAX > 1 && rl_byte_oriented == 0) && current_line == 0 && displaying_prompt_first_line && wrap_offset && ((nfd - new) <= prompt_last_invisible))
{
_rl_last_c_pos -= wrap_offset;
cpos_adjusted = 1;
@@ -1706,6 +1768,7 @@ update_line (old, new, current_line, omax, nmax, inv_botlin)
a physical character position. */
if ((MB_CUR_MAX > 1 && rl_byte_oriented == 0) &&
current_line == prompt_last_screen_line && wrap_offset &&
+ displaying_prompt_first_line &&
wrap_offset != prompt_invis_chars_first_line &&
((nfd-new) < (prompt_last_invisible-(current_line*_rl_screenwidth))))
{
@@ -1723,32 +1786,47 @@ update_line (old, new, current_line, omax, nmax, inv_botlin)
prompt string, don't bother. It screws up the assumptions
about what's on the screen. */
if (_rl_horizontal_scroll_mode && _rl_last_c_pos == 0 &&
+ displaying_prompt_first_line &&
-lendiff == visible_wrap_offset)
col_lendiff = 0;
+ /* If we have moved lmargin and we're shrinking the line, we've
+ already moved the cursor to the first character of the new line,
+ so deleting -col_lendiff characters will mess up the cursor
+ position calculation */
+ if (_rl_horizontal_scroll_mode && displaying_prompt_first_line == 0 &&
+ col_lendiff && _rl_last_c_pos < -col_lendiff)
+ col_lendiff = 0;
+
if (col_lendiff)
delete_chars (-col_lendiff); /* delete (diff) characters */
- /* Copy (new) chars to screen from first diff to last match */
- temp = nls - nfd;
- if (temp > 0)
+ /* Copy (new) chars to screen from first diff to last match,
+ overwriting what is there. */
+ if (bytes_to_insert > 0)
{
/* If nfd begins at the prompt, or before the invisible
characters in the prompt, we need to adjust _rl_last_c_pos
in a multibyte locale to account for the wrap offset and
set cpos_adjusted accordingly. */
- _rl_output_some_chars (nfd, temp);
+ _rl_output_some_chars (nfd, bytes_to_insert);
if (MB_CUR_MAX > 1 && rl_byte_oriented == 0)
{
- _rl_last_c_pos += _rl_col_width (nfd, 0, temp, 1);
- if (current_line == 0 && wrap_offset && ((nfd - new) <= prompt_last_invisible))
+ _rl_last_c_pos += _rl_col_width (nfd, 0, bytes_to_insert, 1);
+ if (current_line == 0 && wrap_offset &&
+ displaying_prompt_first_line &&
+ _rl_last_c_pos > wrap_offset &&
+ ((nfd - new) <= prompt_last_invisible))
{
_rl_last_c_pos -= wrap_offset;
cpos_adjusted = 1;
}
}
else
- _rl_last_c_pos += temp;
+ _rl_last_c_pos += bytes_to_insert;
+
+ if (_rl_horizontal_scroll_mode && ((oe-old) > (ne-new)))
+ goto clear_rest_of_line;
}
}
/* Otherwise, print over the existing material. */
@@ -1764,29 +1842,29 @@ update_line (old, new, current_line, omax, nmax, inv_botlin)
_rl_last_c_pos += col_temp; /* XXX */
if (MB_CUR_MAX > 1 && rl_byte_oriented == 0)
{
- if (current_line == 0 && wrap_offset && ((nfd - new) <= prompt_last_invisible))
+ if (current_line == 0 && wrap_offset &&
+ displaying_prompt_first_line &&
+ _rl_last_c_pos > wrap_offset &&
+ ((nfd - new) <= prompt_last_invisible))
{
_rl_last_c_pos -= wrap_offset;
cpos_adjusted = 1;
}
}
}
+clear_rest_of_line:
lendiff = (oe - old) - (ne - new);
if (MB_CUR_MAX > 1 && rl_byte_oriented == 0)
col_lendiff = _rl_col_width (old, 0, oe - old, 1) - _rl_col_width (new, 0, ne - new, 1);
else
col_lendiff = lendiff;
-#if 0
- if (col_lendiff)
-#else
/* If we've already printed over the entire width of the screen,
including the old material, then col_lendiff doesn't matter and
space_to_eol will insert too many spaces. XXX - maybe we should
adjust col_lendiff based on the difference between _rl_last_c_pos
and _rl_screenwidth */
if (col_lendiff && ((MB_CUR_MAX == 1 || rl_byte_oriented) || (_rl_last_c_pos < _rl_screenwidth)))
-#endif
{
if (_rl_term_autowrap && current_line < inv_botlin)
space_to_eol (col_lendiff);
@@ -1938,6 +2016,9 @@ _rl_move_cursor_relative (new, data)
else
dpos = _rl_col_width (data, 0, new, 1);
+ if (displaying_prompt_first_line == 0)
+ adjust = 0;
+
/* Use NEW when comparing against the last invisible character in the
prompt string, since they're both buffer indices and DPOS is a
desired display position. */
@@ -2056,9 +2137,18 @@ _rl_move_vert (to)
}
else
{ /* delta < 0 */
+#ifdef __DJGPP__
+ int row, col;
+
+ fflush (rl_outstream);
+ ScreenGetCursor (&row, &col);
+ ScreenSetCursor (row + delta, col);
+ i = -delta;
+#else
if (_rl_term_up && *_rl_term_up)
for (i = 0; i < -delta; i++)
tputs (_rl_term_up, 1, _rl_output_character_function);
+#endif /* !__DJGPP__ */
}
_rl_last_v_pos = to; /* Now TO is here */
@@ -2136,6 +2226,9 @@ rl_message (va_alist)
#if defined (PREFER_VARARGS)
char *format;
#endif
+#if defined (HAVE_VSNPRINTF)
+ int bneed;
+#endif
#if defined (PREFER_STDARG)
va_start (args, format);
@@ -2144,11 +2237,28 @@ rl_message (va_alist)
format = va_arg (args, char *);
#endif
+ if (msg_buf == 0)
+ msg_buf = xmalloc (msg_bufsiz = 128);
+
#if defined (HAVE_VSNPRINTF)
- vsnprintf (msg_buf, sizeof (msg_buf) - 1, format, args);
+ bneed = vsnprintf (msg_buf, msg_bufsiz - 1, format, args);
+ if (bneed >= msg_bufsiz - 1)
+ {
+ msg_bufsiz = bneed + 1;
+ msg_buf = xrealloc (msg_buf, msg_bufsiz);
+ va_end (args);
+
+#if defined (PREFER_STDARG)
+ va_start (args, format);
+#else
+ va_start (args);
+ format = va_arg (args, char *);
+#endif
+ vsnprintf (msg_buf, msg_bufsiz - 1, format, args);
+ }
#else
vsprintf (msg_buf, format, args);
- msg_buf[sizeof(msg_buf) - 1] = '\0'; /* overflow? */
+ msg_buf[msg_bufsiz - 1] = '\0'; /* overflow? */
#endif
va_end (args);
@@ -2157,6 +2267,12 @@ rl_message (va_alist)
rl_save_prompt ();
msg_saved_prompt = 1;
}
+ else if (local_prompt != saved_local_prompt)
+ {
+ FREE (local_prompt);
+ FREE (local_prompt_prefix);
+ local_prompt = (char *)NULL;
+ }
rl_display_prompt = msg_buf;
local_prompt = expand_prompt (msg_buf, &prompt_visible_length,
&prompt_last_invisible,
@@ -2173,8 +2289,11 @@ int
rl_message (format, arg1, arg2)
char *format;
{
+ if (msg_buf == 0)
+ msg_buf = xmalloc (msg_bufsiz = 128);
+
sprintf (msg_buf, format, arg1, arg2);
- msg_buf[sizeof(msg_buf) - 1] = '\0'; /* overflow? */
+ msg_buf[msg_bufsiz - 1] = '\0'; /* overflow? */
rl_display_prompt = msg_buf;
if (saved_local_prompt == 0)
@@ -2182,6 +2301,12 @@ rl_message (format, arg1, arg2)
rl_save_prompt ();
msg_saved_prompt = 1;
}
+ else if (local_prompt != saved_local_prompt)
+ {
+ FREE (local_prompt);
+ FREE (local_prompt_prefix);
+ local_prompt = (char *)NULL;
+ }
local_prompt = expand_prompt (msg_buf, &prompt_visible_length,
&prompt_last_invisible,
&prompt_invis_chars_first_line,
@@ -2318,10 +2443,13 @@ void
_rl_clear_to_eol (count)
int count;
{
+#ifndef __MSDOS__
if (_rl_term_clreol)
tputs (_rl_term_clreol, 1, _rl_output_character_function);
- else if (count)
- space_to_eol (count);
+ else
+#endif
+ if (count)
+ space_to_eol (count);
}
/* Clear to the end of the line using spaces. COUNT is the minimum
@@ -2341,10 +2469,15 @@ space_to_eol (count)
void
_rl_clear_screen ()
{
+#ifndef __DJGPP__
if (_rl_term_clrpag)
tputs (_rl_term_clrpag, 1, _rl_output_character_function);
else
rl_crlf ();
+#else
+ ScreenClear ();
+ ScreenSetCursor (0, 0);
+#endif /* __DJGPP__ */
}
/* Insert COUNT characters from STRING to the output stream at column COL. */
@@ -2353,48 +2486,47 @@ insert_some_chars (string, count, col)
char *string;
int count, col;
{
-#if defined (__MSDOS__) || defined (__MINGW32__)
+ open_some_spaces (col);
_rl_output_some_chars (string, count);
-#else
- /* DEBUGGING */
- if (MB_CUR_MAX == 1 || rl_byte_oriented)
- if (count != col)
- _rl_ttymsg ("debug: insert_some_chars: count (%d) != col (%d)", count, col);
+}
+
+/* Insert COL spaces, keeping the cursor at the same position. We follow the
+ ncurses documentation and use either im/ei with explicit spaces, or IC/ic
+ by itself. We assume there will either be ei or we don't need to use it. */
+static void
+open_some_spaces (col)
+ int col;
+{
+#if !defined (__MSDOS__) && !defined (__MINGW32__)
+ char *buffer;
+ register int i;
/* If IC is defined, then we do not have to "enter" insert mode. */
if (_rl_term_IC)
{
- char *buffer;
-
buffer = tgoto (_rl_term_IC, 0, col);
tputs (buffer, 1, _rl_output_character_function);
- _rl_output_some_chars (string, count);
}
- else
+ else if (_rl_term_im && *_rl_term_im)
{
- register int i;
-
- /* If we have to turn on insert-mode, then do so. */
- if (_rl_term_im && *_rl_term_im)
- tputs (_rl_term_im, 1, _rl_output_character_function);
-
- /* If there is a special command for inserting characters, then
- use that first to open up the space. */
- if (_rl_term_ic && *_rl_term_ic)
- {
- for (i = col; i--; )
- tputs (_rl_term_ic, 1, _rl_output_character_function);
- }
-
- /* Print the text. */
- _rl_output_some_chars (string, count);
-
- /* If there is a string to turn off insert mode, we had best use
- it now. */
+ tputs (_rl_term_im, 1, _rl_output_character_function);
+ /* just output the desired number of spaces */
+ for (i = col; i--; )
+ _rl_output_character_function (' ');
+ /* If there is a string to turn off insert mode, use it now. */
if (_rl_term_ei && *_rl_term_ei)
tputs (_rl_term_ei, 1, _rl_output_character_function);
+ /* and move back the right number of spaces */
+ _rl_backspace (col);
+ }
+ else if (_rl_term_ic && *_rl_term_ic)
+ {
+ /* If there is a special command for inserting characters, then
+ use that first to open up the space. */
+ for (i = col; i--; )
+ tputs (_rl_term_ic, 1, _rl_output_character_function);
}
-#endif /* __MSDOS__ || __MINGW32__ */
+#endif /* !__MSDOS__ && !__MINGW32__ */
}
/* Delete COUNT characters from the display line. */
@@ -2599,10 +2731,8 @@ _rl_col_width (str, start, end, flags)
if (end <= start)
return 0;
if (MB_CUR_MAX == 1 || rl_byte_oriented)
-{
-_rl_ttymsg ("_rl_col_width: called with MB_CUR_MAX == 1");
+ /* this can happen in some cases where it's inconvenient to check */
return (end - start);
-}
memset (&ps, 0, sizeof (mbstate_t));
@@ -2676,7 +2806,7 @@ _rl_ttymsg ("_rl_col_width: called with MB_CUR_MAX == 1");
{
point += tmp;
max -= tmp;
- tmp = wcwidth(wc);
+ tmp = WCWIDTH(wc);
width += (tmp >= 0) ? tmp : 1;
}
}
diff --git a/doc/Makefile.in b/doc/Makefile.in
index 9ddd314..72b7985 100644
--- a/doc/Makefile.in
+++ b/doc/Makefile.in
@@ -16,14 +16,17 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+
topdir = @top_srcdir@
srcdir = @srcdir@
-VPATH = .:@srcdir@
+VPATH = @srcdir@
prefix = @prefix@
datarootdir = @datarootdir@
+docdir = @docdir@
infodir = @infodir@
mandir = @mandir@
diff --git a/doc/history.0 b/doc/history.0
index 50d6d37..22c4f47 100644
--- a/doc/history.0
+++ b/doc/history.0
@@ -54,7 +54,7 @@ HHIISSTTOORRYY EEXXPPAANNSSIIOONN
Refer to the most recent command preceding the current position
in the history list starting with _s_t_r_i_n_g.
!!??_s_t_r_i_n_g[[??]]
- Refer to the most recent command preceding the current postition
+ Refer to the most recent command preceding the current position
in the history list containing _s_t_r_i_n_g. The trailing ?? may be
omitted if _s_t_r_i_n_g is followed immediately by a newline.
^^_s_t_r_i_n_g_1^^_s_t_r_i_n_g_2^^
@@ -75,7 +75,8 @@ HHIISSTTOORRYY EEXXPPAANNSSIIOONN
The zeroth word. For the shell, this is the command word.
_n The _nth word.
^^ The first argument. That is, word 1.
- $$ The last argument.
+ $$ The last word. This is usually the last argument, but will
+ expand to the zeroth word if there is only one word in the line.
%% The word matched by the most recent `?_s_t_r_i_n_g?' search.
_x--_y A range of words; `-_y' abbreviates `0-_y'.
** All of the words but the zeroth. This is a synonym for `_1_-_$'.
@@ -472,7 +473,7 @@ AAUUTTHHOORRSS
bfox@gnu.org
Chet Ramey, Case Western Reserve University
- chet@ins.CWRU.Edu
+ chet.ramey@case.edu
BBUUGG RREEPPOORRTTSS
If you find a bug in the hhiissttoorryy library, you should report it. But
@@ -486,8 +487,8 @@ BBUUGG RREEPPOORRTTSS
ggnnuu..bbaasshh..bbuugg.
Comments and bug reports concerning this manual page should be directed
- to _c_h_e_t_@_i_n_s_._C_W_R_U_._E_d_u.
+ to _c_h_e_t_._r_a_m_e_y_@_c_a_s_e_._e_d_u.
-GNU History 6.2 2010 August 12 HISTORY(3)
+GNU History 6.3 2013 June 27 HISTORY(3)
diff --git a/doc/history.3 b/doc/history.3
index 4eb159c..ada9a38 100644
--- a/doc/history.3
+++ b/doc/history.3
@@ -4,11 +4,11 @@
.\" Chet Ramey
.\" Information Network Services
.\" Case Western Reserve University
-.\" chet@ins.CWRU.Edu
+.\" chet.ramey@case.edu
.\"
-.\" Last Change: Thu Aug 12 22:24:41 EDT 2010
+.\" Last Change: Thu Thu Jun 27 10:34:44 EDT 2013
.\"
-.TH HISTORY 3 "2010 August 12" "GNU History 6.2"
+.TH HISTORY 3 "2013 June 27" "GNU History 6.3"
.\"
.\" File Name macro. This used to be `.PN', for Path Name,
.\" but Sun doesn't seem to like that very much.
@@ -112,7 +112,7 @@ starting with
.TP
.B !?\fIstring\fR\fB[?]\fR
Refer to the most recent command
-preceding the current postition in the history list
+preceding the current position in the history list
containing
.IR string .
The trailing \fB?\fP may be omitted if
@@ -161,7 +161,8 @@ The \fIn\fRth word.
The first argument. That is, word 1.
.TP
.B $
-The last argument.
+The last word. This is usually the last argument, but will expand to the
+zeroth word if there is only one word in the line.
.TP
.B %
The word matched by the most recent `?\fIstring\fR?' search.
@@ -649,7 +650,7 @@ bfox@gnu.org
.PP
Chet Ramey, Case Western Reserve University
.br
-chet@ins.CWRU.Edu
+chet.ramey@case.edu
.SH BUG REPORTS
If you find a bug in the
.B history
@@ -669,4 +670,4 @@ newsgroup
.PP
Comments and bug reports concerning
this manual page should be directed to
-.IR chet@ins.CWRU.Edu .
+.IR chet.ramey@case.edu .
diff --git a/doc/history.dvi b/doc/history.dvi
index 0fb8e1c..2316eae 100644
--- a/doc/history.dvi
+++ b/doc/history.dvi
Binary files differ
diff --git a/doc/history.html b/doc/history.html
index 5bdbb1b..0753504 100644
--- a/doc/history.html
+++ b/doc/history.html
@@ -1,6 +1,6 @@
<HTML>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<!-- Created on February, 8 2011 by texi2html 1.64 -->
+<!-- Created on February, 11 2014 by texi2html 1.64 -->
<!--
Written by: Lionel Cons <Lionel.Cons@cern.ch> (original author)
Karl Berry <karl@freefriends.org>
@@ -989,7 +989,7 @@ as with the <CODE>:p</CODE> modifier (see section <A HREF="history.html#SEC5">1.
</DL>
<P>
-If an error ocurred in expansion, then <VAR>output</VAR> contains a descriptive
+If an error occurred in expansion, then <VAR>output</VAR> contains a descriptive
error message.
</DL>
</P><P>
@@ -2127,7 +2127,7 @@ to permit their use in free software.
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="history.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H1>About this document</H1>
-This document was generated by <I>Chet Ramey</I> on <I>February, 8 2011</I>
+This document was generated by <I>Chet Ramey</I> on <I>February, 11 2014</I>
using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html
"><I>texi2html</I></A>
<P></P>
@@ -2289,7 +2289,7 @@ the following structure:
<BR>
<FONT SIZE="-1">
This document was generated
-by <I>Chet Ramey</I> on <I>February, 8 2011</I>
+by <I>Chet Ramey</I> on <I>February, 11 2014</I>
using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html
"><I>texi2html</I></A>
diff --git a/doc/history.info b/doc/history.info
index dc5e8a0..2d4c785 100644
--- a/doc/history.info
+++ b/doc/history.info
@@ -1,27 +1,18 @@
This is history.info, produced by makeinfo version 4.13 from
-/usr/src/local/chet/src/bash/readline-src/doc/history.texi.
+/usr/homes/chet/src/bash/readline-src/doc/history.texi.
-This document describes the GNU History library (version 6.2, September
-6 2010), a programming tool that provides a consistent user interface
-for recalling lines of previously typed input.
+This document describes the GNU History library (version 6.3, 6 January
+2014), a programming tool that provides a consistent user interface for
+recalling lines of previously typed input.
- Copyright (C) 1988-2011 Free Software Foundation, Inc.
-
- Permission is granted to make and distribute verbatim copies of this
-manual provided the copyright notice and this permission notice are
-preserved on all copies.
+ Copyright (C) 1988-2014 Free Software Foundation, Inc.
Permission is granted to copy, distribute and/or modify this
document under the terms of the GNU Free Documentation License,
Version 1.3 or any later version published by the Free Software
- Foundation; with no Invariant Sections, with the Front-Cover texts
- being "A GNU Manual", and with the Back-Cover Texts as in (a)
- below. A copy of the license is included in the section entitled
- "GNU Free Documentation License".
-
- (a) The FSF's Back-Cover Text is: You are free to copy and modify
- this GNU manual. Buying copies from GNU Press supports the FSF in
- developing GNU and promoting software freedom."
+ Foundation; with no Invariant Sections, no Front-Cover Texts, and
+ no Back-Cover Texts. A copy of the license is included in the
+ section entitled "GNU Free Documentation License".
INFO-DIR-SECTION Libraries
@@ -596,7 +587,7 @@ These functions implement history expansion.
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
+ If an error occurred in expansion, then OUTPUT contains a
descriptive error message.
-- Function: char * get_history_event (const char *string, int
@@ -1375,27 +1366,27 @@ Appendix C Function and Variable Index

Tag Table:
-Node: Top1314
-Node: Using History Interactively1959
-Node: History Interaction2467
-Node: Event Designators3891
-Node: Word Designators5033
-Node: Modifiers6672
-Node: Programming with GNU History7897
-Node: Introduction to History8640
-Node: History Storage10330
-Node: History Functions11465
-Node: Initializing History and State Management12454
-Node: History List Management13266
-Node: Information About the History List15298
-Node: Moving Around the History List16795
-Node: Searching the History List17796
-Node: Managing the History File19728
-Node: History Expansion21548
-Node: History Variables23456
-Node: History Programming Example26488
-Node: GNU Free Documentation License29165
-Node: Concept Index54356
-Node: Function and Variable Index55061
+Node: Top891
+Node: Using History Interactively1536
+Node: History Interaction2044
+Node: Event Designators3468
+Node: Word Designators4610
+Node: Modifiers6249
+Node: Programming with GNU History7474
+Node: Introduction to History8217
+Node: History Storage9907
+Node: History Functions11042
+Node: Initializing History and State Management12031
+Node: History List Management12843
+Node: Information About the History List14875
+Node: Moving Around the History List16372
+Node: Searching the History List17373
+Node: Managing the History File19305
+Node: History Expansion21125
+Node: History Variables23034
+Node: History Programming Example26066
+Node: GNU Free Documentation License28743
+Node: Concept Index53934
+Node: Function and Variable Index54639

End Tag Table
diff --git a/doc/history.pdf b/doc/history.pdf
index bdb38cb..4007bef 100644
--- a/doc/history.pdf
+++ b/doc/history.pdf
Binary files differ
diff --git a/doc/history.ps b/doc/history.ps
index 2d2daf7..8133625 100644
--- a/doc/history.ps
+++ b/doc/history.ps
@@ -1,6 +1,7 @@
%!PS-Adobe-2.0
-%%Creator: dvips(k) 5.95a Copyright 2005 Radical Eye Software
+%%Creator: dvips(k) 5.991 Copyright 2011 Radical Eye Software
%%Title: history.dvi
+%%CreationDate: Tue Feb 11 16:57:26 2014
%%Pages: 24
%%PageOrder: Ascend
%%BoundingBox: 0 0 612 792
@@ -11,7 +12,7 @@
%DVIPSWebPage: (www.radicaleye.com)
%DVIPSCommandLine: dvips -D 600 -t letter -o history.ps history.dvi
%DVIPSParameters: dpi=600
-%DVIPSSource: TeX output 2011.02.08:1112
+%DVIPSSource: TeX output 2014.02.11:1657
%%BeginProcSet: tex.pro 0 0
%!
/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
@@ -43,19 +44,21 @@ 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/IEn 256 array N 2 string 0 1 255{IEn 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
+/dir 0 def/dyy{/dir 0 def}B/dyt{/dir 1 def}B/dty{/dir 2 def}B/dtt{/dir 3
+def}B/p{dir 2 eq{-90 rotate show 90 rotate}{dir 3 eq{-90 rotate show 90
+rotate}{show}ifelse}ifelse}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
%%BeginProcSet: texps.pro 0 0
@@ -76,61 +79,230 @@ end
%%EndProcSet
%%BeginFont: CMMI9
-%!PS-AdobeFont-1.1: CMMI9 1.100
-%%CreationDate: 1996 Jul 23 07:53:55
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+%!PS-AdobeFont-1.0: CMMI9 003.002
+%%Title: CMMI9
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMMI9.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMMI9 known{/CMMI9 findfont dup/UniqueID known{dup
+/UniqueID get 5087384 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.100) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMMI9 def
+/FontBBox {-29 -250 1075 750 }readonly def
+/UniqueID 5087384 def
+/PaintType 0 def
+/FontInfo 10 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMMI9.) readonly def
/FullName (CMMI9) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle -14.04 def
/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+/ascent 750 def
end readonly def
-/FontName /CMMI9 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 58 /period put
readonly def
-/FontBBox{-29 -250 1075 750}readonly def
currentdict end
currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
-3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
-532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
-B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
-986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
-D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A319B6B1FD958
-9E394A533A081C36D6F5CA5FED4F9AC9ADE41E04F9FC52E758C9F45A92BED935
-86F9CFDB57732045913A6422AD4206418610C81D882EE493DE9523CC1BFE1505
-DD1390B19BC1947A01B93BC668BE9B2A0E69A968554239B88C00AF9FBDF09CCD
-67D3B2094C11A04762FE8CC1E91D020A28B3C122D24BEAACF82313F4604F2FEF
-6E176D730A879BE45DD0D4996EF0247AEB1CA0AB08FF374D99F06D47B36F9554
-FAD9A2D3CE451B7791C3709D8A1DDDEFBD840C1B42AB824D5A0DFF0E0F15B0B7
-22AEEB877FF489581DA6FA8DA64944555101EB16F7AB0B717E148B7B98D8DBFD
-730C52937E226545CF8DC3E07C5BA30739BAFCD0F2B44275A6D503F582C0FB4F
-449963D0AD2FAFDE33BA3D77BCA9D1DF878DDAFCA2E22CC4BACD542B282164C7
-97C2BDE318AF9D501CA21F6E662E7AAB75A5F24D2C182E598D175D44E88AB19A
-E7CD59584F95B389183EE21B525BF52A3F23C0FE5383A5565A19361D716F508C
-AAB78411CA5A4D27552CC1C435760D5A89D535B71C593E755C616661363308DA
-A683F54ED0C23FB2C225A008392B0B719F66F11A946A090B7C00B662A3C69599
-B4ECB0CC70C85C4BBBF207E0026F6C7A19F2ACFB7A60804FC98A4BFFD7BFFF2B
-9529E6D9D4238002BBC255BC62959D6F3381FE06E0621B879D5FE5B541D45A1E
-759A6E7DC32B1D1632368D09A97039DF255B6492B1B2B7E2C1434E8306ECA7D3
-5A79B6D614B4979F10988BC76ED53A5F45315CD7DA216221F842FD0F3E050DD2
-BAC23C984D506D8F7D614BCB6B244F5F41321549BB0BD041FBF3053307168680
-3435E9C9445A59A7C666418C4F2512C32058B1CE1EA46C7839C6E372F6CC60AE
-2CF46DD2F130B532DE8ECD42D9204500E413799E298CF6426F28D23BB7216BEA
-1A618B3ECC61B44DDEF0BB22D640B47C09AC0DF378CE68FC9CD88BDAE9ED89CB
-431A5CF9C3E9528FEE7A9936C2B1CF7B38DD2B95773F0EA0051607BE1B0B3588
-A8B907A5EF011B4622C5093A7B107DD1EED6FEE9536DECF1CC96E65373D0F433
-30AE3C094654ABF4698C07F8C74E71D023DFD242EE83B1306786124DD8C6BFA7
-801E66CB944BE7EBCB3FE803EC97067AF7AFC8A4E9AC9D11
+D9D66F633B846AB284BCF8B0411B772DE5CE3C05EF98F858322DCEA45E0874C5
+45D25FE192539D9CDA4BAA46D9C431465E6ABF4E4271F89EDED7F37BE4B31FB4
+7934F62D1F46E8671F6290D6FFF601D4937BF71C22D60FB800A15796421E3AA7
+72C500501D8B10C0093F6467C553250F7C27B2C3D893772614A846374A85BC4E
+BEC0B0A89C4C161C3956ECE25274B962C854E535F418279FE26D8F83E38C5C89
+974E9A224B3CBEF90A9277AF10E0C7CAC8DC11C41DC18B814A7682E5F0248674
+11453BC81C443407AF41AF8A831A85A700CFC65E2181BCBFBD07FC5A8862A8DB
+7E2B90C16137614CDAFB584A32E50C0935109679E31306B8BDD29F1756946A67
+7A7C2D9BA6FAB9B20A424AA0E6F4BA64C2801C2FB5A1156CBEED0ACB95F697B8
+BC2A6E6AA7EB1F9FD8E3C9B1A16697EE1F0E7400421A7765AB218FC837A49365
+82DC6B2C877A7DA84A81E6126EE96DB25C17A207D3020A045DCDAA064360DFFC
+E3CD50E21ED239D2A6450D04F879A26443ADEB6A20ACC504989876476C7D1A74
+91564FEA1F4CC2C8C8FDF666DB537F315AE1886C73CB5B00E67E7B398A6C018E
+540EAEE98BB8136C4F044EDD63C33431D2CF9740F051DF365A4045D9D8782112
+7BB5D494D9235BA98CF2F30CB119F5A904C32AD04C960C43FC1F5FD8DA7D90D8
+93AFB59F3FF4F796481AE2A7548F948FECFC6C127C4D3F159B08F206AE8C296D
+EE470DB2F879EA79475E029D22D7A8535C09A18689DB0609CC233E5199C02756
+972CC9C94D9FCE264DEE5D75C8D651E4E2D1189AD9588CB815722BB5EE3C379A
+6F31C2E6AE1AE4CCEB29766190AFA20EA937114978752189F1A9F42B39483149
+796FCFA123BA9CCD1D9BE28289660BCAE16C40B5B504058D55CFCBFB4F4E3D94
+DDBF39F157E63946534DA81C018B1C01B9F10DDB55E0A5C2B3985ED1977C039B
+D6755EA42CD09E27751E159C30B93F376DBE61CD3AED34BA36A768F232EB3B80
+E3E6B77C4A48D408217818E398B83D995AB6BC871F20991DF57313D6EB0C793D
+0F28088EBDB7F38DAF7E01AAB3476EC24D7BB38A9889A7D3038D930FF4289B83
+F54A7BE1E2D98A3822098D2E4D067A0D400C20C0B2B4BBD74C13ED1B827490F9
+ECF48F8C3994C1C5AAC9CF783BFA4F307528F51EAB55F961808A42ED53F00C97
+72A432EAEDCFCFB622389BDA707B6ACC9433B065CF29EBFE93AD14B8ECD5F47F
+F073F11822C49B8BE924CDFA6348C3A75E9BB9BF3F31C41716B34794B28CDAC9
+4DB8B087E180A9B3B17680F73D9C12C8D86A922C948093629F5D7F542ED882A1
+692F4F6696865E53E3E2DD43B2D5E8C989CFAA5CA5C4C5999045E170BDE9921C
+BACD6F2863F5553EAB2BA2D4A9034729EC0C4201DE90DA89B0A27C5A5C974109
+4E37BFB3F46B3A506169FB0C68E1CAFC844419A8D261A1FD86A3BB78E33D5FB1
+CFC687A5975987CE45155E5FDFAF0CC5FD5568CB1C26212F92E88255F0549F59
+41B33125946DE43436BEC00804063FBF03EC796E3361B1C852EC3038D107F80A
+9198968265D5488B26D7670B22C2D75EDFFD1B7B4AAFA36DFD94640C9D0E2D20
+5BCA18683EFB91834A3939AB8EB60E2F09655BE003582634C52770DA9668C292
+2E02929D812EE2B0CC65F020064AD5BDAC5F5693B30508F40ED8E20E87149BD5
+8DD41AFF83FD1944804017DC5A04512E593549FFFAE501131CE2FDB65EFD0B8B
+33809CBAEE411B3941C241550B9C30DD28088708F1C0CC3125CBEDCD985EAD28
+03313741F67DB5744A87B381147D5BA70AE1145C27F794854628D87D6C1ECCA1
+749E3465B950175D3C3F40E344297BD92D3190041A4392033A79BEAEAABB8DBE
+CC14E39612F43721CFAE6F79074429221CA588AA2501DE520A464DE157A03AFE
+3C082FAE7628FC0C57FFC61D0330AE6332D20FDBB09BF36848FE05E782D6379F
+64F9C82C45402481B0A35989027F9756BF5A79DA2D96E10F39167ADB4305578F
+90B509B6891338FA1D67DCFD61804AA6621526B2EE4769589A2646581712AC05
+DA6E98D16494F07D612743058F54FEE516BD89A8EC3E03F9D7F905175D3412C8
+F7329077FD6EB25213F3CAC94BA0C3363B759401B6EF7548C7D709F3241D030D
+4EB46A1AE81863C412BDDAEA6084C37143A4C5E41BC646315B1CD09F934186CF
+49D1D8239E363A435307030BD79536B50B723A39DD763DB539F24A10DDA12BD4
+E467339D2D6DB177D6FC539FA77D2DE4118EBAC161E928749F7C753ADEF86117
+58619F1155C563DF2E11ACA8347908B98113AED58FCD0394150EEC94B7F986EE
+88BF7171D208D8F1774B1DD478F0C2958AE372D257E7EDF0F6B5D6059CC4D5D3
+B00FCBD2E9CBE79235B9A5A3E943CC27AABB58728C95C7DBD4F4A1F8A4DA99AE
+7377B0CC0BFBD454794398AE0D5F7281771FFE87B25A819F36E692286A42D776
+01794A43CA9BB30FB8FFDAAF014F909A369E34C2F6C75B7D4EB9DB0580E33F46
+19654443AFF8384B95600B86FF8E41FEFD032355626D60C7507C058EF832DF41
+194B48A36F11082D1DCF4723E21401E0C7447AABFAB4639B26E3D2730E348F55
+53EBFF39CDD03E06E2FA5FB379603C879EDB7E1A10F89695C9C47DEEE52BE0A3
+F446F187AB9D7E93E6F9387F21129034F36DF40605D28FD526AF82CA9D232BE4
+412567F06B38ECCD496EF40A7B243E46C9FEBA4F1BF4B1ECA029C5EC239353D6
+C0B100BF7E7DB33BD1277DE104F15AA19F37340A777741AD1AD693BC76DA48CC
+C6F83CD84591ECFEE375979972B0FAC4C10B625E4BFB261B9FFFA83C31DA0108
+4FFB6377466E9739E0EB64424BD9FC7239C7DD834EC6788A0F97FE714AF92831
+E1BA36A8A9E24739F1DC82DC26CC3CE28C210AA7C569B19E1784D663A0CA4E81
+AFF43E86D6F5F63778847700072CEB77A4EB946DC1F23DBC00BCE773203F76DF
+00F0B085F31420672974DDC642D885E95BA6BBE43E1CA8ABF464D9881CDECC7A
+E98E31B9754C9B72A8BD5CF6D4D214DBC3BA7A0CDF6635953F5AC1E7639C4A91
+C7AECE4C75CA3389C348F656FC2CC96C84C85A926237B6504DB51937C9CFCDAC
+B75C31ED570D180757884E27757783DB2D5F35ECC48C496CDA342D49AA947BF8
+2FDAD2F19DFE8CD1C76A8FA08F33681F3E12E229D7DAB45BE3A3F258B5ED4980
+F15340CF20D965252843E026803E8AEE736EC41CCA82167401977AB719AA2F50
+0B791EEAA82027B3C712D2EB9D14BF8F94FBDE2227609BCAC41EC08DE2BAC023
+28352F913F7DF08D4E1C66E83F764578B22B4EB7191E852B91ADCCB1BCFDB1F4
+E63DFD152E86FA9DE9BC8908130EFDE29CC4401339C05B5B9764CF8EFF14951A
+C6C13AF979546996BF22F2B96D3D585B90CD27DADEC78914DA48432C6ACBDD42
+20EF583FD41F2F6D6D10C3DF7DD077304B5940BB0462656E306CBD91EB9B756B
+7014B1884A36201EC582FC9345C386043DD2818FC301EF78791C1D7854F8FACE
+5DE9801DE9F59D5B4271E003AB897B2EF49501589D681D59CFFD9B03F722EEF4
+74ABD29997515DA3591496B62666744EA76DCA45504F8075C0652D6779DBEAE4
+90430C2945FBD60AD53B51DDBEFC7ED703C418B4B244C8FFA5A3C1B7600C5A55
+3EBDB93C16AC191C3A28EB2279BD3F0D67C826BC6A73D3C0AD02262368AB4621
+98A1605F2887BC5880E1AF2780330E0FD01D7CAACBB0F008A42C427F38236066
+54799594E515B289044BAC4DADF8B3686B4372C5110201221FDA923F131E07E7
+93C44BAD406838BA4D1C277EF74098B8C0EDC41EEDD58C195D7DFF5FEDBF96FC
+19CEBC6C3006DD2CBF76916B4298BB915663C2F61AFD7747E03A03BD7280197A
+9DA590E3D081C6F53DBF94E8D6FDDDD910A70AB18A0F6D48A590FFAB314D6CFD
+E3FB20C1F3C91063F00726A2C13A3D48323F9854839405E5A29D66A43E6E2B84
+A8B3765F1D817071D4D6FF42BC785C2D11AB2B9452F141696CE19C6AFB9777DB
+107D6E22D8CC6C26440BC48248AD8805C4329D46BF433741CB519B21663392DA
+5DC7FC9BF37E5BC396BFADD7263D09F6B4D69594AB386B7BDFCF3BACB97A0E08
+22013E716E642592A20136CF9CFD61D4E515D80E06A4CB4FC9D9B916C93CEA95
+B83B98C48CF36C1D02291D4F5C0419338D64E33C90C90EDD2BA3B96D70FAFE0D
+403A060CFF448D3E28A9B1E3916018465E86095BAAB4706CF7ED350D7C554789
+D7F4FE5F180767DE8739259E68CF142040BE1E2E8C6152DE3417C1FAEA7584B6
+20781DC4A9796431EE713DAC4E713C839D7A4FDC8AB6BFEFFE767AFD8B67FDA6
+943AD387E5D3BCB09039ADB64ECC2BE2620C6EC269E708DD06C311F450099E33
+AF46AEC644222E7DC4DBB9371EE12CFBC4F9B27AB46AD1DA96CE006E1DF8291F
+A550A93026CBFFC1087B134EC6EA76F5E109CDA58FF47338A0039A786A575F70
+B8A03A4F9C8D07A4C856C77D9BCC8E3EAA740172D0C2D0A15BA35C9E5717D7FA
+2691774DDE730BB9D7C70D7AE103DB8D35F3728470C76EBA0E670634E1A0BA84
+2FA102BAD7271DF2680D86A4CA6FC353869987700E5E3FD778165456033D624F
+E9B3E80EBF431ACC934AA0357E824B8AD73E222B510DE8445C55C07C8E5DE46D
+E478F832BDDECAF2EBB11941DCF84CCD887043FAED9AA90D12BC8CA9A0C8D94F
+8D3BF1F80B14B6CAE6BB1C6AA405AA64BB94D5A82CFEA548BA070796A02F9642
+87326D066101435AB9EB40BA9EA9E61B363F5F5E3B924369796E8B78DE3414A4
+2B79C6A13ECB2F34E6299658D07D2B3DEF3D4383CE009A927F0EF5C196652842
+D96B857AB5E905201E7E8BA21A5EBED1FC6863BA9A1A6E5390407F75055E2EEC
+512FBDB3E82CEA13663F1A1944DA072C765D8CED06AB461470C5723BDC1271D4
+4D1D049D3EB131743F1EC9A6ADDAA038ACA2C41D139DC6A84EC3C61AC7F1E559
+6155CC2F49171F6E07CF56D721D9728E87FC7DCBCAC46455A3694C765FE807E9
+9CBC2D304AF37E0F28CCB22F239541B53A4D24D09C662559267467EA487BD33A
+0BEFD4899B581D20582930703A868655C31BE935364CA6A95FBCB22CB714C040
+9718824DFE97929D0482430726CCB5A5307957DD2432A9B6271E849148DEB76B
+FAA290FF6D0B18DC5B76407852E81C105EC6CFAB0F620C6DC9DA555A33C167B1
+430A8BC338BFC7D75B7099CC906AD923FA107C74D3FBB719D77A4E5A685FF9D8
+56424EE4AA074434B809D894ED50F6A60A035C5223EA25DD8983B9B34210DABE
+718D7B2BEB293FF1B63CFB1CBDAFC69552963D90F5E3FF533A3FDBB626E9FAA3
+F3C119E5E01C7BFF832A033C3515BF049E29558B1DAD652F2888E339E67D15AE
+95F9BD14E3253DFE9072B24C0E7E85025B71096AF51C86AECB2921126A43156B
+EC812B32B1164BD9B2B947D503C015616DBF2024F5C8CB3236C1DCA653D661FE
+6B1C19A22D272A176B7F1B7F9E67AF40DB0EFD4940E58B2A050249CA4E55CAF7
+6ACFD84FB46FEF952D18552B3972D79D808B4C263B8C7E1BB647A2D03E102867
+630D5C3F2C917F765A4F6FB8106BA6A9D0093E27A4CB6049C2371287D94B5111
+6E7020776EBD744C6C920464BBBC0AC206033E8240017F8CCB112596ECD7CAFA
+89950CF43FD87ACA750C03A778A37FBCE9C82C2F5ABB135BB02DA8E8C0D24475
+3BEA9D79372D0022FF1ABD378C151417DBC69FE5C9CA38D23A3900E34BF924A2
+90777ACDC37930B67DD44A2E76DDBD9B89598D5F626BFD325A978D277265DA47
+38CFAF16E7FF1946E15F41CA73F7B4B02E5AE8FC4C37B115BC567E4EEEFEFC34
+EC8974B1465AE57759EDDA28DD38A9210871D35D331AE1BE6097C3EC21C770C9
+B25D040B2ECCC3AEB1EA1BF99E0C2C0F192C13BB9152CFCF75332E03F9CEC376
+9B8C285A35F53655BE38713E09AE34BA2DA9C06FA42A6FD2D00CBF2AFD2BADB9
+1571629C65DA38A431710CF5B01FCA68E8B8569922FBC3F9B64A5509B6F677AF
+1B97E91FFFEB6308AB68AC58F9BA43DB5E764021E75B56170EB44C2C0A7DB86C
+62B8982256D3621EBE3DB3994DBF5C5A14CF34B4AF3BD5697F8E3203085DE9D5
+84B0598169760B925463E93DC87CE70AF4C2DF0F4287D2F2069847BCCF7A37A2
+AD451D5ACE4DBCCB2E14D5DF38B226952E7446BF87BEC736EF3D5AE793304618
+D66D3299AB9F9CA1D13F134FAEDF36750046E27706C7CBD8E0877BB6276E5196
+BC2A355D109C0253644918E1CC11B717DE6FBDA201E769812752888CD66268F6
+4ACF4A9449378F9F9923D584BA1B51F33663BE7A306887BC14A37E3C5A4654E6
+531D6EB63DE3946BD8BA95CFB037991174F36D61D842071E6625605CAA350A24
+FE551025D10871FE0E2599A63900C8520EF4911C53A03897C8BEE152451708E2
+43FCF4E700C583A5E8DBCC03BF9CAB864DBD19E1760945DEA0EC0BA38BEA8256
+D3A8D4F70F6685A99C6BD2BA8B412A26C002D76138CFCC7DF6802931E5D97BA6
+0151F6A4C572235B4196B22B7B2D14B32886DF0D2CA8A277ABAAC53B63F64CE4
+E4C088192AAB674497E8AF81961359C389B51F4A257373D907C615030BFBEF53
+DBD99058FD06E352450B658478C10454AC8FC0232B70D5CB916981978053E358
+99D322A07294748BA427FFD1E45C909171017B52B7C742FD77A8560852D819DD
+8DD53211A14D7B2FD11E42941722FD3985D627FDAF87EB57326A0D290B5077D1
+8A4230BEB40523A8565F95E0D44F036A571DB698EDD9D94FEC9512369E5E5E73
+A3CA5C142617944F4F99C0697ED088ACAC007FCE06E5A6EDE7D0E03A3399DCE5
+362271BC31533866BA79FD1FB3F608B22CCD4111FFB1BA35D920A23AD157C6B3
+C3DAE11069D5E46DEDA7158C6478D8B8C0D9DC237CDF0CC6633911673C43FB79
+E4F9B7F27495201E5ADE66255BC2CBE9D9F237DECB62A19D62CB41A1C92432D2
+07F0629E913A71B3F1AAF8B8C5AC66D3C8605A48F8913E39C859E163DB1DBC8F
+0ACFEE80A40B6172032E95A76B752B873FB4DF23CF3A655AF1A1B88C8DC156C6
+190DE72973950565454C0A188A33395FD3D529A88F2B578356DE8EBBC12F04C4
+5B899F667D9E6F3A4EC6DD8DE71FD4C2E2B6D56823EE4E0526679D71FF1B868D
+F261489F06F97B010CCBE640E2F57BA3DC3332B329F7958394BA9777D833AB50
+005E8E9232547104065ACE33396772B0E0BD66D2C6CC54DEDD071E444D8C95F8
+6F88B31E20FDB80F77C83151B7E25BD3736B4F9BDC52EE78C41E9475E5A6D94C
+D348AB42F5E36B4F167D29EBDFBD43B03F77EB296B06A36880FF17D412E77EA9
+F2E7C25FD05E16BEC6732681EA21AC3FF6893B93FC09316A370CDDB86D9E6087
+F6042C3F9ECD742778389170F5F041329782FB9F9702F7533E51F355F71825AE
+2BF4F8FE50D413AC9A20C41B42537FDBE8DDC5A5C793D3760C1EE13716068752
+F0AF10812250BEDFB4D7133FD58F4587BACD572505C84A7D3802D27443175FE0
+0D89C3398B55176D8642AFBAB5CBCDFD6220C8488564B4306D74A58CD2921AAD
+73CF803C754DAC2F30A5324886E273064FA51781D5BC596BFEDDCE3982EA1AA2
+62CA7BAA1B16C6EBB99B2AAC4E6C9CEFB3D10F19987045C4918DB239E6E63D79
+5F44B9D097118D081153AFF96E5EB39CBFBB99A3BE30909F614869031358EB98
+F07A97EA78AE50375941B2474DB46AF3305F2B208D45921F93743A6CB8AC584F
+6BEBE25ECAADD5A789EF60C9F54446687E7B030DA3E5243189F02BA46BFD28B7
+DC14822E136AC7E40CE20458DDBF356488045C95907363864CD6943643BF0109
+EE027A3091C11EA392EA91320EBFEA3B857370AD8EB86D73F035A476F7058222
+E8CDE78CA1AA9EA69A8AA6EBFF3E67324C567B914134DE042D6F8F18A9373107
+536E8D90189917D343F5299024239E2EC1D2D177D82DC8E344A7CF2AC71AEC18
+36F139E7A4EB59A67192BCA9ED0EB25DE13032F6FEAFC3B1F4FC81BB0EDC41DF
+B9EB92618667C59EA499B788CD26C2137D70F1B0AF793AF5AD0D0941F2E746E3
+F5A7F0288BC1EE11E982EAAE763CA422D72FBBC0D754AD58FBF92629DC8866A0
+431213513744DB48E52EFC89C83FEB082588E4F30D7DA77BB598E51CAE7E4900
+5CD570C914EFBA426BAFF7A56FC775ECF5BE13F2C42E51EF96784E5201C0B64C
+074AC229FF0BFDF71E6D5E08D8755D2C12B770B6466A9C9C61C15582DCD2FF78
+E9E74DC2B1CAA344EC0339EBFF92CD2CC1D62E2FA8FF15E7459A83C6CFA58A77
+2F1A40BD276E76B675FD6834052B33BF9190F04DF6AA5FA3BB7D77A88DD5B600
+324C5E28216F47682EC29EABF35BA842BA2294A3D72B126EBB852AB741186C9F
+FC84B12DC4A6CEC08F2D03EE61B65C845841EE17F1B765649A
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -140,25 +312,41 @@ A8B907A5EF011B4622C5093A7B107DD1EED6FEE9536DECF1CC96E65373D0F433
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
+{restore}if
%%EndFont
%%BeginFont: CMR9
-%!PS-AdobeFont-1.1: CMR9 1.0
-%%CreationDate: 1991 Aug 20 16:39:59
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+%!PS-AdobeFont-1.0: CMR9 003.002
+%%Title: CMR9
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMR9.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMR9 known{/CMR9 findfont dup/UniqueID known{dup
+/UniqueID get 5000792 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMR9 def
+/FontBBox {-39 -250 1036 750 }readonly def
+/UniqueID 5000792 def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMR9.) readonly def
/FullName (CMR9) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle 0 def
/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
end readonly def
-/FontName /CMR9 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 49 /one put
@@ -186,167 +374,365 @@ dup 118 /v put
dup 120 /x put
dup 121 /y put
readonly def
-/FontBBox{-39 -250 1036 750}readonly def
currentdict end
currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
-016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
-9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
-D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
-469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
-2BDBF16FBC7512FAA308A093FE5CF7158F1163BC1F3352E22A1452E73FECA8A4
-87100FB1FFC4C8AF409B2067537220E605DA0852CA49839E1386AF9D7A1A455F
-D1F017CE45884D76EF2CB9BC5821FD25365DDEA6E45F332B5F68A44AD8A530F0
-92A36FADB679CF58BAFDD3E51DFDD314B91A605515D729EE20C42505FD4E0835
-3C9D365B14C003BC6DD352F0228A8C161F172D2551CD1C67CD0B1B21DED53203
-046FAFF9B1129167921DD82C5964F9DDDFE0D2686875BD075FC81831A941F20E
-C5CD90040A092E559F6D1D3B0E9BB71733595AE0EA6093F986377A96060BF12A
-A1B525CD9FA741FE051DD54A32BECD55A868DD63119A4370F8322CCBEC889BC2
-A723CB4015FC4AA90AE873EA14DE13382CA9CF0D8DFB65F0ABEDFD9A64BB3F4D
-731E2E1C9A1789228FF44116230A70C339C9819676022AB31B5C9C589AE9094B
-09882051AD4637C1710D93E8DD117B4E7B478493B91EA6306FDB3FA6D738AAB1
-49FBB21A00AC2A999C21445DE3177F21D8B6AAB33869C882613EA6B5EC56476B
-5634181ECBF03BFEDB57F079EACE3B334F6F384BDF9D70AEBD592C8ECF21378B
-54A8B5DBF7CB9282E16AA517E14843909339B5E7C55B038BF3BB493F3B884A1C
-C25F9E8FB912CBE23199AD9D2C3E573727701BA301526C66C3617B9514D6F11F
-11930B1D97C17816C85B1BFD9B973A191B33CC3B391815AD14F1CBE935942AEC
-D4004E6BEF379066FD72209DC88D2E634E79BCC2B98C766CBD92C561F2703F8A
-109E6C6CEC7B866F2FC7ADF646BF492E520319F3B949AB5D84AE990B33344A40
-3971F58DFDF8D8D67FA0B8F2A0D884F8C09A5A721319B911DBA0A35903877343
-C37BC36C5EB32353272D1E6ED5FCA611BE319A7E1E842CB7576E7CCFF73F4DA0
-79C95BA59FE28B4C215985B32DD3AF0843AA8D257E97A12C37A7E5F07FA3B46B
-76D85FB41CD90FFCADEC92F5D8AB1109D99E4251F4D0DC2693AF1404DF49B308
-49D7516DC2391D5FFDF9B75C589BD3C4DAFF2DC0F2D809EF9A864E1D8AF48514
-48C90D75A4168D99D07A6BAE0A6E46D0B2681C0A634A2A11FE8CB3E9645E42B7
-CEC0F081EF5EC0275B5A363ADD57B1DF5CC39EE580C9000FD3E84A8659A49F58
-FE78EFBF8A587984581BF7FBD76B2FA7E0E345D939FAAF781E8E463A761E2B8A
-923ECD676EDCB340CEA6F6BC95CDFA5591CD4162E62E18BF99D95D82965CE96F
-01C4FCAE8D710D0C822DC1FB7CEBE6D5A6571CF5E1E4E09AD669AE9B5C541AD4
-BDBD4521F87CCB6594BC9651164B9A8936BB472E2D0FFDA1321DA3705BF338D8
-754EB9BA0E027AEC143ED0DF0AB63723C8782C7F6934454F66616B0AB11DC672
-CE8DD3B7BD53E293E684111FB679A8DB9B7F5BE0DE2D885AD61E5F5E6A531A2A
-59B88E09B24B382E0B82CB1ED14C4CBDC42740242D4BB659089119E173C18D06
-E4899FA22620159BE2F93957CC35200EE2DBECB50C2DB46865DB2DA806AE9526
-C95993E81BC219108C9E60C391C09A2204B5ED2FF07738B595778FDAD688C239
-E5D88498FFFA562F84B4EB2A438A5E6E53B8AE37B8DE3645AD5177A951F3F482
-C1DEBC090071106307630FBC73042C45EF0F0207731EB7353A7CC574927DA574
-9288D70E163B7E1B6BA00F00A646223F7F65BCC37549289259D8C6ACEDF9E13D
-8F48262F4F2819D01074196106CF0C546FB97805917EA2CE1366A960CA1C2D75
-8040F3680B0964A51762FE7298A9448E48B966331FFA31287D03EFD57C4817EB
-48045F3FD8CF3CEC740ACA4374D0BDC29924D0101BD332B356724F96FD16C13B
-6FE70C2419A5464E2768DD68B74E4D5621466E75F481CCBB9F83DAD4BDE54AE6
-91139AFBF6B0218F6697E47679BDE65BE25E8ECC20458CE11DC7899599363280
-041D8B49C2B043D793F9FDC915435459BE783A939AA081BB60FFB3B0AD4C65DF
-427A7D92DBE1096F8AD111C7F06816EA2B3688C61AE0F27BE9AAFD036FCAA6EF
-D5EE4C5E611ABBAB378EE8FACC3C23CDF16020982BF22993240DF28CBBB3CCD6
-64505D48B9716873A8CA7610A7DDC2B5BEB9C859B49C14575B37189A0721BD17
-F36B1C88B495F55C19A581895FF86D04D76978DADB486ADE888480F3975FC604
-DC69CE386B57CC759B5755C527EB2BB56BC4CC3AC8256DC6666EF865096E349F
-9E3BA0A9B30F09295C36FBEFF2211D917125551626617C456ADE8C3C46087D66
-A119C924376A77E5B10D777FE4DD91EDA4411244E0733A0D6DEAEA2545E291A5
-E3F92C307A9C04ED7228D468FC1649D969E90CFC3FA0EC2C88E399EA78BC65CB
-3218D1DF850F8A005242543C6F983FF6DB070A841F63820A78E7971683D63225
-ED7DCBEA8130B104E25A3BB4E0F457E2A8A093539A029152EE906560A86C3219
-89D6E9A963322841F713973D0B19E9439AEC3935DA60B5BDE44139B95FECD321
-2CCD7C9473CA7490EC44D30DED292F8F759EA500AADE2334D188E6ECEFF4491D
-9227153BC250BA7D9EB7C0411723B1EE76A9D86DF8530A9277D9D086B7C4ECD9
-861D1A9CD9AD967B312EED0896876184ADD6351AD7446E2D37A408C19CC687CC
-268589DF450E40B9BD1634C5102040796F7D22D137B6513AF9D6B34559A1B88A
-81B8F01D89EF4FF9271D19099D74327E44A9CFE0F281E4951FFDDA041346800A
-F5BFB4F7D42CF9F641F3DA3D1083579E798DDF968C53C1A72B573976A5560191
-7FE836812ED2AB13EC910BE239A36CDB8E478234E4B1C39AEABB5C1F8887C271
-1AA961C65B513E835D52268905C2BB3BB5F570C91DEB1D35A3B4CC633E28B1CB
-33F72D80E60FCC08BE630592C6B0A12785CC3E3FCD71B8BC680899B19D4D707C
-46B7D0BC251A150C06F2ACAF15FBA0A4024BA2C8BFA0EAB2CF7C1DC9CF33E63B
-738CFCB2B2BF14C37CA935CAA4707E6BC6C39B598019773857813EFA1AAEB74D
-C40F0329414136910D9B6E3E02C5DFAF6690FDFA55ADDFF5BC7C1917D8996533
-538DC0B629CEA825B08E8D1882ECB52BE3299BE56328A142389F7208947CA6AC
-CCF49F921B53906F58F2E9AB253D500EC125DD62D5E1BCAAE973B429E151B119
-29A6A61071C6AC1F6D61CE434DBD7F205B4496E744E1DF205183F7EB546516FA
-A0A8054D72FF4A7A579134ACDC1DD61E8D28065AC34FBE04CD8366884FFCD595
-13D5C429E0C68098CE3D0E5B9533B5D166894D9958C1B9D384257A30316F925A
-40229CC8665CECB8440118700CA8C98091B6C2B117027E7CBF069C31292D4C6A
-A7C311C4D52FF847B25739633FE51C724DFAC6F26ACBD3588AB6FC886A7D0530
-2ECD82855ED3FBA5CBCC797051EA514F45CC8F9593ADD302E3BA79C8E46FD22B
-37A2F21F07D35CB9DD8529E5018AFCF3AB1765F170D02E03F79B75882906CA02
-A75DED91B4670926FE6FEA4DEDF80BE3849D3D615917BE4742E594A3496C2446
-F76BA5AF5714D9A091111AE1F6628DB7A952E44254EFBCBDEAB492C902DB272A
-1C1E8FA0807874100B03C404F158C9916C9D4ACA59F7BB0A5299C73795CADFC6
-7CF2E2BEDC4BCD537BD0E1E624CAB0811DB45DB36F8C0FA0772AC33994ADBC72
-63C4E6A12439C9F43B71191A767579E1FD06382C1DC06A7C69A8858AB47E04D2
-9EC7D01A045CE7A04A39AEC3806B731D7DB53CB8469630604CC0D198753CAA49
-E1B55F06650945E03909EB79F1E2232077B9F1BBC8860553C47726EED45CD944
-966814E30C9CAE2AE1F1BC6018DA252D4C1E0F6D54929165F39858448258A628
-E278A01300312F43762795CA0D5E5AD3F3AE19883D9065BEEBAA6D8F7CDC4AE4
-4C8D39277111749AB7E2A568620EBD7DCB76836F244D9720C4EB0B9100DD7B0A
-6AC2B75AE80E6406102EF019B5B28CA14D853A8D9957129C4BF0EF3EFBA7EB0C
-9317B11BB69CB98671518A3847981A027245914B7C0238E9A4E3A5169EE63C6B
-B6645144DE0B73A8A4BC6F9CD21BF9FB6CAFE2CC742E733952EF4E725524B7EE
-9AA2CF272C835CB79C5E403CEF9D74FF0C7436EBAB6209BD13BC7A9BDFA02ED1
-A233E6646837D9C4C1CCE1D813094C2A88B3B57AC7EDF1EC376696A52AE96FB2
-ADAA12270964E5A5E8C32470166BED504F477A8E37F72826B5D5AD1E17F5D140
-421EFAEAA061618E347B35AA46C1E915F8AB517AE828B2349B99DBECE6B8302F
-CCEE90FE666B6CA4712C50B1CCF582EBC5432D26C5E560835508CD13B0F43760
-85A50F0733C35C7CFE1B952DBEAEBD6A6EA43F6AAC2E75F9D03A61F774375F43
-3041544C07FF105E1DE4D50D9C46FC90BBB20A7486807F6E5B115B33FF3E5492
-8729F0D1C8FCF5DAA180E59112061EE6ECFB6C0748B01DF68BD6F76D4AB5195F
-BD58A37A3EEADF9E05F81BE571F731977ED04D4D4DB7B51DD10FE351D02C5090
-3B0B41E0C3BFF3230014FAA0FB1402A8EC6106E78DBFD410A979AA5211AFF01E
-E446615E2BA8FAB7BE9C7224F5F6C678AD509DF20BD0AD887E8804F806439A7A
-12E9A4EC2044C329410900A869CD878B84E92D0EE8EED95166C4233F5AA3AAD5
-07C42C19FC4790178E4C2DA81CEB2382055828789CD471D79DEA1EE6D11BB7AA
-F8035405CA79C679A202D800DAD046092A5B1AF6472B94B62873EB6C0EC8683A
-159BEB9FB3F57EE16C1738DBD684F5EC321B24AEBD8259754B01E6DB7868674C
-7A9B25FCC54F45D825AC044561783544B8ADC7D6DED3B41A843416CF55B3F8DC
-9285E181671642CAAD8769A4C916282B227940C1C29DCC3E02D051ABFA3B3CED
-6BD69676873A346C43A9611435E2AD636BB12187F72644F8FAF40F65ED2B2751
-78BF371854AAC8BFE285D68435D5DBF1A34161E2347CB3CC1503C3A2214213D1
-21FE71AFB26AF7DACB02541D900D4D6B0153524D2A17C917EF83791C6AB3248D
-10A837A4CEC4F158F2C40BCCEBB9E7175485C889B90461E4147F1C5EE68B85F0
-19D0E7263C5498C72703A9720F25D38EC8893D24D5BD3088D63A10815D43DC9C
-0D4F6C4AE46F9DBB75D087CFE6A521182669099A11216DCCBFFE770CD2579C3D
-BD41B35E5F8205034D8F2120BEA9FB72C6715B1FC6A8318AE58A07B3D6C85F7F
-A15B4E55AEF566827DF641DB7FAC8A2782F2132FF7EB976970BF6ED4D494B85B
-B9B8DFA4FFCDC6F3756A13DF7E596D80997F1C88D8E3F0F95F8356F7B490282A
-A07F4CE85331FCDDEAB7C60F6FA62FAF354EB86B82BEE3654BC45B111D57D6FE
-A6F3F2C203CE6190BBB92A365DC217F5701B7481923788607272A7D05AE622BF
-D523A58EA6BB16344978158697F94DCECA6AEC487351227E46598F07551D384B
-F08136A37ADC06747F61A35DD3EA337DAC79A183075B889E2FEB2E4B410C229D
-803BDAD9894B94F65735E67BC07652B7D9ACC7A11A7C8A55318DF65775B5168B
-5875C955D9FB09E01A13D66D8BD05C588A85A2B18B29CAD6681EA6F4B5B36A49
-BD8C65E8CAD928E3AD315E1B3E0AE8CE319FC0FE7D9C0F66335F69BA4C257FCD
-490F8BC096E21AFCD49C02624B3E7373BE0D3AC204B97DF6C4F73AD3C1E937B3
-95A4EC7DCC051BDD976586546B2827FDBFE123F104491536D816185CE115ED94
-402614E5293D0EC1B6CEE1B955260A18B96F6D5D825FB029E1A5CFEB5476EB50
-EFF2341C9737C5FAB195E37136E2957831CD8F67499AEC281FA14260B3D3EBC1
-64918B9C5D104267FE176609AC63D067CB70749348C2877A2E88ABE087B4F0B3
-B462F4970D0903A3D4821EDE9C9B05026FEC969A03E816D6DFE60C1234A65F73
-8A9F0BFA7DD6A9F971BAF5256187D052401D76462CDE3C3A17EB3A4ADAC404DE
-93D475CE0F1ACA1E328A104AC443618C43971E39F9BF2C93F86D6B45220AA4FC
-1E4DE67F8D376C595E5F4B1492ADFCFDA4C55AA2396D1F7F7E6403F25536F1BA
-6EB8937426C0B79B67EE7F46660581262B6029EAA0375A6A900406DC10E3B990
-165C68DAC5EC15DDC7CABA62D5446F154F89BD6E02AA9754F229CBF95638A25E
-1592A49481D4F106571576827E44B1B3C8DA2B2DBE187F2E9B3BAB2E039235A7
-45AD875F1B31344D4C8B7F19F1EA136B295345D36B106FBF61373DE31D72D99A
-9F5E6EBDBC5FE6187E5B6034442B70059CE2BCBA450584D536208BB7983A2C52
-66864CDCAAC8002B324427DA2AA3CB36A90E067A248FCFE4B6785E49F4DDD41D
-F46D7AE9EAD03D90992CCCFF0E66102AB6B94D9CC62217B8B34BD122B90E5CB7
-07A162C3587EC865ABE9492797DE9D8DDF0DAC66A483085F655F4A4FD69881FC
-2E8A423274F13AAF3BF3F49BA1C9F024FD2345FFDD38D6EC84AEC0703CA69DD1
-1C97FF1EA61A666F71C26DDD2264E41EC93CC78EEFFA4E480D2D2F8CD9CA8D59
-981F74F72D32CB11DCB6B4DBDC078E217F9CF855E76E3659AF9D67D324C1E1EC
-50E3C01BA9E7BF9903DD9FBEDA1EC697552DA8F6E896E0ED71A6567AB628116A
-B7E655313314A41B8B8652183C25339C20CCDD74EAE7F27EA7C9E9FADA0F70F4
-020C01ED0E8B6A21CB8ABED9F2D48444C3310D60BE710AD201A54C3CE00887C4
-7614A7B580A592F7E301E4696A5EA91D81F6FDED33701B0456F3821A0B8504FB
-ACD91717FD661469F8325368F9DEEC474971B374190FD0865448D9B611816F05
-382140C6A07A56DEE5ACD88851E21B6281C7FDC21ECBBFC2A2B4C60AC16A1DF2
-C68BC43F81027085079178C2ADE5C84B036390C99E612F9E8F49BD0ABE1D5977
-46BD62652E29FA9E515601B81C7DA9245F102B7D939F91436803976AF3C787C0
-3DBCC9EF6EE197A13D136BFDA523A2194D8F60EAA75247FB44C575DB6202C466
-BF04D9153E4A7B742DD2FC75C1E7FAF9715EA53A2540B800D7305848EAC5B0A3
-AD838B481254E0D65A6F6602218C0CC6ADCAF7FA534EFDA315882376950390C1
-BC208247E5B7912729
+D9D66F633B846AB284BCF8B0411B772DE5CE3DD325E55798292D7BD972BD75FA
+0E079529AF9C82DF72F64195C9C210DCE34528F540DA1FFD7BEBB9B40787BA93
+51BBFB7CFC5F9152D1E5BB0AD8D016C6CFA4EB41B3C51D091C2D5440E67CFD71
+7C56816B03B901BF4A25A07175380E50A213F877C44778B3C5AADBCC86D6E551
+E6AF364B0BFCAAD22D8D558C5C81A7D425A1629DD5182206742D1D082A12F078
+0FD4F5F6D3129FCFFF1F4A912B0A7DEC8D33A57B5AE0328EF9D57ADDAC543273
+C01924195A181D03F5054A93B71E5065F8D92FE23794D2DB9AF72336CC4AD340
+15A449513D5F74BFB9A68ABC471020464E3E6E33008238B123DEDE18557D712E
+ED5223722892A4DAC477120B8C9F3FE3FD334EACD3E8AABDC3C967C61FF003B4
+B10C56D6A490CE9594D57A2D431B9E5E10FE3D8832E227A7087611431ABCD029
+85F4865E17E17F8CFBD2CADC97E0A8820E3ACEC873F31464466A9545E967E53C
+DBDDB8478E69063FBB891566BAF88B7660A4405B16834761F041CCF7650AF955
+F9E853AA9F5F4382E1FE7D0C5BB4023818A2383F91249D48CE021250EC9EEB1D
+2835E18FB73026250B32A8849067D5E2258797C917F998F2D4121D96560C5FB5
+B5D3471216639A8671B6DFAC5E3554EC36D9A72518525A795590C74DD70DA3A7
+78BFC43E51D6F2BA52F17D4DD00D389D3983EC54912AFF73684A8A7E345537B7
+E62361C04A47859DA084BC72EA53512DC54132EB2EE671793603015652EAFDE3
+41C4B6B679BD60AEC5153EA0D2200CB1D097DAD770F5F31E6FC475A225995277
+B867B731D5401E2D02B85BA85158C80FF7E2BBCC42B98AC867E67D25DB656072
+55A0D32AB7AA483A5A9686CEA4E2B3031D90D84DB3E2DEE7706C91BA81CB8DAA
+700E5F61E07D6998C9552C81B66FD10A10033D49EF3BCB0FF22ED0A3737523C9
+8F851C61C4BF8A213BF6EC70C956AE48B5BD276CC0437C72BF6515B10739919A
+F00F6ADD2798CB211668842349171A5AEB0664D2C44397E55A4A9EBDF54A3EF4
+FBBCDAD9DAEF4B0CAEF7112FA828F2F8D9F633D37E5516AB5ECEA87342EF8DC4
+3A50548490F5BC9A8A1F98AC7AEAD9D913BFA10CA86D73AEB5BACC1FEEFDCC15
+B3655522CCA2C772E902FAB2A6FC153597D52763EB44AB7489FF061F7F58E8F2
+AEAAF4D17F36CBFC00D3C653F335D14240C87DB4339DA9D30A5BD1F502BC9013
+461B9DB2FBEEC01BB18990439A0E9CA6576BC9CF6B1A3DB9386C4A5D4AA6A5DC
+CFA45FB75F22E10ECB72565DB441A194902C91427B4F676E531C661F7A2C3C85
+CD534D1C89B6779B2EDC8E44667B992C20C70B663BFBF680A6CF4383EB7CA26C
+4D1F06B5EF4025BBE65795F1EDB5CCB97050872D6C07BC2974F905ACDB7A765F
+291365D6C8152153E7F017A25FB4476C60FD9EAF9A121633DBEAC32F62850223
+D6418566AB350F90F4B35F19598478F76B63E347D4C61E203D4DB8ECB9889181
+C387F4B663A502C638761D2782BB96EAC81A0108D7BD6938F67FEBB69218D115
+D8E89CFABCE15C6ACC7FEB983332A51A6A73CF4E341574F366713D7FB29956D9
+9BF238A87483D37E526A2EA2F101EDD34E34CB92730DCA7235AA0027189BE405
+2DAB4AA021A30C28B26C50808E1E965C02F6212EC7C72F5683339425A7739380
+A422E6191ED8453AF0CAAA424AE44DFA7CC5C2F6EAA8D73A5101D8E9517DBCFB
+2858D0E8ECB7DC430EF23A9E4428CB7DED8D035D6050251AC101A2D0E884721E
+2F21E573F948048BB8FF888911C508CC198BD750083B339500C426AFCD5634A6
+AAAC1C7E91249667B231BBFC64B4317192FE07FE9DA0DDB5E517D097AAE46577
+9555F29D45C67CDE9812CAD03F220B20519F2FF32DCA56A554D4296FE2D1F3FB
+B209B5270E0E695EA5A0EF1144957CE045881AEB8D05D72CE57F4D34617AED67
+0D3AF0472CD8D60933651626550366E300E72A9C89ACD475C2E2ED9BD44B472D
+9DAFE943F8E02A6DC38E447EED964624C37C3130E48211CA279BB6A0BD59466B
+42F3D89B5746F29E084E22CF58395AF0F29E55113F3A3F2F52CB3A6DF3D026D0
+C81754B8E2E4A15F6943BE9D0087D5166060734FD07C4C57D7C7D90E8C9C1F35
+623CEEE3ABAE75E1A18A1E3B50B7266BD2D8E812CFEB4A46B856885B185640D6
+B9C22179551002B94282F57FB433B7FF157D2F0D240836B72AF4A331668AE5D4
+E6B85415F4E8B9D2F9AF90FAFAA0A3866DF417CA5A31348CF9B41B8F5F4D2F97
+CCF7ADE851B5E2E2F6E319AAF5792EBB9DA2C6AA8B73D889F3CDAA42932CDA7D
+07A7E59183CD89520DDFC36E5D513BFD8AD0886046585F29B4D7F42CC0C27AA7
+53915AB1167D292FE91957E94A57FEE2D49C20C9070ECD736BDEE0F046E60350
+EA539DC298156A4E0D019E7D481FDDA6861E20678516AB80ABEC1F09B126BCB9
+52E8272A06BB6DD87ACFC423B4A4FC9A3DC8DCAEBB807C5F748F1FF8B17B8B88
+F426206BF1B7B7D239D26BC3CF0776C467A98CFBBCA5FB6145D5900137ED19DC
+D002F10704AA680EC753C22E29AAB15712EF22AF73D80820A1EEE953463D4EA3
+81FAF99518D4FD0F862A324FC44C4B9542A92C5B60CC983CC8F647CE5BDB4D6D
+B92B380E0E5F7208A9CD91FA9A469548162C761C1BA05AC9D60B766764D821B6
+B4E17F56CE455F06EA1EE2D38FE47581746C4C5FBA63AEE2B58E877D1A8FA83A
+31C972D53B64E92EEEA147426A92CFBF76FC614119C6E9C6476FD6A069C803BF
+E949FBE50B5AB1F1463F9747E8D353F7BBD991C4F90F920BC9407D8E24720293
+846D052214E60390C3CB926D38C83AF697425D80C2B4FC4706615B905516B733
+46ACA325CEA68FB21B2D17CF0B68BA4DF249368625CF83441EDBF2B86C957C1E
+44CD722BD2537CE84FBA07EC7AE15C840041B9F7F3040072E6084CD55B301C08
+A64A53BD4D3DC30DCAC6C152F316ABC59B8EE978793EBD568849DCC2A75A495A
+BC83470D503F8E389F54B4A4A31624E83C601B43AC1E52CB811FAA7CA6B644A5
+1AE0BFD4FC774C9C9DFC2769ABFA9C83F900BE2DD4010416053A1D4874E6ECF4
+D86E44B4CAB15D53E5630C144B0C15B58DAAD785BA298B1893D1B09BA5D40344
+6678FD2D17FF6674433C976D6DAC659175CED26139967C9B2B9CFFD78FC2570A
+E5142141C2888DBF2DC8503F9137CE7CB21A1EBC2D65BF33FCEFBC85C9CB736E
+24E8595CE934AB032CC70BD6A3B0F3BDBFBBE185512FDB7BE3D4A6620478453E
+75D044BF770B44C9741E31985E6DAF5A318D7BED12B02A4BCFE60D25EF12843D
+EFC9BAE2A3F2EFAD66D7858E83EB46BB09D2FF8AE9C43844A7001C86ED97AF51
+C511E3A89A1BE349FF5215D1A57843EF51456B9838133846F19BE79AAA5C1AB0
+5F400E5E8E7B0BF96EFCA3B8F0894BE589F2C9FB6C97BD16D38F0A237CD4F034
+099C41F85C7E2C7BEC8E02C4F327306A53B4B48B26A8926670CEEF96F6DF2281
+7C2DAD99EF8B81BBB777227C2475AE7400DC393D9C0445E925DB1E955950F7AE
+53E9AC4306794239346A419F7B5DF4168382EF5956B81F83BD4BB7635B3BCC84
+7D84D05AEDC02D14675D777CD19B08124001A4F4EA96990D96000C082A12F00F
+7FEF793A7FA69D56D3A38D012168C5458B667190AFE80E02C816CAFF0A71953C
+D80B085CD286027E2FDBB05452AA762FD7C813B2E19A79C74190E04E746C4933
+CE1E300CAF5DD53B08110509BDA404EF07FA1BC5224BF1205DE8E0C3276A13DD
+866675103B960C5F36644F96B4FAC16F5D6E91F74629B318FCCC8E8CB13EB76B
+B0B7B90718D913A52A04732EA3667674994A325A7973C601A7DDD50F658E0826
+ACB8E53D4914B0274AED98D7BC3B2B7F9D48A7ECC2F8ABEE05CF2C4F2B90360B
+B7DF779EAF3E103D1D83EDBE32DDA873768D8C37DC10A5354A94B4153049AD64
+FF3E0BB51AB91D7C0B4134D8731CD0270DAAF19BED9EAD800A14B65B68EEE89B
+40DD624111670DDC7C030DEFE0D1B96420E249332445C155BA96231C88E70643
+D526BDF3CA1E05FEE72CE2B881CFC01ED780C10E89F0828AD55FE29043BC56E8
+2750A6DD15AADD54492F6092618F4CC6A31766B17FC60766D18C307EFC9BB787
+39047DAD6B38419EFBA46B4E2C932F97451FE78AD75FA90DE409FC6DD46585D2
+1941F5ED47A8FBAEF5A917A240959E8D9F9917DEA3247D9CAE6BF7A88DB4C4A4
+F9F5A6DCE542420A032FF3392FE0F3357B51F884D6181583A554F75B1DF192E9
+253CC828FF06B0D992D5316435980B044BB191508C7C45CD90F797F88856424B
+14A5707459C50EDCF3E3D8D1667AAA83015405354CE744C66D9A5728F29E0085
+6DBF740717FA0799E3BCC4ED7841588B496A5E549B953A7FD288B4A045DB611E
+E3B2F35963FF18ACCB1C968BEEA2CBF52B3999AAF89A05320BB2E97F52CFE06B
+9F10E3A79865A3059A957F97972D80ADF678A36E2B586C101FC6AFA4D137C13E
+EE7102C9B8EF78CB057F8B7476F146E8FF5C897FD5503DD198128CFF7B5FB339
+FAD0AF0EA967F77B07B367A4AC9F668F8BED99B98E87FAC750EE045602D76C3F
+289FC9D97694C96AAC0AD1BD3FA94DF2CBCEA24B40F47B9B59E54EECEE7AC4C3
+A3F5D19160E4C1EA830D57FBE10D8D46AC5CA0260F22FAA45236F0F542BEA9C5
+5A88F878F68B36114E0573900C65E305462B22A3429A17C7A567694414DDDA46
+5F30542B8FD4F00F6C295B2E8D3A986B953D96822DB2ECD48E8BB1763434E652
+152EF3717F5E7FA10FF0B01D9F64E22C5DBD7254629658887BACEC0ABDE972EE
+67299FB84A05B3EFE22B6976DB4CCA384232DDAE38C31623A4E39EA2E82C1EA3
+BBB68F1A7DBF405DEC37CB7203A895C36A44BD2D63F45B3888AF91D37B510A59
+3C921BB44DA620892AD87B665F69F6FA510B071ECC403CB2BE2F54B3969C9E88
+713244BC97C1466DA8216DA7600C221E7E7EF5C789D2E12B36422023A03E11BF
+2790FD6062FE6BF62F5010A92F0A104B76E255A0975E04F6F20F760881BDA7F5
+D834D1D328B6EC19AA7D5E5678A84C74C82553DBE8BB5765E84F5A8789032143
+6020940B4B8D45FC3433D356E28C25F42D0C19F911213D85951B2B00D01B77BB
+A4C72E964F9D95422BEDE582A05CD52E03D28A996E6CC8FCD910CBAB728073F9
+F9FAEED5470FFA55930447C5BA816F826F983D53EC9941EC8364B3060FD74C95
+26D4F5CA753B574FD2FA4D1D333785241D8741B79E628BC852FDC35478C5ED9A
+C1BE88C5EE7302816E65C12B58EA16FEDD4672EB3E24B6EDAD5DCE263BA8A970
+350B651E5A9F3C281D85BC3F44EADD0D93402E36489BA5185E7D388974B0B700
+70575188BB610CCA20F081E2CBDA13DCC6F72567962ADB342E02C1E763B673C5
+F7384E24C6E1730A3A790D690A2103AEF88E0C1D4480DC9B25E5C8C9E1919C95
+F83320179B4C7C4A26D559BFB24D7D596FB73758C9990C451E77FCDDD17763B8
+9C30A9534E3CB6680D3D419D4B70B0B0A0D160FCCDE169714E373F65B7144CC2
+DB9A44E041211E1517D3148E65A2486CBE5E74E625261CCF65392FB4F3091473
+F9E8DF327D59A58558E5C9F7190DB577D5DC658F5E36258291C708B3D224653D
+064BB6079F91293FC733710893AD1C96169B30CBFE4E9D52E7EFAE4AFEE68FEF
+1AFD5E7E9DFCE8DE332B0FDC0514F9B3090AC85BBFB527FD8034DD33E9576325
+A8769AE09AF1BA792447DDD932B98FC9486B39E0B04DDB3EFB7A30DA0940B33E
+E27490E0E841E87B1C90E5248A91742ABEDC10F43A8AF0F9C5B4A4930B1AADAF
+01874B9AC3B8D0DBECCDA6CD7E96471FAA15CB7F8A599C5746327CE392224C3C
+40BD60AF97BCA6FF6FCAB2FEA114D7300B89E91C3BC92D5B3E2C83BB37992D8C
+72F661EFD0AA034C738C019DFB79BF40651A1A34BC1EB9F5AAF58F8B3DA32645
+24AFF8636486F08BC21533B5FF7391B0679A78DFDCB03DAF6BB7475A1D51DAC1
+EE4BE9B986655D1FDB6936445EF99B58B303FE79F11275EEA96A9F6808EA8775
+D873D1052FAC93769789C700F20EB2ED6D15676F6E563A769CA9298E463FC311
+83281483B1C953370D196727A6A0E66D32D9480AB1B6DCA77868C1A2D5DB6483
+5F31EB6B18EEFEF1CDC31533E69B0AFC6B30FC9912DC89BAAEEADC30BE14F448
+1A6B70D36A5D9B01799BEEA686066114910842D022EB464A9A1E8F0A5628BA69
+AA9A1925CCADD44703BC67A89F3B48E4680726DC4360274185CF3C8AB747A8FC
+4B928AD62B092EFE48B01E33ED756DB696171FDB775396BBA138E056F71EDAE3
+7A1E4CC272B8418114B0E81DE0BC43DB3C133167344488820A92DF10FFA26FB9
+65FCA2C87D302E956DE6B4FE145145440C83DB43A68F8B29A592B127BDF49063
+B7F11E155CD4CAE305525BEA56B7C412A6260426407BD892A3F2B444AC3421E6
+FB6E6425EB5C3053C5644666B80405530FA0012B54557327C98E0F4F064099A6
+4ACAAFC1870359C1B6FBE7606BB8A26026AE20C212210449905E628AF1B20490
+8CE908B7EF3E3DB551C85AEB0F7FEB6A8D215B97998E5DD9C7CCFB2A9402B8B6
+1770D4023777D4B45A73F471355353412C51D4CE71FAD1E0AFBD87B5F86307F3
+10D0B94F1194EFFB64AD5DA54A4200490F609CA8B912E149F8217ABB1E9EBB3B
+C4470E7365CF5E1E761AA1945044B225BD53D142F6588C50E0644740F7DD55E4
+8F73201E5354A8BC78339211AFC4935F44701FBA043AAC4BA4698E9D7700029A
+C79F992F62627C91EB855F64C4B251718FDA71EDAF082A0C7B00550949D617A0
+7071FB14F05620CCF2180941341D8E60FC88823438FD728A4042AFA8B853107F
+852F631518B61B234565291B5D5B89DA818DEE3AE3B68A2869DFA63255CC882C
+3B16BBA08FCE3632E57FF7A07F857A1F0FDCADAB39D77960BD827CCC8661A997
+648BF5BEBC0FD2286C2A112A8DEB9CCB6330A049170D5D68EEEEA011D3EF3EBD
+855236B9380087CBBB6BE24191F728B7EAC5B50F7A547AA0989B7C7D3437DBCE
+1669341264E290646F2C8C5A3ACAAC7CB63DC692FAAE13E9B40E8BD39FE16A0C
+1660CE66872D061056C04DDDC265C024BEF8B7E3C3AEE76FE5C9702002C28BE0
+B180295EE00E567FA2E5CD1638226D24A7C732E1BD8103B476EF5702768689C7
+D4FCD47F2AB94A2B1FBAE6ABF87B09E7713C773FB65CA83F7318035B332B9F99
+24A2C8897527021321D003AAD7C273E4BFA2710B9BB26C2CFD3D9A5D7ED1096C
+552D50028AE2476FCD6D12A5D0A897521313ED1A3A8456A70C16EAA50A3E6733
+6DC89FEC56AB54A579EF264377A103939D5EE00A90B4F2206D0023AF9491FBE0
+800C6540FC945199E20E945F46CEEA2E885F6800B9DF042BCEF4291A4B1A62C8
+6A7ACFF872B25FA3AE69E0093F3D0FF13A3313430C06F1AF94D500431566F659
+E8C859A5F80F5BD2E85C8E32603D3745628E8FE6FBC50FA68F9C3811A2BEFEA4
+5852CAE2AE5AAD3230ED050593BAD0A9581EB7B327C6916B8FC348F4C23E6FA2
+00FA28AAACCB3091C1D83F7BB88672A53A2EA3B8C7C24374E400C57F0F01019F
+E52D5C47F389D4C9AF126F4080F9AB8D1C8F470932BBECCEC72A9796F6E965A4
+82057DDB43D68298A00880D4C2E2496F26F015FD83C5549215753459310339B7
+6B2961EEEE74DA31FEC8E2BDDA42D4080A32372AC372524BDDA580EF6634ACE3
+128C69D04D890DCA337212B109585C665AA83EFE47D5BABC2627A86EAD11BF7D
+744176652C7F9497785A7A06A994ED8414BBE8B26E74D48CB83FA24AAFBDD507
+84A90195EA3D77BCE8C2BEDDD1DC52E8164DF15D65B916EBDF3A8A76849653DF
+AE3CAF9561AF3B705F75B9E5DFD6758DB65A2FD54683759912E0D0035CFBCD86
+5C7A69BCDFE8ECE3C5F1C047BDAC4B2DAF36832BB25487385C650FC3C30A0894
+2CEB8973FA2E6C749D88789C550C32B2230FB689F0DB5E9F5E2A8133F6477232
+AD8B11FBDB46362C03A2967EC7E875CC0D0C94437517736307F4B8887FD275E2
+E346171058EC303E62B84EA810FCEBB2905DC186B95AFC6AD4127429E71BFC7B
+79E612C18501DFE5AC0E7921BF1C6BD483FD867BC2938609EE52C0271A7ED1FD
+EFEA3CC6F0872C28108F7EBBF5BF770C0BA6C712275E1239FA44736247CBAAD5
+B856D7BD6E5E186AC4C3913293D99529B8F9EAC85FE548406DE5D90A058F1106
+F98799495DBB3A05C04BD649053FD29380E217942F71F70C30735423F6F13DC7
+F5015DA9043FA42C173D55CAF2F4419B78FF473EA32F1D9CBF39A8FE95BCC238
+18762B74BB01E3C1A16BA03D8ACAF3911F4540B0380C71A587A3935D91E28F1A
+726585BD5B7DBE7EDFA7AEF1C229A6B641DE844681E630F99516B2597A017D31
+D37090CE6BB8078645068614985C5B2F0BABADF22F895E198BCC15CE58596999
+BAD4143D84939903284508FAB20269A4CEF627F5498EE70D41B0F123880B680F
+B004DDC927339C58FA023E7859D68CDF0BDC80C682B27F74034B1504F242B6F8
+1920A9ED6566B7B423242B4CC75114C0128EBF99E5609DA559E0BC5463506624
+A7833CD5A834C6C082D797940090B12CAD35B2AAE796B0550FD7BCCF142DF000
+14433A1D8E062D5207D5E38FC52F40EEB801924DC4B86318921169C7F112991F
+DA63181543D42A274390AF57791BD9AB85DE31338F5131E0F8E914B126EF5B2B
+FEDF4CEFCB3FAB423EE2021A2D8761ACD1B59B8A9BB23D4218042307E484EFC0
+157825F1BD6E1D523CE620E159D1A91B4EF0DBFAC9967E6C64960E96045A86A6
+B2AFCF21664A704661344F2B8EDE6F118DA3489F03F9BA2DF35DE06DC843B544
+6A9665CD685F3EA8125501337D3D039A7A20A69945319C2F6F3FC4F44DA78EAA
+73C8BD090AA8C9D2AE858A1B9980375150B6AEB708E365D92A33CFB8F642626A
+AF74411CE1DFA7A9B62EF1CD2DAC4E5575DAE436A65A71B1418AC11E31ABD7AB
+F79F18CC4063D04D629A1A05A5DAB4C473CC5665A315BF1B163C9BB372A846BF
+0AA1C997ECD15A231C3BD4FD5EBD0F3EE4BCC573C891636572A75314282E4770
+738C4CD4E71230409EA873F16CF1D79BF8B9D6A91FC2B10112958F65E77DAD5A
+6698A5F4EAA1305634F6B5F4FCFB4ED01074CCFE4A716660BFAACF18B72289E1
+2A17630A94699E2A1BD960438C77F7F10BA883CB2046E89C63D99A32A2457E35
+182EB3D5EB81841AE33E7203015795FA97DCB17BB6C4BE1C39B7DAE297CD9ED4
+A59FE7A1E816B04DAD86E4A3D0F951A9357BEC5619407EEF700397636C1228B9
+B2F296281350C23CEE1D869C4B895055CA53823F4F7EDDA13852C352BE7DCD8F
+F3A61799D445E7D7D297D4CBAD7F8FE89BCABE2D909D8880D76CE3FAA6B253C0
+F50F4755B4CB54F6664369DCBA5155F6786FFBB998359BDA06D7C9347A8F04A5
+7DC778A5E2BF9E46CBE6493F71BA1590EFF98DA779BC4F16A0E3C65300075109
+EE0D26E453BD84D8DB29F008BA36A2EF07B89FEF779E5A5B5853AA7B9B772ADE
+E9B6A00B0AC7F31A39DEF7A9D6454D0F598F0BF61BA6E5F2E03B2F14E95B0822
+D8FD612178B079E347C4A450E35876E64BAAAA1DFCC4C9FF1C6FCAB22732A826
+C8C1B277C4778AF880731746DEB1D6B13BEC1C0302469AA73DB6FA641CA5E18C
+E69694439509E39668443555D82D48982CDBF1CDF03816478F4DD0385F607B2E
+5DCBE14CD2862B98D50272A90500929A29FC28C5082714DC267DAE4473D7364C
+E7811D0AF5DDE878E238A3AD7D5443B4F00F21ED24500CEBD0B151B6F0BA2438
+370EF5A8CE6E7831AA484B4D1B5B7A81EC2EA6097583C0BD5A7EEA6053E92356
+A40D995C1D5645DA2A09820F481FA138F53833A66AE99895A9742DC5470C03C1
+3D173F63839B6621E7C31A5EAE998A8DC48AABE64E88C4E9B2508B4F0E99CD92
+529CE2D03F2F81F93AA3B9AF63A2DDD311FAA11FBF9BE796C32DDDBAAB62BE9C
+28EE2F7DD5E19A37F5827E75EF663BCA362A7EEBE5A0EA4A9E439E2D984C6D9C
+91064251634647EE73B9B64FF9D4582CFB4CF50A28D45B4048131FD9F44E3343
+0B33961F25DC7A3699CFE9C6D0B53FED7CDA1D360824AD00E38C1523120A5DE2
+8F1147C45F72B4DF23C28A17550430AC498252B325F677CE0A5FAA5F161F5DC1
+89A0BF14074AB50827E4BF106FBC2DD43B1FEBBE54E3957E1D7061C174BE9377
+1F6BBD30784F58DA5D2B3FBD83183E2B068CB76FE7C2418EEB63B7E32E3434BE
+5A5C4AD422D2E318279A852A3342621E4B5144714B8DBC3884F71696B0F0D077
+769D265281874C1C8FE0735534968B9FDF4BBAD71EAE9CED26F3CE9ABE551DA5
+ABE186B6714528F6A0A4778B1B40BC5E002629EB57DCA82BE5B78F0C62C0C348
+6D0ACF7CCE2C86F7E95C001887FCEE5705717C0091725C749D0925F25DA3ED5A
+007EA1B516141490873FE59D98D7F675A1CE88677A4D60A4935BFF205976E3A2
+4AB183DC8CE6BA6EEFDAC1A9CF8AFB8F1D7C149649233A0B3B1029BFC68FC0BB
+6DDB38A35BB57C11213542C9FEF471B5E534316D4758279135435F94956D6F96
+2A3FC58287046368CDD9A702027BC1EECA0ED3E9A193B5B5884520EEE6EBD6C1
+831289A3D59F528C571BA2BC4CF48961747BC5DAE646F4FAF597992149A836D3
+2729D399F25BD0797C2AC6EB1AE699B32A33F0473069E93939A764B0A4EE04CF
+179E3D99F05FAFB15536C12FBAC1AEA67BFA14066CB75F5E31D49D98D58C3093
+C305082867C632753BE5934925D668589D7228E3264D28347014DAEFBB9B1525
+26B812D07A3A26C3A3743EAB6D3BEF4C95CA337D9EE2EFAB61B3DB4ADED6F8E6
+E3F2B5DEAA52520859106369FABB1296A8F0EE110947AC99CF23759F114D0C39
+1FC7207B0558CBEFB9728C76DA4E415851D843C568DD513ABB62827EBF4549E8
+6CDAD8F188EB40A2DD4F9A2F65907A40B6FA144CDE6783DF345707C81AAD30FA
+9DCE1EBF7546127868731D78E42C9ED2EE38F457D8F46314527B547EDD5B7599
+B41DBE7B2EA465605A77D28C64450D2A5FB03BB394F6B4F64B19BD6912EF2F3E
+1C741F20850731AFC9A0522261989BDBDEFF4E8900D7C95772EF37EF9498EBD9
+019E8727D57B7EA83C91030D7E1AC11579525763417730CECABDA5E7DB8612E8
+A52CEA8B3DB8C6B8523FBD6D66D33B3ABE53B079F609315FC8353C21CD4039FB
+31CF443F5DC600CAD9A5E71666A0C75A65F0D419A0C15CF7229C291E7FE165A6
+5EE33E97D2A634D6C032F79BCE3C2805BD9B4D5C1AC257FF84D2BAB0FD3AA650
+5CD776C77E31A42595E05861A21EB576B8D011DA7A9CD6BE2C936127A2A53080
+0A4985B2993E887D1A102ABFF6D8256141C609A7C1EC0CE0117F552658D447D0
+20F22F401E828DDC2F021AB0746F9725B1D5830E54A87CDA8B587D34D3B29D4F
+1A423821CE6869EEFC900E23098B8FA08C859B1068BFB0782E41C966167A1354
+87F9D93588BC44957D374DD379C681FC1176804ECFD862E17A7327CEF06F8AE1
+F9F9D1925081EC834F796046453C9EB521C8B1C698D84EB79C028A299AC1A2F7
+B100CD9A47E543D607556CBE5A5FF7AACAB7940B72232D8EF35EA7446747CC09
+015A94D27EBB6EAC17D8CA55CF38E7666A079B26DF6A0BE875A1F7842ACF8373
+61566F41BC0C1299CF3718AE15E134891C8558A53524C8F5DB8059F9D8FF1A8D
+D82E318B7150643A06D2C80774553D4C2304A4B3AEC55FD925E786F3A66225EB
+3604AF69E905667B1758CD3389EC8885C20BB52DE35D8C1B278F2EB1303E788F
+21A511C1454F87837A881C9792B45C40D11A13B7098BD0B6F64CF5E3FDAC55D2
+A714F7640D6B06B478DECF45AFD52889B9DEF8382DCF1EE772E9CB017184658A
+4E7A7453DB9AF243913A16F0C070C4B18D5BFA472910904DB558FCA985B7A736
+9BE39DC1B3243D4590382F831FE37D18018810B3CC1F9B1C423A80EB89D27AAF
+CD36773E0685D37CBDD85A21593330984D922ACB83382D4BD9C6A8E211150546
+45FD89E96BF623167F5810E647FD7DCEC31DF1EE3E56B7480AE7C89FEEDF7437
+31605633742CF0B3CEA5C9ABCAAC619595710550CBEC15DEBD4C8E856E4D67CE
+61958B5C07E803DF29129DB3E22CB7B44ECC460902FE007AE0EB00BD40F82019
+A49EABAF85C7E924FF5E86F4213FB27D13D7C8F42A3ACCAE2B128B7BB80A25DC
+8D92A3BD5A141972AEF7109C9195BD575C11B09D0F0331588DF55D0F5D60A3CE
+02BFCF3CE21541359B661E382013B4AF90FA5DCD62A89957AD8F5360DE680AE9
+5DA8AAE4A6F8B014A728C20B0AC74AC27BED3ACC7FCDB1C68B8F8DF366E9A36E
+DD93A05D8492B9A8B0FB802FE1A565196CA99FA13414D31C6FB973646EEE0AB5
+2DABA1E971CECE0E73E91564ACA84D820F04A1B9BB26DA23A6C9C72BE9080BCE
+BC6215C814B0DD42560A4698926E1D690DED244ECE4C6FBA0EB382768430CEE3
+C177DF89DCA9366A9B7CA0E20AAFA9AF212B7276F59162B8C17E320FB90305BD
+5170B906C1ED3919B05B1F5A53A568A6386B58BCE199866661CBE1A0987B7DD8
+2324A14ED46E8188F1F0923AAF31262E810258AEA306D5D1F69BE45838BB628F
+76F06EBC9C1E6AC7D79751B9CF754B357F3BE729B4E2DF79B8CDAAC20B9025A8
+028B9BD70AC9F99703BB98F10C1078120A61EB88F9D5C28A18525BEA63320AFC
+9E47683FCE5D25FCCAE1DE61B8FC1A07410930A9C727FE0508E5BA44E88AFEF6
+EEC310AAD6108D35474A6630E1C46DD554C863037C5AD8A30A0CB5A4BC253761
+73ABAA059099A509332E7AE9322E238917BEE64568F25D8D86A7E701DB05C26D
+23B198F113E5D5DA82B73D761039EA0D875882A81C7D01153C2BB5199E734A4C
+6E1ED3792206DC26E3E5B9F07DD32EDBCC5858802FE37AF59C1389B3F1584906
+3E6B654BAF5F2ECF1B46CFB191A71A474D2FF0079C04984101F28D14B9E02598
+051C970501305764635FBB7B430183A6DBD1148C44F4A72E038B91279644CDC9
+6FE5F66685DF70965070F07B2A6FDB9513A3F043C6B4A2C994938ACFB5FE28E9
+EFB9C29764D389A24AB87AB2F3DEEC12B5366709379DF99701B806F55C9C1363
+F4E15C65E9FFFF0E34B41851D55E64617DAC2A4A1995BFDE0B8A6731A7D6FA1B
+A8E8454B75550D126DAB2504427DC6271E7C28E1819F82FB8F1E8187C263E1D5
+D1D0B5FFC753DFFE8E89AFDC8877EC86B065F6E0DA28C0B1AB4641B6E7489DDC
+510E61285FB5F86D41EBB00E910A4366AC1032D6C3A25AE9475F9D3E471EA2C4
+CFC8AF583E8FD32A343DB232D62E4B74B1324D954898E62E0F78BC9242B6A987
+8CC59BC0D782B43D1413ECF446E96A3F01D2417B8824045B88C5088BA527654C
+B91FE8DCA8A3F496183F09DF6DBD82F838544FF3F0629017D1C66F17F95E9354
+74262F963D7628C34B8C611EFD8562E2EF4CC046F3A76F947175DD5BA4512571
+554C97FF31FBDA97D43878C1F25FE8B7FF39072FC5AED9D4915D422F2123EBCC
+5166D067E22BD4DFEC3B6E900DF26360BCED7B19C93E9A2F8840F8D2AEC81319
+5A89E68D2A058DFF7739A26EA3AC51ABC4EC64E8FE3D048904EA84F8157250A5
+2E15EE3DFFF6F7EB09B7E9F5588F3972FB237E9D2C9B21313B395C5BEF3DC9F6
+1A1A6427A8B3073DE01BC97BAB5E4EECF579ABA2BC1C5CFA1595D84644C1E878
+5F43039E33720474549DA92981179E57A5F1863E5E4AEE339B1D17BEA23F4179
+BB99C81D0F0C03C7570AF9D1A449C429A1CB1CEF96593B9A96DADB85EF029054
+6A447C0C7248B93CC89279777A7F13FA1DFDC2AA8D15DACF142564F775918344
+06EE270BB9C547A8B42F39A4935E10F1A8EA693886E260AE4892183939A74856
+6350ED2C30CB64D6D8C93C1FB50FC422531BB8EAF0D14035C68A5E57D8B63540
+E2BA0FA8F85181C14509D681F26BFB2C3B743FE3BCA00815451316A048921FFE
+3D1D9A3A3965EFAC0674D04D2277AD29872ABFEA2DCACCF96CB82EDC82EC69B0
+801B6978E72C99952C47C550FBB02D8E94207DD447F49FE64A9F5E901E0E468F
+4577E7D4D60B27E5759EF294AB176792134256FC15EEF6BC7AC4C3BCFD6785D2
+C1A0EFB848D460B6514016CDF5E8B71448B4DDE0D284A3BCD092FCA2CD74A775
+323E459AC86A80B28095FB9BC6DA2BDA3FEDAACC0200FE06C5F06A72316B081B
+912204EEF94EF4058A5EC1A03C8D93FC2538C7D10F21F251C3AB960FCA92CD6E
+AF30FFD61A99BA9A71B1C5C3CAD50DB5030779FCB1A08EC63E618D37C268C6BB
+20D3A28842D0691BC06A3AB8EEED418349484EC7A59D138896A25B96C28809C9
+0EBCC502554C43D32EF03B0FFBB60E4FB8DF595F9ED1B22CAB3E64A00E1DD989
+D99FF3D9F4FA909160953B21DEFB2304F1BA6670C0B4682BA3DAFC72D6D099B5
+E99EA8FE6C0EBDC55538BA3A640A6629B8FD2176614F0DA0F18F38D9C45277DA
+6740C92A79DF260F7BAC06624A0A234E9469325651B78EB1225E80B16E0BD886
+F51AF93935A7C3A89D53C843175D5A1F203711A6CA3B274A7C701CD0C220C2E9
+97269E4303F7A0A0BDD6152853F3AF6706A2131E03049CDBA341AE64B471096E
+D9F137DF915F647433457E21039254ADD4AB7151D10DAAF847F7C2F944E37109
+6A96944FD625921097D50747CB3FF83F63D20AFF8DB8E41A09291C1EC88D203D
+3E14E4399F99FA2418ED6123B4F10AB77C5BF70865F724154DE8C865AE961311
+339384697B5EF13A2AB683C61BE6A1DBD398D658E3AAD218D7215A54C9EBC6CB
+3B871F31B92C54DD21C949D92156F5CCEDA66B011B897E6FC35280E265EE85CB
+1F4C2A9986D66EB0DF6F7964746660AA9C33ADA1EC442F58EA0395F191E4D5CB
+1AC70CA61217ED3CDE65FE557B65609D2341A285A0A4839DE7B18D0FBB613A01
+EA65695AF6670F966383AA9F7CE593E1F3F5D6166EB9428BAAA28A23C97E9A0D
+F94EB513F606EE7820624A30E8F649FBD0575B9154DF540B552B468B2EA04AEF
+F6988F7738E03B7874B6D3F559C27450986317C6AA14FDAFBCC02ABC67654294
+00DD505D2F43ECED8B66CBDFFAD7F2B6BC7A6274A2357B8788C5AB7247C4B1B9
+CA86A93FDE5929F55591356DF98D8639D5377F95E905C9405D7B3FDB6AB0B544
+AC1D25EE715175AB14D3A744FC162B17D77AB78CEA2D77D40F8C51F3D81DD7D7
+C739085563C4AE733983955162C3BC0FFE1786895DAD7D74B8182D24B0EC5A3F
+1BE40E4AA7D1B6AC054521E4866C33295DB285B46E60EDFF6FA713DE9B898B2B
+77F28006E0B0CF79735C5DC43DFA7CD12CF97F5088C3E1B6D03FE6E0C6FA2117
+D04D3461B5BE775E42459EF5B575D103CE04C81BFDAB13DF159B57E185CE3820
+826237956BD1DB20DC1050C7B5FE5952C5969C23287133C916FD1F7C118144F2
+245C3DFDAAE1F894A316E509DDF8791ABD3184308979425D8F2111FED08AA1A6
+B04DCF4C55C97A6D88BE68B894A320C4C076F6FFE08061D5A3C948BABF51A203
+021A9A44AD02FB503721B2A1774DD40BCC58703589BB5BB12F61ACC2C2436787
+7C6F29B020E6DDE82A63B151CAF36614ABB824AE419D7CB40BF13EE125E79AF7
+02341AAE559D60B7C4A04E6670BC98BD77C42D64EDFE41A627152A7DD2003505
+DE4C76D7B8C81A3026E997E813DFF174DE463D25BD6E0B16AA31925ADD94C833
+D97840E6769F89A78C17ACEE219A53E43178C0DE73E2E788ABEE172D57263E82
+F3D410B0C8379CFCB8C8B9221112FD0105D71BDF413E9BFDCD9663D25EFABC20
+9F08D3CF23F02E5A5A59DEC8CA302DC74EC2EB8E0BFCEF3ED01F780BC0014EAD
+B19082BE83A0950764B2FBE500ADD51CADFE1CE5841B7B50ADF05395066BEC82
+ADD6BC011F6A6307212D32B34E6B18C777B80E69B1E080A0CD32BEC890506FFB
+3EC595E5CA6998459702E6D63583D2C19BD5014BB715322469B59BC9CB4401B9
+9D3CBB92E68702A96130575FEFADF62F4D5AD8C72A46DDAD10095F11559DC2A5
+7A959BD8FF401A02178431C47EF1A7AB7C01ABFE023D54E3AB9B5F70337A4EDE
+49DCE9AEC1387D4438F6EC6F0C8A7951404730385BE0F063662732EBC81000F1
+5DBBFA0C9FB29D09AB4A5A1B88DE884F26B43509B1A5112B010953AD98BC9BB1
+880523106EAD24FCD78EEE1211AB56AD9EC5B78A45CA152EC72D
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -356,25 +742,41 @@ BC208247E5B7912729
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
+{restore}if
%%EndFont
%%BeginFont: CMSLTT10
-%!PS-AdobeFont-1.1: CMSLTT10 1.0
-%%CreationDate: 1991 Aug 20 16:41:43
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+%!PS-AdobeFont-1.0: CMSLTT10 003.002
+%%Title: CMSLTT10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMSLTT10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMSLTT10 known{/CMSLTT10 findfont dup/UniqueID known{dup
+/UniqueID get 5000800 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMSLTT10 def
+/FontBBox {-20 -233 617 696 }readonly def
+/UniqueID 5000800 def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMSLTT10.) readonly def
/FullName (CMSLTT10) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle -9.46 def
/isFixedPitch true def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
end readonly def
-/FontName /CMSLTT10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 49 /one put
@@ -398,137 +800,299 @@ dup 119 /w put
dup 120 /x put
dup 121 /y put
readonly def
-/FontBBox{-20 -233 617 696}readonly def
currentdict end
currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA0528A405DF15F03DB1C3DA8B850431F8
-0E5F73DAC973450D1ED0530313057E971FC7E7CA88E61DA6DB9A5CD61F0F76CB
-4DE9105D0627B8DDF51A655098229920CF429CDAFC3F7788C95E7AB30E84F840
-8CED52E98DB4CFF161D2E62B0D28CB8B0AC82E7A8D2C007953BAFB3056D66079
-8064956E257D31C13509FB81A250D9E875C77A4E91CC49E9FB3C0718B2F691D4
-B4A64F351F4DD68133DED7629B0D96E5124584A16FD2AC7A3EB244A934FF059F
-ED7297B0505F3C2994AD66A3CA5D2728B034DE94B64A8AFAF341601BD4DB5858
-C9950A8BB9C598B8960609F48116ABA8C007190AF0ED335EB5BF61BA6871FA5F
-EAB5A26AEB5C7C352EB80799CEB983F19EEFA801093F62086AADD0B80BB6580F
-2CF61B1390FA56DFA1A0B61C58DEF96BA767A8A37EA44730783C600706606C60
-4EE74EA99B7C0F8E2525C8847F3D31907C3C483EFA98F6C416B6B2C343DE6370
-52FAE423008D086A76A1FFB327CC7FD84B1C66B203A4F41582F4599A82F8362D
-38108452EACCC937FFC4F3ABBFE3628DF51367DA6BA3F6826FC6522D6AC5E8EA
-00BAD300FFB6DEDAB93237704202BACD030AA824B1E97C0AFE17FCE8C75F4FA0
-B8A74329A6CF1788C7EB34DA7307411E9AD7ED8D6582884456E06E033B4FFE7D
-CD4DD8B06AD01340CCCFBC382C18CA451E4C886B01D082FF8CC5793F4727C3DF
-B52B4F1A242F31D1EB79D1E39A1D4FD13D6C5E2A42AD4B4D1CC4EE7BA0E5F80F
-802E5AB57EA15F4DE44D82AC408AA86D4BF58EF967FBC6497BBC7F017C0598AE
-32CF865DFFF0FC7FF9E6DCE9B5F2F4C7491AC674F46E8E7660452CE0A77C1EE8
-00DE382ABED85350033F8ECB97398E4E0A75D4877A107F6A909D0C76D14F9A96
-8A6CFDE3FD9D79B6FD82693A9F354BD2ECF30C6D99F7AC522F8D6C93EA214F7B
-3D0ED77F042ACDE9414264C0698E86398562E2C640DEBBA0734AB4C3ACE3907D
-CC79E6B2C6C3C3F9B01526E8CD98237D4A9B403FF8CE3132222FA60C196A19BC
-A2393AE6935C0F8B67FC1D1A13507C100403B61A82AB0165B072581059B844EE
-CE34C714DB54843CA29B306D373EA67C2F6842FC3FE75898FB80AE43E689F641
-ACB7715CF595C8ADDF68D8D5DBF99528FC4FAE495ACEAC9E0B61971641EF17A0
-4015E263840C96C1F2ECC22A3368F9E0A31475185420560CBEE9639AB9280831
-69636C32D1F3E397FF45DD97FAB9222771EC4C50F45E8DCE4BB761DA258F936A
-1067924AD9A066E11FA841E0258039BF264DB97EA12311A8AE9428DBD5A0EEAD
-12915888C3BC3E25EF203BA7D30C9D7ECD8A33F72604FB9DF9DEB133671C993F
-DC7628AC78C3E93D3441733E247F4A364C66C78334B1C31FD803FEDC7845EC70
-593FC75B7833792AE449CC2712A3E054148A9EBD8AC6170E14C7284C434CAD61
-FBBE0BD31D7970A6C032BB9A12E164759735B18471D2E9E19735387607ED1E5B
-56CA84F1874F59A6797CD8181B0EC05F42E02F27A9F63542254DE953559CAD95
-9F4987CB5A72A329F4E8D07A23DEFA2C0A9C4CD8AC65E867007CBF7D0309BE28
-9E515728F9495D1B5F3EB89A51AE836937E548CB10DA7B969F7558DA4CB29E45
-813BE23A40849203DAD5C8890394F1EDD90074E63CC0D6CDCE6143A153E79A9C
-7556EA3C9D7CA44368B81DE3B5ECF4791A4E8955ADE6632B22972A5F8B5EC694
-1EEF90BC65E2C91643058C323CD53CC4059CAB8EB5930DE530817C6E4283E53A
-210C7BCD93B4E2EB9A4530932868FF6924106C3A889A9B0DA120949F9D24B2F9
-8B1D9EAD4F1B84CC9CA63E7E3154A6D42A338564B7FAAC6509E08F47A207F933
-6F4A1813D7958F62EBFED3361E6A3D45A2DC552FFEECD0F18E60222219ACEC20
-45285AE5EF96AF299FB42C9F516E6BA7079D20C9739D73972DCFF9FF27FD8D59
-8397137DEA913CCB5A678062F02008D5780F8BE9C7928F7F6CEFD68BCEFAE707
-91903D42A7068C81CFA224FD71380A04959471DBD86E29945D101B4388D3A602
-7C6D4064720146BCB85DB7184C77F01C1D5A0AD5538FADCB48D3B3C39602EEAD
-D7611D55DF777E114E5EBFBFDBBF7C77F311801F40061DC2CBDBA9F26FDD2745
-CC72A296FA4BB1E5CD41BAEDA4BCFCE3F6A21699F0C8349BCD63D9C21F268461
-D8F1264444E9F6FBF93690970E6DFD201E68D6991B21201990FCB84BDE9D7FB6
-4A4E752D97E1CFCEEC9AA82D8B6AF47569D87C2B3372575BF5E84E0ED1F76C9A
-6E6F6343A50F5728796F4EB21CE80020436D604A37608A43D74C1E8989E43473
-4469EB72EDE6B70938B405847455024F33E52134B08A3194F782F5FA47ED0EC1
-BB6CD75BADEFDE8155D1D9B7FA2BBBC56190F00A6CDDAF4A4CC7EEEBC0FE24AA
-7AFE725A4036C72D827D1D9FBBCF98313F2CF1159870F7A111D8C55B97DF77A1
-93D2BF77CF3FA9AD36114D778C7CCA8D1C32DFA37B298ADAA1758772B945A6EF
-90C44A27B6CAC3A3B4A43885E9F6BF14BCBD877AF6B498D0BD6FC1C7AD0C5962
-0A0327A291FF7278694DEE9E55E882D08D162C2297671685F9EA8BDEBB060977
-CF23C27B1036389C992B3FECAEC85C06816E9DC27D37CEB3AF8B1A3FFCA8CE3C
-9AE090A3B8F72B3BFDB2AC87509499FB0C5D07A76A213E0579B9B48269500C37
-2448CE37E0488008B687947345E1A934F79560A4BDF44C1472D18714192F7706
-F71A3A1ED9A6928E6609055B2B1A049F481B37C4442C78A6FBF91949B3E9EF3C
-453B442CCA9E973265604C673752465786FDE0BAECC038104A9EF6BDF2F2F14D
-79DFF55430837C0111E882DBF56674AE2C2081C1FA5558CF34C6F1B0C16795AE
-541725E0D6329A606FBAF5946054FEB12CCA4575A32A49625E8886A253D7F438
-E4C855F2F04139FB6309BB7147C7ABC18154AA559ECD0A46D70B8F87F5A322E9
-AB517EDD481831CF66B43A6DEEE50E150C19F45F7500F07169D4F7922FD24284
-93AE172849E0570942758D2F5C57B44FE8A939CEFE3E7D708FB8D245FBAFFCB5
-E6B51F90101493A58B7744FF0D135534A2ABD30E22F3541C7C606EB006277A1A
-046FC6569559070DFEE59180284A8717058C2A0C2302694FB35B619731A26E6B
-ECA6C4A99F1DC6636C148411089A56902F9381A05B97C9C657FC03715D34BD3F
-25FA9A3CA78D05C0EA643CFDAF8A4CFD4AEDCF97896F257068516DC6DB23F783
-2142E05DFD8F96ECB5BB268B6738DEF2540751595E1A5612A4688E0D0D1AF9F6
-737E036A0129F2400C05AD9F8D95B01A8743E72EAF700F4E1ACD9EDC1D5D0CC0
-733725A6C604ED2270E0D27677259609A67F5F59246F3A187A74FD2DD8E94F17
-CE32D65DE64C2BF9F5AE2230B0CD64769075B74044CD1237EDC3DBBA2A0D51E9
-5B45FFE2447C2AFCAED3647B2AB12B68ACADC5F3041A85F43BCB2E60C195ECB8
-54A5D979F7A672C978E09777EAED15A2BB20D08C593B327CE89DE8A059141790
-F71A34040F8249BD1F253568E2FE11647A66A9DDD647180BC39BADC5AF42E64F
-316EBDE2B19D26E24FDE3105DAF9F4CA01765E4D7E623D77E988A301458C13E4
-D0BEA87A09B2EEE7DEC079737BCD5C0DE724472800E03BCD16D8F9A6B380C7B0
-B75563584CB753C5B2C0C72555D16E638ED3BF3883047A71D7F9B9BA46F335C7
-90B751ED53836ACBB3DB9524A5F6E26169CC86A3F805C63D027D3D161446FEBF
-E83E2377F39D154881EFF19DADBDCE48D6F3100ABB9C5DC617F3BAB482E4F570
-DDBC1A9F98201E40AA149083AAD5FBE908FAAEC7281CA1AB5D1674DDB3F8E867
-F4E311DA26C71CFF71080B03844285754575C9F94132C6F43A92553E922BA580
-19E418AEE7E71432EFF5994FD43BD4FEA2B5C70480758115CCFDAE38470C8A69
-8EFDE3172C30D0E8BFAF666253ECA7A93AB5DEC246F6DB6562B0D0D9A585EF56
-342E6A2891370C21A4F428682A1C1684514266051F9875875C64745BA8DE1680
-68DEB7407C1DEA7DAF8F7F499F123E7948C1DAD3844BCC12C835A632036E94AA
-0C59E2566F2F7AF26CE5C87C975C481539AF17EC77B1B799C2C1C46C966496CA
-3947C252153B9303EB31C11D0F1415EB2B4DF4CC55B081E514FECD172D82C0C6
-4CBF6ED2EA9DAC8F80563743B20F5D4DEDA1B60629E885EA183DB5119A06C541
-13BF437CCD89EDEEBB8D21CFCBEAF5C3C1112B4710BE66660A7D3726B4AE5FA1
-E773A77E18D6B3A02A6065467D452D75DEA48803CDC1600C089C183E68F04513
-F35FA955DF440EDFC083ED21F4121FC2CBD01D3B6D36504142E7DBD5D870AE81
-495A7D4F4B8504F5F87CA7E246EE341CDF20DC499FE279D8EBCC218CBC0D26D0
-2836C1C124D109F2D697BB54444952E5AF538B6514F222F693DA2CE3BC67ADBB
-8CF143FFEB552224BB54C70AF45663B4CAC25BD25D514D3FC4D011EF9D5AA8B1
-9B16F5ECEE40488512E15798315CC2A85D604BAF68A3A3F980DD04A17D0E02C2
-702AE3E990DA9EF2AAC4957A3B6499771E8F00E7CAD3C207FACF32B372555025
-5392DBAB9E806F516866293506C3A0667C995BFF9AD8027FCBD2560E7BBB27DD
-77CFD1FCC7B7BB072234CC908D7FD87B1410008CFEB63AF0C4B69BF22B75BF71
-6C811369BC4BBF5F410D6C61A12239FD1FE25363312A1BC595028157A185E9CA
-308D7752DA09F6908E1C76A1BC08D254B7D7EDC295A6FF1658985D64DE0B9DBA
-BEEC85A884D80EFAE9A66B7B577AA734E7E662341D2FFFEC2851A2BCF11DC560
-74F28DA227F1F29AA27BB7088C1BDF4DB64490CE3D8D99F903AD9331161E118F
-CC75D0DAEC6AB9F63934371929EA2577CC16D9A2B0D452389FACBDE05B6C08FD
-70A66B7C309F4990BF21EE6EE2B3B7B9BD4EFCC8B419499D4A9C8120FCACDDD5
-1CDB568EB932C74C8AA9D52B5C7B61828D696B41432661FC659B122FF69E7110
-6ADC582B8312F1FF10596833454C0FBF05CACE8E95EF9EB53119C5DE28B449CB
-971F604BD8D7232C2723A155E37DD5519C6E959D365215BAC11AD54D30E42801
-B93423C8C028EF1A9B13773C624106DD59BA15F4252846B4D677F7D71C9870B6
-6AEF7D061AF2A03ACE5A05D050DC3B7CFA03E249C473B3D754A4570DAC910326
-CF6D61B084A54ADAA03A7C6D9B4A70DD94BE6467563A7B426A625C6CD1645E15
-23A707F0E2E119C1230F3BC3109EE3344962F90E37D679394AD3BAF2D557DD49
-4DC2AB31723955E9EBBC387154AA21F407F7F8F8423D5DCA8938BB7C22A65EFC
-C04D60083E7B001031B088A00093B9530A7E71BAC40A5CF652849A77F6999752
-246D794648F8D42A2BFE5F5E4297F92991CA2D157404B1D46851AB529435ED05
-781249F75606BE08CE143545CC8077B25DDD598A8DA2D679A4F4920C4345DDEC
-907CDAF694F6DCC9BF3D50C70E089BFF04A77A7DCDA1D76465D6C5D152C8FE5B
-6772AD632900AAA71EFFF3A4F90C9AB755B124BF079B98C0B811E2A364AE6A5C
-EAF99631D79BB7E144ABA2819811014301CE1C562BF38F9E58B2A4EA8EB8F72F
-4A53F5F08A7FA95BF0A988A62214EFA998AADA81E6753161E8B32B45D4209B5D
-64DE964EBC65220E146FC73BD34E4AEA2D4643453CF0FAF78EECB4B0539D36AE
-853BF4635A063EBD1C1C04773886CFF56A12FF6B3F0FC7C76EEA3BBDCA392F4E
-E64DF93EC4AF5D2528E66ECA77E134EC3D4368E0AD8055D782D5BCE2E43F5830
-F34AD1D64B9797DF1416046326290DCEDF3EA07175381A8C1D268B5A6E7C7C86
-4AF59EE9A71E1042EE5F23D303DB1B0A940D7C40950B4F7C60A78AE637
+D9D66F633B846AB284BCF8B0411B772DE5CE33C33655F6FF751F340A8D6C01E3
+2E02C24E186BA91B34A1F538959D4450CB683EAE5B034D030186901B458D3777
+6B3942BD2E07121385120248891AEC2EB33C4E3A0CF00828D0F130C31A918C18
+979FE94379C648EF21ABF659253E43CD1253866F157F1DF85AE7E8714F061B1E
+ABA3AD094FE8D6293916FA82EE4F486C7E513A06D4C9BE44306A8287970B4ABF
+B6D1F9274A5A0BB6ECF713ADBD1260D5D6C4420D357FD486470A74B2F0621B59
+A9373ABECDBF32FA68AABB66FAB0C970A3354A335FEDDA1C288245E6C890B8DA
+3D0EB953283ABFE372221EEB1586B0167F634E3F29CADCAB484B81A243CE1E3F
+D5106AD6BDB1AEC91123377F816711CB9D5140120FEA84B8205B79D1569509FC
+6B671211985CEF51691C45A168740BD826464B2CB0ABC575E7D453161328F80F
+3AF1C99EC219010EC6C95E0A8D1909719CF18BE424967E90DF67537220E60C3C
+4345B154D08F9EA684710E659DFFB0BA1B7FDDCD519305900A5E1CDA219A6C90
+DF8BD712A3686DAB90344E8784C7A9AF3318550285039B701B9FA1D3A3C3B6C2
+753F1E794A3463A173C99A9EC0E2AB5737134CEC2C97CD6A37E38692ADB4B131
+54697B7BBBB23680C72CE96066D8007B90AF0FC5958232AB4F21826691E9874D
+107F47DAC1026298D787989BD77CB43A09FC95F6997DB00D8483AE9C2716CBD3
+7CDF02DA34FDA2F0754ED0968270E118DDD8BAAAA65C41D699E2BCC2556AA231
+328187D2F50FD518CF458B0BA1F7DBAF4B231CFD61D5DC56335B53C3013BCCC9
+85690E19E992ACE55EEF2BA7A75DEE6DC33933C226FC1494269B7CA4CBAE987C
+2C787386400172AE3F44AE47115F4117EED866713BDDCA4A7AF658C49F913CB7
+308635000043F63BA210410A66E192289592882C477B2EEA0B2A339F0E7CF450
+CA0EF79D3A6C28598825CA03FD688DA60C95EF707C6E67CB7E57DE7A80545195
+739ACBDF27069F34C9E0216C3D17CFE7A652B910FCC9B9AECC2E646809C22D93
+FAFAD465DE794755AFF5BEC17160C9563B5C51D07022E2D3A256FB5CACE131D6
+F4B30F591A0419D957D8F0DCAA0A8D65A8D83422AD7C2613FF13A302E152B312
+3F1ABB45E42084EAC894FE335C07324849C9736D00C872C4551997DB889AF17A
+A52C5AA77DEB548B0103B77F65717F70B90C1BBAEA7BCB4959F32851A9882A3F
+55673F24103D6BF7FB3AD3EC3CC50FD8FBB4A6B13C3D278174320713A7B327CC
+A71F01E50840B33D0FC3F5F6A6F2B0F2D0E38494B1C73096A430510F927235FB
+69E931DA8CE5415EE88D0248565E3347353621A48F7948AC9EAB5F5057541B50
+82BA955D90BBC82E582FD71904445A59186022FB928015235B60830DA59813D0
+8DA3FC306C43FF8BB2CB6772B1F7BA3C1AA4B2343E7DA7E065EA53A4E5E28DC8
+0790F2D5CFB203CB135A08DCC9702B59A63290444F202756E55B9FB053F773D6
+0F69C63E74DE593E49186FF4304E8FA76C3E3006358DE549E946DB69431981E8
+1261C9C9A884E4EC708F69E6AF5D22C5BAC49F2AE85903E3D48D03B7B97054F1
+D2937A0C685D912D6D20A75A77712164DCBF8FE4D5460DACE139C5A934EEA09F
+B94DBF168A4BC03A9D689936D833018FF43837DF9519AD10F357F00BC068E737
+170FC9FC6715165F733A0B6FADB9ABB48B845167DBE6D771C916577FC2132863
+767DC6E3D460E779254194AA690983184D934F5E858C1176B3862B69B42EBE7D
+EC9AC4E020085D474093F7694C8A8C2025D4B0163E29320C384D62A9F3FBCB1F
+AB5A374EF3DBA48AC2147A207AEFE8B78BECEBC55C97B538F3A0FF4589D171E3
+826342C8A5186224FEE54E4C6AD5EB02BCB4088B132FA1A48362824BEF161235
+8E661DCFDFD8429C65CCEF63902D0E07C2FEC1DC2756D942F13FECCB7E8A8048
+345338F24B7808E46A04A915C111F939E2669A12FAC0BA4F74B832EAC83EABEE
+67E2817C058E69C2010F2572FDD15194CD8DF0FE9F827D349C0444A18D1A86FD
+802BC120A5114FA3523C221242C7E767B0AAF6AD15DA1561CE8EB18A2401D71E
+20481FA5F1E247CB5288F47795A6A3A3BB186E89EAAC4A54AC91405427136127
+5B151203426830F7CADABDB3FF63B40CA29CF8E667E71615869978E99E6F3F07
+0170EACDE3DC62DC05681D7680E2E96C30002AE34A4E5EAEDF88577601A82C36
+22D625A03B0451D7BBAAAE0C396711500E94A482EA787495073F16A76D1657DC
+4EA7C7B83BC30CE7F145B65B6E2ADC207D192CE3B5FEF7031F4BD64F57E1BEFF
+CCFFE06F1E4ECA48B442DF413766A70DA626359183A9B24C70419487423C816B
+4BCB067E661E47E172563090D6328BD738D2B0FE41A0C1D7A47576A79BAFC880
+0473229D134F998909898301CEF50A82B627A9A06DF59D0B9C530EC5D877F1E5
+220D3A1ABD2ACBFDF1933F92B3137B22B9F95A961D93B729307749A50D8A6403
+7AD0F9C40743E39B8D198CFCF7C033D99440D46D821D97545B930EF92E7AE005
+27F2FC766FDD4790FD1913C7A13328E73E587618ABD9008022C5C6C23935CEFE
+B5ECA2CEBA1D25DD846B48423F7186E03B1F61C8F1D5AC95CE03C83B2F221300
+7A761D6CB5F7F9251D3F9A7F4B25B99EE7A1347ED3059A811A82A35A033E9B07
+A4FB2A95009576F48665605C478E5F6C1B135016FEB4AE6A6BE4B4359836E04D
+45AA11366992162973FB6266547C2E570B8F56F6D992D2C0F63950A16839FE10
+F56E59D93A37573E3268C5892C9F3358753D1FAD6379E82BE740FA17236E96F7
+C53A2FF785FAB86AD17EB1DE8A6AA9C69B91C9D9B43B5188E51F6939FEC21B65
+AF17DCE95DD3BA4F1DD51F0BD5E5869A1ECA7398B6E664EB0D189181E9C23012
+DC1E54C146842A90909DBEC03B79B58909205F2CB2A7F83C66B437D7F7DB9781
+FF0C67F004E979C95B706D8D85255CCD827CF6196D847DB380B56980109E96CA
+997157BE78A4F758CE59D78158A854EF2C20099438F74777D3B0298D45BA86D4
+3C0AC30C984718FD62ABA0567AF0A70C1DD41953E3E7212D5C562085177E650A
+2ACD49940551E3F7619B4CC31DBF67AC15D938619B95DBF66E6D1300B1BB8605
+31C4011379FB5388CA49E4A9BD6C921560CB8D513F8716A0733D2A7D77E62D22
+A69B54E9048CA168D210816E613CF6357706EF6B118A1263B858B7E19AA98891
+43BD675B06C893579957BAB97199ACB82C080593ECB8B66A7334779CC16E4D0D
+4AF365CA6AF9727AE29417B61A5FD52452873B1D666044F8E7C1F6C6AA3397B5
+94A5780F4005FB5E41698FADD1594B505A58253D68D2AE3320E22165D198050E
+425820CC0A43FF1D61F168D87CDD30C14D387610B6CDB63BAA39B3EC9B3CA616
+FF1CC679227749DED3DDEA26B4D97C633090DCB8D8A6E5E07E3579E4A99BF1D5
+51E43D1D7F139C9CB1D76D8F693A3F23A74EFBE79F01E0B850BC6B6C7F62C2E9
+859469A144853434895D73DA6BD2B348A48BA80E79327ABD96539F2EA2209852
+E1BF6B0B819D7C68A9A1D0F6F39416E3EC4AC21DCD3C51D3B5B8D417EFAE165F
+2A7E0B76E558AC9F685A76FEC7E3C73CD607D9025DE6113BE5D0401887A53910
+82A813B026A502B51D484797D9D7E79A25B6624940AEDB4A15F2C73CA1AF60FA
+22D15BFBF268EB044FAE17822511AC6580D1D74DBA3C3335217780B29FEE792D
+200B00B8CD888A8BFF15D938FC758BB5CD9B3E08E1AC6CD1669E663BE86711A5
+892684DFCAF70C11E803164994BDAD89128AAD6461D4558AC2ECA3E05EB56D32
+0290AB16A6DF7133DDCBDEAE89C6CD83552792E23CBF567D57E46548EEB0A140
+437492B53C14419B6FE7E64AC23923A9E85F56A9DF209DC4E6BCAF1E045F9CA3
+BB904BFA150F4083C18B0CB5580450CDB657EA768E71222C71DA911A722AB9D9
+E18B6847F417125C40EA8A0CA1F551A4548712D098209C78DF9C3F78605E5402
+DA2DBE2218E49B819296D5AC88D17DDBA982E171733D1E9E295B3157C9B90BF1
+CE68CB185947D1E3D7544155B741296D14B064BEFD3E6AF25C74006CF6800551
+80FCAAEE6FC9105E1674EDFE68C45617D8D3E2264CD395EE94EDD017EB85884F
+FDF530EDF4F3F14750CA066F149E688FAF8EF4B5FE6AB515CD298E8D170346CA
+9B32BAD1D86DC147BD12EBEDF6CE1E749C5B48314F512470A568C172C35CFA41
+031E34586A89404CB5372D7B2C7A6D96F420D4D7C2D4C08184F4AF86B4536A90
+9367598424112A7B05D7107B23695CBCD569002290599E0FF4EC5C852C31F5F3
+9BD56BB840DC17DEEA579E7A7A9F764788D4E3774BD523D21267869224D68891
+4523070E80A123B58F7B579866332FC38A41A5915EC06F2D14FBE4A6CAF59AEB
+57E98D661637EBB885AA5D74AD429CCFF64E5149815E7350118E6385F4C74E0B
+2EB474A6DED021D429F01C9B0634A09250C40E22B3BFE1B7246D18116D585F39
+0E06E9B5F27A6CB77C8E9462189CB900CFEF08F798CAE15FBD94587F33816EE9
+03FB2DA6826EB69D8C284AB9F7B00630D0420EB6E35E0E288BA25F5C2345C067
+22412633898AF99C2FB232D1469025BF262B567F29A05F4816FE8EEF5F02BD79
+06202F6A1E3E5D4B3C91BA8D5FF53D5136BF70E5FAEF441A7310CA83721711FC
+39EE48BFB2FF287234B1A6102AF146B10A632A53AF97E11FFAC3A2A86BBAE3BD
+E0459ECF0305366078066F2CC628A3918E775E4236651B3D817AF1684B07A163
+A0142D16F55D2FB5F2255A8813B8E54EF3E801E95A4A226AB8C0476AC5EDCAD6
+9258ACB6F7C0CBDD298A0B816560622A1871FBE2FAEBFE697A8216A0D8FE30C6
+B1BA6C3E975F78182743842E7F851064037394142AC91B2530FB1D511EB20F3F
+79EDD8B7E1579D35F6E7B2883C47A46B6C1A458BECD6BE58AAFD834A7D82A553
+2FE4E66878E4699856DEDE964F454638F768AEDB595A883E380408F558015FB5
+8720954ECE2704AFAD4D62E8BB2657C4FA920D72248B3F762B2F12D125B796AA
+1C4BD6B42D766EC1C9B2C7AA4B6A3474BF753742DE8AB76D0AB0DD9A20EE2DCA
+0F34CB25995ED3183759CA83ABC32B8BDF0B06EF169252587971F7D37463BFA2
+BE36B2E45559DD73DE7CBE29DE92B9BE6B9F8093F934BA311D81E18A8DA92FC3
+312E3FAB43C53E803975981F0076EBB8F257C123908450661B6FA79E7ECE98F3
+B0A94E0DE3A4DCC8E0FEC106CDEDAA297A75BF1E40F3C2419BF72A644F452E2F
+9A8793810319885EB3AB23B1E80E8B62A889311355C73722C18E62711A7E6A16
+A5B923408444B13F6522FECA9A60B067EE332B83E1A69CD835C9D69B5D8859D6
+91F9276863D2E2E8193641E4239F4ED15E2C482C735BF5434BAA454EC2830C1F
+7CF766DAC9E924F17F03093132627673BA3D99DC2DBFC89E5BA032C16D3C1C8D
+78B3C464081044DB53C7A29E925F4157EEEE928C8E28EDA5F0A4BB6E0042D8AC
+7595C350645118172D04FBF06B2C9A9F3603A54B57999E2960C993724CCD6A09
+766BDF73F66E07FCA9BD09079CE8010E6CFECBE2E5DE1EA4E280AB78D5184C11
+016385007CB5AC0BC95955A1E88EA1A1D8EFEA886007708BA063F556D9284D4D
+C764E75CECA51BEE3D35DFCEBF6175953D30FDAC00F23B1721A1DD577945B5E3
+8176A21A649D907B5F63C71718ECF32ECCF1B26BF15AF694F1045CF98FC75278
+E9782ACD3D83CBDBEE690D29B3176E745AAE436382D258CB22F3DEDD02E441FC
+6A9931AC2F61156DE258DAAD5EDAD41E6C0DFC902173168BB4F51DFA7EA615C8
+B0F92FDB118378CBAC3D56B6B9BB0883C0C14EAA67396AAA7987222A132B7959
+44FC1E9D6DB6D549DFBEF8D2DD8C53DD3B66935FC239E74E2C440CCA13C068EB
+C4A3B69F499F573D076E2C92E24F2C69B806591B0807CD903E078683854963EE
+5125C3640860CEF37BE186DB781475554BFE6C528A9633AD5772BD53244E24AB
+42CA2D1123AF45FA257940CE611D83014DF04E60220E9AF27CB2A2247BBB004A
+F5722A5EF058FDC7DC2B6ED1406649DBAA58DF2ED3A91483D60F11C4A39BAF57
+CB1E320A987B790672CDD3E3BEF4A67032244DED2FF4588B2072CDABFEB36009
+9F4BCBEE16F811A44CEC77F8AE873C90C0F4C975E51014ECBD45A56A63F034C2
+82212977023A132E5C88AAA826D841FDE9CBCE7A01E4B6F0EBDDB9A69EFEBD72
+0B41EDA807CEDB791084047624BC11CE10B7A0A311272EFC9E013FA374D97EA5
+F7998FD908748CA72D8CABFD0F01220C2114D3B462B22FB71A23B284B1CBC7D9
+EA20BE71F8ACCED21F096009A14A7C7B51450BA51514707EB46B9FAAB31CFBEA
+E1DDA6F5D9AF0B6E7D05A1EEEEECD606427B0F2363D1B882B50140466B9D3CBD
+D00DB06DDD1BD4681E367DAA4B7C405C6281B67FFF794041738FC6A01D261CDD
+F6E0A330985F2CA782CBCC02B6F4EE5993434F656B91A51CC03B1D73FFA6629F
+14F6075EBFD83B702D8844A96CFB5C14051595BC7DB2218156A6DEDA5C98CAD8
+BEB5284D9D9F86406A8C1AE85857185991C360E5F44DEF352A1F301207BE94C2
+9A3A11BA468FACB3FA2D683419C44EFDD7C8F1079659F3ABD89D7F168B1591E5
+6105F9B3FA481BA953CD34CCFE73E427D3AFC46E5C58C2981198BA284DB8B37A
+6647BEAA561799877DD6858FCA71CA6003F2961FAA529906673EA94D82D78116
+4DAC81011FD175DA707C1E15D4B6FF19F8720A4E05E6E103E2DE880FA9C192BE
+C5ABE7C311C2ECCBCE8F9713DBA74AEC37A61C8F21F271B35F0F7C88B182525B
+A4183377597ACDA9A6E2F181725D427795B975BC4168A408D292CAA484BD1B8C
+9DC62E737ABC805C8FCB7E96454DA032B601345570EAE0379BDA84BB6D15D780
+42FA1E068A7D62F152B43B788513E13724666FAB4E2B4F04B0448194E46582CE
+7389BAF0D1DD4435BAA6B82AC305C04686B89FD51197C721D941BD2893596024
+1598E6C2BD84527EDA6FAB782033E4BB4F964FBACD96CAEC3F3CF89CBABF6B4D
+4D3AD14A03D4BE931632BB03BC2B92842FAD51A19A756892D5B978DB695D0540
+CC9D030C612E2B201D60D09F56332DD0BA1351EE62816C21A35C33DC11B37BE4
+D2F164ACD836A5CA1553CBC733E3B159860454B17064B4E22D3764FF6293BC81
+CFA3B2325C8E072857F6FF4ADAA8818247D431A28D3C5FDFBFB24A6CAA327AC1
+0B3630C84ED9F0D33B8255A3CAA9C5A0C79F7BF6BA3B9801C3BD0B30AEF7CCA9
+92F25E332EA97A7CC653C93D1497992D6B76363885B92ADE34C2A33E30A3B1A0
+57E9C16D8CEC189565808D3FAC92973C71CDE74DE9D8781CCAF88747758014C4
+5B62667D4D2CC5EBEBE77C5AD00C6A69D1819F5A786964501E077EB3BBEA52A4
+57729AEDF35253F7E1D31F2DD1587BC15CCFC1B0CA930DA83E2031B099A38158
+8D1849E7145AC74777A3C7136DEABB0C787E5A218309A65EC7D128147EDE3AE0
+C0AC039B56F767A22555CFCC12DCBC7F5A5A3B4E86EF5A69EEA93DF0BAF2A3F3
+7504F5C6A7A67388D2F9045BD755BEB7DFBC2EED679497EBEC808BE20FDCB5C7
+B586463BBB898DECCCF7249E9047DA943FAF0718A2050FCFDF8A4C2029FBA674
+EA64003AC03A847185936FC375CC67B3006EA681F61F640C3640A78D0C7FF521
+D477981E23E5956BAF42252463FDBEC49BB560A9428D248B0C5250CFA2A49CD9
+DBCEF73123C13BA382D3CF6A7B8A8CA3191D379A659F0E2C6E9CAFE9DA2AC074
+F622E397A2F7C73347364AE249B11AE2C34AA7F0D27B5F35D548D5AD1228597D
+D16A478C901D3A34D870BA39F770885B7DE62298F0114752435050E99EA4E5E0
+56B965EA185E8DF96B9FE97EE23DD45AADBFE02B427222B9FC99DA94FB2648B8
+46BD30F881BAD3820DCA4D8093BA0FE70E03482CC063B751439125623FA7AE40
+52DB2A380D89D5E37BF264CC73DA9A1540031587F481A0F146C6ED6F3F2957FA
+19477F075ACF608CD94CE466C1FC3EDAEA3ED25C96FE89A7CBFE528A33C4E84D
+465FE6FB031B48D904C5120D428D6B51F3232847CB0B7521E5CEA887FFC56F02
+0882B3BB7F5B0B954E7078DE3E31D8AE65F9EA55F4C169DB7C35DB9645617AFE
+078E03BF9A1BCE4E489AC9495A1E6CC7D1FFDCC03CEC1A32490186FE8B53B09B
+DBA7F0E23C8F5E5270D039B409D504203A458EEF12C035039A8AA12C719C0339
+F766BE6275511D585F82E9D4AC9B5424312755C4B74383FD094BBB24817D6291
+4663BAB0C9AF29F46951712C354B1EB67CF3FFF6DB1FD83F056774CC7F2283B2
+49B075479604C9B305D9C4587AC495570DF9C4F05525921AFF53D81C0D5AB7B5
+6F00251395F7675345C050C6679867C964E82EE6981E93684B0B28AEEE03B79E
+4C26DF3A514E97F57A397BEA4315C09652254E780916102F48220688AF69BE44
+0C2CD2F43A576F4606BF4F1817C78B7068368AE36D593EC32F0C344B0D728A55
+089C518FC3D903FBF3FC98EAC7567224389B666D105516F48B7F46FF5A13572C
+AA7A87B6AD749B9718946CFD1AE8B6D3CC90CF6A87B9B2F0C2F56D5FDA37CB61
+6AC4D8EFFF054CC016233A437E615F13A2A393CF269C603D2D57683047A0685A
+E19032F5857E84E9DF2D16FCCDCE2C3679DD509E5A6058CC9FD78A7846017FD0
+178C712CA8D1B9A9D2DFEF19887D01D19B7C3AB4A02D5CFDED33131B7E46AB35
+3091A04328F530A8296C6F35EFA6182ABBB64C78682160034BC4D9F68EFD6000
+0B844CCF122E632068853944E646E33AA88CB79B127254FB45132447BA9D7AC4
+219AD1D5FD4D77723C4026768A051FFCF2AF1B7E22D2D598D0BB54669B0B81F6
+E010506C1FFF5BF04BC512CD766A955212B373C41EFA8733798257736CFF8B51
+52BE941B6791353A134E451A83BEA38C0A187DDFD23C2B7EEAC1A2505D0355DF
+840C695952357E8780A6C9F47BD189EAC599A7C278B5E1E61467EB671953C2A1
+C71E035F3C66D88DF56CD37A37A400BB39D5CFB15A5007F9B339A5DD70ECA10C
+BA6B38B84502FD74512D99E4B8E06409664C7523EB035E6188DD37140CD7FE55
+3878C6AA72F2065C7DC50D34DF0308A2798BA4E69E96AF19B916002EFAD38731
+EF1E8CB091AD21DBB2CDF345E5833EC2E51984A841B3EF04E0AE87D470288B7D
+D42BB81C4A732FDED84096C947AC915AC401AED151DB68FAAC3A721833673B14
+3F7BB8111DC05BB7F707A9F57ABAD8B53337203640BA33B1689C9E431991EA36
+EEB231066F374E62432DDD055189844E5695469DC4511CFFD616FC4803C864D0
+873874A028907E5D0B8308DB5A19C65348926A62DF837AC247E7D6A55E23C696
+5313A67FFD96DE214B403B5A8CDD93E4CA1945C89EC9057D0456621EFCC1C42F
+61E7C1DBA1F6EDE6A4BDD6D319C6341059F62609F14EF9E82C965D20C44BCBC6
+06B539365913C49FC2942C94E574415896FD459F5BCA2AE963891433545C5A11
+A85AE5ACC8E5995CFEA2482BD2BB3CC844F2D3A83821ADD3724A180D1F042206
+00581E061573D63C543AC5B9585B2A5D201A84A3434595C18761BEFDD00CA4E7
+2956D4486197F5AA7024E5FBE2FE197BB6491508E89A67574A63AE346019D4D7
+D4D23DE0B9D1D544ED82E0068BEDC5CB1E953204D731D9FA5AD7E8567E10B3F9
+F54F745A44FE06E6B2CEF76DCE87281F2D4B57C343844CAC894C1E3074873B21
+CC6DD0DDB106CBC6FF0DC13CE3132E9B86DC5DEAF638C0B240151ECC41DEABCA
+0F1573C9B6A83E176FE8B160770AEB16E1AC0BE350165E28DBE259ED7BB1200D
+83708D25774547C2D86354CD161F8DF70140EEB8DFEBF8B916005C5A5D3C1D59
+6FBD8EAAC2A93F3061E700D2CD04E803DA26401743B9AC7CCBA5F99E88E401C0
+453CBFB8309877E1003A65A898AF76F89C54FE4D5A4B51F07920967757FEEE7B
+0836ECB7F66E922DAF520F32D9ECD0B83CD7719CB95579B6FC27D6E3E7DE3E8B
+03965C6925CF9FCA4F06EDFE9EA48244C7A315B866D6B3F5C767B2B15FBCCD5E
+A609DB4FCAB2C2246D320DF17D60DEBD6C2E78FF32CB7D120E9D1251E0866D14
+8B393910D9FBB4225C1B384BAD153C2B1FED53725B3F4FA46CB6DB649F6F1380
+9ADDBD04FFF2A8F3E53A6AFD44A55A1C394E2FCC723EFE4A30FE24963472BC9A
+F349542BDE1FC7CE25DF0484ED3A1A344007FD9BDB04E863BBFB60996570557A
+71EE4C77B244331147C5A70059A74064B3F2556E0B70E3A4BE685712379C35A4
+E616230DD8C716EFC1E318BFC8770272A3A7DBA0E0EEB60419207B6B2855124E
+70575EB86D2DABC9738141D3C2DAA80F4488F1AA94B3F0FAA24683F2370B1ABF
+6D06D5C0BB9063171E0F8FA31D56A9793738B7653E05EC4D5F136BA8C6BE6256
+2B0B79DAF5F989CEF8E5F0F42888D8EC9A32F2074DC9174776DEC9C3166E5B81
+F44F7AFB85FF7F7E244D3D64856D71340A13B267D04F25CD68126F443E1215EB
+3615891A22B8A27FACCABEAEDAAEF7F7DF4C0BB15C1B652ED6033A76C4538F10
+324713DB4683F0A7C272895A0D9AAED5BDEC07080F9F19D61934A6B344216873
+A618463B816701EAF3F507FA0C10FC3BD12A1118E5357F2C502DD25315363362
+D0FA6C0BC28691C752DF717A651E8B0FB5B88696BC3ED7E23020CA9D6BD8D03F
+7292E2C07399C40B9EDB7D161908BA250227EF489C16217EBDC6C3465481973B
+72146FB3051DF328ADBD7A98986E7227821E2C24DF994A24884266AD2BCF0AC6
+B36A938DAF8E8A40AB859290FA078CEDAC6B0210A181ADBC199AAEE6793F4F61
+5504E4CCFD6DCA48F246F7F969633C70C5667B663E229592963ACD8A6982C6F8
+F52F5116DEEEDE61302F89D92EE1CE0B1BA22CF9F017D7747394BC2ED5BC0141
+6B247B07D0D2CFDAF75ECFCFA5D1CCE76CC9FFEC345B1B3A34194EDB4C75A06A
+B03502F7702D368F2BC048F42CDD18829CA3D96CC07946DB257A3580787A5C40
+802A085E900E4785B1B9081DF4F0CC55CD292B034B4FFDC1E8326FB3170653CB
+844636627878DDFFDE6CD0F6D8EE3FAC7AF79E03C3238AB517874DF858BF4D17
+971BDC9EE0152E969BB876784D35317FF452AE220819D1F48DEF67D8F296735D
+BF445BD8815B21C3D9CB5A262DFCE53AC150206B32889B1E6A6C48452AA56EE8
+E66A7F99EE0F7B5AA66109DA632FAA425646350E58EE8D9FDDAF4DAFCC33DADD
+C64D2A62092406E28C9483DB256D0BE9876D3E95F2715264B842193BF2860BA0
+98A8DBD3043742744C8C60E4AF996C733570050B09D1CDEC63CA7AAC157CA349
+B9E6188BA077DFE2FFAC844F6B6C3152670DB3C7FD149DDE67054B869A6EB19C
+C8756AD1987CEE857262450FC870503F54A0B2A6574F9BA63F43B72DE9CF0528
+52BEE0FE270AA0D2E6B0D87B361CEFCB7F4635E4ACB38311428542A954C551D9
+BF33B8194311C20FA0D97D411ECED2312DA77197E09239660AC6A9465B06E3A3
+2AE9EAACF07AAE6D297DA00E3A366B0465E48117600936C8EFAB79D9D2A156E3
+EF0EEA375EBAE7DE404ADACBDBB45F830E8BD185C8348316EE978598A80C83B7
+24F89C1BA0BCCB2AA96B71D51BD66C3B87F58F9951F9872033109BE5CF1B4D68
+B17EE96C0AA378FB7E1163A6F6BC130AFD2666C214414383D9E0EBCD993C7A32
+0206A4DA1040CBE19B348701EC6015EF37BD273A46BDB64CDD80927BCB9D7B49
+B5F7F69DB66215CFBAA85F8CE86B788520DE516F36F7ABC6AEB7EDAA268F8523
+6008CA78284EA582E23C0F6E09B8C67C24711D65FC2C7C3AF48F8630D6AB7516
+CC29F74199D60E0EDE2F50B3A1CE95354CBD122E1DEB06128527016F23E8696B
+053936A66BBEF29330F33D578CF456CC65EF39AC87BF10B0C677C4E6D8B06915
+ECFF2EAA9CF67139BA9249D581E9243AAD3E59FDAAC3B28A87758412D6F5D8F8
+F79EC4C47A045BA16D3D6AE0F9AFB29C7A20DEA61B932FD7240087F64EBC6379
+DC0E3F1DB7388853857E457D3B09536455528047E4DA6AA7938E3F656986B61A
+21E73D3773CC66D813DC3DDD01C5E60E3CC098764E3C4EB309B6482A10F2C928
+B10AF5138C4225967A8A801F0DEE929E63B1A16FCF9A4D75723BD63EA3458FC2
+E3218E41839E091E134B655ED4049352A59B9BB7447BE1987ADB2C8309ABC25F
+6743C6CBA2C0049869BCF800838E8356B5754274ADBCDA4F42034B5F49B971A9
+E2FF41AC8951BDC0BCB23F90919477D227FB3DE0C205C53C6D1D4A995212AF25
+06255B0BA2AB068CCE1685842774F1325B2594DD2C59BF414C6235879089A789
+6AD3DCEA1F8271CA3F41269AA934CC3A60C25A91FC73FCAA66D7068176C8F777
+01002FEB2343AB559B310FC5ECAE480FE0FC6A3D10B6037831852A654E2C326A
+4EB26FE7155EAE63324E6796724B435522DC5935691F11D0B1DA1040F720768A
+DCEE90219413C6358C7A602B978339B22103890EC4ACB3425DA4A1DE274BF619
+281DD83B9FBFFF431B06164A34F15CE90D76642D0587036FBE526ABFF1FA0694
+526C25F271910751C5DB07ACB4429059B6B9C5644FFFE2C622F5F7B6ED859249
+DD3E98EF0C0D6E0DB6CA03DD87BB9331797889A65C4708FE9A696041FC5D1EBF
+107589B49CF9A04EE49AFBD59FA7FE9E3DAD2C46F44F6F54237302E498B80C61
+A975FFF794971CB55252D049E414DB833A05BFB0AD2FF340D73893A3286A17AB
+C4ED27AE133D7FFD9FF0F2C9B96E83E566EBA52E5626CAACC6A569327C4F74C3
+ECF1DA1AA4E562073458A21785766FB65F487CB2DB656C438FCD2D6D33692FF7
+AA14958C5AAF35F8056304978BCA5901BFF9879441A81CBD9C270230A19269BF
+110EE3382AC29404412E2B975D6C11CC5AD1825E10F74C632A7F54834C6BC433
+0EA2A0B303057D8AF4C222CE233E408D02E0E8DC600BAA5A6D14025CE0459A34
+B57B8CB8AF49A804EBDFED5276AD608FF1C8A9F299B9B5802225ACC1016F627C
+9F457B3CDA742A6EC8507782C5009DD5F26090A1FB624186840F174609517773
+DC17E6EF8DEEBDABCD84172AEAE450A585EA54FFCABB66E652B885000A457D7D
+17B159385131907E7B82A978B73ECE7ADFA85E755CF11D4123BBE0991BB733E6
+17F193AB516AF3D0D2A17FE00A9B3264953206CE596101D32EC850F5A5890CEF
+00C261F646555B7BC183
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -538,25 +1102,41 @@ F34AD1D64B9797DF1416046326290DCEDF3EA07175381A8C1D268B5A6E7C7C86
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
+{restore}if
%%EndFont
%%BeginFont: CMR10
-%!PS-AdobeFont-1.1: CMR10 1.00B
-%%CreationDate: 1992 Feb 19 19:54:52
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+%!PS-AdobeFont-1.0: CMR10 003.002
+%%Title: CMR10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMR10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMR10 known{/CMR10 findfont dup/UniqueID known{dup
+/UniqueID get 5000793 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.00B) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMR10 def
+/FontBBox {-40 -250 1009 750 }readonly def
+/UniqueID 5000793 def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMR10.) readonly def
/FullName (CMR10) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle 0 def
/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
end readonly def
-/FontName /CMR10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 11 /ff put
@@ -642,480 +1222,737 @@ dup 122 /z put
dup 123 /endash put
dup 124 /emdash put
readonly def
-/FontBBox{-251 -250 1009 969}readonly def
currentdict end
currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
-016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
-9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
-D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
-469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
-2BDBF16FBC7512FAA308A093FE5CF7158F1163BC1F3352E22A1452E73FECA8A4
-87100FB1FFC4C8AF409B2067537220E605DA0852CA49839E1386AF9D7A1A455F
-D1F017CE45884D76EF2CB9BC5821FD25365DDEA6E45F332B5F68A44AD8A530F0
-92A36FAC8D27F9087AFEEA2096F839A2BC4B937F24E080EF7C0F9374A18D565C
-295A05210DB96A23175AC59A9BD0147A310EF49C551A417E0A22703F94FF7B75
-409A5D417DA6730A69E310FA6A4229FC7E4F620B0FC4C63C50E99E179EB51E4C
-4BC45217722F1E8E40F1E1428E792EAFE05C5A50D38C52114DFCD24D54027CBF
-2512DD116F0463DE4052A7AD53B641A27E81E481947884CE35661B49153FA19E
-0A2A860C7B61558671303DE6AE06A80E4E450E17067676E6BBB42A9A24ACBC3E
-B0CA7B7A3BFEA84FED39CCFB6D545BB2BCC49E5E16976407AB9D94556CD4F008
-24EF579B6800B6DC3AAF840B3FC6822872368E3B4274DD06CA36AF8F6346C11B
-43C772CC242F3B212C4BD7018D71A1A74C9A94ED0093A5FB6557F4E0751047AF
-D72098ECA301B8AE68110F983796E581F106144951DF5B750432A230FDA3B575
-5A38B5E7972AABC12306A01A99FCF8189D71B8DBF49550BAEA9CF1B97CBFC7CC
-96498ECC938B1A1710B670657DE923A659DB8757147B140A48067328E7E3F9C3
-7D1888B284904301450CE0BC15EEEA00E48CCD6388F3FC3BEFD8D9C400015B65
-0F2F536D035626B1FF0A69D732C7A1836D635C30C06BED4327737029E5BA5830
-B9E88A4024C3326AD2F34F47B54739B48825AD6699F7D117EA4C4AEC4440BF6D
-AA0099DEFD326235965C63647921828BF269ECC87A2B1C8CAD6C78B6E561B007
-97BE2BC7CA32B4534075F6491BE959D1F635463E71679E527F4F456F774B2AF8
-FEF3D8C63B2F8B99FE0F73BA44B3CF15A613471EA3C7A1CD783D3EB41F4ACEE5
-20759B6A4C4466E2D80EF7C7866BAD06E5DF0434D2C607FC82C9EBD4D8902EE4
-0A7617C3AEACCB7CCE00319D0677AA6DB7E0250B51908F966977BD8C8D07FDBD
-F4D058444E7D7D91788DEA997CBE0545902E67194B7BA3CD0BF454FCA60B9A20
-3E6BB526D2D5B5321EE18DD2A0B15E53BCB8E3E01067B30ED2DD2CB9B06D3122
-A737435305D42DE9C6B614926BFD44DF10D14402EBEDFF0B144B1C9BD22D7379
-5262FEEAFE31C8A721C2D46AA00C10681BA9970D09F1EA4FA1566B96E221864A
-45A24ADAEC63F61C9FD18376D3984449A1F998C318A8FE36D0D5020E18A49625
-0F3BB603BA1F3E66FF412F6A32433FF8BD2968D79CE4273AD0E0CDDA5153C2BF
-F8A46A2244F9394A49D339F763F5A7411A3C29336B21CCB01723705AF589B078
-3763035411FE36AB5D744E81379106890688CB5BC41184548B7FEBA08DE7288E
-E6570FEA20C51FACE8E8F824BB61A4A038AB817C47B87391611B77928B2565A9
-3B27A573C05D36ED01D8F27CB2C793370FA9B90021B5696280A55F2CB6117B64
-293EAE0EA5A243F56FD007773CA35DF71B3D28643C25210CCE25F37A5095D6E5
-9CAFD99DD1DB0D7EAD454C13464DF6FF5DD42339797AE5AE467084550FC00139
-6EE818C6365007B2FD6E26285B832CFE6EA7E99665A224C9813C036CED262639
-3FB39C1F05FF8F31D2DEF37BB9B883334F51EA1243332FE1E3FC91864C8AEA79
-16A726F924AFD84F2F4215FB795FC41DCFFC835C90B9E31D291E47AA4BB8C05C
-620F69DF31E91A0FBA8E217CDBFAD7C4D480EBC1EB396029CDE615C227A367AD
-72834BA95539D39A38EA0CA3CF7F1123F70792CF315BAAA38BBCB6DFA80B4493
-5025F33C3696DAD6A0ADF584C71BCB1D29E523EA4B81FFCE15F3204022BBBEA0
-A9483EE8EAC07D581162672A0D66199174821ABD097561A263C0C0F24066FBE6
-0951F31FBBF2675141F3FB4457CC2A94A40191EA0AB2A606CF540BBB8887B6DE
-715EDB1041EBB9D05D0F4A4672F534397B9529EF8743BE88BBA10C81E0A46259
-2F2AA7B638E20C9C8A3A827977AB58ABF7525BE15DB66CE8E9B81457552073B5
-85DF3FA70B5231C447C5724E14730B90FA35ED1B5723036F1658CA8E19EF5A6D
-D333B78E91E4D7032EFBFD40A5A2269B0DFD9F7C3438DB58F94B507EB93032F9
-99E5F15D9F5D8CB031BBBFBCA8A15A617ACEDDE70DD9C2D9EE21179FB17AD913
-B4BF577A9046994689D1BC6A6985FF5F5A67D699C2FD288FD9E5BCAD5453EEC5
-68287BD7B8872726C28CD288B4DED2246B843577173450B6E5760852CF2E1727
-01FDB0FFFBE12CA13ACF6434AEF4B59EFF3E0DB1E87D35075B1D55AC12633167
-5A83A39056C077EAE6F2F7D1DDED300BA43830B8034F0A6AEC562D3023270601
-6C594D0359DF6F230F7B80B54EBAE4880AF338956B813E3B8DB8BC778BE0F612
-7D84939C2878B43EAA45BF10E257F22C28C2C148FF48843D2B52626148E3CAA7
-4527B9F246C17BDE21C6E7EAB4906BB6D9E84906CD1832C4BD9E405AFFE33AA2
-AE086C25EA26BC23D68986639366B99C87359915EBB76D7162AA667ADE4954D0
-B1E18027FAC2468CB2FEA2568E23DBC201E9B6A1151FBF21129A088D89E3E728
-28B2785C1A8B2637F368A93EAB459F80506435BE23A85396969E2AC4E0D6E4B0
-8B12EACD150049EF8942C108B96843159D4408424394B33603F565D1622FCB78
-01C22EAC64FB487AEFC0387059055F8BDF207C956D138903896534AD1F42212E
-7902D54D0F0D8083B419A459D865F7E7A6A6F8B94FA8AA31417C4FE6440BA98D
-1271ED7F25465E994E2D15B4326CF09A6D30ED6BD05D0B66F39DD8F864843B1F
-8031DF58C9B37C10FB633BFB58B7940B52AB6948C4412D59266A2518B5E1260A
-0EE0FBB176C4076680BEDAA7EDEFEB0995DD9A2CCF3EBF3305A20279366B73C5
-F3DE7527AF736D8D267CB71735935FDF78F765DEA560F7F97140BDE20E9CA866
-4242175E7962A14800C37EF65E856C81918C20C040FFBE7DDC373CDF456143B7
-F3AA5026F9B8286B876259E9532754866C649F4F3383C73878CC054CEBCF2605
-75CC0EB62627085F4DBBCE6B6206F867731F47907BA6B5D37CED7D58049CDA25
-7D47AEB352637FC627C28B09BA0B7778DCDB51A25D6088D7989D18C0079D2290
-B01330175812393755C7227B9E64F952CB99310B2F822437AA2CE4334403C6CD
-7C9D007DDF21794D076A5D5263141367A768F8F53D8267251076D9E6E18F9470
-B02BCDAE33E59BDE73E7FF1BFCF40F956914B1A89E6C62FA4D7A084AFDA868A6
-55B77808BDE6448B9732B40B83BC63E8064AFBBFDD187FED36ED67E99CDD69A4
-23F603FEB3890FB19D9CE3600B79C019C5F4E25A63926A8F7BE1B44E53196D67
-F7A6A341F6D7D5E3A991B56A6D7A57A44D255B3CA95F5F6FF0472E6CA0F6F5A1
-D71629A598261C3B7A9BB72F2683F03304936ED01F8A774E74D24C25D5ED538C
-63A8C4756AC67CEFCBADE365E29340E780BFED81A59C98292DAD3A1068794A32
-D28D40BB7BA410274E8C8F804055D9457E4439F1255B8070DCB89C4A72043C71
-2B192CDBF53EE9FC81CFA1A4BFBC12271DE6F87E7059F06F38799F37D49C94EE
-58685D3F47C915A1CF37B2CB116909E52F537AF7CD386D62D01D30D6D079A5B5
-71BE47AD79CD0F40DE5F15977F11FDCCE33B952858D1478B59F687D7E96B9C5B
-D59357FF5927734B19D5B15D3930598F968493970B616D570D3E2A51FE743A82
-E20909091813726FC10599F23E8B5738A90E237CA417B10677A6C8BDCE468EC6
-BD234802C6E4AD49AD148E9CFD0009C97F421070C6CCEFF5076A32EB90F3F5E9
-627E13F658A31CDD3C4A75C66A0508C92785A6C0BCBE2D4C9C1E6B0F33358236
-3B0E68737B23F76B2A2CC1BE7B1B3DF1EEC55F145CD68116804F0238DBDA3B4D
-DE8AEACC8AA661B9028FE89F8BEDE8C339036F53073BD2C13EA5CE4F647654E9
-889DB4B8900D05D84DEA0E7A83532602514559BD083AF5DB829E15E62C7251B5
-B6D7F948C78FE7128AEDB6912BB9B0A398B65C4ABE7E3783684B0B6CBE479C0B
-229923F5C83C307FDD2D243DC71B40EE71964352EE965C33E56DD0867CE466A7
-68B0BFBB68D15B23E918D1D002DAFB4038BB93BC0FB2E7962A3CB6FF620CB3C0
-F850B119EED8A2B877F9E2D8E8F82D1A6BE16F768081086B95A3968175C57054
-70BFC6C9CE582D7EB11FD407C8835C2DB798E25E782488A9A5C229EF008CD707
-3E4B31F5666906DAC6AE081D46D4E61EEFDF2612C3F47817EBDDB61CBA9C1E1C
-A8C70E01BB07146903ED9E72B53BACEF7ED61CDA5812AD9FF1B44682A93F8D01
-08CE1363D775A7C815D4C14EDEAAF507089A503DE2EB81C75C46BC51A0059EB3
-14786BDB0AC405AA352FC5118FE3372398CF1D7264F981EA05DFCB911A2B85BD
-01D17DDCE329F8C570E35484B545B62DD347563942518452FAD1B0DAF30E1DD3
-C4C64C0429D90AF26A0F4CA809B81C29FC653F945B388CF77B2E066563541278
-A3C1348A5CA23836DEBCA15AB78D195C68BB5F7C178344E21FCB44CD6CE12B87
-5A2AFC88C60389A73AB1D13BD86B1A0DE96CD36F7857A871E8231E338AD91A05
-B905E43123473B39307A9492787ED0C693FCB8376AB19F27A9AA74AFD21DE5C4
-76B1119FC152A3197B6D075F8C4A82846898E25B5C5FB90D72CD1B4AD63F012E
-209F805111D3F79DC308C8D678312B3451A69E759DF4F8E8395ED7E7788EF079
-980B286549198BB0753F7172F4A091FE3DDB5C4CBBB6E2517D00B8999087A308
-16C42CC741FEB231C5CB6B7E8F3FE2E2DBE9455BEB14D354113696A54D615208
-E1A95CCF0E0E70314DAE4349DC26212B4147A53FC8A16970B6E37E48E0F9CA32
-2AB6E4598E4FDA267B6A9CB8266071BE3BA042C7D780FE61EF22116CF9642B36
-B4FDEE33D6E3CD64DA5DA1DCE187AABD948373D37B1985D0BB3FEB8CEB2F3A86
-AEA9E8CE67A15672414D3FD1B8B28ADCBBA5121DA3F1B5B7CDDE8E67E6E67866
-B1F02F644B9C88BFCE4624A9A424500BDA925BD7583B1367E2367E1BF8523A42
-EAD38C08A7CBA5760FBF83ABE1DEA9FC1E41F14D16ED4339CD4D17169313F879
-15DD4504FC1BA5BFE21CC6C26E206C4E1B7AC0E84A058B8B5BBE525A7A29A202
-4E0411D0C9185BBC834E8F483509495C203539F7D425F4102EF53248CA943CD4
-5F01026F1B1129149505AAEF7DCD2F3A6D6C494E29771590F658A8049DC981A1
-D9337FB49C4BC6418F271F4E14BA6B223B3CC521FD0879C2C08DAC47BA713FB1
-BF8D9A48E2C1E73F2F56721E8B77ED65E8115EC0DFAC0D61B54D1BA3EAA1744A
-3A0287BE529B7C6749C768F07A07B9C227BA2AD6F88D6AB447614937DC12670E
-7716BD4EB41E3F77A77209CCC6744581DE4B50531BE874AF185DBE34FFA966BC
-02FB132BA1F5AF7E0BB25DEA00E412DAEB9F3D7664B788F7EB1DEED46FFDF9B8
-ED936923D31F6A673E3F5F60395B36672392488191F86263CF52B9C8DD7C3504
-B3186C0388A019F080D80234B68B8F3421190142ABDA05FD325150C6F900E01A
-BF15BAF597B9701A8E3159408067C13108B38741EDD643C62905A25A8913D562
-270E42C47FA20C2A1B814A21E9D477E9E65EC931B6472929C85E8D363EEBE6AE
-750E164D80015EA834FDC8FFF18C79ABD036FD1AE42715BFC3F3967604A5B5F6
-962D95E2F24ECBB719D3608BCBCC89233D2763A6120D2EC68A47F9449171DA73
-5FCC16DDAE60F4F95094F4BB468893C765CB5A2DC840B0CBE7141DCC254E06B7
-22A5A8BB94684E2EFDA11351B6C79481B157D2CBB5265B679CC8604F8C15FC25
-97E77A0DD279EE83F1C0A2788662B7336B3BDBAF8080CA3E905B27838122E762
-E6C52E39AF141B20F3AB7EBAFAC9A933A43CCDB08BFC3372510F3EAC553DBB98
-C65149F88E02066CE6C17F72C90F39DC2CB8D791551DB3374FA50650A8FC0B06
-E42E5C5522CBD3A1C90811519A04474FD7BFAAA92513E536F153B580750A9ADC
-F1B1A5913D14F1AE8028A5E6E3D16A0EA4AB1ED2CFC5DD24A707FA635A210CC5
-9083732A216C8598B40C6E759658B41761C132F2FF2FECDFB377767B2D50FEB8
-06893FC6CDF6B0E83BF7BC5FD2F5551FCA8A79F8BBB89354B086CFBA51AC97CD
-91B96733AE448992BBC1132A4CCC83DD4B3E7D83DAB519FF984E48583CC71F07
-06FF3ED9EA50E310AD68D829491AB9EB87E15EA196EFFAE80953904DA525395B
-CDB33DD73A3E4A9B63BA0BC4CDC8B43836C0ADBAB4238D515EDBEB1B4838E00B
-27F86A3AC3DD1A292BC2CF9C8AE7783426D681B841E4470A1A8D818CF292A97E
-41BD70EDB22843B9B3587482FB8DB0FF148020E516C62ED13C02B0FE7958D13D
-B6104A28975DB0EA79BE8F418807CF2863B5C9D77AEE3D6DFB97348AA05CC879
-B650E0D51B5A51DE309CFCE47CF977C78C01B9564E375C7DE789F5D5CA4E48C6
-39F016B6793FF1981377D3B4661F7688991F9A6A57B2DD8B5D8D794CEE4B7D2D
-783DFEFB64B2B90AE6E6DA6230A21BB6DD0D1D9623B9A4A0FD7E999CDBAD77A5
-AB03742C5F36228B01524708D7A25B87186E72DB530B6D67699D39CA92997FDC
-0CFCE7EBFB9FB28EAAAA23748771A992795D98BAF8E1219CE195B9847170DB0E
-A369A4716D41E25763288F980FC9B4AC4242676E875A2261F1A343ED99BE69C9
-B0118170B3B8756B71AED4EC23829E614C12E7729F3FA9F19CDC03C9198E8A46
-F04033FA8C85B020666D12E8BE7539AE685222914CB6AEFA4C18C9C212C98104
-7333F98F02174EF7B29ED5C2F01E444AD54A4CAFB023FE38878F0158A24051DB
-6639DE54FF45E3526BDE6FB4745D80BD39834B24B4CC66036D21236B9561F59B
-84ADE006D1B8D9E235DC597C43F4C234C686E50ED87A29F1ED362BE315FA3B0E
-C9B842FA46B52058491AAACEE7983A690F4711FEF5CED256D09D4AE7D71C0061
-6227DAF22FA7D30876856A1CE965199A15C65CC8A446FE470D233F53C245FA18
-5ECFE2F4FAC1561DBA2CD5FF2DA8C1AA2D825847230EFFAC6E59C840FF79D368
-CDD0412B4E83411144EAA53325A79F4A22FBECF3F625F047E8B1D025878ABDEE
-2C3B5C6DC7D8EB4F098446CD3EAD3DA0A6A54195A7B399E7CA0780588FC84CEE
-69164DE320825F8A24618D0810B71CED409CC6BFEE816E8C829AD81A8A16F6F6
-AD55D1903E647D935F3BFF542E9947256D1B5035F0E5BBDBB73AF80AE251B8FE
-48A82A02090374E3A166D9C6A038D5C4BFD9D1DB522F18571B4129B47297A975
-65AC9B38E7C841146A5E2EB30821A31A88CE41F59CAF3DC4E48D06DB4EA7BC74
-A1DB26AEE13DE4E1ADB2F15ED40541745CC6626C6339E375BE124FD92E77FC0D
-541104B12F5BBA219184D99B8D450CE7F0098854E4F6156C230BBF9BE2142ED6
-2BAF817836ED5922368FA3BA65F17ED3451EA218641820C3FFF1A362577CC25F
-3C377C431D22B290A66F6D94554676B895CF0C718A16D790C81EC5E925D4D6B5
-623A82C38DE6D5A9F419742C1425A395E9F1DFFAD1E6E52AC4AA018F8D0F5066
-F26B7047E9798D169B39487B285743B67646D4640E9778248D40A84391E26CE2
-C4AAE1B1E0C454C8A985471D22B6B9ED993E215C4024242925C3F2953C207D43
-B928BBF8A4AB803FE2CA94247B4C117C828C5DB6C194E9EE41F3498B0BF81F3D
-8396C84908D01713AEB02AAB05760A2E56A03A389AFB19DBDCCAE4B190DD8815
-92D56C81570B3DA87FD61E42BACB706195D3263D28E567BA9BB10FD3A42DEC18
-E12662BEC6417E3B9B5546856E320C7F7E7CC466F11E2EF3D69EF72A9165A233
-B7642ABBED62B4F20A9D5C0F857329544FBEAB9191CD59F1C44B9AEEB92F45AC
-812154397FA039B7E00BF221EE3ACBD288924D697A0C23601668ECE88EF8EEBE
-D279E953509E0DDD386CC30373E6702DE21CD47982E887521A99AD11532BE389
-9EAAD86F347E52DBAB8DB37BEAE59EC3246328DF0E495DC03D7DAA553EF8A6A3
-C2862E1EE2A8BBB8F1521984DD8FC30C798FD2D79D259904D13D9A3EBDEB1374
-81FB6A5507F2A032F12384818ACE9CD39C6786E8F0546354FAB6E14C920A53AA
-241AB7B99073F12BF51485B7537F58ACEF8AB772E5507763F5DBE520C6FF61B6
-FECEAC6BDCB75A0D7329023913D86ED418AAD111497EEB97EB22B0EF771700DB
-BA8A7AAA5A134C26A630D6D8366CEB5184AB0D1DA6BE411667F9FC170B12A10C
-5167F90F850A18510094F72AB13208EDC1B9BB957417EEA33361CD0F48A2BDF6
-C4413A148B37E61D0111652DBCA3438792CA7E67E710C1402DF0CB975A45DB20
-E112A29C258F825A5E336B49A54228EE9397208572AED7F441EA1AD34B5C334F
-910342EFC0771E267C15DB0B5C0AFBDB1D7C2160ADE2E7A2AC73210FC1D68DC6
-4B332262ED89477BB546F73CB9398FD0E96FB78FF4F8730E357CA67328F7CF92
-2687BB3E9916042A985691E3EA2BD13DA48BEC195727A1AD42A0A6DA32BF33FF
-2EE8CC601800CF6B96EBBAE80E7D5A620491D0F998285D8E85E0E667FF89133A
-0AE50AB2DA68BAFA49EF8C7AF907B7BE11345C105931412DA23870C7A8F8D4FE
-D5715F6B01F18B38FBDFD65E66B616AF01886AA873CB90D9EBD72F29EF4051CA
-60084E4DDBCE0E475BB98AFD60C4A64D720F6FD36DCACCB69A2BF746E3AC4DCD
-96FA2DF360C17F68B58D76629FFFD08FF769379730B41E55F848360A6A25523A
-9BF3ED4EAEAC7743C6F92AE6C2ED3F2F36707A629253067363BC4724719D93A8
-CE1C46E1E16293FF7E24C6CF39F971F53AA09B15244DE276F159690A6F369A9E
-6DE8E69F73D9C794A1C32B0B4B3EE7C58E2C72778AE32122560F9214D7F94942
-8C21D46E3ECB044BEE35934096FBBF009EF3030034AD7D84890A45F2B2970F5A
-9BA55007859A9FB0F6DCFA3E6564B9555E7F3063D46EEFFDD8854A94DE6950FA
-A3852226E010E7C0379C21B09868B6A7300D2772068A449712DD2EAB299108C3
-B4CCBA45E08C3695293739E89D8C3B5D1621F0816F0259C3B1DB4E74BB2D489E
-200BD7B7D5BF1C9A132B9BF451DF28CDAA438803E8656746A3D1C0654AFAB909
-177C1F016517C0B7065E98EE1B21B4D08B5FAA68D469C25EADAE718200A3A4D3
-385501BC72F5999C98F13889263BD5AFAAAF7402864E91363FC0F5C34082CD3D
-2CFC70FB2431CC4C259B9597C7D70FBD0D1FE2C9B6CC3D88073C7627B464BFB2
-9F7F42CE057622037E610FA518F506F9A81FCB940B91B873D0C834512CBF8E9D
-F02F9670E9B523DBDEE9B319995F9B1D612C7CFE4609A668225A975F550572AE
-B25499FFB57FBA86C6799B67B05FD3C9ACAA386CC947F07DD71317B94691AD93
-44530890931AB8249EFCE7659E2D69DBFCF047BA992FC5325B5703951587EC8E
-148DDFD28459AFEA56B72C7905E7415B02E5643C2550FA9D49EEF64D7630F05C
-185421C580BE9780B643330F5B0B0FB4C3712668E851BCDDF8662C5D6E35825C
-F643AE5455597B570D8B43466A748519E1A38C9A1225A92B2490D6993786B476
-E3498C00A1B29FAB050801813006E692EE98A9E1254BDA63D3E391AF186EB44A
-E50C37165E2A314912B9D630035A8FD0961AF29E694636AF4E8912AA9B107AD0
-7E0990A428D7CEB660040F74A48EECD7724F32EE33B5649B79B63D1AEA095CFC
-DFEAAFC8DB328130C261ECF940AAC676D2778FBC6ABB2365662AB1E8707FF091
-BD337B103CE2879D1FE0CDED25A3722D442C28F66BF52C9DE534863EA4BE362E
-8625B859735AF68193302D20887748A625C9B1E5456BEA215F216E5E0A86EE40
-DE4413B724FD9AA1FFE418EA2FC6B2368EFB217E93120F3008BE9029AE81C1AA
-ECE18F0C84758ADEEAF29D5CCF5BF879CAC196750FA5C559179F8A20FACE2C1A
-AB37A3BD510B2505F32CAED1CE7C0C6F095F56B9593D3493E860A4F0CD6BBE9B
-2D13ACE1EA583053B72A0D2245BC677898DE4C57BBAEDD2F2BC42D494B5B9E1C
-CF3C182450250CEF19774E0723A3CA9320FAB92560B8394A14E1FDE84F350470
-523DAD433BA8C476EB389786C089C85E261780CCC544067A82DE3E835EA6A13A
-3597DF92E35A80659FB03F193499D98C5E05D4C365922C20213EA0E713330E73
-F30E866B13FDC36B98557D17D670D016DCD4752F780DACE9CFF8C03FCC05770D
-604D19A74969F03C81E9FC0B04BB36215718C319E4C38D2109D28447A43586B8
-1D6966E885C0E844389595C0507FE8502DA8EF459817B1937114C50A0320EC0B
-653EC5693A2CD74A0BC34E8E8B576BFF7F0F191256A374E48B8B75048E9ED20F
-F5D9329E5706559E1100676A8150FAE9FDB210330605B0694EB2D5A04EAD712D
-7BAFDEADD782FDB478CBEE8A0175680DA713F8F3CD27E025E28D3E57F1EE98EE
-E5400A38A059B70E8F051B56E5B463028A25BE6D0C18ADD9B865F63011843572
-4AF0404EE430A98267B00EABA58D9D815657871D3505B506A64ED1A5EEFA47BB
-EBD1513B5400A69FA522C3E12272BB8215E235A397EDE80A59BD7D0C6CE5B369
-0430BAC269497F415A3613048C90423EB2D0CA0F128924D9546BB21BAC9A7263
-B0496520AC7264BB57570BD87EE56554078ADB66E9A61F2BF6FB52992694F753
-DEB205D221A9AD1E5FFE3B1E9AA3F3169313D71061E2464531A9BE1603C586DF
-FEDA27EF90425725CBF4D04B01D6BFC5CB04BBCB9F2FC458BC84242ACE858EEC
-FEA3E84675377F5E65D184B4B0D29983B9576C77518A858BD5C03EEAFCB70283
-764E379497F6D1D69AA0AA51BABEBF1C70D0E921E28ED71B2781C293A27F76DA
-E29775D9AE33DBDE9DE3E9E5E43344D472BBB568CDDE0F46F8BE2A2534033633
-0A47E91EDBDDA8714B7B6F258ED7E348ADA6C4FF9A7B5288A825A9C5BE1F7387
-F69CAA5DFFDA4BBD1DFE0911BD7F9FB09FD8E718D36B4A6DE8C41E538A79AFDA
-72E78F0B9301CD81EB671D7AD29C8B4511BC43D9A60E4F555AD27D65DFD23CC7
-C38A799ECB6A0290B39B4CC2EAEB3A0BE8AEF9E484071CD400A3D99BF2545558
-0B3580CE12AB5A32C37A9DB4394D6DA8A5F6607D0A9C3652F2CF59D06A6DD5BA
-4F96BFAA2CE3E8720712175978263BFD8B8E849D532DEBEC7D1C0252D428572C
-42B339DA0B93062B80AB251FB9E0FB7F759DFF33D0CD5AD743F01DDAC8C18EF2
-0B2CF667A27E3C56809374C598E8387DC401713C6547BF7BFE3B9B7BD9A33D4D
-DAF7F15CFEB827E03AF5C150C703723ADB29F75C64A7E15135F8094557BF2C29
-E4477CD3AB780729C2F43836EB677ECAC650997CD5C8CDD466D7E8D8DE20989D
-596BC11396831E0A4BECC03B9422952076F58401C8E176C2EA4996FD53DD7DD0
-2552D2B01D187C247D1320D65A18521DCD169684248C3ED5C8E3C076F40ED5A2
-A89C186EBCDEB9CDEA9395149D4770F54FDD5EA8FD0D5E210A3707E66395CE90
-48D92C1392141B28AB22C5ADDF1C65EC7D624299B5871E1291906496F69402AD
-2EBDF50ED9D8265A2278DE9137C897A9D833D997FE0812D2AB1413EF98973258
-041DAB207602E9A80CD8966F979603B9DABF0328705B82A3A655E287411E0747
-15DD264C707279A61AD80D26E79A1363C809888D6572B5AF2289898BF53A3766
-A677F2B52A88EC4C85CA29C4C5108B474F6197AAF7768A693E94EE8E7C20224F
-10973F20A6AE0A9B95ACA0F8DF17C67AD3EE91F6D5FA4320108B518FF7788CE6
-E55B0F40711B5B22440D38BC30C7A2E1FCF1C64A49DC41B9B91000145A9D6539
-E2049C050346151C73BA088284D412063A2B17E580BB210DCBFDF2648189C79C
-E36ACDA3F3A12467CF7BB342C58B66F1AD2AA969BD8778581D6358166ADD0FE0
-1315BBB40DC2761793E991527A8EAE6DAA487F8032A40820D6DE6A625DB18FBC
-8DBDFB020BC66094CD4EB6B6A649EFAD2AFB27E36330D8188281719EDAA4793E
-A15670CAD04900C16902498533D00AE717B55430112BC66062F587F1FE719BEF
-00F152A9D0B066E216FE610B04C0FDB04958C477C140ECA4F37C920F91AC9E29
-A58A13E1BC4F101DB4F776E8B4F54D21A82FAE329406F44A3725ABCA421A7986
-C49115F0C30F96C85F2BB60CF1A363411DB9A83CB266357E87D17267F211049D
-C1AFD3AED644AAA15AD3C123E9C04FB6F8D7877217C98B3CC2CDBFF5927E9408
-F24C8C1C3B5FBADD709AD5378F3E6D37B1C0E5D6C9FE40EAE648A77956DA6834
-FFAA626CA253BD0B9622EF7C65340577DEA4F17554B5BC386183A9DFA9B263C2
-9D896CC0F2EF0C875DD3DE74F5AC50A46F232E4CFDB918354A4AE0E06C1751F5
-0C0B2622CB9904CBB6612BE56B8AE2B2E2A98A5D048175585E7A3065DA672C8E
-3919DCAD8E892A1CE242853A138F1AEB814FBF075FBD3E5AC6334B88C801085E
-7BD1F7C1E42F2BDA4BC8D9E8D2A7C86E40A27E0EB178B4B290C8BAAE509E75D7
-02E12E798529D89F9F271F44A4D9D92FE0C18548D20FCA6486CAB8F262CF65D3
-D80596FDE8039CE6072B87C3D5E626F201FD89E09A9954C7DA544EFE474C2500
-033D61146A284C63EB1A865FE13BE932438EA2949292886176771083BAB18628
-B4804B4465FFD9A34531DC7E65E1D1F78ACAE918FBADB9B48C23A684DF747A65
-28CB9E3B57B509CC567A21FE00D1547CC918318A26825052175877EFB3EA7B34
-708F4AA76254ED84C3F8C1DBBB6C7799F87FBCE1F8F0CB42535F486901290C8A
-D345D08964FF40AE0AB35A4FFB32773BE84D4D1B9577A3C7D70717EE80B024F2
-9393E5CC42BFDD383B2EDC10F726AAB4F5281E23CCC40BB4CB7CEAEFE5B1F349
-3D46D86DF6611ED1FA3D47E2931974F145F9A67CB855EEC904386490A8C93A5B
-AF09BB88A01AA220988796FD9B974E89A5B59FAD2B3936F2A75F0E8DA5C03DD3
-88DCF0BFCA43901D4347DF18975703643F893E314796B25E5D1D41FFF2CA8108
-0B1181DB70155D6CC505C63A6D7DF7D533720BAFFA1E6E41F04CA7CF4EE530F8
-F46832C8A4B753533B5C9BB5C97BD82F799AE52B0272A33C4003934C899D96C7
-84A5471ADEB37FDEED8F00CA7BAA8AA063D37D48FDBB0067D260D20F7E842A73
-C32DBE9823F83A56D253AC120EEDB0F9B4DB879A8D620704DB2C99163FF100F1
-7FD8538F7A20506F4BD54CCD24D4E662089A1D3A0D5FF151C6192CDA664172D3
-9C1F20CFECBC0E4348BB5D88D0BF4BE72F07B9C0737641CEFB7DB6F285A1353D
-E6891A569402C12757284E9A93E1B77C1E58E7EF2837238EC0BCFFB06623FDD8
-9401CA0770F158702CEDA77E7D557019B03A5125372FFD5141582FED1023385B
-FD27A8B645DE6B779B92E9FEB6C3A02AB4DF19F3DC484D92E63CCE22FB733AD6
-3D55811FA3BDB8E2BCA5AAF2417E70FCB74ED6FB6C5B43F5F96A3019C48F9D3C
-CF5BEE959D5DD08C8694E3E8591434DC2F13992177B6F99FFF799A09623AA54D
-14CDB2BCE9FE62DF68DD01B9C2D91FD568A408613E013667BD5EE2B47383F85B
-DD54D1C8CF25652A5FC7B3803A5C6EAA15506746A44693CCDC4DC6A3E869E020
-D2FA893A63A719F0AFB8F9F8FD3C3FAA25CEFFD2E6F344F0D21FAA310161E928
-57C15E2C8118F4F8647B1872FBAFEB9741A58E8F45A4ADC38BAECBF8DDEB9F32
-E864D417366A6EFC734DD617CB13E191DE7FC92D554C0FEE8399FB580F3E9473
-E5DBCD1300EBA2DD843C95F0F62377BC064BE1046FC8E5B4F0466A7223242066
-83671470644C2F035B3FFE37CB6F58A61E527D63E043D60B8C515FA7E98AFEDC
-DD1866776CA51EFC576A53FCB0FD8448461576D55445122B9D0440FD285F8B94
-726A796E8B6ED4ABF5252C8E0D33497BB5FA6E9A07F81DA77586F094EED9FA9A
-24902FED4BB1CF856AC0C0CF9B930FA6164D569F2B4802EFF5B6527F8D7FFE93
-A907F9F7DF56AA4CC23125F165EEDB46AA8BD2ED6A8CF84745F9793A2293143C
-1A8C4F0998A7CD4433230F1271987D8CCC2F6640368240D7E6BFE8F8A9DAF521
-58C8D9E8914B4C7B9F2B2A72A885EDE3A71CC550053F5BF3457FD93534F88F9F
-239690925CA1785BE43B624A00FCFF123E43047951C51A000BB401C5E2FBBF77
-4F725632E6FC67C64E5ED6FA95DAF0687424F94EFCF97B72CFD6316F7A19CD58
-275E600EA4F13191DBE69745885C8EDFD206C5BB8769C8CF547F9549A22F0409
-3C638977CD2D9768F77D363F2D2112B1D0BC918CF84745F952D271B1CB156A83
-82AFA9670E4B3E66A9A45DBE756BEF66C7A29C8C89ADF7E3B766F16CEC8E1B99
-626BE9AE136A78E9A89A7D2D077C01E3DA1D316800F859028CF2A4689ADDF0C1
-009073513EB0306F6914A9178762E0E9E825211351C67E9B91A081771047639E
-516F6B12D01EDA4F967A91BCDBC67B55AA74C6FF54A2FBEB2F2C19CE76E3F173
-ED70166A1D912CBAB7882517ADB1B6216B8290D54D993C0B70E8AE167209A11E
-BBE4775288D61946C94882500832569AE45CBC885B8D6C537F4A6FA75DD447CB
-5AA2831D6EBB29F8F7CC7A29D8586AAB176E63142DE4A37720FD9E37F09E9741
-730A042FC35B5334D9C490C78C66BA3B91554A0706770595B05BBF4C86AA1BBA
-CD7A3D0AF0237F4268909EA00B16AD0FA8802ED22AEA1F697BFAB2708EE8EA22
-38501503DDE776A9C7273B8A0E3D7E7DD15C3D6267FB4F4799AFC48BC7024789
-B386CA202DE413F2E01ED03BD5D0D1D5B3FF99076B6CDAA89C7A0CCE0D09EC77
-06496B9A9C88C1EF3F824497A140962DE88FC229B82FBE3D07ABDA9E7E66547E
-DCD987D91056B64792C7DDA0BFAD81E91C36ADAE4F21D793087DF44D7F5DADCC
-34BBD2409E165C8FFA668956157C13FD6981AC63D88A49931A673E2C72CA9341
-5B3A0C51F4D612ACAFF37A71E728DFA18BC484EF8CC0F1494B19FE2677F6C8F7
-D5F7A91658577C9B816E76AFFD1F9E86E5891407B3FA4ED9FDD88E84ACFDD764
-42200A2FEF9831D9D3776B2573047B24CA4108E0A71F83110154ED1CFCB44DC3
-6D1ACC7FB2F695DD499FAE008A8CA7BFC5D599712B0010B739C5907AC069F871
-D278A21E252DE2E2CDB736729043213EF18F3A4148FB8FF037126E1FEBE67E84
-61CCAAA685669EB9E0CEA01FFD3BFF6D1716A45C6D45884D787D15B8D0C7F929
-C85FC6610BFD4B0C1A4A726755D485BC5A5A307E04C45635F05F6D74337A375F
-2B330E4675D3AA147431B66C116C996A27E5FEA04F14A62222EAEABB13FF733E
-878993645475F2F9BDE6B1E5AA2FD4E13EC030B98100C8908655D5053794C021
-A3DC2E11B77210BEA7D506940A2FDFD2F7D1CCFC294F6BA95D4BF986465C8B80
-78FBC93F860FEF5422B68E6A000D213F8A854B3036D5D60EFD339A0D501CA2B6
-6FB5D3F37A4F23F64F16DF01B3F31C1973E60ADAC1DA4963F6B3B58B0489E4B4
-1E6BAC48B17383C35082FF43720BA20CDFA532FFFB076F150B17EE8C58E27A9F
-2868143CCD8B2E0D8EAC1ED6F2EE3AC85C3A293F9548F69808B11D80EFE0AB09
-A13B1AE202B8F0E643802C2E2600464B4BEADA5A2F5575A128584AB509AE171B
-70E1F14482FD77BB899AC1AAF11140AFDC85CA54EFE21EC3DF261D166EC904CF
-1CF201EA05053A214F14A0AAAEBEE0B8D9B2E815458586B8DE99FB07FE1A4B73
-47C316490F891A7F76361447E54F909BB41A0E0B91E435B5F5E92E127AA84194
-B47B7F6425509DA2F2F11C3849545C1856F5F959B32E7C187B1C480F65FCC153
-65C65DF9EAD804820E3EA361753C0D48F7216A36DA1752EACF3FE5AAC9BC5B12
-8926175550DE59E0B4A3DC1B3A6B3DFA8EB9920C9AA36D3D53BC57D60EA2DB5D
-0081DF3BA8A699550EB2BBA928D6EA9ACB2AAE7033EB441C7ADD877FF4C4056F
-9FEAB3B7FAEFFAC4B10BB121F0AA248AA6D6F83CE3CC265E195DDD6151192697
-B98DAF4BF0ABC22E81C86AD2B6ECCDD888313570F3BC9FE76D45D1D536FDC2F2
-4F6F341B03AEA842255AFA6D1B2F643B01CCC1B368F0EF82A2D5D4A09384016B
-8E0C1C52B4F32DD75C0FC8E18E32C20F3C29331CFA8685FD411A22E076DC560F
-1F37DA4C6803B0048662E11FE614B41D3E7F9AACB14D2E8F145328E9D7A4D999
-81F9B8FE82B59F1D2EDA95461B5F6BADDA8500CDEB07B2F4EAF64018D8B4D853
-C7D1286E50183C5B6CEEC9ACFF02BEE65EE2C3AA6BBF38FA62941FEF3620648B
-678C8B29356256B7635C1437F04EFA6268A4678CCBBF9FF1787623730D2AD27D
-A5E76ACD0FF2ACB9A57361FCD7FE655B97D5C388BDD849952C9450ABA55A855A
-465FC9CAA2B9FF2AFC55478DDF9355299B0496E1F895701389CB90D27A193F81
-A0BCBE31662B78EB420BCD0FBA72D383885DF44B87D85B63F4D17FA5705537B4
-4351772E4C846FC0928672749A1A5D27D0514E3D197EBD10BD29874FF079B7E9
-D5DD1B5C9B785C0CB1C585A355503AF31274DD1B97A12D3520511595CC76E28A
-ADA3D43AEDE2C97F90B0D3B1883D4ADFAE6E70012AD1FF8BEA791841A2B85410
-F426114F35CB920437931E3CE0CF0EDBC80E18E5B0BE1E16E6DA2D5DB3870263
-A3AED0B0296E94BF491E435822092E0FF556B462F57466551E07308B7C2CC85B
-DBD324ACA2612B8C8D02952BEE23206D5D73F5F6E0104078E0B427A6731BB465
-BB277C0371FF4016B79729F4593CD57AD36182FE51DCBA880D48449E70221D45
-D7F515D8B8E6CFF2F40BBE8BB807644E4BFA8437A0C1E2A2594D2E81882A3746
-F4E9F3C905DCD2EDA8157E8C956A484BAB6C7EF3EFB95AA9F86711BDC576EA2D
-002BD2DD3DB45FA1C80914B94EA012C2CB326C77DE471FD8B5ED1536ED84E4FB
-DEBABDF2D3F4B18B891AF0E0A57F13CAF26EE0BBB8D21BA80FBEB00289B67319
-55A5945C06D71213B7124A9E7186E54480A1C8694AEBBF9D0059E49726D67806
-A8FF9002C645E86261AD11D3F46B6EEFDA628DDDF0BEC6DF72EF9B22437A13DA
-F95AF287799D7294BFE70C75C5136E1C70C7A1CA16E5F9855C9C0DBB15CD65CC
-4A74AE8942F3F5C1D5F41F8DCB963E0E814F3A97CF00E05D5ADF12145AA3E7BE
-794BA735866995F227544E229DD4C900222E9D9F76FDDC7FC8DB78AA79D1378F
-EB4593630F615DF51A859B888FDFF02BBFD06E59DD8B7F7AF0FBA98A022DB451
-158AC56D26F54ACE8943F7A49B33E848AAC6E330EA816459157EA1474477AFBF
-EB0F3EBFD6B9B1C79D4EB28E9C64CC0F14C004D504FAE72AB3AC97DBC574DAE5
-E511261192E63D5FD3188FC846F0D899DD8EA0D0D1D35943FF562B76BEE74CF0
-A141E1B48FF9F8107647EC1814D76D9826B0554CDD8C99CB4F39BDCACFD715B1
-ECA8991E4232C9B5C4C01B72F39C79B2FB6659C7BB459B3F3935CF0908431000
-15126287A7B0CEBC255125E72F22B3EFBDE6208029DA674CC5B805DFFD61F863
-62AA7FCA523F0713782772B1F4C44C50ABAD90E92325BC01DEF9E147256680FC
-0B3463651C415183F0A9D76195F81B73A5E829D58B52C7BBA1BB06CA92943388
-8E18E712115060705EF4B86BEE5898AF1A9927C389F0EB5C9F53E531A1F9302B
-2B7AD17FC6D154411DA4E54164A1D4976BB9C452449967E2D0051A642B47B850
-DC7BA8C09C499FF9CAD8420F01AA14162650DC233B6F93C11033CBC329FE027D
-9B37E958ABBE20D125147AA619051DCFCEF5DACF1FAB212B4E44D6CCA29127F1
-84FA5AFF25692CF492033F6DBAB9E536D5C18F23A534CF0406CE7AA0A8CE9E23
-9F8489436C42D36DDA54854ECD5FBE5EA7F5AEE98D06929555F96764F8F5D7C9
-EAD05AA2CDE772F2F45674917E8E21503E79A3C5191E68ED2A98554EE01F4BC6
-C5C3B2CE2E6A9F88534DD7DEEED8E2AC345A9C44C40EB676706202C041EA7864
-35C27C4B153FEE4862F1653C77BF7B8FEE2ADA8DCDA824060C8933045D8D9E63
-F0F69CD7A6F954B0A9E85F7C138F8FD486D92584FFBC38E223EF5FD4558D84EC
-A8127E7B22FF5E075AD73AAB4000E2E53B54F8D9DDD43C7573F9F42EE6858457
-35149769ED212071BB9202245FB7FF304B60B403EBF1BAA6B6285C0B591D292E
-1C4060AE684965F5EEFE270D5B6623FDE667EF39907FCA5DBA2C582847DED443
-3D1DF10CA8EC1B5F70062BEC4A7925056C036E87186EF573113C38E31615BBF5
-4BCE545B61A6A5D8F42F4E0087D881623F128B5FDA6E8EB090A075AA7A8CF33D
-280AB71D5C139984ABA00A1E5238628F14DD018464715A98211662E4FC3FC817
-E741D8978F6E1DBDA5ABB133F58254941C5F35EA5266365F0460CB1ADAA61900
-6638FDFFEB15F269F5E6198DE6EB0273C9E67127511337A4CDCA33CF19E12C45
-E19C2957DCAD8BD625D8A2EC7E8062E3971CF64473E5E262F779707FAFF1B434
-38B22B4C2FC302CBA5FB6700745EEB2403C529A05BB341F3AF07C12677955E35
-BE7BC991BEF2B24F3BC4A0AEBAB6F84DB8F9D91327C68041799BE1CE104170BE
-7F87650DAC79B191EE15E2A4BD69E67D092A69F6C1899172E3CD6BD8BB751A3E
-E9E7340FAF30B562A57521F66BB47ADA29E6D419630F6C725D3594A9B2F91AA3
-9FA79D321AA64EDAC6755E67C0BF440A7F1EB5F19AC5BC90AA89E71776022738
-492FDA1C935EB8004D49F83F792D9B525E8F078D2B2A3CFE1E9641D862620043
-2DEB1D9A94CDD4B6519F0D5C05FC0A0D88CA37D2254CAD25EBD6A6D2EE55F29A
-9AA6DC6D4078D2709678F2EE30A1B1856F19B5B174B9E24D58C49B4F97F9DB66
-3FEAF8DC4B6D19B6D80046ECFF48E9169E3EAD0894A8B4BDF9B9AF20DE83F28A
-814B160E37C765A8987B8EF501B84F0F05D853A56031A6C258804A4AB72E9BF8
-5C4F3751355F4F3C087FE2D739C9D564C5AF2189609C042F745E807533C4CCED
-891ACFA4DA4D65712275BA5024F81265A589BF19F3606873D0A43DAA91152390
-67AB6335E3198AE7759EEC131B284E57F970F6E95321BD0195693927BE46FB7A
-F930D37730D31F284FF9223A775B4DCEC39CC2418EAB831727F61956D25C870A
-83D3631DEC6DAB6E69BE84A2CA4DA29750E29B37DD1B9C0F4349C2A36578EE47
-8807A83BCF7931787AAAA5159880375FC0734BF290C1F206C90A1BB218121E51
-3ED345B406AB7B3571857135A36DF0C0B344D528CC6BE4A0AF9B6E8B0FBEE5F9
-3E6D1BBA29BDA06F63249087364D81063D085F4576A59955857428B801AAFD35
-85DABF6BD4E7929A26B5500888C9AADB025327DA99948D556DA48E8CE04B5988
-93401AC69CC6B9E1F08762D33249EF3F938E4771772C1D5A6801DB956A12E409
-EC8BAEAEBC8492175CD184AAF63CF1AE1EBD5142FCD911158859B7210D3D8DDA
-748AAB8B28DBD425EB4F4C84BF25D767A1A52D19F4940B8E47F6E375A900EF9B
-09838CD5763E2625399CD9ECA79BBA35473289091BE60159B19F361E690EEBD9
-01CD36E1A6E6B5267C70E0485437C3CDAD6BD9FC4B8B8D29DA28A730DBBC738B
-751611DA36BD7562E2EF5F8239C403EB5DC2817CFD8F84715203327671419E36
-A04F0D543A66BDDC54ACEF5799D316DA2B1285241FA69E34E795151073557908
-FD230207545DE1FB62725C6E900E7D33F0E897AE58DA0CF3127AD87618E5B8AF
-F45BA9D7E01711F648C7029AD181008B6CAE78861BF37BEE4B2062672AD87958
-9F0FA57635E376CFC12CCF17C18750339FA058AF585533BDF66752C4EBEBE153
-9F0A815B6D4D30C3C64D4C91FF36FEF4993EFF26CF08D366D8D95E8FE3F15613
-5586338DADA5F9295967E81DE02E184329B8DADCD5D9D472538EE4A43CAFEBF1
-E31165E8915707AB8C002F3D947B794EC3880E6251D9B6898B3B6179117B12BF
-F49A615D657E38A25F7E2DE9A88FE8CA9526C35D0C156C30ED9712EE873951B1
-1181F197F9952C64214411F2AD9D96DE3E508108B6BC355B5FF2B65ADA08A3D7
-F27A2EBA663712EB49866414EEB2BC397EB6D65BF5341A77B1FF16261B06C7D0
-1842499BD48B0916CF918D4B3A4E73C20DBCE89B6660FDE6FD044B8D6FD83156
-1425FE1F267C4C623B6254AFBDD2EE08D021A31DC240F17DB6D911909784D042
-0EC0D12D743F356D8C3FF8BCDF9CBD49B512B17C3E9653CCA83DE38AF374FA0F
-0827682E347D6A9205BA611B8625EC227568F823C87BEA48AB2727FD690A1503
-C9B4E16AE489008F88670793F6059A72ABF86B79DBE72D34F2B6EE0208FA57EB
-922F1A9351B2F02F569E9BFD5261B8CDDDE3E9722FE0741F99DEE0C873259022
-A6C8090822540359E56D3D077E615A7222B7593854BF0414ED729295DA8E61F0
-71F646371F6B7C628F7C12DD12D9825146BB2A8CD8A82987CACE36FAEAFC6861
-A0A6B5045084ACD039FAC09273A3619DC9D3F16EA3AC87BC865A682926B5AEDD
-57BD20A479BB6706FDF90823E1536F0BC3EAA621161CDEBAB7FA3562C08BF94C
-84A89E4472FFE3DB47D01C301644C345CCB43EBC8C7B9FB4F2723BE4C987C8B9
-10769B0553B96492D2F74A321A4D47D5C733A013F73AD2EBCAAD97EA4EE92848
-84F92E32EB6BF7C59440A380CFFD4E30B660716D804C3FB1E544DA5C9DCBA601
-5F26A44F20E401CFB0746315086883F2325373E33C71D9838A14705FA3C13639
-07651B9888E9E5306ABDE3A5BB17D982C9859635B91EB8A73B5F710C42E47A7C
-B677E5A77F9055350E1F54860232129E59C7F4C43A7E654F8001F91D205B88A4
-AD8C52DAEA28839F8B184D16207838FECA138105416CB2EF52E0D9C012110677
-DE8042420F848095C493995E2B60C009451FAB89CE596A87664502C9C370A724
-6C22FCC9208B1C8D974BB2611E3FBCF5049D1B2A807437DD1B1FFC6722380717
-C961981C6D853285C53D952CFBE303883867626435463D68C9A75E270FD9062C
-DABBD7C71FCF0CE304816C18FD36D740CE9D33E494A3C5A03E432D41718F81DF
-DE593767E3AA960F389106A77B879FF83476801D85BD76B3B92FBB043BA08E44
-ACD961F68BB3B1EFF42733096D7DE08722DC82396B643805AF7B3FAAE39D9BAF
-75A78EB9D037B6B59776934A07CF3D4CC1FFAF8A26D8DF3E04A5A8770140DCAD
-55957D53DFE2AFCDF6D21770704D62AD6DD87313BDCB753BABDB9B967264AC73
-0373619883ABBDB392C943437E552031441558C80F44F487B3B0496DE7E60B61
-C79C8A80
+D9D66F633B846AB284BCF8B0411B772DE5CE3DD325E55798292D7BD972BD75FA
+0E079529AF9C82DF72F64195C9C210DCE34528F540DA1FFD7BEBB9B40787BA93
+51BBFB7CFC5F9152D1E5BB0AD8D016C6CFA4EB41B3C51D091C2D5440E67CFD71
+7C56816B03B901BF4A25A07175380E50A213F877C44778B3C5AADBCC86D6E551
+E6AF364B0BFCAAD22D8D558C5C81A7D425A1629DD5182206742D1D082A12F078
+0FD4F5F6D3129FCFFF1F4A912B0A7DEC8D33A57B5AE0328EF9D57ADDAC543273
+C01924195A181D03F5054A93B71E5065F8D92FE23794D2DB9B8591E5F01442D8
+569672CF86B91C3F79C5DDC97C190EE0082814A5B5A2A5E77C790F087E729079
+24A5AC880DDED58334DD5E8DC6A0B2BD4F04B17334A74BF8FF5D88B7B678A04A
+2255C050CB39A389106B0C672A1912AFA86A49EFD02E61E6509E50EE35E67944
+8FC63D91C3D2794B49A0C2993832BC4CDC8F7BD7575AD61BCDF42E2E421AA93E
+3FF9E4FAD980256D8B377043A07FC75D6169338028692CCA8CD1FE92FD60AD26
+D57B7519B80A8F8DCE9CEE5CDF720AF268D3C14099498A843D76E3B6C0328F24
+D36EFE7F5C4E5B5C612786200C8DE3A41EE5F1FFAF4097653CFCDC8F4FD32E0B
+03EDB3E413283B9EFB0AC33B055617005BC9B0057FD68C52D1B0E67F0C571685
+767F2AA85ADE4E0104A1C777733D5E318A22A9944336E5B98D965E50D31F357A
+8B6EA5A0EA98E1B027CE68C2EDB149EDDD04ED74A1B3D206D471A0C11C11449B
+DE190BBFEBC08C9E1B7513B43DA3134D6B11A2516E6E86B67F68C970A320D05E
+94FEC57FB347606DF89989C33482BD09D011C55AA920319E7B26A205D3D0F004
+22466F09C0482A164CFB27EF6ED2B040ECCC3DCAF345B5A73676F193D43123B7
+72FD6CFC5E37930E61EBD5A6307E4DE70194E6384EC0D79DB6AD86D3B319A31C
+8B0589D0FE28241D8ACE280D0530EE99C80723E560BB72AE9D53F4713181F491
+344B06D3027BA4E9E94D4305BE1D817197C54C8FF56CD6964165F6448ECC8A8A
+64B48B4F0FD69299A137589E2491A283509B21A3A5772F75B7602A9F60AE559B
+07A58436D04222C73EAEA72DE9A5A441F88D27C11F4F91255EFE280E91A4ACAC
+1E98A4E5E6C57B9AE86FD218C3CD8F24A4104156A80F13821384E529783C52C8
+78B94AB3A0096090867ED32E8A30980E737922037F75F062BD83BF4F5929BC51
+CC22AEE2DBBAAA001CFFBFF41D258424FAD888FFF1BEAB796A44E3126159E120
+7E4025C676CF94888A1971AEF8B6764B3AF4A92D36FAF6FC56FD049710EE3782
+BC2CD84FE2473F133BE03C1346B875463F126DCAB15C7A9BCC9A727D23611462
+4E8D2BFD2466600285D79518712B8681ABCD69608E6AA9578F7BD771EC36E01A
+5A17BC17E375020ECA59B43790ABEB9DF5F4FBBEF807E5699EFEAC563E1ACC5D
+EFA336E75DE6D8248E9381BB110884FDC89C2F9A41EBBC9A8A1F98E6A41F68BE
+EE30E25CA148C1EFF42DFF8C214A6537AB11F260B8C329A4947B5FC8DC9C5622
+4DF7BF4FBFB00380D47BABB03BC30627AA74103E553F55278F538EDD8C1E64CE
+0F1398CA0AB5A86630139B4A7E8FC02804CAFF3830114640AE50D2FDA3B561B5
+C63AD7EE3347804CBB40FB1E77A6C89735DD870351C3A1811591AB493251B904
+314F65791963C0412377C1D02362C5E9655F1C3D4803CD379A8EF24C48218C2E
+DF1165840462BF37DDE1B8D5FF09FA2C3B261E2F1A65ECFBE5D4EAD43B52C029
+EEB3948CB8A252CBAF545C8FA1C31E920E23A12DD7222CEF2D2A513BD758EA13
+DA33BF5FBF1D734653EB83DA2D374A5B9A0CE316F24EE375D6DF6BDA49954C2E
+DB25A88821193636119D469BA66E5DAA9C92520FD4F84426A4E54273FA469084
+7517817A6EE3E21176D333825E88046F50B3CF6938AF9BA79A2F51398239EB91
+1A2D07F7FCD948427FF62F40FF95E39FE1A1AA8451411563FD5388472251C155
+69BDE9283B41900B21EB1190D06E6B13B7794FED020D2C1BDD205AE77B084BCE
+EF628249398B496DE85B406FC2E1939EF00DFC84C07E26CF72EC401BAAE756E5
+7F6673216E7560D1C2A723CB405EE5CA474A07F61B81F8836482F73DC9516D67
+CE0CB770EAD755B6B356198B4B97EBB29C63456953270CCC8D5650C1D006E69D
+38DE2DFEAB27DAD50A817F0D645D30AF5B75A7B53CBD3D2B8D87BD0A7E525AF3
+22F7ADDFCE31716914C2318260C2E2B4664893921B68C5A93334A361D94A759C
+0D7B146D6FD94F0442D672BDA0F6432E18F3C5DFA37ADA378D95B75F413C9ED1
+BB5C606A3EC7DFB3F796F59B0478C13FD1900381EFE0BB5242D5B5D34D03AF1D
+4BDC93EAF8020E26CA23C8B0E7DDEBBC6762A557067A4CE05A524188A8F02E2F
+3625DA38DFCF381727887F5646A3995A8A38A5FB1E5D5EBB395FDD0B7C8E71AD
+B48EEDB62AB2CE99D121435EFBBFCEEA69AE9ED8238B60CC7288DE33C766CDFE
+15B767B4AE2E6CE0965E77272AC9F86023DA620548CFAC85BC751C44218A29C9
+849F1C2DCBDFAD895B54E51A569952ED50F82DC8A19F367E7E44643854EFD6B3
+FCAEB04E55E4661C82D31E2932611748480EF61FB2FBFB0CFB940BEA81AFCD84
+4C6A6332D7A600170E38A8EAFCD4F93DC153C43175434C86BC747348FAC61B76
+1FEC9027C1A193E55C80F1F20B5317AA0A05AAA36AE235F6E49F06E570FEE798
+84857D7552EA92EF3EFAD52DE39C2F8F43C59E3A957B7B926FC95FC4B60186DF
+7F3523EE2AB74E294C8C4BCD8B4975E84849E0FBDA6C0B0F24A636DFA578B122
+CF97BC5089E21E9F5298D1C9F30CB8BAFF6A3A11BB4D9A0A5CF2B18D055C44CA
+4FD4D8FE1AF3630907DE7E585AA811F9CD11FB2C8FC791851D651009FA5DF20B
+3C33FD2FF848A9E3F5652BD294965A332DD3F246C91B0ADA34017FF2451D1394
+F9C3C95AAC6EC8062BE98E8914D51DA6A164AD13938693D446044859D03A949D
+F9AC5DF4A000CDA98BB516D762CB9F6D44B5268FD0C26E88BC4A760C0F75A140
+DEBDECA4F511128B7D2805872160C55236F0A0FA7637FF0D4E94AC079CD3C8A7
+D03A5A56F26B0438B577C46011A10532FEBCAD14FBD6032E224F45691A726886
+56F305231EB2FCDF59C8BBFCB5DBD2D093A0E84D62AC93A2312CA69295E937C4
+8DBA1802B85F54B5E7E6D6216A918F911FF705D3B5CF055F1D873B96283A0B53
+59344D910CD396D883F6F7836BA65FAB4393A773A8F6BC298069E5BA38210EED
+49C9D920F718E3FCE692527DC7CCE6963BF744F2C91BC5952564196D60574E86
+87A0FAB21F2DB2BD5A51D7FBD8FC19946D24E5A228462C4772F978E650ADCE3B
+8D66B9C21279C531CA1C3A8ECE3420BB65837287A7222CC3673A2A5F8BBFDB60
+C719CD073EF9A23675198462C7C87B24CC92D6AEE5C25AC63855CC3281494342
+D28F3D2FDE0C183486769A4FD5B0143193D31FCB2C2A14E487BBD96D0BADBB64
+D1B56021C363A795BF10E2DB448261C363A54A4AC1182B470C457AA82DF3F5D1
+F4B329806141EBD53CAE309319B94133D7EBDC2D0453A905ADD207364371E178
+0A95C2686E3B34C4A978BFC0EE968C39ABA00889BC5149162C2B54483D44FD3B
+5CFF41F611C7E03B94945F414560E874D7CF27FFD0630890D7D7EA66CBD15448
+229059E1C436BB33D69552B5367AB5D53591C4678D0C704DD3EA23F5D9E8A7AC
+17D003C19E333E726FFFA2961F33C70F429085F7BFE3E2510F59B78F58B19CB4
+01B48E184BAD9020FECCE3AF52048A056981DAEA02AE78197E65855DDB170616
+F54278395D9EA50DC83761AE759F9CDEF9E1948E7002414FC05286ED793E6662
+3347F2A9AF8917493D7305B92CF93E8E9185F70015F5594084298A6C2F9FD3C0
+689F262AC9FEDC9B89577ECDE92F08D3142209FBCE7B5C0A840CC767BCA56C20
+4E4E545E2BE4D21C53855CEE4CD0AB35D1A604C0FFFF77DBAE4289752276559F
+A05FEE65F45ECAF44E95E23FAB6052195C7948AF0B1126482D4E02D72BF8AB03
+DE0F1A632F7672AD9DDE70EDC82AA993678A82BEAD0BC2649C4707FD8509810D
+364B5C6FE0E10772E95288C622C2F06C634F4DF8C7FD1432BC9310D5F24FEE3F
+7AB324863D6DABAA1576E70643CA79EF4D7DF4105093D66CEE0F3B87D2164A7F
+26EA05F5C4645B22D3E1BFD2219657712C168FD90DE801FB0F32759E80DEC1E1
+43CEEB19FED12D757205043FC98FEC62D6A8D8B97BC083B4A0E985AF7850D6FD
+8716B9957C1C35A0675BC53DF672C425C79F43FDABAEE7D63F092CF271C9A9D7
+C41F40C4189510987887942E60A412B3EEC84C9A6E1AC7D54D528F5604B72C08
+94B7882621A5BF1F325B92FF96B80878CC550D1AE4D8196E41CB1251856609A5
+C4D3BD05A922D0D45E039D9450DEF8490A3E924E41434194910BF60BA1B08BE1
+B41824345627745541A4F1703E956328F6227D11C74946B38CFB096139979E56
+4E723B889B44C6D78673868C89912F8B4F0B4B485F1587A637B630F92E6072D5
+7F3B44EA6FD96BBD4FC28A6C1D90805E3BE3E42A7BC9C880762966C55BC04E01
+204D083AE976FAE6F37C94F27E68F8C0F28D52B17F6C0FD7C9150701FD78F8CE
+B8E8DC9260E3974005EB5CA728171F482D765016C94D4ADFE4A42EF42212BC56
+7E4EEEE8B0D2A7856CD4E44F55C0BAB762F92CB8D64C17022D4BF3A47C12F5E6
+279FC23101FEE93753653CE8CEDC3B75C9CCB29BF1D4554C6120DE8EE750FCBB
+E38B5D915206974962E320362E59B3F21B3AB1875703191043D03284D4467346
+CFF2F98CEB4845B73ED8E003E0DC94251B73E13A9B51A3F1430BCF6A21EB9B7A
+65E17FA411F53BE6432F1506232B8159E008FA257F884A4A01AC53BE91754D78
+BF14A5B0FBFB9C31BF4908355F8A762052968DF526D118708CCB0B7CB5BEE285
+6DAB6CD2E3934178E60BECB11AAB5478623CF6C50C92F8BB5D1A583609028FA7
+B8A53B791BDC9EF76A124F3F7641857E4BEA0837CB36176EC9A522EA7F41B8D3
+63C37D1145367BD300F17B54522A834BBB74DE12BF9EB26ACE6F24A046D58F89
+4D4B7DF74875F1A0C1C9D97BE0849593D7B398EB4B00BEBC8C8D1497B6EF831A
+A35380FFB7F1AFA4D888AA52C9482E8B1755CC209905F98F40D95B44D4DCBCB6
+67423D1BC2F3560FF0A8B4F0CAC352A4EE2C1D946E45AAEC8A6AD40303F3382C
+DF0756BFA3B1ED64C169E56ED1C760F2FF0E24DC5C9F41306EF8D2628153D30A
+5DCB0791126BEFD4947D7EF08301FE015F2B0008DFFCBF9F2D4D859FD43EC7D9
+C5BE237E9BF6665B7B1BEBB362F0C0C3A8D86010B9C97FA741C97C2E0513386C
+9C26C235B14DD2A58BFDAC7B5F63DB4DA6D5D37D0098175A9071590E1DF66A3D
+B8173A047C29D7D35557F06132CC920B5460B8AFC11D23D09A4E45D089F5EB51
+963FA1A6256E359D485107FD143B2BF21FDE9DA5744BC2615E86C31C89470CF0
+D06C6397D9FCCB316EA9989430240759D2C4945D941F159FC02327F34B042BAB
+B5C3A47C78E8C1A6FBCD396B1A51CC4B020B8AD401841EDABACECDB482D6EC5B
+72D2BFEB4556720FADD49D07307C8B22ACB7E310CA4151A85C71EEF70E8D15DE
+B3B00F26E0E166C14647A65ADA228A3D1C89025BE059306565DB1B1EFC37D358
+8C1EB024254AFD049BA977BD4C2C605050E17940A89D0D4C5D963E792320F5DB
+3706682E03D25D9E02487247819551465092CC22B6B56E93F3AB528038FEC3F0
+668F866707A19B0463BE706EC729D2EE1653AAC7E29BD25BFB3241D4792F5152
+ED415B4E7FA92C2EE5A22E27E8B75542C492E56D811C192E95542A6FE0BFE5A5
+69273C2ABED4300D491B92D2AECDD278404CB84B1BB1BD7AFEC858215837D118
+C0E928BE7E07CFEEB51A6D21375B772B8248C994564014015232A0DA4BEA1754
+3274F407FED0837A236371F1A32056240F2015B1E7F4B2CA72C6B58610A66F13
+407CFFBA5E0A2893C1F572D50F51286E9133B5A84239C9493B0574E77D281D01
+11D00683354A000C9700EAFBC1FD104EA19DFCB87470190E7E2CE26E3A6FD0FF
+2620B87B82AC8686B6206B530F17E9348BC7D04B948348802CE53A312443DB87
+4DBBA5313A6A2A8DAB8A1CC9A594FF8C299281C0A261C8CB2226B732FBEEDE40
+2C6ACC74A1A61379E2E1CD5548CD908268A32FA83D8504C442EA0E183ADBF7FF
+9FD09C037AB03516ECCA93FF048235BD11A25DB07F164512A079C5392AC7F889
+CE96AE5C8D9580BCAFCC087C35E76EED1A671E87C12E3045E15A687134736DF8
+DA984772AFD189D68571A2ED7256F1E204230E41D3D9DD876F938951714A3973
+0CA9310489F8E807C1C7A4E51AEA5BC030610A5D7263FF7E0F9FDE3E5E37A362
+5B919000BD94D978583B942EB79CF2BEAC33FEBC9A67272EB10865BA8FB75FD7
+9D280AB59F91B96C16C982DE848D76D8FA8620DFD7C80B7DEAE7264350D6FB3A
+EF04794DA3305844A7CF718F6D1A4A3AFF6826173A076A1372ABFC54ED3AC6C2
+09C9287FC830556CA694E21CA5342ECA7B10C90AFC4783D841D7B1E34FA3DB7A
+2B706F3E21B0FBAB23E7257962FC3BC309CEA2C7239A9D6B44CC96825115ABD2
+AF9A2566D2F3382C01569FBDB94C8D664A5DA0F7DC3DD140CA77C743D7BC1420
+324ECF9E4780280EB119885E96A6C619CE3C0C8E1E264E2DEB137E5DC8149786
+486D65667ECF47B1A1E20E9E6E4FC8323E0BC8E61BDD3BCDFC6575C69C03E31A
+EFFC290472CBBD049DE3F840AEE37A2486034240F80E75D8A79E0762377DF660
+52B12EAA16D678990B11A9BFBC03C1D4FCDA9FD4FFBB3E88352438102F10B7C5
+9F04C013B6575B5E948FAB58EA691984A0E54E6B9F3F505FFFEF74D06FA1CDF3
+4B8A95904C8A2763AA8AF5B71D00F5DE09DC1CDF87A08B6D181453063E14C12D
+B7BB3775A6E2A901636273D9EEB833EA8CF20FD83AE899E28DADE10EEEC20BD7
+BD93085A4B1AC80AC1AE8280C14767F1A487BD066007A0D050317BD081131A14
+6EA0898ED59E46DA7B6254BDCCBC660686E2EDA0E77A705A653733BB5C5497D0
+B130359F866CF293FB6EF0C2AC5BAA2DB0DED045E2DED3A2612D078333260359
+16CF0CCB272D34767EA069E0F0B0D42327A18529D72E890EDA6195C2688438ED
+E9ACDBEED41E81CA8EB5E43C2B09CE266EFCA03F2D7FF57F12B06F9E54FCC6A6
+546676F6FFC5B8B7D3F0982B6FF0D21D949309F0C0B175CC1D0976F8C55C6AED
+6E821C39041E22D91AB30922F2B2EC2746BC7DAB484991542FBC82D87B487507
+559AB466F73EE23C2D3194DC5CE4C9AE66D3164613AC5CBB3DB501B64DA7C91B
+C7ED2EE9027FC0906820B35D4F2CF66C4F9CE4A884B7C07155BCA884ECA5EB3A
+ABB83F84DB1F5639599DC7D3F51241AB5D95C3BCB7AB1EC90B4BC989F74FB354
+04B2D7366A34D335A47B8C00C05CB423482BF6C7970A95545424A08AFF9A035B
+7F83F52B65A9799CE76E303B85664B624C65E9CA58184C7BE2BB9D9C86A4DE5A
+8165EE3DA2E652B5022EE7893896BABD88931DE1D538F615787645DF5ACBBA0B
+A8E5B899A37321AA7D4B283AC9234978C2DD81813A1EE5DB6EC170DAC1B6EF02
+94892635B498765C07A38D2E9DB0B7581B11056C28278F89B0E60998379C07EB
+C0EAEDC32AA69B8B836F92A61AFD35688315B2C3F860632FC13E4BDFB63214BC
+41CC6859EAB3AC3034449213CAB99FA1D216563419CD6D6CE4E1B56F33E6C654
+7AA9DCB5B05FC068DF02AC32408C8010AD004F6CCA9887830927F8CBCD49CDB5
+18CAC1EAFF815FF2F6F527F936948201565003022C6C7390B4E3C2B219FB4F76
+9F12BD25CA7B3B61D1A2F8DFEE795D04D5428B42FB66E0C254AF7B7A10CEF7FD
+E5ADA5E217BE24851180E9A1700FBA66C7D2B0D7BFDE4F4EED1D24B821A40947
+5620363657F6D048E651A689822CF815E72FC8AE9D835BE31D1DD8B54C9A717F
+4DC319B4B59AE073936EA40B070524C7E71D5A7B64436DA107749746B516E29F
+E3BBCB8F8C473E706670E11E5B221716F315FF097CD1841D0069FA69EA1898FF
+9F9EC2518C77806A19730C97F54BEAD604548D553D4A6EDB247853225E24E7E9
+89D71F6BC94DB986467E755CCC99069B313F5745B02B4BB608A39F0A0A732B87
+7EA2DED68219754BF1FBCA350327572D769C962EF9242132D93A5C8E9725D8D3
+AAAEC15ED0F362471AA58488620156F3474FA59CA080EA96FE995D2B3DEEADF3
+3141D157481C66507725ACA5953CBBE1ACEE7E3F02C72C6552D15EB3D612730E
+61A06A43575568DC3CF3844BABF04CA767E2995196097015E0C4F622C4356B6B
+F41DBAFD797A4B9D7AC22332C552043EF98913D0D9B50CA6B7CDAF903BC5C04F
+D20A952BA5CC35B646ACD0A287C956B98C450051AF6AAF79DF37F8954473F8F6
+652BF03AE2AE82B99D820CF93F5FC0BA17EBD7AF90313E70594EB5C354023BFA
+07912408F1757319C7288E99872B907D5AB583B082EEED8AB079C63E38B07D11
+6744856E689A479CB3A8BC081F33CB06755926204981DC0A45B3ACC18F6865BB
+EE2C50DB43B62E3630FC1D9B1FFB3BFFAA6D0A20C0381ADF48E4D916BEE85BA2
+BB40F538F55C11D50F882B73913840B45161262BC8B0012694C3EF26452F9B77
+2CD7C7AD6BFEEAFE31C8A721C2D46AA00C10681BA9970D09F1E10DDB693AFE84
+246AB18279A2B24E5B50A2FF6337B7B1039FFDD4B00ED3667B5F2F7BC2786D2F
+525A0E82234B30711AA835EAEAC2E404915FC7EC0081B194765032708B5E11CE
+EF6868298CD26E5B9EF345BFA3EC2911E2B96A0B40AEAB95BDCCEE38F5EC170D
+3BFB792D2DDA7E57BD2FB7669484EF9322A1BEE009594901095DE2BA9A15A0EE
+4DD77404CEF16EA6C31FC04A8FBDEF27B9FC1AD3264388B0B12D8E476305B912
+30B51624D4605C45B514473F327DC3EE8BA69032A95301CF714F225A92C253D0
+D943C80B9CD0524C5B87A8D052D2E47A9725EF869D3B89097CC13CA9BC695FF8
+A9468004450A76A13B7EE78A03CC18917EC44036C2DD237344E594569B8F2DDB
+21F7619180B8C760741961CCBE54FD6DD07C4CF73B346099234A1EFFEFC88574
+6324E4232BA18A38EC9F0B780C298877EF0AF42C1EBC2EB52DB64A1E1E352503
+36AA29953A073B864FCB31BA938A4163D000A159ED4D345331FA1EB4009CFF67
+1D107BABA6AAA48075C6C50BC7683929EC146594E55B01D4F5B582328284068B
+2AB05CE92EEE1DF4557DFC8FEF287CB7F961F4F1828EA48B0ACF5C63E1EEC8FB
+6A0EFF132268B7DDF7B465D4A21B05993F4A4CFD168A700D04A7303BC2C00391
+392C3FF97E770E6FAFFFE501242B20B4F7B6C17331C64BDBA3E59695E176CC79
+E7632AC6D2E920AA048BD1EBCF9909D8C314D2EF3CFC5CF88D8570BAA814D467
+96D86CF4415C5B739FA6FE7B4C228F06268D28EE33381982E7B005C26D2604B3
+AA363CA4732B9BB0E4D4EE50556D777258A7BC232087C9F00B0D5EF70270B40D
+3071E14E4E5AB5AF1C686C5A7C268D36A0787DC9300D4CFA004F89A73FFEF780
+E6BBC957E31B764159C3ADF752E6E1A6C3B5B855F8A483497A347B601E3C8DE0
+362D76B715916113CBD2D3765197074104C7E17B87670CDD5C227A1467BD678A
+BE442F196034B02132850CCB77143C2873447FDB8767C462C63916D9D4A13198
+B7910E1B274B27644DFB2E8372C8CD55E6E2AA5CA952A079E1E6389927495921
+CA39D69ECB4DF382FD2DC213EE382BA1A48CA886CB6AEF2B0C50CAB47B1FC40B
+2C95E13190C92480439E3C56188D162C294F24987AAF4E15E8FF7ABBFF2A12FD
+AEB884FCFFD671EEB94CC075B815C6A45549EC23DB85923F4C37221641B75CE0
+C5C8FA8403C2C9FFCB66CC74C5160D6C7042DDFF33A954DD01C8E21B21F8F364
+F6FC735507D0DB5F68F2D8B520AAA7E0F1D503211339F9466006E9A148F39874
+A1488F1F0458409D442D2BF5935A655AD4656A8411543F58C63DFF9C4FE56256
+7F9F876B56BEB208F9DCA363D2E0F7DF3CCAFD5F9674675BF622CBFC2D1CEFA2
+7A5323971101D3641E99D84197B00D67436843EB9CF74C273062159C361A07C6
+E3F1E0E4666ABFD5C9AA8F914F05D02EE1906FCB66E421C73243257170617FEC
+2F02D5A7F3347CC0D290E52FA815C4D5D2A16A4D4A5E0B50165B0C5C77B675F1
+0EF343D70813346EC4D7384A9D9A091984AF29C810F8C3D4247D37F91C5DA967
+747890DFFB25E67F6FB766168487AE8BD8E49C55BC1B68B831E3F510BA1DA3A3
+9F810B865FA98AF89696CF7489BACBC1033A1C929023588E9E03FAD6D901DC52
+A2F5EB74DB679A16DE42F7B47BCBE16617EDC7328A2CEB2C23733D98ED753C66
+502DD2FC75CE2905A429B5B56C62C1C0FCE17144D96E0C615E7FEA48EFA05D9D
+344ED266BD96C3296D6005D289228C62D572167E369AC65724E0E62AEAF608C3
+423FD37E586D41B2AF9B10E0A36312AC1A6F61418BEBF528932FE61881636837
+47CFEDDFEB25F7FC156AC7D6E78D608A91270FF6D1D510E8CD61C289F3E7960C
+B6093B333A0CA3CB8BE51107C5C1C085B3CF6D6F61379420AC1E5D9A3FABF084
+80D6C719D93BF74A99D681726C81F9F83949E06A560F3B3905C0766134533256
+6CEECBBE3EDC220193964706085526386391260838C2E885C88F882E29F31F69
+149CB1B4B788BE82AEBD32B5A8F07D1F537D85077B4BD1FF945EED4BB41B79FC
+CA0B25D1D761129A6043D701AB1F6655C06DF7B0891C3C5224977B9464A6A794
+5FAC6547F7548402420976CA3A644E5A7CD7F64974B71872B02756FF6A135EE7
+BA60B9974A0A2CFA4E46D91B929A3A0DECDF44C39CC06BC2105538856718CF59
+59B1D9BD88735ED4D83C17A67031178B43CFEB4C301E551D708F5F08E80E5A1E
+5579CDA06C9902E412052CE7714A8BE29DF9911F556899F819A7FC2565522182
+20918E8C476DFC00F79BCC4248BCAC6615891C3115B30A39B365044CDA0AB26F
+C8966DB46FB9FB7B7BB37C48B7CC4852C8C05A57D92ED8E6AAE6EE5A60BC81B8
+C0B22E5E74610495094F12BA6D60DA3190C4CAC7F46D740005264BDBCDE61FB2
+50B8DF1CBF41195E616F4595F7860F1538363D529E3E3FD2D408B56CE034521F
+3D9AD6C30174D0AC1A9F9151C8C8DB6E7624290CEB82632679BD0A01EC30B3CF
+FCE72F32F4443E137EA554CDEF84B62CFE21A5E8BFB2EE52C87CBD603C8E0FC7
+35A9ADA5E49FC4C7E3F1538C84761186C045B9F11074F8061F0F4BE061D22C85
+2BDC140F6CCD858B1A4E9AE9444B4EE3DAEFF4E3760A8B851ED3B9780F990595
+36210570D82E9DE83AFB3A20D0D955F69FD838B6F9F785231A84D8BF9F434665
+CB62D518CD5F4623711E022DF76D2CF20202FBA15A1D1070FEA87D6BE954DEE0
+370280ED09237334FCA7AFB1A0CBC9A153A25A929BEF57B202A5889958A9AEDA
+535781A11DA8E2BB5C885BCB83053BEDE8436846C7B54B41703839F861F95D5E
+3C34C4DC8FAADB39D20DC53F642A28B92D0BF1B02876E348B088AC9B2C55DB06
+808BA40658ABE50D6956C9B1201C8D3D97CF9ACBE1FCDB7E7C02D1BB8D87AE61
+2902D77900C11D1DA6CE808C425A7EC0B31BBDC690E98A09AB656294A1B17E00
+2D12DDCAA5E0F1B44EC9D7CDFB5E916045F5CE852D3FF3E8D421A11356EB4392
+F7DA22AFA6C18C7F507F5D8892E8F1DF11E5CC965A61D732F12EFA8339951645
+CC3AF8C3EC88C5B372729EBBD3530439E0E8AE43B43CF57A5258AE8AB259EB71
+9E1F057688B110D4177CF54B1D56D2EAB6B1DB603D6536EA9B9EA11DD57E7F3E
+DB574B05043CEDD701DF8C0982EE726187EAF637ADC279BF7C83A244D3EA9800
+F9797A4D3E4D5F6669B49D2B37CC9BB1C9244B54DD62A5C4BE533DF46F618D3B
+9FE2203DC6C75B25AD6B49B2A760D3604F156ACD80CF5458FEEA64E243B2E527
+E750720E97CCFFE2322734D5DD0FB1A8FD8FA77AD87AA1C8EA1B023F70BCCF92
+624F9A6B0B27B5C8A5AD21D8C08F62BA1738359A4D78439A7A580D605929D6D7
+60790297E11930F43BA89832A2D351CAD0F77AF8BB70A2DD5DEDD4B34FCBC714
+C2BEA2C26F768EE44D27F39021F5AC95FEF199F6ACC4A2F3109E081A3AC7F42D
+1767C2A82683BED075A3293189784AC8D12F17FC3C15B83915E0425926D6069C
+16D58DCF97B1D8E1021F51C47BDB1286B5F9CB60A2B2B7D3F219F20C8651DCCF
+80B30FC5B20DD6D887BD571450A3A005F5980E90A649DEDD316A452589B2BBA4
+BE8625C231E5D4886124B24580C7795F7B3D063667F400C18150A80DEA255943
+B9BC4E1F0A0E5F5BFEF9F7322C836AE892F91A4B3291F216F99654C54BDEB5DD
+87563AEAEED8D8E65D1B60795F1011C3CC63B8FAA15B381E04E1FBC2A5BA5EC8
+B76DCA2AE3686F7D71CF0662338C5E468C0E8155715EE8DD963FA7C257214DB0
+6E523E1370D0F14165FDEF1C9D2F9DDDB4C61DC764B946DC40BB897E8A0BD7A9
+A7D9B684B5899E1A8F4CF9FF67EE19B4FCB61AA4463C5F06309C7B10A131AC21
+63E04A69A223818185F44D48ED721CCCD98737DF4BD3CF6924C6EF30372E9E38
+22B3230829B054EC1B8B42D29059AB5E706E5EBD6CAFA57502005BB170E5B471
+8BC330C11C068849A61C37E5AEDFF994D9A53E73E12D3F7BF63CD6C435055F5C
+875056658B8141B78E3E5050E3F8209CEDC015445893B5B798DED6777B98017B
+4B9766F79E20DE51B4081215A072BF3BFDA0AA741D3EAB7F35138C2B32982453
+5681A66A99A21F0663C8B559FA49AD7B854BD648335DC7B8F72EA85CEC66231B
+AE8F8FA55020FEB0FDA90055CE8255D02C0E2FCC829AEC8EFBAA08071CDD03E3
+9FE8C4F28DB460E0AE8514E319ADE43559B190D9104C78DEB8DCD9E1B2118746
+3DF257B5DA0A52F0F6F0F70352C2B1F851F14F3251A2CEF2B15590E4E80363ED
+652CEA14D0CD2FAF8CD0CD6A7888159FEFC0A3D8978F49D85DC8BFBF33FEE7B3
+C0B040618510F483EF114F46A509E86D08D9470B9A6293083E6FBD511C388D8E
+5A16B5777FC9FF933366757609163E9567B121906BAAB48B1D3CEF9D0B1028C2
+18E9B6536DDA27ACD9816D2D1D5571038F936FE496081B801485F9CCAFC7EE0A
+34D2BF741863A5F639D9D4E123EE90AEB355314E4E38F3F4C243CAD3112A0504
+48BBD089B189203DF7ED4933819A0C1D57ED8AE20B2B15F19F8A0CFD927CAC50
+116B04C25A4E5B20C4C5864A8DCF8CC9BDF5CEA59D1EC52EF62CB642A8FCF1C9
+3E036AA4DD6F4ADBA4F8CD013C622F831397B8640936910C6D1F82ACC6451C68
+760E14BF5B7845762DFE0037BABBE5046C5F3CE3874702EE51D1A463F3B86C69
+7C758A4B1960E1A796F07859A9B1860AE5BC7D5703E63A37B9334D67613241C2
+5B606439A6AB29FA7386317DB876D26FAC05188B4C59672F2CD9A750A0E70CD5
+AD69A8609AB0C78F625E7749C770391D5426D9C3CD1CD7D37445D9718C07A37B
+5BECECE3E6F3147731D5C12C4946F88A7C82500F8C495FFA7E2FFF6A9C2F0BFA
+8EF861E6C369C8DF969B5FB0F02CAC74E8E080B16BEF1CF0D1A81E90FA1612F1
+FCF086961FDD981A8698FBDCE44A80E4290B7B553D9F46BDF6E346627437903D
+499C80A29BE6E7A2C03D943D23C41F1B85C92FE922EE3A3E0601565564C55116
+17F01B2DC9FACA12AC59950EA410D5533B0C31D89FA68D07E9FF1139554C7920
+FF84CB51E13B7FA3EE6A32DDD9FCC192B576A871CBC9E04C5C66ABED560AFF24
+6D6271979BC7D04F7287E32F52B1D2DF60B7D7A53A7D776FC36D70E9C6F54E97
+44F15C5ABF2547DB40EC913EF0B9597A721563C3664E74E7283E9030CAE36B7A
+B14E781BC772691347ED48EBAFDF23EDC452EE8A118A840A185B7C1DFB7F3AF1
+A2D64EFBA1C9F662A35F3B46CC8E2D7E7A7F63F9BFEBB6E4A6DB8FF0BDC83E9A
+A70438435C3B8A780F7F92578501656FF963ED66A73921E014A46385450D26F5
+B73EDA0630201BEE50325B0F76B55E77BC55F4401251D083225EA5777F42A7C7
+748FAE7C22E6A17E04BA9F6D451B35A63DA6F3D80B0365E159B3E993E0DAA242
+2212784C9651F9A0766F473DF743748FAF491CB69728C2473ECC5524E0F2997C
+2650BC1F945EDA4CE833980E706C4D413F7929804A0B1D182E26052876D6B836
+01284296115233D90D2D0FE83317D4AA206A67207BD899DAC1D726C937A34193
+F0B6EEDECB391C6434144275295014BA4283D4346BCC495AE3EC6EE9C4FA7711
+BB6004D39D7BE17FAF0241F2798C36C451BCC4227899837FC244BEC3432ADE1D
+9E4F47F45E9B1D2C832FEF6896C92A207AAED7AA924520D096F983D66DCAF476
+83A2F6F1844E7EC5195EDD3E5FBD0FBAABACE5D13BF754BB2B0CC8FC633D83BA
+3BB65BD9837B109AC1B5B255298E6B65AE4CEC0FFE24DDC3D1883FB0D6F8FE65
+94D0A898278E0313303CF7DE2E37BE0152A1D4CDBA04ED61D54555B1B107D9CC
+C08C89BD2A19050191867EFAB8FD582226B03D7ACFA97C6D404BF99F39EAB7AA
+9AA9397B57CD7CAC1B338C21579A593D7DE1241E6F77366CAB10C3FAA772C663
+BD1051F9D791A84C35196E74D28D342553D344199CBEF83D3A6ABF05A4779B16
+EAC70F7CEE167132D04BE5F56F8F20927DC3C7A20239AC6AAC2B57BBC83174D6
+25F59228ED58B5D492B16ACF3EECA04054F59247A8E318B6F5A09F0A8B3820B7
+2CE711056E3A3ED9300B6F2DFE2C665D7C3351D40A779FEDA09B406E804BFFDB
+9831478F237DAF6352CADC53D6AE85A14E5FC7C0C1BA4009FF962FAA52499506
+C6F3C18BD4C13C1272D844EE151CB5A0DB0188AB7FA2DD47A6A2CE8554A7CB82
+C0CC30593F062451363778FD5A8D39C60835825D63CF3BEF323C8CBEF3055F61
+294FE558C7542977A3C520DE15A984C6D82041E06C356FD7BE75D601CB95816F
+F05AA3F53144B7D768F6732339FB8E6A068F8E021C1BDDB26572385FD1B3794A
+0E1C780576819CA271C78010D8416F6B19912227CE781CDF6AFEC335138203D0
+ADEA0617451CE0BEB024CDE135922C72FE0932F10589F0FF9F1DA721D32B1583
+8D032EB9049E4AC34B3AF16C4DC1A85CDD8B047035ED7D50CF8D9D02621BF6C8
+2CCAA23DE753C7B0B8818B68D625F44A54689C0B1CA36FA7C68A567FDAB813A1
+8B34DFF1300D5E42067F51ADDF7DC9BEC7D4376D304A417741E17AE427639676
+407472CBFAABB5AB329AA7CCF130B3EC6DD588A1F44409FD239238B1A8884382
+F04198DD7C5DC5E2288FE0B206C9D9516D468AA6E2B1183E2E906F9DE47C9209
+578321590CF839C9FFD5FBC3393FFC75322B4E703EFE69534745D579B74AAE3A
+2336823D2DD5F477F39AA9386736476F5C0B1CB19457D44AD6417BA503475D23
+51A99BDC97751E7172363DB670AA50D21920E98BC1DE7349EF8B8C1E72CACB47
+557B3E2BC30454F75CCC41B84A67648E894AA0A43C5A2BFB5BEE8D0BB07910B3
+47EDA7B547EF357C2553933E0BDC0F05D596E4C55B33AD63E924164DEC1934E4
+58F937DADD65AC866E4EA2BF02D36C54AE3E3727A8FF9F3658337D2BFAED5908
+5BE3C1F4503843FFA47C83B3D9CBF1DF2AED7A6B97A7E68CB6B9E5420E70C5C4
+36843B29D902584DF95CCD8C34647E87E2335371DCD89E495A92033BA482A62A
+0D2D3A7BB06506E42A4926CA0AFF80EC8DA63D7B73E8A04B25312F03251B512D
+76BBFD76C1F5207FD6A8E69ED9BF063C7DDD0FD4C6974BBC531429EBB55BB715
+0D08FCB2F80275425FE42E87AEDCE78D2BDC07CED8BC49D260D1671BA0ABDDB8
+98E0F7BA7EDA086F4E3585157A71CCEEA35750B9DC3195E3396F1161EE1E1D25
+E6FE6E0B022A9625B5866B8EF59DFE5391AA7F033886402C654F4834F4E43138
+EBAAA758DFC8C27356F012F4D0F398EB8D013678059D8419C2D947F3FB2BDA1F
+70A5FCB549BFFAC288ACA7051BDAEA41A4AE0341035B4365A63C553DB80CE429
+02670706A74AD397B49AF535067EB07CC3CB86704ED45301DDFD5238E7DF5ADA
+8DF465E45F7514D7A0BAA202305CEC73032FC09294480796251045AFBCD6B081
+8EE4481D29E817C7DC32539B364076672596DC24CA8AC45D60A8536865FB475A
+3DB48E98C675A8BFA39792AFD17B5251D56F0D5C27E229DFA75FA3560E7ECFBB
+8164E4FF15421846BA40EE13146A316D530287CC8652B58804B95C53F6FA9DF6
+F84DE1E222C5D69E45E12C06C97E672D456E21B95584F8371FE34ECB0E6174BB
+468EA60BB0C06B3DF48D996D9083F70181799CECC224FE60736CFCC6F246E5E2
+EF465A6B1B411ACB7474A59BECA5935DFD15F5C18160D4AD4DE9767D6213C35E
+08AB18F834CAB32013AEB8C634DD6382D4C7E49F10BC5113214A18A5EB31A0D6
+923630A849327C1CAFEA3B8F5EBA83668E03EBE084ABC1A4C1DEFB333ACE0696
+EB20FAB6FE6E61D38457C8E10D8FB7595C627E8FBE2D5563C4D50A6E1F3DCFF1
+F5A2DF1A62301665C0E44C2257B4516B515FC995A52D4DBD54B3D4EFBFC63A8D
+F07C27065CFE19527AE04A9CA14935B7399E30EF88D2B63891A58044D7CE07F2
+916EB8E9C65388A73956B3D82B4B41AC378B4B75AC304A32339CA7701636B6A3
+84254743EA5F8525897D4FB054698031D1FFF4C971A10440212DE812752425D1
+E71B02AAD20E994357EC8436BF1B74F016DD41D6B1F6C1578E4B261ADE5A7B31
+2ECA2C16294C9309F200AE0AB5BDAF2BBCB3E97B0FC5556BD8208E50CDEB88BD
+F137D2F72258B6E41092F1256CA4AD867338DE757E29298F404FF94F247A805B
+40524952A6D8581F065B11B6324F9F2821A3AAC2E7A583771EEE640F2FD0975D
+299EACAB2A99942480DCCC95BC7CEA846EB1B2423FCE304596A2581583450455
+CD1D56843DF8FFBA723FBE4A4AD8E539828BF48BFB4D0C4EAA68EADB81A2C58B
+EBF89CF83017DE3382BEF407B493FA5EEF810C740C3C8B646292AECE9A5180CE
+07ADE6E6B2935B90BC521D3ECBE25B43F14DABCF49F378C26CDD2B27C690EAE1
+E888EDC3C963F55F1AD13C8FBED4BE0BEFEF31C0636913B47205DB1D0DDDBEEF
+4441A3DE9825160AD57948567EDE8660567998D41A0AE2D9A9B5BD4207F2A0F3
+EE82DDE22D16C32A583613E0EC2BA331EA91042B8FA2865A8A7DE1BDAD0B6D33
+3DB1409222AAD20577ABAA7A2DD6B302803FC7B4244ACFF725E37CB5926563D2
+82AEF220424600581E25001DE71E1385C9D690747BCE051539AB8B03B2EA77BC
+39B27AA8F63CA37E3886C50E125D3886C5132869596039589AD6A8421C8B7AF8
+B0EE2872AF974A4B779F09DC1DF2BBF673A7FB32BD1BF3D8D99A94E1BCDFEF81
+37B2D7BBB80ABEC1EAD544448E6A49DF730A1B7F63267C9DDFE81131867F0C0A
+8D2B37E8B0AF2A6265C57CF9BCF98A01998081E7BBB94DD53FCAE52F3F5010C7
+AFB011FC6FA98FFDF173FA0F935D33EC3DE55890BFAD217870974C00CBBB6C67
+1CC558F6FB2C30B28B9987721722A27EBFA924A382569E3D7C47A3220F21EAB9
+1011D71B104BAD1A47CDD9CD64487A8E9721CABFDB83FDEC748EBF0D08E77CFF
+1A54D0B3ABF4024DAA403436C9F6CABF3B6CA7089776ACB183AC01C8E7F287FF
+9DA7959C4B7D73F00976AC5C3E4B810DBCCE732E4C9ED9EF8006AFC7314F0055
+FA3FAEC780434F273ADD7D07C2006E4B755B24A26341AA5AC2DCE258F8B03409
+188109067E22F078E093A76FA372C87CAD401794D94317B2665DCC7E21FDF901
+E1511307385B6EE148FE1666BB616351F48A8082ABF94040CDB058DD584364F8
+CBE3E94DBB8A2450D18D435FF5C8CF2DBA1EB562E957A83F184C9F3CC43C1860
+E6FBEE91C4D240C61D7A7D554A17B90D0A9CE1E7AAF7840846B3F1A1BB9926A7
+CF8E9DA56DB81D35CB3687E9818CE74C0336DF7B2CEFD8BC432268AC93EB34E2
+3D361A8387BC92B459F645BC069A49628D7382E22EB249BC7CAAE98AC55FBD24
+F570D8D654B54710B809234AA2E662D2ACC44E1FE1AA63A497FDD94A46B9D1BC
+E37B29430A5E0C2E592F13BE227CD9A6556E9A0E1C3EAD9DCD742D1F9CF62014
+5EA4510003418D1881C4EF1589A8B9EFB52DDBB67BCFC4E55B134A3C2E31AC1C
+4658B592EF69C2E23E335499A35B91A58DF9A947712DD55BDCDB7E0AADD53E29
+2777329340EC29A51E9020B8EBABB7B066113ED3A4791D3FBCABADC40CC45FB6
+8744DC0116379D2649B216366C6FC83999E1FC558EEE5E17E13A12B252E5F7A9
+E760CD51C96C1B4815BFE37D4D39621BCD10DA9428CF186E61E9921585C1944F
+DDC084DC9216FAB69CF54E456D47F65B3FB02F34B0CC998E12E41110A4791465
+19780824EE2AC1B799655553375ECB24149100E539C23829944BCC82211A85E8
+6A2D3559BBC0EDFEC2DA02AE3BB86A9E30AD5BF95E5CD956297C1F6AE85D0768
+1F9D96DD8EAAAD78CFBB543E913951A78D3262CF08BE0DDE7D870FDA94C51A1B
+1F8544122EDB7653E66D772E3EBCBCE4419F17500D8469EF4FBF93144B20DCD7
+39B815E0B09D0BC3283E8B7A907F203EA3B22924419C1C3A8DEEAD335FD538F6
+0D5ED1581BB64FAD4979D67D51F18B047E096747FC50C6A2B48377E458038374
+7FF93A3A46E09ADA5A844EAAA3EEFA1625510D3AB7A74764FFB229725FDA314A
+72CCE353A9693869F26CB904505B089DE6D41825336318DA00DAFD986779D4DE
+E8DC47E496A9936DD3CF46719D5E832E3B7C85B44D16D4BB588CADCCB90CBBF3
+3589F08AF2AF77D7ECC3AB68D6409221B2ED853012C693C522407B4E97DD4F89
+9EAA4CDA6C85F8B65F5E165399F6CA79550965F3AAF7D875CA947FD6BC42A4DA
+1AF797BDBAEE65A1C3BAF00E8E48FE567E757715166DD2757F7DE6C45FE4B3FC
+A0C76D12FCB66B4CE9CCB47060AA5CB3FD427BCA5B549A4AF34CA654D9421C26
+9EA4106806950525CA856624E9EFF9DC5B598AE4AFE928447D0704D4EE99DF07
+69AC51F4D3163B7424059ABA4381DBBBD5C8C7DEEF723F163AE69C48962C34D5
+7514F73FAF946C121EA5848C29E127DD0FDACDCB6B1AF4414EA369093282383D
+0213B391666CF596FAB2AA27270FC273E32B90D3209091D8360A0D50F8F28D23
+F7B8B097E2FCF2DCE92A7D5AB68EE680B691C2DC7BB846FD5132EB5789A30B8E
+9B849C18E8560E9F49764CB89FE01E2E9968C769BAF6B44E08E45E563EB14BC0
+70601E5133AAC33723E934677518C54A235EE9E4A832B363DE44FD82D37BEEF1
+E9C842EF2570C97C3C5D6C0DE94DED4DC5B6681E4A04BAA725F0D9061B16C431
+8ED6859AA5E5BF254BD3C29F100293FEF2D0D6EDAF428490E13B06527B5FCC90
+54768BCE8007EAA2EB1AE14F3F577CC243BA416AB6E43E92EC4FC99775BC1D92
+CECEA05EB8ADDA826E364921ABE388295AAEC6678C08D26415B2725025C70089
+9F12735F37C45F00218EA2E398A8CB173086C43B2A7EE4C95852110F8DCD12DD
+64AEA60156E560E8D8D84285B523515EC15888E9912C6C1AB91290E1D57D7595
+1DF73319FCA62BE7C04F4E9968F7E453C384899736D48EE6FF64DF1260057C37
+3082E207F796CE6AB2271E3F31AD2FF83B99FC3DF2826C07F4E4CD05077DCD69
+A3B9EC76BC02C12A468AC4C0D7D83FD4BB4BC8ACF9C312CE3144E76D2F3C6246
+A210DCC9834608CD0A52CC551FBC059B88BC2CEE954AC6B5811281737EC83C8D
+72B39D016B0ECCED40BDC58706910851447C80E3FFFA9D57898204F9815DB6DB
+1EB38FC10637CC50768703AF9FAE89A94B424A3C647A7870B26970954CEAAD68
+E069ECBADBFC0519C33AEECE55AA93C75B6CF907DF65B98C7A9B043E4BB5840A
+88DBB212EA2E86888D36B76D270926739B48D6435C1547D703FEA7B989CA60A4
+87CDF9DF654919F730787D58680BAD0E5B506FDC2BF0C89569CFAF6BE11F80B2
+07D69B417562178E087AE3AE9380CAF8CEEE40FD3989BB50E8521963B0617401
+2996B2C32A3F03B7F312A211B605932233E7C230FA084BB912BFB20E85D721C9
+532D22AB85802085C715206297C09713C3142039602BA9D607F7A52FEA25B0D9
+FDB7E9FB15499E3DE1E47CCF2500BA8B8798497469DF248B8244493738C81815
+1008200E9457B4CCA5740897B17F8832515EBAA84A237E17542B359F173E7868
+64E99FD8159C9051E876C235E434BD5920F55084DD7F31C6FD2B6CB58E5FF307
+0AF6020EA9012AEA47F9BCF018C30885988ADD1A630C2F1CBBCFD5A2C95028AA
+6FC89D43E089957267B6F94C7F4E05FCFBAC85E879D27F7BA921FEDB4B551F9F
+3B5D3197C0FCFE264D45F6C1181BA26796006B94BEFDC342C7CCDDBFAF332F8A
+D96D8D6C52ACBB10C871DAA7162501071CBC04CE01D8FDBAB48393E59ACCF1C3
+9EE4972D7DABC3E639B1C2722F346553DA9E9F163DCE4CC7CB2D1B966F561A07
+8862C3230BDB104C55DE3436ACA77800229637A6DFE1F041DB4B45B2D1A5481A
+6641D77981CDA367CD23E64AD5355B484930C7B09B47ED6C79851844099A68C7
+1F4E6ABBDDD7490259E856C267804A4EAF61246AB4C1233F025EE81793312479
+CECC3813C2D887855573122E59FAD0B85DBD9AF66203F4618F22D6D56E1F7323
+2BE1ABF7702D8BACA8AAB9FDEAB48E3ED56BC0D3E4696505E16473CAD93D0559
+54E8991E7F146F4D4C9E3DFD35012F5830B57FA04BA42BEC724E5708FFB6D521
+B209D2F6CDA86560921C705D6A99F822DD3B182B0BAC8AB381653298B82C86E5
+098FBC2E1E30DDA83919362D1BCF4D91702B16E849E032B44EC2482369B4C342
+211E7382390388FDDAC362431B45DCB55FEAA7C48C30996C47B0E21BB32FAA7B
+14D6F0DB95C450B59975CE25D65E727148BC7400E00C249A415AA52DA829F547
+8D7AF32D029BFB27EA195EA3E8A038493FE5BDDFD89597C420CA1ADDD2D5AE9D
+D3BF13CE3B530D78BB7413F47056F663395BEAFAF4002BAA6E9FFD3F1F0C7C72
+03592F5627EA49F1C0E8C95813E1C30BC256C99A2F34A027D4552B650B0376EB
+9BC2482C80F19BD6F9315C71A185EB246091F6D7D019637100B555077B1549FF
+27446A2CA0C8C815B6CCEE95CF19B78908DEDB25C1F9A5E6C36FFE65E0A8F694
+8A3E847529C50351F6CF88F1F3B901A78378BAE535678A6C60D7DF4A00505B14
+FAFB1A1AE87CE09E1E90769C046C11309AA7BD8476AFAAC0EA48E6D32842E0FA
+10CEE024B1B178D8B9A15E29F825E42564A8F8F1E1F1EC760FC03F1D5773DB78
+E177A95C3D2E3FFEBA469404A866E662D217FEF7A99D6BEDF9F144A2A8B97542
+9423BDE10EED471B99F70661A7AC7A260C6C32EB4D00F21F7A3A5257EC597EE4
+885981989562FB08DBFCE4ADCBE6D9A1C92F6E9FF65A23BDF943835BBB7C29C4
+0D7C987B626819583D4D52DA32BF7DF15C21BE5BB64B575C7F4B149AC539ACBD
+A49DF3F0480DCD61E3C14BBC956DE5D968E74DF4141BEB0106E6C5F7828E4F77
+4EC7F0775CF320C26323EBD09354B3E2A52973E75E54CB42F6B0F5C10AE8A8E6
+EB93124C15AD140C971D2E2D9C2B5275F93BA3B01556B72B7630CBE7AAF3D997
+E82D11875B82071FE770B13C232388C07F2E6F7E9C6930F4D7379BF74FC3436C
+D301123050BECE20F2BF95FAD2E57FC50203EE6EC6D9420BF8C218D3D2F8B236
+6572EB16DE1CB2AF00CF19C56BFD8D333FE1DA4494933BAD214701819B0C2ACE
+FD02F0682306A6B0039002B0B7095D992A30CB675CDA3D4B196C447F102DB4B2
+FCE3AAF81D94B2FA40B31EAC2BEC613654B1D885EA590F675E6106BFD0575B1B
+4AA50D0583A2BA2F79AFC2EF5640A9EDF12F6BFE45ADBBBA43B773B36DE8DD60
+C4BB8FB6F09A334FD947877A785AFCC4F9D366326F5B609ABF1E0CB8942560D7
+68D0FA410EB83A9BE859840A9E024FDF850DCBF5FA8D649B40505AE64B1BEEA3
+6776EC44EA3298203B09990EAAA5FA937CB648A0377173CAAED6432A38B48DC7
+906B730B6BFEB2B9B166526D1E8D4110C6A2A4CE1ADD2D0C9C179621F7867669
+31D3A28EA97D1281E80B4B6A4F223D1FF77F8960CDB83E5768F3A8FE52120CA6
+15164AA799E18FCBFD91697783BA537FA897D58726F5F3BAC1F0B20B57583374
+35837E9EE8DD0DE39B6CFB69EE47ADEE4624EDF65E43781EDD056024FE108280
+29E5A39815F494C65020B91F68D1187F815ED8A312150B414D9DA84F542E0F15
+32351B82F2322C9200F987E477807E9E4051D4057240E99D42E6852164704F26
+81A939AF1E3BD237C4FA341C702F7AB978F63CBA8DF745DC2C57AD5511D89AE5
+B4A80BFC57B1A5CA1A110D3BD5859EF41959EB364DF07CE50F709B30EA099EB9
+01C010ED4F4DA9AB062BB8E10F515559D2FEEE69C579859E43962AF7640A705B
+2C3086E862AB4297EF9625C58AF049BDC0840F9562D8D8BC686CDECA7D4259C7
+4C86D8C92909BAB7FA09AA2E83B4089B246F8B4AB7A086C5B9943773C496C62E
+9E6344BBD213B44C821CDDA42B1BE933F74BC8FDFD0A85070F50D4881C7E875E
+DD689E97ABBF6AEEA6E8C8BA377BF3E4A8EEBBB1D47FBDAEC3B88462A62CF500
+727EF93FD166092861FB67303490DCC4504B759BE754808BEDD580E6DC38223B
+E02EE2D9BB8F32E2D3386376F8E49A853F7C81650DBD33E23437EC98F4A6F7EC
+12705E52817A7B647F4CDE1B173EC370C78589E329D93C35895CA8B3EA2B945D
+E30630DBCB2B8ACC49846C7835869202FB5231ED9167F307CBA31D2DC0B423D8
+65DE2E24CABD53913C01C388F64BB66976FE3B0B421AAE861E0C0D495D5E0B26
+1D207792F1072BABB49156544C024118BF0D239BCB1AEF8AB7F38EEB34C88CEC
+C7401AA6177E9B7849AAA081334E04A2205077A90C0377A363F22091678371F2
+36A088CF84558630C3F370FE00FE97209AF40D77C6F70B1B4028F1680FF6268D
+EC09B05DB3F8DEE17678CFC46AE78E02DD01454A9A8ABBAE157086DDC92AD22B
+DBE7861A2909232DE46FFDB6FC84989B2B137C564FE84961BCD663B592FF2A85
+A65D7B595113AA7DA8463F852A28233A754591A5F2D7F70649A12EB8CFA35361
+1410C7E2F08EB5353A91CBF2109D6E279758B8E458DC7737369AA35B330A9229
+B73DFB9E1745410440E440DEC966C0B21349149E08D57740773B1F17161217AE
+B0605236A44353081EA2248CBE9E8F4A0CE1499354F6475C10346F337227B8C0
+2474942B49CF891C5D0953B1015203B1BFE0A7528C900968D16A876AFD9BF28F
+43EAD0516A38FE48F7091219A717617CEF422F7E2054F3E40D7D6239F6744E44
+86F62AD7ABB61DB0E75B245B44E7A6FF9D72DAB469A07D8046DAA059CA891766
+1420C7A397CEFC7CBFC41A09C54FEC6E77312347C14CB8D87B313A0E7F2CABEF
+CEAC4B9E15C279A18BABC098027A02EEA025F481769AAC7A89F9F419A9EE5908
+351B0D25A2F9FB805227F0ABC3D4A87C63C59E80B1BF915FBB1E1E164568CCEB
+1EB5B1A19180F370EBF2DD11827844584475357DE9E31A138874E567B8E1DA93
+FC5D6084A3737CA8EE391773F3F91C243AF33013891B4E7DCBA7BBE1E06C5031
+C3C0FD60806B7052C5F7B069BFCF4F879914D9C2827EB53C505D5C738E1564D1
+1FE8A3EFE5B3EDE0B766E816FF02473739FC5BED647CEB758C6D7457ACD5E352
+1C3F13E6F1DBA43FACA8FB3D257B24902EBC64B10C7701AD3850BD845140C3D1
+A6CB630AFD8E81ED647D65D7F51803369D37DA44F36D8AC77976AF53B9C4E56C
+84D5969C27EE9DA518FBBD8430D5769AD02F28B6036D5D8AB73C784734C22D5C
+7200D0A706326DB04C52907DC99648D46F2741B3A9BADAF9040F2CA68642156D
+E597FD6BDBB5658C87501440DA17A44557EDDEF1C576F8FE343A6E2DE27CDB35
+8E62AA7C8367E3E44DA6E435DA063BAC3DE82D73AA2A147CC5A844187D29B83C
+D12D91B9018718B53C9CB11CABDC9F7A8848C19E73E1DA7067632DFED7994B8D
+3A5E1260D0315558BA94389D996A960836FD9C7570F02C453129DA181B2BB9B6
+56BDBA69A47729BB3EE50403667025273C0FA725D6742B32DF5E58BAF48BA6BD
+DB77F2571F3643E792CC757B8F1AABD13B60965B5F1AEFC5108B68126149F4F5
+F54E72341790C7D75372F0550FF3C9FA8844DE0C6E71C261F94C2A763C6853CB
+6179437BFB20949F530804A81C8C71B2E04531E2F3E0C158040763FF38F69682
+F8FE6FC7F914C9BD77FD51B7F533FADAC22C819B6F7E3094BA3B4F96A74E43BF
+240DB5BC95B8577597AB79D6ECCAB0D65EE279F5CB8527B05BB521EF2F7F23C8
+42349BEDFD0E303A7969A9383A6290B9ACFF7C7D402EA8A7C9517F01C28D31A7
+5B705C785F6418B802A18AB458C03291A0751FB55AB25515926778649BF7DC53
+8E94F949469AB3EEC16FCA42F98220A5EAEE73D6E82C71779E8892B2BE652796
+E12C2B6E3D535037013D60F8211EBA7119383CEE9B06981BFB98666749064BEF
+338B4AD1C6300DA217F38EBF093C867A7B019F1C8F4C64226FAEFC38027AC7F3
+A528689C44EC4CC0D0612AEF76650826D2B16F53675A57273A78A911647D112A
+193F579ADA161BB62859141F9893013F55D636A595E532BCA11F26E5846724EE
+E6F3026983BA6E24C1E462CB599D2C6F3E7C0803244D9A773D1DE70325786EF5
+C42D2E9F3DDA5F7108E3C28357AD1F088404AFF56EF5BC9ABC92A32BD46FAD66
+4BF53BD32E3A6781F4DA33E25E0075638D941389DCF2D5F3FA3C9AD7DC26BC19
+28D04510B6DC27C7C6EF0EF6189968C8759920E15F65108B389BAA1D2047B977
+E1818381DF9FC5FC217DBBDCA80BAB7B98E7A00A97AA3BD47EF50ED526FC8583
+1FF5B2B4B470642E3F575F4C0B1FC5EBBDA263F89E6D644E2F56DBC6FB50D23A
+A04A2ED571997F30657BEDF19D268F69D7A624FB11BBE30E94448708D077A238
+CD4543C8E805BC0DE96A0F4E14E721CA75A34DF4F911034DCAF94C190380D55E
+77BBA860C105DCBA06BB201281A02830F8FE7951855ECD7E13A2514B2EC6A93D
+A40D690A17709E21DA5305E3DFFB395708581573005A777EAFA0403B2F6ABC0B
+EAD09C5C3E2B111D8E3687DDA302B8AC5B11341E916A63832439057BC72B2E67
+7BAA5ECF2A8FB4D60751A1F209BA3F80E2BDDD496106EE382F0B704B94A7EB2D
+1659474F5B80774BB710BA2A744794A74061970230B044218212BF7C908A9F5C
+8575922D7E0D13FE10CC1E548C182F402346C6E256C3C77E871703214488172A
+76E46E6B5BF7B7704AA57E3C8CE8EABC9F8BF0A53538F3A09F27ABC005117354
+39F733BCE06C01F617CA9552C01B0ECC3AD05D9C04E67CB7C194007C4C64A460
+726BA5371B9B33A713C6B3D69A6DDA20E104580E1CCF7B0958E5086B31C28AF0
+D645B982521DDF76581C7DE21C7FA385F5A5AE637169427D13300AA66B53DBCC
+4CC79A0320A2C5379B7A9A54AC967163DBFB993753FA7AF4E4F7AB3710BDBF8C
+3F10A9BCC0BB17ADB5C5727895910CD7CA7F4923F00B07FD16318E0A53633A3B
+0501EA6D8851CB557D80120DF270B85DC721881CD897BEB71CD7EEC64CA12990
+E8E580E138EF6F9EE2F8EBD3DDC3C5F63AAF381ECC7350379646788EDDE61725
+C72975D2DBD54F7E7B5B1DCF78969BBCFDF726C8F7CB93F39CA28715C943C782
+5CD1C1DDB42404E24E079ECB45A8C3625039AAE73D365CDE69473537D4E575A1
+1D017E12D1FB54B41D956915EB6315A82EF3CA876200D5CF0973CE5F56649FEB
+F62747208C08C8C61A0AE81FC3A538B16DDB109177C7A686A256CF37D55DBDA7
+8F807AD40060A99A44BEDF27C3B7178199E750C91119A7AF35496F6F1ACBD666
+B5E1C8F49FF59AC5C5648011E2D0F7F85596705D4DF9CA26541624DD059E8E70
+4E74F1743A6C6DFE15BF1FAC3CD9A004F3AD0828489706818A60C1661B9E09D3
+3F18885643D21E8EFFA14F48E22ED8124BFBB4398024C177B02C760A59F7C0CE
+E1B619449022B819131DDCD178F826A0C2E9389C2B8B44B229F954FEB4D5FC0E
+CA84B53501FC1767BEED2381CF24BD89BAC6BFE1868C78416159F6F933E7C828
+DB743BC92B2EC3DC2DBB0E14F569EF1BCFF9182C04627D1E2BD48EF654850CD8
+7151797484EAFF38C38F8577737F5EE125EF08565E4F6E6603CB9CAFA165A355
+4B06608C939495934D515A13D319F3F8C4C1425363C897D025D28BF1A4BFA09E
+0F97561179C2C0F030F0B6A3C8591537506D9FDF232AC0BC848E517E61F2AB95
+88D386584AB5F92CE4C68D1F419A32576D47EA6CEF4B37946B1E3DAB1E67FED4
+A5B70D62A9F69C227C21C8AB490DB86DFB4CA788B6CBFF8F02B920F739B141DE
+1A095167465D82714F492EA9D2B4F7BF14719BAB487EF25F8BD1B377FEC95E66
+F3D7020294E06E743A606D61B27DE20252F211737C4026FF7B9B4945DBFC9809
+8E1594CE15A1D7E5270B7448CDEC0E7D728AF99771E64A43B27A041FCE6B963D
+42B6E1975F5F8F8C26602DC75D04ACF27CB1DA2B0841529E26CE6A1D0E5E9B31
+0C191C39FDB29C4505CAAC095E91619AD29468DE658EFE5D5198FE5EEFB0A2E1
+4D6A7F1BBBBE87D543592D0E658FAD7B5A002D6464C9A413D8952C533DAE8507
+B88888C8BFC31C3F8838653527A3AF640BB9CF67FBB5844FA83E7D9D51D801F5
+62C12CA2D6070801067033521249A56C5B0B77B19811FAD4951E34A6CE5CA1A8
+443E4C5B72CAD2FFE1650FFF90A91EE8D7DD95D77F681C1858857EC9C449AA1B
+C0D7145473917BC9E1D8D6A691C91E1A9DBABCAB74BB080F506E992C1A974E26
+00C556FE22EA28DF85CE94B3898AD28F137ED56D605CE095BAD1AC60BC6B73CF
+85EA4ED98FC0ED5971DC5A75F289698FB94A4FEA6479479FB2A9BFED1859F69D
+1EDF8BEFD567FA71B725B11D55B06CF0E95F817DD67612B41AD48934A4D5ED7B
+D888DD698395041DB1C9290F599BF0ACD24AD9EEE1ABCFEFABFFEEA96A02D292
+C78CBAF56DC3AE9E909A2856E2614E2EB9D4F46289AF8248CACE1CFF69C66F94
+F5B939A523DD14332C225110DA3446A4818FDD67B5D16FDACA990DDE72B9F10B
+F3924237D2B6069030B76DECAFFA70FE97F5C5C684A750AC53EE37B1E27C5910
+48BDAC0DE147D16BEA29E4A67AB88588CD8F3B50C4EA3A18D81778949CB17F14
+E4B19BBB9FE53ED4105C05FC9180CFF9F59F956CA0A6D11230499F04724051CA
+B98968E61ED0DF26ACB0D0EB7EC9BA825547B42F4A439AF0F1B4D4F9F4518ED9
+4A80B709484E08438B6D103CA4F0C7C8CE75889EC2C501A375FD8D91722D5FF8
+195D24FB5D569630D94FDEFA35A8D881FF0271B3D451A884D106735D4A2361A6
+D71626BBDF60991E20045C1B980FDCA1F436C1EC063C9B454E55062FE19F88B3
+C84211C2D38911CCC65C1B10931EBC9D633FF04826D1875DE425E69D60905013
+3280E96B205088FA4C3AA2665B595DC5BE5AFF1C29FE961869F3A03AC93569CF
+A1EF8D26E4FCB55CC541FAD73B55A60A9AFDB07C4F26B7AAD34193D5D3E55B6E
+53B7E8C23EF6AF8D363C59A59C1C5DF268B43E3BDE031C960662E3B308BDE103
+5717C31227ED287DE82B9C1923F0FB2885C2AA2839273128EA545CB9704CC989
+C4B324BB68E070E9F0810137F4B1FDAD4B7E959872BDB8929AE4855EB15D88BF
+F1A10FDD74B735B9EE49465875B67070F6D6CA219A64FA86934A4CB5EDF7073B
+B814B8C9892EF9A90129E3C0D84BC60C0DAED6A7CA8EF9164BAA7B3B11736AF8
+C58302F9578CAF243178E37C0CC8C3C9544AFA68952BF4B02890A0D000645694
+7AEBF900234A5374E199A5D90F10E57A1C123DEA596AC51BFD29DF7433141F90
+E0656BECAFED14399A3CB3A7CC99D5B2A8F88FAF17C9EEE84C08D0EADBC15B41
+7B21B8BF97FE52CEB94EBA37CEEB39EF757F7FC8A76B150796A27C646D5C85DD
+69AFE8AAF7465D0BE73B348CCD8E6493AACB6CEA5C15A9636C2DF301E5C7F72C
+B8C6BA861E90D2015817619C9A013CA9E7D22D26C6E8393187F8179E1693EDEA
+F2531A7555FF7BA758D3792108786E9745DC6B235D02AEC8A65A45CD310169BB
+F8AE3BA1C8A88A4C2A8C2C730F428FDDE333C75558417E41F95D6DC547E0AE93
+134F547C8F7BCA1D2FF766A9E2A2C799C529348871F5A56D5B8ADEA3B2A11DF0
+545A0A5930AC1EB9B33D296DB9F1E8B815B741D855622350EC35DA65E002610F
+4EBA010D0E018E168377533CC24CF7F4B79C90FD7C4AFAD40756621200E45012
+6C65F1359854128910451346DB93A34374EBE00140D3BB639CC14901E7C448EA
+B7C6F6D76DD96CDB8910BC20869B7E235BEA990DC962554C1D92EC9625813BAC
+252E58DF9D422C9C3645A999A3F25B5ECBE2B43926E2E9951E47DDC1E302FAC5
+921AF039D110CAB81962ED99254457E99A142A2F3230492827806417B1480691
+BE5511A7C1FAEC3B11745B30A10B8DDBFCBAC3B3B8122115F3E869C36AF8584C
+ACCD78A3B88E09C7AC348187D3D9B650827FACB330B2492DA961EAF8CBBE87C6
+8ADD19B167EBE1A73EEFD7CC9239DBE4E8438A4A16A28F97A1C6CEB14F543C23
+238478AC9630CDC4CD3A01C8DF7E06C8B8F033A32D2B4BF1C23CAA5366367DDC
+D3CA457D69489D0C84E56D50796B28F8BD089108F4D8C7FF554CC68309055B12
+9F910D46D48AFF711073F5453D8DE7A781FD9DF4CF4B28799093DD8FC2055BCE
+E8129ED81391F18F26EED523B9BCC59E941DDED79B23E74FC37BFAE9724A9E24
+5304601310BE6FF3B480C7BA9E0B72E4C6FC8BE2A0A9407109E1770ABC56FBC0
+A8A44AC1496D3F41A74B8AB00435E679E7B107C133F3669697E8341B70DEDED3
+48D6BCDD9BF9D336F25E5739A9CB1420D6F1813D1282C0E0EFBFD8DDE2C66089
+8B82A466300D6356A3257222AD8B28F8185085218997DFE0FE1A1CE1AF554B98
+A1699E9068CB49374FDEFFA433B638B71284FAA1211B65898C3C056802FD3AD2
+3AA4F680922D437146E4F7DEC9CB8ABF1A8EBFCCFB7DC9B3BCE38C8C4F2A578F
+51B3AA15BD2BA58496CF4BF26DB0DE0CE1214674239166AAA4A25606920B81D2
+A0AD21E24B3AC6A74368F9E7F116BBA02DD2AECEC99F41BC3D955D43C2E22F2C
+7C81B1EB554351D47461805FEEF5CB89426AD58246617F6E5135F7F735822D2A
+8A41C2A685086F145175154762EB694EF1A877670A51C4A86139E64063A80933
+61B9C6111F450BE26BB644316FE30986368945EFA43F6BD4BE3840F578C6B7E5
+64E8BB87AF2A7E2F4A8B1AA257C2DEB9C8BDA8A5274E5076756B3E942A44F1BA
+D26498BF571F450D904733A0F796238403E5A781E640330D70AD296F6D74B679
+B0B1168B656E9B28E4BC7026FD15197875D89A72696FD7B20A3EE4ECA24B78B6
+6391F8DE690ED48966603F2186424B17A28CD3B64BE1E3768D8AE01954A4DC91
+CDD6F3A30D3C4EB5F9C2CE00A5A64086FFE87EBD9B4ED432FE59DDBA942F72B0
+F6B3C8CA4CCFA5DD2BB195FBE297F6E65CF6C06E9D4475EA2C41D61D39F0B25B
+889E1EF856FF0817142ABA12DE2C80A2FBE0C0D98A60952D93E3AB87C644D4AA
+B7CD2011876AD53DE27BB957F69F4C4E48B292D916CEE8BDCF3AA2FF9C72E580
+EB5482E26EB7719FC7BEBAEA7102D55048289FBEF5C5829D96A437F4F7CA57CF
+9FDE380071F7859DC68EFD00288063EBAC1112227AF649694E3D2D63B6AFDD3C
+7702EEE2F4ED8D760D2023EE1193D3266AD408AB8A3FFBBF6FB9FB1E8E849F75
+D79AA064A146C42EBEC6B1F5B77A02D9C92DFE729DB8F03C6E67E9587346ADCE
+213F08F02AE6C6D2340E8F041B212A760F0EB6D4C4F7AD11C0C7D003C384E9EC
+8009BBF3B5351BAC77CBB2DEC5547D9C9F2ECFEBCAB4D48B5985E891E51C7BFA
+0A02C7B166565EE79D8D5BDCA41C79C69399102BAB4561B1171CA99A57550363
+3231BB3E3F48BEAE734E65310AFB89A170D7D2C23690D07050E6246647B2A3C5
+BF170818138683EA1B4DEA8C2F018D0FD5778BEA72C72E6CDA1458BC8D1E553D
+E61050AA240D0677D9DA9D9C22810CBC6C0E441C02B27BEF9BB48027E07FC495
+9E83F67BE50872095AD837B6BF75C0B5669091CD4923EE8929877CD0BBC624F9
+17B90C8D5FCE286F68DE2FC1508373EE9F9FA6F5A3978C75F52DDC397E368A0B
+57F5B40322053BBAFE6C7F8F293E0E3BACFE054A8AA7DCC3FF253F58C75B9D12
+4669407237089506FE8CC6A24A1025C8B4673B48FF3174C042C4D66BE2AC584F
+6A346027B020024CB9816965E99F62488D47EF144740C30CDDD2562F6BAC56EE
+04AE0AA4421F68C2525130D92002CE82F361624166C24F7C2B11C69310B93719
+0947BA4E74BA25398727049E1E8C94669B709718B2BA25D889BA48D66B0A9EF9
+173C6CF93116BC0DCE2DD62D2A936341BA360D901BF23D9A6579977464D12A3E
+14A083FB37A4049BDC5F4D9E8D49D05FC4213B01CFB0231D2B03F552F366846B
+7AB75D68EB74D57CA505C571AE2086BBB8072B00881A57AEBE38304FD73F20D1
+B3A3F4DBA7CD736A475A04B7785C64F8802DD8483C75E50F385FE63D063E7ADB
+0FC45DC313B0585C605D1529D226FE08FF7ACA26E0CB2C1B23444E976107731F
+1795EE18D69C11B9969542AA52BF0D3C4D00862494DF946B74718DB8FC586DAF
+64BAE620E3C1512720B0ACB343DA448A0419975CD986B40D91192158129232C5
+85E18BBA914D219AE5979CF98BC9A4006687095BB53215DEE575D4FF7FDFE94A
+25A05F1CCE048E2F7A801C7AFACD586C218C1A04B43F167EEA5D6A4EC9DB4FB8
+C2E56225709D9AF95C88DFFF3B7EB9C337069278D51F0824C96DF582C630BEE2
+C4DFA3E9C9CE76D1B52A23CBAAC840EEC8B3786D45834D55942B46B6B4C612AF
+BFB077F21E0F7F0EC6436BDF1704EAC52789C75F7900EB441EF83E37C780A699
+2E3B2F5222D7FC4440FFBD93A01205FC7E64CBE9849BD01FD4448B343FEA4101
+9FFF4E1527F81F4DF3FEE2F42953C4BD655A50BDC6EFC02E25A5D8695544E166
+7ECC195622F1911EE8D637DCEFD8686B01A130671BA5597768246CEEDB1DC252
+214E01AB3AF7AB7E3D766C1FF37CFEFC2FBD4448DE566042D46B3F2A0CD85D27
+52F4CBBF632139E86B8A2669321B4488AEE0E3EE016440B026BA4F3CDB798BF5
+1E026DE9653F2851D1B095C7272112CC642066872578C2063921B1F1DC1DC37E
+6FCA614E9EDC7EFBCADDF112E3127B753D0DBA1F920964D69C779343ABB1B56C
+EEF95475F7CCE12C08A5AC0502C65284DD6F34C8FC31E6D696D9B1075B6CA4E6
+8857AE5D9267CF640DBEB733B3FA1DF1EE67D578445DA58492A8BC190AE91CAE
+DFE1F1C833312BD85578E1D63F8E593432BE3D4A9307127750DD9F9509660664
+92F85F9C97860433F1190C2448AAEE97CEFD9E048681D41D17F5CD3B8C6C3AC9
+E7D46179623C806085BB5D23E6ED26B2D900515216EFC224A9F25660536467B8
+B47665F6514284E567397A7AC78784A8CF47B61DDC9A66B74C04FADC5074B8C0
+476EAE541AB9F94E990FFC31CD94CAA9E93966096383C1951B00C4E79B51A728
+7526A4FD3A5F6E9D673555CD7142C94EDE73E8A3295341698D777405898E3B4A
+E149CB4E9EF567CC18C35C3BA9354CDE55382A6569A8D0B2B7453E5008347B32
+8B5745431E577B3525D343EEE8C0CE5CBE1CC6D3FD13AE8C5C9F672B10451183
+3BDB33698C0D220902195138EF44A545EA6092A79C9F4AF24D73B735E3733FE6
+67E47D76CE584299B16295BE997949021F949E035F49593BC128DFA89182F89B
+2FC9EDE36D2010B1BA62A6D900B00C4524AC6981F0DDEE41043ED7500F574409
+C275BD142BE36AD2F5B08121EB0EFD58E8EDF388CEE211D4FC3C2D04D09E8757
+17CF2869D202B2302BF7F5741F4DF47C1D76962A3DE9E718ACF684751BD968F4
+6B3488D623E734451674276CE47A465AE3F50B50A938C17DAEDBD7E40737FC3D
+35A709ED283B930E0381A174F3804E78BDF8B8761BC37179A96FA636127145B8
+639577E80613C9A547AA8C3441C85E8408C0C4C1A5143A3179F9366DECA49F47
+324BCB48FFBF44DC15A98DF0A4F9331BCD908E5D516881A82ADA22B906A85015
+6643813BFBBFBD2790451F64AF61E0252CA23D2C44BB92D546B50DF7C2F5F3B9
+560117B9EC0D5DEC65A4404FD7CAB019E50B6C468DA7B5D2239F298DB98C83EC
+8611CDF1D5207EE2F8F817958D2ECDC5557BA2D8023B69FE98BF4ADEBA5610DD
+F12B997F1D998441952BD2EB089AF2C6CC99FAD2E7E9AF14648BF99A09355470
+F32C0A511E8A02FE7E24F7E535020C6FA0FC4D9015532467666B0192BAE64768
+756C8AC401A71864A830359DEAC2919113979FE4DA48292EFC5DDD97A53377ED
+CB29E122DACB9C126F687AD2684F4EF885727C84F09CA8C579D48ADEF1F47859
+DA6848081327E0316788D90F3F59452FC9EBDA175845FF0FD6178A0582E20436
+4BCE9A140877B4DE31EC9006341568BDCCC9DF9DDA0B086DCF1D5A8BCE4060B4
+1F13F5A274242B4A0990BE59BC8DD36A2AC264258E19CFDC1AA63432D07E9DFD
+C35528A40580887195D79101345AEBBD0041A765274D09780B2BE95BD42CD1E6
+A5B490374097FA0E5B6F196A3C47C18E8499717C07A36BF3DEC7064845253515
+E0299143BEED08AE775CADA4F8ACEB96D70F08779BEBF179B2BFB0DCB0F1C126
+35B6BAB5C1F755CC9C40D5506135F11A22F802A9F3C79342B6FB9522729E681C
+C4A93373F8E6DB2CABFA5B7CAB4C243C975EFF5C5D634D4D311EEFADBF115E41
+1C3EA696F82803A071B80E18BE67F7828DB353FDE5B51073E86E68486CDCE01F
+5D79F3E3DB087505FCEF1F9B01908F1D9FE1EBEB25B6DDB40C119D5B28DECDDF
+0F579BBDE6CA59B903368E3460730A756FBEBA62903512DEFDA5CE765C479DC4
+5658ED736D9EEE0CCA46CD2676C475FD3F8E2BFEEF43E7B959F19468FDEDAB2E
+BDFF5ACA6119413724BA04E9B006C4AC43CF2A16FFDD90A1E46F52C661328295
+B245F8
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -1125,25 +1962,41 @@ C79C8A80
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
+{restore}if
%%EndFont
%%BeginFont: CMTT9
-%!PS-AdobeFont-1.1: CMTT9 1.0
-%%CreationDate: 1991 Aug 20 16:46:24
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+%!PS-AdobeFont-1.0: CMTT9 003.002
+%%Title: CMTT9
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMTT9.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMTT9 known{/CMTT9 findfont dup/UniqueID known{dup
+/UniqueID get 5000831 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMTT9 def
+/FontBBox {-6 -233 542 698 }readonly def
+/UniqueID 5000831 def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMTT9.) readonly def
/FullName (CMTT9) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle 0 def
/isFixedPitch true def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
end readonly def
-/FontName /CMTT9 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 33 /exclam put
@@ -1224,372 +2077,527 @@ dup 123 /braceleft put
dup 124 /bar put
dup 125 /braceright put
readonly def
-/FontBBox{-6 -233 542 698}readonly def
currentdict end
currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
-016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
-9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
-D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
-469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
-2BDBF16FBC7512FAA308A093FE5F00F963068B8232429ED8B7CF6A3D879A2D1E
-2931CE5F5D18C658602059F07BE66E6EFC9239D7AB2FB8A4CBD41675B8ECF279
-650C29E53B14AC0E392A664848C1844B1CECBB2D5CFB72D0916B675C9A9A1E35
-F12696A6F628473C604A95376468E06E295AD6F76CEB939D94113532050B9D5A
-D2F41A9EFB9424D986612313B89EFE9C8A71313340B248F6853B1EDBF02B7F9E
-F447220FE131D7D54CFB8AA1281DBAEA73E665BACB1F164552CC0CEDB63BD4B1
-4A9AE8AC6FA02242DBE8DA46B64B6BFC11762F0784F216FC8B9120D688D1705A
-438B14F5E5DEAF2A98408B3B64620DE3732A4DAE6D08D5D97E34C75DAE19EABD
-BA0796165C1151BCBFB1DF8D29A63A8300DBDB9E3323CB82D0337598B83F4F2B
-A97CF5196D4D1CEC1EDB8966E548C0D9C194C932319610FB43EA1B86322FE641
-AB48770FF13BD475A7267E142388563D1A400419C585B22A9886074687BEDF74
-D905BE8EE440BA2ABF28EAB673399B7F129B9729DD5564C681954621903B84BB
-CAF89AC5ADB2932472DF29ADA2BDBDB4D05F65F28F5F4C529613D61858E0074A
-082A852710A62A147C966F2B85B51B0BE85F11D2057C66FDD61F6C5755367980
-9F4DE680601D4DA41B46F8D2148450000413C27AA39B586B74B977B25F0FD3C0
-4BA1EBFAFDBEC531EA1210365091671CE3C86A6D4BC591C37DCC02570042575A
-9D24252D6E01A8603753934D7EA5CAC1BE4E5AD2BA047DE8F3983B23A8A1511F
-B08D373B69E5076CE4300137B8805EBCC0AAB89BBB312A77835795E3C069322D
-42C893A30AD739E2BDD299679B158F7493764F2321E3965141B5ED1C6F4765ED
-F46D391A646B30C90002B1C461AEE79E5F094CACCA656CEA3DB921CC5205F328
-A2C69F817061D6C60B121EEE844CA5008F23DF08D66E248C339CE7776CCC524C
-8CA2BD3DD82DA10C66125257C1EA6A0550766E29C3BDC8B5B878A4D35B5FA0AC
-1FEB3A038C1B92A6B625E7B2BBDCBB2A97CD92E29BC5850422A7DF6E7CD72722
-4096071A3AE383E392D6EC8615239B9357427F1CCBC396AC636B1CA66B232EE2
-191F60A878286CD42C95EA5DAC1472E81C3F47B0EEB6BED36ABBE143596BA7BC
-7B41F903F7B22F5C6436B07FC8D91DC8B1825CAF3388A7EA9E7110FB8560077B
-B2882B7B2D513C6FDF621FD23623EEC2D861F810CBCA5DB8CEE2CFA8A2D5C8AA
-DA59EA9C229EB38B025502C5E625DE3816B77107E5967F7596857676B6F4E454
-55654BFA837D8FA0F4FB214ABE61483F34E2DBB95B60BA52E0ED8486199528FC
-439D000BD1FE0CA35B39D08090E21352A08F54641764153C8F61CF3A1A4FCB6B
-F4046AB159484B2F14A67E06E7ECC9156E8006922FC5C398D6CDB34E895245BE
-9527D1AFDC844B35BDD6D2DDC078475C130E24C0F199B0416B7422FA27A0931A
-1FA6805D4D60AA052A0101BD911C0DD25E870F0CC4226C4C36D6CCD442251B64
-0145B3EA3C2C799001B7AE02CA3FB0CFA545A4A5147787C471D01CE42B40F73E
-4AA293C37F43EDDECDFE3FEAB470385B978E4369AFEEFE6F171AD5A4F6573EAF
-F375A89F9F9CA20FA45750AC1F9A067B8D7DF6A044D9B1AC1CC6AE2A1F15250A
-7C99A150FC7F511BEDC3BBFD64E5793EB558AEF72D080B23E71E1325F3245674
-AE7AAB0F4DFCA0BF442ACC254F71DE3F7B135EFB1B41308310309015E01AB4A1
-0E491A0D4C1A32ADF4786370E01457FA9DD7E915782D6C7E1E9DA7A67EF43F87
-A4740C18E53BB87D1DDDB2752B538B7454B1DD65669F0B395683FEECBE05103E
-347A9FB9C98DFCED99D7A6879DDD1464BBA5095600F7CFF34A18218FB7226742
-8394DD5AC37BB6BDD22E952C535FD3F9547A01BC825A2FA8109068F05946C5F2
-EA9D9D01C879B44F7BAC40C94B0094FE58C1F6F916E48DBBAF6C72C0B11E6242
-C65173EDE7CC47B8AD3DBC74BB64992953AC98ED49B4B46CA94D223E961A962B
-8A184D2CF2A7F92862C6E0DF6CB00D30CF7FED17FEA42838A3F81054A472709F
-F3F002C5DD8DC2E7C4BD983E18E2676A81F85A65DCA00012CD287D6E90E7EB48
-4DCF789DF363D3BED10FF8B9B31D9BB8CABFDF91C3BC8C5A9071F4AB2D3B1840
-FB9C52292B108326F11693A29973B42779425D084A3FAA4F43DDD9C07DD357A0
-CFD35A7B3B6B14C59A1594B797EAE5A3FA54A7AA95EC9ACC31460AA17F61CBC8
-DFEB44FF91E0E144FE12AD252162519820F56A157C07299AD2D715FB80522A6B
-AB8CF919FF97FDCCCA74135BE8E7E5413EA32DE85CE077C09AF90EEE7D78E11C
-589C21B9099F7C64999720AEC0A18123FB67747F75129A4D3F1DBADEC948CD18
-7E1E2FFB400CF428A474D305B0B831133FAAA866BE8205B430C3C94AE7EBFA33
-198952E806DF8F7C823BDDB54677BB57DDAA389FAB2FEF8B89366B312AA6DD03
-7E3A851442FDB1BAEE81A154A2463DA78FC47D10BDD6F55A5B74893F188872ED
-27F6CFF12AD92DD09970B995C1629BE5BB41CCDE25C2857DF45AA650083D9965
-F65A2AF700B3097C1AAAA1FC29C89DB9186E50BA22F8FA0D23591B50F617AA62
-7CCA4D77864FC4AF401D4B1BE16BFF00385D89656E347C52C12A33EEE9FD0911
-95860B53F18BEFF78CC0E8DF76C654F11EDF2527F577CBD196EB8804A2DBA13C
-840D15845E120D5B8C1A710EF6CD01FAD157B94BC2D876C560227F734EB795AB
-CFD47FCBFA12E0C281147A33C80CD1BD8A1C11FD3F235D366D367C9C551CC1A8
-3EA7AF1D7649B7A6FFD1BD8212A00946935D9E877FB24636BF573A5C620B3156
-17C914386B4FCAFC3AE9FDD1E332D3EF2EE5305B3C01E4BDB9E3528B71C40B82
-003B049352A5B969A8060FB9A86D2DDFFCC4BD41A556DF57C23595F9EE6CA267
-649866E117666151FAB8B2DB9AFEFB841A261898DD1D52592CFC0D1180B1DCBE
-B7BF3D078CE3F0C78999CEB964C2E6647341CE2244399A304BA1F90BB164F7F5
-81F0A0221B3F71114C7AAB265DBB3F6F79BC6CF1A7D7CB11BC9AD969416FDE71
-34EEEECB1F7AA5744D6728EFE7FDA19EF74E5238AAC1FAE762797F4ED26C3F05
-2D2316A5F815F8BB2523067D3AF16652A75A12C409B9BE9416AF3BCF4458003E
-F1922C60F94DAD2C549ACF20C14221274FFAD230B1B981248C42876074DD8B8C
-9D81A7FDDA6BE40BE0787E3120C4FBC93A9A39BE4C17164EBA33F15BCF042D0C
-37BC7E678A4D9DDC9519A9C37384383A20AABF131E44789BD4CA9D56800DA323
-8DEFADBD2D6899603F9462782F37930DB52F28479FD84EC7EE877E879987CB39
-E7133F429806EEFA5974E2D16C934353FE02127954BF71B1D1A09C513AB4DE0C
-A0D9DACE1E8D361D4747ADAEAAE6190228E9EF1DB43A99F52DF26E11419EB14E
-650BCE54E9EF0DA7BB70567B1F7F441D07793028FB52A3E3C561B8B3B34B3D62
-3595B9F44F4D74F756FB6B50E0BFD47585BFD99F76634890EF314713383776A0
-C6F34BE7E339B949F523562F81498175C93F635B1747440999E60041A2B4744E
-B8AD0C1BAB9EA47F9AEBC4A5349C59EE5DAE4E6146C184DDB0BD1EC9B859398A
-59CAAED3A72B8AC998BB5F51CDFF5A520AE2C36C4CDB2BC118663DC19E6E103D
-ED641319D3BA89D4702C56D9FF61F3A93E4DCEC715001E46690D4F184B83BBF0
-60B969BBFDBB3F83716EC1480F99ACE4F02209F50AA768209911501F0F2F0E87
-48D8F3C7340963A0C8348FE3955B7C6C8614ADE31305C388E533D26690004ABE
-71AC6D1213CC084F5AA4B66E261D7AC2F16DBDB5AA2F985BF822B23AC30AF0D3
-CBF4D94DEE34515596E3E605CCD98A26FF07603B4A52B6A808F77393BC5B9DED
-620F4824C031942EEC542BC26EE06BDE40DAA2AFAEB124058FEB5ACE034D681F
-51C3735D0BF340444C793BACAFD1E3860017B164697BF118C1FF5C124B88405B
-B5AC38BFBB861A2D076B275CD0CC45504A1021411A41B9B1A3AA413BA9D82BBF
-3022DFD0A1440F2D58BAF9BA6BAD749766900D83368AE48BC02DCE12F6D7CDE4
-1FBC15A80D9E7B377E874AD17C6364F0621B4AADFDF5D90A374A9404FC57055D
-6A138926E75E67B9365DD3D95B6901F50FF465BBD813EB646EAC09BDC2426B35
-EF47D338E3D9EB7340C381FE1DD8E2A5F6E1598618B64DDCA43D33858DAF5095
-8A92152869F57DB7D548CDD16582AD07D5CFBBF4433CC3D487EACCF8784EDD80
-11D3C3054FDB1F78B0FA879FFCC99DA15D4E306AB927BE085AE54A896F6CF3E9
-F6689D4AF2A88C7024D3A89D31D024279612A829443BF35BC4F76DA05900B9B5
-078A7B78C9310279E3A855465731514C9CA8D643E5845873A6D3607F8F0D3625
-C8939779E756B2C6FA565033C8080226DE388DED3C989D5BAE59FEDE462591A6
-ECF9B40DB08A23D764DC5284CD8A04B8749374EC1A6A6732EF0C9852700F9436
-5D9FC748E459D13D13099FC7D74A86D85A18344ED6F7965685B3C54683821EA5
-2EC0C8EBC5188FAEC520B41D4FD68D7B0C9E3A7C3BE7C8229789697D0B265F6B
-5A1FE82AB672357087C05B62FC06DEC6C3465B17B74D40A30214FBEEC649BA7E
-45D4B8E9F2B7888600A16950B9D5C6B6F5777DCC97D04588FBD845F1C9D81189
-E61BA56AE99DABF99441BF2FC45E243415193898D02C0CBE119FDF863921C2C0
-B760B48C9A1F6DF7176813D9E7BED2F5D27E4BBFE9C27A4062BF99FAE432470E
-98A2876BE53794FC7E3D1F2ADE2788E51682C37503A9ECC827867ADEB4C80227
-D9D8E23C8CE5DB56AA2406C117768079FF0DBABB3E5981A48B8A3E3427BD8F6B
-D894F93F5F9018C23BDEB5F4711E87FA5EB142340111A9F7CCCC030BFFFCDBE3
-929A6BF3300CC9B1D79A92C157824E4A575793AE56D27135676431FB6596DBF2
-2A13C8F6E6082DF56F72C7B1E7B90ADEAE663A4C464E4C8C2B2F7AB9F154F942
-D573C87460849635FF730A2BBC479DB662099FEC948830E4831D8114B73C4EC6
-65C61679AB531A0E92967C6B79F711D0EFE29387EA15C379D5DF6C199BCAA16E
-0EB5EC39EC280B03A6A3DE9CC87FE94C708EAA00CD4A62D9AF26B2CBE892AB28
-7ACFF0B18CB1F0455F8389F73C0B490C8ADCAEF476D9E0EC941AA218B2B9F92A
-BBFC310C03DCFD06FD5BEFD566C25928B358238811AA9CFA445FC1B6600AE532
-657A163F95E0BCBCA9EACAC62E401863EFBEA751C9074D5807F8BFC15A304993
-03939165D2F52B3915511FB7E5F231F26D6C7A0D4E769501729EE55C5FA626F9
-313241440D20C0D640B3E7A05DDDE10EE749494840467DC88922253CC4B4B8B5
-11C5B308BC3713A40796E4A8C99EDF166B54E60493DA4A2C360F57E81ABCCAE4
-26B2A2E071B63C45D9A6AF034680D81480D85E10C740CA5747F506DE3CA3F489
-73FCB5CCC94D5BB0876A883D65A47B05C957A68F9598109B1B00EFE6E01678AD
-354F37E28932D02D7F2C54D36945718C9124FC1515D2BA0D25A27084A7421762
-4F2B12AF7B9EBBD0A88E6EF38260FF55C14372DB946E551A6D6A967B008E6B01
-5A1DCCD8E7BCC291D8B9C4DB1EF72D50190372EF58764498360FFA1C3FAC6C54
-B95DF69F65A1807B61EE31114D52C637100E1177B0DF94FECD235B615613A63B
-CC71FDECA38E42C165664A4F2A58F6D679308401563AE85A4A1449B1F5AFD565
-01E6A6EFD36EAF126BE1CBDDEC2B1826A392BAF6141085FBFD78EB36052849BC
-83C05E4E3FBA8E05E7C979EF87A32DD90B8A6004200BBE75FB1AC49106FD1C98
-32E3584DEF229A697E949F1FE8BFDCF59C5ABF9D485442A0BD63967AE08174C2
-82EEE7E97BBBCC83E8FBCE6A8C88A12C181724101C564445F5A9155D8005CF69
-4C06826937C90D0AF736DBBCBDFC70440144D8FD8BA4896910B0DE1365602475
-34763A813F162FDE38214C67F2E87D71C621B26B4FDF379F11F1FDE4668C61F8
-8A65E918BACBEA12F880459CB4D64F3754D703C460C1FEBF0A8FD6F58F5DDEAA
-93D761AAA91B7957D2C6B752D6FF38D312857D47B675FF9B39ED7D30662D307C
-95181DC677A83B687C8A673EDDC45A38B28617F50DCF0D4E2373BBF98197ECC9
-29E5B8F3587AB4EC00B9EF8F0865154AEE4CE96DA350C00FAB8BD1FC903F1E8B
-A4AE1197806FB18DE2A46F66D2F6A746197D7CBC32A8E4C53B249AEB59908F37
-AB12B0ECD227ECD96B19D6553C9F3DA83EA3EF4901AC8374549D23DD91E51D17
-BF101B4D643353D27C69C3C33BD6EBF84308CABAC072F8241A1756109D22E11D
-CBB8CDDA99D0A42FF721F3AFFAE03265B08A7E2E41CD4D4B2645A0866D4ED93F
-911455D824F88C670BF0EC07AA14A9F056A44F8FA2DBCC09FD3E5DA478784AA2
-1909B0BB1AB6565217E0E3AD4E259E1151E49D95DA3188D2EFDC650E768EE9A1
-33F41022BFE0390245046253346B64A292409EEC3CDDB0021FD4AE37B4051250
-2217392D095818D11F927A115F471017E453D7847346DE3FEC8BCB91AA59A155
-772ACD9026A2A93B91DB3A6C4810DA77A37CAEC8517DE28ECEFD9A876494E8E3
-BDC15E6A5585D949098B1DB2DFDE09CCA8DABEBF092121FB9148BBB04645952D
-42079D0DDE13AA59417B484DAF6C30924FC393A8F0815A65AA5989FF738B89F4
-AE62B47D44DB067CBCFB9109E3C24C1DD84C3A581554E2014F3E6A57AC7A26DA
-221866593BB54873745980EF42161C4FADDDD71D4547B69F7F9713FF225C9A4D
-077A0BA2CEB8E67FA239C764ED4E2CCF8A8414E7AA936A03CA49C8263CB62A41
-3A312CBD817F90C5693B7108E1F3EC3CF0449109936DECCA38E22C15615182EA
-5D8E9022AF754BF994D4C9485073392D6F7262C27BB97A0CA68DEA5313CB7B26
-9E999E6AD6A2F30FBD9BC8C61B04391C43EA4A170CF68B4F5AC71D2017109943
-E1568B23EDA8673015E0C5D8A31E933A0F6897C00DCBE5B796DD82B942F51587
-1605982D47DB697EE1951C79C1613B9E9AFB90E2EDF66F9024C1CCA694764333
-ED06424375C7E82B268155C4CA52ADB42263F6648BB5BAA416437427E3C11C21
-D76E1E07630EC193DEF3DD9AE9800F90ABC9B3F79136EB2ED48E145E3FE92B7E
-F70973F206BE138A402999E2E29C570DB2113BB507349FE28BFB0DA21E121CBB
-14302D2759B3BFF2B44E088EEF6ECA611CFD782E12986863F79308E075F2134F
-30F158FEEC371D23E4ADFF110EE78D7A64F21F944F2D8ED8A15BF8A6FE9CE084
-438B244DAE336453662781AE997D62B82EA487F8368F333DF653D6B4627AD987
-30ED43E0402785CEB3255BC003EF67249E22408D312B862762A0E73A982B3976
-1BD5DBA538A3C510F1842A224DFB000698E45ACFE6D701D878CF5EFD80345D32
-3A1C7481FDC1ABAE47B873B196F62D40EF426774FA25F8222051F762FF8A6B67
-1F6E0ED8B78E36EC1F004F24E5698DBEDA70138B12F4E05C6E6738CC84F385B8
-22D1B4900160D9392465937BC948A1645E4D496496051CF45D950A1956F6A00E
-520E2099332A0619771E12B2A6D799046E4F4C2D13D4DBBF4126EDA1847FBA1B
-7BDB0EED2DF4785B7B3170709847FB045833CD9306F2489B813FA5F8B750CA2A
-D7D620A5A425E21806FC0FAFD5E3A2FC4BC7C8B06DF2AA526226BCCAC341A39F
-685F1FB0168AD2E8FD34F95925D0F3DAE06CD5B1C460E9F199805EBCE3FBE201
-F456E1B718641ABABCC92120A62FD45BFEA79BC873B37E88B84BBAF02A2639A0
-A7F190B4AE11A3DD8894A726D33E3B7757022B59D5D3B18A49A4C3322009A48E
-2D9BA8E9636497C71A8C713DA6EFFBDB98D98B9857B9B19AF3C65BDC33C8DE0F
-74B19789E802C9EB7A967ADA9AB8364034651E1CB0AC24DBADD6F5B9D59A0AF4
-E5B6BA95D1E1E0148D5120F3C19A572D7C423EDBE56C6433B486E831A386D132
-3A5C09AD801260C8AE3243B681E12961A0991B876A0FF1687895F0A29C19468E
-CBE4BD85E70EDB163ED03660F59135BABC9B1E4107D613931597B3CA726B41BA
-19390550FEF7472581F2700C4CFB09FD3A56D1B087210CB9F914C5F9B090337D
-F39E009AA7E105964F551DC7DB5126EBED6DEE2CF0F13C27FA695AD4564B837D
-B7E1D1D53C1ED8EFFA3CA0E42BB53262113EF8CF1C2DB687DD3C42551BD70961
-481735DA76956069648F7DF7876EB0562DC7A1DB0E5DE973BB06C1CFB5E9FF79
-5E228CECDC3EEB120D6B45077E46608EBB14C7BE2B7FBBB79E82557D6CB8B3BA
-E4DB56D90F999929C695B53A9F9F70DA04D0717A0C231952E9B3E276DA4A3138
-BEACF8543564074254AA85089688F29B4A4CA38299EFC6DBE25D17A17FED4A76
-2E827396BAD2E499B0CCB9802133515FA9FF61DFBF4CC6857F058710ED7E2DFE
-51F127F90F32050BFC3622027BC0C18E897DA6475B898B9D5AF15B4D03C96227
-AABEE49EFF1803D8B4A3CC0D6C4D36DC5B57EB3B83E28C77DB05DD56E62536FB
-D998043AEBB0C17175D023646712FADBC23BDA28FEECF70A9CA6999FBA5E5C8B
-70D4C4CB9C1A3E23B23CE5BD6AACE1F5AC0E4E6588B4320CDE9A4B1B8C594736
-2EAC45EE51200D3DE033F5D0BA0AF2EF4423ECFEC1622B91EC584875D8FCCA9E
-7D44A26037DA5476A18109D33540C17CD4B45D900BA951AF213CFFD275E60FD2
-D47ECDC7B683EB4C5EAA684BFE45F37D14AF46C381CC8C1103E1924C108F391D
-A153E15C48605ED0480780B012725E9B50E1A8FE6B7D2C656E33F48A33442B0B
-15A62217E06D831B7237EA49D4C05C7CA6C2F1B3C3A98B6CBAB1FC38ACE8922E
-1F1F699F43528EC4E526FA0283895D26390C37C1550C5618826F7BB2B7B45BBC
-8E69EC037100878ACD5D0ECD048D23B5FD06CAF1587AD3E60099790C568E2727
-B86BC7E17DDA26EE8720C2AEB3647E3B0B1D986CF8265F06ECC551AE7CAE6F36
-352966E41231ADEE5D68D30C53D41D7D3F50359FB7BC060C69833A45142F1671
-C23AA2F19074171DD410A722F04FE927AE9858AF0052F0C28B4F69C7A7AB491D
-D4C9C20169E6054E1F531410593F9BB69EC909F0DD314DEECCDC4F5ADC192A34
-3F7070689FDFB32AEB5B97467197FA73469572BBC3E369084A8025847ECBEFBE
-4D475FCE09607CD06CC7F5608F30A164BC5EA08773D3C57695C51E7092AA4781
-F31E528AA8AD26AE6960BA7DD023C702E482715CE85D353DB4C140F6E81E91B5
-94531304C73AA8627B1DFCC0EB47C7A888060888EE98CBF1B8FBD9B4292FE50D
-79CD2FCA83D498D7168F63360F3D5D4B7DF0FAAFD9E745EAC81E78FDDAEC32AF
-6B45893DE552A4B0EB52CDDDF539595D8E4DF0245C05596390D6E8786AB4C621
-7B82B7983403153FB1AB89333F420A7004C9D0BCFD1E576413E97A40067F72B6
-1A1F84603171F1585D1A70131235030BDB369E028C3BB8B35C23541794C14972
-B06E912A339CB6D6562711F701C8C8F8A97D93EA8ED440293B61012B4BE52172
-756698BD042717A71EF3DCAB935A702C2289A94484C8A9FE08FEF74577949685
-46E5409509717E9647BDB4775DF43F65EB75DAC23B59D70CB39C907FA00A400F
-AA9DF6AD2B4DDDCB7EF63C47AD093E14D4C54B0A903A502EE81F87A97D81F0D9
-865595D8008C868A0DF0364810A50276FE89B09F8A64FA698FCE50045FE582E5
-CF8AF80EEB0DD7D5C3E24B30A3961BEE2DF6CBC7F2B957C6C93A8B6611D25BC0
-830A1B9CB6E5E964F39DB02E0082047E6AF57BD46F92436A060B5ED47FFB77B4
-FF4DF28F86CD48E7FFCD2CCACC5360E06193D8FED2C27F58DA205442FC4F4355
-0164656094DACF27508D218DFCE80A644640E72F1FDCD55C22B2ECE55D74C002
-687C0F81904FF711AF7D0A4F70F72CD62F74A6B9EC78DF5F3A07002974701008
-AFF3F5CDC2C89444D13B2DE39CDD9B93C3D4E74DEE89C10496B10499D131EA67
-6BA50FCDC6C7DA2B3E94E26D3A6472376842F107D26DE7D137FDBA19B2DFEFD5
-60898956BE2225E01A0953082E5C15186779CE1C1696B92760C3BFA3B3D3C16A
-196CD51882112DC5A89301A09458B50F605B904EFF42527FA57A0DAC771AD5F2
-F1F6900FA167808EC2627E60333EFD2E7E6DCCC020F88EBB43660E6C302B642A
-E2AE157BF93272C3769C722809396BFB35E97BFB128FA3C3043FACCBA8EC8AFE
-475434EEF95683BB2576399CABF929CC6534CC42A52E52925FE97A2C8CB8DB94
-B83EBFFBFFD36D81A81A7241EE96A298A428671C7D9873EB78CF0D9A6181E78E
-7FDA5753236283AFE40D48D474D9C60FC71C065CFF66772DE7861225EBE41F75
-522334B2EC0F865E4157C50E0F0AC7D4F2C33348021C38107D0976ED3C5DBC01
-58576EE86938EAF1791CA39500112A3E89415D25F009710C7585E8870A291988
-353C8834D8EBAE470E2410D2C3CAEA110DD9A7AF0789BCAD8734E0A221006A8B
-C1B73851DF9521C0B5DD4BE8C05C68B963824C417FE108A7D5006B5569D7878C
-4788FA924073A66E8B4BF65B5A88B02B0FABA93CD8D1C7DA1A4F5976F20AA858
-3CDEB8E5FF91A265CDA61C2F5D0073D2A51E2B6E6BC4183FE1DFD928EEE25E4E
-CB9E12975F280E9048964518DED9AD30E75B97DB4AA4BA6F9A6018A491DCFD86
-0918C75C818E9E8C6FC11DC1F73C609C71F68EBD3C142239E2897AA6D3DC5EB9
-081C49AC4A827F273F8F0B82BF19F9DF6BAB40FE15FA0066AD772FC4451F031D
-ADD0F171C7E5226BD909E6DE76D5F2662DA01D2CE961A19A3AF976FCD9BD42EF
-4DE7160373EADF50596EE389DB3B26BBBF8B255F14E3919B2082AA9F8474A37A
-F71F9BC92EE15CBAC7372FC8D0734625E65406A11240594E5F9E6E9BE3D6F276
-D0CC1F4D1B48B0FB0ABCF467E3A8DB69B1994779DF36D03D956FAF806BF4BD21
-74DC674362757D3A0676973FE83D7521B51D24148F8F3143B0438038C6FB4F8B
-D6812EB54FDE9F83F10A2AEB5CD0EAF58032AA2AAD7F55333A8728EFB6533075
-22F814E5AB848C4CF073CBABD2BAC21D1525FEE000D7B058658A380043C2C3E0
-4AF8844265F8926AE57C0532D68B86DA3ED7BC445FF523C35049FA273DCFD83E
-E7262BFDA7FCD30EA039A49BC490A038C67B0353C91D7B5C904C24EF1DD5087E
-BDFE503DD1C518CB774FEA64F9E18DA2BC74869067B3C17F2E34CD3E9F4B57F7
-243DA0925A39234214AFDF542F5A8EBD59C035628715676FD95A62C943B5E8DE
-DB8D64063240EAE6E3CE0127C5504AB70006CD347DB61201E2339B7088BF8467
-C3099B70DC22FAD3D88B8E122818309D97CE604AFA456FB51D98F2CEA0BFC4B2
-C6C4AAAE38B99F13E8CA24F96B1A1D847B150911C97DFE19E541177C1A8CE22C
-90E680C094ACDC4725621D5CE7A9130B66CC82BF00B16CBCA8E79D71D6D35ABB
-2117F4F3C1B3115C49609BC383D1969172209C393E82FDA5AF966280DD3FE27D
-F5F98308A8A773A04520BA6A949E109382D4A2B1A037913547CBE3427C222E0A
-BFA7551129D42653FBE7E6686DA61B84B5BC37F0F29728D69A8B95A3D149D6D3
-FB7B5BA3C93D81599BBA5832E784ED4D42B9F034AC322B015D3AEDFDC4FDCB85
-3F2C13A0F3A69F7DD95B3B5856E0AB160B0EEF6A9644065D96105682E045F070
-1DFCFFF5E1D9A88767DCF2DA023F287204A97FF6828337B2E1CCBD4AAEA4106B
-97F21F22D655A859114D76EF1EF20987B75FDB3E5DB0CC87910A9B4A140A7DB3
-DFE539684772EC2022AF3EA674AD8B3737E907AFF7DF226221CCE351E39EBFF8
-E02685F6061FFC09F74600D9898A4315E57C0212632062A40D42BF22F79CC5DB
-18C845A67880765B2C059CED91CE797AB5EE22D43236E2AF9BD11CBC7273D623
-4468E3FC1472A840AF6D5BE68F49B5AA69E2BD4D5AE9F9A4DAF964D08FB73558
-B9C585C7674841B166A7F9D977B52D49F0BF6D55F5375FD1BA7108F19EF4D5D2
-40A4E629FE97331F286868B1AEA168B80AFC20C5375F4E6D93F0FEFB5D871CA1
-A2B2CDDC44E619FAA1E108E5916816A00447FE522C5228581A5F5E9D8E5E973B
-B9D5C83BC8B47922063F6B0C300DF074FA4B931D9DCBFF21D244C8F199156A60
-3D4F448F520F2552FCE5EC51BF9BFAE7D0F9AA5E874672BEAC733E96B9C6E7DA
-8FB807E1FD383BBD975AC6CC76775FC11921E1CFD000B01FBC88A782C799805E
-70774646F44E55151610EB0FD0FB27593E08E756A7606454398B805B1C67D988
-1BBD89CB43BF7E9DA43D7C8F38D84A9AF3C3C91BF0417F99A7DFAE7591A8CB65
-92E453C60BF918767186539FD915B783C4F7C29A013DA911F90722E752D8FADF
-DBA87CE1688C862189DCE34CDB060FB7C98E4106230471DB0FC69342C612C13F
-25853367F5803845B2072AC9AB9BEA4561A9B83BA893A73B6B38AA358E8E5AE1
-D7C1F434E54C3852D68A3BD08FEA6BC21370C141512F71873D2DE495ACAF31CA
-8F94D88B44BE5F5C928D2D89652BAC1153F9813F8DCFCE8A295E325462F54CE6
-EFE6C730C317CCE3EFF2A54FE193195911CE7373EFC8BF3C6E00A000F54FF4DC
-94E1EFA27ACE95A6E67A40D63BB97131E21EA6BAA8FF9664B5D717A2746CE267
-3FE9E16E4F99110149B69A90450C308D469DDC2201BBC5EFB184F8CFAD7B5938
-43A825E80A35DBDF11F2160EDF77AE0EAD03E3CCEA232E9DD5696142547A95B8
-0E29BFFF4423E868170FBE9A6A5172F32D01A27F2925CF27864D8B6B0A0B0ACA
-396EDD8AEB5DB7783A81C6EE3F666FD8499F4C1B6B00C4E74BDD2D4E1A0E4C63
-70BAFEA2716A06EE030FFE753B5A61DA294EAA26F5A3D3F7928A0D711531D67F
-AB02F4CC75E959AC1508DBB369D3389EF94524CF8A28B82585CB31D08DDDD864
-E32EE295ACB868A7E98327EC31BC5AC1968CA83F50181E5839407E71C6709AEE
-CF87ABE25904774E406009D99D1D699A5240A7059AFD29E1C65BEC20766CCC35
-461693AED9B8933F7C49B873331B38C2D79E8834D1EB0BC98BE62663203FE556
-F62F2722010E27409CCE434721316C542DA6559D6034934941DCB4863A1608BF
-E6A1453A072D63593956C402FB88F6A725DC3DC1BF293DB990690CF10C205EE4
-655237FEF536B7E50B265FA0BAD862CFE169C0FC20617D4E8F2D6AC44FBE0CC4
-91DB7B97D9FA161522D4BCB26E9F5935BD289C1AE6FF0FDBCDCD5BEAC882F599
-0649B0CA544B6A11CD5B4F54A865CA1FC44547538F0F8E8BCCBE967ACA3F9EF4
-BE3F8EE127F91D8A21E77C6EE195F1C1B533E581AFB96BAF7E4F8C1D653692FD
-D1CCE4AEA7936ED61832EB3ADD42DC4048540E84A6BEAF3CC60320EB9978EBCD
-30D777C6AAA5B2070DA92A3174F8D08357C4272D3E3F2DFD06256C96B93C4159
-D2A85A2AF3AE136D0FF121A0481550EA1D4FA295F3C97BBEFB9AFAF392750483
-C7F6F3BD389EEB987341685C0B5E5B7166D445A39B0E5ACDFC9D439532C4189B
-38E60EA5DD78C234DAE0C4A09CE81A4791854B44A0BBDA49A1BC2D8841830569
-845484C8679D18008C7B005C21DC9E1C07E6D0D706F97A377363CAD62F6C7D5B
-41FF844474552DA1890427D8212910C168D3E2C3ED207BECC366BFFC70138F10
-5045CC71FB0B4F22FD94222A84B518A1CC27DD9ECF670367942F66F286FF3BEE
-7653EE17D950E818B966534A7237856C4D3FA8DAA5F9E4BD49BA505D1B62A123
-8819D938659F6EF9C95B7E8635E88DB4C551AF5C403C90CC1784E704F5A48547
-E788B0480C9AF7538821A643711657F27EE34E27EC499538795494FF6164C31E
-BAB6F5D3B94EA0713E743CA27C653E4B59EA44CE34BC94812F747E10D9186EEE
-19504D8F0FE8DBAAB72E564632A65897E3AF20459CDC0CBEF986CB9A246CDECD
-8EA2554B87F4B756BC31E38429F204279AF60EF12D9582E23DE56F6707A134E5
-FD30DEAC29DBDDD2982C68B1C72657E3E79F9A4B767B0EB99EE59B9F06332CF1
-19C60DCC428C3C02EAF49644541DC47BF07B4DB3245A0657DED22660250FF1A8
-1DB95E016E1F384BFAE0662FD0085F8E350BAE306E3C98BA8DFBF67FD4C8B51D
-83686448603B52941F65E724EBBE33E33EAE5F4FF552476B8A457FE6164F2B22
-6041571E6E7AB0A5DAB29089102E8D9EEEEC7DD724328AAE8092EEC4C9B287E3
-25627DF5DE5305B4B6E20B2A52FB2EBF8A5CAE725AB39B3A51A5850C975CAEC0
-047DBB95267154BF392094B346ECA72D44F98E1C52D963BB7108A332910AC443
-E1E045D423F4FAE2DF02729100AD51248DA805CDE316DC88EDFDC8446F2AA72F
-E63471B713A48CEF2453B39DEF846A6D1A3643E874CA9A0D637CBACABC8C00C0
-D6291898F8ABDF16D659EC77342E97FEE4ED63D91E78AF49F24E34CC10452A8F
-BEA0F4B319E4A46BD76E0768248E258117F8B21CA8B0192BA8EA6B65E35BD363
-05A5895CA6245C3F04DB520EDBCC85EB2740F12C22ABB9CEBB75045276D3EB09
-6284A1CDDFF8260DFF74A2CE0D2554D58E158C29CFC5476D601555059E78A4C0
-9F79557F33DB45F0D94F80AF962F6AAB65A168F7CF2204A06713A270FBAE1112
-4FE694BBD566A63C25BD78469629D6829695AEC70C34122B93E4AA7CA4C879B1
-2E03FAE5E5EDBA36FB0909E6B178E27CE4353D1595AF6141C040F8858E938C42
-EB001FA14B598BF69F5EED3BC71D5F1325142EB5093A1DDA7FA530E021338E0A
-6C505C730D51FE32F13ABF98F6DF645E206800860B89713889936FC1EE2F1B39
-20F969F7FCB6E475875B234640DBE7BFD86EA9DD30EDF8A3994622BB6CBE8F41
-8197096760A7B1B5D10C4BE5EA819326D196CA9D38ABDE0AF39E5F87D6CDC811
-A28A364C625138874EB95F5C30C7DA2B1A1FDAD77E9F8B0C5103D5835AC0BD44
-9FF8D366D0DADC5A5748DCB116C9A5518477309E2D43B5003B1D5CCA381804D7
-1AF5481DC5C0A3CE7B567221B2C36FC8B76C354BD2E657C9CB148E9CCF4BF0C9
-93F80370C6CF4DE9FF4788EC048BB119C7446EAA7FFD84664AAB97A6D40CD62D
-C6ADF39CE276E8AF03B5761B43798F94E533041EAB2D2A96FFBC7055BDD2174D
-258AA669144B82B311F95FF4C93F7E0B2F5096F3D8C36778B2607EA1760A4520
-E4857196212D2876C4CEE25F13996E0AF1A02540A929DCE5D98795C1736EEF0B
-18818E1C2E66D08926FBBD2E97F11413B68DA4F64CBFAA0B43F390AED30B9739
-7730957A5E38DBDCC931E573154F5A682B20FD0F6394D443852A1E36EBB50AFF
-D88DC6C3D47DA4E85F67CFF6C252B562E629F144C72F749C985B6A08928103D4
-CC6953FB922996ABE48E73EBA65521C5D73962526CF4864ABAB4FA6468EBE492
-07151A1CDFC73C02648343EA15837B3A4FF593425F8768C9FAD0EAF946FD18BC
-66672FC3A66205BE6624A0E413CE2748603423D8985913D70C72D1AF7A82CFD8
-4D61B6B5164E6CF74CAAB55A8BFC1261AAE1548E0F4C24AC9CB821D5AF73519E
-EA2341356FFF0ECB3E993CE9DADDD302C9BFEC9872C7CD287FB2CC30FED276CD
-D911A9A265D2712D9A0F79EC15BFBFC44C1BC5E7D38D81F149E2834D82FA9990
-B363BAC070D49FCE6A8EBF1808DD99C6DFE1FA2756278C2FD59C552764D33876
-A90FA5912BC089989D72C140D0442AF025C9A05A37E229E70491629116CE9A38
-546BB24C45D02BFA35B5755D12B5A3305921EF47BFFA4DECB75C075EE47EF767
-8F7F6D8C04513202177390646916AE29A3A24CECF846713D7F9BC04FF00758DD
-ACDE363C22D32D0C94D45E93C720A4604EE287263C71A321BBF2267F97F25E9A
-489BF6C44B0ADDCF0389612E6712A29ADDCED6579BA6AB7A0DBC2E8AF22D1588
-D44201F379F11FB5F45A7BB2AB8506551ED2CABD85CE925E0B48D9D92ADD9637
-99EB1A6492D08DCAFB141EE2210197B65AB9B94B6AF31ACC9FEC9C8F7B37CFFB
-58A804B106215001E27B7C6706066B0192ED57D8711FF843245A3A8021E3C8F2
-72337B6F3A4EF86788526EF0B3220215E7D5DD384F2737FFEA18CBF2A94FF79F
-07052113A86A983E151FC8465A600685B4D67FFDC7F826EE63606EFD47DCBAE6
-B7A9F5C9402660BDD8F9272FBA01BE54CE42CD1C5153587A933E0DD3BF4D54DE
-4057EE62A74A7273A927B3D26102E8F2E9E84750FDAFA69C70BD91D587FF4D8C
-FDF7E0524837E64CE6CF4FBBEAC12D846083C4A33207B3CB03D3AB7CB3A9BFD3
-EAA32C0F4C3ACEADCAF16D878F6CC728BE6C92246B9108BFEA821A36591EB068
-9882B591C4509D98ADAE845F84D555E6D39F6713EDE2869C80672C26EAE8EB43
-D2D46EB80E930F4A05F20CB6AF3E3C4AF92FCB85DA8A75F425C41CC985353F
+D9D66F633B846AB284BCF8B0411B772DE5CE3DD325E55798292D7BD972BD75FA
+0E079529AF9C82DF72F64195C9C210DCE34528F540DA1FFD7BEBB9B40787BA93
+51BBFB7CFC5F9152D1E5BB0AD8D016C6CFA4EB41B3C51D091C2D5440E67CFD71
+7C56816B03B901BF4A25A07175380E50A213F877C44778B3C5AADBCC86D6E551
+E6AF364B0BFCAAD22D8D558C5C81A7D425A1629DD5182206742D1D082A12F078
+0FD4F5F6D3129FCFFF1F4A912B0A7DEC8D33A57B5AE0328EF9D57ADDAC543273
+C01924195A181D03F5054A93B71E5065F8D92FE23794DDF2E6BABDA4215500A0
+42D1A3D0D02C0C98BB1D6ED0B7791274C38B038FC7921FF1FB8FAE7258C09259
+4B8E1BD9EDCEDE9ADAD9BD9598EEA9691589649A9A21539161E374075BEE3457
+689F308A4A7AC9F2FE4B301A6C36B0442FB92E3B002623493DC087800B5A0521
+0DB96A23175AC584DE166F59142779F26FEE9783E28DE49FC3A8D6583EE63FBA
+610DA773CA18ACE6F64A4867A1A7817120ABF9DE4D17782866E6CB6B65A9F6D8
+3667C8D3E61E5356E35343FDD4C6436DF73934470916CB5F0ECEA6BFF092E735
+C7C355B56189D1DD5715EC97E50145FFC17BB1497315A9585D713A7A6DFC7933
+995468EFD0F59E3C15865B87925A3F2930E20D5A35970E2C44F1629FA16E00EE
+EE21EFC50D49F5BC02300D0A7BB85E649CB4E2E828C8B1C5469463013E71D723
+2CB11BCBAC191AC751A2AF7FC228395CE9472DC1809052012AEC2CD66695DAF0
+4CA04234F0187F4116C93F59A7F1F8123DE87F111853B785A20CA8B49B3B0CEC
+B11AD345E1A11578D2EFEB0536D125237086CC8CD9F34A5137AC5DDFD8746014
+D74AAE8239B81ACF65F379CF2153B06A238A2D767F294CAE0D79228F0B7D45CE
+510AC9657A1776202FEF42F96D476E7DF407786AEA12DEA0013D3B4C5D0640F5
+BC5BB72C34066270399CE595827175B23B25072723BD24E07F6BCD9EF0175DEF
+93714BAA53960F81103CFB731CED4A267B53727BCA3C97B0BA5004055D4EF0EC
+F725658E53AC86E4061B489AD4154915C3981B3B703E1E2A8D390CCECCA99385
+45EBE35441B062D7D12DAB2B31569387187D74A4043FD71F1C6D352EAE0F6757
+4345FBFB6DB15CAE47CAC4BAE47AECAE5FF5EC19057DCEFA1B23F47364ABDF47
+088A7C6A2AE26B10459B6D41CB69182FD1472F326CE3A15B59255D1DE3B616D8
+9D1F12561038839781E657C896B8C58A32DF5AEA23732A0966D96C68C988ED7A
+09B7E2C8F9F3D0D56879764781566299A4EDD3588BDF70E3D924D25074F30988
+E35BDD827AE4D0B4A06F55A9976BF0DB3C0B1D09CD08E8CB168B50617691638C
+0EC1A791C228177D4FFB021EC3DF5082CA3487AD2EFC8DE9466A690ADDB4C52A
+FE2A6DB4CC275CD33D9136E735279FBB2008D59E667905EBB04326EC33C98B2C
+94744B7F540D86E90DED64572ECF1EAD3A58EC101642B245A9C7232DC8FB8741
+03F97883BB32FB955C22F878FA0FD114451A3B3859B0B5537AFAB73AEC7DB2BF
+409E1FB41D473714F6BEA73CB085139879FA31710E01915C2938C37BAD6D7D71
+45B897E00857D3931A489EAC7B42BCE4E65F73F67FE027CE482DC47598ABCB95
+39E98DA8ECA3E23F0799D5963ABA6E2984DEACBE7B46B40ADC6213E0F4D08971
+58F68C946C748E4B4217CBA2391BE2086C9758F4E32C9B6413E48D84D33A6E85
+84747029C0A9C9B92841D217A902BA8EB333999D62FDA9F82BFC8ED11F67988A
+0CAE42182E414A9766AFFF4B046A09D476F8E3F15A8C7829BEE982D8350BDF5F
+F215F2BBBF68D4B567BAB798B9604C79306C475926E9FEC0F07A99F43473C6FD
+B15AC29C3D07FEBAD1BAFF75AAF2FBE94F104F1DBF838044FAD94B661B06AECD
+D9AEBD02B60CA4546DD6B5B5C1A3833ED07845671CEFCA8955CE0DE5DB8FC93B
+3306683CBFB8E5B79A863DE78D455DE9D592043C2686F88A43140F8B9F3B553B
+7047420E93E753829F8D47AC7621CFE3626F271E31F0019CC02D0B57F67BB47D
+8CFB63E902EA3231C00EC66EEC0D30FE8394558BD3535C888C4CEFC6EB72E737
+712ADC6300162D5D79BEE0CA1F6E4127A0BC90656C01692F6D82C85550AFC97E
+C2693E379160FDB9636FA41AE9C75B7F6643B05971C6D67CE30971D590FC07B3
+E0B36B4D1C7F25110B5DA2130D574FA292B47322975A2BADBDB39AAE69BDDBDA
+A880F9AAB580117708C79204DFFDC08BF4A48919B5C22228845CE8C3109E93AC
+2479E523B8A1C12A6E541118F121DC6B4EAED83491A03192D5C3A2A45D1A2467
+757E7B377C635CF5CAE11A7CB49D49F3A1BB2286090B5F0E4F89869D1771D50C
+54B5C5E091E3048A2C194F0ED00DD64FB95BAC6FA9D61ECD093ED416DA3A4981
+DB07CFF17C4F55C62DF628EBFF06FAC3F3D3F91C30EBB34052BE1A08F5EDA4B9
+08977197950A282B84E21D43C64BE3AE4BCE22C70E7D392DE09D89B7F23351AD
+6AD37225C12BA79EC9951F5DA1E505DB26200190ADE0E549305B7530CB86EFD2
+A896F13A97E51754F70B609CB4511CEFC38BA579C071E9510A49982389980DC5
+336D6C4A2DB100DFEC4055C7AA9C55880F94FBEA9EB280BEF66CB8E1E38A359D
+E5AFB12B540CD599085ADDA7FC2C72E7C873015773FFEECA2C596B75BC39A3EB
+3C43FA2E53C0D7993042F3D652BCC483E48B7F6C94C3FF6D38E276086A6AE67A
+E5A571B9C72E0D7824E0BC2ADF51A393B9E334649F786EC1923C854382B89627
+1B9E701AE5A6C42E672B2C6A33C8BBCA8F69B9061E787D6B92183F20CF4C3903
+FF5417427B84798C82BE28D2C81624E3920CA61EC9EADB364B5A6E50E49A1A72
+A9A090A1FCD84814B8B2708AD787D2B5015DA1305874F58C5EB62F843685FCB6
+465FCA80176CAB2B2FE65E0A270BCE1E3DB97564BEDFAE5CA44395A8DF4505C0
+3E103CC3B914359B2870DA6CD30382EAE8949131CFE31E9E75C3E47A3834BB32
+CF183D4A8B9001710D0A11390C9DAD116196568591D38C2AF4ADD852F31494EF
+573462759A35415900360882739789D6B89ACEFA251C5ED90ED704DD7C3C80CA
+9F6CDED69537D201D520C99E69EEAD5D3C0EB84C166660B3C190166D93EDFE6D
+15BCB6DC5CDCA825E48D33845CC2FB15291AAB823F25CF8BB0A1EAED8BEC524D
+D9CA016027141FAC9D35B64FB9C224552F29EF6B32497254E319090E698FD8A5
+15491CDFE1B988C79A0E3B9D01E12FF084E9FA86CCAE02A3EE6F2917B61A2CC1
+64B8CAF309D1AB48A34227A7729DFF99CB6EC282E3FAEDD2673779AA7E4C1789
+D93FDC37FE95F087C5F88F53D30A2DA9C913BF205FC6BDD060A40184F4AAEB3C
+D080D63B89CA3DEFF310D09EF0A83F3914BD5B7932980ECE139EF0313C20B4C8
+576EE0FE3F28FAF4D3CE7CD0890BC824A85B8EF4636BDF1EF1BB519F93D36540
+ED09FAF93FD71992CA2CE2E83F5355162ECEB32AD218092F45D5A61A44E67135
+EF0453589CECDC6962D0E8DA7E7567603BAF50B2C8F1CA65EA5320984E7D69AC
+9A7D3D7F92565D79E8C9DD2D92CCA7DE9CD058545E9F98AA47904D70E1897099
+3C4C852B3BA131DDD348433C336BDF5FBDFB62120DDEAEB3255E3207B0C84A0A
+1ECF9EC869DB9BFA3693B03FCB27C5A5D3CDD62630DEDE91B4DD5B9784BF0BDD
+FC6EEC3FA7ACA9E15FAE47CDD9B7FCD2BF0EFA10716F08C0AF25FF67CB6F9598
+C607D2FCA452417D2C69DC808A9441A66492394C3450BD30632AE739EAD654BA
+4343459CA36B6D5B2C12C39495952F2EF93D82C73E33236785A79609E260C4E0
+CF3A3C950DE71DDC3939D42DB1CB1CA917CEAD56979A70F8F3B207C805319FA7
+3C000AE2B21D711A6D78C7BFB901334DC06F59EAB6D94B507734C27971F8458D
+D00193645AB92FB8FE163D5C51AE4F40BDB4F2C51691E76EE0636F071F37AAA9
+BA78BD12459CA499210EB0CE2F8BD317387797C33F5933AE7A6264DA06B4A6A6
+1188326147A16B205D1F965872DED7D8EDB3294FAD2FCDF0D423329E9CCF879D
+4E0B966D509F45527F7609DD09694D286F6FF7535EF8971B7DFBAF608A19D442
+C133207EB1152ABBD11C455D0977F66A9B73E51381D1CA4B66E87C0C7175A63D
+80C699A052F00C41DAEF42E7A40E07B1B14107AB0787E24E17C1462960E3C54C
+AE73BE4924464FB177EC62F116B2822842541543EFF7ABDDEE197D6BD8F8D4E6
+59175D8C5957550B70BE775AD52FFF6E7C00DA7CDC16E1DF7446BB5D8FD82647
+3E9F87D5EA365C82A2D991321ECB14A9E3AEADC5A56665DF7072D6DAE402BCB6
+14D92B17F9E063E4E9D8D239C91F5C7C0BCD2FBD936C9D4A0B57659420343B59
+B395BBD1AB5B6003F653699D57E7581F9813CC98D4F072FB78899D6DECC42D34
+F2787EDEA64058B46C4BFAA2BB96E9BE5CACE8D91E4C080ADFC0FA0D4A29C6B8
+54FEA9E11DBCF53D9CA40A21AE5076451EDAB3593E56B6D453DC8EAB8C78B588
+34D4C4F36861B5649BC1E9F3091E704BDA7613ED45C911DFECA74EEA05165191
+825F95A947CAF382FBAF01F3B8B041ACCDF39718D7DC5BA6CA12BB20EEE96439
+BF2E2628AA3BD2C91998E6247A690FCB0CC95F286F427345CC4F1115BA3A6E54
+4743355F2CC991CBDFF5725902C1F5A6DEFDC8638A26EA456C33C27773D6214F
+66536CD2E44FD253531732D5A8C44B336B1BB47B0477350EB8CF74889B93402E
+2356A9CAAFCA562315D8E0B3F42F08932CB87BA2499A875AFA08D11DA73B38AF
+F46D03B7F639A8D7BF88CF07FFF4E91716DCCE6E2CCAB60A64D5E40EFD8B336A
+1BFCC4CB04F49DE1FBDE7AA5B2092A6EDBD913D161A3271AB6411622D0E14416
+37F81E0102F5B0F2F9A2B27819E4BACD7C50E29D6291AE5B0973C657761545A6
+741729620EF2BF1046B3913399C10982EE5F4142CF461EA31042E432CC79A1A1
+39C607D22E45A6DEC008CB4BF6007CDE9DD5802B49A62C8E02A6D448B64177CC
+887AD71D171B99E7ABE2085B37D90B3BD8513995D9A57F53184DA474F6DB5E49
+B73E04CC214EA5398DF7D7541F94E623E8687B511640457A48A68E9D9D6584CD
+15B57CC044D8091C771D175F2EEDD411099BC8F7B4317DC503BB5E405AEEB526
+5E6E1B1F2705275D274E012A98F66075CEB90AFC648B964DDC0E9C4AE7B24CE1
+80B051022E5781A533A21DCFB97893847D685137EAD85BA708A7E118C72FA839
+A9E460B5D17365A0AF1F53A98319FB64A5819B087F554BC056C4BE44113A5404
+BEF759F890C1CA5E7AE156F4F8106FDB4F8DFCCC640976983EADB30976344048
+2A86D7B2AF4A01CA736B98D52ACE392AD4BECE7E61C710B08B66F01857CA460B
+B8376E257113E10F6DEDF14CE2A4E6A99ECBCD302C36CADB713D849EAE9EB598
+F29DC98531D793B79F83091F9B136809E006F34E423D528CC4309AFFB3EEB47B
+9A9DE4D5B25CE953345C326BCBE2B4912641780637783084D3D12693F8135483
+CBB0AC4EE0B5610D7CEB7DF205830BDB9BB404DC1B28FB0824CC187B26C19A91
+DA0025EC739BF3993700101D042DED86D67F5FB87912CFC51AA7DF53F2162D62
+6314A2CE13810D0B8D81F45771391A236422CFA0F35F7A0CDF14ACB2724AA57B
+7C2C28D53029B1146558610E0CFBBF72A85AB9BA308F846228F299F13F68E8F7
+D963B2EE9EF7D4C21690632B640BDDAD0556EFA4EFBF035F13377ABB5CBC280B
+9E0C12AACB153C93351E5BA95A7D149010E204950A59C7FC6581D9703468C1E9
+EFAE37E7E6ACB892B3F8D1248D9A4A72F642FECC5E0B25C15EEB921EDDE84D12
+0E524FE6133C4921FF4921242392C12FBE69744D53739F7E849C1B96C4020AB2
+1FF10DEA608F111749E2FBD8DBCB17F353DCB3075B4F4B8186963EFE95A76A10
+85AA5BB6DB4095291974221829A8E436680F4860E01C3843BE5BB3101D0869C0
+EFCE08D187BC04F58C7A450A59093680A0F09E8E3F12DF5223E7EAFEFA01978F
+D8354753A68022CC92C71F2CA732DADAA8A466D4AAE5999B0DC077715671F518
+E6277741F44AE798EE50DF44CCF71FCF8BC71F76374005FEBC4883C6EDA854B0
+88C0C2B476709AA809ECE41AE786DB1A32B3FBBCC14921673578D3514C8CA842
+E1FF90BE33F7B93ADF6BFB8B1AFBBD080783BEF056A6BFAEF676F7BF9F2DFCC8
+01D255A9F0391951210D60D4D4DCA93AA858B38C0D7B8FD740D5FC6F277C2A68
+54CC2DE1F40B6347201FCA2A0A91822708D820CE645C3E4E5A09FE25721AB33A
+97871ED448F38FC5A349D81F402B34461D840D5768BFC6849439AB6115104F78
+B87115B1DAE12542EA898F86ACE247709817850B067F537E6137196101D46DD2
+D842EA03EF4501E34074E8458E638ACC4EB349A7430AB035BEF2DD4CE00554F9
+18F9FE32A55AC1E7E50D64AAFDA278D77A7149C59DC5B1E3064A4B281A54C9CE
+A5EA94ABEAE4C6D5674C208ABC72563976487136AF2E21F835BEFD232D7F0D13
+1D19932367F51D5379934DA7F1635AC51EE5CEBFA63D4D32F018DEF13624EE62
+31DAE68A08DBE3B4FDAAFC75291C8C6CC7A657E3C7453C7D1461A36E88E633D5
+408253B673AD87A9FB2D0F56DF1305916D14D5DD62051E27BCE09CEE9A1F14AF
+1D7164BA5FB6E6EC8D38750F7E28BE330909F303ECDEE692E347DE13C8C2F82E
+29C8BE6EFD76546F362A12A1C2DC12389EA95ACB4DCBE95620F0C193EAD91B33
+BAAC5801AE827B9AB3FCE5D11D1D7854F8FA8A31670119CC0CA98628F801838B
+AAC7EF90AC5466BE69CE3E3CD9951A5EB9AC08014285422F6DA6F6E221BB30F8
+0042A11F2E4B765BB0D142AD52F4D85785EA71B2E1CE20728B9E9306CE93268D
+99B822A5AB5232EC7E26EE1160850AD3905864A01357F22722B6A54D4EBE58CE
+480EAD9FBF068EE965AC4B5FD2FA8CCB91ECFC6E90B9C49268CA0B0FDAD23ADC
+D5A74B41149BB08454054C451AD0DA4CCF8B60F2EBD061AA03A011D548B6B481
+FAB00AF9225BB5463F27FD67333FB51F8664536267E95CFAA0BE3BC1B8F889CB
+587A3A4FA2B45864F07E11372C9507A625C0030EF7030A0B4D931BCC48F6DD51
+A4D1F63FDC4B59C1CB18E6242E9F4B4B8AD9755B870FE60D640181FB7EB8120C
+C56F51DC8C47FCC6318C2145EDCBEFA7BC4253315BA67FD2B3D4AF6A9F3F229C
+AB75B592EADE15B1FB5FDBA1C0F786BD21A51506B7A2E42C2D086BA6F84D1B3D
+AC7531545F0B01346831FF36A52CAC1E390F99AEDC265B44B0FC9C581BBA6BE4
+48B723811EBCAEA5FEFAEA7E5B987F2C7B3E9A65D2D14A7B74F099401C57E367
+385352D0776D2A908F7A5A2E4D4160946C5591397877025C8C387CA413EFED56
+8B142E8341E349DB4DBA422A4FEE56A573972A0C66590175158E48850A9F7F38
+4B95726787B8F969FDBC97491CC81CABC976CD00A27D1DFCA7CF467A956C1C6C
+839817AEF8794B6151FAE9261119DD5DB787DC9D3B420FD325ED6599FACADE0C
+320D54C2E0D296537E22C1783670A9D9BECAEC63853EC2F05A990260DC189D63
+7CCC0BDDF2CF7585071ABAC14630666737041194D0777EA4292AE60BD7F7100E
+DB568C90F0D899EA006CA423CFFD6EC70A5D3D8AC43C747DBAD3B02219E47D8D
+DE030631F4678C357A58ECC52782B31B50CFD44EC33F41585E51B27E3997D33F
+461BEF897220AEC80007F13C5A1EE3A0430CA899047DF944831F8B010A7DE74A
+BFD26001472DC00CDC9F17CC435F61ADAD4E9AE062ED477FC621FDDF9242C449
+1BB3F77FDD1519A251B663A693D84B42BF0962F537757F38CE5C5D56B98AB10A
+3B70C8AE8D52DCAFCEC22E7B09D3C4EFDA1841C74CA975E4F8294F7BDC796500
+0ABE197ED3737A65F7BAE601C91DB3983EAE11DA3EA18ABBBA3650DC361C2E77
+EF9F97618B0C337A906FF39926D2B0B7883ABBA650816C4C6B34EEA836994EEA
+AFEDDE56E0099D0E09EB88EB093544B9BF4871200746A0409C475FC4232A38D8
+F3105B0FF44E4F132378DD12D9E796412FD0F9478322215E9F59E69396C35AC4
+097C4995B2C3BAB2DD04B1A7097DE16DFDD76465E79ADEEBA90489ADD0914EBA
+53E11A43ECB11D072C68D2131BE1C7C43CB9DD5FBA0A67BA43D6851AD4CD3BC7
+39AE2E22CCC183A56CEB71D4F9F578518E376426E42B6390426A8434B5A83E78
+77A5B9963BAECD5FA5521C2A29418764E4EC1A72462B04957F823E2817A7F8D0
+1512919889500024B1C42EC107E8B8533C0B314EE4E23313A4C1BDB009A20114
+2248276B7E4F8924750C8361FDB1FA328B434499FE5DF14B96C1F5D03F1F2702
+C77057AF82D3982C5EF8EA40D0B923249FD9810464A9EF6D1A99402DDF08120F
+FE77568235A193F5DAF57231E5095D4EF505A0FCD8E538D53C5E23E226B487CC
+568F94438B050A4ACB53340A4054B02E8F4D8BB42E72FFD1124BFA91C22F3F76
+3F3015809D6EA1CDBF7827ECF8893F550132A618BCA2B9CEC7A329460CF59E2E
+3F0E70D05F42D3E37130429C984D24F49529F647CFCB675C7CB79749E35DBA8E
+E8A0B56EE8FD852899BA52B789CF2A5D4F1C948FD5F5C57DC8475E65C83FC690
+28EDD11C5A7149D68B924EF92D73A70D37AFBB433D1563A034361A4415C1722B
+7599BA7ABFB5D0189D99B2C48024088699820761A73762B4BEA323121D893572
+DB414C845757270E9F21A5B2BBDEABEC09C5D030ACDBF5FD8FB7F9D62F13A93E
+AB6060F37CA8DFCFEFDF62CF0222FC4298247FF97BEFB153EB48A5654F570E17
+1E1DFD669AD81A441A98F39A41352DD1447E6B923B88395230C74CF703375B82
+8200F0186280DD3701067721E2DA2947A499A0974C5ED5C7BF3A226319D5E60E
+FC29B2484C062A0FC798C291CD5DF9CCDE6D548E2FD14853CBF563792BB38EA2
+29E2FF53230B91825B5D239571581541B8BC60EB5CC943808DE2E587CD56AED3
+BEC3DAA382464FA0DF0DCFC029DAB0DD3E3180ACFD8C81AC0484F0C096DCBA59
+430CF139C30F8E45F15CCDCBBE3F96907ECC42F00DA70994C7E3DA894A5E4367
+9131033E06F1AF4FE22FBBC261B490641D914837EC2715CB72E5DE97FDCAB119
+77C8401699DE82B21695A2BBA34DE7E23FA3E4506CA817F20331D0710D2C9B08
+F03F2C3322E96BFB5064EC80EF4DFEBD8367BB7EDA4344562CCD23259F7ACB48
+04A9AD253332216DEF772A5438B95FCE3393CCBD5CFD3564B70A6B785E3FB2B5
+A90A86D161B6F70006DC30254CFE76B55FEE58F2DEDC34C6DDCBF1A75674F657
+2214FB982FDB68CFA80DE2485479759CE3DC6A7E73ED2BC4F1E12B16DA41A1C5
+7BFC746498B0388AB63258419384F06BB89531E3CE7A320CC929BBA524CE6B78
+7E9523EAEDAE6E724E6172A76C8B844B721C4CB17E831211FCB830B1ADDDAF2B
+F101C2E3F973E3EBF963B70A5B403CEF7E3D869AE8461BA22A21944F954F0784
+911D337209C32F1ED5585735149343A8DF86749E395907A4DF47E3DD955632F4
+2119F02BC4688C047960306B85C79FA5011A0A947B3D998078763E196AFC24C3
+F4C5B764B1A90C2FC34808D92BB87AAA5328D35AFC5F6036147C906B7D1A3499
+65C100A777CE69E53BB32D79075918510681B6932CDD71EA32D2B8D624249414
+E5490FA6B660AB817752C9A70ABAD21AB8B1227D4C87532ECC8B504902FD53BE
+5A130CFFCCE869C76BDE799CB07BE6E8A364CC42FCF642314329FA02D641D85A
+20F2B7E13DEA7FF35CD9BA932B1ADC1BC32DD07EB048F4E87C200FC186942E89
+9CA9E82EFC02119549CBA415130B0D98A471C970EB1EF7A3E8B7B8242F7E81C8
+EF86B46A99759F12C62138634EF26C0D0942BAF165A40347CCCA16FC278F875A
+B0CC1515417283D9D093ACA02D40284BDF8604CF49C1BC391A14BF2FA0D2CBF0
+FC6C63080242FB76CD082CD5F8B74D44AA03208458D4E76D5979CEED233CED2A
+111A6D222DA6023A10721B41C8E3AAF75B687A8BFC5719E21101D005BB811172
+4621B2493D36C2E4834F7187895F9AA31F67C06EF7F4C77B220D4FB889F8ED08
+B29E10164249A7D5B7E5F0984DE91C1C5B28439EBD117BD235B700F0A962F781
+5D085D110C2E73A70FBF1116A3089843598D04568166C344A1F41758470B6ED7
+9184178DF09FEE308F775400B5573AADA47232243060D683C4E7850B70E7D798
+802BCF2038A79D9C02702EF781BEDD831FAB3615DAE92498B0618859A00CF942
+50187C26853134D471D76842C893C6D041566BC2A51858E41FC0E3DB1672B373
+8F565BAE23909602161C8FA3B0A8CFA5B5A525EB95E477627C24707B7BCEDDB0
+C8321822C491A5A86355857CB3BA92D4C5DC550FBCBB42A024479E71BC219C3F
+DE97CDDB5FC69007024B01BA460B522CDCF5D300293F8375127DCB1ABD94DBB5
+A08B40555BA14BFC5E23F8165BA7B45154D3FF754428AEE97A1CFF07DFE06AE2
+9C4D711D48AFDE0BC3A50FA23D09516EC4CBD986F746CACB8C95BA69DD20B1F2
+08841D940741C960DB0E48623644599B17A04E7F500B64569516376156449033
+2A8943AC82EBFE91990FCC2C99AEE28247B3D4DA7C5BF4DEAFDFA2CDD3D08BEC
+E4EAE749EC0F9A6A28850F201E3B2C79E920FBEA1A7F3CBE19F3F3B2BBA2009A
+729D26431A31A7A3405F9BAB02A9F451A3591AA29334FCE6E7DAEB68DC34690F
+E189556BD67A31FE42BAFB929CCB0B6ACC4DC1649B03AE11042803B9A21C879E
+DA2E857A305DD86DDFDF10BDD0B7FE06FCE80BF6728A9BF434AA27A1FA11A164
+D1584D7829EE7053D34AC69CE905871C3166C96740EBF60FE64730C11A63CC23
+4EE4318CEEFB38885A3011812172A1C0ED6CAEDF62CDA8CFF9D0081F4B32FBED
+6890FAC82FD2128DC38266AF0DE70FD90489229153F5D172B496B937D2BB8D65
+2A86CDDB601218AD60E1B68CE245ED1D0E58CA1936908A114FC8C7A1EC53E3C4
+64FCE5D1D94C899EC235DDE3748392BD878EBB8005B92F092F6470F435DBD0F6
+59FF0448F92A1D6612BC766242754CECD05FDD77F837B411DD4DAF18DE438B44
+833E0228C3349A29BDCA5EB57C81832D9703293BFDA307F8B3084AB5E82CAEBF
+DC71070017586387A94E218DF6DADDA303D892AC7198249FC769E64EB4010725
+5704E6FD548FFBBEB2AF71FD922B8205FF782BFEDC44161AF9C6C366B837CC10
+D2DAE81100064589CF1FD53847A0FE243383CC02D9C77E08FCF101D3C2C1C5AB
+3177425910BB80B7626B8BE707271BF4A40B4143DBFAF11F30606698652A866C
+AC430FA8C48362C122C3D3E1A6CD487D49ED49B14270869E8D9AB138DFCE62A4
+94DE6402E94C6923D5C7AB32B6C1C595ACB6B6C6D4637C0C33E5D278803A29C5
+1970489E0DD6220824B012752FC60AF3D0CAFBE07E0D918E62A723A9E71F504D
+A5284AE855EA175D724B976D989CC7BBFA69019BB3958B7D61978959C2B12719
+788FC7AAB8029B8895621F618DD67578AA066BBCC56649293791A1F07307A232
+58EF97F617517F20843F0B317C6BC6F3EF64AD70DD35E6B25AEE4345CE0D3DEB
+8DF2284BD0EE20D326FD65F759826D48148C4057DA66FE14CC14ED33F79B2F17
+69AC90656F331371D13685AC5090A8653D3B256C5FCAE10A86011E25FF042BED
+D1346BC6046B0FD5BF7B8C2100A5CCE4DCBF9E882191AEF91C300FFB3EF52F03
+EECE89C7D8B46A2C8F993C0A47B3494099403E9042EDC07CB6862531B2024899
+A378960B55D3FE5998290457BA27337104887CE83A7CCB5E243097A7A86EBB37
+600E7AB7655D3003A6E37AB275BDC82FB30F8E7AA1072AE291BC692A7B8C913E
+0FE58AE6C100BEE929F86495D735CD59D277728A4C1D8CDB025785F09D14DCFF
+AC86E32A4A582CC053B4A60519EA32000AC3F372739D6973CE3C2DAB2794D923
+AE6379DE839B195DB3A1EF5A7D1C40EC956F4928CC9C9BA7ABE78135DE7E8FE0
+0A243119A8A652396BEE0C84C2B0FD19FC42B64CBF9D22CB75663FD43AC3EF1C
+555611B1BA1D45F85D27FA3DF97F57C321AFA39566D5796BD7DA9D776214C53E
+A8ADB3C7478A2E779597D1F66C6E3B027E29C02A32CD02A6C8957ACFED6390F1
+11DB06ABFFF7AE18923D4E4EF99EF4E0F58245357A9FF20283BD0A045446CE2B
+BDD97A4856CE8898CFD1A69BC87A1D8B155A9E3C337AB860D4B9C518580AC24D
+C89557495A65113EEE53502254B60A6457C73EDE878025E25760D1BF4050755F
+7E73C95A73D7D83BCFC1EE63FFBED31D55149F98BBE60CB0075878C088C1C932
+B3EBAA3FA7A98E01BBB900BC12C83E90E2E51BBD8F2C1FAA5DCCDAD3E89368C0
+2441328E2963044B19A6014289D088C0434921CDAE975E9A547E41089F4B24A5
+93435B3698FBBD0D4765CAD1DB922F95AD9452C483B53BAF5091EB7C5627BA57
+0B89514654C04DF4552809C7C1EB967137FEA20FA1D92D261632AA66AC66C2BD
+4E6584871E1CC55B702F05A97389C51BDA4FB131E9BAAC3345792E0657089179
+909CB2EB0529A23BE5FD4AA804492AD5466AAC0B6534A63ABA1DA4EFEE1FC003
+160F7EBA31A4BC54C4E327E40DCC1112B17D53D4BC3887FAD8189B8AAC3658A5
+B44B1F10ADB62190E9A097637951B18DB403C20D93A65F602EF033D3EBAE895D
+02CC3E72176D6BFC26B7AE9024945BC787B07310628D702580C0622EE5B624CE
+45F40BD8C49CE83F7F807D586193961D3F2E802A57C299070B2D0F760BAC8879
+7D619D7356596434A7822983D64F157ADADEEA2DAC8DDC362504FE79EB29F3D3
+84354E9709F5968B0891E10C66EF859EA472E26F0DA704617370757C40FF2A61
+6005169BAF7B3F6AC6AD6F4CA4E92B666C5942946303D7E8F284619CFB0C23B3
+B2CE3368C46FA4EE95B893B3987FE902D0A553962D230730F00960E5EB7A4095
+8DB86FC8FC5E1B519A63A10EB05B239BD980614EBE9F47A630A3E9960D1B1B30
+ACF15F2B9BA83899455CB66EDE2804E4FCD5390BC6184AA466B65AF9C273C6CC
+4CC9EFDD9DA23C2B6EE6D41897D75622D13639B48A934B71D8B5727FD3716690
+9DB0B5CB21D990281E88930682FAC6C5F4E2F6B6275648A15CD4976BD7A2C3C9
+3088AFB5C74CC7B013013FC07C1B0F3855B346153B65C1DBDCCE354C46997443
+F0D88F3A566016F9DE8CC72E2533AB3D608C3879CA50A44987521E4AA87C7535
+70D52212A6E9B20188A29AC8EC5BBDC36E5905AE8A98D98BEDB04CBCB86803E3
+9C11481DC384480BA84D6739749755EEA5D13825E2A73CE60C4D9E895213DA3F
+D17614DE23A4F5BBB77CED37BC0EDD509FC982B6A384D354404888BF640EEE32
+011B752126CDC123D644359A67CA221B943FC9F9AD3C21C6A6C200E1116C4EA3
+6342DEB13641F27465E8BA07492CE3478456F4AD33F11396C683B645A9265A8F
+BFEA4B15045B6D086722C4DDCF6636F10B0C7AEF67DF5263BB3C3B0205BBBA6A
+3CBB91361E9D6DCA886DA4811976AEEBDF9F693EF2B9C92AEFF1150396924FA5
+6773EDDB28EDD632A6AB358D8D9481B681A4132718ADF8114A886D485BFE3B3D
+5E4D38E5993452235ACE90DE18F05D3D8BA1BADA1C91E115FB44D97F3950404F
+BF60DE067BEA3DE4107DD9C602A1F79DB07FE8B9578253DE009329954D4FDFAC
+03538C871E0E861A27010FA65520E2D64538E16207EB2E7480E120E7E951E687
+53B3A675C2B7A33C87F74C712C6A3F7AECAE4B93B854BBD64B290AD73F418E24
+ECC55323BC26742A57ADD9A875D54845CC152A0387796B2D4240D8FD233B7ADC
+24320EF503F00864E616875A4A78E5C6812E4C080E1A9ED6FA5BAD10CA19F60E
+75E9555D3DD97FA9D4FFFDD0A7F1976A5E6162C9274BCF9B54E70045C2DBCD45
+DB89D6132634D5A247EE4D86CAF91169A3828801D6C809BA93731FDB1DAA57FE
+32943D7D3777547C5667A36711BBD59519106F08EEA586F6AC76000B4B11F0ED
+AE10745950A200C4854DB95E19793DA183C0D65EA822A6E4B74D958C3C04C3BF
+535B18FAB3A2ED655122C1936B010C5C386C4B7B9F0BE1D3540898DADCEDC7EE
+15BD873F84D16075241F458C0CB77190A9AFDBCC06B8F9EF0826EB30ACAD19E7
+E6F677680A43F868621D5F159E7D4FA6D02298013A38D07B95215341D825E7D2
+6645DC4548F7638FA0E7C6623DB99DD3E5AFF3E98CE808EB2269D04F2974180C
+5C6835B702BCB803ECED3E509E11F549D99E104D0072FD0AE0E3368B8BAAE93F
+D7FE42F04D18D1334487A4E264FE55637FB75AEDC315E26FA1B786EB7DD8B92D
+FFD25EC6CC2987C62DFFA29E8AD556D63CB52C5AC6892B6E1FF5634AA04381BC
+1511469606DF08C618CF6458060F97F504AC0EA6313834D1A7CBF35EFFF4ED85
+5E0778A7C485E61DAE41A5962822016DB270FCBAA00F6AEAFA29A4EBAD761C68
+209ED228DF25730626741D50E19D1766BB895830397C8C1A72DB3BBA55F7DA7D
+4148C1D90B37EF217AC492993BA2CEF9F2842004547AE32AD8A8999B3077AFEF
+7672A0D505B382E6A41E9FA2D11C617A44D5AAC2042184266017C39B29540FC6
+08B70ADDC1BDC711390DCF933A70D9DAD03EDAF54F8C38C9EFFD8EAD1FF65D45
+11AD1CA1BE49E98BEF8BA210FDC8F146CA563F9A51AF0B1178502382A7482EDC
+EF1E313E3AD947109B58112FC644CF77308D2A8B377F5FB494E28B64E96B3F2D
+7DC3A2D3F8E95EADBE7C11F92CC922FE78E07900D69898F357910436C69B63DA
+2ECFCFC37CAE957B83C5B9E232E308B5090BB2A99C1A19ECA4763FFE3C9BB3F7
+E7A8A66023438A6D0A2320F3CABF171C0B1910141987305A01E08FCB9D07BACB
+54F5E23C26E05F97B2D8D4C29C3442EC472FC39C278AD0BE6DC19D91433BB8F2
+0745D9639D35B97D9FEFEFDB3AECA7C3765A5E88B59B40E00A0088440F1D6E0E
+01792EEBBECDE832E58A843D333DF394AE900C45C42C756D27DCC4B6CF6390C3
+8450BC057D44E6E83D6CC28F81E99363615CDB0AAA8DD56BD454491A6E9F6B77
+455CA95CF08A14C6326E78AA6FA39CA2053D332E1218056A952D1123C1C73A9F
+6021124CAB7F23CC38A67F3FF7AD39041A290926E85E75D9ECBD7C78C05D8E5E
+F004D7B65CA97608F35E17C91A8C3ABBF76237B4B171AC566A0B9C34F578D551
+1FB4317A794CE695A872463510543E212A8E61CBC6D762730E1FCBA388369494
+9AB9DAB46D412CD198968F40A60335DFE34F255581923EE62B5A8984E50B34F8
+AFF6606331FEECE433749E039AA1B74D4C6A27AA1F6730A86A7EBD67BD70C0C0
+0D3999DE78836667371883ACEBFD70A6CD51D417ABEC5B2324D863D8DFBA6918
+8ADBB879EE3823AF3DBD47E280814FA603F4B13AA966A7F7114BB0130E518715
+C442CB4AE0D51C1F8811B902D25E8B2515DD537E9292429711D725F5613182A3
+4AC989EE031908DD115C98349B9695F13969A43395604C2E19CA305FD1D60226
+9CDC9C26724DE6F6B4819262B8E8A1114F633933B8E18AF2ED71BBAF27277935
+41590F61F257066BC3F5A53A41E4AAC48C871C4CD6AD9FF3781B6038AE360DD7
+955A4818950DA028D308779858C29E6D010F28451A3676A3EBF13F4F82A25D3F
+C470BC73BCA4C342967F3F77A0B971E5AF9AC80D5595FCDE497B774902B89B80
+A58E83E55E40AE05E9BBC2C8BF914FAA83EE695EB109B713DB0A3FC67E102096
+A7719209AD328C46C3F913A6CB7C78A290749BDE09D0C5C7947C715F1359C493
+26A276EB34D9E0D1CCE459296FEC388078992BB794AEA66BB7C80743716FD0E9
+E1D47B891D95ABA42352651B832AF5D8777AD257FC26E614C9B1807EB829951A
+0153E30FF02B63ED75A314E206532D5A6F02F7D31EF1A4FDAF1DDB327DD36287
+EC0226F0823954EB663F735073878B115EF2B0B069543626DD0292BA4C59974A
+3710A723D9C00EEB118E98DA3A8934845C44C3F988B4553497248C3342122E2D
+A76A1FA97E5D1061D824999E0A67025E4BF678088B6B57B444C290DEE9D7C3AB
+B6848C14EF2FC6776A47BEE20CBFE61F667E9132E00EB96A581B154B437C8E2E
+9E16A414F99AB459D532768C7905A37AC6F0DFE133B7D43F58AA2D43C0B63486
+E769429461C0C574376291A00DC3E084CA171F9F546AD307098FE9E3AAD1DD61
+DADD7AAB91DD6C00DABF4E6BDDD8BDD51D687F2E1B7162301F2B80BFCDDFC3DD
+EC3AF5030F284E2B869C89A196762FE21725A7F614C16144E0891EC814DF7CF0
+5D4D3F66D56EEBAB3F8539D890B7D7C869648B58E6A51793C213A5D5D335E27E
+3C6B2105D07E8751915662AA0B8F51FBA97169A66CF2195E09125F056735520E
+6FC8AE0C5EBC2BF6380C1C6176B8C51F51772FB260C83C7CD256573AD0F36304
+710A857C900B2BE113C5316A1825771F94321863F2E703AE4412E73001758478
+94610FA250C774178992AE169A24F246F58632CFC2704CC92439AADC4ECDBE42
+A35B595E632698D4AB4A56A8AA56BA77F732643753E34F6A6372BADB7DC4B872
+3C336F6A425707F3A484CB46707D39C785419AA3B53A3346E1B51878AF2C93D6
+5F81B5D88FD4AD6B0250E16394EF95AECF15B3F00D4247DB499B13FE31B73010
+D2494176F67B8437C97401626DF51355C93C404461C4ABB7D92FFFC765E0BE89
+84A227B1FEA694D32FCFF15D3EACBF9D33C5AD275B6AB76D2B79A3E0D0F7EE94
+2046ACA982FD57F2415B6914733CA58DA9AD53B5169D973C3686FB1EE4CFB94B
+8099312D9758B884768E82043A6345CFC2D05AD742B2B50A932D310200EA0207
+FA6F0F78DF0F234C27C9A7D15491E6729C7665AF2BC732116EA2A2BD75A83596
+6E4381DDD537450C431BFDDF20A784EF02B1FB68D64EA9B4DD4EDBC17AC6C60C
+38D99AF68F29D5AE73FCEE7A36E77A46137953E9846F5B8F1E89A5A184AC3B66
+9906B2715E3CA27FBD9A51220FC6B0CB3D7A2A1617D3C6B1ED4C98CEF3941EB2
+508605E64D3ADA65B6260F0EDF3B483A7FD014F88E32BAAB33541FB16DE5FC99
+D77018CE78471A24DC42A3E0CA3979527D049887023D024A3002B37EAEC9AC04
+2D5F14E26213FE6047D0F4DDFB27972AF90D39BBD19417C0E7D682DE0F82900F
+C24B570F2EE7F2191FEF466CEB9846B1F387324D5B12B9795A13D8D454FF23DE
+9D9221B1DE88CF14649B6C9F1FEB572D2BB11470C5D4AAF80CDC4E07E72E4FE2
+658D8835158AD7B8AD06687BE521A647752838BBEFC0C9356A0CF1B73542B6CD
+1DD5606CB6A9F6263B799230463616775209C2B2B8EC69C0FB00BFF103053EEF
+D164BE0ADD2D7234F5B93D9C79DBACF53630479948CB151A4BA659D490BD6B1B
+FE49EBEB01949EA4EFD789DC7F584D2D0FF4C2307BD49844C0A09B1152699CFD
+00451F12C8041BC3569CDC068613BF42A3505E1E1EF7C15DCE095D4837A3B075
+A1B8E329A5A264BD10C3C78FEBF4FD5963C0443E1B36B718ABC713CD4980DA0C
+7E7B786EB989FF2DFD627A6132E360712F222988A4E6459225F4438F7464B01A
+9B7F2C6EE557F6BF291DDBCF5BB3381F8C5AFD3DCB67CB8D885C38CB5CE49EB3
+DA040612837DCE5DB1A56ACC3819EAE607D852BF64EC9BC75371A948541AF8EB
+DC5BC4583E013D578715034B7753D0BC6F55AB54C87B7FC771B1D0140341736E
+F99D7610E03ED6EECDD1046ADA13B865E118FB4322880C19BF933549CA1E31BB
+DE2DB4F370E015CF1DCBC99D792297189D7BDBE5EEDE7E30EE6650F33161D319
+6F6BD222E804A6507BA2ACA37284B25E455B0537185DAF8773008BD6EBD113BC
+7B27B47AB8E9CC8B6A21BD6FB58E3FA32C81CC3EFE9135234AAE897E191A2600
+A6AE60220207E885422BB1B48B2AF4D4CD98554CA3BD3BB720FDA9E8540A1FD0
+4B15777D2A23C60AE4E9A80B1A9A6273FEFEBB7AA57DD4931D88934A91490B06
+F5AEF60987734D8435BCB113E56FE6F3FB2D3A0C057DF82611163D91E032B44F
+3257510434B96168D0A1C91C12F669FAB09961CAA5759CB880F7CC8581FEB999
+8D73181255DCDE6852FBF100DB92B70EA8C7E2B82C5C2D1B069E0B126FB09845
+1F828A67AA70CD628BDEF776931920AA91A1861662B30367A8B75F7DB9585601
+F3BC666F1E422E884A49156FB8DEE987F064788373A9C98B9A01C5E8526B6120
+177D3BA99D17A99CFF561B8EA85AA74FB443F02AF95BADB1496CE49FAB52B3AB
+6284DDC0B6F8E286FF527B0653FC3BCE3A791536C6662EEF3F21023DCF65B05D
+3506D713EB4CAD909E57C9672D911DB320ACFCC0724F25E49DB713B979A9FE44
+329918977D00E41BDCB4A8BBC984FD743BAFA0AF1845BE4AE1D47428D124909D
+BE639284E91D71CF630078EA2FB7408731A88E28A9768961C52E2E3FA37F3FD1
+E34F85E189D822C9ECB971D9CD819CA028A138D741DFE1FE8373E3A7C3373270
+82AA6B286D19C1DD7D16D61326009A75E2F23A68A5ACBCD453E5516D9198C125
+3E3C172A730443463B36110E4B1CE6776077CF23700A36A4A434C641331626E4
+4591E792928383A7463F3264DA88C9A22140B0752EB0EFF7BE8B684131FF4F4C
+19377AE97D4EF96532FD72DBA9570CF8F52457CA48FB99ED65B8AE6E8AC2F982
+03B338CFD36CB681279E9094CA6F110BBD4D633629CFB0C5DA424D2003CBF6DF
+1965ADE0281C20C9C872A1B987BE11FF533F03EB9173739D68EA0E2FDE0C5BB2
+9428A037DAF9AC7560A3551FAD938B6BA40D5F8F12BE6960325EE234F255DFCB
+FD86DBAF8B027C2A34C8AA4F0D0EAA3CB020591A784B25BEF370C99AE34E2202
+6395AE62B5B71DD4A551BDFCBBFE8F7FA64CFF587EE5B03A8445BF66BF7DF203
+6ED5104402FB9B5560FDF3AD85617DFFB4C8D0FB27931073F3CA6C55E6E54E02
+82CB95E852170FAEC9D6E26B3B49152C3DBCD5BB22F5B212999D21D23CF371A6
+02E8AADD793585C7B8BED25D7E6FC8509848EF83DA8B0CEBACFA64D22BFB0772
+D5C50A431235520DE11BE4F280049613E70B53629E6D79305EC6333BC8485378
+25630D8BD49F12963C1EDA7FEECE66B6989C18598F9F1D0E1DF584F83303AF24
+29A47FA93BEB04D73913C112AF4F17BEC47D7A7658FC08346AFE4B2A7146BD61
+5DC0395C52A0920393DBCBFB31CAE13E8B0C1AD9BE8AFC3CA81066890BB79CAC
+C8B083ED7853EB74795371A2C72983CD9F35C771C0707D9140C22F7E9D148D8B
+D8FD578E160ADA08568B9ADB7075F426097A0C3BD72C557D7B8D808A1D24BA33
+06E970953C6A952AB7B9FA9DBD3AF93F39D953992396CB4A8CA699916FC666C1
+BF279C4ADF1615EE65BF22C3DC916B0F9F7B2CC54EBEBFC9E6F47290896130AE
+DE1B1B599CCC39208D4142D529A8BF191B99B1C49E60F969647EF6FF5304103C
+235F10E72AA15473AD31B7DFDCEBFEA40B73D98528B9BA34115E2D428AF84702
+BD9B3296285CABADD2038A505F67CBC6226A942561D5076803C8E57012BDC5D0
+143BA3A2F5C501AF422AEFB95116C5C40BFFACF1BF7F663D35551F8B270ADFA1
+7C29847D1FC9C91188A3E30D35A357033C213FD9C4AAFFDFCEE8E56D0F494570
+377825DB4DC78A2E4910321F7A99CA19D8F63B6AC5DB9DD3D25A6B7BD9B59A0E
+DB5F0A25DEC3BBC96B3D26FAB85CE144D7834A1CE02AC05898F11B8415A3CF25
+AC20EA39612951A5AA6246DD379656C8E42007491461F6C237C6A21A4633ABC7
+9096E45DCEFBFE5750F7D223C6D00DF0974B98FD99190E48E04D6AF706F3C9C2
+4CC83AC842856F85563B0D48DF0B04B2FD6F3FFDD891F608782ED50A2C3BE1B9
+2CBAA891ADDB4D65F2651F1DAD6C4A0A77B25F3B6867EAF356D30ADE19D406B6
+B96E61E18FA814F25A4EC9A7DB9A97E7062DCA91768C2C57FB065B001D966263
+21276E0CBB1ADB60360598561888946F39E0AAB25881B90D6B08698243086340
+5EEA694B7CCCC012165C4E32F2272314252B5C937BB54329C078C37E8BBEBD96
+82813CF7DFFDAB3F2DE684630B10BCD386D19E8E653E220F4403C5831EE96069
+94F23EAD50696129006B8CC3160DE8086C978E92886169CADEDDC53C6D0EB174
+DE2D95EE0AF5754A954E7806D202964D8E679CD7F93B8E5BBE02AB2417524888
+1AC98AE1FA2D369C70C0179F086FD3B2A759D6219B6BC48252F970893C5C1DE9
+5CCEA71B1A0F10BBECD9A63D30F6469E0AC94EFF99322190057B2FD5A1507AA3
+D242FF2C3DA7CA93452BD6C658831FEFA2A2D0282EF662C3B0B8220176860CB9
+4E2BA62E6E57048875EAF30B0093B782764422692D0067375843F96647735D41
+8C19C1ABC9D8B0BDF3D97F21C5900BA2D9E45A0979B21FE7CA2FD50319EBE343
+8A16E6DF19AE467FB3C19FDCBA1017211E259A3D8EC4714E38C8405C5B008626
+175E959124BDE96372905BB9555798DF405DE23830F3F26BAE7058034A0FA2FC
+0BE9640C22D88A8547FA1938DE72515AC0847A820BB6116C81FDC85DBCBB4BC7
+D81815E0260D9FA0E759375A9E4721CC2204F4CE00D0CA74E51871FA34875C68
+0B1E05DE1DCDDD21BF3AEF51482BBC19DC6E1AF3C2E3C915102FCA956BA86CFB
+9FA5F50BA977A472DDDB35E477ED5AEA56C005157C7AC7627E529F60BDDB7422
+BF4C061D7029C0F85DE7D266263FD23FA9EEEBE58ADA311BB0D36FF1FF0802B1
+299762D3930C34D69EE4CE17AAA7326835A4D553BB045C4A216A4AEA82AF36FD
+73944CB69AE75F9E79369F833EDF5930646C3BE057F457B21BC52206693E19F9
+A390AB95E0FCBE021308220B9DCFA3A2C43627F105464F41CA9ACBF51DD01816
+87595BFA78440BDE4C69A41DAC308F5D19720E1F01C2B3829160738FB498B2F9
+C52ED576618B3998576443454A07B7784FA0CCC0831461954C05C364D9B0B09F
+467043627E67D7FD66D583E92183A52C3EF8C0179E05661D41DF119605ED3202
+3B3E1C232040B475CDEA8E0AB92B881720A079F93014937C4BB2450C8A7A6182
+820CF7BFD92B71B2924972DF468BD9E120C8C3C96A3D38059DC95E2497BDF251
+639DF3BA5D34B763AB8E8716FD5A9B8E1AA0E1C445B5417B16B3A2DE03C1564B
+32A17598D24AEB4C51DCDD7D28BD0ECC39BCA860E5FA32FB8DA4FC960E488E52
+EC7A3B42A9701DA7CE09FE0DC6844E26960C6B6F1D6EB3C07C903866117B3FE9
+D51AD8C654048C70A94434B5A2C6FEA57D5071679FD41EBE6E6EB7C94FA9E49F
+13534142F2FFFC56632873F5EDD88190A727A57EAFA05E07EECFB8E901A978FF
+66B1B6026D59E36EE4D11B667161B01021B1697EAA4DAE1789C85E90276D6E80
+3AE9EF553659116F60CA3790D10BB50E21DFF508E8C13AE909A031F320ED684A
+4757DE36C67EF5A61A9382DDE8026F044EE45D9299BE637CE9F3FF1DF2612E94
+F1AA8C6C9CF3E7A7DD54EA60DAC781FDFC79FA23A549F9D045B7D33815AD1862
+B2443B02B7017DC77784967E9535452F3466796A1A79AFAEF033087852EEED3B
+F73B887659C3B5FCEFD0B3C6CBE54FDC4997B52331FD58FAB9A3636DA029B88A
+85B74A691D803AA3A9C24032582F11E3EE8369B5F3B5E9D121896A29F2E6C65E
+48692E4DAD0296BE653A632609DF2C7536DBCDCEBA1F3EA21D6E4848780E53C3
+C850611024B2F2CE430F725091F4D94262A1963B6434A3B7F7DD2D48725A9530
+D1588A863EF323BBB5A628472E87FDAC1F10EEEDF42334AD39F659AB1D3C174D
+E9CF07772CC74C112916CCE5E02EA1F813DD7BA5A2B8F5EE63529C4509900B2F
+410B7B16E6119ADF83659EC1A742688C1A1699682B90C518B3DE85479C890E29
+A99E798A4BB845A982169F7301CF3C4BBF583E6D79AD2E49CEAEC0E7D2311FA7
+5756E69122F4CD6AF69057EB6D76BFF0C19343048B230A20361E33297D683AE1
+45D1687D84ABD5C8BB836048B9B5E650ABBE68E66EF27C89AE01DE9BF0E1A0EF
+C5DAD166222EAA95986D0A31AD4FFB210D8DB5582D92AB2085FB6207313E3BD0
+0B8D05218DCD8124F8E9AEE538C455AC0F3A121C53A27B963680D625AF421DFF
+718D0682B8FC8994D10F80EE7CFEF3C7A22A2622E8B685132DB7AD8B8EB74891
+A10B4DCEAE8EE380EDAA8F13931F9D3DCE875161CF52277757980ABFE42A15A2
+9427A355A1D0E43D51E5259C1236925DC69CC205D8C4286E7579F990A29F6A98
+C0148F081FEE5FEBA4CE1267AE67C854987B9B70A41F730768967A58046D80F4
+9FC01AC85AF924C87CF6A97D017E382E2C888BB1C80138263B8E0DA15F82E169
+7D23A24302AAB8CADEECA545700D979261D1F7F1142F2C0CC2F3390F58123B88
+77DCF0DAC085BAF095BD3E158572FDD033E44E067F0D0447071AA62B1B4FF680
+B841E0C19E5443970C937F80966046D7A00A5DD1AF38C18D95AE7732AB983511
+30622485D8DFE310AA3613DB5F351C9D1DBA6FCD686E38148967004A5EBCAA78
+9B6B31B3244FAA863022D2762D43BDED9A8CFE51DC9A8F545441E3A478F0933E
+B187A85A04E4857AC883BAC5F42A890C93D38C495F783CAF9780B6D2BF160363
+2EC4DAEB9039526E575A4183F9C02B56785C6AD690B48110030507634EA65649
+EBC356154C92197E63103FBB8E22D39003AE100B70A920CCF051D95BFA98A5FD
+912B94289DDCB7C05C6ED85A75E27FD5F74F86486E23D2988B6DB358F41471AE
+FAE134BF06EA5B5D1831D9D68FA9791B72D3A2E54D1DE5C2C6A8DA1DBF18C280
+C6073F817125B132928E2EFBA35BCFBE39C1B88FFD602D2D216EF0473CAE549D
+C6D0A2E6E82E68404259516F3591FD433517D9C9FCEFBC9A5CF7B5B27F5AB430
+AB18435EC8BB9AC2843258FB72004AF4CF43228AAA717CFCE311ED7A785D1D19
+41A7D56339F7D5A6DCBD8C2473738D9EE6F0AED82C56E7CC01CC7812ECE57061
+43A65CF7C781FE0994ABAD729D54FF48C029DE1F8473FE2A77EEA482C87C0D31
+E3D8B7C0B58C7B93A535B401725657E2B81F602C0EC9D5E38C1AF15718346664
+0E95B89D0987153BEF53185D351D2AB2EBB8F88B44580A7C8D9114A1CB01D29A
+788656E462955BEB11A3CC309E5349B033F33B0213C10166D67A24C877199DA0
+76F0D03ECDB6EED7C23062FAD575FB03D34ECAA6CE3F3EF5A4A4F44B94955424
+60598749E3D93B9FF2260A1EED71D6FE5D321F658DB5155130BC84C8AF3CE339
+8F16E09681886C2A8456B547144B3E52571AC2E8E30E6CE628C48BE2D08E67C6
+D2A79325EF9C6C4B9FBC621FDDCD1A9D62A618E924345ACF81154B583589DB80
+6F572ED120A7067A893DFFFD64DBC2D7859B9329E417C0713A5FB0C19B10DE49
+864629DAB75E73C3E82198B00E9F40AA40E51D8D64AB90C14E94F51298C8F20E
+FAEE0DB31426337836E77546A68D0C3BE4AE7E54A693E6645F4C86F0199BDF70
+C9960A3CF831EF539CECE72B563E7DAA9423BC14BCB069F045D906DE885D7425
+726DA4C547B99590E71B83335247A025A7D3DF1F6C37A9B330A62E8E09462C89
+EBAC587566817177EFC52550D10043D933196549C0FE765F2581E74ACC018898
+27561470E34FBE6D2A2685E6520A4414D7EE1E8A038E082CD20FDB77811766FA
+D06186B6AF02B84B0FE903B99ABF0C8C595D951458
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -1599,70 +2607,239 @@ D2D46EB80E930F4A05F20CB6AF3E3C4AF92FCB85DA8A75F425C41CC985353F
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
+{restore}if
%%EndFont
%%BeginFont: CMSS10
-%!PS-AdobeFont-1.1: CMSS10 1.0
-%%CreationDate: 1991 Aug 20 17:33:34
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+%!PS-AdobeFont-1.0: CMSS10 003.002
+%%Title: CMSS10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMSS10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMSS10 known{/CMSS10 findfont dup/UniqueID known{dup
+/UniqueID get 5000803 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMSS10 def
+/FontBBox {-61 -250 999 759 }readonly def
+/UniqueID 5000803 def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMSS10.) readonly def
/FullName (CMSS10) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle 0 def
/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
end readonly def
-/FontName /CMSS10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 40 /parenleft put
dup 41 /parenright put
readonly def
-/FontBBox{-61 -250 999 759}readonly def
currentdict end
currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
-016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
-9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
-D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
-469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
-2BDBF16FBC7512FAA308A093FE5CF7158F1163BDCEEA888D07B439DBD4E8B4C9
-D198C03874B5E6F8FBF4922065A92BC3E66D05DE53971CB1424510E892442858
-D69CE1F76E4DA76C87C763A4B2FE36321E54B1328C9155B8ED6361855A151723
-3386AEA3D042B8D89C8C0E9A33E5DF3B466F7BB8C2C8A4ED4CDAFF55FC6D3EE6
-0AF2CEBFC1AC3A6E6692F8BB81F82D86BAE85016AD62FCB05467082C2E5AD348
-44D1439C2B59F65590E57CA0DE481A7A34E79931B1513C4C30156170409A4BB8
-46D412D1DAF88AD30722F12DBCA1CCC6B4BCC28D06B0D29149DDEC520C8FBA13
-6B82E2E1790F00B216282FF122EF0D47B70A1B29514DDF7C0435ED238C14BDF5
-6DA243117FBEF7398F97EB95597707ED63C6797EBA1B46EA19ABB1DABDA171B3
-16CD500F5D64CBFBE4F9CBC3E66A34427D3C4D0C432710289381F9BFD91B4FF4
-1E3A896C3EEA2F3105C218877D6C0C6B763760FA364D00065E1CAE9DCB5676ED
-286A9ED0D1C946DCA6A2A670EE0936FB4706CC62E234CFEED34AA615C48D2872
-A087F30990C85E64BA68F3D5C117123467DB411C9F2D6F6858CC70C1E352C477
-713097321B4C4FD4C5CDE305415F998E7245908EEDE6E056A736EA77BD8C639C
-3A79FFD0B74B3D28F0494A115F2841CF8A8827AB5608F96FD8998A5F40FB3DFE
-3AA0C7696DE4E1D18DC0D6E84B943175FC38FFC42A9C0CBB13A908978C98BFE5
-034F88480F32B9DEB2FD228FF6CB0B89B045AB02020C82E3F5716DC640613185
-9F597CE262729BC52132F43922B9E28BB71A30AC8709634561B22D13C4FAFE0A
-12C4451969226B220038AD8DDA990A4E2CAD53DBEAB698898BBD3046234EB4EA
-901287E71CB41296C431383AB85F18882F65BE36923F6C0FD6FADAC5B42FDB68
-64C06E047434FA7A659EF7F3D1AA8E547939FBF9C2ED7AC829F03CA59AFFBFA5
-A7AD2E0FC7BBE619961AE1785D09444B333993199FFED007382B54DDAEBE21E0
-1E75E0AB6D309DBE53BC7BB9F95D342F51798574D70B95021FA40163A86BE6C9
-342536A5730837C522D5314B1289D9B7E4EDD108BE7F35A20AB2A16608F6F007
-6DDD702A5A9BA1325CE2C1CD020DF677872135CF04F4E4F1E9AA6B494E2BC22F
-107C331A7E80718B030A1103804D144802E3B03EF7CB083BCCDEAC7B43F1B4F5
-C1BF6016741B741CF7E12B4BF95221A72CC9F4657264771AA69C73DA1DA29102
-65D01A0E61F3024E672AFCCBE13CD0B7F54AE1418B72E357A0BABB4D03073B1D
-F4EB54F899AD4A41A9F94DC200880A0DB99D67235A2451B25F710C29A882865B
-A922E56E9FC16756014FA5CBDB1C32750BD6835A70EB715CEA19A8872041905E
-8C660BACDCA26C8247D6B3C10FA5DC240E433E479AC6AFCF57CF96697FF46BE6
-44748E
+D9D66F633B846AB284BCF8B0411B772DE5CD06DFE1BE899059C588357426D7A0
+7B684C079A47D271426064AD18CB9750D8A986D1D67C1B2AEEF8CE785CC19C81
+DE96489F740045C5E342F02DA1C9F9F3C167651E646F1A67CF379789E311EF91
+511D0F605B045B279357D6FC8537C233E7AEE6A4FDBE73E75A39EB206D20A6F6
+1021961B748D419EBEEB028B592124E174CA595C108E12725B9875544955CFFD
+028B698EF742BC8C19F979E35B8E99CADDDDC89CC6C59733F2A24BC3AF36AD86
+1319147A4A219ECB92D0D9F6228B51A97C295470093CA270C4488BB4EB864B48
+63941B9739638D2E6F3CC778582B46AEB4E466D89D1C211225274356A4BC90F3
+274C6AA56E200249B7D0949A3FD4185DCB3E5286910EFD7CA72D5D8E8052C96F
+388D12094B87D3705CE64459558CF024667C0FE96CBB32B0BC9E51037D7BD62B
+E4B05FF99384E71D78441A79B0B1DBA1CAE02434A9FAE46596FB86B873B1670D
+AE0BAF516445A0DDC127F8FF3ADA0B10EC30A9CC1F7E9248828B5E8AB46C3FE4
+154B80A54128A08777F5F9B8C519C7E3B632B3476F007FA156E9F39FBE57638B
+4214CD2BA79BA9DDA0F4C073AED814ABCCC2F7906C57A872C00E67FF03AC1200
+29DAB92376422FA21C67CA98BCEB8C431CA2D3EDDC16972F84BF6DB2F705BAB5
+CAB39C82D139FB1304B9E7BF1F6FF447596081D5690B1519E468D6BE49C329C5
+C9C809023EDEB9DCE4A6D52A8049E0CC134E8B41BFC6558CFCAD3D9D2773EA16
+131567AE6231B3235869767A1E7C1FA6C8D6FC1B276CBB1CAD14D376188C9682
+302836A9290E587D4225EB8BB1DBA2C4580A81FACFDA197174FE948CE757C575
+F23070FD84DE121955D7D9307BF986C5E739FFFB6CB76822C341FBD9FC2E3378
+AC9332B40C07D5B8745D74E30F1D719EAFAEDBF5FBC40D0546F69A66072D8A49
+28D2CC2E76B9B1EFD191E0BC7510C2C8761BD92EFCFDAC263342A01398A56D18
+121A591FF5CD4AD8B25699A7897E60BA940336BC17B9EC9F97C2464D031F958A
+A3548D0C97C50C580B6EEFD0FE8330EE2BB0D2E7FD1DAE33448953544A4B1C5D
+8EB57798D0ED4B22909FEA78ECDBC4D8A124DA05B9999242D68681017285A0C7
+69041C1F79442279FBE328733EA0A6694D68BA89739FDB9297BE0CF1808C07F7
+BBF6F1538DFE084EC8C0EC24D883F6CC08A51DFEA23EE920F44BA55FFF58E960
+C7BEE551FCD2D5814DE7E3F835608073C2CB80EC57100CFD484C837881674E92
+B217F4D11165427DACCC29C129005874C05CDE5FBB2D912368EA2B98C45AEDD8
+8A0D2493F60EF36809C8C6EBBC7856F6656E8D398BCB29DAACD4F7D4300A0B01
+161CEF51195D2C58DDFBCAFC1C03F49304ADF02789889826F1E20BCC14827565
+F2A45CA57DCC61B52E33638A0C6C5A59B145E82B82571DF1806EC40FC0E8634E
+A34A791B1325571E19F3AC2EF6FE68A14B0ABEF7EBE0EDA3942E85E5AE967A14
+0C5AEBFF2A36DCA8866700CB7082D2ABE470864C44AEE1F6D180D511304C8674
+D02FAB12A7079ABF96E1CA3CDF9D75532123E87663B1D524265AEF63EB5C2169
+B67A651A101E1C7EDB008D3DB06DB1FC1A81B41B291D6C4A58FB57989FFCA434
+DA84B3914D1D80B17AA3A55A70BBC06C49DD5F7DDD03FEB0055088558FA192A5
+261477899857CF598DB740E82D035E84CF17B33048CFED2DCBEBC2B75CCAEBEA
+B6C5AA1C6978FBB36ED98D9047028360ED430A0AA69AC85A8F83825EA649E1B2
+64B260197B06A24A1DD969CEEEE136FB046D713D0630B246BD41CA285F076038
+F7F8431913BB9A3E70311844D4C22AA446E3CA217A9DFD75A898997130269B29
+AD4AB7D9662856E677FB2DAED7078639CF31C6E6637C74DE2B5D0ACB88BD61F3
+CE3C5D56D3D4B3EC1ACB33EACBE05E53A133EBFE93CE6A0CBC8F24BDC5B31BBF
+5B3E55D6B40B1CED389076014667E28BBBD60145A06BDECEE8011A2C6F06D091
+73767A8045CEF2A110B614149FEE783A2351FB2938A9F73CA406538EAD82ACC5
+A3DFD3DE00221E1B4EA977AF8C89661357FF7D2F1FCEAD6CFC9D6AD81F95100D
+EA1F328249AD84AE849220E6593D45015B4D7C9527F3063E9F6DB6E572092A1F
+1F460696227D5F0FA5A5484B1F0D8B4A35066451663BE448D924DBBFD388B6D6
+D7CFC87C9E75B7CF79A4C9207E29E0BAAAD7FDF529B860F7731EA978E335334C
+13CB2F0A4250F5957B44CAA0674AE8356F586A24FD137103973B9A1FC31090C7
+C84DC5D380404BCDF3FE20C6F74FFDD8BD1DE845E99DC6FE09931F003834ECC8
+08C5D962070B6C44F901A787CCEF048A2C584A2285506B4D4E82B1BF130E2220
+B6C8B3240A4CBBCE16AD3676B23A50B75F82CD88D1B8F21D30A12716426112B3
+23DFDE5A348DC9DCCCE5BB5DB5433A5AC125DE1229FFAAE0D8319B2929986EEA
+56A93BA1FBDBE617F30852A3DC8C712DF674169C6D656F75E252187A085B2788
+2467CC4DB08D48EE6A98C61BC55E6EFB1938FAA718802B7587B94C8F1477E9BB
+DCF6E02B5E67FE3AD9D87C321CD9BC0CCD36B9C4BC601E6BD552EAB8E1C940CE
+3A22F3C2501C3C939CB4F17CE97566F0A04602D2A22A05CECDF4A49CAFD6332D
+5870E1F31AAA5F86867F71610CDB83E473B9D20BA00D8986D7148E0EED03865D
+9622864B52B09D12E0C5FCDD023D29D5AB1CACFA92B6FC14FC84E95F407861D5
+2BEE3301AF399FD7ED04DFDE6679A345A282E7FC08D47E3FC8969D3B00ACD7B7
+F8769647D6D4F4106340EF739583374D023C2702C48FAC1B643B5897D2D7DBCB
+73257712A0FDEEEB98A021D218CDDEBBA34687E23C4828D7F96D1ADDFAED7EA5
+B279322E6D55FB486AD8F3A8E7B2C67915564FE56F0C9277A06B29C47FB7D007
+11AFDDB3FC1B173B4E449CC6B198041CCA0624D81B4840FE5B63BE72157AC6E7
+03E5E95D2E2CE2E40BCE8044A8F2AA45F855484A891B9F0F8F70188AC66A8DEE
+F4D656CBE216E6D9AC33BA8DD0685D480833E1226784469A221D9FA3CA600AC7
+5574B5226649A9C48CCB43339942FC9010F86BAA2D181AEB487A92A96BF2EDF1
+60F3B93FDFF4137A25A8AEC5ADF8613019CDB103DC4367EF3D8AEB4FED0E6BF7
+622AE0CD3CAA0321D26CA4280CFB60D08D9560AB8AA5698231171B881BE9A27F
+BDCF3162134126212C523738D221AA05E31CEE73D9D40F73C450B6AE2C1E70D5
+C37162BDF55943069923A290A6C720042566E55A21CD81C460818883AB016C16
+8FCCD1255A66977DC1C110261D7642199D466DD3D2493A2D47694F842241C474
+1752B00DA03E69CD16A8A14BEB8A431A315D19A39BA978E46EB1189089FEF647
+F9DBB58AAE6B3FBD475E4DCAD241A051DD100ABE81D40ADF18A4C50F53BF749F
+D6F7C8E02A5665B4AD18DDAE79096DD447F8BD32C68F9F97F05E0071D9E9AFEE
+257B96D48ABD9920418E17C8F027E9E975E4A08DFB1988E7104CBBC1CAF356EA
+7750AA7110BE116AF1BA69A94776E4356573B38472A8A1292C63701543B0F315
+611A0E0595B30424A1137478BA6F990AC7C3AB4DB69E75C222B617F373C521D4
+246E954E9857AF59D1E6C36412B643733CF5E1C90389EF0E5E0DA55D3AD12E97
+E7630C315F72A03CAF22E0ACE3AAAFC1D496CF4E5ABC49C2DD5E264BE7EB2698
+AFF36089B5DD2C53DB1C1FCFBE1E89D41A95DDD278CEB29DC85FD1DB8B83CAB1
+EB37C531E9BB8466ED6B8B60258D3C355626CDA43A32834DC89DFB11E5FC6D68
+0F78CFA871113DB81A1690250A6F842ADA15734CB6DF7C6ACED6D8D586BC4E1A
+94EF3052FB0F8B9454390B882CBB6E135AF1F9C777AC362C2A758C3A98117120
+73C6E2FAFB580716D4B2889A4331CC658AAE996245685B973D9C184541385680
+AEC2956107DAB00230FB39BE98D3CA898D917E5F2088F26CBA4F8B5B115B6443
+8753331233B10852702FC26D9DD4C990C13CE4D0DCEA23D62A826A4B4FD16070
+5F3638C0A50A3373A33FCAA6F3644975AFD0560EE5F2D1CDF08820373468E4FE
+6679A229D6955CFDF7ACAA92A87E6D8571AD18CF59F84F88A674B2946FF20A28
+B9798EAA22442415EB46B9498DDC0F4BA6ADD347AB43E9293CAABEAE80127378
+129D5DC69F6DFFBDAFA5D65580239E8EDF6833D0DE6DF75F0FD090A83CE0974B
+AC947BABBD1B1C7194DDAEA37B0CAB477ABF9433FCE0243C8D308409427D1DCB
+8EE4FC36C7E5CEE104904B520B3F6E677A5B92F694BDBC2C799991667E0EC14C
+B95EAE7DE1854BF4542F05B4AF401CF67FC3E46EA5A0DC362F3CF177B1796DA6
+753AA803E724D1721DDD1BCB0C12CE0859E172D2A370C3697286F80D9E138AFD
+A0EE016805F847BD30D11D8B891E54C77AB51A7CABF76BB14B06153C7F811FE4
+93FC4B7CF161051A458EDF767DF94F487DB939A2740B4242BFEE234F75084DDE
+207E84533004B933D43C712F0C71DA4A00FFD6D721EBC93AFDC4200E3B8DE433
+3ED3E1DB799BAA27548ADC853AFF5D9D6BD92D644E3CF394789C99D9DC054A26
+7770AF5DC5BD6563929AE11BE341F036584DD573D3F43D9D975201EF77BEEF80
+D1EEDD1D4AD5D4D4DAF6D5B9D4C1736CB111D6FC74C236779C0ADA430323A825
+09EA8D0CB1772220AF28B93098BDB36913159208D1B2D7ED45808BF7B686419C
+5C0E3DAB5BC9830FDF3B494D624EE8068BF6F5212BD69EF466B9A213047BD105
+B848F056DC544A8CE66C546B1A4DCB4BA29CF0EB4DCD9C2452F22172AFF33B29
+E97E12D8F0D312B03BD9E5377BF0C81D884F1E79DB66E8144F106DFD2579AD26
+C693C5B68F3AC46BF0D6281032D4D4BAEB2243151AB1AC0BDA2ACDDD4D590C90
+F29B335DF8F57DC593DCC081FB56924028E3161AC4865B49D1B0F63F5EE866D9
+7A71171C09B09A44B0E32F03494D9EA63F3C89F5E772BE25A6557F119299E989
+99BA041694ED805AA4F3BBDF00D88171C9D43A9085A287A36A1F0F9386F2A98A
+96815CA51F06E1CDF20B757983C5FDF4003F5438232159F325C6335B734FD982
+1423BA77D0EFD044381AFBD0704E3DE95D23A70E2428E9AA355A9A8A25C6C74B
+48488C14DEC93A766E112D74C83576ED355F17A809E8D3F9C65C4E3E14EF484F
+4658DFB57597E2A4461D8044E95844391C1275D63F282B37888C842A5151937A
+45007547263D70195ACC018A373D498B88C5A028BC66ED96A343EEE74D61EEB3
+D9472B6A549CEB8699F4B35154A0E2ED22867E4F9E4A76311EB2C9F9078FBA81
+838EA49C2966BA64C165434DA3093206B70186BE80600B891D9979F730FDC794
+5DD6D8B2090CC67A634B719F441092A10C447A86ADB78DAE45823ECED5FCEADA
+ECA52E363D913D9EFC0ED98A5A1F823DDA3350EE27F09C14E4C7298CC0FB6200
+DEBC640C68C82D70AFB7A7BA668F1D7948686206884736CD03D9F6E6CF9702BF
+E3C932CEF3CE07FBBFCEC0476EA6E8D5D4C5C6450C8FB236B89BB82D51886240
+5BA7462F50A88F69228DCBDF26B7250E90B3DF8E94ACA1CADD9EFB5C73EF9DD5
+46052314D445CC92512BA231F79A09A2F0D91976B160B8C9BA055DA4AAC1300D
+491193EC66A6DE12BE01EEEDBC3A2291DA1F27AB76596A236B75E19FC5F1FB6A
+DA1AD835CA08B6CD03B97B4CA1BFCBDD2500BB09F1A1B0438E4A759370EFA318
+F062BA9F3D352572CE232E6FBADDAA5363807D0DC5320B807FE5485C8CB09B6B
+0BED9F5B1300FF370252DEBAC9DB25CE2EC494E8EEA45FC6604B3C104E81B287
+EDD49F3D7430EC9176A16B4FCEC5DF68DCC11ADF90BD5337E2E4B59BEFAC8298
+E5ED2C7FC5928635420FB1955251932713236DCE28012C86F63D12AF1DB634D0
+0B8CB8992B8723548177BD6822A808FF221A9E38B0DCCBC1F3430A9BAEDA89CD
+ACEBBDD8CCA5E17F1CC37E35A01E058BAAAB6BE7124314DA19962BADB74EE73D
+8FB13FF6AFB6FFF97926CA045B62B98BAA753AB0FC78B881D3FAFF9EE2FE918C
+8EDBEF87637F1530E3E13AC090FF81F4136E08D5F3734327E643CDF621278741
+A17AEBC56E21217888A6C8B5ED4269731910E7E25693CFBDD4EB4A32698F2447
+4C45D73E810B627D8719E4E34D8FF378F9B68BFB149AC67B3B1E55F20D097FC1
+AF74D46F5A3923C63DFEBFCA210F6B257F5FF3F2AC34CE41C15C9977634E473C
+2235295C05C3DF6B3009C7854BF11CC87471CBE085793AF9C5D05C5479B9E780
+14A5A6F3F6DDE5A18243DA15732CCF26ADE40C566DBC3C62B71D46DE87A12C6A
+647CAC923254E2E74AF882DBD5C9E108A9160393C5CD12566AF7C824EFEAC56E
+6F05B92C73A76824C5ED1735BCBAC61B98D509250C854CF1500C212F574D18D6
+4426B8510FE9785B814A70E75C9234D42483E736D0689D3561E8EE5650F33A36
+D50127589401D267BA6442E8616E2CDB1F6691D3FC4A2A377E5E154972E890DD
+60CB463E9EA9A6EA61087DF452FA5646F69BE879337EAA0F5DA4438FF0365627
+4E3B16851C2F08E976FDA27AF451CCEFED00376FC3D6E0C160F0BC19544DE289
+BECEEF9A067FD71D54DA3A4F73F06E2F522BA07551296214DDA47B1BBB1212E0
+1100ACB5F65FD30C655A3402C83058F8ECFE48FA60B6A3DC86C4996414130194
+6676EC7F37454023AB53E9D9EE60249ABF6953E76DCE3123DD268BBD492412BE
+65D7C3E5A5E483C381182A8F19B506F0AF6DCD55532B89852D1D96021B22E9DF
+D9D072BD7DD4450577E658B433A84F92752B260AFA2EC4A118747CBFE36AB7D7
+6D5DD96A119AA1BDD0FDCBC3AFDAE5FF72713EB46759A06CD09B5CFABCDAB0E9
+85599506AC07AA525978AB157496163AAB387F079EC9FA1F9E91B9C2FBCDC9EC
+7027D77016760539AC03F1C1DB242D28D6EE946C42DD2262D82ED48C3A839853
+BA977046F0EF373AFF884AC3112D2FB319421C3165DFA5710BFB9AB9595A10F4
+9D05704B9E22137CF27F4B2DA9CEF6D8801D5F792969B2E58FB539B8038DF440
+6DE20C0313A7BCD16F279290AD6859B0E657CC3041C7928CAE35B9D3A681F2A3
+2D40F8EDAF1127E754276556C95E1282514B6EB6E43FF4F0FAFF28C715E3F39A
+374415B62C1F5F8E31E006D6ABC736057910A3729AC60360CEE1B2C8D9F77336
+39CAC45329A372205FD551B9E9EA5082411207473D9D90E76136AA70180172E6
+AF6EF3EF6B38B1906B904BE9BD5251EF067738840C28877659B649C6C4CA328F
+1BEF8A9CEC2CB062702F58CC0B8D2D097FBC278F9FD894E10ACE1DEC4530CBF8
+E4E467B6DB9C596DF0C3D43E6AD70F30B733EEE692C2EBD68756D0C16E1F00B6
+AD011B5DA073A769B53C2DA2E7C9B7ADC6F551BF4DF4C39C66443692C3DC62CD
+B1E094013F364D04BE2FBFCD1C7B2836180E9022E0434421FFA4317A50096684
+CF0B8740EF680F27F4A84AAF2AA92C64883BAF57BDC60C6467A8D4E09E6316FF
+9BE73053045E5F3586DA3BD1298DC15D751913FB1E72EF80047F6B33591B97D3
+DFAD34EB224D64EF60F5B4ACC6EB42E1BE0CB2812FF2F3C264AD2E44F5EBA441
+670CA0A60E73176ACDC4E42E74F8F489C73481EB5D46A61FDA1C0FF9F8844DBD
+99CECAFE2A72833E4522981FA13713AAFAF8F121E60FAA6F379B2C8874CFF23B
+8FECE70654E5855E525A403700A96CF7F8111BF2B58386E29640D82F1DD86900
+E0E203F3ED554209CBDA2A61A5641D4B39D98C5C43D4575648D06BB82B6C4D4A
+F043EC61B17C208CE8B4F43A7BCBBE588A3D13A183D79A47404223037FCFA4F1
+DD237344E589F161BB9BBF3FAD2E28749350DB9A74C09E894BBCA85B82E704E2
+99788B24642A7D0F0FD96601CF1AE4819EBECAB89824A0DC1C03BA4B546ED36E
+DABC8D49CFAA53D2A9A5DD6B3431E364C99ED0323513476CDCEE49BC413E50BF
+51EB93563DC03B62F84C5F96ED713F288D109C79179AEC41424822772032035A
+40E84014F5BF40948F05E8562C9CA9DDD71F89021BE238E74781A92D64E5F9E5
+AD6C0D954C6686C714BF189E78EE47F1530CDB8376E52631A1A26E3021FAB977
+DBF01167266AD68A779C0180E034A90CB77B86747395BE885E484BE4028B4093
+8BE191D58D0BF85308C72E6384292A2E1CD06130A091F8AF9DC6C3E12B1E4BA2
+BB2C37AB4AAFC0CCC7964C06B9EC1C7E3BDCB6BA265288D9C8625EBA35BD2A49
+BC50472D7AE262237FF1EA8D9DEA3C0DBCF7C3B2DF5AFB1F31E46B48E096517A
+0CEDD60F43DDB684BC6E4C3F6F3D70BD58AAB5052936EC4ED7140EDE795223D0
+4E3B95161D16B0402EB45FE97ADAFA0433FCAF55E22BD7E4AD2030D9DC86F55A
+8D7EA00901EB1351EE8A0F1BFE75CE46DA4165D78043F8F0741D4D9DE0CCA00E
+5F7D89A849AD0F0CEBBCB948613028CFC39617FE9184753372C375A9896F5F1C
+7E24255FD49D2109CFF9ADD9A118CA47CF58975A9CD3A960A8A08A078B98A50E
+4DE619C8B2D3E15938C879D785539445AC468AABD6A6576AF0E8ED368A9350EC
+717B7D3BB55AF58941B47FF639CA2946028CDDFDB84FF0060D330DCDEDF13BE1
+FB1F743317C15C7A9F34408F5FF7CD9745217D9B809DACDDF7DAF9D821C06B37
+25738F0D20F4A86A079EDF71583A9640173B3EC529B98899601F0EBDFE45BEF0
+
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -1672,25 +2849,41 @@ A922E56E9FC16756014FA5CBDB1C32750BD6835A70EB715CEA19A8872041905E
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
+{restore}if
%%EndFont
%%BeginFont: CMTT10
-%!PS-AdobeFont-1.1: CMTT10 1.00B
-%%CreationDate: 1992 Apr 26 10:42:42
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+%!PS-AdobeFont-1.0: CMTT10 003.002
+%%Title: CMTT10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMTT10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMTT10 known{/CMTT10 findfont dup/UniqueID known{dup
+/UniqueID get 5000832 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.00B) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMTT10 def
+/FontBBox {-4 -233 537 696 }readonly def
+/UniqueID 5000832 def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMTT10.) readonly def
/FullName (CMTT10) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle 0 def
/isFixedPitch true def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
end readonly def
-/FontName /CMTT10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 33 /exclam put
@@ -1766,378 +2959,561 @@ dup 124 /bar put
dup 125 /braceright put
dup 126 /asciitilde put
readonly def
-/FontBBox{-4 -235 731 800}readonly def
currentdict end
currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
-016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
-9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
-D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
-469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
-2BDBF16FBC7512FAA308A093FE5F00F963068B8232429ED8B7CF6A3D879A2D19
-38DD5C4467F9DD8C5D1A2000B3A6BF2F25629BAEC199AE8BD4BA6ED9BBF7DABF
-D0E153BAB1C17900D4FCE209622ACD19E7C74C2807D0397357ED07AB460D5204
-EB3A45B7AC4D106B7303AD8348853032A745F417943F9B4FED652B835AA49727
-A8B4117AFF1D4BCE831EB510B6851796D0BE6982B76620CB3CE0C22CACDD4593
-F244C14EEC0E5A7C4AC42392F81C01BC4257FE12AF33F4BFEA9108FF11CF9714
-4DD6EC70A2C4C1E4F328A1EB25E43525FB1E16C07E28CC359DF61F426B7D41EA
-6A0C84DD63275395A503AAE908E1C82D389FD12A21E86999799E7F24A994472E
-A10EAE77096709BE0D11AAD24A30D96E15A51D720AFB3B10D2E0AC8DC1A1204B
-E8725E00D7E3A96F9978BC19377034D93D080C4391E579C34FF9FC2379CB119F
-1E5BBEA91AE20F343C6420BE1E2BD0636B04FCCC0BEE0DC2D56D66F06DB22438
-452822CBEAF03EE9EAA8398F276EC0D92A7FB978C17805DB2F4A7DFBA56FD6AF
-8670EB364F01DE8FCAFBAF657D68C3A03112915736CEABAA8BA5C0AC25288369
-5D49BD891FABEFE8699A0AE3ED85B48ACB22229E15623399C93DE7D935734ADA
-DA7A1462C111D44AD53EA35B57E5D0B5FC0B481820E43222DB8EFCD5D30E15F9
-BA304FA879392EE0BCC0E1A61E74B3A1FC3A3D170218D7244580C7AA0DC65D19
-741FA5FE6F8CBF60250ACC27454BBF0897CA4B909C83A56672958752ED4B5E79
-E18660764F155E86F09EFA9F7685F2F5027EC85A775287B30E2069DE4E4D5712
-E7D033481A53A2702BA7542C71062173039030CF28D8B9C63B5596A9B42B33E7
-D922944A38713383D3648A4AF160A3B0C8F3379BA4372BE2E7EA49AABA75AEEE
-C5DDE1D8BF68483C3D21271280ABB91D54CC819680322EAB72E1250A760BC8DA
-726405EFE420635B5B7F0B48752C06083E92BDE06401C42A2C528C8A60381227
-CEBEF0C9440DC034DAD9C19FB27A350233112B0A339366B7373CE058456E0E1F
-139E2DCAA12133B5B6017B0E08E776403F967AF719E0161CDFBF8BBE8490F57E
-53C78E97517EF7FB7C00035D601CAC8F4EB2F16F8765614227C71C390C32E960
-FC7E9B9BF26D89F808B05C2E483B9171450E4CF3A8690E3B6B1BE17C36157131
-89E42D8A2F51D4CBFFF07F50789D0603806EED2D0A9B5E8B7CC0959E57AA8088
-5F48BBD28B37BD51EAC7264D45CD2BB8B6137529B2B5DEDDD7A740458F045922
-D1A14E07A9E9FCC940D89EF56E274BF533927DB8276C3C0DE704CD8EE4010F39
-365AF1E3665CE873D8D1CCABC9C69A6BA8939F170B873994330F32963C330E9E
-70E95D62A5C4D2D09AC4B8DC7C837D9FE7F5A0D4D082743D038D458D90740478
-2A04E7693C96DB4A91CE237B8ED9D9F07DD4FB4B701891DCF294052EB8263EAB
-5FBF7689500DE29E1121A4460B725C793F71E79A58BEF6EFD29C6CA85702DCF4
-CD2435CA9A0CD4A1D81C15602B768249EFC229A2EFAD0BFC7D5A8BCDA1771DC2
-2641AAEE34E58BF6A236F62E2FF68B3D9E7C68FD5D104811925266AC67F16A32
-9B1EBC55089A05E3025EBD787EF14F4E053B456205C8CE2E24295401232C0AF1
-E01BB90B390E2DA8E42E624C32F3D68ECD59EAE9ED878D07889C7FA8C80E0D27
-527E9E0C57C12DC1B10508A039CEA74CA8BA027FD8DB0BC0356DDB161357C983
-3A144F697E1407791DE270911E25370499A0ECD912B9974490F2B66AB541C9F0
-02DF28DA53E7B3E21299192933DE13DB56210B6FFF3953D09440A8A043987724
-6555A448EF5A54023D8E6CB060F41BA6C3C8CBCCD856FAE2C86A1A0341D380BF
-3236F1B526BF811976506A517AD5913B0681D45D284FA7EAAB535507CBE0420D
-E457EE415EC91B8FA42F9AEA4E63ED29DA0BDA7A7824634309E57D721A422806
-EBA4D2DF543A0050108FA7C6104AE75ABD65EA7274C12CDCA7FCFA6C39F8014E
-3FF49B8FDA5FF5956B72F581DC7CA6A860D2BE2C522ACDB1012E622D211700E6
-DD77FCC8AECC89A787D2F047F08594CCA2DC2658D2CEE3752854AE62F5AA846A
-E022FBC13A94E4582755E7E28C98C65917977ED0BF60D527380DE7BD4A981920
-4232903D1046E59ED60A0EB5175F124E05EED0C1028764605EF8D650463F959D
-A98C0439D4347F65E2DA71641D1607B3B609823FBD989B74E277D6A6E3901FDD
-B1CDD7CC14D8F0E105122B5CC41B8448E34564BFCA8BB368C3340656DA94A18C
-E269B1D8AC19F6E9104A9FFDE96B495DCE7EE44B478DCD91FA8BBE481752AFE1
-C945F42E33C1DBBA3DEAE3DA787E80614FF32021E610D82D53CFAFD806A32841
-490EA4045225A89C0844D551CD617E75D762DF942BE71B73C9BC7D6E7596CD28
-690A53E050C10BDA0A256DE427B91AC3143662E5B1BA0EC8577BE625E1C91678
-967B58EDD0B3ACEB9B0BF61F3AAFB126E7883E06F95274C132DA85A0963D55FB
-2F0357333F1CDDA87F60EF7C569C54321AA37414A6FBF9F2E09F4B09622E80FB
-9003B6A94501383D6351B5D0B98E9910AC0D77DCB9E92E6E6722C5CAA3B85577
-C43D864E582EE95316EFD5FB0CE0338CDFDB0A840B8001F2E389E84B28EDCC8F
-339D746F4D13C3CEE2CE0B9EA5BD67C6968CC9CC68FA23C3EB26C51C6AA57191
-2E3A0F93EE560078DC5C17C7D452923BC2E1875D737ECD6D252D6C8078DF895F
-BC64DA6216D34709430515C99D2F237981959EF41195EDB234E4CCB0DB55106F
-846283F3682C69143374C934B18E415B85AF21B034B133014C5E4B354C3C7010
-CBABF55337F24C8189AF1AE29082A524867E51FEA3CD7C371BCC2A9B2EB7923F
-3329D2AA32EC53D85811A55A6091BCAAE343B86A872827B29EFDB9471FCC8895
-4F6D8043A13362FF3269568B5D385EEA7512A166DA4296D07B7902BE3BF2CBE8
-0E88F4DE219D8E63421A2AB5B1A2CD89C7198747E96963BEC2954F92F7B755E0
-7EEA6298F997835A1622AE6113AF1C8BD1FF3788F224FFCF6960BFFDACFB5D15
-0D37E923CE1DB0F219BDB2C261D9D89933BB6E7585C8A86B985D34B1FD32C568
-C5948683C24E221F7469D23E6A907FE80D4F4938FAC4C32C1CAEEBF072E39BBA
-B4356155CA600886A59AE06081DBF2C8A8BE80AD074F781B05B8D3D8714CAFFF
-4265FDF92E48447DDDAE07D63829441132C68404C03690A220416E85EECD8B47
-BFADCACD42683E5988E902F4EA64441ECCAD6FF84453CB44E7ECC8579B928C4D
-CE1DB8A52D9DE83A4E9F95850E47E63505AC81AD552D5C13F98B2128CD1391DF
-071022C0D0524803EB652D6FCA6AA7D2BADEE9F60DD24531641DB5093E0B81F5
-C09A428A241111CD5B861F295352AD9112BA832448B924B65F8A07C10E9CA93D
-6380A1B2E477AE278094155D3090EAAA07D3CC2FC06AEDA34013635DC3B2CF0D
-2072B5EEB80D75CD80BD609075E2452FBFB3F3E5573A6FB4397A57169A5E80EE
-5A45AF5B98D9C89F96A6011AEE28266257FBA4C5E58EFB767B772B8022F3D7B8
-80D9A6F4F9DEB89013D74BDCC23D250F621A0F06EF76437664B13C80EDA64937
-D469C3CA58DF29F1F0EFA3ED58D1DED9895BCDF59183B939FA839932922BBD8B
-4B96C16F9F2FE7BDB4A838B8F9C52D9CA5A3735CBAA633880F132B03DD26DAEB
-618E4B689B9A11D8612C47BA970B7B5ACB4A0198FD3EB7A62D92A026E6AE5246
-D9288F3371113050F0AA67159F162F6E62FB853EBC973AD4F2604F2205C53377
-B6061E2100D07B3A594266F06A61494B922E290AD42A930A32DA4FBDC3996B49
-DED27B8C5203F080F67BA5E890848ED2DFA053162CCB2E13BB62D798CED03B1D
-ABF098419D9F97C2151C9A3AA0FD1865C291FA240E839065C8F3E8EF504CBFD3
-F0F7A39F57F6A097D02D399453027BD0AD6B5FB820EF4A889B11AE989A23BF39
-0D258BA55C5DD4C6D690037FC9BE99FD14469FF13EC32D32A033E32DDF6E357F
-AB1A65C530258296E77ED1B8F056176AFC317A0401CAC7E56259FC96A9BF3C79
-683DEFB45F1C3BF305E5FCFF15FFD5D0DAED5AD258820F13675773A2FE23FFAF
-44CF4324F7D6BB80584D760A261D4F1FF01B61B5008BD647C149B59A39C20590
-C32E6A8B321010CF98E0D3057ABA6076EFFAB23DB513627A150219F846FB7E13
-B3C2A2EF7CE6001A96CC12B7E81FE3A12751B0E4A5C3B1FD544514AE480730F3
-3DFE0181CBFE86EAA8175211B668BC26BA42A73C44105AD5BB07CD54770B1E74
-28C7264AB9C605B28C233BFBBF3C5402538A873E0F91ABDE05E82274C5AB3A96
-F2D3197A5C6ED9F3063984FFC2C35521559412B3313B35EE2D952D1795C43A86
-497B8FDB06633483A5547345C4DB951D8F9EA26C24DABC84998EDA8D8EF05225
-1B2C991D35F626C6CFFEEC6FCD50D742A4473B466F92B7C4E3347ABB231FDE4F
-1797EA8D2B0C90F018AAF63D6AF9F268C7BD3394BF0EAEA8DBD686AEAA1F290A
-955E1146BC80C4BBCF30AD1CDCD581708A8C27FBDFA9891A2009E283809095E2
-ED36E1ACC52853971DC7F8D234E5D42E88303CB5B7E8CE086230D3A66DB1A259
-194FFD10DAAAF25AEBE9D2E0699DED06188665A376B7B96D33C918B9678EBB28
-38816E68A84474ED9C727B809D91FCA850BC7959BFE888D6F30C3917ABCF6D5A
-45C238B3EDAF9B42EAACA014F0E8E91549E3804619AE8AE31B66D8A444A1DB51
-9E40CB458450BE01FC8E7704D144C3A962A65466CF7614D94DAB6B9EB10E003F
-0B16CC826F0716B8411500D7E867947E91BFCB998DF3BC331E66154059413D61
-6F8D59DDE334A3622CF268AB714E6A8417CD1BF09FC7BBFF072297DCF0AC04DC
-5C1946935E8EBFB12A4E8931516CEC58D45832C8097BB070C7C51DD881DAE0C9
-8363C904A21CC85B20ED5DB3299DF802965EB5017F250CA5E8B3998FE535534E
-05F3E270F718F6914C49AF45B3A75DF1E9CF0D58257DE2FA18FCF9192BB60FEE
-581919489A666969768A1274CC4E4E6D644088C80F716435199F9D514B065EBA
-B8FE1945F87636435606BA5D996663E7DC75C54313FCA84FBD13D70A8694A210
-170DBC5CA05D342C8742A2AE2477E5A5D04849501BD569ED5E70A68B9EFE8CC5
-DEC2EEE3DE8F29ACE6CA0741BBE9C4BB42B74037C85E93B6CF0AB818FA434448
-995834EF62C20CB180A489F1FFCE5A21F1DD47205ABEC91CDE6CC2A07FAC5D0C
-B0488C9F7B3A3974BCD0AED976CB3F2FCBFF68A6093756BC24FCC6DD3D9A2F3C
-EE881876A1EB8D9BA8462CB48BE2220381B86B1057A1A1B2A08EBC2FB8686BBA
-21414FFE042C855A257FF7AF0DE86B8902224B90465A437618D4F17E051CD8DD
-A08B7D89D6BBB4A0A299485D4D737FD4F9508A05B9C8EDE0724B79726A3C32F0
-D74B811F82510C706F3444FF1F2226DB0C9B1DB512A9EADBC823A83526DC9587
-42AC8E8A54634DEEE9AD8FFDC6497FCF217C997B05F9D2E991E7D9D61179012F
-58248632D5836B087A6624DE90C3AC386640B11194D3C891BD314CDCB6AE79D5
-DCBE022D7FBDB13BD6A762ED8B65DEE202500E842E31DB6BE7D873245A75C231
-919DEC011621AE1D808861CF08E339E404F8ADD5CB1D4DA268C191D60F50BA06
-7E0D0273BE56CE0A53219B7C7FF9BEF980617BDA6F2C780175E712E634923995
-FBE9600E429DDA5F691B61BB35946E76FDE28F33F06740560D5E971A424076F8
-CDF10BDF3899BEB2BF28DE369235ED0DB57B27827179CB3E2FE8C7CD6233DDE1
-6625975D48C788C85285EB73B7A7B9DE131FBD245C9B306CDAD91D01839978D1
-2132F06C2BB59C8E38E416AD3A8937CC72632C4F79D905E3119B83E229F9A2C0
-BF6F4C0BB3E509D1FD88DEFF150E3D469CA20E9446ED75C6C44CC72DB23F945D
-9832BA83A61D5C80222A23072B4664E9089CD0FCC6512129938FC52C6DC46593
-418D9DADF19D00226B1122EE81402007AFD06B39305E1B0481F5390EF21974FC
-15D680EFD0AB7799187E6F5AEBF07013651DDA0EEC50F352AF50D08216A31159
-02E896FD2BA87D3FF13D46AB6136C92AB932A3828D6E40D6AAB2D42235275449
-B0EC8E5C6134985E9D21763974377D34530289FA0EF14EE891E1B221A698A8ED
-791DB294B3489059A8996C160545AF6C2A556882AD42A034E686F21F187B448A
-DCB631CBEA2F4F863F31D65D5DCDF357D0E7BD33FABC65310541AFC05860B5A9
-F6F51ADBCA7718A3F6E17DDAD5E0BEF0351267925EC591024860289B31B3071A
-C9BCB9979DC7CF6DA2431FB9F4E73A4A6DA52F23A507510A86161763A4AD574C
-A8D7EA3CCFDEEF7C4FB4203DB0D00079639402F8CE2C7706BC3134E1455794A5
-F4D506126F124BBDB84CC4E38BF56B0F9FC18463281559E8001B376563651F50
-E4F54D3BCD3C5ACFF157375E3BCE65EB9620A91E0B3AE413513AA885462A981E
-BC33354C8DE722C19CF1CA72623000C7DFD3393F12658ED3CDCB2472DA045E4D
-78EB129D89CB652E423341A6E539D3A12F0AFA3A379664C6D591DA458D0C93AC
-507848ADE1CE0E237F8E44781929B013754392A707CFA3028609F1A3402925CC
-15AE50403DF0B09ADC29AF5AB03D6FC8305E7DFC46781FD76FE6D95F3E2FFFC3
-5B0AAA73B30D870D8E8E8184411A418FF8AE4DE17DBA8CA746AF123A44944F62
-85D7E059CF3271B6088A374093C5D80197F1EC827A68BECE399345E10FE1C776
-858FB036C4AABDEACD9C5C347CB13E4EA5AD6894FE5A6B210838D0DF1F3FDCDB
-7A1B82D07D42C84DBB695F70E104B13548D4CBE2FBBE128CED959774AA5F7A54
-3CBC6313BEDCB8B55429DC58BC51E3686BC9A8110D36B4625C5D9D7AB72D7C14
-312DBA59A29CFBA7EE804873A54FE2D1F5476818E2DCB1863CD3BA4892EFBE45
-C5C3DFF6254F491734BC982C0E5CD41C738DF9B2B462071C1F70021629BB7A9E
-330F7325AD85E8005A90BC13BE6D6868846F74EC7002F6326160646844187DE3
-26D1C625681208B87BCD967749AADA6510105459CEF77F4080F026CE8EB36E1D
-0C275361FD92225CB11CB327EE747D2397EF6E4DB62AF4708ADC95B9B0B0B3B1
-FEA8214506BC33C7E10C28AD9646CDC214F1F0ADBCAC3F9690905A7DAD1B2ABC
-995787CFD83E255B07901D17B196334A40A45CC25D67D69A9D890881D4731680
-AB1C230DEE91D23EFC69BBD1859AEF38E9D907EB461ACC9B5F12503ADBB9B373
-7669BE875CD0BFF43F1B4AFA8FB233790BE91986E6056E913D6F29480A27CBC5
-F7D4621F794369AA8FF04EDF2884875C802B3D2598B747AC471DD88C2DD7DA5B
-4AE78FAD1A699F0CC2BFCC4F492ABD0C784F53774923C96B8E8936624C9CA2A7
-5D98343D46C3D59F45D7FC059DC38668233DDD9EA40232BC9F8E549A362DB96A
-432E2CE2498EFFCF491115ADD4DDA9E1113A8541C607C60C7B25E4C5DA72C4CC
-08156379EE57D76138CADC149B25AC6C0B29B92D038B22B8EB4B4E69C7C405B4
-F8CE26E4214888DCCF18FD2F5FA3E20C2BA5E7259950522E5634C95D52F64C97
-392CC15FFB00C09346A6D20C9EDA00B5DD4793835BBA10BF35B373819058A94E
-53B1ABDD7A28B31BB7E4A597053DC442FFBE6902478AF00BF74E07FE2AFAB59B
-CDA5997B78E7C996C8A0669B3BA4520807F346BAF4FB3FAE58A1E52C6DA5DCF5
-1457800464DE6C876E392B266F9B93D97FD91A21EAB2F0F917750AF98CBFB7B5
-1977B2460F36979B866DE95D42A79A7D3B68E3FFBEE7169EDA27F479991DB6E2
-39B92868AE161B910549BA51212E4A8305E52CB4E900C71A654CE8251CD30C5F
-C23B7857377FC16026DF41414B792F6E992CA6671FE6C3C9136D8983A33F47BB
-D379D88E34DFEF2F0D02CB9B4E6C04D0C5B397BD7C52815E75A2E76343F88642
-BAFFF409D80A2213B5F48B37867731416D4CF497772732B4FC79BC7EFB2330E5
-40AEED28970A318DC93F778158DAF12747890D85DEF62BD2402844D29A5E5F6E
-4F718E264EE9657D56C956AF3DE08C5D054F9FCD351233C35AD02DFF3163E42D
-C401378EA1A955F551018C365686045B13F2C1A5708B3CCDF7E226554E2AD8B1
-E4DE2657209DDFD5689D93EB1C202206C73A586BC7ACDD21451788CF37D32829
-8C1CDCD8F0D359F20EBD5E13D0DD96C0924E53797638750D5303B517B75B6F45
-2BD533C1B35AEA97DDA239955596C1D3456C6A7E6E120001105E58DDB0F36861
-3FEF0587489B1F7562C9742CDC972340E98FAA2410C7EB42415E0053F1A79CD6
-91EDF9BE7F61F5069FEF3BDE1C95CB4C0216AA5BE28F8DF42F57EE97AE8FEDA2
-71CD120D8F04986D5AE5DF2B0BDBBA01AC08296A2B30940BC8006A5F38D6AA9B
-72D9AE3690BBD89D9B1B924A92E9F98312CA994F369F71706A20CB72A820650C
-2E3C077ABFF8BE9843ECEAC7286DB8F6404D2FB367ACC874740C5B3846EC7190
-42C48E182B94DCE1B8F69CEDFB60A3A7C7AC2CE49A15DCD6CF50EE16C411ECFB
-7786A6E0D244D4BF394143BFA289495957DD69C9D40E6D57C00D798356835A53
-8A2DC6B46AAAF21BBE9A116EF4F2D3B9483D3B62A82840B2166152E7051C2040
-888F99445F1AA00AD94EAEB427EF533FD7BC59F63D873115AFF4451DAA4B931E
-B6D05AA4F7001080F3FF5E4E1A660FF36D0FEB424CB46CE0D591C7E0135E3D69
-17262E35F7B7A8CA036CCA16DB8EB55A732341BA1C2B9C6B588D41898A0D1E30
-81C1B1C6B5DF9F7D1A8A201E0848718BC02ECDA3EBBBA61A7CD9A3ECF720582C
-EED677E290F3CC54EB62B83E631BFFD22D4F03177787FEDB5B716B34F389ACB6
-B84863C46A71CE2C3387DAB6D9F35B4DC3DE3D279221BFBAAF730E549922CF48
-B6BBB2A01AD00DC047C2D2B867E339F64FFF63ABB3A2266D7FDDDB3624CDB196
-B52696801BBBDEFFB871479D5847737DAF7E98F8140D65172D39ADE3219B7E57
-219FD2CBAE039D263DD984765AB26E9E7F17B06ADD9AD578DF69AFC142D31DAC
-6A43149D41E5E07EA2F367423AB179B9F913ACF1FEBCDCDA9C6BB6D14BFC3425
-176C2E34F15229E25B39DF215C36E75E6FCA07905C70A6A538FD8191A5E1D5B9
-21DE335877A562A62769EE2B8FF16DFBB1CAE6E1E53E78A9E0F7D9218295F409
-72AFC2CC9CCA4B6563373950824DC071BB92902866C827AA23BC2716D7C770A8
-9CAA5DD2251A0A1EFA4E95402FA16E1CBDE5E37A169B8917B8E0D94A9C47D225
-307B4A38C004F3F36F31901DF56A6FAF3658AECC09C8BA27F26A5A55314782A0
-32963C25291B990C57790092F05A203176282F16CAF9FAF89718F2DAEEFD3F52
-CC263F02CF771062B04E51A0673942479BFDDA13F04AF88B9B9DC85095C04AAB
-707A308E46055FFBF41AB5CF9A43F8DE0048A8A7138D359AAEE262A45AF7DE87
-AE6D10BB6CEF580322A6593121AAEF71821C57B850BA883C2BD21FED4C28CBE1
-D6F3EAF89ECD58B1FFAD8C41225331DA8BFDED4FD80EA251AAAD2DE982246F3A
-3D7800CE8C67612E63FCB2806AA68DAA7373BE7939895EAEEFB371DCBCFEA712
-238AD633A8FD2496ED249828F9A35F9A8347A6FB401B5B46968646F7B07FCFF8
-015A73A8832710ED1743FC6AACA74DBF4A8848131B9C83489B55B42A57C0817C
-DBD12D3EB847A9D7AE76A6FECD5362C10B8BDBF6FCCE19166DA5BF005105068C
-E0CE15C4790EE0CCE764B3235F1FBE9940369C5C6E1E38C25DC8167FB5655952
-9761B35C6D02048A5A89F090A08A0E91A871700A92A06CC93C225DB53B6FCAFA
-8DEA22DE4351879222842783986A54B93068CFF579B6F0B3E67F595E603CE50D
-7AEDE415CBD7E6791A5050214403234F7EAFC11E64F78CBF480EB261D8D0F9EA
-60B61737C69ECB32C0C9165098087E5BD97155502102414227F07C8EA33F3CD0
-3C039DB00F3373114E4AE2766FE8B19A866220A68FA769A0613B080B700BC85E
-313C0689DC09ECE994A1FD9E01E13FC7741E11B84398728D28924CB6B0216F51
-20A07984B0F4C20100DA456FAC82D9D1D13613F56CF0BCDD31EFC037F8F627F3
-123E5BB89E5639D58FA22BC426933C1FDC42E4817794B9108F3FE476EA72B0B8
-FBC1C7DD290D9BDC475DC01C8D0F5F191E38958B316E5A6493D3810BA0238235
-8AF308C1353A4D1F29874C6F8813EBACE49D044E0EB24A9B881F24AE3028DC7E
-B574B271EE67FB9BFBF3562BA8BE7D0D3835499C0FFD6D9AE6520C6841676A89
-E5B4C7312A4835FA7BD974D164E9D9AB45D4554086E1658D7A3CBD17DD8FD091
-6DD2E2094AC2E4E79D7E2BD082E4710A126DE03D2F4A8EB4F8D8D16164A2825E
-3230BB6E5A4F5BF8B4ACE7F6407321B07678DAF8721DD718ECEB3EEA32229007
-BC90E375D2AF6A4D0ED66B5EB0F5B017F4B8355B14B70F665DA551769AFF85B0
-F6D17FE85640D9F3BC8D0033B823E1D7F286ADAC61C85F87C8F4A021824D068C
-47237508C739ED9E66056E1092A22956768FE73B590BEAF9B8DC96202372E369
-4392C1D73DF00B9255ECFB19C21C1AF844F7DBAD326DDD5D7F7B41C616E1FB7D
-F2D113ABF9ADA76E08E6DF03A5173BC9F65B8873BAA3AE67D35893DB2437664B
-F6C833A9289318F7806E67DCFFF38050EED9BE1FFB62EAC6773CB45CF0FF56DC
-B4EB2DD8AF38C2B50849EF082DE092FE7E9F6B975965FA5E076FA1197946867E
-AC588C255FDCE28DC0F7017058CA8CE21C656F39432115CDF619B0DB1F3DA652
-A342C73D6A8D3DE2D81382C0CA46C233DE0BFDFF0DC6FF4776FD60292D157134
-EE1849F22013259F75B93CBB98A488428C29F3168A0FDEE616CFA1BC088F6BF6
-98940C3D6297C684096C08A34493D5998A443C0A4E9EEC53100F7BE7CD8EABC4
-8234DEE6FB36A1028627A18A3A6376B185106669056BB9030D3EE29B86857903
-8E5FA2DF7300D72EC079F896E052407A8E35D52D921D9EC8C230A8888708270C
-8975D96D7A9B5C9504342A3D3D8ABC0E4F8665C4D6236CE5474F1873D968BD2B
-E894FC38FD94ED092DA881558B8C8238716136F31F301595FBBE990DA4306F2E
-0E996D0F9FB20B67DD5BFAAF9BD909130F033414F473EFEDF7CBF271AD49D15E
-570DFBDAF0D4E02738881C104B8218AF659DC9587A6DAEA42F98FA0A864BD1EE
-ED493DD61BF4AE6B5EACB7DCA84C2EA02BD3EB3332D1A8E6AB68978B15ABB10D
-497A0E3D6E9613E13B4EDC6DD8C95D035EA0D650B15A6D0FB89109E1399B4866
-73B857EF3BA5B44E87AC7AF2FFF4EE7E7D6417348094658BA6F5281E45943EB3
-E711CA4C9A4ADB161E71208C7A5102D09FBDE0921CA593CFC01C24EA1C5D0B6C
-20519F42D3D169339A326D2C2308B6F0A463F9B32B2BC4929F5FE19AEF93666D
-1E1862AF5E3C32535097A0BA56C4FCAF66E93D9641E25DAF92CA2BB0D9BC29FB
-00C79F8A7316487C64222592DE750B72E5F7AE2B0B71642174C873DB02946505
-43A7B71D313B5092E2693051824A9737D75609D3E8D17CF493EB10BCCECD0F7B
-06ED06F43508463788A69797457047679C5D69C15D36C31D2ADFC03B8F53D11A
-D03A7C6E287BC789837EF12A1E58D6F280C3213DE36B0FDEF163B8F2C37A2525
-5A7028BD52F371778EBCF28A9096AF779C76874041CD6263466C4ACA1E1A632D
-DE5E1D15AECC12604574E9AE20B6CA3C19D1E5A71B3BA4E82B18DB3F408305AA
-0F0AD437478E7614F33FA67FFCDE9986DF688608220A22487916FF230CB8D3A8
-47289790D64E166BDC548AF527BC883D01C58C9FF21BE693E6FA502D8D2C13B8
-FB5A8EB2BAD804BD9AF48B424D9F299BFE3ABAFEF3F08A073C4FE42B76E6058C
-523C0758040612837DD31C5EFA932A19C38709CFFB7C191C10A15FFDC1F91700
-F358DA7374CF485ECEAA8E54B6CFCA4090B3094B91C6D5CB10A8630DD0F7447D
-99F689E44FBEAD84D251D35D42280A1ACE9644A44B45413FF6E0493EDB0A9A72
-F182B458B2F28C9C87075B6D37CB11945DE08DF975772D05EEAE97BDDBDE6F32
-9336D4038F0B064C26F6F2B742C6EEBC7872DA7B09B1337FD885E5E4F299F3F5
-88ECF739340592F863473278A4D5C817E9E139DDFB2717E731AAC7063D9C283F
-5E9706FCD1F4DEC03767B93D2684A8C1D544B9B12DE2F503F2262017589CEE64
-550373CA2169FB1253DFA1B469595A61C58C26EE149D0AD2F49FBCEB27DE59E9
-0294A966399B35E17F0B37FAB2957E61695F7E5C2383A7FA74DE9DB3EF25C524
-876E67F2AAB48F725FC13C6F1DBCF60FF4D156440874B425A2F8FFCFF60CEE30
-733E662DA7A0E25EBFA5CB6958E694B5CC16EFAC612E81A2B04C09FBEA8EF355
-0919DE7DA66BFD36508FD6230569B240570E09A7ECFEA6BD28D6F13D8A2E076C
-F65175C7187D0D580B368D3E8122D61AF7D15D638EB54B4B4A2905416C8C036E
-C235CECA028C60124AA7822A4A21A7B6E783CAD48A36BD47ABEA43347C1762F1
-C071A54E5837AE4B2C4F5101426721F4F0D6A86FA01C036B122026B41F6B47A1
-C383B059558855DC5C7956AE377C929F8D0980F3852FFF885F2C2FDA7E33B623
-A860A2C6E2C97AEE4D405B1F8C385A445932DD8D617420C9D13B8D296731AF6A
-D7D063544798C8E1BB78A7E2A0A86F514FCF06BB6EF4E490D9D526D75781ACA4
-B8D85110A10E01B8369EE4134FA8AF2D55934FE439EC91A1CBE137E95761F911
-ECE0FDAEC1C947C948D1E6FA6D23422BDA5033DC01EA9A7B82D4E7794F7F3DB4
-88E4984AD9D90870A5C7147454CDBBAC9F7B3C3E3C0906FCA0796D5A7F7B4341
-D43DFE6D8989C01A2F9B70B27E2C0482AE49C90BC96B4FFD286EFB7B7941875A
-CF94784F51AA1862B59741EA2E507AAAC323F64422111D5CB3AB85293BEAAF0E
-C2BC1474BD081CEB16B6C8CC4F90E2C94CAD66F34FEF6CB3F84AE5CEEE514496
-5BA33C5F78A0C9552A40A10C79ECFDB85D20D6C02F5E8ECC31B315EEA475C17E
-FC651914493A2563E0A06F16B4A28AB64A906FEFD112EC0B9B3A3B7E45F93209
-7EEED7E0CF875375D443EDA415CEA6ED37AD9EDED86F5923E0213CA1A429E91D
-5B266F14063107BF8490BABA8E68A67632858A7D03839F1AFAEDB8F02A9374EB
-2215EADEBCB8682DC20251D64E97135249A0EC2FA9FC22341F72FDD2850520CE
-45E2B2CEE4DA9458B771AFB829D6BA5224854D4FB7114122E1857D9F178DFD62
-ACD687049B5D9650B371FEC299A96772EAC2FD5CA9C5128E9FB489F828945D92
-33F4B50A0AEBA68E408A3E068A9C2F92D7A92BE9487A02E37A2DDA05847A4BE7
-73EED5B07B64F72B183BFCB31BF2673EF5774CADCE2EB4BD58A6051C5BABE387
-F0166CE179024FF39DB1EF11DD128F052655D0AEA1F7DB42C194D3D3E4A51921
-22AD7AF84A48B12DA443D0CF7B3BB35760EA3CF9FFB861CDA95F15790A6E0A9D
-6F85EDAE6980F0A628D73F68BA387AD9326F804953443C2AD2ADCC810273858F
-9C0B51BC9FF7D1654E2550BEAAE3986282115E3646A630F88956E62E3D646416
-3F2A802EFC60B547723C0AB0FD1A0E2DC6CC5AD71569841FDA59627AF7E4382C
-E88FD3BF1A9D8F3378831B357192E379D8D313889A0FB00C470C86C7E463789F
-D2CF696141BEDB834649C38D759016B86074DB5CDA1F3AB83B3A34C96768963C
-86983D35679612CC2B8E9FC3AC3D857F8825F0BB9F40383241048605D3526437
-507AD1DD0AF39D47E62D0E190F2A9BE9E95607595F956238BBC14820712FAA02
-59E93BD5B84584BEF8517484D04976472E6559A4AF333A26F5D5CA91C73F32D3
-745DA3929763688EBA79224580D6BE105E257C166F91C7DE3612520402432AC5
-BAF5498D4F611E5B7262F95A619816BC40E8B5D756264D656C3F6CC58A07550D
-3961E8572E3730F0A5DBBB415B29160ABABF1A0FD10A0C8F16CD48BE05F90E08
-8FC9138BA53FD3760EBC0F6D6CCF7148AB43B62425156067D97F77F6D5D95C06
-FE3CE52B34A1DA696B31906842A6E77127FAD80A6A9691239A9F4877AC668654
-E1BAA8223EACFB9E4F120BAD798865E85B4191CCEE9C40EA5D86161046D0C8D2
-BE4C9607DBFB934C1171A3A71EFAF63156C8C68C644D4F64C2B51B58FFF904C4
-F6E68EBBC0C4A8A6C468C2F030C0D5474C37782A6511206125A88D165FF8C63E
-6E87046691C81E571F02BDDB8245FBB8187E9E6285B0AFE38A2177BC7B540813
-CE19E2017CC10BCE677A9A42C46324FE48B0FC5FA2034697258942827E9D5D9C
-3E2ED569871E9076B073431BBA118FDA33FC180BFD558D4DA17A3813D206B0B7
-E62F666D68696D469E13E4FD628445D8BE278DD216CCF1930E2435EAE694FF49
-7C494DCF05837E5EAFC0B6B8E09720CFE065FECF38B3310B56C4D2724CD8D078
-DFA4D795073E90F96857566D43A622A61EAC381E20F262C660C90302CFC6D85F
-BBCB3DB3D450587FA8C43F89F19DDCD4F244E9A98E1D0CBCE31B3EFE2A397724
-4B7AF5172C4E19B03D1B5990F4366334F4FFD8B019127B30F50799750AE97C13
-D4B9278EC1298DB073634B66B212A093F244BFA90FE1D8A99FC81C702642ABA7
-73647F04A2A89D6FD2EB560662016E7E6C634AFA4BC0B4024E45437A219593C7
-538FDA68BE395BD061A7D1D719FD571C8BAD0093928EB6829A7DFB9A798C2429
-443B8F00A56A3A812E0C7661B2FD15CBFCE40AC101ADC58C058B8DD2EFD32A59
-77AE2D1BAF4809B36FC428EF235819C59A8832A2C641B43BC25C6F887ACB28E7
-1E3C354B14AE57021284921424522DBE8BBC8AFCF428A8CBAC99039FDB738B33
-065BAED6EF1ACA3C13426AFE3A72B9782A5EB64150E1968B5F73FB68604349D5
-479B9DBE25BD3C7FB893D13A10A17FDADCC10FF7D4E4E7DE5D7FBDE6E4A83549
-8BFF55B352D9770E83B7EBB026B9E5E6BDAD237891EBA638E63D262F841D746C
-4C8ED36FC973DBF35059CDB3E73CB30A5BCFDAD30C7178FCD1DAFD9A7E131C35
-B094C145CE3836CF18BDD0DFA344760A15AE2193CFC872FE3F2E7AF09E1CEC89
-2A67469F3CF738E980E5A03D7B6AAD6B70C668054990BB9B7F1D30A60E05E671
-F2A0A9F323702123595DA4818AF4E5C0DA1830E94095EA4EC36733F3B25AF6E1
-490A2772E25803805E55650B6FD03CE7E8F8565FE11EE50D0B040A62E5AF3D3D
-85900BCC83A09CFEF3A2EAE5C4B87F9B423CBF7FA703AB8D91E851101B888FB4
-D0F0F31FC74EDBCBC1D40A2378DDC8A0EB9011EA5AA3484D6BA12D6B4FCDB6A2
-10497D262D136AF8DD0ECEE9EE9D41E94A7C35D53698A0E581244EF3A4B3EC6E
-3C490AC4F3EBAD17F1A78D6DBB01343A3854887767021DC999514E99A18E07E8
-B40573D647BFA3E27527C1105EA52050B504D4C8BD5D6B02CC2C5334D7CC08B4
-73CC3EBB9A539711F08FE85F2C5773D83CC5C43C4C2B50F8B74B098950B71DE4
-5847A10929D37F8BAD2E3E31D930F6214CADE137CF8D76EE60C57FF82748A105
-0E00D412E6A82D76754124CACA25BCC478169E42B197294143544638F57EE932
-44BCA114BA1D46EA1540943AEA3904406548AFFC45F2678A12317B7518C3EC49
-6A76D6C86F3D44EEDE0317ECC5401EED98BE22EED756D35C67B45D9924F19904
-1BCE23B85A393E7B8D42E103CA6B60278F73399FF178F1F0B67F069C9BDADFD4
-43AB5A8D4ED31154B0FCAE04B7720907442CBA3564888ED7CD487A6F62759397
-42443511DDD40CA6343EE4BB4A63125A4CBBE3470F15146F50EBF1664DC5B6F0
-8AFB62C771997991A9FF8D3BC0E258FA4D8AD5BC20140DAEF3824CF78859BBC1
-1C10C23A2C433F4C2E86350651D5861E75FFBB16CB9039DBC5D6A5B37A81808E
-1BF4A6C3D341722DDB79764507346C263A8EC13654352B6B8F054B1082BE652B
-1330D7701AA7B370265B3F228E005578AD69E63ACA9944B5136177EF63DA4B3A
-2DFB0281495331010183219263F47C39287B9F0CBA9D9BA8D199DBB482877063
-FE76E44665F05675E1B9E0063ED511CE3450472776302C90DB4DBE532FF0442E
-8901F287E601A310C807DE2D0389FBD1E673029C3AEBBF692C189A104C7FD028
-5539F9BEA74D18F2E15813C4B7F836148B4B54BF1ACAC31C3955FD07F68B38D5
-2F0D5FCDE1F89841E35DB59336E58E5C074DB381AFBFB7D2865DA312A2AC8580
-6E308FAABBBD198B81AD0D1EEECD61EF8D4B05265EE9207EE1990CD1F5CF2B3A
-00922727934841BF36A9D50A3C8ED089668E7138A1FBFF1EFBEBB0C994582726
-3E31E449D43A4756E87A8636BD09C79438CF73AA3F903F6F3CE72427C148E997
-860F5394F8DAA2A1F392A169E3037AA3516246DB8CE5FDACC863876145C3B2D7
-5BB3D46A325B5238E3256EA2863D388508A720976F154953694661B617C1636D
-6B220B3DA2165E39C5B1AB48B522ACBA82B5DA5E7AD1EDA0B116B754D994622B
-A75931E0774B46CB1224CA7C9921E2CB2A2D95C7E27D55AF75FDF72ED853E525
-EBFAE0B50FD667EC5059FEE1D8E7198C6DA130AF2EF7413C94340FF4075EE1F0
-543678B806A1B8F4DC920BB4DC568E50
+D9D66F633B846AB284BCF8B0411B772DE5CE3DD325E55798292D7BD972BD75FA
+0E079529AF9C82DF72F64195C9C210DCE34528F540DA1FFD7BEBB9B40787BA93
+51BBFB7CFC5F9152D1E5BB0AD8D016C6CFA4EB41B3C51D091C2D5440E67CFD71
+7C56816B03B901BF4A25A07175380E50A213F877C44778B3C5AADBCC86D6E551
+E6AF364B0BFCAAD22D8D558C5C81A7D425A1629DD5182206742D1D082A12F078
+0FD4F5F6D3129FCFFF1F4A912B0A7DEC8D33A57B5AE0328EF9D57ADDAC543273
+C01924195A181D03F5054A93B71E5065F8D92FE23794DDF2E5ECEBA191DB82B3
+7A69521B0C4D40495B5D9CE7A3AF33D17EE69979B82B715BAD8A5904C5DE0260
+6C15950CCF6E188A0CDF841EB68E5A2F88253E382140F87C87E55C9EA93B8C89
+14A36CDF630D6BE7CD36DBDCE22B21778E8648B97B7EC6742EB5114BDF0454B0
+0EA7B1FE236C84C0E5308C871F67B973892890557AA12E00B2C20C71F516C397
+3F3BBD14A1D0149CA064391056E45E9470FC7F6F556ABC82653B3C8049AB5CF4
+BA83C8F2158C236B2FFD4208846013BAF4165E8BB8D334C8FF2E8D74AF5DAB2F
+D44788869B08399421AAA900ECC6A2D594641C121660D4B5F512938994C18DD0
+FCD9B008F68F0351D21ED735B2740CB1E0C1CCD25EB548C35B844601D98828DB
+556F71D07E081A593FF12DAF83676492A0FFE16E95717A07082B43A966C1EE8F
+8A59E1255E1705C43A23CF29A5E4A6547C93F1680A870EE7BAD8CF74D838CD5E
+F806911D8FE4262ED8E7F5BC58B92C9C6D74F8AD45FBB021EC7E97393018B9DB
+B1B84E7B243ADB05ADD3F1DB3692ADC5D47FEC7DF93080669E63281F1576B673
+125EDF08016664BE73364F65389F7C3B66623AD1754ECBEF9E5CE6948D933787
+A5674279ACB2EBECD3B4E6361419AB32028A27670C9F3E18B746A10B00AF6D77
+4EC00E3BE521C02A99AE5BAA98F793EB1228952BE67934B91472E01AF7B816BC
+56D7F19F631A1927846D800C107B1E9CBFF9D2DD513B4A8CE2E0DFD77B1ED178
+E43FA7052765E9FAF89989D490D8FEF6C536EC0D4AE27A74F474B98DA9E6B92F
+15E063DB260571979A5DE2423920CE1F59F56EB11E00E3BB9D466A8263E1E385
+2014BEFDA8D1EA3EDA04BE32AEE6CD15C5C010A1DF7F705A2C0C18E87C8DCCE9
+05D9163181CBA56C0FAC8C06A2990554C8E759D076B01BBEADE3B5FB8B551390
+6C8E4A2A1C6E7D9C708614626F3770C0AB7DD2027469C77975C27576065862AD
+04E5E50CEBE907E3E991FA0C627302C0E207B4D5992BEBAB5853AD1C0D271728
+C76F40A79392ACCA7358F948AC65DC823CFDA59E1FF69CEBB6B7EC3CF21669E4
+70D999508F9C49E2D9F8818CA53C977D93E15FBBBAF75B1E84F0BA62BCC4BAFA
+4EEC82D804C8A8C0210F3E5E258BB1F6921AF02BA9861BAD5C3D5FC8CEFABA8A
+A607E547B802096F7AEB09FBA99C83C9A494B94408DD607CA6561A6E6660C473
+62CF8D35F31D052F6C6C8138A8E1430CBA7EA6973D6D510C1A06B3FBD79D9364
+240C1A00272DA44B89A9FE8D5BF36DC1B5EBB4A78ADBE9C5EDB485F093D9517D
+69E1AC9A8E6C9D7C324E3797CFEAD9A18E82E03F69B2CED7D5DDCD1A218BF2E2
+ED2293AE999FE2A4B5213A10083EE0407BCF8007670B8C737EAB30311C868D84
+121149ACB4A27F3ED6C0C181C98AAAF51B105F264B5672D7F745131ABAB5BEA4
+0C9B43C0DD9116D6DC61F90BE72018F290D26D5E9D341055CAF09C9F45333CDB
+D45B7954271767F638EEC499F7B53C2CC5774EA7A7F024C4CABFB93D9CB1856A
+0C671A4ECA7C62EA5242648A84E7F3AFB9547A0AFC29593CFCE6D8B873A78157
+D337CABD291431C0A2CE1F37E0CD7340567AC206FF98E4B5A6410F70F750451C
+550EFB54AA259A1B236CA9CB730D2CEF125EC65D959441F7CC9768F777B44844
+CC9842A307C72B740680ACBBF6AA35FA7A94825069BF7696ED81A371A9E5475A
+9D997F2DFAD339AADF797F7E03E654234455AC3D17702A420EE0A597BA31BDE4
+FEB8DBA7C61D311CC90441A620164DC22DC2D373973EF84CC553453AB1B3337F
+7B39983B8DFFB3A9425F119B45C1CD37A76F905777B3154CA6200792F1759D06
+E017890F4041A385F2238E3C48B6C8EE6F5258463FDBFF7AC762F6C4363926D6
+50F004D473B7B7F73CA686B559C2885F1AA761653C727A77D73431E9D110E76A
+2E55C68CD50F43997C9B2FC4710F8C8540909829E215678E63BB8363C4B8AF05
+9986102BB36580D9CA95CD216B7C321822CB41B2E0422CD077F3B55E0246FDB2
+44D5976F67296B5B0BE4B06F6E43535C21164E6C5089C3E9BA2D6B30888C57DE
+49DC8D9D46C0D5EDC47ACF2C03B72DE3B69512508539019B759280BABEA12BC9
+385308A0395C4CD33182A10A5A229743379C2075D82D8BFCE4A66E1AA087A091
+8F5372684FA5037D1B92D50CD9CB4F50AD4F8EE7D51F1C9E63C721CB5B9BD011
+6F0A8DD4FDCD2B008F223A1036D90F0F3B252487DE7898F9AFBB3A9D9CD49E0C
+EF4ADAD5155A98D2125ED5A3D3907F67301649519419F33CD942E8DDEAC1BDA0
+E90C431B198F646766A8FA9F8D1561B57E126EF604838C0C1966655CF31FB7EB
+C8CCC434FC1C96046D38203E1791EC824A3D7AED85C029288D4608CA7668A2BE
+484C99639F121845B22EEFCE0A3B808261921AA042AE19E641769E91277BEC29
+4594082CCB3058F90FAC4A700A8A827ACA00FCF574ABC8EB7DBCECD97F2B22C0
+0AA19E8739B81AF8C6F621D69B8E6F29BAE233FBA655A0AF5BDFD7F5C6B9167C
+6BC7AB693D45EF2AD999F5DA3CEFA39BA48A17EE6D9F2C4DAB91AE3F0044DC3F
+5D5506CE4675AA928B0092D6F173644F91295216D8BBB14CDDE0AD524A4D545C
+1B5E284A3BF0396664081CFB4F186A84A0D24D61E82F4767C1E55A0642720CF3
+909FA1AB8EAB78030B59BEA067DEDBD2F1D0340E790AB2777DB18248521934A8
+BB38A58B7F633DEA4291B0D5D13E9A882C974697CC6D3B49E030C94EA29B5506
+CC29C44D01B4751B453A46A9F6BF3BF135AE87A4CE232AF57B66578310DE41E0
+2A6AC422117F1963C4D7CC306BD25A6E724E51921779F22F029733122E23E2F0
+CB340008813ABB104380C80A492B3FC6D0BB07CB8D8409E9576891EF6E5C9D08
+EB8320DFA31BAFFBD336D0C2BBC3D3B2D30368B9860768FC080D30569C7F7811
+0EBEDA2962476113625EEB555490B8CE4C5F99D74ED10F738C61854CFF8B41C6
+9402E56BE8856144A1A05D0B05F4CB7EF728B2F4F5A439F18C3B68CEFA41E59A
+D8308ADC92EC1289DC84CF48D2CDEFF509A145BF945E1E00D552D329EBD2A7C4
+21D58082CC8FA790E981F4AC8EAB99950678FD3A7DA3DF13778681B208DD71A0
+7C3CBD0664B37C9EDC6B601D79A2C51FB54DAEE849F93209793849104E722D3F
+52DFAF7047EEEDDFE744787A5801E4AC2C3D58EC5DDC15FCEE03990C53B0C57A
+FC54F125A04C8E4A0ADAA725808C587E7DAFB9F784FA2875689979D316DC22BD
+AA36B306A1ABCF907B63C6476737B746099973CAEA8C1E2C5C41F27E0F7DE8D7
+F0D942E34E92F43FE902653D4D2EBB6F3B9F7928B1550A82AF234D45D028F429
+067652BD3D391BF423AE72B9CB1E8D91E898161BE3A7849D456A861A2046711E
+E934DC59442AE7D81661CE8EF727D8D7DDC0270E937E40F896AEAE6171661431
+C1025C53172F9D366834BA0054FBFD84503FBAE328B6FDEA180F8EA35B1DA937
+5CC3B8F00C206908C2FFFFA6A7AC6915D15EA44BDCF29E2BFCFD4A849535F19B
+0D307C696BE8205C7D84B9C77F02EF27D911056EDBB4080E4D3ED72788666CAD
+CD91B0ECE27A177DB23320A7FA9C31408B4D02D2A4B1CC6DDE1A6CAC3D8EC1EC
+2226EC98E51046D1EC26FA20EE62D24747D83CF4941DCE5CCEEC0DBE387149CD
+E05B19FFCAFC0D117F9A3E60DCD4C815228D98EF95EB559AD0ACC0D50FFDF714
+56C3C812EA5ADBB013BBD956A7C4CC0ED7D3E25D5C9AF5E626F18297F75D4957
+F5B0B33379114B903FE98BCF35C3FF76FEE1D9AEB711F2962276531F7380EE3F
+E368720E0292A170A15C5539B1FC7BB954EE2624B504CB8C805B8D31AC38307F
+0513606F09211AE64DAC447693B2A0AD15E9A64C34F5A911ECD0ABCA90E9791D
+67C6BD202B0858EF96E7722305B8AC02B01AB1706CC6AE875A8DDD15EE349046
+EAA65005E7866B506EDFB7A5A2AFD5C9E9DCC821A79EE9C1EA2C7BBA32A40BC7
+CEC26DB1AC473C8C3960ACEC581B37D6569E8C8C42950BAB7930B65E1570E3F8
+9A7FA719F1DCFDA45A3BF2AAB32C9A93BA3552608A61C623DE59BCB346E87EF5
+9CF025A87803161221C5C1C6F6B3403712C76E9D755C7BD68D7F2DC03C14CDF0
+C1BBED1D648B905B4B17037B7263C1EA7A7F06FAAC4E09E08483A8D714C19861
+327CD9C32DDF850302DD6DDE24912D00C22ECDF3CDFB18FA831A41A7488EC203
+F564CFE30D506F0829A96D35A7E09C3DCD107D589B627A15B55C5D6649126BEC
+60B88C55ECCBB4E680265D9EAB4CE22965D3B1AF759B01ACB0D0E6C92B6B4EFD
+A81E6A648708979487FC591CF09631310D46891423F4EC159A73E30D8DD147A4
+B0EACF6D45D18CD16CEB8176F03ABCB41F2234747B9733C8FAF34AE5D43D3BA5
+0CE0FACFC9B087F84FB6C68678BC6E76022B1526D6E5B3A48EC1A110BD75F45F
+1C4DC6D39F254976453F57DF873B7D635C80C42026DE020E5BAFE0DA0D54D1E1
+DC634D2621BA184347E5252F645A6A1DB7657C48124186F0E4C644077457C24D
+55753C651A9A7B6349867641464B515B821349C795A645420508673B93750D0C
+7A3B33EB1F09782033742AE8F3A23FC02284E6C03818FADD1731361542E3FA3E
+75B8D52B668C3E18A4AE967D0FC3157083D952AFB8144D549E69EAAC51C279C5
+E5D88A0D9D53013DFFB4352A1598FF84DCDE6FA32FC377306B9B92C0F96EE149
+8CD55E7B2445B86CCA7A547FA732D52D59025129FD8C6333AC0DF4F0CFF6287E
+F2036D5DBBB3B91B92F12FEBE0B61A313A4DB5A9CF0BB3DDB781A56FEBFFACCB
+8CB9D1D3DBDBC4CB6AAE6769E470582403CB920630221B68BCB625CD4605FA8F
+D3D5B7A1A28D15E44B38E92E906C138E72C15B86F64C38E23BF0440052A8C914
+54397F49DBED99D0AF7CEA3B0A05FF37C2D7EAE1412567E6776333237C31E3C0
+49949EC8BFD6E0F6446CE2D4DCD2C1524A288818CC5D159BF8463A847AE4A2B9
+CC8C58F822804B81B13BF4F2DEB6229C4F51F093075581791D02C36A13B855A0
+34900AA7CD4F1A797652656FE3A8425A38F421C4CC0ACA1CDD44FA6B31219276
+1CDE1CD63D6A58CE705CB56CCA1260F9B86E989019071563A9B4C274A87558CA
+6EF1660D574EDA276801F0057740E2C3B80D253D697736484D892CE1AB128B8A
+DECD69712F5E70E895FBAA927E8194D792A04AB6CE205E04E38A433BBB793FB4
+E8BBC4279D58A223C6673D909D6AFECD246E66A52F4CB35E5931D24C828489BD
+4ECAF621A220D8ECF702BEB01C4FC7510197D3F6D15321EC87175ADBA6434ECD
+2B5A306E91375CAD22CD94301763E4A8B981472890422C5488FCD523C9CB17DC
+ED22FBF12D5F7525D0D6BCFE8CE85B0DFB1D6F989C267FFBA0A996D309E4A934
+3DB54A9D29C88B9D55D7300DA3D46419256C5A07A2A529A8DE8BD1727281F5FE
+97033D861E0531B14E811378EC1AF1CC7EE9BA2B07D935843D3053F673979F8C
+FAFD59D555B56CE338F606747238B22BD62C42BB7238FEA335678D474A643570
+A9E7B4970E8C541CE9DBC7BF70ED7BA33639D6744A18379455029E934C95E2EF
+639C4848CE9A0879B51649FAB023A71782444B451F92A34CB8A124270CCF86D4
+D18EEF5C1D2B2A29012613851C49F50702D63BACF95EE2AB4D72B375E0A62615
+E0991E130A67ECBA9E05329B740708F1CB148724C3A6E5E3AEC1F88EBCA398D2
+1CA8827C977D72734310233176D1AE26C55CF2CEACA62223315C28FCF6305C7E
+A22414D4739A059F552F1F9372CCCA5FED4F9AC987942848EB498900269511F3
+F408CBEA0659B954F5F1B18AE4FB270213646F9B28AE4439D2BA2D3E0AAAA780
+5E530E4EFC8A060EB979E12191044509DA0C14397AFF949E12DC970658D5EAF5
+4EA963F5BC1407A32F3837CA6A24B7F3D60EB8E6222B702E25ED903F9D21AE50
+664A095009BDEAF4B78DAF94E5A55D48366CABF07791A1684B2F54EA69070844
+4F031AF8DF416C2D3679F8BA038B0DC9DD0400CA6B34667BCBBC07E62C1668A8
+35A8C57C9048A7227E672E89681B54D662079A189A9E96A3CA96D8DD10189B04
+1DA49BA2729F1CA585B1BD5C467295285D52E47CA904235A1A3E48EFAE9EB6F6
+01374125CE89D53C276858668CF45D2F092DDCAA52418E0BB94C2B8266B4D88A
+5D911507BB1DDA3D8F6E7C14A91CA11AE799EC42E993098E18CADA70BD2A1D82
+2C39326C6E3F9E84CD9758B9AE43D79BF99E6A0CD713E95B3D9B7DB90D127DE0
+DAFEBF850CAAACBD860B5DEF2082F1ADA64B44B193C4A1417BE221FDCA36456C
+BE5934C8CE3ED55AE3A11697C2D682B7D0F72D48976451D205783BE25DBD2507
+39C14FFB4BB828DFD187104F38A7F11D5F0698C11E8C1D4F107CACE573FDC4B1
+C56FDAE47024D6FD16A2FEABB434CA320300FC4B6C1B6CA08F76C60B7C08A665
+99F404DBA8A2A1EB18EF6750E4EC186E31561A3F080BA6562967546715859481
+7BA782940F5C5D06626D6F6A412CA7C13820EC7C1DF23E15E5829F698CF617BE
+D940523E4EE4ADECEC48C24297DBAD528BA1DCE7AC335A1D15D55415B108EFC8
+6D45030D27B3EA63B2B4CD771DBE66AE0218ABB1153D4B7482289D1313CEF184
+5C960B1E3C3C953912CC6F4521D1E15636C1545EEE457EFB87B88C9E43CC2F38
+6BC4BC96969F4FF28ABB06F4454C01CEF1B6DC538F1E832FC1666D977E5A881B
+F72F1B4C7DD4BE167A5535F1163A0706F9A0B26400178DF8A128FB5EBE6A7B81
+E478AD183EC06622B591337B9F1872AAEA356F4FC67EE767B34CB5A4D90702D9
+39FB846947F4096FB3DCF16EC81455164783BA0B5D723060DAFF411B68307E81
+7BEA1D9A47A5AA3D648E618C83C60F060029E6EC4D46B045FA7415BAB2AD0AA5
+ED9C729C24136F6AF61E6409C0B5CA760B16225641E268A68CFB8260BBEAFC77
+6626EBD97195E77CAB425CFB0096D805D9EE699E41680D095AE9FA10122A7882
+2F00F495C9EB2102DF0D3E61833BC0A2E468C5CF7AB430FDB7C0BE3DF2C0D230
+1580BAA25D65F599378D873165482A1FBB224AEA89C6BCCFBDBA42AE1C5DCF41
+06969F585CD3B737D1388D6359F5468D88FCD2279BDB270F6A858FB7D2ABDEFE
+5EE8FB79FA437F8F50237B92C307B73B0DCB808D07A9C3255CB9B3B17039CE5A
+288103D05D132863FB522A02CEE3839EF9AF7F07D99732F0B8B384745369FB3E
+7901166478F4A16076A1504C5E98D17408494E270BBF4470ED12B4332422679F
+759F1D93984D7E506D16950DB6C2682FE1379EFFA6F6C95DD71F6E55BE3EF6AF
+E0CB25388EEB436E6527806FC75484133F6E561DEB979D5C1FFEFDAF2A6D964E
+03BAE0BD593C2992AD84569C81050F7A793C5263E50C2F50B98C4CC703EAE17A
+6AEDAACE312DAFAF5278D125B6EFC5587484F61DAFF46B87B7C9B1EEDECA4859
+314A9A9E2248467DE1E54D90DD671660B9040B3E0DD982260822177EFD757266
+74A16C83A7FB168016A320D3DF3BD7726F1F4EC90EE5DFE810C96B099FD4368D
+906AE4699049EFD37E8EF058D4B97BF71106445AADD4FC6E90615A0066823A36
+673B8DE32322BBE861AE251226B4385AB28702831270DBD25D666FBB0AD7B96E
+A44E891EA1EAF0F87013AFC982E33D67A28E96E0C9CB99B9E4192536830D9901
+931A8CAFA41289633B20BA3BD7AA3414B6DA8D57CCF2FBE39920CC06361F075B
+CC40335DB9A0071CFF77F6B7BB47F3100DBDC9C4A58C2B81EC99E8E966AF3390
+E3FBCC28BA1D79961C8A1584266454DF772FBA99664D74D4A89FC82FFEDFCFE1
+4C9E4A04291E803D142E37E7ACA66AB279378F2F192FFB2B5BBAD18B95F03136
+2CB594A3D6D3F8576B90A6C4DAD6D6C8EE07AF682F925F01D0B26CBA347C03BE
+F3B0585CF4539FDC66915E22117078CC94D621F31DCB3E021998A5D6EE94CA4B
+E214D07517283D56973D8E4367392BF6C1150DEBF459D141AE0941C1C8C5CFBE
+E735D796E365A1B0F60BB4CF2801EAFE4889EE5F338D3C4885368281B3C95CCE
+251C28A90D318A8A0384439B38D63B94757252062EA44E88509FDD2E75FAAB71
+7329622828B2785C1A8B26351BC74237A6BF99216652ACBD4CCF54CFC8AC72A6
+46342F1E32D4318E7E27C7B2DAC943B3E72C472FC6F1DDA8684AA922516A672C
+E969C047E318B5E3B1270C1BEB1C4071A15BC81B29B268C679B41FC5E381BE33
+DD95F0D68118CBB60C521E5CB2BA46A10E50E9238163713290DF6DD8A594210F
+B5200157C0F02340FDD61392BE9B0D9C46C1A0C4A3AB05918672D6D6020D3A88
+8C18A08AFA6BBD8A513A3C06A29A0FE923ADB6F9996F3516967E5066FAEDE5F2
+8317ADC676E012A737EFA5B743C0FEDB224E360B05D089459F860F97BA62BABC
+E86CF3127088FE3ADCC29BBCC991BF7A13A3A5BE34409C002DCF2B05C095A01A
+12BBB5C8F3CE43DCDA76D261E3F7734DE2DB7D9A323CD68D78DB2A5DFBF469C3
+D02FFFD3B21DFE7CBA8B9C7F438CDF8944DD5A06583A75079194054F8C06AA13
+1698FDF6B55E5B1B11C5AE8BD7FBDB7BA6E90FDCD1802F2EC862FB85A143D7B2
+99223ED8525202C26A53ECB0894A7A3A64569699C1C085B3CF6D6F6130C45C7F
+D74B5E4EF480988AA30EAC8CD07D10E5195B7199058C8B8EFBA9F66BBECEA137
+33037B3072C48E8295A2185EB3B83956FB26033581A702C8A2C65FEE3EC92CBE
+4FAB38A2F5BCDA2F6F6698E3A87BB14E848E1A67E3FF1DCC92B85461BF16C111
+6D3A59FCCE098512A2B17ACB186BBCB369B984A363525211D9B83BA91C2B1EA4
+3133C3CB489173988833DF780EBFFB461090B51E5C6454E4ACEFD98F22E80F8A
+23ECAE2A7803B9200043E29AE21F7EDB5D73EC2BC7EFEC3468C239A1E1C5A2F3
+B6A3D13C41A83DEBED0BAB636582D103823BEAC6FE0A2813A3537BA69283ED3F
+0C0341FEDDAA7255D53B115D445AE19E95D61E5F1946460795E0B5A94924ADA7
+7EBD05D099BBA699CADC3B92D7A33916E7DA8A03DEDE4BA2E2353BA2E00C2846
+4EC20BB3F5FF353BA66C3FC64D1CB02A75801D725C68FBB83A3ABE8B6705CF4B
+7FDC6D666CD1F6050A1331B67D29ECD0A841759F877B05413C8CF054B8F7EA6D
+A6CA92792B6306666422E24544F41569DAEB20C9780998392E7CC944A387138A
+1BAF65D7929BE4A78FCB9B17DD352F102CA273C3777B1DE7FFF9453F98FF18D1
+469FEBE75A8F761380506431C98690BD9A8263ED21C33B62E4392600C67408DE
+17270857F718726F499E15088B9DFB573C2544D85B24A7DADAA627B67F74CA60
+6671CE34FB84E0E5054D332ECD422011A3968D9FCAC28875B34AB841C9465B68
+94E0C3580377428346B9A6E413A2FE50268147B5372D57AD11EAF6846BF8CBCC
+06AA85312B32DEF5E050E7F5707B70D7A941C0C5128D1CB937EF1B8922BE637F
+B99B74C08A63016F79C7D0E3BB00B59E4DFC3BEC0A5752A55C30BB96EF977EF1
+3D74F26B49F38B008AA278CE7A17C1064CB861B8DDF46D3F976E9A138108F567
+73611D99EA92C45C2AF926328E572CC81BF847A9649BB287AC03A02FC39172D9
+A3B4D22C3552E70D0778DF32050E21EA7C1024164E8BCF21453F5740BC8CE2D9
+5FA1D83DFF03AA11A3F41A52AD8A869A943E10D3B88AE27872DC1A111A2CC5D0
+D22DDE2211A1768768D62E30EA2A6F04A885E1179E5D7D631553464D8E7F1244
+B20AB73C8E70D8028B8EFB5DA46757D6B2CC8B9DC7A715CF4D65DB212C75CF11
+9B035A561C37646509147A62C56CA67AFD7379E9A64C0A173BA6ECB5262A3DA6
+2F773F744861352351811FFA1C2C67672B1D07496159EDB2A507BF576787E3C9
+19E2D2EA67D014FBEA508DB893617833CB27ACEE2C68FF726EB83685DD343ABE
+7F1DD74D8FB8B3BBEBC6AF7B9E7376FF7C80634400F3019797803D15F7C2717D
+782B4A8F898E5CBDE7B1BE081D84FF3E1C152FD1DD1AED48BBF2B65F5D053BC0
+D4E4F6BDDE8C69ED7F226EBF7B015035ACDF873345295B95C0C2692DFE5FEB74
+75E396C85116AEDC3450CD36F6027A26FF421B7C76846FEA3F150920EDE891E3
+64C4018C941D00F3908FEC9886FE82D95D666A1DB9213C2142AE6A0DD538EE95
+B00ACDFB8AE654BA77DF6B4B1ED161ECA048A22AAF0790A3A4335C6936A302FF
+29D70D2DF8C4540D8F2931F7C9DDEAC00BC5F1703A6A87A538EEB1A68DE6E3D2
+647E7B96753F04AA9CC6B5DD5E845AE299DC558E640A87AD74EF10629CF54972
+B337D52BA0C29171B40EDB5D83BADDE664E20C3EFE02F98191F59BC909790849
+4C50597F58D1AB3B9AA6F64D2E64AB21C48283E4F6ABA118427C2B1B922A8755
+FF7C343D1FF764ED045DE992420B6E41E04B3165928EC4FE4412B62D0B208379
+F9A590E9A6F018794E1E12FE6F8C7D46453D48CE166A0E4EE6272EC17DCE6378
+8A7F2D6F4C8A91A4B090ACD28CDE453EF7A4E09DF6BF945907D0DB5F68F2D8B5
+AE507293CC89CF93CE7DFCE01084364EB7B77185936FC36C4B81E9A422773DE7
+5726823F4E8813BBE9220E47A90CF0AB516D27B71056D018CA5CDFEF040E4E7C
+9AC97CCD001D3278CEDB46CE3B822A3A31B497EACE560837EF3B38F974D988A3
+297D145E05A846700E91F93CE58D2958FC25DFF5A41D1A27253CC8C46BCFF335
+C364E2694522E7DC91D4F8B7800A0522414A4B87236FE7C631F88A6AF329A924
+C24FEA8A983EBFF4DAFD090B5DF8F39618E4F5728198D28B61407DC8BC95BCDC
+6E60808A0DDD1A32AF2875AEA46513E5374748D1F6460310429B46221987A70C
+B1E2F46212BC84A663DBE4E3FE7203C192530F70366086C933F2B0E30FD08BBF
+113B2ECCC7E8DC1671007D16FE6CDCE1CB0E8D031B7CE9B48C79779A8D3A589C
+1D7597C8DAC7BE2803411D65A70EAA178D11BE7F34711A204432DA217576D987
+1BBFF285951D7C999B88588E3B5BC7D230724D020383312F0BBFBF534E0FAB6B
+3BF6A55CC895EE51D20A0B4E1A01D812B578C4992EA47CC711D8E3EA8D9DEA3C
+0DBCF7C3AE7C980298636BF4DC2C542897FB1A6CC655E017F4F84E7F2A384055
+FD37C57572642B097C7E0EDBD2BA7C8586E9F9FD8153E82AB6763FDDF2AD9E3B
+36834ECAE17B59D7826E1531AAC0EDEBCF4AE7800A377ACC1BFB05E63EAF8CE3
+2BAFD896869475E53AC2AB7524E61DD2942AD43C860C2E7ADE428E0F49509EC2
+0731E2045B788212A7A9B35C18321E48945878C65790FF090C3356FC56235751
+61086B3E6093C28D1C4A05C67C67443E183694A297E8871E3D2D2317427C3B3D
+BA222A6844CE57354F98EEA5105C5B9E8138A8207EBC396DAAB6B82565BCCDFD
+0AB8D0EC87B7E48F2AAC5410506F65F0B339C8039D734E331645C3CD95832187
+0F411DD65626C26D1DD0760142E421422A6AA0D1B3427F5CAF18F94F8B675A26
+DE2FD9DA5DA035B2D10A9A4FAD6ED283525245231B713BA8E7380A2E1640E7EC
+B71D5B5834FDB10EAF87B09A7AF097E459942104838C99D694C577F0E09A4377
+3BE3DE7A29FD7532F91A9C62497077AB3F324B25C81A36715087158259D02F0C
+8D585658938CC0F8B571B1E1995E42181F975546F35E4AAC66919B353D8057E3
+524C971B275173C6290D3195584997D65503C782FE89EB0BAAA455AAA18ED251
+FA5C69588262BB9E2455F1CB84E3CF354A675FC804077E8877617E4AF3ED8CCC
+18D370DC068C202728AE1221D729EBF16A3BCADDEF7C42C2C238301818A70AAD
+83533334D81BCB61F40FE6EDB0342D81AC5FAB607DD62BC6662EE893FB21DE13
+063B0B40B5A024A9312952A5714BCA85FE11E8B6D09441415DECAA00DE3FB459
+406F5D9A8092E19E741CA2424948EA7BA566C947DAB9D28B98AA77D94AEB0D7F
+7E559E5D14B957AB6CD3FD83C2A4AE51F3DED2E513B55DFBF200B3B3670BDE96
+AD79AEC65ABC45CACCC6702EE62E2102F731059CC6166D463D2520A8FE6F2AF5
+B8435F3183478991DD7B6070D4AA2B33E0E72E94703A101ED59219678FB9957C
+3815AD69C3773FCA071963523513DFEEAB6FADF7A20C240385A988D023C97DE7
+09DB24A38B449780E6043E654B4B4832908D618E8CB4E36CB918A84AB2BF7ECB
+9AE457FDD2A5D781FA1815A34FF56AE74AFBF4CB7B2601A2108B8F1EC81A58D2
+EBDF651CE36FFFC300A584272A885A57D0845304511A9667218DBC8A006B6F09
+C26FF3F067A35A3E4D6104C38505F2F5E5B0103A0248FAA450090BD92805FDF4
+956D00B6C65A1F6F8EF6CBF055DE9B8C3DA401309E9D1A5F8D5B9C42E381A9F2
+28DD10EDD1FF09BA1D93E77B72C4FEF856C8FC9B3D92DDA6F2D8ECABE36EAFA5
+B8A1E8A4E4089EACC7AE8F9047C5FFAC46B0CF34B6EEC9B722C2A8C620F9C763
+70DD8470CF5E59897BAF1B7CDB58D466939A23D7A7D526FE1F651134A759F66B
+F1976E1AA94CC23F591C35DAD1318AC66ABC583FAF26296173DC7C6A224CB9F4
+24C14A8A6E8D9F089A71E2521328AB021845DACE36C28E1AA24FAFE37D97B3CE
+7C8AE13BDDBB8B1FE58872D3DF56EDD7BE1EDDA7DB79C3028BB2F198BB21862E
+DCDABBC23CD2E06E6D9AF543CE46DB6AA68109B74D99684BD18F865B2C9AF712
+7DE56C139D84970D597581E20D48CB129A9967903DA8926B8366801B78120C53
+2A841722C41D413BC0BB84E7BBC73B21BBA3B43CE9C7CB147A073EE1EC78FF1E
+BDBC3B94302421D3C8D9F089DE08A37FC7B12A57D02E45B86631AA21BFCDC7F5
+6138D4C8AEB7ECDC02797AE47E051D86ADCF3ABC86C9A6F2F0618C34FF81971F
+5BDAAAC37F365F08D95B51D6CD33C7DEF81E249A1CD8BF3315BBB79E8283707E
+139A775794EBBF6BB125CFFC5D6A18502A4F13F66CA144D3F656D3709D1BFDE2
+A1FC44B07134247E80BF210457173EFE017E4A14C915ECA8A4FD6C0DEBD7C06D
+5F972EEA32C544A00237F6F3DF78FADE7F7D2840D0A61265DBBE995202A4ED16
+1ECA174F5816C5D4B4B783C95AF5738783BF26F5D4B9378B7E6D447B7E98070E
+8CDFE7361DBAD5CAFAF58CBA1560AADE44FFDCBDE273152AA2613C814F503335
+3839E6CA04DDAF325D9C77F07CECDFB57D7FAEE159725480EAB33F1BCD394FD0
+0F15F0305A3E18EEBD47148FDB94CDB1B7D7DB8E025A980F601874DC6D71D184
+6F90DC32C602B958FB9BE1D3F4B1CB4B305A6E7269C9BFD855E633B7B94471E5
+56FEE2A16E20FF8FE9E2AE3240A144FEE1C0F114E78AFF93F84F716AAF1B8A4F
+9F11521AB3F53C5863EBED83030D195ECC09C4390FEB02DDDA3EF0BD7C0C4438
+A253C0C699303ECAF1C7382D337A5B9687F9E6011DC78E196FE2B18A3B38EADC
+468E33C629D3D405DE7D41FBB12CFF132CC6D9802D70C04F54B628A8E9D41210
+3CE8C6862843A8E083EE10D7CF9A120FBC4B69AE6C8380EB4DFB5507663ED3A6
+9C2EE8750CB9A9AD22A1BF9186B8220D8B00B019B63C2B7C92E164AA60EC4DA1
+02B3DE588DC27099DC81743D9805326F6B42CA06B677E7D4AED20EB63AEE3B89
+BDAF1E8372CE1884FBA89E7C83A21808545270C76ED1649F89A610D9C3189A7A
+F2AEE8664D6AD2292F0672B3C89C06150762B0A4A93543DFF3FA2DB1962FE0AB
+48586F6AD09E6A04C04CF8879A65088C734F4837A7DDE145660A6BF36CB51162
+C8BC7BB28D64C64E64F862A44A12AF7E385B67CC99A445F7C000107DC9A56E9E
+D49369C558C02E96A3379922221AC791E09C06F19FD7DC64046726E70CF9B505
+365BB9BA797CDEFA19A71E23EEE381884D257DD7D8027F5EC90069EB8ED1BB95
+B7255BAFDFC93CEC8E6929F7C0EF9672008D9714BEDD9FF1FDFBF0E080F39ACC
+3F80ADEDD55F3B6886206228C2D8E2F35064F743BD93BCA569C747225DB89170
+8B5EA309F0926C8B32814734F7B7C2DEF626D71AE7A754E49795D8B75F9CB234
+CF70DDAD4AF5822533E1EB542CA6BB99DD66F0775350E1F31131A31852F51282
+040761383E23C17C964585749E9B2EF0EF5EA748DE4934730AE43447E0710955
+51275B6F9C1A612C6604D0B1D09B26A9FD62C9E9520B704D434B2B16DE427127
+3CF39110004626B8E65C44A7119633E1C94DF3C6BF0BA540D46D66C9C8CA72C0
+294122048FDB3E7D50F908F5AC104D7EED52E81090122BDCAC47894634F2A92A
+338EEB3504228A6683D44B68FCEA9DCEF44421D9B8E1933B64C065D728823DFB
+5DF70DE1D62376BC15C4B6231A021D48D84AB753809BDAD72E532EF43246D1F2
+88EAA7B4A577894983E2747B0DD70A427D6A2EF4B42E3A977B6A7D20CEAE6AFB
+21FFF39F1F2A2B2816714AA333DCA04FBAD1DF20503F4EB6E30CEAD47A346E3A
+69D74D4BD0C51B54B5C76F605744C65942B1488E56C7182774DD7B873C091DA8
+907DDC326CC361D6735C5C0256FC2581381DC4EBC4AEBD8A340735E0C7D3F2C4
+59956D4D1BB973F1DB6D590BA9B942A7AA5D6310397A58F79507103371198F7C
+F0ADDD6B002669EF881F2BBE64931622054448851FB5B5A0E20357B73343BFF2
+200944A9EB6AFA5A9198FD434D039CDEE4BE3A5F90C3B3C9C61BB9D7559B3DA1
+FAB002498CCEEDAC579EF01AF9F3A58504C9866DD6FE78F3C745B28C3EE58781
+B59626ED00F0C64B051D830D54CA9B206614ED68AECCF02E259FA03FBE3ACD54
+17ABA540FC8C16D20FE9B4282440B61E60BA0FB686DC3E307C59E4616A2E9B4C
+62CAE7530030837DB88807406851D67B374C09EE1F90AAF3A78D6D4A4492FA91
+C03B19304629F180A3D7E8EA917D5EB749331ECE83A0D6679955D12D46C9DB1D
+E0E4EF9C3FF4E1B6AE4A22F7C759A8A16B3080FF201120F1B09244D9C61620DD
+645DA04D43142261E58D3A4E684B0D3AAEB46A0FB28C17455CCB6FE9ECCB18E4
+457A388BA0E9C9466DAB3F62DF10A36A7C95FD2F0D8E84DC97D4CBAD7F8FE89B
+88263B87A9C04523E02B97D7C3FCD336345A87BF9A147E4FA218F5F18D0F3960
+D957FB484159D578CDCF9E21F257DF6DB79D6FCDD3D00F6314F3BF77D449A278
+AAFE344806DCAED6B9F512920977BE229E81F8FE22B64F8EFAED62766B8406CC
+EE84C8AE16894C9EA54E66D32259F956C74A25AAFF389346BE698E6A75A698C5
+7558B5F25F8D98492AEE1EAEDFEC5E053483FCC43B40694D0B259663C5531E95
+7F82B715E9B12F112576B30FDB8B57155DA438B145FE2671307D0592B303E523
+43A4D6725C26086D10AF33E002134B0DE92FA5C6DEE4982D3DAC7091CAF54265
+6AE560EE3384DC844913162E0D81185C1BD361883B1C337AB58DF4FAFB3C6306
+9BCB8027578E528D56A6FBE9F300BB6488DA83AEE916EC945D7CD774142580A6
+41C27A736CAC86BEBD5219BD2B40B410A9714C0C91B1881269B76AEC48D5741B
+A9DF610416EAF037FE96CA7B93776C88A5D93CC9B55E7079F2430D89AFA44C1B
+E71A7854FE3B7DCF1D7BE6D54BD8262055FB34817B67CB91B5961C260C49AE68
+27775133A08D6B341D7B75B64A0D260C351F7343B7FBE0EB0122FC9D3AE73FD1
+C1C5756428C11CDBF394DC0FCFA3B72BA473F12E574C98A9C8144417A1CBA749
+2C0154C5AF36AF937E6EB3E471D9712DFC5314836B9F9B4C4A4400490290E06C
+D0AE99CB7C6184FDBA152E3270124E37EDBA3F4CE0479AE06A07D6D1027F3257
+6CC288D34AE33576F354A66710A4CBC322E84F2FFABFFFDE0060278930BFE762
+ADA6491F26CD942CC271A40E951A115A4A7D8388AFDD7784C6FCBE80D247F43D
+DF6337F61FFE758B82718300E425E31F46CBB6215696D82B1221FA9DD0248B67
+611A86380C0A94B886E4DB890A43CEDF5D6A64C527F895BFAD8BB63A5A558B2E
+85512CDC3BD8B9DB521B98E698A3E1FFA444CF16EB6039C42E949B78B813586F
+207536B44DB02F130F16BDE54971521A3283068574B0ADE05569DA0EBF4CC461
+A26FECBD8AD5CEEAB3B2B8287150B29F7A4EA4B928D2F1C9BD5BAA085732DA96
+AE1AB11D5FDA1BAE8A983BBBC07B9F76A76685BEDC0665E48556F058235DC523
+CCD37A78508A116822E9C8A2A7502D4E62198E188018FF1D85151C1967C4374E
+F86AA8B4FFFA3BAD27ECF9354C651233AF6093EA2D694A81FF985BBFC01F0A47
+679796500067E65955ACD37EF34175696139AE4A7509BD62DC3493E8BF497A57
+0E7239F7AD462E888CFAFB967F6C562CC971B0166E6653CC1387F94FFAD25F4B
+2EFC280CEB1BD4ECFE160A581777226F51E7767A10F4C686C51299D6B8C6FC4B
+BBEBA44534FFC12BE42AC28F203656A25696D1B58C3A73CCE75BA3C5DA2A9F0A
+336189612F25D0B9F8E838CF810CCC1DEF50B050DFFA0BA45220D5FFB6B49943
+3CB0FF60137E1F3D12673789EBBE48D72DA84F1254847CB5233B91708CF001EF
+C4EB320B4DF2E0834DBAA6440E04AB68B7B21E4B974E0C2CCB03CFB954147330
+F38A532869452FE640874B33E1A72049F253B874E475C9EEBB68A81E61F41AAC
+83F58B0066FEA92F31F246EC0CE2C5F1B0B251478B56CE35E812EDB26DD3F813
+7BE1CF2475F98620CD35239226E358E33461464B9DBCB2F3527638BC61BE2ED3
+109E5E4B0A624B69DC91AF1D00F77127285F72C28C349EC6759B0D6F18629B2F
+1ED6D58D9D0B2BB2A90288CFE30B93CCE8DCC297FC7C13A1C7C11F20E4658793
+243BD703CCB29BB09393911017A123EE58686994600BE9C927F944E584D4D771
+0356AF0E564686957D974ED8A3C86432473C775592B0FC05878824AE290576E6
+F0BDFE8A8F16DCE952D2B291168CD986856699267AD6FCECDC074413CB047015
+AF21BA8DBB3ED19B5AAA9AC81BCBC2332E22ACDCF110A34EB0EB16907FC7C234
+C234B42A33ADE4181F000DBEA4AF06BA5F2E78FF5AC28FF8E98A4B3C055C014A
+2D60D69EDEDE71B002B3B7B8A27A2BECCA54D654B87CD27A8E0E96B86A4FBE8E
+1579E0831A07D887017AC0BB39BB026FE08497F1D65E9AE6607AC517F2F17B97
+8F8F1523FF7F1EF2548A0FABC85CFF53ACC7D41E5C69708582428CB991A9F535
+44148E7AF8F1D14B074F134D9D33441B87314523FB71F46102B51AE79B94020D
+AFBB7F8F669995DC67E3B208B44C48FBBB7BBDBF0A2D7B3AC69261234D6EEEA0
+588B84EC1B72420133BA048C85E23BA487EBBC77AFB91321996A89156F93F5F6
+28A08FC606C5EB27975D4781610834943953D8BF31AD04F1C9E395A0ECD31B54
+CDC8106E47AC89ACD96ABB0414B5DD6D7ED1B31088F145EB322D386BEB9DA692
+19AA4F2C6CF43F6EF99D8D23AADBE6AF8DF13BFB98766C7FEFB79557EFACB387
+402B922526AB45367269CCA302034B5949E7C65202BF9D0DCD4047867DBBF367
+A6F1FF8BA687566E58C6647EDBC4CB37558267A0C5C381D44C7EA8921E74D38E
+17E10166EA6F512E190B2C91D3C630080464F1CF2F12FA57121E0A1B2681A16D
+7D607765A122D5D8846BCE69FC58625C75B493E86713333379E37697B2D94D3E
+42FD8D599AAAECCDA5E48A9B42A830A7D279369D1DA857A0B15168F018C7BB83
+6BC1D4537324016A60C69568E29057A6F0EC9994414083F4BFEBD2AFD91EF38D
+CBCAA59690ACA669827D419F216123088168C5EB51AC08ACDA82B519906D92EE
+938266B44A8240843D780E7EBB9ED86C8ABACEBA34A31B187E2979ABD14DCA1A
+5E0BF40AAFDB924DC5FC80910FD7205639A8BA0819237BF3BED500FB9F3EA43C
+5E6AD3AB5A37E02C2F2C98633C98E7B2E3437737D42ABF3D96F04F66186C1775
+01453C7DBBEABBB1068D030B6956326AB66B9CF7978313544892E2B2C5F3AF08
+47A1A068756CDB0585D9A0C5B6EFE85EA1361ABE902D3D216387E03283FAC255
+C1091BD8F7A945C1DDEF7A35C40DDA9C13E30FB7FEF134A874FD5E1E96AC5DE4
+8A85FC57335DEE136B20D7FAAFEE8D0A6BC4386ABB41BE77E249546AEADF4B1C
+2887ACCF8AE1BEB2DDCC9778678B58741D0E0A580579AE8199A341CFFD2B41C1
+6E1A3C0318BA1A3409AF672B5287FA20AFC13E656CB4D8FDFE2EE61528F6465A
+61AF81CBB8263AB33F47C08FA9E4D9E17A780A5139D18019FD8CA2011E667E82
+8959B30FAB048457F5AF43F2BB98470C94FDE464B6618CD94CE466C1FC3E4FF9
+C3E845754F4B64681B56DD4863746094BF86049823A59520E33A898F04BA6AC4
+5E3D7ECFE988CE5AD4C8F663C5368B8CCD01050557A7D7E00278A9FE0A15A87C
+3462C3F79DD9A8E40F49982468371A39B5FF7FB34E8CDDE2699F68F0FE2A03AE
+F0688D3524A4DEECBF2CA481F4432C1FDFFAF0D1E1E3466C97DEB6311A2ACC09
+8925F52CA7091A4AFEF40BD9C5A8652C95D8BBDF28AD0A55227E71E8317D0722
+9AD2325F7DE173123FB29DBA2F72D2B9CCFD98B70106F265BB7B63871B6EA903
+2D1898FB0C30619CD89B977CA658B93BC9F4D9ACD0BC4BC6851B84FF187314D7
+2B0E93C31616AB69F3BF0575F55652CABBDD48C5C8B4448D0A428A8614B9E18F
+10037663D57B362B78084F043C915B3246F03B532BC0565F05239C84E798E8A6
+449F4E74DBFB36339ABDA18B8C6560B23710AD64C828165E9876F97D8F848163
+85CB50410BDBEDF24E134372ED5FDD71D031264611284572775097788AFA6B5A
+71A5E46A24C42A2A7910F323971BF7FDF5631050EFADCAAB2F358ADBFD599D8F
+5D6733B5DCEBB1DDB342AF44E409478E619792EFBDFC2093B8D8C9F82136AAA1
+C54F2F501AA172E127061D1673D9BA9F85CBE9A960E850F6B16A918A3D253FF0
+F5F6AE49470234ABC0C0D800422112C9FC319E359578B2006EA138138093DDFA
+C2D233EBBD58C5D77BADF9E2289845B1FB3F47FEB6198B0A085BD4959848E9C5
+3C63E166ED3E465592A03E1FDB511D4BA371EE1591F4F0FBB45206656B9BD7B7
+B65FF730A2821612654D99466614F2BA8BC75D30E26C077F4F9FCD668E42D5DC
+A0BB9D7BB444A1E06210927D7662CE4066614FA8B7CA773C6EC17745CDFF825B
+7A333A53117940951B41965FC92126868E88120744C3E87534680DDE99C18FA5
+9D2BF62D96897ED220092B1318649937563ACE23605F129BF334B7EA44D321BF
+216766AF7A808D7DFC1B633BEE30C1FCFAEC7A448FCAB915236CC36626F8A505
+677610C3FC80276F4BDF14531E2F508B9FF66D78D738FA1931EA3167B390F000
+E6396C45BF79635590E561621859C86ED3F0D454E1474A646EC23C8164E86652
+4B33D79670B203A70B3F8BF31ECF6EA3CB9F8754C302DFDD8C77A96803AEA2D7
+F317C56C176B7315553BD594269F807509AF586E92379220DA095B6428736A4D
+7A0539F6383791D95320E2AAC66412F1D6DCE02BC76B734C494B02447B6A7667
+F7AC2CE8B45D0E182DEE296FED3F4AC8F7781024F0E9DD3F27519DF6CA7728EE
+0D6E0DDD80345FB565BBB020131C253BEB04CFEC1574E14F9F18C8F32A847E51
+E7FDD96B03B7A5D865EA49BC12F902146B2A7546E4B183DD2D4DC0A5E061136E
+8D7D508BCF6743C363068F5F4C66945706F8DDB2C45ED3B1314A9227283FCF3E
+C7ED1158DFBBF384BAC2DAD5965DE5299BCE4CDD007411F5F59F0AD9A2F87425
+B69F51BF50135C6A204BE25BAE93E669898E75C96840E24DB31D038CD86F760D
+FF81D1E902DF84D34C9CBDD6122ACC7AA28D7650BB7A775C3CCB2F153FC3BC22
+BE131A9428464FFC0EAF8C7F57EBFA2C29D635AAFFFF19AC53755D470FF4B7DD
+73C415FC1D778781F40217D3F2F5DC7DBCA79D094D560B81F0D242218F9D2A38
+4FDAFE428BB8FAA7DBC855F52BC0EFBA0DC01C83873E60B2F3C7FD91DC777D7C
+F5F283BF2B5B734868AC1DA079289C6155EF99C4D8E1D34C5BFAEC9CE9FA9333
+D1D8AF4B0DBC9D59A5590CE44AC9261F36A6DD2DD0881D9D50007F4B0894CF3B
+8C8272D0C4B3A39A80CCCAC27109818B5DEFA81C1C2B7E0A573B9B48838ACE55
+EF5161515282833E8150DEE8788B8D8B00AE4F8307D5F1D5246647C07F29424D
+5F0DBD2C03E3C343D5396F35C661939A7030EF2106A83DD3BFA4AA4CA658B9AB
+0D4A2AFDD3AD28BB125AE06FF20C75007F00EF8330EE3D8C2C78E3B7841FF4A7
+F3C4C9018C48E5AAC348541316BD645E277CD0B2BE8CF60CCC906A125C676875
+FE02665D04194838B7CA13F8A626ED8BF7C87F37B840676B29519BB8975D82E8
+FC0114B2A353E7CB529D48EB9F68D149A62012BFF52622286A27E8312A37A671
+F4CD76CEDAA937210F23D8BB98F9023ECA41D96E1A2F5D029233FD55AE298A4B
+D59A81EC7938973B7CAF060566C2C0AFEA4B59EDBA72528811AD64D8A13E36FD
+3F548BA5560FE471AD96043264DD1C23462DE73BC897B99D78E046BE1748D1E9
+5CDAEE3A435F4912D9E9B8CA93D797B1D2915CD76969E5BCA245A43F908DC4D0
+DAC6FA6A373DDFC7A08DB6A6AC588B7EFFCDCA3E1BDF0520C56754B733DD9905
+041A09FFB1EFBC3B3FFA6050B9332B1204653A14F6571253374AE33DA528524D
+31381899DFA1B2CF3D72C9B6BEDB29241634137990361EBA4CD5BCDB62DC21B4
+D5FC2B9A21CAF382C11DBE86BA81741F8BFF1766D22D57AB5F24A962B5DB12EF
+C7F42D88A0FF60C870BA009CB3BCDC651AF7B5A4BCA196798F6C605422D029CC
+EE491C2E183C9F2491BAD7BD1F2CD702EDC0DAA53B8E0D4A6B7BD8145B843F40
+FE06393577CF85554BF6ACABF57716476728E4ADBD5038A1085127A94C3B934A
+C68749266A7194963871D47AE608C69EB7EBAFFD11AA858662DB0F1E9E61464A
+9B0790E15B0BB16FC74A17BB6680117F4569D03738114ADC9C23CE8953D7CF05
+74EB3755333CF89A7B8D5B2DC855366BBFCC6E20DD0E32CF7389318C6C88D550
+67D148436DD3712469468D74304C04ED39C0D7A3F9FAA7821BE32C97A3AF6E3F
+1D8D4BABB4B3D170C275B93F054A1C2286F09FD5BF96674A3CA023AD072DA2DB
+CF505AF5D0B0525E44A212B0F74A48471A1F07BA8780D08E28EDF7B1A9EB1867
+725F569CCD4B09BDC0A547B3F0AA0D66743E29EE219972EF32D14C3E04098EC2
+8928BFBF73E85DA163D4F388A57A7F3C8F1CA1EBBCF18A5610381B5E02324142
+85C2F6FA9BAF812D1FB5C1F15292AEF35FF62A03CC28EB59D3894C60E539C39B
+A5613031A6238D169875846511ADF80FAC8DFE63CA7D74160D29593666B58DA3
+0B5294AF4C2D1135F843762AB3C422DE92ED98F877BCB00CDE1CA9CD5D8B7CB3
+036446C65D702EC1C23C309B0F337806F7DDED771449B3A9EA20B755A333EDF5
+F89B696A9B03BB9413517D90C39A9E95C9CB769F2BD50C8D5FD32507F8B56D11
+61CAF14D5E8868B61135D98F372B7D2186E3DFA3835FE62D8262E789A8FAF0C8
+0FFBB593FD31EF404E658912A53BD4064C497CB120B5FA0A6DD080BD11C9409C
+D77EB713284F74F51636DBD9CAD1B9E7711FBD335B77A848B05AC7DC960E1F13
+3E77B2F11F0E54E4AA803B3D7F1F78306A76497D04294884AD6416118340E12C
+45FD06D28DEE7C1BEF415FCD58DF2E318B41923E45503B0629CB3006EED8FAC6
+C210F4BD5A4413353CA9F51285DE8363E5F638EEDFE47FBFEBCBFD465323DA87
+108E47A4CF84EEC3A85FBC10B5D45138AC9FAB37FA441AAF83FBF7982EBE5634
+E6A4A48BCA7DF5DCF6967ACB622EA0701460B561C2E6D92A6ED930055B824182
+D5A5FD2764F1E752201F4FD676D12CD27DF1DF1CB27F45305D2D330AFE94FA4C
+DBC7EA3BFA40D03DDE69821DD4A92958AD74D36315852E7EBF2D219CD7C9AED0
+EAB86D5F25E476B803B7BB93BA7FCBE1D11AA2FBC9A220D80765C3472C790778
+260CE446D86425C94D42578A277FC4D2AFCE76595361E30EE9C1955C07199388
+8BA8C12AB248B94692CB459DA11AEF914DE16BF149DBA606E24EC7B043AE62D8
+91DBB757EDEE69943594C7A6DAF8BFD5851D2B00F5464CCDCAD5CBCE5ADBDBE9
+6DE74BEA23B1B2D90FDB104FB328260D4A5B0C6B0DD6151DD69349FFAC753C8F
+7CBABBE0CF9194AE7DFD56F9C89B40697626F34601A2A9E148CBE608C4D897F9
+6632004CD3F88A8F802A3CE75A6D61D8CE55C28BC9176D589593420DA9A46344
+8549E71A35AB21EA5668C5642D8003CDDC145D62568F9EAA95DA3291B04B61BF
+360A837AFE7605188059BF61DE89589435E91221973A8DB7DCFCB0B18085053D
+26B172DC3E0B5AEF7D57C374F2EE77CFC61EA4198C7E5EC4B6E52A7491F806DB
+D625F136163DDF0D713AC99967591E635BEE7E50B1E971F3C4BC29FABBE32243
+B14550980DFAC4CCF36444B7AFA3E7352B633ED8BEB673AF5338E5A8C3282CC2
+C8FFEC954097D154E710C15F575A756B8F39B378AC55EDDFD55E5781DDBAB59E
+C43BD669013A274D7F76FC2ACA7FEC49DD5109E849B2D05126EAFB31C504D7C3
+3627D1342C4684AAC4FA858706E55226A7769A7BBF82BF73FF7D7CDCBA51AC97
+CD83AC15C80515D9CB1D677979EFB4C2552F7A2EB7471EB89A957E42C985F2E6
+B947AA0F0FC3B55572A1AAF1952D53CEC9F8FD27914856241EBF3E8AE29ABE5A
+0DCF265F1BB5D6DAD6198F48BE57F7F8F2C87CD40CBF8A15BE7BDD93DDFBE583
+EE94DB22B55515275FB32806BA1B9521396F41CEC7535EAAE04A9820B12498DE
+C97696FD05CC175280FBE13452DF7D477FA3C45301FE490C1BFADF83BF021253
+6E7BE0FCF9C5F3718FFD75E8FA931F2B952915B8E67FDF9D84B128F1DDB49AAC
+9AC6554B5DB294D0E453E89BDD1D9248FE0FC8053FCC529C2C83667F6420ED84
+6030488FD33AD5C4239A962C5F33FDD4FBE3C86A3633D8DB63F7160B9FA5AE10
+8BED8D48DC0A58F81A1A215F70C5475A68E4A077D02D125BBBC61941009C8027
+46A031B3FE7E5226947CE3644A5DE1671557ECF31FDFB298F5647555566E75C6
+928BE4D1BCDFF932053C1801B41EDDBE228D86925AEE137B228AF7ACF7BD9F87
+DC811BD378144014E05253A2B58E2AD79CDCBCB42884F4A39F7F116EACD630BD
+D520E476AB1532414904AE1007F2C6E5002F5041274E9AEC93E94772C09587AB
+BD39259DDC3E244D5CED0B46B96F673C36B647063863BA92028954ED46302AE7
+77651DB98422583FCE400F75FBEF8D1F8A3CC55C9B67AD761B4CC811E05C5904
+1E34AE480252075C0CB3AC1EB7B9B5378082CE02191E98D4430DBAEBAAE8FEFA
+F433E966A37409A80370F4C4B6B2A874EA4EFFF46EB59BF0199AFDBECE698B2D
+7F379F3A5E84EB8DFE148B9CEE8D107D6B13491C79AC3F1392B133755A403A35
+6974207D3928131427E69DAACC415F093BD90CC32B74060B99FC9BBDE3F6968A
+2B4AC8C29DEED24B1F7BBEB290280348A462A22CB8BA0BB639EFB004155DCA7E
+60840178BD7258D5390C1FDB89F15D06142E9274A9347AC0945404F9C014F850
+9CAF4FC3A6564D78F735B5421A471F533304C7D782B9D7E3206AA9AA3072E4A0
+6E748AF4045A94662555380DD4AAFB16696B3D4D27AD309EA426D6A1BE398FDC
+1B8ECF56073465C3098121A7976A82306343AA7CAF1474E3AA4F559CADD70285
+1214957BEC602D40B5C8632A074A34BD030A56202932E3C6C6A686EA5244718F
+AF3CE79700C6A9B13A88A3681C92D169945F8BA473661C3DBE3101692D53FF95
+04373C2B1E34F266C201AD52070351F3AC5AF2E93C763404854BA1F9096C7132
+A2245EECC1F7B3A8B92E7CC25EC89295BF53B6852C6C9741162F4955CCFAE324
+8F8F260C0207A8DD28723E634AA2D67EF68FFB08DD1B4BA2BD8700AA609FEA69
+4C08E47D3413A300D91D5C841143F7A01164DF73DB9A3FFD9A844522C08B14B8
+831C2351D62E63E77E594A14BF5392C5529099C34ACA6A0D77C6F20E0C0E09EB
+2699988D25751DD4F57BCD2A0909C0C2F726575BCDDBF65926930AA987BBB02B
+0613013035A6177A660BDE2DA1E73E5BC00779F4A1A9318C09C86A3CB6C0B985
+A842D6DF4CD9F3CD34C480219CB42A61E7C81734E5DB7EAC5DEB55FC887660F5
+DDDEF3A7AB149E7FC78961F9A6402A091AFCA068BF043C240E2F9F3F88C16C39
+F59EBB4DD51B4E3FD2054ADEF7ECE3D5E17702C4BF9DF301A30ABA4D3F525890
+51EE7C7CF2B9ED1F3E01D8F7D66DE3667D9757514C7284222EE658F38E80479A
+5F9B3CA56830739556F6619EDBF160909A518218A45D4A55177626DE15797BF0
+7A3A0A0DB2316B7C849AC401DE506937E8286EFCB629980E587F55A00846E04F
+1B8601D655C7471E23278582002838C5F504BD777459F6FE349FC93BCC1FE8FD
+DCD897BA751C1687BB8C208C8A850C4C6EBBA17D00210685645324BD9943448E
+E663A34251A58CBC865F0E0CD8379D842F4DADC69C9118AE18BC3D1F0C781160
+B1ABB8CBFE42180966B4B97AD90B7FF8211200FD048C5B28278F4629BE0A8933
+FB48A6737A8FC484A9B5508F6F393F8762E2AD6FFA1DEE11879440887323A32B
+5BB35A63E0476AE21D53CE319D1D075823CEB48C405C0062AF76CF200A71BF9F
+85D86D86783B2351BB0CBD444CFF67BB4E038223B7A6E4F095DACBBBFD906B10
+2BA943AE53EAFA56551DCE7237A238E17CC0B6025E13976D653302A1289419B3
+943BBCDDBA7958283D81E28C9D6FF72FDA6805DA5B49599B7A6A8B66405F9B8C
+B30244636D2C57C514BE99A51EB980D5959C9404DFEFE2F2B7F28AF6AE0D2945
+C90A2F1286CBF3D5165ACBED0FA764ACA2A25C59C27EC136F9CBC8CFCCD88610
+405C9B53E8D59079E93379B3D49AEACDA613AE6E0C438224075C43FADC28385A
+5B4E53D0D98AAC983B2BC2B0C59ED2775C94E7CFD7CB60EA0BB3F2A41CEB982E
+
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -2147,25 +3523,41 @@ EBFAE0B50FD667EC5059FEE1D8E7198C6DA130AF2EF7413C94340FF4075EE1F0
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
+{restore}if
%%EndFont
%%BeginFont: CMBX12
-%!PS-AdobeFont-1.1: CMBX12 1.0
-%%CreationDate: 1991 Aug 20 16:34:54
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+%!PS-AdobeFont-1.0: CMBX12 003.002
+%%Title: CMBX12
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMBX12.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMBX12 known{/CMBX12 findfont dup/UniqueID known{dup
+/UniqueID get 5000769 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMBX12 def
+/FontBBox {-53 -251 1139 750 }readonly def
+/UniqueID 5000769 def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMBX12.) readonly def
/FullName (CMBX12) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Bold) readonly def
/ItalicAngle 0 def
/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
end readonly def
-/FontName /CMBX12 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 12 /fi put
@@ -2223,290 +3615,492 @@ dup 120 /x put
dup 121 /y put
dup 122 /z put
readonly def
-/FontBBox{-53 -251 1139 750}readonly def
currentdict end
currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
-016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
-9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
-D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
-469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
-2BDBF16FBC7512FAA308A093FE5F0364CD5660F74BEE96790DE35AFA90CCF712
-B1805DA88AE375A04D99598EADFC625BDC1F9C315B6CF28C9BD427F32C745C99
-AEBE70DAAED49EA45AF94F081934AA47894A370D698ABABDA4215500B190AF26
-7FCFB7DDA2BC68605A4EF61ECCA3D61C684B47FFB5887A3BEDE0B4D30E8EBABF
-20980C23312618EB0EAF289B2924FF4A334B85D98FD68545FDADB47F991E7390
-B10EE86A46A5AF8866C010225024D5E5862D49DEB5D8ECCB95D94283C50A363D
-68A49071445610F03CE3600945118A6BC0B3AA4593104E727261C68C4A47F809
-D77E4CF27B3681F6B6F3AC498E45361BF9E01FAF5527F5E3CC790D3084674B3E
-26296F3E03321B5C555D2458578A89E72D3166A3C5D740B3ABB127CF420C316D
-F957873DA04CF0DB25A73574A4DE2E4F2D5D4E8E0B430654CF7F341A1BDB3E26
-77C194764EAD58C585F49EF10843FE020F9FDFD9008D660DE50B9BD7A2A87299
-BC319E66D781101BB956E30643A19B93C8967E1AE4719F300BFE5866F0D6DA5E
-C55E171A24D3B707EFA325D47F473764E99BC8B1108D815CF2ACADFA6C4663E8
-30855D673CE98AB78F5F829F7FA226AB57F07B3E7D4E7CE30ED3B7EB0D3035C5
-148DA8D9FA34483414FDA8E3DC9E6C479E3EEE9A11A0547FC9085FA4631AD19C
-E936E0598E3197207FA7BB6E55CFD5EF72AEC12D9A9675241C7A71316B2E148D
-E2A1732B3627109EA446CB320EBBE2E78281CDF0890E2E72B6711335857F1E23
-337C75E729701E93D5BEC0630CDC7F4E957233EC09F917E5CA703C7E93841598
-0E73843FC6619DE017C8473A6D1B2BE5142DEBA285B98FA1CC5E64D2ADB981E6
-472971848451A245DDF6AA3B8225E9AC8E4630B0FF32D679EC27ACAD85C6394E
-A6F71023B660EE883D8B676837E9EBA4E42BA8F365433A900F1DC3A9F0E88A26
-331942DA18ADF89C5E79B969611C123465054D82C1DB771E6506EE7EFA2BC0E1
-DDAF60DAFBE6E98F30970280A2B500EF3E9FA526BD478E1125461E1A4AC61B41
-D0FD917B2D891EDD84DD60DBDE3BEAD106058BAB10F882E4E143792C2EE4D13D
-A5837253F8577B67D8A2F0936152AB0555EE029D0B406C99B2795C5B0B394EF6
-78946EC9ABC64118C3FB0C8BD6C4AD2B18C319E721561AAD9DF439EE057291C4
-6024B31D64D08E756BC2692C2372971247A706A58E7A6B20F00D474DF5150730
-5D786AEF9B56C84EC3823491CF0EAE567EB466FA0B26469FCA00692524BAEA17
-602051E98B67BC2AD63A1DF8F3CC41121106CC02C07D3D055758B3C33D3E50F9
-88675B2D6B3DD1789F1AE9AAEEF5D5BD3E99D9EDFF98A927D270EB8D136A1A2A
-396E8B94DA9BAA7AF8243F6CBE38546A4212C37B752EE6099FAD5FC3D12729C7
-751F60EAE425B2E6804B9A7C392D2CC0CA07E7384DC4A5ADCD8911A3C09E4DC0
-9233E8A3F7BEA1428BBA8262517DA3801EA961E912D5DA81AB9560EF800919F1
-DEE9CC73EC9251754860B83A1D25EA364AD1315BC4943A3C5D920318BFF3A2D5
-27A0D8DFFD02AC3E2E6059A4CD98444B50AC5BE7B9D37DFDFBB38FF335CF5A9D
-AF6AF8DE0E686B66810D28F7A79D5B398DCB74B4E363B0BFD1519FCB34982DA3
-077A4FD0B5A2686D8EEC5D5B29D07C40AE2812E33894AE7FEED8DF2AE9C1F796
-9F5FD59E1277982CCB73F1945E762260627B1C1964091C858FC0EA75F4DC81C0
-2872B4D5846F3BBB3A79B683940A568A1FD68799B226DF4BFA0B09E77210A4F1
-2E0932BAD3CAD2FB945ABEC86ACDABDCB758C39B5730890D7A472F39A813FC3A
-598E2D767DCEA004056FDDAF4346573AF990F30B76E97EBB2FCC38FA116DFE95
-6D9B579467499AC2A7F659692CF63BFF859FA90F9584E70264304229C6577B07
-F9FABCDD314285F8B987FBAD04E4E61184F96F31B38627CC6D83743C0A561004
-888F002862FD99CA0F81864D180DDEC1B3893B93F6552E139E856C47CF7E995C
-7C273CF00776925CF39A298229683D28DF7E9F21E93F8B25BD2A111916111809
-39014D096DA99B8100FD17A4BE9129D0181F515C8D43AC6F3FADC10979526FB9
-4369B250A522444E773942AB21B630F470F5D42E09037AAB0DA0478360A349E5
-3858CAAC76E58C6E55317C9D307E01965C244C4BD24E48446FD0DADD44B3D7C2
-AF2D92AF002AE1014429FCC090CF52DBFC36FFB5915C5215DC2F9DDCE48426DF
-844DA4FB5DE5C9429B35039BFE218FBCF9ABA471790D604D0107FB65D7AA05FE
-23C350C93FF02982AF2C8D387C9401F1AE5A826E9128B5814FA24DE537FF57C2
-38F12A50F8C42D53B2F0D95CEB47D11D802326135A3E3662A454F67CEE321BF9
-6FD841DE922B4C1E0BC2753B9F3F6F24FFBD4157ACDBADABD735E5B5626A1C49
-6DD59835F4A6275F66657413702203C4523E6B7D74D81E11B37F2FA86917EBB0
-EBF4A55103ACEC7E420A7D6052B2D38940119C34E2E3D3280960468E0AB10A40
-0758A98AFC872037C929CBCAC71F5A45CD9AEFD1CE854858353A0852D9F88129
-F0EE1EDCCB1268E35494DF962AE27EA6C0AD212C0C862EE355C5580057B2C4F0
-580FED0B2BD80716DDE4350B73877EE349E3A4A63EACF07013B0484F94A2F28B
-54A3CCB83ACD34A0DB2D87624C7DABFA77362AB0CBC22D73C2566C164088C449
-01EDC05AF90DEFE189FAE81930CD6D203596074E73762490AB571C044DD3989A
-66E0F2B9802F4EE4A3DBDCA3E4B27E331951F4F21AD36D05F4E83C895CBE9BC7
-CDD4AD272BC22B5340F962039F0DD0DF6DDAB20856AD48F1AB329282E81DD509
-813F4041189C99A3DD34B9E511CEF5A61642FFEF819364214545E20185D04776
-3A23B72A16BABC12AC355664EE9B6B04A5B721CA4639CA95023277A0340461A7
-6679A462B97926BF76C7F195131037C2DD154B9A0D3A98E866C8BDC869E82B08
-45CE67161B336B4CE0153F42BF005DDBE7004F9CB8EAA04EF844E469A99BCA93
-49C80C550BD7B2EC80BE4F55ABA0E33059288A36A01F8487F2A4F3A8CBEC994D
-1723CF8ED8AF2139DB41284C778AE4DA881017C72C7C67DA310BEFBFAE4E52C7
-4EA68B8DADCD68FFD132DC14E90614609CDF571644F78FDA212F7F7A8C5E0F23
-D30E3AF51161915468A2ECB5F5F5C9E51762AC7F914383E9C49EEAF70A7ADBF2
-667E9E7BFB1F89FAB292417B1C22726B8F3A267EF227D38C9328168EEBD65968
-EC16AA12FEA77D3813F871B40BF7F9F39F8E8AF3470984DEDA9ADBC52F6F3C08
-4C8F80FF637CB5941A082C46275B3112F73BF17157E47C27E6D5328391AC81F5
-18CAF829EA5655A28BDE6F2E09190462D920B5883DF1CB187FDC9ABEE351581E
-27D3FE8CD81BFF94CE534CA166252417EE05223D6B6960D473B021EB8700D45A
-529E96BED6E2EA51D0A97CD953DA4E177DAAD914DA8A304D978D5C9375C88E15
-3E3BAEE87A6AB1DA10AAE3A36DBB5C3E3249FFDEA9187FB5B4E2C7435A444F78
-ECD6D7C8623835BDDB1B32C7B97DFE8B7C9D4BAC01F51484B96EA6BE7B8B6871
-50F91362EAF19C28B61A8CCC68241BFD8772253EA3931DCB92DF492D40C3015C
-C5AB21B46E09C60D5447A6D0E2A0032DA3FB31FDE5871821DE1B6D811CF9D3EA
-17537676A4F27A7CFAC79DECAA866DF0B06137011328E28524521BE97E125A48
-99A60C474644E0CA13FDFE368778DCAB7ACFE2940AF8DD4AE0AAE2B2278E0D6D
-0B83C70693BBE2EB0D5CD3BB572561F830379358FA9A6D60C7C77B7B5EAB61E5
-274C635D699558B1C1B4E7243B1662797BBC1813F637E2189ED5B5C09E81686E
-6E1E41350D7B14CD5F85A4753430C8DB3BF724673001D8B354036CC1A4A436F0
-C74F4F3E4071F995A1B394ED974051B8F2C24416DEA2E18EC82B910EE38790FD
-0B31A1B01322DE131054286BD668B32460EC9D42D4626ED00BD81141EB313DE9
-8EB28228E04B1D4324E93DDE0FF6C52103AFE6B36107138B0EFE799D5643ACC6
-915877932A4E6D8FA5CE24253D981864A75ED97434B96000F6C1F13879609403
-A06C9F7E75259C21DB01E44EE1F3A48C4AD5D7A3A2C7E28259E31EBABEA74CD5
-B842343EE409B4AE792C5E23BD81A41F099BBD9775AE1401A1B221D97D3BF79A
-DA2A64AA6E37839755D5CF4E931B3ECA258FF3DF46CF0753B2E1E713C4E6FADE
-7843B4750DBE4ED9C8194295EC3DAB29BE7577ADF285FCCF89B66ECA83AD9359
-80E08CDE4C2EC8FC382BB233A6DD3BD103FC026B8536D6584B27C9DC63CD6419
-0DC194F54D61BEB16071FA5C90F95DC4C3F562591FF9A2A63A2C4650865982E7
-91BEBC25FDCC286F7676528F957D263D0427351CA785913D7A8A3E8D432809FC
-4450AD63F85D6305A0342D283E125FB0B933CC9E43247ACD480B48D069E2E495
-E18B9545A11370A7F168E3AF9F5291CDDC42D5156D9DF2291AB356DA52D45F7E
-291B08922F2A90E80AB0F8844B54DBBDBEBDE7932FF7434423657F72DF60BB46
-EC4A759F33FFE566D772AFF7344E64D9F0AE948CE3D304C7306491BF51B2C886
-23921CA1A60BC33A2F8BF231AA6DE06064B3ECC1C83002CCE73F2F5656FC1CD6
-2B4F76326C0FB690930F30284322A9969969D9F59985ABABBE4F6CAA0D2D0FC7
-12EC2F4387FE9ACBAC666B6DE8B56BB7FF39A9F5D20482A4BEE46E23A37E178C
-588D0D06A8DCE84C8496A367385C1482BE700D5AF732559E4A4CAE5BC8151AAF
-1927F61CDEE49058455A25968C08491140AA6D7D90C5D48BD580E8FCBCC2B4B8
-D9C29CC7186217FC02FED0388F55AA640793431B65E037EC302A19B3B33EDB6B
-4E61D3E4541F0B9143FDAB7A3929DE1970ADE1DC1BC0883994DAE7908AE5561B
-DDBE61E930AC2FBD643E087848073710F00239920D8E9AF7F8E8BAA5BF9B807E
-40E72F81489FA67B449644D3D826417990CBBF93EC44F8DCD230F5A3D9984456
-8B03802C7B4B22DA23715EBC245FFAEA7B0E32627F9E71CC94C0C3045FE52B62
-5486471DA7BC5FEC56A1BA255F3AF867EC3265B3F4A63AB0271F95488E267C32
-112395F977FE1DA953507136DC59FF3ECFF1EA252FFB82CB1ACEC541F5CB2AC3
-FB35AE5A4971D5632341A16EEBD6D9F2EB5F453AC9C96238C8265D792EB16E58
-244559A6C23C20622D44F8FBE9DD731FEAD4A6BE66CBC9B95A5BFF59B0ECBB4B
-E17EF6D3E423A8E49C96CB4F93EAD4DE2335AAB02AF12FC2A9BC2FC81CE526C2
-F64A473FE386DFEE4E233EFC588C5B3650A72C30D2AE2664BFC0CAD9D5BD6433
-BD67298B1B6C990D5CBE4FD20C1EDFA6839226E606D1F66FE59F3EB47E35C567
-B1E937F9061289E90BD151BBCE16C9ADBC8C65D09BD8E9F87C403A0D05FF3D90
-3015F7E89465244616BA1121951C092505BAD32172BC5516645B14D60409B2C4
-C94976B1DF3CCBC33C66FF4F002528B942E88E8D2FA4E1B098A1FAECCC33C591
-1EC4AC61596D00B65C6218273819E46BE457B9C4CBF6F1A778E16AC64050ECB0
-C65549AA2528D51CC11D92E9A8E9ABBDC4FA91651A661C855919594A235E6AC9
-E3EF824B79E3088D7378B5055D155BDA9D7B909552AACA888B43C22188F2030E
-5E7E8A38174E0237C2690713AD73CCD5262D3D8D1237C42A1924E5370568279D
-E9D5B05C39E009B491094AAF4E7EC89D04BC4A9A2892A47F612FE169CFB3677E
-557AAC664BDDA6020C6D74FDB5DDA927B9112277D87C43DD5F82A5633693C2C4
-80B16A9F6CA63366D28BDE65AF9B6C6A3E035DA5792D61BF3198BE6E0C04D0EE
-519E388BC07530011FBF532F7E580760449476AF8067710F9F222B1E71A8874A
-A0A5C0E2E813288322698E5C5C8CC7493453555D7C332722DEBBD0FB3EAC6246
-93939BA42CD6905AD16F873B14968C340F6CED94E8E8B28C4DC3B31CA9BD1E4B
-2DC161FD50A44CDA71A0693483F1A7B41FB6F5833D39F638F54D85EA0B187649
-38FACCC8CCEFC695C9C8BDB87713AB89726FB69844ECA220595E123A4BA1ED14
-13222737A3304CDDBB8424D306518C6FE3D3C2836C0C329E9223AF0BDBAB627C
-4344A00A23787E5969664778171B11CA2DDC70EF7AE514765E87D20DFBE9F39A
-E1CF8F43F8EB9AD584F6A9876981C3901DFB457B04796C36D6A261BDCE3F1BFD
-7945CC3BFB731769051686F1F0A877FA8DF81D9E72B44F3DD953DBE3006822DE
-680F834BD66F9A91F26AF44C93A6BECB1CBC43EB27061001BA9D0F4FD8992A1C
-6E73FD209E793D43BDB645758A712B93D09237732AFB2E5CD6093821DD0B90F9
-AD613062AE97713B69D89DF13D9C482183491E0CC03448FE256B885A157F0905
-DDB5BB4EDF93C4841B87AA52002F48AF2E76EF3C9862B95A68F760C9FC84D7C1
-C5E44113F2DD335F4B275CC3E458B9AFCC95060A2006037E2BF6E3445CCA6573
-FD22ACEDD9ED69E8F502B1F2D0320639250C0F356ECC43A27CBF91C87F5299A0
-A6613BBCA99A1B2DE7C05DCD91EF68F8319D3147254F9690F84419DB8ABE8BAE
-398CA709A4E779307536E46F9E0BFA44F99C296019C87261E2B31A99D888499E
-87FD66622FEB5F10945ABFE7F92688C723EB0AD6676F6F0B492FBB2BE7071979
-1B3154BB18E9389670E417B0CEE5C4873E5AB870CF14AFB1A601F6679ECD0424
-DC64A495A7D93B659D2A265372E2017E4120580E65178F61FC4558DC9EE3318B
-46CD4F6DD2BCE71811AD0616BBCEF04C8CB91A3513694C63C13AB227FB99E175
-BF7E4EE6B5C264D76929E24518E4650CF5FB25D07CB75FBB4A9EE9349AA2AE69
-CCD0B30D7A1248281C6A95B98792933B45F5D0431769031F2D7CC45BDDB7BDC0
-D69ACA7D8BB1B8A3A06A1E6DA6CA290D59409DFDE8D154E9063A3C33597070FC
-5F7E46A281DCCC5B5F6F840651AEA70AC412BDCAEB549BB3F38035F8F8B3876E
-0E5EF8BF0F76D6495054BD4EA05CCAD9B3C7D438DD6FD963410D4C0FB5C04E74
-EB96B9258C08CDF791617BED9400B36DEFFD20DF6926917DF01FCDA0332A6D66
-EF42326069F40549FD62383BC26643680ACFB63EB8602BCBC19C6914C36874C4
-FE9368E4ACAD858A877EDDD5C6FDDF24B1E7BED3E2EE4E6029E3E6A89F513EEB
-B56D50D7D6F4BADBBD464CA5B55FA60586AC6FC72890B28F836FBD9B19677F81
-CC9FFCFCEBF20E1DE04A2EDC60AAD896E25780A52EE7C5937ED25E3E80677650
-7B0E50C9C1F7D5F01AD68ED1049C2C1E36533B0693C960E4F9881FC8137DF6CD
-00E95B425D00BA7CBFBEB9D787DF8CAAEABDA5A8612EBC1DA63D695C584A18DB
-C3BF2BFBA90F16926F5BE3E945689FA0CE072872AE3DD8A5F917BF41D15888C5
-6BA972EFE29014BCC6044AF174E7E1354EA0F2C320F8F26E4C092D517C8A2C30
-8F3482388843E60764F02FA1EC26BE8AE517EA4B0762D2338F505409E4E60AC7
-F78280A9AD3BD9988DDF47C4FB3D7BC4D33E4D6CEEDA601E7A1FC21BC4F40081
-830D6224C3D433B4F2F1D1D7A2D451AE49B0C410A3480B69ECEDEB6807DE9DCB
-3C5A9B237C03DE62D5CE10C507919B65C34B8522E9C175EF24BE5258CA785AC1
-72907A9A5EB54022123FEFEF9B1080FEE0CC1FD338C833C5DDB5AEFFE2FE5B0D
-A17B14D74D8BE761083A5045399A9D3F8FDCAB0D2F86083D5D6795F9F631A728
-25C5ACB2267C0086E194BA3F3554C0E94602FAF0783CA4AA63E7DB6978103D29
-0E7A4BB52E90034FA9019232C8FDDEE30905F69DFD6FDC78A0A473F5AE7CBF82
-936636D8C3E6C6E8AD80119A38B8F833EAC9CC41C2110DEB0C7DF59B57FE22F7
-634EA89533BE3A8A9899EF54E7E6BB72820C9FA9F1FA3DD7E229D2CF56290755
-7BB5B672FF1AEB47C0966AD1978EB09B99E93E01D70184F37F5D6168251C0A36
-3C913D292428B08CB5ABB142FEFA0EC7621CCE428D3578515CABF820148C0DE8
-B5A21FCBE30757EE2B6E9E8A15F0DE4C0D100320DCAF26D06E39635262F45A52
-8E3F27DFA8FDAD2BBAE2E16B30B415D791041B5DD1818353552AEF6519A868B6
-F1BFB416B242A372066BDA80A0D077AECDD024C0DF7A3E590C6F830AB58B8641
-DA426B0FECB45FA3FC7BCFEFFF124AF6A5AB3DB6850831914DE4CE174E844F18
-87C469F610B6EE45AF70E2FC50485FC2963AD372BB1FE75E850ED5103A982972
-EC88D242A1A44EE80DBD34EFD28ED1AB9BF11648EF0D1E5DBB22E4716FA64564
-5C91F9FD871D120B2EEA0AC34BBC208706F2C27F4CB8D1F293119A155992A427
-85C53050C0E9FEB765F2155CB9F44C7213D906DA6D9CECA44EAE0EC7980E3EC4
-974162E61FD00A9B41DAE5CFA46C45E3FF040F58CE2032E7949171448AF62492
-24A61827C0185B11F10219DA6D4B34AA9A5991F3C0C5E39B6B7F3EE82858AC38
-C5E03D76E3650E188C2B53933AA36415FE06F16F73FC7E9D97F936FBD24C1EB7
-400EB2128820FA3CE0B92B5A2ED74F7AB4ECEF67290FB8B1FC1A63F886C30A06
-571EFA15F713C5D7683973CDB4AA7C1B6D4DFF4BA9D4076545886BB4B66AE113
-3B1CF78EA710D5C33C4E33CD0348E60F15137602AA974626666D827A748ABD54
-07E8F3776F06BD34A074CB1B74FCD8076A90AF026D20A2151041BCBA74D9279B
-C1FD9BB9274D30A1E6CF963E384F93708691C0FD24537B92BA2DD32404DE8F6E
-D2DC16340DC311A3BE9065B57DC5A6A47D9751068869CBCAC02C580F657201B5
-FD574EE2D1872513BADEA46E926B04C24C8ABE0C6B1E6905D9B14B3EFAB1BB3F
-808975E72FA7141AB2F31AF6555F99E3572D8E9D8C603E568D77EE0CD3F9926C
-C22BE8FEA7E2E4934716E6EBB16844FD6D13EFD61D5E21716AEAF1C99A501312
-C512F39291FBC0B7F06DBE59B522F38EF4726FDF78EFCFB6DA81C0F0DC853CA6
-6FE5AF0D804C8E0606DA77D8304433878816AAC947D5D8FCE1DA0DA300A7D5AB
-4DF253F6682832FEB0340E8489CD5C124026C6D67D3A9C73E79C800F6C327DCB
-B8B249AA9523A9986EE5FBC8710066744A3C3C1CBAC61816332327B514B039C1
-7F27FCBE9A18E3C5D22DFB3AC1A957DA5A2B2558C75E0F581D3E8FB4145A71A3
-D930ADA614F631933C8075D097610249113F44B9DC1A40DF6A680FF5A144E955
-693523D7A73D88C6A297CC0746AC24FD8EE5AE98C89CDE15D269466319D6B37D
-E375136E7B07E6F6E6C3AFCF3F1BAA43652BA42E49F8AAD5FFF36D23E9163423
-3770F602C407C7434E19092B0B612972F47A8604F46C56C5AF358A634CD3907A
-A57020509D2380E56B7B112C1F4C5AAFE3A447A3E6C7E922604D9642C003C6E1
-F6DE327BADB1142FCF9B7B5993590AB6AE199EC5B021CF14EF85F816859A40C2
-F88CB2EFD9ED40283E1C0E0AEB3930BF33604149CC65A2220FAD2EE53DAE2C4D
-BAD67336FC89F99AAC450215A318FC043BADA07A56DE65B8A81FC5DF0B61ACF6
-552E03A2DC3B301494E89A014C958349B438C6ED0A2771B13C29A376352035C3
-B257CF88AF797AB6ACFF0CCA4462DDC9B0EABD03CD5B05008BB3C552D457F81C
-BAD15BE4C7CECB2E2AC71417857014C64A9CCA0BF157CF21125C6678B2A8DCA5
-B2D25F2554BB61FD02706AE513CC507C4DFFC2025C5B8BBDBD0F1F1195254F6F
-DA941BF910E0CDF516445B09A4AAAB128C62F4BA4B9566FF29C5E563BE12DD2C
-5301F4E66CE800C112BBF378E6F3ABBAC5D39333A1D51C17065796F8A410E4C9
-AC918B945235CF80C63C0FF32A58E635026C41A18838E1AEC97045998CC00CF6
-00B5AD09DA92B8C43306CEB793F2A38BE979449A3023B9E3D7B614F3D7DB0767
-F33C90719E820DB7B2AFD66A40846A82259D4148B7D92E9AC3B9AE22959745FA
-D59836DEE8E3303F6FC95A513BF8F7C76D7EB70821013B2694FB2691B31503D2
-FBC9DE2E1E8BA66A2BD5A51C767E3AFC20BD22391BC9E6D53491C513B84E6A62
-50F3A04A5CCF1714CFDBDCC57D09CB45054B2555D9EC59E1834F8B415573FA46
-54190E4E727C4588820E9A71C139238D024952FF8394D6F8BD8485C58F9D367E
-3B4260335BE6E8960D72547F75C9FB19F382A596468A838E8F92837D55422147
-E20D7EB823CFADD691D0012FADE67FD5A61E0B5626CD364C83E1969E09A3168A
-730959CD3D3382B00B1C8B733DCA57FEBC6C8CEF8F5FD305914DA3469F77145E
-8C75F76DBF30B05F14BB22039A62C825FB310ACCBD0574800FC330618521194B
-3330AFFE37CF85674B78EBA968863EA661C9C0853B67192642198EE883E8CDE7
-819F372A3CFC4AC0474CE23FE91A2E54C334288DA4A7F900F8C461E6BF299962
-A20A44A4056805AAF1CCC6410711F68001C01CDFE9BE9C1FC841F48590942E8F
-0BEE595BA803E2EB5B171E891E68F51A8168EB56971FC6E6DEF12389693DEA92
-B901D6E522E098B2713ECF54B901CB8484DC449D27F936ABB4DCCA0DDC259482
-5FEB3827DD27242A12C52B7D10A665B3ED7ABC10263EEFA28DE86DAB55F678A1
-9F80AFD47CFC1FA9CDF4B73E2B13A8684D706511695774F67C071403E2FF29C5
-EC429EC5F1AB071CFDE6E3662E6169904658B6860F4407EC06C7E2630FA9D04E
-4501E4281249E1E17F04A3A2F1E3F59332B6F5D4B19F245EF43D5F7E278B20A9
-111D5E0861BCE94DC651389C1DB89CA3006BF570992F821C28BC8C970658387B
-2F85204231B5ACEBAC1CC590E8EA9DD3A6604B49850F0D46FA4DF2DF0D018FB8
-A5919353FAE01491EBAA77DB74F10605FF7702D0D598E47DCB3F99E0E00A1EDE
-7B1102AB66929D68C5426C581B53BE235D356B5BF9239BB6221D3088A9B38C98
-6937AF0BAD38B1318B7BD5AA659A2BE98E10BC456C3BA2AB26935F4A1F992363
-313379E8E0358C677B0BE5B7D23954FB05B649519CFB71A2B50AECE3FCD73B79
-30657E91A3604D29C4BF236A6231C7BB73A3F978F1D2DCDE948F341309CF6D5B
-DFA5566AF291F0B2F3A7CE21D8C91B5151AD6A93E7F003805886D07AF2E4A6F7
-F01AFF27B73E7E629D61216E13131E648C46BC4ECE689EAC53DF65D168C1CD66
-26AD07FF78F4E5E5E0699DE2BD0512F97D8732E734B2CAE0CE2BAC2B443053AE
-98955B6EECB7FC1F8101E53E35EFCF8FA439B225FFF2B7676529E574008F9650
-77E52080DF20FBFFE1057B46DED128BCA2F54F22B3D08D599CF42E4F1B302C4D
-3F3EACBA2C2AE854E868C4D094BA6B1703AEBEB2A3A9479DA3F32D44178DB6E1
-829733CE03C99E4D5A168D364D23AAA31C91A0C4C7F133AA97BA99DD395B4304
-3DDC424BDF5C5E152896E47F32C6B0FA68E3D946FCEECF1CF08A99ACEFD8DA9D
-73EDC5DF96187AC908D2714913634860D782B225487A3A10C8B554F3295D0221
-716ED9968594D800086E8473163852B40F8D202EBBD49401C8E86E01A0499064
-30FBBA59BCC42E9B2382C689725B80780C57112F1060850787FABCB3E4C94845
-560E5F42139A8A015BD311A362F09F7673A65BE8071DF9AF8988561B87943A02
-D481ED99A276B3FB4ABC5833A12124234C34395C1DD2DABDEBAFB661EDBFFF45
-1DECCD8A6507FF08D5CF94E9CECD6A8A858283210812FAF06FC40A672985ABAD
-326263C49B09434A0DC3D014822456E0D7397513E552FD0B640AF4D94845B640
-E9A34CD6EAF3FA62BAAC7CBDD783F4D30904AEF1630A4BFA1DF7B0A02BB479BE
-54E34D0460986D076A9F665657C16D5A44738037BE23448B3459EC5EA88CFBC3
-A034501D5DE223AD60CF1CF8BAB33F25E17927C72F941E3839CE2A0992937F2B
-CD1987AB4B5AA20B328F0B887112FC03B49D86E8D456A5A1B4B51C47CE7955CF
-E965E6872E65868E1E7CF79BC6D0B014DEA3DF5B7D425AAEA7066E9C3209B434
-1ED97364353C337EC00A09B2FAF670A03E53369EA4B7918291FBA39CE1980E65
-AA15C46BC702B4B62F44F6D90BAF54C04839C6A32ECC51BFF706A72DA5A6ECA1
-E406EA945B572B8626305D3F7086445C32F6052B80FE04C3D87B3329B34B20E3
-6D73FB023383B646671703F14B96F16DD7E40AA4679862764413357373A9C66F
-0AE451369BF3B10AC4043A3557849AEFBBD4A3C67433C87C1AC45129B188682B
-0656A79806436C195AF965617D7FBB03DD7B3EFD21B4B517FD6D7D9D87A43AF1
-EA5E1E1CF74FAB8607284497813011519D6BA9517DFAAD6FBFE984C1C6702E8D
-11B38A9214F20141307125C21565E68506139B2DF3457AB87A55D1E7F042E7D9
-5DDC18E63BA012D1E3F676338DC5E0DF447F4AB47E8C1C33666442C06CA9A11C
-5BBE0795806AD63CDC33BA5E9C51B6077A5BCD845FE4A0F3227CCE5475F7806B
-EDC20AC123D34CE54384945D9CF694ECDE779FBAC502D0E1290EE53F5C5C0E5C
-9B5C842578B503DB0339A38C4DC28E46DA1107CE592CBE3362F5ED8B8002042F
-BBB87A7C5BD25AFDA7267FDE243A4D15F2AE330A7A39AED25A88FDF019239E37
-747DB435A7BA52D3FA118BF3FE4F0D0B52A894B556383C2ED16E22716EB8044D
-8740AD6CB7FBAD446AB8397E3843238221C28E4DC6D5E627A9A847A69CFD7207
-783EDDF7E86859317BC792A79C8F8164DD
+D9D66F633B846AB284BCF8B0411B772DE5CE3DD325E55798292D7BD972BD75FA
+0E079529AF9C82DF72F64195C9C210DCE34528F540DA1FFD7BEBB9B40787BA93
+51BBFB7CFC5F9152D1E5BB0AD8D016C6CFA4EB41B3C51D091C2D5440E67CFD71
+7C56816B03B901BF4A25A07175380E50A213F877C44778B3C5AADBCC86D6E551
+E6AF364B0BFCAAD22D8D558C5C81A7D425A1629DD5182206742D1D082A12F078
+0FD4F5F6D3129FCFFF1F4A912B0A7DEC8D33A57B5AE0328EF9D57ADDAC543273
+C01924195A181D03F5054A93B71E5065F8D92FE23794D2D43A151FEE81296FBE
+0CF37DF6A338C826464BA5198991445EC4BE80971DB687336AE8F74B516E333D
+2D8AB74D362C559AAE6ACFAE49AEEF4F52E28C869222C1301D041E7A0BC1B608
+1BF728EF9E98F3A12EB2714E7F16B14E055FE1FA0EEFB058860ACADEDA9D0E4C
+42E3C6F1E4869471BFAA3760175F3FBD842755A9D7847EBF605F18293B42F557
+FBE2715002669091BB033E1AAD657532F34F7C66E4F04D63ABB07E6CB9D9AEAE
+78EDE8B79DD9BC87A1FF445EAA05B5572BB880E69F4DE1F82D7F0E9980AB0C18
+22C448B0B1722D3CC33C56FF287CECB80658B3AF5E7675BE82CEFF3DAD5942EE
+A03C955FF979E41E54BCFB5316A9AB8945C403A73180D0961416EC9C92F49811
+4B91BC4C788392994587517718521E416D469F69952149FF7F9224377EBA1065
+4A727BF806A112A7B45B0A1BA1D5A23683960575368D9EAC8C04753BF7465AF7
+95F25C258C63E4FDFFD0B412FD381946AA38C0B961652BCEC30322C47BF4755D
+9F91880688AF066E32FFB22E1A52DE741307AD3ED830D6BAA1D1F562919666DC
+5E8FD9862AC8600B0AE0BC7FC779252AAC57248744ACC8A8AAFA836BCF09B0DF
+9253DFBB1CB77EA8A59D42D1B18FF25E9AED72FA62FEC3F126F030F5D7DED9C3
+CF60FE890BA4A48E39E687BFFAEAB96AE542A6387F6624486037C8924002A511
+BEE5FBFD780AC1D4BEC3FBC47A930BAD0280D444259528B6C565DE11DE36BB65
+9BADC55C1EDA1A80458E98896D782DFB5C137897419602809F9BF8CA39F00C68
+EFB9E076FB324C2963F23CBFED28B9EF70EAA4E4B903225D1F199A7162AB239A
+D92D71C18B1B682D04C6A48926275BCB16D413B2A0E953E1257E0B12D8B717CE
+2EC84CFBC046A4338A69F454A469B12118E562B4F56C5FFB3CA5D357513E6FFE
+947A564B229C7FD873057D5C7CDF03E958294A1003B37D8DF565A70A00A3734B
+0138AE5277D383D10C2BD853EF806D3CCDC47739F0E374A3DF3B63638B949ED6
+4EC25869DC1C0B1F4DBDFFCC97382841D8F10F3635C792139A1EC462FDBA379C
+BE0990CA2E70FE73137AFBBF30CA54954D7E7377CC50BDD780DDD4C7FDC77AD2
+F3EB1169F14A0041F18160F43C24FAF556DB5D621709FBC544CE55424F7446D4
+6AC07A51C8CD5161AB0AD5084A96FB35D77F1CA155147DEF8D7A590EA6939514
+D4A226588295CE0007BA8A550895511C8D80BBE5CDFB8A50D249C3BDCA974415
+F5557914A9B805782F399E4078DDB6264F1A49A9A5BA45E284A5196E9828EBA8
+481D357B8D9E6ECA631A6204439FDFACE7D7E6A2392726107CB7D2517CD19A24
+FBE592C119626DB221BBB635B6EB84845C16A9585282E34958B961F4A543AF9D
+419B6A9105BF185FC767712D923437BE08A9C0EB92AB6792DBDC671029B6FCA6
+7F717FCE379C0F3B51C6CF042A762ED04898FBB4B0105C3C4ADDDC18C51BAA3B
+70A93666669547081D9246732CFF74C83EE90DA17F5B4F8BAF47FE4D81590988
+2858C9B96071341FA0A0D23BDD4947FC9BC2297913CFBD4FD6CA4303AB3179AE
+0203F1BD502065F90CE9BEA3B52DAFE4A29446082EA0E6B1D7AF1F31D0AD02CC
+9A7FACE2CA86E5FE0F6A425B28A5940ECA306891CECDB3CFC7A5BBC76B5D9E8A
+C754379ADE80B4D72CE493010317BF21A0CF4A0A55C1246218839DCA3F4D626D
+1F4161D38F54AD5142C1CEE95C61D8BB10FAD4B772F4955777AFDE8AE5A837C2
+A2BBB11D0BF5DA2E63D0B75ED421DBA9C789B281B01846B65DC572BA69591969
+21265DB722AE86BD8CAA3D887C975A617ACEDDFB7AAB341F47532AC0F354A530
+7662C089DA3939588774FFA16FC4A52555DED6D6F51DE718BF5F345C23C90198
+17B77CB8B5D53A5CE7A79F3E286B6A59F3F6178AC8BF15C0A15C1A8A95D03B60
+30EBE53DE328CE085CD9A1D49C69AA299C5B58B24334A546F6E274C1B534DC8F
+3289553F560C2F81E413ADB92FA0E7DD1C2F39D5FD268EBA97AB7335ECF28257
+96B4EADB7D0778706CB41C7E9C882760E7670936774A1088FFB2011115FDADB3
+B69EBD5108760762521C25C968C3E282DC3400001AC8FB1EA27FF643E3025950
+1D617BB8BB321281708E496277E11DD3AE0023DA9F25AD06B39C7CF527FED27B
+57397E88D3DF70EE4FCCEFC8A0927D6B05517E571B3E70ECC99F3CBA32CCD4DE
+B8BF22626B6C94FE65598A88AB90D238461EBD9A098DADEA4091AF1CDD7560EC
+8E1B9BC2321686E1759E6B8A270C8CB4A254F7368039602EAEAB86ED21CDED91
+8F2DB9889F46981C494C7EAF5E819B91C129F0740B8002B510014985E5791F59
+B16879CC6521D8E9F1C4C1890AC85A78022BE614BEFF318AB2616F0C3F02405E
+BB425D1555472A2642BA7686E431DC3FB8A1688B76660D9957C3FDE8D58109AC
+21B1234C9DDF3F0FAF93BCF7B2F88A001F23162E1A13E5E9118D51B485B70A91
+D0CBC39CF44413FD8686D9030782DAB58064F5B987E0402AF5B264B17BD31BD4
+FDF63951BECD73ACA6138854EF35B062D01F33073850D9C09A818828C581241F
+A625AB3638081DD0F00F946BE5450D38489CECEA4E66B4D85CC8AE0157E2AEE4
+A22A9313829F24D573101D84CC1784D1CED7DFAD5DD966601370C6CCBB723082
+A86BBAF0A5D867D0D2E3CA16E14E5109A29EF02649C47E12E88B3B397D65CACA
+DEB9940B92100744D686066F8250FF30E5F13D81428EE238A2E4E07ACE0F5C38
+7D79D4A336D0D26AF9C2B84088ED8ECDF94A1E3FADB45AFDAB46CAD6FF950B0F
+07AA2CDF82374DA76C56D29C80138841EB13F0D02ADD32F88B23E282ECC845F9
+BB9AAECE9CDC644AC2D49577A92307A83A99434F6493156DF25DBF0FCF2EC21E
+8C50A312C3D19E0609C0038554CF4FEF3ACEB7A833FD54B06EF0D617C2971C89
+E4C06075B09B84A4F78A82152B9A9C540B1D881313C2C74F20ED064A9606EC2C
+B56D7BB4797F1EEF4A9B13579CCF311FA4A4DFA62D80FDB7F535CC6526D1AAE5
+45C008EAF024B48C377522F74D939A475970533E645B1BFA81997549AFF26F67
+2AAE6C2EFA357DB3B525276EF330905688777057F4E4CBF584520A534A8587E5
+5A8360891E75A15205E8ADAC4A4E5A6E27D0C4A7D492216E4BC023AB027F37AF
+A8DC7579BA50204D5F45A51460C5BD8A5A7F87668CA6451137F2F59E117BBE28
+5C40820882A5546FA76F0CF49F8A6EC445F0647CC3227C400F56E7E9B84A6975
+E85E243CC1666DBAFF4E07EEAF3AF71BDACB30DAEA792F2B8504CAB071544F01
+5D66243D529C479D276FE22F7E275D9E7FA9C6EECA18716B2F213916E32C1D94
+6E32397B41AC6779543218E506569E3544803BBF9B404A983EBA62A494187B30
+8D3DFA4E1237A2E5E08224A60492C09ADAD8775B7CDB830520829BA164209ACB
+BCDEB2D574CEBFB7AE4BE72DF4EB1945FEF2458761AD8DCC0D378AEB7DA002C6
+9C14A665DAAA532B0ABA98D7BFB5A6151FF6703385AF7AE8FD315A492FCCDBCB
+B825707F9566B3B4943A3C61C3DEFDC31A843A2D67AB06891F3E110DD8C73D3B
+B5E4151B51D9F13905D7D94DB9ABBFCAF35F43B6EEE256B1A80ED6D1739D8D5E
+8C767F6F0E8704C5345D028A2A6DAFD9BB7AA048B8B895FE9423A7ACE858BADD
+595CB074A128DAFE08FDFFD6BDAC0114159A702FDCBF8013804B0CAEAD7AF38E
+FAF086A3248AD4FCA1401A85AE2F72E3E6956DC0996FE8ADB18F89B14A208A15
+13F81AF73D0DB72F78C4DA634ADE3C73756CAE6AF2E149C26316DFD93370BE1A
+FB4A79F77A67C07CB0A53C78367F21661D4AFE9E27328E077B522B50FD9AE2E3
+DA087BE481515B5DD7BF894A96A84A6C78874100505B7DDE1D22EFCE8D58B3AB
+313AB5495F72E2CA4E6AE22C0CB854302B9990372F1661D9F0A517F90686F248
+C5643008B3D29F7296E5C8FD4049886662EFDD4106E17C879F5D41CE84F87E89
+F6A3117C968B95A35940CC29C43E1E0DEF51C1E46B676301F40D59615C3F73DD
+DE37B72FF7105DB84227DA5241583272AB1C3CD97AE11C1EE98FFDB5E5F44844
+8FC41BEA5C54B26341AFF6830D9D0A5A2901B0653D8BD0746838194D240FF753
+E99750D3383373F453723D86BE97B571B8B84D8696089B5CFDD53E6C562A2197
+A8C4FB0CC690C27761A816B441029D3D306245052E0C41B53025D8CB7267CFE3
+C17FDFE348E765326F91AEB700CC49162DF748171214252CBC821493DD01AA20
+417D66DF47EBEFFF3E9BB2B0A2BE7D9B8C68BD570FC2EB0FA54CECC318F04C43
+19598BDE93F2F13DC7847354C99059AB20593EE51E94F9D4E9241869D605AAF4
+9D9B5FD88C3798A039A67993C5EC68B6326B132E647F67EACCA7F7AE7F718D85
+12666E90D7C73EF210E344964A38228B236679A2B18F5E081234CAA2458F8D83
+3F0CA308D19663CB12EB904076EF88E556407C33C9380A6A3D68A9EFE65387C1
+A1BCD2D26DFD2AC0881EC30E81C0A4E76C244A2BD822EE88C4A60B480D107E68
+90E419A1F512E865BA922A7830909BC2611A80931CB2E9344529586726614D94
+3AC5200FB9FF68AD9686506C5EFA8788C0AD0251AFE7F95E84683380CDB421C5
+B1A783B6D5F3A6BD1BC1C14B363DB01C87C0796DCDD5BECF41A1A9F43183CF6B
+82C2AE49F0BFDC5DEF7729F2E638EE6EA9E4D059EB9BB1B992AD8C82D501A550
+1BF73CBBFE740179B54E193E84A55DCD61B343C1852780FFB44248FC9426AC94
+AA2B3FE20FBA30F6C4D1E0FF3EDCDD8C0F57CCB50CDB0EFE2E04A8927E239C1D
+9B026C7929BB48461D4D695FFC766C8A0E545B1BCC2AA068D1865333108E7985
+2D93F9B00EA0A90939D0D3840D59B6CC0CE2C147B2E1A9A4F14270FE3ACF51D5
+99F7349106165AD627CBBB0ABA01ECC6D3A14C1DC1ED23A9DB9865BB4396C51A
+31ECD001EAC94B33C34E29C5611148EF3E55DD61813470B8F3CE32564C749414
+3C93C77EA5A3538A0B5AE3FC4DA32813B06772E0E48E25BB39F3F6FDCC077E86
+F86FA50E18FD19EB2F37311CE87F18F3BC85CE7FD71CA92D5C3264E34E04A2E5
+70C79D99F54D6C6D9D527AE45EBB48411221134587D2253E7C8ED7658EDCA34E
+5E768DD14E0200470F73C44D006CE8CB35DE1CA3EC10ADC668B0662A7774C891
+84EC95A31DD872F0728D9F65CA80940080E04630BE4DEC77A2C49E3913C39978
+BF145F8832AF2C4385EBCDB15F9D32C22CBA0CF950877717D6F1591D7C0B8047
+8C9BFCB16AF7124ED83137695F3D69228DB633053208C29E0ABA1B06A7FB3EE7
+5625CB44927E2DA6E038A6E62DEBDA2D96A03177982D8FA33BAAF4426E05F4B7
+9C1748B3FF7691F9888E7FF864A10B9DF761A41E6B5CFAD2BDD7E1C4924AC97B
+F4B352705316DD1A58637CC12D71C18A5CA691AB2AA8F171590EC24582B1123E
+94D4DC587D8F99E18A711776BF4013C96446BFECFEE4C809EA94B169088024DE
+0CBD20199A915AA406F0BD5F3D63D1467C49B4691AEBBB35ED6624F2D7BB74BC
+E80FD92B9FD04DD9C2BE9B6FD29EC7EC07FAB447511C61DD299C783BC09AE2A4
+7B3CBCA6A20C6631D06D0B2E2482A50612BB7C29B7E7D0A205EB0E8436702581
+596BC996ABD58CD8D5BAAE4B1478195CAFF98FE0141287296C4EFB8D2E7A8442
+F0A3AA9F9264329982532295A176BA1867EF732BBAC49AF485D9D0F7130F617E
+7F7DEEF935874D55A22240F8EDE4F247D5F73481373A392D40A8076BD91079E1
+1CE5998BA13D48D56B49A92B4A18430E316405D2E2E391B496A1934671FF1785
+AF42BA3B2D14B8E04014437FD194455C50289DFBA61B5C377BCBDADA48E82DEE
+4E70EF5E9DC03064907BCB8BE4D59DE069FB0C0CB140DA54708E630767313F9F
+744594AD8A499CFEF733E640A11FD74E46A749F9C7D18D49251BF85C6EB4668D
+67598C31A8F90922FEAEAD4B83B6E7184567DC798E4BA1C4C9B3461A478D63CA
+054F13B502DACB674EB49D6BB935E5EC82BF99FDA7D47C581AD7F940DF4FC6FA
+6C6D25D647033AC69505F0CAC58DE99087F365531A6283CB89CB644688963C3B
+8B2203A94294E58739EF23C7803630A1F9121D62BE1977DE2F41687C8CAF87FE
+CBD7AD3B98E0D95C8C6E1A7CCB0E09465AA874DC90A0F5DB2C5E7C130297FD39
+EFE63B0350B5139D09E6864D22C3F1150B29196E40EEF9723E71158B7ECFB8E4
+C426FEDCD439420B7F1C251FADA347C9A2C49738B5A17922E1EA93CA7B125B76
+57449EAA9C1D591CAD327D0E98EF2D44D614EE9ED49DD31ACAC0B956620B6BA5
+5BF6D08CA7541059D5ED2EF00AE2EE95488F5645BF6837D9241C0D3959B7580F
+C9ECB2BCF3E65C07D52EC9CFB21C11CD4C883E44C173214C900C44D2E1E43DD1
+CE8DFE3DA93C38B548BC4EC46FF91F30CFB97525E1FD4E77686433B20BABF8D2
+848C1CDF1BCF185CFD7A81D2D4BB826E837E2AF35CFC4F419F698DB0C43E9F9C
+B0FB628AC9A3CBE9B1FF4A067016E70333E78B32AB2D89C483834B31F5808FDB
+77492E099F1504DABCA5722C7860CDCEDB2DDEB512FFCC7D287F4945FD711F28
+87BC3D36173566B81FC2C1290C717A09697DAC6072408E20926D39270121CE58
+3EF97CE12EDD7F87F2C8CFE36C3C0400869C0D813B71C425343EE0CDF717BDD8
+409D5297D0F8F7FDEB0257C0A391F5635E0DB1116058942FF3E7C94D5F2873A7
+A3B0ADAFC3835AF2BE474E6741319BC6695FB37F59AEE388F81F6E66F910000B
+72E6BA7531B4378CEFEEDC79CCF4947BA1703823B5AB4F4AD73D9615C66C489D
+99D68E49C9BF765B7FC547BAB9640D51D5A7A2396507AB5A4DFF3D14F52422CD
+8FCFEAA06A56C6C7FFCD29C9A7A59DDD2A909A9363FE5F1E9629616D25ED38CB
+E754C059E4379318CC491C3B1A90128693AC53F80F8210FAEA7EE638902A7D3C
+82B95B3F5AE340EC1B648DBB9FB679D6E80B7F426D8671FE7136D97F51E2D2F3
+C9CE9183E4061CA40091A2A70DBB9ECBB19CE3F65ADD0FB346B54BAB182E2CD0
+EAF4C0F402C25573FB344EA771B297BEB615FCD0595172E84ED2A62FF8962634
+23C19076C2A9ECEED5135994EB397303A9619C76DC55E032DA83FBA441BD484A
+59F70A5110A8927F6239A14D4E223E189A5462E4A92EAEFFA4B961A2A32B320F
+C2B4E8C1821FA67A655B5042C15E4DE1FB3652B55078DB123573C4E986B19DB0
+1C5131F3DFAB271C30A5476B4A19D8FC922E31879C34BAED94C07A4841B8209C
+403369FB8E842610D1EB4662B6171A4465FD0E819964F62EC5B0ADC92F08CF90
+1DE0B410FFBAD16F6D355E8AD72CCF67961EDB6CDA82398021007C2D0462E893
+75EB0710AE4A6CDD15077C9DEFC5774EF4A657734D703CE42174259B58E5277E
+0DF26BF59AF8D1A3E7DC12E3C12AA4B67CF35B19962F6950C2020B698D971B35
+82FF84E72F72FBB0C54A112BADBAE6C4CAA358BDE6A705AB59332C3850CA3D25
+C7564499BC1319121CE0D93218210C68080AFF33420E3CB3A48BF9EB66BC07C8
+A79D8CD8E78C200FF7CFA3DAED0B9E87E6141C88B436D8FCBA50AC195FCBB9BC
+9512B95FE3A37FFAAB39850FCEBD4D50A243EA416E73F53B4B00F3B6EAE0CA06
+0693AFFEF215D00BFCAD02E45496D7C8F5E99EB9096FC4300D038C1AFD31EC4C
+5ACA6B72C1BE7204E37A4CBBCB1EC26AB87F2FF82DE20601025169A5FBD2D060
+62B5B2DBC288C79C33B596832AA18D730AD572C6EDFABCBD36DEA87C0F323C3D
+6E537AD3B43C6F3A905597570A8C6B0B4A5E08C08EAFF9731E745F2BA8ED0C0E
+1ADF7821CFCD4E38F3F4C243CAD31D9F8FC68B9043740852B4CCBDD37BF728E5
+648215961FA82A0C847ADCC5187331D0863A4573BE520C02CAE14AED4F06B3F1
+FB4A318AB54CD86DEC824707B29F858FD726A167F2333855C0575EAF4EBEA0B6
+754B1775F967140641FC06F82B191244186FF347A351FBD8FA62E8C978B21F6A
+E124929876488AFA97FAD1A68A0C3496BCA768F4AF8016D7A65BBA3AAFD7F5FE
+E75FE714FFF3D54D09C9747ACA01CEFD260985C6E87477C9C7843343C7E9E3F4
+0537D461EF019E046DB8B5BA258462B2FAEA1826B3410BA3333480CFE0DECE61
+CE2731FDDF7FCF2AEF7CC2B1EE7095F480B3B27932ADC486BD9CC130D94BBD05
+43872FEBA04FB8866ABCB4D379696E73B84BBE98FBC4A16CFF22F8A7AF754624
+2912C228030FF7EF23D51DD61BEB5171AD31E2B630475E16B6E0F3C78D44AC30
+712D165DB6598B1DA7014496E3367E39C2B1263ECDA94AF1363599B3B91E3345
+35E38C1FAA3A2254373D2EFC8A090D9EEC1B9890886F53064FEBF025DEFF64DD
+727DDCCE1946D6268F7C1BA2A29C4D2EEAF3464C06966889A2A9474A48C998B7
+9FD37B0F77BEC0938C8A4F7DC2F30D810934DD9074A0D4913252219B1705CBAC
+670A7070241F1EFF0C74823ACAD9FA869819B991B6D673547E7AA858675FEC15
+4E4790AEF4FB6FA3F8A300812A9E42A84A1E5FA0C32CDF7432717B1B7A7A483E
+D8C59D0AF0A55325EF895A8CF09FAD951C4FA994219F6954E79C036C4F0DA60D
+759F935C5AD99856DB6F328F1DE82E6182E6A2623FA9EBEB12439F4CA16EDE63
+C435C266CEE4DB3DC956A4298E32FE7AD1A1D82919A2D780ECDD3A9EFD11574C
+2E17148C75724C96F6806D9816FF74C1ED53860EC32078E31235F1F0726307EB
+571D3D1051B1DFCA062172113B368DF7F927E25B8B5D5C903F954694EA680AB9
+5A7ABC4F9811ECCC659600935A2D2B417355CED0E9DE8BF235FB36DB6E4EA73D
+800C7241C3425690CE532B53686707C645B40D6E941BE510C80291AD80F2DA2B
+F4ADCE3CBEE1F8CCF8749E97308D8A3073A64B3CD76EE03470F63E1ED2CB2322
+8A8096DDF82AF8324B2A3F80862B1793CA077D2CD22E0944FC49D24570FA2B21
+EA42BB32AE43705A0598CD92A5D655BE65388EA131384900D8B4685BFCE716DE
+71FDE7E6D31149AFD27E9E5D06B8C065ED8FF07F5BAD5BE43F11BF9B9133848E
+0FB1C843F0760B43B880E2F95BA5FAC887180BD94FCD6D373246804B4F707E6C
+A55EA48C62FF983CE5B83DD415E6B3199F9F79B9F2E18F3D81A2E50C067C8A16
+27AD4655FCD22787EBBBC38740A6A0C96F1C5E0612F75A15F13DC8CE2F1E888F
+610E3A828DA46E7D6ECDE8CE3051B85E0C570AA0AB2736C44853515983134AE3
+09F3A196294C6B1588D5101DD81DB9130B9EACDDB522BDDA775D909B05A0FB5D
+4BAC2017418AE9D268458B7859D5F6719D6FF1DDF6F3F1771058610B2B1A16FA
+1429B29491E4C240C70462CAD84EDD453B92DAC60CF9787F7EAEDD20AEF16F02
+88533ECD8654FC44118D7109E67867D4B627F2C3E5BACD66F44D55B7DE146094
+462E3EA9E94018CD6B679E78A506A412F6A63224F5097337B1EFA51AE58E8DAA
+A77C7108462A4D76C4EA7217892A27D761615BA12EC2461AD67393CE6FB3656C
+86EB58528BD1C2AB9339EE79C99363878B2C2D1B0F878903FC334406FFA0E2C6
+21C7CD68FC90E302B9D4D12E4E1C316A4DD68408DEB1A969EA71CB7F9D77696D
+B05E9D7A5F74A78F6148319CC1266DECB2C3DA32CE22BCC9C8DC3DAF75DE40C0
+9EB284191D60B67ACA3B6BAD432DFCBEFE767AA7905D56E4D6117C880228108D
+E845568849BA09DBABFBD2A66D39534824BB4BC38F4456DE7D352E0322B400E1
+95153F5C46078216551C9F9AE4FDFE0DDA73A683E7F185657C98548A8EC0CC14
+2348E86CA5898D92B737ED43782B68A04D6A87556CF22A2CD17A5460F479AB41
+B3EBD3CDF3B1EF9DADB4E47348A5F2BE83548140FE6D3FF4066DC58EAB1F0564
+C58DD09B22920000B72B190C0C9E40D1E4F761177967025F42B028404728AB26
+7667E6B7FE7D96B736B0BF95650C3B93F9208C0319870D0447C84EDDD311F2D1
+B2D97834F9B643BA80EFE63A822A47B5069F7527244F543C9B335AF37601D0F9
+0E5B4AA0786E9818F20B9D30F1AFAF94C946FD6F755303A1DF9705E2750F28A7
+9032C8BD5075E6544736B27D19088D2EEDF0B15587792D0CBBF16B0BBB8541D8
+FD843B5EF247A5789C2131A46BBF89A146F11CE1B2065DED3BAEDB7982DABDB0
+96A5BB14CBC12B0E82135DDA2E514ABEE3986A64E1FCD334F62809DEE57C3CE8
+4F7149AE9D3CB21E272F62F093DE1B92D646DF2529D415EC0C9F7CA770CCC88E
+228413ED2F3875B8591C7A9A93C84176E16FE8A23C751014185DE91EAB2BFF28
+A6483034E9D6BD5A0E4579429EA264E8563AB38AF47FBEB47310EF1CD1618F0B
+158C0281F7CCCAFA53EA0747A30A76198B42F83CC5A8C4CDD3F21EAC95962683
+9636663952CD428830AA9764A093EABDCBDD8E7ED2F9DC4867B0B7856A0DEDC4
+501D79DD91A829DC0F6250EBC447488562F2DDC910954B2A064E2DC7FEB6D61E
+3BE266D23958B761557EF7AA4B13BEAE7C175150582561423EBC7DD345EEADED
+9FF13E29DC064F3CB241DB7C15DA5BD4ED2E4A35C7C678CB3CC968DA32D7E462
+5A283ABA6A7C37CBE6AC3F50CDE010C5A58597CFA0D6F2B18FCB7EB1F1F4351A
+238EFD32DE3C8669030B448A17D7B8DCC65D4791E86A1356982C4350D3BB7C98
+48E7084DD80FBC46E8355FEE4E2843F0E380A2E0DA53DE95F17ECD3439C3E8E4
+5BB55B66A3CB5566AB01D52BB475A23CADC961CA7434A5C67112F872111DA282
+D4B54B1D8AF177FDD13BDC58E23B567085138423BD1383ED7FE72AD5B4488E00
+81939745F9D5EEEC314C158B2B89C96160CE1157A97DF95966E68A20D7C7D1C3
+1C0DD39D2B32125ACACD1F0E7031024C645190BAE4017A0EC71A457AA7BD8FDC
+A046D20573A2BD1B1140A55AC771D9F649F59C8808242F83C0D0E4DD89EB9A01
+F6004778FA6DCF36C281A772D1BA8951C4FB2C4008331C86962ED087B35ECED2
+0AF6D2997C8A54185EEE781BCE2AEF2B6048F83565091AE2D09E586B6B873263
+7968321C68E3FE5F769C954E826B7AF6443DF7C85575D0198BC9D1DA51E57659
+4CB4E641B22EA1C0F5271CCDED2CEEB62EDBFB50C87F67095D5433BB06F9A2E4
+65FA29E817A77EB3EAC6BC204DC698CE495A9258D396172737E0CE46A0B83EB2
+5AD787FD9867C417FEAA6E9A2B82A45A1C113CD61FD52DB3DC784B8CA34B45D4
+5BA4A51926490399DA34AFC6EF914D03E89DEA7E8D29E3A08DD7446AB998AC00
+11E38EC4CD4AC0CC5443EE9ED3FE03A4A278F2BFDCFF7A329AAA92C197877638
+F7EA2CCE9B98E138A8A29105D3FBE66558C38895BFADC76513B92AE600CA52CD
+2B3956A59AE3598AE3E4771F88D44C53B8BC449C9EBBC24CDF6474BCEC4CFF67
+886EEB78E02D0CDC70A8B57CDE753B26F82BA6A2715658135288ECF075076846
+0B2EF7A1A8F85370FC569D9996B2FE538BA27409D3048ED533833B0C38F50681
+069E6B906E338DF1A95EA7A207376B5760D0B97C6048E81569438A42FDFA0F5F
+982B146210B9DA0C6C6DDE7E4DFD1F82E5BD3C7AB433376459C733A45B100245
+3B5866783490B198BF8FE1E584C8AAB115385CB8EF1BDD80440A55618BE07866
+991AF27FBCC24BF1BA2BA12C383FF1AFB9E55BF595725DF2BFAB550C24E78D72
+6B14E4D06A56F56F4F9B251148942B3C1B164486CFDA0229F5B7F7C0EFA1E537
+7DEFA36C979B689C1176354C30CC71CD4F0BCD57255910083F5094DB930A4EDA
+C7932CF89109B949A0BEA607ACF8D3AA7A776131DBE2107CFBF9B01B36A94AA6
+30F3DFDFC9A4E45462CDF9C4F81809302C453CEC88F6A4BCD6D7D8247CBB5401
+75249615C893B72E59FADF3218D8EE1F7C4D293117F5123F7E32B5C5A661F3ED
+ADDE9B641E4621E7799835A368485A9FD6DB7AE67C6B3885F6897B72C6913566
+6C0C76696E2B9AC2363D2ED40B1BA1AAD0F057E08084520D3CEA5A4266F1C930
+DDBBA464B2598F52E1AE4DD27D3531DF8AACE18308F4F6CA7F242C28385256D2
+532A7274D2EB76BC042B262791FCB22DFEB88B58A05BE03B7544903D3286D337
+FB76E55A88075085277A3C575C90BA6D9E32348310D7DDCBCDF0A081B4E1B0ED
+8B99BF5E7DF1163F3B29AED8E28A4411C081260AAD1886928BDCB86FCD749BFC
+1A1CB0FC67710782B39DA2FA325B4268976AD25FCCCAB6C182AE32D875F9DE40
+C80A94A879B57E0B2F837B97431AB798C96D701E54F72189346DCB00481A5824
+1F97C835D74853A10DB246FE1439522612511F43ECB4AF09230A45A481E5B902
+9F4539F15C3FB2935865E926E98E2302B33079748D5766A5FE5DA049A1B9DB0D
+6308568B14BEC56F77C9927CCF0F2E8CE7CEA50CC8631377C9528A0C4B74D83C
+719C42B43ACA8038CF9E5E459679CE792C7B139DEC9EAC296BC6477F298A947A
+24EE80E965F698545EA273D248D4DBECBEBCE1E134BE54C152A6AB4995C1DDA9
+111A90359B7E0E5B2A988A23BD4AE672281C8E4AEA7EBEA28F24B7ADBE1E01BD
+1D04D26FD410402697D836F44E933843615D845FA80113EC9CC7A69F4DB42B98
+6D0CD2E16FAB1658318B8A97A1F34C988784C75AAE519F3AA7288796B3D12095
+84301CFA059C88ACCB48D48431D0E9522D2495B690349CE3B483C2285EE1BACE
+D6CE67E7F3A21BA39704724F864DA1C235DCB8DB56098565CDEF44E305AB8628
+735A8C82E7E505FB7275CB96F93365A19A271B92D3B98F4788140106C52F1940
+01DE66EC903EEA626B750178E619461F87A60ADF4FBC973250EA990AA83B2ECE
+273DDE3BB1365E2188ED6036407055A86070985E2297B78BA239072F9CE4E4EF
+93BD74E65A8E16CFF23E74ED2C4E68371C1B3C75FBBF229CA7C9F9A47FEDCF64
+B4FC65899D911FFDED2A22D602FDE54A5C2E1E76A614CA7BCB7116BC7E999E9A
+3F39606BCA2CE5DA129DCFD3BD54AB968E57CE2F8875C4470F7E698D9D6B32C4
+F9027740B601899FAC7D2006B4273390E1589EFC0D93844939EAF512A6F9283D
+5B79BB57CAEF154AFEFCD6DA55C60851F816E82F301EB50316436B40480CDC8C
+E89019440DC665025E354B4BC38B5845BE84A6A32189BF236495D0ADF0C8135C
+834E0FD078525A23A318583741C0A1ED8991FEE67A6B08B76F2752794A1D9802
+C1DC7963C44F094AB682F837A924DE22831B7CAC3E7F64F20D22AD2E4778084B
+F9699DF59CCD03721DE396B7E67FD5C96BFB4BC5444F499AAEF31154410C2556
+8D94D6959DD3995EE172CC7566EF0153021E08E0B729CC91F38B7BF99AD3E578
+07B364D653874D0EEF20C1BB350D62B486F338957279EBF6B9F1D031C8BE8304
+CD3824423843E184B750FC44CDEAF1FBB62647CFFD159C6FD0CD03A5B2B5C5A6
+BA96A3B3F2175E77B2503B7A31296C3800D40D08B1D05CCE4F4AD9C5B8517DD4
+CBEB91317E2897DD3A87F207AE00A5563A12F784B35067F7C5F90B0E759566B1
+F4719B6999FB99D4DBCAB822F414D1E56437E804F298A33ADC3BC529A4EA12EE
+0E187D2B42A39F5D441076C0172A3FEC9EC49E4B4B7D2F14A06030D729C4DCF2
+E95A9FC23833A7A552EB73CE347A708EA75833A66153B3597226AA3502F405FE
+2F0089D65BA3BD10B6E56D3D2AE1A4F0F57BB4E7D614692947C507145DC09140
+36A2FEDA5218BEC7C73B14EFFFD1DCED9C2F05BE603AABAAF449FF8274F63C8E
+B9BCC8EE19B6768FC3E240AC120A077985D7BCA277FD06B8443C4054B6E5ABEC
+65DB5B6CF2608AF1A35C0C250286AE6ACAC5AAD9F1E84D1554B703787DEAB48B
+B6543964A4C4AC2E10A6F52E585C3615BD921A7EF6FF05B56BB06F6C16870F58
+EF65326F9BC799F033FD4719F85E577CA11E20D52BD6A92A1459B54CD0FE1C45
+6022225FB9F637808ACED409924D2BED4904B1A6F5DBAD0BCAAB333252D9C447
+E1292928ADB52C414EAC5ED54461423F4A745F2ED469665686AA3F6DBF914753
+54DA90D47DC2036B888BB3E8C81BD96B6636D4985E984881B499631D913DE2D0
+1F873D57A48F9392565BF27D26B9126CABD10487328114DA1398B4DA422C28F7
+0F7CAC19FA6B2DAC11B14A4E1BA4D0FCC14C5581D90B100B617EDE37195A67F2
+6DC5371AEBC0A60D1E9E8D428C91DE7147E937463D3A83A5753FEF4F3D852FA4
+3BB4E2826F8B7FCDF057E81BAE3EA08B88C5E347A9AADF338541E6EC02DEF8BE
+7B759CD47BB9278B8629BB7596CE548B323465C7ECE9BA5592B48F50BD0F4951
+E844F5603136866A4C5FB0C77ED355E6A3F87446488A24862B1D40CA4DE8D2E2
+69F4354A49227A5E67A5891FAB0EDDCF3DA61D73F4B2D46455006271E2E0BB13
+70742CBBED0D47D41E67ACB89590756AF739890A55DEB3D7CD5635E0F29E9492
+46BCCC5B8ABE6338B2A6ECE693B7D122BCE504473B21AC6FFDB70FE1CC44AA9A
+61DED2E1DE627A05AA6AB2BF2F6422FE9289E11D89F01B258BA82B3044190E93
+FCC3F51275C66BC7AE817748C20E9219B286D4CB3FCD571C998D6CF54AC0D01D
+0FC050EFAEADFC4FB61CE293186009A31354B3CA20660A7B313FC47A7D539E35
+7AB260BEFE7E78BCD3FF014C25470192B83FD8EAB975A2F25F25F7B3DA8D3920
+9DF9BBDCBAAFCB8D1F9C266911FE077D122BF2FA2C456292022C06B2A96134D4
+03736C80CB87AA5739F79265B104B9B283887E87D3260A465A2DE3C094B54C2B
+A719FCB674F0C533B5292AECA87BD9E1FAE18FA59B527C9635B77A0C45ED0143
+BE4619A37DDED3C900D0D4AE9E29CCD4A6E69B6F411C044B62DF38C8E972A5BA
+F854FCFD80D9E30D9B90C31508D48E1A4CBAD9975AF4789777EED902926695AD
+30FE874641C1B6BBD9E1BB245989761171D76889C92AAE8A1A2C38D44EEFAFF9
+987B900CECB3A6E605206F3400788C15D43A709E9102C9FC4C684661CD8F4E4F
+3D2CB2E680D49E047C3E0B37F8DD9B5B61450CF233911B65CE6CF06A00D5AE59
+198DFC3FFAD98F7B4D1FC954F0F8055CD1B69BB2E2B70DA9FA38FA35156278A2
+C435743D67A19A6B6E00B9439C0D87BACE1BD70F35B957EE067E1761DE46926A
+BFC6EDA3B9FE5CE82263F920C8315F4AD330AB6BFE13EE717546963CDB255B6A
+CBA0813A3EECB29E69A4431D9DB1AFD0AEC7DDDDA1687111F2617121B67583EF
+DE27ACD00BDE56BB8B24E6B3A3667C7AA290A79565CAA5A39B92A6A11E169FD4
+7AB929769405DE2304F19279DDF488E5850C8D7CC06D8496045CAA536B874437
+5D12F4222F7BC3424D9BBEC58E3C915BCC8AA2305FA6E3A6C8F7572F31FEB8BE
+67115FF318D1B739290E0D86DF67BBF7FE2D7DB4CE34A8E72088F136EBEB1699
+BF088B5F1174356C62AE6C05C1112DDF7F125C4439FBCD41EB205CF446CC5CE0
+4087A97383F17D4D85E88FCA852A4111DDC13B76BE2D31D63B5B80A6633DE83A
+C68FD3FDA1D4DD30C209A403F431D7C0B902086D705E715CC98993A65B4536E0
+60ED2902D3C6BDB9FE7824823E9D4DD4CEC7AE050D8D24C5FF51260E843ED9FB
+A3E5D974CF96944C02C355F9983BADB66964A497BF5ADE9DBAE5C8A91FAC4F4A
+A221832EA664846F6768D695CE6F4A57019B7EFBA228AC627D8E0FAE8E751DAC
+B1D1070C0B041533047DABCEB90E6DCA94A67E07561275074785873E30931043
+D88F686F5C9DF58C68FBF02EE9601B100C2853483977D5DFE6B9893964249A1E
+85024E3EBD3E5522CA0D42A7F8D8096125D26203D91E93F7F53AC3B169B23274
+E9A7F6A82A485FB1DEA2A3856468A614788A7FF667786E31A7BFF05AD49511FD
+1BBDF9C122DF2F4A90216071D2F40C4090A3E75C4722E7DD31F20E6534FC9D2D
+2B11C29FA0B9F3C12CAF72B22D7EBA6AA3F46064EC7AD5B568C146C4D11E1120
+1CC423CC64CDA283B703F2B6CC53B03FEC8184A1E12E0E64911380DA56B54C87
+7E20DF53C6C1A8A3B8A51364C2190C0040829B21CFE32DFD3EBAD356AB714AFE
+A9F3F17F640B7FA4F1D1932AC77BD494673A92D722106C6FA707A8941A6E06B7
+B6B784846119D6004970B75D63D4B36167792E976662CF7863690F69C6509065
+F8A6039B0A121CDED1873FC0CA517465C1E882E7A6EDC6BD75C93E67832DA0F5
+3F0390D36BF3BBBFA1B77A24291EB5823D6181A089791510A76D296E93A24F0E
+522C9EAC4B02C645D46263E0CDFA9248B9725C0089FB2DA78F7682E7BC5BE375
+CFFD2591ACDA56B9BECBC342B9CE42F5BC408D3916FCD13D26BAA1453B8AFD94
+6F276E545ACF4CAFB8BFD01E1F6EB808E994579C520EB85621580E36C867FC29
+D82C550E3F35DB262099FD8A37EFDA8A86C63C598B31AF3FC5D6E1BDC48D8B36
+0ED11930A54BD46D85C1A89C1F18F604A77985EF33730705399F862C735CB471
+7A517CA778890CDFB9C35698D33F6A38A67A631F24DB95DB22D7586A416CF5AE
+0F119125EF16AFF97225C3C373E7951287022EC3CD188766105957157C3C1A01
+BA2F130290B5F98CE4445952368130FE3468186ECD90E24BF958039E4C724A4F
+4EBE6713B7D2F93B08EEF45A6989AB58D57DC8881794CF1171FE178660EAF026
+395BD7395CB6B7BE49DBBA28CBC30231825E89394F10A831CCC58DF042B9581D
+B88EC2324279CE19DA29B876FC0825ED9185111496559F3F4CD7EA3E69B3A2E1
+B630894A968F3565AD07F2616A8BB372EE1CA0A58EBC41B3AB02665CC948A506
+2A9DAC0FEC368BB04F932DD9715CEF6E0CA2159BA9DE52C6AF32F29D55162322
+6B2E952C516B41C52538D91F7C64B521489227A3F826D87808D7F38202C6F885
+2FD6038A468040FD5177838E5950F3B171F6E2153970DD9C6F6E78963944DE0B
+EFC46867EB5A50230BAC696C793853E25A114E8E01B14FA2E91D2403958DC8A2
+D24D31077B4253B5C483641D635534EC6AEBD65B7C81536CBC3485BA387B9205
+7D813C9FFF6DDE964833FC7D47C07158C23408428AA82F8A2A6F299C0DB08D79
+3570679F5C034238C73C916057A96E52AA459ED450609B8D6464FB024A5A371D
+91CB9BAED1C113250458869F997E6315685AFA17E5C328906B4FC9A78E539913
+5928CDA343416B4C0242063E9C49122EDB38B9063450CCDBAEC1C16C15E948CB
+F970CBA676162360A81647F39EBEDD54B9C53328529C640983B5BE0F04595E73
+A6D84F5CFD86E1DA42F7BE7EE33441F3FCE0E9451442D89D8302CC76F39CC7CF
+A5E6DA8CE227CD42C4F99DB10D829D85153BF7A08CF72FB88DFE10D08CFA5060
+CD6421C8EB301AFC38A80243D2D370368D052927DBB3826841995BBDB2EFBFC8
+4F51617E83234AA906DEC34BEB84BC0C511D28A87CCAB72D216BAD9E0F952108
+44E369E2454C0BBADB42C925FD4E9C93EEEF2536F78392C409EE0C303996E8DD
+5BB7B707572A73EC0AD84F9BA5D2CE3DA82341D24D6E0B262805BA7327EB65F0
+B63B291C25DA70E6A96D5CAB02E7DB6BDDA2D7C396D53683990B6D4A1D71B5FB
+CBC19A35861EF6BC34AE92E91E83373DFEA17417A7E2CEF7AD0EF3F225ECDD34
+A4689BFA6A8BC960D1A52B6A76DE5F14313C9C71A362E0E994A3CB4558DB50CD
+AC27CE99DF1365F0F41A0330E09230E6F0ED06AEDC01884896B7573BE864191E
+68DC62FAA0EB8287BBFC5AD4A727BB6B86559C56DE8E80AD99705154061ADF05
+4AD4CDCDB4EFA9B54DDEAAAE2A958852394157EEED67711709EF83D7D3F00552
+85F2D406430AE2811102D65E8A2A07F89B54EF5FDDFA18F61D4B085F64A5380C
+22174B1BEE78F87A2C26F536E19237664DAD98E133A61BFD8FA5FEC3EB1C46A2
+C6F08BE7796A48C7ECF465D6C37F17FBE0BEF0D86EF0D15B3837296D54F6AA71
+EFE01EC5E9757DBBB47C75FAAE85A54C120706B7773F333E18743CDD7F4CC731
+2AFC6D802559241F6DAEF43CEE59F17C822287B4E4329C78FFB4DB8C7DB43AA8
+18D7D6FA43777D86FC8ED11D9F224AD16B465ED8E336C25F2378F0E95331FE7F
+3B3311FE4FCE9A9ACB68D7C593BBF9CC3F673AD543E7478AAF5C63E3A693E1A4
+51DC5A57EA09877B108DA38C5B0E20D2C8CF289176771F8C37C5B4E27B226444
+415DEE0B03787D6B75CA699CB7A523896278997313ADB1B18376B60836E67425
+D2AE291D57D98FD81920B43A27B94C4C744C88319202882DD992AC629C7863CC
+4449BF8A3B3E5EA87DB73DC6FE8154B5A6A8B901F48DB794DA5CF68C8BFC5B7B
+0871E3CD12C3AC4FFB89E9DF8CF6EE7DCBAC75C2FBF6D438FA3A9E3E9ED28F64
+0ACE37249776819C76B27DC7BC143B0DD9AC2616654A07C89E8C802594743887
+8DE2A0652A749D10490B1D1AE370F4AE264A99CD5E18499F49E0FFDA8AD5C1DE
+ABFF4F31BD58BD70130BD06F7C9572DBADBC772599D6E8387C9843C26E735767
+2511AA31CDA3319F04E28C3CB6E237ABFD25755C83CAED8C8EAC611B76EB320A
+42B8A30198E25B3437E92A4A25A24E47441D27053BA43646A4789C9528B39D20
+AEFC8122CE90D56367DA42FC11667053F0965D517E29F5ECE2B299359074FAAC
+55DEE7B2990842659F7291201F64BC1C8894AD4F4E96652F3F5B961987822D33
+A4395C5F14A725292E57033E54FFAC2ECDD9DCC87E2679FA9C66C417931083F6
+F0B744B1B778842A06A6B37ACC004498963FC7CF1FB974E541048D9EA7AE0A31
+8F4CC57829591FC768CE6DF3F2D1799497C0AA490BE315E7D18D0FD16603B76E
+774BAA198A68EEAF6FB9F7231E1FAFF9FA79ECBEC159EB5C0DED1E8AB66518E5
+5D7756A9B7A28FE7A252F49F9C0ECBE8F0479518A43F100FB331EC3AE7CD14AA
+8C430E37B4681B2FFFF4B4DA18FD1CE2FE96173A9D83DE9AF9F1D10A51374A68
+217AC73D2ACFFF9EA4634AFA242A3F6151F631938D3519F72684DB67059BA07E
+3043F72CCACDEF6686F67938D3B08A029EC0C31680AC2B8B7AE1E1163DF458A1
+53362709163C570E61F245899FC8B9DE5A10455C356B16DC1CE9602903337BF4
+700C6D50EB0079E1AB1FDB18090B90E809C9199D8C5A302D5C1295339AF1079D
+E0BCC727D07BA7279642F7EA8A6F67868ACB094F0D0788596165EF8B49B6326A
+F247290247952F39819843D7116DBCD690B81606EC83BA24DBCE9698F5562840
+0DE42F70742FE181C1438F5754B5666618BC3753703A31BD70B85132BB94441E
+CC9513B8013454CFA3EDF734AA19CD69F7152D4B8E532AB2F5ECEC8924D875F6
+E0555BBDF4C2E5869AB718282D95E340A0329B0C5D83E5305043A49FB4B5A240
+67995F3A3D005C5163E617656023871F92A94C4D213687C966B3C9F63125E5AB
+01C05090211BC7EB869F4B6D89E07E7AB52C998AE4B99B885798E78797BAB10F
+7BE7E2A26C19A7FC59C1EECCB1880558226F4467E4CA6139AD7CF7A3C0BC8913
+80A4C1633F322A96E12E4F543B5A2248AE5CB39E5DC2C653A684A7FC4C3EC3DD
+1AD06698904F052A50EF846BF80894249694CE2EEC636537C2FCB7C43450E49D
+FFEFBAD97A680C396D378C2AE1929D6690EA995CE336AE9566805C870F3F0AFC
+E84D4D4C2CC87728CE73F3A8120E128623D9DF7A16B7263A510D4DEE7787A3C7
+D3FAF1FAD037BB27DA9993150B68E2E1A082C07100F85C38782CB18E91094C21
+992EF3FBC9469D9F020BD9CF531CDAAFD75486F38FD7D20A2058AB8BC616AE29
+E365DD8EEB3F44079C43CF858D6E76ABF8B0305D8D1AF1CDC286B1C9F5E37C10
+93F14C80D2EAFC34CA398DDE1813A84E326E9F6B6A819DE8F610F5D663EC9A61
+9DCF5FFB482585F3D3FC88654D54BA78371D57AB091DF691B2FB7ED4DE65A187
+E828E1B4B2C117D240DD39C10EB7E328E0EB397A2E115CFBF993C6FD7B8B360C
+7B5A151752770C955E92CD6CC2930224FC37B4B2187C9D2D187D4D1AD0F38C0F
+4EC13A1246E17C5966D4B422BD54C6ED89A412551445259542A738614BD601D5
+2B30960A21B43523EE6CEEB986C9589226149CD11C88167086CC4887C1E461E8
+E6849E06F0136891EF87B31E5F8DCCEF1F13D68A656E97DCB871D8266C18A828
+01FC5B137FFAB775EAF3F2B5FC8E0896CAEB74C49D2865CD2E8221FF4C2EED39
+86CFD47CBF99462F79B851ABB16C0AEE142A49D5B6C4890F6FA7614143525C93
+598BD152C550D1555E347A55F1374C933A632AE1595C462440C0BC39762EBDD8
+00EB2088CD8BE7F2CF72C786752D93C5C332E23D7513D4DE6C7AB0C9D45D6484
+42BCB92C2723CA156DA4E9299E96F73A561E1CC07341B260507EA0FBA3AD152A
+1B2E3BB97CDE40504B854EDEBD5911576E4E8E38C4EC3C608C46496F2E0019D5
+B2B40B1FB30EB0C40A09833F601276EDD33BCA07A303CF538BF9B6094674C027
+086EF007C47C7D94B8F52260B56FC93C4C2A2D5FEDE93973899DCC6B5559F624
+ADE46D85BF96AEBA8F41886F6C3C3B1D3941597D538B5E9E84E6917E8EF733AA
+DCE8AF32668E3B37BC3BC583E7AF46949503190D2E2F40AE88ABF04DF1E00F1B
+2FE36C5E26217E65ACFE7E66E37C7B4965C498EC6B54366C5B2623A01E1E0B31
+81FC272AC22B2ADB83924FED315F5FFDF61096FE04DD5DD1BCCE5BEE249D8AAA
+9E68E100F649F6AB28E0E5CCD500829C5208EBC81E6FF341B3D949A4FA77C53D
+C3462D081D83DFAC2515A36117BFE1D28FFD12150A671B9EF2D36C3EF576AEAB
+CC9A4A0173A276C244C99DC0B5D0E8DEC8B387D314C39EC21CBB0A68F265EF85
+D93C616BAC896557AF3F3A07745E3D9935FD2B26111238014BA0883D7F40A82F
+E734890FB938D86891CBF35E1D3BB3182FD42EC693803583F3F90899F6D1784B
+AD28CFE00C8779AC9C63349393F6ED5BAAE66EE4BD51F820F46033624E3D492A
+04C0BE71EDA498A8FD8BF51652F5481186088DFC976C58C52846A02359AA64D3
+9185E80BBAC4DFF0829FEC904B68B8EE46078D6D2B588621CF215D7D30B5A82B
+C448E3B31494184A2D596C0A7718020394F50F51673A8BC41CBA7C1C1EE64D61
+BD9FEF88F26784302B7D2004B66E9A3F18BF0D3E2C82CC8711DFF27B252638DA
+32A678CB4D26C1EA13BBF774706E82813823DA958B6F9B4DE46020F7AD2BA4CB
+CDCAF61E9A84DF3718EAE6FF9705601480E82CA7E7A58CA1E235BCDF4EB3A5D3
+C9858869C1CE47D36E0DA51E2157A37918D1EA6DE1FC48937CD77E03139B6632
+19853C54930BEE792BFE3E93740A6753CE3D609EC4971E706941EA0B76DA4E8E
+3059FEC3D70E7E1253A03F09F8A1FCB6FA2173F6A5661A93C2A9D131591547ED
+D1B2278CBD5C2C7207F6E065C9BB5FD0263651494DF9B4C05A932D33963B4E7C
+920FCA746B777F4D2CEE25750D539CC4600089C3E10A5BC754526B18EBCC14DA
+D07F328883F52FFF5F862FDEB61732A9970078178AD0B7CA87E4FEE14DB55F2C
+88B743F55281BBBA27576AD16A730A42D4E1584BCF185867A10E266B43D64241
+D21E5C40E18E75D901C9EFEBFE00D90C454AADC7226F659D7D17201D6E7595F1
+EB85E4DB32D3801CDE200BC3CCC36A7FA0ABE6979C968AA689E0574EA8E8F93D
+E15F0F02565A70DB3C5A814E2C532D2BC2459A51C364ADE0FB1230FEC4DFD6FB
+3F2C59C3A3CC22CA60C752AC8B313A41C4DFA18DF14DB76E8EDC6DBA37CDA689
+97F4EB6C832EBA543FB55C0492862CE28CFB1F28E0E5FFAA32DF8FDCA241DB55
+5619583FAD76D504EF599F233C424359768F6E8F0CEA95774901577277DFD8F9
+0418598E
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -2516,25 +4110,41 @@ BBB87A7C5BD25AFDA7267FDE243A4D15F2AE330A7A39AED25A88FDF019239E37
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
+{restore}if
%%EndFont
%%BeginFont: CMSL10
-%!PS-AdobeFont-1.1: CMSL10 1.0
-%%CreationDate: 1991 Aug 20 16:40:20
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+%!PS-AdobeFont-1.0: CMSL10 003.002
+%%Title: CMSL10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMSL10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMSL10 known{/CMSL10 findfont dup/UniqueID known{dup
+/UniqueID get 5000798 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMSL10 def
+/FontBBox {-62 -250 1123 750 }readonly def
+/UniqueID 5000798 def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMSL10.) readonly def
/FullName (CMSL10) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle -9.46 def
/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
end readonly def
-/FontName /CMSL10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 11 /ff put
@@ -2578,273 +4188,462 @@ dup 119 /w put
dup 120 /x put
dup 121 /y put
readonly def
-/FontBBox{-62 -250 1123 750}readonly def
currentdict end
currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
-3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
-532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
-B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
-986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
-D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A319B6B1FD958
-9429B9D40924DC059325D9D4CC0344F3F997A99E6CC0676735EBCD685AAC9142
-08DAFEC78BB41AFC2F1C219910BDF41D6279284EF600B69776CA15BC8A34347C
-30783C52AFA60FBE3E353E2AE354CF87B558776A22C776C7A0B5AB5CE1F941EF
-C2D9CAC37294BF407A671F10E4743BF842143F4F7DFEE643BA3BBD8BB9E3F24A
-BCCF7F0ADF8BA500620C81033EAE8C4EF2C1DEF13AC575F1B3BBB66F093D3B78
-5412B82B67FFA087AF57182B2230F9F2137180CA58A7D9B2C822FF04BE6CD01D
-43B2CA7058C7B953F6D9B5D6E91ECBAA5CDE1159B0E59C83DBAD96D6C8C8BAB1
-374EF652D10C0F3EE7104472C98DD3572AAF2D45A70BF7061447E21EE3C3BF23
-DF39C2D1B35B42CD5297BEBE6BC94F7C9DC6E61EC67E4F677256FED9064BD3E4
-B51A71B1D27CA4E5AA9E1D8080E6DAB5310711EEF87C40859FA935B19524AE83
-63B163FA8397BDFF443227FEDF7DB27DC35D89FB1C5E435DA0619A5C88AFC73B
-89A2DF5E767C5B536BC7167A840A0C32BD57A14DE69A7D0D819AC36FF32F908A
-5070F32983BB007437E3500799DF5E0AD3710A4C0000F0098D5BE99F2EB9C1C2
-C444FD9552D0DCA098A94B3BF176F511CEE13DB7EFFAED7C47B5ADCF8D4700F5
-7A5FD1B49560969BF5C44F3749370663A04776F749DDD7B50674D93254426C4B
-EFE264BEE7810EC93784B7C01A7F29EFD92547E13A2C7851A2E709FBD5B87850
-4A44F08F56A542DBE072D2FBC58D9E6468E1AB858DC35240E30D31C7AC13D6C5
-7D2BB634BEE96FA0E10F842B11A789F72A333DD6DDCB1BC23227EBC406E50B40
-30AF0C48E6359AB0C46898CDAF1118E46BFF8B00F54EACBC2AC262AB898C42B9
-2E080C10DE923C18AC1BF8FBE2225CDA0DD6A2030D4BBC9F539D6B2359239A8C
-F41DC6D36BBCD3B89945A85BBA233B855A3D77876A5418EE11DE2B1C501C8280
-73CB390855D0C3E7F0AA8DC1F52C72B1BE0D2DCC52F46B66A60E2F950D78795F
-6B9A833593A53A9CEC303A695BE815C4FCC65EDFDD46555EDDFBC6BEB2926852
-B1049167B0704384E1B13914D3075CA894B46A02D787AC826FBDE001AFE9559A
-51930A86C7EDF6C47D8ABADF5757E0F5612C5001C8D3326842D7DC41FF034E91
-AFD8875F790FB86E078CAE8B5B692E91D26E17911FAF2F14C89CDF6224F6BB1F
-9D51F02E167163196D7F9EC9570982DA68DF56ECB84E40B75AEB2284FD51A06E
-4366A3B321D37D320F5950BE6B5089B63CB2A3E10105FAB32BB5CC471DECA17E
-3806F48AFABB3A64A252385913833C019268C09433178CD2C741F51EECFFC3B7
-72E76203B758D1900430162C35C03015D2041CFE0DFC1F38B8AFF83ED0CD2E03
-8CE7A2DD7037C168AA38223FF4B69CEBA7F9072CE8B1459B4CD8BACE2C0006ED
-67616FFD9AE529642BF13E5E169444C2675C42549F0BBC849FAF7D96CFDFD0EC
-CE7A5DF7F6C51AF5708B3DB2A72F8B94B3B4D86AD668D9E1FDE093686BDD6868
-5BAFF04BBFEED3CEFA61419AA6DB6842835E95AB10B233BBAEBB59DD3147BDBA
-529E8AC184749496DF3D919DE658F876B5EA2D6FD89C680A64F1631E7CBB4A9E
-F633DADBB1EC36EED304B37EBE1CF698E63B8328539AB6B16AD592E6DF5F26D5
-969C9A949EB3A6C2587F61FAA472E4DFE27F4FECC9B902A1B169EA8B60E66930
-0402A174D0FCF534BEFF21460E909D99255F8961691B95193430E0CF198F26B8
-63A83A3F47BAAB3AEF04E39D0432F0C13082D35918BAEA09C7FAA0E93FEDC258
-9EDB41E55D9EC83C30E7E0748FB941CF773000F56537A334AFB700DFEE7C610E
-E1BABD99EB26682BD9DA825C75C49014399AD4F9E313D4BC5D260261C85F954E
-A54741C03BD9E6C91004706EB74BE58FFD246EA736E843F1D3F38A5D98D1F8A4
-1E03620888E75EE26463D4B9AFDB914EA0DA8E332693F73417967F9642DD8FC8
-D6D41576E6A0444C0620E9AF2A546479F9AAA59D6C2C547DDAB0C41FBFC76A31
-E39FF23EC8CC50ACBDEDDEAEF048E3A925CC196D60EC5856CE453F4DEC63E8CD
-0E954B2941E0DBCF9B57E8BCFD621E60D6D1ABB052028CB95076B9C04C645286
-5E0C554B7EACC4F614AAEE68D8376B2C1E30B664DA2C9F4F4EC403AD9C2FC246
-F96CF79AAAD7B2BDDBFDE889CA70F8CA0E16E344DE29B4A29F222B89BE1C54C8
-42405CA577AD975E5BBCD37BE8B8314429784B04B22D78C347BF0FAA47784612
-100741ED1446AE6D80BDA7C945C826C8117CEF0A3C3DB3E08C44402C2D9CF14F
-2C68CB9B96051CE5488F10C50D4990342687DEF23982B111AA330AFFAA723300
-66A5A5C73FEE04F0BCE0EE7E3BAD08ACC64C169A72BF1A875A1E3E6F04D5C81B
-E622C12FF806E1BAE08BAA507962682D42388CEDCD1DCA2B2A9ABA08AB19BA31
-E4B7E1ED8CB498C112A9B485C0638D7ADB6055B24E66D8D4BEECD5A4EDF394B9
-C51C5A54A5321A50C6F50ABD2AA1A253C066A53825A13B70A6212DC4BE41CD25
-00A0C79E4B634DAF012D9D95F78B462FEFFA290155F0B9AD2175A5A0B0A4643A
-D6264A28D52A847F4BC2879F4FDF7BD32C4BB48EECD6DB385365EA115D9226EB
-C4C8B5182A8ABCF811553D9A39F9BC8DE1E3EB556F5817AEF2126B605A4B015B
-53C2BF69E1ED317AFC575141980456AAFDD30091815F08B9496D280E6D6CF4D0
-33DBADE7BA13AC91722A5B4BCCAD08A5CBD321BA281FEFDE7CCEF37B270F29F3
-1DBB4EDEC801002FB8667BFD54534E75881A8CF835CAFF03D95CD086340B14C1
-86449424907F224D50EB80CCD5C1AE32C5F3593148EFACE9ECE66536301BE18F
-E6E0FCFF6CF346480930AF015E2B5CD6E5B0371D24DC4D79458F4B97E2403430
-D8A1D7132724E465612913EB780D416FEFC78233491AFFA33D39DDBFC0494B77
-B2D238CF4F3964D6DB0E71E108169BDFF17CB65E7FDF38F0693F1F8D3C154608
-FBCC89D5BCC050990C405653A2E29C5883C8EF5AA3BE37650ACBCF7A6E27A915
-1EDA0DE8171DA47FBDA0AEC8F9011439E88C2A601A76EA49A14E7CD30C7B3AB9
-9D051C105A367A41944E9B0115FD9FA5400F18D14E3F37B04AFE94F50AF7A964
-1F58C8E8AE5086ED8C94AC7536A6B3FDF7C07306EA8B7C37E3FE11F929887E3E
-9C88BC265521CC644F664A7191C2BC51C09CBDB578D9439C291912405F42CDAB
-8BC116611522CD2DD21BEADF45C93B7E62CCD87FDBBAE77AF779915E1FCDA9F2
-069AF4F137770F817B63BB44A28760F017ECD8C97980A214CAFC4E32266AB19E
-45626434C4247B4B215409C94590A0FEC286074F997B458E7DA64A51E75E738E
-669D08853B98AEE3136813AFF7A907CB5E2E4D4444DA17F8B3A63D5680DE9616
-B105C4B396A14046A196AA24B59A5186F3F9238EA8BA47F4715AFEE5EB5DFD07
-ACDFA5F8C9F34636E2AA548419AE15844C525F9C464036B322FBF73B8234B225
-7C7CE45BA27C971D62F8BBAF2911CAAF79B2834C0E4CCCE63F58647822B3C31E
-70B53F25D4CAFED1CEBFE062B5B00EADADF20B3011BC057D9D8D51485B1FB174
-33661D731BC9054872CF4C4872849D90AFD2204E7C095D302BBD103FD89F25F0
-A42000DF3194AD1A5EF67B07FC717EAFBA9BBDA898CD317417E60F6EB5E2656C
-92DC4E003FEEAB76EEBD8FA4C073A0E6E2F4DA8B3601AC0EC8216BC9ABE08773
-0C49EDEBE230A22C717A5D8CB85B21BC70EA97458E8CBD2F9C5D71666941DF8C
-D11842D29FED3B07A7F8F443B686976D18124FF2047EDA675E2B666F29839E05
-535053F74A6AA8CD512530F53784A1821CCDB3DC540039353CA363671C1D696A
-E24F86FC1761966341CD62FDF4C35E69B63117B9DD57F7523272CA31EB61F711
-7088506DFB618DF071E107278FBD1C55CF28F1FA563E65D7CE1AF3C89941EAF0
-B6606FEC9B52291D38D0C90BFBD92A8D87BE8E6FC26273B69E5DDF79E70750D8
-DDA4C123C9E2C55A1891DD32C0ECD45332D0BD55E31041ABF3E38EB800BCD51A
-B6A3AC030C4A4F71949BDED99F89B4B79F2B793BFE196F6FFB4251ADAF78420F
-B075B528C0065A42B25FD8D9BD861ECD0DFDEE641CFA4BE33ABDAAA3E840229C
-5B841FD1F81ECE1352DE75BE19EBDCDBED06D64926325CAA2355BD19FF8AA895
-02D0BBCD021B20405AC6F951DBBADD2F35D40813376DD0FD133D8B8C6536428F
-6D994EF518C84C2404846F2F20AEFFA435C169B4D49D5078527024CC3DD63E20
-D17ED3ECA36790B330A2BA6B880FF8F1514F2DA145CB2951E5A5D78648BFAD43
-A0EB8E46468927A65239B41C86524C7E5C747FAA682DBA7226C8EEB7F9E595BB
-69E5B158BEF6F4A9E5FBA17B181669159361E08BEC85D8AF29BA2372939B1EC9
-4DFBCD30875DFD53207FCDBCD95A1B4F73194EC8736F07C9A50B38D784F3395C
-446E1297110DE73C912C67855720F257CC60E30F7BD257C08C77200418A19CD6
-3B3AAF2054E1A411EF3EF7FEF997EB33C8EE6F197C8B2C876BCB113CEAF0BE95
-DAD6D4969BB9A3A9F7B527529CB4770A367325E732619DCE0EC17F64D1AD7439
-6FC0E701BAEC934E13C4C4514A0B8E5E607B344A8066D313D0DEA98E5EA4DF15
-6C31D2BA20B8F68E3CD47573D79D44249C45BDA475CC4EADCE9C8A447745C288
-73E544791B256DE85853B228817BF3234BC9715DC7E4042550F1F9A7409E90DD
-A3D84B631CDA78A50AC1C3C9A45632FD78B3C2DAB79BEB134E6E1CB52F5C49F4
-7275BB4C962DB61342ABA3558A6C8E3499B3E7EE976F069D10399F8965F6E557
-1E59B2206DC1CB052552028615153E0E45B9F230242FE06D21A1AC5C780432D6
-1E1C058F7751C9908CF9FC85D58FEA01671C9E9059046B5DCFF8B434CA359995
-EB839B9EC905CFBD82AE8DD90E4A6F9FFF3B8F5E3CEA9BE6E525B5FE1E987B0F
-9E7DFA55F685A92CAEE923604F86C6C2451B3EF7079EDE8B9BDF2BA78A17153D
-7162F9C29E445F5CA7BEE5753C651AA72D17210D82ABFC46FA9ADD72162B577D
-4256A767F652133A27220E2AE63AD1F6F2EA7BBDC605D26E510BDEB31E7BA36F
-3CC3FB4E58F0053DA847AC21DEF08BE1707CF7A3A1F3C31747D803A9AE74D4EB
-966469E8A53FB27E49558BBC0049D11D6BFE27B663A045FB02C6C8C0F46CC5DB
-2F3A77C2D6B18B21B8C535225D7E3A7C7EF8B2D5B2263460928CB2E9422B0D47
-F115DB92E454D7CCDC32D067540C04BC37F7FBE758527BA6B76B5FA91F24972F
-69F8C8F67BF2C75E8F671A2B9CFDE7E1362A3B9087ECCBC4FA2B10565D9F2FBE
-070BCB381CFA8429A2099766CCF57F574E81581B248E6892679DF04F8B34C591
-499C1D0B3AD5171DB93F6481E8086E93BBD8C760EECFAE98D84110485D7CC0EF
-854E9353AD3A3E32C63E8432163F5B3723AF4738C1CFFDDBBEF5B18ECBE36CBA
-70F237522D5115A4FDA5FBCF9CD06D99AB64917CE5BF3D33DEC1D2953CEC4B08
-DF4E6E938F64AFBFCC1362228420088B57028063E72FCEDC9AE4D43EAE5C0CD8
-790BEB96C0D4FE43DEBEBAA1139808277E7EA873AB4E605CE9C69EF7C63E2905
-E0A43AF11DEE11D677B2EC6D3F68DAE948CC5C1408A26CCDC641273CD2EBF3A4
-F4E4DC3660FAD51A9DDB368F383B012314EBB4F030A1383092E79091EB2D25E7
-7BA8DEE101FDD268A159C0C46B01FC6200C31087A0BBDA4325AF70B2232745AB
-BFF5023EE6CCCAD7443C6CC12DBEA5350B28A1D70812BE23342AA80C59FC81B7
-C931030DE9A322D9B1B1C14CFE4E85A094D33FE36D41E90183BAC0FA97C4F138
-02FEA1F510DDE414EDD1C9EFC47764726CCA3C2C73F484E5CF556BE6A0DC55B0
-A0E008009A193880CAB90D854BB1A0CE6EAFBFE6D1E3A4C4D900BC6099DDE867
-E96E02503DB66E02F7AE2A36FCD015BF58AE5EB115C1B80A9332A8748A52F8FC
-B139E87AF5ADB045BB7B1A3FFAB4E90BC34002B2F6916EA804DFFFF1F65C4E97
-C4E144BB6EDC906039C71B44AA3DDF5BF5F072E5687B07096828D25065E78DCD
-A39620EE567E59153DCF1D2FB690C156569165AFD93CAFC150EFB9BE4D272776
-1579D3ED0571464EC089B2FE2D655F4D260C370AF131CC53CD63542E362B9C90
-A2D0434EB6E3376C634CB203B796B4D5BEAB9B0983BB197F58A7F0CB3F52EF73
-B73964D460DD2589F392B19AD2FB9BBAE1C39D87553F624AED4EF5AF339F30A4
-EC40DB9A29D4A384B68DF458D35C2602165C2226997F86DD42D4A0068C03F4EE
-A1807451C69EAACB81772BFDA7F46F16E7F7976D6A4FE8ED08D0F2BE13A1055C
-015647C14154358BD58990C1F86AB962D80C91C92FE2720268B38073076274BC
-DCA5B8B0ADF8851A54E12DA2EF3BA6AF7E9D83EEAE99FEBFA2CCC4A09343A455
-014C9306D155E8D8EAF9CEF6C6C6143E2FC385F5972485FF37B67249F2A56A0C
-23FFC3C2F63976BC6E2455C36B4C1C09C976BB684A7EA770D34B348416EF27F6
-0D8F9194085FA4A554670DB1AA724413518419E1A017B347AFBC2F6FB5FB1539
-916D2ED293B818699A5443E88F10B383537BDA76C31E4A270193E557E7C45FBB
-0B65AF75EA093E4F9E813B76CC48338205C7A931D7F00B15ED2C827624B5B9FD
-35157F58EB85B0CE8A035200F6340506A62E6ADC61F5B5E1E9F26D9C2DC3D6C8
-4DCF6B37FA1BB6BA8D94DB0BB51DA77EC62E119B37DAFE27D8FC1373482EC73C
-61A52BFF73D72299963CB4BA533117D8FF92AF9772109BDD1C31551DDA0EEFD0
-DDC0CA2A38F676777ACD4FA88AF947645967122D09C5B66D85CFD618822D8B44
-96589D6BB3F2CE00D39056AEB065751490FE39DCE3B1EB4453FBEEE0E5E79381
-F533EFDC302C1FC4DDAD947F0FA29C76EE524E66938B7A2D1EE060EC50ED9FFD
-DE8C8DA759D0A5EEACE2957FFA717E13E02E7D6DDF6981D72451EFC9C9B5DA73
-05E5DC46F8912EA7780848CBD2E171FDDB96B2CF79B8DF58B66B940F63346458
-BC53113C2280702579109C583547FE9A2CE7A1F0E6C31FEFBC81856AE022C74B
-1E89C024392DB8F2B28EEE5AD31371E7BE919ABFB7316F288719B0D98C6D66AF
-37522A3933C3BE2D481500C67CAC9887E68312C93639BB0A382999D7BC1F7B16
-E94C4300DC17BA263715B7E57398F1EA872A27DB8BB07066B3ED04EFF0F2DCAA
-4C7B2C8127AF8D1C2512959B0DBC59D1C704E320127A3617DFC764EE03BA99C9
-02DDD0378BFF1126C32F79CDA9538D5DA1C5E837F6CCE987C76F6DEA4C48F166
-72D6875FA01166DAAA78B4CD21D506E2CC10F8D01E1DA46DA50B9E27724024E2
-E8A860FC66A48FFF899DAA88CDBBE5122B773761C97F2912D9E56AA4B1B97B86
-890EF9749483BE4BC1B8AD2F72782D366F0288B589540B4D7BE39D818DF4E500
-D01ECB913D5D2B79E330012B1E4E704493A68255782CBF81F3A2A4FD53D22CDA
-AFAC712132D0F906F1FCAAC5A7A8D2BE620FDC2194636ABAA93BCDAEF7E72E47
-7E262DE750184FE2BEA2D84454AD179862FD5E9618A9CE4DFBDC9DD1259056AC
-36C99E4396D82B387D26D0CD3C290E33AE895E7E492ABC9BB6EBEEB6D0D75E12
-CDDBA67D5C17BD9F7F962F0E39D725C2C5EFE217BCF86F8526CF172FE8AEAD02
-A48AE32AD9E63EE640C6FB08E1B5AC6C3875758FFDB7AC571DA6CECB4EAD0C3C
-80BB8F34B727449B0717A0E9CB26BD0550F1BA59AA70F5EECA1AC774C12D1DD0
-E4DE30B288FCCA04374230383ABC61B950E14B5209D4AD6E32E038AB2E22FAA8
-1209829A681E7430F7F8E7C9342284949FC4B944FDE91D9AF29CD6A31666ECCA
-36AC9E997DA92AF7B623703E1ABD8A59451742901683F21BCA15A79D5A5D23F0
-86FB61F81DC1B405535F39431C54E53C16277F145EFE363BCB1EF1471A0B9D24
-E644C8F96B826F2D7697A008BA17705865D9BEBDDE7A8204393BC34086F82352
-DA9C0E4330502B84F33E3F53D7303CA62EF81789FAF1E5F53F2A9E5780C7851E
-6B4A9BDA871188A1AF75BF5D8E1DC2E88FFAE726D4566B66DB9A020410B54162
-28F790576FE59251DF47187846B0D69DECD5844C6FDDE81021D9EAE38CF44040
-574058A2A706E8F21CF1AAC6119CA3CFCA07C8A0E5C436A2C4DB6B51F9C0D9B5
-1B123E6D71E4B26397A9095722D5FAC0DA055456A3B04D1862359CAFEBDD7944
-ABBA0567BB0219DF005AC268D23EF69F2490FC929AB405A887F6401F6705F982
-88D3E883ED94A659F267FEFE257EE6BDD9B261B0209D6B47343FDD562B2E74A6
-B2FCBEEF091C2224D043403C7975686FAC9A89B44E09FDA6D96B895392858BE8
-E2166425C35501A3EFD25DBC5C724AA5B4B7DCA2E0FAFC3EBF4F41DA68B403DB
-3432BB7307556B6DBDB22A610C271BA11EE0B2FF584F6806188B1EBF20535A10
-132FC19333A4696FF2BDE87F46EDCCE72B0797C418DD8ADC2FBADBDFE2DAE374
-473249A1A65597383F7F7A85C048658747DF7AE294279D3B9F3C01D38DF21FED
-539FB266197AF3D6EE8D9743C937F44E31B03718675F19B85E3BA604CDFBE1EA
-888953EFF9CEE3DA56A40C795C0C13185DF2BCD958BC043165B998DC6BA2E088
-9665840B8FD4F10FA616D896E4863532BA3CD7B78FE429D70C13FC5AC40EF399
-555E340D8EDD2478108D798382CE2833106CB5EB2513414B064912B106217E5D
-B59A6B5D6CC073886162799DC2AA421B54AD17E387E996A8EA9B1989DFDD640E
-C84409A9882EE9A901614FC629348618A8A9840CFCFABC20E25BD2AB0CDFCB8D
-10AED1A28EF5813BF43BCAFA2DE59A03678EFAEE38A5A1CB07F3EFD4FC1DA5D6
-C9AE2CC0975926374E1823B0A3426507E0EF1DD8E2BEA64B968CA191A1D5F997
-9BBCC83E20D07311964DE3EFA784E86863E618574B03B740B06F433B1F876D08
-A611B54C2922728CCDE265AA0E0EA4867361C65C6139E4D5FC776AE54DD8158A
-5842478CC1A5F34D17F4830C6C6BDF8872CE2A2925D8D303A93DA22218F6D3C5
-7F4DDF93C2F530A542A9F2A26CA49F7AE51DADE8E7D069582858DABACC202814
-249D8EC2FF53F4D847CE2F87560C9E1F4AF60F9B64E18046A5F75E4E2375F7E1
-7593CF728C3BB9DA9D3855A5567BEC44D9510ACCC7AE16C6A5B3FF543A9F94E6
-606BAB6F087B824B336853A5CC7776ABDFE7101F9B6635B9276D1E5F2EBBB011
-279ED882E1AD9EA838EF929B4840DE697119E6E02FB176E6623BB7B64620B62D
-6D565507B49AFB7BDAFE8CB8D8AD77F01E2C4706D7BF56FEB5E9A41B274853EA
-FBCE362106C6CC4C9A16203F1CC874F603BF841261EDA92474D909804B30F8CA
-07F68A8BA0578E4232E58B38C705806601CE06E7BB0B44AC7CE5BD54B1DB971A
-A1359694CA68A561D9492795B9F5744823B24FFED1B787EDE15888130CA70B47
-77B02C7B177C36565474A99538264A56594B72B71968BB2DF8E5014098F0FCBC
-4112BD4211CE5AABC84D63449D0C33232634F23684D08D2C965AC09C088FEF3A
-9142653BEE405C3643D5A1194076F03C2D66EC8B5B2C8A93E6F255D6D2D4BBCD
-9545AC6F134A19CDB4A2448E389275D751D7FA00E1DDE2147D6FE6DBBD3093C8
-480172A231F5E0AFFFF07480040959A2AC805CD768EDCFFEE26A019ED359B060
-E9E344DDAC7F7A4E8AE4E463FA54A37ACD5CE1C531C7BBF15A9D203BCF64C0FA
-57DDA15326A40066E9071753405C4A69533A8120C39FC8CDCF7C0CEACA98AA52
-AF3810B6DCD1ABE505B9F45AE65E54622FBB10EE876C4EDB8816BC9C78E21181
-E8054CF6C9AB0DD250902EFFAF6416D6DF2AB4D586670720F58DD6EF5A1A4185
-E61FA66E6431FA553D6C8AC0C78FB94F2042C02B5BEE2F96B47C4F7D84973460
-A2D5EC835DE7C1DFB26C716B02E27C0409CFEC11E6F87776976EFDEC184D79F7
-6A4DCB3698BDECE982150072A8F6A243A6C67169A7B4DD06301383F2191F2A32
-2BA5706FF491472EFA11C60EB7D976D328B598119E5443D8C8E689D9929850B4
-479B875433F5A8B4EDAC69DE064D73D3542066752B09E3CD22DFF7F4AF080191
-2FC9DED253D1C605616C07C7A96A446B5EC9C60B29DCEAFC41254EDD45A2BDB5
-3424BC7B1F40AF026045629409C0D4919E77A499977C5725CC4E7AC107F81A0A
-3120EC253D6FFD8F5F0E43878F4B417EE391C6E4240DD78E8717F8AD4B87F65E
-1485539004AFC25E1CFA30712EDF1B63D27F04753C02DD5FD045E9FC53579B4C
-2735783BDCEF0E3D48733B1B4F7DFA0ECF7EA2B5BFDDFAB66BA91A4236C60601
-C32BE7E2A17EF0415FD35C0A80C038FD700A6A459916930C9A5ECB406295CC69
-6D09D5A4677A6878F118E9FB4733977F3B2C7FB80A57E52EC29FF8CC89BDDB1A
-183AB1AD0627E8A2D76A4CF0475E9DE81A2977F9E7DF13DD11362E1A7DEA02B7
-D2FD69B46DF664295E4930517B27ED6A65C017ECE1D189A2EBD913773A1F965F
-7FC0CE03A6F117CE4C4716A5226669483D8252C000C605A3CD0E03A6009E4FEE
-CAC3CD8DCB11393F5D88232051CA854C00D935F318BF740E457BFCBD89B70C96
-D3FCEE4C0309E607CFE57ABA84496EFAF6D05C075B57795AD15C9C6627603459
-7F3C3208BE41E83B3BBF776AB7409F29A5589CB20325B4FD3A7C3EA79C11E47B
-1741522063701F1D5CEA7FA4CA0C7A3CE7190FFECB8EAD8DE7888246D5559083
-E060DC36F4F82C6DB3FF34D52A413B06B74ED712691C8434990E554F57F0AAC3
-ACFEDBEA804D83BA346B98A7AA92ED1B10E7A1530CD934A6CAE218A405CE8B3D
-9755F7827A96954DB1F5447BEF21412334CD103FDACC48AE6866E6B0069BA0BA
-16EE4588FA885307FF64D577280B2EBDDCE85192533BDB36C4F5653EB3B19F5E
-D71F505115D92801CF27F4F3EB1E7B3B18F5757DB08593C614AE300542F87AF4
-D9EF2CD6B955F6860502EC2D64036FBE1F7B18772228BE7612074DCB67D1F45E
-684FE5785BFBED4D86E891585897BB06C9EFF060D5E97F4C37F8367846181825
-3BFEAFBB9FFB24424BEA55E26C937CD4640C122880D03C8BFCC716030E1DD72D
-3E78C647DD020F1C3E7EBD443721310083CD29990E349C44B9BE32B4A7825D0E
-120D28BD708355F76C20DFBD8DE9FE24761B948EED734B37D073BE847357E81C
-8A88FBDFF0AAEF65B52085E84C3936BB44A9F0557E7F801DA90E36EDC4B99597
-D3B2F51AD843AB021D0A9D471306F9AB534F4B1DF9DC3DD03DC82DAEDE4A4F19
-AACCA8C3302261BD558D6CFEC06CFBA970919CFF3EBF49F284B40961C09BFE06
-FB395BCEED75EACB8FB6E73AC87A1B54EDE8CA7A69F88335E95E3AD897156E48
-C84D9A3938164354984FA293DD530F115D2C54DF6E8C91090D0162371DC5FD7D
-3BFA381F661DA4532FB4DD1041FB5FEAD1A37EF0D13E46B7862225D2EB773179
-735D1BB9257BE0E6A5110A090FC6899C246059DB9D4088D4EC0C975D62063C03
-B26C4C83C6003E6CBF6B938930807E4453B4C97806ABDB50D7DEADD7F9E21D16
-9FE1BB10A5EFA12CBD4C69C28D9E4CD157F02F385E42E5363E599EC3E75B6087
-DAEC53889D74BF02FB09CB60DD96A151A59E94085CA2207C5BDBB813AECB6CBE
-5BA9C185C76A805BC785EFB7F54BA4C05CF623C784631C120CE1975347E2BDE4
-C91D733620CC237EC155214E64D27D3C2A5AC53DCEA5A98AAD715825CD7BBCC7
-DAF443C9E3B1712402C0FE9DDAF379617AD5B136B9BFB15F244886D233ABF295
-0ED4385F8D407EAC42E08BF7B1B1B2EAD691B71D42FE34E8FCB662F7
+D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7
+5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99
+8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716
+EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C
+02CE8D8B07183838330C0284BD419CBDAE42B141D3D4BE492473F240CEED931D
+46E9F999C5CB3235E2C6DAAA2C0169E1991BEAEA0D704BF49CEA3E98E8C2361A
+4B60D020D325E4C2450F3BCF59223103D20DB6943DE1BA6FC8D4362C3CE32E0D
+DCE118A7394CB72B56624142B74A3863C1D054C7CB14F89CBAFF08A4162FC384
+7FEDA760DD8E09028C461D7C8C765390E13667DD233EA2E20063634941F668C0
+C14657504A30C0C298F341B0EC9D1247E084CC760B7D4F27874744CDC5D76814
+25E2367955EA15B0B5CD2C4A0B21F3653FCC70D32D6AC6E28FB470EB246D6ED5
+7872201EF784EE43930DC4801FC99043C93D789F5ED9A09946EC104C430B5581
+299CB76590919D5538B16837F966CF6B213D6E40238F55B4E0F715DBD2A8B8B8
+80A4B633D128EB01BB783569E827F83AF61665C0510C7EA8E6FC89A30B0BC0EB
+5A53E5E67EF62D8855F6606E421BD351916549C569C7368AAFB714E22A023584
+8B1D6B52FC6F635E44058690002C6BA02CEC21C54CC8875B408A8BB84F445894
+5D6B3E4841CA20AF852A660FE9C832F773691DC6F7197FF3DEAEE97418A5ED2F
+F2AE65300416227CD3BB03C29003C770CD7D2A7A2E4C1DCA193651C2CDDBF93B
+966938788694BFB562AB0010268955FC3555E5984CCAB0A9B7590C77C9BC713E
+A29E5BD7193A4E971D1752DDD0F0AA4648E7E87BBCE66A1E836C715C408B07A5
+9EB56BEFD4596706CF839BA4CFA90CAD4038C1E006B51913279A2C31FBEE5BD4
+A7D74F9103CE6124F5B439CB860987DF44FE17EF88EF1BF62C67060D25696BCD
+94ADF08F04E349CEBDF9D3389D870D94CC05E393B3F4362A13A6A672EE5E8F5A
+DFE7046AFE3EBAEA58FFEBA4A47BF61F92E2003756DA643CCF2C9DFCCAB62669
+E3C2A18D690B64D907F50BCA155A85E47C3A6954C6FF7ACA36D8DFCE777B7929
+5F5D5F787B9C247ABF13D6D7B4A8F06BA25CCB342F8A5071325CDA86AD71BA23
+8A9695C7D1D50D0AAC267AB7CDBA7AAF46A264B7B081B7E79AD937FEE4969FD5
+155A99E652461EFFB4BD010E5885631E2B2497D6B8C43CE77D7D47FE201DD46E
+4482FFDCE150A1183C22C004A0AF0E1F42AA6804E038E1DFC8B0A3CE26B52038
+44D2E7F759DA5C252489E5525963D68BC27C82247BEB18818C7D4CF0BC5CC97D
+8C701034B8DF798DD4CE36C3F8B1FD40B2DA14EA75583852875031AF8C909EE0
+04495FDCD04B05A5EFEBA56A8CAC1F57F1B8AB91FB25C81CD51EE69D6E0F52CC
+A0E12CF7E3187D67DF71A599FFD895FAA7BF80E2E6B96592BE77AE96905BAF0F
+F547355A36C443797DDA7C414AA606CF9153E03450B77D1BA4088D739DF55F07
+111B9E11AF37F45B6EDE6D7AC126E05886A57C83886DA87761BE600DEECD1344
+8A82BD652BE7ABFE6A0F50ED7C6F4EE12CDFD80CA7A5518692F267C51C3FE76C
+567BB8DDBE09A2AF901F79AD02B435287CB8057B3D5EE6655071F67B00438728
+C4C3EBD648BAF650993AFE5E2B29074A99ED0FB725D9B8CE8B0292B08A280214
+C3AF252BEEAD30C88F72E322FAC3E9D78A1038F5DFC41F7BF1AE3744A0677094
+51B77C2D630B67853FE5E975A395C06A4D4DA744040B272C2B88D8B7ED3A2C01
+66F503C9DFD3C7DDAC865900D2A4F2CDF517F449851DB1963468D0266D7A3E58
+9F6B2A1843E6444274F16A9930302DACD8D2BC4588765099A86BCCD8A31DF0E6
+2853114DFF2D19F812F19AE6C2E419D7AC1BC024D1195074FD0C6717BFB389A4
+4D5428E7BB2E4F9E9FDEDED7BDCBDD3460805AEA0B5F6460C2FDF19273CE5BA7
+5D3AAE0DB94C6AFA8339646191C23B0149E7CBF136FC4C844E025A38935DF256
+0A0A6466A45EE8B9B23B6A055856FB084F87C73BA28F1883E3B184CD813C72F9
+233B78CA4E125ABD26F29B92CD9DF39D6FDC2A217E2B6B45D9B0A4D536790A5D
+BC0903069565A442FA7466414D948AC432C6B75D8D0E1DBB217CA3DC38A52DEF
+62E9D5AE9E753956C13819D93148C7683BE4F71B80BC066D8C19FC807FB1C086
+B49215DCF56A91A42089F0D063B9981925691F7DDE3237403AC714F5CC3ACA88
+DB2F1DD205578C00472FD70C8BA4F752E3923ACF3164D442A6B639902ED060D0
+C5777BC20F9A3BDA60FA3BC986C38136FBD2E8F910E32EF36377C9CC187F4AFA
+CCEC423DB925B378522B748BDF12D523804CABA83CB5A7ED69FAB9AAB75EE8FC
+38D9866E3754C4E2F2B9AEFA804044D878DED0E114EA0E9682FCF38F6628E63D
+FE1C1B5615E54FAE8684566EDC4B616F76EEFD6207E0386F06D3BFFA26425F24
+303CC7C8A8D7021E7D09B202616988287838C3DBCE3179B4FB5C726E603A47F2
+8248CB508F327D1291CF3F08F7C88298DC2D0F778D24304EFCF6E074182BF5B1
+8E6551811FD6991971692108E289B61053D6DCBA2925B3903E8916EBD09D97A2
+C6D08E89DE4C0CDF7185E1E00DF456B249F0BFC686E04FDAAD2772DC2C39DD53
+9C23A41471267F53A87E5C2B8CBCDB66CE0B9844BC506428E6150B48D2FA6363
+4FDB2CEDFBAE0B7DBCE4D83E29B2955F8966272CB865EDB360C8A8C19EC62A29
+03066483E4083524A1E8D80FE3867BC1AA91753C26ACBE8489AB0E3330206212
+93E07ED473DBF457EB8489E66FB4B8ED8A9EA8911CF9308CFE3E6D6F36810EE8
+91CCB11BD548617B2C683C354452B9229E7C9E68828BBEC324420DF7C188CCE0
+FBB514547553A7E9B38AC265783891F42DA472388569C8E7594F7E8810895A27
+06E456902A8D9F65CA808F1FD475D011C4572F8A654BA01D67942226A663D179
+95149FFF41A9F55AE84EEB9A6A39C017D7E4FD6EFEEE7FF3CE847CDB064A4954
+9DCD273B810E0F259501BA4003A3EC1ABA6E13D24C0B57FF82D6DF077833B6A2
+7EA54801BA81DB961C261689C0887FAD83771E55D3D137AFBB21779397E11972
+6C6CA922F45AFA5C0526863A5AD8B9C0775CCBA17FFD37A44CED4710884DBC31
+5C9D3F5441595B86CF7CA2EEE42AE87896E9E60EBF5F35C2B7FDBF9A9CDAE262
+3F48396F0F741E9DDF1D4FEF75E68AFB020D06CC29B3A7B2ED819D1AABC12B91
+CA2A65F1AFDDA2F3FB322E0268DBBA024663E49EFF076455338FE31A16B04EC1
+797EAB0B49AFFB906A0690A1E8E2F5314773E1CCFFF43E6FB3875AC907F0C5D0
+DCB9BCC127014D472463560CA0CB1C2CE614D94177C7A52A5B089316689C8112
+CA57E35D716D956DBF9013B1E5B9626456B1433C8C15FA906458F957133B9E19
+8D46DC3AC015F7602538C2AE3927C6DDBACF38E59220C2F5AF36B68DE9117C51
+04CF7DF32B1AF55B87D1D8A5F4BCFEC66F63B32B6548DEDA3AAB06C5310E4757
+78AFF947DA22809B360FE535506A554DDDE5A6F2411246653710ECE5CD3185BE
+730520A766C47E1ED01890059882BE1432586864E1A86A7F586438C8DD35C00F
+021A741ED47E0F16DB6070ED0C50038632CA4AC2975578A8372A080CC0447C79
+CEABDF2BCD5E78564247B0F0025F556DA8FB62125227849EACFB724A4AE3EF57
+90C07A5B27D2E59425F56BF8AD84C5F5310FEB1BC73D536339FC2E6A5BE2DAFD
+97FC835E0D52F680F80ACA37DB498AACF152B9B44626CD89E3302C3EE1623EE0
+F998FA78305960AAB9F483F731F5F67A8C963C23DB8E48FB804EF8B86FAFE7F9
+4C09641915FA7E3930AC922682313408BC1607C76751CEEAFD660206A39CF394
+40ABE2A313AB7D5FD6444E219DC5C26734D322BA268D330AC17959A390D6C8E7
+3A155095BDD66516DAD5D65519A7FB871ECDA77061EFB21F359158B4470EF79B
+362C35C06B85C9A9505C8361939C6AC013F2CFE8EEF46FD8CB4452AAB3EF1FA7
+DC066557BADC2ADDDF7DDC2A0E1DD4A357E27A2073427EACF9B9035DA5272136
+7DF37E26D96ED4B2ACD60596E039BCB15E259C72FEB3344E3EEE3D4F17DF4233
+04C1416BCADE80BD483DD8C9AF979E1C7D50C4CF015870703F88B92C4FE46AB8
+DE6717B55C460C805B391B84333097E116F4A51F631FAFAB34CFC925BEE8B72B
+C9FD5F5A79D8F2295FBFAE649DC6AB47794AC7D73431FFE5BE992F2B5AC67049
+B5208251C0E442385A9FACF25E3A98D7F5D4C2A1ABDC600AABE84769CA83350F
+9B87F71CEAD3600E02FF9AC03C1B5C21C84F911511A0CF0111BAC7605EE31229
+3C526A79D943D92E1CC3C38ABE82D560CFD4172F318030852A5FCC0534B8B3FE
+D7365987C8B48A072907B26CDC2108130A33233E8E0BB5FDF14FB55098A10EA2
+B51AD9EFB119F82B08D256D396D3263FBD9DBF172D43A90ACD1A31F3E89E8571
+74BE98B9560E2CD661A2F93C69FEA3FF26B00772AE2C2C24B98D3D122EA2AA8A
+44652CCDF4EF4F01CA7D62A976E23E8A86291F43BFAF38FD9C325E70F9C36CB5
+A181DAD30156E98339E6A0498D3420B7BB3B4E651A9090D4A17604AE386273A8
+3D4AE8CC18345E6E19DF06BA848F203F74B161D6A8882991CBA7385F308696A1
+BEEB0130D938A764B98A2001A38489B1334025EA848CA44A116D64926D460D64
+01159E77EA7ED9ECE7BA77635BE564A4ED89315BDFF54ACE6AA1A26591D13CD4
+6D6425CA7933769B842192858D10998509396829263290A3A7CFEBBDA3EE6CDD
+DF1E492AECDFF7941B53573F01F623CA0A5ECC9D05A3D0954F7AE8CE94AC3B2A
+CD4E27519B2E16F033EB732AA024BBAF74626DB55DC74B1FDDB07FAE98B4AC5C
+683CFD8744F361838D343B657EBF52DEEE7AEA7565C5BEEFE455DDDBC4DCCA7D
+87D6D769C5ECCF14118A14A85A86865777C8E28F953160D5E82844AE54D541DF
+550D5F1519E183E0C42BE88F0458CE8087F2CD4B1B49A8E9E3D127C4A4CB74A6
+2E73BF4CC317781D03FF04BC36AC0E4AF99E2ACAD20F6F8029DE8A035DAB40DB
+17D237850BCDD05931FF4B0FE2D0B79EC5A88FE0236271CCB075BD194AA25AFB
+3FB93A5206F61A14602E4EB6F1C31C654527CE0C02D04314DF9AFD710D0EBB9E
+F8721B97F5FB18E27507E1F800B5509A58A1A8296C72B7B73F99B6CFE42E9C2F
+B63B3555475E562672645CD374BCDE937A9B05A157FB3E74C8297507253E957B
+1A9DC421946734CEFA3D5EE357DAC7E9DE17A5BDDEF6B2D2A740BC58128FC514
+61154664412BA1C05209EC992A77B7CA45AB7C0EEBF590A5B5652866008CDEF7
+124A3003AE6A7CF9DF3C72750CBD281358CD2FF25B162B78CBB971DB3477F8D2
+ECA3EE9CBC90323B2C236E375337EA0848CD7CB5781A2B0A42DE7E4D99DB2746
+0B26796CEE129D23C76794B7CE21C13C7D4A998B752C8CF43A4821B736EBE246
+D2A2BD7BA3351FBCD1B0A501EC1EAABE60D06DA2FE39BE1F0AD629769FDDC933
+F9D02F9686EC8C2D7455C26AF4DD3F6860B2289E3A30E1C254AD17D731CB73B2
+BF4DFE90CAEECE3ED0CD3FB4C8F4C7BE1C056AB4E9B95781A8968E3CC1010003
+75DFBC4AB9F6B27C5A9AD88D94441A8ADF09EB275E5F0E5E6F3BFEA0FA8C308A
+8593ABA0645ECA8FDC3F0E264B35D4B0DDB86B93CD8A047FC409E18196B501C3
+B003622999C47BAC04FD1ABD8AD359C977766E9643EF3BD6385306B08EE3E13E
+7DA5A06AE33D17A3D574C6390DB6E9429754B210F0C349C359559C7EAA2350BD
+F61D4D8A92B1AF697BC620FA0351E67E0D9F41A95A47EE0BF210C2C48691901F
+F905F65693DCB85BE412F097480F6A7266AE0A928729DA0F691CBFFF3B276EA7
+322BCD2206D96E3DAFDFB992CA8F2955F0E8B882729DFF840569D12E4DA1775E
+523AA734552AAB6F2F16B89B39F1A3FF0E07EA08D13E612F201716C67F327017
+6C041760DA30374434808273062C1FFA2C47B3FB578807BC26537F542040FF77
+66C995EF3E8B08B09FCD3EE89C30F157158A739606D2CEAA26694A4F1CEA6633
+B54933141CB85C60AB262E2D4E824A3B85C2BEF810DD774F296AB37D0BAE7182
+5648CD18556ACB124246A75474B232D712C2358908B5D9A76F82C626BFDE01A1
+093B8FA6AA0B32F2CDEF737B28BC0448FF816DDB5812131DA0DD5979D77C3838
+B978CC3F6778A4BFCE9A7087EFB19749285AE4C92B99A6649DA349A2E0889D72
+6D4FC664522F06C8C4D86D30BA43ED4E42211217D01636A4E17E2A132D26F394
+EC34EA12D84594AED9C6CDBBC0908860F39B240FA7D7B3003DB10322498691CF
+A294C0FC7ACC0BAD1EED3E9D60AAE3F7429695892D1A21CEBF062C6129B33966
+8B2EF6E932F9891DE6028B81C5E9B23278D35B7F0D83989BCBA25E20E9D503DE
+144DC485F09A4EFA1268AC5E4B551C5B2F1D51E9B9B9C0FEE585204F869D0BE0
+7287D7570A12940A47C1F51AC6134F03B415C30E147C49F89228855D093EE55F
+172711F37776E97A99CC4B36E2F10713E36FB279FD3FA5A0EB9F3938F42E2BB9
+254EB8F0C0F30391735019E02BFDA21D9813C6A22279B898EAF01AA892B14DC6
+5912B9275167AB46EBC420836CC1A5F38A4EB47C039A7BCA62BC3FCE4199FC71
+011DD6E5FFA0F3D7F04AC02AF91B9249B9F993AE346572329DA852115BEF8460
+B94690E790003586F473F37EAB5AC2922F5F663EE2C3C0C336A8DB71650631AC
+0A923A389AC911CB215EC2EC7D50CF8AEFD59EBFFA53A9F1FFB7E6215F17093E
+3975F186FE23BB5FA5474C11408FABD223E1E6F62035B5A5C1AEFD8899F00FFB
+E729C2D5FD551E80716CEA4E8281660286A802AAE8D5834F37F2EAC46297E57E
+993B09251DD7789D3467417E393B7DEABD06676B96241B0E43ED1A1A9FC3B12E
+0D34B2B0792B79AA648FE9450C3B209FB6D7D91F50C52A5DAB0BC81A8B698BD9
+18946EFF691912D7348D48FE68CD876FC6F71F81165D0C3272DA1A992308D9E0
+ED6D0A4DAD679AF495F62B78D462B463BD4A40931172290C615B3B3B6B47E45F
+CEBB85E0A6AB6832067CA6D403C239530D07F199788AA4DD52553836851C5228
+1072406F6D7323A334E7A7FCA588897C4FBA6D4F7DEB65525EFB74E539C988C3
+A685A98752F7198E77E456A545F0D23A1BEF81EF58B02D289CF980A3F17BEC8A
+6F83DD90C4A917EB0E5E2B444A608E2E9D2FF80620E16AC1D7775C0A10C1299B
+BEE0E1AB24C50647E5CA1DA65CFF3B2C295F0644CA7826E1DC6FADEA93D66A20
+DE852F20AD224D28DB900519EB1569837139C833F24B799F7EBE3FDC14235323
+1D0BCD4991C861F38DF413A5A5588B73AEC3BBFDB885CE17BB3E97B4E6A79761
+93EC8418C2BC4725CD61B5E30C07352F647C3FD50083878C13CFAC241DDCB082
+E53703D182068727F9EB6FACEC25F6D901D7309ED7370867E34E267519E22D62
+4FC7093448BD0D6B1C43D318A3E14C92032325C132AE0FF7ED707E1FA4A955FB
+F5224BE0045CB14ECC321D0F333FE24EEFCC504F7C756451D7693C3E6CA87526
+4912E1B6DB935BDE76FBFAFCA4ED473F1D2618812CFF25A6859C626A216603C1
+361BE3E071FCFEC2D4BF2FEBDE07DBD56A1BFF8303901168FA06488BA6B76F36
+95B0A90D7724E9ADB567C2ADC65CF3482CF47FD1D16F70AA19A97D0F9EFC611C
+AEA5E1ACCDA7FB2DF05E9480936281484BC329F0B771775E73F7FD72FE3F45F0
+50ADBD03932B38F37A8F0A66B2F739EA3AC8811C8F514E68C5643E4AFF485C81
+88475A523D7FCCA5C8809BD49846C77795A38DC6406082000236A4D2628B5932
+AB7916D44EC2210CB941B83BC0F1C097792CFFE7112D039CF77EAE73CB4E02BF
+60F5C3F629F7BC5A27C207D70DE63FBE0E023452097D5B7AA5B2CAC668D4D075
+1A0F70683E96AE35A6BA0B59619C215A7012568991AFC0C35789DD0ECE45C649
+F44580845F0FA422868CFCC8029513235C0286B76196E350498845EA934DF289
+1D0C954B079BD2977384B96D8460B4F50EE635A4C8F7A3B6866F93CA641F3F2C
+C93ECCD6BBCD792189A12FC9366BA7134EFD67A22B4FD62465250E0BA6B7C627
+73E8F50E379328B7FABA341B0D50F9A2CFB055E01DDF6BBCF6FE4114BC36C10B
+E581D76A84EA12995506C33DAE9035683FBD5F54AA1545992B94B8ED946E5866
+2F2CF263CBDE3B77E12E7D863F0A87788D89A93707CFEB6A5EA14C8BAC433C65
+56730E3E8985960FC4D00F2B821A9218A20F11EEC2D6A153C403EC4BCD0B7573
+5BA5398D8A252EA71E8928674FAB4CFC6C2FC36E7CB12136830849198CB0B249
+74C07C83EC06B2E0A5323E3320ED056D02B614EAD64E0F8F083F5892BC3881A7
+A9279ED632967D7F5BBA2B7CA37F7BE21987D8BD349C3DADF4682D4088DDBB35
+D6F8F74749063C4F59AF41B9AC950E6E588B3856C7F7AA1C9030B9AEE3D70321
+2DA63309EA56951A6E077EE1FEB9BA112BA69982E9EDCFC5A3B462FCA9D16A5B
+951C2128F30DAFEAB3007F0DC4F16F3D38371618A2F4848A9D0D59062E63CBD4
+E4E0F337CEEA736493E344617B5F1EBC96096B66ADEFD26110B4A59C69FC619F
+4CBB9FAC2C9314C831A6399B611D597F4F817603450983BEEE834691DD492844
+A222BFBD54593B70F18BBEF4D0969B1EA062F7DC61DB08F88E988B58EF871C3E
+EE1F380B98FBA95CA4E524DFC9DB291A5222D9792B9AE3A1F64E868B1BA4B5EA
+E2BC7C68C837776B01738FD3B8D41A3091D8B9A27050E56E0AA39F8F3AE52AC6
+42D30C4363786477D1C2D2FD832C7E2418A7B1E24FAEA7AB5AD1B99E319E3319
+BA790965EFBEDC46D4E7699CD4FA57A28ABCF8D4C05D4C7618C133ED3180C465
+80FAD466CB46D5FD53216F0F15EB9776562B7B6F808A9D8D9F4DE099D7C99C9D
+06588071FA8C36F774B05C0D65259DD0514539030DCDBAB67D6E1A19B2A6A547
+3BACEF7DCCA65B35BF4FCA3531D08DC5A301E0C112FAE9D9173B7B47E7F7C531
+3103B70633AA09E4F87D64CF5E3B7FEC94276E910FAED3C4B30C32C3743A5C39
+B5FBFB0D16C2B1998F53A0C3CB48DF19B4FA9E98BA3D503F5B82EDC2EFCD8521
+8C9006735D194CCCB8DEDF3D465F2C057E1F8F2D35B362EF9D084D429BB71584
+62AE48163478E7FB8AD99F01600BAA8B77C6F98DB7DCBE7E0C46B917EDD2CFA1
+F209D9A01CC283B773BC469257401809BFAAACC0C9980C497DEEA796A60B992E
+39F098D4218AC55FF0ECE7BE1CA314F586AE82CE5B71E4AE1D768BB52FDAA949
+AD21F4FBFC0EF3CDD44FE8D92EB97776F618AD9E38553BD0492149B3BACD7FBD
+7440BB8786D93167C8E4FCF61AC3D360B06C4424F4D46FA91B862D7A27BCEEE6
+C3ADEAB1CD0F8A8752EFCCB3E592162C57933169DA1DAEBFC2C866C10A5F7840
+5447A38BD856996DDD56BCAFDFDA2979FBA4AB6D4FB7E70E20B76F5A2AA3442A
+4EEF4B1CDBCB3278A1F55C99C7C4F7F34C81B063F8255348553E00D3CD5F5A33
+C7FA5E4FFF58B2D19B9D04915B1A33903ECD61512AEEFB41E67535D32AAFA528
+10FA9F87F68EF03DE847AD8BE921CF3D20D06098BE223F66DED6AD3BBA11F79F
+CE8F4EC2A83A6264406B36A48FF893E972BBD98613C6BA7C27804BCF2FD5A4CA
+D8DAA8D54F14C21A361CD594B9F76822908797D78288D86EBF0E627CC4C8F79C
+CBED3B764D2CA0D05BEDABDBAC5E09E2080CE815A76245D0E0F13314ADCE77A8
+6656CFD4C2460601ACED80939C44F600BCA055BB0332198CC80ABD2A7E361E26
+2AE4C41F97E34A97897586C5D79FFB57F5BEF34EC91CFEF1FF1F64F7D1FE945F
+F0DA4CCA520C5941F83318E765966FF0B9729FAED847F59264E7C5752AEB8AB1
+77426AFF9CE3AF2C1A3FC8F8EFC4B6E74A2201B08036FAEE8F74D6E74A0D397C
+7A7CE3E2D1F9BC1CDC1FDBE1647CA8FDD2AD012EBA5D8D4DBBA99BCF9ED3EEA8
+E8773C09545D482E30653D9FBCC67B925D48363D75B11A0E402D9585C2D5D053
+EBF046430962FA0D514308B0E9DCC14CFB51C0F9836B2244650E77777826DC35
+B5480DF48F8D9A9D731D50FAE55365BAACBE23E7FD0F4F6E22EE8B17F1CB806E
+3FA29E94280B973A85EB8CB57C047605811637076E0D98C349353BD4207FCA1D
+A11094D4DCDBB76B4AF79BBBC627ED1D176D82FE6CF34A24EF452B1F26F543ED
+2193C75C0C003B6B3C030BD9AC90C312698C4EEEF07D64753999E7E45C326DE9
+D5F1F3717D94E94E4B27F809444E1E474358D138DFABCBD6FC00E5DF2B6628F9
+89CC2B4821E8486147E9EB9CC942809FD4514C3FFCB1A9DEAEFF56EF66277F41
+8E3F7CB7997BDFAAC4429B1FBE3CEDC59DB54BA0A335AF065DE6A9981D9CB365
+86B48861A11FE0AC44C1C6CC9EFE479427C4CC328AC44D3C4312EA23A04F6D82
+A9A0062AB6D412C5A1A8CB99E7527C3B37FF79343AB8ACD53B6090341960823C
+D6F5B332A2EA6C19E5B237FED411F3C088AFFB94F1AE2E4EBCD67885214C1333
+3644DA63A8BAD52C9408C0E34AF8ED898422A0A2A4B8E9698142B53D76462200
+36CF4D53F66C51AFE6336651AC3CE180B9C382998331BFB6A86B973955D28045
+E5106EF370EBD1B57300A0EC9EAF11BA81A19131076A75D6364556F0CCB5FBA3
+872299EBC8A91563904119DA00450E360B5B7C5B6A6EEA87C10DE6B911109D46
+FBF66B637688E63AFBA42D647637A654D7D16F5A85382EBF72A7103359CB5899
+AFA4C0217EF645D765BA796BC00788DB7590F64EF066F5DEB3321090F544FFA6
+1F2185AE24C9C6051D625C2FF4D0CE0A476178E9DEE5A1A76E2139419AC8C875
+CABCCB25A1A1D18E4422015C6B8BB9EAC87F01E6DC4B5C194A0AFDAFADCABC1A
+14F9B80BC7CF2B18E2C9140ECB160CE260278344E3168A17DFB3612E8336800D
+FF3A13DBE3EDA20852D38D89CAA2B692EAF9E380302C7587C5ABE01A862FD37C
+1BD1315ECE39E266FEF9D847FD2A45DDD7A3E662C4182233EF90573138EEE323
+F64817AA1398052715686BCF461D29AAB9957671EF40869821CD6D5D499C0862
+17951DC682C529CBE8E8C0D49A5E6FA0956B2BD29EF5870CC2A2AF06EC743EAE
+6D9530AE87BF2018CEF6408BC4D97086451A0124A841A094C34F2A6FEAA97D68
+7F60A45619136B914439B1B12326314B821BEC74CC70ACB09953F287C5A0932B
+FF84B72200A20FFCC7F0038B44A5A0E9958490F023D786EB9E2C7C88D95C1EB5
+570424C0A458E89B31F2E681B99CEEC4F6A72E7BC4B7E6F159C84268138AE583
+138484A95D42F3743423480678BC749D90B1E0233071693B87E9277F3A1D9D43
+1A0CCAC46EB872FD71CE75BFE106580A89DE930211125CC6255361FAAF2DAF57
+9F4A86FB8F1FD6BFF647488691B113F5F4621614E87502EC3AD9C70B8770755F
+ECEC384171BE34CB185439F8B1CA228A0E1E2FA02D38FC2E6B1A1B1BDDA7648E
+C39306D18013CDF6F9FE27861C172CC1E5EBCA0F9395DA7C363799EB6476A573
+CC95218E4B1387908DD37C402C5E14DB7E1236B1BC094407906120EFCE4D620B
+6D8279BA52D64C5C3BE3D6E162975B61D1B8630C10A5F342D4244C9793C6651B
+10B0B67CB877E7BBD8190FDB646C044734EDA86407D9E3414404E392EF366FCD
+C7461F6E08AB2B09B4FCC7C98C97E4ED4CDFBFF8AC9EE7E97C1A7B3A0DDAA3C2
+F9849E4003A8F043BA005D297E5A292982CBB759439F9011B3261433C8EB3F92
+E3AE95248806CB2665DCDF4B3759A48E1EE84BB1B8693AE805F4631974522203
+3F467FDC225087213BF2D79B8B148A47D96DCF3F22F3005FF5541898F95B54C5
+07B931899E8EA1BD0F4F46457F63D64E57CE355BBA9EC53AC8257B1B37ABF0EB
+3429392E1427A120FEFAA66D1FDDED3F1D26439168690F10CA3C48C8921735D7
+E059470DF5C64F1EA4A20857EBFB70FD768C2DF77B90FD83D907268269F2D233
+D603056697E13F1B46DE86C3153A92A619912D6E5316E0D1DD7F5DD8C7FF1B5F
+F2FB39A652F6536A5BAD407AB9A5C9D93CA5A6284A9FAB4D353D54C5CE177C95
+C2C3E5918524DA01F22BDC2E60FD35D43C46686877A088099F000C632412562B
+D30BFA5DA02A94740A250DA5F130E3ADCDC390F2BDB1192DC7C5A7E4D7D908AE
+2E2D50846BBD1191FA262B2E38416B5F99EF71510530CD803DA1303CEA9CD053
+24ED32D8F992521D8F3B358A56B42D89EC455210D052023EEFC35FBD2CEE6A76
+A9F715D6A19BAACB7A6E56E4DF72F516C4F9354024800017E30C3D97EF968CF0
+07992318D1C9B8DC96AA1639B0B0F460D679D6306B34CE67203A97C9A2043AC3
+671DA26BFA89B90E564C29089000CE852D7E76776ED7BB562036B78CC746FD2A
+B45880E09EEF0F7BF4BEB7FD573382968226E4AD9094D801F07B16E63B83850E
+88111A93497978E539051BD0176D51E8888C1CB09AB7B64333C87C5574772010
+A74416F6D539634394B1BFFAED30DA7F67B36781606366C11D722A8C712638E9
+0341CBA1A31CF39EA1EFDECD7969DC31B06538765A2E1C8C7267737847BDFEF8
+971FBBFF86F375979CF48E6A34FC82FA9E2A934764DC72035324577A84225BE3
+D0BB79BA56D8EAB0DDCB541E50A2DBB501D7CB45D8FE16C9655ADA08BFFCC38B
+3077D05BA9ADC17F6EFE5F85125AE6A8935B00856BD588BDF0562E5224A4A4F5
+3A863355F6067AC8BD4ADBAAC72A99F351D82404292DBE2EFAC89921EE4B4784
+28661DEB2AF55AE6EEEAF6FB1C7483135D0D15ABFCA646FF3D64EC992ABA0FD5
+A8FCFDBA5080ADC60FC4B93CF4A84FC30E122C67D92DB0DA18DFDCB0D6BA9FD9
+E0F8C0286FF73E9129F37A863033C1E933896E2D47785B8FEE054EBAB376D670
+3346EFE8319B56827B4448429C5CD70ED1138B209FE7CE20CB3CF16612657665
+73856F9D127751D0F82A61FA10A366060746C0A627E39ADBB3B6A3056998D623
+1A08E7F86E6CB07B00AF5781F287BB62B553BB1490CE885BEBB92C9240F1EFF2
+CD6B893C8CF63B600B2FC17BC96AFB51C0BCE68427D843E5F98851B5AF735302
+EB6EC9BE8DE93BC5C6F48B309CEC0006D15506538F01AE8773F457CDB07D8A98
+EE767B499D60D9F115A692949754FF4983B95599F4DE322CA7F9DFAAC1658C36
+C2268D5569835DCE35DB6E40030CB28B30E31AD16AC8395F66F39F5D9DCC0E5A
+273E3111A4DD69ADE07B9FA18C7A7EA669164C6851A72EFFFFEA3E18B5B87D7F
+9A5331599ECC82C362A2103DD50E9D8825898D360C73A7E1E4E9ED66130746F8
+3BF5542959DC2210652383EFF1857D9657C67984629BC1E14570EB254C3D5043
+1E8A0347F9ED66FBF17BDA2C713CD7DC0F5347F06B3432967D1D0C4F7211B5B5
+CCD61164D5C9F01A0BA207D6EA2724F67F84BA845A28F1DCFB5E59D4DC57BFE1
+50864ADC1A703DBA46EF00F2F4ACA298EC1C1DCD26D647014806CECCC8A93E87
+158F2982A72C2B7167A87207D637B92826AFE261D9763A456F90E735DDFDBD09
+1C176B0C0D1774D9FAA5462C2943715E71F3C8CCB0BEF0AEBB5D00812E64CFEE
+282505EE165C6777C37A0CB2B7066F4CCF84B1578DC1A1165D1C60324CFA0263
+08FD152E9D3BC399CF45036466B70C54DF463A19923356834E49FBAA86250899
+4F1DA6637091255FB9B16BFC9DB377AC505FBBD1DAF88233EFCE65F1F91D7428
+10BAFF60705AFB67647EF947A26D86E868681A18E60CBBB552B96FD411100658
+1EF8A14F2E4373667B2879ABCB2D13D97A7084B345EDFEBC6B329CFF8F828330
+8DAA4AE60B8B3BBE78C05ACD0DC43A6907EC875605F84716A4E95FB406A4EC1E
+C5DA35309A932CAB84F62A9045A2D391A7728D51B18ACB5CA1FD1AE58976FDA8
+1F8D86E3052DA3A64360E1DF8B9407979E583F2EB2752C8317B255F73A2F87DF
+8BB2B5FE9464B360868C02DC6182C634140D9D51206B57DA40198D911CEF0691
+9EC2165F4BC87618D1177D281B5AD42F39FB0B76F678BAB0A757130078135EAA
+BB8A0260B772B9A748752D281FA0568790E80AFCBB1340C5E6DC160471802D8D
+D754FEE5FBA6532EAF51163DF21702C81E315834EE88F771CC9CF1D33E20F561
+1E3E661D89EC5C535FF486DDD590AD7F072B432EB842C7A6CE4C52C2A5C1B80B
+EBBC113C933400A257B2E16888290B16DC53991FDC668B304842C8600B9313E9
+08D29D7F02375F216DEE47DFD6E1D3C04F2D50977387457AF1A7FEA816D34427
+0278A675204C264FFE5C0EE3A21CD6BE7FB3A025CD33D6FB112BB0D0D20A416B
+EBCF0FCDD560A5E0983019CC7AF66D92B52C881153E8E12AD300571ACB5BAE05
+17C00671628B1E76E899D116B9A140BDD9CBCCDA64600402E6341305E77B1A7F
+418E108F85A4427F425784705844344B6F405352259DC6DE7584C7E0E5E2D22B
+6BA08FDA205B0DB705E8FBC9C917A0CE1C4AE14C17A0E98042CCAD0D2279BC79
+FB504AD1E264015F95B5DECD45332947C70C69FA10CE0B5FE6C933960B4866DA
+43E4B1283ADC307D18ABDFE9A8A2B10E862C5A771B346896C7FACE788569E483
+FE26378F52AF1D05FF2CF8C09119F7250D4EDB175CB7B958A8013CF68483A2FF
+93A39E2D0C51D4DEBC50E275869570686EA784F7F13401D7CD2619FC435F1344
+320D875C32319F796E494F75604B326CBACA2D5E16F37DF3E0BE72A649BA7562
+7EE30478DC8DE07D32A0FF5C7072D0A4C4CF36CD9E3E1DD20BD28B90776865E3
+16334B2A74EBFA0185FA602445ED88AC4FC8ABD184BD0FEB2713A6DEF4CA992C
+FED715F768F9D9842BB6DBF76B201A04D23055193A9C93CCD0717A2045A7E0B9
+0D6466D1B7FCBFDA58AB8F758593FA72A067C5C627C52EF12587397C6D626AE1
+28C12AE56AA1ED22573AC2897FBB7CF56EBD98BFBE369545F66FE6B4350EE538
+A419F9F61A592B7A54179B1CD577380DECBA2465B62EB9662BF2B82EB64279F5
+728D63F13B123102FD0727CCB312918FF43FF5543BDF8A0B01A7881E71F4D05A
+531BE4A89EA6809F2BB681A9DE9F53E37FA6E2E710086DFBD2FB8A7EC5060864
+9DB12C1E043A0C0FDB3EA5EDC78F400753FDA077EAD9EFB407EFF4A4ACDC3BC1
+0A149991A58B908EEB75581D2E2EF47E64EF9145485F652379E9A3C01117EDA2
+281D91D363E8D7588F24794AD2CF2590995A3339C7430364163AEC6E31529CEF
+EDE730EFB5FBC05DFB61BC9BC79367E9FBDCA34A4A537F78AF4F141DF5291A77
+A2225E7B7EA8DE8048F644DBEA4A47DDD8F275A462452E5737F8EFC04EF2D779
+25BD61881D197873B097172331B61256D45FFB8447D6774AB3BD150CEF43E0BD
+043C86D3C7427A3D521D2C484715E4A48693D647DE2D84003B48AED1A96FF440
+4A586D53BA76A434AC33BA6F9C6F4B443135F1F35FB197B0FC92080ACEBB2DAC
+A46B38126DC5B87DB7E1E83C7DE21AE5C7156CA18005ED6AD02B4CDF99E1B21F
+978FAFC5954EEDE6E394FEB95CC559A6DABF05ACDC0796DA6A39DD25A7BC9477
+C4795C728928C1A9EE1672205D07B1EFAA8F4BB2BB413D45738E8D474CDE2299
+552B37BF12EE136DC692F5E742D809DFE6D18BF866909A87A2C62C526BCE085E
+FE8C7ACCAF4A4B9561E3E3BE14A8633B885B86EC57C0D8095751536548C74963
+054189593A7BDE80B28F6642190AA560ED47BFA85FBA91557627D3EE2BA2E851
+DE2E17EFDEC23189CB308311FA623EF6F86EC34E231304DEEDF5E9C6BF964126
+F79D5EBB5F22C70CA5EE66991CB1FAEEF95E7E14BD5D25E2871CBD2163DA990C
+FFDA3D174140C7635710C1B3B927989111A6D37C8749EED67FBDD93D0A45E873
+E7398025B1DE7F4238A118977749B489923B4E6AE60162B6105F5E1FA02ABA5C
+84C1B26EFA27D1A5F58822A1897A374F73EECCE0422CC1D0177505F132DD4C55
+6AC7783729BB7B6A1CD33FC430A264F229D0C5A69DCF9F804FD1F01D575E77E2
+67FC00F6ECF7B3F592A7A49E410E8314BE48BDC95560401700C11A15DFEB6B2C
+189646F7FE7CAA7F938227F0B232BABE8865E8D3B764AFE6EB635ACAC6BA7C40
+CBFD610D215D07209EDB7B60807FD3DEA51E9DB40968DA07248168B6DD4C3003
+F5402EE2695D212B4DC983CC2EF4FC5BD59320EB462C88F2F4B62CEB6E22A726
+09961D7E4F09260BD5711713C32FCE1689E2CC03BB005EBAEA2A942AF20E3635
+D99B2D1C6E349EE350C923EFB6815F8BBA40D947E2619D62053E72601EAB54ED
+5F20652B03C8E7E1D65896252B7D436B77D3692C115D114F5042605050C3E06B
+2637DA6F0CC97AF4D51242D59D335491D67E95B7149C3D323BEAD304478F4196
+7E473D7DD7C9B6E1E8EEDFDA487697286F939A445B5ECE89437FEBD59AF5836A
+0FC41F7AEBCEC8EAC56D827587843055E19629E6BA0644DA586493763589549B
+C39EE3725E9C20692F2023862A3D29C4116F875DCF7D2BB4E79BFD54991A4FD9
+A7E852BBD7CDB42B624C969FA6A7DA55CD2E92AADC4243ADFD124D941152C53F
+E3764D1EAD5A6623D94036E1A88C37791DD21C59727E6ED28FC5F644B6CEE4E4
+9132042DF830F9DE1E6B78EC16EBF7687C4A4D07DF3ED52554F76996D88E40E8
+C30572AD06D64FCD20532C2B6BE71E65136EAAF008638C9EF102EB32243FA5E7
+1DDA1FEBF85FD71337C818C953219F592640A6171229F0D8E1447C4AB0E6622B
+5124945199A32EDB5125FAD3C022FF2D0AE256749223A16829FB4E1A0B60590F
+4268047D9DF9CCC59D3562D5E44E29E0F066F23AEEE045707647A75811D0351D
+AA4CC0841BDB7A63EA0BA675E4CE4CDE08975FA95C99A9CBA60817A52B5E6417
+199173813190A6151058DB86852F2C1BE4DDD1266F911F2882B5376B60C9C38C
+95B39F8511CAEB1E3003C279A4CA1FC38FF69C833DCCB586FDFE22BBB49D263C
+6444EF2C6CB9979D0CF54FC8EB7BB49EB3569DDFCB71D0966D0F0D2CD69698DB
+3862AA0B9B3D90FDE9B4BB39726EC682E8974AF9075539D975CE0CF5803EDD6F
+9F9ED36969486CD805C96E5DAE2D50F1246F36E95A974327579DAA83A63AF308
+7BFCFF42022C2D949B430C14B7536CA6AA82930B14112F87E9854AC8D6185267
+0528A7107D396A034E337A4B73BFCC2F323D5768A1E987A2BF2C8F2306404EB1
+26B3D2070A0CCE97065387D57FD9F733FD66997BE2E407F100E5E4021BAA9410
+E07A7128B51C9D320BA607C06C7F184BC27E0B7002C0B4F19685B4A08E2DF900
+16E82D6CDB0885F9260DFCE170996D78E8869A19125249AF59BF153D71E5F00E
+433DCE51F0D8065D54B605A30D0A6108C34F4EB8E56D33ECB111BD38EC94ABB5
+732AB831EF6CEE8B863D6C7CA4B95C2A154B94A16ED47B4A144153ABCDD8D206
+7CDC3843F264A5B786AE843CE7D83B2DACDD82E09D38FDC0FCC56F0D8B91D8AC
+51CF7E1DF59B11B4C5981C25E3C081E27866A3AD792C58C11C05B9EEC61AA9E5
+BC923F96864DD5A754205EEEDEDA4B63E8DFE69C2478905CE7E277EC00EEE7BB
+C2B1765F00DA731BCEBE209D595FC9E0F89F1AE7260D59375B89F88641E9C697
+E7766ACD81AE325EA386137FA6712FE56A3D4074BEEC88D76076E31C96838A2D
+7C6BF02DCC26F98A18C4206B33ABF6E6CB0D36E21735B89C64964CF4E1B9A8B5
+DDD1097309B975DD6D75824FB2D6C92EA2D010AA792228FC89B079771322BFF3
+E91B92AFAFE64D84CF391236A83524B3D4957B1A2C78ABE1EA4312FC347D1430
+43EEAD380C9ADDF5F459AFCC91682F8318DD22606240DF454E445491F07DA7EF
+58D0C679D9E887ECB473520581DEF2DE4B2A04B5B849BAC43A414E11AA3A5B41
+A7EAA9691400A3E935D922374043C8528394883DE9D7C98F9F7C814CFE8C7A46
+D52353B0AE2461F404503C38D956ED7C9EB65E3A0058F9A26333B034B7C0A97D
+28B8AD14F4DBB4D12122055E08FF3BC08D4709447D1C7A1CDE89AB45435DC837
+ACD2B64D368CB767F9B1D06D720E3271EBC715D0E2711D6C343F09039033A82D
+6716650CFDA57CEFCF25E8B86E243E77B4364B04BCA2D3BFA335C55FBB2ABA8B
+98CC06C87794FC020E7E0041CFAA75A6EEE43F6A5CB49E75EDA9D28AC1310D58
+DB1E938AEC9700C3F5102BAA6434D528C1C388BF13126C9E38173A1593895140
+42B9C08F98BE436EB5AB4B41B5B7422D853F982A5A1993FF9C03CB7A2068FA75
+F8E261E683E6F183EBEEEE8F407BF7024C6C66B0DF0379FD4A636F0EAF3940A5
+F48A71B8DB7473892474063353CEDAE734B034D9F7CC60FF1FF349F9C073B88B
+66E84AFCDE225BF8603C28BC8114DA9E9713C0246B4791AB5E55E0EA415D0163
+CEB21A1007D6F060E4DFB0902980B806E8476149241CF2388A4F3A75DC92CBEC
+303CA5829ED4BDE069F7FD3986D51D8A0BC0C7B6DE0FD5023A0B90075DEBAA48
+F5A62FC091642A061800CEC50FDD9BB3BD9E016391DBE31871B6EF431BC14A0D
+486D3827016B5A68A223117D416E86064A90A4B3B447977C0A681DBD07FCDC53
+90D92DEFF3BBAE3404AF40A5D357AD532BF82A67293799A1223A0D4B21A7C590
+D38CB008D97C51A2F2A64B35658795EF6CD44186263539760637F9C8DC75CC3E
+0F5F14E7B46302816ABAD623C664CE96B237E61EDBFE55DC5D00D858B75C8F25
+D33E2ED4643AE95E2470AE34CDFDA6C2B6D88AB81370F0C6A52E734164FB7611
+54414E4FF7B929DF6C3774EC50D769E41EFA98A21277ACF2C9F23F042F74BDD6
+B83A3156141787EBBAC8443CC276DEC97AFB922E5F4FFB16B79F913B874D29E4
+E88768568C31B1E14F081CDBBCF94D7DC3F16FDCA2918B8D1193BF99D756EFE1
+49BD3C3A0CE71BD20D416E0DCB6F83E8C3B9B4050A25DCF54962BB07865E3F24
+EDD4946718F7210D839E1EF0445D68D10D8926470541CFC9F5A336363BF66E5C
+9AEBCFFFB906E377ABE9025662729660B5AE961DFF59B4B11656295F0487E01D
+0E9DA65A913F371EBEC1D8C89154D739423F6BDCF53437BB665DF3D17BEF6F3F
+59D532D76B53A6240DEE8D68EDF71700AA468CC3E0CDD8DD50C3051608119713
+F4D5E13CA685FD48D03E71726BCB26A4C885B025179C6C7BCBBB669EC6CA544E
+16BE90184A5DF4A9532277C765CB25678D798E3E6BAFCCC1B0B31880526BFFFC
+B707D24FD48BC2DFB593285989EB1135D47FD2E30330943C5424550C4C17934D
+2CC69FB31F81916BCB774D27AE711B0754E25655927429C626799846240E7AE7
+5F662E4851322F94A14A73BB355C6DEEEB0809B730812B0798A4E0CDE08A0594
+1D8C3FC7E055BCC948D74DDD4AFB62533B78BE85310B9BCCF61F1038BFFE4A3E
+7B982D1756B58331F924D67A55F86CDB5BB347DD4EB04271D0FD2D25D3EF6682
+2EEE955197ED008219F386F41539875CD8DD847499F9E56545DE11C43036CD5C
+E5C5262A59EE74E0CD303056D37C61F555DEEFC997CC80B06C47F90A3C46D097
+610A281CF632C8E2F7B0D2F84A434BD575B49A795EA04CA3CA5AA86B299E9F77
+78FC4C37568A66996722B764000A7915EED0B05CEC2942FF564B7C784B2A68A2
+8CAFC810C16DE4691C98A7C99ECBB03BC1A16C7AA61931FEDE0E139AA1E294AF
+9D0A84607DEEEC4DD4C35D5C9798655960A8F335FFF479D061EEC26555110D4C
+5877552A318CACE59A4561BEE79F36E292C427F36EBCAEDCFDE161707FFA98F2
+C87E128FC6998F2241E4A62C4860BBF4C6496DBB4F218D5FC94C2A40523B20A4
+5A5C9FF7E16C377EFDEDD5B018D40AB01F26815275529D1359B60658FA1B7BAB
+FDF854786A00D61E1122C91C3DDFB2D8B66CC9E523CA09404A885256AC627FB4
+E41918676F3E2B7762A1AF4DD985A4E133EED84E239E38BF4A737E2719409464
+6A368163AE86C54CCBFAAE1B512103E458B2ACEB514D0C3227242B0969FD8F29
+9DB6568F5EA741F84395753D67E291D1B08401574E79FB07969ADECF750D3FAD
+C12CAA382468F626D5D541C6A9BE2657A4C2504AFE6672F60DC3B3CF1A7F74BC
+3B0157D9F19709623D01E657890A40C85B10868DAF4BF1D37C8FCD5D7D3E86AA
+02A5FF16B3487240D84AFA03354B666C20D144D59AA23A265DA4E1D0AED3A934
+C64F4C0738F8B1315BE988949C371284E5299E6BE88AF64E94DEE15E43EBDB03
+AD261E1DC736BB5F413437F4CAA0C586AAF9801A041347627DE8DE18927C2CC6
+A47653C740D5EAE722D730E17951E481DB07F3A0DBDFC4E3B7272F9FEF143A65
+B18E766CEF8E256DDC5409DBE5CC46009BEF3195BEF390F8E2AD6D972B62A0E6
+91D73A39FB27D355DC79BD514F9AC5B38FB6196CDA5DEC54E5A044661BD66975
+2777FC133B8AC7A4B56A21F018079320A3F5F5997855117658B1DF49F5D259FC
+80FF80DAAF9723E2A85467CD60861DAA5A8C80CDB1FDAEDEC2C603D44EBE2789
+91800C4D327350CA005467F8E4941F1DD74B61C5BC8885D73FD4C68EF69FAE01
+2C87B96DC09B516B2250C7E6A1F640D61A557F471C7CE4837317F885F94E7DC5
+C561168BB8C390AECB871C6A782B1C82C1AFAB46C339ACF9B4C411C9CE0437EB
+
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -2854,25 +4653,42 @@ DAF443C9E3B1712402C0FE9DDAF379617AD5B136B9BFB15F244886D233ABF295
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
+{restore}if
%%EndFont
%%BeginFont: CMCSC10
-%!PS-AdobeFont-1.1: CMCSC10 1.0
-%%CreationDate: 1991 Aug 18 17:46:49
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+%!PS-AdobeFont-1.0: CMCSC10 003.002
+%%Title: CMCSC10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMCSC10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMCSC10 known{/CMCSC10 findfont dup/UniqueID known{dup
+/UniqueID get 5087402 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMCSC10 def
+/FontBBox {14 -250 1077 750 }readonly def
+/UniqueID 5087402 def
+/PaintType 0 def
+/FontInfo 10 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMCSC10.) readonly def
/FullName (CMCSC10) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle 0 def
/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+/ascent 750 def
end readonly def
-/FontName /CMCSC10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 97 /a put
@@ -2883,74 +4699,241 @@ dup 110 /n put
dup 115 /s put
dup 117 /u put
readonly def
-/FontBBox{14 -250 1077 750}readonly def
currentdict end
currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
-3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
-532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
-B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
-986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
-D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A30EB76029337
-900ECFB1390CA5C0C3A04528044F266BA17BE487C79B94FAC6D6484684C5BFEA
-87BCCC77D40AD11552035E95E3007126418ED49B68468B38A14E88E68A267B98
-076F1C9769A5AFBC285E5B158EAC9F926F1D6C0B8F1D57D9C31D25AE27123518
-9D2CD92E5689E0213089BD268DA5E47525CB8EABAA4B78A15AEA34705889AB3A
-FFB8953B5B3482E52BFA0940630ADF8C0AC2177D907324299EE980E850F203CD
-B627962F43D5A678C44243CDE97853BDC6AB45FD5C09AD274DAF89929F583CC9
-CCC24BDFC68B92111055ABA5F26D2DC67C70906F71C2957701D65AE746A60C30
-40E6CB24B97FCDAD0487AE38A201FBF0E41BABD2181981A71940F1E707F91E5D
-C8CA50CB16D8702D188E56D014D92F76CE0B52ABDB9110E32438D2BBF3E6A40B
-7B005F10BB437812CAC6ED2996F7606DC962C4FDE207FF322782C343DF44CEC5
-FF06A55C630C20E9AE1B0D1C5673753C43BA0767D65D1B451CC6380D8BB3C4DC
-81E8FD8AA79BE993218686F29D3CD925566DD587F541A0DA1B1CC3BCEA2E6C7D
-5E1016F6917A871F1BBAD96AF9E867735017119A381FCF33EB2D3E1E7093FD90
-CDB0CED4818CFD9E201A03430CEC713620BE0D3254158931FB657C6877C1B3D2
-24030F377820DA58F4B95CFE645109F3F1B80DB5FACFD7D05AE2909EEFCF95AD
-9CB286C8B6C075CA2267C101B736139863186C193E31085E7C9FD88EF8BBECE3
-933542C85309013325B4BBFE9A5B606780C8580ABDA2F5D0064EBFC23939B307
-08568C3B7F5F053BF367DEBA349FABB9F760C44D100BDEEFBB01F27BFC61F51B
-C968C721E78497A7A3B90094FE11EEEC89D0D9E7AEB35D9A3FAC51F826300BB5
-84A4038A08FE7DEBA3FFED05C494AE0962114E9A90CBB87B40B7B669DEEF7D48
-6F0F21217F9911A842CF3882BC64670E58182A5D59B72EF73F62651CA3428BE8
-9389C4D4A3C77C7EE2DFFA8DE35FF4FE4609914E42CBED28EA59AB9A5A049F52
-8C30FC6673FA3B3F19FBC6A6CEB3D8ACF6B1427E9561C0EF108BB29CAC53BA6F
-6102D4A599510D1DDE1D104812EE52010BED1DEFF3419DD223A26CB1A2B7260D
-04989B2E8D900A82493EB68B883F32886BCCA8BFA961ADE4DE46F1CDAF2DEDF2
-4DF21403151EB890326BF9771B5491E45091877E550E3DEDBD5C97ECC6AC49A5
-522221DDE68940109257A1E6932F5514EBD5CDA3847B8EBCDB50D2987188FAB9
-F2F96B107B8307826A541B49B178189A17F7D8607F39FDE8A03D350A324DC684
-58DF63F288B4907F450060824D764D51EE69FE0D31053E37E031F03A1C58DAB0
-69A79DCD03DBE5DF2086BCF558F7B68158CB3E2F59E313FDADB26B81EF589991
-0F4C54D7F2209F812A27A75F586A62E59938C226368EA6F4C71A8C1EBE4FB084
-8EFE3E4672FB73DD50303970BF520125F49CA280D88E941C08FCD32A93EDA3C5
-70BA7A9CA5B4759BB64975E6F81F17033A85EEE16C34F48CB7DF5ED1195C7943
-7D38D99D7DDAB8D15C68BF7DB3712CBD9846C5C72B435DF91A90ECF37E33A10F
-0C26ADBEE029FA2BD8ED27E3E4A8E76F8CD37EA0A65C16BBD2E7463F474DC9F6
-EBE92536B35598474B8FBB13CDB101DCBD04BC1295DD80369DE583BB6151E830
-21723CD7B5581BFD1631A8B8A7E69D06D4008D30EC7685426D614375B3F7CAD7
-F638ACB0E889EA91AC865BF31246CD8FC4CB99D64D6559637E1CA4FD935BF954
-90A3D8EAE892A1FDC20384CEB773242EEAC281ACF9907CC69B04D3DC36A2F8C2
-E6B26E6435B650A7843192E42687C1464252828830DBE7268BA089A131CA8F3F
-CE1DB3B2309DA9764430E6013F59EF83AA83C4F335DA40280BD758F8F174882E
-DA4F86EFAD370A8FCEE9BAC93C40745F78BCE1A0F82A3AC4AB93C589D48EA9C9
-60C030BE2C81689CA3964746154DA78A260693CFE0A3673D61EDD2D89DBB471E
-2F2D730EB1ECC9F3FE5474CA0AA70F13003A6F6311AA396EA0707A2F799724CD
-6172B351BA7A8A79BE939E5CBBAFFD704AF6B489C3CB7546924F72B02651D74B
-83157155412798FDC5A1F0A8FAF5B477F2A631AFB3905FF4B600898594AE2A06
-12F833A915CB69DE6BB34698E416989B4FE55486BEA50ACAA9F913648A1C4AA0
-1115E2B254E8F29AF44110929D979C357A0034BA64B9174230D5AFAF270E86EC
-91452CD3CF7DCA0A1813E9966B3F98373F28765754AC2E16BBC64F0B889E5CD8
-CB522EEF25E3E76739C20E3E767DA51276469AAEE0A11A92FD254CDC90B09175
-0C480A56C1479FD15F91B39F848F2B77786295A7276E76F7EAFE1019328DE9AB
-C3A69A104D37039F98CB3042A8F53847B97E1D2BB76EBFC6241E5903D55FEB17
-436374CB85B27E2617EA745171C9F1D2A3A890490004B38F5BFEDA0B0883594A
-464E46788B8A86E19904F108FD902E7B032F496E86B7F210E3CAD335CF4517C5
-69558F3C3593F3BA0D235CD5B7DDD0BA909EA6C635DB553D5AC1AF351111A37E
-504A6652E21ECB309BD4B641D2470F2E0D03F7F34959C983FBCBCE64CDECECB2
-EF43850D1BED843DA6DD2B1A9282F88FEC210949B3B5737308EE15A6B6148697
-2A5F77FAA39B8141929A40F68D84C8297501C2DF95230F2C167BFC8708152387
-AAE0C24A1D9351
+D9D66F633B846AB284BCF8B0411B772DE5CE3C05EF98F858322DCEA45E0874C5
+45D25FE192539D9CDA4BAA46D9C431465E6ABF4E4271F89EDED7F37BE4B31FB4
+7934F62D1F46E8671F6290D6FFF601D4937BF71C22D60FB800A15796421E3AA7
+72C500501D8B10C0093F6467C553250F7C27B2C3D893772614A846374A85BC4E
+BEC0B0A89C4C161C3956ECE25274B962C854E535F418279FE26D8F83E38C5C89
+974E9A224B3CBEF90A9277AF10E0C7CAC8DC11C41DC18B814A7682E5F0248674
+11453BC81C443407AF41AF8A831A85A700CFC65E2181BB89566A9BDEC70EB4F2
+048A6EB631F05C014D372103E37FC3FA317EBC9973565A638403DA02E48B7D31
+CFF6C241DC5CDB470561002FF46437C06EF93BC99352DF04393C661FFFBF4BA2
+0723ABD9B3E9CA9E63BA57EFDBAE684655CBBDBA15ADAE43E1A2C98A3CF060A3
+D16AF8FE3A49B50A24C20EEED716E49AF6013D4D38CD9CC41A91C17E4D04D79D
+567E1EF49110AA9C34464E95D81A730ECEB2C9AF38FBA6B45E253288438B4CB3
+DC75B3A906D4357293BA41E59C35223A6C9CBD6FF5FC90C2D07CBB376C7320FF
+435A6251822BFCBB612CE630EDF826C37E95F541C21B93FCE127591D5E38165E
+2B58A34AAE37712BC58B63FFD70AB80F4F24612CFD2F1466BAAF3CA2BCB45148
+D0DEA0E9B8FBA4C4FF5B8B3CB02E461355051842BD1C94F41066B9B909DB83B1
+DCDCBEF7CD00A43E4C0B8191A29600CA197F0BA227FB8309BB539D2A620BAC70
+8A1AB2DFA51ADC9873B8E5582DCD3ED154E5D727D1665F99BD89883D69E6CC2F
+DB3A57AEB612171A88E22F038461DE03FC357F771675E34E90D4D19B4B36891C
+9D2333960400E97494F4FC4DBCE6A73C34A0409E433BBDC0AAAEBA7D3555066E
+1CFBB4515C8B573C9B9DD12ED5B6ECEBE35AD0DDEA9DB004FC6CB540B5117B49
+59CABE5FD74C6F5B6482B42C20B5FF0467D1DBD7CED2CC651CA57852B6FBB402
+A6764DB342889132C911CAA713A7F2FDD8A5E849345D6C81025E02F5B8B682BA
+90CC9B467FBC37362436EA6BF8EB62D784B01D5430147945BC09D1F49EE89F2E
+3E2B8E6D439248A56F82F2E03EA5C7A922F2813BE6538A3A423BEBC55B345AFB
+3B3C125306749E137C647D78028AE1FBF3E1A82C260132832A9668F454D39C41
+736717DED0A99F6B11F005F0E1D07FE84713AAB4C042FDC166AA146D7B5E9198
+E4F485BE5B135EA281FF1C1E616B5AAF02771F58C5840CB5A427FF9794F93E94
+17FD799C78AED1DC4810BCEF4C6C51D3C1504EA2C6F2B29805B7ECF97B5F637D
+FE92E168CB9029E90404CB54FB312FC7AA8A9F2F524C03E61F03B1E31D4F061E
+1677B39D5D30C9FD4673E1723F4AE3CCF38593AD6D7F61E9DF3C010E51F25085
+35D51105E1464BA146A78D7297D4D310AD91342A0BB942034A3EC0696B467367
+3E39D202D637E6B14D0EBCA6AD3CF22B07D4CA69C0FCBB6C93782B2F0DFC5AC1
+5D8A16CB5EDB671A0C1BA9D10F63CEAFCD0E06E42C730C8EF769CCFD57937245
+658F486036D37E8BDDE5670A212FB488A8753322A5B170C9662750AA958C0BBD
+8E97D8239D2A08B30416504DEEC4E506013E037C91785C674F8A6A44E23FEE6F
+CCC00CC5E4D355B0871FDB8ECD64F70EE32449BB5D6F84F8C8AA2D5B1A489BA9
+D7FF2DBAA8D0B84054E93D64D3E77850A3724824914A0F821EEC3D605DD851A7
+606936B8B9E24D6E932E16C448140FE94DD96C75AECB73850035ED9C04A1D93C
+64B21E7D4657E030483EC5C3554AEF8BE4D0FE5B9743B875340B09E01273DAE8
+F256C50A1A8F2E0417440A8BB0173F59E11523E1CEF2593A4AC5AF2167627B00
+C5EA97D125EB8A4BD4C372877ABF10F5B7B149D73787E0834BFB3084E9508DF7
+072DD71637019599252059738D4D6BC57A9358E4B14F6AF9C4B31DB8E25C29B3
+7A15F9953BD73ACDE5F0445A5DC406BB4635FAE51C1D8202AE31730E6F355317
+1DC197DB0B6177307C60E5D38F4487363EE051B2E609A52BC4D45B14B6558B6B
+5E1618748794B8340752CDBE7756C068975B559615D4CD5A97CE30BAA7B2B1A3
+2FEF2E055232B24FD8A21BECDE1B6A479A28EC80AE2CD16DB50B30B4A6CFCF06
+491C7CD5AC29FB964D4846415233947522676DEABDA0D9535F8507D33693930C
+B4E4240A02B0CE7EA288516B8A6EF908D7F8BAF9012D052C6AC96D9F8F6ADB07
+8984F3559C5E7E3022A957982155FC9CD599C74E18328D3AB46F9DD15D1C4C3F
+9B93ADB4489BA02CFCF57DE6270F3AD2F8597BE71786510EF08142F430EE5568
+4F9DDB792B7C46B6135E341DBBF062FBC50FABA80CD4A384157BAE57CBEA9781
+AA4416323265168AC097DE7E30A0D4750143A4FCE70A863A31876A8FA5327C3E
+36E89589E363AA2B1A6E8B09F5AEB8FFFD0396067173465B6503383DE517A6EA
+88C0FC08578398C2A721E5AEB29F4AC9BC990A50CD87BD35A11F9E81F68E7B85
+5E5B95A4F9A5D30379EF90D78E1E466DEF867BAEFC4F5ED2C762BFF099C1C2B3
+5E0DA1C2FB33BE1379413CDDB1EE6BB3A495331F72F2FAEB8152E8AD5FD334A8
+AAB0082A71D5574B618EA8D487B8FAF1B445F3395B1E21224F5492A0E06F5152
+7726835C900E2E52BE3B7B654183AEDEC68053DD0AF19EF6DBC10B6FC08EC7D0
+CC0E2C8FAF8C9A4C21FB7C34E074BBA4EE64226BEC8C928A784C1BEE35B72EC8
+E9295240B29DDC2539CD118BAC38DB3917D14CD33AB45FE47E827F2A2B193AFF
+53C5396C52CEA4F43F06AC2D08C74CC85D608CBA267175EC31311EE25AB48DD9
+FE811B411AE426C9FC0B6044D1EBF130231623F1566CEA4D1C06D8032FD9808A
+94479C842BC41B675CF6B90113BD681F8D43F51D5016D80EDC11D7640FB950D4
+E709A46184406ED90D0892A4CD9062938A8205697A200DBE1F38EB166EFEA0EC
+4FCB45CDAF82EA103DD6FDD03D146F3E42EDA6496064DB3F4FC1C5280C9E604B
+D5EBCA08BF2AAC90156C11EF68137DC76502EBF216F3AF3EE30DD2676D218428
+F41C655093F8B530FCA378B5769F262A6FDB4B66B83F18F050E77227E28D71F4
+5F4425CB8D51B3DAE872CD86D7804F870BC564A6DA1CA13EDB00D131CE4F6460
+7021661B99612629DCC20C85CF155EDC5111E015A77B0B82A8FC1EBB374B7EF2
+361419BA93B857D5C9944BB5B4AEDD86ABCC261542077FE09701C96370168579
+5F89D5AAA08D700E2643E88C2FB8D1D56D37AAA9744872E7C050B4CE046B47A7
+83F224FA9FD311C955EFBF173042C8FC66524135F579B1397828870D5C9DC71F
+8615FADE2A1CFAEA90F732B6C266E2F3048FC43EDA7A6B6D98E9DB793CF457B3
+F5877E7A055C92B0246FEA8C72B3B3456F93BF36E2651D32CD614C3AECC0B4BC
+F824C8363E593A6458D37408FC5B09883B280005DD24123E2D4B1B85F4113327
+EEDD9186A4AF2CD6439B46C5C168C125CA80F9EE9E68906620EE126CFBF26E15
+B269838A54224EDCFE2A373EB750D4829BFA410DE5F1541E428BB1E024AF496D
+F5F1C151F5A645C8622F2EF9088D57A2811868A8A8BFCDBFCE3ACB8463AC35B4
+8B6F44E1C1232805842F56FA468F81FF37D5D55B81CA56058558544C142EB3BE
+07CFB1F75DECB1E48C14D6AFDD455989AA6FFE8B8DC54F462B3C20E31D270BCE
+8E68E2B43A6625AC7E9792704FAAD6CE8BBE0B341DA7189EBB3E9D5375B27FD4
+12506D5BCA50AEDC6955E6C3C7BAA84BACAF7ABDF3A270C7734EC3C6EC22793B
+E67B0E288F99699D38DA8B79F2D21DD97945FBDDD132A8F0BF947950D3C0B4AA
+EB7B2C435AFE54489E1930610311D718AC610C21A644F34CB2D1959B3066F39B
+EADEAB5CFC6AF4D191D86B02402B00D1C5262707861C5308730579795EB53207
+A291A27A8B5C4DAE0A87A0C6A260026CA3CB620E1002E066A515D7990F3DEA29
+0FAC962E0B82B7A6C86B1EDC54007822BAECED673FAAEF88C8109777EB79A53F
+AF3C58546974F2F56E70E9B5CB59ACB5C27CB01895557B2D82134D7F02029B24
+3331621F38E68717F5CB68A8892D0B9C0A8ED4F8BB56E80505170D44C6856128
+2DED0254ADA4875CF56B4D97372AAE730D4C77A2940DC8C178274DF88A9EE037
+215C6FE7B9D481EE4DE809B124C0270782411ACCCF89906A8B143D0BA8B2CEDE
+E9B90465C3E57A4FD9AD2702323450256ABD09A1F8C26F08480317C08B75B720
+70A161C99715A35A94DD5C9647ED0F8A5337B774C8E54F9653AC859485A1FED5
+37B725A7E4BA58711CBCDA6054E34CBD8E9F9460179DA7DBD243D81A1531FDDE
+BF2BD425BD9DBE75EAA333B1F5793669A215549A774597E6ADA16D323FE5601A
+EDA41092730009A99BF5B5AAE281844A6BF3292D4D4EDE36B4FD8BCAEB6EB72F
+AC5D3CD53D0D621CA9EA8D254FDCB2B5161EE9E80B266563F669805A3A15271A
+0753983004A1ECC7FBADF62AFEA4DAB49A178C231759857DB910668BDB07CB3F
+7E8EC24901863088B3231EE3FA563924032C91CA9D68DB398F9BD9AC0C651EC8
+9051C9F709CD784F3FF5951DECD7E869ACC34B83AECDB011E6594347855EE7F5
+28811F744A4BD70D4E9077EA7EC19FFCF612689F12B34332857AE41F13E6D16A
+962DB9B6AAAC167B9FBDF0068EA13412F318384134B29F3F0C399F1973A3564E
+F9C3C39B5BDD4C98D81A6CB476E565860B50704BD65ABD630A5F1372F2D826F3
+3AD47C08B8AD3176A170C369EF3CEEB190134006D6135C5B8CCDBE1C11FFF1EC
+3F6D8C46E15C4F5EB9ED9F31A129594D542D40DC3815CD075A0DBB648D868AF5
+15A05C4BDB28BF23653A3AD96CF6AFC065DCCCB23D5D9A945F8CBB539DD3BFA8
+DB8F1FBF9B6F25B41EB4309995CA3D5D6ABD70CBB4A2F0C6364E5439AD1045FF
+72F6B45A30BD3A548CFAADDCC6C15D46F6D783D3E520215751DC98335A4ED512
+D7D19235CDF911CC69F3CF4365B678EBF3E87C456A4E77339C74930083445588
+462529C22A96A28C5CE87AFA0C981F26CAED5A1C8DBCDDA612624DBE0373F026
+465185A4D8C73CCD8D71EE97116F8F7D341B87FD78F9CCB9FBDA2A7799711607
+6BBA855AE9D5C505870DC85FDFAAA130A351D56AADBFBD6A7D52055E3200F8B7
+8AE9A00092B55DEA8BDE224B4BA7FD4A191CB1FFC4CB995FEE1AC2883AB69E1A
+AFFC09AB5B9AE311A030A5BA05E2213F9BBF016C8FA80689C069314D91274B20
+53FCC65C7D7B3A7504887525BFFA060304931672A078BCD7F269595686310E34
+E1ECA868899BC402D17EC36CE40D5041D7CEDA77F7764C9D98793F5334F574DF
+E93CB10A5E8ADAE95CE63D2339557091B4B4911A4987CF21B7F1DBADBC2DD605
+8EB72473C1F2EABCC44E0D0339EECB55DA74085606C3F89D57ACFBF5755A5395
+CA8D4BD47E4EE8D8B882D3AB31A1F0C62E74654C7E041E4FF2693A38A9796064
+46526B0A37E6B5BF8E48E80EDEF81E34DA8F6CC9025936A4D0E6D709D61B7B5C
+AB550397117F3F9D2F5A542A64DEA8E1178F7337124D6B56BA92F659AAD694D7
+391028731E01284BFEA635314A8DA8DF7A34EA3B6B2F8803BE6DCB423A9E8015
+55EBD90EBAE8A00298B3B6B1C02BA516AF528122C1F2B07EF69F5466C2C36643
+0D665D6561705509B7582D8301AF3C32E2F3B9433E3E04D62117C7E8A368BDE1
+0D4DAA1C415B2A6573116D2A169AFEF700A83F55D88813585E89C94C07802BA8
+3AE8F9BC3CDBFD9C2E35D062B1FD6E79E1EF104FC70B0AB09D12CA027F33F85A
+22F0ECBB4AD55FE8C616B82C46CE69A600E4F767BD7A9C5F9B37A3196B038384
+5DEF76A8884425FE598A63AEB19FA698C2AF7CAA4983CEC789268E22BA051EE0
+20A40633D22D8F707626ED30E8273EAAD1C065F0B2E1718B5AC853ABE09330C3
+B0082A71D557169BC1559B6D285A3499D41C4CCF1F74884EC3917EB9C574371E
+AFE8578DDCA459B8D22C0188A8D150437B05FB92022C95EB6FBCC954216B5FED
+CBC7C90B9A1F061376A9840FB64390A6BA99CFC8279A86A730C6DBFD14C53C4B
+7277D676BD42203677E9ABEEC8C97E13DAA626474513B06F8734DD784F2FBBB9
+B3B448B8E8221E380AB4A86D3A683B86A54129519D50DD4FE63B30954D805CED
+A9A5D9A39C58B65B08E1C19555E927C6DBF7FD07252B2B57F62B905D6B488201
+213D106A41033B26FFBAC2E616DA6ADA6D560BADF10E68872806CFD6F6E19D7B
+57CF1F7A030A7BAD374F16A977E0ECB8742D034ADAF9C247DA19C8AEA74EF6CE
+DAFD6B1DC562FD3B77E4D008BDE4D8C7FCA9895DA1AC9EAA01C32A0DA712B082
+9438E77230D38FC4153E1711417B918BA6CC03203A5FF082AF880F48518D8271
+C1121E4F1386B30A7F1BC6F10EA98443F8A65C867A109336B808BC9A8E2A75AC
+F950835AA84B56F59DA4C8A18859C3B68F6B6DE09A6675F639EA9107BDB67B0F
+54EBC564BC2D781B61C14363A54956BA78A2BB89C9F966C94EEFC29EE9F4E23E
+C0BF750144DC289F0DEE1F8A25BB52E54F656FAFEE4BD2DA57E1306BBE648051
+1D0CFD6A23A3DF082E3CF13197BF1B7FB22B2CD427BB78F455C9634DF989DC90
+7BB2AE247B1C99AB2062855B2948341B0F857ACD750B59E370A6698C6A1F5287
+72A4A9628A592E313956C242DF8277EDD2F1FDFB07CDC104275FFBF796D7518A
+DF49FF3CDEC3BDFF1D290C382F244DF18005ECDABF0C5C2C64EEC4383E2E07DC
+5C82587C071E59B46B7BEF31D268F39D9B12D534344FBA515E9DE8F166FAD1E2
+7D1558967AAAD3829D3F7EC6938D20E5379F414532976ABA844D97A5E9078901
+EAE4D0ED1F4C7EE7A2D80D891A5013D6409A38ACFA497F5A169EB7F9F4890DC4
+62FA6A89EA48267331F086992B9CA9305E16611E6AEE67DCDD588A25D37F45B1
+0DE75C802EE021E574B64B3969DE2E5061ED9364B646C38D4BBA86802CA6338A
+94E135D2256920EBFB1AA22D9E90C7D16853F0DF9F2D942748EE540E4FCE63C6
+5380D7AB4ADD6CB00FE8F7867E4862D8DB432F28331428CC350CDF7F447A65ED
+D7683ECA35A22ADD06E9FE6BAF060913AEEE7B2B8EE4798E437698CC9EB2428E
+74CE73F84D0D2292DE709D71FFF8901C3505370E6F1D4E28E6B7372492C65A88
+159371B1D60D77CEC93B272B6C5394EE1D2EF9969DB2838B8E128553879A1BA5
+2884B0A596E8FC3D1E648B7E26A4AC57DF09B9CE09B2F91D8CA618CA52AB3DBD
+D005A56A420366069B73146A6F58E88BA49671A1AB7C2070C3D42AA770285143
+40AE7D7868C0E1993506B07C086AD7D4F28CE2D15853FC5FBCBF9425D8012B9E
+DB6E1E5002517659C8DA69DCEACA94F368537668843D281FC11782F1C5F71977
+CA215349EE6F20565DE3D8D8212A40E1227A4B22965FA64A0B02C62BFDE97E6F
+C3C54FED4057EF9D258C42D7440C78C5E0CC58A40DD74ECED4152F70A93CE71A
+1B3A57C46F74A6D27BF98C97CCD31A8EA487260F224A3E40F52C65490AB4098A
+7B9EEB54A5A415C8C88568F7D9EFE74BBB785FA18AA27D9201F28BBC477A20A5
+D1307AA78EB8C7CAD409AB64B29E4115E45F5FADDCC80CA74B296C4265A40614
+37F2ACD8386AC0202D6FDB6711E8CB06442F209D781E940ADDD6D881D4F8E874
+357C533115923B90138FFE31D3577C6AAE60D768970FAAB682CD0DCA3E9A9A68
+6393E4B772691C1013ADFFC90C508D51B02D2518ADCC7E79F7DE5DF9D18B8435
+6129064DD1A3995E5A6F45D78287CC10A0EAFBF47223494C5EA934B1BC2F7C53
+686C5880303F9E3ADC8B100D441D944686E1FD811C646C6DD0224F6CF55FA87F
+D132EF50450879A25242A18683BD6D0266F8F333F3768D1952B0F32AA75106D8
+EC0AB703F287E847CB91FFB88CD9DA174B49171822BDE34621CF41EA772230A6
+3088F8D19CF2364A329162D39E166AC728B267758341630B00398D64538FCC4D
+E3E6CF103794C29AEF7F7E56970F6B1ABA87DC8D23E280EDC77556593D02DFF3
+154883CFE4EF04E07E7539A4750FA1CF1A994E99B656E728D140C83AE1F196AD
+9F049188A4184C84556C0476BE46DDA8ED86888DDA3065C5091D99EEEAC43092
+40B97AE327215024ACC0134CBE91FD761C26A48EDFF9028DA28222985FAED7B6
+A1CC891D07185666E34BEFBBF77C6C32B88FF3F1046E4EB2CD942E70746DDCDE
+002E74BA03A2B15E0529E61DCAC207A71F61C89D81B3C53C5B458EAC70ADFC54
+810310CB04E1A21FFBC5DE2429EC0989A3F2B6AE4290A005FBE736750956765D
+637B7CABF7F9A593D9FF6C322895835C0007A78771D1404671122F9CF898AB24
+1A5648EF8C40B27FD537612C4CBC6E584FBD058DBD4F0A00C63A79077826D3F1
+859589B221F7F82DBE392601B0A89142648EB40BCD943E382FC7758A10F978FF
+6DD9C3C1D284C5642C812DBF29A75A50BF63F788CBEA5883DC1544ABB49289EE
+2C99CB03C1BA72C7320904C7EC94736825A793D5629EABFCEFAB8D28B6F23858
+89A6967942A943FAB5E5B26B8567CC9606DE60329C6D890843F700FC1F60656A
+38164ED7976AD47A8E54940B9E340D61353AAD260C9273D45772AEC8E9F4F045
+9CC576D152757AF3B74DFB9B6962001EA9FF7F62C2E36F71D9B76BB99DA7631F
+774795B8CD1E08480153496DE5E08A1F4BEA681D0C1D6336A49A222B0537ABD9
+75A3A9D27D0B71B8913E9355F8E56C5FB3E14B9D5ACC4F87339FF9D9039ADEEC
+660B5CEF75E7C1772D4A3A4D0C8976A165766D9DBD0CA8132D17E5149AE716A9
+2E255277FB5294A96194C462C74AAB251A36941768EDB3EC6DC2C481393ABA6C
+8BC2F3AB0BF5A6E5619BE16DF43BB090930493E00607B9F8C32D24F07482266E
+09ACF6B41349E00C8B421ED5C40D3C40923D21F107185B5A135B36FBADE488C1
+8F0C2DEF08A6B185F2D25B8FD8DE7EBC71DD9C15C9F590FCD7B4B8E9690079F5
+39D809ABDDD79A632C99FBDFEDE0A89341919C6B397AD1C8FB7F3BF8C52C1B46
+7BFA51A4DA496B810689769986D6A625AEA159AB2F6C7EDA6E04F0B2631E5E0F
+942624C194230D8A6EF32B3E1B4A5C37C6092246B328CFC926D17AE3B559ECD6
+2FA448C0FA94956EFED3BD7920EF42BB3F25907F097FA990FBEB88E78FDC74AF
+D3D7BC983DE0F33C53780C9A8E98A40C2EFEE93067232133F83C4EB0B2AF0EFE
+D1B3417DE2966B2BA85FB7A32A1B6B57D0EC8645FE35571746F760EF7ED4B9FC
+53857A279CF19C0625D3FA9733C918A74E592DDA7FC1B088A8E323C9845306B2
+9C474BF8FC5F285E76B64020C2A377AA104483039805B8963116E882A0ED9417
+F56A2B0CC9B0857AB0D1B0FB080AC608952DE7DE07F81AF14AB81F90A76F288F
+3B1095F9BD7BF8FAE8294990F0EFA45CDDCE3E24BE64C706C5031856E795A079
+C062F5C28B2429CAE52817C005CB1CB8F97FC6DB2E731FF72D8CD75FE7314C11
+3C83F93A5D1F5A4D928A8D9CBF8F66980FA36717E2BD4D7B52C7F7931CB91E80
+396D5593E022810BA1D5952138AA44DA13E001BE8F854D1AC6773C10F5E8C5E5
+FAC9C1C00D691A1D84FA88AB7A972CB521449280428B3B6B62AA1D7586C5016C
+FD2F558F09577665CB2CA7998B1F54661994EDF2B82229F55A9C657B1E0206FF
+4F8D30F309A2C988FE06D7E6A77AE5A44765FB88A4CED66F8DC8FD7469C483E1
+9849B7A365121843AA23E554102363A21342EEF1C13688E9FA27ACBC3E479F5B
+E64E99C1DB82AC245BE81B1898EAF293D9CE70F1E5B2F5052CF248028DE1944F
+E1416FF897BB9855119C4F5D237A38CAAC27F5E4A9696EDAAA485305A3691ECC
+C283663B80248DF419E3F267BD10B935E88850FD369A91F34A6F3AA6A11A6254
+63FA3BB611268DCD43DAF1F273CFF5AA40177709DD3B5029D6135A47D7E4A76F
+03EDD4DBFAD427D55EDB1D318749E5F3D7F3CFF981214960E8AAD77C0B9BBD24
+29089C360B059722B67B148CA77CC7BD0A3AD65539A373359FDAEAEAF0FB3455
+3D781BB5D8ABE9FCA148C0D612FCB9E33BAD7492CBE37F4ACD720B61B638C141
+CF3F06378534263DF7A7016BC0F159120F2B211FC57203652189D3D1F1EB2FBA
+73248CEB7DCEF5DCACF8250B1582BDA94E3C2E4565EE0D7450761F0EE8A8B0B9
+F62F5D5048E22205C8F61EE206359DFA6318C8F9F67FEA6C0A13A9A4E2F195CF
+2E83FD136DF96EAD2F930FEC1461C89B7755EB308D92A51834C0D0868CF34731
+4FEBCE3AC5B80C92BC4E3364C61F68C34A146D2901A2E4E2EDD9AAE00D964486
+2DD43FAA44163CBDCDD514EC0C9276900A047CB0FB70E21E618AC4B18495D9E2
+2D227915E49156E06E3753326CBCFADAE75F6505CB19D1E803BC2A83D5F3B200
+E4E8D4BD1CA4A3695FBCD4965AAE58587DC18B677E85E05F80FF870EC8B383C9
+21AEF9EF540EB0D7F7F73A56ED422C876FF091DBDCB4B2B7E3A4A25816EB6F8F
+719CDE34FA58AA1738EAF33A81CB0F8B4A35804D62EFF869B14C4E275E4899C4
+9CF66CAE18DD7E93D4DE571177E8B1E3ADA0C216D2C984B9F2E23E8CEB48228E
+D76C7CCD00
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -2960,63 +4943,233 @@ AAE0C24A1D9351
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
+{restore}if
%%EndFont
%%BeginFont: CMMI10
-%!PS-AdobeFont-1.1: CMMI10 1.100
-%%CreationDate: 1996 Jul 23 07:53:57
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+%!PS-AdobeFont-1.0: CMMI10 003.002
+%%Title: CMMI10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMMI10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMMI10 known{/CMMI10 findfont dup/UniqueID known{dup
+/UniqueID get 5087385 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.100) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMMI10 def
+/FontBBox {-32 -250 1048 750 }readonly def
+/UniqueID 5087385 def
+/PaintType 0 def
+/FontInfo 10 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMMI10.) readonly def
/FullName (CMMI10) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle -14.04 def
/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+/ascent 750 def
end readonly def
-/FontName /CMMI10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 58 /period put
readonly def
-/FontBBox{-32 -250 1048 750}readonly def
currentdict end
currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
-3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
-532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
-B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
-986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
-D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A319B6B1FD958
-9E394A533A081C36D456A09920001A3D2199583EB9B84B4DEE08E3D12939E321
-990CD249827D9648574955F61BAAA11263A91B6C3D47A5190165B0C25ABF6D3E
-6EC187E4B05182126BB0D0323D943170B795255260F9FD25F2248D04F45DFBFB
-DEF7FF8B19BFEF637B210018AE02572B389B3F76282BEB29CC301905D388C721
-59616893E774413F48DE0B408BC66DCE3FE17CB9F84D205839D58014D6A88823
-D9320AE93AF96D97A02C4D5A2BB2B8C7925C4578003959C46E3CE1A2F0EAC4BF
-8B9B325E46435BDE60BC54D72BC8ACB5C0A34413AC87045DC7B84646A324B808
-6FD8E34217213E131C3B1510415CE45420688ED9C1D27890EC68BD7C1235FAF9
-1DAB3A369DD2FC3BE5CF9655C7B7EDA7361D7E05E5831B6B8E2EEC542A7B38EE
-03BE4BAC6079D038ACB3C7C916279764547C2D51976BABA94BA9866D79F13909
-95AA39B0F03103A07CBDF441B8C5669F729020AF284B7FF52A29C6255FCAACF1
-74109050FBA2602E72593FBCBFC26E726EE4AEF97B7632BC4F5F353B5C67FED2
-3EA752A4A57B8F7FEFF1D7341D895F0A3A0BE1D8E3391970457A967EFF84F6D8
-47750B1145B8CC5BD96EE7AA99DDC9E06939E383BDA41175233D58AD263EBF19
-AFC0E2F840512D321166547B306C592B8A01E1FA2564B9A26DAC14256414E4C8
-42616728D918C74D13C349F4186EC7B9708B86467425A6FDB3A396562F7EE4D8
-40B43621744CF8A23A6E532649B66C2A0002DD04F8F39618E4F572819DD34837
-B5A08E643FDCA1505AF6A1FA3DDFD1FA758013CAED8ACDDBBB334D664DFF5B53
-9560176676ABB71BBD0EE56B4CC492C0652750227CEC6CBEEE374709231B00CD
-0DE83AFDE295B314F6C8B1FFD32251C1925D96A64D739FF1DA4926460B28B3DE
-E949AA0BA3DDB16534FBA30C32092D5F712B5E8C8D5142F35AF2906E6C219D2C
-7FD9A368C193E0EB9C7E25FF03C546B6ED993F964CEDB1B8537C617170787F37
-88D6F2AD02384B01067FE3F98257BAB958BB3BCD1001090A4502DA0638080EC6
-DB784CC8AC37CDC01B29BC481D6A05ADC6188785262358C1BF1D694BBF31C1F1
-AF117C1ACED44AAC6EB4B9A2511A6762DDE8FCCBA5
+D9D66F633B846AB284BCF8B0411B772DE5CE3C05EF98F858322DCEA45E0874C5
+45D25FE192539D9CDA4BAA46D9C431465E6ABF4E4271F89EDED7F37BE4B31FB4
+7934F62D1F46E8671F6290D6FFF601D4937BF71C22D60FB800A15796421E3AA7
+72C500501D8B10C0093F6467C553250F7C27B2C3D893772614A846374A85BC4E
+BEC0B0A89C4C161C3956ECE25274B962C854E535F418279FE26D8F83E38C5C89
+974E9A224B3CBEF90A9277AF10E0C7CAC8DC11C41DC18B814A7682E5F0248674
+11453BC81C443407AF41AF8A831A85A700CFC65E2181BCBFBC7878DFBD546AC2
+1EF6CC527FEEA044B7C8E686367E920F575AD585387358FFF41BCB212922791C
+7B0BD3BED7C6D8F3D9D52D0F181CD4D164E75851D04F64309D810A0DEA1E257B
+0D7633CEFE93FEF9D2FB7901453A46F8ACA007358D904E0189AE7B7221545085
+EDD3D5A3CEACD6023861F13C8A345A68115425E94B8FDCCEC1255454EC3E7A37
+404F6C00A3BCCF851B929D4FE66B6D8FD1C0C80130541609759F18EF07BCD133
+78CBC4A0D8A796A2574260C6A952CA73D9EB5C28356F5C90D1A59DC788762BFF
+A1B6F0614958D09751C0DB2309406F6B4489125B31C5DD365B2F140CB5E42CEE
+88BE11C7176E6BBC90D24E40956279FBDC9D89A6C4A1F4D27EC57F496602FBC4
+C854143903A53EF1188D117C49F8B6F2498B4698C25F2C5E8D8BD833206F88FC
+BD5B495EB993A26B6055BD0BBA2B3DDFD462C39E022D4A1760C845EA448DED88
+98C44BAAB85CD0423E00154C4741240EB3A2290B67144A4C80C88BE3D59AD760
+E553DAC4E8BA00B06398B1D0DFE96FB89449D4AE18CE8B27AFE75D2B84EFDB44
+143FD887F8FB364D000651912E40B0BAEDDA5AD57A3BC0E411E1AD908C77DCE3
+981985F98E258A9BB3A1B845FC4A21BCC54559E51BC0E6C22F0C38540F8C9490
+88A0E23EA504FA79F8960CC9D58611C519D3ACDC63FB2FBCAE6674357D7F2285
+4BCC9F54D3DA421D744D3A341DA3B494BB526C0734E1A8FC71501745399F7683
+FD17EC3044419A88C3979FD2ABA5B0130907B145A8462AAF0A9B511D2C8A7C7F
+347FF6AC057E6512902BFD2918E2CD31DE615F5D643764E900B60287670AE18F
+FDE15545D8BC69591A8CBBB275AFFC9B14BD68DF0AAB32268FB84844D4DBC7BB
+C591C1AC5102C50A9C7BAAA848DA88B0519F0F5F0813BF055CF0E3C86F633A04
+B779D2E8E656DB1E09A66A85FE21CA8BA5523F472A229E83F2C4E91ABA46C733
+F3C7B5775B06C97782BC225C46385BEBDC61572458EFC5CF4190AB7A9C1C92DA
+29F84BAACF552089195966E3AD9E57CC914D20B6962BE80429A16D4DF1ECAA66
+36C4343FADF0B2B48F12E2EB8443C4AA29D00949255F3968617F98B8ABD4CC12
+048B838EE243A21AC808BD295195E4AE9027005F52258BFCA915C8D9AED9A2C0
+80814F79CF943FBE3594C530A22A92E11BE80FCEC1684C4F56712D5846B0749C
+9B54A979B315222F209DEE72583B03093EC38F7C5B9F9BCB21DBE8EDDAE9BE8B
+75ACE6B12A31083AC8348EC84D1D29D2297A266284B7E9734E207DAF59A25F4E
+4AA38509E993C5394FED76E6A2F25462685C4C86C6E8CFC9863338EC1428BDFC
+74616BB1BC8948B0ED4C87C15B4405F3A7796F9DB3798FFFE8BD0A94E834817B
+D5E9812E308D0CC920470A6F2CD088FCB80462BF7CB3F039A7DF3DAF5B2B5355
+E083A385CD2EAF0FC181E40E96DD7E9AB9EF5C7E6866A13B8A54718E950FE097
+EF0951A357114F18CE9933D28B3A77AA71E3CE884661F13284BCED5D5FD1A86D
+543E588FF473DC2CF9A4DC312500135F29C2D0174B32018C8DBD40EF9A232883
+710A1F2AB2CD11312300ACDF789A9B7B93D2035D81D1C84984D92D78A53A00C6
+EDA94B24BBAC1AD17774A4E07E6F74ABD90415965616AD540C8ECD8C3A44EE4F
+7F4F6BB6238C5062D63FA59B7BF08BE93FAEA70A2AB08FBEAAF7DBF56B95FD93
+03CA406543BA6C9527D0DF01F5108D31A51778A5EB1C93F27B72B46146A353A2
+01CACBC829603B9989A87CF64528682CCBA0562A8165B185C58A5C6BB72F5E89
+500ACCAAB8ECEFBB2640E99EAEEC4EA979AA793D013D61D8ACF8784FF8D9398F
+F6A252A709324FB39509F0B3A4E725E82F53543383C6765BE556CC897C758208
+AA3AD37B0406E4A79F8F0A6C1983FC73E71CD858C0DB66ED66D5D992978614EE
+1EA91EBE191E082EBA1FC040AF19A2202575C2EBEB8058833E3520FA03D2F915
+85C1ED337E457B9FEEB0C6EF2735EFDA6E0D05FA641BCF698AC6B97751E8306C
+4DF00A39B8581FF53DB8F8525FDB196D85950906CCB59B8EF171349AA3B567B1
+6A00819947A995FB383C3C1709C9A2C113B2E40BB832B7D4A0FBA0B16A2C455F
+55809CC425C403E9668DC66BE45B71A81C332FD4DB279D22A2959962304A8F18
+085893DAC61317D24A8F198FDAB95F3B86F0AFD35047B868A9A17037A2829A02
+BAB042F75F349E197A7EED41984C2859754CAFD0251439921C248B463B516951
+2E1322C80D73F9CBCAA63A585450275AC2492E4D3FB78E800F788254DB5E610D
+CF788DF5C70FF99892BCDF16133E34B24B77C8F097F546B87C603DDB8998B66E
+BACB68BA27462AF54AA405682EC96D701F0D474DECD5F95CA2102DF639EB169E
+D518162C2BAE45FF698B6DE15FC6E7DE48C336C40A670FD26952A6BAB09115E1
+991F0073419F2CC2A1C08BE91096936AA0C37E4ED3CCCEE235476074B8FF1125
+6BDE3701F85532D8BB64CCC927CC335281C95EA689706F0AC717DC2CF680C754
+E5EFD7FA4BB8880B2B727A964C876D4A223069D4E6001771F0E23EAD2A4BBC80
+E76675297B2EF05F52BF4E71B3EE2BE3048CF088C79540113C66AE98B2FD3CB1
+B0741A215FD070882C52765009D7D711DAA2508F19AE7DDA15229A856AC49BC3
+4DDF40814FF96500E4B9B02D412E94623C5FDCC76C0FB8E42DF56A904FE49D65
+1DA7C53901B2EA71AB658A464D3ABDE27D9DB8D9E0B48F64E61A2495AD5D8DAB
+B5E72424AD017DF37964AF911BD7FA21A5EB4775DC8E95EF0C0EB856B00D89D7
+8172A1DE8530767D317B8256103E53CFB877E10686A04F5A08F8DC58D843DEBA
+FD5F40597588663D103689F6EB3EB14D06E18C8078F2538B43E712DF491FC5C6
+AF639256C8C6134B64D560D8476DEA6329D995E46CC4BC78841C59E73648B47E
+BFA7DE0846422F738454AE77E822A083405289247BD7C478BE4974F742CD6051
+E99FBB1D1B3FBABFEE855174734EE45E87D0AADF32B1283B911162A9955847FD
+38944D70584FAA6B1A7191C5C134B73F98EB632B69E2F0C0F94156787C34C8A3
+7622A029D58F9626B74F8A8A1F3803E0BC20E0EADEB1E99B70F1BD9F980FB751
+2A842843DE42EB142A84D5D3138629AE9EAF6F3479C423E8829C8816FA6EFA27
+DCE5580E65AA9854B1C64163DC318420CD993C15BFD76A8BA1182860A6B03D6D
+22B8CF43CFE6C8AB27C64842E239CAE707D3086BADDE1D7C94E3BC96319470D6
+8D26915C575CFDD03271D6BB9DE86A0EB6EEA6E768B224A626C62A9AB48A6EDB
+44F70BB5AF991CDF9736D65933E81CC57A78F623F33EC9AF535F2F25FA4EEC90
+D50DB7E87F31E971A75A33A301CA6013EEC5A4E179D695B33DADF2C98364434A
+42926776000B610E17524162253F6FA638D6581C18F99EA0BD1D2E24D2424ADF
+C05010D08192485153DD03930C7BF45237593E484F9851E6D464FA10FECA5D9E
+0C8CCC97DE029030900CDBB491C5CF226DBF903CFE7735D939C3FDF3A20B70CE
+66579B28B99313FEE914E295388C7BC8E055A2E54EA3A8206D3C8F4F7C0BA5E6
+E519419FD8CE215F7B8E9BEC604A9E3FE272A0328A24E31997C8A91E0946BCF1
+6943A97CBED2AB9FC636B49828BBB8B89E0BBC2653796431224895ABA5DAC41E
+1854BD9764E86147FD7624F736F40DE3B7582EDDFD15C2BDE3F22B5A54D7DF10
+B87A1301CE85CFC061689A890A321412A13314AE96DCD3EDA75035FDD8F4AB9B
+897A2C68263A68457032C469987970648BA2D88B1C5375DFEAA35A917B8A952E
+EE670427942AEDB3CB599C5746180E392837D371E15D860620ABDB6AA7772C40
+A5E346661673ACA530BE3D8E3FFB895E5DA3DC23B1B43C080C77F7E47847F0F3
+F3AA5CA9E4BF75FC5EBD18D19F21A7DAA3B11CABC6E4070A15F7DBC8B05EB6AA
+A02EF1B078EB66D61D6AFE41DA9B36FE7EC9EF94D1EA26282A9871E2CACB3126
+2AD49C2D9B50A6E47D8F2CCAD50992D1B430979A45FD9E76182A19964BB2A1F6
+51779A2B258DC1DF4C2F3074621286831F3848AC152DDD2BA561E6586ADA88D3
+598A2CE2CD048F027CE0008B828BD915887D7785341E8305DF2346ADB76BE99F
+87B02173BDC334E9221C8DF54114A6B24C1C5340299512FA6C8C51AB4C8778CE
+178CEF531C6D1B5FF0A1BE8EFF767F959BD4C345C52699A29A17B2A230842BF6
+4B011217D6D24EDAC3F6D53482786F1CA33169B90ECD499407D37CE9B70DDF78
+7B7547B32952535BA9ACD1E244447AE3FCED3AF28717083CF9590A09780984D6
+AF0743C82AE4FB3E2BB2856A4153A3967A023FFC35382D6C22D84A924900B6A6
+3DDD400E6D2418DA6C27F2FA34C075C902B89EBAE658B3C9A18EEE449DA5A379
+337DE95CB7AB3F0970CF1A5D8FAD8090E495570FDFB2FBBA79244780D8035547
+C5A55BB21A2270F724BF5D442CDC5BB9F09BE0CAE59B1C2270F0BDACE698F2C5
+DE8F66BFB9634904B161F5BA2B1950048300D69BABD312D58D89C4ED527AF7BA
+7DA2478EDC2CDEE3473DD8A8ED9D891CD1FC21F23013228BB3281B71FCE959BD
+6F8E9059D682A7FCC5265A0620992D4FA8D78377EB34CE3ECA070EE3707239BC
+98907DB0120CE42ABA32CF97127E28382BDDFD685674279F588D4F951216C355
+821361790F64C2CC720DE97E8ECB57326C43EE47367628E05769E106868B54F4
+C33C9951908DF6FC4F5ED2C7787BD8FA591BBB3E9C6C1DA94CC5E38D9B20C886
+7D237572FF46DD896A4D6163408EA6CEFAC398EE041EAE29D577E75326CA17A6
+B072D47A7B13EC441CE6DAA042ECD02134CBFA6809A435050413817193DAEB16
+A5882C8AEA44BCF36E74E9ECCDFE7E19FF5A5DD7A94E5AB4F8702C3DA7F42325
+23C808670A0490F5B373DADE40814FF9650241D3D69C91FBC5ECE728F827D9BF
+C928602E05477903449E079164CA39859C4BCA60C579F490AA455F82B5050BB3
+969AFB478E0D4A257B3356EA3CD62051FCE6C6B1929CFF85BFDF166BEF658E10
+3A55E007F38EBBB248B3F0B8ED1925106B499B762E45113AE1AC9DE09644C84B
+9C08034B297314EE69BC32DB6E7D7FB9913CE5AC17E7335979E9DCCE2BAB3725
+1976155551F9706A576FE0E3ADCCF72C87683291528ECB749CB0ED291966E239
+B5E3630676BD409E08F85BC1AEC9A2D4135376284A96EA24431243BD6FE8B966
+95F11A4BB53F392E0AEFEA623064FF8A7002367B0A515635CB2D2DDFB9B4A8D7
+FE721754E81BBA548848A235B91AD4E4F7DB19CCE2F61D277FC00AB956EB93BE
+44AB4970CA56BF59506C94ED160FB1E25D3DF2988A532BDB787BFB8539D22986
+FDC378AC31444E63C4727FEE121A43751043849E6DCAC5B59D0FC703AAFBBFD4
+E8B7C268F21615AD02CE9DABEFA27B5FE6A6441B619539CAB1F810F1263447AA
+633F5DAF483752EF1A0421740E3A811D2D2898CBF53E7F686C9223FD7235F02D
+6F90D2D48CC20AB87778DE3C6FB335E0F0EC20B5DC5B65223FE117526DE2C72F
+FE839DF93CB2A7D66CD900CB325F891E311BEC932F703FB4FEFA29DB8B9C88DD
+375EC71B3D58C7BC59ADA91971A3BDA1ADEA629CE6CC92BD542CDDFAA7706FB2
+6CDDE2DF07E56D6741916AE8E8744339816F3E6C38062747AA9FDA2A2678A6B7
+EFEA870AA3A4D71B25EE3013EAB1DBA34401B867C7A41AE51E0421D41D3BB83C
+E120C8FEABA6E5DEC53A689C21426D4BBCB68CB37568761C360E6D4E3596FB7D
+F4DEC7918E58C0293D12D6DDA7E9DCDAAD7C939F55CD1BC4A228B31E9A904156
+DA6B40B08E6ACE674618B768DD681C772A3E55FE096CF949CF3B0460ABDCD891
+D17B37B355B29AB5137899C036F31DA026244FA25FB798FBE5105BDA29F46538
+D3D3AC1001A7BCECE64DE94FFE6C354166A0F97256137BDFA07F6E22A3D1D2F4
+9588DBAE95E895BC5E64DDCBBAA8D0A22C229B42CB717FC711E7E9DF793DF80B
+9F14754585A3C7E17F37B32924B9F9870DA8635E3E18BD1DCD81EDF01834D9C6
+B33F23C956C2FCBFA47D84422F583459D827D1E120B97694D12F1F54D02379C0
+D288F7104F3FFCF4F76E3494F4ACBD1BE3A15543CC680924C78A473F8E311ADF
+8FE00A04C6C393DE61AD3EDA5BC031E2353076A2489391B52632387CA28A7B93
+FBB065A6EF3658AE80B1ADA47E9B2539E73A71FA75645F85ED8ECC257FB4CF26
+B6C912DE9D0F9899E70BECCB934AD32CF49A093371A9F73DE6255EBC39DE1E7F
+00D0CBDABD4D0383977E694890E71FBE5C376BE5F3A80C28987417504F515C50
+909F3D31178BB9B1D085BE514F71B910A9085BD6122DDC72A150BFE266920E49
+5661BCB4BAB51D6DEFE32B616963DBD989FCDD1637B294CE4E288655FBEFA1BF
+7F25BBF8CF17C2D5FD161A7C2CC9CC7490D9BF15A1D35B3BFA43ADE256E88BDA
+BD490D92907C57BAC408A575EC84D6AEE070148C7C9A91C03B09FDBD792E8FF0
+C0B886AAD2EDD86541E5E579359D40E3AC312ACD3D8FD49F71BD533DDF8859B1
+BAF17F1884E331DD07CEEF93B71D492AEBAADF7A263450A7A72210CE630A0D37
+BF024BDC09ACC882816B8C22C62AE38A3A8D0F6EBC2B1B2C0B8161A8B076DD5D
+4B779C0788546BB4CF57332230D237856B00D79C28A7C01D11F44B7304F69075
+94B97A745DA43D1BE561372CE611C345A843834E46AD9DDB16CABCD3FA33D6F1
+F6B5C0497F5EE5400B305CDC16A7EC286AA4D45D0EEBB9DA06AC9C5294D68EC9
+E4DC3CA2B92CE8FC0526184A86EDC7AB34D67E60AC12D9CA8FD300235EC968BA
+92C6FBDA47572BC5600F25249F60AD287CBDAE980E747FCBE7EE5CD323E733F0
+63553B494D3DDEB9CC1480B5C3BB79A28E419AA65B18CB297AB383419E890E2A
+CE6F98C9900CCB4675280A10CF060B8D220DDA1BE55DFA65715EABCC1AFAA271
+B1F8732341613E17B231231A0D24D4D7FC198AE04D89A99C4536217769C6FBD9
+5EE24A6302F97438F7C0E311C878F674B4477A5ADA3952CDE4055AC408B8174E
+86F8FB797646DFFFE0ECA25D1BAB9A9F71F3926D3D85AA63E7A8C931D71E79E0
+AF1EAC26FADE468F4FF7F3861D14C10E3BE1F9EAFD6D3A544E8108D5DAB5B180
+3950C74818BC8AF4758A108F462EF1826647A49667F5E482038C54716856D9BC
+35F29922846D2148F92F943E951D7438C73D6A60459A8003174036C64E1629CD
+155D47FD04B03C023AD67CD5A70C98AB556EEAB8C48169706E5B352F6505D580
+AC945171BFE62E81F8F500438AC3B64D857BA5BC54C2C4BBB237F8FA51296255
+E66A92A61FE13FDE781D393557EB72CEBAD86511035F775FAC39A0479CCD400F
+226709118F887F47CC2ECC8F79816D4A945B2845F50AFD62D8C9A9BBF4739496
+9E644BC9F7B04803B7EE75A09EAE94365F6F374B4FCEB0B506C76297564B9B6B
+8B812BC3A33929AA94692572B010E6210AEAA312BDFC88BF302244AB9D587A9B
+919823FD01DE12438D960944D1977800FEB49E638C32E5B188B1CA033E0C37EE
+A142F746367888AA119535F0CCAF7EAA461B790EB089D2D6962E28A398439BB7
+9C9943654D7A2D765B46BC0DD1F915327F369162E1BA1BA83110B93F442905E0
+523BFF5E279508A98568CD5CFD18FABBE9D17265A9081E7BF64155A2CE3C0DF7
+88D00671AD65654709589BAD7EA65BBA811387ABA5CA0BC3F66D3D48597A0D1D
+2C268375DF47CCF62166262AE4840AB03BF49BE67A05EF66328EC729F03CA5FF
+AD3937FC053E223303565DC771ACF32E63DFB96D5030E787961D72D02C195C66
+B48E9AF0309DC169CFE8D16E2818DA94693A18F027DEA0D916672480464F7E22
+CA6E431FE38D3FC019BDD229E064B72C545C61C6EA55984565CCA88ACB01F744
+3B4593CC8944C70F30925FB48A16342CC26D444F54CA15E5A624C4A2DAA2AEF8
+404145BBA339F2A2D6FC2F3ECE54387761CA1213C8D56FF96E37C6147CA44B84
+262EA87E7CC10D931E6B5B80D7F09813498497AA84ACB4AC69BC6C8481ED2953
+084F560D7B1CF90555E69BD2AF7C5D944E8E3506165014652462BE1BC81CA341
+E1B0725159D36DA0FFF3577D1DEBC5D91AE683FB0384
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -3026,63 +5179,233 @@ AF117C1ACED44AAC6EB4B9A2511A6762DDE8FCCBA5
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
+{restore}if
%%EndFont
%%BeginFont: CMMI12
-%!PS-AdobeFont-1.1: CMMI12 1.100
-%%CreationDate: 1996 Jul 27 08:57:55
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+%!PS-AdobeFont-1.0: CMMI12 003.002
+%%Title: CMMI12
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMMI12.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMMI12 known{/CMMI12 findfont dup/UniqueID known{dup
+/UniqueID get 5087386 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.100) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMMI12 def
+/FontBBox {-31 -250 1026 750 }readonly def
+/UniqueID 5087386 def
+/PaintType 0 def
+/FontInfo 10 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMMI12.) readonly def
/FullName (CMMI12) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle -14.04 def
/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+/ascent 750 def
end readonly def
-/FontName /CMMI12 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 58 /period put
readonly def
-/FontBBox{-30 -250 1026 750}readonly def
currentdict end
currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
-3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
-532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
-B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
-986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
-D919C2DDD26BDC0D99398B9F4D03D6A8F05B47AF95EF28A9C561DBDC98C47CF5
-5250011D19E9366EB6FD153D3A100CAA6212E3D5D93990737F8D326D347B7EDC
-4391C9DF440285B8FC159D0E98D4258FC57892DCC57F7903449E07914FBE9E67
-3C15C2153C061EB541F66C11E7EE77D5D77C0B11E1AC55101DA976CCACAB6993
-EED1406FBB7FF30EAC9E90B90B2AF4EC7C273CA32F11A5C1426FF641B4A2FB2F
-4E68635C93DB835737567FAF8471CBC05078DCD4E40E25A2F4E5AF46C234CF59
-2A1CE8F39E1BA1B2A594355637E474167EAD4D97D51AF0A899B44387E1FD933A
-323AFDA6BA740534A510B4705C0A15647AFBF3E53A82BF320DD96753639BE49C
-2F79A1988863EF977B800C9DB5B42039C23EB86953713F730E03EA22FF7BB2C1
-D97D33FD77B1BDCC2A60B12CF7805CFC90C5B914C0F30A673DF9587F93E47CEA
-5932DD1930560C4F0D97547BCD805D6D854455B13A4D7382A22F562D7C55041F
-0FD294BDAA1834820F894265A667E5C97D95FF152531EF97258F56374502865D
-A1E7C0C5FB7C6FB7D3C43FEB3431095A59FBF6F61CEC6D6DEE09F4EB0FD70D77
-2A8B0A4984C6120293F6B947944BE23259F6EB64303D627353163B6505FC8A60
-00681F7A3968B6CBB49E0420A691258F5E7B07B417157803FCBE9B9FB1F80FD8
-CA0DA1186446DD565542BCCC7D339A1EB34C7F49246E8D72E987EB477C6DB757
-99AF86CEBCD7605C487A00CD2CD093098182DC57B20D78ECE0BECF3A0BF88EBA
-C866DB19F34BBBED6634AFC0F08D2AFB2A92578A6F8B4ADCD6594737FF6EED7D
-5B536DA9E3E2CADB40DB7C600EA4D100D33C3B92B1CF857E012C4EB370BA8295
-55B50047CC8911C98FE1A7BA6CDEA82D34476286E710776823690AD333DD3A49
-335002F4680DBE1C21174BF016B0DF799B01EB9D6988479A8334BBA2F8DC7146
-BC0DAE9DE3A6453B181808E68A89E0C02DAC6264D002B422EBC1CF14F65D9888
-15EE6D514D3457F7F3C6A3D17EE1DA076F73ECC392D349174DA9E4680F29CE10
-0157E42CA35F5DBFF56BFC3AA07E61A78DBE882C5AB388220C19750D3643E7C8
-23D6673027CE568A4ACCE1D12B1D9E5A43507F4AF9BC873237F65A6B95078DD2
-378007CF0F0DE7CCEF760E19D6D1D7B412EC5D4972
+D9D66F633B846AB284BCF8B0411B772DE5CE3C05EF98F858322DCEA45E0874C5
+45D25FE192539D9CDA4BAA46D9C431465E6ABF4E4271F89EDED7F37BE4B31FB4
+7934F62D1F46E8671F6290D6FFF601D4937BF71C22D60FB800A15796421E3AA7
+72C500501D8B10C0093F6467C553250F7C27B2C3D893772614A846374A85BC4E
+BEC0B0A89C4C161C3956ECE25274B962C854E535F418279FE26D8F83E38C5C89
+974E9A224B3CBEF90A9277AF10E0C7CAC8DC11C41DC18B814A7682E5F0248674
+11453BC81C443407AF41AF8A831A85A700CFC65E2181BCBFBFE3573BF464E2BE
+882A715BE109B49A15C32F62CF5C10257E5EA12C24F72137EB63297C28625AC3
+2274038691582D6D75FE8F895A0813982793297E49CC9B54053BA2ABD429156A
+7FFCD7B19DAA44E2107720921B74185AE507AC33141819511A6AC20BC20FB541
+0B5AAEC5743673E9E39C1976D5E6EB4E4D8E2B31BEA302E5AF1B2FBCEC6D9E69
+987970648B9276232093695D55A806D87648B1749CB537E78BB08AA83A5001F7
+609CD1D17FFA1043EB3807AF0B596AF38C91A9675E2A53196FEF45849C95F7DC
+182A5EC0EC4435A8A4B6E1CDBF9A5AF457564EA72BF85228EB6FD244F2511F5A
+CA9B71A65D53CC06EF5F7EC3A85106139A4D312378BC22183C09A229577B793A
+1B7422611C03E84BF809F46C62CE52D3AE29CE01C32B202ACDAA5B72733EB0AE
+C31D7EF7BA88D2D14F85313F7A8B9B7A5B124B03AB923744D336C969E5CE304D
+3AD977A46664479EDEFB69F113024E761C05FA48A54072DF9E12C2F352ACB3E6
+D04F6EEFFDE209E7FA3DA22E5B1D1409461F4286B7F4F8251B44E5CB7805762E
+E129FF4A06A7458F3191926B1CAF70E32C6571AD2DC07C34FF62840896F4D200
+761B1A7FA356526D1E3AB4C542AF13623BAEB9F61B1BEEF79A9205B1FEFDAE24
+8799D516A9ACC30BC0139C63C9A0523E9D5439213B67D490C96F902958779B8F
+68BD8E9FDDCE8A3A2E35877DB6C94B7612382ED8F218EB1157D2ADD090A2448D
+10B99FBC9211C5629ED1C61C74FE93041E5AA03EA4AC3FFDA00C2B6E719CFAA4
+262FE17F66804A6B54D3669836EE4367D2A2991580C5564463C973CA0DA38AC6
+922716E13B4A807B50304B8826CEFEAA47C305FC07EB2AF25FA7945797237B16
+56CDE17AB0834F5C97E0CC5741B061C6FF3A8DD1A79B9A173B66A6A750538E26
+32FBC92E75BA15CFFE22A7302F47908547007402569158F62C29BA2956534FEA
+7DACF1E507AC309DAE8C325F2A6023D2FBD81EF42146BFCE6A16A6310A650460
+7B07BB7647C8760FADDF0DBBCD3DA6CC4645D1732DB3A22D8B76E1D2D48E4D4A
+46F4BEB80CE65F3517283A1AE08391FD1C10ED452133706BC6725AABC80107FD
+754A8BA47B0281D479F052CE26A723EFFACB79B213041A536542AB334769A2BF
+88505D82C498ABDD5A73EB539530F47CAC52825D16A969C8BB56D4A7F2830B8F
+CB63B92B576E7BD922A4B25E634751F8A3B7C4EBAFCB373EDC8B8281B1D1371A
+7844E9AD990CFF09F0D7ED73A5CF873D2D5C9E8A9923CFA31E1A4B4CCCC40760
+8B3AC8FC3C88BC08BD7407725281BB879A1A822D94997826418F1B89D303F2C0
+BE7A0102E6F529630CBF1BC5BF3E4578C164A3DDE45E62A957EF3FB7F0FBBA6B
+CA1E79A1ED195B6A11CFB345B663C5E72FA55D80476F604F6C4257B51686AE25
+8F7D159FE605DDA0AC74BAA5034F29FFFD403070013C6E2D8EF6A0990D91173B
+D5A3AEB98B64E412991505C3CB7C2CDE13C091FEB3DFBCAF30C4C19511102300
+135BD5D444BB55692013F52056908DFAB2ABFACE81A58423ACEC59344CEF7D4A
+C5A3EFFFFF70759BC3E593D878281225060B97D1BEE6B26EED90571FEAFA1812
+1115C0EEC892F5DE6FDD68321A0B3F10A2D771B79BD85476AF6018472A499A86
+07D64CFF4550866AFE590C471C80EB12CB3A989A60BC7BED39097C12D9286E39
+14C7952C4C64820B4DE44A1827B7B0B535244E93FDB80036D6332F90F95B472D
+7031E7E3819E881BD0313CFA112EB3AAE943C99C47635CCA7E34DC0306C04E5D
+2E9F60FF037EB11602BE74E8E6B711392E866E3E55D988F7C856417A2B9C186D
+639819B4786D039B77F8578EF63C088FF28BD08D8353031445C8498A8F445BC3
+D08923D32AC04BF3CAFEFCCC1E77EA894F4E846F47EF62D6841B8D8576FEAE8F
+90044626869D04D61D64D56E8C51AF8C18D6CC3FEF3B6C4F7D56FE3260354948
+10104F69B117FB8269292579A7D52FED688C663B643D8D99F13956612271073E
+1A337AED059B7A93819A28CDF01569CBEB51069D22ADAE25C47355560F402B2E
+8C9900DA82B79C64497C8494F42FABE5AC41791C2010D98FB7E593C744F250DC
+D837DB0EAA4F75D0016970F3AE8359878A08CF9A697A06C5EA945819151265B9
+1A12122B98F79185DF852257BB4798E7DC03712EA6ED34F6E6AE1476788DBC33
+9229FADB8D581BE1A63F596698DBD6DB98A092F67197A4FD4A50B648F2691875
+EE2495D6BB310078F516785A0CEC7EB6E8305FDBAEB1D15690409FE32DD9CFAE
+DBD3866FB63EBCAAB73E3E4BE5D7F3AA44793938AAF3F8341683F0790F1D46A3
+60CE083F9BEDDA22E0639A92393960F86602216FA51E2754BC2F4CD0BDECE3D8
+FFAB7E0E49613DD4956C9A10AEA798BDA1F756C755BEC12147ADECAB0FB73B7D
+203A11D84DD2AB5AA98FD38C1C2573570FD49A4924A94A106D2A7D850E793608
+FB135853E8C4204441CDBE697FD0CB330B1C3596F32D2BCBF263237EAB362D09
+DA6F531B40384DC91F30674760CA7B64BA1968F6A7FC9EBEF431A1AFC5E76D7F
+2D44DCB7F61C7F6B16196B3E8B47343F572DBA8B8B21B43E35BB6B2DD5C7982D
+244FD4304D254D6CCB5E8CF70E77F50812F41A988EEB3B26BF0F6F69BBA18077
+31134B5A5823D10FEF6201D045AEE7A24E0F25376E9FC66340C56C05F6CD810B
+724D85CC4BB8D789834A447CBBA159565D08BA5793D8599035BB5063271518E8
+F6C50E7DCE71B1D186270DDC860C6DC0CD506010EB5B1FDF6BE47A9A18CC15D7
+D657E58BED9EECAD5CE5D49F63139A39BC52C6584BB2C3264D51BD584B40F8EA
+AFCD8B83F548594386EB2B05CE803105E84931DC6E7A1398073D48E130E0D907
+CD0F1ECC3254EDF5D4DDBF44415DC9BA66C673820CDB0FDF033D59BE2B5EFCEF
+01FF9D33EDC88F8D522E07F1689D024DBCD09A16A63519E1764C8630FF36058D
+CFC07027E0ECDA01E0E85B166C613B22F587B4D355EB018BA93E92A36007B4DA
+287FF5A91F7D8A0EDF5554ACCF45AC8066E88865C5692E63EB99CAC81367B605
+8E6C19EB98EBFE0D2D161B447B9A70CDD1122C7B78A413369016E6D8481E2AE9
+9AA97B5DD0ACC9B0820F7742CEB2F46F89F3E2092621969A88DC0156B4F941A1
+6BF1546D4B136657C47B082A8A35FE96016BAF3D9679B8C32EDDD6AE6DF3BFB5
+7854074FA019707FC22BFA82299E72ADF9A980AE29A8E2434277E58B01F6B03C
+192E1E25DADD49F6E3F69799AE62B56E00B60A031BF8721DB8B2CB6D4A4C15CA
+AB1FDE010AB7DC0DDED977389B101B8E53A949222FAA126656E02817DD32B0D4
+A49516CEC2B97EA7C78FD66229B044EB92F502384BCC6CCDFFF995EABE3BB7A9
+50D5D1AED861E7D3BA8D333026C673C5762712E763E59261426044583D789C67
+A606B96F97663F92BF104CE02FBFDFC521EC0D6670B7D4F85A229F51426DE912
+3B729C4A535FB7C88D0A5E78074751B58885DD6BDD2DD9E9C83F105E8CF63DDF
+CA7DB39D0319CA7CC2E73F42747F007574DE25AE1538B4D493D22D0D5F0F80C6
+5F6FA3937C8391DE2F0116F81DB2DB0EF751EC838A7F85F163A6F48804E84B96
+8D715EF25B7E2A5CAECC558D80F421052A1D698F3B8452AC27E30A4E6226E3CE
+084C8A83ADA0818A110923CF7AC7AD4CB92AE4ABBE0A9EC1FF935FD02774C1F7
+92A278E513012AD17722A23C55EF82E18F8847B5CCE47F4FE3EC508BA563F7B2
+AE56C94285A18DED4D432FB0CEFC05A20BC17DDF9FF919C724810A8ED7358A27
+97EC93C1A13C443A91947FE1F6F528EA7B628917FA7E554A1D7B31ED46C5ABCF
+92BA57961C8876DB4041305EBB029B03D8351D5E2819FF87E97ED214D8F1CEF5
+7F7668DDE223721C0B810F4A4AC81CA4EAC86EAE546E1B15D91E626FB9A31824
+5BFF17C4E79FD56ADBF6DBF01BAF6453A81EBDCB38A5FC0FD0FF0646B3B0D199
+13E2E59A1B5CAB6DE5329BE389BA0E2A2AB55CA40B711ED746C24F1E48892E76
+6DACF7DA163CDC90CF076763008E7A899870CDED5A80758E6177BE6B93B07EB1
+5800A3BF7B9AAC3FA825CE594EF5B7546B181375FA8F37608DF17856D2F8EBD5
+6030A9E6F6BEAF224AD2AEF76D03B023E2FCB922CB8E3C6816AABB61FE6E4F83
+F21B4935102C860ECA03DBEFCA461F0E5B93E5A8D18440BCF7D1D6252A24CB6E
+A64FDAC8B67C4888519AA368D9C4A8C08C7155DF5BACD75C5196C571C3C456C4
+7CE8D90215FA6EE8CDD72C48740F7F5930EC3632DB63A9C8D2DA125088C0F05A
+9FC83D16B7F53163F4EB6FF372C6C3115F1E68EB35967D11126EDEDF0BF80817
+E68A698183B3EB0A207DB43786E1B9D289359D75AD5E465328CAA90E712C2962
+AE2A466173F2FF30EB535A6054BB0B875DC8552C16B49DF17CF84D98D35497BD
+F55E273FCBB0C735899529A69990E09149FBD2DDE64B7FA8D50AE83925DF03C8
+0B63EA158FBABB12A028803DA4B9DD6C48C0FEC469C4E730729F4BB420D5B003
+1918B4AE9CF35CFD31E8E62A44C0484E3D00143BF1D330235E821E5CFEAB4D31
+7CB4604DB1F310457FCF9075A3527279644D908DE847CCD00B6F50DBDEF91D3E
+38238CAF550FDCABA2C3A46237218DCC5A09AFAF69997E1EBDA7EFE6FC99ECC8
+5D4AFD5EE35FE2346BE79B499EC8EC436868154A947D13BC02C780EBA4B9E64F
+3026F1BF5DC1F8D64FEA1281EA40B4BC355638A3A59BD9055BCBB232FA45EA0B
+B405131B64F105814019BC55466EE78E9E9ABB62DB30EA452F7EFD7196C76A85
+15B2CFCD89922CADC0F392B0C54A231F3999AEFB53C24EB0C63B0C8A1A1ABB6B
+AAB2F93E5ECC7AB90EADA320E918106BAAFC1F8C425C617639984629018BA674
+6FF4F338AC43E23BC3740542911C058D43A49A11CB3A0CC8E3088BB5BA6048D6
+CC2AD250DE956BFBE83BB24C945C20D9C22E7105983F284EF478F9B68BFB0322
+EEB7D62802CBAAEFF1C2332159DCC7243EA40CE15C734EA905E04C476B178B82
+A08ABCB0B86A7330C75E62EE7844C9E22DDB013ADDF20AFE08122EE1B930A81D
+806A0F8CC584CB7FF5F56F9B35E5FF78FD93E7E4A40C64537464EAA275FE88F4
+461FC6A467C8A69B9A9FBC10D44AC1B753D313A8E7D97F5FAEB60F82855658D1
+4DCEE043C8FCDFD8A29DD091F3BA55874A458B2B8989F35055C72FC411382361
+9AADC717E602B48D7C9521D3971A6F7EB19D539445DDE9EFBC5B58FA9E5E426C
+172C45CDA24985FC4632287FC3B15849DEB56F5A061993AB10A6BC59868534E6
+69888175053108B77E4978D971B4EC57224C0F93EEA4C15AE92254140A94704E
+ED5666FC06C5341F643F779CC88A9E81891565C63B6F7F6286E664F4E0A48690
+356DC96F1B98026C563700772485B83BFA06435D4E0793EF822F423C93FBACA0
+E5D889D2B76771C6F0EE997A5DB43C2F6921132890406E3C33F6F159B14C5D78
+7C151BDFFDD02B697315F191B5490073EB418A4FF2A398C68D44F0CD1B87CF9C
+B52F12728B72F94D752D23151196A256908135C87991E508B8906CE2539DCA8A
+31F86809C8C6C18A09F6129BD7CDC6B37E76B648788056851F22BD3E3B5772FF
+EC01D822B57FFDB3BAE624F05531292641FD6A7E3666152D18F6C653048DD7D7
+98A942C840C4A0FA662F260B21C64214152BB86F03662A330109C5AC0A5EBA30
+C6201F558858130703DF76AF4FBBEE069BDE45C0D9467077D85FFED4F9BA9C61
+AED87D67CDCA453A6528AC5BA153E1039D9CCC556CEA5CBB542265FF54A1B208
+E0E13740E7E7C26AA00AEE909F8F3ADC2726081A744D8EF6BB711BF5F611A900
+76F91C26A338DA13A7160A9F42410CCEB3190000D963D036FDA05A29F598EF40
+8FAE6F8E7E6F50C99C3304A573501C13A00023085F057DF331E3354CBE65D573
+CAE73BF15B3B96B502E0AAF2B4A86237E98A997AAEFFF4227D5A26E8972C48E7
+761F430733E6EF8AB2D903C17FAFBFA21C25F8A0AC157D397BF3CC1AE7598F0A
+2BE4FB46B29443CE57F41FD5F91122E9D86F903E94D5B55E2BB95949C156D138
+89883BEFD634311F9280C7F028DCA6408D3A682DF5B55B9F7ABF08F019190F60
+D39E4F0E80F0594235B09A5320109638B938633A2C196E4ED2B43DCD8643C3CF
+C6123B076B7F73352F906D96FDE0FBF50CCCA432712C574D5857838BAC30B485
+D25024EB254A7EFE57D1DF0892C275CDB3DF77602F0FED0FAEBC644BCACA04B8
+B424DB125E487794CAB36E01B5E1A26F5E1E97A739AA36D77A12F5B45338EB39
+AF36CEBDED55DCBFCF497FD475FC6BAB5530AD6153C6BD982564EE8712185F1F
+D5EA7ADF4104661168A01994C1FD773A50C8AD6A3E4D332E4D59521BB8BBC6C3
+866EB4AC3EA4532477E6CBF6BBF0860031C3B916AA25E3492670EA67F55CF4FD
+207C684A0DDB6F4AD21B2909CBA71BCE2E762012B0927BA72367A6AE0AF87F73
+756C9BC85E4EDE35317E2CCCD138C02C7A8013AFDC1A48C3A4BB8EF257BDEEA7
+60E012F54D12D31D18DC59D5E526F12567B8688B4B67E16B56713870300016BD
+A3B9DA87FDC865246AF8E94316799110D86B1DDADB8A673402D4226C519C058A
+1D1E5A5778584FC28AF12819B1924060BC4F54B1054EA6AB0149E04B8C4302D4
+A56D8A347EB5D3D2A0E12CF7E35059BDB53D9FF6BD25F6D9619BC4669CFC1048
+C6C9978B8751B840F27D82A69075832BE59F55C1737CBB1220FB8FF691FDBDF3
+03BD7D225A9372AC221C38245E48320E1CCF898D9EEDD678E5B8C65B7F588321
+1A3953EEB9B39EA9A8CB72DB08C3E9234DFFF5FDF9DF804C021D57E97DA7622B
+97F4CB6E0EB640E0DC9EA15C5193F92A3A7565F4C7A4C9CC327F7CD2C44900AE
+D9E76FFE62FC37FA376E77131B566AE67C3E09DA80F198BBB995EE8FA47EEDB8
+4B467C6C7DB8AEA745CF8C56B8BE56534E9C56FCB2B7006426DFE93D728FA4CF
+94F131C549814E54ECE7C914C5FE8E4961D3437CE7475D03534B62650F551D97
+201C794AA877445DBEB11C85ADF6119B05360700F8CEDE4766E3A1D7A35CDDC7
+9ABF7C619E3868A39D1852DBE1EEAF5D7898C78323873AC005542B68C43C5000
+CC58F675EB595F87C879694751494676465891E8A897158B481F11A171CCBBD7
+29603F00210CFD7FF31FE3D273933ECC34AFBCC4108D9B76D9ECE63EA06CF939
+4799092A54A749DACB82C1424E9879672C8BC084C360014C9C1B6D5D65C68AED
+66CE329C3AD712C0A36BE7EF03FDF339CAA2E0336D387A693B1DFAB5D5164E31
+14755A158168962C9B399F8F1DF3FF5060D7464D5071058C30C572A2BC7DEE53
+84BD7614A4BEC4C84E18CF7EC81C811724463BD46CECA5FB57B0F55EAE20CC74
+6AD815D1897B037C197D2456797B992C20C70B663BF99FE28C513B4E221C8E12
+49779F8C0AE8517048ADDF7CDF0D698E3EFE60071C4997B7F5EF12B6CB65390C
+224F13FBB99FFC034C0710F05019899689B6D3350BBA65C7CE7C2AB03D81B9A5
+5F3D65E4D462DAB189006669F7390A78A1B8908A4C913B15DB8827DFF15BB9A4
+A6037DDB643103B937257A7DAB025F09D53FBBC2BCB6B0BCD8D56B2B2784E498
+1F6CF8470DCC892AD0CFE11578718948BABF9C1427084643B66BB9181094E29D
+5FBE37708E1D8A6B7518A96876844CB66954227A7A6AF28DD075A462526DD5D6
+40EECC56FA366106E55C7068997B54B7F0D03AC1AD45D28C67C7ECA99DBEDB1C
+E18A79C353113E2E05B837E703278B202112B1C69E42A69D64B62F0E7D8F7E5B
+C1F93F0F99EC20EF312046F4B0CD7DAB31E422070B629A7FA96583CF3F1519CD
+CF08806F40ACD7BB5C960F21E9DA7FB3C72CBA0801ADE83DF738A4EC94F2977D
+2B95A166BA4AE28CAD1E37FBBF49D342CDB4DF615E2C5F3076313AC517C350DE
+710F5D52DE31DF69864D29DABF14234DF13904BA4333B0D714EEA55CDD79DE45
+FF5D64259C877191547076B1C7684CD252C0337BD9DF66CDC5DBAA4F3102F2E8
+FE48385C55727B80D11F3BE0B7568AA9356FB2B180A6B1392D620DED02F0B736
+5F4399FB9D32DFBC8ED942AD311C82250DA8BFE98D65
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -3092,53 +5415,235 @@ BC0DAE9DE3A6453B181808E68A89E0C02DAC6264D002B422EBC1CF14F65D9888
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
+{restore}if
%%EndFont
%%BeginFont: CMSY10
-%!PS-AdobeFont-1.1: CMSY10 1.0
-%%CreationDate: 1991 Aug 15 07:20:57
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+%!PS-AdobeFont-1.0: CMSY10 003.002
+%%Title: CMSY10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMSY10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMSY10 known{/CMSY10 findfont dup/UniqueID known{dup
+/UniqueID get 5096651 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMSY10 def
+/FontBBox {-29 -960 1116 775 }readonly def
+/UniqueID 5096651 def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMSY10.) readonly def
/FullName (CMSY10) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
-/ItalicAngle -14.035 def
+/ItalicAngle -14.04 def
/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
end readonly def
-/FontName /CMSY10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 13 /circlecopyrt put
readonly def
-/FontBBox{-29 -960 1116 775}readonly def
currentdict end
currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052F09F9C8ADE9D907C058B87E9B6964
-7D53359E51216774A4EAA1E2B58EC3176BD1184A633B951372B4198D4E8C5EF4
-A213ACB58AA0A658908035BF2ED8531779838A960DFE2B27EA49C37156989C85
-E21B3ABF72E39A89232CD9F4237FC80C9E64E8425AA3BEF7DED60B122A52922A
-221A37D9A807DD01161779DDE7D31FF2B87F97C73D63EECDDA4C49501773468A
-27D1663E0B62F461F6E40A5D6676D1D12B51E641C1D4E8E2771864FC104F8CBF
-5B78EC1D88228725F1C453A678F58A7E1B7BD7CA700717D288EB8DA1F57C4F09
-0ABF1D42C5DDD0C384C7E22F8F8047BE1D4C1CC8E33368FB1AC82B4E96146730
-DE3302B2E6B819CB6AE455B1AF3187FFE8071AA57EF8A6616B9CB7941D44EC7A
-71A7BB3DF755178D7D2E4BB69859EFA4BBC30BD6BB1531133FD4D9438FF99F09
-4ECC068A324D75B5F696B8688EEB2F17E5ED34CCD6D047A4E3806D000C199D7C
-515DB70A8D4F6146FE068DC1E5DE8BC5703711DA090312BA3FC00A08C453C609
-C627A8BFEF75B4DEFAF34B44B356A516B765AFCDD3F5475B1F928731D09D2170
-B97E40F12CCEDF4F6BB3756C4734F6E98D74B7E942A954B1BAAB83D4AD727FF6
-DF6DC50B2223BCB5568A73A112E4860AD490554E64E780073FF3399CB4688D33
-9E8829667CD6EAEF25E0C7D2D44F2BBFA40E999325F9561514844221B50BC8FC
-4C7AD68CA7220D69125C2AF06849A3E068D18733276F0C0A6A2936D3C2C87CDE
-59CD1AF148C44F85784A5DAD569F5FF53C061056C067CE29AEF1E3BD1FD8B0B8
-71A0A638CDAC6AEEDBD5337D4683C084BB60B1859E600F59CB4E19C5FC5C6327
-EC544A68134496A9BD0B87D83AF6FDA3CB62FBF0B54FACE1F0E6A2D84B467AFF
-0F62DB
+D9D66F633B846AB284BCF8B0411B772DE5CD06DFE1BE899059C588357426D7A0
+7B684C079A47D271426064AD18CB9750D8A986D1D67C1B2AEEF8CE785CC19C81
+DE96489F740045C5E342F02DA1C9F9F3C167651E646F1A67CF379789E311EF91
+511D0F605B045B279357D6FC8537C233E7AEE6A4FDBE73E75A39EB206D20A6F6
+1021961B748D419EBEEB028B592124E174CA595C108E12725B9875544955CFFD
+028B698EF742BC8C19F979E35B8E99CADDDDC89CC6C59733F2A24BC3AF36AD86
+1319147A4A219ECB92D0D9F6228B51A97C29547000FCC8A581BE543D73F1FED4
+3D08C53693138003C01E1D216B185179E1856E2A05AA6C66AABB68B7E4409021
+91AA9D8E4C5FBBDA55F1BB6BC679EABA06BE9795DB920A6343CE934B04D75DF2
+E0C30B8FD2E475FE0D66D4AA65821864C7DD6AC9939A04094EEA832EAD33DB7A
+11EE8D595FB0E543D0E80D31D584B97879B3C7B4A85CC6358A41342D70AD0B97
+C14123421FE8A7D131FB0D03900B392FDA0ABAFC25E946D2251F150EC595E857
+D17AE424DB76B431366086F377B2A0EEFD3909E3FA35E51886FC318989C1EF20
+B6F5990F1D39C22127F0A47BC8461F3AFDF87D9BDA4B6C1D1CFD7513F1E3C3D3
+93BEF764AA832316343F9FE869A720E4AA87AE76FA87A833BBC5892DE05B867F
+10FA225E233BCFA9BB51F46A6DF22ADCEACC01C3CD1F54C9AEFA25E92EFAC00D
+7E2BA427C25483BA42A199F4D2E43DFCE79A7156F7417ACF78E41FCA91E6C9EF
+B933450D851B73A6AB6AEA7EE4C710CB5C14270D1674FA334686653793FCB31B
+491E870D3C2BC654D2C1DE463EC9BA29D7371AA1078800EF93D3F66263A2EBBB
+F5723697BF7448BD0D2E301544BECF497FD475B85DFEF52AF4F8F8BE445CABE6
+019318806D10C5952157FF8F8286C1EE701545C8F60EFA854EAE66835A2046A6
+915D395F1E0366EFE0C0391583FE001FF16D82A2E2DA5F57754A2C6F69306E36
+356ECF8EFC3F1188AD6FCD2427E0580C97A5B69B4E0E09B85EEDE142F5ADD2F0
+5DE51D6DB72B127412A0D57106C19CA493048A4F815129ABE767D51715B1515D
+9C21067CB5BC88741B7298C83EAE36A866DFA87D8981F179B1C31292F56BBB64
+3C430779468AAF07C8A8B4934E1E775FE3F35186BD1FA6EE3689C1C750678AF1
+FBF9B23195A124C5C991FE670AC0C86FD39D2B07B9A319E74EFD498B45820252
+720ECDF7294F7B0B137CEB86D33BFCEB8606985A3260FD669E461C8BE94216C5
+D434FD8854F44EE66E5A289A9F9E32BC36AF645D53F96652602BAED418C8D726
+BD04A1B4617551FE4DEF54083D414F7DCE004E6BB2DC9C2EF7CE232B254BA2C5
+7DCBD36C2072ED46FF711F121A701E2284BF1B718B3164382B8F453D68FA0377
+DFE106503B8401D4DB87F5402A3AC9A442FA060B0610A9524D530C7157C26B56
+AC970FCC1D5655FFFFA39246E6420CF97D08ADFB7B05822679BD40C638DDF0E7
+A97BFE8918B611A145AC965C203F1428812F9D340AF499B3A915B22BE798594E
+0F520109FC81E452180AE45B170FF999C5FC2761C6CECD8742A5A6FC97F16743
+AD4EFCC6572A6D3F3E4E330C5CB2FF6FEA48A5B64DD3DBE943BD9918D4A18E18
+CBCF598AEFBB6AB3CD2CBC9BFD6099272F6543F3E532E0E21E614BD2880B1023
+0AC234CB705827BF016DB84E00E8C255FDEFA0101A842929540B7B4AA8A089BD
+5EFF05B72356B6BC3727817823B5CDBB1B963103000D7F2A4E2A1472FC3E614B
+5CBCB6D6D784023173DEFEBFA8F9ED87EC1A0A9EE98CA59CFC964CF943DC683F
+E9E00DA718C4425A705A69D99988EC6F152525C790912C2E46A2381A569424AB
+54DF4798BC2D7E7A361E7991641D4B756CE2A7FF4A2848927092C59C2C4B8809
+E13AB84FB6B111E680D7FB9F2FFC2C5C66B0B501E4447C2E46C10E2F6124476F
+A140C404CFE2DC9E0199BF61E035CEB481D438139A9630934E541D261FFD2906
+4CAD99E20655FA746AFB81EDBB5601F5FD6B1D6832A01D585E2C55053F6A7378
+4DAACCAC7608DBDADAAE732D66B3E7F87E79756337C1A961E53A4651BE7C77F4
+038B89C87F650C54A2A90EB7F1D525BB353F33318551EE8D84A6A83C718EA5A4
+B2AC0F7306B1E095819B87015A90CA3ED739B09061782C28CDB36BA4BD5E5308
+5CBB70414E4112193DAC4A1FA30996327230D1E021F3CD8115E12D239D93FFDC
+B645910EB29E40D830E7BAF2DB255FD7C4E776557BB38157917D993EAC245837
+A3B515147043574157B8342D829C7228CCEA843ABC89D1785A9672A5923FC4CD
+2F3FF27E6FCACF84E2D3136CA2C0FD3EF1EE7354CD04C38B5FB874553646ED2D
+CEDF7E362EADD04B18051F20A8FB0DE18E152385B9D05F98A3A7EF177824E246
+455ABE69E2F700EB78185CCFC07E3B4C6FA301112528D977367D30D0D5D59EDE
+FAEB706DDC970A9E296236C725B2B55B09B9C336B8E23CBA5FB8692D56F33B03
+16294E5FC7FAA42E96395A57CE51CA8DDD77442F142E2E576B778373FB31C81C
+16840BB422CA827E30A81829648BDF1CA36700EA32AD888D097C1FE0A05B2D9F
+483AEE40269DF09AF0D1AD3DF80C45DDC59C2A03FBB661C79B87853737C6D352
+67626B657321B16198DBD6DB98A092F17878AE4698121E1006E53D6F9B0A3BE2
+3FB68828EF854A0CDBAA68B37ABCA6AD4A3D809AAF0BAB1697A81FE59C98C472
+1E33CD70A75A22C249DD11D76C2575ED3370A25892A16D2FD569CDA70C130770
+93F493C7D47D6F9A5424A7A542BAD726BFC3AB225DCEBBE6AC4BE006F8C7C0EA
+051424B08305BF2D951AB2986AAFEA04E078CA79B399585BFF0F1ADCED02E15B
+8765EB6BF6A8E4D0901EFF2C3AA104924EAD9637A35D877E0C51A3C37DA78CD4
+8643C8CE6DCDDE3F116A6C2390F948E5371BEB5AD2E87B41C5F01FB5C196C436
+6E256A88D082E3F46E4EFFBF605B2EFF1E9D9AD5EE4DDC323A137CD9451EDEE0
+06F7D82898D71FAF2362C0FCF1F726F97F820305B7CE20728CA08C63575083A7
+84BA28B7DE2B916432475510E274C12FFD1660A717F51DACFDF0A102D85224E0
+D6DB607BB72569ABB8A7BC6A10354CBBC01732EFE35B72062DF269CB25EA3DE6
+DC603B04C90C5912D2C38D7A5ACDCDD3F6F116D884F0D8C528F69D5D47BA20DB
+0A9E585C7D8CC3C324FE8A1DF150279F7E8FB43BDB720E624E5E9918032C02CD
+8020636AE5C38DA2484B7F4B34163E0D0A561B43B80E97746DC05C871AB620EC
+C5D47101ECED4A7E25F291184BEF8B80024AA7BB456C1B83A907652B331DEA34
+754226C39C6889EBEEFDAD081E01EF8FE47751987667836FDE4C8BB8A3FD4406
+1E643B4EA37BD370734D1A2DB17C2F4B74B4ED75098B433601F75A88C9A37A05
+CCB157EF6E32023BFA33973F3E655A4D58289136996FCFA61EEABD70791B6523
+1FF5DE71AB8A17038923118A5EED8D59C4C58D246FFA9BB26472346B40C8741F
+153D19CAFF20DD2A86C6DB89154A630FB1761929FC3F0448EE2F089C1C953E02
+905BA8DE75D101A982A611056C4B237596C10951DD98BAB838B742D3CF7DE718
+617DB72E5268583223E37E029D1C8FD3F1D21690151F76B76C52C725CA135CA2
+8666553E863CE188BFC9B99AF56AC2DB5BFEBEB12FB563D00244EB89E478657A
+98AF2E1223C1ABC25A4500E8119B86EB3C26B8A2F3505A3E5610F89B7C34E278
+53FA0A54A7F46D84A35EFEC36AE660A9E3C37EE3864106702DE5AF6C45ABF64B
+888A4A51323138CE77DB935576FE6B4824B6942DF80625098CE1B5B32B234F1D
+052A9D6039697118A9D793793775D8729D8574A2E74D7109C7B7E23BC5E2E87A
+CA8E019203952A4892544E1AD3D4EDD22971611358AB230E9A2ABDF00A288501
+A01B67C42B33F6B78C39562DB50F4663B922D9BE0D8A150311AE44B83C1F129F
+07337323E9A23211EE58E16043E127C6F9574019179F5635648A011266677B56
+B5D0201A4E1470B952A1579B57AB2329CD4C615395023C653F784D36B5EE3672
+10D191F29EA508CE84763CA4CE7C2C5229E38E241255A5CABCD6C7CBAED901A2
+CA53B5E24111921CDDF83578D33D463D70EDACA0E470D8F592303FB6BFD68B4D
+3F3BE2D7C5EC8BBF10C90111A33E205F2649B56E8443F6FAA6C721C66575AE12
+D4C40F1F46CF9E9DA675AB5D5840D938780CD9E4AD6736ECBEB6A4397613586F
+849B51048AC5F9405E03E14540A5E5582F61CDCDB57EDDF95A8C6705F433EE16
+648F098C03DED8A2AD94AE3DE202D629B9422ABB031318D48F2C85F9DBFA17BE
+84708AA3B6C9F81F4508F7A5CB7B6646AB8722ECF817877B77D473F577556DAA
+2BA0ABACFCF5DEA7498C47328E873019A956FBB250FD9D8885D21D368FA70CBD
+2709D2DA44EE7A9869963EAB48789541906DE49FAE785ECE1F18A22C7E7ED204
+9768896B78E9EB7A2BD6EEC1B26083940656ECD689D92942CC8AF05CBF82AED0
+B45A7DF4DD7AA6526FB597322560B9ED3087A65B5EEF1371C328A021411BFE3B
+D9B5088B2F1AAE381FFED52D2D1E02CD0DA78683E3B06171CBE94BE9760005D7
+135893D7CC2DB097F6AC664D9594CF1C650F84DA80D2EDE04802DBA33CE3DAFE
+EB7A37E8AEFA4FDA6252FF21E8673DD98E67124D5DBC7BACF361E57077B71939
+C1D1FB923E4E35C075CD1BCBE0E80DAEA1320D55B43EAB45D9B26C366B278782
+7519FDC482D98839BF0DF2E7C3A56A1C1A3FC0E57A75CA414F6536C1FE8EB7A0
+4ADFEE3BEDA0F53BE8CF5F64230784A797133E8CD46BCCB3BF38BCE38A73CCE2
+9E073ADE792F7128231DDD1F63E6156ADB2609C200837C2E8A2D93D2A7BC9171
+050C709A71E44E32B1B03C92EB5CF1D3BAB1C38E027DC4ED9AED633D98CD7486
+3F773ACF8AE332631CF2ABE6D606607593FE862ADE31803964E3F4DC3CE3A271
+C76BDD95C87CDB3B87BC26FC7A16D567EEC62E6FF0D471B4853DB8A94D4CACF8
+843824F818083F10E88D52FC4253E8203292CB40F1414AE7E51DD7347007C342
+CD70E8E9F2D2A13D71213B841DDEAAB208AD9EA644591C15DEB084165F9DF24B
+B91D3BBEEC2E34E38EF16A0C3F00700A7BDCBBFED2EC0D09601AD6538288DB50
+3478B051B5E16B604A0341FE621A58718D960D699D3FAD284310DCF54EB13175
+19A75A539EE98E804AEA24689D3540F0F12951A3C01FACCE9A7BAF4D0DAFA946
+FF65A4D2A4C39969607272C6886F44E90ABE27CA3A1F12A29D9B32E60E8E34F0
+17C5FE43D0E69A99A922D98909B2BBCD145E59A5E7F5426B3988F73B09A525F6
+8BD4915663C1301323180E760BE81CB874B020FDA3AE63340E4261E4F3E4949B
+CC0966BDC4426190BE9F5D77F76A72AD925662E5FE1CEF9CCAB68F0BD33DA003
+F11EB91AC4502FBD6AE48DA0F9D07C35B96B103E379B8A83A05FE728F1716194
+1F650F75BEBADB2E3810388F3E2DC7B19F1BA9E32925F2FD9F19F4E8701F3E4E
+4069125D7C401144740691E7A460021A47B1E27997FC1DDABEC5BD0EE0B20194
+2D579C7D6727AA124083242BDA46D8E116E2751C5F298851A62B60AEBE82A929
+9B9F2492BA35690D1EFD16215B8EF14E7A3803B93C28FA41D971B05B6AF3B593
+E74AD1E68A5FCE12A86E63B78BFEA87D3949FD164F12277A4688BE96356791CB
+8671C49365608F3EDECC109321AF92B4C29CAF073DA3A7D73E913D0D83FAC5EB
+BD884D4C686056404DAAAD6F82F94F803FA1FB0DD8908D1DF08FB87A8BB83027
+04DE0CBB1C6FEB6B517FBD7CF065120079E608CE41893C2BC96A347826CCDFD5
+C69E161217F2127A59F1A6F22037641613F191F22D5B4CDCBCC2EE5615623404
+ABA7BE6C5FE475481615B2AC1A2412E54688DD21E44CC9AF5F16E634AFCA389C
+4D740B7B51BB141BFAD1080E7C726C1606A28ED492E6BDE9F800EFACD1513909
+84E98CEB6A0B7A2A6F3E1D1DCC3B2552795E0932673E59ECC56DDD37A1D52BA6
+C3F0E905978AB568941A163F4CE3AAB5C5B16F86016EC47BA6F3F7AAAA77C3B6
+09C8C3ABDB6D514A76ECD37C37AA88B5860630B3406B494F7725975596F84777
+D9CF48686EC9C5DBCC1D78513F591C7C10AB9D153B3D41426B7BF668B0D04503
+56BCB686258462C1DC61095724B9F3312316262FD7C1AEC6E54DE7E5A7BD8EFF
+035299B8FD8A4A7B0F51404F4A760F4D8B4C0FB7A32FA4B2383AB6E9C78FDEDB
+FE6A5788D38A6701B123630C2A6D820A684166FBBC83DB17069494FBD411B333
+CB37E2491C5BD035A33867A6D3A3D420CC31ACF43AA07182CAAE67E40EC63663
+B678F71D4C6E0EC3A0AAF904CD3AA66E0DE5E3CDE049E94249B39A1C06E3CE9A
+F974B2484BB2CDA14282B9511E505B3C89F9C802218AE40D1A7541335C5736DD
+CD565D4B9F4CC78F3A393737EDB4FBD0DA299E21CCFEBA5478EEF013F0552A8B
+0BB11FF46CCDB784E8BDCF730A16363E66572049E42C695886EAB42A9AD9094C
+B635DF4B5B9BD9B9AE8455DFA3EEFC77653190F9A8B1E93B7281C2A21EA7DDA9
+33484745BDF7E3DD63C7AC66C286C9A5A698A5E4D7A91710B7FF943FB23609B6
+4B442F83CB795788FAB5E9CF3F75D5487DA26170E4561C7941C910B088C3B86D
+F844B0F340CF82786A3FCF347048463EBD2006281A816627065DDA6CD4D3AC5E
+2024BC96C7D896381BBB567951E7A1F29D4E95351298B000D29E5F3D0448CB5A
+CFDAE1BADE9403B90371C3A07D208948AFA022A69C519434B6813086ADF518D5
+88E0B92072A44BA1B3EBB630A13B7AB90992E85B6D67361C8D96F3E0D826FF37
+17B67E4B1EB7BADFD98D7F4FD17BECE740ADF13C141EBF0A91CB105DABB32FE0
+55086D56A0D358841D15FD349E6B95512E4EDF4C430216FF85C2ABE995E4B40A
+A6044CC8820AD885C07E052B3F91C2E9A1D163BFFD210F7BE95B923E2500DB50
+2075106DB541C267BD450B25B670CE80BCD068D4DBFF2D82634175B61FBD3BC3
+406131F44C7D6F18D375D1F2270829DDF29DC14DBB58A30AC193245D18DE91F8
+AB88AB548D8138605BB5A50073295534E314366E26665AE70482B890E4101D6B
+60E4F3B37ABCA1346DAAE8FDB8DD9C832EFF3E73BA470E2BACE7B8515CB43388
+C27AF99FF9322175CF8D4947E6B3846AFF5163E972156847F58A66660EC8A3A6
+5FB47C9F637B4CBB4C73B6A080B0CF6FD1E9665E92032540570FFCC747C67C50
+822811AADC404BC7ECD1673E8AA6C3A2F1D82F39430B58C29145E2F1B679C46E
+94EDC711883F1E4EA84117A54757E8895A40401A26E1437B39A2F65CAADD6E02
+D71FA8AF7453668DC613F326A3344F74AD7AC67569AF399385500ABDA5EDD3BA
+343CC5EDD4B558467626850E752B9959FEF1454E53E7A3DCBC2255AD8F6AB4FE
+894455118A61C58840CB68A925ACCAD75CEACE863D806916228F0614191A1CD5
+DC9BAE256018615AA3725834519449B0A88B4F396654E74099C007930ADB1327
+DD119BF799FE3B0B223E1EDA04FE2DA7A1C879143E1C33B6C6344F4BA033AD6F
+8E88C33DEF1977796B454BAB2494C930F492A518E8198C708A75FFEF8C49C324
+A718AB59B889DED521229E741FFE53F98EBE88B0405AD523254FD3FA4BBE96DA
+DA1C27C1C979A0DD4E61C3B1F4C4DE01E42F1C4435EECFC02D97994BC8AF5270
+E7CB1458D76ED0229C5FFB4A23B8716018F9050970895D51722CDE8F2EA3D947
+DFF374D84915D5C5D16463A6FFCD079D1ED416C4347BF831FF0C4ADFB61295DC
+4D5785BB0852BF472CFC97EC174491CAF961AB90629F055E75DAA6D9898E8653
+5BCF379816CAE46FEA62E7BE8E9B953466E51828172C4DBD0E1BBAD1CE28B5B1
+02B3E36403BE80B49A47446A6677FCED438F01D60EB10F478C89528FA337D0D8
+88D3FC123C076507ACDAF783A9A6E24ED73BF24B6E0F11C13E532DE5F70EB02A
+60651FC2E263002D3986B7B20CC2AA08330B9FC2E26765CD52266969A86EE30E
+71E0B41B6C1C6DA423D3A7E1553D2FAF26EF40DC183099322D362E4965695C52
+9FC3E5BD7ABD743CDCB717DB10372A722A39CE53FABB454EADE2179C4CBFC016
+A8E893C28EF549CA1692C8D8ADFC471DCCDE266FB4E97A1F3035801F3F034D44
+AE6ADA0192657E8078A1D27420093FEBA111333314658021B90DA4E7A8D4B829
+F1795501020D5FF0AD25584C1D47BE08ED6CE96278050BA67680A3B973613647
+A93FAEC756FC253B3693FA2D6491B276EF45751EFB306961788E7C15297A5822
+AFC5A2DABD0DBBFF0BE135267EA6B9D1B4E4760ED14895FFE1F8C3F564830001
+EFA901B8442BD2D98561BAB9A0FD939E0F856E4D2EB04A9A4496704109B8A84C
+EA06AB0999427B3B1BE776004AE906D0F22159C051D88CF573A0255D99B56781
+CF326CD11919AA40B096769CD6D0ADF3ACEC7957621084ACF21AF1F265416628
+86B67FCBDE9370D4F5C6F5CC67EBB0A2727E074090DBCA459AFA1A4778AED4C9
+AE5400775223E684BFCB
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -3148,6 +5653,7 @@ EC544A68134496A9BD0B87D83AF6FDA3CB62FBF0B54FACE1F0E6A2D84B467AFF
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
+{restore}if
%%EndFont
TeXDict begin 40258431 52099146 1000 600 600 (history.dvi)
@start /Fa 197[21 58[{}1 74.7198 /CMMI9 rf /Fb 134[41
@@ -3202,52 +5708,41 @@ rf /Fl 197[25 58[{}1 90.9091 /CMMI10 rf /Fm 197[33 58[{}1
%%Feature: *Resolution 600dpi
TeXDict begin
%%BeginPaperSize: Letter
-letter
+/setpagedevice where
+{ pop << /PageSize [612 792] >> setpagedevice }
+{ /letter where { pop letter } if }
+ifelse
%%EndPaperSize
end
%%EndSetup
%%Page: 1 1
TeXDict begin 1 0 bop 150 1318 a Fs(GNU)65 b(History)h(Library)p
-150 1418 3600 34 v 1920 1515 a Fr(Edition)31 b(6.2,)h(for)e
-Fq(History)e(Library)h Fr(V)-8 b(ersion)31 b(6.2.)3118
-1623 y(Septem)m(b)s(er)f(2010)150 4935 y Fp(Chet)45 b(Ramey)-11
+150 1418 3600 34 v 1920 1515 a Fr(Edition)31 b(6.3,)h(for)e
+Fq(History)e(Library)h Fr(V)-8 b(ersion)31 b(6.3.)3218
+1623 y(Jan)m(uary)f(2014)150 4935 y Fp(Chet)45 b(Ramey)-11
b(,)46 b(Case)g(W)-11 b(estern)46 b(Reserv)l(e)g(Univ)l(ersit)l(y)150
5068 y(Brian)f(F)-11 b(o)l(x,)45 b(F)-11 b(ree)45 b(Soft)l(w)l(are)h(F)
-11 b(oundation)p 150 5141 3600 17 v eop end
%%Page: 2 2
-TeXDict begin 2 1 bop 150 3024 a Fr(This)31 b(do)s(cumen)m(t)h(describ)
-s(es)f(the)h(GNU)g(History)h(library)e(\(v)m(ersion)i(6.2,)g(Septem)m
-(b)s(er)e(6)h(2010\),)j(a)d(pro-)150 3133 y(gramming)23
-b(to)s(ol)g(that)g(pro)m(vides)f(a)h(consisten)m(t)h(user)d(in)m
-(terface)j(for)e(recalling)i(lines)f(of)f(previously)g(t)m(yp)s(ed)150
-3243 y(input.)150 3377 y(Cop)m(yrigh)m(t)602 3374 y(c)577
-3377 y Fo(\015)30 b Fr(1988{2011)35 b(F)-8 b(ree)31 b(Soft)m(w)m(are)h
-(F)-8 b(oundation,)31 b(Inc.)150 3512 y(P)m(ermission)h(is)h(gran)m
-(ted)g(to)f(mak)m(e)i(and)d(distribute)h(v)m(erbatim)h(copies)g(of)f
-(this)g(man)m(ual)h(pro)m(vided)f(the)150 3621 y(cop)m(yrigh)m(t)g
-(notice)f(and)f(this)g(p)s(ermission)g(notice)h(are)g(preserv)m(ed)f
-(on)h(all)g(copies.)390 3756 y(P)m(ermission)k(is)h(gran)m(ted)f(to)h
-(cop)m(y)-8 b(,)38 b(distribute)d(and/or)g(mo)s(dify)f(this)h(do)s
-(cumen)m(t)g(under)390 3866 y(the)j(terms)g(of)g(the)g(GNU)h(F)-8
-b(ree)39 b(Do)s(cumen)m(tation)h(License,)g(V)-8 b(ersion)39
-b(1.3)g(or)f(an)m(y)g(later)390 3975 y(v)m(ersion)28
-b(published)d(b)m(y)j(the)f(F)-8 b(ree)29 b(Soft)m(w)m(are)f(F)-8
-b(oundation;)30 b(with)d(no)g(In)m(v)-5 b(arian)m(t)28
-b(Sections,)390 4085 y(with)i(the)h(F)-8 b(ron)m(t-Co)m(v)m(er)33
-b(texts)e(b)s(eing)g(\\A)g(GNU)g(Man)m(ual",)h(and)e(with)g(the)h(Bac)m
-(k-Co)m(v)m(er)390 4194 y(T)-8 b(exts)33 b(as)g(in)f(\(a\))h(b)s(elo)m
-(w.)47 b(A)33 b(cop)m(y)g(of)f(the)h(license)g(is)g(included)e(in)h
-(the)h(section)g(en)m(titled)390 4304 y(\\GNU)e(F)-8
-b(ree)32 b(Do)s(cumen)m(tation)g(License".)390 4438 y(\(a\))f(The)f
-(FSF's)g(Bac)m(k-Co)m(v)m(er)j(T)-8 b(ext)31 b(is:)41
-b(Y)-8 b(ou)31 b(are)f(free)h(to)f(cop)m(y)h(and)f(mo)s(dify)f(this)h
-(GNU)390 4548 y(man)m(ual.)41 b(Buying)30 b(copies)h(from)e(GNU)i
-(Press)f(supp)s(orts)e(the)i(FSF)g(in)g(dev)m(eloping)h(GNU)390
-4658 y(and)f(promoting)g(soft)m(w)m(are)i(freedom.")150
-4902 y(Published)d(b)m(y)h(the)h(F)-8 b(ree)31 b(Soft)m(w)m(are)h(F)-8
-b(oundation)150 5011 y(59)31 b(T)-8 b(emple)31 b(Place,)h(Suite)e(330,)
-150 5121 y(Boston,)i(MA)e(02111-1307)150 5230 y(USA)p
-eop end
+TeXDict begin 2 1 bop 150 4413 a Fr(This)23 b(do)s(cumen)m(t)h(describ)
+s(es)f(the)h(GNU)g(History)g(library)g(\(v)m(ersion)g(6.3,)j(6)d(Jan)m
+(uary)f(2014\),)28 b(a)c(program-)150 4523 y(ming)38
+b(to)s(ol)h(that)f(pro)m(vides)g(a)g(consisten)m(t)i(user)d(in)m
+(terface)i(for)f(recalling)h(lines)g(of)f(previously)f(t)m(yp)s(ed)150
+4633 y(input.)150 4767 y(Cop)m(yrigh)m(t)602 4764 y(c)577
+4767 y Fo(\015)30 b Fr(1988{2014)35 b(F)-8 b(ree)31 b(Soft)m(w)m(are)h
+(F)-8 b(oundation,)31 b(Inc.)390 4902 y(P)m(ermission)21
+b(is)f(gran)m(ted)h(to)g(cop)m(y)-8 b(,)24 b(distribute)c(and/or)h(mo)s
+(dify)e(this)i(do)s(cumen)m(t)f(under)f(the)390 5011
+y(terms)25 b(of)h(the)f(GNU)h(F)-8 b(ree)27 b(Do)s(cumen)m(tation)g
+(License,)g(V)-8 b(ersion)26 b(1.3)g(or)f(an)m(y)h(later)g(v)m(ersion)
+390 5121 y(published)43 b(b)m(y)h(the)h(F)-8 b(ree)46
+b(Soft)m(w)m(are)g(F)-8 b(oundation;)53 b(with)44 b(no)g(In)m(v)-5
+b(arian)m(t)46 b(Sections,)j(no)390 5230 y(F)-8 b(ron)m(t-Co)m(v)m(er)
+31 b(T)-8 b(exts,)30 b(and)f(no)f(Bac)m(k-Co)m(v)m(er)k(T)-8
+b(exts.)41 b(A)29 b(cop)m(y)h(of)f(the)g(license)h(is)f(included)390
+5340 y(in)h(the)h(section)g(en)m(titled)h(\\GNU)f(F)-8
+b(ree)32 b(Do)s(cumen)m(tation)g(License".)p eop end
%%Page: -1 3
TeXDict begin -1 2 bop 3725 -116 a Fr(i)150 299 y Fn(T)-13
b(able)53 b(of)h(Con)l(ten)l(ts)150 641 y Fp(1)135 b(Using)45
@@ -3375,21 +5870,20 @@ b(to)i(the)e(previous)g(command.)40 b(This)30 b(is)g(a)h(synon)m(ym)f
(for)g(`)p Fq(!-1)p Fr('.)150 4169 y Fq(!)p Fh(string)144
b Fr(Refer)25 b(to)h(the)f(most)h(recen)m(t)g(command)f(preceding)g
(the)g(curren)m(t)g(p)s(osition)g(in)g(the)g(history)630
-4278 y(list)31 b(starting)g(with)f Fj(string)8 b Fr(.)150
-4444 y Fq(!?)p Fh(string)j Fq([?])630 4553 y Fr(Refer)25
+4278 y(list)31 b(starting)g(with)f Fj(string)p Fr(.)150
+4444 y Fq(!?)p Fh(string)p Fq([?])630 4553 y Fr(Refer)25
b(to)h(the)f(most)h(recen)m(t)g(command)f(preceding)g(the)g(curren)m(t)
g(p)s(osition)g(in)g(the)g(history)630 4663 y(list)32
-b(con)m(taining)h Fj(string)8 b Fr(.)43 b(The)31 b(trailing)h(`)p
-Fq(?)p Fr(')f(ma)m(y)h(b)s(e)f(omitted)h(if)f(the)h Fj(string)39
-b Fr(is)31 b(follo)m(w)m(ed)630 4772 y(immediately)h(b)m(y)e(a)h
-(newline.)150 4938 y Fq(^)p Fh(string1)11 b Fq(^)p Fh(string2)g
-Fq(^)630 5047 y Fr(Quic)m(k)31 b(Substitution.)43 b(Rep)s(eat)31
-b(the)g(last)h(command,)g(replacing)f Fj(string1)39 b
-Fr(with)31 b Fj(string2)7 b Fr(.)630 5157 y(Equiv)-5
-b(alen)m(t)31 b(to)g Fq(!!:s/)p Fh(string1)11 b Fq(/)p
-Fh(string2)g Fq(/)p Fr(.)150 5322 y Fq(!#)384 b Fr(The)30
-b(en)m(tire)h(command)f(line)h(t)m(yp)s(ed)f(so)h(far.)p
-eop end
+b(con)m(taining)i Fj(string)p Fr(.)45 b(The)31 b(trailing)i(`)p
+Fq(?)p Fr(')f(ma)m(y)g(b)s(e)f(omitted)i(if)f(the)g Fj(string)39
+b Fr(is)32 b(follo)m(w)m(ed)630 4772 y(immediately)g(b)m(y)e(a)h
+(newline.)150 4938 y Fq(^)p Fh(string1)p Fq(^)p Fh(string2)p
+Fq(^)630 5047 y Fr(Quic)m(k)h(Substitution.)44 b(Rep)s(eat)32
+b(the)g(last)h(command,)f(replacing)g Fj(string1)40 b
+Fr(with)31 b Fj(string2)p Fr(.)630 5157 y(Equiv)-5 b(alen)m(t)31
+b(to)g Fq(!!:s/)p Fh(string1)p Fq(/)p Fh(string2)p Fq(/)p
+Fr(.)150 5322 y Fq(!#)384 b Fr(The)30 b(en)m(tire)h(command)f(line)h(t)
+m(yp)s(ed)f(so)h(far.)p eop end
%%Page: 2 5
TeXDict begin 2 4 bop 150 -116 a Fr(Chapter)30 b(1:)41
b(Using)30 b(History)h(In)m(teractiv)m(ely)2016 b(2)150
@@ -3422,49 +5916,48 @@ b(F)-8 b(or)31 b(man)m(y)g(applications,)h(this)e(is)g(the)h(command)f
2536 y Fq(^)432 b Fr(The)30 b(\014rst)f(argumen)m(t;)j(that)f(is,)f(w)m
(ord)g(1.)150 2703 y Fq($)432 b Fr(The)30 b(last)h(argumen)m(t.)150
2870 y Fq(\045)432 b Fr(The)30 b(w)m(ord)g(matc)m(hed)h(b)m(y)f(the)h
-(most)g(recen)m(t)g(`)p Fq(?)p Fh(string)11 b Fq(?)p
-Fr(')28 b(searc)m(h.)150 3037 y Fh(x)11 b Fq(-)p Fh(y)325
-b Fr(A)30 b(range)h(of)g(w)m(ords;)f(`)p Fq(-)p Fh(y)11
-b Fr(')30 b(abbreviates)h(`)p Fq(0-)p Fh(y)11 b Fr('.)150
-3204 y Fq(*)432 b Fr(All)28 b(of)g(the)g(w)m(ords,)g(except)h(the)e
-Fq(0)p Fr(th.)40 b(This)27 b(is)g(a)h(synon)m(ym)f(for)h(`)p
+(most)g(recen)m(t)g(`)p Fq(?)p Fh(string)p Fq(?)p Fr(')e(searc)m(h.)150
+3037 y Fh(x)p Fq(-)p Fh(y)336 b Fr(A)30 b(range)h(of)g(w)m(ords;)f(`)p
+Fq(-)p Fh(y)p Fr(')g(abbreviates)h(`)p Fq(0-)p Fh(y)p
+Fr('.)150 3204 y Fq(*)432 b Fr(All)28 b(of)g(the)g(w)m(ords,)g(except)h
+(the)e Fq(0)p Fr(th.)40 b(This)27 b(is)g(a)h(synon)m(ym)f(for)h(`)p
Fq(1-$)p Fr('.)39 b(It)28 b(is)g(not)g(an)f(error)630
3313 y(to)j(use)g(`)p Fq(*)p Fr(')f(if)h(there)g(is)g(just)f(one)h(w)m
(ord)f(in)g(the)h(ev)m(en)m(t;)i(the)d(empt)m(y)i(string)e(is)h
-(returned)e(in)630 3423 y(that)j(case.)150 3590 y Fh(x)11
-b Fq(*)373 b Fr(Abbreviates)31 b(`)p Fh(x)11 b Fq(-$)p
-Fr(')150 3757 y Fh(x)g Fq(-)373 b Fr(Abbreviates)31 b(`)p
-Fh(x)11 b Fq(-$)p Fr(')29 b(lik)m(e)j(`)p Fh(x)11 b Fq(*)p
-Fr(',)30 b(but)g(omits)h(the)f(last)h(w)m(ord.)275 3928
-y(If)i(a)h(w)m(ord)g(designator)g(is)g(supplied)f(without)h(an)g(ev)m
-(en)m(t)h(sp)s(eci\014cation,)h(the)e(previous)f(command)150
-4038 y(is)d(used)g(as)h(the)f(ev)m(en)m(t.)150 4244 y
-Fi(1.1.3)63 b(Mo)s(di\014ers)150 4391 y Fr(After)29 b(the)g(optional)g
-(w)m(ord)g(designator,)g(y)m(ou)g(can)g(add)f(a)h(sequence)g(of)g(one)g
-(or)f(more)h(of)g(the)f(follo)m(wing)150 4501 y(mo)s(di\014ers,)h(eac)m
-(h)j(preceded)e(b)m(y)g(a)h(`)p Fq(:)p Fr('.)150 4672
-y Fq(h)432 b Fr(Remo)m(v)m(e)32 b(a)f(trailing)g(pathname)g(comp)s
-(onen)m(t,)g(lea)m(ving)h(only)e(the)h(head.)150 4839
-y Fq(t)432 b Fr(Remo)m(v)m(e)32 b(all)f(leading)h(pathname)e(comp)s
-(onen)m(ts,)h(lea)m(ving)h(the)e(tail.)150 5006 y Fq(r)432
-b Fr(Remo)m(v)m(e)32 b(a)f(trailing)g(su\016x)f(of)g(the)h(form)f(`)p
-Fq(.)p Fh(suffix)11 b Fr(',)28 b(lea)m(ving)33 b(the)d(basename.)150
-5173 y Fq(e)432 b Fr(Remo)m(v)m(e)32 b(all)f(but)f(the)h(trailing)g
-(su\016x.)150 5340 y Fq(p)432 b Fr(Prin)m(t)30 b(the)h(new)f(command)g
-(but)g(do)g(not)g(execute)i(it.)p eop end
+(returned)e(in)630 3423 y(that)j(case.)150 3590 y Fh(x)p
+Fq(*)384 b Fr(Abbreviates)31 b(`)p Fh(x)p Fq(-$)p Fr(')150
+3757 y Fh(x)p Fq(-)384 b Fr(Abbreviates)31 b(`)p Fh(x)p
+Fq(-$)p Fr(')f(lik)m(e)h(`)p Fh(x)p Fq(*)p Fr(',)g(but)f(omits)h(the)f
+(last)h(w)m(ord.)275 3928 y(If)i(a)h(w)m(ord)g(designator)g(is)g
+(supplied)f(without)h(an)g(ev)m(en)m(t)h(sp)s(eci\014cation,)h(the)e
+(previous)f(command)150 4038 y(is)d(used)g(as)h(the)f(ev)m(en)m(t.)150
+4244 y Fi(1.1.3)63 b(Mo)s(di\014ers)150 4391 y Fr(After)29
+b(the)g(optional)g(w)m(ord)g(designator,)g(y)m(ou)g(can)g(add)f(a)h
+(sequence)g(of)g(one)g(or)f(more)h(of)g(the)f(follo)m(wing)150
+4501 y(mo)s(di\014ers,)h(eac)m(h)j(preceded)e(b)m(y)g(a)h(`)p
+Fq(:)p Fr('.)150 4672 y Fq(h)432 b Fr(Remo)m(v)m(e)32
+b(a)f(trailing)g(pathname)g(comp)s(onen)m(t,)g(lea)m(ving)h(only)e(the)
+h(head.)150 4839 y Fq(t)432 b Fr(Remo)m(v)m(e)32 b(all)f(leading)h
+(pathname)e(comp)s(onen)m(ts,)h(lea)m(ving)h(the)e(tail.)150
+5006 y Fq(r)432 b Fr(Remo)m(v)m(e)32 b(a)f(trailing)g(su\016x)f(of)g
+(the)h(form)f(`)p Fq(.)p Fh(suffix)p Fr(',)f(lea)m(ving)j(the)f
+(basename.)150 5173 y Fq(e)432 b Fr(Remo)m(v)m(e)32 b(all)f(but)f(the)h
+(trailing)g(su\016x.)150 5340 y Fq(p)432 b Fr(Prin)m(t)30
+b(the)h(new)f(command)g(but)g(do)g(not)g(execute)i(it.)p
+eop end
%%Page: 3 6
TeXDict begin 3 5 bop 150 -116 a Fr(Chapter)30 b(1:)41
b(Using)30 b(History)h(In)m(teractiv)m(ely)2016 b(3)150
-299 y Fq(s/)p Fh(old)11 b Fq(/)p Fh(new)g Fq(/)630 408
-y Fr(Substitute)32 b Fj(new)40 b Fr(for)32 b(the)h(\014rst)f(o)s
+299 y Fq(s/)p Fh(old)p Fq(/)p Fh(new)p Fq(/)630 408 y
+Fr(Substitute)32 b Fj(new)40 b Fr(for)32 b(the)h(\014rst)f(o)s
(ccurrence)h(of)f Fj(old)37 b Fr(in)32 b(the)h(ev)m(en)m(t)h(line.)48
b(An)m(y)32 b(delimiter)630 518 y(ma)m(y)25 b(b)s(e)g(used)f(in)g
(place)i(of)f(`)p Fq(/)p Fr('.)39 b(The)24 b(delimiter)h(ma)m(y)h(b)s
(e)e(quoted)h(in)f Fj(old)29 b Fr(and)24 b Fj(new)32
-b Fr(with)25 b(a)630 628 y(single)j(bac)m(kslash.)40
-b(If)27 b(`)p Fq(&)p Fr(')g(app)s(ears)g(in)g Fj(new)8
-b Fr(,)27 b(it)h(is)f(replaced)h(b)m(y)f Fj(old)t Fr(.)39
-b(A)27 b(single)h(bac)m(kslash)630 737 y(will)35 b(quote)g(the)g(`)p
+b Fr(with)25 b(a)630 628 y(single)k(bac)m(kslash.)40
+b(If)28 b(`)p Fq(&)p Fr(')g(app)s(ears)g(in)f Fj(new)p
+Fr(,)i(it)f(is)h(replaced)f(b)m(y)g Fj(old)p Fr(.)40
+b(A)28 b(single)h(bac)m(kslash)630 737 y(will)35 b(quote)g(the)g(`)p
Fq(&)p Fr('.)54 b(The)34 b(\014nal)g(delimiter)i(is)e(optional)i(if)f
(it)g(is)f(the)h(last)h(c)m(haracter)g(on)630 847 y(the)31
b(input)e(line.)150 1006 y Fq(&)432 b Fr(Rep)s(eat)31
@@ -3472,7 +5965,7 @@ b(the)f(previous)g(substitution.)150 1166 y Fq(g)150
1275 y(a)432 b Fr(Cause)38 b(c)m(hanges)i(to)f(b)s(e)f(applied)h(o)m(v)
m(er)h(the)f(en)m(tire)g(ev)m(en)m(t)h(line.)66 b(Used)39
b(in)f(conjunction)630 1385 y(with)30 b(`)p Fq(s)p Fr(',)h(as)f(in)h
-Fq(gs/)p Fh(old)11 b Fq(/)p Fh(new)g Fq(/)p Fr(,)26 b(or)k(with)h(`)p
+Fq(gs/)p Fh(old)p Fq(/)p Fh(new)p Fq(/)p Fr(,)c(or)j(with)h(`)p
Fq(&)p Fr('.)150 1544 y Fq(G)432 b Fr(Apply)30 b(the)g(follo)m(wing)i
(`)p Fq(s)p Fr(')f(mo)s(di\014er)e(once)i(to)g(eac)m(h)h(w)m(ord)e(in)g
(the)g(ev)m(en)m(t.)p eop end
@@ -3572,7 +6065,7 @@ b(.)3350 2623 y([F)g(unction])-3599 b Fg(void)54 b
(history_set_history_stat)q(e)e Ff(\()p Fj(HISTOR)-8
b(Y)p 2222 2623 28 4 v 39 w(ST)g(A)g(TE)30 b(*state)p
Ff(\))390 2732 y Fr(Set)h(the)f(state)i(of)e(the)h(history)f(list)h
-(according)h(to)f Fj(state)5 b Fr(.)150 2934 y Fi(2.3.2)63
+(according)h(to)f Fj(state)p Fr(.)150 2934 y Fi(2.3.2)63
b(History)41 b(List)g(Managemen)m(t)150 3081 y Fr(These)32
b(functions)f(manage)i(individual)f(en)m(tries)g(on)g(the)g(history)g
(list,)h(or)f(set)h(parameters)f(managing)150 3190 y(the)f(list)g
@@ -3585,8 +6078,8 @@ Fr(.)3350 3787 y([F)-8 b(unction])-3599 b Fg(void)54
b(add_history_time)c Ff(\()p Fj(const)31 b(c)m(har)g(*string)p
Ff(\))390 3897 y Fr(Change)f(the)h(time)g(stamp)f(asso)s(ciated)i(with)
e(the)h(most)f(recen)m(t)i(history)e(en)m(try)h(to)g
-Fj(string)8 b Fr(.)3350 4086 y([F)-8 b(unction])-3599
-b Fg(HIST_ENTRY)55 b(*)e(remove_history)d Ff(\()p Fj(in)m(t)31
+Fj(string)p Fr(.)3350 4086 y([F)-8 b(unction])-3599 b
+Fg(HIST_ENTRY)55 b(*)e(remove_history)d Ff(\()p Fj(in)m(t)31
b(whic)m(h)p Ff(\))390 4195 y Fr(Remo)m(v)m(e)47 b(history)f(en)m(try)f
(at)i(o\013set)f Fj(whic)m(h)f Fr(from)g(the)h(history)-8
b(.)86 b(The)45 b(remo)m(v)m(ed)i(elemen)m(t)g(is)390
@@ -3649,8 +6142,8 @@ m(y)h Fq(where_history\(\))p Fr(.)390 2967 y(If)30 b(there)g(is)h(no)f
(en)m(try)h(there,)g(return)e(a)i Fq(NULL)e Fr(p)s(oin)m(ter.)3350
3153 y([F)-8 b(unction])-3599 b Fg(HIST_ENTRY)55 b(*)e(history_get)c
Ff(\()p Fj(in)m(t)31 b(o\013set)p Ff(\))390 3263 y Fr(Return)41
-b(the)g(history)g(en)m(try)h(at)g(p)s(osition)g Fj(o\013set)r
-Fr(,)j(starting)d(from)f Fq(history_base)d Fr(\(see)k(Sec-)390
+b(the)g(history)h(en)m(try)g(at)g(p)s(osition)g Fj(o\013set)p
+Fr(,)j(starting)e(from)e Fq(history_base)d Fr(\(see)k(Sec-)390
3372 y(tion)32 b(2.4)i([History)e(V)-8 b(ariables],)35
b(page)d(8\).)47 b(If)31 b(there)i(is)f(no)g(en)m(try)g(there,)h(or)f
(if)g Fj(o\013set)j Fr(is)d(greater)390 3482 y(than)e(the)h(history)f
@@ -3658,9 +6151,9 @@ b(page)d(8\).)47 b(If)31 b(there)i(is)f(no)g(en)m(try)g(there,)h(or)f
3668 y([F)-8 b(unction])-3599 b Fg(time_t)54 b(history_get_time)c
Ff(\()p Fj(HIST)p 1657 3668 28 4 v 40 w(ENTR)-8 b(Y)30
b(*en)m(try)p Ff(\))390 3778 y Fr(Return)g(the)g(time)h(stamp)f(asso)s
-(ciated)i(with)e(the)h(history)f(en)m(try)h Fj(en)m(try)8
-b Fr(.)3350 3963 y([F)-8 b(unction])-3599 b Fg(int)53
-b(history_total_bytes)e Ff(\()p Fj(v)m(oid)p Ff(\))390
+(ciated)i(with)e(the)h(history)f(en)m(try)h Fj(en)m(try)p
+Fr(.)3350 3963 y([F)-8 b(unction])-3599 b Fg(int)53 b
+(history_total_bytes)e Ff(\()p Fj(v)m(oid)p Ff(\))390
4073 y Fr(Return)27 b(the)h(n)m(um)m(b)s(er)e(of)i(b)m(ytes)g(that)g
(the)g(primary)e(history)i(en)m(tries)g(are)g(using.)39
b(This)27 b(function)390 4183 y(returns)i(the)i(sum)e(of)i(the)f
@@ -3670,9 +6163,9 @@ b(.)150 4383 y Fi(2.3.4)63 b(Mo)m(ving)41 b(Around)h(the)f(History)g
h(index)f(in)m(to)h(the)f(history)h(list)g(to)g(b)s(e)f(set)h(or)f(c)m
(hanged.)3350 4716 y([F)-8 b(unction])-3599 b Fg(int)53
b(history_set_pos)d Ff(\()p Fj(in)m(t)31 b(p)s(os)p Ff(\))390
-4825 y Fr(Set)37 b(the)f(curren)m(t)g(history)h(o\013set)g(to)g
-Fj(p)s(os)t Fr(,)g(an)g(absolute)g(index)f(in)m(to)h(the)f(list.)60
-b(Returns)35 b(1)i(on)390 4935 y(success,)31 b(0)g(if)f
+4825 y Fr(Set)37 b(the)g(curren)m(t)f(history)g(o\013set)i(to)f
+Fj(p)s(os)p Fr(,)h(an)f(absolute)g(index)f(in)m(to)i(the)e(list.)60
+b(Returns)36 b(1)h(on)390 4935 y(success,)31 b(0)g(if)f
Fj(p)s(os)j Fr(is)e(less)f(than)h(zero)g(or)f(greater)i(than)e(the)g(n)
m(um)m(b)s(er)f(of)i(history)f(en)m(tries.)3350 5121
y([F)-8 b(unction])-3599 b Fg(HIST_ENTRY)55 b(*)e(previous_history)d
@@ -3702,9 +6195,9 @@ Fj(anc)m(hored)p Fr(,)i(meaning)g(that)g(the)f(string)h(m)m(ust)f(matc)
m(h)h(at)g(the)g(b)s(eginning)e(of)i(the)150 1198 y(history)e(en)m(try)
-8 b(.)3350 1391 y([F)g(unction])-3599 b Fg(int)53 b(history_search)d
Ff(\()p Fj(const)31 b(c)m(har)g(*string,)g(in)m(t)g(direction)p
-Ff(\))390 1501 y Fr(Searc)m(h)e(the)f(history)g(for)g
-Fj(string)8 b Fr(,)29 b(starting)g(at)g(the)f(curren)m(t)g(history)h
-(o\013set.)41 b(If)27 b Fj(direction)i Fr(is)g(less)390
+Ff(\))390 1501 y Fr(Searc)m(h)e(the)g(history)g(for)g
+Fj(string)p Fr(,)g(starting)h(at)f(the)g(curren)m(t)g(history)g
+(o\013set.)41 b(If)28 b Fj(direction)i Fr(is)f(less)390
1610 y(than)40 b(0,)j(then)c(the)h(searc)m(h)h(is)f(through)f(previous)
h(en)m(tries,)j(otherwise)d(through)g(subsequen)m(t)390
1720 y(en)m(tries.)i(If)30 b Fj(string)38 b Fr(is)30
@@ -3716,11 +6209,11 @@ b(found.)390 1939 y(Otherwise,)c(nothing)h(is)f(c)m(hanged,)h(and)f(a)h
(-1)g(is)f(returned.)3350 2133 y([F)-8 b(unction])-3599
b Fg(int)53 b(history_search_prefix)f Ff(\()p Fj(const)31
b(c)m(har)g(*string,)g(in)m(t)g(direction)p Ff(\))390
-2242 y Fr(Searc)m(h)40 b(the)g(history)g(for)g Fj(string)8
-b Fr(,)43 b(starting)d(at)h(the)f(curren)m(t)g(history)g(o\013set.)71
-b(The)39 b(searc)m(h)i(is)390 2352 y(anc)m(hored:)f(matc)m(hing)30
-b(lines)f(m)m(ust)g(b)s(egin)f(with)g Fj(string)8 b Fr(.)40
-b(If)29 b Fj(direction)g Fr(is)g(less)g(than)g(0,)g(then)g(the)390
+2242 y Fr(Searc)m(h)41 b(the)g(history)f(for)g Fj(string)p
+Fr(,)k(starting)d(at)g(the)g(curren)m(t)f(history)h(o\013set.)72
+b(The)40 b(searc)m(h)h(is)390 2352 y(anc)m(hored:)f(matc)m(hing)31
+b(lines)f(m)m(ust)f(b)s(egin)g(with)g Fj(string)p Fr(.)40
+b(If)29 b Fj(direction)h Fr(is)g(less)f(than)g(0,)i(then)e(the)390
2461 y(searc)m(h)j(is)f(through)g(previous)g(en)m(tries,)h(otherwise)g
(through)e(subsequen)m(t)h(en)m(tries.)44 b(If)31 b Fj(string)39
b Fr(is)390 2571 y(found,)33 b(then)f(the)h(curren)m(t)g(history)g
@@ -3730,10 +6223,10 @@ b Fr(is)390 2571 y(found,)33 b(then)f(the)h(curren)m(t)g(history)g
2874 y([F)-8 b(unction])-3599 b Fg(int)53 b(history_search_pos)e
Ff(\()p Fj(const)31 b(c)m(har)g(*string,)g(in)m(t)g(direction,)g(in)m
(t)g(p)s(os)p Ff(\))390 2984 y Fr(Searc)m(h)j(for)g Fj(string)42
-b Fr(in)33 b(the)i(history)e(list,)j(starting)f(at)g
-Fj(p)s(os)t Fr(,)f(an)g(absolute)g(index)g(in)m(to)h(the)f(list.)390
-3093 y(If)h Fj(direction)i Fr(is)e(negativ)m(e,)40 b(the)c(searc)m(h)g
-(pro)s(ceeds)f(bac)m(kw)m(ard)i(from)e Fj(p)s(os)t Fr(,)h(otherwise)g
+b Fr(in)34 b(the)h(history)f(list,)i(starting)f(at)g
+Fj(p)s(os)p Fr(,)g(an)f(absolute)h(index)e(in)m(to)j(the)e(list.)390
+3093 y(If)i Fj(direction)g Fr(is)g(negativ)m(e,)k(the)c(searc)m(h)h
+(pro)s(ceeds)f(bac)m(kw)m(ard)g(from)g Fj(p)s(os)p Fr(,)h(otherwise)f
(forw)m(ard.)390 3203 y(Returns)43 b(the)h(absolute)h(index)f(of)g(the)
g(history)g(elemen)m(t)h(where)f Fj(string)52 b Fr(w)m(as)44
b(found,)i(or)e(-1)390 3313 y(otherwise.)150 3516 y Fi(2.3.6)63
@@ -3746,55 +6239,53 @@ Ff(\()p Fj(const)32 b(c)m(har)e(*\014lename)p Ff(\))390
4076 y Fr(Add)f(the)h(con)m(ten)m(ts)h(of)f Fj(\014lename)k
Fr(to)d(the)f(history)f(list,)i(a)f(line)g(at)g(a)g(time.)41
b(If)29 b Fj(\014lename)35 b Fr(is)30 b Fq(NULL)p Fr(,)390
-4186 y(then)g(read)g(from)g(`)p Fq(~/.history)p Fr('.)39
-b(Returns)29 b(0)i(if)f(successful,)h(or)f Fq(errno)f
-Fr(if)h(not.)3350 4379 y([F)-8 b(unction])-3599 b Fg(int)53
-b(read_history_range)e Ff(\()p Fj(const)31 b(c)m(har)g(*\014lename,)g
-(in)m(t)g(from,)f(in)m(t)h(to)p Ff(\))390 4489 y Fr(Read)d(a)g(range)f
-(of)h(lines)g(from)f Fj(\014lename)5 b Fr(,)29 b(adding)e(them)g(to)h
-(the)g(history)f(list.)41 b(Start)28 b(reading)f(at)390
-4598 y(line)f Fj(from)g Fr(and)f(end)g(at)i Fj(to)5 b
-Fr(.)40 b(If)25 b Fj(from)h Fr(is)g(zero,)i(start)e(at)h(the)f(b)s
-(eginning.)38 b(If)26 b Fj(to)31 b Fr(is)26 b(less)g(than)g
-Fj(from)p Fr(,)390 4708 y(then)k(read)g(un)m(til)g(the)g(end)g(of)g
-(the)g(\014le.)41 b(If)30 b Fj(\014lename)35 b Fr(is)30
-b Fq(NULL)p Fr(,)g(then)f(read)h(from)g(`)p Fq(~/.history)p
-Fr('.)390 4818 y(Returns)f(0)i(if)g(successful,)f(or)g
-Fq(errno)f Fr(if)i(not.)3350 5011 y([F)-8 b(unction])-3599
+4186 y(then)g(read)g(from)g Fq(~/.history)p Fr(.)38 b(Returns)30
+b(0)g(if)h(successful,)f(or)g Fq(errno)f Fr(if)i(not.)3350
+4379 y([F)-8 b(unction])-3599 b Fg(int)53 b(read_history_range)e
+Ff(\()p Fj(const)31 b(c)m(har)g(*\014lename,)g(in)m(t)g(from,)f(in)m(t)
+h(to)p Ff(\))390 4489 y Fr(Read)d(a)g(range)h(of)f(lines)g(from)f
+Fj(\014lename)p Fr(,)i(adding)e(them)h(to)h(the)f(history)g(list.)40
+b(Start)28 b(reading)g(at)390 4598 y(line)f Fj(from)e
+Fr(and)h(end)f(at)i Fj(to)p Fr(.)41 b(If)25 b Fj(from)h
+Fr(is)g(zero,)i(start)f(at)g(the)f(b)s(eginning.)39 b(If)26
+b Fj(to)31 b Fr(is)c(less)f(than)g Fj(from)p Fr(,)390
+4708 y(then)33 b(read)g(un)m(til)g(the)g(end)g(of)g(the)g(\014le.)49
+b(If)33 b Fj(\014lename)38 b Fr(is)33 b Fq(NULL)p Fr(,)g(then)g(read)g
+(from)f Fq(~/.history)p Fr(.)390 4818 y(Returns)d(0)i(if)g(successful,)
+f(or)g Fq(errno)f Fr(if)i(not.)3350 5011 y([F)-8 b(unction])-3599
b Fg(int)53 b(write_history)d Ff(\()p Fj(const)31 b(c)m(har)g
(*\014lename)p Ff(\))390 5121 y Fr(W)-8 b(rite)36 b(the)e(curren)m(t)h
-(history)f(to)h Fj(\014lename)5 b Fr(,)36 b(o)m(v)m(erwriting)g
+(history)f(to)h Fj(\014lename)p Fr(,)h(o)m(v)m(erwriting)g
Fj(\014lename)k Fr(if)34 b(necessary)-8 b(.)54 b(If)34
-b Fj(\014lename)390 5230 y Fr(is)e Fq(NULL)p Fr(,)g(then)g(write)g(the)
-h(history)f(list)h(to)g(`)p Fq(~/.history)p Fr('.)44
-b(Returns)31 b(0)i(on)f(success,)h(or)f Fq(errno)390
-5340 y Fr(on)e(a)h(read)f(or)h(write)f(error.)p eop end
+b Fj(\014lename)390 5230 y Fr(is)27 b Fq(NULL)p Fr(,)g(then)g(write)g
+(the)h(history)f(list)g(to)h Fq(~/.history)p Fr(.)37
+b(Returns)26 b(0)i(on)f(success,)h(or)f Fq(errno)f Fr(on)390
+5340 y(a)31 b(read)f(or)g(write)h(error.)p eop end
%%Page: 8 11
TeXDict begin 8 10 bop 150 -116 a Fr(Chapter)30 b(2:)41
b(Programming)30 b(with)g(GNU)h(History)1780 b(8)3350
299 y([F)-8 b(unction])-3599 b Fg(int)53 b(append_history)d
Ff(\()p Fj(in)m(t)31 b(nelemen)m(ts,)h(const)f(c)m(har)f(*\014lename)p
-Ff(\))390 408 y Fr(App)s(end)i(the)j(last)g Fj(nelemen)m(ts)k
-Fr(of)34 b(the)h(history)f(list)h(to)g Fj(\014lename)5
-b Fr(.)53 b(If)34 b Fj(\014lename)39 b Fr(is)c Fq(NULL)p
-Fr(,)f(then)390 518 y(app)s(end)29 b(to)i(`)p Fq(~/.history)p
-Fr('.)38 b(Returns)30 b(0)g(on)h(success,)g(or)f Fq(errno)f
-Fr(on)h(a)h(read)f(or)h(write)f(error.)3350 705 y([F)-8
-b(unction])-3599 b Fg(int)53 b(history_truncate_file)f
-Ff(\()p Fj(const)31 b(c)m(har)g(*\014lename,)g(in)m(t)g(nlines)p
-Ff(\))390 814 y Fr(T)-8 b(runcate)38 b(the)h(history)f(\014le)g
-Fj(\014lename)5 b Fr(,)41 b(lea)m(ving)e(only)g(the)f(last)h
-Fj(nlines)j Fr(lines.)64 b(If)37 b Fj(\014lename)44 b
-Fr(is)390 924 y Fq(NULL)p Fr(,)29 b(then)i(`)p Fq(~/.history)p
-Fr(')d(is)i(truncated.)41 b(Returns)29 b(0)i(on)f(success,)h(or)f
-Fq(errno)f Fr(on)i(failure.)150 1124 y Fi(2.3.7)63 b(History)41
+Ff(\))390 408 y Fr(App)s(end)j(the)i(last)g Fj(nelemen)m(ts)k
+Fr(of)c(the)g(history)f(list)i(to)f Fj(\014lename)p Fr(.)54
+b(If)34 b Fj(\014lename)40 b Fr(is)34 b Fq(NULL)p Fr(,)h(then)390
+518 y(app)s(end)29 b(to)i Fq(~/.history)p Fr(.)38 b(Returns)29
+b(0)i(on)f(success,)h(or)f Fq(errno)f Fr(on)i(a)f(read)h(or)f(write)h
+(error.)3350 705 y([F)-8 b(unction])-3599 b Fg(int)53
+b(history_truncate_file)f Ff(\()p Fj(const)31 b(c)m(har)g(*\014lename,)
+g(in)m(t)g(nlines)p Ff(\))390 814 y Fr(T)-8 b(runcate)39
+b(the)f(history)h(\014le)f Fj(\014lename)p Fr(,)j(lea)m(ving)f(only)f
+(the)g(last)g Fj(nlines)j Fr(lines.)65 b(If)38 b Fj(\014lename)44
+b Fr(is)390 924 y Fq(NULL)p Fr(,)29 b(then)i Fq(~/.history)c
+Fr(is)k(truncated.)40 b(Returns)30 b(0)g(on)h(success,)g(or)f
+Fq(errno)f Fr(on)h(failure.)150 1124 y Fi(2.3.7)63 b(History)41
b(Expansion)150 1271 y Fr(These)30 b(functions)g(implemen)m(t)h
(history)f(expansion.)3350 1457 y([F)-8 b(unction])-3599
b Fg(int)53 b(history_expand)d Ff(\()p Fj(c)m(har)31
-b(*string,)g(c)m(har)g(**output)p Ff(\))390 1567 y Fr(Expand)h
-Fj(string)8 b Fr(,)35 b(placing)f(the)g(result)g(in)m(to)g
-Fj(output)r Fr(,)h(a)f(p)s(oin)m(ter)g(to)g(a)g(string)g(\(see)g
-(Section)h(1.1)390 1677 y([History)c(In)m(teraction],)i(page)e(1\).)41
+b(*string,)g(c)m(har)g(**output)p Ff(\))390 1567 y Fr(Expand)i
+Fj(string)p Fr(,)j(placing)f(the)f(result)h(in)m(to)g
+Fj(output)p Fr(,)g(a)g(p)s(oin)m(ter)f(to)h(a)g(string)f(\(see)i
+(Section)f(1.1)390 1677 y([History)c(In)m(teraction],)i(page)e(1\).)41
b(Returns:)390 1838 y Fq(0)432 b Fr(If)37 b(no)g(expansions)g(to)s(ok)i
(place)f(\(or,)i(if)d(the)h(only)f(c)m(hange)i(in)e(the)g(text)i(w)m
(as)f(the)870 1947 y(remo)m(v)-5 b(al)31 b(of)g(escap)s(e)f(c)m
@@ -3805,16 +6296,16 @@ b(Returns:)390 1838 y Fq(0)432 b Fr(If)37 b(no)g(expansions)g(to)s(ok)i
(should)g(b)s(e)g(displa)m(y)m(ed,)i(but)e(not)h(executed,)h(as)f(with)
f(the)h Fq(:p)870 2538 y Fr(mo)s(di\014er)h(\(see)j(Section)f(1.1.3)h
([Mo)s(di\014ers],)e(page)i(2\).)390 2699 y(If)e(an)g(error)g(o)s
-(curred)f(in)i(expansion,)f(then)g Fj(output)i Fr(con)m(tains)g(a)e
-(descriptiv)m(e)i(error)e(message.)3350 2886 y([F)-8
+(ccurred)g(in)g(expansion,)g(then)g Fj(output)i Fr(con)m(tains)g(a)f
+(descriptiv)m(e)g(error)f(message.)3350 2886 y([F)-8
b(unction])-3599 b Fg(char)54 b(*)e(get_history_event)f
Ff(\()p Fj(const)31 b(c)m(har)g(*string,)g(in)m(t)g(*cindex,)g(in)m(t)g
-(qc)m(har)p Ff(\))390 2995 y Fr(Returns)44 b(the)h(text)h(of)g(the)f
-(history)g(ev)m(en)m(t)h(b)s(eginning)f(at)g Fj(string)53
-b Fq(+)45 b Fj(*cindex)6 b Fr(.)85 b Fj(*cindex)52 b
-Fr(is)390 3105 y(mo)s(di\014ed)28 b(to)i(p)s(oin)m(t)f(to)h(after)g
-(the)g(ev)m(en)m(t)h(sp)s(eci\014er.)39 b(A)m(t)31 b(function)e(en)m
-(try)-8 b(,)30 b Fj(cindex)36 b Fr(p)s(oin)m(ts)29 b(to)h(the)390
+(qc)m(har)p Ff(\))390 2995 y Fr(Returns)45 b(the)g(text)i(of)e(the)h
+(history)f(ev)m(en)m(t)i(b)s(eginning)e(at)h Fj(string)53
+b Fq(+)45 b Fj(*cindex)p Fr(.)87 b Fj(*cindex)52 b Fr(is)390
+3105 y(mo)s(di\014ed)28 b(to)i(p)s(oin)m(t)f(to)h(after)g(the)g(ev)m
+(en)m(t)h(sp)s(eci\014er.)39 b(A)m(t)31 b(function)e(en)m(try)-8
+b(,)30 b Fj(cindex)36 b Fr(p)s(oin)m(ts)29 b(to)h(the)390
3214 y(index)35 b(in)m(to)i Fj(string)44 b Fr(where)35
b(the)h(history)g(ev)m(en)m(t)h(sp)s(eci\014cation)g(b)s(egins.)57
b Fj(qc)m(har)42 b Fr(is)36 b(a)g(c)m(haracter)390 3324
@@ -3822,29 +6313,28 @@ y(that)27 b(is)g(allo)m(w)m(ed)i(to)f(end)e(the)h(ev)m(en)m(t)h(sp)s
(eci\014cation)g(in)f(addition)g(to)g(the)g(\\normal")h(terminating)390
3434 y(c)m(haracters.)3350 3620 y([F)-8 b(unction])-3599
b Fg(char)54 b(**)e(history_tokenize)f Ff(\()p Fj(const)31
-b(c)m(har)g(*string)p Ff(\))390 3730 y Fr(Return)f(an)g(arra)m(y)h(of)f
-(tok)m(ens)i(parsed)d(out)i(of)g Fj(string)8 b Fr(,)30
-b(m)m(uc)m(h)h(as)f(the)h(shell)f(migh)m(t.)42 b(The)30
-b(tok)m(ens)390 3839 y(are)h(split)g(on)f(the)h(c)m(haracters)h(in)e
-(the)h Fj(history)p 2006 3839 28 4 v 40 w(w)m(ord)p 2241
-3839 V 39 w(delimiters)k Fr(v)-5 b(ariable,)32 b(and)e(shell)g(quoting)
-390 3949 y(con)m(v)m(en)m(tions)i(are)f(ob)s(ey)m(ed.)3350
+b(c)m(har)g(*string)p Ff(\))390 3730 y Fr(Return)f(an)h(arra)m(y)g(of)g
+(tok)m(ens)h(parsed)e(out)h(of)g Fj(string)p Fr(,)h(m)m(uc)m(h)e(as)i
+(the)f(shell)g(migh)m(t.)43 b(The)30 b(tok)m(ens)390
+3839 y(are)h(split)g(on)f(the)h(c)m(haracters)h(in)e(the)h
+Fj(history)p 2006 3839 28 4 v 40 w(w)m(ord)p 2241 3839
+V 39 w(delimiters)k Fr(v)-5 b(ariable,)32 b(and)e(shell)g(quoting)390
+3949 y(con)m(v)m(en)m(tions)i(are)f(ob)s(ey)m(ed.)3350
4135 y([F)-8 b(unction])-3599 b Fg(char)54 b(*)e(history_arg_extract)f
Ff(\()p Fj(in)m(t)32 b(\014rst,)d(in)m(t)i(last,)h(const)f(c)m(har)f
(*string)p Ff(\))390 4245 y Fr(Extract)41 b(a)g(string)f(segmen)m(t)i
(consisting)f(of)f(the)h Fj(\014rst)g Fr(through)f Fj(last)j
-Fr(argumen)m(ts)e(presen)m(t)f(in)390 4354 y Fj(string)8
-b Fr(.)40 b(Argumen)m(ts)31 b(are)g(split)f(using)g Fq
-(history_tokenize)p Fr(.)150 4588 y Fp(2.4)68 b(History)46
-b(V)-11 b(ariables)150 4748 y Fr(This)26 b(section)i(describ)s(es)e
-(the)h(externally-visible)i(v)-5 b(ariables)28 b(exp)s(orted)e(b)m(y)h
-(the)g Fk(gnu)g Fr(History)g(Library)-8 b(.)3371 4934
-y([V)g(ariable])-3598 b Fg(int)53 b(history_base)390
-5044 y Fr(The)30 b(logical)j(o\013set)e(of)g(the)f(\014rst)g(en)m(try)g
-(in)h(the)f(history)g(list.)3371 5230 y([V)-8 b(ariable])-3598
-b Fg(int)53 b(history_length)390 5340 y Fr(The)30 b(n)m(um)m(b)s(er)f
-(of)h(en)m(tries)i(curren)m(tly)e(stored)h(in)f(the)g(history)g(list.)p
-eop end
+Fr(argumen)m(ts)e(presen)m(t)f(in)390 4354 y Fj(string)p
+Fr(.)h(Argumen)m(ts)30 b(are)h(split)f(using)g Fq(history_tokenize)p
+Fr(.)150 4588 y Fp(2.4)68 b(History)46 b(V)-11 b(ariables)150
+4748 y Fr(This)26 b(section)i(describ)s(es)e(the)h(externally-visible)i
+(v)-5 b(ariables)28 b(exp)s(orted)e(b)m(y)h(the)g Fk(gnu)g
+Fr(History)g(Library)-8 b(.)3371 4934 y([V)g(ariable])-3598
+b Fg(int)53 b(history_base)390 5044 y Fr(The)30 b(logical)j(o\013set)e
+(of)g(the)f(\014rst)g(en)m(try)g(in)h(the)f(history)g(list.)3371
+5230 y([V)-8 b(ariable])-3598 b Fg(int)53 b(history_length)390
+5340 y Fr(The)30 b(n)m(um)m(b)s(er)f(of)h(en)m(tries)i(curren)m(tly)e
+(stored)h(in)f(the)g(history)g(list.)p eop end
%%Page: 9 12
TeXDict begin 9 11 bop 150 -116 a Fr(Chapter)30 b(2:)41
b(Programming)30 b(with)g(GNU)h(History)1780 b(9)3371
@@ -3895,14 +6385,13 @@ b(The)30 b(default)h(is)f(empt)m(y)-8 b(.)3371 3887 y([V)g(ariable])
3997 y Fr(The)29 b(list)i(of)f(c)m(haracters)h(whic)m(h)e(inhibit)h
(history)g(expansion)f(if)h(found)e(immediately)j(follo)m(wing)390
4106 y Fj(history)p 672 4106 V 40 w(expansion)p 1104
-4106 V 40 w(c)m(har)7 b Fr(.)41 b(The)29 b(default)i(is)f(space,)i
-(tab,)e(newline,)h(carriage)h(return,)d(and)h(`)p Fq(=)p
-Fr('.)3371 4331 y([V)-8 b(ariable])-3598 b Fg(int)53
-b(history_quotes_inhibi)q(t_ex)q(pan)q(sio)q(n)390 4440
-y Fr(If)29 b(non-zero,)h(single-quoted)g(w)m(ords)f(are)g(not)h
-(scanned)f(for)g(the)g(history)g(expansion)g(c)m(haracter.)390
-4550 y(The)h(default)g(v)-5 b(alue)31 b(is)g(0.)3371
-4774 y([V)-8 b(ariable])-3598 b Fg(rl_linebuf_func_t)57
+4106 V 40 w(c)m(har)p Fr(.)41 b(The)30 b(default)g(is)h(space,)g(tab,)g
+(newline,)f(carriage)i(return,)e(and)g(`)p Fq(=)p Fr('.)3371
+4331 y([V)-8 b(ariable])-3598 b Fg(int)53 b(history_quotes_inhibi)q
+(t_ex)q(pan)q(sio)q(n)390 4440 y Fr(If)29 b(non-zero,)h(single-quoted)g
+(w)m(ords)f(are)g(not)h(scanned)f(for)g(the)g(history)g(expansion)g(c)m
+(haracter.)390 4550 y(The)h(default)g(v)-5 b(alue)31
+b(is)g(0.)3371 4774 y([V)-8 b(ariable])-3598 b Fg(rl_linebuf_func_t)57
b(*)c(history_inhibit_expans)q(ion)q(_fu)q(ncti)q(on)390
4884 y Fr(This)32 b(should)h(b)s(e)f(set)i(to)g(the)g(address)e(of)i(a)
f(function)g(that)h(tak)m(es)h(t)m(w)m(o)g(argumen)m(ts:)46
@@ -4098,55 +6587,55 @@ b(is)f(not)h(T)-8 b(ransparen)m(t)34 b(if)g(used)g(for)g(an)m(y)g
Fr(without)330 2395 y(markup,)37 b(T)-8 b(exinfo)36 b(input)f(format,)j
(LaT)1759 2414 y(E)1810 2395 y(X)e(input)f(format,)j
Fd(SGML)f Fr(or)f Fd(XML)g Fr(using)g(a)g(publicly)330
-2504 y(a)m(v)-5 b(ailable)42 b Fd(DTD)p Fr(,)g(and)d
-(standard-conforming)h(simple)g Fd(HTML)p Fr(,)g(P)m(ostScript)h(or)f
-Fd(PDF)g Fr(designed)330 2614 y(for)e(h)m(uman)g(mo)s(di\014cation.)65
-b(Examples)38 b(of)h(transparen)m(t)f(image)i(formats)e(include)g
-Fd(PNG)p Fr(,)h Fd(X)n(CF)330 2724 y Fr(and)h Fd(JPG)p
-Fr(.)g(Opaque)h(formats)g(include)f(proprietary)g(formats)h(that)h(can)
-f(b)s(e)f(read)g(and)h(edited)330 2833 y(only)54 b(b)m(y)f(proprietary)
-h(w)m(ord)f(pro)s(cessors,)59 b Fd(SGML)54 b Fr(or)f
-Fd(XML)h Fr(for)g(whic)m(h)f(the)h Fd(DTD)g Fr(and/or)330
-2943 y(pro)s(cessing)61 b(to)s(ols)h(are)f(not)g(generally)i(a)m(v)-5
-b(ailable,)71 b(and)60 b(the)h(mac)m(hine-generated)j
-Fd(HTML)p Fr(,)330 3052 y(P)m(ostScript)31 b(or)f Fd(PDF)h
-Fr(pro)s(duced)d(b)m(y)j(some)f(w)m(ord)g(pro)s(cessors)g(for)g(output)
-g(purp)s(oses)f(only)-8 b(.)330 3203 y(The)34 b(\\Title)h(P)m(age")i
-(means,)e(for)f(a)h(prin)m(ted)f(b)s(o)s(ok,)h(the)f(title)i(page)f
-(itself,)h(plus)e(suc)m(h)f(follo)m(wing)330 3313 y(pages)28
-b(as)g(are)g(needed)g(to)g(hold,)g(legibly)-8 b(,)30
-b(the)e(material)h(this)e(License)i(requires)e(to)h(app)s(ear)f(in)h
-(the)330 3422 y(title)g(page.)40 b(F)-8 b(or)28 b(w)m(orks)e(in)g
-(formats)h(whic)m(h)g(do)f(not)h(ha)m(v)m(e)h(an)m(y)e(title)j(page)e
-(as)g(suc)m(h,)g(\\Title)h(P)m(age")330 3532 y(means)j(the)f(text)i
-(near)e(the)h(most)g(prominen)m(t)g(app)s(earance)f(of)h(the)g(w)m
-(ork's)g(title,)h(preceding)f(the)330 3641 y(b)s(eginning)f(of)g(the)h
-(b)s(o)s(dy)e(of)h(the)h(text.)330 3792 y(The)j(\\publisher")g(means)h
-(an)m(y)f(p)s(erson)g(or)h(en)m(tit)m(y)h(that)f(distributes)f(copies)i
-(of)e(the)h(Do)s(cumen)m(t)330 3902 y(to)c(the)g(public.)330
-4052 y(A)f(section)h(\\En)m(titled)g(XYZ")f(means)f(a)h(named)g
-(subunit)e(of)h(the)h(Do)s(cumen)m(t)h(whose)e(title)i(either)330
-4162 y(is)d(precisely)g(XYZ)g(or)f(con)m(tains)i(XYZ)f(in)f(paren)m
-(theses)i(follo)m(wing)g(text)g(that)f(translates)h(XYZ)e(in)330
-4271 y(another)e(language.)40 b(\(Here)26 b(XYZ)f(stands)f(for)h(a)g
-(sp)s(eci\014c)g(section)h(name)f(men)m(tioned)h(b)s(elo)m(w,)g(suc)m
-(h)330 4381 y(as)i(\\Ac)m(kno)m(wledgemen)m(ts",)33 b(\\Dedications",)e
-(\\Endorsemen)m(ts",)e(or)f(\\History".\))42 b(T)-8 b(o)29
-b(\\Preserv)m(e)330 4491 y(the)34 b(Title")h(of)e(suc)m(h)h(a)g
-(section)g(when)f(y)m(ou)h(mo)s(dify)e(the)i(Do)s(cumen)m(t)h(means)e
-(that)h(it)g(remains)g(a)330 4600 y(section)e(\\En)m(titled)f(XYZ")g
-(according)g(to)g(this)g(de\014nition.)330 4751 y(The)c(Do)s(cumen)m(t)
-i(ma)m(y)f(include)f(W)-8 b(arran)m(t)m(y)30 b(Disclaimers)f(next)f(to)
-g(the)g(notice)h(whic)m(h)e(states)i(that)330 4861 y(this)34
-b(License)g(applies)g(to)h(the)f(Do)s(cumen)m(t.)52 b(These)33
-b(W)-8 b(arran)m(t)m(y)36 b(Disclaimers)f(are)g(considered)e(to)330
-4970 y(b)s(e)k(included)g(b)m(y)g(reference)h(in)g(this)f(License,)j
-(but)d(only)h(as)g(regards)f(disclaiming)i(w)m(arran)m(ties:)330
-5080 y(an)m(y)e(other)g(implication)i(that)e(these)g(W)-8
-b(arran)m(t)m(y)39 b(Disclaimers)f(ma)m(y)g(ha)m(v)m(e)g(is)f(v)m(oid)g
-(and)f(has)h(no)330 5189 y(e\013ect)32 b(on)e(the)h(meaning)f(of)h
-(this)f(License.)199 5340 y(2.)61 b(VERBA)-8 b(TIM)31
-b(COPYING)p eop end
+2504 y(a)m(v)-5 b(ailable)42 b Fd(DTD)p Fr(,)h(and)c
+(standard-conforming)g(simple)h Fd(HTML)p Fr(,)i(P)m(ostScript)e(or)f
+Fd(PDF)h Fr(designed)330 2614 y(for)e(h)m(uman)f(mo)s(di\014cation.)65
+b(Examples)38 b(of)h(transparen)m(t)f(image)h(formats)g(include)f
+Fd(PNG)p Fr(,)i Fd(X)n(CF)330 2724 y Fr(and)e Fd(JPG)p
+Fr(.)64 b(Opaque)38 b(formats)h(include)f(proprietary)h(formats)f(that)
+h(can)g(b)s(e)f(read)h(and)f(edited)330 2833 y(only)54
+b(b)m(y)f(proprietary)h(w)m(ord)f(pro)s(cessors,)59 b
+Fd(SGML)54 b Fr(or)f Fd(XML)h Fr(for)g(whic)m(h)f(the)h
+Fd(DTD)g Fr(and/or)330 2943 y(pro)s(cessing)61 b(to)s(ols)h(are)f(not)g
+(generally)i(a)m(v)-5 b(ailable,)71 b(and)60 b(the)h(mac)m
+(hine-generated)j Fd(HTML)p Fr(,)330 3052 y(P)m(ostScript)31
+b(or)f Fd(PDF)h Fr(pro)s(duced)d(b)m(y)j(some)f(w)m(ord)g(pro)s
+(cessors)g(for)g(output)g(purp)s(oses)f(only)-8 b(.)330
+3203 y(The)34 b(\\Title)h(P)m(age")i(means,)e(for)f(a)h(prin)m(ted)f(b)
+s(o)s(ok,)h(the)f(title)i(page)f(itself,)h(plus)e(suc)m(h)f(follo)m
+(wing)330 3313 y(pages)28 b(as)g(are)g(needed)g(to)g(hold,)g(legibly)-8
+b(,)30 b(the)e(material)h(this)e(License)i(requires)e(to)h(app)s(ear)f
+(in)h(the)330 3422 y(title)g(page.)40 b(F)-8 b(or)28
+b(w)m(orks)e(in)g(formats)h(whic)m(h)g(do)f(not)h(ha)m(v)m(e)h(an)m(y)e
+(title)j(page)e(as)g(suc)m(h,)g(\\Title)h(P)m(age")330
+3532 y(means)j(the)f(text)i(near)e(the)h(most)g(prominen)m(t)g(app)s
+(earance)f(of)h(the)g(w)m(ork's)g(title,)h(preceding)f(the)330
+3641 y(b)s(eginning)f(of)g(the)h(b)s(o)s(dy)e(of)h(the)h(text.)330
+3792 y(The)j(\\publisher")g(means)h(an)m(y)f(p)s(erson)g(or)h(en)m(tit)
+m(y)h(that)f(distributes)f(copies)i(of)e(the)h(Do)s(cumen)m(t)330
+3902 y(to)c(the)g(public.)330 4052 y(A)f(section)h(\\En)m(titled)g
+(XYZ")f(means)f(a)h(named)g(subunit)e(of)h(the)h(Do)s(cumen)m(t)h
+(whose)e(title)i(either)330 4162 y(is)d(precisely)g(XYZ)g(or)f(con)m
+(tains)i(XYZ)f(in)f(paren)m(theses)i(follo)m(wing)g(text)g(that)f
+(translates)h(XYZ)e(in)330 4271 y(another)e(language.)40
+b(\(Here)26 b(XYZ)f(stands)f(for)h(a)g(sp)s(eci\014c)g(section)h(name)f
+(men)m(tioned)h(b)s(elo)m(w,)g(suc)m(h)330 4381 y(as)i(\\Ac)m(kno)m
+(wledgemen)m(ts",)33 b(\\Dedications",)e(\\Endorsemen)m(ts",)e(or)f
+(\\History".\))42 b(T)-8 b(o)29 b(\\Preserv)m(e)330 4491
+y(the)34 b(Title")h(of)e(suc)m(h)h(a)g(section)g(when)f(y)m(ou)h(mo)s
+(dify)e(the)i(Do)s(cumen)m(t)h(means)e(that)h(it)g(remains)g(a)330
+4600 y(section)e(\\En)m(titled)f(XYZ")g(according)g(to)g(this)g
+(de\014nition.)330 4751 y(The)c(Do)s(cumen)m(t)i(ma)m(y)f(include)f(W)
+-8 b(arran)m(t)m(y)30 b(Disclaimers)f(next)f(to)g(the)g(notice)h(whic)m
+(h)e(states)i(that)330 4861 y(this)34 b(License)g(applies)g(to)h(the)f
+(Do)s(cumen)m(t.)52 b(These)33 b(W)-8 b(arran)m(t)m(y)36
+b(Disclaimers)f(are)g(considered)e(to)330 4970 y(b)s(e)k(included)g(b)m
+(y)g(reference)h(in)g(this)f(License,)j(but)d(only)h(as)g(regards)f
+(disclaiming)i(w)m(arran)m(ties:)330 5080 y(an)m(y)e(other)g
+(implication)i(that)e(these)g(W)-8 b(arran)m(t)m(y)39
+b(Disclaimers)f(ma)m(y)g(ha)m(v)m(e)g(is)f(v)m(oid)g(and)f(has)h(no)330
+5189 y(e\013ect)32 b(on)e(the)h(meaning)f(of)h(this)f(License.)199
+5340 y(2.)61 b(VERBA)-8 b(TIM)31 b(COPYING)p eop end
%%Page: 14 17
TeXDict begin 14 16 bop 150 -116 a Fr(App)s(endix)29
b(A:)h(GNU)h(F)-8 b(ree)32 b(Do)s(cumen)m(tation)g(License)1603
@@ -4574,8 +7063,8 @@ b(use)f(this)h(License)g(in)f(a)h(do)s(cumen)m(t)g(y)m(ou)f(ha)m(v)m(e)
i(written,)g(include)f(a)f(cop)m(y)i(of)f(the)f(License)h(in)g(the)150
568 y(do)s(cumen)m(t)30 b(and)g(put)g(the)g(follo)m(wing)i(cop)m(yrigh)
m(t)g(and)e(license)h(notices)g(just)f(after)h(the)g(title)h(page:)468
-680 y Fe(Copyright)42 b(\(C\))79 b Fc(year)88 b(your)40
-b(name)9 b Fe(.)468 767 y(Permission)42 b(is)e(granted)g(to)g(copy,)h
+680 y Fe(Copyright)42 b(\(C\))79 b Fc(year)g(your)40
+b(name)p Fe(.)468 767 y(Permission)i(is)e(granted)g(to)g(copy,)h
(distribute)g(and/or)g(modify)f(this)g(document)468 854
y(under)h(the)f(terms)g(of)g(the)g(GNU)g(Free)g(Documentation)i
(License,)f(Version)g(1.3)468 941 y(or)f(any)g(later)g(version)h
@@ -4589,20 +7078,20 @@ b(ron)m(t-Co)m(v)m(er)42 b(T)-8 b(exts)41 b(and)e(Bac)m(k-Co)m(v)m(er)k
(T)-8 b(exts,)43 b(replace)e(the)150 1447 y(\\with)6
b(.)22 b(.)g(.)12 b(T)-8 b(exts.")41 b(line)31 b(with)f(this:)547
1559 y Fe(with)40 b(the)g(Invariant)h(Sections)g(being)g
-Fc(list)f(their)g(titles)9 b Fe(,)41 b(with)547 1646
-y(the)f(Front-Cover)i(Texts)e(being)g Fc(list)9 b Fe(,)40
-b(and)g(with)g(the)g(Back-Cover)i(Texts)547 1733 y(being)e
-Fc(list)9 b Fe(.)275 1868 y Fr(If)34 b(y)m(ou)i(ha)m(v)m(e)g(In)m(v)-5
-b(arian)m(t)36 b(Sections)g(without)f(Co)m(v)m(er)h(T)-8
-b(exts,)38 b(or)d(some)g(other)h(com)m(bination)g(of)g(the)150
-1978 y(three,)31 b(merge)g(those)g(t)m(w)m(o)g(alternativ)m(es)i(to)e
-(suit)f(the)h(situation.)275 2112 y(If)23 b(y)m(our)h(do)s(cumen)m(t)f
-(con)m(tains)i(non)m(trivial)g(examples)g(of)f(program)f(co)s(de,)j(w)m
-(e)e(recommend)g(releasing)150 2222 y(these)44 b(examples)f(in)g
-(parallel)h(under)e(y)m(our)h(c)m(hoice)i(of)e(free)g(soft)m(w)m(are)h
-(license,)k(suc)m(h)43 b(as)g(the)g(GNU)150 2331 y(General)31
-b(Public)f(License,)i(to)f(p)s(ermit)e(their)i(use)f(in)g(free)g(soft)m
-(w)m(are.)p eop end
+Fc(list)f(their)g(titles)p Fe(,)h(with)547 1646 y(the)f(Front-Cover)i
+(Texts)e(being)g Fc(list)p Fe(,)h(and)f(with)g(the)g(Back-Cover)h
+(Texts)547 1733 y(being)f Fc(list)p Fe(.)275 1868 y Fr(If)34
+b(y)m(ou)i(ha)m(v)m(e)g(In)m(v)-5 b(arian)m(t)36 b(Sections)g(without)f
+(Co)m(v)m(er)h(T)-8 b(exts,)38 b(or)d(some)g(other)h(com)m(bination)g
+(of)g(the)150 1978 y(three,)31 b(merge)g(those)g(t)m(w)m(o)g
+(alternativ)m(es)i(to)e(suit)f(the)h(situation.)275 2112
+y(If)23 b(y)m(our)h(do)s(cumen)m(t)f(con)m(tains)i(non)m(trivial)g
+(examples)g(of)f(program)f(co)s(de,)j(w)m(e)e(recommend)g(releasing)150
+2222 y(these)44 b(examples)f(in)g(parallel)h(under)e(y)m(our)h(c)m
+(hoice)i(of)e(free)g(soft)m(w)m(are)h(license,)k(suc)m(h)43
+b(as)g(the)g(GNU)150 2331 y(General)31 b(Public)f(License,)i(to)f(p)s
+(ermit)e(their)i(use)f(in)g(free)g(soft)m(w)m(are.)p
+eop end
%%Page: 20 23
TeXDict begin 20 22 bop 150 -116 a Fr(App)s(endix)29
b(B:)i(Concept)f(Index)2391 b(20)150 299 y Fn(App)t(endix)52
diff --git a/doc/history.texi b/doc/history.texi
index 64945d8..a991fe5 100644
--- a/doc/history.texi
+++ b/doc/history.texi
@@ -2,33 +2,25 @@
@c %**start of header (This is for running Texinfo on a region.)
@setfilename history.info
@settitle GNU History Library
-@c %**end of header (This is for running Texinfo on a region.)
-
@include version.texi
+@c %**end of header (This is for running Texinfo on a region.)
+
@copying
This document describes the GNU History library
(version @value{VERSION}, @value{UPDATED}),
a programming tool that provides a consistent user interface for
recalling lines of previously typed input.
-Copyright @copyright{} 1988--2011 Free Software Foundation, Inc.
-
-Permission is granted to make and distribute verbatim copies of
-this manual provided the copyright notice and this permission notice
-are preserved on all copies.
+Copyright @copyright{} 1988--2014 Free Software Foundation, Inc.
@quotation
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with no
-Invariant Sections, with the Front-Cover texts being ``A GNU Manual'',
-and with the Back-Cover Texts as in (a) below. A copy of the license is
-included in the section entitled ``GNU Free Documentation License''.
-
-(a) The FSF's Back-Cover Text is: You are free to copy and modify
-this GNU manual. Buying copies from GNU Press supports the FSF in
-developing GNU and promoting software freedom.''
+Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
+A copy of the license is included in the section entitled
+``GNU Free Documentation License''.
@end quotation
@end copying
@@ -50,12 +42,6 @@ developing GNU and promoting software freedom.''
@vskip 0pt plus 1filll
@insertcopying
-@sp 1
-Published by the Free Software Foundation @*
-59 Temple Place, Suite 330, @*
-Boston, MA 02111-1307 @*
-USA @*
-
@end titlepage
@contents
diff --git a/doc/history_3.ps b/doc/history_3.ps
index c7a87fd..d7ba161 100644
--- a/doc/history_3.ps
+++ b/doc/history_3.ps
@@ -1,13 +1,13 @@
%!PS-Adobe-3.0
%%Creator: groff version 1.19.2
-%%CreationDate: Tue Feb 8 11:13:01 2011
+%%CreationDate: Tue Feb 11 16:57:26 2014
%%DocumentNeededResources: font Times-Roman
%%+ font Times-Bold
%%+ font Times-Italic
%%DocumentSuppliedResources: procset grops 1.19 2
%%Pages: 7
%%PageOrder: Ascend
-%%DocumentMedia: Default 595 842 0 () ()
+%%DocumentMedia: Default 612 792 0 () ()
%%Orientation: Portrait
%%EndComments
%%BeginDefaults
@@ -189,17 +189,17 @@ setpacking
%%EndProlog
%%BeginSetup
%%BeginFeature: *PageSize Default
-<< /PageSize [ 595 842 ] /ImagingBBox null >> setpagedevice
+<< /PageSize [ 612 792 ] /ImagingBBox null >> setpagedevice
%%EndFeature
%%IncludeResource: font Times-Roman
%%IncludeResource: font Times-Bold
%%IncludeResource: font Times-Italic
grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72
-def/PL 841.89 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron
-/Zcaron/scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef
+def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron
+/scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent
+/.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent
/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen
/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon
/semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O
@@ -291,9 +291,9 @@ G(nts are relati).15 E .3 -.15(ve t)-.25 H 2.5(ot).15 G
(This is a synon)5 E(ym for `!\2551'.)-.15 E F2(!)108 482.4 Q F3(string)
A F0 .865(Refer to the most recent command preceding the current positi\
on in the history list starting with)9.33 F F3(string)144 494.4 Q F0(.)
-.22 E F2(!?)108 506.4 Q F3(string)A F2([?])A F0 1.304(Refer to the most\
- recent command preceding the current postition in the history list con\
-taining)144 518.4 R F3(string)144 530.4 Q F0 5(.T).22 G(he trailing)-5 E
+.22 E F2(!?)108 506.4 Q F3(string)A F2([?])A F0 1.503(Refer to the most\
+ recent command preceding the current position in the history list cont\
+aining)144 518.4 R F3(string)144 530.4 Q F0 5(.T).22 G(he trailing)-5 E
F2(?)2.5 E F0(may be omitted if)2.5 E F3(string)2.84 E F0(is follo)2.72
E(wed immediately by a ne)-.25 E(wline.)-.25 E/F4 12/Times-Bold@0 SF(^)
108 547.4 Q F3(string1)-5 I F4(^)5 I F3(string2)-5 I F4(^)5 I F0 2.63
@@ -321,8 +321,11 @@ F2 2.5(0\()108 660 S(zer)-2.5 E(o\))-.18 E F0(The zeroth w)144 672 Q 2.5
(ord. F)-.1 F(or the shell, this is the command w)-.15 E(ord.)-.1 E F3
(n)108.36 684 Q F0(The)30.64 E F3(n)2.5 E F0(th w)A(ord.)-.1 E F2(^)108
696 Q F0(The \214rst ar)32.67 E 2.5(gument. That)-.18 F(is, w)2.5 E
-(ord 1.)-.1 E F2($)108 708 Q F0(The last ar)31 E(gument.)-.18 E
-(GNU History 6.2)72 768 Q(2010 August 12)132.895 E(1)197.055 E 0 Cg EP
+(ord 1.)-.1 E F2($)108 708 Q F0 .064(The last w)31 F 2.564(ord. This)-.1
+F .064(is usually the last ar)2.564 F .064(gument, b)-.18 F .064
+(ut will e)-.2 F .064(xpand to the zeroth w)-.15 F .063
+(ord if there is only)-.1 F(one w)144 720 Q(ord in the line.)-.1 E
+(GNU History 6.3)72 768 Q(2013 June 27)138.175 E(1)202.335 E 0 Cg EP
%%Page: 2 2
%%BeginPageSetup
BP
@@ -332,21 +335,21 @@ BP
(ord matched by the most recent `?)-.1 E/F2 10/Times-Italic@0 SF(string)
A F0(?' search.)A F2(x)108.77 96 Q F1<ad>A F2(y)A F0 2.5(Ar)20.65 G
(ange of w)-2.5 E(ords; `\255)-.1 E F2(y)A F0 2.5('a)C(bbre)-2.5 E
-(viates `0\255)-.25 E F2(y)A F0('.)A F1(*)108 108 Q F0 .316
-(All of the w)31 F .316(ords b)-.1 F .316(ut the zeroth.)-.2 F .315
+(viates `0\255)-.25 E F2(y)A F0('.)A F1(*)108 108 Q F0 .315
+(All of the w)31 F .315(ords b)-.1 F .315(ut the zeroth.)-.2 F .315
(This is a synon)5.315 F .315(ym for `)-.15 F F2(1\255$)A F0 2.815
-('. It)B .315(is not an error to use)2.815 F F1(*)2.815 E F0 .315
-(if there is)2.815 F(just one w)144 120 Q(ord in the e)-.1 E -.15(ve)
+('. It)B .315(is not an error to use)2.815 F F1(*)2.816 E F0 .316
+(if there is)2.816 F(just one w)144 120 Q(ord in the e)-.1 E -.15(ve)
-.25 G(nt; the empty string is returned in that case.).15 E F1(x*)108
132 Q F0(Abbre)26 E(viates)-.25 E F2(x\255$)2.5 E F0(.)A F1<78ad>108 144
Q F0(Abbre)25.3 E(viates)-.25 E F2(x\255$)2.5 E F0(lik)2.5 E(e)-.1 E F1
(x*)2.5 E F0 2.5(,b)C(ut omits the last w)-2.7 E(ord.)-.1 E(If a w)108
160.8 Q(ord designator is supplied without an e)-.1 E -.15(ve)-.25 G
(nt speci\214cation, the pre).15 E(vious command is used as the e)-.25 E
--.15(ve)-.25 G(nt.).15 E F1(Modi\214ers)87 177.6 Q F0 .183
-(After the optional w)108 189.6 R .183(ord designator)-.1 F 2.683(,t)-.4
-G .184(here may appear a sequence of one or more of the follo)-2.683 F
-.184(wing modi\214ers,)-.25 F(each preceded by a `:'.)108 201.6 Q F1(h)
+-.15(ve)-.25 G(nt.).15 E F1(Modi\214ers)87 177.6 Q F0 .184
+(After the optional w)108 189.6 R .184(ord designator)-.1 F 2.684(,t)-.4
+G .183(here may appear a sequence of one or more of the follo)-2.684 F
+.183(wing modi\214ers,)-.25 F(each preceded by a `:'.)108 201.6 Q F1(h)
108 218.4 Q F0(Remo)30.44 E .3 -.15(ve a t)-.15 H
(railing \214le name component, lea).15 E(ving only the head.)-.2 E F1
(t)108 230.4 Q F0(Remo)32.67 E .3 -.15(ve a)-.15 H
@@ -361,77 +364,77 @@ E -.15(xe)-.15 G(cute it.).15 E F1(q)108 278.4 Q F0
-.1 E F1(x)108 290.4 Q F0(Quote the substituted w)31 E(ords as with)-.1
E F1(q)2.5 E F0 2.5(,b)C(ut break into w)-2.7 E(ords at)-.1 E F1(blanks)
2.5 E F0(and ne)2.5 E(wlines.)-.25 E F1(s/)108 302.4 Q F2(old)A F1(/)A
-F2(ne)A(w)-.15 E F1(/)A F0(Substitute)144 314.4 Q F2(ne)3.082 E(w)-.15 E
-F0 .221(for the \214rst occurrence of)3.032 F F2(old)2.951 E F0 .221
+F2(ne)A(w)-.15 E F1(/)A F0(Substitute)144 314.4 Q F2(ne)3.081 E(w)-.15 E
+F0 .221(for the \214rst occurrence of)3.031 F F2(old)2.951 E F0 .221
(in the e)3.491 F -.15(ve)-.25 G .221(nt line.).15 F(An)5.221 E 2.721
-(yd)-.15 G .221(elimiter can be used in place)-2.721 F .616(of /.)144
+(yd)-.15 G .221(elimiter can be used in place)-2.721 F .617(of /.)144
326.4 R .617
(The \214nal delimiter is optional if it is the last character of the e)
-5.616 F -.15(ve)-.25 G .617(nt line.).15 F .617(The delimiter may)5.617
+5.617 F -.15(ve)-.25 G .617(nt line.).15 F .616(The delimiter may)5.616
F .666(be quoted in)144 338.4 R F2(old)3.396 E F0(and)3.936 E F2(ne)
3.526 E(w)-.15 E F0 .666(with a single backslash.)3.476 F .666
(If & appears in)5.666 F F2(ne)3.166 E(w)-.15 E F0 3.166(,i).31 G 3.166
(ti)-3.166 G 3.166(sr)-3.166 G .666(eplaced by)-3.166 F F2(old)3.166 E
-F0 5.666(.A).77 G .274(single backslash will quote the &.)144 350.4 R
-(If)5.274 E F2(old)3.004 E F0 .274(is null, it is set to the last)3.544
-F F2(old)3.005 E F0 .275(substituted, or)3.545 F 2.775(,i)-.4 G 2.775
-(fn)-2.775 G 2.775(op)-2.775 G(re)-2.775 E(vi-)-.25 E
+F0 5.666(.A).77 G .275(single backslash will quote the &.)144 350.4 R
+(If)5.275 E F2(old)3.004 E F0 .274(is null, it is set to the last)3.544
+F F2(old)3.004 E F0 .274(substituted, or)3.544 F 2.774(,i)-.4 G 2.774
+(fn)-2.774 G 2.774(op)-2.774 G(re)-2.774 E(vi-)-.25 E
(ous history substitutions took place, the last)144 362.4 Q F2(string)
2.84 E F0(in a)2.72 E F1(!?)2.5 E F2(string)A F1([?])A F0(search.)5 E F1
(&)108 374.4 Q F0(Repeat the pre)27.67 E(vious substitution.)-.25 E F1
-(g)108 386.4 Q F0 .398(Cause changes to be applied o)31 F -.15(ve)-.15 G
-2.898(rt).15 G .398(he entire e)-2.898 F -.15(ve)-.25 G .398(nt line.)
-.15 F .397(This is used in conjunction with `)5.398 F F1(:s)A F0 2.897
-('\()C(e.g.,)-2.897 E(`)144 398.4 Q F1(:gs/)A F2(old)A F1(/)A F2(ne)A(w)
--.15 E F1(/)A F0 1.218('\) or `)B F1(:&)A F0 3.718('. If)B 1.218
-(used with `)3.718 F F1(:s)A F0 1.218(', an)B 3.718(yd)-.15 G 1.219
-(elimiter can be used in place of /, and the \214nal)-3.718 F .09
+(g)108 386.4 Q F0 .397(Cause changes to be applied o)31 F -.15(ve)-.15 G
+2.897(rt).15 G .398(he entire e)-2.897 F -.15(ve)-.25 G .398(nt line.)
+.15 F .398(This is used in conjunction with `)5.398 F F1(:s)A F0 2.898
+('\()C(e.g.,)-2.898 E(`)144 398.4 Q F1(:gs/)A F2(old)A F1(/)A F2(ne)A(w)
+-.15 E F1(/)A F0 1.219('\) or `)B F1(:&)A F0 3.719('. If)B 1.219
+(used with `)3.719 F F1(:s)A F0 1.218(', an)B 3.718(yd)-.15 G 1.218
+(elimiter can be used in place of /, and the \214nal)-3.718 F .089
(delimiter is optional if it is the last character of the e)144 410.4 R
--.15(ve)-.25 G .089(nt line.).15 F(An)5.089 E F1(a)2.589 E F0 .089
-(may be used as a synon)2.589 F .089(ym for)-.15 F F1(g)144 422.4 Q F0
-(.)A F1(G)108 434.4 Q F0(Apply the follo)28.22 E(wing `)-.25 E F1(s)A F0
-2.5('m)C(odi\214er once to each w)-2.5 E(ord in the e)-.1 E -.15(ve)-.25
-G(nt line.).15 E/F3 10.95/Times-Bold@0 SF(PR)72 451.2 Q
+-.15(ve)-.25 G .09(nt line.).15 F(An)5.09 E F1(a)2.59 E F0 .09
+(may be used as a synon)2.59 F .09(ym for)-.15 F F1(g)144 422.4 Q F0(.)A
+F1(G)108 434.4 Q F0(Apply the follo)28.22 E(wing `)-.25 E F1(s)A F0 2.5
+('m)C(odi\214er once to each w)-2.5 E(ord in the e)-.1 E -.15(ve)-.25 G
+(nt line.).15 E/F3 10.95/Times-Bold@0 SF(PR)72 451.2 Q
(OGRAMMING WITH HIST)-.329 E(OR)-.197 E 2.738(YF)-.383 G(UNCTIONS)-2.738
E F0(This section describes ho)108 463.2 Q 2.5(wt)-.25 G 2.5(ou)-2.5 G
(se the History library in other programs.)-2.5 E F1(Intr)87 480 Q
-(oduction to History)-.18 E F0 .796
+(oduction to History)-.18 E F0 .797
(The programmer using the History library has a)108 492 R -.25(va)-.2 G
-.797(ilable functions for remembering lines on a history list,).25 F
-.308(associating arbitrary data with a line, remo)108 504 R .308
+.796(ilable functions for remembering lines on a history list,).25 F
+.307(associating arbitrary data with a line, remo)108 504 R .308
(ving lines from the list, searching through the list for a line con-)
-.15 F .303(taining an arbitrary te)108 516 R .303
(xt string, and referencing an)-.15 F 2.803(yl)-.15 G .303
(ine in the list directly)-2.803 F 5.303(.I)-.65 G 2.803(na)-5.303 G
-.303(ddition, a history)-2.803 F F2 -.2(ex)2.803 G(pansion).2 E F0
+.303(ddition, a history)-2.803 F F2 -.2(ex)2.802 G(pansion).2 E F0
(function is a)108 528 Q -.25(va)-.2 G(ilable which pro).25 E
(vides for a consistent user interf)-.15 E(ace across dif)-.1 E
(ferent programs.)-.25 E .059(The user using programs written with the \
History library has the bene\214t of a consistent user interf)108 544.8
-R .058(ace with a)-.1 F .917(set of well-kno)108 556.8 R .917
+R .059(ace with a)-.1 F .918(set of well-kno)108 556.8 R .917
(wn commands for manipulating the te)-.25 F .917(xt of pre)-.15 F .917
-(vious lines and using that te)-.25 F .917(xt in ne)-.15 F 3.418(wc)-.25
-G(om-)-3.418 E 4.184(mands. The)108 568.8 R 1.684(basic history manipul\
-ation commands are identical to the history substitution pro)4.184 F
-1.683(vided by)-.15 F F1(bash)108 580.8 Q F0(.)A .903
+(vious lines and using that te)-.25 F .917(xt in ne)-.15 F 3.417(wc)-.25
+G(om-)-3.417 E 4.183(mands. The)108 568.8 R 1.684(basic history manipul\
+ation commands are identical to the history substitution pro)4.183 F
+1.684(vided by)-.15 F F1(bash)108 580.8 Q F0(.)A .904
(If the programmer desires, he can use the Readline library)108 597.6 R
-3.403(,w)-.65 G .904(hich includes some history manipulation by)-3.403 F
+3.403(,w)-.65 G .903(hich includes some history manipulation by)-3.403 F
(def)108 609.6 Q(ault, and has the added adv)-.1 E
(antage of command line editing.)-.25 E .39(Before declaring an)108
626.4 R 2.89(yf)-.15 G .39(unctions using an)-2.89 F 2.89(yf)-.15 G .39
(unctionality the History library pro)-2.89 F .39
-(vides in other code, an appli-)-.15 F .066
-(cation writer should include the \214le)108 638.4 R F2(<r)4.232 E
-(eadline/history)-.37 E(.h>)-.55 E F0 .067(in an)4.232 F 2.567<798c>-.15
-G .067(le that uses the History library')-2.567 F 2.567(sf)-.55 G
-(eatures.)-2.567 E .539(It supplies e)108 650.4 R .538
+(vides in other code, an appli-)-.15 F .067
+(cation writer should include the \214le)108 638.4 R F2(<r)4.233 E
+(eadline/history)-.37 E(.h>)-.55 E F0 .067(in an)4.233 F 2.566<798c>-.15
+G .066(le that uses the History library')-2.566 F 2.566(sf)-.55 G
+(eatures.)-2.566 E .538(It supplies e)108 650.4 R .538
(xtern declarations for all of the library')-.15 F 3.038(sp)-.55 G .538
-(ublic functions and v)-3.038 F .538(ariables, and declares all of the)
+(ublic functions and v)-3.038 F .539(ariables, and declares all of the)
-.25 F(public data structures.)108 662.4 Q F1(History Storage)87 691.2 Q
F0(The history list is an array of history entries.)108 703.2 Q 2.5(Ah)5
G(istory entry is declared as follo)-2.5 E(ws:)-.25 E F2(typedef void *)
-108 720 Q F1(histdata_t;)2.5 E F0(GNU History 6.2)72 768 Q
-(2010 August 12)132.895 E(2)197.055 E 0 Cg EP
+108 720 Q F1(histdata_t;)2.5 E F0(GNU History 6.3)72 768 Q(2013 June 27)
+138.175 E(2)202.335 E 0 Cg EP
%%Page: 3 3
%%BeginPageSetup
BP
@@ -486,18 +489,18 @@ F1(const c)A(har *string)-.15 E F0(\))1.666 E
(Change the time stamp associated with the most recent history entry to)
108 614.4 Q F1(string)2.5 E F0(.)A F1(HIST_ENTR)108 638.4 Q 2.5(Y*)-.18
G F2 -.18(re)C(mo).18 E -.1(ve)-.1 G(_history).1 E F0(\()4.166 E F1
-(int whic)A(h)-.15 E F0(\))1.666 E(Remo)108 650.4 Q .353 -.15(ve h)-.15
-H .053(istory entry at of).15 F(fset)-.25 E F1(whic)2.553 E(h)-.15 E F0
+(int whic)A(h)-.15 E F0(\))1.666 E(Remo)108 650.4 Q .352 -.15(ve h)-.15
+H .052(istory entry at of).15 F(fset)-.25 E F1(whic)2.553 E(h)-.15 E F0
.053(from the history)2.553 F 5.053(.T)-.65 G .053(he remo)-5.053 F -.15
-(ve)-.15 G 2.553(de).15 G .052(lement is returned so you can free the)
+(ve)-.15 G 2.553(de).15 G .053(lement is returned so you can free the)
-2.553 F(line, data, and containing structure.)108 662.4 Q F1
(histdata_t)108 686.4 Q F2(fr)2.5 E(ee_history_entry)-.18 E F0(\()4.166
-E F1(HIST_ENTR)A 2.5(Y*)-.18 G(histent)-2.5 E F0(\))1.666 E .933
+E F1(HIST_ENTR)A 2.5(Y*)-.18 G(histent)-2.5 E F0(\))1.666 E .934
(Free the history entry)108 698.4 R F1(histent)3.433 E F0 .933(and an)
3.433 F 3.433(yh)-.15 G .933(istory library pri)-3.433 F -.25(va)-.25 G
-.933(te data associated with it.).25 F .934(Returns the applica-)5.933 F
+.933(te data associated with it.).25 F .933(Returns the applica-)5.933 F
(tion-speci\214c data so the caller can dispose of it.)108 710.4 Q
-(GNU History 6.2)72 768 Q(2010 August 12)132.895 E(3)197.055 E 0 Cg EP
+(GNU History 6.3)72 768 Q(2013 June 27)138.175 E(3)202.335 E 0 Cg EP
%%Page: 4 4
%%BeginPageSetup
BP
@@ -507,10 +510,10 @@ BP
(Y*)-.18 G/F2 10/Times-Bold@0 SF -.18(re)C(place_history_entry).18 E F0
(\()4.166 E F1(int whic)A -.834(h, const)-.15 F -.15(ch)2.5 G(ar *line)
.15 E 1.666(,h)-.1 G(istdata_t data)-1.666 E F0(\))3.332 E(Mak)108 96 Q
-3.063(et)-.1 G .563(he history entry at of)-3.063 F(fset)-.25 E F1(whic)
-3.063 E(h)-.15 E F0(ha)3.063 E -.15(ve)-.2 G F1(line)3.213 E F0(and)
-3.063 E F1(data)3.063 E F0 5.562(.T)C .562
-(his returns the old entry so the caller can dis-)-5.562 F(pose of an)
+3.062(et)-.1 G .562(he history entry at of)-3.062 F(fset)-.25 E F1(whic)
+3.062 E(h)-.15 E F0(ha)3.062 E -.15(ve)-.2 G F1(line)3.212 E F0(and)
+3.062 E F1(data)3.062 E F0 5.563(.T)C .563
+(his returns the old entry so the caller can dis-)-5.563 F(pose of an)
108 108 Q 2.5(ya)-.15 G(pplication-speci\214c data.)-2.5 E
(In the case of an in)5 E -.25(va)-.4 G(lid).25 E F1(whic)2.5 E(h)-.15 E
F0 2.5(,a)C F2(NULL)A F0(pointer is returned.)2.5 E F1(void)108 132 Q F2
@@ -534,10 +537,10 @@ G 2.5(ss).1 G 2.5(ti\215ed. The)-2.5 F -.25(va)2.5 G(lue is positi).25 E
functions return information about the entire history list or indi)108
304.8 Q(vidual list entries.)-.25 E F1(HIST_ENTR)108 328.8 Q 2.5(Y*)-.18
G(*)-2.5 E F2(history_list)2.5 E F0(\()4.166 E F1(void)A F0(\))1.666 E
-.708(Return a)108 340.8 R F2(NULL)3.208 E F0 .708(terminated array of)
-3.208 F F1(HIST_ENTR)3.208 E 3.208(Y*)-.18 G F0 .708
-(which is the current input history)B 5.707(.E)-.65 G .707
-(lement 0 of this)-5.707 F(list is the be)108 352.8 Q(ginning of time.)
+.707(Return a)108 340.8 R F2(NULL)3.207 E F0 .707(terminated array of)
+3.207 F F1(HIST_ENTR)3.207 E 3.208(Y*)-.18 G F0 .708
+(which is the current input history)B 5.708(.E)-.65 G .708
+(lement 0 of this)-5.708 F(list is the be)108 352.8 Q(ginning of time.)
-.15 E(If there is no history)5 E 2.5(,r)-.65 G(eturn)-2.5 E F2(NULL)2.5
E F0(.)A F1(int)108 376.8 Q F2(wher)2.5 E(e_history)-.18 E F0(\()4.166 E
F1(void)A F0(\))1.666 E(Returns the of)108 388.8 Q
@@ -546,21 +549,21 @@ F1(void)A F0(\))1.666 E(Returns the of)108 388.8 Q
(\))1.666 E 1.373
(Return the history entry at the current position, as determined by)108
424.8 R F2(wher)3.873 E(e_history\(\))-.18 E F0 6.373(.I)C 3.873(ft)
--6.373 G 1.374(here is no entry)-3.873 F(there, return a)108 436.8 Q F2
+-6.373 G 1.373(here is no entry)-3.873 F(there, return a)108 436.8 Q F2
(NULL)2.5 E F0(pointer)2.5 E(.)-.55 E F1(HIST_ENTR)108 460.8 Q 2.5(Y*)
-.18 G F2(history_get)A F0(\()4.166 E F1(int of)A(fset)-.18 E F0(\))
-1.666 E .288(Return the history entry at position)108 472.8 R F1(of)
+1.666 E .287(Return the history entry at position)108 472.8 R F1(of)
2.787 E(fset)-.18 E F0 2.787(,s)C .287(tarting from)-2.787 F F2
(history_base)2.787 E F0 5.287(.I)C 2.787(ft)-5.287 G .287
-(here is no entry there, or if)-2.787 F F1(of)2.787 E(fset)-.18 E F0
+(here is no entry there, or if)-2.787 F F1(of)2.788 E(fset)-.18 E F0
(is greater than the history length, return a)108 484.8 Q F2(NULL)2.5 E
F0(pointer)2.5 E(.)-.55 E F1(time_t)108 508.8 Q F2(history_get_time)2.5
E F0(\()4.166 E F1(HIST_ENTR)A 2.5(Y*)-.18 G F0(\))-.834 E(Return the t\
ime stamp associated with the history entry passed as the ar)108 520.8 Q
(gument.)-.18 E F1(int)108 544.8 Q F2(history_total_bytes)2.5 E F0(\()
-4.166 E F1(void)A F0(\))1.666 E .391
+4.166 E F1(void)A F0(\))1.666 E .392
(Return the number of bytes that the primary history entries are using.)
-108 556.8 R .392(This function returns the sum of the)5.392 F
+108 556.8 R .391(This function returns the sum of the)5.392 F
(lengths of all the lines in the history)108 568.8 Q(.)-.65 E F2(Mo)87
597.6 Q(ving Ar)-.1 E(ound the History List)-.18 E F0
(These functions allo)108 609.6 Q 2.5(wt)-.25 G(he current inde)-2.5 E
@@ -572,121 +575,121 @@ ime stamp associated with the history entry passed as the ar)108 520.8 Q
F F1(pos)3.29 E F0 .79(is less)3.29 F
(than zero or greater than the number of history entries.)108 657.6 Q F1
(HIST_ENTR)108 681.6 Q 2.5(Y*)-.18 G F2(pr)A -.15(ev)-.18 G
-(ious_history).15 E F0(\()4.166 E F1(void)A F0(\))1.666 E .207
-(Back up the current history of)108 693.6 R .207(fset to the pre)-.25 F
-.207(vious history entry)-.25 F 2.708(,a)-.65 G .208
-(nd return a pointer to that entry)-2.708 F 5.208(.I)-.65 G 2.708(ft)
--5.208 G .208(here is)-2.708 F(no pre)108 705.6 Q(vious entry)-.25 E 2.5
+(ious_history).15 E F0(\()4.166 E F1(void)A F0(\))1.666 E .208
+(Back up the current history of)108 693.6 R .208(fset to the pre)-.25 F
+.208(vious history entry)-.25 F 2.707(,a)-.65 G .207
+(nd return a pointer to that entry)-2.707 F 5.207(.I)-.65 G 2.707(ft)
+-5.207 G .207(here is)-2.707 F(no pre)108 705.6 Q(vious entry)-.25 E 2.5
(,r)-.65 G(eturn a)-2.5 E F2(NULL)2.5 E F0(pointer)2.5 E(.)-.55 E F1
(HIST_ENTR)108 729.6 Q 2.5(Y*)-.18 G F2(next_history)A F0(\()4.166 E F1
-(void)A F0(\))1.666 E(GNU History 6.2)72 768 Q(2010 August 12)132.895 E
-(4)197.055 E 0 Cg EP
+(void)A F0(\))1.666 E(GNU History 6.3)72 768 Q(2013 June 27)138.175 E(4)
+202.335 E 0 Cg EP
%%Page: 5 5
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF(HIST)72 48 Q(OR)-.18 E 357.18(Y\(3\) HIST)-.65 F
-(OR)-.18 E(Y\(3\))-.65 E(Mo)108 84 Q 1.047 -.15(ve t)-.15 H .747
-(he current history of).15 F .747(fset forw)-.25 F .746(ard to the ne)
--.1 F .746(xt history entry)-.15 F 3.246(,a)-.65 G .746
-(nd return the a pointer to that entry)-3.246 F 5.746(.I)-.65 G(f)-5.746
+(OR)-.18 E(Y\(3\))-.65 E(Mo)108 84 Q 1.046 -.15(ve t)-.15 H .746
+(he current history of).15 F .746(fset forw)-.25 F .746(ard to the ne)
+-.1 F .746(xt history entry)-.15 F 3.246(,a)-.65 G .747
+(nd return the a pointer to that entry)-3.246 F 5.747(.I)-.65 G(f)-5.747
E(there is no ne)108 96 Q(xt entry)-.15 E 2.5(,r)-.65 G(eturn a)-2.5 E
/F1 10/Times-Bold@0 SF(NULL)2.5 E F0(pointer)2.5 E(.)-.55 E F1(Sear)87
-124.8 Q(ching the History List)-.18 E F0 .005(These functions allo)108
-136.8 R 2.505(ws)-.25 G .006(earching of the history list for entries c\
-ontaining a speci\214c string.)-2.505 F .006(Searching may be)5.006 F
-1.452(performed both forw)108 148.8 R 1.452(ard and backw)-.1 F 1.451
-(ard from the current history position.)-.1 F 1.451(The search may be)
-6.451 F/F2 10/Times-Italic@0 SF(anc)3.951 E(hor)-.15 E(ed)-.37 E F0(,)A
+124.8 Q(ching the History List)-.18 E F0 .006(These functions allo)108
+136.8 R 2.506(ws)-.25 G .006(earching of the history list for entries c\
+ontaining a speci\214c string.)-2.506 F .005(Searching may be)5.005 F
+1.451(performed both forw)108 148.8 R 1.451(ard and backw)-.1 F 1.451
+(ard from the current history position.)-.1 F 1.452(The search may be)
+6.452 F/F2 10/Times-Italic@0 SF(anc)3.952 E(hor)-.15 E(ed)-.37 E F0(,)A
(meaning that the string must match at the be)108 160.8 Q
(ginning of the history entry)-.15 E(.)-.65 E F2(int)108 184.8 Q F1
(history_sear)2.5 E(ch)-.18 E F0(\()4.166 E F2(const c)A(har *string)
--.15 E 1.666(,i)-.1 G(nt dir)-1.666 E(ection)-.37 E F0(\))1.666 E .155
-(Search the history for)108 196.8 R F2(string)2.655 E F0 2.656(,s)C .156
+-.15 E 1.666(,i)-.1 G(nt dir)-1.666 E(ection)-.37 E F0(\))1.666 E .156
+(Search the history for)108 196.8 R F2(string)2.656 E F0 2.656(,s)C .156
(tarting at the current history of)-2.656 F 2.656(fset. If)-.25 F F2
-(dir)2.656 E(ection)-.37 E F0 .156(is less than 0, then the search)2.656
-F .802(is through pre)108 208.8 R .802
+(dir)2.656 E(ection)-.37 E F0 .155(is less than 0, then the search)2.656
+F .801(is through pre)108 208.8 R .801
(vious entries, otherwise through subsequent entries.)-.25 F(If)5.801 E
-F2(string)3.301 E F0 .801(is found, then the current his-)3.301 F .064
-(tory inde)108 220.8 R 2.564(xi)-.15 G 2.564(ss)-2.564 G .064
+F2(string)3.301 E F0 .802(is found, then the current his-)3.301 F .065
+(tory inde)108 220.8 R 2.565(xi)-.15 G 2.564(ss)-2.565 G .064
(et to that history entry)-2.564 F 2.564(,a)-.65 G .064(nd the v)-2.564
F .064(alue returned is the of)-.25 F .064
-(fset in the line of the entry where)-.25 F F2(string)2.565 E F0 -.1(wa)
+(fset in the line of the entry where)-.25 F F2(string)2.564 E F0 -.1(wa)
108 232.8 S 2.5(sf).1 G 2.5(ound. Otherwise,)-2.5 F
(nothing is changed, and a -1 is returned.)2.5 E F2(int)108 256.8 Q F1
(history_sear)2.5 E(ch_pr)-.18 E(e\214x)-.18 E F0(\()4.166 E F2(const c)
A(har *string)-.15 E 1.666(,i)-.1 G(nt dir)-1.666 E(ection)-.37 E F0(\))
-1.666 E .684(Search the history for)108 268.8 R F2(string)3.183 E F0
+1.666 E .683(Search the history for)108 268.8 R F2(string)3.183 E F0
3.183(,s)C .683(tarting at the current history of)-3.183 F 3.183
-(fset. The)-.25 F .683(search is anchored: matching lines)3.183 F 1.063
-(must be)108 280.8 R 1.063(gin with)-.15 F F2(string)3.563 E F0 6.063
-(.I)C(f)-6.063 E F2(dir)3.563 E(ection)-.37 E F0 1.064
-(is less than 0, then the search is through pre)3.563 F 1.064
-(vious entries, otherwise)-.25 F 1.115(through subsequent entries.)108
-292.8 R(If)6.115 E F2(string)3.615 E F0 1.115
-(is found, then the current history inde)3.615 F 3.614(xi)-.15 G 3.614
-(ss)-3.614 G 1.114(et to that entry)-3.614 F 3.614(,a)-.65 G 1.114
-(nd the)-3.614 F(return v)108 304.8 Q(alue is 0.)-.25 E
+(fset. The)-.25 F .683(search is anchored: matching lines)3.183 F 1.064
+(must be)108 280.8 R 1.064(gin with)-.15 F F2(string)3.564 E F0 6.064
+(.I)C(f)-6.064 E F2(dir)3.564 E(ection)-.37 E F0 1.063
+(is less than 0, then the search is through pre)3.564 F 1.063
+(vious entries, otherwise)-.25 F 1.114(through subsequent entries.)108
+292.8 R(If)6.114 E F2(string)3.614 E F0 1.114
+(is found, then the current history inde)3.614 F 3.615(xi)-.15 G 3.615
+(ss)-3.615 G 1.115(et to that entry)-3.615 F 3.615(,a)-.65 G 1.115
+(nd the)-3.615 F(return v)108 304.8 Q(alue is 0.)-.25 E
(Otherwise, nothing is changed, and a -1 is returned.)5 E F2(int)108
328.8 Q F1(history_sear)2.5 E(ch_pos)-.18 E F0(\()4.166 E F2(const c)A
(har *string)-.15 E 1.666(,i)-.1 G(nt dir)-1.666 E -.834(ection, int)
--.37 F(pos)2.5 E F0(\))3.332 E .603(Search for)108 340.8 R F2(string)
-3.103 E F0 .603(in the history list, starting at)3.103 F F2(pos)3.104 E
+-.37 F(pos)2.5 E F0(\))3.332 E .604(Search for)108 340.8 R F2(string)
+3.104 E F0 .604(in the history list, starting at)3.104 F F2(pos)3.104 E
F0 3.104(,a)C 3.104(na)-3.104 G .604(bsolute inde)-3.104 F 3.104(xi)-.15
-G .604(nto the list.)-3.104 F(If)5.604 E F2(dir)3.104 E(ection)-.37 E F0
-.604(is ne)3.104 F -.05(ga)-.15 G(ti).05 E -.15(ve)-.25 G(,).15 E .608
+G .603(nto the list.)-3.104 F(If)5.603 E F2(dir)3.103 E(ection)-.37 E F0
+.603(is ne)3.103 F -.05(ga)-.15 G(ti).05 E -.15(ve)-.25 G(,).15 E .608
(the search proceeds backw)108 352.8 R .608(ard from)-.1 F F2(pos)3.108
E F0 3.108(,o)C .608(therwise forw)-3.108 F 3.108(ard. Returns)-.1 F
.608(the absolute inde)3.108 F 3.108(xo)-.15 G 3.108(ft)-3.108 G .608
(he history ele-)-3.108 F(ment where)108 364.8 Q F2(string)2.5 E F0 -.1
(wa)2.5 G 2.5(sf).1 G(ound, or -1 otherwise.)-2.5 E F1
(Managing the History File)87 393.6 Q F0 .035(The History library can r\
-ead the history from and write it to a \214le.)108 405.6 R .036
+ead the history from and write it to a \214le.)108 405.6 R .035
(This section documents the functions for)5.035 F
(managing a history \214le.)108 417.6 Q F2(int)108 441.6 Q F1 -.18(re)
2.5 G(ad_history).18 E F0(\()4.166 E F2(const c)A(har *\214lename)-.15 E
-F0(\))1.666 E .151(Add the contents of)108 453.6 R F2(\214lename)2.651 E
-F0 .151(to the history list, a line at a time.)2.651 F(If)5.15 E F2
-(\214lename)2.65 E F0(is)2.65 E F1(NULL)2.65 E F0 2.65(,t)C .15
-(hen read from)-2.65 F F2(~/.his-)2.65 E(tory)108 465.6 Q F0 5(.R)C
+F0(\))1.666 E .15(Add the contents of)108 453.6 R F2(\214lename)2.65 E
+F0 .15(to the history list, a line at a time.)2.65 F(If)5.151 E F2
+(\214lename)2.651 E F0(is)2.651 E F1(NULL)2.651 E F0 2.651(,t)C .151
+(hen read from)-2.651 F F2(~/.his-)2.651 E(tory)108 465.6 Q F0 5(.R)C
(eturns 0 if successful, or)-5 E F1(err)2.5 E(no)-.15 E F0(if not.)2.5 E
F2(int)108 489.6 Q F1 -.18(re)2.5 G(ad_history_range).18 E F0(\()4.166 E
F2(const c)A(har *\214lename)-.15 E 1.666(,i)-.1 G(nt fr)-1.666 E -.834
-(om, int)-.45 F(to)2.5 E F0(\))3.332 E .052(Read a range of lines from)
+(om, int)-.45 F(to)2.5 E F0(\))3.332 E .053(Read a range of lines from)
108 501.6 R F2(\214lename)2.553 E F0 2.553(,a)C .053
(dding them to the history list.)-2.553 F .053(Start reading at line)
-5.053 F F2(fr)2.553 E(om)-.45 E F0 .053(and end at)2.553 F F2(to)2.553 E
-F0(.)A(If)108 513.6 Q F2(fr)2.889 E(om)-.45 E F0 .389
-(is zero, start at the be)2.889 F 2.889(ginning. If)-.15 F F2(to)2.889 E
-F0 .389(is less than)2.889 F F2(fr)2.889 E(om)-.45 E F0 2.889(,t)C .388
-(hen read until the end of the \214le.)-2.889 F(If)5.388 E F2
-(\214lename)2.888 E F0(is)108 525.6 Q F1(NULL)2.5 E F0 2.5(,t)C
+5.053 F F2(fr)2.553 E(om)-.45 E F0 .052(and end at)2.553 F F2(to)2.552 E
+F0(.)A(If)108 513.6 Q F2(fr)2.888 E(om)-.45 E F0 .388
+(is zero, start at the be)2.888 F 2.889(ginning. If)-.15 F F2(to)2.889 E
+F0 .389(is less than)2.889 F F2(fr)2.889 E(om)-.45 E F0 2.889(,t)C .389
+(hen read until the end of the \214le.)-2.889 F(If)5.389 E F2
+(\214lename)2.889 E F0(is)108 525.6 Q F1(NULL)2.5 E F0 2.5(,t)C
(hen read from)-2.5 E F2(~/.history)2.5 E F0 5(.R)C
(eturns 0 if successful, or)-5 E F1(err)2.5 E(no)-.15 E F0(if not.)2.5 E
F2(int)108 549.6 Q F1(write_history)2.5 E F0(\()4.166 E F2(const c)A
-(har *\214lename)-.15 E F0(\))1.666 E .961(Write the current history to)
-108 561.6 R F2(\214lename)3.461 E F0 3.461(,o)C -.15(ve)-3.611 G
+(har *\214lename)-.15 E F0(\))1.666 E .962(Write the current history to)
+108 561.6 R F2(\214lename)3.462 E F0 3.461(,o)C -.15(ve)-3.611 G
(rwriting).15 E F2(\214lename)3.461 E F0 .961(if necessary)3.461 F 5.961
-(.I)-.65 G(f)-5.961 E F2(\214lename)3.462 E F0(is)3.462 E F1(NULL)3.462
-E F0 3.462(,t)C .962(hen write)-3.462 F(the history list to)108 573.6 Q
+(.I)-.65 G(f)-5.961 E F2(\214lename)3.461 E F0(is)3.461 E F1(NULL)3.461
+E F0 3.461(,t)C .961(hen write)-3.461 F(the history list to)108 573.6 Q
F2(~/.history)2.5 E F0 5(.R)C(eturns 0 on success, or)-5 E F1(err)2.5 E
(no)-.15 E F0(on a read or write error)2.5 E(.)-.55 E F2(int)108 609.6 Q
F1(append_history)2.5 E F0(\()4.166 E F2(int nelements,)A(const c)1.666
-E(har *\214lename)-.15 E F0(\))1.666 E .839(Append the last)108 621.6 R
-F2(nelements)3.339 E F0 .839(of the history list to)3.339 F F2
+E(har *\214lename)-.15 E F0(\))1.666 E .838(Append the last)108 621.6 R
+F2(nelements)3.338 E F0 .839(of the history list to)3.339 F F2
(\214lename)3.339 E F0 5.839(.I)C(f)-5.839 E F2(\214lename)3.339 E F0
-(is)3.339 E F1(NULL)3.339 E F0 3.339(,t)C .838(hen append to)-3.339 F F2
-(~/.history)3.338 E F0(.)A(Returns 0 on success, or)108 633.6 Q F1(err)
+(is)3.339 E F1(NULL)3.339 E F0 3.339(,t)C .839(hen append to)-3.339 F F2
+(~/.history)3.339 E F0(.)A(Returns 0 on success, or)108 633.6 Q F1(err)
2.5 E(no)-.15 E F0(on a read or write error)2.5 E(.)-.55 E F2(int)108
657.6 Q F1(history_truncate_\214le)2.5 E F0(\()4.166 E F2(const c)A
(har *\214lename)-.15 E 1.666(,i)-.1 G(nt nlines)-1.666 E F0(\))1.666 E
--.35(Tr)108 669.6 S .38(uncate the history \214le).35 F F2(\214lename)
-2.88 E F0 2.88(,l)C(ea)-2.88 E .38(ving only the last)-.2 F F2(nlines)
-2.881 E F0 2.881(lines. If)2.881 F F2(\214lename)2.881 E F0(is)2.881 E
-F1(NULL)2.881 E F0 2.881(,t)C(hen)-2.881 E F2(~/.history)2.881 E F0(is)
-2.881 E 2.5(truncated. Returns)108 681.6 R 2.5(0o)2.5 G 2.5(ns)-2.5 G
+-.35(Tr)108 669.6 S .381(uncate the history \214le).35 F F2(\214lename)
+2.881 E F0 2.881(,l)C(ea)-2.881 E .381(ving only the last)-.2 F F2
+(nlines)2.881 E F0 2.88(lines. If)2.881 F F2(\214lename)2.88 E F0(is)
+2.88 E F1(NULL)2.88 E F0 2.88(,t)C(hen)-2.88 E F2(~/.history)2.88 E F0
+(is)2.88 E 2.5(truncated. Returns)108 681.6 R 2.5(0o)2.5 G 2.5(ns)-2.5 G
(uccess, or)-2.5 E F1(err)2.5 E(no)-.15 E F0(on f)2.5 E(ailure.)-.1 E
-(GNU History 6.2)72 768 Q(2010 August 12)132.895 E(5)197.055 E 0 Cg EP
+(GNU History 6.3)72 768 Q(2013 June 27)138.175 E(5)202.335 E 0 Cg EP
%%Page: 6 6
%%BeginPageSetup
BP
@@ -698,11 +701,11 @@ F0(These functions implement history e)108 96 Q(xpansion.)-.15 E/F2 10
F2 -.15(ch)C(ar *string).15 E 1.666(,c)-.1 G(har **output)-1.816 E F0
(\))1.666 E(Expand)108 132 Q F2(string)2.5 E F0 2.5(,p)C
(lacing the result into)-2.5 E F2(output)2.5 E F0 2.5(,ap)C
-(ointer to a string.)-2.5 E(Returns:)5 E 31(0I)144 144 S 3.066(fn)-31 G
-3.066(oe)-3.066 G .566(xpansions took place \(or)-3.216 F 3.065(,i)-.4 G
-3.065(ft)-3.065 G .565(he only change in the te)-3.065 F .565(xt w)-.15
-F .565(as the remo)-.1 F -.25(va)-.15 G 3.065(lo).25 G 3.065(fe)-3.065 G
-(scape)-3.065 E(characters preceding the history e)180 156 Q
+(ointer to a string.)-2.5 E(Returns:)5 E 31(0I)144 144 S 3.065(fn)-31 G
+3.065(oe)-3.065 G .565(xpansions took place \(or)-3.215 F 3.065(,i)-.4 G
+3.065(ft)-3.065 G .565(he only change in the te)-3.065 F .566(xt w)-.15
+F .566(as the remo)-.1 F -.25(va)-.15 G 3.066(lo).25 G 3.066(fe)-3.066 G
+(scape)-3.066 E(characters preceding the history e)180 156 Q
(xpansion character\);)-.15 E 31(1i)144 168 S 2.5(fe)-31 G
(xpansions did tak)-2.65 E 2.5(ep)-.1 G(lace;)-2.5 E 25.17(-1 if)144 180
R(there w)2.5 E(as an error in e)-.1 E(xpansion;)-.15 E 31(2i)144 192 S
@@ -713,33 +716,33 @@ E(.)-.55 E(If an error ocurred in e)108 204 Q(xpansion, then)-.15 E F2
(rror message.).15 E F2 -.15(ch)108 228 S(ar *).15 E F1(get_history_e)
2.5 E -.1(ve)-.15 G(nt).1 E F0(\()4.166 E F2(const c)A(har *string)-.15
E 1.666(,i)-.1 G(nt *cinde)-1.666 E -.834(x, int)-.2 F(qc)2.5 E(har)-.15
-E F0(\))3.332 E .262(Returns the te)108 240 R .262(xt of the history e)
--.15 F -.15(ve)-.25 G .262(nt be).15 F .263(ginning at)-.15 F F2(string)
+E F0(\))3.332 E .263(Returns the te)108 240 R .263(xt of the history e)
+-.15 F -.15(ve)-.25 G .263(nt be).15 F .263(ginning at)-.15 F F2(string)
2.763 E F0(+)2.763 E F2(*cinde)2.763 E(x)-.2 E F0(.)A F2(*cinde)5.263 E
-(x)-.2 E F0 .263(is modi\214ed to point to after the)2.763 F -2.15 -.25
-(ev e)108 252 T .71(nt speci\214er).25 F 5.71(.A)-.55 G 3.21(tf)-5.71 G
-.71(unction entry)-3.21 F(,)-.65 E F2(cinde)3.21 E(x)-.2 E F0 .709
-(points to the inde)3.21 F 3.209(xi)-.15 G(nto)-3.209 E F2(string)3.209
-E F0 .709(where the history e)3.209 F -.15(ve)-.25 G .709
-(nt speci\214ca-).15 F .527(tion be)108 264 R(gins.)-.15 E F2(qc)5.527 E
-(har)-.15 E F0 .527(is a character that is allo)3.027 F .527
-(wed to end the e)-.25 F -.15(ve)-.25 G .528
+(x)-.2 E F0 .262(is modi\214ed to point to after the)2.762 F -2.15 -.25
+(ev e)108 252 T .709(nt speci\214er).25 F 5.709(.A)-.55 G 3.209(tf)
+-5.709 G .709(unction entry)-3.209 F(,)-.65 E F2(cinde)3.209 E(x)-.2 E
+F0 .709(points to the inde)3.209 F 3.209(xi)-.15 G(nto)-3.209 E F2
+(string)3.21 E F0 .71(where the history e)3.21 F -.15(ve)-.25 G .71
+(nt speci\214ca-).15 F .528(tion be)108 264 R(gins.)-.15 E F2(qc)5.528 E
+(har)-.15 E F0 .527(is a character that is allo)3.028 F .527
+(wed to end the e)-.25 F -.15(ve)-.25 G .527
(nt speci\214cation in addition to the `).15 F(`normal')-.74 E(')-.74 E
(terminating characters.)108 276 Q F2 -.15(ch)108 300 S(ar **).15 E F1
(history_tok)2.5 E(enize)-.1 E F0(\()4.166 E F2(const c)A(har *string)
--.15 E F0(\))1.666 E .239(Return an array of tok)108 312 R .239
-(ens parsed out of)-.1 F F2(string)2.739 E F0 2.739(,m)C .238
-(uch as the shell might.)-2.739 F .238(The tok)5.238 F .238
+-.15 E F0(\))1.666 E .238(Return an array of tok)108 312 R .238
+(ens parsed out of)-.1 F F2(string)2.738 E F0 2.738(,m)C .239
+(uch as the shell might.)-2.738 F .239(The tok)5.239 F .239
(ens are split on the charac-)-.1 F(ters in the)108 324 Q F1(history_w)
2.5 E(ord_delimiters)-.1 E F0 -.25(va)2.5 G
(riable, and shell quoting con).25 E -.15(ve)-.4 G(ntions are obe).15 E
(yed.)-.15 E F2 -.15(ch)108 348 S(ar *).15 E F1(history_ar)2.5 E
(g_extract)-.1 E F0(\()4.166 E F2(int \214r)A -.834(st, int)-.1 F -.834
-(last, const)2.5 F -.15(ch)2.5 G(ar *string).15 E F0(\))3.332 E .025
-(Extract a string se)108 360 R .025(gment consisting of the)-.15 F F2
+(last, const)2.5 F -.15(ch)2.5 G(ar *string).15 E F0(\))3.332 E .026
+(Extract a string se)108 360 R .026(gment consisting of the)-.15 F F2
<8c72>2.526 E(st)-.1 E F0(through)2.526 E F2(last)2.526 E F0(ar)2.526 E
-.026(guments present in)-.18 F F2(string)2.526 E F0 5.026(.A)C -.18(rg)
--5.026 G .026(uments are split).18 F(using)108 372 Q F1(history_tok)2.5
+.025(guments present in)-.18 F F2(string)2.525 E F0 5.025(.A)C -.18(rg)
+-5.025 G .025(uments are split).18 F(using)108 372 Q F1(history_tok)2.5
E(enize\(\))-.1 E F0(.)A F1(History V)87 400.8 Q(ariables)-.92 E F0
(This section describes the e)108 412.8 Q(xternally-visible v)-.15 E
(ariables e)-.25 E(xported by the GNU History Library)-.15 E(.)-.65 E F2
@@ -753,12 +756,12 @@ F2(int)108 508.8 Q F1(history_max_entries)2.5 E F0
(int)108 544.8 Q F1(history_wite_timestamps)2.5 E F0 1.468
(If non-zero, timestamps are written to the history \214le, so the)108
556.8 R 3.968(yc)-.15 G 1.468(an be preserv)-3.968 F 1.468
-(ed between sessions.)-.15 F(The)6.468 E(def)108 568.8 Q .438(ault v)-.1
+(ed between sessions.)-.15 F(The)6.469 E(def)108 568.8 Q .439(ault v)-.1
F .439(alue is 0, meaning that timestamps are not sa)-.25 F -.15(ve)-.2
G 2.939(d. The).15 F .439(current timestamp format uses the v)2.939 F
-.439(alue of)-.25 F F2(history_comment_c)108 580.8 Q(har)-.15 E F0 .051
-(to delimit timestamp entries in the history \214le.)2.552 F .051
-(If that v)5.051 F .051(ariable does not ha)-.25 F .351 -.15(ve a v)-.2
+.438(alue of)-.25 F F2(history_comment_c)108 580.8 Q(har)-.15 E F0 .051
+(to delimit timestamp entries in the history \214le.)2.551 F .051
+(If that v)5.051 F .052(ariable does not ha)-.25 F .352 -.15(ve a v)-.2
H(alue)-.1 E(\(the def)108 592.8 Q
(ault\), timestamps will not be written.)-.1 E F2 -.15(ch)108 616.8 S
(ar).15 E F1(history_expansion_char)2.5 E F0
@@ -769,14 +772,14 @@ H(alue)-.1 E(\(the def)108 592.8 Q
(The character that in)108 664.8 Q -.2(vo)-.4 G -.1(ke).2 G 2.5(sw).1 G
(ord substitution if found at the start of a line.)-2.6 E(The def)5 E
(ault is)-.1 E F1(^)2.5 E F0(.)A F2 -.15(ch)108 688.8 S(ar).15 E F1
-(history_comment_char)2.5 E F0 .116(During tok)108 700.8 R .117
+(history_comment_char)2.5 E F0 .117(During tok)108 700.8 R .117
(enization, if this character is seen as the \214rst character of a w)
--.1 F .117(ord, then it and all subsequent char)-.1 F(-)-.2 E .277
+-.1 F .117(ord, then it and all subsequent char)-.1 F(-)-.2 E .276
(acters up to a ne)108 712.8 R .276
(wline are ignored, suppressing history e)-.25 F .276
-(xpansion for the remainder of the line.)-.15 F .276(This is dis-)5.276
-F(abled by def)108 724.8 Q(ault.)-.1 E(GNU History 6.2)72 768 Q
-(2010 August 12)132.895 E(6)197.055 E 0 Cg EP
+(xpansion for the remainder of the line.)-.15 F .277(This is dis-)5.276
+F(abled by def)108 724.8 Q(ault.)-.1 E(GNU History 6.3)72 768 Q
+(2013 June 27)138.175 E(6)202.335 E 0 Cg EP
%%Page: 7 7
%%BeginPageSetup
BP
@@ -790,30 +793,30 @@ F2 2.5("\\)2.5 G(t\\n\(\)<>;&|")-2.5 E F0(.)A F1 -.15(ch)108 120 S(ar *)
.15 E F2(history_no_expand_chars)2.5 E F0 2.054
(The list of characters which inhibit history e)108 132 R 2.054
(xpansion if found immediately follo)-.15 F(wing)-.25 E F2
-(history_expan-)4.555 E(sion_char)108 144 Q F0 5(.T)C(he def)-5 E
+(history_expan-)4.554 E(sion_char)108 144 Q F0 5(.T)C(he def)-5 E
(ault is space, tab, ne)-.1 E(wline,)-.25 E F2(\\r)2.5 E F0 2.5(,a)C(nd)
-2.5 E F2(=)2.5 E F0(.)A F1 -.15(ch)108 168 S(ar *).15 E F2
(history_sear)2.5 E(ch_delimiter_chars)-.18 E F0 .401(The list of addit\
ional characters which can delimit a history search string, in addition\
- to space, tab,)108 180 R F1(:)2.901 E F0(and)2.901 E F1(?)2.901 E F0
+ to space, tab,)108 180 R F1(:)2.901 E F0(and)2.901 E F1(?)2.902 E F0
(in the case of a substring search.)108 192 Q(The def)5 E(ault is empty)
-.1 E(.)-.65 E F1(int)108 216 Q F2(history_quotes_inhibit_expansion)2.5
-E F0 .624(If non-zero, single-quoted w)108 228 R .625
-(ords are not scanned for the history e)-.1 F .625(xpansion character)
--.15 F 5.625(.T)-.55 G .625(he def)-5.625 F .625(ault v)-.1 F .625
+E F0 .625(If non-zero, single-quoted w)108 228 R .625
+(ords are not scanned for the history e)-.1 F .624(xpansion character)
+-.15 F 5.624(.T)-.55 G .624(he def)-5.624 F .624(ault v)-.1 F .624
(alue is)-.25 F(0.)108 240 Q F1(rl_lineb)108 264 Q(uf_func_t *)-.2 E F2
-(history_inhibit_expansion_function)2.5 E F0 .348
+(history_inhibit_expansion_function)2.5 E F0 .347
(This should be set to the address of a function that tak)108 276 R .348
-(es tw)-.1 F 2.848(oa)-.1 G -.18(rg)-2.848 G .347(uments: a).18 F F2
-.347(char *)2.847 F F0(\()2.847 E F1(string)A F0 2.847(\)a)C .347(nd an)
--2.847 F F2(int)2.847 E F0(inde)2.847 E(x)-.15 E .227
-(into that string \()108 288 R F1(i)A F0 2.727(\). It)B .227
+(es tw)-.1 F 2.848(oa)-.1 G -.18(rg)-2.848 G .348(uments: a).18 F F2
+.348(char *)2.848 F F0(\()2.848 E F1(string)A F0 2.848(\)a)C .348(nd an)
+-2.848 F F2(int)2.848 E F0(inde)2.848 E(x)-.15 E .228
+(into that string \()108 288 R F1(i)A F0 2.728(\). It)B .227
(should return a non-zero v)2.727 F .227(alue if the history e)-.25 F
-.227(xpansion starting at)-.15 F F1(string[i])2.728 E F0 .228
-(should not)2.728 F .019(be performed; zero if the e)108 300 R .019
+.227(xpansion starting at)-.15 F F1(string[i])2.727 E F0 .227
+(should not)2.727 F .019(be performed; zero if the e)108 300 R .019
(xpansion should be done.)-.15 F .019
(It is intended for use by applications lik)5.019 F(e)-.1 E F2(bash)
-2.519 E F0 .018(that use)2.519 F(the history e)108 312 Q
+2.519 E F0 .019(that use)2.519 F(the history e)108 312 Q
(xpansion character for additional purposes.)-.15 E(By def)5 E
(ault, this v)-.1 E(ariable is set to)-.25 E F2(NULL)2.5 E F0(.)A/F3
10.95/Times-Bold@0 SF(FILES)72 328.8 Q F1(~/.history)109.666 340.8 Q F0
@@ -827,26 +830,26 @@ F1(bash)108 405.6 Q F0(\(1\))A F1 -.37(re)108 417.6 S(adline).37 E F0
(ox, Free Softw)-.15 E(are F)-.1 E(oundation)-.15 E(bfox@gnu.or)108
458.4 Q(g)-.18 E(Chet Rame)108 475.2 Q 1.3 -.65(y, C)-.15 H(ase W).65 E
(estern Reserv)-.8 E 2.5(eU)-.15 G(ni)-2.5 E -.15(ve)-.25 G(rsity).15 E
-(chet@ins.CWR)108 487.2 Q(U.Edu)-.4 E F3 -.11(BU)72 504 S 2.738(GR).11 G
-(EPOR)-2.738 E(TS)-.438 E F0 .16(If you \214nd a b)108 516 R .16
+(chet.rame)108 487.2 Q(y@case.edu)-.15 E F3 -.11(BU)72 504 S 2.738(GR)
+.11 G(EPOR)-2.738 E(TS)-.438 E F0 .16(If you \214nd a b)108 516 R .16
(ug in the)-.2 F F2(history)2.66 E F0(library)2.66 E 2.66(,y)-.65 G .16
(ou should report it.)-2.66 F .16(But \214rst, you should mak)5.16 F
2.66(es)-.1 G .16(ure that it really is)-2.66 F 2.5(ab)108 528 S
(ug, and that it appears in the latest v)-2.7 E(ersion of the)-.15 E F2
-(history)2.5 E F0(library that you ha)2.5 E -.15(ve)-.2 G(.).15 E .705
-(Once you ha)108 544.8 R 1.005 -.15(ve d)-.2 H .705(etermined that a b)
-.15 F .704(ug actually e)-.2 F .704(xists, mail a b)-.15 F .704
-(ug report to)-.2 F F1 -.2(bu)3.204 G(g\255r).2 E(eadline)-.37 E F0(@)A
-F1(gnu.or)A(g)-.37 E F0 5.704(.I)C 3.204(fy)-5.704 G(ou)-3.204 E(ha)108
-556.8 Q 1.809 -.15(ve a \214)-.2 H 1.509
-(x, you are welcome to mail that as well!).15 F 1.51
-(Suggestions and `philosophical' b)6.51 F 1.51(ug reports may be)-.2 F
+(history)2.5 E F0(library that you ha)2.5 E -.15(ve)-.2 G(.).15 E .704
+(Once you ha)108 544.8 R 1.004 -.15(ve d)-.2 H .704(etermined that a b)
+.15 F .704(ug actually e)-.2 F .704(xists, mail a b)-.15 F .705
+(ug report to)-.2 F F1 -.2(bu)3.205 G(g\255r).2 E(eadline)-.37 E F0(@)A
+F1(gnu.or)A(g)-.37 E F0 5.705(.I)C 3.205(fy)-5.705 G(ou)-3.205 E(ha)108
+556.8 Q 1.81 -.15(ve a \214)-.2 H 1.51
+(x, you are welcome to mail that as well!).15 F 1.509
+(Suggestions and `philosophical' b)6.509 F 1.509(ug reports may be)-.2 F
(mailed to)108 568.8 Q F1 -.2(bu)2.5 G(g-r).2 E(eadline)-.37 E F0(@)A F1
(gnu.or)A(g)-.37 E F0(or posted to the Usenet ne)2.5 E(wsgroup)-.25 E F2
(gnu.bash.b)2.5 E(ug)-.2 E F0(.)A(Comments and b)108 585.6 Q
(ug reports concerning this manual page should be directed to)-.2 E F1
--.15(ch)2.5 G(et@ins.CWR).15 E -.25(U.)-.4 G(Edu).25 E F0(.).25 E
-(GNU History 6.2)72 768 Q(2010 August 12)132.895 E(7)197.055 E 0 Cg EP
+-.15(ch)2.5 G(et.r).15 E(ame)-.15 E(y@case)-.3 E(.edu)-.15 E F0(.).25 E
+(GNU History 6.3)72 768 Q(2013 June 27)138.175 E(7)202.335 E 0 Cg EP
%%Trailer
end
%%EOF
diff --git a/doc/hstech.texi b/doc/hstech.texi
index 4fc9e8e..6487f20 100644
--- a/doc/hstech.texi
+++ b/doc/hstech.texi
@@ -1,7 +1,7 @@
@ignore
This file documents the user interface to the GNU History library.
-Copyright (C) 1988-2011 Free Software Foundation, Inc.
+Copyright (C) 1988-2014 Free Software Foundation, Inc.
Authored by Brian Fox and Chet Ramey.
Permission is granted to make and distribute verbatim copies of this manual
@@ -377,7 +377,7 @@ if the returned line should be displayed, but not executed,
as with the @code{:p} modifier (@pxref{Modifiers}).
@end table
-If an error ocurred in expansion, then @var{output} contains a descriptive
+If an error occurred in expansion, then @var{output} contains a descriptive
error message.
@end deftypefun
diff --git a/doc/hsuser.texi b/doc/hsuser.texi
index 75df3ee..69a5016 100644
--- a/doc/hsuser.texi
+++ b/doc/hsuser.texi
@@ -1,7 +1,7 @@
@ignore
This file documents the user interface to the GNU History library.
-Copyright (C) 1988--2011 Free Software Foundation, Inc.
+Copyright (C) 1988--2014 Free Software Foundation, Inc.
Authored by Brian Fox and Chet Ramey.
Permission is granted to make and distribute verbatim copies of this manual
@@ -84,17 +84,18 @@ file named by the @env{HISTFILE} variable (default @file{~/.bash_history}).
The file named by the value of @env{HISTFILE} is truncated, if
necessary, to contain no more than the number of lines specified by
the value of the @env{HISTFILESIZE} variable.
-When an interactive shell exits, the last
+When a shell with history enabled exits, the last
@env{$HISTSIZE} lines are copied from the history list to the file
named by @env{$HISTFILE}.
If the @code{histappend} shell option is set (@pxref{Bash Builtins}),
the lines are appended to the history file,
otherwise the history file is overwritten.
If @env{HISTFILE}
-is unset, or if the history file is unwritable, the history is
-not saved. After saving the history, the history file is truncated
-to contain no more than @env{$HISTFILESIZE}
-lines. If @env{HISTFILESIZE} is not set, no truncation is performed.
+is unset, or if the history file is unwritable, the history is not saved.
+After saving the history, the history file is truncated
+to contain no more than @env{$HISTFILESIZE} lines.
+If @env{HISTFILESIZE} is unset, or set to null, a non-numeric value, or
+a numeric value less than zero, the history file is not truncated.
If the @env{HISTTIMEFORMAT} is set, the time stamp information
associated with each history entry is written to the history file,
@@ -141,8 +142,10 @@ history list and history file.
@code{fc -s [@var{pat}=@var{rep}] [@var{command}]}
@end example
-Fix Command. In the first form, a range of commands from @var{first} to
-@var{last} is selected from the history list. Both @var{first} and
+The first form selects a range of commands from @var{first} to
+@var{last} from the history list and displays or edits and re-executes
+them.
+Both @var{first} and
@var{last} may be specified as a string (to locate the most recent
command beginning with that string) or as a number (an index into the
history list, where a negative number is used as an offset from the
@@ -161,6 +164,7 @@ When editing is complete, the edited commands are echoed and executed.
In the second form, @var{command} is re-executed after each instance
of @var{pat} in the selected command is replaced by @var{rep}.
+@var{command} is intepreted the same as @var{first} above.
A useful alias to use with the @code{fc} command is @code{r='fc -s'}, so
that typing @samp{r cc} runs the last command beginning with @code{cc}
@@ -208,11 +212,11 @@ to the current history list. These are lines appended to the history
file since the beginning of the current Bash session.
@item -r
-Read the current history file and append its contents to
+Read the history file and append its contents to
the history list.
@item -w
-Write out the current history to the history file.
+Write out the current history list to the history file.
@item -p
Perform history substitution on the @var{arg}s and display the result
diff --git a/doc/readline.0 b/doc/readline.0
index a09722e..57aeaac 100644
--- a/doc/readline.0
+++ b/doc/readline.0
@@ -183,187 +183,210 @@ IINNIITTIIAALLIIZZAATTIIOONN FFIILLEE
If set to OOnn, readline attempts to bind the control characters
treated specially by the kernel's terminal driver to their read-
line equivalents.
+ ccoolloorreedd--ssttaattss ((OOffff))
+ If set to OOnn, readline displays possible completions using dif-
+ ferent colors to indicate their file type. The color defini-
+ tions are taken from the value of the LLSS__CCOOLLOORRSS environment
+ variable.
ccoommmmeenntt--bbeeggiinn ((````##''''))
- The string that is inserted in vvii mode when the iinnsseerrtt--ccoommmmeenntt
+ The string that is inserted in vvii mode when the iinnsseerrtt--ccoommmmeenntt
command is executed. This command is bound to MM--## in emacs mode
and to ## in vi command mode.
ccoommpplleettiioonn--ddiissppllaayy--wwiiddtthh ((--11))
- The number of screen columns used to display possible matches
- when performing completion. The value is ignored if it is less
- than 0 or greater than the terminal screen width. A value of 0
- will cause matches to be displayed one per line. The default
+ The number of screen columns used to display possible matches
+ when performing completion. The value is ignored if it is less
+ than 0 or greater than the terminal screen width. A value of 0
+ will cause matches to be displayed one per line. The default
value is -1.
ccoommpplleettiioonn--iiggnnoorree--ccaassee ((OOffff))
If set to OOnn, readline performs filename matching and completion
in a case-insensitive fashion.
ccoommpplleettiioonn--mmaapp--ccaassee ((OOffff))
- If set to OOnn, and ccoommpplleettiioonn--iiggnnoorree--ccaassee is enabled, readline
- treats hyphens (_-) and underscores (__) as equivalent when per-
+ If set to OOnn, and ccoommpplleettiioonn--iiggnnoorree--ccaassee is enabled, readline
+ treats hyphens (_-) and underscores (__) as equivalent when per-
forming case-insensitive filename matching and completion.
ccoommpplleettiioonn--pprreeffiixx--ddiissppllaayy--lleennggtthh ((00))
- The length in characters of the common prefix of a list of pos-
- sible completions that is displayed without modification. When
- set to a value greater than zero, common prefixes longer than
- this value are replaced with an ellipsis when displaying possi-
+ The length in characters of the common prefix of a list of pos-
+ sible completions that is displayed without modification. When
+ set to a value greater than zero, common prefixes longer than
+ this value are replaced with an ellipsis when displaying possi-
ble completions.
ccoommpplleettiioonn--qquueerryy--iitteemmss ((110000))
- This determines when the user is queried about viewing the num-
- ber of possible completions generated by the ppoossssiibbllee--ccoommppllee--
- ttiioonnss command. It may be set to any integer value greater than
- or equal to zero. If the number of possible completions is
+ This determines when the user is queried about viewing the num-
+ ber of possible completions generated by the ppoossssiibbllee--ccoommppllee--
+ ttiioonnss command. It may be set to any integer value greater than
+ or equal to zero. If the number of possible completions is
greater than or equal to the value of this variable, the user is
- asked whether or not he wishes to view them; otherwise they are
+ asked whether or not he wishes to view them; otherwise they are
simply listed on the terminal. A negative value causes readline
to never ask.
ccoonnvveerrtt--mmeettaa ((OOnn))
- If set to OOnn, readline will convert characters with the eighth
+ If set to OOnn, readline will convert characters with the eighth
bit set to an ASCII key sequence by stripping the eighth bit and
- prefixing it with an escape character (in effect, using escape
+ prefixing it with an escape character (in effect, using escape
as the _m_e_t_a _p_r_e_f_i_x).
ddiissaabbllee--ccoommpplleettiioonn ((OOffff))
If set to OOnn, readline will inhibit word completion. Completion
- characters will be inserted into the line as if they had been
+ characters will be inserted into the line as if they had been
mapped to sseellff--iinnsseerrtt.
eeddiittiinngg--mmooddee ((eemmaaccss))
Controls whether readline begins with a set of key bindings sim-
ilar to _E_m_a_c_s or _v_i. eeddiittiinngg--mmooddee can be set to either eemmaaccss or
vvii.
eecchhoo--ccoonnttrrooll--cchhaarraacctteerrss ((OOnn))
- When set to OOnn, on operating systems that indicate they support
+ When set to OOnn, on operating systems that indicate they support
it, readline echoes a character corresponding to a signal gener-
ated from the keyboard.
eennaabbllee--kkeeyyppaadd ((OOffff))
When set to OOnn, readline will try to enable the application key-
- pad when it is called. Some systems need this to enable the
+ pad when it is called. Some systems need this to enable the
arrow keys.
eennaabbllee--mmeettaa--kkeeyy ((OOnn))
- When set to OOnn, readline will try to enable any meta modifier
- key the terminal claims to support when it is called. On many
+ When set to OOnn, readline will try to enable any meta modifier
+ key the terminal claims to support when it is called. On many
terminals, the meta key is used to send eight-bit characters.
eexxppaanndd--ttiillddee ((OOffff))
- If set to OOnn, tilde expansion is performed when readline
+ If set to OOnn, tilde expansion is performed when readline
attempts word completion.
hhiissttoorryy--pprreesseerrvvee--ppooiinntt ((OOffff))
- If set to OOnn, the history code attempts to place point at the
- same location on each history line retrieved with pprreevviioouuss--hhiiss--
+ If set to OOnn, the history code attempts to place point at the
+ same location on each history line retrieved with pprreevviioouuss--hhiiss--
ttoorryy or nneexxtt--hhiissttoorryy.
hhiissttoorryy--ssiizzee ((00))
- Set the maximum number of history entries saved in the history
- list. If set to zero, the number of entries in the history list
- is not limited.
+ Set the maximum number of history entries saved in the history
+ list. If set to zero, any existing history entries are deleted
+ and no new entries are saved. If set to a value less than zero,
+ the number of history entries is not limited. By default, the
+ number of history entries is not limited.
hhoorriizzoonnttaall--ssccrroollll--mmooddee ((OOffff))
- When set to OOnn, makes readline use a single line for display,
+ When set to OOnn, makes readline use a single line for display,
scrolling the input horizontally on a single screen line when it
- becomes longer than the screen width rather than wrapping to a
+ becomes longer than the screen width rather than wrapping to a
new line.
iinnppuutt--mmeettaa ((OOffff))
- If set to OOnn, readline will enable eight-bit input (that is, it
- will not clear the eighth bit in the characters it reads),
+ If set to OOnn, readline will enable eight-bit input (that is, it
+ will not clear the eighth bit in the characters it reads),
regardless of what the terminal claims it can support. The name
mmeettaa--ffllaagg is a synonym for this variable.
iisseeaarrcchh--tteerrmmiinnaattoorrss ((````CC--[[ CC--JJ''''))
- The string of characters that should terminate an incremental
- search without subsequently executing the character as a com-
- mand. If this variable has not been given a value, the charac-
+ The string of characters that should terminate an incremental
+ search without subsequently executing the character as a com-
+ mand. If this variable has not been given a value, the charac-
ters _E_S_C and _C_-_J will terminate an incremental search.
kkeeyymmaapp ((eemmaaccss))
- Set the current readline keymap. The set of legal keymap names
- is _e_m_a_c_s_, _e_m_a_c_s_-_s_t_a_n_d_a_r_d_, _e_m_a_c_s_-_m_e_t_a_, _e_m_a_c_s_-_c_t_l_x_, _v_i_, _v_i_-_m_o_v_e_,
- _v_i_-_c_o_m_m_a_n_d, and _v_i_-_i_n_s_e_r_t. _v_i is equivalent to _v_i_-_c_o_m_m_a_n_d;
- _e_m_a_c_s is equivalent to _e_m_a_c_s_-_s_t_a_n_d_a_r_d. The default value is
- _e_m_a_c_s. The value of eeddiittiinngg--mmooddee also affects the default
+ Set the current readline keymap. The set of legal keymap names
+ is _e_m_a_c_s_, _e_m_a_c_s_-_s_t_a_n_d_a_r_d_, _e_m_a_c_s_-_m_e_t_a_, _e_m_a_c_s_-_c_t_l_x_, _v_i_, _v_i_-_m_o_v_e_,
+ _v_i_-_c_o_m_m_a_n_d, and _v_i_-_i_n_s_e_r_t. _v_i is equivalent to _v_i_-_c_o_m_m_a_n_d;
+ _e_m_a_c_s is equivalent to _e_m_a_c_s_-_s_t_a_n_d_a_r_d. The default value is
+ _e_m_a_c_s. The value of eeddiittiinngg--mmooddee also affects the default
keymap.
+ kkeeyysseeqq--ttiimmeeoouutt ((550000))
+ Specifies the duration _r_e_a_d_l_i_n_e will wait for a character when
+ reading an ambiguous key sequence (one that can form a complete
+ key sequence using the input read so far, or can take additional
+ input to complete a longer key sequence). If no input is
+ received within the timeout, _r_e_a_d_l_i_n_e will use the shorter but
+ complete key sequence. The value is specified in milliseconds,
+ so a value of 1000 means that _r_e_a_d_l_i_n_e will wait one second for
+ additional input. If this variable is set to a value less than
+ or equal to zero, or to a non-numeric value, _r_e_a_d_l_i_n_e will wait
+ until another key is pressed to decide which key sequence to
+ complete.
mmaarrkk--ddiirreeccttoorriieess ((OOnn))
If set to OOnn, completed directory names have a slash appended.
mmaarrkk--mmooddiiffiieedd--lliinneess ((OOffff))
- If set to OOnn, history lines that have been modified are dis-
+ If set to OOnn, history lines that have been modified are dis-
played with a preceding asterisk (**).
mmaarrkk--ssyymmlliinnkkeedd--ddiirreeccttoorriieess ((OOffff))
If set to OOnn, completed names which are symbolic links to direc-
- tories have a slash appended (subject to the value of
+ tories have a slash appended (subject to the value of
mmaarrkk--ddiirreeccttoorriieess).
mmaattcchh--hhiiddddeenn--ffiilleess ((OOnn))
- This variable, when set to OOnn, causes readline to match files
- whose names begin with a `.' (hidden files) when performing
- filename completion. If set to OOffff, the leading `.' must be
+ This variable, when set to OOnn, causes readline to match files
+ whose names begin with a `.' (hidden files) when performing
+ filename completion. If set to OOffff, the leading `.' must be
supplied by the user in the filename to be completed.
mmeennuu--ccoommpplleettee--ddiissppllaayy--pprreeffiixx ((OOffff))
- If set to OOnn, menu completion displays the common prefix of the
+ If set to OOnn, menu completion displays the common prefix of the
list of possible completions (which may be empty) before cycling
through the list.
oouuttppuutt--mmeettaa ((OOffff))
- If set to OOnn, readline will display characters with the eighth
+ If set to OOnn, readline will display characters with the eighth
bit set directly rather than as a meta-prefixed escape sequence.
ppaaggee--ccoommpplleettiioonnss ((OOnn))
- If set to OOnn, readline uses an internal _m_o_r_e-like pager to dis-
+ If set to OOnn, readline uses an internal _m_o_r_e-like pager to dis-
play a screenful of possible completions at a time.
pprriinntt--ccoommpplleettiioonnss--hhoorriizzoonnttaallllyy ((OOffff))
- If set to OOnn, readline will display completions with matches
- sorted horizontally in alphabetical order, rather than down the
+ If set to OOnn, readline will display completions with matches
+ sorted horizontally in alphabetical order, rather than down the
screen.
rreevveerrtt--aallll--aatt--nneewwlliinnee ((OOffff))
- If set to OOnn, readline will undo all changes to history lines
+ If set to OOnn, readline will undo all changes to history lines
before returning when aacccceepptt--lliinnee is executed. By default, his-
- tory lines may be modified and retain individual undo lists
+ tory lines may be modified and retain individual undo lists
across calls to rreeaaddlliinnee.
sshhooww--aallll--iiff--aammbbiigguuoouuss ((OOffff))
- This alters the default behavior of the completion functions.
+ This alters the default behavior of the completion functions.
If set to OOnn, words which have more than one possible completion
- cause the matches to be listed immediately instead of ringing
+ cause the matches to be listed immediately instead of ringing
the bell.
sshhooww--aallll--iiff--uunnmmooddiiffiieedd ((OOffff))
- This alters the default behavior of the completion functions in
+ This alters the default behavior of the completion functions in
a fashion similar to sshhooww--aallll--iiff--aammbbiigguuoouuss. If set to OOnn, words
- which have more than one possible completion without any possi-
- ble partial completion (the possible completions don't share a
- common prefix) cause the matches to be listed immediately
+ which have more than one possible completion without any possi-
+ ble partial completion (the possible completions don't share a
+ common prefix) cause the matches to be listed immediately
instead of ringing the bell.
+ sshhooww--mmooddee--iinn--pprroommpptt ((OOffff))
+ If set to OOnn, add a character to the beginning of the prompt
+ indicating the editing mode: emacs (@), vi command (:) or vi
+ insertion (+).
sskkiipp--ccoommpplleetteedd--tteexxtt ((OOffff))
- If set to OOnn, this alters the default completion behavior when
- inserting a single match into the line. It's only active when
- performing completion in the middle of a word. If enabled,
- readline does not insert characters from the completion that
- match characters after point in the word being completed, so
+ If set to OOnn, this alters the default completion behavior when
+ inserting a single match into the line. It's only active when
+ performing completion in the middle of a word. If enabled,
+ readline does not insert characters from the completion that
+ match characters after point in the word being completed, so
portions of the word following the cursor are not duplicated.
vviissiibbllee--ssttaattss ((OOffff))
- If set to OOnn, a character denoting a file's type as reported by
- _s_t_a_t(2) is appended to the filename when listing possible com-
+ If set to OOnn, a character denoting a file's type as reported by
+ _s_t_a_t(2) is appended to the filename when listing possible com-
pletions.
CCoonnddiittiioonnaall CCoonnssttrruuccttss
- Readline implements a facility similar in spirit to the conditional
- compilation features of the C preprocessor which allows key bindings
- and variable settings to be performed as the result of tests. There
+ Readline implements a facility similar in spirit to the conditional
+ compilation features of the C preprocessor which allows key bindings
+ and variable settings to be performed as the result of tests. There
are four parser directives used.
- $$iiff The $$iiff construct allows bindings to be made based on the edit-
- ing mode, the terminal being used, or the application using
- readline. The text of the test extends to the end of the line;
+ $$iiff The $$iiff construct allows bindings to be made based on the edit-
+ ing mode, the terminal being used, or the application using
+ readline. The text of the test extends to the end of the line;
no characters are required to isolate it.
- mmooddee The mmooddee== form of the $$iiff directive is used to test
- whether readline is in emacs or vi mode. This may be
- used in conjunction with the sseett kkeeyymmaapp command, for
- instance, to set bindings in the _e_m_a_c_s_-_s_t_a_n_d_a_r_d and
- _e_m_a_c_s_-_c_t_l_x keymaps only if readline is starting out in
+ mmooddee The mmooddee== form of the $$iiff directive is used to test
+ whether readline is in emacs or vi mode. This may be
+ used in conjunction with the sseett kkeeyymmaapp command, for
+ instance, to set bindings in the _e_m_a_c_s_-_s_t_a_n_d_a_r_d and
+ _e_m_a_c_s_-_c_t_l_x keymaps only if readline is starting out in
emacs mode.
- tteerrmm The tteerrmm== form may be used to include terminal-specific
+ tteerrmm The tteerrmm== form may be used to include terminal-specific
key bindings, perhaps to bind the key sequences output by
the terminal's function keys. The word on the right side
- of the == is tested against the full name of the terminal
- and the portion of the terminal name before the first --.
- This allows _s_u_n to match both _s_u_n and _s_u_n_-_c_m_d, for
+ of the == is tested against the full name of the terminal
+ and the portion of the terminal name before the first --.
+ This allows _s_u_n to match both _s_u_n and _s_u_n_-_c_m_d, for
instance.
aapppplliiccaattiioonn
The aapppplliiccaattiioonn construct is used to include application-
specific settings. Each program using the readline
- library sets the _a_p_p_l_i_c_a_t_i_o_n _n_a_m_e, and an initialization
+ library sets the _a_p_p_l_i_c_a_t_i_o_n _n_a_m_e, and an initialization
file can test for a particular value. This could be used
- to bind key sequences to functions useful for a specific
- program. For instance, the following command adds a key
- sequence that quotes the current or previous word in
+ to bind key sequences to functions useful for a specific
+ program. For instance, the following command adds a key
+ sequence that quotes the current or previous word in
bbaasshh:
$$iiff Bash
@@ -378,52 +401,52 @@ IINNIITTIIAALLIIZZAATTIIOONN FFIILLEE
test fails.
$$iinncclluuddee
- This directive takes a single filename as an argument and reads
- commands and bindings from that file. For example, the follow-
+ This directive takes a single filename as an argument and reads
+ commands and bindings from that file. For example, the follow-
ing directive would read _/_e_t_c_/_i_n_p_u_t_r_c:
$$iinncclluuddee _/_e_t_c_/_i_n_p_u_t_r_c
SSEEAARRCCHHIINNGG
- Readline provides commands for searching through the command history
- for lines containing a specified string. There are two search modes:
+ Readline provides commands for searching through the command history
+ for lines containing a specified string. There are two search modes:
_i_n_c_r_e_m_e_n_t_a_l and _n_o_n_-_i_n_c_r_e_m_e_n_t_a_l.
- Incremental searches begin before the user has finished typing the
- search string. As each character of the search string is typed, read-
+ Incremental searches begin before the user has finished typing the
+ search string. As each character of the search string is typed, read-
line displays the next entry from the history matching the string typed
- so far. An incremental search requires only as many characters as
- needed to find the desired history entry. To search backward in the
+ so far. An incremental search requires only as many characters as
+ needed to find the desired history entry. To search backward in the
history for a particular string, type CC--rr. Typing CC--ss searches forward
- through the history. The characters present in the value of the
- iisseeaarrcchh--tteerrmmiinnaattoorrss variable are used to terminate an incremental
- search. If that variable has not been assigned a value the _E_s_c_a_p_e and
+ through the history. The characters present in the value of the
+ iisseeaarrcchh--tteerrmmiinnaattoorrss variable are used to terminate an incremental
+ search. If that variable has not been assigned a value the _E_s_c_a_p_e and
CC--JJ characters will terminate an incremental search. CC--GG will abort an
- incremental search and restore the original line. When the search is
- terminated, the history entry containing the search string becomes the
+ incremental search and restore the original line. When the search is
+ terminated, the history entry containing the search string becomes the
current line.
- To find other matching entries in the history list, type CC--ss or CC--rr as
- appropriate. This will search backward or forward in the history for
- the next line matching the search string typed so far. Any other key
+ To find other matching entries in the history list, type CC--ss or CC--rr as
+ appropriate. This will search backward or forward in the history for
+ the next line matching the search string typed so far. Any other key
sequence bound to a readline command will terminate the search and exe-
- cute that command. For instance, a newline will terminate the search
- and accept the line, thereby executing the command from the history
+ cute that command. For instance, a newline will terminate the search
+ and accept the line, thereby executing the command from the history
list. A movement command will terminate the search, make the last line
found the current line, and begin editing.
- Non-incremental searches read the entire search string before starting
- to search for matching history lines. The search string may be typed
+ Non-incremental searches read the entire search string before starting
+ to search for matching history lines. The search string may be typed
by the user or be part of the contents of the current line.
EEDDIITTIINNGG CCOOMMMMAANNDDSS
- The following is a list of the names of the commands and the default
+ The following is a list of the names of the commands and the default
key sequences to which they are bound. Command names without an accom-
panying key sequence are unbound by default.
In the following descriptions, _p_o_i_n_t refers to the current cursor posi-
- tion, and _m_a_r_k refers to a cursor position saved by the sseett--mmaarrkk com-
- mand. The text between the point and mark is referred to as the
+ tion, and _m_a_r_k refers to a cursor position saved by the sseett--mmaarrkk com-
+ mand. The text between the point and mark is referred to as the
_r_e_g_i_o_n.
CCoommmmaannddss ffoorr MMoovviinngg
@@ -439,11 +462,11 @@ EEDDIITTIINNGG CCOOMMMMAANNDDSS
Move forward to the end of the next word. Words are composed of
alphanumeric characters (letters and digits).
bbaacckkwwaarrdd--wwoorrdd ((MM--bb))
- Move back to the start of the current or previous word. Words
+ Move back to the start of the current or previous word. Words
are composed of alphanumeric characters (letters and digits).
cclleeaarr--ssccrreeeenn ((CC--ll))
- Clear the screen leaving the current line at the top of the
- screen. With an argument, refresh the current line without
+ Clear the screen leaving the current line at the top of the
+ screen. With an argument, refresh the current line without
clearing the screen.
rreeddrraaww--ccuurrrreenntt--lliinnee
Refresh the current line.
@@ -451,43 +474,55 @@ EEDDIITTIINNGG CCOOMMMMAANNDDSS
CCoommmmaannddss ffoorr MMaanniippuullaattiinngg tthhee HHiissttoorryy
aacccceepptt--lliinnee ((NNeewwlliinnee,, RReettuurrnn))
Accept the line regardless of where the cursor is. If this line
- is non-empty, it may be added to the history list for future
- recall with aadddd__hhiissttoorryy(()). If the line is a modified history
+ is non-empty, it may be added to the history list for future
+ recall with aadddd__hhiissttoorryy(()). If the line is a modified history
line, the history line is restored to its original state.
pprreevviioouuss--hhiissttoorryy ((CC--pp))
Fetch the previous command from the history list, moving back in
the list.
nneexxtt--hhiissttoorryy ((CC--nn))
- Fetch the next command from the history list, moving forward in
+ Fetch the next command from the history list, moving forward in
the list.
bbeeggiinnnniinngg--ooff--hhiissttoorryy ((MM--<<))
Move to the first line in the history.
eenndd--ooff--hhiissttoorryy ((MM-->>))
- Move to the end of the input history, i.e., the line currently
+ Move to the end of the input history, i.e., the line currently
being entered.
rreevveerrssee--sseeaarrcchh--hhiissttoorryy ((CC--rr))
- Search backward starting at the current line and moving `up'
- through the history as necessary. This is an incremental
+ Search backward starting at the current line and moving `up'
+ through the history as necessary. This is an incremental
search.
ffoorrwwaarrdd--sseeaarrcchh--hhiissttoorryy ((CC--ss))
- Search forward starting at the current line and moving `down'
- through the history as necessary. This is an incremental
+ Search forward starting at the current line and moving `down'
+ through the history as necessary. This is an incremental
search.
nnoonn--iinnccrreemmeennttaall--rreevveerrssee--sseeaarrcchh--hhiissttoorryy ((MM--pp))
Search backward through the history starting at the current line
- using a non-incremental search for a string supplied by the
+ using a non-incremental search for a string supplied by the
user.
nnoonn--iinnccrreemmeennttaall--ffoorrwwaarrdd--sseeaarrcchh--hhiissttoorryy ((MM--nn))
- Search forward through the history using a non-incremental
+ Search forward through the history using a non-incremental
search for a string supplied by the user.
- hhiissttoorryy--sseeaarrcchh--ffoorrwwaarrdd
- Search forward through the history for the string of characters
- between the start of the current line and the current cursor
- position (the _p_o_i_n_t). This is a non-incremental search.
hhiissttoorryy--sseeaarrcchh--bbaacckkwwaarrdd
Search backward through the history for the string of characters
- between the start of the current line and the point. This is a
+ between the start of the current line and the current cursor
+ position (the _p_o_i_n_t). The search string must match at the
+ beginning of a history line. This is a non-incremental search.
+ hhiissttoorryy--sseeaarrcchh--ffoorrwwaarrdd
+ Search forward through the history for the string of characters
+ between the start of the current line and the point. The search
+ string must match at the beginning of a history line. This is a
non-incremental search.
+ hhiissttoorryy--ssuubbssttrriinngg--sseeaarrcchh--bbaacckkwwaarrdd
+ Search backward through the history for the string of characters
+ between the start of the current line and the current cursor
+ position (the _p_o_i_n_t). The search string may match anywhere in a
+ history line. This is a non-incremental search.
+ hhiissttoorryy--ssuubbssttrriinngg--sseeaarrcchh--ffoorrwwaarrdd
+ Search forward through the history for the string of characters
+ between the start of the current line and the point. The search
+ string may match anywhere in a history line. This is a non-
+ incremental search.
yyaannkk--nntthh--aarrgg ((MM--CC--yy))
Insert the first argument to the previous command (usually the
second word on the previous line) at point. With an argument _n,
@@ -510,15 +545,20 @@ EEDDIITTIINNGG CCOOMMMMAANNDDSS
been specified.
CCoommmmaannddss ffoorr CChhaannggiinngg TTeexxtt
+ _e_n_d_-_o_f_-_f_i_l_e ((uussuuaallllyy CC--dd))
+ The character indicating end-of-file as set, for example, by
+ ``stty''. If this character is read when there are no charac-
+ ters on the line, and point is at the beginning of the line,
+ Readline interprets it as the end of input and returns EEOOFF.
ddeelleettee--cchhaarr ((CC--dd))
- Delete the character at point. If point is at the beginning of
- the line, there are no characters in the line, and the last
- character typed was not bound to ddeelleettee--cchhaarr, then return EEOOFF.
+ Delete the character at point. If this function is bound to the
+ same character as the tty EEOOFF character, as CC--dd commonly is, see
+ above for the effects.
bbaacckkwwaarrdd--ddeelleettee--cchhaarr ((RRuubboouutt))
- Delete the character behind the cursor. When given a numeric
+ Delete the character behind the cursor. When given a numeric
argument, save the deleted text on the kill ring.
ffoorrwwaarrdd--bbaacckkwwaarrdd--ddeelleettee--cchhaarr
- Delete the character under the cursor, unless the cursor is at
+ Delete the character under the cursor, unless the cursor is at
the end of the line, in which case the character behind the cur-
sor is deleted.
qquuootteedd--iinnsseerrtt ((CC--qq,, CC--vv))
@@ -529,32 +569,32 @@ EEDDIITTIINNGG CCOOMMMMAANNDDSS
sseellff--iinnsseerrtt ((aa,, bb,, AA,, 11,, !!,, ......))
Insert the character typed.
ttrraannssppoossee--cchhaarrss ((CC--tt))
- Drag the character before point forward over the character at
- point, moving point forward as well. If point is at the end of
- the line, then this transposes the two characters before point.
+ Drag the character before point forward over the character at
+ point, moving point forward as well. If point is at the end of
+ the line, then this transposes the two characters before point.
Negative arguments have no effect.
ttrraannssppoossee--wwoorrddss ((MM--tt))
- Drag the word before point past the word after point, moving
- point over that word as well. If point is at the end of the
+ Drag the word before point past the word after point, moving
+ point over that word as well. If point is at the end of the
line, this transposes the last two words on the line.
uuppccaassee--wwoorrdd ((MM--uu))
- Uppercase the current (or following) word. With a negative
+ Uppercase the current (or following) word. With a negative
argument, uppercase the previous word, but do not move point.
ddoowwnnccaassee--wwoorrdd ((MM--ll))
- Lowercase the current (or following) word. With a negative
+ Lowercase the current (or following) word. With a negative
argument, lowercase the previous word, but do not move point.
ccaappiittaalliizzee--wwoorrdd ((MM--cc))
- Capitalize the current (or following) word. With a negative
+ Capitalize the current (or following) word. With a negative
argument, capitalize the previous word, but do not move point.
oovveerrwwrriittee--mmooddee
- Toggle overwrite mode. With an explicit positive numeric argu-
+ Toggle overwrite mode. With an explicit positive numeric argu-
ment, switches to overwrite mode. With an explicit non-positive
numeric argument, switches to insert mode. This command affects
- only eemmaaccss mode; vvii mode does overwrite differently. Each call
+ only eemmaaccss mode; vvii mode does overwrite differently. Each call
to _r_e_a_d_l_i_n_e_(_) starts in insert mode. In overwrite mode, charac-
- ters bound to sseellff--iinnsseerrtt replace the text at point rather than
- pushing the text to the right. Characters bound to bbaacckk--
- wwaarrdd--ddeelleettee--cchhaarr replace the character before point with a
+ ters bound to sseellff--iinnsseerrtt replace the text at point rather than
+ pushing the text to the right. Characters bound to bbaacckk--
+ wwaarrdd--ddeelleettee--cchhaarr replace the character before point with a
space. By default, this command is unbound.
KKiilllliinngg aanndd YYaannkkiinngg
@@ -563,201 +603,203 @@ EEDDIITTIINNGG CCOOMMMMAANNDDSS
bbaacckkwwaarrdd--kkiillll--lliinnee ((CC--xx RRuubboouutt))
Kill backward to the beginning of the line.
uunniixx--lliinnee--ddiissccaarrdd ((CC--uu))
- Kill backward from point to the beginning of the line. The
+ Kill backward from point to the beginning of the line. The
killed text is saved on the kill-ring.
kkiillll--wwhhoollee--lliinnee
- Kill all characters on the current line, no matter where point
+ Kill all characters on the current line, no matter where point
is.
kkiillll--wwoorrdd ((MM--dd))
- Kill from point the end of the current word, or if between
- words, to the end of the next word. Word boundaries are the
+ Kill from point the end of the current word, or if between
+ words, to the end of the next word. Word boundaries are the
same as those used by ffoorrwwaarrdd--wwoorrdd.
bbaacckkwwaarrdd--kkiillll--wwoorrdd ((MM--RRuubboouutt))
- Kill the word behind point. Word boundaries are the same as
+ Kill the word behind point. Word boundaries are the same as
those used by bbaacckkwwaarrdd--wwoorrdd.
uunniixx--wwoorrdd--rruubboouutt ((CC--ww))
- Kill the word behind point, using white space as a word bound-
+ Kill the word behind point, using white space as a word bound-
ary. The killed text is saved on the kill-ring.
uunniixx--ffiilleennaammee--rruubboouutt
- Kill the word behind point, using white space and the slash
- character as the word boundaries. The killed text is saved on
+ Kill the word behind point, using white space and the slash
+ character as the word boundaries. The killed text is saved on
the kill-ring.
ddeelleettee--hhoorriizzoonnttaall--ssppaaccee ((MM--\\))
Delete all spaces and tabs around point.
kkiillll--rreeggiioonn
- Kill the text between the point and _m_a_r_k (saved cursor posi-
+ Kill the text between the point and _m_a_r_k (saved cursor posi-
tion). This text is referred to as the _r_e_g_i_o_n.
ccooppyy--rreeggiioonn--aass--kkiillll
Copy the text in the region to the kill buffer.
ccooppyy--bbaacckkwwaarrdd--wwoorrdd
- Copy the word before point to the kill buffer. The word bound-
+ Copy the word before point to the kill buffer. The word bound-
aries are the same as bbaacckkwwaarrdd--wwoorrdd.
ccooppyy--ffoorrwwaarrdd--wwoorrdd
- Copy the word following point to the kill buffer. The word
+ Copy the word following point to the kill buffer. The word
boundaries are the same as ffoorrwwaarrdd--wwoorrdd.
yyaannkk ((CC--yy))
Yank the top of the kill ring into the buffer at point.
yyaannkk--ppoopp ((MM--yy))
- Rotate the kill ring, and yank the new top. Only works follow-
+ Rotate the kill ring, and yank the new top. Only works follow-
ing yyaannkk or yyaannkk--ppoopp.
NNuummeerriicc AArrgguummeennttss
ddiiggiitt--aarrgguummeenntt ((MM--00,, MM--11,, ......,, MM----))
- Add this digit to the argument already accumulating, or start a
+ Add this digit to the argument already accumulating, or start a
new argument. M-- starts a negative argument.
uunniivveerrssaall--aarrgguummeenntt
- This is another way to specify an argument. If this command is
- followed by one or more digits, optionally with a leading minus
- sign, those digits define the argument. If the command is fol-
- lowed by digits, executing uunniivveerrssaall--aarrgguummeenntt again ends the
- numeric argument, but is otherwise ignored. As a special case,
- if this command is immediately followed by a character that is
- neither a digit or minus sign, the argument count for the next
- command is multiplied by four. The argument count is initially
- one, so executing this function the first time makes the argu-
+ This is another way to specify an argument. If this command is
+ followed by one or more digits, optionally with a leading minus
+ sign, those digits define the argument. If the command is fol-
+ lowed by digits, executing uunniivveerrssaall--aarrgguummeenntt again ends the
+ numeric argument, but is otherwise ignored. As a special case,
+ if this command is immediately followed by a character that is
+ neither a digit or minus sign, the argument count for the next
+ command is multiplied by four. The argument count is initially
+ one, so executing this function the first time makes the argu-
ment count four, a second time makes the argument count sixteen,
and so on.
CCoommpplleettiinngg
ccoommpplleettee ((TTAABB))
- Attempt to perform completion on the text before point. The
- actual completion performed is application-specific. BBaasshh, for
- instance, attempts completion treating the text as a variable
- (if the text begins with $$), username (if the text begins with
- ~~), hostname (if the text begins with @@), or command (including
- aliases and functions) in turn. If none of these produces a
- match, filename completion is attempted. GGddbb, on the other
- hand, allows completion of program functions and variables, and
+ Attempt to perform completion on the text before point. The
+ actual completion performed is application-specific. BBaasshh, for
+ instance, attempts completion treating the text as a variable
+ (if the text begins with $$), username (if the text begins with
+ ~~), hostname (if the text begins with @@), or command (including
+ aliases and functions) in turn. If none of these produces a
+ match, filename completion is attempted. GGddbb, on the other
+ hand, allows completion of program functions and variables, and
only attempts filename completion under certain circumstances.
ppoossssiibbllee--ccoommpplleettiioonnss ((MM--??))
- List the possible completions of the text before point. When
+ List the possible completions of the text before point. When
displaying completions, readline sets the number of columns used
- for display to the value of ccoommpplleettiioonn--ddiissppllaayy--wwiiddtthh, the value
- of the environment variable CCOOLLUUMMNNSS, or the screen width, in
+ for display to the value of ccoommpplleettiioonn--ddiissppllaayy--wwiiddtthh, the value
+ of the environment variable CCOOLLUUMMNNSS, or the screen width, in
that order.
iinnsseerrtt--ccoommpplleettiioonnss ((MM--**))
- Insert all completions of the text before point that would have
+ Insert all completions of the text before point that would have
been generated by ppoossssiibbllee--ccoommpplleettiioonnss.
mmeennuu--ccoommpplleettee
- Similar to ccoommpplleettee, but replaces the word to be completed with
- a single match from the list of possible completions. Repeated
- execution of mmeennuu--ccoommpplleettee steps through the list of possible
- completions, inserting each match in turn. At the end of the
+ Similar to ccoommpplleettee, but replaces the word to be completed with
+ a single match from the list of possible completions. Repeated
+ execution of mmeennuu--ccoommpplleettee steps through the list of possible
+ completions, inserting each match in turn. At the end of the
list of completions, the bell is rung (subject to the setting of
bbeellll--ssttyyllee) and the original text is restored. An argument of _n
- moves _n positions forward in the list of matches; a negative
- argument may be used to move backward through the list. This
- command is intended to be bound to TTAABB, but is unbound by
+ moves _n positions forward in the list of matches; a negative
+ argument may be used to move backward through the list. This
+ command is intended to be bound to TTAABB, but is unbound by
default.
mmeennuu--ccoommpplleettee--bbaacckkwwaarrdd
- Identical to mmeennuu--ccoommpplleettee, but moves backward through the list
- of possible completions, as if mmeennuu--ccoommpplleettee had been given a
+ Identical to mmeennuu--ccoommpplleettee, but moves backward through the list
+ of possible completions, as if mmeennuu--ccoommpplleettee had been given a
negative argument. This command is unbound by default.
ddeelleettee--cchhaarr--oorr--lliisstt
- Deletes the character under the cursor if not at the beginning
- or end of the line (like ddeelleettee--cchhaarr). If at the end of the
+ Deletes the character under the cursor if not at the beginning
+ or end of the line (like ddeelleettee--cchhaarr). If at the end of the
line, behaves identically to ppoossssiibbllee--ccoommpplleettiioonnss.
KKeeyybbooaarrdd MMaaccrrooss
ssttaarrtt--kkbbdd--mmaaccrroo ((CC--xx (())
- Begin saving the characters typed into the current keyboard
+ Begin saving the characters typed into the current keyboard
macro.
eenndd--kkbbdd--mmaaccrroo ((CC--xx ))))
Stop saving the characters typed into the current keyboard macro
and store the definition.
ccaallll--llaasstt--kkbbdd--mmaaccrroo ((CC--xx ee))
- Re-execute the last keyboard macro defined, by making the char-
- acters in the macro appear as if typed at the keyboard.
+ Re-execute the last keyboard macro defined, by making the char-
+ acters in the macro appear as if typed at the keyboard.
+ pprriinntt--llaasstt--kkbbdd--mmaaccrroo (()) Print the last keyboard macro defined in
+ a format suitable for the _i_n_p_u_t_r_c file.
MMiisscceellllaanneeoouuss
rree--rreeaadd--iinniitt--ffiillee ((CC--xx CC--rr))
- Read in the contents of the _i_n_p_u_t_r_c file, and incorporate any
+ Read in the contents of the _i_n_p_u_t_r_c file, and incorporate any
bindings or variable assignments found there.
aabboorrtt ((CC--gg))
- Abort the current editing command and ring the terminal's bell
+ Abort the current editing command and ring the terminal's bell
(subject to the setting of bbeellll--ssttyyllee).
ddoo--uuppppeerrccaassee--vveerrssiioonn ((MM--aa,, MM--bb,, MM--_x,, ......))
- If the metafied character _x is lowercase, run the command that
+ If the metafied character _x is lowercase, run the command that
is bound to the corresponding uppercase character.
pprreeffiixx--mmeettaa ((EESSCC))
Metafy the next character typed. EESSCC ff is equivalent to MMeettaa--ff.
uunnddoo ((CC--__,, CC--xx CC--uu))
Incremental undo, separately remembered for each line.
rreevveerrtt--lliinnee ((MM--rr))
- Undo all changes made to this line. This is like executing the
- uunnddoo command enough times to return the line to its initial
+ Undo all changes made to this line. This is like executing the
+ uunnddoo command enough times to return the line to its initial
state.
ttiillddee--eexxppaanndd ((MM--&&))
Perform tilde expansion on the current word.
sseett--mmaarrkk ((CC--@@,, MM--<<ssppaaccee>>))
- Set the mark to the point. If a numeric argument is supplied,
+ Set the mark to the point. If a numeric argument is supplied,
the mark is set to that position.
eexxcchhaannggee--ppooiinntt--aanndd--mmaarrkk ((CC--xx CC--xx))
- Swap the point with the mark. The current cursor position is
- set to the saved position, and the old cursor position is saved
+ Swap the point with the mark. The current cursor position is
+ set to the saved position, and the old cursor position is saved
as the mark.
cchhaarraacctteerr--sseeaarrcchh ((CC--]]))
A character is read and point is moved to the next occurrence of
- that character. A negative count searches for previous occur-
+ that character. A negative count searches for previous occur-
rences.
cchhaarraacctteerr--sseeaarrcchh--bbaacckkwwaarrdd ((MM--CC--]]))
- A character is read and point is moved to the previous occur-
- rence of that character. A negative count searches for subse-
+ A character is read and point is moved to the previous occur-
+ rence of that character. A negative count searches for subse-
quent occurrences.
sskkiipp--ccssii--sseeqquueennccee
- Read enough characters to consume a multi-key sequence such as
- those defined for keys like Home and End. Such sequences begin
+ Read enough characters to consume a multi-key sequence such as
+ those defined for keys like Home and End. Such sequences begin
with a Control Sequence Indicator (CSI), usually ESC-[. If this
- sequence is bound to "\[", keys producing such sequences will
- have no effect unless explicitly bound to a readline command,
- instead of inserting stray characters into the editing buffer.
+ sequence is bound to "\[", keys producing such sequences will
+ have no effect unless explicitly bound to a readline command,
+ instead of inserting stray characters into the editing buffer.
This is unbound by default, but usually bound to ESC-[.
iinnsseerrtt--ccoommmmeenntt ((MM--##))
- Without a numeric argument, the value of the readline ccoomm--
- mmeenntt--bbeeggiinn variable is inserted at the beginning of the current
+ Without a numeric argument, the value of the readline ccoomm--
+ mmeenntt--bbeeggiinn variable is inserted at the beginning of the current
line. If a numeric argument is supplied, this command acts as a
- toggle: if the characters at the beginning of the line do not
- match the value of ccoommmmeenntt--bbeeggiinn, the value is inserted, other-
+ toggle: if the characters at the beginning of the line do not
+ match the value of ccoommmmeenntt--bbeeggiinn, the value is inserted, other-
wise the characters in ccoommmmeenntt--bbeeggiinn are deleted from the begin-
- ning of the line. In either case, the line is accepted as if a
- newline had been typed. The default value of ccoommmmeenntt--bbeeggiinn
- makes the current line a shell comment. If a numeric argument
- causes the comment character to be removed, the line will be
+ ning of the line. In either case, the line is accepted as if a
+ newline had been typed. The default value of ccoommmmeenntt--bbeeggiinn
+ makes the current line a shell comment. If a numeric argument
+ causes the comment character to be removed, the line will be
executed by the shell.
dduummpp--ffuunnccttiioonnss
- Print all of the functions and their key bindings to the read-
+ Print all of the functions and their key bindings to the read-
line output stream. If a numeric argument is supplied, the out-
- put is formatted in such a way that it can be made part of an
+ put is formatted in such a way that it can be made part of an
_i_n_p_u_t_r_c file.
dduummpp--vvaarriiaabblleess
- Print all of the settable variables and their values to the
- readline output stream. If a numeric argument is supplied, the
+ Print all of the settable variables and their values to the
+ readline output stream. If a numeric argument is supplied, the
output is formatted in such a way that it can be made part of an
_i_n_p_u_t_r_c file.
dduummpp--mmaaccrrooss
- Print all of the readline key sequences bound to macros and the
- strings they output. If a numeric argument is supplied, the
+ Print all of the readline key sequences bound to macros and the
+ strings they output. If a numeric argument is supplied, the
output is formatted in such a way that it can be made part of an
_i_n_p_u_t_r_c file.
eemmaaccss--eeddiittiinngg--mmooddee ((CC--ee))
- When in vvii command mode, this causes a switch to eemmaaccss editing
+ When in vvii command mode, this causes a switch to eemmaaccss editing
mode.
vvii--eeddiittiinngg--mmooddee ((MM--CC--jj))
- When in eemmaaccss editing mode, this causes a switch to vvii editing
+ When in eemmaaccss editing mode, this causes a switch to vvii editing
mode.
DDEEFFAAUULLTT KKEEYY BBIINNDDIINNGGSS
- The following is a list of the default emacs and vi bindings. Charac-
- ters with the eighth bit set are written as M-<character>, and are
+ The following is a list of the default emacs and vi bindings. Charac-
+ ters with the eighth bit set are written as M-<character>, and are
referred to as _m_e_t_a_f_i_e_d characters. The printable ASCII characters not
- mentioned in the list of emacs standard bindings are bound to the
- sseellff--iinnsseerrtt function, which just inserts the given character into the
+ mentioned in the list of emacs standard bindings are bound to the
+ sseellff--iinnsseerrtt function, which just inserts the given character into the
input line. In vi insertion mode, all characters not specifically men-
tioned are bound to sseellff--iinnsseerrtt. Characters assigned to signal genera-
tion by _s_t_t_y(1) or the terminal driver, such as C-Z or C-C, retain that
- function. Upper and lower case metafied characters are bound to the
- same function in the emacs mode meta keymap. The remaining characters
- are unbound, which causes readline to ring the bell (subject to the
+ function. Upper and lower case metafied characters are bound to the
+ same function in the emacs mode meta keymap. The remaining characters
+ are unbound, which causes readline to ring the bell (subject to the
setting of the bbeellll--ssttyyllee variable).
EEmmaaccss MMooddee
@@ -968,25 +1010,25 @@ AAUUTTHHOORRSS
bfox@gnu.org
Chet Ramey, Case Western Reserve University
- chet@ins.CWRU.Edu
+ chet.ramey@case.edu
BBUUGG RREEPPOORRTTSS
- If you find a bug in rreeaaddlliinnee,, you should report it. But first, you
- should make sure that it really is a bug, and that it appears in the
+ If you find a bug in rreeaaddlliinnee,, you should report it. But first, you
+ should make sure that it really is a bug, and that it appears in the
latest version of the rreeaaddlliinnee library that you have.
- Once you have determined that a bug actually exists, mail a bug report
- to _b_u_g_-_r_e_a_d_l_i_n_e@_g_n_u_._o_r_g. If you have a fix, you are welcome to mail
- that as well! Suggestions and `philosophical' bug reports may be
- mailed to _b_u_g_-_r_e_a_d_l_i_n_e@_g_n_u_._o_r_g or posted to the Usenet newsgroup
+ Once you have determined that a bug actually exists, mail a bug report
+ to _b_u_g_-_r_e_a_d_l_i_n_e@_g_n_u_._o_r_g. If you have a fix, you are welcome to mail
+ that as well! Suggestions and `philosophical' bug reports may be
+ mailed to _b_u_g_-_r_e_a_d_l_i_n_e@_g_n_u_._o_r_g or posted to the Usenet newsgroup
ggnnuu..bbaasshh..bbuugg.
Comments and bug reports concerning this manual page should be directed
- to _c_h_e_t_@_i_n_s_._C_W_R_U_._E_d_u.
+ to _c_h_e_t_._r_a_m_e_y_@_c_a_s_e_._e_d_u.
BBUUGGSS
It's too big and too slow.
-GNU Readline 6.2 2010 August 28 READLINE(3)
+GNU Readline 6.3 2014 January 6 READLINE(3)
diff --git a/doc/readline.3 b/doc/readline.3
index f79f4bb..5ac7b10 100644
--- a/doc/readline.3
+++ b/doc/readline.3
@@ -4,11 +4,11 @@
.\" Chet Ramey
.\" Information Network Services
.\" Case Western Reserve University
-.\" chet@ins.CWRU.Edu
+.\" chet.ramey@case.edu
.\"
-.\" Last Change: Sat Aug 28 18:56:32 EDT 2010
+.\" Last Change: Mon Jan 6 16:34:55 EST 2014
.\"
-.TH READLINE 3 "2010 August 28" "GNU Readline 6.2"
+.TH READLINE 3 "2014 January 6" "GNU Readline 6.3"
.\"
.\" File Name macro. This used to be `.PN', for Path Name,
.\" but Sun doesn't seem to like that very much.
@@ -351,6 +351,12 @@ If set to \fBOn\fP, readline attempts to bind the control characters
treated specially by the kernel's terminal driver to their readline
equivalents.
.TP
+.B colored\-stats (Off)
+If set to \fBOn\fP, readline displays possible completions using different
+colors to indicate their file type.
+The color definitions are taken from the value of the \fBLS_COLORS\fP
+environment variable.
+.TP
.B comment\-begin (``#'')
The string that is inserted in \fBvi\fP mode when the
.B insert\-comment
@@ -439,8 +445,12 @@ same location on each history line retrieved with \fBprevious-history\fP
or \fBnext-history\fP.
.TP
.B history\-size (0)
-Set the maximum number of history entries saved in the history list. If
-set to zero, the number of entries in the history list is not limited.
+Set the maximum number of history entries saved in the history list.
+If set to zero, any existing history entries are deleted and no new entries
+are saved.
+If set to a value less than zero, the number of history entries is not
+limited.
+By default, the number of history entries is not limited.
.TP
.B horizontal\-scroll\-mode (Off)
When set to \fBOn\fP, makes readline use a single line for display,
@@ -472,6 +482,19 @@ The value of
.B editing\-mode
also affects the default keymap.
.TP
+.B keyseq\-timeout (500)
+Specifies the duration \fIreadline\fP will wait for a character when reading an
+ambiguous key sequence (one that can form a complete key sequence using
+the input read so far, or can take additional input to complete a longer
+key sequence).
+If no input is received within the timeout, \fIreadline\fP will use the shorter
+but complete key sequence.
+The value is specified in milliseconds, so a value of 1000 means that
+\fIreadline\fP will wait one second for additional input.
+If this variable is set to a value less than or equal to zero, or to a
+non-numeric value, \fIreadline\fP will wait until another key is pressed to
+decide which key sequence to complete.
+.TP
.B mark\-directories (On)
If set to \fBOn\fP, completed directory names have a slash
appended.
@@ -533,6 +556,11 @@ possible partial completion (the possible completions don't share
a common prefix) cause the matches to be listed immediately instead
of ringing the bell.
.TP
+.B show\-mode\-in\-prompt (Off)
+If set to \fBOn\fP, add a character to the beginning of the prompt
+indicating the editing mode: emacs (@), vi command (:) or vi
+insertion (+).
+.TP
.B skip\-completed\-text (Off)
If set to \fBOn\fP, this alters the default completion behavior when
inserting a single match into the line. It's only active when
@@ -738,15 +766,30 @@ using a non-incremental search for a string supplied by the user.
Search forward through the history using a non-incremental search
for a string supplied by the user.
.TP
+.B history\-search\-backward
+Search backward through the history for the string of characters
+between the start of the current line and the current cursor
+position (the \fIpoint\fP).
+The search string must match at the beginning of a history line.
+This is a non-incremental search.
+.TP
.B history\-search\-forward
Search forward through the history for the string of characters
+between the start of the current line and the point.
+The search string must match at the beginning of a history line.
+This is a non-incremental search.
+.TP
+.B history\-substring\-search\-backward
+Search backward through the history for the string of characters
between the start of the current line and the current cursor
position (the \fIpoint\fP).
+The search string may match anywhere in a history line.
This is a non-incremental search.
.TP
-.B history\-search\-backward
-Search backward through the history for the string of characters
+.B history\-substring\-search\-forward
+Search forward through the history for the string of characters
between the start of the current line and the point.
+The search string may match anywhere in a history line.
This is a non-incremental search.
.TP
.B yank\-nth\-arg (M\-C\-y)
@@ -778,13 +821,22 @@ as if the "!$" history expansion had been specified.
.PP
.PD 0
.TP
-.B delete\-char (C\-d)
-Delete the character at point. If point is at the
-beginning of the line, there are no characters in the line, and
-the last character typed was not bound to \fBdelete\-char\fP, then return
+.B \fIend\-of\-file\fP (usually C\-d)
+The character indicating end-of-file as set, for example, by
+.if t \f(CWstty\fP.
+.if n ``stty''.
+If this character is read when there are no characters
+on the line, and point is at the beginning of the line, Readline
+interprets it as the end of input and returns
.SM
.BR EOF .
.TP
+.B delete\-char (C\-d)
+Delete the character at point.
+If this function is bound to the
+same character as the tty \fBEOF\fP character, as \fBC\-d\fP
+commonly is, see above for the effects.
+.TP
.B backward\-delete\-char (Rubout)
Delete the character behind the cursor. When given a numeric argument,
save the deleted text on the kill ring.
@@ -996,6 +1048,9 @@ and store the definition.
.B call\-last\-kbd\-macro (C\-x e)
Re-execute the last keyboard macro defined, by making the characters
in the macro appear as if typed at the keyboard.
+.B print\-last\-kbd\-macro ()
+Print the last keyboard macro defined in a format suitable for the
+\fIinputrc\fP file.
.PD
.SS Miscellaneous
.PP
@@ -1355,7 +1410,7 @@ bfox@gnu.org
.PP
Chet Ramey, Case Western Reserve University
.br
-chet@ins.CWRU.Edu
+chet.ramey@case.edu
.SH BUG REPORTS
If you find a bug in
.B readline,
@@ -1375,7 +1430,7 @@ newsgroup
.PP
Comments and bug reports concerning
this manual page should be directed to
-.IR chet@ins.CWRU.Edu .
+.IR chet.ramey@case.edu .
.SH BUGS
.PP
It's too big and too slow.
diff --git a/doc/readline.dvi b/doc/readline.dvi
index d05e7f7..f83d2b8 100644
--- a/doc/readline.dvi
+++ b/doc/readline.dvi
Binary files differ
diff --git a/doc/readline.html b/doc/readline.html
index efc2ab3..9b7dd84 100644
--- a/doc/readline.html
+++ b/doc/readline.html
@@ -1,6 +1,6 @@
<HTML>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<!-- Created on February, 8 2011 by texi2html 1.64 -->
+<!-- Created on February, 11 2014 by texi2html 1.64 -->
<!--
Written by: Lionel Cons <Lionel.Cons@cern.ch> (original author)
Karl Berry <karl@freefriends.org>
@@ -27,7 +27,7 @@ Send bugs and suggestions to <texi2html@mathematik.uni-kl.de>
<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H1>GNU Readline Library</H1></P><P>
@@ -35,14 +35,15 @@ Send bugs and suggestions to <texi2html@mathematik.uni-kl.de>
This document describes the GNU Readline Library, a utility which aids
in the consistency of user interface across discrete programs which
provide a command line interface.
+The Readline home page is <A HREF="http://www.gnu.org/software/readline/">http://www.gnu.org/software/readline/</A>.
</P><P>
<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0>
<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC1">1. Command Line Editing</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">GNU Readline User's Manual.</TD></TR>
<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC23">2. Programming with GNU Readline</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">GNU Readline Programmer's Manual.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC49">A. GNU Free Documentation License</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">License for copying this manual.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC51">Concept Index</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Index of concepts described in this manual.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC52">Function and Variable Index</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Index of externally visible functions
+<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC50">A. GNU Free Documentation License</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">License for copying this manual.</TD></TR>
+<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC52">Concept Index</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Index of concepts described in this manual.</TD></TR>
+<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC53">Function and Variable Index</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Index of externally visible functions
and variables.</TD></TR>
</TABLE></BLOCKQUOTE>
<P>
@@ -57,7 +58,7 @@ provide a command line interface.
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC23"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<A NAME="Command Line Editing"></A>
@@ -91,7 +92,7 @@ command line editing interface.
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC23"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H2> 1.1 Introduction to Line Editing </H2>
@@ -150,7 +151,7 @@ some keyboards.
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC9"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H2> 1.2 Readline Interaction </H2>
@@ -189,7 +190,7 @@ regardless of the location of the cursor within the line.
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC9"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H3> 1.2.1 Readline Bare Essentials </H3>
@@ -251,7 +252,7 @@ than the character to the left of the cursor.)
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC9"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H3> 1.2.2 Readline Movement Commands </H3>
@@ -295,7 +296,7 @@ operate on characters while meta keystrokes operate on words.
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC9"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H3> 1.2.3 Readline Killing Commands </H3>
@@ -380,7 +381,7 @@ the prior command is <KBD>C-y</KBD> or <KBD>M-y</KBD>.
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC9"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H3> 1.2.4 Readline Arguments </H3>
@@ -415,7 +416,7 @@ which will delete the next ten characters on the input line.
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC9"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H3> 1.2.5 Searching for Commands in the History </H3>
@@ -477,7 +478,7 @@ typed by the user or be part of the contents of the current line.
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC13"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H2> 1.3 Readline Init File </H2>
@@ -530,7 +531,7 @@ incorporating any changes that you might have made to it.
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC13"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H3> 1.3.1 Readline Init File Syntax </H3>
@@ -596,15 +597,24 @@ treated specially by the kernel's terminal driver to their Readline
equivalents.
<P>
-<DT><CODE>comment-begin</CODE>
+<DT><CODE>colored-stats</CODE>
<DD><A NAME="IDX7"></A>
+If set to <SAMP>`on'</SAMP>, Readline displays possible completions using different
+colors to indicate their file type.
+The color definitions are taken from the value of the <CODE>LS_COLORS</CODE>
+environment variable.
+The default is <SAMP>`off'</SAMP>.
+<P>
+
+<DT><CODE>comment-begin</CODE>
+<DD><A NAME="IDX8"></A>
The string to insert at the beginning of the line when the
<CODE>insert-comment</CODE> command is executed. The default value
is <CODE>"#"</CODE>.
<P>
<DT><CODE>completion-display-width</CODE>
-<DD><A NAME="IDX8"></A>
+<DD><A NAME="IDX9"></A>
The number of screen columns used to display possible matches
when performing completion.
The value is ignored if it is less than 0 or greater than the terminal
@@ -614,21 +624,21 @@ The default value is -1.
<P>
<DT><CODE>completion-ignore-case</CODE>
-<DD><A NAME="IDX9"></A>
+<DD><A NAME="IDX10"></A>
If set to <SAMP>`on'</SAMP>, Readline performs filename matching and completion
in a case-insensitive fashion.
The default value is <SAMP>`off'</SAMP>.
<P>
<DT><CODE>completion-map-case</CODE>
-<DD><A NAME="IDX10"></A>
+<DD><A NAME="IDX11"></A>
If set to <SAMP>`on'</SAMP>, and <VAR>completion-ignore-case</VAR> is enabled, Readline
treats hyphens (<SAMP>`-'</SAMP>) and underscores (<SAMP>`_'</SAMP>) as equivalent when
performing case-insensitive filename matching and completion.
<P>
<DT><CODE>completion-prefix-display-length</CODE>
-<DD><A NAME="IDX11"></A>
+<DD><A NAME="IDX12"></A>
The length in characters of the common prefix of a list of possible
completions that is displayed without modification. When set to a
value greater than zero, common prefixes longer than this value are
@@ -636,7 +646,7 @@ replaced with an ellipsis when displaying possible completions.
<P>
<DT><CODE>completion-query-items</CODE>
-<DD><A NAME="IDX12"></A>
+<DD><A NAME="IDX13"></A>
The number of possible completions that determines when the user is
asked whether the list of possibilities should be displayed.
If the number of possible completions is greater than this value,
@@ -648,7 +658,7 @@ The default limit is <CODE>100</CODE>.
<P>
<DT><CODE>convert-meta</CODE>
-<DD><A NAME="IDX13"></A>
+<DD><A NAME="IDX14"></A>
If set to <SAMP>`on'</SAMP>, Readline will convert characters with the
eighth bit set to an ASCII key sequence by stripping the eighth
bit and prefixing an <KBD>ESC</KBD> character, converting them to a
@@ -656,14 +666,14 @@ meta-prefixed key sequence. The default value is <SAMP>`on'</SAMP>.
<P>
<DT><CODE>disable-completion</CODE>
-<DD><A NAME="IDX14"></A>
+<DD><A NAME="IDX15"></A>
If set to <SAMP>`On'</SAMP>, Readline will inhibit word completion.
Completion characters will be inserted into the line as if they had
been mapped to <CODE>self-insert</CODE>. The default is <SAMP>`off'</SAMP>.
<P>
<DT><CODE>editing-mode</CODE>
-<DD><A NAME="IDX15"></A>
+<DD><A NAME="IDX16"></A>
The <CODE>editing-mode</CODE> variable controls which default set of
key bindings is used. By default, Readline starts up in Emacs editing
mode, where the keystrokes are most similar to Emacs. This variable can be
@@ -677,7 +687,7 @@ keyboard. The default is <SAMP>`on'</SAMP>.
<P>
<DT><CODE>enable-keypad</CODE>
-<DD><A NAME="IDX16"></A>
+<DD><A NAME="IDX17"></A>
When set to <SAMP>`on'</SAMP>, Readline will try to enable the application
keypad when it is called. Some systems need this to enable the
arrow keys. The default is <SAMP>`off'</SAMP>.
@@ -691,13 +701,13 @@ The default is <SAMP>`on'</SAMP>.
<P>
<DT><CODE>expand-tilde</CODE>
-<DD><A NAME="IDX17"></A>
+<DD><A NAME="IDX18"></A>
If set to <SAMP>`on'</SAMP>, tilde expansion is performed when Readline
attempts word completion. The default is <SAMP>`off'</SAMP>.
<P>
<DT><CODE>history-preserve-point</CODE>
-<DD><A NAME="IDX18"></A>
+<DD><A NAME="IDX19"></A>
If set to <SAMP>`on'</SAMP>, the history code attempts to place the point (the
current cursor position) at the
same location on each history line retrieved with <CODE>previous-history</CODE>
@@ -705,13 +715,17 @@ or <CODE>next-history</CODE>. The default is <SAMP>`off'</SAMP>.
<P>
<DT><CODE>history-size</CODE>
-<DD><A NAME="IDX19"></A>
-Set the maximum number of history entries saved in the history list. If
-set to zero, the number of entries in the history list is not limited.
+<DD><A NAME="IDX20"></A>
+Set the maximum number of history entries saved in the history list.
+If set to zero, any existing history entries are deleted and no new entries
+are saved.
+If set to a value less than zero, the number of history entries is not
+limited.
+By default, the number of history entries is not limited.
<P>
<DT><CODE>horizontal-scroll-mode</CODE>
-<DD><A NAME="IDX20"></A>
+<DD><A NAME="IDX21"></A>
This variable can be set to either <SAMP>`on'</SAMP> or <SAMP>`off'</SAMP>. Setting it
to <SAMP>`on'</SAMP> means that the text of the lines being edited will scroll
horizontally on a single screen line when they are longer than the width
@@ -720,8 +734,8 @@ this variable is set to <SAMP>`off'</SAMP>.
<P>
<DT><CODE>input-meta</CODE>
-<DD><A NAME="IDX21"></A>
-<A NAME="IDX22"></A>
+<DD><A NAME="IDX22"></A>
+<A NAME="IDX23"></A>
If set to <SAMP>`on'</SAMP>, Readline will enable eight-bit input (it
will not clear the eighth bit in the characters it reads),
regardless of what the terminal claims it can support. The
@@ -730,7 +744,7 @@ synonym for this variable.
<P>
<DT><CODE>isearch-terminators</CODE>
-<DD><A NAME="IDX23"></A>
+<DD><A NAME="IDX24"></A>
The string of characters that should terminate an incremental search without
subsequently executing the character as a command (see section <A HREF="readline.html#SEC8">1.2.5 Searching for Commands in the History</A>).
If this variable has not been given a value, the characters <KBD>ESC</KBD> and
@@ -738,7 +752,7 @@ If this variable has not been given a value, the characters <KBD>ESC</KBD> and
<P>
<DT><CODE>keymap</CODE>
-<DD><A NAME="IDX24"></A>
+<DD><A NAME="IDX25"></A>
Sets Readline's idea of the current keymap for key binding commands.
Acceptable <CODE>keymap</CODE> names are
<CODE>emacs</CODE>,
@@ -755,20 +769,37 @@ The value of the <CODE>editing-mode</CODE> variable also affects the
default keymap.
<P>
+<DT><CODE>keyseq-timeout</CODE>
+<DD>Specifies the duration Readline will wait for a character when reading an
+ambiguous key sequence (one that can form a complete key sequence using
+the input read so far, or can take additional input to complete a longer
+key sequence).
+If no input is received within the timeout, Readline will use the shorter
+but complete key sequence.
+Readline uses this value to determine whether or not input is
+available on the current input source (<CODE>rl_instream</CODE> by default).
+The value is specified in milliseconds, so a value of 1000 means that
+Readline will wait one second for additional input.
+If this variable is set to a value less than or equal to zero, or to a
+non-numeric value, Readline will wait until another key is pressed to
+decide which key sequence to complete.
+The default value is <CODE>500</CODE>.
+<P>
+
<DT><CODE>mark-directories</CODE>
<DD>If set to <SAMP>`on'</SAMP>, completed directory names have a slash
appended. The default is <SAMP>`on'</SAMP>.
<P>
<DT><CODE>mark-modified-lines</CODE>
-<DD><A NAME="IDX25"></A>
+<DD><A NAME="IDX26"></A>
This variable, when set to <SAMP>`on'</SAMP>, causes Readline to display an
asterisk (<SAMP>`*'</SAMP>) at the start of history lines which have been modified.
This variable is <SAMP>`off'</SAMP> by default.
<P>
<DT><CODE>mark-symlinked-directories</CODE>
-<DD><A NAME="IDX26"></A>
+<DD><A NAME="IDX27"></A>
If set to <SAMP>`on'</SAMP>, completed names which are symbolic links
to directories have a slash appended (subject to the value of
<CODE>mark-directories</CODE>).
@@ -776,7 +807,7 @@ The default is <SAMP>`off'</SAMP>.
<P>
<DT><CODE>match-hidden-files</CODE>
-<DD><A NAME="IDX27"></A>
+<DD><A NAME="IDX28"></A>
This variable, when set to <SAMP>`on'</SAMP>, causes Readline to match files whose
names begin with a <SAMP>`.'</SAMP> (hidden files) when performing filename
completion.
@@ -786,21 +817,21 @@ This variable is <SAMP>`on'</SAMP> by default.
<P>
<DT><CODE>menu-complete-display-prefix</CODE>
-<DD><A NAME="IDX28"></A>
+<DD><A NAME="IDX29"></A>
If set to <SAMP>`on'</SAMP>, menu completion displays the common prefix of the
list of possible completions (which may be empty) before cycling through
the list. The default is <SAMP>`off'</SAMP>.
<P>
<DT><CODE>output-meta</CODE>
-<DD><A NAME="IDX29"></A>
+<DD><A NAME="IDX30"></A>
If set to <SAMP>`on'</SAMP>, Readline will display characters with the
eighth bit set directly rather than as a meta-prefixed escape
sequence. The default is <SAMP>`off'</SAMP>.
<P>
<DT><CODE>page-completions</CODE>
-<DD><A NAME="IDX30"></A>
+<DD><A NAME="IDX31"></A>
If set to <SAMP>`on'</SAMP>, Readline uses an internal <CODE>more</CODE>-like pager
to display a screenful of possible completions at a time.
This variable is <SAMP>`on'</SAMP> by default.
@@ -813,7 +844,7 @@ The default is <SAMP>`off'</SAMP>.
<P>
<DT><CODE>revert-all-at-newline</CODE>
-<DD><A NAME="IDX31"></A>
+<DD><A NAME="IDX32"></A>
If set to <SAMP>`on'</SAMP>, Readline will undo all changes to history lines
before returning when <CODE>accept-line</CODE> is executed. By default,
history lines may be modified and retain individual undo lists across
@@ -821,7 +852,7 @@ calls to <CODE>readline</CODE>. The default is <SAMP>`off'</SAMP>.
<P>
<DT><CODE>show-all-if-ambiguous</CODE>
-<DD><A NAME="IDX32"></A>
+<DD><A NAME="IDX33"></A>
This alters the default behavior of the completion functions. If
set to <SAMP>`on'</SAMP>,
words which have more than one possible completion cause the
@@ -830,7 +861,7 @@ The default value is <SAMP>`off'</SAMP>.
<P>
<DT><CODE>show-all-if-unmodified</CODE>
-<DD><A NAME="IDX33"></A>
+<DD><A NAME="IDX34"></A>
This alters the default behavior of the completion functions in
a fashion similar to <VAR>show-all-if-ambiguous</VAR>.
If set to <SAMP>`on'</SAMP>,
@@ -841,8 +872,16 @@ of ringing the bell.
The default value is <SAMP>`off'</SAMP>.
<P>
+<DT><CODE>show-mode-in-prompt</CODE>
+<DD><A NAME="IDX35"></A>
+If set to <SAMP>`on'</SAMP>, add a character to the beginning of the prompt
+indicating the editing mode: emacs (<SAMP>`@'</SAMP>), vi command (<SAMP>`:'</SAMP>),
+or vi insertion (<SAMP>`+'</SAMP>).
+The default value is <SAMP>`off'</SAMP>.
+<P>
+
<DT><CODE>skip-completed-text</CODE>
-<DD><A NAME="IDX34"></A>
+<DD><A NAME="IDX36"></A>
If set to <SAMP>`on'</SAMP>, this alters the default completion behavior when
inserting a single match into the line. It's only active when
performing completion in the middle of a word. If enabled, readline
@@ -857,7 +896,7 @@ The default value is <SAMP>`off'</SAMP>.
<P>
<DT><CODE>visible-stats</CODE>
-<DD><A NAME="IDX35"></A>
+<DD><A NAME="IDX37"></A>
If set to <SAMP>`on'</SAMP>, a character denoting a file's type
is appended to the filename when listing possible
completions. The default is <SAMP>`off'</SAMP>.
@@ -1018,7 +1057,7 @@ insert a single <SAMP>`\'</SAMP> into the line:
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC13"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H3> 1.3.2 Conditional Init Constructs </H3>
@@ -1103,7 +1142,7 @@ For example, the following directive reads from <TT>`/etc/inputrc'</TT>:
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC13"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H3> 1.3.3 Sample Init File </H3>
@@ -1121,7 +1160,7 @@ binding, variable assignment, and conditional syntax.
# You can re-read the inputrc file with C-x C-r.
# Lines beginning with '#' are comments.
#
-# First, include any systemwide bindings and variable
+# First, include any system-wide bindings and variable
# assignments from /etc/Inputrc
$include /etc/Inputrc
@@ -1226,7 +1265,7 @@ $endif
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC22"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H2> 1.4 Bindable Readline Commands </H2>
@@ -1267,60 +1306,60 @@ The text between the point and mark is referred to as the <EM>region</EM>.
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC22"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H3> 1.4.1 Commands For Moving </H3>
<!--docid::SEC14::-->
<DL COMPACT>
-<A NAME="IDX36"></A>
+<A NAME="IDX38"></A>
<DT><CODE>beginning-of-line (C-a)</CODE>
-<DD><A NAME="IDX37"></A>
+<DD><A NAME="IDX39"></A>
Move to the start of the current line.
<P>
-<A NAME="IDX38"></A>
+<A NAME="IDX40"></A>
<DT><CODE>end-of-line (C-e)</CODE>
-<DD><A NAME="IDX39"></A>
+<DD><A NAME="IDX41"></A>
Move to the end of the line.
<P>
-<A NAME="IDX40"></A>
+<A NAME="IDX42"></A>
<DT><CODE>forward-char (C-f)</CODE>
-<DD><A NAME="IDX41"></A>
+<DD><A NAME="IDX43"></A>
Move forward a character.
<P>
-<A NAME="IDX42"></A>
+<A NAME="IDX44"></A>
<DT><CODE>backward-char (C-b)</CODE>
-<DD><A NAME="IDX43"></A>
+<DD><A NAME="IDX45"></A>
Move back a character.
<P>
-<A NAME="IDX44"></A>
+<A NAME="IDX46"></A>
<DT><CODE>forward-word (M-f)</CODE>
-<DD><A NAME="IDX45"></A>
+<DD><A NAME="IDX47"></A>
Move forward to the end of the next word.
Words are composed of letters and digits.
<P>
-<A NAME="IDX46"></A>
+<A NAME="IDX48"></A>
<DT><CODE>backward-word (M-b)</CODE>
-<DD><A NAME="IDX47"></A>
+<DD><A NAME="IDX49"></A>
Move back to the start of the current or previous word.
Words are composed of letters and digits.
<P>
-<A NAME="IDX48"></A>
+<A NAME="IDX50"></A>
<DT><CODE>clear-screen (C-l)</CODE>
-<DD><A NAME="IDX49"></A>
+<DD><A NAME="IDX51"></A>
Clear the screen and redraw the current line,
leaving the current line at the top of the screen.
<P>
-<A NAME="IDX50"></A>
+<A NAME="IDX52"></A>
<DT><CODE>redraw-current-line ()</CODE>
-<DD><A NAME="IDX51"></A>
+<DD><A NAME="IDX53"></A>
Refresh the current line. By default, this is unbound.
<P>
@@ -1338,7 +1377,7 @@ Refresh the current line. By default, this is unbound.
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC22"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H3> 1.4.2 Commands For Manipulating The History </H3>
@@ -1346,9 +1385,9 @@ Refresh the current line. By default, this is unbound.
<P>
<DL COMPACT>
-<A NAME="IDX52"></A>
+<A NAME="IDX54"></A>
<DT><CODE>accept-line (Newline or Return)</CODE>
-<DD><A NAME="IDX53"></A>
+<DD><A NAME="IDX55"></A>
Accept the line regardless of where the cursor is.
If this line is
non-empty, it may be added to the history list for future recall with
@@ -1357,81 +1396,104 @@ If this line is a modified history line, the history line is restored
to its original state.
<P>
-<A NAME="IDX54"></A>
+<A NAME="IDX56"></A>
<DT><CODE>previous-history (C-p)</CODE>
-<DD><A NAME="IDX55"></A>
+<DD><A NAME="IDX57"></A>
Move `back' through the history list, fetching the previous command.
<P>
-<A NAME="IDX56"></A>
+<A NAME="IDX58"></A>
<DT><CODE>next-history (C-n)</CODE>
-<DD><A NAME="IDX57"></A>
+<DD><A NAME="IDX59"></A>
Move `forward' through the history list, fetching the next command.
<P>
-<A NAME="IDX58"></A>
+<A NAME="IDX60"></A>
<DT><CODE>beginning-of-history (M-&#60;)</CODE>
-<DD><A NAME="IDX59"></A>
+<DD><A NAME="IDX61"></A>
Move to the first line in the history.
<P>
-<A NAME="IDX60"></A>
+<A NAME="IDX62"></A>
<DT><CODE>end-of-history (M-&#62;)</CODE>
-<DD><A NAME="IDX61"></A>
+<DD><A NAME="IDX63"></A>
Move to the end of the input history, i.e., the line currently
being entered.
<P>
-<A NAME="IDX62"></A>
+<A NAME="IDX64"></A>
<DT><CODE>reverse-search-history (C-r)</CODE>
-<DD><A NAME="IDX63"></A>
+<DD><A NAME="IDX65"></A>
Search backward starting at the current line and moving `up' through
the history as necessary. This is an incremental search.
<P>
-<A NAME="IDX64"></A>
+<A NAME="IDX66"></A>
<DT><CODE>forward-search-history (C-s)</CODE>
-<DD><A NAME="IDX65"></A>
+<DD><A NAME="IDX67"></A>
Search forward starting at the current line and moving `down' through
the the history as necessary. This is an incremental search.
<P>
-<A NAME="IDX66"></A>
+<A NAME="IDX68"></A>
<DT><CODE>non-incremental-reverse-search-history (M-p)</CODE>
-<DD><A NAME="IDX67"></A>
+<DD><A NAME="IDX69"></A>
Search backward starting at the current line and moving `up'
through the history as necessary using a non-incremental search
for a string supplied by the user.
<P>
-<A NAME="IDX68"></A>
+<A NAME="IDX70"></A>
<DT><CODE>non-incremental-forward-search-history (M-n)</CODE>
-<DD><A NAME="IDX69"></A>
+<DD><A NAME="IDX71"></A>
Search forward starting at the current line and moving `down'
through the the history as necessary using a non-incremental search
for a string supplied by the user.
<P>
-<A NAME="IDX70"></A>
+<A NAME="IDX72"></A>
<DT><CODE>history-search-forward ()</CODE>
-<DD><A NAME="IDX71"></A>
+<DD><A NAME="IDX73"></A>
Search forward through the history for the string of characters
between the start of the current line and the point.
+The search string must match at the beginning of a history line.
This is a non-incremental search.
By default, this command is unbound.
<P>
-<A NAME="IDX72"></A>
+<A NAME="IDX74"></A>
<DT><CODE>history-search-backward ()</CODE>
-<DD><A NAME="IDX73"></A>
+<DD><A NAME="IDX75"></A>
Search backward through the history for the string of characters
-between the start of the current line and the point. This
-is a non-incremental search. By default, this command is unbound.
+between the start of the current line and the point.
+The search string must match at the beginning of a history line.
+This is a non-incremental search.
+By default, this command is unbound.
<P>
-<A NAME="IDX74"></A>
+<A NAME="IDX76"></A>
+<DT><CODE>history-substr-search-forward ()</CODE>
+<DD><A NAME="IDX77"></A>
+Search forward through the history for the string of characters
+between the start of the current line and the point.
+The search string may match anywhere in a history line.
+This is a non-incremental search.
+By default, this command is unbound.
+<P>
+
+<A NAME="IDX78"></A>
+<DT><CODE>history-substr-search-backward ()</CODE>
+<DD><A NAME="IDX79"></A>
+Search backward through the history for the string of characters
+between the start of the current line and the point.
+The search string may match anywhere in a history line.
+This is a non-incremental search.
+By default, this command is unbound.
+<P>
+
+<A NAME="IDX80"></A>
<DT><CODE>yank-nth-arg (M-C-y)</CODE>
-<DD><A NAME="IDX75"></A>
+<DD><A NAME="IDX81"></A>
Insert the first argument to the previous command (usually
the second word on the previous line) at point.
With an argument <VAR>n</VAR>,
@@ -1442,9 +1504,9 @@ Once the argument <VAR>n</VAR> is computed, the argument is extracted
as if the <SAMP>`!<VAR>n</VAR>'</SAMP> history expansion had been specified.
<P>
-<A NAME="IDX76"></A>
+<A NAME="IDX82"></A>
<DT><CODE>yank-last-arg (M-. or M-_)</CODE>
-<DD><A NAME="IDX77"></A>
+<DD><A NAME="IDX83"></A>
Insert last argument to the previous command (the last word of the
previous history entry).
With a numeric argument, behave exactly like <CODE>yank-nth-arg</CODE>.
@@ -1472,7 +1534,7 @@ as if the <SAMP>`!$'</SAMP> history expansion had been specified.
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC22"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H3> 1.4.3 Commands For Changing Text </H3>
@@ -1480,52 +1542,61 @@ as if the <SAMP>`!$'</SAMP> history expansion had been specified.
<P>
<DL COMPACT>
-<A NAME="IDX78"></A>
+
+<A NAME="IDX84"></A>
+<DT><CODE><I>end-of-file</I> (usually C-d)</CODE>
+<DD><A NAME="IDX85"></A>
+The character indicating end-of-file as set, for example, by
+<CODE>stty</CODE>. If this character is read when there are no characters
+on the line, and point is at the beginning of the line, Readline
+interprets it as the end of input and returns EOF.
+<P>
+
+<A NAME="IDX86"></A>
<DT><CODE>delete-char (C-d)</CODE>
-<DD><A NAME="IDX79"></A>
-Delete the character at point. If point is at the
-beginning of the line, there are no characters in the line, and
-the last character typed was not bound to <CODE>delete-char</CODE>, then
-return EOF.
+<DD><A NAME="IDX87"></A>
+Delete the character at point. If this function is bound to the
+same character as the tty EOF character, as <KBD>C-d</KBD>
+commonly is, see above for the effects.
<P>
-<A NAME="IDX80"></A>
+<A NAME="IDX88"></A>
<DT><CODE>backward-delete-char (Rubout)</CODE>
-<DD><A NAME="IDX81"></A>
+<DD><A NAME="IDX89"></A>
Delete the character behind the cursor. A numeric argument means
to kill the characters instead of deleting them.
<P>
-<A NAME="IDX82"></A>
+<A NAME="IDX90"></A>
<DT><CODE>forward-backward-delete-char ()</CODE>
-<DD><A NAME="IDX83"></A>
+<DD><A NAME="IDX91"></A>
Delete the character under the cursor, unless the cursor is at the
end of the line, in which case the character behind the cursor is
deleted. By default, this is not bound to a key.
<P>
-<A NAME="IDX84"></A>
+<A NAME="IDX92"></A>
<DT><CODE>quoted-insert (C-q or C-v)</CODE>
-<DD><A NAME="IDX85"></A>
+<DD><A NAME="IDX93"></A>
Add the next character typed to the line verbatim. This is
how to insert key sequences like <KBD>C-q</KBD>, for example.
<P>
-<A NAME="IDX86"></A>
+<A NAME="IDX94"></A>
<DT><CODE>tab-insert (M-<KBD>TAB</KBD>)</CODE>
-<DD><A NAME="IDX87"></A>
+<DD><A NAME="IDX95"></A>
Insert a tab character.
<P>
-<A NAME="IDX88"></A>
+<A NAME="IDX96"></A>
<DT><CODE>self-insert (a, b, A, 1, !, <small>...</small>)</CODE>
-<DD><A NAME="IDX89"></A>
+<DD><A NAME="IDX97"></A>
Insert yourself.
<P>
-<A NAME="IDX90"></A>
+<A NAME="IDX98"></A>
<DT><CODE>transpose-chars (C-t)</CODE>
-<DD><A NAME="IDX91"></A>
+<DD><A NAME="IDX99"></A>
Drag the character before the cursor forward over
the character at the cursor, moving the
cursor forward as well. If the insertion point
@@ -1534,39 +1605,39 @@ transposes the last two characters of the line.
Negative arguments have no effect.
<P>
-<A NAME="IDX92"></A>
+<A NAME="IDX100"></A>
<DT><CODE>transpose-words (M-t)</CODE>
-<DD><A NAME="IDX93"></A>
+<DD><A NAME="IDX101"></A>
Drag the word before point past the word after point,
moving point past that word as well.
If the insertion point is at the end of the line, this transposes
the last two words on the line.
<P>
-<A NAME="IDX94"></A>
+<A NAME="IDX102"></A>
<DT><CODE>upcase-word (M-u)</CODE>
-<DD><A NAME="IDX95"></A>
+<DD><A NAME="IDX103"></A>
Uppercase the current (or following) word. With a negative argument,
uppercase the previous word, but do not move the cursor.
<P>
-<A NAME="IDX96"></A>
+<A NAME="IDX104"></A>
<DT><CODE>downcase-word (M-l)</CODE>
-<DD><A NAME="IDX97"></A>
+<DD><A NAME="IDX105"></A>
Lowercase the current (or following) word. With a negative argument,
lowercase the previous word, but do not move the cursor.
<P>
-<A NAME="IDX98"></A>
+<A NAME="IDX106"></A>
<DT><CODE>capitalize-word (M-c)</CODE>
-<DD><A NAME="IDX99"></A>
+<DD><A NAME="IDX107"></A>
Capitalize the current (or following) word. With a negative argument,
capitalize the previous word, but do not move the cursor.
<P>
-<A NAME="IDX100"></A>
+<A NAME="IDX108"></A>
<DT><CODE>overwrite-mode ()</CODE>
-<DD><A NAME="IDX101"></A>
+<DD><A NAME="IDX109"></A>
Toggle overwrite mode. With an explicit positive numeric argument,
switches to overwrite mode. With an explicit non-positive numeric
argument, switches to insert mode. This command affects only
@@ -1597,7 +1668,7 @@ By default, this command is unbound.
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC22"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H3> 1.4.4 Killing And Yanking </H3>
@@ -1606,106 +1677,106 @@ By default, this command is unbound.
<DL COMPACT>
-<A NAME="IDX102"></A>
+<A NAME="IDX110"></A>
<DT><CODE>kill-line (C-k)</CODE>
-<DD><A NAME="IDX103"></A>
+<DD><A NAME="IDX111"></A>
Kill the text from point to the end of the line.
<P>
-<A NAME="IDX104"></A>
+<A NAME="IDX112"></A>
<DT><CODE>backward-kill-line (C-x Rubout)</CODE>
-<DD><A NAME="IDX105"></A>
+<DD><A NAME="IDX113"></A>
Kill backward to the beginning of the line.
<P>
-<A NAME="IDX106"></A>
+<A NAME="IDX114"></A>
<DT><CODE>unix-line-discard (C-u)</CODE>
-<DD><A NAME="IDX107"></A>
+<DD><A NAME="IDX115"></A>
Kill backward from the cursor to the beginning of the current line.
<P>
-<A NAME="IDX108"></A>
+<A NAME="IDX116"></A>
<DT><CODE>kill-whole-line ()</CODE>
-<DD><A NAME="IDX109"></A>
+<DD><A NAME="IDX117"></A>
Kill all characters on the current line, no matter where point is.
By default, this is unbound.
<P>
-<A NAME="IDX110"></A>
+<A NAME="IDX118"></A>
<DT><CODE>kill-word (M-d)</CODE>
-<DD><A NAME="IDX111"></A>
+<DD><A NAME="IDX119"></A>
Kill from point to the end of the current word, or if between
words, to the end of the next word.
Word boundaries are the same as <CODE>forward-word</CODE>.
<P>
-<A NAME="IDX112"></A>
+<A NAME="IDX120"></A>
<DT><CODE>backward-kill-word (M-<KBD>DEL</KBD>)</CODE>
-<DD><A NAME="IDX113"></A>
+<DD><A NAME="IDX121"></A>
Kill the word behind point.
Word boundaries are the same as <CODE>backward-word</CODE>.
<P>
-<A NAME="IDX114"></A>
+<A NAME="IDX122"></A>
<DT><CODE>unix-word-rubout (C-w)</CODE>
-<DD><A NAME="IDX115"></A>
+<DD><A NAME="IDX123"></A>
Kill the word behind point, using white space as a word boundary.
The killed text is saved on the kill-ring.
<P>
-<A NAME="IDX116"></A>
+<A NAME="IDX124"></A>
<DT><CODE>unix-filename-rubout ()</CODE>
-<DD><A NAME="IDX117"></A>
+<DD><A NAME="IDX125"></A>
Kill the word behind point, using white space and the slash character
as the word boundaries.
The killed text is saved on the kill-ring.
<P>
-<A NAME="IDX118"></A>
+<A NAME="IDX126"></A>
<DT><CODE>delete-horizontal-space ()</CODE>
-<DD><A NAME="IDX119"></A>
+<DD><A NAME="IDX127"></A>
Delete all spaces and tabs around point. By default, this is unbound.
<P>
-<A NAME="IDX120"></A>
+<A NAME="IDX128"></A>
<DT><CODE>kill-region ()</CODE>
-<DD><A NAME="IDX121"></A>
+<DD><A NAME="IDX129"></A>
Kill the text in the current region.
By default, this command is unbound.
<P>
-<A NAME="IDX122"></A>
+<A NAME="IDX130"></A>
<DT><CODE>copy-region-as-kill ()</CODE>
-<DD><A NAME="IDX123"></A>
+<DD><A NAME="IDX131"></A>
Copy the text in the region to the kill buffer, so it can be yanked
right away. By default, this command is unbound.
<P>
-<A NAME="IDX124"></A>
+<A NAME="IDX132"></A>
<DT><CODE>copy-backward-word ()</CODE>
-<DD><A NAME="IDX125"></A>
+<DD><A NAME="IDX133"></A>
Copy the word before point to the kill buffer.
The word boundaries are the same as <CODE>backward-word</CODE>.
By default, this command is unbound.
<P>
-<A NAME="IDX126"></A>
+<A NAME="IDX134"></A>
<DT><CODE>copy-forward-word ()</CODE>
-<DD><A NAME="IDX127"></A>
+<DD><A NAME="IDX135"></A>
Copy the word following point to the kill buffer.
The word boundaries are the same as <CODE>forward-word</CODE>.
By default, this command is unbound.
<P>
-<A NAME="IDX128"></A>
+<A NAME="IDX136"></A>
<DT><CODE>yank (C-y)</CODE>
-<DD><A NAME="IDX129"></A>
+<DD><A NAME="IDX137"></A>
Yank the top of the kill ring into the buffer at point.
<P>
-<A NAME="IDX130"></A>
+<A NAME="IDX138"></A>
<DT><CODE>yank-pop (M-y)</CODE>
-<DD><A NAME="IDX131"></A>
+<DD><A NAME="IDX139"></A>
Rotate the kill-ring, and yank the new top. You can only do this if
the prior command is <CODE>yank</CODE> or <CODE>yank-pop</CODE>.
</DL>
@@ -1722,23 +1793,23 @@ the prior command is <CODE>yank</CODE> or <CODE>yank-pop</CODE>.
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC22"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H3> 1.4.5 Specifying Numeric Arguments </H3>
<!--docid::SEC18::-->
<DL COMPACT>
-<A NAME="IDX132"></A>
+<A NAME="IDX140"></A>
<DT><CODE>digit-argument (<KBD>M-0</KBD>, <KBD>M-1</KBD>, <small>...</small> <KBD>M--</KBD>)</CODE>
-<DD><A NAME="IDX133"></A>
+<DD><A NAME="IDX141"></A>
Add this digit to the argument already accumulating, or start a new
argument. <KBD>M--</KBD> starts a negative argument.
<P>
-<A NAME="IDX134"></A>
+<A NAME="IDX142"></A>
<DT><CODE>universal-argument ()</CODE>
-<DD><A NAME="IDX135"></A>
+<DD><A NAME="IDX143"></A>
This is another way to specify an argument.
If this command is followed by one or more digits, optionally with a
leading minus sign, those digits define the argument.
@@ -1765,7 +1836,7 @@ By default, this is not bound to a key.
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC22"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H3> 1.4.6 Letting Readline Type For You </H3>
@@ -1773,33 +1844,33 @@ By default, this is not bound to a key.
<P>
<DL COMPACT>
-<A NAME="IDX136"></A>
+<A NAME="IDX144"></A>
<DT><CODE>complete (<KBD>TAB</KBD>)</CODE>
-<DD><A NAME="IDX137"></A>
+<DD><A NAME="IDX145"></A>
Attempt to perform completion on the text before point.
The actual completion performed is application-specific.
The default is filename completion.
<P>
-<A NAME="IDX138"></A>
+<A NAME="IDX146"></A>
<DT><CODE>possible-completions (M-?)</CODE>
-<DD><A NAME="IDX139"></A>
+<DD><A NAME="IDX147"></A>
List the possible completions of the text before point.
When displaying completions, Readline sets the number of columns used
for display to the value of <CODE>completion-display-width</CODE>, the value of
the environment variable <CODE>COLUMNS</CODE>, or the screen width, in that order.
<P>
-<A NAME="IDX140"></A>
+<A NAME="IDX148"></A>
<DT><CODE>insert-completions (M-*)</CODE>
-<DD><A NAME="IDX141"></A>
+<DD><A NAME="IDX149"></A>
Insert all completions of the text before point that would have
been generated by <CODE>possible-completions</CODE>.
<P>
-<A NAME="IDX142"></A>
+<A NAME="IDX150"></A>
<DT><CODE>menu-complete ()</CODE>
-<DD><A NAME="IDX143"></A>
+<DD><A NAME="IDX151"></A>
Similar to <CODE>complete</CODE>, but replaces the word to be completed
with a single match from the list of possible completions.
Repeated execution of <CODE>menu-complete</CODE> steps through the list
@@ -1814,17 +1885,17 @@ This command is intended to be bound to <KBD>TAB</KBD>, but is unbound
by default.
<P>
-<A NAME="IDX144"></A>
+<A NAME="IDX152"></A>
<DT><CODE>menu-complete-backward ()</CODE>
-<DD><A NAME="IDX145"></A>
+<DD><A NAME="IDX153"></A>
Identical to <CODE>menu-complete</CODE>, but moves backward through the list
of possible completions, as if <CODE>menu-complete</CODE> had been given a
negative argument.
<P>
-<A NAME="IDX146"></A>
+<A NAME="IDX154"></A>
<DT><CODE>delete-char-or-list ()</CODE>
-<DD><A NAME="IDX147"></A>
+<DD><A NAME="IDX155"></A>
Deletes the character under the cursor if not at the beginning or
end of the line (like <CODE>delete-char</CODE>).
If at the end of the line, behaves identically to
@@ -1846,33 +1917,40 @@ This command is unbound by default.
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC22"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H3> 1.4.7 Keyboard Macros </H3>
<!--docid::SEC20::-->
<DL COMPACT>
-<A NAME="IDX148"></A>
+<A NAME="IDX156"></A>
<DT><CODE>start-kbd-macro (C-x ()</CODE>
-<DD><A NAME="IDX149"></A>
+<DD><A NAME="IDX157"></A>
Begin saving the characters typed into the current keyboard macro.
<P>
-<A NAME="IDX150"></A>
+<A NAME="IDX158"></A>
<DT><CODE>end-kbd-macro (C-x ))</CODE>
-<DD><A NAME="IDX151"></A>
+<DD><A NAME="IDX159"></A>
Stop saving the characters typed into the current keyboard macro
and save the definition.
<P>
-<A NAME="IDX152"></A>
+<A NAME="IDX160"></A>
<DT><CODE>call-last-kbd-macro (C-x e)</CODE>
-<DD><A NAME="IDX153"></A>
+<DD><A NAME="IDX161"></A>
Re-execute the last keyboard macro defined, by making the characters
in the macro appear as if typed at the keyboard.
<P>
+<A NAME="IDX162"></A>
+<DT><CODE>print-last-kbd-macro ()</CODE>
+<DD><A NAME="IDX163"></A>
+Print the last keboard macro defined in a format suitable for the
+<VAR>inputrc</VAR> file.
+<P>
+
</DL>
<P>
@@ -1887,94 +1965,94 @@ in the macro appear as if typed at the keyboard.
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC22"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H3> 1.4.8 Some Miscellaneous Commands </H3>
<!--docid::SEC21::-->
<DL COMPACT>
-<A NAME="IDX154"></A>
+<A NAME="IDX164"></A>
<DT><CODE>re-read-init-file (C-x C-r)</CODE>
-<DD><A NAME="IDX155"></A>
+<DD><A NAME="IDX165"></A>
Read in the contents of the <VAR>inputrc</VAR> file, and incorporate
any bindings or variable assignments found there.
<P>
-<A NAME="IDX156"></A>
+<A NAME="IDX166"></A>
<DT><CODE>abort (C-g)</CODE>
-<DD><A NAME="IDX157"></A>
+<DD><A NAME="IDX167"></A>
Abort the current editing command and
ring the terminal's bell (subject to the setting of
<CODE>bell-style</CODE>).
<P>
-<A NAME="IDX158"></A>
+<A NAME="IDX168"></A>
<DT><CODE>do-uppercase-version (M-a, M-b, M-<VAR>x</VAR>, <small>...</small>)</CODE>
-<DD><A NAME="IDX159"></A>
+<DD><A NAME="IDX169"></A>
If the metafied character <VAR>x</VAR> is lowercase, run the command
that is bound to the corresponding uppercase character.
<P>
-<A NAME="IDX160"></A>
+<A NAME="IDX170"></A>
<DT><CODE>prefix-meta (<KBD>ESC</KBD>)</CODE>
-<DD><A NAME="IDX161"></A>
+<DD><A NAME="IDX171"></A>
Metafy the next character typed. This is for keyboards
without a meta key. Typing <SAMP>`<KBD>ESC</KBD> f'</SAMP> is equivalent to typing
<KBD>M-f</KBD>.
<P>
-<A NAME="IDX162"></A>
+<A NAME="IDX172"></A>
<DT><CODE>undo (C-_ or C-x C-u)</CODE>
-<DD><A NAME="IDX163"></A>
+<DD><A NAME="IDX173"></A>
Incremental undo, separately remembered for each line.
<P>
-<A NAME="IDX164"></A>
+<A NAME="IDX174"></A>
<DT><CODE>revert-line (M-r)</CODE>
-<DD><A NAME="IDX165"></A>
+<DD><A NAME="IDX175"></A>
Undo all changes made to this line. This is like executing the <CODE>undo</CODE>
command enough times to get back to the beginning.
<P>
-<A NAME="IDX166"></A>
+<A NAME="IDX176"></A>
<DT><CODE>tilde-expand (M-~)</CODE>
-<DD><A NAME="IDX167"></A>
+<DD><A NAME="IDX177"></A>
Perform tilde expansion on the current word.
<P>
-<A NAME="IDX168"></A>
+<A NAME="IDX178"></A>
<DT><CODE>set-mark (C-@)</CODE>
-<DD><A NAME="IDX169"></A>
+<DD><A NAME="IDX179"></A>
Set the mark to the point. If a
numeric argument is supplied, the mark is set to that position.
<P>
-<A NAME="IDX170"></A>
+<A NAME="IDX180"></A>
<DT><CODE>exchange-point-and-mark (C-x C-x)</CODE>
-<DD><A NAME="IDX171"></A>
+<DD><A NAME="IDX181"></A>
Swap the point with the mark. The current cursor position is set to
the saved position, and the old cursor position is saved as the mark.
<P>
-<A NAME="IDX172"></A>
+<A NAME="IDX182"></A>
<DT><CODE>character-search (C-])</CODE>
-<DD><A NAME="IDX173"></A>
+<DD><A NAME="IDX183"></A>
A character is read and point is moved to the next occurrence of that
character. A negative count searches for previous occurrences.
<P>
-<A NAME="IDX174"></A>
+<A NAME="IDX184"></A>
<DT><CODE>character-search-backward (M-C-])</CODE>
-<DD><A NAME="IDX175"></A>
+<DD><A NAME="IDX185"></A>
A character is read and point is moved to the previous occurrence
of that character. A negative count searches for subsequent
occurrences.
<P>
-<A NAME="IDX176"></A>
+<A NAME="IDX186"></A>
<DT><CODE>skip-csi-sequence ()</CODE>
-<DD><A NAME="IDX177"></A>
+<DD><A NAME="IDX187"></A>
Read enough characters to consume a multi-key sequence such as those
defined for keys like Home and End. Such sequences begin with a
Control Sequence Indicator (CSI), usually ESC-[. If this sequence is
@@ -1984,9 +2062,9 @@ stray characters into the editing buffer. This is unbound by default,
but usually bound to ESC-[.
<P>
-<A NAME="IDX178"></A>
+<A NAME="IDX188"></A>
<DT><CODE>insert-comment (M-#)</CODE>
-<DD><A NAME="IDX179"></A>
+<DD><A NAME="IDX189"></A>
Without a numeric argument, the value of the <CODE>comment-begin</CODE>
variable is inserted at the beginning of the current line.
If a numeric argument is supplied, this command acts as a toggle: if
@@ -1997,43 +2075,43 @@ the line.
In either case, the line is accepted as if a newline had been typed.
<P>
-<A NAME="IDX180"></A>
+<A NAME="IDX190"></A>
<DT><CODE>dump-functions ()</CODE>
-<DD><A NAME="IDX181"></A>
+<DD><A NAME="IDX191"></A>
Print all of the functions and their key bindings to the
Readline output stream. If a numeric argument is supplied,
the output is formatted in such a way that it can be made part
of an <VAR>inputrc</VAR> file. This command is unbound by default.
<P>
-<A NAME="IDX182"></A>
+<A NAME="IDX192"></A>
<DT><CODE>dump-variables ()</CODE>
-<DD><A NAME="IDX183"></A>
+<DD><A NAME="IDX193"></A>
Print all of the settable variables and their values to the
Readline output stream. If a numeric argument is supplied,
the output is formatted in such a way that it can be made part
of an <VAR>inputrc</VAR> file. This command is unbound by default.
<P>
-<A NAME="IDX184"></A>
+<A NAME="IDX194"></A>
<DT><CODE>dump-macros ()</CODE>
-<DD><A NAME="IDX185"></A>
+<DD><A NAME="IDX195"></A>
Print all of the Readline key sequences bound to macros and the
strings they output. If a numeric argument is supplied,
the output is formatted in such a way that it can be made part
of an <VAR>inputrc</VAR> file. This command is unbound by default.
<P>
-<A NAME="IDX186"></A>
+<A NAME="IDX196"></A>
<DT><CODE>emacs-editing-mode (C-e)</CODE>
-<DD><A NAME="IDX187"></A>
+<DD><A NAME="IDX197"></A>
When in <CODE>vi</CODE> command mode, this causes a switch to <CODE>emacs</CODE>
editing mode.
<P>
-<A NAME="IDX188"></A>
+<A NAME="IDX198"></A>
<DT><CODE>vi-editing-mode (M-C-j)</CODE>
-<DD><A NAME="IDX189"></A>
+<DD><A NAME="IDX199"></A>
When in <CODE>emacs</CODE> editing mode, this causes a switch to <CODE>vi</CODE>
editing mode.
<P>
@@ -2052,7 +2130,7 @@ editing mode.
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC23"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H2> 1.5 Readline vi Mode </H2>
@@ -2084,7 +2162,7 @@ in the consistency of user interface across discrete programs that need
to provide a command line interface.
</P><P>
-Copyright (C) 1988--2011 Free Software Foundation, Inc.
+Copyright (C) 1988--2014 Free Software Foundation, Inc.
</P><P>
Permission is granted to make and distribute verbatim copies of
@@ -2112,10 +2190,10 @@ by the Foundation.
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC24"> &gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC49"> &gt;&gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC50"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H1> 2. Programming with GNU Readline </H1>
@@ -2137,8 +2215,8 @@ in your own programs, this section is for you.
<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC29">2.4 Readline Convenience Functions</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Functions which Readline supplies to
aid in writing your own custom
functions.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC43">2.5 Readline Signal Handling</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">How Readline behaves when it receives signals.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC44">2.6 Custom Completers</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Supplanting or supplementing Readline's
+<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">How Readline behaves when it receives signals.</TD></TR>
+<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC45">2.6 Custom Completers</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Supplanting or supplementing Readline's
completion functions.</TD></TR>
</TABLE></BLOCKQUOTE>
<P>
@@ -2151,10 +2229,10 @@ in your own programs, this section is for you.
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC25"> &gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC23"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC49"> &gt;&gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC50"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H2> 2.1 Basic Behavior </H2>
@@ -2168,8 +2246,8 @@ the simplest way possible, perhaps to replace calls in your code to
<CODE>gets()</CODE> or <CODE>fgets()</CODE>.
</P><P>
-<A NAME="IDX190"></A>
-<A NAME="IDX191"></A>
+<A NAME="IDX200"></A>
+<A NAME="IDX201"></A>
</P><P>
The function <CODE>readline()</CODE> prints a prompt <VAR>prompt</VAR>
@@ -2264,7 +2342,7 @@ Thus, to disable the default <KBD>TAB</KBD> behavior, the following suffices:
This code should be executed once at the start of your program; you
might write a function called <CODE>initialize_readline()</CODE> which
performs this and other desired initializations, such as installing
-custom completers (see section <A HREF="readline.html#SEC44">2.6 Custom Completers</A>).
+custom completers (see section <A HREF="readline.html#SEC45">2.6 Custom Completers</A>).
</P><P>
<A NAME="Custom Functions"></A>
@@ -2278,7 +2356,7 @@ custom completers (see section <A HREF="readline.html#SEC44">2.6 Custom Complete
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC28"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H2> 2.2 Custom Functions </H2>
@@ -2328,14 +2406,14 @@ For Readline 4.2, for example, the value of
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC28"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H3> 2.2.1 Readline Typedefs </H3>
<!--docid::SEC26::-->
<P>
-For readabilty, we declare a number of new object types, all pointers
+For readability, we declare a number of new object types, all pointers
to functions.
</P><P>
@@ -2425,7 +2503,7 @@ The full list of function pointer types available is
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC28"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H3> 2.2.2 Writing a New Function </H3>
@@ -2472,10 +2550,10 @@ command functions.
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> &gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> &lt;&lt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC23"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC49"> &gt;&gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC50"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H2> 2.3 Readline Variables </H2>
@@ -2485,7 +2563,7 @@ command functions.
These variables are available to function writers.
</P><P>
-<A NAME="IDX192"></A>
+<A NAME="IDX202"></A>
<DL>
<DT><U>Variable:</U> char * <B>rl_line_buffer</B>
<DD>This is the line gathered so far. You are welcome to modify the
@@ -2495,7 +2573,7 @@ the memory allocated to <CODE>rl_line_buffer</CODE>.
</DL>
</P><P>
-<A NAME="IDX193"></A>
+<A NAME="IDX203"></A>
<DL>
<DT><U>Variable:</U> int <B>rl_point</B>
<DD>The offset of the current cursor position in <CODE>rl_line_buffer</CODE>
@@ -2503,7 +2581,7 @@ the memory allocated to <CODE>rl_line_buffer</CODE>.
</DL>
</P><P>
-<A NAME="IDX194"></A>
+<A NAME="IDX204"></A>
<DL>
<DT><U>Variable:</U> int <B>rl_end</B>
<DD>The number of characters present in <CODE>rl_line_buffer</CODE>. When
@@ -2512,7 +2590,7 @@ the memory allocated to <CODE>rl_line_buffer</CODE>.
</DL>
</P><P>
-<A NAME="IDX195"></A>
+<A NAME="IDX205"></A>
<DL>
<DT><U>Variable:</U> int <B>rl_mark</B>
<DD>The <VAR>mark</VAR> (saved position) in the current line. If set, the mark
@@ -2520,7 +2598,7 @@ and point define a <EM>region</EM>.
</DL>
</P><P>
-<A NAME="IDX196"></A>
+<A NAME="IDX206"></A>
<DL>
<DT><U>Variable:</U> int <B>rl_done</B>
<DD>Setting this to a non-zero value causes Readline to return the current
@@ -2528,7 +2606,7 @@ line immediately.
</DL>
</P><P>
-<A NAME="IDX197"></A>
+<A NAME="IDX207"></A>
<DL>
<DT><U>Variable:</U> int <B>rl_num_chars_to_read</B>
<DD>Setting this to a positive value before calling <CODE>readline()</CODE> causes
@@ -2537,7 +2615,7 @@ than reading up to a character bound to <CODE>accept-line</CODE>.
</DL>
</P><P>
-<A NAME="IDX198"></A>
+<A NAME="IDX208"></A>
<DL>
<DT><U>Variable:</U> int <B>rl_pending_input</B>
<DD>Setting this to a value makes it the next keystroke read. This is a
@@ -2545,7 +2623,7 @@ way to stuff a single character into the input stream.
</DL>
</P><P>
-<A NAME="IDX199"></A>
+<A NAME="IDX209"></A>
<DL>
<DT><U>Variable:</U> int <B>rl_dispatching</B>
<DD>Set to a non-zero value if a function is being called from a key binding;
@@ -2554,7 +2632,7 @@ they were called directly or by Readline's dispatching mechanism.
</DL>
</P><P>
-<A NAME="IDX200"></A>
+<A NAME="IDX210"></A>
<DL>
<DT><U>Variable:</U> int <B>rl_erase_empty_line</B>
<DD>Setting this to a non-zero value causes Readline to completely erase
@@ -2564,7 +2642,7 @@ the beginning of the newly-blank line.
</DL>
</P><P>
-<A NAME="IDX201"></A>
+<A NAME="IDX211"></A>
<DL>
<DT><U>Variable:</U> char * <B>rl_prompt</B>
<DD>The prompt Readline uses. This is set from the argument to
@@ -2574,7 +2652,7 @@ be used to modify the prompt string after calling <CODE>readline()</CODE>.
</DL>
</P><P>
-<A NAME="IDX202"></A>
+<A NAME="IDX212"></A>
<DL>
<DT><U>Variable:</U> char * <B>rl_display_prompt</B>
<DD>The string displayed as the prompt. This is usually identical to
@@ -2583,7 +2661,7 @@ use the prompt string as a message area, such as incremental search.
</DL>
</P><P>
-<A NAME="IDX203"></A>
+<A NAME="IDX213"></A>
<DL>
<DT><U>Variable:</U> int <B>rl_already_prompted</B>
<DD>If an application wishes to display the prompt itself, rather than have
@@ -2596,14 +2674,14 @@ never sets it.
</DL>
</P><P>
-<A NAME="IDX204"></A>
+<A NAME="IDX214"></A>
<DL>
<DT><U>Variable:</U> const char * <B>rl_library_version</B>
<DD>The version number of this revision of the library.
</DL>
</P><P>
-<A NAME="IDX205"></A>
+<A NAME="IDX215"></A>
<DL>
<DT><U>Variable:</U> int <B>rl_readline_version</B>
<DD>An integer encoding the current version of the library. The encoding is
@@ -2614,7 +2692,7 @@ value 0x0402.
</DL>
</P><P>
-<A NAME="IDX206"></A>
+<A NAME="IDX216"></A>
<DL>
<DT><U>Variable:</U> int <B>rl_gnu_readline_p</B>
<DD>Always set to 1, denoting that this is GNU readline rather than some
@@ -2622,7 +2700,7 @@ emulation.
</DL>
</P><P>
-<A NAME="IDX207"></A>
+<A NAME="IDX217"></A>
<DL>
<DT><U>Variable:</U> const char * <B>rl_terminal_name</B>
<DD>The terminal type, used for initialization. If not set by the application,
@@ -2631,7 +2709,7 @@ the first time it is called.
</DL>
</P><P>
-<A NAME="IDX208"></A>
+<A NAME="IDX218"></A>
<DL>
<DT><U>Variable:</U> const char * <B>rl_readline_name</B>
<DD>This variable is set to a unique name by each application using Readline.
@@ -2640,7 +2718,7 @@ The value allows conditional parsing of the inputrc file
</DL>
</P><P>
-<A NAME="IDX209"></A>
+<A NAME="IDX219"></A>
<DL>
<DT><U>Variable:</U> FILE * <B>rl_instream</B>
<DD>The stdio stream from which Readline reads input.
@@ -2648,7 +2726,7 @@ If <CODE>NULL</CODE>, Readline defaults to <VAR>stdin</VAR>.
</DL>
</P><P>
-<A NAME="IDX210"></A>
+<A NAME="IDX220"></A>
<DL>
<DT><U>Variable:</U> FILE * <B>rl_outstream</B>
<DD>The stdio stream to which Readline performs output.
@@ -2656,7 +2734,7 @@ If <CODE>NULL</CODE>, Readline defaults to <VAR>stdout</VAR>.
</DL>
</P><P>
-<A NAME="IDX211"></A>
+<A NAME="IDX221"></A>
<DL>
<DT><U>Variable:</U> int <B>rl_prefer_env_winsize</B>
<DD>If non-zero, Readline gives values found in the <CODE>LINES</CODE> and
@@ -2665,7 +2743,7 @@ from the kernel when computing the screen dimensions.
</DL>
</P><P>
-<A NAME="IDX212"></A>
+<A NAME="IDX222"></A>
<DL>
<DT><U>Variable:</U> rl_command_func_t * <B>rl_last_func</B>
<DD>The address of the last command function Readline executed. May be used to
@@ -2674,7 +2752,7 @@ example.
</DL>
</P><P>
-<A NAME="IDX213"></A>
+<A NAME="IDX223"></A>
<DL>
<DT><U>Variable:</U> rl_hook_func_t * <B>rl_startup_hook</B>
<DD>If non-zero, this is the address of a function to call just
@@ -2682,7 +2760,7 @@ before <CODE>readline</CODE> prints the first prompt.
</DL>
</P><P>
-<A NAME="IDX214"></A>
+<A NAME="IDX224"></A>
<DL>
<DT><U>Variable:</U> rl_hook_func_t * <B>rl_pre_input_hook</B>
<DD>If non-zero, this is the address of a function to call after
@@ -2691,7 +2769,7 @@ starts reading input characters.
</DL>
</P><P>
-<A NAME="IDX215"></A>
+<A NAME="IDX225"></A>
<DL>
<DT><U>Variable:</U> rl_hook_func_t * <B>rl_event_hook</B>
<DD>If non-zero, this is the address of a function to call periodically
@@ -2701,17 +2779,52 @@ is no keyboard input.
</DL>
</P><P>
-<A NAME="IDX216"></A>
+<A NAME="IDX226"></A>
<DL>
<DT><U>Variable:</U> rl_getc_func_t * <B>rl_getc_function</B>
<DD>If non-zero, Readline will call indirectly through this pointer
to get a character from the input stream. By default, it is set to
<CODE>rl_getc</CODE>, the default Readline character input function
(see section <A HREF="readline.html#SEC37">2.4.8 Character Input</A>).
+In general, an application that sets <VAR>rl_getc_function</VAR> should consider
+setting <VAR>rl_input_available_hook</VAR> as well.
</DL>
</P><P>
-<A NAME="IDX217"></A>
+<A NAME="IDX227"></A>
+<DL>
+<DT><U>Variable:</U> rl_hook_func_t * <B>rl_signal_event_hook</B>
+<DD>If non-zero, this is the address of a function to call if a read system
+call is interrupted when Readline is reading terminal input.
+</DL>
+</P><P>
+
+<A NAME="IDX228"></A>
+<DL>
+<DT><U>Variable:</U> rl_hook_func_t * <B>rl_input_available_hook</B>
+<DD>If non-zero, Readline will use this function's return value when it needs
+to determine whether or not there is available input on the current input
+source.
+The default hook checks <CODE>rl_instream</CODE>; if an application is using a
+different input source, it should set the hook appropriately.
+Readline queries for available input when implementing intra-key-sequence
+timeouts during input and incremental searches.
+This may use an application-specific timeout before returning a value;
+Readline uses the value passed to <CODE>rl_set_keyboard_input_timeout()</CODE>
+or the value of the user-settable <VAR>keyseq-timeout</VAR> variable.
+This is designed for use by applications using Readline's callback interface
+(see section <A HREF="readline.html#SEC41">2.4.12 Alternate Interface</A>), which may not use the traditional
+<CODE>read(2)</CODE> and file descriptor interface, or other applications using
+a different input mechanism.
+If an application uses an input mechanism or hook that can potentially exceed
+the value of <VAR>keyseq-timeout</VAR>, it should increase the timeout or set
+this hook appropriately even when not using the callback interface.
+In general, an application that sets <VAR>rl_getc_function</VAR> should consider
+setting <VAR>rl_input_available_hook</VAR> as well.
+</DL>
+</P><P>
+
+<A NAME="IDX229"></A>
<DL>
<DT><U>Variable:</U> rl_voidfunc_t * <B>rl_redisplay_function</B>
<DD>If non-zero, Readline will call indirectly through this pointer
@@ -2721,7 +2834,7 @@ redisplay function (see section <A HREF="readline.html#SEC35">2.4.6 Redisplay</A
</DL>
</P><P>
-<A NAME="IDX218"></A>
+<A NAME="IDX230"></A>
<DL>
<DT><U>Variable:</U> rl_vintfunc_t * <B>rl_prep_term_function</B>
<DD>If non-zero, Readline will call indirectly through this pointer
@@ -2732,7 +2845,7 @@ By default, this is set to <CODE>rl_prep_terminal</CODE>
</DL>
</P><P>
-<A NAME="IDX219"></A>
+<A NAME="IDX231"></A>
<DL>
<DT><U>Variable:</U> rl_voidfunc_t * <B>rl_deprep_term_function</B>
<DD>If non-zero, Readline will call indirectly through this pointer
@@ -2743,7 +2856,7 @@ By default, this is set to <CODE>rl_deprep_terminal</CODE>
</DL>
</P><P>
-<A NAME="IDX220"></A>
+<A NAME="IDX232"></A>
<DL>
<DT><U>Variable:</U> Keymap <B>rl_executing_keymap</B>
<DD>This variable is set to the keymap (see section <A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A>) in which the
@@ -2751,7 +2864,7 @@ currently executing readline function was found.
</DL>
</P><P>
-<A NAME="IDX221"></A>
+<A NAME="IDX233"></A>
<DL>
<DT><U>Variable:</U> Keymap <B>rl_binding_keymap</B>
<DD>This variable is set to the keymap (see section <A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A>) in which the
@@ -2759,14 +2872,36 @@ last key binding occurred.
</DL>
</P><P>
-<A NAME="IDX222"></A>
+<A NAME="IDX234"></A>
<DL>
<DT><U>Variable:</U> char * <B>rl_executing_macro</B>
<DD>This variable is set to the text of any currently-executing macro.
</DL>
</P><P>
-<A NAME="IDX223"></A>
+<A NAME="IDX235"></A>
+<DL>
+<DT><U>Variable:</U> int <B>rl_executing_key</B>
+<DD>The key that caused the dispatch to the currently-executing Readline function.
+</DL>
+</P><P>
+
+<A NAME="IDX236"></A>
+<DL>
+<DT><U>Variable:</U> char * <B>rl_executing_keyseq</B>
+<DD>The full key sequence that caused the dispatch to the currently-executing
+Readline function.
+</DL>
+</P><P>
+
+<A NAME="IDX237"></A>
+<DL>
+<DT><U>Variable:</U> int <B>rl_key_sequence_length</B>
+<DD>The number of characters in <VAR>rl_executing_keyseq</VAR>.
+</DL>
+</P><P>
+
+<A NAME="IDX238"></A>
<DL>
<DT><U>Variable:</U> int <B>rl_readline_state</B>
<DD>A variable with bit values that encapsulate the current Readline state.
@@ -2777,7 +2912,7 @@ whether a particular state bit is set. Current state bits include:
<DL COMPACT>
<DT><CODE>RL_STATE_NONE</CODE>
-<DD>Readline has not yet been called, nor has it begun to intialize.
+<DD>Readline has not yet been called, nor has it begun to initialize.
<DT><CODE>RL_STATE_INITIALIZING</CODE>
<DD>Readline is initializing its internal data structures.
<DT><CODE>RL_STATE_INITIALIZED</CODE>
@@ -2836,7 +2971,7 @@ and is about to return the line to the caller.
</DL>
</P><P>
-<A NAME="IDX224"></A>
+<A NAME="IDX239"></A>
<DL>
<DT><U>Variable:</U> int <B>rl_explicit_arg</B>
<DD>Set to a non-zero value if an explicit numeric argument was specified by
@@ -2844,7 +2979,7 @@ the user. Only valid in a bindable command function.
</DL>
</P><P>
-<A NAME="IDX225"></A>
+<A NAME="IDX240"></A>
<DL>
<DT><U>Variable:</U> int <B>rl_numeric_arg</B>
<DD>Set to the value of any numeric argument explicitly specified by the user
@@ -2853,7 +2988,7 @@ command function.
</DL>
</P><P>
-<A NAME="IDX226"></A>
+<A NAME="IDX241"></A>
<DL>
<DT><U>Variable:</U> int <B>rl_editing_mode</B>
<DD>Set to a value denoting Readline's current editing mode. A value of
@@ -2868,12 +3003,12 @@ means that vi mode is active.
<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC28"> &lt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC30"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &lt;&lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &lt;&lt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC23"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &gt;&gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H2> 2.4 Readline Convenience Functions </H2>
@@ -2895,6 +3030,7 @@ means that vi mode is active.
<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC40">2.4.11 Miscellaneous Functions</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Functions that don't fall into any category.</TD></TR>
<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC41">2.4.12 Alternate Interface</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Using Readline in a `callback' fashion.</TD></TR>
<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC42">2.4.13 A Readline Example</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">An example Readline function.</TD></TR>
+<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC43">2.4.14 Alternate Interface Example</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">An example program using the alternate interface.</TD></TR>
</TABLE></BLOCKQUOTE>
<P>
@@ -2904,12 +3040,12 @@ means that vi mode is active.
<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> &lt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC31"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &lt;&lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &lt;&lt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &gt;&gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H3> 2.4.1 Naming a Function </H3>
@@ -2931,7 +3067,7 @@ programmer, should bind the functions you write to descriptive names as
well. Readline provides a function for doing that:
</P><P>
-<A NAME="IDX227"></A>
+<A NAME="IDX242"></A>
<DL>
<DT><U>Function:</U> int <B>rl_add_defun</B> <I>(const char *name, rl_command_func_t *function, int key)</I>
<DD>Add <VAR>name</VAR> to the list of named functions. Make <VAR>function</VAR> be
@@ -2955,10 +3091,10 @@ you may need to use the underlying functions described below.
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC32"> &gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC32"> &lt;&lt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &gt;&gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H3> 2.4.2 Selecting a Keymap </H3>
@@ -2971,7 +3107,7 @@ get run. You can make your own keymaps, copy existing keymaps, and tell
Readline which keymap to use.
</P><P>
-<A NAME="IDX228"></A>
+<A NAME="IDX243"></A>
<DL>
<DT><U>Function:</U> Keymap <B>rl_make_bare_keymap</B> <I>(void)</I>
<DD>Returns a new, empty keymap. The space for the keymap is allocated with
@@ -2980,14 +3116,14 @@ Readline which keymap to use.
</DL>
</P><P>
-<A NAME="IDX229"></A>
+<A NAME="IDX244"></A>
<DL>
<DT><U>Function:</U> Keymap <B>rl_copy_keymap</B> <I>(Keymap map)</I>
<DD>Return a new keymap which is a copy of <VAR>map</VAR>.
</DL>
</P><P>
-<A NAME="IDX230"></A>
+<A NAME="IDX245"></A>
<DL>
<DT><U>Function:</U> Keymap <B>rl_make_keymap</B> <I>(void)</I>
<DD>Return a new keymap with the printing characters bound to rl_insert,
@@ -2996,7 +3132,7 @@ the Meta digits bound to produce numeric arguments.
</DL>
</P><P>
-<A NAME="IDX231"></A>
+<A NAME="IDX246"></A>
<DL>
<DT><U>Function:</U> void <B>rl_discard_keymap</B> <I>(Keymap keymap)</I>
<DD>Free the storage associated with the data in <VAR>keymap</VAR>.
@@ -3004,7 +3140,7 @@ The caller should free <VAR>keymap</VAR>.
</DL>
</P><P>
-<A NAME="IDX232"></A>
+<A NAME="IDX247"></A>
<DL>
<DT><U>Function:</U> void <B>rl_free_keymap</B> <I>(Keymap keymap)</I>
<DD>Free all storage associated with <VAR>keymap</VAR>. This calls
@@ -3016,21 +3152,21 @@ Readline has several internal keymaps. These functions allow you to
change which keymap is active.
</P><P>
-<A NAME="IDX233"></A>
+<A NAME="IDX248"></A>
<DL>
<DT><U>Function:</U> Keymap <B>rl_get_keymap</B> <I>(void)</I>
<DD>Returns the currently active keymap.
</DL>
</P><P>
-<A NAME="IDX234"></A>
+<A NAME="IDX249"></A>
<DL>
<DT><U>Function:</U> void <B>rl_set_keymap</B> <I>(Keymap keymap)</I>
<DD>Makes <VAR>keymap</VAR> the currently active keymap.
</DL>
</P><P>
-<A NAME="IDX235"></A>
+<A NAME="IDX250"></A>
<DL>
<DT><U>Function:</U> Keymap <B>rl_get_keymap_by_name</B> <I>(const char *name)</I>
<DD>Return the keymap matching <VAR>name</VAR>. <VAR>name</VAR> is one which would
@@ -3038,7 +3174,7 @@ be supplied in a <CODE>set keymap</CODE> inputrc line (see section <A HREF="read
</DL>
</P><P>
-<A NAME="IDX236"></A>
+<A NAME="IDX251"></A>
<DL>
<DT><U>Function:</U> char * <B>rl_get_keymap_name</B> <I>(Keymap keymap)</I>
<DD>Return the name matching <VAR>keymap</VAR>. <VAR>name</VAR> is one which would
@@ -3054,10 +3190,10 @@ be supplied in a <CODE>set keymap</CODE> inputrc line (see section <A HREF="read
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC33"> &gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC33"> &lt;&lt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &gt;&gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H3> 2.4.3 Binding Keys </H3>
@@ -3083,7 +3219,7 @@ initialization function assigned to the <CODE>rl_startup_hook</CODE> variable
These functions manage key bindings.
</P><P>
-<A NAME="IDX237"></A>
+<A NAME="IDX252"></A>
<DL>
<DT><U>Function:</U> int <B>rl_bind_key</B> <I>(int key, rl_command_func_t *function)</I>
<DD>Binds <VAR>key</VAR> to <VAR>function</VAR> in the currently active keymap.
@@ -3091,7 +3227,7 @@ Returns non-zero in the case of an invalid <VAR>key</VAR>.
</DL>
</P><P>
-<A NAME="IDX238"></A>
+<A NAME="IDX253"></A>
<DL>
<DT><U>Function:</U> int <B>rl_bind_key_in_map</B> <I>(int key, rl_command_func_t *function, Keymap map)</I>
<DD>Bind <VAR>key</VAR> to <VAR>function</VAR> in <VAR>map</VAR>.
@@ -3099,7 +3235,7 @@ Returns non-zero in the case of an invalid <VAR>key</VAR>.
</DL>
</P><P>
-<A NAME="IDX239"></A>
+<A NAME="IDX254"></A>
<DL>
<DT><U>Function:</U> int <B>rl_bind_key_if_unbound</B> <I>(int key, rl_command_func_t *function)</I>
<DD>Binds <VAR>key</VAR> to <VAR>function</VAR> if it is not already bound in the
@@ -3109,7 +3245,7 @@ already bound.
</DL>
</P><P>
-<A NAME="IDX240"></A>
+<A NAME="IDX255"></A>
<DL>
<DT><U>Function:</U> int <B>rl_bind_key_if_unbound_in_map</B> <I>(int key, rl_command_func_t *function, Keymap map)</I>
<DD>Binds <VAR>key</VAR> to <VAR>function</VAR> if it is not already bound in <VAR>map</VAR>.
@@ -3118,7 +3254,7 @@ already bound.
</DL>
</P><P>
-<A NAME="IDX241"></A>
+<A NAME="IDX256"></A>
<DL>
<DT><U>Function:</U> int <B>rl_unbind_key</B> <I>(int key)</I>
<DD>Bind <VAR>key</VAR> to the null function in the currently active keymap.
@@ -3126,7 +3262,7 @@ Returns non-zero in case of error.
</DL>
</P><P>
-<A NAME="IDX242"></A>
+<A NAME="IDX257"></A>
<DL>
<DT><U>Function:</U> int <B>rl_unbind_key_in_map</B> <I>(int key, Keymap map)</I>
<DD>Bind <VAR>key</VAR> to the null function in <VAR>map</VAR>.
@@ -3134,21 +3270,21 @@ Returns non-zero in case of error.
</DL>
</P><P>
-<A NAME="IDX243"></A>
+<A NAME="IDX258"></A>
<DL>
<DT><U>Function:</U> int <B>rl_unbind_function_in_map</B> <I>(rl_command_func_t *function, Keymap map)</I>
<DD>Unbind all keys that execute <VAR>function</VAR> in <VAR>map</VAR>.
</DL>
</P><P>
-<A NAME="IDX244"></A>
+<A NAME="IDX259"></A>
<DL>
<DT><U>Function:</U> int <B>rl_unbind_command_in_map</B> <I>(const char *command, Keymap map)</I>
<DD>Unbind all keys that are bound to <VAR>command</VAR> in <VAR>map</VAR>.
</DL>
</P><P>
-<A NAME="IDX245"></A>
+<A NAME="IDX260"></A>
<DL>
<DT><U>Function:</U> int <B>rl_bind_keyseq</B> <I>(const char *keyseq, rl_command_func_t *function)</I>
<DD>Bind the key sequence represented by the string <VAR>keyseq</VAR> to the function
@@ -3158,7 +3294,7 @@ The return value is non-zero if <VAR>keyseq</VAR> is invalid.
</DL>
</P><P>
-<A NAME="IDX246"></A>
+<A NAME="IDX261"></A>
<DL>
<DT><U>Function:</U> int <B>rl_bind_keyseq_in_map</B> <I>(const char *keyseq, rl_command_func_t *function, Keymap map)</I>
<DD>Bind the key sequence represented by the string <VAR>keyseq</VAR> to the function
@@ -3168,14 +3304,14 @@ The return value is non-zero if <VAR>keyseq</VAR> is invalid.
</DL>
</P><P>
-<A NAME="IDX247"></A>
+<A NAME="IDX262"></A>
<DL>
<DT><U>Function:</U> int <B>rl_set_key</B> <I>(const char *keyseq, rl_command_func_t *function, Keymap map)</I>
<DD>Equivalent to <CODE>rl_bind_keyseq_in_map</CODE>.
</DL>
</P><P>
-<A NAME="IDX248"></A>
+<A NAME="IDX263"></A>
<DL>
<DT><U>Function:</U> int <B>rl_bind_keyseq_if_unbound</B> <I>(const char *keyseq, rl_command_func_t *function)</I>
<DD>Binds <VAR>keyseq</VAR> to <VAR>function</VAR> if it is not already bound in the
@@ -3185,7 +3321,7 @@ already bound.
</DL>
</P><P>
-<A NAME="IDX249"></A>
+<A NAME="IDX264"></A>
<DL>
<DT><U>Function:</U> int <B>rl_bind_keyseq_if_unbound_in_map</B> <I>(const char *keyseq, rl_command_func_t *function, Keymap map)</I>
<DD>Binds <VAR>keyseq</VAR> to <VAR>function</VAR> if it is not already bound in <VAR>map</VAR>.
@@ -3194,7 +3330,7 @@ already bound.
</DL>
</P><P>
-<A NAME="IDX250"></A>
+<A NAME="IDX265"></A>
<DL>
<DT><U>Function:</U> int <B>rl_generic_bind</B> <I>(int type, const char *keyseq, char *data, Keymap map)</I>
<DD>Bind the key sequence represented by the string <VAR>keyseq</VAR> to the arbitrary
@@ -3205,7 +3341,7 @@ necessary. The initial keymap in which to do bindings is <VAR>map</VAR>.
</DL>
</P><P>
-<A NAME="IDX251"></A>
+<A NAME="IDX266"></A>
<DL>
<DT><U>Function:</U> int <B>rl_parse_and_bind</B> <I>(char *line)</I>
<DD>Parse <VAR>line</VAR> as if it had been read from the <CODE>inputrc</CODE> file and
@@ -3214,7 +3350,7 @@ perform any key bindings and variable assignments found
</DL>
</P><P>
-<A NAME="IDX252"></A>
+<A NAME="IDX267"></A>
<DL>
<DT><U>Function:</U> int <B>rl_read_init_file</B> <I>(const char *filename)</I>
<DD>Read keybindings and variable assignments from <VAR>filename</VAR>
@@ -3230,10 +3366,10 @@ perform any key bindings and variable assignments found
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC34"> &gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC34"> &lt;&lt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &gt;&gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H3> 2.4.4 Associating Function Names and Bindings </H3>
@@ -3245,14 +3381,14 @@ and the functions invoked by a particular key sequence. You may also
associate a new function name with an arbitrary function.
</P><P>
-<A NAME="IDX253"></A>
+<A NAME="IDX268"></A>
<DL>
<DT><U>Function:</U> rl_command_func_t * <B>rl_named_function</B> <I>(const char *name)</I>
<DD>Return the function with name <VAR>name</VAR>.
</DL>
</P><P>
-<A NAME="IDX254"></A>
+<A NAME="IDX269"></A>
<DL>
<DT><U>Function:</U> rl_command_func_t * <B>rl_function_of_keyseq</B> <I>(const char *keyseq, Keymap map, int *type)</I>
<DD>Return the function invoked by <VAR>keyseq</VAR> in keymap <VAR>map</VAR>.
@@ -3262,7 +3398,7 @@ it points to (one of <CODE>ISFUNC</CODE>, <CODE>ISKMAP</CODE>, or <CODE>ISMACR</
</DL>
</P><P>
-<A NAME="IDX255"></A>
+<A NAME="IDX270"></A>
<DL>
<DT><U>Function:</U> char ** <B>rl_invoking_keyseqs</B> <I>(rl_command_func_t *function)</I>
<DD>Return an array of strings representing the key sequences used to
@@ -3270,7 +3406,7 @@ invoke <VAR>function</VAR> in the current keymap.
</DL>
</P><P>
-<A NAME="IDX256"></A>
+<A NAME="IDX271"></A>
<DL>
<DT><U>Function:</U> char ** <B>rl_invoking_keyseqs_in_map</B> <I>(rl_command_func_t *function, Keymap map)</I>
<DD>Return an array of strings representing the key sequences used to
@@ -3278,7 +3414,7 @@ invoke <VAR>function</VAR> in the keymap <VAR>map</VAR>.
</DL>
</P><P>
-<A NAME="IDX257"></A>
+<A NAME="IDX272"></A>
<DL>
<DT><U>Function:</U> void <B>rl_function_dumper</B> <I>(int readable)</I>
<DD>Print the readline function names and the key sequences currently
@@ -3288,14 +3424,14 @@ the list is formatted in such a way that it can be made part of an
</DL>
</P><P>
-<A NAME="IDX258"></A>
+<A NAME="IDX273"></A>
<DL>
<DT><U>Function:</U> void <B>rl_list_funmap_names</B> <I>(void)</I>
<DD>Print the names of all bindable Readline functions to <CODE>rl_outstream</CODE>.
</DL>
</P><P>
-<A NAME="IDX259"></A>
+<A NAME="IDX274"></A>
<DL>
<DT><U>Function:</U> const char ** <B>rl_funmap_names</B> <I>(void)</I>
<DD>Return a NULL terminated array of known function names. The array is
@@ -3305,7 +3441,7 @@ should free the array, but not the pointers, using <CODE>free</CODE> or
</DL>
</P><P>
-<A NAME="IDX260"></A>
+<A NAME="IDX275"></A>
<DL>
<DT><U>Function:</U> int <B>rl_add_funmap_entry</B> <I>(const char *name, rl_command_func_t *function)</I>
<DD>Add <VAR>name</VAR> to the list of bindable Readline command names, and make
@@ -3321,10 +3457,10 @@ should free the array, but not the pointers, using <CODE>free</CODE> or
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC35"> &gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC35"> &lt;&lt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &gt;&gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H3> 2.4.5 Allowing Undoing </H3>
@@ -3360,7 +3496,7 @@ tells what to undo, not how to undo it. <CODE>UNDO_BEGIN</CODE> and
<CODE>rl_end_undo_group()</CODE>.
</P><P>
-<A NAME="IDX261"></A>
+<A NAME="IDX276"></A>
<DL>
<DT><U>Function:</U> int <B>rl_begin_undo_group</B> <I>(void)</I>
<DD>Begins saving undo information in a group construct. The undo
@@ -3370,7 +3506,7 @@ information usually comes from calls to <CODE>rl_insert_text()</CODE> and
</DL>
</P><P>
-<A NAME="IDX262"></A>
+<A NAME="IDX277"></A>
<DL>
<DT><U>Function:</U> int <B>rl_end_undo_group</B> <I>(void)</I>
<DD>Closes the current undo group started with <CODE>rl_begin_undo_group
@@ -3379,7 +3515,7 @@ for each call to <CODE>rl_begin_undo_group()</CODE>.
</DL>
</P><P>
-<A NAME="IDX263"></A>
+<A NAME="IDX278"></A>
<DL>
<DT><U>Function:</U> void <B>rl_add_undo</B> <I>(enum undo_code what, int start, int end, char *text)</I>
<DD>Remember how to undo an event (according to <VAR>what</VAR>). The affected
@@ -3387,14 +3523,14 @@ text runs from <VAR>start</VAR> to <VAR>end</VAR>, and encompasses <VAR>text</VA
</DL>
</P><P>
-<A NAME="IDX264"></A>
+<A NAME="IDX279"></A>
<DL>
<DT><U>Function:</U> void <B>rl_free_undo_list</B> <I>(void)</I>
<DD>Free the existing undo list.
</DL>
</P><P>
-<A NAME="IDX265"></A>
+<A NAME="IDX280"></A>
<DL>
<DT><U>Function:</U> int <B>rl_do_undo</B> <I>(void)</I>
<DD>Undo the first thing on the undo list. Returns <CODE>0</CODE> if there was
@@ -3408,7 +3544,7 @@ once, just before you modify the text. You must supply the indices of
the text range that you are going to modify.
</P><P>
-<A NAME="IDX266"></A>
+<A NAME="IDX281"></A>
<DL>
<DT><U>Function:</U> int <B>rl_modifying</B> <I>(int start, int end)</I>
<DD>Tell Readline to save the text between <VAR>start</VAR> and <VAR>end</VAR> as a
@@ -3425,17 +3561,17 @@ that text.
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC36"> &gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC36"> &lt;&lt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &gt;&gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H3> 2.4.6 Redisplay </H3>
<!--docid::SEC35::-->
<P>
-<A NAME="IDX267"></A>
+<A NAME="IDX282"></A>
<DL>
<DT><U>Function:</U> void <B>rl_redisplay</B> <I>(void)</I>
<DD>Change what's displayed on the screen to reflect the current contents
@@ -3443,7 +3579,7 @@ of <CODE>rl_line_buffer</CODE>.
</DL>
</P><P>
-<A NAME="IDX268"></A>
+<A NAME="IDX283"></A>
<DL>
<DT><U>Function:</U> int <B>rl_forced_update_display</B> <I>(void)</I>
<DD>Force the line to be updated and redisplayed, whether or not
@@ -3451,15 +3587,15 @@ Readline thinks the screen display is correct.
</DL>
</P><P>
-<A NAME="IDX269"></A>
+<A NAME="IDX284"></A>
<DL>
<DT><U>Function:</U> int <B>rl_on_new_line</B> <I>(void)</I>
<DD>Tell the update functions that we have moved onto a new (empty) line,
-usually after ouputting a newline.
+usually after outputting a newline.
</DL>
</P><P>
-<A NAME="IDX270"></A>
+<A NAME="IDX285"></A>
<DL>
<DT><U>Function:</U> int <B>rl_on_new_line_with_prompt</B> <I>(void)</I>
<DD>Tell the update functions that we have moved onto a new line, with
@@ -3471,7 +3607,7 @@ It should be used after setting <VAR>rl_already_prompted</VAR>.
</DL>
</P><P>
-<A NAME="IDX271"></A>
+<A NAME="IDX286"></A>
<DL>
<DT><U>Function:</U> int <B>rl_reset_line_state</B> <I>(void)</I>
<DD>Reset the display state to a clean state and redisplay the current line
@@ -3479,14 +3615,14 @@ starting on a new line.
</DL>
</P><P>
-<A NAME="IDX272"></A>
+<A NAME="IDX287"></A>
<DL>
<DT><U>Function:</U> int <B>rl_crlf</B> <I>(void)</I>
<DD>Move the cursor to the start of the next screen line.
</DL>
</P><P>
-<A NAME="IDX273"></A>
+<A NAME="IDX288"></A>
<DL>
<DT><U>Function:</U> int <B>rl_show_char</B> <I>(int c)</I>
<DD>Display character <VAR>c</VAR> on <CODE>rl_outstream</CODE>.
@@ -3497,7 +3633,7 @@ redisplay.
</DL>
</P><P>
-<A NAME="IDX274"></A>
+<A NAME="IDX289"></A>
<DL>
<DT><U>Function:</U> int <B>rl_message</B> <I>(const char *, <small>...</small>)</I>
<DD>The arguments are a format string as would be supplied to <CODE>printf</CODE>,
@@ -3510,7 +3646,7 @@ before calling this function.
</DL>
</P><P>
-<A NAME="IDX275"></A>
+<A NAME="IDX290"></A>
<DL>
<DT><U>Function:</U> int <B>rl_clear_message</B> <I>(void)</I>
<DD>Clear the message in the echo area. If the prompt was saved with a call to
@@ -3519,7 +3655,7 @@ call <CODE>rl_restore_prompt</CODE> before calling this function.
</DL>
</P><P>
-<A NAME="IDX276"></A>
+<A NAME="IDX291"></A>
<DL>
<DT><U>Function:</U> void <B>rl_save_prompt</B> <I>(void)</I>
<DD>Save the local Readline prompt display state in preparation for
@@ -3527,7 +3663,7 @@ displaying a new message in the message area with <CODE>rl_message()</CODE>.
</DL>
</P><P>
-<A NAME="IDX277"></A>
+<A NAME="IDX292"></A>
<DL>
<DT><U>Function:</U> void <B>rl_restore_prompt</B> <I>(void)</I>
<DD>Restore the local Readline prompt display state saved by the most
@@ -3538,7 +3674,7 @@ corresponding call to <CODE>rl_clear_message</CODE>.
</DL>
</P><P>
-<A NAME="IDX278"></A>
+<A NAME="IDX293"></A>
<DL>
<DT><U>Function:</U> int <B>rl_expand_prompt</B> <I>(char *prompt)</I>
<DD>Expand any special character sequences in <VAR>prompt</VAR> and set up the
@@ -3556,7 +3692,7 @@ be used to embed terminal-specific escape sequences in prompts.
</DL>
</P><P>
-<A NAME="IDX279"></A>
+<A NAME="IDX294"></A>
<DL>
<DT><U>Function:</U> int <B>rl_set_prompt</B> <I>(const char *prompt)</I>
<DD>Make Readline use <VAR>prompt</VAR> for subsequent redisplay. This calls
@@ -3573,17 +3709,17 @@ to the result.
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC37"> &gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC37"> &lt;&lt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &gt;&gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H3> 2.4.7 Modifying Text </H3>
<!--docid::SEC36::-->
<P>
-<A NAME="IDX280"></A>
+<A NAME="IDX295"></A>
<DL>
<DT><U>Function:</U> int <B>rl_insert_text</B> <I>(const char *text)</I>
<DD>Insert <VAR>text</VAR> into the line at the current cursor position.
@@ -3591,7 +3727,7 @@ Returns the number of characters inserted.
</DL>
</P><P>
-<A NAME="IDX281"></A>
+<A NAME="IDX296"></A>
<DL>
<DT><U>Function:</U> int <B>rl_delete_text</B> <I>(int start, int end)</I>
<DD>Delete the text between <VAR>start</VAR> and <VAR>end</VAR> in the current line.
@@ -3599,7 +3735,7 @@ Returns the number of characters deleted.
</DL>
</P><P>
-<A NAME="IDX282"></A>
+<A NAME="IDX297"></A>
<DL>
<DT><U>Function:</U> char * <B>rl_copy_text</B> <I>(int start, int end)</I>
<DD>Return a copy of the text between <VAR>start</VAR> and <VAR>end</VAR> in
@@ -3607,7 +3743,7 @@ the current line.
</DL>
</P><P>
-<A NAME="IDX283"></A>
+<A NAME="IDX298"></A>
<DL>
<DT><U>Function:</U> int <B>rl_kill_text</B> <I>(int start, int end)</I>
<DD>Copy the text between <VAR>start</VAR> and <VAR>end</VAR> in the current line
@@ -3619,7 +3755,7 @@ not a kill, a new kill ring slot is used.
</DL>
</P><P>
-<A NAME="IDX284"></A>
+<A NAME="IDX299"></A>
<DL>
<DT><U>Function:</U> int <B>rl_push_macro_input</B> <I>(char *macro)</I>
<DD>Cause <VAR>macro</VAR> to be inserted into the line, as if it had been invoked
@@ -3636,17 +3772,17 @@ by a key bound to a macro. Not especially useful; use
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC38"> &gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC38"> &lt;&lt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &gt;&gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H3> 2.4.8 Character Input </H3>
<!--docid::SEC37::-->
<P>
-<A NAME="IDX285"></A>
+<A NAME="IDX300"></A>
<DL>
<DT><U>Function:</U> int <B>rl_read_key</B> <I>(void)</I>
<DD>Return the next character available from Readline's current input stream.
@@ -3658,7 +3794,7 @@ the <CODE>rl_event_hook</CODE> variable.
</DL>
</P><P>
-<A NAME="IDX286"></A>
+<A NAME="IDX301"></A>
<DL>
<DT><U>Function:</U> int <B>rl_getc</B> <I>(FILE *stream)</I>
<DD>Return the next character available from <VAR>stream</VAR>, which is assumed to
@@ -3666,7 +3802,7 @@ be the keyboard.
</DL>
</P><P>
-<A NAME="IDX287"></A>
+<A NAME="IDX302"></A>
<DL>
<DT><U>Function:</U> int <B>rl_stuff_char</B> <I>(int c)</I>
<DD>Insert <VAR>c</VAR> into the Readline input stream. It will be "read"
@@ -3677,7 +3813,7 @@ before Readline attempts to read characters from the terminal with
</DL>
</P><P>
-<A NAME="IDX288"></A>
+<A NAME="IDX303"></A>
<DL>
<DT><U>Function:</U> int <B>rl_execute_next</B> <I>(int c)</I>
<DD>Make <VAR>c</VAR> be the next command to be executed when <CODE>rl_read_key()</CODE>
@@ -3685,7 +3821,7 @@ is called. This sets <VAR>rl_pending_input</VAR>.
</DL>
</P><P>
-<A NAME="IDX289"></A>
+<A NAME="IDX304"></A>
<DL>
<DT><U>Function:</U> int <B>rl_clear_pending_input</B> <I>(void)</I>
<DD>Unset <VAR>rl_pending_input</VAR>, effectively negating the effect of any
@@ -3694,7 +3830,7 @@ pending input has not already been read with <CODE>rl_read_key()</CODE>.
</DL>
</P><P>
-<A NAME="IDX290"></A>
+<A NAME="IDX305"></A>
<DL>
<DT><U>Function:</U> int <B>rl_set_keyboard_input_timeout</B> <I>(int u)</I>
<DD>While waiting for keyboard input in <CODE>rl_read_key()</CODE>, Readline will
@@ -3712,19 +3848,19 @@ Returns the old timeout value.
<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC37"> &lt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC39"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &lt;&lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &lt;&lt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &gt;&gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H3> 2.4.9 Terminal Management </H3>
<!--docid::SEC38::-->
<P>
-<A NAME="IDX291"></A>
+<A NAME="IDX306"></A>
<DL>
<DT><U>Function:</U> void <B>rl_prep_terminal</B> <I>(int meta_flag)</I>
<DD>Modify the terminal settings for Readline's use, so <CODE>readline()</CODE>
@@ -3734,7 +3870,7 @@ read eight-bit input.
</DL>
</P><P>
-<A NAME="IDX292"></A>
+<A NAME="IDX307"></A>
<DL>
<DT><U>Function:</U> void <B>rl_deprep_terminal</B> <I>(void)</I>
<DD>Undo the effects of <CODE>rl_prep_terminal()</CODE>, leaving the terminal in
@@ -3743,7 +3879,7 @@ the state in which it was before the most recent call to
</DL>
</P><P>
-<A NAME="IDX293"></A>
+<A NAME="IDX308"></A>
<DL>
<DT><U>Function:</U> void <B>rl_tty_set_default_bindings</B> <I>(Keymap kmap)</I>
<DD>Read the operating system's terminal editing characters (as would be
@@ -3752,7 +3888,7 @@ The bindings are performed in <VAR>kmap</VAR>.
</DL>
</P><P>
-<A NAME="IDX294"></A>
+<A NAME="IDX309"></A>
<DL>
<DT><U>Function:</U> void <B>rl_tty_unset_default_bindings</B> <I>(Keymap kmap)</I>
<DD>Reset the bindings manipulated by <CODE>rl_tty_set_default_bindings</CODE> so
@@ -3761,7 +3897,7 @@ The bindings are performed in <VAR>kmap</VAR>.
</DL>
</P><P>
-<A NAME="IDX295"></A>
+<A NAME="IDX310"></A>
<DL>
<DT><U>Function:</U> int <B>rl_reset_terminal</B> <I>(const char *terminal_name)</I>
<DD>Reinitialize Readline's idea of the terminal settings using
@@ -3779,17 +3915,17 @@ environment variable is used.
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC40"> &gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC31"> &lt;&lt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &gt;&gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H3> 2.4.10 Utility Functions </H3>
<!--docid::SEC39::-->
<P>
-<A NAME="IDX296"></A>
+<A NAME="IDX311"></A>
<DL>
<DT><U>Function:</U> int <B>rl_save_state</B> <I>(struct readline_state *sp)</I>
<DD>Save a snapshot of Readline's internal state to <VAR>sp</VAR>.
@@ -3799,7 +3935,7 @@ The caller is responsible for allocating the structure.
</DL>
</P><P>
-<A NAME="IDX297"></A>
+<A NAME="IDX312"></A>
<DL>
<DT><U>Function:</U> int <B>rl_restore_state</B> <I>(struct readline_state *sp)</I>
<DD>Restore Readline's internal state to that stored in <VAR>sp</VAR>, which must
@@ -3810,7 +3946,7 @@ The caller is responsible for freeing the structure.
</DL>
</P><P>
-<A NAME="IDX298"></A>
+<A NAME="IDX313"></A>
<DL>
<DT><U>Function:</U> void <B>rl_free</B> <I>(void *mem)</I>
<DD>Deallocate the memory pointed to by <VAR>mem</VAR>. <VAR>mem</VAR> must have been
@@ -3818,7 +3954,7 @@ allocated by <CODE>malloc</CODE>.
</DL>
</P><P>
-<A NAME="IDX299"></A>
+<A NAME="IDX314"></A>
<DL>
<DT><U>Function:</U> void <B>rl_replace_line</B> <I>(const char *text, int clear_undo)</I>
<DD>Replace the contents of <CODE>rl_line_buffer</CODE> with <VAR>text</VAR>.
@@ -3828,7 +3964,7 @@ current line is cleared.
</DL>
</P><P>
-<A NAME="IDX300"></A>
+<A NAME="IDX315"></A>
<DL>
<DT><U>Function:</U> void <B>rl_extend_line_buffer</B> <I>(int len)</I>
<DD>Ensure that <CODE>rl_line_buffer</CODE> has enough space to hold <VAR>len</VAR>
@@ -3836,7 +3972,7 @@ characters, possibly reallocating it if necessary.
</DL>
</P><P>
-<A NAME="IDX301"></A>
+<A NAME="IDX316"></A>
<DL>
<DT><U>Function:</U> int <B>rl_initialize</B> <I>(void)</I>
<DD>Initialize or re-initialize Readline's internal state.
@@ -3845,21 +3981,21 @@ reading any input.
</DL>
</P><P>
-<A NAME="IDX302"></A>
+<A NAME="IDX317"></A>
<DL>
<DT><U>Function:</U> int <B>rl_ding</B> <I>(void)</I>
<DD>Ring the terminal bell, obeying the setting of <CODE>bell-style</CODE>.
</DL>
</P><P>
-<A NAME="IDX303"></A>
+<A NAME="IDX318"></A>
<DL>
<DT><U>Function:</U> int <B>rl_alphabetic</B> <I>(int c)</I>
<DD>Return 1 if <VAR>c</VAR> is an alphabetic character.
</DL>
</P><P>
-<A NAME="IDX304"></A>
+<A NAME="IDX319"></A>
<DL>
<DT><U>Function:</U> void <B>rl_display_match_list</B> <I>(char **matches, int len, int max)</I>
<DD>A convenience function for displaying a list of strings in
@@ -3879,28 +4015,28 @@ The following are implemented as macros, defined in <CODE>chardefs.h</CODE>.
Applications should refrain from using them.
</P><P>
-<A NAME="IDX305"></A>
+<A NAME="IDX320"></A>
<DL>
<DT><U>Function:</U> int <B>_rl_uppercase_p</B> <I>(int c)</I>
<DD>Return 1 if <VAR>c</VAR> is an uppercase alphabetic character.
</DL>
</P><P>
-<A NAME="IDX306"></A>
+<A NAME="IDX321"></A>
<DL>
<DT><U>Function:</U> int <B>_rl_lowercase_p</B> <I>(int c)</I>
<DD>Return 1 if <VAR>c</VAR> is a lowercase alphabetic character.
</DL>
</P><P>
-<A NAME="IDX307"></A>
+<A NAME="IDX322"></A>
<DL>
<DT><U>Function:</U> int <B>_rl_digit_p</B> <I>(int c)</I>
<DD>Return 1 if <VAR>c</VAR> is a numeric character.
</DL>
</P><P>
-<A NAME="IDX308"></A>
+<A NAME="IDX323"></A>
<DL>
<DT><U>Function:</U> int <B>_rl_to_upper</B> <I>(int c)</I>
<DD>If <VAR>c</VAR> is a lowercase alphabetic character, return the corresponding
@@ -3908,7 +4044,7 @@ uppercase character.
</DL>
</P><P>
-<A NAME="IDX309"></A>
+<A NAME="IDX324"></A>
<DL>
<DT><U>Function:</U> int <B>_rl_to_lower</B> <I>(int c)</I>
<DD>If <VAR>c</VAR> is an uppercase alphabetic character, return the corresponding
@@ -3916,7 +4052,7 @@ lowercase character.
</DL>
</P><P>
-<A NAME="IDX310"></A>
+<A NAME="IDX325"></A>
<DL>
<DT><U>Function:</U> int <B>_rl_digit_value</B> <I>(int c)</I>
<DD>If <VAR>c</VAR> is a number, return the value it represents.
@@ -3931,17 +4067,17 @@ lowercase character.
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC41"> &gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC31"> &lt;&lt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &gt;&gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H3> 2.4.11 Miscellaneous Functions </H3>
<!--docid::SEC40::-->
<P>
-<A NAME="IDX311"></A>
+<A NAME="IDX326"></A>
<DL>
<DT><U>Function:</U> int <B>rl_macro_bind</B> <I>(const char *keyseq, const char *macro, Keymap map)</I>
<DD>Bind the key sequence <VAR>keyseq</VAR> to invoke the macro <VAR>macro</VAR>.
@@ -3951,7 +4087,7 @@ use <CODE>rl_generic_bind()</CODE> instead.
</DL>
</P><P>
-<A NAME="IDX312"></A>
+<A NAME="IDX327"></A>
<DL>
<DT><U>Function:</U> void <B>rl_macro_dumper</B> <I>(int readable)</I>
<DD>Print the key sequences bound to macros and their values, using
@@ -3961,7 +4097,7 @@ that it can be made part of an <CODE>inputrc</CODE> file and re-read.
</DL>
</P><P>
-<A NAME="IDX313"></A>
+<A NAME="IDX328"></A>
<DL>
<DT><U>Function:</U> int <B>rl_variable_bind</B> <I>(const char *variable, const char *value)</I>
<DD>Make the Readline variable <VAR>variable</VAR> have <VAR>value</VAR>.
@@ -3971,7 +4107,7 @@ file (see section <A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax<
</DL>
</P><P>
-<A NAME="IDX314"></A>
+<A NAME="IDX329"></A>
<DL>
<DT><U>Function:</U> char * <B>rl_variable_value</B> <I>(const char *variable)</I>
<DD>Return a string representing the value of the Readline variable <VAR>variable</VAR>.
@@ -3979,7 +4115,7 @@ For boolean variables, this string is either <SAMP>`on'</SAMP> or <SAMP>`off'</S
</DL>
</P><P>
-<A NAME="IDX315"></A>
+<A NAME="IDX330"></A>
<DL>
<DT><U>Function:</U> void <B>rl_variable_dumper</B> <I>(int readable)</I>
<DD>Print the readline variable names and their current values
@@ -3989,7 +4125,7 @@ that it can be made part of an <CODE>inputrc</CODE> file and re-read.
</DL>
</P><P>
-<A NAME="IDX316"></A>
+<A NAME="IDX331"></A>
<DL>
<DT><U>Function:</U> int <B>rl_set_paren_blink_timeout</B> <I>(int u)</I>
<DD>Set the time interval (in microseconds) that Readline waits when showing
@@ -3997,7 +4133,7 @@ a balancing character when <CODE>blink-matching-paren</CODE> has been enabled.
</DL>
</P><P>
-<A NAME="IDX317"></A>
+<A NAME="IDX332"></A>
<DL>
<DT><U>Function:</U> char * <B>rl_get_termcap</B> <I>(const char *cap)</I>
<DD>Retrieve the string value of the termcap capability <VAR>cap</VAR>.
@@ -4009,6 +4145,16 @@ values for only those capabilities Readline uses.
</DL>
</P><P>
+<A NAME="IDX333"></A>
+<DL>
+<DT><U>Function:</U> void <B>rl_clear_history</B> <I>(void)</I>
+<DD>Clear the history list by deleting all of the entries, in the same manner
+as the History library's <CODE>clear_history()</CODE> function.
+This differs from <CODE>clear_history</CODE> because it frees private data
+Readline saves in the history list.
+</DL>
+</P><P>
+
<A NAME="Alternate Interface"></A>
<HR SIZE="6">
<A NAME="SEC41"></A>
@@ -4017,10 +4163,10 @@ values for only those capabilities Readline uses.
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC42"> &gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC31"> &lt;&lt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &gt;&gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H3> 2.4.12 Alternate Interface </H3>
@@ -4030,41 +4176,43 @@ values for only those capabilities Readline uses.
An alternate interface is available to plain <CODE>readline()</CODE>. Some
applications need to interleave keyboard I/O with file, device, or
window system I/O, typically by using a main loop to <CODE>select()</CODE>
-on various file descriptors. To accomodate this need, readline can
+on various file descriptors. To accommodate this need, readline can
also be invoked as a `callback' function from an event loop. There
are functions available to make this easy.
</P><P>
-<A NAME="IDX318"></A>
+<A NAME="IDX334"></A>
<DL>
<DT><U>Function:</U> void <B>rl_callback_handler_install</B> <I>(const char *prompt, rl_vcpfunc_t *lhandler)</I>
<DD>Set up the terminal for readline I/O and display the initial
expanded value of <VAR>prompt</VAR>. Save the value of <VAR>lhandler</VAR> to
-use as a function to call when a complete line of input has been entered.
-The function takes the text of the line as an argument.
+use as a handler function to call when a complete line of input has been
+entered.
+The handler function receives the text of the line as an argument.
</DL>
</P><P>
-<A NAME="IDX319"></A>
+<A NAME="IDX335"></A>
<DL>
<DT><U>Function:</U> void <B>rl_callback_read_char</B> <I>(void)</I>
<DD>Whenever an application determines that keyboard input is available, it
should call <CODE>rl_callback_read_char()</CODE>, which will read the next
character from the current input source.
If that character completes the line, <CODE>rl_callback_read_char</CODE> will
-invoke the <VAR>lhandler</VAR> function saved by <CODE>rl_callback_handler_install</CODE>
-to process the line.
+invoke the <VAR>lhandler</VAR> function installed by
+<CODE>rl_callback_handler_install</CODE> to process the line.
Before calling the <VAR>lhandler</VAR> function, the terminal settings are
reset to the values they had before calling
<CODE>rl_callback_handler_install</CODE>.
If the <VAR>lhandler</VAR> function returns,
+and the line handler remains installed,
the terminal settings are modified for Readline's use again.
-<CODE>EOF</CODE> is indicated by calling <VAR>lhandler</VAR> with a
+<CODE>EOF</CODE> is indicated by calling <VAR>lhandler</VAR> with a
<CODE>NULL</CODE> line.
</DL>
</P><P>
-<A NAME="IDX320"></A>
+<A NAME="IDX336"></A>
<DL>
<DT><U>Function:</U> void <B>rl_callback_handler_remove</B> <I>(void)</I>
<DD>Restore the terminal to its initial state and remove the line handler.
@@ -4084,10 +4232,10 @@ the program exits to reset the terminal settings.
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC31"> &lt;&lt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &gt;&gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H3> 2.4.13 A Readline Example </H3>
@@ -4158,22 +4306,129 @@ invert_case_line (count, key)
}
</pre></td></tr></table></P><P>
-<A NAME="Readline Signal Handling"></A>
+<A NAME="Alternate Interface Example"></A>
<HR SIZE="6">
<A NAME="SEC43"></A>
<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC42"> &lt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &lt;&lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC31"> &lt;&lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC29"> Up </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &gt;&gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
+</TR></TABLE>
+<H3> 2.4.14 Alternate Interface Example </H3>
+<!--docid::SEC43::-->
+<P>
+
+Here is a complete program that illustrates Readline's alternate interface.
+It reads lines from the terminal and displays them, providing the
+standard history and TAB completion functions.
+It understands the EOF character or "exit" to exit the program.
+</P><P>
+
+<TABLE><tr><td>&nbsp;</td><td class=example><pre>/* Standard include files. stdio.h is required. */
+#include &#60;stdlib.h&#62;
+#include &#60;unistd.h&#62;
+
+/* Used for select(2) */
+#include &#60;sys/types.h&#62;
+#include &#60;sys/select.h&#62;
+
+#include &#60;stdio.h&#62;
+
+/* Standard readline include files. */
+#include &#60;readline/readline.h&#62;
+#include &#60;readline/history.h&#62;
+
+static void cb_linehandler (char *);
+
+int running;
+const char *prompt = "rltest$ ";
+
+/* Callback function called for each line when accept-line executed, EOF
+ seen, or EOF character read. This sets a flag and returns; it could
+ also call exit(3). */
+static void
+cb_linehandler (char *line)
+{
+ /* Can use ^D (stty eof) or `exit' to exit. */
+ if (line == NULL || strcmp (line, "exit") == 0)
+ {
+ if (line == 0)
+ printf ("\n");
+ printf ("exit\n");
+ /* This function needs to be called to reset the terminal settings,
+ and calling it from the line handler keeps one extra prompt from
+ being displayed. */
+ rl_callback_handler_remove ();
+
+ running = 0;
+ }
+ else
+ {
+ if (*line)
+ add_history (line);
+ printf ("input line: %s\n", line);
+ free (line);
+ }
+}
+
+int
+main (int c, char **v)
+{
+ fd_set fds;
+ int r;
+
+ /* Install the line handler. */
+ rl_callback_handler_install (prompt, cb_linehandler);
+
+ /* Enter a simple event loop. This waits until something is available
+ to read on readline's input stream (defaults to standard input) and
+ calls the builtin character read callback to read it. It does not
+ have to modify the user's terminal settings. */
+ running = 1;
+ while (running)
+ {
+ FD_ZERO (&#38;fds);
+ FD_SET (fileno (rl_instream), &#38;fds);
+
+ r = select (FD_SETSIZE, &#38;fds, NULL, NULL, NULL);
+ if (r &#60; 0)
+ {
+ perror ("rltest: select");
+ rl_callback_handler_remove ();
+ break;
+ }
+
+ if (FD_ISSET (fileno (rl_instream), &#38;fds))
+ rl_callback_read_char ();
+ }
+
+ printf ("rltest: Event loop has exited\n");
+ return 0;
+}
+</pre></td></tr></table></P><P>
+
+<A NAME="Readline Signal Handling"></A>
+<HR SIZE="6">
+<A NAME="SEC44"></A>
+<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
+<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC45"> &gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC45"> &lt;&lt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC23"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC49"> &gt;&gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC50"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H2> 2.5 Readline Signal Handling </H2>
-<!--docid::SEC43::-->
+<!--docid::SEC44::-->
<P>
Signals are asynchronous events sent to a process by the Unix kernel,
@@ -4189,6 +4444,7 @@ functions to do so manually.
Readline contains an internal signal handler that is installed for a
number of signals (<CODE>SIGINT</CODE>, <CODE>SIGQUIT</CODE>, <CODE>SIGTERM</CODE>,
+<CODE>SIGHUP</CODE>,
<CODE>SIGALRM</CODE>, <CODE>SIGTSTP</CODE>, <CODE>SIGTTIN</CODE>, and <CODE>SIGTTOU</CODE>).
When one of these signals is received, the signal handler
will reset the terminal attributes to those that were in effect before
@@ -4222,11 +4478,11 @@ values of these variables only when calling <CODE>readline()</CODE>, not in
a signal handler, so Readline's internal signal state is not corrupted.
</P><P>
-<A NAME="IDX321"></A>
+<A NAME="IDX337"></A>
<DL>
<DT><U>Variable:</U> int <B>rl_catch_signals</B>
<DD>If this variable is non-zero, Readline will install signal handlers for
-<CODE>SIGINT</CODE>, <CODE>SIGQUIT</CODE>, <CODE>SIGTERM</CODE>, <CODE>SIGALRM</CODE>,
+<CODE>SIGINT</CODE>, <CODE>SIGQUIT</CODE>, <CODE>SIGTERM</CODE>, <CODE>SIGHUP</CODE>, <CODE>SIGALRM</CODE>,
<CODE>SIGTSTP</CODE>, <CODE>SIGTTIN</CODE>, and <CODE>SIGTTOU</CODE>.
</P><P>
@@ -4234,17 +4490,30 @@ The default value of <CODE>rl_catch_signals</CODE> is 1.
</DL>
</P><P>
-<A NAME="IDX322"></A>
+<A NAME="IDX338"></A>
<DL>
<DT><U>Variable:</U> int <B>rl_catch_sigwinch</B>
-<DD>If this variable is non-zero, Readline will install a signal handler for
-<CODE>SIGWINCH</CODE>.
+<DD>If this variable is set to a non-zero value,
+Readline will install a signal handler for <CODE>SIGWINCH</CODE>.
</P><P>
The default value of <CODE>rl_catch_sigwinch</CODE> is 1.
</DL>
</P><P>
+<A NAME="IDX339"></A>
+<DL>
+<DT><U>Variable:</U> int <B>rl_change_environment</B>
+<DD>If this variable is set to a non-zero value,
+and Readline is handling <CODE>SIGWINCH</CODE>, Readline will modify the
+<VAR>LINES</VAR> and <VAR>COLUMNS</VAR> environment variables upon receipt of a
+<CODE>SIGWINCH</CODE>
+</P><P>
+
+The default value of <CODE>rl_change_environment</CODE> is 1.
+</DL>
+</P><P>
+
If an application does not wish to have Readline catch any signals, or
to handle signals other than those Readline catches (<CODE>SIGHUP</CODE>,
for example),
@@ -4252,7 +4521,7 @@ Readline provides convenience functions to do the necessary terminal
and internal state cleanup upon receipt of a signal.
</P><P>
-<A NAME="IDX323"></A>
+<A NAME="IDX340"></A>
<DL>
<DT><U>Function:</U> void <B>rl_cleanup_after_signal</B> <I>(void)</I>
<DD>This function will reset the state of the terminal to what it was before
@@ -4262,7 +4531,7 @@ all signals, depending on the values of <CODE>rl_catch_signals</CODE> and
</DL>
</P><P>
-<A NAME="IDX324"></A>
+<A NAME="IDX341"></A>
<DL>
<DT><U>Function:</U> void <B>rl_free_line_state</B> <I>(void)</I>
<DD>This will free any partial state associated with the current input line
@@ -4274,7 +4543,7 @@ current input line.
</DL>
</P><P>
-<A NAME="IDX325"></A>
+<A NAME="IDX342"></A>
<DL>
<DT><U>Function:</U> void <B>rl_reset_after_signal</B> <I>(void)</I>
<DD>This will reinitialize the terminal and reinstall any Readline signal
@@ -4289,7 +4558,7 @@ Readline to update its idea of the terminal size when a <CODE>SIGWINCH</CODE>
is received.
</P><P>
-<A NAME="IDX326"></A>
+<A NAME="IDX343"></A>
<DL>
<DT><U>Function:</U> void <B>rl_echo_signal_char</B> <I>(int sig)</I>
<DD>If an application wishes to install its own signal handlers, but still
@@ -4299,14 +4568,14 @@ function with <VAR>sig</VAR> set to <CODE>SIGINT</CODE>, <CODE>SIGQUIT</CODE>, o
</DL>
</P><P>
-<A NAME="IDX327"></A>
+<A NAME="IDX344"></A>
<DL>
<DT><U>Function:</U> void <B>rl_resize_terminal</B> <I>(void)</I>
<DD>Update Readline's internal screen size by reading values from the kernel.
</DL>
</P><P>
-<A NAME="IDX328"></A>
+<A NAME="IDX345"></A>
<DL>
<DT><U>Function:</U> void <B>rl_set_screen_size</B> <I>(int rows, int cols)</I>
<DD>Set Readline's idea of the terminal size to <VAR>rows</VAR> rows and
@@ -4320,7 +4589,7 @@ is still interested in the screen dimensions, Readline's idea of the screen
size may be queried.
</P><P>
-<A NAME="IDX329"></A>
+<A NAME="IDX346"></A>
<DL>
<DT><U>Function:</U> void <B>rl_get_screen_size</B> <I>(int *rows, int *cols)</I>
<DD>Return Readline's idea of the terminal's size in the
@@ -4328,7 +4597,7 @@ variables pointed to by the arguments.
</DL>
</P><P>
-<A NAME="IDX330"></A>
+<A NAME="IDX347"></A>
<DL>
<DT><U>Function:</U> void <B>rl_reset_screen_size</B> <I>(void)</I>
<DD>Cause Readline to reobtain the screen size and recalculate its dimensions.
@@ -4338,17 +4607,17 @@ variables pointed to by the arguments.
The following functions install and remove Readline's signal handlers.
</P><P>
-<A NAME="IDX331"></A>
+<A NAME="IDX348"></A>
<DL>
<DT><U>Function:</U> int <B>rl_set_signals</B> <I>(void)</I>
<DD>Install Readline's signal handler for <CODE>SIGINT</CODE>, <CODE>SIGQUIT</CODE>,
-<CODE>SIGTERM</CODE>, <CODE>SIGALRM</CODE>, <CODE>SIGTSTP</CODE>, <CODE>SIGTTIN</CODE>,
+<CODE>SIGTERM</CODE>, <CODE>SIGHUP</CODE>, <CODE>SIGALRM</CODE>, <CODE>SIGTSTP</CODE>, <CODE>SIGTTIN</CODE>,
<CODE>SIGTTOU</CODE>, and <CODE>SIGWINCH</CODE>, depending on the values of
<CODE>rl_catch_signals</CODE> and <CODE>rl_catch_sigwinch</CODE>.
</DL>
</P><P>
-<A NAME="IDX332"></A>
+<A NAME="IDX349"></A>
<DL>
<DT><U>Function:</U> int <B>rl_clear_signals</B> <I>(void)</I>
<DD>Remove all of the Readline signal handlers installed by
@@ -4358,20 +4627,20 @@ The following functions install and remove Readline's signal handlers.
<A NAME="Custom Completers"></A>
<HR SIZE="6">
-<A NAME="SEC44"></A>
+<A NAME="SEC45"></A>
<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC43"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC45"> &gt; </A>]</TD>
+<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC46"> &gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC23"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC49"> &gt;&gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC50"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H2> 2.6 Custom Completers </H2>
-<!--docid::SEC44::-->
+<!--docid::SEC45::-->
<P>
Typically, a program that reads commands from the user has a way of
@@ -4382,29 +4651,29 @@ cooperate to provide this service.
</P><P>
<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC45">2.6.1 How Completing Works</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">The logic used to do completion.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC46">2.6.2 Completion Functions</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Functions provided by Readline.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC47">2.6.3 Completion Variables</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Variables which control completion.</TD></TR>
-<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC48">2.6.4 A Short Completion Example</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">An example of writing completer subroutines.</TD></TR>
+<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC46">2.6.1 How Completing Works</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">The logic used to do completion.</TD></TR>
+<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC47">2.6.2 Completion Functions</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Functions provided by Readline.</TD></TR>
+<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">Variables which control completion.</TD></TR>
+<TR><TD ALIGN="left" VALIGN="TOP"><A HREF="readline.html#SEC49">2.6.4 A Short Completion Example</A></TD><TD>&nbsp;&nbsp;</TD><TD ALIGN="left" VALIGN="TOP">An example of writing completer subroutines.</TD></TR>
</TABLE></BLOCKQUOTE>
<P>
<A NAME="How Completing Works"></A>
<HR SIZE="6">
-<A NAME="SEC45"></A>
+<A NAME="SEC46"></A>
<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC46"> &gt; </A>]</TD>
+<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC45"> &lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC47"> &gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC49"> &gt;&gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC45"> Up </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC50"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H3> 2.6.1 How Completing Works </H3>
-<!--docid::SEC45::-->
+<!--docid::SEC46::-->
<P>
In order to complete some text, the full list of possible completions
@@ -4461,7 +4730,7 @@ Such a generator function is referred to as an
</OL>
<P>
-<A NAME="IDX333"></A>
+<A NAME="IDX350"></A>
<DL>
<DT><U>Function:</U> int <B>rl_complete</B> <I>(int ignore, int invoking_key)</I>
<DD>Complete the word at or before point. You have supplied the function
@@ -4470,7 +4739,7 @@ that does the initial simple matching selection algorithm (see
</DL>
</P><P>
-<A NAME="IDX334"></A>
+<A NAME="IDX351"></A>
<DL>
<DT><U>Variable:</U> rl_compentry_func_t * <B>rl_completion_entry_function</B>
<DD>This is a pointer to the generator function for
@@ -4486,27 +4755,27 @@ return values are used to generate possible completions.
<A NAME="Completion Functions"></A>
<HR SIZE="6">
-<A NAME="SEC46"></A>
+<A NAME="SEC47"></A>
<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC45"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC47"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC47"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC49"> &gt;&gt; </A>]</TD>
+<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC46"> &lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC48"> &gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC48"> &lt;&lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC45"> Up </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC50"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H3> 2.6.2 Completion Functions </H3>
-<!--docid::SEC46::-->
+<!--docid::SEC47::-->
<P>
Here is the complete list of callable completion functions present in
Readline.
</P><P>
-<A NAME="IDX335"></A>
+<A NAME="IDX352"></A>
<DL>
<DT><U>Function:</U> int <B>rl_complete_internal</B> <I>(int what_to_do)</I>
<DD>Complete the word at or before point. <VAR>what_to_do</VAR> says what to do
@@ -4520,7 +4789,7 @@ a common prefix.
</DL>
</P><P>
-<A NAME="IDX336"></A>
+<A NAME="IDX353"></A>
<DL>
<DT><U>Function:</U> int <B>rl_complete</B> <I>(int ignore, int invoking_key)</I>
<DD>Complete the word at or before point. You have supplied the function
@@ -4532,7 +4801,7 @@ argument depending on <VAR>invoking_key</VAR>.
</DL>
</P><P>
-<A NAME="IDX337"></A>
+<A NAME="IDX354"></A>
<DL>
<DT><U>Function:</U> int <B>rl_possible_completions</B> <I>(int count, int invoking_key)</I>
<DD>List the possible completions. See description of <CODE>rl_complete
@@ -4541,7 +4810,7 @@ argument depending on <VAR>invoking_key</VAR>.
</DL>
</P><P>
-<A NAME="IDX338"></A>
+<A NAME="IDX355"></A>
<DL>
<DT><U>Function:</U> int <B>rl_insert_completions</B> <I>(int count, int invoking_key)</I>
<DD>Insert the list of possible completions into the line, deleting the
@@ -4550,10 +4819,10 @@ This calls <CODE>rl_complete_internal()</CODE> with an argument of <SAMP>`*'</SA
</DL>
</P><P>
-<A NAME="IDX339"></A>
+<A NAME="IDX356"></A>
<DL>
<DT><U>Function:</U> int <B>rl_completion_mode</B> <I>(rl_command_func_t *cfunc)</I>
-<DD>Returns the apppriate value to pass to <CODE>rl_complete_internal()</CODE>
+<DD>Returns the appropriate value to pass to <CODE>rl_complete_internal()</CODE>
depending on whether <VAR>cfunc</VAR> was called twice in succession and
the values of the <CODE>show-all-if-ambiguous</CODE> and
<CODE>show-all-if-unmodified</CODE> variables.
@@ -4562,7 +4831,7 @@ the same interface as <CODE>rl_complete()</CODE>.
</DL>
</P><P>
-<A NAME="IDX340"></A>
+<A NAME="IDX357"></A>
<DL>
<DT><U>Function:</U> char ** <B>rl_completion_matches</B> <I>(const char *text, rl_compentry_func_t *entry_func)</I>
<DD>Returns an array of strings which is a list of completions for
@@ -4580,7 +4849,7 @@ when there are no more matches.
</DL>
</P><P>
-<A NAME="IDX341"></A>
+<A NAME="IDX358"></A>
<DL>
<DT><U>Function:</U> char * <B>rl_filename_completion_function</B> <I>(const char *text, int state)</I>
<DD>A generator function for filename completion in the general case.
@@ -4591,7 +4860,7 @@ Readline functions).
</DL>
</P><P>
-<A NAME="IDX342"></A>
+<A NAME="IDX359"></A>
<DL>
<DT><U>Function:</U> char * <B>rl_username_completion_function</B> <I>(const char *text, int state)</I>
<DD>A completion generator for usernames. <VAR>text</VAR> contains a partial
@@ -4603,23 +4872,23 @@ for subsequent calls.
<A NAME="Completion Variables"></A>
<HR SIZE="6">
-<A NAME="SEC47"></A>
+<A NAME="SEC48"></A>
<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC46"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC48"> &gt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC48"> &lt;&lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC49"> &gt;&gt; </A>]</TD>
+<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC47"> &lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC49"> &gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC49"> &lt;&lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC45"> Up </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC50"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H3> 2.6.3 Completion Variables </H3>
-<!--docid::SEC47::-->
+<!--docid::SEC48::-->
<P>
-<A NAME="IDX343"></A>
+<A NAME="IDX360"></A>
<DL>
<DT><U>Variable:</U> rl_compentry_func_t * <B>rl_completion_entry_function</B>
<DD>A pointer to the generator function for <CODE>rl_completion_matches()</CODE>.
@@ -4628,7 +4897,7 @@ the default filename completer.
</DL>
</P><P>
-<A NAME="IDX344"></A>
+<A NAME="IDX361"></A>
<DL>
<DT><U>Variable:</U> rl_completion_func_t * <B>rl_attempted_completion_function</B>
<DD>A pointer to an alternative function to create matches.
@@ -4645,7 +4914,7 @@ completion even if this function returns no matches.
</DL>
</P><P>
-<A NAME="IDX345"></A>
+<A NAME="IDX362"></A>
<DL>
<DT><U>Variable:</U> rl_quote_func_t * <B>rl_filename_quoting_function</B>
<DD>A pointer to a function that will quote a filename in an
@@ -4662,7 +4931,7 @@ to reset this character.
</DL>
</P><P>
-<A NAME="IDX346"></A>
+<A NAME="IDX363"></A>
<DL>
<DT><U>Variable:</U> rl_dequote_func_t * <B>rl_filename_dequoting_function</B>
<DD>A pointer to a function that will remove application-specific quoting
@@ -4675,7 +4944,7 @@ that delimits the filename (usually <SAMP>`''</SAMP> or <SAMP>`"'</SAMP>). If
</DL>
</P><P>
-<A NAME="IDX347"></A>
+<A NAME="IDX364"></A>
<DL>
<DT><U>Variable:</U> rl_linebuf_func_t * <B>rl_char_is_quoted_p</B>
<DD>A pointer to a function to call that determines whether or not a specific
@@ -4688,7 +4957,7 @@ used to break words for the completer.
</DL>
</P><P>
-<A NAME="IDX348"></A>
+<A NAME="IDX365"></A>
<DL>
<DT><U>Variable:</U> rl_compignore_func_t * <B>rl_ignore_some_completions_function</B>
<DD>This function, if defined, is called by the completer when real filename
@@ -4701,7 +4970,7 @@ from the array must be freed.
</DL>
</P><P>
-<A NAME="IDX349"></A>
+<A NAME="IDX366"></A>
<DL>
<DT><U>Variable:</U> rl_icppfunc_t * <B>rl_directory_completion_hook</B>
<DD>This function, if defined, is allowed to modify the directory portion
@@ -4716,19 +4985,57 @@ the directory portion of the pathname the user typed.
At the least, even if no other expansion is performed, this function should
remove any quote characters from the directory name, because its result will
be passed directly to <CODE>opendir()</CODE>.
+</P><P>
+
The directory completion hook returns an integer that should be non-zero if
the function modifies its directory argument.
The function should not modify the directory argument if it returns 0.
</DL>
</P><P>
-<A NAME="IDX350"></A>
+<A NAME="IDX367"></A>
+<DL>
+<DT><U>Variable:</U> rl_icppfunc_t * <B>rl_directory_rewrite_hook;</B>
+<DD>If non-zero, this is the address of a function to call when completing
+a directory name. This function takes the address of the directory name
+to be modified as an argument. Unlike <CODE>rl_directory_completion_hook</CODE>,
+it only modifies the directory name used in <CODE>opendir</CODE>, not what is
+displayed when the possible completions are printed or inserted. It is
+called before rl_directory_completion_hook.
+At the least, even if no other expansion is performed, this function should
+remove any quote characters from the directory name, because its result will
+be passed directly to <CODE>opendir()</CODE>.
+</P><P>
+
+The directory rewrite hook returns an integer that should be non-zero if
+the function modfies its directory argument.
+The function should not modify the directory argument if it returns 0.
+</DL>
+</P><P>
+
+<A NAME="IDX368"></A>
+<DL>
+<DT><U>Variable:</U> rl_icppfunc_t * <B>rl_filename_stat_hook</B>
+<DD>If non-zero, this is the address of a function for the completer to
+call before deciding which character to append to a completed name.
+This function modifies its filename name argument, and the modified value
+is passed to <CODE>stat()</CODE> to determine the file's type and characteristics.
+This function does not need to remove quote characters from the filename.
+</P><P>
+
+The stat hook returns an integer that should be non-zero if
+the function modfies its directory argument.
+The function should not modify the directory argument if it returns 0.
+</DL>
+</P><P>
+
+<A NAME="IDX369"></A>
<DL>
<DT><U>Variable:</U> rl_dequote_func_t * <B>rl_filename_rewrite_hook</B>
<DD>If non-zero, this is the address of a function called when reading
directory entries from the filesystem for completion and comparing
them to the partial word to be completed. The function should
-perform any necesary application or system-specific conversion on
+perform any necessary application or system-specific conversion on
the filename, such as converting between character sets or converting
from a filesystem format to a character input format.
The function takes two arguments: <VAR>fname</VAR>, the filename to be converted,
@@ -4741,7 +5048,7 @@ allocated string.
</DL>
</P><P>
-<A NAME="IDX351"></A>
+<A NAME="IDX370"></A>
<DL>
<DT><U>Variable:</U> rl_compdisp_func_t * <B>rl_completion_display_matches_hook</B>
<DD>If non-zero, then this is the address of a function to call when
@@ -4758,7 +5065,7 @@ function may be called from this hook.
</DL>
</P><P>
-<A NAME="IDX352"></A>
+<A NAME="IDX371"></A>
<DL>
<DT><U>Variable:</U> const char * <B>rl_basic_word_break_characters</B>
<DD>The basic list of characters that signal a break between words for the
@@ -4768,14 +5075,14 @@ which break words for completion in Bash:
</DL>
</P><P>
-<A NAME="IDX353"></A>
+<A NAME="IDX372"></A>
<DL>
<DT><U>Variable:</U> const char * <B>rl_basic_quote_characters</B>
<DD>A list of quote characters which can cause a word break.
</DL>
</P><P>
-<A NAME="IDX354"></A>
+<A NAME="IDX373"></A>
<DL>
<DT><U>Variable:</U> const char * <B>rl_completer_word_break_characters</B>
<DD>The list of characters that signal a break between words for
@@ -4784,7 +5091,7 @@ which break words for completion in Bash:
</DL>
</P><P>
-<A NAME="IDX355"></A>
+<A NAME="IDX374"></A>
<DL>
<DT><U>Variable:</U> rl_cpvfunc_t * <B>rl_completion_word_break_hook</B>
<DD>If non-zero, this is the address of a function to call when Readline is
@@ -4796,7 +5103,7 @@ returns <CODE>NULL</CODE>, <CODE>rl_completer_word_break_characters</CODE> is us
</DL>
</P><P>
-<A NAME="IDX356"></A>
+<A NAME="IDX375"></A>
<DL>
<DT><U>Variable:</U> const char * <B>rl_completer_quote_characters</B>
<DD>A list of characters which can be used to quote a substring of the line.
@@ -4806,7 +5113,7 @@ unless they also appear within this list.
</DL>
</P><P>
-<A NAME="IDX357"></A>
+<A NAME="IDX376"></A>
<DL>
<DT><U>Variable:</U> const char * <B>rl_filename_quote_characters</B>
<DD>A list of characters that cause a filename to be quoted by the completer
@@ -4814,7 +5121,7 @@ when they appear in a completed filename. The default is the null string.
</DL>
</P><P>
-<A NAME="IDX358"></A>
+<A NAME="IDX377"></A>
<DL>
<DT><U>Variable:</U> const char * <B>rl_special_prefixes</B>
<DD>The list of characters that are word break characters, but should be
@@ -4825,7 +5132,7 @@ shell variables and hostnames.
</DL>
</P><P>
-<A NAME="IDX359"></A>
+<A NAME="IDX378"></A>
<DL>
<DT><U>Variable:</U> int <B>rl_completion_query_items</B>
<DD>Up to this many items will be displayed in response to a
@@ -4835,7 +5142,7 @@ indicates that Readline should never ask the user.
</DL>
</P><P>
-<A NAME="IDX360"></A>
+<A NAME="IDX379"></A>
<DL>
<DT><U>Variable:</U> int <B>rl_completion_append_character</B>
<DD>When a single completion alternative matches at the end of the command
@@ -4848,7 +5155,7 @@ an application-specific command line syntax specification.
</DL>
</P><P>
-<A NAME="IDX361"></A>
+<A NAME="IDX380"></A>
<DL>
<DT><U>Variable:</U> int <B>rl_completion_suppress_append</B>
<DD>If non-zero, <VAR>rl_completion_append_character</VAR> is not appended to
@@ -4858,7 +5165,7 @@ is called, and may only be changed within such a function.
</DL>
</P><P>
-<A NAME="IDX362"></A>
+<A NAME="IDX381"></A>
<DL>
<DT><U>Variable:</U> int <B>rl_completion_quote_character</B>
<DD>When Readline is completing quoted text, as delimited by one of the
@@ -4868,7 +5175,7 @@ This is set before any application-specific completion function is called.
</DL>
</P><P>
-<A NAME="IDX363"></A>
+<A NAME="IDX382"></A>
<DL>
<DT><U>Variable:</U> int <B>rl_completion_suppress_quote</B>
<DD>If non-zero, Readline does not append a matching quote character when
@@ -4878,7 +5185,7 @@ is called, and may only be changed within such a function.
</DL>
</P><P>
-<A NAME="IDX364"></A>
+<A NAME="IDX383"></A>
<DL>
<DT><U>Variable:</U> int <B>rl_completion_found_quote</B>
<DD>When Readline is completing quoted text, it sets this variable
@@ -4888,7 +5195,7 @@ This is set before any application-specific completion function is called.
</DL>
</P><P>
-<A NAME="IDX365"></A>
+<A NAME="IDX384"></A>
<DL>
<DT><U>Variable:</U> int <B>rl_completion_mark_symlink_dirs</B>
<DD>If non-zero, a slash will be appended to completed filenames that are
@@ -4903,7 +5210,7 @@ function modifies the value, the user's preferences are honored.
</DL>
</P><P>
-<A NAME="IDX366"></A>
+<A NAME="IDX385"></A>
<DL>
<DT><U>Variable:</U> int <B>rl_ignore_completion_duplicates</B>
<DD>If non-zero, then duplicates in the matches are removed.
@@ -4911,7 +5218,7 @@ The default is 1.
</DL>
</P><P>
-<A NAME="IDX367"></A>
+<A NAME="IDX386"></A>
<DL>
<DT><U>Variable:</U> int <B>rl_filename_completion_desired</B>
<DD>Non-zero means that the results of the matches are to be treated as
@@ -4925,7 +5232,7 @@ characters in <CODE>rl_filename_quote_characters</CODE> and
</DL>
</P><P>
-<A NAME="IDX368"></A>
+<A NAME="IDX387"></A>
<DL>
<DT><U>Variable:</U> int <B>rl_filename_quoting_desired</B>
<DD>Non-zero means that the results of the matches are to be quoted using
@@ -4939,7 +5246,7 @@ by <CODE>rl_filename_quoting_function</CODE>.
</DL>
</P><P>
-<A NAME="IDX369"></A>
+<A NAME="IDX388"></A>
<DL>
<DT><U>Variable:</U> int <B>rl_attempted_completion_over</B>
<DD>If an application-specific completion function assigned to
@@ -4950,7 +5257,7 @@ It should be set only by an application's completion function.
</DL>
</P><P>
-<A NAME="IDX370"></A>
+<A NAME="IDX389"></A>
<DL>
<DT><U>Variable:</U> int <B>rl_sort_completion_matches</B>
<DD>If an application sets this variable to 0, Readline will not sort the
@@ -4962,19 +5269,19 @@ matches.
</DL>
</P><P>
-<A NAME="IDX371"></A>
+<A NAME="IDX390"></A>
<DL>
<DT><U>Variable:</U> int <B>rl_completion_type</B>
<DD>Set to a character describing the type of completion Readline is currently
attempting; see the description of <CODE>rl_complete_internal()</CODE>
-(see section <A HREF="readline.html#SEC46">2.6.2 Completion Functions</A>) for the list of characters.
+(see section <A HREF="readline.html#SEC47">2.6.2 Completion Functions</A>) for the list of characters.
This is set to the appropriate value before any application-specific
completion function is called, allowing such functions to present
the same interface as <CODE>rl_complete()</CODE>.
</DL>
</P><P>
-<A NAME="IDX372"></A>
+<A NAME="IDX391"></A>
<DL>
<DT><U>Variable:</U> int <B>rl_completion_invoking_key</B>
<DD>Set to the final character in the key sequence that invoked one of the
@@ -4984,7 +5291,7 @@ function is called.
</DL>
</P><P>
-<A NAME="IDX373"></A>
+<A NAME="IDX392"></A>
<DL>
<DT><U>Variable:</U> int <B>rl_inhibit_completion</B>
<DD>If this variable is non-zero, completion is inhibited. The completion
@@ -4994,20 +5301,20 @@ character will be inserted as any other bound to <CODE>self-insert</CODE>.
<A NAME="A Short Completion Example"></A>
<HR SIZE="6">
-<A NAME="SEC48"></A>
+<A NAME="SEC49"></A>
<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC47"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC49"> &gt; </A>]</TD>
+<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC48"> &lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC50"> &gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC44"> Up </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC49"> &gt;&gt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC45"> Up </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC50"> &gt;&gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H3> 2.6.4 A Short Completion Example </H3>
-<!--docid::SEC48::-->
+<!--docid::SEC49::-->
<P>
Here is a small application demonstrating the use of the GNU Readline
@@ -5483,20 +5790,20 @@ valid_argument (caller, arg)
<A NAME="GNU Free Documentation License"></A>
<HR SIZE="6">
-<A NAME="SEC49"></A>
+<A NAME="SEC50"></A>
<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC48"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51"> &gt; </A>]</TD>
+<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC49"> &lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52"> &gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC23"> &lt;&lt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top"> Up </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[ &gt;&gt; ]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H1> A. GNU Free Documentation License </H1>
-<!--docid::SEC49::-->
+<!--docid::SEC50::-->
<P>
<center>
@@ -6033,9 +6340,9 @@ provided the MMC is eligible for relicensing.
</OL>
<P>
-<A NAME="SEC50"></A>
+<A NAME="SEC51"></A>
<H2> ADDENDUM: How to use this License for your documents </H2>
-<!--docid::SEC50::-->
+<!--docid::SEC51::-->
<P>
To use this License in a document you have written, include a copy of
@@ -6074,20 +6381,20 @@ to permit their use in free software.
<A NAME="Concept Index"></A>
<HR SIZE="6">
-<A NAME="SEC51"></A>
+<A NAME="SEC52"></A>
<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC49"> &lt; </A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52"> &gt; </A>]</TD>
+<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC50"> &lt; </A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC53"> &gt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top"> Up </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[ &gt;&gt; ]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H1> Concept Index </H1>
-<!--docid::SEC51::-->
+<!--docid::SEC52::-->
<table><tr><th valign=top>Jump to: &nbsp; </th><td><A HREF="readline.html#cp_A" style="text-decoration:none"><b>A</b></A>
&nbsp;
<A HREF="readline.html#cp_C" style="text-decoration:none"><b>C</b></A>
@@ -6111,7 +6418,7 @@ to permit their use in free software.
<TR><TD></TD><TH ALIGN=LEFT>Index Entry</TH><TH ALIGN=LEFT> Section</TH></TR>
<TR><TD COLSPAN=3> <HR></TD></TR>
<TR><TH><A NAME="cp_A"></A>A</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#SEC44">application-specific completion functions</A></TD><TD valign=top><A HREF="readline.html#SEC44">2.6 Custom Completers</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#SEC45">application-specific completion functions</A></TD><TD valign=top><A HREF="readline.html#SEC45">2.6 Custom Completers</A></TD></TR>
<TR><TD COLSPAN=3> <HR></TD></TR>
<TR><TH><A NAME="cp_C"></A>C</TH><TD></TD><TD></TD></TR>
<TR><TD></TD><TD valign=top><A HREF="readline.html#SEC4">command editing</A></TD><TD valign=top><A HREF="readline.html#SEC4">1.2.1 Readline Bare Essentials</A></TD></TR>
@@ -6131,7 +6438,7 @@ to permit their use in free software.
<TR><TD></TD><TD valign=top><A HREF="readline.html#SEC4">notation, readline</A></TD><TD valign=top><A HREF="readline.html#SEC4">1.2.1 Readline Bare Essentials</A></TD></TR>
<TR><TD COLSPAN=3> <HR></TD></TR>
<TR><TH><A NAME="cp_R"></A>R</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX191">readline, function</A></TD><TD valign=top><A HREF="readline.html#SEC24">2.1 Basic Behavior</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX201">readline, function</A></TD><TD valign=top><A HREF="readline.html#SEC24">2.1 Basic Behavior</A></TD></TR>
<TR><TD COLSPAN=3> <HR></TD></TR>
<TR><TH><A NAME="cp_V"></A>V</TH><TD></TD><TD></TD></TR>
<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX4">variables, readline</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
@@ -6161,20 +6468,20 @@ to permit their use in free software.
<A NAME="Function and Variable Index"></A>
<HR SIZE="6">
-<A NAME="SEC52"></A>
+<A NAME="SEC53"></A>
<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
-<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51"> &lt; </A>]</TD>
+<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52"> &lt; </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[ &gt; ]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[ &lt;&lt; ]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top"> Up </A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[ &gt;&gt; ]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT"> &nbsp; <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H1> Function and Variable Index </H1>
-<!--docid::SEC52::-->
+<!--docid::SEC53::-->
<table><tr><th valign=top>Jump to: &nbsp; </th><td><A HREF="readline.html#fn__" style="text-decoration:none"><b>_</b></A>
&nbsp;
<BR>
@@ -6223,414 +6530,433 @@ to permit their use in free software.
<TR><TD></TD><TH ALIGN=LEFT>Index Entry</TH><TH ALIGN=LEFT> Section</TH></TR>
<TR><TD COLSPAN=3> <HR></TD></TR>
<TR><TH><A NAME="fn__"></A>_</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX307"><CODE>_rl_digit_p</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX310"><CODE>_rl_digit_value</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX306"><CODE>_rl_lowercase_p</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX309"><CODE>_rl_to_lower</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX308"><CODE>_rl_to_upper</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX305"><CODE>_rl_uppercase_p</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX322"><CODE>_rl_digit_p</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX325"><CODE>_rl_digit_value</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX321"><CODE>_rl_lowercase_p</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX324"><CODE>_rl_to_lower</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX323"><CODE>_rl_to_upper</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX320"><CODE>_rl_uppercase_p</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
<TR><TD COLSPAN=3> <HR></TD></TR>
<TR><TH><A NAME="fn_A"></A>A</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX156"><CODE>abort (C-g)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX157"><CODE>abort (C-g)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX52"><CODE>accept-line (Newline or Return)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX53"><CODE>accept-line (Newline or Return)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX166"><CODE>abort (C-g)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX167"><CODE>abort (C-g)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX54"><CODE>accept-line (Newline or Return)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX55"><CODE>accept-line (Newline or Return)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
<TR><TD COLSPAN=3> <HR></TD></TR>
<TR><TH><A NAME="fn_B"></A>B</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX42"><CODE>backward-char (C-b)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX43"><CODE>backward-char (C-b)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX80"><CODE>backward-delete-char (Rubout)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX81"><CODE>backward-delete-char (Rubout)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX104"><CODE>backward-kill-line (C-x Rubout)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX105"><CODE>backward-kill-line (C-x Rubout)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX112"><CODE>backward-kill-word (M-<KBD>DEL</KBD>)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX113"><CODE>backward-kill-word (M-<KBD>DEL</KBD>)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX46"><CODE>backward-word (M-b)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX47"><CODE>backward-word (M-b)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX58"><CODE>beginning-of-history (M-&#38;#60;)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX59"><CODE>beginning-of-history (M-&#38;#60;)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX36"><CODE>beginning-of-line (C-a)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX37"><CODE>beginning-of-line (C-a)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX44"><CODE>backward-char (C-b)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX45"><CODE>backward-char (C-b)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX88"><CODE>backward-delete-char (Rubout)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX89"><CODE>backward-delete-char (Rubout)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX112"><CODE>backward-kill-line (C-x Rubout)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX113"><CODE>backward-kill-line (C-x Rubout)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX120"><CODE>backward-kill-word (M-<KBD>DEL</KBD>)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX121"><CODE>backward-kill-word (M-<KBD>DEL</KBD>)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX48"><CODE>backward-word (M-b)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX49"><CODE>backward-word (M-b)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX60"><CODE>beginning-of-history (M-&#38;#60;)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX61"><CODE>beginning-of-history (M-&#38;#60;)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX38"><CODE>beginning-of-line (C-a)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX39"><CODE>beginning-of-line (C-a)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX5">bell-style</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX6">bind-tty-special-chars</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
<TR><TD COLSPAN=3> <HR></TD></TR>
<TR><TH><A NAME="fn_C"></A>C</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX152"><CODE>call-last-kbd-macro (C-x e)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC20">1.4.7 Keyboard Macros</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX153"><CODE>call-last-kbd-macro (C-x e)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC20">1.4.7 Keyboard Macros</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX98"><CODE>capitalize-word (M-c)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX99"><CODE>capitalize-word (M-c)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX172"><CODE>character-search (C-])</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX173"><CODE>character-search (C-])</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX174"><CODE>character-search-backward (M-C-])</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX175"><CODE>character-search-backward (M-C-])</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX48"><CODE>clear-screen (C-l)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX49"><CODE>clear-screen (C-l)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX7">comment-begin</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX136"><CODE>complete (<KBD>TAB</KBD>)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX137"><CODE>complete (<KBD>TAB</KBD>)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX8">completion-display-width</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX9">completion-ignore-case</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX10">completion-map-case</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX11">completion-prefix-display-length</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX12">completion-query-items</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX13">convert-meta</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX124"><CODE>copy-backward-word ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX125"><CODE>copy-backward-word ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX126"><CODE>copy-forward-word ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX127"><CODE>copy-forward-word ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX122"><CODE>copy-region-as-kill ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX123"><CODE>copy-region-as-kill ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX160"><CODE>call-last-kbd-macro (C-x e)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC20">1.4.7 Keyboard Macros</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX161"><CODE>call-last-kbd-macro (C-x e)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC20">1.4.7 Keyboard Macros</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX106"><CODE>capitalize-word (M-c)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX107"><CODE>capitalize-word (M-c)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX182"><CODE>character-search (C-])</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX183"><CODE>character-search (C-])</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX184"><CODE>character-search-backward (M-C-])</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX185"><CODE>character-search-backward (M-C-])</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX50"><CODE>clear-screen (C-l)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX51"><CODE>clear-screen (C-l)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX7">colored-stats</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX8">comment-begin</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX144"><CODE>complete (<KBD>TAB</KBD>)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX145"><CODE>complete (<KBD>TAB</KBD>)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX9">completion-display-width</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX10">completion-ignore-case</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX11">completion-map-case</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX12">completion-prefix-display-length</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX13">completion-query-items</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX14">convert-meta</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX132"><CODE>copy-backward-word ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX133"><CODE>copy-backward-word ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX134"><CODE>copy-forward-word ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX135"><CODE>copy-forward-word ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX130"><CODE>copy-region-as-kill ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX131"><CODE>copy-region-as-kill ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
<TR><TD COLSPAN=3> <HR></TD></TR>
<TR><TH><A NAME="fn_D"></A>D</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX78"><CODE>delete-char (C-d)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX79"><CODE>delete-char (C-d)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX146"><CODE>delete-char-or-list ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX147"><CODE>delete-char-or-list ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX118"><CODE>delete-horizontal-space ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX119"><CODE>delete-horizontal-space ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX132"><CODE>digit-argument (<KBD>M-0</KBD>, <KBD>M-1</KBD>, &#60;small&#62;...&#60;/small&#62; <KBD>M--</KBD>)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC18">1.4.5 Specifying Numeric Arguments</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX133"><CODE>digit-argument (<KBD>M-0</KBD>, <KBD>M-1</KBD>, &#60;small&#62;...&#60;/small&#62; <KBD>M--</KBD>)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC18">1.4.5 Specifying Numeric Arguments</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX14">disable-completion</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX158"><CODE>do-uppercase-version (M-a, M-b, M-<VAR>x</VAR>, &#60;small&#62;...&#60;/small&#62;)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX159"><CODE>do-uppercase-version (M-a, M-b, M-<VAR>x</VAR>, &#60;small&#62;...&#60;/small&#62;)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX96"><CODE>downcase-word (M-l)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX97"><CODE>downcase-word (M-l)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX180"><CODE>dump-functions ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX181"><CODE>dump-functions ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX184"><CODE>dump-macros ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX185"><CODE>dump-macros ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX182"><CODE>dump-variables ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX183"><CODE>dump-variables ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX86"><CODE>delete-char (C-d)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX87"><CODE>delete-char (C-d)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX154"><CODE>delete-char-or-list ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX155"><CODE>delete-char-or-list ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX126"><CODE>delete-horizontal-space ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX127"><CODE>delete-horizontal-space ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX140"><CODE>digit-argument (<KBD>M-0</KBD>, <KBD>M-1</KBD>, &#60;small&#62;...&#60;/small&#62; <KBD>M--</KBD>)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC18">1.4.5 Specifying Numeric Arguments</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX141"><CODE>digit-argument (<KBD>M-0</KBD>, <KBD>M-1</KBD>, &#60;small&#62;...&#60;/small&#62; <KBD>M--</KBD>)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC18">1.4.5 Specifying Numeric Arguments</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX15">disable-completion</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX168"><CODE>do-uppercase-version (M-a, M-b, M-<VAR>x</VAR>, &#60;small&#62;...&#60;/small&#62;)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX169"><CODE>do-uppercase-version (M-a, M-b, M-<VAR>x</VAR>, &#60;small&#62;...&#60;/small&#62;)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX104"><CODE>downcase-word (M-l)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX105"><CODE>downcase-word (M-l)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX190"><CODE>dump-functions ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX191"><CODE>dump-functions ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX194"><CODE>dump-macros ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX195"><CODE>dump-macros ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX192"><CODE>dump-variables ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX193"><CODE>dump-variables ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
<TR><TD COLSPAN=3> <HR></TD></TR>
<TR><TH><A NAME="fn_E"></A>E</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX15">editing-mode</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX186"><CODE>emacs-editing-mode (C-e)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX187"><CODE>emacs-editing-mode (C-e)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX16">enable-keypad</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX150"><CODE>end-kbd-macro (C-x ))</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC20">1.4.7 Keyboard Macros</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX151"><CODE>end-kbd-macro (C-x ))</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC20">1.4.7 Keyboard Macros</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX60"><CODE>end-of-history (M-&#38;#62;)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX61"><CODE>end-of-history (M-&#38;#62;)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX38"><CODE>end-of-line (C-e)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX39"><CODE>end-of-line (C-e)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX170"><CODE>exchange-point-and-mark (C-x C-x)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX171"><CODE>exchange-point-and-mark (C-x C-x)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX17">expand-tilde</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX16">editing-mode</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX196"><CODE>emacs-editing-mode (C-e)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX197"><CODE>emacs-editing-mode (C-e)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX17">enable-keypad</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX158"><CODE>end-kbd-macro (C-x ))</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC20">1.4.7 Keyboard Macros</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX159"><CODE>end-kbd-macro (C-x ))</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC20">1.4.7 Keyboard Macros</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX84"><CODE><I>end-of-file</I> (usually C-d)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX85"><CODE><I>end-of-file</I> (usually C-d)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX62"><CODE>end-of-history (M-&#38;#62;)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX63"><CODE>end-of-history (M-&#38;#62;)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX40"><CODE>end-of-line (C-e)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX41"><CODE>end-of-line (C-e)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX180"><CODE>exchange-point-and-mark (C-x C-x)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX181"><CODE>exchange-point-and-mark (C-x C-x)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX18">expand-tilde</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
<TR><TD COLSPAN=3> <HR></TD></TR>
<TR><TH><A NAME="fn_F"></A>F</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX82"><CODE>forward-backward-delete-char ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX83"><CODE>forward-backward-delete-char ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX40"><CODE>forward-char (C-f)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX41"><CODE>forward-char (C-f)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX64"><CODE>forward-search-history (C-s)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX65"><CODE>forward-search-history (C-s)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX44"><CODE>forward-word (M-f)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX45"><CODE>forward-word (M-f)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX90"><CODE>forward-backward-delete-char ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX91"><CODE>forward-backward-delete-char ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX42"><CODE>forward-char (C-f)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX43"><CODE>forward-char (C-f)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX66"><CODE>forward-search-history (C-s)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX67"><CODE>forward-search-history (C-s)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX46"><CODE>forward-word (M-f)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX47"><CODE>forward-word (M-f)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
<TR><TD COLSPAN=3> <HR></TD></TR>
<TR><TH><A NAME="fn_H"></A>H</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX18">history-preserve-point</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX72"><CODE>history-search-backward ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX73"><CODE>history-search-backward ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX70"><CODE>history-search-forward ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX71"><CODE>history-search-forward ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX19">history-size</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX20">horizontal-scroll-mode</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX19">history-preserve-point</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX74"><CODE>history-search-backward ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX75"><CODE>history-search-backward ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX72"><CODE>history-search-forward ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX73"><CODE>history-search-forward ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX20">history-size</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX78"><CODE>history-substr-search-backward ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX79"><CODE>history-substr-search-backward ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX76"><CODE>history-substr-search-forward ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX77"><CODE>history-substr-search-forward ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX21">horizontal-scroll-mode</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
<TR><TD COLSPAN=3> <HR></TD></TR>
<TR><TH><A NAME="fn_I"></A>I</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX21">input-meta</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX178"><CODE>insert-comment (M-#)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX179"><CODE>insert-comment (M-#)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX140"><CODE>insert-completions (M-*)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX141"><CODE>insert-completions (M-*)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX23">isearch-terminators</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX22">input-meta</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX188"><CODE>insert-comment (M-#)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX189"><CODE>insert-comment (M-#)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX148"><CODE>insert-completions (M-*)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX149"><CODE>insert-completions (M-*)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX24">isearch-terminators</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
<TR><TD COLSPAN=3> <HR></TD></TR>
<TR><TH><A NAME="fn_K"></A>K</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX24">keymap</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX102"><CODE>kill-line (C-k)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX103"><CODE>kill-line (C-k)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX120"><CODE>kill-region ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX121"><CODE>kill-region ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX108"><CODE>kill-whole-line ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX109"><CODE>kill-whole-line ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX110"><CODE>kill-word (M-d)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX111"><CODE>kill-word (M-d)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX25">keymap</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX110"><CODE>kill-line (C-k)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX111"><CODE>kill-line (C-k)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX128"><CODE>kill-region ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX129"><CODE>kill-region ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX116"><CODE>kill-whole-line ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX117"><CODE>kill-whole-line ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX118"><CODE>kill-word (M-d)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX119"><CODE>kill-word (M-d)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
<TR><TD COLSPAN=3> <HR></TD></TR>
<TR><TH><A NAME="fn_M"></A>M</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX25">mark-modified-lines</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX26">mark-symlinked-directories</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX27">match-hidden-files</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX142"><CODE>menu-complete ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX143"><CODE>menu-complete ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX144"><CODE>menu-complete-backward ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX145"><CODE>menu-complete-backward ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX28">menu-complete-display-prefix</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX22">meta-flag</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX26">mark-modified-lines</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX27">mark-symlinked-directories</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX28">match-hidden-files</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX150"><CODE>menu-complete ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX151"><CODE>menu-complete ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX152"><CODE>menu-complete-backward ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX153"><CODE>menu-complete-backward ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX29">menu-complete-display-prefix</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX23">meta-flag</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
<TR><TD COLSPAN=3> <HR></TD></TR>
<TR><TH><A NAME="fn_N"></A>N</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX56"><CODE>next-history (C-n)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX57"><CODE>next-history (C-n)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX68"><CODE>non-incremental-forward-search-history (M-n)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX69"><CODE>non-incremental-forward-search-history (M-n)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX66"><CODE>non-incremental-reverse-search-history (M-p)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX67"><CODE>non-incremental-reverse-search-history (M-p)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX58"><CODE>next-history (C-n)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX59"><CODE>next-history (C-n)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX70"><CODE>non-incremental-forward-search-history (M-n)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX71"><CODE>non-incremental-forward-search-history (M-n)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX68"><CODE>non-incremental-reverse-search-history (M-p)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX69"><CODE>non-incremental-reverse-search-history (M-p)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
<TR><TD COLSPAN=3> <HR></TD></TR>
<TR><TH><A NAME="fn_O"></A>O</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX29">output-meta</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX100"><CODE>overwrite-mode ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX101"><CODE>overwrite-mode ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX30">output-meta</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX108"><CODE>overwrite-mode ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX109"><CODE>overwrite-mode ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
<TR><TD COLSPAN=3> <HR></TD></TR>
<TR><TH><A NAME="fn_P"></A>P</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX30">page-completions</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX138"><CODE>possible-completions (M-?)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX139"><CODE>possible-completions (M-?)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX160"><CODE>prefix-meta (<KBD>ESC</KBD>)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX161"><CODE>prefix-meta (<KBD>ESC</KBD>)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX54"><CODE>previous-history (C-p)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX55"><CODE>previous-history (C-p)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX31">page-completions</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX146"><CODE>possible-completions (M-?)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX147"><CODE>possible-completions (M-?)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC19">1.4.6 Letting Readline Type For You</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX170"><CODE>prefix-meta (<KBD>ESC</KBD>)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX171"><CODE>prefix-meta (<KBD>ESC</KBD>)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX56"><CODE>previous-history (C-p)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX57"><CODE>previous-history (C-p)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX162"><CODE>print-last-kbd-macro ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC20">1.4.7 Keyboard Macros</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX163"><CODE>print-last-kbd-macro ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC20">1.4.7 Keyboard Macros</A></TD></TR>
<TR><TD COLSPAN=3> <HR></TD></TR>
<TR><TH><A NAME="fn_Q"></A>Q</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX84"><CODE>quoted-insert (C-q or C-v)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX85"><CODE>quoted-insert (C-q or C-v)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX92"><CODE>quoted-insert (C-q or C-v)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX93"><CODE>quoted-insert (C-q or C-v)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
<TR><TD COLSPAN=3> <HR></TD></TR>
<TR><TH><A NAME="fn_R"></A>R</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX154"><CODE>re-read-init-file (C-x C-r)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX155"><CODE>re-read-init-file (C-x C-r)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX190"><CODE>readline</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC24">2.1 Basic Behavior</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX50"><CODE>redraw-current-line ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX51"><CODE>redraw-current-line ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX62"><CODE>reverse-search-history (C-r)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX63"><CODE>reverse-search-history (C-r)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX31">revert-all-at-newline</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX164"><CODE>revert-line (M-r)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX165"><CODE>revert-line (M-r)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX227"><CODE>rl_add_defun</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC30">2.4.1 Naming a Function</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX260"><CODE>rl_add_funmap_entry</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX263"><CODE>rl_add_undo</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC34">2.4.5 Allowing Undoing</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX303"><CODE>rl_alphabetic</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX203">rl_already_prompted</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX344">rl_attempted_completion_function</A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX369">rl_attempted_completion_over</A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX353">rl_basic_quote_characters</A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX352">rl_basic_word_break_characters</A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX261"><CODE>rl_begin_undo_group</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC34">2.4.5 Allowing Undoing</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX237"><CODE>rl_bind_key</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX239"><CODE>rl_bind_key_if_unbound</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX240"><CODE>rl_bind_key_if_unbound_in_map</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX238"><CODE>rl_bind_key_in_map</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX245"><CODE>rl_bind_keyseq</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX248"><CODE>rl_bind_keyseq_if_unbound</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX249"><CODE>rl_bind_keyseq_if_unbound_in_map</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX246"><CODE>rl_bind_keyseq_in_map</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX221">rl_binding_keymap</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX318"><CODE>rl_callback_handler_install</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC41">2.4.12 Alternate Interface</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX320"><CODE>rl_callback_handler_remove</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC41">2.4.12 Alternate Interface</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX319"><CODE>rl_callback_read_char</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC41">2.4.12 Alternate Interface</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX321">rl_catch_signals</A></TD><TD valign=top><A HREF="readline.html#SEC43">2.5 Readline Signal Handling</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX322">rl_catch_sigwinch</A></TD><TD valign=top><A HREF="readline.html#SEC43">2.5 Readline Signal Handling</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX347">rl_char_is_quoted_p</A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX323"><CODE>rl_cleanup_after_signal</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC43">2.5 Readline Signal Handling</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX275"><CODE>rl_clear_message</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX289"><CODE>rl_clear_pending_input</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC37">2.4.8 Character Input</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX332"><CODE>rl_clear_signals</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC43">2.5 Readline Signal Handling</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX333"><CODE>rl_complete</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC45">2.6.1 How Completing Works</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX336"><CODE>rl_complete</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC46">2.6.2 Completion Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX335"><CODE>rl_complete_internal</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC46">2.6.2 Completion Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX356">rl_completer_quote_characters</A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX354">rl_completer_word_break_characters</A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX360">rl_completion_append_character</A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX351">rl_completion_display_matches_hook</A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX334">rl_completion_entry_function</A></TD><TD valign=top><A HREF="readline.html#SEC45">2.6.1 How Completing Works</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX343">rl_completion_entry_function</A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX364">rl_completion_found_quote</A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX372">rl_completion_invoking_key</A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX365">rl_completion_mark_symlink_dirs</A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX340"><CODE>rl_completion_matches</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC46">2.6.2 Completion Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX339"><CODE>rl_completion_mode</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC46">2.6.2 Completion Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX359">rl_completion_query_items</A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX362">rl_completion_quote_character</A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX361">rl_completion_suppress_append</A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX363">rl_completion_suppress_quote</A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX371">rl_completion_type</A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX355">rl_completion_word_break_hook</A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX229"><CODE>rl_copy_keymap</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX282"><CODE>rl_copy_text</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC36">2.4.7 Modifying Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX272"><CODE>rl_crlf</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX281"><CODE>rl_delete_text</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC36">2.4.7 Modifying Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX219">rl_deprep_term_function</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX292"><CODE>rl_deprep_terminal</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC38">2.4.9 Terminal Management</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX302"><CODE>rl_ding</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX349">rl_directory_completion_hook</A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX231"><CODE>rl_discard_keymap</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX199">rl_dispatching</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX304"><CODE>rl_display_match_list</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX202">rl_display_prompt</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX265"><CODE>rl_do_undo</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC34">2.4.5 Allowing Undoing</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX196">rl_done</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX326"><CODE>rl_echo_signal_char</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC43">2.5 Readline Signal Handling</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX226">rl_editing_mode</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX194">rl_end</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX262"><CODE>rl_end_undo_group</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC34">2.4.5 Allowing Undoing</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX200">rl_erase_empty_line</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX215">rl_event_hook</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX288"><CODE>rl_execute_next</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC37">2.4.8 Character Input</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX220">rl_executing_keymap</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX222">rl_executing_macro</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX278"><CODE>rl_expand_prompt</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX224">rl_explicit_arg</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX300"><CODE>rl_extend_line_buffer</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX367">rl_filename_completion_desired</A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX341"><CODE>rl_filename_completion_function</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC46">2.6.2 Completion Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX346">rl_filename_dequoting_function</A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX357">rl_filename_quote_characters</A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX368">rl_filename_quoting_desired</A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX345">rl_filename_quoting_function</A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX350">rl_filename_rewrite_hook</A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX268"><CODE>rl_forced_update_display</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX298"><CODE>rl_free</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX232"><CODE>rl_free_keymap</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX324"><CODE>rl_free_line_state</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC43">2.5 Readline Signal Handling</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX264"><CODE>rl_free_undo_list</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC34">2.4.5 Allowing Undoing</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX257"><CODE>rl_function_dumper</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX254"><CODE>rl_function_of_keyseq</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX259"><CODE>rl_funmap_names</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX250"><CODE>rl_generic_bind</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX233"><CODE>rl_get_keymap</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX235"><CODE>rl_get_keymap_by_name</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX236"><CODE>rl_get_keymap_name</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX329"><CODE>rl_get_screen_size</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC43">2.5 Readline Signal Handling</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX317"><CODE>rl_get_termcap</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC40">2.4.11 Miscellaneous Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX286"><CODE>rl_getc</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC37">2.4.8 Character Input</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX216">rl_getc_function</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX206">rl_gnu_readline_p</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX366">rl_ignore_completion_duplicates</A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX348">rl_ignore_some_completions_function</A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX373">rl_inhibit_completion</A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX301"><CODE>rl_initialize</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX338"><CODE>rl_insert_completions</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC46">2.6.2 Completion Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX280"><CODE>rl_insert_text</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC36">2.4.7 Modifying Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX209">rl_instream</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX255"><CODE>rl_invoking_keyseqs</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX256"><CODE>rl_invoking_keyseqs_in_map</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX283"><CODE>rl_kill_text</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC36">2.4.7 Modifying Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX212">rl_last_func</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX204">rl_library_version</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX192">rl_line_buffer</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX258"><CODE>rl_list_funmap_names</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX311"><CODE>rl_macro_bind</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC40">2.4.11 Miscellaneous Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX312"><CODE>rl_macro_dumper</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC40">2.4.11 Miscellaneous Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX228"><CODE>rl_make_bare_keymap</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX230"><CODE>rl_make_keymap</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX195">rl_mark</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX274"><CODE>rl_message</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX266"><CODE>rl_modifying</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC34">2.4.5 Allowing Undoing</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX253"><CODE>rl_named_function</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX197">rl_num_chars_to_read</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX225">rl_numeric_arg</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX269"><CODE>rl_on_new_line</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX270"><CODE>rl_on_new_line_with_prompt</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX210">rl_outstream</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX251"><CODE>rl_parse_and_bind</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX198">rl_pending_input</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX193">rl_point</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX337"><CODE>rl_possible_completions</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC46">2.6.2 Completion Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX214">rl_pre_input_hook</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX211">rl_prefer_env_winsize</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX218">rl_prep_term_function</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX291"><CODE>rl_prep_terminal</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC38">2.4.9 Terminal Management</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX201">rl_prompt</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX284"><CODE>rl_push_macro_input</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC36">2.4.7 Modifying Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX252"><CODE>rl_read_init_file</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX285"><CODE>rl_read_key</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC37">2.4.8 Character Input</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX208">rl_readline_name</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX223">rl_readline_state</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX205">rl_readline_version</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX267"><CODE>rl_redisplay</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX217">rl_redisplay_function</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX299"><CODE>rl_replace_line</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX325"><CODE>rl_reset_after_signal</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC43">2.5 Readline Signal Handling</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX271"><CODE>rl_reset_line_state</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX330"><CODE>rl_reset_screen_size</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC43">2.5 Readline Signal Handling</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX295"><CODE>rl_reset_terminal</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC38">2.4.9 Terminal Management</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX327"><CODE>rl_resize_terminal</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC43">2.5 Readline Signal Handling</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX277"><CODE>rl_restore_prompt</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX297"><CODE>rl_restore_state</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX276"><CODE>rl_save_prompt</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX296"><CODE>rl_save_state</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX247"><CODE>rl_set_key</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX290"><CODE>rl_set_keyboard_input_timeout</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC37">2.4.8 Character Input</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX234"><CODE>rl_set_keymap</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX316"><CODE>rl_set_paren_blink_timeout</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC40">2.4.11 Miscellaneous Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX279"><CODE>rl_set_prompt</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX328"><CODE>rl_set_screen_size</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC43">2.5 Readline Signal Handling</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX331"><CODE>rl_set_signals</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC43">2.5 Readline Signal Handling</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX273"><CODE>rl_show_char</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX370">rl_sort_completion_matches</A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX358">rl_special_prefixes</A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.3 Completion Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX213">rl_startup_hook</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX287"><CODE>rl_stuff_char</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC37">2.4.8 Character Input</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX207">rl_terminal_name</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX293"><CODE>rl_tty_set_default_bindings</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC38">2.4.9 Terminal Management</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX294"><CODE>rl_tty_unset_default_bindings</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC38">2.4.9 Terminal Management</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX244"><CODE>rl_unbind_command_in_map</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX243"><CODE>rl_unbind_function_in_map</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX241"><CODE>rl_unbind_key</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX242"><CODE>rl_unbind_key_in_map</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX342"><CODE>rl_username_completion_function</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC46">2.6.2 Completion Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX313"><CODE>rl_variable_bind</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC40">2.4.11 Miscellaneous Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX315"><CODE>rl_variable_dumper</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC40">2.4.11 Miscellaneous Functions</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX314"><CODE>rl_variable_value</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC40">2.4.11 Miscellaneous Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX164"><CODE>re-read-init-file (C-x C-r)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX165"><CODE>re-read-init-file (C-x C-r)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX200"><CODE>readline</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC24">2.1 Basic Behavior</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX52"><CODE>redraw-current-line ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX53"><CODE>redraw-current-line ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC14">1.4.1 Commands For Moving</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX64"><CODE>reverse-search-history (C-r)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX65"><CODE>reverse-search-history (C-r)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX32">revert-all-at-newline</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX174"><CODE>revert-line (M-r)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX175"><CODE>revert-line (M-r)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX242"><CODE>rl_add_defun</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC30">2.4.1 Naming a Function</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX275"><CODE>rl_add_funmap_entry</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX278"><CODE>rl_add_undo</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC34">2.4.5 Allowing Undoing</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX318"><CODE>rl_alphabetic</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX213">rl_already_prompted</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX361">rl_attempted_completion_function</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX388">rl_attempted_completion_over</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX372">rl_basic_quote_characters</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX371">rl_basic_word_break_characters</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX276"><CODE>rl_begin_undo_group</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC34">2.4.5 Allowing Undoing</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX252"><CODE>rl_bind_key</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX254"><CODE>rl_bind_key_if_unbound</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX255"><CODE>rl_bind_key_if_unbound_in_map</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX253"><CODE>rl_bind_key_in_map</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX260"><CODE>rl_bind_keyseq</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX263"><CODE>rl_bind_keyseq_if_unbound</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX264"><CODE>rl_bind_keyseq_if_unbound_in_map</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX261"><CODE>rl_bind_keyseq_in_map</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX233">rl_binding_keymap</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX334"><CODE>rl_callback_handler_install</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC41">2.4.12 Alternate Interface</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX336"><CODE>rl_callback_handler_remove</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC41">2.4.12 Alternate Interface</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX335"><CODE>rl_callback_read_char</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC41">2.4.12 Alternate Interface</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX337">rl_catch_signals</A></TD><TD valign=top><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX338">rl_catch_sigwinch</A></TD><TD valign=top><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX339">rl_change_environment</A></TD><TD valign=top><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX364">rl_char_is_quoted_p</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX340"><CODE>rl_cleanup_after_signal</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX333"><CODE>rl_clear_history</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC40">2.4.11 Miscellaneous Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX290"><CODE>rl_clear_message</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX304"><CODE>rl_clear_pending_input</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC37">2.4.8 Character Input</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX349"><CODE>rl_clear_signals</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX350"><CODE>rl_complete</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC46">2.6.1 How Completing Works</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX353"><CODE>rl_complete</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.2 Completion Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX352"><CODE>rl_complete_internal</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.2 Completion Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX375">rl_completer_quote_characters</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX373">rl_completer_word_break_characters</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX379">rl_completion_append_character</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX370">rl_completion_display_matches_hook</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX351">rl_completion_entry_function</A></TD><TD valign=top><A HREF="readline.html#SEC46">2.6.1 How Completing Works</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX360">rl_completion_entry_function</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX383">rl_completion_found_quote</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX391">rl_completion_invoking_key</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX384">rl_completion_mark_symlink_dirs</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX357"><CODE>rl_completion_matches</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.2 Completion Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX356"><CODE>rl_completion_mode</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.2 Completion Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX378">rl_completion_query_items</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX381">rl_completion_quote_character</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX380">rl_completion_suppress_append</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX382">rl_completion_suppress_quote</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX390">rl_completion_type</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX374">rl_completion_word_break_hook</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX244"><CODE>rl_copy_keymap</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX297"><CODE>rl_copy_text</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC36">2.4.7 Modifying Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX287"><CODE>rl_crlf</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX296"><CODE>rl_delete_text</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC36">2.4.7 Modifying Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX231">rl_deprep_term_function</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX307"><CODE>rl_deprep_terminal</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC38">2.4.9 Terminal Management</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX317"><CODE>rl_ding</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX366">rl_directory_completion_hook</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX367">rl_directory_rewrite_hook;</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX246"><CODE>rl_discard_keymap</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX209">rl_dispatching</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX319"><CODE>rl_display_match_list</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX212">rl_display_prompt</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX280"><CODE>rl_do_undo</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC34">2.4.5 Allowing Undoing</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX206">rl_done</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX343"><CODE>rl_echo_signal_char</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX241">rl_editing_mode</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX204">rl_end</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX277"><CODE>rl_end_undo_group</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC34">2.4.5 Allowing Undoing</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX210">rl_erase_empty_line</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX225">rl_event_hook</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX303"><CODE>rl_execute_next</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC37">2.4.8 Character Input</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX235">rl_executing_key</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX232">rl_executing_keymap</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX236">rl_executing_keyseq</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX234">rl_executing_macro</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX293"><CODE>rl_expand_prompt</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX239">rl_explicit_arg</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX315"><CODE>rl_extend_line_buffer</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX386">rl_filename_completion_desired</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX358"><CODE>rl_filename_completion_function</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.2 Completion Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX363">rl_filename_dequoting_function</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX376">rl_filename_quote_characters</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX387">rl_filename_quoting_desired</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX362">rl_filename_quoting_function</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX369">rl_filename_rewrite_hook</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX368">rl_filename_stat_hook</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX283"><CODE>rl_forced_update_display</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX313"><CODE>rl_free</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX247"><CODE>rl_free_keymap</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX341"><CODE>rl_free_line_state</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX279"><CODE>rl_free_undo_list</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC34">2.4.5 Allowing Undoing</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX272"><CODE>rl_function_dumper</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX269"><CODE>rl_function_of_keyseq</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX274"><CODE>rl_funmap_names</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX265"><CODE>rl_generic_bind</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX248"><CODE>rl_get_keymap</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX250"><CODE>rl_get_keymap_by_name</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX251"><CODE>rl_get_keymap_name</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX346"><CODE>rl_get_screen_size</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX332"><CODE>rl_get_termcap</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC40">2.4.11 Miscellaneous Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX301"><CODE>rl_getc</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC37">2.4.8 Character Input</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX226">rl_getc_function</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX216">rl_gnu_readline_p</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX385">rl_ignore_completion_duplicates</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX365">rl_ignore_some_completions_function</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX392">rl_inhibit_completion</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX316"><CODE>rl_initialize</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX228">rl_input_available_hook</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX355"><CODE>rl_insert_completions</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.2 Completion Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX295"><CODE>rl_insert_text</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC36">2.4.7 Modifying Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX219">rl_instream</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX270"><CODE>rl_invoking_keyseqs</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX271"><CODE>rl_invoking_keyseqs_in_map</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX237">rl_key_sequence_length</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX298"><CODE>rl_kill_text</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC36">2.4.7 Modifying Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX222">rl_last_func</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX214">rl_library_version</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX202">rl_line_buffer</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX273"><CODE>rl_list_funmap_names</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX326"><CODE>rl_macro_bind</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC40">2.4.11 Miscellaneous Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX327"><CODE>rl_macro_dumper</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC40">2.4.11 Miscellaneous Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX243"><CODE>rl_make_bare_keymap</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX245"><CODE>rl_make_keymap</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX205">rl_mark</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX289"><CODE>rl_message</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX281"><CODE>rl_modifying</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC34">2.4.5 Allowing Undoing</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX268"><CODE>rl_named_function</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC33">2.4.4 Associating Function Names and Bindings</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX207">rl_num_chars_to_read</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX240">rl_numeric_arg</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX284"><CODE>rl_on_new_line</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX285"><CODE>rl_on_new_line_with_prompt</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX220">rl_outstream</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX266"><CODE>rl_parse_and_bind</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX208">rl_pending_input</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX203">rl_point</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX354"><CODE>rl_possible_completions</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.2 Completion Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX224">rl_pre_input_hook</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX221">rl_prefer_env_winsize</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX230">rl_prep_term_function</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX306"><CODE>rl_prep_terminal</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC38">2.4.9 Terminal Management</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX211">rl_prompt</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX299"><CODE>rl_push_macro_input</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC36">2.4.7 Modifying Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX267"><CODE>rl_read_init_file</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX300"><CODE>rl_read_key</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC37">2.4.8 Character Input</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX218">rl_readline_name</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX238">rl_readline_state</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX215">rl_readline_version</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX282"><CODE>rl_redisplay</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX229">rl_redisplay_function</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX314"><CODE>rl_replace_line</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX342"><CODE>rl_reset_after_signal</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX286"><CODE>rl_reset_line_state</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX347"><CODE>rl_reset_screen_size</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX310"><CODE>rl_reset_terminal</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC38">2.4.9 Terminal Management</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX344"><CODE>rl_resize_terminal</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX292"><CODE>rl_restore_prompt</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX312"><CODE>rl_restore_state</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX291"><CODE>rl_save_prompt</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX311"><CODE>rl_save_state</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC39">2.4.10 Utility Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX262"><CODE>rl_set_key</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX305"><CODE>rl_set_keyboard_input_timeout</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC37">2.4.8 Character Input</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX249"><CODE>rl_set_keymap</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC31">2.4.2 Selecting a Keymap</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX331"><CODE>rl_set_paren_blink_timeout</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC40">2.4.11 Miscellaneous Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX294"><CODE>rl_set_prompt</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX345"><CODE>rl_set_screen_size</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX348"><CODE>rl_set_signals</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC44">2.5 Readline Signal Handling</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX288"><CODE>rl_show_char</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC35">2.4.6 Redisplay</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX227">rl_signal_event_hook</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX389">rl_sort_completion_matches</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX377">rl_special_prefixes</A></TD><TD valign=top><A HREF="readline.html#SEC48">2.6.3 Completion Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX223">rl_startup_hook</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX302"><CODE>rl_stuff_char</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC37">2.4.8 Character Input</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX217">rl_terminal_name</A></TD><TD valign=top><A HREF="readline.html#SEC28">2.3 Readline Variables</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX308"><CODE>rl_tty_set_default_bindings</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC38">2.4.9 Terminal Management</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX309"><CODE>rl_tty_unset_default_bindings</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC38">2.4.9 Terminal Management</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX259"><CODE>rl_unbind_command_in_map</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX258"><CODE>rl_unbind_function_in_map</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX256"><CODE>rl_unbind_key</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX257"><CODE>rl_unbind_key_in_map</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC32">2.4.3 Binding Keys</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX359"><CODE>rl_username_completion_function</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC47">2.6.2 Completion Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX328"><CODE>rl_variable_bind</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC40">2.4.11 Miscellaneous Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX330"><CODE>rl_variable_dumper</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC40">2.4.11 Miscellaneous Functions</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX329"><CODE>rl_variable_value</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC40">2.4.11 Miscellaneous Functions</A></TD></TR>
<TR><TD COLSPAN=3> <HR></TD></TR>
<TR><TH><A NAME="fn_S"></A>S</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX88"><CODE>self-insert (a, b, A, 1, !, &#60;small&#62;...&#60;/small&#62;)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX89"><CODE>self-insert (a, b, A, 1, !, &#60;small&#62;...&#60;/small&#62;)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX168"><CODE>set-mark (C-@)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX169"><CODE>set-mark (C-@)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX32">show-all-if-ambiguous</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX33">show-all-if-unmodified</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX34">skip-completed-text</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX176"><CODE>skip-csi-sequence ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX177"><CODE>skip-csi-sequence ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX148"><CODE>start-kbd-macro (C-x ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC20">1.4.7 Keyboard Macros</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX149"><CODE>start-kbd-macro (C-x ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC20">1.4.7 Keyboard Macros</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX96"><CODE>self-insert (a, b, A, 1, !, &#60;small&#62;...&#60;/small&#62;)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX97"><CODE>self-insert (a, b, A, 1, !, &#60;small&#62;...&#60;/small&#62;)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX178"><CODE>set-mark (C-@)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX179"><CODE>set-mark (C-@)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX33">show-all-if-ambiguous</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX34">show-all-if-unmodified</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX35">show-mode-in-prompt</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX36">skip-completed-text</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX186"><CODE>skip-csi-sequence ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX187"><CODE>skip-csi-sequence ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX156"><CODE>start-kbd-macro (C-x ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC20">1.4.7 Keyboard Macros</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX157"><CODE>start-kbd-macro (C-x ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC20">1.4.7 Keyboard Macros</A></TD></TR>
<TR><TD COLSPAN=3> <HR></TD></TR>
<TR><TH><A NAME="fn_T"></A>T</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX86"><CODE>tab-insert (M-<KBD>TAB</KBD>)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX87"><CODE>tab-insert (M-<KBD>TAB</KBD>)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX166"><CODE>tilde-expand (M-~)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX167"><CODE>tilde-expand (M-~)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX90"><CODE>transpose-chars (C-t)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX91"><CODE>transpose-chars (C-t)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX92"><CODE>transpose-words (M-t)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX93"><CODE>transpose-words (M-t)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX94"><CODE>tab-insert (M-<KBD>TAB</KBD>)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX95"><CODE>tab-insert (M-<KBD>TAB</KBD>)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX176"><CODE>tilde-expand (M-~)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX177"><CODE>tilde-expand (M-~)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX98"><CODE>transpose-chars (C-t)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX99"><CODE>transpose-chars (C-t)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX100"><CODE>transpose-words (M-t)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX101"><CODE>transpose-words (M-t)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
<TR><TD COLSPAN=3> <HR></TD></TR>
<TR><TH><A NAME="fn_U"></A>U</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX162"><CODE>undo (C-_ or C-x C-u)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX163"><CODE>undo (C-_ or C-x C-u)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX134"><CODE>universal-argument ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC18">1.4.5 Specifying Numeric Arguments</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX135"><CODE>universal-argument ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC18">1.4.5 Specifying Numeric Arguments</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX116"><CODE>unix-filename-rubout ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX117"><CODE>unix-filename-rubout ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX106"><CODE>unix-line-discard (C-u)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX107"><CODE>unix-line-discard (C-u)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX114"><CODE>unix-word-rubout (C-w)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX115"><CODE>unix-word-rubout (C-w)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX94"><CODE>upcase-word (M-u)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX95"><CODE>upcase-word (M-u)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX172"><CODE>undo (C-_ or C-x C-u)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX173"><CODE>undo (C-_ or C-x C-u)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX142"><CODE>universal-argument ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC18">1.4.5 Specifying Numeric Arguments</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX143"><CODE>universal-argument ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC18">1.4.5 Specifying Numeric Arguments</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX124"><CODE>unix-filename-rubout ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX125"><CODE>unix-filename-rubout ()</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX114"><CODE>unix-line-discard (C-u)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX115"><CODE>unix-line-discard (C-u)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX122"><CODE>unix-word-rubout (C-w)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX123"><CODE>unix-word-rubout (C-w)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX102"><CODE>upcase-word (M-u)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX103"><CODE>upcase-word (M-u)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC16">1.4.3 Commands For Changing Text</A></TD></TR>
<TR><TD COLSPAN=3> <HR></TD></TR>
<TR><TH><A NAME="fn_V"></A>V</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX188"><CODE>vi-editing-mode (M-C-j)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX189"><CODE>vi-editing-mode (M-C-j)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX35">visible-stats</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX198"><CODE>vi-editing-mode (M-C-j)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX199"><CODE>vi-editing-mode (M-C-j)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC21">1.4.8 Some Miscellaneous Commands</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX37">visible-stats</A></TD><TD valign=top><A HREF="readline.html#SEC10">1.3.1 Readline Init File Syntax</A></TD></TR>
<TR><TD COLSPAN=3> <HR></TD></TR>
<TR><TH><A NAME="fn_Y"></A>Y</TH><TD></TD><TD></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX128"><CODE>yank (C-y)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX129"><CODE>yank (C-y)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX76"><CODE>yank-last-arg (M-. or M-_)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX77"><CODE>yank-last-arg (M-. or M-_)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX74"><CODE>yank-nth-arg (M-C-y)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX75"><CODE>yank-nth-arg (M-C-y)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX130"><CODE>yank-pop (M-y)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
-<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX131"><CODE>yank-pop (M-y)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX136"><CODE>yank (C-y)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX137"><CODE>yank (C-y)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX82"><CODE>yank-last-arg (M-. or M-_)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX83"><CODE>yank-last-arg (M-. or M-_)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX80"><CODE>yank-nth-arg (M-C-y)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX81"><CODE>yank-nth-arg (M-C-y)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC15">1.4.2 Commands For Manipulating The History</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX138"><CODE>yank-pop (M-y)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
+<TR><TD></TD><TD valign=top><A HREF="readline.html#IDX139"><CODE>yank-pop (M-y)</CODE></A></TD><TD valign=top><A HREF="readline.html#SEC17">1.4.4 Killing And Yanking</A></TD></TR>
<TR><TD COLSPAN=3> <HR></TD></TR>
</TABLE><P></P><table><tr><th valign=top>Jump to: &nbsp; </th><td><A HREF="readline.html#fn__" style="text-decoration:none"><b>_</b></A>
&nbsp;
@@ -6682,7 +7008,7 @@ to permit their use in free software.
<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H1>Table of Contents</H1>
@@ -6783,27 +7109,29 @@ to permit their use in free software.
<BR>
<A NAME="TOC42" HREF="readline.html#SEC42">2.4.13 A Readline Example</A>
<BR>
+<A NAME="TOC43" HREF="readline.html#SEC43">2.4.14 Alternate Interface Example</A>
+<BR>
</UL>
-<A NAME="TOC43" HREF="readline.html#SEC43">2.5 Readline Signal Handling</A>
+<A NAME="TOC44" HREF="readline.html#SEC44">2.5 Readline Signal Handling</A>
<BR>
-<A NAME="TOC44" HREF="readline.html#SEC44">2.6 Custom Completers</A>
+<A NAME="TOC45" HREF="readline.html#SEC45">2.6 Custom Completers</A>
<BR>
<UL>
-<A NAME="TOC45" HREF="readline.html#SEC45">2.6.1 How Completing Works</A>
+<A NAME="TOC46" HREF="readline.html#SEC46">2.6.1 How Completing Works</A>
<BR>
-<A NAME="TOC46" HREF="readline.html#SEC46">2.6.2 Completion Functions</A>
+<A NAME="TOC47" HREF="readline.html#SEC47">2.6.2 Completion Functions</A>
<BR>
-<A NAME="TOC47" HREF="readline.html#SEC47">2.6.3 Completion Variables</A>
+<A NAME="TOC48" HREF="readline.html#SEC48">2.6.3 Completion Variables</A>
<BR>
-<A NAME="TOC48" HREF="readline.html#SEC48">2.6.4 A Short Completion Example</A>
+<A NAME="TOC49" HREF="readline.html#SEC49">2.6.4 A Short Completion Example</A>
<BR>
</UL>
</UL>
-<A NAME="TOC49" HREF="readline.html#SEC49">A. GNU Free Documentation License</A>
+<A NAME="TOC50" HREF="readline.html#SEC50">A. GNU Free Documentation License</A>
<BR>
-<A NAME="TOC51" HREF="readline.html#SEC51">Concept Index</A>
+<A NAME="TOC52" HREF="readline.html#SEC52">Concept Index</A>
<BR>
-<A NAME="TOC52" HREF="readline.html#SEC52">Function and Variable Index</A>
+<A NAME="TOC53" HREF="readline.html#SEC53">Function and Variable Index</A>
<BR>
</UL>
<HR SIZE=1>
@@ -6811,7 +7139,7 @@ to permit their use in free software.
<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H1>Short Table of Contents</H1>
@@ -6820,11 +7148,11 @@ to permit their use in free software.
<BR>
<A NAME="TOC23" HREF="readline.html#SEC23">2. Programming with GNU Readline</A>
<BR>
-<A NAME="TOC49" HREF="readline.html#SEC49">A. GNU Free Documentation License</A>
+<A NAME="TOC50" HREF="readline.html#SEC50">A. GNU Free Documentation License</A>
<BR>
-<A NAME="TOC51" HREF="readline.html#SEC51">Concept Index</A>
+<A NAME="TOC52" HREF="readline.html#SEC52">Concept Index</A>
<BR>
-<A NAME="TOC52" HREF="readline.html#SEC52">Function and Variable Index</A>
+<A NAME="TOC53" HREF="readline.html#SEC53">Function and Variable Index</A>
<BR>
</BLOCKQUOTE>
@@ -6833,11 +7161,11 @@ to permit their use in free software.
<TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0>
<TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Top">Top</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_Contents">Contents</A>]</TD>
-<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC51">Index</A>]</TD>
+<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC52">Index</A>]</TD>
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="readline.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H1>About this document</H1>
-This document was generated by <I>Chet Ramey</I> on <I>February, 8 2011</I>
+This document was generated by <I>Chet Ramey</I> on <I>February, 11 2014</I>
using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html
"><I>texi2html</I></A>
<P></P>
@@ -6999,7 +7327,7 @@ the following structure:
<BR>
<FONT SIZE="-1">
This document was generated
-by <I>Chet Ramey</I> on <I>February, 8 2011</I>
+by <I>Chet Ramey</I> on <I>February, 11 2014</I>
using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html
"><I>texi2html</I></A>
diff --git a/doc/readline.info b/doc/readline.info
index 0e13eff..344e1dd 100644
--- a/doc/readline.info
+++ b/doc/readline.info
@@ -1,27 +1,18 @@
This is readline.info, produced by makeinfo version 4.13 from
-/usr/src/local/chet/src/bash/readline-src/doc/rlman.texi.
+/usr/homes/chet/src/bash/readline-src/doc/rlman.texi.
-This manual describes the GNU Readline Library (version 6.2, September
-6 2010), a library which aids in the consistency of user interface
-across discrete programs which provide a command line interface.
+This manual describes the GNU Readline Library (version 6.3, 6 January
+2014), a library which aids in the consistency of user interface across
+discrete programs which provide a command line interface.
- Copyright (C) 1988-2011 Free Software Foundation, Inc.
-
- Permission is granted to make and distribute verbatim copies of this
-manual provided the copyright notice and this permission notice are
-preserved on all copies.
+ Copyright (C) 1988-2014 Free Software Foundation, Inc.
Permission is granted to copy, distribute and/or modify this
document under the terms of the GNU Free Documentation License,
Version 1.3 or any later version published by the Free Software
- Foundation; with no Invariant Sections, with the Front-Cover texts
- being "A GNU Manual", and with the Back-Cover Texts as in (a)
- below. A copy of the license is included in the section entitled
- "GNU Free Documentation License".
-
- (a) The FSF's Back-Cover Text is: You are free to copy and modify
- this GNU manual. Buying copies from GNU Press supports the FSF in
- developing GNU and promoting software freedom."
+ Foundation; with no Invariant Sections, no Front-Cover Texts, and
+ no Back-Cover Texts. A copy of the license is included in the
+ section entitled "GNU Free Documentation License".
INFO-DIR-SECTION Libraries
@@ -37,7 +28,8 @@ GNU Readline Library
This document describes the GNU Readline Library, a utility which aids
in the consistency of user interface across discrete programs which
-provide a command line interface.
+provide a command line interface. The Readline home page is
+`http://www.gnu.org/software/readline/'.
* Menu:
@@ -397,6 +389,12 @@ Variable Settings
characters treated specially by the kernel's terminal driver
to their Readline equivalents.
+ `colored-stats'
+ If set to `on', Readline displays possible completions using
+ different colors to indicate their file type. The color
+ definitions are taken from the value of the `LS_COLORS'
+ environment variable. The default is `off'.
+
`comment-begin'
The string to insert at the beginning of the line when the
`insert-comment' command is executed. The default value is
@@ -482,8 +480,10 @@ Variable Settings
`history-size'
Set the maximum number of history entries saved in the
- history list. If set to zero, the number of entries in the
- history list is not limited.
+ history list. If set to zero, any existing history entries
+ are deleted and no new entries are saved. If set to a value
+ less than zero, the number of history entries is not limited.
+ By default, the number of history entries is not limited.
`horizontal-scroll-mode'
This variable can be set to either `on' or `off'. Setting it
@@ -515,6 +515,22 @@ Variable Settings
default value is `emacs'. The value of the `editing-mode'
variable also affects the default keymap.
+ `keyseq-timeout'
+ Specifies the duration Readline will wait for a character
+ when reading an ambiguous key sequence (one that can form a
+ complete key sequence using the input read so far, or can
+ take additional input to complete a longer key sequence). If
+ no input is received within the timeout, Readline will use
+ the shorter but complete key sequence. Readline uses this
+ value to determine whether or not input is available on the
+ current input source (`rl_instream' by default). The value
+ is specified in milliseconds, so a value of 1000 means that
+ Readline will wait one second for additional input. If this
+ variable is set to a value less than or equal to zero, or to a
+ non-numeric value, Readline will wait until another key is
+ pressed to decide which key sequence to complete. The
+ default value is `500'.
+
`mark-directories'
If set to `on', completed directory names have a slash
appended. The default is `on'.
@@ -577,6 +593,11 @@ Variable Settings
be listed immediately instead of ringing the bell. The
default value is `off'.
+ `show-mode-in-prompt'
+ If set to `on', add a character to the beginning of the prompt
+ indicating the editing mode: emacs (`@'), vi command (`:'),
+ or vi insertion (`+'). The default value is `off'.
+
`skip-completed-text'
If set to `on', this alters the default completion behavior
when inserting a single match into the line. It's only
@@ -791,7 +812,7 @@ variable assignment, and conditional syntax.
# You can re-read the inputrc file with C-x C-r.
# Lines beginning with '#' are comments.
#
- # First, include any systemwide bindings and variable
+ # First, include any system-wide bindings and variable
# assignments from /etc/Inputrc
$include /etc/Inputrc
@@ -991,12 +1012,26 @@ File: readline.info, Node: Commands For History, Next: Commands For Text, Pre
`history-search-forward ()'
Search forward through the history for the string of characters
- between the start of the current line and the point. This is a
+ between the start of the current line and the point. The search
+ string must match at the beginning of a history line. This is a
non-incremental search. By default, this command is unbound.
`history-search-backward ()'
Search backward through the history for the string of characters
- between the start of the current line and the point. This is a
+ between the start of the current line and the point. The search
+ string must match at the beginning of a history line. This is a
+ non-incremental search. By default, this command is unbound.
+
+`history-substr-search-forward ()'
+ Search forward through the history for the string of characters
+ between the start of the current line and the point. The search
+ string may match anywhere in a history line. This is a
+ non-incremental search. By default, this command is unbound.
+
+`history-substr-search-backward ()'
+ Search backward through the history for the string of characters
+ between the start of the current line and the point. The search
+ string may match anywhere in a history line. This is a
non-incremental search. By default, this command is unbound.
`yank-nth-arg (M-C-y)'
@@ -1028,10 +1063,16 @@ File: readline.info, Node: Commands For Text, Next: Commands For Killing, Pre
1.4.3 Commands For Changing Text
--------------------------------
+`end-of-file (usually C-d)'
+ The character indicating end-of-file as set, for example, by
+ `stty'. If this character is read when there are no characters on
+ the line, and point is at the beginning of the line, Readline
+ interprets it as the end of input and returns EOF.
+
`delete-char (C-d)'
- Delete the character at point. If point is at the beginning of
- the line, there are no characters in the line, and the last
- character typed was not bound to `delete-char', then return EOF.
+ Delete the character at point. If this function is bound to the
+ same character as the tty EOF character, as `C-d' commonly is, see
+ above for the effects.
`backward-delete-char (Rubout)'
Delete the character behind the cursor. A numeric argument means
@@ -1242,6 +1283,10 @@ File: readline.info, Node: Keyboard Macros, Next: Miscellaneous Commands, Pre
Re-execute the last keyboard macro defined, by making the
characters in the macro appear as if typed at the keyboard.
+`print-last-kbd-macro ()'
+ Print the last keboard macro defined in a format suitable for the
+ INPUTRC file.
+

File: readline.info, Node: Miscellaneous Commands, Prev: Keyboard Macros, Up: Bindable Readline Commands
@@ -1365,7 +1410,7 @@ the standard `vi' movement keys, move to previous history lines with
aiding in the consistency of user interface across discrete programs
that need to provide a command line interface.
- Copyright (C) 1988-2011 Free Software Foundation, Inc.
+ Copyright (C) 1988-2014 Free Software Foundation, Inc.
Permission is granted to make and distribute verbatim copies of this
manual provided the copyright notice and this permission notice pare
@@ -1535,7 +1580,7 @@ File: readline.info, Node: Readline Typedefs, Next: Function Writing, Up: Cus
2.2.1 Readline Typedefs
-----------------------
-For readabilty, we declare a number of new object types, all pointers
+For readability, we declare a number of new object types, all pointers
to functions.
The reason for declaring these new types is to make it easier to
@@ -1759,7 +1804,34 @@ These variables are available to function writers.
If non-zero, Readline will call indirectly through this pointer to
get a character from the input stream. By default, it is set to
`rl_getc', the default Readline character input function (*note
- Character Input::).
+ Character Input::). In general, an application that sets
+ RL_GETC_FUNCTION should consider setting RL_INPUT_AVAILABLE_HOOK
+ as well.
+
+ -- Variable: rl_hook_func_t * rl_signal_event_hook
+ If non-zero, this is the address of a function to call if a read
+ system call is interrupted when Readline is reading terminal input.
+
+ -- Variable: rl_hook_func_t * rl_input_available_hook
+ If non-zero, Readline will use this function's return value when
+ it needs to determine whether or not there is available input on
+ the current input source. The default hook checks `rl_instream';
+ if an application is using a different input source, it should set
+ the hook appropriately. Readline queries for available input when
+ implementing intra-key-sequence timeouts during input and
+ incremental searches. This may use an application-specific
+ timeout before returning a value; Readline uses the value passed
+ to `rl_set_keyboard_input_timeout()' or the value of the
+ user-settable KEYSEQ-TIMEOUT variable. This is designed for use
+ by applications using Readline's callback interface (*note
+ Alternate Interface::), which may not use the traditional
+ `read(2)' and file descriptor interface, or other applications
+ using a different input mechanism. If an application uses an
+ input mechanism or hook that can potentially exceed the value of
+ KEYSEQ-TIMEOUT, it should increase the timeout or set this hook
+ appropriately even when not using the callback interface. In
+ general, an application that sets RL_GETC_FUNCTION should consider
+ setting RL_INPUT_AVAILABLE_HOOK as well.
-- Variable: rl_voidfunc_t * rl_redisplay_function
If non-zero, Readline will call indirectly through this pointer to
@@ -1791,6 +1863,17 @@ These variables are available to function writers.
-- Variable: char * rl_executing_macro
This variable is set to the text of any currently-executing macro.
+ -- Variable: int rl_executing_key
+ The key that caused the dispatch to the currently-executing
+ Readline function.
+
+ -- Variable: char * rl_executing_keyseq
+ The full key sequence that caused the dispatch to the
+ currently-executing Readline function.
+
+ -- Variable: int rl_key_sequence_length
+ The number of characters in RL_EXECUTING_KEYSEQ.
+
-- Variable: int rl_readline_state
A variable with bit values that encapsulate the current Readline
state. A bit is set with the `RL_SETSTATE' macro, and unset with
@@ -1799,7 +1882,7 @@ These variables are available to function writers.
`RL_STATE_NONE'
Readline has not yet been called, nor has it begun to
- intialize.
+ initialize.
`RL_STATE_INITIALIZING'
Readline is initializing its internal data structures.
@@ -1922,6 +2005,7 @@ File: readline.info, Node: Readline Convenience Functions, Next: Readline Sign
* Miscellaneous Functions:: Functions that don't fall into any category.
* Alternate Interface:: Using Readline in a `callback' fashion.
* A Readline Example:: An example Readline function.
+* Alternate Interface Example:: An example program using the alternate interface.

File: readline.info, Node: Function Naming, Next: Keymaps, Up: Readline Convenience Functions
@@ -2236,7 +2320,7 @@ File: readline.info, Node: Redisplay, Next: Modifying Text, Prev: Allowing Un
-- Function: int rl_on_new_line (void)
Tell the update functions that we have moved onto a new (empty)
- line, usually after ouputting a newline.
+ line, usually after outputting a newline.
-- Function: int rl_on_new_line_with_prompt (void)
Tell the update functions that we have moved onto a new line, with
@@ -2534,6 +2618,12 @@ File: readline.info, Node: Miscellaneous Functions, Next: Alternate Interface,
not use all of a terminal's capabilities, and this function will
return values for only those capabilities Readline uses.
+ -- Function: void rl_clear_history (void)
+ Clear the history list by deleting all of the entries, in the same
+ manner as the History library's `clear_history()' function. This
+ differs from `clear_history' because it frees private data
+ Readline saves in the history list.
+

File: readline.info, Node: Alternate Interface, Next: A Readline Example, Prev: Miscellaneous Functions, Up: Readline Convenience Functions
@@ -2543,7 +2633,7 @@ File: readline.info, Node: Alternate Interface, Next: A Readline Example, Pre
An alternate interface is available to plain `readline()'. Some
applications need to interleave keyboard I/O with file, device, or
window system I/O, typically by using a main loop to `select()' on
-various file descriptors. To accomodate this need, readline can also
+various file descriptors. To accommodate this need, readline can also
be invoked as a `callback' function from an event loop. There are
functions available to make this easy.
@@ -2551,20 +2641,22 @@ functions available to make this easy.
rl_vcpfunc_t *lhandler)
Set up the terminal for readline I/O and display the initial
expanded value of PROMPT. Save the value of LHANDLER to use as a
- function to call when a complete line of input has been entered.
- The function takes the text of the line as an argument.
+ handler function to call when a complete line of input has been
+ entered. The handler function receives the text of the line as an
+ argument.
-- Function: void rl_callback_read_char (void)
Whenever an application determines that keyboard input is
available, it should call `rl_callback_read_char()', which will
read the next character from the current input source. If that
character completes the line, `rl_callback_read_char' will invoke
- the LHANDLER function saved by `rl_callback_handler_install' to
- process the line. Before calling the LHANDLER function, the
+ the LHANDLER function installed by `rl_callback_handler_install'
+ to process the line. Before calling the LHANDLER function, the
terminal settings are reset to the values they had before calling
`rl_callback_handler_install'. If the LHANDLER function returns,
- the terminal settings are modified for Readline's use again.
- `EOF' is indicated by calling LHANDLER with a `NULL' line.
+ and the line handler remains installed, the terminal settings are
+ modified for Readline's use again. `EOF' is indicated by calling
+ LHANDLER with a `NULL' line.
-- Function: void rl_callback_handler_remove (void)
Restore the terminal to its initial state and remove the line
@@ -2576,7 +2668,7 @@ functions available to make this easy.
exits to reset the terminal settings.

-File: readline.info, Node: A Readline Example, Prev: Alternate Interface, Up: Readline Convenience Functions
+File: readline.info, Node: A Readline Example, Next: Alternate Interface Example, Prev: Alternate Interface, Up: Readline Convenience Functions
2.4.13 A Readline Example
-------------------------
@@ -2644,6 +2736,99 @@ changed.
}

+File: readline.info, Node: Alternate Interface Example, Prev: A Readline Example, Up: Readline Convenience Functions
+
+2.4.14 Alternate Interface Example
+----------------------------------
+
+Here is a complete program that illustrates Readline's alternate
+interface. It reads lines from the terminal and displays them,
+providing the standard history and TAB completion functions. It
+understands the EOF character or "exit" to exit the program.
+
+ /* Standard include files. stdio.h is required. */
+ #include <stdlib.h>
+ #include <unistd.h>
+
+ /* Used for select(2) */
+ #include <sys/types.h>
+ #include <sys/select.h>
+
+ #include <stdio.h>
+
+ /* Standard readline include files. */
+ #include <readline/readline.h>
+ #include <readline/history.h>
+
+ static void cb_linehandler (char *);
+
+ int running;
+ const char *prompt = "rltest$ ";
+
+ /* Callback function called for each line when accept-line executed, EOF
+ seen, or EOF character read. This sets a flag and returns; it could
+ also call exit(3). */
+ static void
+ cb_linehandler (char *line)
+ {
+ /* Can use ^D (stty eof) or `exit' to exit. */
+ if (line == NULL || strcmp (line, "exit") == 0)
+ {
+ if (line == 0)
+ printf ("\n");
+ printf ("exit\n");
+ /* This function needs to be called to reset the terminal settings,
+ and calling it from the line handler keeps one extra prompt from
+ being displayed. */
+ rl_callback_handler_remove ();
+
+ running = 0;
+ }
+ else
+ {
+ if (*line)
+ add_history (line);
+ printf ("input line: %s\n", line);
+ free (line);
+ }
+ }
+
+ int
+ main (int c, char **v)
+ {
+ fd_set fds;
+ int r;
+
+ /* Install the line handler. */
+ rl_callback_handler_install (prompt, cb_linehandler);
+
+ /* Enter a simple event loop. This waits until something is available
+ to read on readline's input stream (defaults to standard input) and
+ calls the builtin character read callback to read it. It does not
+ have to modify the user's terminal settings. */
+ running = 1;
+ while (running)
+ {
+ FD_ZERO (&fds);
+ FD_SET (fileno (rl_instream), &fds);
+
+ r = select (FD_SETSIZE, &fds, NULL, NULL, NULL);
+ if (r < 0)
+ {
+ perror ("rltest: select");
+ rl_callback_handler_remove ();
+ break;
+ }
+
+ if (FD_ISSET (fileno (rl_instream), &fds))
+ rl_callback_read_char ();
+ }
+
+ printf ("rltest: Event loop has exited\n");
+ return 0;
+ }
+
+
File: readline.info, Node: Readline Signal Handling, Next: Custom Completers, Prev: Readline Convenience Functions, Up: Programming with GNU Readline
2.5 Readline Signal Handling
@@ -2660,7 +2845,7 @@ received in order to restore the terminal to a sane state, or provide
application writers with functions to do so manually.
Readline contains an internal signal handler that is installed for a
-number of signals (`SIGINT', `SIGQUIT', `SIGTERM', `SIGALRM',
+number of signals (`SIGINT', `SIGQUIT', `SIGTERM', `SIGHUP', `SIGALRM',
`SIGTSTP', `SIGTTIN', and `SIGTTOU'). When one of these signals is
received, the signal handler will reset the terminal attributes to
those that were in effect before `readline()' was called, reset the
@@ -2692,17 +2877,24 @@ signal handler, so Readline's internal signal state is not corrupted.
-- Variable: int rl_catch_signals
If this variable is non-zero, Readline will install signal
- handlers for `SIGINT', `SIGQUIT', `SIGTERM', `SIGALRM', `SIGTSTP',
- `SIGTTIN', and `SIGTTOU'.
+ handlers for `SIGINT', `SIGQUIT', `SIGTERM', `SIGHUP', `SIGALRM',
+ `SIGTSTP', `SIGTTIN', and `SIGTTOU'.
The default value of `rl_catch_signals' is 1.
-- Variable: int rl_catch_sigwinch
- If this variable is non-zero, Readline will install a signal
- handler for `SIGWINCH'.
+ If this variable is set to a non-zero value, Readline will install
+ a signal handler for `SIGWINCH'.
The default value of `rl_catch_sigwinch' is 1.
+ -- Variable: int rl_change_environment
+ If this variable is set to a non-zero value, and Readline is
+ handling `SIGWINCH', Readline will modify the LINES and COLUMNS
+ environment variables upon receipt of a `SIGWINCH'
+
+ The default value of `rl_change_environment' is 1.
+
If an application does not wish to have Readline catch any signals,
or to handle signals other than those Readline catches (`SIGHUP', for
example), Readline provides convenience functions to do the necessary
@@ -2763,8 +2955,8 @@ handlers.
-- Function: int rl_set_signals (void)
Install Readline's signal handler for `SIGINT', `SIGQUIT',
- `SIGTERM', `SIGALRM', `SIGTSTP', `SIGTTIN', `SIGTTOU', and
- `SIGWINCH', depending on the values of `rl_catch_signals' and
+ `SIGTERM', `SIGHUP', `SIGALRM', `SIGTSTP', `SIGTTIN', `SIGTTOU',
+ and `SIGWINCH', depending on the values of `rl_catch_signals' and
`rl_catch_sigwinch'.
-- Function: int rl_clear_signals (void)
@@ -2890,7 +3082,7 @@ Readline.
This calls `rl_complete_internal()' with an argument of `*'.
-- Function: int rl_completion_mode (rl_command_func_t *cfunc)
- Returns the apppriate value to pass to `rl_complete_internal()'
+ Returns the appropriate value to pass to `rl_complete_internal()'
depending on whether CFUNC was called twice in succession and the
values of the `show-all-if-ambiguous' and `show-all-if-unmodified'
variables. Application-specific completion functions may use this
@@ -2999,16 +3191,45 @@ File: readline.info, Node: Completion Variables, Next: A Short Completion Exam
the directory portion of the pathname the user typed. At the
least, even if no other expansion is performed, this function
should remove any quote characters from the directory name,
- because its result will be passed directly to `opendir()'. The
- directory completion hook returns an integer that should be
+ because its result will be passed directly to `opendir()'.
+
+ The directory completion hook returns an integer that should be
non-zero if the function modifies its directory argument. The
function should not modify the directory argument if it returns 0.
+ -- Variable: rl_icppfunc_t * rl_directory_rewrite_hook;
+ If non-zero, this is the address of a function to call when
+ completing a directory name. This function takes the address of
+ the directory name to be modified as an argument. Unlike
+ `rl_directory_completion_hook', it only modifies the directory
+ name used in `opendir', not what is displayed when the possible
+ completions are printed or inserted. It is called before
+ rl_directory_completion_hook. At the least, even if no other
+ expansion is performed, this function should remove any quote
+ characters from the directory name, because its result will be
+ passed directly to `opendir()'.
+
+ The directory rewrite hook returns an integer that should be
+ non-zero if the function modfies its directory argument. The
+ function should not modify the directory argument if it returns 0.
+
+ -- Variable: rl_icppfunc_t * rl_filename_stat_hook
+ If non-zero, this is the address of a function for the completer to
+ call before deciding which character to append to a completed name.
+ This function modifies its filename name argument, and the
+ modified value is passed to `stat()' to determine the file's type
+ and characteristics. This function does not need to remove quote
+ characters from the filename.
+
+ The stat hook returns an integer that should be non-zero if the
+ function modfies its directory argument. The function should not
+ modify the directory argument if it returns 0.
+
-- Variable: rl_dequote_func_t * rl_filename_rewrite_hook
If non-zero, this is the address of a function called when reading
directory entries from the filesystem for completion and comparing
them to the partial word to be completed. The function should
- perform any necesary application or system-specific conversion on
+ perform any necessary application or system-specific conversion on
the filename, such as converting between character sets or
converting from a filesystem format to a character input format.
The function takes two arguments: FNAME, the filename to be
@@ -4192,7 +4413,7 @@ Function and Variable Index
* accept-line (Newline or Return): Commands For History.
(line 6)
* backward-char (C-b): Commands For Moving. (line 15)
-* backward-delete-char (Rubout): Commands For Text. (line 11)
+* backward-delete-char (Rubout): Commands For Text. (line 17)
* backward-kill-line (C-x Rubout): Commands For Killing.
(line 9)
* backward-kill-word (M-<DEL>): Commands For Killing.
@@ -4206,45 +4427,47 @@ Function and Variable Index
* bind-tty-special-chars: Readline Init File Syntax.
(line 42)
* call-last-kbd-macro (C-x e): Keyboard Macros. (line 13)
-* capitalize-word (M-c): Commands For Text. (line 49)
+* capitalize-word (M-c): Commands For Text. (line 55)
* character-search (C-]): Miscellaneous Commands.
(line 41)
* character-search-backward (M-C-]): Miscellaneous Commands.
(line 46)
* clear-screen (C-l): Commands For Moving. (line 26)
-* comment-begin: Readline Init File Syntax.
+* colored-stats: Readline Init File Syntax.
(line 47)
+* comment-begin: Readline Init File Syntax.
+ (line 53)
* complete (<TAB>): Commands For Completion.
(line 6)
* completion-display-width: Readline Init File Syntax.
- (line 52)
+ (line 58)
* completion-ignore-case: Readline Init File Syntax.
- (line 59)
+ (line 65)
* completion-map-case: Readline Init File Syntax.
- (line 64)
-* completion-prefix-display-length: Readline Init File Syntax.
(line 70)
+* completion-prefix-display-length: Readline Init File Syntax.
+ (line 76)
* completion-query-items: Readline Init File Syntax.
- (line 77)
+ (line 83)
* convert-meta: Readline Init File Syntax.
- (line 87)
+ (line 93)
* copy-backward-word (): Commands For Killing.
(line 49)
* copy-forward-word (): Commands For Killing.
(line 54)
* copy-region-as-kill (): Commands For Killing.
(line 45)
-* delete-char (C-d): Commands For Text. (line 6)
+* delete-char (C-d): Commands For Text. (line 12)
* delete-char-or-list (): Commands For Completion.
(line 39)
* delete-horizontal-space (): Commands For Killing.
(line 37)
* digit-argument (M-0, M-1, ... M--): Numeric Arguments. (line 6)
* disable-completion: Readline Init File Syntax.
- (line 93)
+ (line 99)
* do-uppercase-version (M-a, M-b, M-X, ...): Miscellaneous Commands.
(line 14)
-* downcase-word (M-l): Commands For Text. (line 45)
+* downcase-word (M-l): Commands For Text. (line 51)
* dump-functions (): Miscellaneous Commands.
(line 70)
* dump-macros (): Miscellaneous Commands.
@@ -4252,42 +4475,47 @@ Function and Variable Index
* dump-variables (): Miscellaneous Commands.
(line 76)
* editing-mode: Readline Init File Syntax.
- (line 98)
+ (line 104)
* enable-keypad: Readline Init File Syntax.
- (line 109)
+ (line 115)
* end-kbd-macro (C-x )): Keyboard Macros. (line 9)
+* end-of-file (usually C-d): Commands For Text. (line 6)
* end-of-history (M->): Commands For History.
(line 22)
* end-of-line (C-e): Commands For Moving. (line 9)
* exchange-point-and-mark (C-x C-x): Miscellaneous Commands.
(line 36)
* expand-tilde: Readline Init File Syntax.
- (line 120)
-* forward-backward-delete-char (): Commands For Text. (line 15)
+ (line 126)
+* forward-backward-delete-char (): Commands For Text. (line 21)
* forward-char (C-f): Commands For Moving. (line 12)
* forward-search-history (C-s): Commands For History.
(line 30)
* forward-word (M-f): Commands For Moving. (line 18)
* history-preserve-point: Readline Init File Syntax.
- (line 124)
+ (line 130)
* history-search-backward (): Commands For History.
- (line 50)
+ (line 51)
* history-search-forward (): Commands For History.
(line 45)
* history-size: Readline Init File Syntax.
- (line 130)
+ (line 136)
+* history-substr-search-backward (): Commands For History.
+ (line 63)
+* history-substr-search-forward (): Commands For History.
+ (line 57)
* horizontal-scroll-mode: Readline Init File Syntax.
- (line 135)
+ (line 143)
* input-meta: Readline Init File Syntax.
- (line 142)
+ (line 150)
* insert-comment (M-#): Miscellaneous Commands.
(line 60)
* insert-completions (M-*): Commands For Completion.
(line 18)
* isearch-terminators: Readline Init File Syntax.
- (line 149)
+ (line 157)
* keymap: Readline Init File Syntax.
- (line 156)
+ (line 164)
* kill-line (C-k): Commands For Killing.
(line 6)
* kill-region (): Commands For Killing.
@@ -4297,19 +4525,19 @@ Function and Variable Index
* kill-word (M-d): Commands For Killing.
(line 19)
* mark-modified-lines: Readline Init File Syntax.
- (line 169)
+ (line 193)
* mark-symlinked-directories: Readline Init File Syntax.
- (line 174)
+ (line 198)
* match-hidden-files: Readline Init File Syntax.
- (line 179)
+ (line 203)
* menu-complete (): Commands For Completion.
(line 22)
* menu-complete-backward (): Commands For Completion.
(line 34)
* menu-complete-display-prefix: Readline Init File Syntax.
- (line 186)
+ (line 210)
* meta-flag: Readline Init File Syntax.
- (line 142)
+ (line 150)
* next-history (C-n): Commands For History.
(line 16)
* non-incremental-forward-search-history (M-n): Commands For History.
@@ -4317,17 +4545,18 @@ Function and Variable Index
* non-incremental-reverse-search-history (M-p): Commands For History.
(line 35)
* output-meta: Readline Init File Syntax.
- (line 191)
-* overwrite-mode (): Commands For Text. (line 53)
+ (line 215)
+* overwrite-mode (): Commands For Text. (line 59)
* page-completions: Readline Init File Syntax.
- (line 196)
+ (line 220)
* possible-completions (M-?): Commands For Completion.
(line 11)
* prefix-meta (<ESC>): Miscellaneous Commands.
(line 18)
* previous-history (C-p): Commands For History.
(line 12)
-* quoted-insert (C-q or C-v): Commands For Text. (line 20)
+* print-last-kbd-macro (): Keyboard Macros. (line 17)
+* quoted-insert (C-q or C-v): Commands For Text. (line 26)
* re-read-init-file (C-x C-r): Miscellaneous Commands.
(line 6)
* readline: Basic Behavior. (line 12)
@@ -4335,7 +4564,7 @@ Function and Variable Index
* reverse-search-history (C-r): Commands For History.
(line 26)
* revert-all-at-newline: Readline Init File Syntax.
- (line 206)
+ (line 230)
* revert-line (M-r): Miscellaneous Commands.
(line 25)
* rl_add_defun: Function Naming. (line 20)
@@ -4347,11 +4576,11 @@ Function and Variable Index
* rl_attempted_completion_function: Completion Variables.
(line 12)
* rl_attempted_completion_over: Completion Variables.
- (line 226)
+ (line 255)
* rl_basic_quote_characters: Completion Variables.
- (line 115)
+ (line 144)
* rl_basic_word_break_characters: Completion Variables.
- (line 109)
+ (line 138)
* rl_begin_undo_group: Allowing Undoing. (line 29)
* rl_bind_key: Binding Keys. (line 22)
* rl_bind_key_if_unbound: Binding Keys. (line 32)
@@ -4361,71 +4590,77 @@ Function and Variable Index
* rl_bind_keyseq_if_unbound: Binding Keys. (line 77)
* rl_bind_keyseq_if_unbound_in_map: Binding Keys. (line 83)
* rl_bind_keyseq_in_map: Binding Keys. (line 66)
-* rl_binding_keymap: Readline Variables. (line 159)
+* rl_binding_keymap: Readline Variables. (line 186)
* rl_callback_handler_install: Alternate Interface. (line 15)
-* rl_callback_handler_remove: Alternate Interface. (line 33)
-* rl_callback_read_char: Alternate Interface. (line 21)
+* rl_callback_handler_remove: Alternate Interface. (line 35)
+* rl_callback_read_char: Alternate Interface. (line 22)
* rl_catch_signals: Readline Signal Handling.
(line 48)
* rl_catch_sigwinch: Readline Signal Handling.
(line 55)
+* rl_change_environment: Readline Signal Handling.
+ (line 61)
* rl_char_is_quoted_p: Completion Variables.
(line 46)
* rl_cleanup_after_signal: Readline Signal Handling.
- (line 66)
+ (line 73)
+* rl_clear_history: Miscellaneous Functions.
+ (line 50)
* rl_clear_message: Redisplay. (line 48)
* rl_clear_pending_input: Character Input. (line 30)
* rl_clear_signals: Readline Signal Handling.
- (line 125)
-* rl_complete <1>: Completion Functions.
- (line 20)
-* rl_complete: How Completing Works.
+ (line 132)
+* rl_complete <1>: How Completing Works.
(line 49)
+* rl_complete: Completion Functions.
+ (line 20)
* rl_complete_internal: Completion Functions.
(line 10)
* rl_completer_quote_characters: Completion Variables.
- (line 132)
+ (line 161)
* rl_completer_word_break_characters: Completion Variables.
- (line 118)
+ (line 147)
* rl_completion_append_character: Completion Variables.
- (line 156)
+ (line 185)
* rl_completion_display_matches_hook: Completion Variables.
- (line 96)
+ (line 125)
* rl_completion_entry_function <1>: How Completing Works.
(line 55)
* rl_completion_entry_function: Completion Variables.
(line 7)
* rl_completion_found_quote: Completion Variables.
- (line 184)
+ (line 213)
* rl_completion_invoking_key: Completion Variables.
- (line 249)
+ (line 278)
* rl_completion_mark_symlink_dirs: Completion Variables.
- (line 191)
+ (line 220)
* rl_completion_matches: Completion Functions.
(line 45)
* rl_completion_mode: Completion Functions.
(line 37)
* rl_completion_query_items: Completion Variables.
- (line 150)
+ (line 179)
* rl_completion_quote_character: Completion Variables.
- (line 172)
+ (line 201)
* rl_completion_suppress_append: Completion Variables.
- (line 166)
+ (line 195)
* rl_completion_suppress_quote: Completion Variables.
- (line 178)
+ (line 207)
* rl_completion_type: Completion Variables.
- (line 241)
+ (line 270)
* rl_completion_word_break_hook: Completion Variables.
- (line 123)
+ (line 152)
* rl_copy_keymap: Keymaps. (line 17)
* rl_copy_text: Modifying Text. (line 15)
* rl_crlf: Redisplay. (line 30)
* rl_delete_text: Modifying Text. (line 11)
-* rl_deprep_term_function: Readline Variables. (line 149)
+* rl_deprep_term_function: Readline Variables. (line 176)
* rl_deprep_terminal: Terminal Management. (line 13)
* rl_ding: Utility Functions. (line 36)
* rl_directory_completion_hook: Completion Variables.
(line 64)
+* rl_directory_rewrite_hook;: Completion Variables.
+ (line 82)
* rl_discard_keymap: Keymaps. (line 26)
* rl_dispatching: Readline Variables. (line 41)
* rl_display_match_list: Utility Functions. (line 43)
@@ -4433,37 +4668,41 @@ Function and Variable Index
* rl_do_undo: Allowing Undoing. (line 48)
* rl_done: Readline Variables. (line 28)
* rl_echo_signal_char: Readline Signal Handling.
- (line 89)
-* rl_editing_mode: Readline Variables. (line 270)
+ (line 96)
+* rl_editing_mode: Readline Variables. (line 308)
* rl_end: Readline Variables. (line 19)
* rl_end_undo_group: Allowing Undoing. (line 35)
* rl_erase_empty_line: Readline Variables. (line 47)
* rl_event_hook: Readline Variables. (line 124)
* rl_execute_next: Character Input. (line 26)
-* rl_executing_keymap: Readline Variables. (line 155)
-* rl_executing_macro: Readline Variables. (line 163)
+* rl_executing_key: Readline Variables. (line 193)
+* rl_executing_keymap: Readline Variables. (line 182)
+* rl_executing_keyseq: Readline Variables. (line 197)
+* rl_executing_macro: Readline Variables. (line 190)
* rl_expand_prompt: Redisplay. (line 64)
-* rl_explicit_arg: Readline Variables. (line 261)
+* rl_explicit_arg: Readline Variables. (line 299)
* rl_extend_line_buffer: Utility Functions. (line 27)
* rl_filename_completion_desired: Completion Variables.
- (line 206)
+ (line 235)
* rl_filename_completion_function: Completion Functions.
(line 59)
* rl_filename_dequoting_function: Completion Variables.
(line 37)
* rl_filename_quote_characters: Completion Variables.
- (line 138)
+ (line 167)
* rl_filename_quoting_desired: Completion Variables.
- (line 216)
+ (line 245)
* rl_filename_quoting_function: Completion Variables.
(line 24)
* rl_filename_rewrite_hook: Completion Variables.
- (line 81)
+ (line 110)
+* rl_filename_stat_hook: Completion Variables.
+ (line 98)
* rl_forced_update_display: Redisplay. (line 11)
* rl_free: Utility Functions. (line 18)
* rl_free_keymap: Keymaps. (line 30)
* rl_free_line_state: Readline Signal Handling.
- (line 72)
+ (line 79)
* rl_free_undo_list: Allowing Undoing. (line 45)
* rl_function_dumper: Associating Function Names and Bindings.
(line 30)
@@ -4476,19 +4715,20 @@ Function and Variable Index
* rl_get_keymap_by_name: Keymaps. (line 43)
* rl_get_keymap_name: Keymaps. (line 48)
* rl_get_screen_size: Readline Signal Handling.
- (line 108)
+ (line 115)
* rl_get_termcap: Miscellaneous Functions.
(line 42)
* rl_getc: Character Input. (line 15)
* rl_getc_function: Readline Variables. (line 130)
* rl_gnu_readline_p: Readline Variables. (line 83)
* rl_ignore_completion_duplicates: Completion Variables.
- (line 202)
+ (line 231)
* rl_ignore_some_completions_function: Completion Variables.
(line 56)
* rl_inhibit_completion: Completion Variables.
- (line 255)
+ (line 284)
* rl_initialize: Utility Functions. (line 31)
+* rl_input_available_hook: Readline Variables. (line 142)
* rl_insert_completions: Completion Functions.
(line 32)
* rl_insert_text: Modifying Text. (line 7)
@@ -4497,6 +4737,7 @@ Function and Variable Index
(line 21)
* rl_invoking_keyseqs_in_map: Associating Function Names and Bindings.
(line 26)
+* rl_key_sequence_length: Readline Variables. (line 201)
* rl_kill_text: Modifying Text. (line 19)
* rl_last_func: Readline Variables. (line 110)
* rl_library_version: Readline Variables. (line 73)
@@ -4515,7 +4756,7 @@ Function and Variable Index
* rl_named_function: Associating Function Names and Bindings.
(line 11)
* rl_num_chars_to_read: Readline Variables. (line 32)
-* rl_numeric_arg: Readline Variables. (line 265)
+* rl_numeric_arg: Readline Variables. (line 303)
* rl_on_new_line: Redisplay. (line 15)
* rl_on_new_line_with_prompt: Redisplay. (line 19)
* rl_outstream: Readline Variables. (line 101)
@@ -4526,26 +4767,26 @@ Function and Variable Index
(line 28)
* rl_pre_input_hook: Readline Variables. (line 119)
* rl_prefer_env_winsize: Readline Variables. (line 105)
-* rl_prep_term_function: Readline Variables. (line 142)
+* rl_prep_term_function: Readline Variables. (line 169)
* rl_prep_terminal: Terminal Management. (line 7)
* rl_prompt: Readline Variables. (line 53)
* rl_push_macro_input: Modifying Text. (line 26)
* rl_read_init_file: Binding Keys. (line 101)
* rl_read_key: Character Input. (line 7)
* rl_readline_name: Readline Variables. (line 92)
-* rl_readline_state: Readline Variables. (line 166)
+* rl_readline_state: Readline Variables. (line 204)
* rl_readline_version: Readline Variables. (line 76)
* rl_redisplay: Redisplay. (line 7)
-* rl_redisplay_function: Readline Variables. (line 136)
+* rl_redisplay_function: Readline Variables. (line 163)
* rl_replace_line: Utility Functions. (line 22)
* rl_reset_after_signal: Readline Signal Handling.
- (line 80)
+ (line 87)
* rl_reset_line_state: Redisplay. (line 26)
* rl_reset_screen_size: Readline Signal Handling.
- (line 112)
+ (line 119)
* rl_reset_terminal: Terminal Management. (line 28)
* rl_resize_terminal: Readline Signal Handling.
- (line 95)
+ (line 102)
* rl_restore_prompt: Redisplay. (line 57)
* rl_restore_state: Utility Functions. (line 12)
* rl_save_prompt: Redisplay. (line 53)
@@ -4557,14 +4798,15 @@ Function and Variable Index
(line 37)
* rl_set_prompt: Redisplay. (line 78)
* rl_set_screen_size: Readline Signal Handling.
- (line 99)
+ (line 106)
* rl_set_signals: Readline Signal Handling.
- (line 119)
+ (line 126)
* rl_show_char: Redisplay. (line 33)
+* rl_signal_event_hook: Readline Variables. (line 138)
* rl_sort_completion_matches: Completion Variables.
- (line 233)
+ (line 262)
* rl_special_prefixes: Completion Variables.
- (line 143)
+ (line 172)
* rl_startup_hook: Readline Variables. (line 115)
* rl_stuff_char: Character Input. (line 19)
* rl_terminal_name: Readline Variables. (line 87)
@@ -4582,20 +4824,22 @@ Function and Variable Index
(line 31)
* rl_variable_value: Miscellaneous Functions.
(line 26)
-* self-insert (a, b, A, 1, !, ...): Commands For Text. (line 27)
+* self-insert (a, b, A, 1, !, ...): Commands For Text. (line 33)
* set-mark (C-@): Miscellaneous Commands.
(line 32)
* show-all-if-ambiguous: Readline Init File Syntax.
- (line 212)
+ (line 236)
* show-all-if-unmodified: Readline Init File Syntax.
- (line 218)
+ (line 242)
+* show-mode-in-prompt: Readline Init File Syntax.
+ (line 251)
* skip-completed-text: Readline Init File Syntax.
- (line 227)
+ (line 256)
* skip-csi-sequence (): Miscellaneous Commands.
(line 51)
* start-kbd-macro (C-x (): Keyboard Macros. (line 6)
-* transpose-chars (C-t): Commands For Text. (line 30)
-* transpose-words (M-t): Commands For Text. (line 36)
+* transpose-chars (C-t): Commands For Text. (line 36)
+* transpose-words (M-t): Commands For Text. (line 42)
* undo (C-_ or C-x C-u): Miscellaneous Commands.
(line 22)
* universal-argument (): Numeric Arguments. (line 10)
@@ -4605,72 +4849,73 @@ Function and Variable Index
(line 12)
* unix-word-rubout (C-w): Commands For Killing.
(line 28)
-* upcase-word (M-u): Commands For Text. (line 41)
+* upcase-word (M-u): Commands For Text. (line 47)
* visible-stats: Readline Init File Syntax.
- (line 240)
+ (line 269)
* yank (C-y): Commands For Killing.
(line 59)
* yank-last-arg (M-. or M-_): Commands For History.
- (line 64)
+ (line 78)
* yank-nth-arg (M-C-y): Commands For History.
- (line 55)
+ (line 69)
* yank-pop (M-y): Commands For Killing.
(line 62)

Tag Table:
-Node: Top1330
-Node: Command Line Editing1987
-Node: Introduction and Notation2639
-Node: Readline Interaction4262
-Node: Readline Bare Essentials5454
-Node: Readline Movement Commands7244
-Node: Readline Killing Commands8210
-Node: Readline Arguments10131
-Node: Searching11176
-Node: Readline Init File13328
-Node: Readline Init File Syntax14482
-Node: Conditional Init Constructs29543
-Node: Sample Init File32077
-Node: Bindable Readline Commands35195
-Node: Commands For Moving36253
-Node: Commands For History37115
-Node: Commands For Text40520
-Node: Commands For Killing43247
-Node: Numeric Arguments45390
-Node: Commands For Completion46530
-Node: Keyboard Macros48500
-Node: Miscellaneous Commands49072
-Node: Readline vi Mode52929
-Node: Programming with GNU Readline54746
-Node: Basic Behavior55732
-Node: Custom Functions59149
-Node: Readline Typedefs60633
-Node: Function Writing62272
-Node: Readline Variables63579
-Node: Readline Convenience Functions74245
-Node: Function Naming75235
-Node: Keymaps76497
-Node: Binding Keys78490
-Node: Associating Function Names and Bindings83037
-Node: Allowing Undoing85322
-Node: Redisplay87872
-Node: Modifying Text91772
-Node: Character Input93018
-Node: Terminal Management94916
-Node: Utility Functions96352
-Node: Miscellaneous Functions99680
-Node: Alternate Interface101977
-Node: A Readline Example104136
-Node: Readline Signal Handling106039
-Node: Custom Completers112227
-Node: How Completing Works112947
-Node: Completion Functions116261
-Node: Completion Variables119833
-Node: A Short Completion Example133946
-Node: GNU Free Documentation License146725
-Node: Concept Index171918
-Node: Function and Variable Index173439
+Node: Top907
+Node: Command Line Editing1632
+Node: Introduction and Notation2284
+Node: Readline Interaction3907
+Node: Readline Bare Essentials5099
+Node: Readline Movement Commands6889
+Node: Readline Killing Commands7855
+Node: Readline Arguments9776
+Node: Searching10821
+Node: Readline Init File12973
+Node: Readline Init File Syntax14127
+Node: Conditional Init Constructs30832
+Node: Sample Init File33366
+Node: Bindable Readline Commands36485
+Node: Commands For Moving37543
+Node: Commands For History38405
+Node: Commands For Text42560
+Node: Commands For Killing45543
+Node: Numeric Arguments47686
+Node: Commands For Completion48826
+Node: Keyboard Macros50796
+Node: Miscellaneous Commands51485
+Node: Readline vi Mode55342
+Node: Programming with GNU Readline57159
+Node: Basic Behavior58145
+Node: Custom Functions61562
+Node: Readline Typedefs63046
+Node: Function Writing64686
+Node: Readline Variables65993
+Node: Readline Convenience Functions78671
+Node: Function Naming79743
+Node: Keymaps81005
+Node: Binding Keys82998
+Node: Associating Function Names and Bindings87545
+Node: Allowing Undoing89830
+Node: Redisplay92380
+Node: Modifying Text96281
+Node: Character Input97527
+Node: Terminal Management99425
+Node: Utility Functions100861
+Node: Miscellaneous Functions104189
+Node: Alternate Interface106778
+Node: A Readline Example109012
+Node: Alternate Interface Example110951
+Node: Readline Signal Handling113724
+Node: Custom Completers120246
+Node: How Completing Works120966
+Node: Completion Functions124280
+Node: Completion Variables127854
+Node: A Short Completion Example143502
+Node: GNU Free Documentation License156281
+Node: Concept Index181474
+Node: Function and Variable Index182995

End Tag Table
diff --git a/doc/readline.pdf b/doc/readline.pdf
index b123a2d..0667918 100644
--- a/doc/readline.pdf
+++ b/doc/readline.pdf
Binary files differ
diff --git a/doc/readline.ps b/doc/readline.ps
index 93dd8d8..9f922f5 100644
--- a/doc/readline.ps
+++ b/doc/readline.ps
@@ -1,7 +1,8 @@
%!PS-Adobe-2.0
-%%Creator: dvips(k) 5.95a Copyright 2005 Radical Eye Software
+%%Creator: dvips(k) 5.991 Copyright 2011 Radical Eye Software
%%Title: readline.dvi
-%%Pages: 74
+%%CreationDate: Tue Feb 11 16:57:25 2014
+%%Pages: 77
%%PageOrder: Ascend
%%BoundingBox: 0 0 612 792
%%DocumentFonts: CMBX12 CMR10 CMTT10 CMSY10 CMMI12 CMMI10 CMCSC10
@@ -11,7 +12,7 @@
%DVIPSWebPage: (www.radicaleye.com)
%DVIPSCommandLine: dvips -D 600 -t letter -o readline.ps readline.dvi
%DVIPSParameters: dpi=600
-%DVIPSSource: TeX output 2011.02.08:1112
+%DVIPSSource: TeX output 2014.02.11:1657
%%BeginProcSet: tex.pro 0 0
%!
/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
@@ -43,19 +44,21 @@ 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/IEn 256 array N 2 string 0 1 255{IEn 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
+/dir 0 def/dyy{/dir 0 def}B/dyt{/dir 1 def}B/dty{/dir 2 def}B/dtt{/dir 3
+def}B/p{dir 2 eq{-90 rotate show 90 rotate}{dir 3 eq{-90 rotate show 90
+rotate}{show}ifelse}ifelse}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
%%BeginProcSet: texps.pro 0 0
@@ -76,61 +79,230 @@ end
%%EndProcSet
%%BeginFont: CMMI9
-%!PS-AdobeFont-1.1: CMMI9 1.100
-%%CreationDate: 1996 Jul 23 07:53:55
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+%!PS-AdobeFont-1.0: CMMI9 003.002
+%%Title: CMMI9
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMMI9.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMMI9 known{/CMMI9 findfont dup/UniqueID known{dup
+/UniqueID get 5087384 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.100) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMMI9 def
+/FontBBox {-29 -250 1075 750 }readonly def
+/UniqueID 5087384 def
+/PaintType 0 def
+/FontInfo 10 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMMI9.) readonly def
/FullName (CMMI9) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle -14.04 def
/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+/ascent 750 def
end readonly def
-/FontName /CMMI9 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 58 /period put
readonly def
-/FontBBox{-29 -250 1075 750}readonly def
currentdict end
currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
-3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
-532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
-B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
-986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
-D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A319B6B1FD958
-9E394A533A081C36D6F5CA5FED4F9AC9ADE41E04F9FC52E758C9F45A92BED935
-86F9CFDB57732045913A6422AD4206418610C81D882EE493DE9523CC1BFE1505
-DD1390B19BC1947A01B93BC668BE9B2A0E69A968554239B88C00AF9FBDF09CCD
-67D3B2094C11A04762FE8CC1E91D020A28B3C122D24BEAACF82313F4604F2FEF
-6E176D730A879BE45DD0D4996EF0247AEB1CA0AB08FF374D99F06D47B36F9554
-FAD9A2D3CE451B7791C3709D8A1DDDEFBD840C1B42AB824D5A0DFF0E0F15B0B7
-22AEEB877FF489581DA6FA8DA64944555101EB16F7AB0B717E148B7B98D8DBFD
-730C52937E226545CF8DC3E07C5BA30739BAFCD0F2B44275A6D503F582C0FB4F
-449963D0AD2FAFDE33BA3D77BCA9D1DF878DDAFCA2E22CC4BACD542B282164C7
-97C2BDE318AF9D501CA21F6E662E7AAB75A5F24D2C182E598D175D44E88AB19A
-E7CD59584F95B389183EE21B525BF52A3F23C0FE5383A5565A19361D716F508C
-AAB78411CA5A4D27552CC1C435760D5A89D535B71C593E755C616661363308DA
-A683F54ED0C23FB2C225A008392B0B719F66F11A946A090B7C00B662A3C69599
-B4ECB0CC70C85C4BBBF207E0026F6C7A19F2ACFB7A60804FC98A4BFFD7BFFF2B
-9529E6D9D4238002BBC255BC62959D6F3381FE06E0621B879D5FE5B541D45A1E
-759A6E7DC32B1D1632368D09A97039DF255B6492B1B2B7E2C1434E8306ECA7D3
-5A79B6D614B4979F10988BC76ED53A5F45315CD7DA216221F842FD0F3E050DD2
-BAC23C984D506D8F7D614BCB6B244F5F41321549BB0BD041FBF3053307168680
-3435E9C9445A59A7C666418C4F2512C32058B1CE1EA46C7839C6E372F6CC60AE
-2CF46DD2F130B532DE8ECD42D9204500E413799E298CF6426F28D23BB7216BEA
-1A618B3ECC61B44DDEF0BB22D640B47C09AC0DF378CE68FC9CD88BDAE9ED89CB
-431A5CF9C3E9528FEE7A9936C2B1CF7B38DD2B95773F0EA0051607BE1B0B3588
-A8B907A5EF011B4622C5093A7B107DD1EED6FEE9536DECF1CC96E65373D0F433
-30AE3C094654ABF4698C07F8C74E71D023DFD242EE83B1306786124DD8C6BFA7
-801E66CB944BE7EBCB3FE803EC97067AF7AFC8A4E9AC9D11
+D9D66F633B846AB284BCF8B0411B772DE5CE3C05EF98F858322DCEA45E0874C5
+45D25FE192539D9CDA4BAA46D9C431465E6ABF4E4271F89EDED7F37BE4B31FB4
+7934F62D1F46E8671F6290D6FFF601D4937BF71C22D60FB800A15796421E3AA7
+72C500501D8B10C0093F6467C553250F7C27B2C3D893772614A846374A85BC4E
+BEC0B0A89C4C161C3956ECE25274B962C854E535F418279FE26D8F83E38C5C89
+974E9A224B3CBEF90A9277AF10E0C7CAC8DC11C41DC18B814A7682E5F0248674
+11453BC81C443407AF41AF8A831A85A700CFC65E2181BCBFBD07FC5A8862A8DB
+7E2B90C16137614CDAFB584A32E50C0935109679E31306B8BDD29F1756946A67
+7A7C2D9BA6FAB9B20A424AA0E6F4BA64C2801C2FB5A1156CBEED0ACB95F697B8
+BC2A6E6AA7EB1F9FD8E3C9B1A16697EE1F0E7400421A7765AB218FC837A49365
+82DC6B2C877A7DA84A81E6126EE96DB25C17A207D3020A045DCDAA064360DFFC
+E3CD50E21ED239D2A6450D04F879A26443ADEB6A20ACC504989876476C7D1A74
+91564FEA1F4CC2C8C8FDF666DB537F315AE1886C73CB5B00E67E7B398A6C018E
+540EAEE98BB8136C4F044EDD63C33431D2CF9740F051DF365A4045D9D8782112
+7BB5D494D9235BA98CF2F30CB119F5A904C32AD04C960C43FC1F5FD8DA7D90D8
+93AFB59F3FF4F796481AE2A7548F948FECFC6C127C4D3F159B08F206AE8C296D
+EE470DB2F879EA79475E029D22D7A8535C09A18689DB0609CC233E5199C02756
+972CC9C94D9FCE264DEE5D75C8D651E4E2D1189AD9588CB815722BB5EE3C379A
+6F31C2E6AE1AE4CCEB29766190AFA20EA937114978752189F1A9F42B39483149
+796FCFA123BA9CCD1D9BE28289660BCAE16C40B5B504058D55CFCBFB4F4E3D94
+DDBF39F157E63946534DA81C018B1C01B9F10DDB55E0A5C2B3985ED1977C039B
+D6755EA42CD09E27751E159C30B93F376DBE61CD3AED34BA36A768F232EB3B80
+E3E6B77C4A48D408217818E398B83D995AB6BC871F20991DF57313D6EB0C793D
+0F28088EBDB7F38DAF7E01AAB3476EC24D7BB38A9889A7D3038D930FF4289B83
+F54A7BE1E2D98A3822098D2E4D067A0D400C20C0B2B4BBD74C13ED1B827490F9
+ECF48F8C3994C1C5AAC9CF783BFA4F307528F51EAB55F961808A42ED53F00C97
+72A432EAEDCFCFB622389BDA707B6ACC9433B065CF29EBFE93AD14B8ECD5F47F
+F073F11822C49B8BE924CDFA6348C3A75E9BB9BF3F31C41716B34794B28CDAC9
+4DB8B087E180A9B3B17680F73D9C12C8D86A922C948093629F5D7F542ED882A1
+692F4F6696865E53E3E2DD43B2D5E8C989CFAA5CA5C4C5999045E170BDE9921C
+BACD6F2863F5553EAB2BA2D4A9034729EC0C4201DE90DA89B0A27C5A5C974109
+4E37BFB3F46B3A506169FB0C68E1CAFC844419A8D261A1FD86A3BB78E33D5FB1
+CFC687A5975987CE45155E5FDFAF0CC5FD5568CB1C26212F92E88255F0549F59
+41B33125946DE43436BEC00804063FBF03EC796E3361B1C852EC3038D107F80A
+9198968265D5488B26D7670B22C2D75EDFFD1B7B4AAFA36DFD94640C9D0E2D20
+5BCA18683EFB91834A3939AB8EB60E2F09655BE003582634C52770DA9668C292
+2E02929D812EE2B0CC65F020064AD5BDAC5F5693B30508F40ED8E20E87149BD5
+8DD41AFF83FD1944804017DC5A04512E593549FFFAE501131CE2FDB65EFD0B8B
+33809CBAEE411B3941C241550B9C30DD28088708F1C0CC3125CBEDCD985EAD28
+03313741F67DB5744A87B381147D5BA70AE1145C27F794854628D87D6C1ECCA1
+749E3465B950175D3C3F40E344297BD92D3190041A4392033A79BEAEAABB8DBE
+CC14E39612F43721CFAE6F79074429221CA588AA2501DE520A464DE157A03AFE
+3C082FAE7628FC0C57FFC61D0330AE6332D20FDBB09BF36848FE05E782D6379F
+64F9C82C45402481B0A35989027F9756BF5A79DA2D96E10F39167ADB4305578F
+90B509B6891338FA1D67DCFD61804AA6621526B2EE4769589A2646581712AC05
+DA6E98D16494F07D612743058F54FEE516BD89A8EC3E03F9D7F905175D3412C8
+F7329077FD6EB25213F3CAC94BA0C3363B759401B6EF7548C7D709F3241D030D
+4EB46A1AE81863C412BDDAEA6084C37143A4C5E41BC646315B1CD09F934186CF
+49D1D8239E363A435307030BD79536B50B723A39DD763DB539F24A10DDA12BD4
+E467339D2D6DB177D6FC539FA77D2DE4118EBAC161E928749F7C753ADEF86117
+58619F1155C563DF2E11ACA8347908B98113AED58FCD0394150EEC94B7F986EE
+88BF7171D208D8F1774B1DD478F0C2958AE372D257E7EDF0F6B5D6059CC4D5D3
+B00FCBD2E9CBE79235B9A5A3E943CC27AABB58728C95C7DBD4F4A1F8A4DA99AE
+7377B0CC0BFBD454794398AE0D5F7281771FFE87B25A819F36E692286A42D776
+01794A43CA9BB30FB8FFDAAF014F909A369E34C2F6C75B7D4EB9DB0580E33F46
+19654443AFF8384B95600B86FF8E41FEFD032355626D60C7507C058EF832DF41
+194B48A36F11082D1DCF4723E21401E0C7447AABFAB4639B26E3D2730E348F55
+53EBFF39CDD03E06E2FA5FB379603C879EDB7E1A10F89695C9C47DEEE52BE0A3
+F446F187AB9D7E93E6F9387F21129034F36DF40605D28FD526AF82CA9D232BE4
+412567F06B38ECCD496EF40A7B243E46C9FEBA4F1BF4B1ECA029C5EC239353D6
+C0B100BF7E7DB33BD1277DE104F15AA19F37340A777741AD1AD693BC76DA48CC
+C6F83CD84591ECFEE375979972B0FAC4C10B625E4BFB261B9FFFA83C31DA0108
+4FFB6377466E9739E0EB64424BD9FC7239C7DD834EC6788A0F97FE714AF92831
+E1BA36A8A9E24739F1DC82DC26CC3CE28C210AA7C569B19E1784D663A0CA4E81
+AFF43E86D6F5F63778847700072CEB77A4EB946DC1F23DBC00BCE773203F76DF
+00F0B085F31420672974DDC642D885E95BA6BBE43E1CA8ABF464D9881CDECC7A
+E98E31B9754C9B72A8BD5CF6D4D214DBC3BA7A0CDF6635953F5AC1E7639C4A91
+C7AECE4C75CA3389C348F656FC2CC96C84C85A926237B6504DB51937C9CFCDAC
+B75C31ED570D180757884E27757783DB2D5F35ECC48C496CDA342D49AA947BF8
+2FDAD2F19DFE8CD1C76A8FA08F33681F3E12E229D7DAB45BE3A3F258B5ED4980
+F15340CF20D965252843E026803E8AEE736EC41CCA82167401977AB719AA2F50
+0B791EEAA82027B3C712D2EB9D14BF8F94FBDE2227609BCAC41EC08DE2BAC023
+28352F913F7DF08D4E1C66E83F764578B22B4EB7191E852B91ADCCB1BCFDB1F4
+E63DFD152E86FA9DE9BC8908130EFDE29CC4401339C05B5B9764CF8EFF14951A
+C6C13AF979546996BF22F2B96D3D585B90CD27DADEC78914DA48432C6ACBDD42
+20EF583FD41F2F6D6D10C3DF7DD077304B5940BB0462656E306CBD91EB9B756B
+7014B1884A36201EC582FC9345C386043DD2818FC301EF78791C1D7854F8FACE
+5DE9801DE9F59D5B4271E003AB897B2EF49501589D681D59CFFD9B03F722EEF4
+74ABD29997515DA3591496B62666744EA76DCA45504F8075C0652D6779DBEAE4
+90430C2945FBD60AD53B51DDBEFC7ED703C418B4B244C8FFA5A3C1B7600C5A55
+3EBDB93C16AC191C3A28EB2279BD3F0D67C826BC6A73D3C0AD02262368AB4621
+98A1605F2887BC5880E1AF2780330E0FD01D7CAACBB0F008A42C427F38236066
+54799594E515B289044BAC4DADF8B3686B4372C5110201221FDA923F131E07E7
+93C44BAD406838BA4D1C277EF74098B8C0EDC41EEDD58C195D7DFF5FEDBF96FC
+19CEBC6C3006DD2CBF76916B4298BB915663C2F61AFD7747E03A03BD7280197A
+9DA590E3D081C6F53DBF94E8D6FDDDD910A70AB18A0F6D48A590FFAB314D6CFD
+E3FB20C1F3C91063F00726A2C13A3D48323F9854839405E5A29D66A43E6E2B84
+A8B3765F1D817071D4D6FF42BC785C2D11AB2B9452F141696CE19C6AFB9777DB
+107D6E22D8CC6C26440BC48248AD8805C4329D46BF433741CB519B21663392DA
+5DC7FC9BF37E5BC396BFADD7263D09F6B4D69594AB386B7BDFCF3BACB97A0E08
+22013E716E642592A20136CF9CFD61D4E515D80E06A4CB4FC9D9B916C93CEA95
+B83B98C48CF36C1D02291D4F5C0419338D64E33C90C90EDD2BA3B96D70FAFE0D
+403A060CFF448D3E28A9B1E3916018465E86095BAAB4706CF7ED350D7C554789
+D7F4FE5F180767DE8739259E68CF142040BE1E2E8C6152DE3417C1FAEA7584B6
+20781DC4A9796431EE713DAC4E713C839D7A4FDC8AB6BFEFFE767AFD8B67FDA6
+943AD387E5D3BCB09039ADB64ECC2BE2620C6EC269E708DD06C311F450099E33
+AF46AEC644222E7DC4DBB9371EE12CFBC4F9B27AB46AD1DA96CE006E1DF8291F
+A550A93026CBFFC1087B134EC6EA76F5E109CDA58FF47338A0039A786A575F70
+B8A03A4F9C8D07A4C856C77D9BCC8E3EAA740172D0C2D0A15BA35C9E5717D7FA
+2691774DDE730BB9D7C70D7AE103DB8D35F3728470C76EBA0E670634E1A0BA84
+2FA102BAD7271DF2680D86A4CA6FC353869987700E5E3FD778165456033D624F
+E9B3E80EBF431ACC934AA0357E824B8AD73E222B510DE8445C55C07C8E5DE46D
+E478F832BDDECAF2EBB11941DCF84CCD887043FAED9AA90D12BC8CA9A0C8D94F
+8D3BF1F80B14B6CAE6BB1C6AA405AA64BB94D5A82CFEA548BA070796A02F9642
+87326D066101435AB9EB40BA9EA9E61B363F5F5E3B924369796E8B78DE3414A4
+2B79C6A13ECB2F34E6299658D07D2B3DEF3D4383CE009A927F0EF5C196652842
+D96B857AB5E905201E7E8BA21A5EBED1FC6863BA9A1A6E5390407F75055E2EEC
+512FBDB3E82CEA13663F1A1944DA072C765D8CED06AB461470C5723BDC1271D4
+4D1D049D3EB131743F1EC9A6ADDAA038ACA2C41D139DC6A84EC3C61AC7F1E559
+6155CC2F49171F6E07CF56D721D9728E87FC7DCBCAC46455A3694C765FE807E9
+9CBC2D304AF37E0F28CCB22F239541B53A4D24D09C662559267467EA487BD33A
+0BEFD4899B581D20582930703A868655C31BE935364CA6A95FBCB22CB714C040
+9718824DFE97929D0482430726CCB5A5307957DD2432A9B6271E849148DEB76B
+FAA290FF6D0B18DC5B76407852E81C105EC6CFAB0F620C6DC9DA555A33C167B1
+430A8BC338BFC7D75B7099CC906AD923FA107C74D3FBB719D77A4E5A685FF9D8
+56424EE4AA074434B809D894ED50F6A60A035C5223EA25DD8983B9B34210DABE
+718D7B2BEB293FF1B63CFB1CBDAFC69552963D90F5E3FF533A3FDBB626E9FAA3
+F3C119E5E01C7BFF832A033C3515BF049E29558B1DAD652F2888E339E67D15AE
+95F9BD14E3253DFE9072B24C0E7E85025B71096AF51C86AECB2921126A43156B
+EC812B32B1164BD9B2B947D503C015616DBF2024F5C8CB3236C1DCA653D661FE
+6B1C19A22D272A176B7F1B7F9E67AF40DB0EFD4940E58B2A050249CA4E55CAF7
+6ACFD84FB46FEF952D18552B3972D79D808B4C263B8C7E1BB647A2D03E102867
+630D5C3F2C917F765A4F6FB8106BA6A9D0093E27A4CB6049C2371287D94B5111
+6E7020776EBD744C6C920464BBBC0AC206033E8240017F8CCB112596ECD7CAFA
+89950CF43FD87ACA750C03A778A37FBCE9C82C2F5ABB135BB02DA8E8C0D24475
+3BEA9D79372D0022FF1ABD378C151417DBC69FE5C9CA38D23A3900E34BF924A2
+90777ACDC37930B67DD44A2E76DDBD9B89598D5F626BFD325A978D277265DA47
+38CFAF16E7FF1946E15F41CA73F7B4B02E5AE8FC4C37B115BC567E4EEEFEFC34
+EC8974B1465AE57759EDDA28DD38A9210871D35D331AE1BE6097C3EC21C770C9
+B25D040B2ECCC3AEB1EA1BF99E0C2C0F192C13BB9152CFCF75332E03F9CEC376
+9B8C285A35F53655BE38713E09AE34BA2DA9C06FA42A6FD2D00CBF2AFD2BADB9
+1571629C65DA38A431710CF5B01FCA68E8B8569922FBC3F9B64A5509B6F677AF
+1B97E91FFFEB6308AB68AC58F9BA43DB5E764021E75B56170EB44C2C0A7DB86C
+62B8982256D3621EBE3DB3994DBF5C5A14CF34B4AF3BD5697F8E3203085DE9D5
+84B0598169760B925463E93DC87CE70AF4C2DF0F4287D2F2069847BCCF7A37A2
+AD451D5ACE4DBCCB2E14D5DF38B226952E7446BF87BEC736EF3D5AE793304618
+D66D3299AB9F9CA1D13F134FAEDF36750046E27706C7CBD8E0877BB6276E5196
+BC2A355D109C0253644918E1CC11B717DE6FBDA201E769812752888CD66268F6
+4ACF4A9449378F9F9923D584BA1B51F33663BE7A306887BC14A37E3C5A4654E6
+531D6EB63DE3946BD8BA95CFB037991174F36D61D842071E6625605CAA350A24
+FE551025D10871FE0E2599A63900C8520EF4911C53A03897C8BEE152451708E2
+43FCF4E700C583A5E8DBCC03BF9CAB864DBD19E1760945DEA0EC0BA38BEA8256
+D3A8D4F70F6685A99C6BD2BA8B412A26C002D76138CFCC7DF6802931E5D97BA6
+0151F6A4C572235B4196B22B7B2D14B32886DF0D2CA8A277ABAAC53B63F64CE4
+E4C088192AAB674497E8AF81961359C389B51F4A257373D907C615030BFBEF53
+DBD99058FD06E352450B658478C10454AC8FC0232B70D5CB916981978053E358
+99D322A07294748BA427FFD1E45C909171017B52B7C742FD77A8560852D819DD
+8DD53211A14D7B2FD11E42941722FD3985D627FDAF87EB57326A0D290B5077D1
+8A4230BEB40523A8565F95E0D44F036A571DB698EDD9D94FEC9512369E5E5E73
+A3CA5C142617944F4F99C0697ED088ACAC007FCE06E5A6EDE7D0E03A3399DCE5
+362271BC31533866BA79FD1FB3F608B22CCD4111FFB1BA35D920A23AD157C6B3
+C3DAE11069D5E46DEDA7158C6478D8B8C0D9DC237CDF0CC6633911673C43FB79
+E4F9B7F27495201E5ADE66255BC2CBE9D9F237DECB62A19D62CB41A1C92432D2
+07F0629E913A71B3F1AAF8B8C5AC66D3C8605A48F8913E39C859E163DB1DBC8F
+0ACFEE80A40B6172032E95A76B752B873FB4DF23CF3A655AF1A1B88C8DC156C6
+190DE72973950565454C0A188A33395FD3D529A88F2B578356DE8EBBC12F04C4
+5B899F667D9E6F3A4EC6DD8DE71FD4C2E2B6D56823EE4E0526679D71FF1B868D
+F261489F06F97B010CCBE640E2F57BA3DC3332B329F7958394BA9777D833AB50
+005E8E9232547104065ACE33396772B0E0BD66D2C6CC54DEDD071E444D8C95F8
+6F88B31E20FDB80F77C83151B7E25BD3736B4F9BDC52EE78C41E9475E5A6D94C
+D348AB42F5E36B4F167D29EBDFBD43B03F77EB296B06A36880FF17D412E77EA9
+F2E7C25FD05E16BEC6732681EA21AC3FF6893B93FC09316A370CDDB86D9E6087
+F6042C3F9ECD742778389170F5F041329782FB9F9702F7533E51F355F71825AE
+2BF4F8FE50D413AC9A20C41B42537FDBE8DDC5A5C793D3760C1EE13716068752
+F0AF10812250BEDFB4D7133FD58F4587BACD572505C84A7D3802D27443175FE0
+0D89C3398B55176D8642AFBAB5CBCDFD6220C8488564B4306D74A58CD2921AAD
+73CF803C754DAC2F30A5324886E273064FA51781D5BC596BFEDDCE3982EA1AA2
+62CA7BAA1B16C6EBB99B2AAC4E6C9CEFB3D10F19987045C4918DB239E6E63D79
+5F44B9D097118D081153AFF96E5EB39CBFBB99A3BE30909F614869031358EB98
+F07A97EA78AE50375941B2474DB46AF3305F2B208D45921F93743A6CB8AC584F
+6BEBE25ECAADD5A789EF60C9F54446687E7B030DA3E5243189F02BA46BFD28B7
+DC14822E136AC7E40CE20458DDBF356488045C95907363864CD6943643BF0109
+EE027A3091C11EA392EA91320EBFEA3B857370AD8EB86D73F035A476F7058222
+E8CDE78CA1AA9EA69A8AA6EBFF3E67324C567B914134DE042D6F8F18A9373107
+536E8D90189917D343F5299024239E2EC1D2D177D82DC8E344A7CF2AC71AEC18
+36F139E7A4EB59A67192BCA9ED0EB25DE13032F6FEAFC3B1F4FC81BB0EDC41DF
+B9EB92618667C59EA499B788CD26C2137D70F1B0AF793AF5AD0D0941F2E746E3
+F5A7F0288BC1EE11E982EAAE763CA422D72FBBC0D754AD58FBF92629DC8866A0
+431213513744DB48E52EFC89C83FEB082588E4F30D7DA77BB598E51CAE7E4900
+5CD570C914EFBA426BAFF7A56FC775ECF5BE13F2C42E51EF96784E5201C0B64C
+074AC229FF0BFDF71E6D5E08D8755D2C12B770B6466A9C9C61C15582DCD2FF78
+E9E74DC2B1CAA344EC0339EBFF92CD2CC1D62E2FA8FF15E7459A83C6CFA58A77
+2F1A40BD276E76B675FD6834052B33BF9190F04DF6AA5FA3BB7D77A88DD5B600
+324C5E28216F47682EC29EABF35BA842BA2294A3D72B126EBB852AB741186C9F
+FC84B12DC4A6CEC08F2D03EE61B65C845841EE17F1B765649A
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -140,25 +312,41 @@ A8B907A5EF011B4622C5093A7B107DD1EED6FEE9536DECF1CC96E65373D0F433
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
+{restore}if
%%EndFont
%%BeginFont: CMR9
-%!PS-AdobeFont-1.1: CMR9 1.0
-%%CreationDate: 1991 Aug 20 16:39:59
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+%!PS-AdobeFont-1.0: CMR9 003.002
+%%Title: CMR9
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMR9.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMR9 known{/CMR9 findfont dup/UniqueID known{dup
+/UniqueID get 5000792 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMR9 def
+/FontBBox {-39 -250 1036 750 }readonly def
+/UniqueID 5000792 def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMR9.) readonly def
/FullName (CMR9) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle 0 def
/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
end readonly def
-/FontName /CMR9 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 12 /fi put
@@ -201,235 +389,453 @@ dup 120 /x put
dup 121 /y put
dup 122 /z put
readonly def
-/FontBBox{-39 -250 1036 750}readonly def
currentdict end
currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
-016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
-9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
-D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
-469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
-2BDBF16FBC7512FAA308A093FE5CF7158F1163BC1F3352E22A1452E73FECA8A4
-87100FB1FFC4C8AF409B2067537220E605DA0852CA49839E1386AF9D7A1A455F
-D1F017CE45884D76EF2CB9BC5821FD25365DDEA6E45F332B5F68A44AD8A530F0
-92A36FADB679CF58BAFDD3E51DFDD314B91A605515D729EE20C42505FD4E0835
-3C9D365B14C003BC6DD352F0228A8C161F172D2551CD1C67CD0B1B21DED53203
-046FAFF9B1129167921DD82C5964F9DDDFE0D2686875BD075FC81831A941F20E
-C5CD90040A092E559F6D1D3B0E9BB71733595AE0EA6093F986377A96060BF12A
-A1B525CD9FA741FE051DD54A32BECD55A868DD63119A4370F8322CCBEC889BC2
-A723CB4015FC4AA90AE873EA14DE13382CA9CF0D8DFB65F0ABEDFD9A64BB3F4D
-731E2E1C9A1789228FF44116230A70C339C9819676022AB31B5C9C589AE9094B
-09882051AD4637C1710D93E8DD117B4E7B478493B91EA6306FDB3FA6D738AAB1
-49FBB21A00AC2A999C21445DE3177F21D8B6AAB33869C882613EA6B5EC56476B
-5634181ECBF03BFEDB57F079EACE3B334F6F384BDF9D70AEBD592C8ECF21378B
-54A8B5DBF7CB9282E16AA517E14843909339B5E7C55B038BF3BB493F3B884A1C
-C25F9E8FB912CBE23199AD9D2C3E573727701BA301526C66C3617B9514D6F11F
-11930B1D97C17816C85B1BFD9B973A191B33CC3B391815AD14F1CBE935942AEC
-D4004E6BEF379066FD72209DC88D2E634E79BCC2B98C766CBD92C561F2703F8A
-109E6C6CEC7B866F2FC7ADF646BF492E520319F3B949AB5D84AE990B33344A40
-3971F58DFDF8D8D67FA0B8F2A0D884F8C09A5A721319B911DBA0A35903877343
-C37BC36C5EB32353272D1E6ED5FCA611BE319A7E1E842CB7576E7A6E4BCA12E4
-2086286F43226A1549A4FF7492ABD07FBB1EEFDDDDCFD29D8325E262E7C6C0AA
-34F6E5E90471F431033742F5BD7B8DFF2F7735FF03526A4B3E7C550BC02BF138
-20EF5BF1805053B714B2D3DEED7015C9AA55F6D4E5671A52177E916107DC1C24
-1A6B08D4D0E553312240DE0B15FCBC1D7BEBED0A277CB194A725042EBADF8C40
-926F53297C0AEE217D9626B555CF3CA2CA2286067C562C5639F2C8D36248F32F
-32ECCAE20F5253B14C7A8827C4FCEAC97EA5DAFAD169BD757F6B155EB9D55A65
-002FBF723D774680C5CCD9C22C9912E6BDB205CE0EF255821381A430FB331DF2
-78C42E7445A31C581668B3C8F8F3E9A1AB5C5C8A4DA9865548AAFE4F3D4DD2C9
-68678E4DE398B1774F5EFE662300A1D4AE3DF645FD3BBFCD580E539DD785D970
-1FCE87953CB69D0AE861AF38EB47E578339D91B4C2D748F9705F425512FD576B
-9EB3780E9CA494C3D2A88A7F1AE1B96762C34910CFFAB0C5F79ADC3E1B943A72
-A7A9DEF158FF05D81BA4E887665E21147692C6E7F4FC7B0323F519986C2510D1
-1A83196AC7139C56B1DEB3B8A3B33B39531A1DA923191BCC0354FC1012CD78E7
-1A7623989D6A2F46B8C716FDE84759D112DF59D9F5425668D287941F68A095EF
-502FF94B4035BB46EAFD5245470E43243B3A6F4F4B30631EAB6FF3D54F1B8C54
-543211DE7404943720568AB7FF3A987636652EE54D45E593A522B6769E6A9B92
-FA8F84E357DE173E75FC9DF297FD52838EB3BDFDFF32FBFBE41350FB4247E69D
-2A418989DE2C49B5ACE3ABD2E8784A0A54F0A0987922E0A418E5263794D67A2D
-E74F20DCA22DBC738B16F72F45FE4D51F08447C33EE1F96D27C83F27EB606D19
-E169F2AD7A3F5345F1605E0F96F4DBA8CCFCBC57CC7A1AE6B60D00A33E13CBC3
-F82AB4802F2A6B4ACF7D19FB13CE8729884B182EDAE5D21E3085070E4868CE8C
-05F96210555561E8F1A863D44E0CBE8E05FA6BE955C48EA8960151F684768C33
-324E61AE682CCA56EC7551034C3E30C057AB889E5E5E0B45C2D0082CC5F4EFCB
-6D74A25B1E03716049FE975275FB46343DEFDED630443CC0932C1090F782F415
-3315E6F1709D376505A2400C95C4723B9C32BF192C1D46D6B707A5E8323AD2C7
-E62A300DB09EB298AEF9CC7EFB2D8BDDF6CBA4F57496570B5093D7E730FFB8B9
-8600824CFBD9879B9D6F6E4940AD760C8A9314ACC7FC31C1A74B919604B3DA83
-A943E6A767ABAB506DD2639F1D56D4F1A636A2CA59A79E1B45E811D5EB82DEA9
-135909E9420DB37753EF8B837934164F3545D0D240F5DDC6B38CEA134920B715
-BE6B928B524549C599CD71A60A2A549FC1B2EA68E2761A67F3D39F93F72CDE68
-D11E9258CE8D584C47789878BA3C28E92803D22CFB945166D42E3A627833031B
-596EAF89BB06C015463CCFD72807FBFD8A3BDE14CC9FB2DC060A199443B31A85
-C857F30FEA63F01EDA8DA77C41CC332A515D3976A70F716C6E3A16B60CD5F4A6
-26D66E7BD366673DD50FFB463CBD3A5537DD30733C10195386D834AF7EB7789B
-92C5971D8C0DF87E1E78018946B1A7D0D4D00BF2BE76639E082C622DDA59852E
-01265974B74F8AEEEBD2E208206EFC2629551F3BDF5DEB6C490506036F0E2354
-EB88BDA624E9959E7BC24D6BDC9B1FDCC0FCD4CC82BC1FA903BEC21435C9250B
-FACE0ABBD0E2ACC2ABC1183747DA7FC8EDD7F77CFDCE552F825791644CCF89BB
-E50CE355F904CD40519CAFD8BEE25732C7C4CA01AD3EA6E9B9A6578354DC7756
-47D1DA4BEBBF0A38B65E6AAB280FEDC6EE7F403A33E26215166F6CF56491EFC3
-240947A96B5FC1C126F86AC56B2B7C28F5FDB2883652F07CDA4E643700F3E62C
-AFA3BBED17CAFC04B376BA790406A6F3355871225FD45308DDA791323FFA45E5
-8DCA81C190500F57D666BA1AF5F465592F74EE121856DAC0446FD75905224797
-B6950AF2654398ABEA5CA909F573AB9BC6355DFB6402CED3600415D441A5F613
-D6CC7AF15DB7ECCD4101FD0DFCEDD751D53742086F56D76D59FF56BF0FE08D36
-EB2E0006FF7CDAD219D8A117BB0971DF61CC2EBAE13F3C61DCD732C0A1B5982E
-FA9A82EA390A8ECEE8853100232DA6BB55797BE431DF34E87ABABB4E4EA5AEFA
-A3D9096B9DE073104ADF5CA8E840D1F8D7D18B9FA9201D222E40E78EE179A297
-66A60A2F4C54053A48C56B7FE47D78B883EEA6BF369407B337C518C4A8521A36
-C3C7462EBF3D967683971100C64EFACA8972A8DC248EE257A0AF3F7F85DC30D5
-276315A876A830602D216B28DCF9E621F3764DB847601C133D004C531E8FF45C
-E584754FDC89C1B1FCE30063EC10089C0CB315CA1EEEABF35F1CC26EF3961496
-702F49796643B3E9370599B5A8EFB3828A75383FD733C17D708DD20DAC686BBC
-D210C8CB4A42935B60F1470659C41B62B629E381023D212BF79D29FAA4076393
-A3023F9B8D5D558114A7AF42FE9E45D8A91ECA11CE628E616C50105EE11BF8D6
-D03991B9F9C2C4FCE0FB746030A2EA802EB8998E94D4F0AC5E22274CD945800A
-B3D82952F9790B7B86A6D3A24500A1B85733138D938F0501476D5520C336CD35
-DF710C8A6F6E9E92545188FA8AF49F9271F8AEC220FC54BD789AEE8A62634D3D
-4CF6DA3D5ED42C3AC12992568EAF3EB5D9213AD587D29CA3DA7E6E208F5CFEEF
-9040815071DA33F016EB8258C3813AAE3BF169486A02E8C43404F194AD7A1BC3
-2A46825183FFE5082699D7556E2F4A59DD0ED835B9C5EC8F942C0A703CEDB0F9
-C77068BA68AD0697D0C3C86F33C9AC9FD4ED4851AA3033B211218AC92F2A744D
-2AA17C2DAC259F88171F7ED8BB1979D07673E16F5CA7A18E4CE78BB22476C2D5
-D08F78429A2433DEC7D7CD2D2391E30D4E8D9006C0755BAEA95FE903ACC4BD0F
-9D9922837D3FEEE28BFE34018470D8C91D4EA968ECA1B93AEF9402B1054067D4
-3DA1DB14B96B96E9884CCF9B461273CDC224D5D79AD15FF57CBE9560F9F67A02
-4FCB320805E9C261BEC5EAF37B76F1A684B39B9911669E1772DEABF1FF131244
-C2A60413854F84CDBB2CA0D93241D2900161CAC9E9BFEE211102D9F5A18F383C
-73F3627599589A3F0F2DFA4DE7AF33D6AC26AC0019F6C7E132B7724A8D4AD068
-64F81D26912089399AF5ED009375DB4DD51B8B274EB51EB6970A8F389946CE92
-390EB30FDC302380B9A18144E09EEB604001426CE1363A4946C015901E28BEAA
-9B8026BF9D1225D741AEA87AC73C2A906A1CE906935C7273FB5B0D22832F6C99
-E6F698234DF5C3050DF46A51FD39BD43C6F9EBF83C76201152C797258FF01930
-6D47F15EFFA39887ED307174D7A0A1D198C93624A681F5F248096D8739B8B048
-9835310371E03AD967C6F81898956C53B00F891CD2BBC5EDCEA494694BACE089
-4E1338305A2F0B1475E87112270128312E8945F623B2893DA5D71AD9146773B5
-E23852F205214CEA0DAB998D6B61D47B531CA74D927C67405AA67A5A4CBD4B06
-07ABFE4E39139705739BFB944B0B1854306D385A368C8EB8A4AB820BFCA2D13D
-C41FDE331CEECA12E55A92FE15E82A942EB17F2323AE76D70C0B58FED17E9EC9
-23A31F79DD1C0B8143A769A17BD7B9DA623B6A85EF5E04B2C37AEE7AE7D4F3EF
-89C13761A40D0A684B97BD00D86AAFCB9D61D676702CDE89C703229B0B983DA1
-84474B233805DA7458F31D2B388C19AE2A5D55E7E2C021DCE2568124B9C65318
-7D2419852A7C3E782E65577C7A5B7EDE359520410022885395630A83A75ACA3E
-487D878EDD0150D49F4AE2BE404736DAEC3FD3F399767E9442EF7712BBC4B465
-09723E1451DAA8BED3FDFC5A18B1520C43D2E9BE9AE51F805589305E6927F294
-DFC5439C09C9AD1B416F753656B197E3222DE448E3921DB5B669E10B78AD4A74
-54F879A1C6502528EA7FA622E3532786720EAC1FFE950AB23D232D30BBA0BBB7
-35108A8249D117096D478501F0F44951A19B9EE2E622D458D4E11BBC89668E07
-ED1F6528A487C1C11BEE5D4347602BF89904EA443C21BD9BEEEEE235AF511BE9
-0D5E9EDC91A61CE4936846D33BF3C865BDA00A6F71A5CA7F689F2903117245C7
-6DA1D0B9719C0907DC323CC7B23085C69CEF7D978919E7CD59E8778B71EF84CB
-809FDEC2FDB6041C4E3E4BD1DDBF0DEF5904F9C7E8B13F7DCC108C6DBEC54A98
-1A857C3D6409006F2A7C0C6C6630D22902FC369632710BE765AF27F47137D52A
-0E4DB396B8E52CE5D17176F5EB924CC12AE87870525FB6CE8284FE29869BD98D
-F0F34EE2E85A0C83CB3ED6F8832729CB2905CD68D1B3CE93FE74594FDB08D75A
-D099CA9AE015F396B5D6C4E0D35DDF566179B8CF5793C0D93D2C16A9B7F4E4AF
-BB65316C8EFCEE6BFA0CAAF915CB43726F31BEED9A49CEBB22869C79DF80C7E6
-1D17CE31A53FAC643E0AC03FE5C7081CE023877A3C214A028E2596E3D3685268
-D85850A4ADB867D2C4BFB589B1F5247E317D4A1AFABFB17DFA0E76335AE25128
-4D89BBAEB1C05F2734AA78530482CAD30AF5448E0D8A0C19B5830FAD63F73118
-2E9BA785477AFC727D200E393612869DB66C6253C5F13F27FC1855E315D73FA6
-2A42FFBA17CA52934DFC4FC7C548A0C751E9E18F8AE45BBE25E68D5B95E0BF60
-82C28426DC6E1842A1FF6E2D2803E3732EAC874FDCC92C00FE3462A60DD51EF9
-304DF3135CB0865C96AD62E2D2947F9E04ABF144916083C61BED35C9A6DF7CF0
-6FF9B3C98AE848785BA4561ADF24C27292601E11990A2E88774FEC8D46A5D813
-AA4965778CA603D09054C38278CC1D749628C1FFB59D5236F313988AA64EFE0D
-5B002D463124844922A10D3CD7810A847085B67A9813A24A225F5AAA4F4C66A8
-B26AAC57A279E2D6E6C7DA723DB118A183B782BB667329EDFD901585773705DA
-E855515DC19227349EDD8B770C8371408EBA91BA4E64CA6E37085CC6BB05E773
-DD1046147BD67FC57BD4E748EAE63EA66895EC0D6CFB75E7F7A81B08D1E5CADC
-79C04E9DE88611BA3B063D865C56D9AFA136DC2263634104CB3DD1D0C2053B53
-B010C058015B8726A20291C464981FEA208CA36023E1A5E7312E0D0EF6BD8C54
-ADFB488F2C81B265F0359A4F8356C6C8BA82CDA17FF91AEC7D9A3FA88F85B995
-698FC4024C6E8B12EA1189257B38E3814D50DE90BEB69808A6FFA2AC0CEE48DD
-53E04D7B2442F2BBA36683BE5B6C50D55E1E5FB8EC804E126252DBE720C13790
-CBB8BC864156CB75F0BF923500F503E7E49838E4BEB76C594A9275E7D28CF9BF
-2B48389285325E979FBFE0E35E1DA7FC23E122DD4D6344A3A7709F422B60520C
-F6000B24045BBFE30D3E5EB35BEB48E26AAC37040D490851F1017E6F41E37135
-6A76F41BD27834CF3691C60F48AA508E8B276B2741941E4DB35CF42FC74A81CE
-57429351B4EF9B429DDC4206948FE10F6D4AAD93C89C0A31E72A10D81F1A3B32
-8B08CD379B6126A607D1DC52C75786B6E76CD788FE7B0350E5D272159F70592C
-7BB387B87117B59F14C4171FBFDC6CADEBAB572B8109F916D8CA5F71D00223FE
-09B3D6709FB136D9CF4473629DB98FF10DC4EFEC5F0D22A717B098EB38928A53
-B457B5F90DA732EA3613A5AC30A91E220DB4DBEDF6B0B4C6F05774B994BBCE90
-1DC703882BE03FFFA973D6A27E26F2CE02FCF68FB64EFBC2FC453DC009985AF3
-28A924F5AFE61D8FA24484979104CE7267C71D018531521C205A692B2341A716
-8DB082AB32B9575193A0EE526119280A3F8C7CAEBA58E2AACD83F6B12F159B4F
-21A5953FA0F061BBFDB1360D9453D1F8A9DDD2ABB031A3968AA9A97A5D7C497A
-7F0D57FE59E319E06D77114E87803D8699C5C29E454DD168623F29D0FA61D832
-98738F6856A9B294233EF363DE84749AAD95212F3B350698D07B4068E1F21C63
-3B3917E6F79FBD02A3D9399AB18AAFF22B076C0D2F677B684476CA079F881C3A
-D71D6903A75CB9931C78AFDAADF5B75B44A52E0025F406314E8DCF1CBE6B3165
-AAB0AEC77592BCC95C8858EFD33A945923ED8EEBCD7005129E7AF3CBFADF28D7
-C9CD1702D5F1E3518C695E831D2D3DFFEC6897968E4A4599E912BBD958EB12C7
-25DABD18A816CFAAFDDC8D0A88802636BD2CC81587B19E91BD99712E41CE0ACF
-1C1745430054851077985E5FEF38A73272C56BE0DDD2F9B3973FE06F62DEA8E7
-B6CC46558B784D0BB5162F143B3959AEB720E6AC3F122E8383066B914D391541
-75C2D47E07C4DF14FD75E96F19788374A6CF218472ACA936078B9C245F40C812
-30D351323881A7CC553F0B9DF5E0E90753D41582A1A1F6E932BCA3853DB1A6D5
-07E4DBA91CD26EFAEB573A0C2D8EC879BD271F3619AEF841B4BB26EEB85A3C86
-AB33D5E94C594197134730A2061AEAF90E4E5A4FEBDECBEDA77588B8F0C02644
-B5DF17DAD9048C85EB0DCCBDE45C6B0BFE690C687C2BFDA900A484DA948D008C
-CD087DF0CB9F74E3DDD27D12E4C970BD55D097AE007652DD43F74D3B63C0B619
-72F16998E182B9C113B921CBD7B831DCF5379B43662FA0971778ADE6636192F9
-24BE11982CC12FC087D4F607F078E2CA350A4EEA3F6E2EDD2B2D37987E722A2A
-5C6794CC7FB91427DC38260D92CFB5E3C64B5460FC139BA88F9DEC183B3F4882
-B3EA91214CF6439DFF4E3AC48CE710B077FFC1A7FAFC9DB7459D3B2797BD0B7A
-3E7B8DEBB09446D8ABAE4084F2FFC778BF697EBEDC69E16B5D4C962F260A69F1
-9F524442AE727481FFFF7048C0342059B4DC66C4CD7BB6200584CAD626E0D9CD
-35F49DA71F619CFF33307EB0AA5D70A223B0E8854D2F492CC361C1147DE55BF3
-305A979D58165F76C2F819BA05ACF43FBBC480D290B1675974890D80CAACA7EC
-3FF458B84D5DD9BC5FC978A701210042F3509E90DA4A6D72D133D89C4B191AF3
-C62E4B8D8BF959264070968B5FC00825E37FD55E9D6C83159B9171FA817B3914
-C0AB790C8CE44D481479844EED6D7E53296E2A3F4BB248F367A8F1659F2B7767
-3D05D34970CFB4579CCB0556839FC219CE80BF84FF513641E0F8F3E1FE62E59C
-8B3E6AE389C797DC9CEA8E4CB22EE0E78451FE1D483134BCE93B21BC437B7B25
-FA471CEC4C6F340A4F9E754FFB94EA84C14C14B36D262CB28E91C2FB7A266C43
-3E81DF368494A4B4FC6AA8722A721F8E51D2E2DFD756336584F54F9989899BB7
-87BCE093C93147F25681D54670B6C06E06D4A9F9685FDF3C65DA8F35E0900F8D
-2E378A4D9A859EFA76FD51083BAADDBAC5855693ED96C6321455FF3D59823CCB
-1F667157BE14D5659AB14B331A6BEF7AAEF669AF32EBFF3C7070DB76D37C275D
-3D133FFF1253AA87F2B0450507B281255BBC656B227756B0AF0F7792C501DF74
-42D67EDF5B472DB0BBFEA8D103B260321BC82E6C480FFFD5511CBFD5E044B1E9
-CAB664A8242A55F109499E68A6319E100A9E9DA66C56AA2E184B582E3DB64DF2
-A7C7349C0A66D976A30FA1DF84779B97ADE6F8692B8D787EDD1CE7DA30D785DC
-65A0230BF3572F51D04E8E9FACE145CFC192F259AEF0F7D6B00F9CF9E72663B9
-B544E91823F68ED8C2A3C9A7B8806F4B77D28AE9E1DAA61BB1B9DD35BC4A7B4C
-DCF4E4DEDA2DF1747AB0C14DB94C9067EBB9804C611771146CC2CDD9414F236F
-BA04EFC0A021911D61A9BEB0F7A3E7981F8F7C5A8B43DF0FEF8B1FEEEB7AC364
-54F380BFE58A6DDB682BD01F0297AD66B20AC36D813124F5F97CA6DA3C083227
-074DB0905E63C2E7BDB30838F33ED57784F31C03CD70D33485E51002AE058ACE
-152B9AF44BA46CE0936E5AF784029A8E1060173F6B57D3C59B8869641011ED3F
-297C4BFE1E5555D0735CCA584CA9245D11E6A0AA15BF2064DB54E75A35F68CFE
-6CCBE1F15377CF92FED2413E5F07B0D37DCEFF3FC27CE3A826F4D80058491AF7
-ACC42727CF992E00180C7DE3D290143062821B6F00F5000B31D9D70E2F246616
-A2CFA0179E76A5096FED5DA570926BBD220491F76EF5357DE263FD486101C889
-B997394C4FD4762D73DC3BCA70BE7784D422C11995E5D3E0F07E58FA33BAE3BC
-5D65A0946DDC0EBCA88B55E38BDD3EB5D6DFAD6EC45A77D253FCDDE226557DAF
-955946431B2E98E3C2C3AC76CCA1C0743631CEBD664B61AF619FD2ED5F3BC188
-ED79F70D78CF0220E87B0163590374DE6C5E7626B3AAF09DE2BC8D183D027109
-431913F590CDFA526840EF6339E75453ACB6E15B15F5AD61C067E3801C676800
-ADD9EE8A87A0B1A529857292029615BA892D355C5A7B1943A8DE6D23D6BCFC6F
-ECCC844E64A2D1EE033083C6BB342FAA63B946CC446F2CBBE4F091952B4F55EB
-305BD2E0DA668B027B1E5B18A5E272540E646E72ACD0430474AC0A8D9C869D63
-0DB6F7E3301A2DFD5E21DD938DD2D18CD9B361E2D73B224F9FCB9708FBCE673F
-98F416CAFBEF721F8707ECFC5AC86648F247DA52C1971AA82B16B4946FA84C94
-B9103697B4A167BFB3B4ACEE5A1C747480DD3A346FCB36C93AF64928A7B36754
-AC3E92486DF3875A25E303BEC4F0410465F95B34EC6C729A5C503722154C8B64
-EA7C4B3ED6A3DA526C66D76689D81C15FA92F4E1993CE17E1D0B37A41977774E
-102F689FEEF2D7FEC3210E6FBE9FD4F1B8EFEACB80004B382D1AF9C278584212
-D17C4E3CA1F1610C384A200D7AC738E60E114BB42F9534A72B7173AA9DFBA66E
-28AA1295D58EE1DED0FA92DC68F0933F5406C7C7CBB06FEDBD92B326122FF632
-0F35F511AF93E40C12576341EBEA9BA16AFD66270002603EBCB6572E5DB500C3
-B9B36DA394DC9B2DAFAD14D96A558B5E3562D796046BC27761B31C4A160CB75F
-3E5690B50111649D794A5ACC9BDBB851F5D64A460462B9171386DBEE21411224
-F68DBA86CE60D425C41F08B3233F1C2F7178F5173D4F3B6456678AA00521E509
-F88DF6766DBD6819775415AEC22DBF2AEB8CBD23960B34C5E62ABB85E3A7EE6B
-48AFB4F6A8082C5DFECE69E88A85B2589DA7AF5F478A88FB8F1208A02E456B47
-6F1390AA44A34996FF8C3EE66B0454378130F7387110D189FE1AC22E610AA270
-CF5D41FB9D02F2A8835EA35CA404CB9A519A310B1B22B23DE56EECA74BC6C040
-356F29195B898788246B2E4D2BD332441DC719775D0D8D488169FA3089
+D9D66F633B846AB284BCF8B0411B772DE5CE3DD325E55798292D7BD972BD75FA
+0E079529AF9C82DF72F64195C9C210DCE34528F540DA1FFD7BEBB9B40787BA93
+51BBFB7CFC5F9152D1E5BB0AD8D016C6CFA4EB41B3C51D091C2D5440E67CFD71
+7C56816B03B901BF4A25A07175380E50A213F877C44778B3C5AADBCC86D6E551
+E6AF364B0BFCAAD22D8D558C5C81A7D425A1629DD5182206742D1D082A12F078
+0FD4F5F6D3129FCFFF1F4A912B0A7DEC8D33A57B5AE0328EF9D57ADDAC543273
+C01924195A181D03F5054A93B71E5065F8D92FE23794D2DB9AF72336CC4AD340
+15A449513D5F74BFB9A68ABC471020464E3E6E33008238B123DEDE18557D712E
+ED5223722892A4DAC477120B8C9F3FE3FD334EACD3E8AABDC3C967C61FF003B4
+B10C56D6A490CE9594D57A2D431B9E5E10FE3D8832E227A7087611431ABCD029
+85F4865E17E17F8CFBD2CADC97E0A8820E3ACEC873F31464466A9545E967E53C
+DBDDB8478E69063FBB891566BAF88B7660A4405B16834761F041CCF7650AF955
+F9E853AA9F5F4382E1FE7D0C5BB4023818A2383F91249D48CE021250EC9EEB1D
+2835E18FB73026250B32A8849067D5E2258797C917F998F2D4121D96560C5FB5
+B5D3471216639A8671B6DFAC5E3554EC36D9A72518525A795590C74DD70DA3A7
+78BFC43E51D6F2BA52F17D4DD00D389D3983EC54912AFF73684A8A7E345537B7
+E62361C04A47859DA084BC72EA53512DC54132EB2EE671793603015652EAFDE3
+41C4B6B679BD60AEC5153EA0D2200CB1D097DAD770F5F31E6FC475A225995277
+B867B731D5401E2D02B85BA85158C80FF7E2BBCC42B98AC867E67D25DB656072
+55A0D32AB7AA483A5A9686CEA4E2B3031D90D84DB3E2DEE7706C91BA81CB8DAA
+700E5F61E07D6998C9552C81B66FD10A10033D49EF3BCB0FF22ED0A3737523C9
+8F851C61C4BF8A213BF6EC70C956AE48B5BD276CC0437C72BF6515B10739919A
+F00F6ADD2798CB211668842349171A5AEB0664D2C44397E55A4A9EBDF54A3EF4
+FBBCDAD9DAEF4B0CAEF7112FA828F2F8D9F633D37E5516AB5ECEA87342EF8DC4
+3A50548490F5BC9A8A1F98AC7AEAD9D913BFA10CA86D73AEB5BACC1FEEFDCC15
+B3655522CCA2C772E902FAB2A6FC153597D52763EB44AB7489FF061F7F58E8F2
+AEAAF4D17F36CBFC00D3C653F335D14240C87DB4339DA9D30A5BD1F502BC9013
+461B9DB2FBEEC01BB18990439A0E9CA6576BC9CF6B1A3DB9386C4A5D4AA6A5DC
+CFA45FB75F22E10ECB72565DB441A194902C91427B4F676E531C661F7A2C3C85
+CD534D1C89B6779B2EDC8E44667B992C20C70B663BFBF680A6CF4383EB7CA26C
+4D1F06B5EF4025BBE65795F1EDB5CCB97050872D6C07BC2974F905ACDB7A765F
+291365D6C8152153E7F017A25FB4476C60FD9EAF9A121633DBEAC32F62850223
+D6418566AB350F90F4B35F19598478F76B63E347D4C61E203D4DB8ECB9889181
+C387F4B663A502C638761D2782BB96EAC81A0108D7BD6938F67FEBB69218D115
+D8E89CFABCE15C6ACC7FEB983332A51A6A73CF4E341574F366713D7FB29956D9
+9BF238A87483D37E526A2EA2F101EDD34E34CB92730DCA7235AA0027189BE405
+2DAB4AA021A30C28B26C50808E1E965C02F6212EC7C72F5683339425A7739380
+A422E6191ED8453AF0CAAA424AE44DFA7CC5C2F6EAA8D73A5101D8E9517DBCFB
+2858D0E8ECB7DC430EF23A9E4428CB7DED8D035D6050251AC101A2D0E884721E
+2F21E573F948048BB8FF888911C508CC198BD750083B339500C426AFCD5634A6
+AAAC1C7E91249667B231BBFC64B4317192FE07FE9DA0DDB5E517D097AAE46577
+9555F29D45C67CDE9812CAD03F220B20519F2FF32DCA56A554D4296FE2D1F3FB
+B209B5270E0E695EA5A0EF1144957CE045881AEB8D05D72CE57F4D34617AED67
+0D3AF0472CD8D60933651626550366E300E72A9C89ACD475C2E2ED9BD44B472D
+9DAFE943F8E02A6DC38E447EED964624C37C3130E48211CA279BB6A0BD59466B
+42F3D89B5746F29E084E22CF58395AF0F29E55113F3A3F2F52CB3A6DF3D026D0
+C81754B8E2E4A15F6943BE9D0087D5166060734FD07C4C57D7C7D90E8C9C1F35
+623CEEE3ABAE75E1A18A1E3B50B7266BD2D8E812CFEB4A46B856885B185640D6
+B9C22179551002B94282F57FB433B7FF157D2F0D240836B72AF4A331668AE5D4
+E6B85415F4E8B9D2F9AF90FAFAA0A3866DF417CA5A31348CF9B41B8F5F4D2F97
+CCF7ADE851B5E2E2F6E319AAF5792EBB9DA2C6AA8B73D889F3CDAA42932CDA7D
+07A7E59183CD89520DDFC36E5D513BFD8AD0886046585F29B4D7F42CC0C27AA7
+53915AB1167D292FE91957E94A57FEE2D49C20C9070ECD736BDEE0F046E60350
+EA539DC298156A4E0D019E7D481FDDA6861E20678516AB80ABEC1F09B126BCB9
+52E8272A06BB6DD87ACFC423B4A4FC9A3DC8DCAEBB807C5F748F1FF8B17B8B88
+F426206BF1B7B7D239D26BC3CF0776C467A98CFBBCA5FB6145D5900137ED19DC
+D002F10704AA680EC753C22E29AAB15712EF22AF73D80820A1EEE953463D4EA3
+81FAF99518D4FD0F862A324FC44C4B9542A92C5B60CC983CC8F647CE5BDB4D6D
+B92B380E0E5F7208A9CD91FA9A469548162C761C1BA05AC9D60B766764D821B6
+B4E17F56CE455F06EA1EE2D38FE47581746C4C5FBA63AEE2B58E877D1A8FA83A
+31C972D53B64E92EEEA147426A92CFBF76FC614119C6E9C6476FD6A069C803BF
+E949FBE50B5AB1F1463F9747E8D353F7BBD991C4F90F920BC9407D8E24720293
+846D052214E60390C3CB926D38C83AF697425D80C2B4FC4706615B905516B733
+46ACA325CEA68FB21B2D17CF0B68BA4DF249368625CF83441EDBF2B86C957C1E
+44CD722BD2537CE84FBA07EC7AE15C840041B9F7F3040072E6084CD55B301C08
+A64A53BD4D3DC30DCAC6C152F316ABC59B8EE978793EBD568849DCC2A75A495A
+BC83470D503F8E389F54B4A4A31624E83C601B43AC1E52CB811FAA7CA6B644A5
+1AE0BFD4FC774C9C9DFC2769ABFA9C83F900BE2DD4010416053A1D4874E6ECF4
+D86E44B4CAB15D53E5630C144B0C15B58DAAD785BA298B1893D1B09BA5D40344
+6678FD2D17FF6674433C976D6DAC659175CED26139967C9B2B9CFFD78FC2570A
+E5142141C2888DBF2DC8503F9137CE7CB21A1EBC2D65BF33FCEFBC85C9CB736E
+24E8595CE934AB032CC70BD6A3B0F3BDBFBBE185512FDB7BE3D4A6620478453E
+75D044BF770B44C9741E31985E6DAF5A318D7BED12B02A4BCFE60D25EF12843D
+EFC9BAE2A3F2EFAD66D7858E83EB46BB09D2FF8AE9C43844A7001C86ED97AF51
+C511E3A89A1BE349FF5215D1A57843EF51456B9838133846F19BE79AAA5C1AB0
+5F400E5E8E7B0BF96EFCA3B8F0894BE589F2C9FB6C97BD16D38F0A237CD4F034
+099C41F85C7E2C7BEC8E02C4F327306A53B4B48B26A8926670CEEF96F6DF2281
+7C2DAD99EF8B81BBB777227C2475AE7400DC393D9C0445E925DB1E955950F7AE
+53E9AC4306794239346A419F7B5DF4168382EF5956B81F83BD4BB7635B3BCC84
+7D84D05AEDC02D14675D777CD19B08124001A4F4EA96990D96000C082A12F00F
+7FEF793A7FA69D56D3A38D012168C5458B667190AFE80E02C816CAFF0A71953C
+D80B085CD286027E2FDBB05452AA762FD7C813B2E19A79C74190E04E746C4933
+CE1E300CAF5DD53B08110509BDA404EF07FA1BC5224BF1205DE8E0C3276A13DD
+866675103B960C5F36644F96B4FAC16F5D6E91F74629B318FCCC8E8CB13EB76B
+B0B7B90718D913A52A04732EA3667674994A325A7973C601A7DDD50F658E0826
+ACB8E53D4914B0274AED98D7BC3B2B7F9D48A7ECC2F8ABEE05CF2C4F2B90360B
+B7DF779EAF3E103D1D83EDBE32DDA873768D8C37DC10A5354A94B4153049AD64
+FF3E0BB51AB91D7C0B4134D8731CD0270DAAF19BED9EAD800A14B65B68EEE89B
+40DD624111670DDC7C030DEFE0D1B96420E249332445C155BA96231C88E70643
+D526BDF3CA1E05FEE72CE2B881CFC01ED780C10E89F0828AD55FE29043BC56E8
+2750A6DD15AADD54492F6092618F4CC6A31766B17FC60766D18C307EFC9BB787
+39047DAD6B38419EFBA46B4E2C932F97451FE78AD75FA90DE409FC6DD46585D2
+1941F5ED47A8FBAEF5A917A240959E8D9F9917DEA3247D9CAE6BF7A88DB4C4A4
+F9F5A6DCE542420A032FF3392FE0F3357B51F884D6181583A554F75B1DF192E9
+253CC828FF06B0D992D5316435980B044BB191508C7C45CD90F797F88856424B
+14A5707459C50EDCF3E3D8D1667AAA83015405354CE744C66D9A5728F29E0085
+6DBF740717FA0799E3BCC4ED7841588B496A5E549B953A7FD288B4A045DB611E
+E3B2F35963FF18ACCB1C968BEEA2CBF52B3999AAF89A05320BB2E97F52CFE06B
+9F10E3A79865A3059A957F97972D80ADF678A36E2B586C101FC6AFA4D137C13E
+EE7102C9B8EF78CB057F8B7476F146E8FF5C897FD5503DD198128CFF7B5FB339
+FAD0AF0EA967F77B07B367A4AC9F668F8BED99B98E87FAC750EE045602D76C3F
+289FC9D97694C96AAC0AD1BD3FA94DF2CBCEA24B40F47B9B59E54EECEE7AC4C3
+A3F5D19160E4C1EA830D57FBE10D8D46AC5CA0260F22FAA45236F0F542BEA9C5
+5A88F878F68B36114E0573900C65E305462B22A3429A17C7A567694414DDDA46
+5F30542B8FD4F00F6C295B2E8D3A986B953D96822DB2ECD48E8BB1763434E652
+152EF3717F5E7FA10FF0B01D9F64E22C5DBD7254629658887BACEC0ABDE972EE
+67299FB84A05B3EFE22B6976DB4CCA384232DDAE38C31623A4E39EA2E82C1EA3
+BBB68F1A7DBF405DEC37CB7203A895C36A44BD2D63F45B3888AF91D37B510A59
+3C921BB44DA620892AD87B665F69F6FA510B071ECC403CB2BE2F54B3969C9E88
+713244BC97C1466DA8216DA7600C221E7E7EF5C789D2E12B36422023A03E11BF
+2790FD6062FE6BF62F5010A92F0A104B76E255A0975E04F6F20F760881BDA7F5
+D834D1D328B6EC19AA7D5E5678A84C74C82553DBE8BB5765E84F5A8789032143
+6020940B4B8D45FC3433D356E28C25F42D0C19F911213D85951B2B00D01B77BB
+A4C72E964F9D95422BEDE582A05CD52E03D28A996E6CC8FCD910CBAB728073F9
+F9FAEED5470FFA55930447C5BA816F826F983D53EC9941EC8364B3060FD74C95
+26D4F5CA753B574FD2FA4D1D333785241D8741B79E628BC852FDC35478C5ED9A
+C1BE88C5EE7302816E65C12B58EA16FEDD4672EB3E24B6EDAD5DCE263BA8A970
+350B651E5A9F3C281D85BC3F44EADD0D93402E36489BA5185E7D388974B0B700
+70575188BB610CCA20F081E2CBDA13DCC6F72567962ADB342E02C1E763B673C5
+F7384E24C6E1730A3A790D690A2103AEF88E0C1D4480DC9B25E5C8C9E1919C95
+F83320179B4C7C4A26D559BFB24D7D596FB73758C9990C451E77FCDDD17763B8
+9C30A9534E3CB6680D3D419D4B70B0B0A0D160FCCDE169714E373F65B7144CC2
+DB9A44E041211E1517D3148E65A2486CBE5E74E625261CCF65392FB4F3091473
+F9E8DF327D59A58558E5C9F7190DB577D5DC658F5E36258291C708B3D224653D
+064BB6079F91293FC733710893AD1C96169B30CBFE4E9D52E7EFAE4AFEE68FEF
+1AFD5E7E9DFCE8DE332B0FDC0514F9B3090AC85BBFB527FD8034DD33E9576325
+A8769AE09AF1BA792447DDD932B98FC9486B39E0B04DDB3EFB7A30DA0940B33E
+E27490E0E841E87B1C90E5248A91742ABEDC10F43A8AF0F9C5B4A4930B1AADAF
+01874B9AC3B8D0DBECCDA6CD7E96471FAA15CB7F8A599C5746327CE392224C3C
+40BD60AF97BCA6FF6FCAB2FEA114D7300B89E91C3BC92D5B3E2C83BB37992D8C
+72F661EFD0AA034C738C019DFB79BF40651A1A34BC1EB9F5AAF58F8B3DA32645
+24AFF8636486F08BC21533B5FF7391B0679A78DFDCB03DAF6BB7475A1D51DAC1
+EE4BE9B986655D1FDB6936445EF99B58B303FE79F11275EEA96A9F6808EA8775
+D873D1052FAC93769789C700F20EB2ED6D15676F6E563A769CA9298E463FC311
+83281483B1C953370D196727A6A0E66D32D9480AB1B6DCA77868C1A2D5DB6483
+5F31EB6B18EEFEF1CDC31533E69B0AFC6B30FC9912DC89BAAEEADC30BE14F448
+1A6B70D36A5D9B01799BEEA686066114910842D022EB464A9A1E8F0A5628BA69
+AA9A1925CCADD44703BC67A89F3B48E4680726DC4360274185CF3C8AB747A8FC
+4B928AD62B092EFE48B01E33ED756DB696171FDB775396BBA138E056F71EDAE3
+7A1E4CC272B8418114B0E81DE0BC43DB3C133167344488820A92DF10FFA26FB9
+65FCA2C87D302E956DE6B4FE145145440C83DB43A68F8B29A592B127BDF49063
+B7F11E155CD4CAE305525BEA56B7C412A6260426407BD892A3F2B444AC3421E6
+FB6E6425EB5C3053C5644666B80405530FA0012B54557327C98E0F4F064099A6
+4ACAAFC1870359C1B6FBE7606BB8A26026AE20C212210449905E628AF1B20490
+8CE908B7EF3E3DB551C85AEB0F7FEB6A8D215B97998E5DD9C7CCFB2A9402B8B6
+1770D4023777D4B45A73F471355353412C51D4CE71FAD1E0AFBD87B5F86307F3
+10D0B94F1194EFFB64AD5DA54A4200490F609CA8B912E149F8217ABB1E9EBB3B
+C4470E7365CF5E1E761AA1945044B225BD53D142F6588C50E0644740F7DD55E4
+8F73201E5354A8BC78339211AFC4935F44701FBA043AAC4BA4698E9D7700029A
+C79F992F62627C91EB855F64C4B251718FDA71EDAF082A0C7B00550949D617A0
+7071FB14F05620CCF2180941341D8E60FC88823438FD728A4042AFA8B853107F
+852F631518B61B234565291B5D5B89DA818DEE3AE3B68A2869DFA63255CC882C
+3B16BBA08FCE3632E57FF7A07F857A1F0FDCADAB39D77960BD827CCC8661A997
+648BF5BEBC0FD2286C2A112A8DEB9CCB6330A049170D5D68EEEEA011D3EF3EBD
+855236B9380087CBBB6BE24191F728B7EAC5B50F7A547AA0989B7C7D3437DBCE
+1669341264E290646F2C8C5A3ACAAC7CB63DC692FAAE13E9B40E8BD39FE16A0C
+1660CE66872D061056C04DDDC265C024BEF8B7E3C3AEE76FE5C9702002C28BE0
+B180295EE00E567FA2E5CD1638226D24A7C732E1BD8103B476EF5702768689C7
+D4FCD47F2AB94A2B1FBAE6ABF87B09E7713C773FB65CA83F7318035B332B9F99
+24A2C8897527021321D003AAD7C273E4BFA2710B9BB26C2CFD3D9A5D7ED1096C
+552D50028AE2476FCD6D12A5D0A897521313ED1A3A8456A70C16EAA50A3E6733
+6DC89FEC56AB54A579EF264377A103939D5EE00A90B4F2206D0023AF9491FBE0
+800C6540FC945199E20E945F46CEEA2E885F6800B9DF042BCEF4291A4B1A62C8
+6A7ACFF872B25FA3AE69E0093F3D0FF13A3313430C06F1AF94D500431566F659
+E8C859A5F80F5BD2E85C8E32603D3745628E8FE6FBC50FA68F9C3811A2BEFEA4
+5852CAE2AE5AAD3230ED050593BAD0A9581EB7B327C6916B8FC348F4C23E6FA2
+00FA28AAACCB3091C1D83F7BB88672A53A2EA3B8C7C24374E400C57F0F01019F
+E52D5C47F389D4C9AF126F4080F9AB8D1C8F470932BBECCEC72A9796F6E965A4
+82057DDB43D68298A00880D4C2E2496F26F015FD83C5549215753459310339B7
+6B2961EEEE74DA31FEC8E2BDDA42D4080A32372AC372524BDDA580EF6634ACE3
+128C69D04D890DCA337212B109585C665AA83EFE47D5BABC2627A86EAD11BF7D
+744176652C7F9497785A7A06A994ED8414BBE8B26E74D48CB83FA24AAFBDD507
+84A90195EA3D77BCE8C2BEDDD1DC52E8164DF15D65B916EBDF3A8A76849653DF
+AE3CAF9561AF3B705F75B9E5DFD6758DB65A2FD54683759912E0D0035CFBCD86
+5D2579DAAEE12528C23ED8A1A2F34CAD1CE8BA67D0B660E9281F247EC10F816B
+FBD6B9E8AAAA1DFCC4C9FF1C6AD05C0D776DBF675838C2629826D5337EED815F
+4268604A4EED01A2C7842FCAED2E37F7F39F980866DC5BCACA8616749FFE946C
+A0AB0475DA734C00D99912C544BD31F8A69367D068F0A18EE79FBD4D5385B8C1
+DEB92502ACB3B657A54C9BF786D7DC1ACABDF29591D77ACE1D4FE00E935D2858
+3733656C79DD1C174C26DD97D462B4323F33B410DEB64244095927C572FA90C6
+4C8B709C5B7E4386AEB936C2656B59AAFB74F9E40E680D890903458CB1B2AB8E
+6E629F88B51546877F7799B99DECDC13638E2765343988DE2ED33279DEC3FF0E
+2255A734F5925608991F068274CB1E5301C5B8623C5878851857B3E665490A7F
+FCE5A8DC0FFCF3D56BF55E4AB2ACC6743F52B59C1343A1C25BD46A6A3722957E
+24A6F4B970A594F67A09BADB6A7B4BEAD3FF97D0734470750FCE29807D315EFE
+F93BE16F39C0B59D107D1834FDDFD520D8A429FCDCA408C79DEB580081191B43
+20650B5375AECFC2DC500E3CA934AFA3D241FE7988892CEA42C8677DE18C43FA
+C3094F8DCB1D070DE0D32B69E2E1ECB4A82AD9E38D889D05418DF4E3C398FEA7
+BFE9B364A389B13BE713F5B2553ACD16C14AAE521B63E8A7DD0258EFFB95646C
+18226B01D916D41DDB322F6E83C3E3717FC113BF7D7AFDA2CC03B8175BD7DCD2
+AEC82FB156E051F2D87B9F12F81E1F43E822EE27219758B3E237AD772E7B1DB0
+19ABCE7BE6A2FC3C7DA0766FB82CEDBAFC19F7EB19C7448C1719C88FE99BCB73
+F7DEA427FBFCDF4F00E0FDACD080AF068F7A1CDE18315BD694C60B1DC71DAF1D
+1009AFC847156F96D9CD38A764D0EA70E5E9B6E19A2A0B80ECBB84CA44C137F1
+4925EF5766F00C22F967F9F68D7637DF0982785DABB8684A5525C6D23DB05B31
+026B49433392C8930BD9661B23C2EC0E0BC4F00FFB2587943DFDB4C6864CF1FC
+7152CC20860754204B7D4536F3C11460CD2626DEE88BBFE1CAFB5E62C9BA0C8D
+514629E5A25C4FDEDF56FA2CFEE1A648E78803062DAA41E3D2CA4400C74C3C33
+B77692A278BCC9B4E4512CFE8D71D53750ED0F7BBBC811EDDDAE0E7049BD916F
+8D1819A0AEF50E284BCE7CD48517DACB587D2C48AA89062A791DBA7549C22C0D
+2B14B2FFB48A05CEFA73D1F81BECD4BE921AEF860B30CC1FEFA6199BB39A8156
+1AC9CE55140BD9EFB3B2BCF6FB6645816F11C172C525D9E623FE2041BE9D41C1
+A3338195A24873E110DE875B1E4FFD5CA3CC44FF36163C867855620EA60319B2
+27A40368957F81B38F6346C45EEF35636B01923E356F2F4279001DF3FF52BA26
+B0C523895515658EE61DCD016A839A71ACB5645B4CEF3035843545920F7F6624
+B414350819CFBED577BEC9CAF1465EA75DFD39318F02ABF8697621325964DD46
+E8206C04B7C5285DDC91EDBB7F76DF9C9448A778F4D62307B2F042B169053544
+B3B19D36FF290B4BD1B807749BBF6077BA682539E07B846C9BEE668BC5DC5DEF
+CFAC349ECCA59B1A46CF89F2C410C648AB50B63BC616BA3D448B1A08A2C10BB2
+CA96A7BB2A498E7F00CFFFAC03C1BFFBA166D4948593ACEFB6E1E6D586D24F58
+43A02C59ADDAAC725D06E4C4EC1E1F5B2203289908605D950551C23A71E12403
+A443576CA8BF7C365ED9ED2AC7FA6B17A786DFD3731967B43B8715028241DA09
+934CD93AFE81013D9642DFBA66EA1C024FC804ED884088FA398F065F2AF53163
+6ABC66A18AB971A7B494B6EE78A12FEF18EAB42529A1296D054ACA5BF2C386B3
+5DC802B67E362B2FC35633487F2C0FC90333508BA50DCA2EBEE2FB939910E7EC
+128B7A7AA0F7A7CA91AF854AD2505F5DA70889940C4945BE229F6C2ECD1A8D5A
+B35F475DA0D33125009C6C3E7730DACFCF279EDC74DFC88630342D1D81315AEF
+884EABB7E785653BA2463C48708ECE70A49503575048CC768BB8F13FAECE7FCF
+29FAE1045C5C6E475E634DA1A2128A0D16487BF3D62BBAAFF6ABE72FF971C361
+E5B530D6C6977137319321BFDB6A526B7AEA07EB6548F6FACAD54C426D3E5207
+0443CA8ED660D368BF42FA1107A9503F5FCC4EB8D4C7D2CE580597E4A84EEA31
+135D139540C7D5B0AAE65FFE3475C1F2DA4318DB4204677B4C30652DA10155F9
+C1CEE50DA12BF2F08521A17641A2F5541EC84195149392FB34E900EE8C130A72
+A06E8D5C1C3012486BCBE6F82A8570054C243ADAB55F1BD0A2AC1D73029F6E0A
+91230FC5BD62E7C8179271886FE2A3D0A4D55D26A953064E16B99189D714CE51
+6C1ED25B47BBBF5494E1C788038B82BFD0D6CE9DB60E49EAF500DF9ED431BE3B
+5C5E93A14078C7962DCCF2A34966BC16EC17989C10D2C74FE0DC9306CEB61DF8
+A42FB761999A3EB75E31431F568CDEB0A3CC8C5FB6B76B8768086F20D284D302
+A144E5CDDB303676D612FE7D749FAF7E0EEBA5D5FF48E3CBBE5046131A8A00DB
+21F4A2C8788781CC2D3ED96148B7C77CAA7278CC32284B2BC83BBF542172F186
+677F635F73216E1D41D2CA802498C469234B79AF35BE521DF9E633293B1BAFDD
+3A0B043626E3CB0EE9072FE09F90B8ABAB28F60C42CD3F2323B7BA4E4F9FF6C9
+BEB3D0E12B74799E2321A65B88840470446AFB66E7B9FD92638947923F8942B8
+B9182715510969377DE1362216F2EF6B96D4622ABE65EBBC5F7FC397B50DF682
+07EEB73A649383B86EB255B9145916EE2E8C326052ECDE0EB367DCB62F7F88B3
+6F9F23853CF377EDF5F4B1F0A6DF99EF29F21452D2628A40F589BBA831118DA9
+DDF19BB85E5AF7D79F5DB4015D90F3AF189E7D5E9E3585B9D444218B889366E5
+7B4B8EB34F4106ED4E54EF08F08581EB40A5B49E214A86251FEB131BCB071406
+B322E962F9B14AEBD38747B44F976B30B184AD7667EB5AE3EBA6744D6C8422D8
+F4CB40C3216799F46067651DD21F6F763A59E93B9A67484E6CF9EEE3913B6687
+BFE8E68087D287651AA7666BA83B0D271A422E3F0FE0C2942AFA64F71B8237F5
+31C7F7D6E5D4903D3CA32C77781BD8C959FD6DD1BE80C113B59B39F1941E8770
+BF7F8B7139ADF77E2CCADFD99E2A87A5C10802D2D6CE3D9A3830378BE37D8903
+B87B38EF25C49FE93C797FEF7114D4BE3A58555F701CE4D8BC2605CEA9725E08
+B2460459E5A4CE44793FDF3C212A6B5909B49A4ECA55F53AA3B9AF63A2DDD339
+9023D61FF6C29721EF2B49C89320372059FA33F25CF6BC7F64E3B4EC7D7527F9
+62A8FE056259BFC788F24506F8F6E9777B693AA26F646A22F3ABA85A6FEE1B41
+373D90C3CB55A474A2E5EF80A129F5628CD064B590DEEE7935DE9AF5D68C622C
+814452DB304B52DEF5C9490B1366BA1834AC5B27DFF17CAA5722CF783AC8283D
+B84A3DD19587B204EF584499E78DB2222DCCD50847959B4820CCDC092F88693E
+50B9DA33FFEE72C235520F58332A3725BF62BEB005D36FD3CD1B2310B2982A34
+A095ACF013BB5C340A21B4537A7BDCD5161377A4818CC44D8A15BE7CACC03D33
+11CDF7811E0CF02F6F3213D3B598713F2EDE54E6857A526879C920D085A01997
+8DA06915850E5402A4444AABCB08881EDCA2DD068E1455BF9A155C54EF315FAA
+279D726F57FC86300BC4D9DFCD4D44EDFDDD4B00DE34948028C7A9255B931CC2
+77A0FF40F7ABEC709B67C6EADAD9D24B014DEB4C342E5F37E1CA26A1999CFDAF
+50D8E76F1715FA8EF095B88D9A8DF4325572B26753F763F264DA8887E4E5845E
+2A01F86149EBDD9CFC21CF2852CE95386DBB1E4DAA2113AA1E0C53746A3AA5F5
+78570500FB89E376549E282E2AE990E72C0E77F701FCC977868ED3FBB7C9CCCF
+CD28795A80AE8787EF1D0C374297819A324504623E12688B08E4782B18F05C75
+2E2CD594D0E6C10B002AD61CE491D4B95244E83DB861E36D293C0F556B295FBB
+8F045711CD606D024F0F03603629F3BD495183E821D0A1ACD83F3376B62D278A
+FFD084EF020A119836EB60D0F8A059BAD8D8CCE26A37182E7C89CFC2AB80C724
+275E921332ACC5A6991B36A2C7828B632DDDAF04780086F84E1A122461719992
+061E3F597C8E6DD8ECE708251DE0DED5DAF913AD4130ED89DD271B17C556F466
+A2587876F7954A9888751460B468313DDD88F267BE6C5FEA492A6CF1365AB8B0
+D8E872A625799B9BE1859AEFAD98B6F41AE33D0CC069BD36333819995FD9B510
+715BC8AC70443A107EB2E34809771DF24D3AC09D47768D3202D809B023FABA7D
+C6B8CACBEEC4B47082177995C3C00D08446DA56D527D8857E5D3342EC3C42DFA
+7E35C992B8C2A50E7374FE57092086613D5A3B4567A9DA3758F48E6817CA3C2D
+BC552BF4A17E92DFB106E74A2C53DBEA13481DFB9EB64422F5CE073512B67018
+46E902A52D5AC8A943C93B1921ACBA76D6DD2DE9077C280E1E6E43ABB9DD11AF
+E065D8EB102BB53A37F6B491EE341CC8D4D3AE311F122A28F7FC5481CC80E119
+EC3E67AEAC772AB31D41151AD51B88122325456163D1E84EFBC5CB9A55BC4C15
+7A2D56ABC55E61A49311ECB2C3267F7EAA3C284A0135985EB5E2D4113BDB8433
+123A4A4109F6926D9C38D502B5659AF97969C3160BA5E6E32B95AD5D6855D307
+89BDDE727683B2F05D6D9E74813CAF8038C03C574183CA79025D33FEBD68811E
+1A3B42236EE1CF60614237538CB2C9567612DE1DAB1C864828B9604A5D4A52DF
+D5012F80352DB0AF93758E8DD4ACEC077160D74FC723F6878B2556690E9ACC91
+5B552329E06B87A06E733270BE98C16A30CAE3A798CA80E7A9C3B8733A9428DE
+0F4DAFA656E6D01470FA746BB58E686846C29933F9A48932E6AD3A20C7A0FA91
+AA45745AF05ABC50D77498AF81E72D0DBF7D6FAF97E5538673C57A6EE39776EE
+06BFD30F67A57AC796036A5394DC9A8C75556144497637C28F3C56DBFB21595A
+D2A46D6C4A0B63508A238B97ACB24499AB5540851B86E273B7B2DED24B458DB1
+5280B3F9040C08672F7DFDC4B69C54B92EE3555902BF55D64CFC95A9DD143C18
+FEEDB1BEA96762AECDA9DEE705AF2DD54C619328B9A26D019984DEC1EE34F30E
+CA4EBD5A4AB2C8547C0EB264D47943AF93E281A9E346B6346B809363CD7D67D9
+9A8D6A2B1C109C8F226BE11C405F18E0197A47E44B57C1CBC8CAB957A2F60771
+CF8DAD0E361FF6891CACF5672997B0357F9A5D16D424F2B32A0256210106B3B8
+160B3CF0FB7D28A84FA861B0210F383466B6E69DA79B59D95AA05D608DAE9D56
+7A05E3CBBDFA558C8F3A5D5AD9F70AD60FF059AD26041DE8819EDB2746DAB76A
+6600D7C708F08D266FE22609BA7462A9378E691E175230E4D4CF6F1FB40BBCE0
+31E34EE09023FB7BEB557267986637DD5D9C70E38C14E485BB6CDFE0826F9DFF
+F5094AABB6719C11474BD877358C603FE16B3A26B8C3CA026E6B29B1868F2AD6
+2960CF99DE7E16B18D3480F52585F39D0B45574D4A0008BCD49C3F2B27930B25
+3117251BB7116A23C586F7B0706F7F2BB00611C4FA705CC11783E6A1D868E1E4
+5685B46356200BACD8C9851AC613169CDF40BBF1B400E21137D00EBA1E782E97
+BD6972E405ECD84202049433393B3C283D44AF4C3BDB3D1B700F43AB576B4C7A
+195500FEE676D1DE97C32859987267428884E4E58C2D8FB367810741B0FB7D37
+4F185ECAE1AF834069503E8014FA13225152CBEDD5A1CB8895DE03E1B1704892
+23D2C13F5EE53AD95EBE5C0AE07FE2DD36209897001FF645DB1276FDA49951B2
+D319D63FB045B477BE528C3667F0CCB6853E0D31C77ACFBED46251BFD60C1321
+D0FD450193208958E91C05E9518F3E2FB9D4B6AFD5084ED2C13DC3E59F85C853
+10AB3B7706863D6056954E6E89A23D22FF9D3A868C7A47FAA92C95A5BCAAD7DA
+0D145FDAEC7EF719C077D8FFB191CFE21E87736A98965A4A4AB2447B607D02AE
+8995550F0BCEFA8BAB7A197C053F69BBA12CB7C01976219DFC6D2A49D415EFFA
+66F17762549A09F43FFEC19B4A6CEE65A6903702F1750B263C342E5CD8D26F9B
+363D9AF452BBB2B0D5551D412872AC8F781630B293FA0B96FF49893200BDC53E
+32CAEA43D4AC2D01FB9212277ADB59C864CED023A8C30665A2BFD059A1031D86
+6410CF5A2716F0927A8F9213C73681278B8EC121E0AC73D46A704D6B28D7B003
+FD075F4455CABF65FE19A91768983B2B3FCD40AA0194EDEF3C94C06D2787F469
+BB045AF387183D001E980E05859D316821023CBC205C505B11DA011D784B7F3A
+C47E20AD8F87E499D7D77EF84C75093BC67969E7CA8714F55D7945F799D6A640
+E6F00FCFE28DE659F36F947324DFF4E79AEFB61EF14ACB3FC078873A17FCB5E1
+D3C40C11B5A4327CF96E07F5CA9D62127553EE94BF3C148D9EB83353E9DBFDFD
+FF9FACBDC8AED20340D2FCA6F3866DF72EE9CC880E4069DAAA2BA5A845DE7FB6
+CF7E686BC5CE9A4B6D37890D902CB7641033A7C1B7F974828F4FC8AF251F7985
+E576958972852E144094C10EDA802DEE259F7437CD26A1C9094F87ED0697D713
+94BF9E15347EF558B9D40243DDD348C7FDC96A1FB6D362BD9D955BAE3F6A2353
+84D89A27BB4DABE3CB58A9334971E39215DE41B4DA77FFD32B088EDE2E23A26B
+59273A7DC587D70CCDF43BC64BC3CB11B6EF90042B8193C0C4E66D9C7BC7F459
+F8FFA1D733503659A2C2BA42C0A1E262D15E97A55E97D746455266507B4B2913
+EAB47632D372206F3F1CA23939A281F2CDF5E2DFF06B94560879BE2080E2CBE7
+DC93A7869391B1F44A4466B38B2A4A8A8F8774D76B8F2449435B525F2651791D
+890D1078533B845F34713FC87A34153D1175B40B7A46F2C228C6405E4652E635
+D9DC320111AB934184B34B30A946D74D30894AA99769BCD213FA3494F8C998D9
+BE4501663B8CA4441C8A7A0314BE23D451D19E1ED15831DBB29180E023A989ED
+4A4C4C92C65637A9DEB914179A4D3735CABEC726E9F431367994E32CA1C83541
+ECCB0D463DB8A0316213A3356D7C654F9F5A4C57260485D0FE8ACFB6FA759A74
+BC1C53F32A147A9F0B2264AA8CAC642D6D932E462D76F113ED2BE639DC67F8E9
+7CEDAC5FC2ED44E4AF3ABB083F3D103378B784E9B0D88DDC98160629B0731AFD
+1502AA443FFF69071A8C6E6EA0A309893DF57E550C270B7BA271234BC69DB3DE
+7D7A87D9A8450596960F05942E390BD546A9C10501057B96009548EAA8FA3DD9
+DE5BACF5AEDAEABC2998F34BB48497E022CF71C4260537F19A7D38679558E405
+EEB015B7BDB6092553644D28857CF4FA28E18040C3E6B8DB88289CFB10FD86E1
+99D4DAF86714EFA28E61FBB3010CCFB8EFD7C9B6E2B759F276616DDA9F90335A
+388DDAC61C577A057434F28CCFB339902BE256D21F4D52DCD450AA5B747D7471
+8098E4B634907BE1DAAA43FFAB7E4AA8705E76E9ED086CAF7D73375E7EC6626C
+FCAE8CE2AB754C256B795BE48428076BF67D614F3FB28AF32DFCD73F17B13E2B
+B127E86C5726769BA5A5D2045B839E4FB5D382E93851E839D2C0FF5824B72C84
+D1C96EE48AFC44DBE54E1844BF709BD50C0E1D456EF920662D905C823C912A13
+018EC340C0F4B508F7D8AEAF895AC0CEE8B15A2620DEAF8B4CDCCDCBF40D626E
+43CB4C280366C106F7951D505973018D307D9858D32E7360183E68C226060B32
+A342BF4CFFDE1AD9B5111CB80734C1E625343148FF2870D1D87DC70E9264E9E9
+BA20D962DA30CB7A2755B510F86899FE1430E46E76672E30A1CED0AAAD9E983D
+4E3911BB537D48A168F7B3BD46592FD4B07B9CE043BE9DE2148BE10BF8C30C68
+76B76138AB34805C6D8B6454E3D5A830407A51B9E1A71DB17668E7A94BB150E7
+BEAC13AE7363DEE94E696FEC3627958DC530490FEE0DBDA1ADA7F00848D3C3EA
+683757DCB8AFEEA2C95B7B27D8EEC5956AF8E26BC8CFF14DD8A2E6A638C5D6CF
+E128C7F8BB3A3F27EC922041E857CB68CA824DE6DBC56F68CBD131AAEBD6B0BF
+4189A1AFA1108BC42C2697B3C24AD8587EFF5C8B46A995CD881ED98523FC98CA
+6A123D37FC9D79F0E9A6E6D9E783D8826A0A07A9EFCD563286710FA3CA4EF170
+1B42B440BEF8ABA94FCCF86F0BA118F36F80F6BFFEA5D13CE0FF328CF428D437
+EA9076A01A151C0D6CA5A7B8410815A88DD92BBD2A27EF160F39CAA7E0A27549
+EE8E1B301374028A8C30504461A0CE8CF9D1AF3BC27182E4FCADBE153FC3BDCE
+04B9EF6B6C383FCEEA6DD9D51CFC360A9DDA8F18F28175B3AC453E4387D9CF90
+28B44827AEB043F2971C0E6C852882734C9B790DF14ADD37A55E807068431ACE
+0BC67F4D03FBB3C611004D0C1E1B9D5CA572191A13820DE990F029E1EC07866B
+9307D5B77304C9AA9D987D8E2CB1C302F4EBE5AE1A18EBE36901C6D94A3B4D48
+F31301459C87955B6C24F48A98BE883BFBF526DB1DBFAD1D6B23F29E6C32B3C0
+CC56550FB658455B8E3F2A76BCF1EBC9F6AAA1200C428465A22FC1C748CA45D2
+7427F87D506B90D3C676AD753DDAE196464C9672614D1FC43F0DB91DD9A00B4E
+9D8E31DFADEF3AB6518EA1C7BD9BE20AC8C66D0B1CE9737C338E02794640F7F4
+F1F2E04CA39971AEBC9FB699ECA8F07569C8AD9833E69DD9EBAF42376BEA1961
+9D3312A8620A66BC68607C0B7D723DEF61764B7CA43EBA27ABA5B0F518F40B01
+E713AED7BA6E23BA5D866E10638DA78B9BFA68757921C9E766603F884C18E76F
+848CE800A1A1E6FADA9E1BC717AF098446AF80924915D0AB86F4A3615D4FD49A
+A5A844530155E047DF9A6F878677C12391DC8FEE91C90709E3D06F31D10952A6
+5B0D30556D0AA5F59DA5637BB280842DF8720816D67F465B48A063BD606B536D
+760A402075ABBD70940DFB7EDA04B55B5E36D2B512A6D01E7E97FC90D708EAB6
+0F9A77ADCAD63063C5837DDDF800A4D407601B15895E83B58359821426E93994
+019B73A5FD9661550718CC3B2F79E9A6A0E7C4984EC1426C0B8EB86DDEAB3FCD
+D1B467FF32005EDABE59166D2E0564CCD1AF482301D2BFAF138F88E2FEC6AC7F
+060555D402304EDECAD793EF9F779F6AC52B1AF86D714F5CDF3C574592E8C742
+23204EC2C4C226968B8633554349A2C0A987E2812B8CA402A0A1BC7A16D452A5
+76083FA380D36F227828DF913C468AC69C435B2341A590AEE61A44B1A00D5409
+B836D6BD6670D5C02A614241941EFF04BB09366E4CCE644F8A3D2CAD5BF9E445
+BA296EF46392ECA30976FC566CCD4354D124DA25D9708578214DA5582122D8F6
+8EACCEA4CA8F63F15CAB59FDF29AEA5B4480023D6A61878B43B0F9CF1F4C6792
+C9B0726B1D5162E665CE4F89BD724CA7B957DDF865F6833BDA3736310595F2A8
+58182EFCF9911455FC934CEBD36C3D6E258D948AB4E28D225BAE6C73D7F96E9B
+EE7BB7FB24CFE23558DB7050113CF8FAAF62E6DF1B05064FA99C2016537F4A60
+0C80147EBBB95DBFD8A03B125C464E5917AE0F11D293CB75C8FF18322D788FF9
+61593E2CF4FFBDD2A1169A37CD3483C3125A9669231592B85D80FFC5FAABBB79
+3E7F46EA5B3F67B0B5802642CC139D752C8A9FC6687CD6380192BBE2864AD792
+F84A826F9052A4970DE4725B125874C162F00453A685A329867D237E3FF253B4
+0B05384E0452602C3F021E47F5B2D680A5D120B7A7F4E261B1598DA4B55B3AA3
+BE47D2C7FB46780153B3A7E124BEEBF25BA598021BF943DDDC3CAC5CC661FCD7
+F78EAB069BDD1531684BADB59CB3DAA544A7F38429104399FFD147B2973E02BA
+5D7C964A69650D9C5B1C3806A9B0F33478B9B2D8CB730D4E28BDF9C35A0E015E
+AEE3110714E6E09D51A47EBE4DD5C1A4A7E608B0C5233B85426B1696C88E4A1C
+56210C41D7B778DFDAC0708EEEA185E37CEFDE917728E9E2BC9ACE85CEBFF12F
+702AE7B7D0288FD933ADDC3AC849D7352613C41BA4A7988A08D24DDF178E3C48
+1C7D348E7F5D67A764FDFBF5FB9A20195F4C806ACB59A47F334CE16B5CE3B8AC
+FC951D49170D29B662A7A6EBEC46EBA01C96E85F8A4559CBC60D675EB6E1D7B3
+84C917104B318B9AD8CBAF12CFA478590690265DDB43198C7B7C1C6D5A23DB30
+11C1D6AE610ABB2985CB9D00B91860963C316BC83B9F2747AA99CF8EC08CF47C
+D599CCA471FBD4C2059F8EF134050CC6247E9E56FD480E9B93DC083B0F16D673
+7E0A1096C30E9B8B0501BB25516B18471413428F50217BC2EDFD22EC1135D121
+DA739DCD4AB3AFDE2AB9407887D1F23CC5778C90D5C32BAA41A094968BB78F81
+FE42DB18820C03641895AF1D998B2A0C5C1543FDF91D6562A7D63C136C47AD42
+C1B04F7A70393CE6D13D313B63967BBA42F356AFDC81851BA94ACEA54ECAF0AD
+8B6D4BC392CD8B4C71CBCD1B31A4FFC431970C88ED7D003EA9964F8829FA69C8
+D7BB49B7AE6571ACC901BAECF22D72CF86CE1AC1D831FC5FB5E6FBAF959CDC2D
+900A773752D320C730E4A8D8612CDABAB22B6FE49DCA590A05861E2421541766
+3230671D0722C743024A8D143E3CA1DC3658F10B9779F4BB5859BBA03E03EA43
+68F9B65C04CD618BF61F0110EFF9DAC63DD889230010AFB6EADC13371A34D3A7
+CF3879D64242EB295ACFE2A2A7AA7D5919EBA50C38462BD9AC72160A24CAAA4D
+F467AF4A4102D2C291E4B80543BC7D72AAF725BE15A1CD8499ECF99B73105E15
+53F2E4FCBFE1200A418A2207BF2F9D9BCDDDB62500F8394AA90E615D06A805EF
+BA1006E2C3638FF8AF1D67D3A02F3E5185394D4D83A8E0502759A14F38DB9523
+1059BF230DFA29CF3020F2380406A8DBCABC40B50833E5E5253B524E2A4DE292
+49117835FBA70CC6B1A7E662B1FF2A5C96AA9CBCBBA454A623CBD4FB0FE35578
+3DC8B468AB579AA8D154035EB6F30F961412B5AFE7074F18AB9019AD2E600DCE
+5C8376340B88DDFADCB4B1C46D4F63BBFA3631E11BA5DF550A4381B3DD1F1D11
+F47DF28562E706A080E38B2E61E03603694816D50D9AE19079228882B70AB605
+D5D4836F29B382A61683318A3442770BB18BC376EBC07BBDE01ECA8677702913
+2688777C8CB4E87B6692E5E86A54A220F927C3CBF885A78960D307B572F57650
+8D817DFB1124BDF3803A828D64EEE5EDC69D3568EF04D2D8C0285568817FA562
+08FDB68E1C0B822668CB706C3700BF0C30D72D048B943D50B00889A33003B446
+DD7F3E4B35F257B0537E91ED175FB3A32895457989C018A71A1023E096B539FF
+1B09C66F77EF13F874F16E6F7D5BFD6EFF37202730AE5231A29B4F91B868C93B
+CB3D9F38159EB9CCA2E1B3CBF296E27005DF9884F71C733BD4EE3F144D37E20A
+65262030DA75AF8151F141693F97E380C5733B92A5615351E506925301308872
+09EAC5535D6185652AED2621F4E0D3224128620FB6D9D0B99C3D31B3E20F980A
+A43A22BDCF8A2779BE4744B76E908354589E1D69A7691884319FDF889A288E89
+696E5FEFA1350410F0411CC4B1FA2E4A767A662606978716754FD44FD7161DD6
+7CAEA2734F499316BAF6E665DD6C85980CEC818542DC7460B336097E25C47AAB
+F26FC408465B034EC7173FC10CC7FCE36A9D74786BF2007D0EA403D3F8E90FB9
+852B4D1400ED16A4B945C3426617EF47A8118551D0CF6B5E95C525FB8A896FF7
+FD7FABA141B597D27499B7D7D97712248CF0DF7976BED02A5D564D59B23F4B18
+9F13FB0DC17334A496FE3C2C84F4CFEEC9F89B14A7482AB324DFB201B6B72295
+98EFBE2C8A5A58FB4EEF33F4888773533A9D5D73732662192B72A1D5102E2F5E
+247C9282EAF1705B5E96C9EDC36111AD5FC2E1FCC606DB766775AF00834B2631
+AB76888E6FF3CD6BA444C804770463EF3F5014DB69D860EE563CBA238F8DC2ED
+3B5948A27A0D02033850B4B49E15EFD202B0B3ECE75C407F0843FD84D070344E
+01D1462A8F7CD73954D75D7CFE22A8F4B69185A3B3081C1D113D9B2FDA91AB0A
+5D3FADD335B480F61C6A5C25496F3FAD35449A156A23CCC9C3D5BFF5F1C1D243
+607E05B2F81999337A57A673026E7716ABD0395134BE23DC11484F898D9DC7E9
+68CBA68E60DD836462767ADBCAB8F3353778FA7B976E01458064B51B5D2F2B53
+4E26AA1EB608D072089F858B1C7A7E1C217C8872E44CC5AABC5DE83E10C3986F
+E5A484B2EF6D8B05F70C499BAF6054C05C10C1D45C8FEF8D493968F065EC4161
+B8B04F8588F208C4902D37520724B2CB0299D8120D11B836F8B301229BC57CE8
+3DE15D7DD8D829BA7A7F3E39885771A4469E5E4390A60C295926AB828CD91058
+93832AC0A6BDC8A6B7
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -439,25 +845,41 @@ CF5D41FB9D02F2A8835EA35CA404CB9A519A310B1B22B23DE56EECA74BC6C040
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
+{restore}if
%%EndFont
%%BeginFont: CMSLTT10
-%!PS-AdobeFont-1.1: CMSLTT10 1.0
-%%CreationDate: 1991 Aug 20 16:41:43
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+%!PS-AdobeFont-1.0: CMSLTT10 003.002
+%%Title: CMSLTT10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMSLTT10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMSLTT10 known{/CMSLTT10 findfont dup/UniqueID known{dup
+/UniqueID get 5000800 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMSLTT10 def
+/FontBBox {-20 -233 617 696 }readonly def
+/UniqueID 5000800 def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMSLTT10.) readonly def
/FullName (CMSLTT10) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle -9.46 def
/isFixedPitch true def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
end readonly def
-/FontName /CMSLTT10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 39 /quoteright put
@@ -499,212 +921,371 @@ dup 119 /w put
dup 120 /x put
dup 121 /y put
readonly def
-/FontBBox{-20 -233 617 696}readonly def
currentdict end
currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA0528A405DF15F03DB1C3DA8B850431F8
-0E5F73DAC973450D1ED0530313057E971FC7E7CA88E61DA6DB9A5CD61F0F76CB
-4DE9105D0627B8DDF51A655098229920CF429CDAFC3F7788C95E7AB30E84F840
-8CED52E98DB4CFF161D2E62B0D28CB8B0AC82E7A8D2C007953BAFB3056D66079
-8064956E257D31C13509FB81A250D9E875C77A4E91CC49E9FB3C0718B2F691D4
-B4A64F351F4DD68133DED7629B0D96E5124584A16FD2AC7A3EB244A934FF059F
-ED7297B0505F3C2994AD66A3CA5D2728B034DE94B64A8AFAF341601BD4DB5858
-C9950A8BB9C598B8960609F48116ABA8C007190AF0ED335EB5BF61BA6871FA5F
-EAB5A26AEB5C7C352EB80799CEB983F19EEFA801093F62086AADD0B80BB6580F
-2CF61B1390FA56DFA1A0B61C58DEF96BA767A8A37EA44730783C600706606C60
-4EE74EA99B7C0F8E2525C8847F3D31907C3C483EFA98F6C416B6B2C343DE6370
-52FAE423008D086A76A1FFB327CC7FD84B1C66B203A4F41582F4599A82F8362D
-38108452EACCC937FFC4F3ABBFE3628DF51367DA6BA3F6826FC6522D6AC5E8EA
-00BAD300FFB6DEDAB93237704202BACD030AA824B1E97C0AFE17FCE8C75F4FA0
-B8A74329A6CF1788C7EB34DA7307411E9AD7ED8D6582884456E06E033B4FFE7D
-CD4DD8B06AD01340CCCFBC382C18CA451E4C886B01D082FF8CC5793F4727C3DF
-B52B4F1A242F31D1EB79D1E39A1D4FD13D6C5E2A42AD4B4D1CC4EE7BA0E5F80F
-802E5AB57EA15F4DE44D82AC408AA86D4BF58EF967FBC6497BBC7F017C0598AE
-32CF865DFFF0FC7FF9E6DCE9B5F2F4C7491AC674F46E8E7660452CE0A77C1EE8
-00DE382ABED85350033F8ECB97398E4E0A75D4877A107F6A909D0C76D14F9A96
-8A6CFDE3FD9D79B6FD82693A9F354BD2ECF30C6D99F7AC522F8D6C93EA214F7B
-3D0ED77F042ACDE9414264C0698E86398562E2C640DEBBA0734AB4C3ACE3907D
-CC79E6B2C6C3C3F9B01526E8CD98237D4A9B403FF8CE3132222FA60C196A19BC
-A2393AE6935C0F8B67FC1D1A12AA74695EFC77DAFA2804E0EBCAE77E4B5CE103
-A0164B7AF6593E58028A8A8A5AF4F5EC5F7376330432566F458AA2661A6AD0AC
-B713047E21FAA80F81C5DE30E1358773FC039A6263DACBF89878169A5B6EE0A5
-BE02F5DE8802912F04D373F16B2E4627D54705ECCDF1A43DE29C3BA73077BCF3
-148E0FE06A4DB51F925170861C43F58168AE85CD478CED8E811821DB638BCFEC
-A9FBD9312B6958E3A3DBCEBBE2CF78B52D963A8CD0013428CF3BB3C8BE792496
-D4C6933B070E5492C789A97B7E3864801AF824C4417BC42BB5E0AB897E139CE9
-86D59B189E90F7B5FAE69B67D5A4C797C7335E3A3CC84C92DC98B165077E48DB
-34F90A551B4CF387D06A08A637635E2C758227956B880C27E6A6048D5A75F22E
-ECCE6D87EFD432983D76E5266950DAA186B89EE41798EC19030105A364B88351
-4CB78AB2AF4BF4E379AC857261D1648BE32B080DC760B01EC9270FFD779E9074
-041A04A3FC130DF2B7B8289BE512DFFE93A62B77529E490C9017808F1B1E9FDC
-21E7CC5BE564C03AE602FECC60B2BFD0CD3ABB895B4AC3E3620DA7260603B6DC
-A918321A58B20114133FEB1AA7845E8ACD966FDA6A0D76232FA4D0E3ACB16725
-070D6A1AD1C12C4FD19CD64037D8A12A750ADE1E589B38C70A1E4CB163E20BA2
-0FFC466D1452D5561C23677E706A588DDE184EEE001A78D5C833DBD34E2F5828
-E89006EAA304848F2D932C5F52E7F546E18CDD77AEE1D3FCC1A1CF5DE08A4FC0
-0AEFB3FBC66C2053B559BCD562A11FB06722BBED6581D9394EB3F36A0CA220E8
-5D09B80CF21A02E44AB75FCECEFE41E2D1A44435936AA7812B4453F4E31AD6D6
-F6160A2EC199F5AA36D64EE247B072BC58E5F9C7D95390E45BC894D7037D861F
-791D339387CDD95EF7283EC409B669E10E949B7C659CA1CC582EEEF4F38CE080
-B2432908B82EAD945FCC67B5D7579A1BB2D5EB3F05F7D32BE415F1BB43566F03
-B9C2B3CB2A3F518F30353F81BB517B90C2278B8ED8BC671370D9ED56D36E00CE
-F2C5B1F7DB19BD3140BB2D7EC7D5E3DDA246B660510F93290F5FBF491F4DFF6B
-F5428976D5A0D7013CAE6528B070667BF297C45716593781324820C6F8B4AA7D
-134BFD082129C91A8E10D8EE59B8C6B55956AF59172F07602EF541470894E46A
-A540FE3595DC7B250636D25A5BAFE9107ADBEEB453D4A09C62638674B8F841F0
-C3CB1E3656C7FE9518E318DD13C37B1E7BB57A10695F92C61800A82D9F365BCA
-4C0D1C810E3196CE403E16F71E310E3E658D7CC5FE8515322456B252C4C5E56D
-807A2E058291BA6EAAD224D49773528EF813556F539CCC84432CA61338C81E99
-88AA24401042751288CB72B695DB05D16AF6FB10924E2D5D9E4397A7107F5EB7
-DBE7DA4EB66C2A9C67A021E6CB0DC31C58A76BC8876379DEA4B6BFED86225990
-99101A9F14EF5B0EF55BD4A54B570D5037C627BE1EB66B20B7FDB7D38A3BCD90
-FB5803DE8B3CB8ACD1D004D26D277469A1359C9B7ECCAF475348DF4B5094F8B7
-9C0B573D161B0C4439694FC196C475B40B051F1E8A64DAC8E7A2C18411E6D7C9
-7E950F1EA4AF91CAFC554A22A840C1873E68DEAB9120D7D9BA8F702F174CBFC9
-04DD6A0567753E97CE5E7795960B4EAFAF76037E54ACC8B9D91A06020E0C0AAD
-DE9D2B3408948697A3D7C8F05D27072F470EDCFEDCC1DC099910622E84C0462B
-31392B98F29CF0FB1923D480A5AF8616EAB11DE1B2497F7BF6AB449AFF5C6BE6
-AD22AD624BF84A8D59187D26F7CEC076451AD78DF28AEEDF41DEBCD54AB2E747
-3303A61D1A86CA6DE7CC12F2C8B97F77FEAB8D275060A746726F20E9E5068FFC
-34CAF97F3F4C41FCCD5F71D333C4EE913986E4157E37A4CCF8B1953E1CB23C52
-36A9BE44AE0349BBA1114920DDA315BD99455E3FF4399A645A7ADB43184BB615
-3A24D5138C09632124085CEB005DE1E00CBFC15C5A041ACBF1B7FEA933E687E6
-77FA85BB40D82E80C96186C9CF295674025F58FA1E43BBADDCE1C60AC4F0E017
-611762CD7CBDAF43659078BF62DDD7D249BC9C5FCDEB06D708AE56DE87490681
-E5191DB36D26A1237A2A150DB03ABCFB0EE1A887ABB92B42FDF25D02A0CD2371
-0A2B5844810A74AEB45836EC19EDD6090B5BC95C258FFDE3E6FD616B942C65F6
-3C35D8123E06D064F4E3CB3B98E38B882836DDBF3752AB1EEF2B731508791E22
-0A67A82EB13058865C6842F61EB43FCB26F0D4AB2B8FC8753B1C6CBD134D8C3B
-030386CF236891C74F756F357BDEC0DE483026CA64FFF573C1AA438FC35C43AC
-C7501D0E052B43545B562D80192C53F8C5261954BF4429C353AF469B67B6BFAD
-37E10BD6430500C6BF756AE206600555417853DD51CEFBEFD0D30A6DB02A008C
-1605208250E41485EE0CDE7F0D710D4B846FFC34D31469FB141A04BE8CE53C27
-0DA139C0418F6A331CE817609E80742AC8BF3A20FF11B514B3237E43F1764987
-E6B4C0C7BAF99915F62DAE4C22F59D3CA0CDC6E754D33DFAF9D34028BC2B0EB9
-8CB5556000D1CE986F60C84D0B6E3F4F55ADF2E417358F1B14B542D8A96EFC53
-C3F3F91DAE932AD3DA9C849BA0791C01EEEA3B967A78329083338D1A0B278D8C
-CEAD5B6F8017451F34CB458091405E1415E9621A577D6F61A76E1FC781385CCC
-0A317E9E794CD972272E988DCF793570C9D4076DAE9BE50EF63A11B7EFD03E3F
-96FEA00E65F069CDD157728A1C98AC0A9377197D4BCC157308D09F149AB70838
-C66313272D00504E80FD0839B3A3F126CFAC3B820991F94C497B27B38D058B4A
-116E628F7B978C1F253872706B40A7E475F3078992B01336DCB013ACE31F5D1F
-2029B4F8A2321A9DEDDD10F2E14A38818637E8C559580529B999E84E07CD0666
-3323D757D75C9DF6A125E3F631D9F6AF5D0C0D2B7C454840282D19BA23764BCF
-5842369A69D847DF013B765C2893F80E68A9D9D59A634CFD9E85B90B6F7F09A7
-5D609AC8C9E8820F2F84B72122B081825C116CFDFC3E5D6078A715F35E06811A
-4BA7E74DA0B2A24CFC50D6DE7FD0DE5764B53B7A7B33368283615F118E709D65
-EDDCFD8816372B5148590E0AC8C17FEA93205F4AEC06DAD89BBCC28B48F6C702
-119BD3C79D038C3F2B80D60DC61E0C60D872614813DD54B63E8B08623507E92F
-962E535C61A2EA234A63C607FABAC496CF03CF226C6C8052753030A0EF740E7F
-466BA4A34B072D58F3E560AFB843C5232997976F3C3D4ABCDCA237E43B05AB73
-5BD65C6559DAC970E7F34D4C170F7E34BEB204CD651370588CE4F2F17A0E7131
-6364A265194B7C313257DD83467B21D84E9EDEF5CEBD45EBFFBD912EFD373FB1
-5409ABB0D4B06FBE08577459A14636A374943DC6D4CEA0AB33DD1154FE79BABE
-7F5D1D92EA7ED7E6D261C3B2569E83B5E9CCB1717B79959876F16FB720ADCA50
-05A33A47F1668E05A7ADF6E52B38D9D5016923EB55ECDAA72A7D9504635C0352
-76F899CB8DFB42BB5DF808A6499E52C230D5FB8E9E3924C2474D417826D282F4
-8B61112FC39B574AF8DCAF572E89720F539528E20DABDD87EE0ADF78664E94AD
-00B3867BEED6C9488036959AAD14CB301B29F19165776DF911A01A6A53414751
-68E4E401C9B3C2B04C9A3066EA0C3553E8F4BFC3F05C73FDF55EAC3213E82E00
-C50DDF2165E51677CD949D27B09DBB30376FA05D2FF3856253F2BAA7907F2EA8
-95FA61D8A042C8179BF834DDE7F67CF386A0D79FBAE5E859887942C6C482785C
-E1FBF3F97C666D82FE260D6A8FBD72CA43D731BD4B4301C48249B1E7C31C1765
-D6F7F9C8B59E47D72D7DDED87351E0F007938BFD73C2324BE5BFBC746AF529EF
-3259DBC9D83B5025185FD75E0D040203398D1739115F6096AB8DC8A0AB539C17
-755D5927081BAD8FAA7AC021FD028A5C823E373795C2A892DC5750C575D60792
-5BAFC4DD83596D8A182293D630985459BAB559314F27EFDB7E186DBE0E7081EC
-A8BBF0F30EE9A8B53DE47C9F2057139937D8B7787BB3107C40002264E6E3C0C3
-E77CF0B68F27E7A0A5CD8AE9A2CBDF98ED4A12E9D1C0DDA8287738A12A607F88
-15B1A64BCFA685C23075619E196EAA4B38517BE37CBC6464369245FAF3D32F90
-A6F8A450B66FA94FC6639D580A1AE8582EB307ABE2396C1093EDBC229BFDD87F
-9C5F49F51DB41D671BF836DB70047938A36CF124A5869255D06F3AC0E3435DFA
-FB5DADA29C76216637F0E5EF0696BE5833CE0AAD72FE1F8BA860277E70278C6B
-32386C1BA505A7BB808BEFE2D75E6D159D58B85F093BDECE344765F388DB0F08
-6D072C265A32944C0A965C10E7BA869881D547A636AF586E1B69F05E9610C411
-EA313749E4584A9C386E789D0BF4EEBEACB2A01CD195A5C6876758C8B2C21E4A
-6C68DF63313CE32C033CEE9327B9FCEBA1CB91D302D1E5068DD6189EA38B2C62
-1CBAFAB46F8BF3034A0255FBB0904B4B1B4FB0CC2DF2D412B28E8BDE816F1329
-55635B7E6F7123DAE06E6608CE8EBD46345279E47EF1853B027CE583D1194EF6
-19599F6ECADE298B64CB9FD733CA7DA837DEABC198E750603A02F61874204942
-4D0991E030498B4083C8F81B8B9BD549F6FD0E4C378880FD9968590C13748553
-7E0A624AD408E0D2DBBF2B0566B337CB51BC414598BDCB19F9D84416DEC43110
-A8A899E01D48648D26D92C2F8B784A23BA3436F6403AE29EBCCB05F8F3172FB4
-0408E457400C113233CF054A2EAB612B7F6BD7A92486E69BD12280C5A7251E20
-E103668F48886BF4761830DB9BBA52325F8C3100B923EDEAD4B3CE7494912E58
-4720BFD6B649D64E3015A42FA5A6284A5A4DC3838B58337C8B35CE7D47C39913
-EA706C468E46DDAAF4A5A749FCB5889FD59F90FFDCDB44E5839EA3E49575799B
-75A13CB1A17923751326D75A2ED1D2CDAC394084314FF697D408A86D08EB8494
-B526EFAB125865D892431DE80C0EF53E6FFBDDE9F130575976037A35C7853DD6
-5126F779A344E96E6381813950594C1233337459217666A989B5F1718A6BE0AC
-19A3B476950B5C9360073C3F2D3D0EEA52CE85743BC348C38AB89B51AA00B899
-217E5008EDE0576E826365DEDDAE40E4A4A69138029D0E59727CCCD3905056DA
-DC8FA349C60224B63516186143F07EFE361921C05D9492A6E24234C026A34BD3
-B64D03901979BADECD929276848B4479B51006B8D1171F7C5D0F8DA027043C86
-D44AF5AE35E350F4B11DCD92DDFFC8326E99E764978F965706AC58DC6C0D2F36
-994CCD448AC3CBCC42268B94E16FA9C1387FDC6F45CDE9F58FFA74F27A4A98FA
-EA3F2A17E1D2012AA78F906B88EE01694736BC4D184EEF4FB8140E5FAF64150D
-E50E8E06F7B9BE125A0FCF24648366CA7A7BBF0E11E6A2DB5825637368DAC5D2
-766A0E15B3BF3CA0838518512DD4697373BB8A95BBB46B39A4659B318EF66F23
-5D068815099898174E95229A7141FD1EAF4D765037BB86FE633EF02BC2A1405A
-A01AA2D5CD89628A1B0CD2C5AF088441E52BA7E1BC6A7F09E3A47F6F3B97AAA4
-A41D3EF15211B21CFFC872A40C1182A4CAD0FA5F08CED4BA7D87E5068535349B
-8056D253E7A3E5494F07DB46B403E02AC3A43BCD45634DBA2C47C14B1A2E4E0D
-22A0092E68F1E320BD63941F4BE8B912B62C2B8D681B29288330F4CAEA024FF4
-3A1809AAA6263656C45146D5A01E2E13A5AFFAF2607891988FB0170595E23A3F
-B9714047F54033BA60BE76EDCDBA5C595795440712E64F106452B470D5A9CFC8
-A2C604BB415890FF7AA3126C3CE1D30C3E58ECE4AA04307DAB193702DDAD0686
-788A8B9F8F6F0D2119DB3D4E339C052B314202834F478B8914FB9302037FD84B
-B25674DA46B5C9D2A4885BEA519831D2DC406C3C3753251F2BBAC75E1170750F
-C54426090DB373AD6EA90AD73C6E80CBBD01F0C56F98C09FF2A162930651AB45
-E8A4CBFC8B1BC29522AF269C5E182130F5DF6822270359151948EFB4C33A2687
-5954407A1EE96F245ADF9E93F972ABC5E1B1457A030F047CFCEC02A3D8228011
-ECC2CB0E0C7AE4B01AA342C6596BD0F85A45E7BE4455D41FC15539D07F710636
-537A8BE0EC50B6A1FDD90B599A08B7824FC65559E3B6FED676A41542BD58A09A
-42388D7661D3422CB86F13CF6239BB56EA0B1DAA5542ADD316EE76B01F98E0EF
-29A828461020DF0FF643E546EE04CB0032C06AAE533C20720F888295ACFD52D0
-5AD152CD7D0922F911F613354344622BF800B0FA2AF3324E898B39F953818950
-B7587AFDF91F16EF57E46E46F07E14E89326737DFD1CDC0E11E9DB2FEBCD147B
-8257B4C2D23DF86AC129BA1655FE6AC212F2080BE6FBC1BFF9BEA8D8E121040E
-2AF9500B926072BA9BB474A8CB55E727A9FFFB2C835CB3E7981B904E9EFAF4DE
-9F8CA5D338E31FD2535E5CA9A59002123CF08C621D185C102077AB80AF6244E6
-49D22C2ADD353C3F906DE952CEE101A9D08F1D9853EF8EE282506A53FDE5F64F
-2FF433CA6E60819B7945A4DBF21534E35039853600CEF1A9FB53B99F074F909B
-5164499BB87652A71C6A55FABB3238C1C04AC3D27393D3214D84A6A37B714E7F
-B28256E05FEEA5F7E86CA04CE4BCC5479F40FD797CB5BB6C0C817808C0834EEC
-63F1D78F0FE712D1EC6F001B395D21656834D6220D77393DE89CDEDDABCF3D59
-7B1703B8884ED56CECE93AC713239D5D814093C2DF4025884D36535994CE1DEC
-CB64B51AF63B434F7A18A6FB644F49089EB3161B46F6EEC430B73DE10EAB0ED2
-70736D0B6F3DCA3B96EB036C21E0E9441CC7B4BAD4D1B3B34027D0475C482A4C
-6AD17670E16B1D87078AB94D2C04F99CBB4C88E5F29327884BD673BDD841E8EE
-B3A2E544B7882F589F9912D86828E0C39519932FDE205EDA6CC03904B253BC90
-2AD98C29F109D815BE900AB44C7BA1D6349313E03F9A9549FDB06A6C65DD2798
-EA07440AACD59AE91FBF7EF10E82EF3FB80E10CC515A992811CA5BCAE7A80EDE
-30BDE900F0F49D8F47911274AC3FD41A5D83092FCC98B057BEF66030F9BF5773
-664AA821536B3D033C144CA1DB7CD7EE37965958093253061277A197449A80E8
-AED1C47D8BB3BF0560E24432F6A9FFCA3C468AB309C54F920C30FECF049BC75C
-EA7415390EC30468A96C615F7529B5E2D96BA2313D48033C73162275AE4F3831
-8EB29A2FF205037EA4B6DDD1AE017ABF2DA3E4C6B8215FA1052120D7F2DA8BBF
-81928CD22F10AC0B1DE254CF5443DE81F68EE6C19995ABB4F8716998C9AF78EF
-DC1BE13139C6C9C595CC526974B1E0E4F6B4D552C6FB637D91D850E104939287
-888ADD077B7C05818AF7C70015292F2E968D4214BC5DD87767EDA36249E8C4CF
-145E0C8CA3DAE43DB6EDA10ACCDE03608EBB63C2B39D6DC07DE2E5879A052DD7
-84E826A3E22E0B1155272196F4E7CC825259DF70FF0599D91599A8D61DCC4F02
-BA6A6BF9228EA07B8828CE3D5EE43340CA2497B058552A3ACCF499DFF3A8B9B9
-0448CBE07E0BB7389B3ABB578566E781A89AE8A2908823D2B5127EA0282E0E2B
-E9BFDFFC7D529613F3E0D063EFE3D71F71A099F2AAD50BF776A2F0E544E13B7D
-82E0BE0296556A3F76BA81751352E2D82DD0CCB4F577D7838E34B452B5C79B58
-A09592C169459BEBA283D98756960CE37A239769BCA22660A20418B1A298B0D8
-7755FE810321506D35FCE70E901966FE77816823E4D4B9C6503C90D6F31C6379
-2A4852AA61DC63F3593D66508A9EFB8F1432448F2FD45647271731E2886C4C74
-9EF477B9AE5363897243C931D34E3CE5BF7902F27B93FA5CCFF5D853A28A08BA
-B17E3DDAA648F373F4EDDAE1DF25C80BEA3989C2A8D71A4B4B4E8A3C55904E56
-83C98EBB5EC3015647E59A24457B390E3311AC62A67DEBD25C7809F8B11DDF44
-77C7AC9A7080A2F138B214FFDD090D187DB668ADCDA7C2A5ADE94A4692C596B0
-42F4E7A90567544BAF65B302BBFDB55B442B624CF128876330CC2FB394E51EFB
-8B0C596BDD60C03F16A6CDD89434110D7ED758F1519F1E8CF0989AB652939204
-17F40D3D7016399612610B56788C6D9257A54C9BF8C7943A6DB9B6990C0BF988
-FF38C97892288C509B71BB8DD20A69B8EB0BDBE05F8450F657B7D2173670E42C
-AD48F174E44AD17C66B96DFBB9871AFC5E
+D9D66F633B846AB284BCF8B0411B772DE5CE33C33655F6FF751F340A8D6C01E3
+2E02C24E186BA91B34A1F538959D4450CB683EAE5B034D030186901B458D3777
+6B3942BD2E07121385120248891AEC2EB33C4E3A0CF00828D0F130C31A918C18
+979FE94379C648EF21ABF659253E43CD1253866F157F1DF85AE7E8714F061B1E
+ABA3AD094FE8D6293916FA82EE4F486C7E513A06D4C9BE44306A8287970B4ABF
+B6D1F9274A5A0BB6ECF713ADBD1260D5D6C4420D357FD486470A74B2F0621B59
+A9373ABECDBF32FA68AABB66FAB0C970A3354A335FEDDA1C288245E6C890B8DA
+3D0EB953283ABFE372221EEB1586B0167F634E3F29CADCAB484B81A243CE1E3F
+D5106AD6BDB1AEC91123377F816711CB9D5140120FEA84B8205B79D1569509FC
+6B671211985CEF51691C45A168740BD826464B2CB0ABC575E7D453161328F80F
+3AF1C99EC219010EC6C95E0A8D1909719CF18BE424967E90DF67537220E60C3C
+4345B154D08F9EA684710E659DFFB0BA1B7FDDCD519305900A5E1CDA219A6C90
+DF8BD712A3686DAB90344E8784C7A9AF3318550285039B701B9FA1D3A3C3B6C2
+753F1E794A3463A173C99A9EC0E2AB5737134CEC2C97CD6A37E38692ADB4B131
+54697B7BBBB23680C72CE96066D8007B90AF0FC5958232AB4F21826691E9874D
+107F47DAC1026298D787989BD77CB43A09FC95F6997DB00D8483AE9C2716CBD3
+7CDF02DA34FDA2F0754ED0968270E118DDD8BAAAA65C41D699E2BCC2556AA231
+328187D2F50FD518CF458B0BA1F7DBAF4B231CFD61D5DC56335B53C3013BCCC9
+85690E19E992ACE55EEF2BA7A75DEE6DC33933C226FC1494269B7CA4CBAE987C
+2C787386400172AE3F44AE47115F4117EED866713BDDCA4A7AF658C49F913CB7
+308635000043F63BA210410A66E192289592882C477B2EEA0B2A339F0E7CF450
+CA0EF79D3A6C28598825CA03FD688DA60C95EF707C6E67CB7E57DE7A80545195
+739ACBDF27069F34C9E0216C3D17CFE7A652B910FCC9B9AECC2E646809C22D93
+FAFAD465DE794755AFF5BEC17160C9563B5C51D07022E2D3A256FB5CACE131D6
+F4B30F591A0419D957D8F0DCAA0A8D65A8D83422AD7C2613FF13A302E152B312
+3F1ABB45E42084EAC894FE335C07324849C9736D00C872C4551997DB889AF17A
+A52C5AA77DEB548B0103B77F65717F70B90C1BBAEA7BCB4959F32851A9882A3F
+55673F24103D6BF7FB3AD3EC3CC50FD8FBB4A6B13C3D278174320713A7B327CC
+A71F01E50840B33D0FC3F5F6A6F2B0F2D0E38494B1C73096A430510F927235FB
+69E931DA8CE5415EE88D0248565E3347353621A48F7948AC9EAB5F5057541B50
+82BA955D90BBC82E582FD71904445A59186022FB928015235B60830DA59813D0
+8DA3FC306C43FF8BB2CB6772B1F7BA3C1AA4B2343E7DA7E065EA53A4E5E28DC8
+0790F2D5CFB203CB135A08DCC9702B59A63290444F202756E55B9FB053F773D6
+0F69C63E74DE593E49186FF4304E8FA76C3E3006358DE549E946DB69431981E8
+1261C9C9A884E4EC708F69E6AF5D22C5BAC49F2AE85903E3D48D03B7B97054F1
+D2937A0C685D912D6D20A75A77712164DCBF8FE4D5460DACE139C5A934EEA09F
+B94DBF168A4BC03A9D689936D833018FF43837DF9519AD10F357F00BC068E737
+170FC9FC6715165F733A0B6FADB9ABB48B845167DBE6D771C916577FC2132863
+767DC6E3D460E779254194AA690983184D934F5E858C1176B3862B69B42EBE7D
+EC9AC4E020085D474093F7694C8A8C2025D4B0163E29320C384D62A9F3FBCB1F
+AB5A374EF3DBA48AC2147A207AEFE8B78BECEBC55C97B538F3A0FF4589D171E3
+826342C8A5186224FEE54E4C6AD5EB02BCB4088B132FA1A48362824BEF161235
+8E661DCFDFD8429C65CCEF63902D0E07C2FEC1DC2756D942F13FECCB7E8A8048
+345338F24B7808E46A04A915C111F939E2669A12FAC0BA4F74B832EAC83EABEE
+67E2817C058E69C2010F2572FDD15194CD8DF0FE9F827D349C0444A18D1A86FD
+802BC120A5114FA3523C221242C7E767B0AAF6AD15DA1561CE8EB18A2401D71E
+20481FA5F1E247CB5288F47795A6A3A3BB186E89EAAC4A54AC91405427136127
+5B151203426830F7CADABDB3FF63B40CA29CF8E667E71615869978E99E6F3F07
+0170EACDE3DC62DC05681D7680E2E96C30002AE34A4E5EAEDF88577601A82C36
+22D625A03B0451D7BBAAAE0C396711500E94A482EA787495073F16A76D1657DC
+4EA7C7B83BC30CE7F145B65B6E2ADC207D192CE3B5FEF7031F4BD64F57E1BEFF
+CCFFE06F1E4ECA48B442DF413766A70DA626359183A9B24C70419487423C816B
+4BCB067E661E47E172563090D6328BD738D2B0FE41A0C1D7A47576A79BAFC880
+0473229D134F998909898301CEF50A82B627A9A06DF59D0B9C530EC5D877F1E5
+220D3A1ABD2ACBFDF1933F92B3137B22B9F95A961D93B729307749A50D8A6403
+7AD0F9C40743E39B8D198CFCF7C033D99440D46D821D97545B930EF92E7AE005
+27F2FC766FDD4790FD1913C7A13328E73E587618ABD9008022C5C6C23935CEFE
+B5ECA2CEBA1D25DD846B48423F7186E03B1F61C8F1D5AC95CE03C83B2F221300
+7A761D6CB5F7F9251D3F9A7F4B25B99EE7A1347ED3059A811A82A35A033E9B07
+A4FB2A95009576F48665605C478E5F6C1B135016FEB4AE6A6BE4B4359836E04D
+45AA11366992162973FB6266547C2E570B8F56F6D992D2C0F63950A16839FE10
+F56E59D93A37573E3268C5892C9F3358753D1FAD6379E82BE740FA17236E96F7
+C53A2FF785FAB86AD17EB1DE8A6AA9C69B91C9D9B43B5188E51F6939FEC21B65
+AF17DCE95DD3BA4F1DD51F0BD5E5869A1ECA7398B6E664EB0D189181E9C23012
+DC1E54C146842A90909DBEC03B79B58909205F2CB2A7F83C66B437D7F7DB9781
+FF0C67F004E979C95B706D8D85255CCD827CF6196D847DB380B56980109E96CA
+997157BE78A4F758CE59D78158A854EF2C20099438F74777D3B0298D45BA86D4
+3C0AC30C984718FD62ABA0567AF0A70C1DD41953E3E7212D5C562085177E650A
+2ACD49940551E3F7619B4CC31DBF67AC15D938619B95DBF66E6D1300B1BB8605
+31C4011379FB5388CA49E4A9BD6C921560CB8D513F8716A0733D2A7D77E62D22
+A69B54E9048CA168D210816E613CF6357706EF6B118A1263B858B7E19AA98891
+43BD675B06C893579957BAB97199ACB82C080593ECB8B66A7334779CC16E4D0D
+4AF365CA6AF9727AE29417B61A5FD52452873B1D666044F8E7C1F6C6AA3397B5
+94A5780F4005FB5E41698FADD1594B505A58253D68D2AE3320E22165D198050E
+425820CC0A43FF1D61F168D87CDD30C14D387610B6CDB63BAA39B3EC9B3CA616
+FF1CC679227749DED3DDEA26B4D97C633090DCB8D8A6E5E07E3579E4A99BF1D5
+51E43D1D7F139C9CB1D76D8F693A3F23A74EFBE79F01E0B850BC6B6C7F62C2E9
+859469A144853434895D73DA6BD2B348A48BA80E79327ABD96539F2EA2209852
+E1BF6B0B819D7C68A9A1D0F6F39416E3EC4AC21DCD3C51D3B5B8D417EFAE165F
+2A7E0B76E558AC9F685A76FEC7E3C73CD607D9025DE6113BE5D0401887A53910
+82A813B026A502B51D484797D9D7E79A25B6624940AEDB4A15F2C73CA1AF60FA
+22D15BFBF268EB044FAE17822511AC6580D1D74DBA3C3335217780B29FEE792D
+200B00B8CD888A8BFF15D938FC758BB5CD9B3E08E1AC6CD1669E663BE86711A5
+892684DFCAF70C11E803164994BDAD89128AAD6461D4558AC2ECA3E05EB56D32
+0290AB16A6DF7133DDCBDEAE89C6CD83552792E23CBF567D57E46548EEB0A140
+437492B53C14419B6FE7E64AC23923A9E85F56A9DF209DC4E6BCAF1E045F9CA3
+BB904BFA150F4083C18B0CB5580450CDB657EA768E71222C71DA911A722AB9D9
+E18B6847F417125C40EA8A0CA1F551A4548712D098209C78DF9C3F78605E5402
+DA2DBE2218E49B819296D5AC88D17DDBA982E171733D1E9E295B3157C9B90BF1
+CE68CB185947D1E3D7544155B741296D14B064BEFD3E6AF25C74006CF6800551
+80FCAAEE6FC9105E1674EDFE68C45617D8D3E2264CD395EE94EDD017EB85884F
+FDF530EDF4F3F14750CA066F149E688FAF8EF4B5FE6AB515CD298E8D170346CA
+9B32BAD1D86DC147BD12EBEDF6CE1E749C5B48314F512470A568C172C35CFA41
+031E34586A89404CB5372D7B2C7A6D96F420D4D7C2D4C08184F4AF86B4536A90
+9367598424112A7B05D7107B23695CBCD569002290599E0FF4EC5C852C31F5F3
+9BD56BB840DC17DEEA579E7A7A9F764788D4E3774BD523D21267869224D68891
+4523070E80A123B58F7B579866332FC38A41A5915EC06F2D14FBE4A6CAF59AEB
+57E98D661637EBB885AA5D74AD429CCFF64E5149815E7350118E6385F4C74E0B
+2EB474A6DED021D429F01C9B0634A09250C40E22B3BFE1B7246D18116D585F39
+0E06E9B5F27A6CB77C8E9462189CB900CFEF08F798CAE15FBD94587F33816EE9
+03FB2DA6826EB69D8C284AB9F7B00630D0420EB6E35E0E288BA25F5C2345C067
+22412633898AF99C2FB232D1469025BF262B567F29A05F4816FE8EEF5F02BD79
+06202F6A1E3E5D4B3C91BA8D5FF53D5136BF70E5FAEF441A7310CA83721711FC
+39EE48BFB2FF287234B1A6102AF146B10A632A53AF97E11FFAC3A2A86BBAE3BD
+E0459ECF0305366078066F2CC628A3918E775E4236651B3D817AF1684B07A163
+A0142D16F55D2FB5F2255A8813B8E54EF3E801E95A4A226AB8C0476AC5EDCAD6
+9258ACB6F7C0CBDD298A0B816560622A1871FBE2FAEBFE697A8216A0D8FE30C6
+B1BA6C3E975F78182743842E7F851064037394142AC91B2530FB1D511EB20F3F
+79EDD8B7E1579D35F6E7B2883C47A46B6C1A458BECD6BE58AAFD834A7D82A553
+2FE4E66878E4699856DEDE964F454638F768AEDB595A883E380408F558015FB5
+8720954ECE2704AFAD4D62E8BB2657C4FA920D72248B3F762B2F12D125B796AA
+1C4BD6B42D766EC1C9B2C7AA4B6A3474BF753742DE8AB76D0AB0DD9A20EE2DCA
+0F34CB25995ED3183759CA83ABC32B8BDF0B06EF169252587971F7D37463BFA2
+BE36B2E45559DD73DE7CBE29DE92B9BE6B9F8093F934BA311D81E18A8DA92FC3
+312E3FAB43C53E803975981F0076EBB8F257C123908450661B6FA79E7ECE98F3
+B0A94E0DE3A4DCC8E0FEC106CDEDAA297A75BF1E40F3C2419BF72A644F452E2F
+9A8793810319885EB3AB23B1E80E8B62A889311355C73722C18E62711A7E6A16
+A5B923408444B13F6522FECA9A60B067EE332B83E1A69CD835C9D69B5D8859D6
+91F9276863D2E2E8193641E4239F4ED15E2C482C735BF5434BAA454EC2830C1F
+7CF766DAC9E924F17F03093132627673BA3D99DC2DBFC89E5BA032C16D3C1C8D
+78B3C464081044DB53C7A29E925F4157EEEE928C8E28EDA5F0A4BB6E0042D8AC
+7595C350645118172D04FBF06B2C9A9F3603A54B57999E2960C993724CCD6A09
+766BDF73F66E07FCA9BD09079CE8010E6CFECBE2E5DE1EA4E280AB78D5184C11
+016385007CB5AC0BC95955A1E88EA1A1D8EFEA886007708BA063F556D9284D4D
+C764E75CECA51BEE3D35DFCEBF6175953D30FDAC00F23B1721A1DD577945B5E3
+8176A21A649D907B5F63C71718ECF32ECCF1B26BF15AF694F1045CF98FC75278
+E9782ACD3D83CBDBEE690D29B3176E745AAE436382D258CB22F3DEDD02E441FC
+6A9931AC2F61156DE258DAAD5EDAD41E6C0DFC902173168BB4F51DFA7EA615C8
+B0F92FDB118378CBAC3D56B6B9BB0883C0C14EAA67396AAA7987222A132B7959
+44FC1E9D6DB6D549DFBEF8D2DD8C53DD3B66935FC239E74E2C440CCA13C068EB
+C4A3B69F499F573D076E2C92E24F2C69B806591B0807CD903E078683854963EE
+5125C3640860CEF37BE186DB781475554BFE6C528A9633AD5772BD53244E24AB
+42CA2D1123AF45FA257940CE611D83014DF04E60220E9AF27CB2A2247BBB004A
+F5722A5EF058FDC7DC2B6ED1406649DBAA58DF2ED3A91483D60F11C4A39BAF57
+CB1E320A987B790672CDD3E3BEF4A67032244DED2FF4588B2072CDABFEB36009
+9F4BCBEE16F811A44CEC77F8AE873C90C0F4C975E51014ECBD45A56A63F034C2
+82212977023A132E5C88AAA826D841FDE9CBCE7A01E4B6F0EBDDB9A69EFEBD72
+0B41EDA807CEDB791084047624BC11CE10B7A0A311272EFC9E013FA374D97EA5
+F7998FD908748CA72D8CABFD0F01220C2114D3B462B22FB71A23B284B1CBC7D9
+EA20BE71F8ACCED21F096009A14A7C7B51450BA51514707EB46B9FAAB31CFBEA
+E1DDA6F5D9AF0B6E7D05A1EEEEECD606427B0F2363D1B882B50140466B9D3CBD
+D00DB06DDD1BD4681E367DAA4B7C405C6281B67FFF794041738FC6A01D261CDD
+F6E0A330985F2CA782CBCC02B6F4EE5993434F656B91A51CC03B1D73FFA6629F
+14F6075EBFD83B702D8844A96CFB5C14051595BC7DB2218156A6DEDA5C98CAD8
+BEB5284D9D9F86406A8C1AE85857185991C360E5F44DEF352A1F301207BE94C2
+9A3A11BA468FACB3FA2D683419C44EFDD7C8F1079659F3ABD89D7F168B1591E5
+6105F9B3FA481BA953CD34CCFE73E427D3AFC46E5C58C2981198BA284DB8B37A
+6647BEAA561799877DD6858FCA71CA6003F2961FAA529906673EA94D82D78116
+4DAC81011FD175DA707C1E15D4B6FF19F8720A4E05E6E103E2DE880FA9C192BE
+C5ABE7C311C2ECCBCE8F9713DBA74AEC37A61C8F21F271B35F0F7C88B182525B
+A4183377597ACDA9A6E2F181725D427795B975BC4168A408D292CAA484BD1B8C
+9DC62E737ABC805C8FCB7E96454DA032B601345570EAE0379BDA84BB6D15D780
+42FA1E068A7D62F152B43B788513E13724666FAB4E2B4F04B0448194E46582CE
+7389BAF0D1DD4435BAA6B82AC305C04686B89FD51197C721D941BD2893596024
+1598E6C2BD84527EDA6FAB782033E4BB4F964FBACD96CAEC3F3CF89CBABF6B4D
+4D3AD14A03D4BE931632BB03BC2B92842FAD51A19A756892D5B978DB695D0540
+CC9D030C612E2B201D60D09F56332DD0BA1351EE62816C21A35C33DC11B37BE4
+D2F164ACD836A5CA1553CBC733E3B159860454B17064B4E22D3764FF6293BC81
+CFA3B2325C8E072857F6FF4ADAA8818247D431A28D3C5FDFBFB24A6CAA327AC1
+0B3630C84ED9F0D33B8255A3CAA9C5A0C79F7BF6BA3B9801C3BD0B30AEF7CCA9
+92F25E332EA97A7CC653C93D1497992D6B76363885B92ADE34C2A33E30A3B1A0
+57E9C16D8CEC189565808D3FAC92973C71CDE74DE9D8781CCAF88747758014C4
+5B62667D4D2CC5EBEBE77C5AD00C6A69D1819F5A786964501E077EB3BBEA52A4
+57729AEDF35253F7E1D31F2DD1587BC15CCFC1B0CA930DA83E2031B099A38158
+8D1849E7145AC74777A3C7136DEABB0C787E5A218309A65EC7D128147EDE3AE0
+C0AC039B56F767A22555CFCC12DCBC7F5A5A3B4E86EF5A69EEA93DF0BAF2A3F3
+7504F5C6A7A67388D2F9045BD755BEB7DFBC2EED679497EBEC808BE20FDCB5C7
+B586463BBB898DECCCF7249E9047DA943FAF0718A2050FCFDF8A4C2029FBA674
+EA64003AC03A847185936FC375CC67B3006EA681F61F640C3640A78D0C7FF521
+D477981E23E5956BAF42252463FDBEC49BB560A9428D248B0C5250CFA2A49CD9
+DBCEF73123C13BA382D3CF6A7B8A8CA3191D379A659F0E2C6E9CAFE9DA2AC074
+F622E397A2F7C73347364AE249B11AE2C34AA7F0D27B5F35D548D5AD1228597D
+D16A478C901D3A34D870BA39F770885B7DE62298F0114752435050E99EA4E5E0
+56B965EA185E8DF96B9FE97EE23DD45AADBFE02B427222B9FC99DA94FB2648B8
+46BD30F881BAD3820DCA4D8093BA0FE70E03482CC063B751439125623FA7AE40
+52DB2A380D89D5E37BF264CC73DA9A1540031587F481A0F146C6ED6F3F2957FA
+19477F075ACF608CD94CE466C1FC3EDAEA3ED25C96FE89A7CBFE528A33C4E84D
+465FE6FB031B48D904C5120D428D6B51F3232847CB0B7521E5CEA887FFC56F02
+0882B3BB7F5B0B954E7078DE3E31D8AE65F9EA55F4C169DB7C35DB9645617AFE
+078E03BF9A1BCE4E489AC9495A1E6CC7D1FFDCC03CEC1A32490186FE8B53B09B
+DBA7F0E23C8F5E5270D039B409D504203A458EEF12C035039A8AA12C719C0339
+F766BE6275511D585F82E9D4AC9B5424312755C4B74383FD094BBB24817D6525
+EE62456392E5DCAD0A0157A4A033E440AA014D5682606312F72248E13C43EC3F
+BBC9B4A2CF19A4AC6ED7F561EB13C3AB22FB3F3EF644B5B47DACE807262DE5C9
+50578464845B950140ADD91D72D28470A5A5FB134EC52F4DBBB9C50A7523592B
+C5BAA056E46F8C004062298BEA010C1CF9F49DEAB58C4D2012E04E630F54C985
+328DB2B6FEAC584308D71A9F5FD945A37EA13F3DEB1748320870057A362E70CD
+50C269D32993CE9CD1E8CB35BC6F69E7574F37032219C6E1C960F3693CB8D1F4
+7E3376495E6CDA3BD280DEA744D382D720935D605E1E2464A31B86E831A1DB1B
+BA9185DC43D32993D3B5900F9D5B45EE9D2C607172A670530780EEA08AECBBF7
+5F59F645CF7A86ED8CFFAAAE50BEC460C07B11BEAB82765FD18D152AD476B7B6
+2D08A8C7B5D8F7B6400C8435E6F08CCDE4234D981D056E7F1B361F478759FFEA
+468FDA9D4EE5B8BF0B83506B39C1FD36B16D14D5005202EEA3D9BF656BA60548
+A94BAE6159A75BAA549ECB9D5272C475CFF6BC373C60723049295392D4BCA477
+3FF6270B7658362D0014743F1686ECB611912E6B82670BCBA93832C4EC9CDD22
+BB2FD9FF321840A882A1E2BE9B354E69C9F4C6210564C02DBD96D4BC181B4876
+49818380D9DD9424E30DA3E8E3BE7682CE0CDF6CB3F7554ACDAE1812AD3B8AAF
+F0990BA00B058A1C5CC83A60491B7875821799B231BD9BF1D568ACFAE9E5FE2A
+7558D3820A67A6158EA037FDBE8A6EADD8C934380101327B8F1736D996F9699D
+D64AF938C999C6C93C9DDC7A8F4497FE81DBB787F24EA08ACF82B3C7620088E1
+8002FC529C8FAF40A519878DCB79EB5C7C34DD5D6F911D9DA790DAB33E7A8968
+A266E95AA808AEC8FD854D1326778821DAAD03ADC0863C83E5D0FE70ABB35619
+AB31554DED6142E2E1E26481377AE95C9F32D0EA3DE07F78C6A30FEB98B15F69
+296FC94E6DAB5829F1B59672C6A87EE4E2CD3F0D9894D6DC8D7A514B6BABF018
+B199CC3A4478821649A7389ED46DBB9AFB7D4FF7696F8DB586830D7F74F0FABD
+4BB32F787DFF04CE1E7349704FB5D3154D1BE3CEA0B476C2B787C6E534061EA3
+E28F7D8F65EB1FBD8177AA013A6FFC03BAE514112214F67C7957583FA78FA805
+29C0AD1C6FF9750CA24D3505C889502833CB71EEAC21B8F2F4D3415372E0FD82
+33A937D50F4BC55D381E2E2C831D2CBE4F960978BF7041FBB69C6C9C9246F8DF
+FA2D5C5875200AE8F9BE1C44F839F446C23E630B74B823FFFC88DC30B931769A
+3D5D444376B7138972BE07E5D8215B79288401B0E9E76831250304635714B64B
+2BAFC31E2583F26B15B38400125BE793931E7887175D98A1CE1505AD21BD08BA
+16BFACB350DB1BB37E647D7A00A48130CA4F7B6FC5CA17FBA73F7737366E906B
+AA3335A2E51D65DFC79B1D87F109E9CF3F420408BFFC2C399CA6844A3C5D50C2
+2B3673FD3A796F654D2624FE5B1E02C1720B91A00B4998F825D9C1EB29885A11
+D100A98620A7C186BFAEEC214F0E63A21A28E076D0CFC7DF62A016A21AF198C7
+28E5C374A93D0683E91F06858358E1AEFCCAAAF2CDBC382B1C999D489D06AB82
+60D4C548B9AA7B011F0382324737A74EF18AE7D5402DB1B8FB15AC162E6E1D2D
+371BB20E1F78C962F032B7647A301F771D496B14B11DD63965897BEA60DF1B75
+EAED63791A62BA912A8ED5EFD66340D07FD2DD8A9EAA1A98957F8D4B9F0C7142
+024FF2918E971B73F5BECDC098C7D011335077F059697C9429CA2E13B03886CA
+5D07C7178C2368B4DBA1BE17A074A1565A9DFDEB90F96163829C4F2BE8D537D4
+606E7CF1BB667190AEE95B4D68422B7EB84B054D41F6677D840ADA7BED269A8E
+8ECEFA88484CDFD6F999D9F51F4431057929706105172AE2635764B326446A07
+1BCB5A2277441E0C0C8A6CEDD2D886D794D3495F7CE828E1E9F65C3CB47C2634
+1E3BA769EA7DD098296E5CC981916608DC33279BDF53510C8BBA06A0A0E9203C
+EA569B24DB5EC1DA6254156276944ECB2338CC5679558DFF053863B3E6FDCC2C
+FAA0D336E9ECA4236917455D8DFA46EAE6ABE8C942E087ADD33E3CE49C2A8C5E
+9E4BF0A357D1B9DAD6B2C01D64D65A99EC728DADC5DA83FC279CD60A08971941
+638CE3A7E1A298FB9832804EB4752758EE1ED81FA96B60A6AA1004D79AEE456F
+C3AF0687AD5AA5062DF7F0C8FE7AB78DC6122BD2894DBC59B4126A0D85F34C8D
+A748048087E7D9E12CF55AA2786E595EF5BEEABD86563204CFD5B1FCE181B2D0
+5410E3836E394D0843984362F65D4A55D26C805E15EBF488AEACA766DB081C3E
+51267E8BC8B7E4373183CC054B68A4839F842DB22341130D4A1D312DB573060A
+7E73FCF514617C3D486651D2C8075E02331EFF65A2CE8B9AB7E35CD969550C2A
+89DCE554802F08D5C6163A09E669B7F5C6754138D778CBC5458F40B4B51C9A93
+5DD23BEDF12182BD5F1E42B2BFE76F421FD8128DA78F195038907F9EB52268A8
+324B1A134148226CD0B235B8A6DBAA8508A7209720E892B910056D55AD5797D4
+26ADBC7FC9E6A41F2EFA145DE8707D8AB76970B46D2F2CA4CE11DFB46B9D156A
+E75210C6F9A2B31DFFB3670CA8E52F322AAD31EB71D3E0C99CA791797650E5F5
+FE5EDC86B5B19433B9363A388FBD4C8ECDBDD8281A81AC935371FEAA2B841C98
+3E54FCA6C6445C89374981ADF8A974F5D5CACE8E158AAE572AFB2D282E73B1F6
+C7150271CDE9FA5E5BB94244F04B0CB671EB2391BB35EC2FFBFC522237F54168
+2A4AD8B48C84C4FEAA2602AF9483A1A07570F8E84434F1FD3942A13D3A30C1CA
+BD7901D49659C85ABFC78124215386C475AA0E229E98A9A2A47E32B46F09AAAD
+6C8F0D5FE2E4D4D4BB3B3C3B23EDDAED65004BD410BA829EFFC414DE349F8852
+75D4C9567FC887F173EA3E5AB863903C728D65DEAF592F400C803317FF9859E3
+1BCB658A0458AA355CE3671C35047760ECFE8AC3A01C3B975F01A02CA21E4CF6
+697A9B828DF3FD28BDD625D8502133E85586A0F66386AD428C1E65AF78A65106
+188721680B04E7EB756C564859E4F8E16B9DE6B7231F8F8AEC8064CDD8C923AF
+7B0888ACFC86AD6E03D83A37C52DFD5BAC714A09727B53ABA05461DA406D894B
+81B4B43D3F737939EBB7CEF3C4CA965705411B1EFA1FB6385A6556913A6D32F0
+3CDFDC04F88F214763B7E989D288C6B8861504CF5E8A6C67D16FAEE5E6962F6E
+0935372016194115F205519805A8FE8EE76676EA3CC75CEF7C7326810BD3BE34
+2EC114C3BD2508ABA9206401315D75C4AB6401E9AF3AABA580E47776C6A7D7AA
+B576D209AF4EF84F37608B2CE84D98008988331C5DEA082E8523E06A7BB59004
+CB8C7F4F39B4E83C926CC519163C17FE4CF47F1B66CB444842F494B5C8C1A386
+2DD05BED6BF59227A5757410F63CD8BB77AD0AB848E4B8FC85186E222208740C
+09B0E47BCCBAC26EDCB9029727EB96521F17A7B32E719001E59C483237D8B9BD
+6695799A0C3B80ED9C7D64DC153CBBCEFC22B4B25524BF5B301431F192BC6933
+A6DA377691670958B04AA1F7491379CB60C87F3110CF2BEDE95D6611C2A9604E
+083B721D51F513E47499871C0E3E504E8EE620CD2E0F450E3035CBCA94242BCB
+E42CB0E8408A3CCC5575C261F2325EAA2B06D91A65AEC162268D751CBBE9D5DB
+469592065418BAFB50E658E286933DC0EDFB9E9F7D82AF9851E71AE9DC4A9DD0
+8E01F2533F5C8F83DE9C0D0A49DFC375BA4F32C2BCA5774B702066CAE2647B9F
+AB7541FEC25269D28A7AB4F1F60F3EEEB5D2EE23408BCC84AE471EB6540A5438
+DA807B936F6C27FDC536D2D8471EBE9967B9133A1A5641BE80E64632E61E5E8A
+7700465D087E89BFD1C6197B8BA8A41CF2159A0817B5F95351E02E654CAA7978
+1FA6571CE47EDE08B7E66A2D0C8EB88AD6E4F287B9809EE5485A94EFFE85A73C
+454BF8BAB70BA2000F2B56BB3E0255892C3E4480C147CA11D4C3AB71744BC536
+CD21B6DC302B5895BCA9E72285744E93E85D33A86688758A060304E3EF024281
+590A765C943980884EAC5298497E7D2460C55EE1BD234C407FC63B9B3029C018
+6C86BBBCA5BDCD4300359A40D1281A0211B09B2DF2941EA893F5DB95BDFDD018
+6D674A37A25F63722AD62597314CABEC1F3A2460F51E00451D3095DAE1071ABB
+17A8DB8BA0E224D420D4A0EFF9EA17FFC7801D36BABADACC27A0AF1879C56628
+573059FD22294243357928DB4A835F02B3807067DC963CDE81CF4F69669421B4
+88A159B3502CA9619F5B30CD992F3F94EF3868CC695F52C5E0619E88A750D6F4
+90DF0CD32D6642A3D19549C733B89391041D0FC126AADC04D882188D9769CAB5
+21BCEB131BC5283CE6E9E6F650246B1D59A7A559EB45AADD9A669FC39EDE6CAD
+FCA20CFE0922C8730D56962F4AD00DDDEE28B1A7C2FA02CC7C59932AC31BD59F
+E0C837740EA82EE6C804114DE18CA35D8EBDE3F0C16565C2F51A14083F5CDDED
+C5B7796F9E6717A6A3E963F3DCF7E76DD7F896716193C975F4EA5CC73F6E8C95
+C987260A3653AA099EAE36068B7FD793154050D9868D9D30F4E4603AEF7B591E
+DFD9F478EB30D16AD0496965F5702DCA4BF33541778EA2FAB83C25313F8E694B
+43FAD86D47D5E84B51309B3E7991B29E9922E80A34AA1A5B895765ACE2329F92
+8A04E9A68A0D9C008EA9E52A114B3F09144C30A00A6E010BEDECB7B955AD1B06
+467F156EF79E4AEE257AC357EE49724730D9DE4942E84ECBBFEC6CC7C85CA2B4
+3BAE1CBA5ECFEACAA7ADFA4508F1DB7E6C37405439138ED4BF236C1589A319CD
+3A5DD32D848C22F07732BCE84FD15F86AF8373AAC85252A8F8EB7F3915B52558
+EF02270FFE20521F0347386B3A253A69D9510900F7052A95DE26B29D48D662A9
+20A437B9944E0AB22AB623E7C766A752D89A57AE7BA6A64FD96FA05A5FDE6C8E
+C6084C44FF6732B5B95A844FFBE2BBB234A3A247D4D89B0FECCA87C986912A90
+4791231605EE8EFAA7BC7F2FA5551991706DD4A677639A69EC231CEE3B0B05DE
+AD7C4A221B7B74349DEF428680366F1947D0103D5E4D72AF8579FF824DF89949
+6904BD33856ED29B9AB43113DB038902A9DFB2DF3036B99E5508156522E76539
+440A83884F8C08F8D8449DE3EBF2E6A775090536040BCB299FDCB7E9AB6AE453
+3AD36E109C46221C82265DFA576029157FB1EB3236F1A84FCA1B9B68EA2AE583
+6BCFC2D127B1A169A7392AC1AC251A14C32D643D21C5756BB6E39AD478160069
+A11B985D9F69B800D339BB0242A9A7199E996B02467F6A1F220A8FC245BF2F45
+5AED4D104C5513D3206D57C6DCD93B9428F82CD9938EF6468A165B5A53CF556A
+68E702C0A9796DDFC79DFAEB0ED0267BD57D099D407AF32F8F84EECC9C84C57E
+C34339DD87991056EA0246914D3E2096517B7C0CD1F674CEE593B92129F0BEBC
+2ED3DBAF4AA2EC0217DDA3A7265148B433CDBFF63A68C4A33BA2780E99BF8744
+D3ECA386BA3872EDA1B99A6191EAA8FE477301A84DDFF5BCA00551286CF62477
+10EDF4D58FB980707E202C9C337663C9B16F9283D36D540C75DDCFBD525473BB
+027BBA7FD75E952C2ED012B5455FFE95DA7E04C20F8A7D5C11813646516968E4
+36259B6A91966E87664978BEA76C2B2E093B2A65591D0EF3D501D91FE135C2BE
+E97A446B0586BE37201363A10C2F73026DDF0F0B6FCB331272BE349027410D4D
+958EC50B66EB7A45A1E818B67ED9A5DCC638D66164772ECEE06A80765C0B259D
+1B01A13FA9208182644F5853A8B8C3EBFF7F25C575761E9A49C5275E66B16FC6
+625D7E73A657F9B23EF1CECED93FEE2DC83EEF7D695D76D19BA87F83642F6676
+C460692CD64AA6FB768DA6008FC1C79E22055261A9A62DD1950F4899A7F6A2E9
+21D800038C30183019E084C951394B9F6AA87646410623B996B310E86858BE3E
+8C6DA85FEA3D6BCF62D2C3B154104E7CB5FDD42B54F52F8DBBC12087570F4C6E
+8173A04835CEA36D2280C5C42B880A498E30C7A77940F28397DD279907693979
+077CA5D28515A04B4EFAC1F0C948D69FF108320BF3B5C3C7D642AA0122A49ABA
+735B8D950535460E0B2C17475404D8E85DDA4BB68E888250500363648828A193
+AEBA46DF8C644FF81A998C5A7E4F9F9435C4F202C3DAF498484A012D4088C4D3
+AA9E813A9161BE6F9844167AEB52F29013BFFF51928E5DB7B48BD20D86F317AD
+63EDEC755F5A85B2B07C5B0E0A1B7A006D547744462AB0DDDFA9BC20C95DC57A
+61D44CB4A45558C68E36DD3F680605C9987B6B6959DE24DD65C874E46D5AE7B0
+C54608ACA7D5C7A88FFA06D9F6366E623F036EAF7A9914B0B549747AD58CC031
+97036EA1D54D01A736BD6CD796600E5884E90DB6BC5E2CECD68B995D06B26FC5
+2B6EBCE4279DA0E33317071FA1801279FB48563890C888BF6F2C1057F9728A95
+59D07684FD8997DC446EB635E9A5171C14E2A357C00C30886EF1DFFD229A82B6
+42912D02E3AF236F5C773456BDE13F60E8C674B21BD59D4E6444371E28956C23
+FCB55999382C3347777CA0CE8BC002CB3DAABC58D52FE542A115FDD96D19061E
+1A1DDD098498C9A8E713AFCAF355D2765DAE775FE6F9EA4DE42A066DEE306432
+065E7DC31F144697EBD270671A77E6096C0E191C96449F7E94419C752B920EC3
+034686DABF9FE674DB5E0744D44A82DE6B3933193F2E91D7A74BD17CA9FCA7AE
+CF9E5650355DA885806A24A9993F3041038DBB0DA23D74F12B86A329DFAB87CE
+C06B3F1C7A0D84DEBB870E64E15E251253E82ACEE05186D3ACC88E838F276B99
+0729AC02CE325EDFA5BC3F5DA079E55CA302824AD2DA70964AEE86504BBADCAC
+44B9244CC456CBEA44517185285515DF5AE0BDD7D98AC8928EAACE6AAE7D93AC
+E256992BD972DD6E33EF98DE9D9EB30B6D0569DB0B0BB23A1D0F9A6AC788F6AF
+AF81260D25B767AF16D5F060960E11146384A241CC05185408FE265CFA941DA6
+86AC510021788D2767FF5B384A17E60EF2A664207D6344302CA491D7D292D7C5
+A6DF93AF2ACDAC6970A16A5D3C78991931163509561A0CF10E7375F7E91F331F
+B84E8405E9A1881DD4103B575E80F36F7203522282CB5E899DDC42C781963830
+BA1051F49DAF440F28847188237492149C74E4A99C3323635BC051B8000986D4
+1629B1B7038C98D182481E182D4CA4F1554902D6D88ADEE755E9155861C0D772
+CB414808198E4686B722786911914585F81D84501B40684E279C5E6B0B0C2FCA
+F3538806C4A410EA894CEC8218DE6D2489C6239BA36233871B0F449B4AE9DDC7
+F00502EC6E7247BA3A829795C9351B50D312455F1486DECC64D2F159B0003FED
+E201B29443F8127878BDD436CF7873F22B3FD597EB81F1D630811BE93A51D340
+FAB3D607EFF2A65A74E78C792896CCEA1C2F1C36D43F1950453C79A9F0767B08
+DA6247B44B703157FDDE2F431089FAA9AF23C786737E921D76BAA2D68C3BC8DB
+DED8E756624970C823E97C598DEC658E28AE00CB901213CBA0110E625AF40618
+D9EA9369F124D089C2CAC832A145474AE476AD16BA5BA3FD9C28122229C3380F
+AFA46693D5E9A6254C055DAF47FE051751FE7F9284EF39A36C5D25FE6FACB838
+17F86520B8F143F8A7DE0615FFE77078603F5CD60DD0DDA9B84F44CA3BDBF2EA
+10F6CF79CA3E66EEF95C8E8DF98951933358360BE4A9CA23EDB5F5CD794974F7
+1A6708F418D34E6BE5BE645C266229A960C947877EA14415CEA2B238C8191387
+100FC1D6A879B129AD2CF7D50EA7FB9E8BF2C80E6609809A0E8CE2A70F2DC54F
+3F958E45E63AAF577AC7023F097A77C8412A48A3E608B36F96C39AD6067C60D1
+CC7A2E00BEAA799FD75F1F694928003FEB29A8E6EE075C57C789781D3E983115
+68AC3B16695D5FF9E2416277288367B040DC47D40D5EE565ED73DC18D23B8EC4
+DEC6790571546F0ABCD004B3A6C2360D7BECAD494888E737FD41C0FF1D277891
+7DAC83316800F786A16959022C9729ABA334E45E077A69D02EA82FA23086DDC5
+BD96F41FE176A7F491EB87181FE64F647980DBA6F210F3260CEAB4E076918F99
+D8246512F1BAD74D3C15EC69ED19346B60E59D8A9DC26D00B47741F103DCAE31
+A2CB69D1BF659C091044AE0E2796F13C9FB5CEDC3527F90D035EF785A0655296
+0C979C70AF9637D7C6E3DDAB3A9E17594FAC3DEA75
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -714,25 +1295,41 @@ AD48F174E44AD17C66B96DFBB9871AFC5E
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
+{restore}if
%%EndFont
%%BeginFont: CMR10
-%!PS-AdobeFont-1.1: CMR10 1.00B
-%%CreationDate: 1992 Feb 19 19:54:52
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+%!PS-AdobeFont-1.0: CMR10 003.002
+%%Title: CMR10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMR10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMR10 known{/CMR10 findfont dup/UniqueID known{dup
+/UniqueID get 5000793 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.00B) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMR10 def
+/FontBBox {-40 -250 1009 750 }readonly def
+/UniqueID 5000793 def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMR10.) readonly def
/FullName (CMR10) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle 0 def
/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
end readonly def
-/FontName /CMR10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 11 /ff put
@@ -760,6 +1357,7 @@ dup 56 /eight put
dup 57 /nine put
dup 58 /colon put
dup 59 /semicolon put
+dup 64 /at put
dup 65 /A put
dup 66 /B put
dup 67 /C put
@@ -819,488 +1417,754 @@ dup 122 /z put
dup 123 /endash put
dup 124 /emdash put
readonly def
-/FontBBox{-251 -250 1009 969}readonly def
currentdict end
currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
-016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
-9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
-D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
-469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
-2BDBF16FBC7512FAA308A093FE5CF7158F1163BC1F3352E22A1452E73FECA8A4
-87100FB1FFC4C8AF409B2067537220E605DA0852CA49839E1386AF9D7A1A455F
-D1F017CE45884D76EF2CB9BC5821FD25365DDEA6E45F332B5F68A44AD8A530F0
-92A36FAC8D27F9087AFEEA2096F839A2BC4B937F24E080EF7C0F9374A18D565C
-295A05210DB96A23175AC59A9BD0147A310EF49C551A417E0A22703F94FF7B75
-409A5D417DA6730A69E310FA6A4229FC7E4F620B0FC4C63C50E99E179EB51E4C
-4BC45217722F1E8E40F1E1428E792EAFE05C5A50D38C52114DFCD24D54027CBF
-2512DD116F0463DE4052A7AD53B641A27E81E481947884CE35661B49153FA19E
-0A2A860C7B61558671303DE6AE06A80E4E450E17067676E6BBB42A9A24ACBC3E
-B0CA7B7A3BFEA84FED39CCFB6D545BB2BCC49E5E16976407AB9D94556CD4F008
-24EF579B6800B6DC3AAF840B3FC6822872368E3B4274DD06CA36AF8F6346C11B
-43C772CC242F3B212C4BD7018D71A1A74C9A94ED0093A5FB6557F4E0751047AF
-D72098ECA301B8AE68110F983796E581F106144951DF5B750432A230FDA3B575
-5A38B5E7972AABC12306A01A99FCF8189D71B8DBF49550BAEA9CF1B97CBFC7CC
-96498ECC938B1A1710B670657DE923A659DB8757147B140A48067328E7E3F9C3
-7D1888B284904301450CE0BC15EEEA00E48CCD6388F3FC3BEFD8D9C400015B65
-0F2F536D035626B1FF0A69D732C7A1836D635C30C06BED4327737029E5BA5830
-B9E88A4024C3326AD2F34F47B54739B48825AD6699F7D117EA4C4AEC4440BF6D
-AA0099DEFD326235965C63647921828BF269ECC87A2B1C8CAD6C78B6E561B007
-97BE2BC7CA32B4534075F6491BE959D1F635463E71679E527F4F456F774B2AF8
-FEF3D8C63B2F8B99FE0F73BA44B3CF15A613471EA3C7A1CD783D3EB41F4ACEE5
-20759B6A4C4466E2D80EF7C7866BAD06E5DF0434D2C607FC82C9EBD4D8902EE4
-0A7617C3AEACCB7CCE00319D0677AA6DB7E0250B51908F966977BD8C8D07FDBD
-F4D058444E7D7D91788DEA997CBE0545902E67194B7BA3CD0BF454FCA60B9A20
-3E6BB526D2D5B5321EE18DD2A0B15E53BCB8E3E01067B30ED2DD2CB9B06D3122
-A737435305D42DE9C6B614926BFD44DF10D14402EBEDFF0B144B1C9BD22D7379
-5262FEEAFE31C8A721C2D46AA00C10681BA9970D09F1EA4FA77428025D4059BA
-2988AC2E3D7246BAAAFB89745F0E38580546045527C8779A254DB08DCC6FB9B9
-0E172209FBE3857AF495A7F2B34BC893D942C145C2204CFCD6A5C69FEFC25B60
-E412CB2BEAE7F7FAD03AF46344F6A7D483BBB1E896BF16B0F4C363799DF23CE2
-E8127996DE841B6F9D8A9E56BD799B6A938582988AF87151BB8D3AEA85C49857
-DD862B5E10D9F33D57795D656FB616BC9B8397B3612131A2B0F472656700958F
-739A548F7C3A348698AF9F6F9821D7A9FD4131781ACBF7EAB885A3AC254DBF94
-02FA697941A0F97F048861788BEACC20DE829764413CA58F9D045A6B38BCD6E6
-E4827247EDF1171F64E3B041A69B244308DC07F66643FCD7D5FD37F36EC4CB5F
-957D4ADAF91850A3B1A765E0E580EDC77556593D1B2E1C22685268469298688A
-45C474C9D0472D019CE1E83F25182D084AD85A49C502E8D679C227DA8E32045F
-8055D1622C478F8FDA342685F858DE3F53F1CEA0D70BF3FE09037D981E9E7FFB
-BC3F896535D0DCF53F4C85A1DA5D0B632484D1F25460E3EB38E251D2AA17817E
-F3B25A2A49C0AEDE0B89E277F52CBF744EF0243C409FD71FB0C574640CF11599
-117A4F42F27D8D282D34485AD116F7E753A8DEBFDF7C552A1179C02B7A37782B
-743D0DF85C15A333BE9EE82C13DBC9CB007DEB5900954AD9309902E08B3D5BB4
-E8414211B971CE8B9F05A61C15F400D9297745F606C6419E8A8A9ADCBDC39243
-617EFABFDCF9F836D14411BD72EE19D0BDE89234BF7D52E7A68ECC952FB74FE3
-33E1A87DA39AEEE9E90406E2B1CF3799C63E9BA858D54F38918B814C0DF0B696
-839C820C26FB473ACC5C08E2056457A74123A398806EECDB427BB183F5458105
-2B66D7E1FC3529025D3243A045625E9DD9417FA089B3C7C394D2B65C0367FF73
-79F17ADEC6B5D27A5D3D3E244A0839E38267ACF07B2D994C2B4E7F30A416EEE2
-D1688F167D1641A72A795B1F4DA3350F75AD6D546AA118B5F8A5085F5794E6E5
-28256CD31D250D8328C9620B8ACAB03E4A33DB4595E959F4D0FB1C8CE85A710E
-22F1940067C036A7DCED7EA48F1EB81AC4735FB26A249A32AC2E3E7636B32D31
-7D76FBEBA106D6C67C94A3BD4256B786B71C6EF8D191CA90CAD8D2EEAD42C6DD
-8BB4BEA7DAD4ECB6E002F3B71C2955A5A401E34D55F755BED68178C270109BAB
-FA0AD848347EB977325530B27180661A59447D7DB55A62D65309DE24B6638986
-1D3A539BD37E74C2C00DFED3336B5C6B28D915AB7188FFBCE3ADB3CB903944DF
-1BA5923A1C053D4682BB8616F44E81E18DB2B58298F4B1A6289CA993DF3E7C73
-B00DEA3A9B747FEEBC4A11E5B9B8B05CA2709B8AA935A42159D3DE399544F5AF
-AC1CC00F6CB94AB69856078C9A2EB2046BB9055CDD6A0622112F7D3710143F1C
-20CD8DAB4109CD47BC00EBCB88314081C1D6C43132412F261CE0262FA28DB7A3
-C7D8534BCBE1A60488EA230DC558B73C72AE87539A9D7E28C2BE05FC05F58DDD
-87117C0B5235B1486088B8368C80ECE70DC07A0493C32B571F6D6E5F3C7556B8
-79DD18A0C09C644C1B0A57E09CBF8247A97FBDA9442DF87C99CB00F959FE4925
-8FE8B3EA62A6C99396CEECAFDB091CBFAA0EA6F25BE1F34B1B8EF507D2347A7B
-866CE28452F7ADBB56F4696567032BD289B3439D6CB90A602223E00B43CD2585
-4D598BE43C0161BEAD813870FCA3E377A588C3D24667846301D1BEB056315636
-1304E2CB595B5297018C0ECD1BA4F8F1EA81B4FF88126295CD676D96756FB9FA
-C97CD2A8574EAEBB0A869C527E0828940C613B9D45894E4667172D841C94410B
-FCC5083CF850AEB2EF92BDBA8DBA361AE95B267FB5F90D5EF8B16B2A83568D5F
-50BD20AC88DE25DDFDAAB7B2F7662DB99E20989C7D12DE04057FCD2DEEC770D6
-535680D13ACB557EE7AF8DEBABC3088908943E6E3655C3C00ED022B276FFA5FA
-E6E4ABB96A214908EA899EC925E67E86413840A67B3FF86957586B5E06909036
-B9987C5BA21E46DE7919B382CFC4740ECC794A6577BE33CCB94E2E4BB3F28BBF
-AAC6E68DD9B01A59A7F3B964F53F41CB9BE94CD44027868F079324B44C595200
-0E375B069FC085DAD5B678ACBBFCCE8916C4266B572D89C0A7B6A26F1D329EA7
-63CDD44F37932CDC9C89C724AD52BF91CA68209471F26C10AA18CBCD1288460F
-9EA9BA85084A5F34451044B81559DBA03F03292638C28A704C553CB25312C568
-A06C9F5A764BA025FD48883244E88F1A31ACAE83432C2B837D034CC960EDE3C4
-2234FFFB8132473C8A750A41770EC46F9B2CA7FDD937A2C8CBF5DDD6162EEE0B
-36C53BDC0D2D7F6D38DC2F502755B0D25B0BD1858A9B16BA69549B5CA4673F0C
-32C5F1BA97E1C124374037E0B8EE94706B3B2AEB9CEBFF69E4F107BABED996B2
-EA92B4D94AA267E626953550633A74099022786C172A323DF9D903A0DF6CE486
-38AB2B0CA07D5EEF34BDE2DB5F539BEDB569F60005A3317EA6B1560C22606B8E
-AED6F84526090E626FBF48846E49714EA80C90FF66F82F36F3151B580DAFFFA2
-668B4952CAA66C6F10A341118E0D58B8CE34367BDAEA79645E27059FF2A43D2A
-435ED248345B6305316D1DAC5F75787D8E72D0D8C3145C0A1E45B201382EB716
-D06C5E8BA78B6F32B13F80E7EB6909D2B7ECD1420BA2B2A88C0C3154F3091065
-16A79C898C1682A98FC2A11A2B8D4536D74E6E228E5474090D42CBFE3BAA8029
-4564F468EE59B2E2BF8B2429634898F21C31812394AE3EC0CA8CFD5D5E818F4F
-344FF40488F06A48E9879E42F131DE378A8A733C6016BBDCA24B10B385BA73D3
-DF4770685FC7B9720D196A9FFF978C10977D37D98F11A3255486C8F8C3F67225
-4AA8884C88A3194EC1AFD2DA57258E30B057490A10AEA001017F06C83255C0AB
-13AE04B86FEEECC7F04A593282501423D319CC3FFAC3691DE723F71A6138EDBA
-F1373C651464A05906A2F370B0862F5E5CAA5C9570B7D5F9DB24FFE4A6C6B98C
-539FFD61F24487B2AF446467B1A3CA16E9BB2384972372C90DD930B8DAEC0FEA
-7C2692F029EA687E29EADEA6AE95F030A8DC599C8727F5CC41FFF86EC7E2D04E
-E1498E0AB0D2719E08956A68FE7E92EBC6945771DDC13689CB68D39EAF73CB2B
-DC8BAECFD1F721BC66D89342D650699C3364A2D0B35F58E4CDF2209512224472
-8920B0079AA5355990733CBCB8A372E1EA02B9DA4107F619968075F33BD123CB
-870D0DF6B22E6DB70F1328532A05BD7A624CB7488034E94F3622F97636CB1330
-FE3336665F27AF77FBCF01A786143F0AA892E1B2CDDAEF2E0F33E56F179CBC8A
-72973C643CF217828D892C818CECE72D0E89329C6A9159BF17D10BD3BB4A1154
-997ABD8127118AA79BD792292B6B9689D989258CA9F57A75C4C9CEADC338DF07
-13081B667C8D86DEEE5BDCC47FF96E2AA5B37C365585747EB3B664F08CC7ADAD
-B42D1B54096C60AD15596D7DC585316A36598A349E89242274B5171A1DE841CC
-30A5BE43B0ADB71C3DDA25650BFF704B452831FB06A7DB0D60D24436BFE23CC5
-AA68BFEE0897140B248E4A9BE7AAE37B98A54CC1D3F81164943B66250D55E554
-55A688BB9E3077FF8D11D1BE1C3FF99DA01EB206AC5AB1D394854DF5CD417084
-82BF6D1DAF88698A69DC196FA9A3285AAFFC3441CB4297A48DFC86B29490F2F4
-B514AE8F3D4C0EF920791371BBDD1B6369C38A90A2D2AC06B25781630847D6D0
-87B469CAC111778CEF26FA3233A85044965F3862C83F63CA2565B9644EC15B77
-BD2BA08CD8AC3DF1E5CC53CCE496172A18627384CD54595E3BE1E7D1B9751C86
-D6AD3EDCC725EA4B09BF3B92ED658356A3424F1B0D07B6E11B8E1D4823F5B0C8
-F3EA4BFA3DF77AED89D464D29BB2326ED2DEB73E327AC8B2C99B73DB70ACEB0B
-D0FD854CEFBC72FB9C906B4DB9EA35BA8018C623987C834B63E8C800A30BD551
-011F6E05EE76C26ED2F335E32BD4C866A57BA7AE89ACEB1066E795F122E1BBCD
-5768F2DEC922EFF8B1778F4FFB7BF1B6253F632F8D98648B81018D2FD4876974
-8C818E01ABFB557C8553B98A512241000B9DF64C1F5784343314B7B3CA04E506
-BBC612628AEE13DA23B3242AAC3B05244D3711121D5C9AFA8EBABD2074DD3658
-0F46D501A2CB11A370EA7E38E3682A31F5C47836E9CECAFB1BEC80DE889E99BD
-8F4DB78DBA5AC5D764EA99237738FEAAF199DDA7236D22B07D22A8F6ED023E44
-1828588397D723FB557CD35C7C5C87BB64E4A7F88B03FAF135ED0F185F7AFA4A
-F498B226D6D843EFECFD9029122B15065A4D04B509A8B633E46AD3D15D4F9EB1
-AA41E4694AC4DE0613B027E35C32935B5F0A9C21F5F60B9DFB5FAD619A35AF19
-20C0A1B2490E8E3BDACF27F37680BB32489D21F91603D4BC5FE69862A1A05F10
-4C11FE5744676C4794CC0B7F1AC1DC9861A247234FB986A0A4BC5F8F6A3183FE
-3A6FF5ED1D32A711906031CFF6802B5455CF208787AE3A35B1D437C64E5A3283
-A1B87F31D6B6AC634579FC3145035BC5F0B454CD9280BA3509B890D45AC7EC54
-F8FCDA7E5F8AB9F8201621417E17FFD8CB7BF55A6D9B21F95C403AC0112A94D4
-B7BAD823A1E9A5FEA956B08ABF303A917B69C8BAD87E685DEBA72E62AB132F46
-521CBA0C7A96A833AFDB396E0FEB85D3EC605A4EF6026C0A6CCADA56A26A8FDE
-18C61D26C93DC6E15F1B5E789567E833E79CB85580CB50A68AC93D9C2454861B
-487A833774E205A73A2932D0043759D5978921BB5B499BBEC5AC6F505EDE86C2
-8B8DAB630F36128B53BDA72CD82A3810E94C6947C9FB148574FD25E8629CBEF1
-2AAA7DD33D1A83C0235AF9F8FA00822AEF0A6E9DC7FA79B3872CAC39957D746E
-3F05C8EA69F0BBD0D96DA2ACA93E73FDECCA8B35D6CD52C464C1A51EDFAA83A0
-54C236F0064B7268C7DF4BC1F97606D48D6C8739AA2CE28CFF1B4986B4CE8A60
-D8DA6C67A6887CCC3A0A2790FF5FA00120D15C26E8D938D524F355FF8212A689
-D34269669DF03F1BACCFE834425972EEAB399EE578407F9550B93D65E63E3707
-CDA159B5AF4B68ED52D389CC6915CF7B0C737514EAB05C947AF32D67CC36D782
-C9F73B32CDF11D2CE33E8C3DAC12AD070D0CE9EB3C209D0830C0665DB9F61C35
-FF976057485A32A5A41E7205BCED4E2B9D2011AE3FA90ADFF6E3C58144293A55
-E25C6A98BA2113DAFB861F0C3544A15F5CC20496FBC58F1FA2088BC67334006E
-2AE3755CF0791FE82E8620A5BF3B487F37DBA3ABE1709DF21745CA7D7CDC0AF4
-F33FCF3672EF5ACB540CD7931FD18F815422B2A193C9AE34E626020F9AC0C36D
-4D5AC1137C75F10B42E2499DE914703C682806C9E1D158217C68329CE401234B
-462F92A35F20858F5FAFAE3062C57ECEB930B762880A982A8DCB7D010383A156
-547310C8BDEEDF6313650A2FD71856131E24F1299C8033CF49DA9BFD013F64D7
-2B571F6C2E0A84FE62F060298C654E068F0B8BA453D5F94BC89D3B5053721731
-AF5CCFED84B7F6CEC60FA31F84644CEFA02DC2323CADB246E64DE08D9BE4FAEA
-59D1652DFE1A09C41479C3CDB577942334F8C57545BD883E0AD172CEFE546C21
-5B9F63E32980B1E57B0EDD66674C9D919F6E323DA0A0CB8788F031BD533615B1
-D27320ABD6A1147E3200322DB2D8700B3F1F8B19E3C5B67842E84469D997B702
-0D8DE8894F5422DF2B9244C20186597587D3852F34ECB21E5244EA9C8596F0D8
-6E4D7353C7F6ABCAC499D7E34CA7E7789A54D712AE69DE15F767F045E637DDDB
-CAEFE413AF652D849D58D52DE084956D177AB7E3A9146B8A56BA23CB3F734298
-88C66B7C2B084EF219FA08BC87443FD9D86BBA351427631D368F514C7DAD7329
-DDCDCE8311971D746FE79322097E7F676740389F17B11587086942024918CCBE
-80A60A78D96F3CBB59CB81BF5D8028475316D96E12248867A3F23A859F8AB547
-B1F06C1ACFED4AB83378932A253B8FF8AD5F44BB4EC7A7F025BBAA179C81DBA2
-049053EDA32AC126C4F222B5FBB1119C7BE3F4BE0E9A3161CBC5F4842E6BD743
-11903130004FF705BDDC0EE6C1D97396904B295596A226FECFD665AE0A6F7EE3
-FD51F370008D1697035CCE907243038E0B0487A6DD63F1ECDABCE1A71193FFBC
-6DFBF1726156A4E9710C0D272A7A351F8FA0C2785BCFD0BDCF1B4250675B512F
-997677E512B29D85313FAB6F7FD26B402E1C4B2E270E264422D1375B93EA138C
-171557C70A07C8B330E0C0602949C60B9D921B33E906ED3858966A640367C505
-2E3D254C1C0C63B3F831C9D2AF2B2FA6FE8B663F94B72A7FFD63712A2C4422B6
-6E3524B5AA8D2EB9C7733BBF2662B64B3428EBFE956CBD500DC71A4F4CDE8896
-2EAA65771273D823E8687E2FED6A26D7DB98DDBFB57670278897D2AD553D6AAF
-6F1117C4F894AAD44F53348A763289BFEB2E9DF66DB921E402279FE17634E0DA
-576F0323E1F849DBB1E7E56D0303DD2C81EBBC192B5F8C13A5F5028D64DF153D
-C7E4C2A59A3E369D44F346BBD79A4AE4930E3249C1FD5CC8B4FC6C753ECA9326
-797F25BEE6BC66E125AFD247A2CC2F61A47F03DB682F67382B2E83312D1D239F
-39D8BD6C3256FDD8D424046A289D17984ADAE316FA39B743B12419DCC3C8582C
-EF6BE8C6E7A091F1EF76C6090C15A7742C5F66F66A69DE863256574491B422DA
-93F4B0B13E69B03D1A92840D80B39C96A535C2AEAFB579B9051CCC67E32103F6
-21EADDFEF9CEE1980D3F86DB452B61200C9805EDBD219E812F22AD612B436E28
-D86956797AE0FBBE0A0DEDE4340B51D2CEB5127FF7C14C85AC55C55A1A9412B0
-1471CDF9FE7D52A5A069669A9C500FABD920863628E541893B2692B9D40CF391
-69C797742BEB239A6FF37CBEECF5ACC960011BE1CD35241BF35431F902EE41FB
-5E89FD3C7FD3E7CE970CEF9A3BA9DB4F10945568813D4566F5939A7CF94CF2B0
-97E9D335CAAB09BBDED1D462EA787E5FD11A63B17D75882E379B490C5B2B4440
-FCCE6CD6EC2F4C21D5443E6269734EAF0A61520285791FAB0B421D5CEB2CB165
-286278D3F21045ABFCA81CD9E50A733CE516E1F4C494FF072C50FFCE2D746CD0
-0D28F9EB6CB77425D0F4188760F61C46101F21215BB89FE5FB9684F2E9BADF1D
-8078D29B3160EF63A74A19E17202270928654B95413DA00FF89548F30C8A2146
-8082CFAF97B44733C420572188F01731535A0F5609CE44AB565563B15212E835
-10E5EBA20E3B1635B8E08D85E8D282D51AF0C5D8B4526EB0D43325370644445E
-087E067A1EBE6E9C5A69D8F2D32E2960FA2B26B582A4D2D9AA1CC49408E88CCC
-19C63FEC3256F43F55CE38B3F2D7902A4978918AA2D9D23EE839BF2A901F0649
-856041B1F62612DD6FBBFBD1D3645ECEBCA6587080C6DE11DA4CC9F8E08758B4
-37D559BA464A49A3AEA6373DAD44C615496C71C41080F4357FF2ED23608BB448
-FF983C196501096A58EC0C0FFC9BFE36C735118DFA981C69365EC6E543BABAEF
-0515AAA6E8E34711747D586A6CAAE1D3D0F2EE85DAE124D93A6EDB408D9FC825
-7943607554B3CBF71A9843A76A69D7533865BE78F7BA15316360CEC333F0326E
-EDF8B884A60A0E02401A2A1E3C18C89580C030AAB8B94438214A96EFBA9554F8
-2AAAA5C653E94FE70BC18F998BCD6713AE8A087E37097C36E06C1E929278F668
-4E6B169E30196E373D89CDB6BDA65989AC54ABA2678ECC7EDE24AD6263BB0301
-012E31B2361D62F8E08528558CBE40A37939F09069F82095379C56C31EF2984E
-78BBA233E706B9575A245E527CCD6EC11075A3FD2623B49E2A68EEB68030AE43
-1D7AE54192A39C52BBA92FAEC3899FF0ED859B0051537F998743B6C5F2DC99AD
-FDBC65E51D3E82B70CEC3EF1C3645ADF893C3C5F3D25D51CE54CEAA463F8BF8D
-EDC3CDD0422C12FB34C87305CD11F0005B4AEA3E9AAA000546E4383C7B8629A2
-3372E0E857C5A9F564E6FBCE49407740873A109A2B8FC581171B6965DD349786
-E547781395D8F3E42E99BC556A41773DB2BA8AA0918081E4983B9F8B43A15544
-8D15BCF336E93F8CFCE6E79940A52F9B7067C2C8688F20F842B2D0BC02DB70A5
-3074D0CA85BBD01D6D91B2722CC15C866448C91ADAF9EB2D2A52F08B39808E43
-2A492AEFD45480EBB07C4182CD6DAA9C26A561B83E381594A1AA0364C4464AA6
-20621994D2B64D09B7F460C2D6A7C264D89E4415A9E54A53CC8331A3D358BD14
-4894EBA4DD7AE1B836E2C9246DBB0800805683A11DBE420BA989837D86A1A600
-8B669C7A7283BB9313F045A08602B7F98F78A059CB086B5991F761CADE8AEB86
-5039C35C2FD564C0D8CF404A5F32D7C532716169EEB6D08C8CE5BB357E4CDCB1
-5FCEC35440433719FC19DEA55B1662309EC85EB47B323CE2EBA56D17E0A88175
-B2FD7B59B37F7D48FACD52A7DA80BC296E62D60D6C5F251554138DDC4975E308
-2F9673033F0A255FE037F16CE58A3EF652D3DDE2AE7FD39AA20E88FB0A7B4598
-02E993D6550EE854A5D9ABB3B15BE396E3FC2DEE919D354166BC1A2519E0F2C0
-228998A7243FFDAE507841771E4A88B610F1D390F7898CCAE418C8CC15A4B3A0
-9B74E01AC32BCBAA020C99B6856952158F866E0AC66F171C3A3265E713094F71
-BED491A2ABFA737A0EC17DB262A73EBAB9F8F9E96DC7C5764B92D15F5C967CB3
-C846C147DF1568A68BE099D8E38B5A9FEDFC66CE2AD3BBAAFD72AA51D6C08A32
-AD54AE75530267728A9EA3244E8C8CF67C5A28F67068CB4CF90FB76F280930F1
-893C952DC2A7ADE38C692BD19FFF63383308FC2873CF241C1C3D1ECEF6B98CC7
-287D9F5F0C61033CAFA9739D9941AC833A194E67CD1B9CA1FB4A02F0A53A814B
-565CFDD9CDA06303ADB599D6CE17A7F6A81C13040FB7D6E98AEC4BE9F88F3B29
-FFA880E8CF8CB6F4FA009C4354337A43DD077D40C993A9AF66D2B524CEE5FC0A
-BDF03740A45C0CAD814E869D435C61A964D0644E93C6F228B205ECDE4EE59D67
-C35647FAE9617877DB23272A9D777262A1DDCBB7CDCFD2D6136FF69C000F9B29
-DA30B2A654C27C564F113FFB52CE2F6618EA1C8102FF9D93B0AA2C936CAED8CB
-1A9F2FA71930351D74240F88DE47423EAD67D66C20C8DE2ED00C94642C25630D
-4A60B8DA5362D00F3399C6796EE25BB88325E11045FB6E00B72706257BDDA2E2
-76C77F6E0030906D646D759447343EE6CDCF9A61CF30C1392BE54A0F5951AA69
-461E856C4A2921C859E03E13AAA1D6F563D5F62A66065F36ADA9A08A697F53E0
-249DB7965E9312F46A18F6016684708F397989B1C291F63C491B48A8B1A51E8A
-2C1DB13DB081B75784ECFFA1735A0DA6D443D7BBBF38B16874B57891E3C28A04
-C21978532D806CAD99C9CB00777FC2B9582CA68D285D0488B5724B9EF603D4A5
-4DC01291C0AAE941219EB99398C6051357DF7138324625A4C244A3B127BA85E3
-08C8272EC75E848D984E38F151E9C0D46D1BAE4648F7391B59BA76038391F306
-3E8E72B0B557913A38CD6042D2ECFA192A5124B9F58C887726C72C5518D3CD90
-B24196C04E0D05A6B590E067B17103BB36AC830CA181BAA072B137A344B7570C
-7EAA3272A774A58E049F71DC9DF45CD22B1452A26BE34A5179221A01FC5536DF
-BBB94E93BA9EC169BE596336768AA8C9A72C258B8A8CE7C511DD923193D886E7
-F6C33E5FD68032A5A4459955FFE76A8D5726AFDECF42818BE43F03D2B4B8958A
-38D94568751E5468A1322EBF924C7B587D732486DF8E309CB7FE20F64C6A371D
-D62BF5A33B49DD267AE4C3F638A76BE6DF49B693D40D8AE1E9F0C0B0606C84E2
-A6868B4F700A6DA1ECD097C96704B17DB76621FF4876149E6B2FFA89D38D8F3C
-1026401F2CB949DE9313115E6626B26082B1AD94D0C1F8E7B907B3676FFEC9E2
-E31FAC5504207CA741486734336521C2F9BC91AF257472E4762966AC19A6E89A
-87644A22CBC9FECECD919E513209FF439E2E7F24AA80B4D3C940021C23D7A921
-1B6E544E43FA00C4540C73EB0F3B8F352BAAE6CAA924C1F09C6EF7DCBF4BB88D
-0BFEC67C79B6334A4A0E6099A460B57FBB845831ABD0E83BF0F92491ADDE5526
-E036C58BDF78FE25C55B9580F6D02F2C2F7D77399DB7CB4B8B8E037538D2BA64
-BE2BE4697B87366CFAB5A92932465689775FBD9F87AED9B53303DBC13C0C13CD
-B549FF2D8C8C6C9082CCBB9B6DABFEBE53A85297555389E5A08E47F27F62EA1F
-11915A06C9A1E82C37E4AC72B009B0CBEF25FE046FF9FF20D50DFFA97AD9856B
-B51EEFB3DE0472EAB91CB0B51ECF29EA2025422B31C811C3E449416B8916C2B8
-63E9E4A80F9EC738B81A2A32BF196875BF8F52010B1DEEA25BC2719EFFEEA0D3
-A3AB794058EE49333468A3CF5D13336431ED14CEFB1A2D067AB3D2DE942D9DC9
-C0B5CFCBE9D9A4B53D9B2B19E28F5416F5DE29E73156516683F169BEC75C5344
-D953C9640552267E6CE554C418773F06BC8CD88084C60F8D7F37523922B4D49B
-ADCC93A64D0C92973527A810F6B0239E5525A6BC6AEFABBC8FDF0B7E1B368A52
-3620DEEC31E00D6CD5F02E1625A571A6129DC18333B395D4680CF6F69CC6D359
-4C444307FB45B09509E36E0905C7B2CED23D9B48FF65F31EDFBD2073F718FC34
-99FB4A68B4225D12A42FBB14D7A3FE9D2CE7DC8925E6BBCC4EB53632EA3432D7
-BBB17498259DC19AF7E6CA3F124A7B39BE4C9768FB49748F5CCAA3D1940E0A49
-136B3F49025B2C3D09AC6598844D9D113297A68027AFBB1D8341FEC07FF6CE10
-28358FDBA753264E7865B5B311532DC8D16E6E1747E53D96E996B9F27D9CFE93
-460158DDB6708485029D6F31729805DA1F445C629D5A7048F06D8BBBC6BB69D6
-FB7BE6BF7FC02EC0B33462CF5C756F35AA56886688B05F6A417B8BCA35886256
-8EE314686DB5BD49E631AC220C299A8C5D6ABB974C45643CBC589EB2D0DF48D7
-F59EEF1FEC4CCBEBA797DF168D1D08EC7467E7C35F421BB6BEA0E9C4846A84C1
-70FEBABA787CC46391393A0B99EF0CFC33730140696B0DE9C57E90231310FAD9
-D67462F55A56D9666EC08AC424E940CAEAD58503911C4D80FD59CDD5182ED504
-656628B1851818197DEACC842E943D5A2B75B5934E8AED3E67529FB51E625A14
-4D91B077A53FD8C69C930C677497A36A6A578A639EFBDE481EBCB80536C9CB96
-0A2E54A15F6940F4FECC203A440AB47439C9FDA12A9D78B74325ADF44010BF40
-6A5FB9C012E07A557A60326983A0802424CEA244DDBF66CDDF918B30618F348A
-8C5086F7A7BB1A86C7B4826323802701A584D17C6E19AB720CD13D02E8EBCE16
-4A87BEA7C6B76D05D49CDBE8549640FFE6124D2852A00A46768FEFDD2DD5B60C
-3AA80C3839A86B4EFB035B65E1236F6DA58BBE2A9445311E8714C82310E6A0D2
-E926A3D18AC3E7A8F8A61AAE5ADE10E43116C105653E3A03E895BB2F7477A0AA
-F1E481B4F1B3BC9DB099E60681EF3B0476D6E84DF5ADDA588E8320B4899D2D40
-F8CEA36C2039AE832C87644E2A3EC19AC8FECDD575364238524BF5F76ACB02EF
-094278DAC561F700ACE728478FBB8E0C192795AF982216E2A4A3488D6A4BF06B
-AFB8F4EE78DA4FD96437A45C1E1F49E83D6E85390F8FF9B8E487AFA6184FA430
-2A3E13C59C88E3FC8ED9102D485FCCA463197A32821988D1C0A7A86620655DC3
-DFEEDD33B3A1F55CD5599A58D0F4A390B69137D947897DC448A8255A2521EFCE
-2CA896955E05BEA3480166F9FF82F1B145DCB56B6872449335275533C38336F5
-4C49F40D0FB04222D14E0AC8057580118B1EB1DD43A8BF334763BBA198D851AD
-47F4499A2922816D2F0AC1956B4410E617201C82FDD7761C1A0C8AD025FCB1DA
-9A0722266E22C438C10275CC2BFFDBE726084F9CBAD1CA9ECFA072EB5A317EA5
-2A8E39F8794209B978DDF404FAFD22831F3F53356401FFB85334D339426CCFFE
-0F869606955F20FA055EE560B4744730EEA18CBBDC134644F124B714FD43653B
-C0879B820871B8809020301A71D37A44252491555D9B6278A9070C088C0A80D2
-BC753160E83AF282F3DC077CDF610A18A1A83D4920EB6E2A2B73E40BA112F78C
-A18A26ACD11A5D4E12C67A631D4928EFB809640F64571E5605AD4BFD3D00FFCF
-FFE4FF9FFF1A63002175D401D4BBD218F40B4C56766A4FBB93741F9D2B746F78
-B062CF36E60973FD3D52810750C06C73CC376F5291442A4EEF4B2842B6317CB7
-E1AE735793AA5CD2F927E4DAD0470D0A6612E8C0557245213B0DC87DF4B9CD12
-60A6FB3955E007041838B667417524FED98D5EE035C212C8377A6E2393D86DCA
-BD5092520A83CBFB978D2EEC4847BE9D4365714A5F36B343F87F1DBB1E2759ED
-78EAA5491A4EEFB8FE1FBD10112294959C42FA664442335E521CA7D7E7BDA468
-AE36FFEDA896738CDB3054025485FA28A071C96A003DF5A940261ECCE471616C
-A5B0223E7F435A096B90FF8ED7D88FADF050BC4C4C1FA51D4D389BC36E9D5D70
-9C38800E0CA38D1A045586E46563D855E4E6A8482BDEC35617411F8E046FB838
-1F745325CEF7AF2EF0D7F912A34BA6CE8676944A3B12212CE7AD55539FD9179C
-D8BE8CA39C9EEC948BCCCF2ECCC8F10DD4C8E99A5922BD9A56191C4900063DCC
-C3BED41EF16BD2BC1891D87E5DD05AF7C25D7E92B1BB87D53817643B621BB21B
-EA839B295433042A7E0CE294C031A4C460F05D16B46430445717EAC72766909F
-9008EF1F3F8404DD56B1B1F90A06D99859A1C45F7510B9E7C6929BF9E54053BF
-95B4911454183A5F2734C2CC7622ECFD0664B77640C416A1DA10F13BA0238C25
-DF6752C9B793F8FFA012C6E8E2AC81DDD9E402F42DC4CD6F290BFF4B9C633E1E
-52397F385B895FA3DC7471F3EB97244EFEAFB11BA92C994CFB511D7532304836
-151A4087F1CEE38AB690E1DE2354FA2A7059F42982D0CFD01BE3A320FB078F2D
-7947E9A5C973DFE340D0A742170386831314BDE9D67134451FDE80E093C53F37
-F0FD8CEF42FA08555757888839D9DAF23A735243EBB372A5C3230B1CC2F3B5C1
-C8C19CB3C3E9B1A42D0B314E778F7B3F24C8D61375FA725B40F561C6619D025E
-899BAFD602833506BBC5B6EC86A932F46338E7E26EDA743CC51D8E4B3944D186
-7EFEF666F9AE87E395FB9DDE9A936AB87B90771BE94B784B7584D71827874DEE
-03B55096CDD953D93FC0FCD7E878A11EB46A10CCCE040A90B375995C5FCBBB27
-5D0745BF763C61DCBF193651A3E36A4112F823B5607F418AC8C41B51221F9E6F
-0E9DC72ABCAC248BD8D83949A24D33DFEAA363508C263FF9B222347DA08B99F0
-2173065BB9240A61135E38D461736B04BE918BA150DC90043306056B657D6CA7
-FC27151322B0F132D91C0BD0B9483A6A26D84882095E20127541BC1D93B72AE0
-8A68A5DEFB35E50B37ACB926DD8DB96B910BB6F315FDBAE48531574B9ACBB438
-D1ADA41812A752E9876AB76B31CDE8EFDDB0DE7AF97238A9DA0846EAD39DB2AB
-30EB7D7F61DB0876FD294E5E09916F0C79417108B30597932BF1C81DCF5CE0BD
-2D65C84441D6354A9C8647D740C1B450E5DD3237EF9BBC793F1148155C0F950A
-405BFE9BE30D9EF9F8812279F71B30949F8640E9D0E5B6CD133153B2866E7F35
-78795EDF42FAC47913A9083E7069C4D4E6B0642F55FB481E7004DEA3C3C86177
-A103AFC8FF966BB958BC5EAE139870EC202D1BAC713AF4E3F2FB9594D60E83F0
-8638980BDB2FD061C867E748420E45AFE685D27A2767D31E272B43EC2DDA5424
-AC17EB9D1C7CE94DA05F741F0F635361325F227EC2DEEB5A3EF3AF4FF03F5FFF
-349A9571CA07A944C3974706C1E1A2A433F76149A1E33322E05335787A99C9A3
-98EBC8894218611339E7F065F13C02CF110ECED530FF12350140A7BC7BC810C8
-F17E870225D6DA162362C5587A4A13F52E9F92E31D0DC959DA76A3095661D000
-25A9EB458084039E445529C5A08E3C66FE115D2FE1CAD9CF27315D440FD45C76
-464970D0438E3C1E5F9CE9A9ADA95C5584532C7998063FC7E4E4DD3248148EAC
-10DD976E786084D5CD51D263AA0B7B5F0C31C1A127E03CA8AAA424C6D31106D9
-5788B85D5B2D4557615AF4B1CE34CB66F61AB005C5968756539C44690C3B93E9
-0629165F9377A1B449E2D07356E10DA88338F5B16EC8DAEA544ADED4B3EDD716
-550D9103F3F97E86181B8379D37E53FDA0557BA5EA231B90655957080E0E6DC6
-114D07BA1C9D1BACD0EF6F7997BF73482B194824A1EE1A39A6050213FDB4C820
-FE4BDE84724041C6F51287B7AF2E7A19558AB32EE2DABA726577787D5A136434
-427EF025B3D99F7B916F17AC1382994BD9DF6FD023D2AA72437FD509F55D5EA9
-189108B7934E0B0CEA9E956A000C5E23732E45BD1762961EFF36F7389BA1BF85
-312959449D0751E198C9C34E1081CD049759573217FB73F6A7B0348533F2D942
-9CF18688587980A65F512906C42593767D8A08F81C62E42CF85B92366E0DDE12
-0B04CD253800423151CCF040354A70EBF850C23013A48ACAFC816C4C002D0BAA
-0BCD2869368C497129DFA21813D2689F3EDBDA0956F822751B125CA6ACED9525
-51F85272D896B6A12EB9FB8579DF5FCE686804E3D4BCE113B5FD83478861553D
-75E11E30471EC3A76C5DA24F5BDA4C5A8B72E93DFA470B7E49CE1F960FD3F10F
-3E0E32BEBBB09244F091ACFD721B806D00593A925F97DAFC22C86BB5B0D4648B
-1BD0C32F5EEB7A3CD106C00015CC89B0D2677C7B4F2D3D818B40336B24D3B7B6
-77D03EAE4775C93326F7EE747CBD71FB65A2A2EAC5F1D03A5999C5689B099127
-61A2F058BD984FA3D2785622909A03EDE1A209ED6BB56237887479A782C75A54
-BC20ED5EB4E2BEAD28641E95237D2FE51C70AC77BE31246C92D4A3175EE3FE6C
-02612C7134DA79EAC6522DC1B52AD97132FF53EAE224C2DE9BB37E79464F08E1
-7340C8A79B87B439A484AAC56037E30DD391961E99B1BD4034BF50D00C1657E9
-8FCF4C2DD03612021175360A582CEFC4A7D12642EB33567A389EFBE03712DEF1
-00E971320F62E803F0775767620F37B34692C313FB9C0958E00597E1953F79F0
-F32186D202AF03829D2062335B64DE098D4ECBDED19516A3F4DC88D1799D0FFD
-F24B2C0E899D45756733EE27A1FCC99BEF10C462E9F9B062E9BFC16E75459B76
-06D84FE9C552AF42B0B3EC237785B3CB5075ECB9DE28817B55C85AAEC0C94C4B
-DA282188747A4CF8D63A50B9923CD27DB14D3BC523F41728A2D90ACF46355944
-991DACE13425D8DC18BA74B9F61923E45C978DC8B2D50939947CB4B33596D6D8
-5AB3DD0BD8E4CC3CB8D14590F900354CC46858D09C4BFA8142CDE33F8B75F349
-F535CF80B6DB8E64E6DADDF520D9E29D957BF1E298027BD5D0C4171DB575EA96
-1AECF1C3DEA0950BE26E739FBFB2BE59B86E188816CD44B7ECA980C1E44AA079
-AC2E7BD3C6FF65D9779B60ED34BCB38CCF793BFCF59B84A89A8C719C40EB0A23
-A91CCF0C21CE3DF3985E13C2EB9F89D6B7CE6923077D5E27260B55BC9FAE73B7
-C7EDE7676F922A8366154FAC92C7455863A45C4F4BF140776935BA4583CB1EC7
-1486197EDDFA9E46DCE6A28C992B10DA89C4FB8CF80CD39AC536C1D41C6753E3
-692F8E76928B5D4F2E86D30F7B3954BD6301ABB58CED13884C284C53D7A734BC
-46A9502745970B12A16058695801EDDFF1E65F7242CC61F6C4163A67DB236F17
-704CF79727413904319002AA4D81BFDDF64EFAD2DC47FB896BCBC5FF19FCA3ED
-B2321FF9F8504241CC25C1922DBB23CD6AFA25DDCFD473AC617F1333CFB469F1
-A343455681B59829DFFBCE8406D374059A724C7124FEBEE05F9BF3206254A931
-0D276555A890E38C69BB578DC8D7511E5F82A15E8E4BECD06D47F6E3AFD854C0
-B968F0923B0D7A3672BF7CDA1DA9CD9FEE74D70A2CCAD4055062E3AD8685FFC0
-B5BDDB530C857C3C826981C0F2F91574DE71274A4E404A1D73020F4B50376EFC
-748EEA93D6E1E2DB1144347180ED372D2727E2DBB8E9334778AB1C4E67993D28
-5EA56E402DC2A8B87D017778ACB9585D9C73780CAD7CE94B6BB727BB93366612
-8DC1B3830E7E95EC7EC2D539FE7E73E55633CADBC630F6B7DC36D77ED47B2958
-0B263DB67F07E16A040DC602CA362233C947B95F63F16239F0CA977F1A99F9A6
-B36F831B7D8AA5BD29DC4E26DB4DDB04508C53EA8041AF99D33899327C353C96
-A765BBFE74CFDD198E2FD0D9B9F3F76F2A8178A530919CB701F51DE0BECF3BFA
-B6A10EA4DB04DA17C04B2A932E937CCB268F5F427485C217D284CF602C9091E3
-6977BB4ECD4CA46905E79C6E847C0B7FE0A84F0DD43F7EECD10CC502F95293FC
-078348DBDAC9DAF6338E1F9D7DD289F52E1021E27851CC45AA0047F2FE07B5C7
-A6F0F8BB5E26BA7FFFB21082351804662F9C476E9D721E8A5BC81F2E5CA81F45
-4FC091EC171438E64ECE1899865F483D6015792450AE1186640D1E3C328B915E
-2893621345A8EAEF8A017CCA2D2608C5823A23FC7575397C3646476E8D26BDD2
-8C51C4CEF109EDB677017739A53CFA6A509AC5152077EA5ECD7A176578B6BFC4
-ABABBD0C484F31B293EE6FE8E68A281EECA6198A8BC6CAD2EA4EE2C49390AF4C
-6A710275742AFCA4E2A1DBE04123C080FAC65EB8C6AC86388FBFFAC8EEC49BAC
-464C4E1AA0DCB37AA6503E364FC954BEC84C9552300DC9495DDDEC35795EF8AF
-50D2C0CA0F238B3FA1CBBA9F9CBE1F621C710F73B7D456073082BCB28170407C
-FC3007F52CB71E08A85621B22B4DF750D011175E0A29B4FEBC1D8625E713D050
-31325515679F4A0D6EF17529A37C0BBC3F8F2F7AA0A6F57977941AB4133DA64D
-1AEBE4C7FABCDC25854BA5583678FFB54956AAE6D94F3E06D5C0F27B1DCF2421
-1C74FD8D4F0A5824DABE0346804CDD2D96BED494EE8B9D99F133F325D8CDF0EF
-431AB25D5025BA7A7E8B329AD2F89A53C3855AF9CD54275E030C3051632E5CC0
-994AFBD2A15772BAAFAF46FA10543A2B0AAC06163802D7F748C0EA0DA9072E54
-19E4BE682E9CDBA0B0D7E9F60A90C6C8491A6F30A5D310050DBCF613CC297D4B
-66974DACBFAB4377A753A16FE6394542A275D14197D422CF91FF360E8A63E8B0
-2E746082582E2448F6CAD56E488DBC0F40FCBCBB993A787E70BC9D8E24176B61
-FF2984A3855F02787C6C3DB41752B63FE0B7B090FC6D21763E96F2AC80B8994C
-FC3DD8AD32562184A3FA34CB6C0C73CB587529E35E72337A1AD22970995051DE
-2D10E84A14340589B08FA907F5A3570F98713316F633228AC0BBEC6789BED276
-6E2E1597D0C8C22705A729622749A30BDD267F7BF3CC116F7F888A4F4AFCD688
-63AE5A71F1E2F5EEFA3B100B19D6A893BE519DC5DAA215B143F807296187E4A2
-F52FC1F4448B0F4529E2156CE980293422994E484EA3F21C9FF7A56BB005A4C2
-F073DF6552D40E5DCB7A419C620C9127C451EBC2E341CB0649A503FA0E1B38D6
-2BAD504BEEEC35C13F6CB0659E719FF18C523B882EBD74D43D769E1F8A30354F
-8B790EAA99668110FE86806BDB239796E9F55A75D110D000C72AB2A430241713
-FD770F84793CD7BC488B8BBD59DA1BE3AAABC83F5E699F2A9D4870C2130502A1
-7CC2368B92CF0D52CB70446A3F634582E2E3D320CFC4353A748C1F1D91C7E4B5
-5ACA209EA88800AB7293FD1E8064B10C1A5829535E26D3C55AF6AD9B4ACE497B
-FAB377677F34D002BCDF35C0BBB7DA7833638683788748A16D075E344CE8FF95
-C09C6DCFCCBDB48EC084126BCF94EBDB1856940C67BBB69B8825E91A98F699EF
-2E378557776C9788E2A80ABAFE3E7E3BB6C0F32FA770597E37F271C50C10A9B2
-F90C8D80F4BD9F4C1098A306CE886C127946D3DB39C82F31F1CB1B1451FF6D9D
-A519AA74E1C7C4797F5E3EB440105C51ACFF85734924C0576E826B210C501232
-456601B688A3EA9494A8F391E1A0BFB7668BF6D0E1B82A47E91BC893E13EA0BC
-F8B7BA17D586DEFE3F7C2C72909106A651908325E055DE4F4E5B266D71716474
-56D5010FDC4012A2D659234BA355366C4E737FDFC04B7BECE1C1E16A7158FB27
-21AB8752DBCF8EF4AD11D185D7CE3BD84CD520553F0EE3FFA0AB3D773978A425
-F6C1B4EEE27F127C469005AFE5E07ACF2E438CCA628A77D90C9EAF7072733357
-CCF508A46C831FB96D0033FECE34E85023015A3AAA5E373A790DEB5D743EADBD
-7D249F543389FB089F4ECCAEDC4B75034AAF5DF41AB2DB047BE7C9500D34C60D
-7F38EC93219FA9C8A96523B981103196DB4D45031BAA1CF5018F3ABA08A547AD
-02E77C769762C162C7931A91CED9B33EE6C3BF4E59FF8EFE17A952FF3EAD46A9
-FDB74FFB0FB988DCEFA31ADB3F2A78E7C51BB09504DBBF1D53D96676E5843D8E
-DB50E2C89E2FA58295694AC71D7DC610756278F387A7809C8CD27152672314BE
-E287E774C2949A13B03BCEBA7A9A1A0B927AC46D8FF136C5B305EC65609F6162
-39908934CA61A225513E658F6B42F15A3621A45191F5437EBECAC64914548C8A
-6750FA2C9CC0E3BC40E01A21E3C4BA1707915D34CB78C96F0BCB7E2B10892E71
-174268D0234CFFCD5E60BD7955A151226F4987B67A69D9313CDB1ED0F9F34958
-33F7D16834BB40A6EEC4A5E24F57067FB59FB8D8C9AADFDBD3A897D8C91770CD
-D4820C1AE39A2D1AEC8B457DD856F81B3E698CF1FC5191CF60B1A80CC3230B63
-59C1384BD01EA86208DE000C9D3857B3243C95D6B6BA5BC693C539F7F6423205
-1F0FC68EB360DA674569C20FB993449096394328BB9229F93F45ECF5E11371B9
-63C233E1661C8451A3D1E076D243F6E887C82E49E00E2847CC33858370D560A4
-6742B1F48C2EE6D561A6D43BE796A09976E0D69A4A6C346AB895264C96092511
-7527320E9EA8A73250607B09BBE48D3952998435F36FE4D1CF667BC28ABCCD69
-FEE40049B09F1F39B64F3BE92C1EAC9C4661EBC403A69A9180FA83D1D5E590E0
-647AD00FE509B0E9FEB752F85726783978CE98B4AFAD649D9623F41419F9923A
-A11729723270E0847AA464AEF74FBC743D8D805322360364E7751743552A0AFF
-CCEB847942D9689E9659D15A3D795AEC8782C6EBCE6760E687F87095FCDDEA8B
-C4D8FCE65634148638A8DE5797BF21266AD94E363F58DB84561B74CDD8D5FAB3
-59A521598B34720C54C0AFC5B1A415B7E929D6EDCEE9205DAAB716379C29289F
-2C1AA7EE0776B1C6B6AFCDED4C6ED7EDFF1AA20523EC52F8332C2C0ABBAC1A2B
-DE91AE501079F2A4ECAE93FB93082B1A241AA79C1F7907F8EB3BD528A2353FBE
-749B89A4FD00C8C9472446EE4B6F04F5073EA7C2854835FFBA548920108192AC
-8CC658B87F249321015CA481B2A5F19156F63C5F7C285E18456D0CF0E1ECABCA
-C9702A3DC3911A3B179C837D4849DFEF463B9648AA2CEE8C7B7304B551296AA5
-4E73AFFD0D86AFBBAAEB71082E250627D70CAF3D246867A3676ED1BBBE99F6FD
-32BCA350821E0925E99235BE60C72D8270769DBE50CA12BE348D5145598EB0F6
-2EFC2EAFB348EC74C1F9025DEF33772AB3A41D6F8DDE6CC6746701CF75C86B43
-3F9224B633E510BAB613F6EC46A685D32C1C474F3509FC63268C4DF841B9B38E
-9CB08A26518FFD1A402D43C079C5603589D578DE2E8225A160625B6A484460CE
-5C445FDC1D3A58A982D205C370D86195D988E277F92937BBC9FF72851B0694B4
-D484FE0755962D2C4D81DA0F1F36973CD69765482A7DF0F5E701A3C5045C97FC
-09B5DEC1E35BDF033C02B7155B72851ED7A6BFDE12196DB43AFEDADACD52B93D
-E6F247F438A11DBF4A6D6CD59834865EF349F87DBB7EBBC5503492F5BAEA9615
-32AB4D318C6D1BB372FB14CFCB4268EF69128DE3FA99379609DF7099E459B557
-E7CFA0A293121A700CCC679D815F0883CFAF64B603C9E588488904267AD3EE3B
-9A8F6BED8EF48582F4A420AAE9CC3E0A61EB8D10C816C3091074E3B6345FF4DC
-37E1C1597DA71581A9920E9858DAB295178521766178F2141851EF5E455CE390
-4CD16782A04606397A6B4D13303918255700FFC68D83420E3F37437C073DBE9F
-C80EC3F7D915376410FC4961F37D73D13268B7E93C8B4F29880B535D14DE1205
-615CCB9BCDB0164F2D9C3E9515BF00C5D4E164A6B495E6A80EA01D3D6226BABE
-762982E7B5B74799A15819EDEDFB01B444BA30899AF2498DF31B1198C9115C88
-720C6BFFE2E0F33944274AB36CDEC08D18D00AD8AAB0037680DA8525AD9EBA6D
-8847EEEF0F689C466DB5CA6382B52F56FCF8490F2A931B3A71
+D9D66F633B846AB284BCF8B0411B772DE5CE3DD325E55798292D7BD972BD75FA
+0E079529AF9C82DF72F64195C9C210DCE34528F540DA1FFD7BEBB9B40787BA93
+51BBFB7CFC5F9152D1E5BB0AD8D016C6CFA4EB41B3C51D091C2D5440E67CFD71
+7C56816B03B901BF4A25A07175380E50A213F877C44778B3C5AADBCC86D6E551
+E6AF364B0BFCAAD22D8D558C5C81A7D425A1629DD5182206742D1D082A12F078
+0FD4F5F6D3129FCFFF1F4A912B0A7DEC8D33A57B5AE0328EF9D57ADDAC543273
+C01924195A181D03F5054A93B71E5065F8D92FE23794D2DB9B8591E5F01442D8
+569672CF86B91C3F79C5DDC97C190EE0082814A5B5A2A5E77C790F087E729079
+24A5AC880DDED58334DD5E8DC6A0B2BD4F04B17334A74BF8FF5D88B7B678A04A
+2255C050CB39A389106B0C672A1912AFA86A49EFD02E61E6509E50EE35E67944
+8FC63D91C3D2794B49A0C2993832BC4CDC8F7BD7575AD61BCDF42E2E421AA93E
+3FF9E4FAD980256D8B377043A07FC75D6169338028692CCA8CD1FE92FD60AD26
+D57B7519B80A8F8DCE9CEE5CDF720AF268D3C14099498A843D76E3B6C0328F24
+D36EFE7F5C4E5B5C612786200C8DE3A41EE5F1FFAF4097653CFCDC8F4FD32E0B
+03EDB3E413283B9EFB0AC33B055617005BC9B0057FD68C52D1B0E67F0C571685
+767F2AA85ADE4E0104A1C777733D5E318A22A9944336E5B98D965E50D31F357A
+8B6EA5A0EA98E1B027CE68C2EDB149EDDD04ED74A1B3D206D471A0C11C11449B
+DE190BBFEBC08C9E1B7513B43DA3134D6B11A2516E6E86B67F68C970A320D05E
+94FEC57FB347606DF89989C33482BD09D011C55AA920319E7B26A205D3D0F004
+22466F09C0482A164CFB27EF6ED2B040ECCC3DCAF345B5A73676F193D43123B7
+72FD6CFC5E37930E61EBD5A6307E4DE70194E6384EC0D79DB6AD86D3B319A31C
+8B0589D0FE28241D8ACE280D0530EE99C80723E560BB72AE9D53F4713181F491
+344B06D3027BA4E9E94D4305BE1D817197C54C8FF56CD6964165F6448ECC8A8A
+64B48B4F0FD69299A137589E2491A283509B21A3A5772F75B7602A9F60AE559B
+07A58436D04222C73EAEA72DE9A5A441F88D27C11F4F91255EFE280E91A4ACAC
+1E98A4E5E6C57B9AE86FD218C3CD8F24A4104156A80F13821384E529783C52C8
+78B94AB3A0096090867ED32E8A30980E737922037F75F062BD83BF4F5929BC51
+CC22AEE2DBBAAA001CFFBFF41D258424FAD888FFF1BEAB796A44E3126159E120
+7E4025C676CF94888A1971AEF8B6764B3AF4A92D36FAF6FC56FD049710EE3782
+BC2CD84FE2473F133BE03C1346B875463F126DCAB15C7A9BCC9A727D23611462
+4E8D2BFD2466600285D79518712B8681ABCD69608E6AA9578F7BD771EC36E01A
+5A17BC17E375020ECA59B43790ABEB9DF5F4FBBEF807E5699EFEAC563E1ACC5D
+EFA336E75DE6D8248E9381BB110884FDC89C2F9A41EBBC9A8A1F98E6A41F68BE
+EE30E25CA148C1EFF42DFF8C214A6537AB11F260B8C329A4947B5FC8DC9C5622
+4DF7BF4FBFB00380D47BABB03BC30627AA74103E553F55278F538EDD8C1E64CE
+0F1398CA0AB5A86630139B4A7E8FC02804CAFF3830114640AE50D2FDA3B561B5
+C63AD7EE3347804CBB40FB1E77A6C89735DD870351C3A1811591AB493251B904
+314F65791963C0412377C1D02362C5E9655F1C3D4803CD379A8EF24C48218C2E
+DF1165840462BF37DDE1B8D5FF09FA2C3B261E2F1A65ECFBE5D4EAD43B52C029
+EEB3948CB8A252CBAF545C8FA1C31E920E23A12DD7222CEF2D2A513BD758EA13
+DA33BF5FBF1D734653EB83DA2D374A5B9A0CE316F24EE375D6DF6BDA49954C2E
+DB25A88821193636119D469BA66E5DAA9C92520FD4F84426A4E54273FA469084
+7517817A6EE3E21176D333825E88046F50B3CF6938AF9BA79A2F51398239EB91
+1A2D07F7FCD948427FF62F40FF95E39FE1A1AA8451411563FD5388472251C155
+69BDE9283B41900B21EB1190D06E6B13B7794FED020D2C1BDD205AE77B084BCE
+EF628249398B496DE85B406FC2E1939EF00DFC84C07E26CF72EC401BAAE756E5
+7F6673216E7560D1C2A723CB405EE5CA474A07F61B81F8836482F73DC9516D67
+CE0CB770EAD755B6B356198B4B97EBB29C63456953270CCC8D5650C1D006E69D
+38DE2DFEAB27DAD50A817F0D645D30AF5B75A7B53CBD3D2B8D87BD0A7E525AF3
+22F7ADDFCE31716914C2318260C2E2B4664893921B68C5A93334A361D94A759C
+0D7B146D6FD94F0442D672BDA0F6432E18F3C5DFA37ADA378D95B75F413C9ED1
+BB5C606A3EC7DFB3F796F59B0478C13FD1900381EFE0BB5242D5B5D34D03AF1D
+4BDC93EAF8020E26CA23C8B0E7DDEBBC6762A557067A4CE05A524188A8F02E2F
+3625DA38DFCF381727887F5646A3995A8A38A5FB1E5D5EBB395FDD0B7C8E71AD
+B48EEDB62AB2CE99D121435EFBBFCEEA69AE9ED8238B60CC7288DE33C766CDFE
+15B767B4AE2E6CE0965E77272AC9F86023DA620548CFAC85BC751C44218A29C9
+849F1C2DCBDFAD895B54E51A569952ED50F82DC8A19F367E7E44643854EFD6B3
+FCAEB04E55E4661C82D31E2932611748480EF61FB2FBFB0CFB940BEA81AFCD84
+4C6A6332D7A600170E38A8EAFCD4F93DC153C43175434C86BC747348FAC61B76
+1FEC9027C1A193E55C80F1F20B5317AA0A05AAA36AE235F6E49F06E570FEE798
+84857D7552EA92EF3EFAD52DE39C2F8F43C59E3A957B7B926FC95FC4B60186DF
+7F3523EE2AB74E294C8C4BCD8B4975E84849E0FBDA6C0B0F24A636DFA578B122
+CF97BC5089E21E9F5298D1C9F30CB8BAFF6A3A11BB4D9A0A5CF2B18D055C44CA
+4FD4D8FE1AF3630907DE7E585AA811F9CD11FB2C8FC791851D651009FA5DF20B
+3C33FD2FF848A9E3F5652BD294965A332DD3F246C91B0ADA34017FF2451D1394
+F9C3C95AAC6EC8062BE98E8914D51DA6A164AD13938693D446044859D03A949D
+F9AC5DF4A000CDA98BB516D762CB9F6D44B5268FD0C26E88BC4A760C0F75A140
+DEBDECA4F511128B7D2805872160C55236F0A0FA7637FF0D4E94AC079CD3C8A7
+D03A5A56F26B0438B577C46011A10532FEBCAD14FBD6032E224F45691A726886
+56F305231EB2FCDF59C8BBFCB5DBD2D093A0E84D62AC93A2312CA69295E937C4
+8DBA1802B85F54B5E7E6D6216A918F911FF705D3B5CF055F1D873B96283A0B53
+59344D910CD396D883F6F7836BA65FAB4393A773A8F6BC298069E5BA38210EED
+49C9D920F718E3FCE692527DC7CCE6963BF744F2C91BC5952564196D60574E86
+87A0FAB21F2DB2BD5A51D7FBD8FC19946D24E5A228462C4772F978E650ADCE3B
+8D66B9C21279C531CA1C3A8ECE3420BB65837287A7222CC3673A2A5F8BBFDB60
+C719CD073EF9A23675198462C7C87B24CC92D6AEE5C25AC63855CC3281494342
+D28F3D2FDE0C183486769A4FD5B0143193D31FCB2C2A14E487BBD96D0BADBB64
+D1B56021C363A795BF10E2DB448261C363A54A4AC1182B470C457AA82DF3F5D1
+F4B329806141EBD53CAE309319B94133D7EBDC2D0453A905ADD207364371E178
+0A95C2686E3B34C4A978BFC0EE968C39ABA00889BC5149162C2B54483D44FD3B
+5CFF41F611C7E03B94945F414560E874D7CF27FFD0630890D7D7EA66CBD15448
+229059E1C436BB33D69552B5367AB5D53591C4678D0C704DD3EA23F5D9E8A7AC
+17D003C19E333E726FFFA2961F33C70F429085F7BFE3E2510F59B78F58B19CB4
+01B48E184BAD9020FECCE3AF52048A056981DAEA02AE78197E65855DDB170616
+F54278395D9EA50DC83761AE759F9CDEF9E1948E7002414FC05286ED793E6662
+3347F2A9AF8917493D7305B92CF93E8E9185F70015F5594084298A6C2F9FD3C0
+689F262AC9FEDC9B89577ECDE92F08D3142209FBCE7B5C0A840CC767BCA56C20
+4E4E545E2BE4D21C53855CEE4CD0AB35D1A604C0FFFF77DBAE4289752276559F
+A05FEE65F45ECAF44E95E23FAB6052195C7948AF0B1126482D4E02D72BF8AB03
+DE0F1A632F7672AD9DDE70EDC82AA993678A82BEAD0BC2649C4707FD8509810D
+364B5C6FE0E10772E95288C622C2F06C634F4DF8C7FD1432BC9310D5F24FEE3F
+7AB324863D6DABAA1576E70643CA79EF4D7DF4105093D66CEE0F3B87D2164A7F
+26EA05F5C4645B22D3E1BFD2219657712C168FD90DE801FB0F32759E80DEC1E1
+43CEEB19FED12D757205043FC98FEC62D6A8D8B97BC083B4A0E985AF7850D6FD
+8716B9957C1C35A0675BC53DF672C425C79F43FDABAEE7D63F092CF271C9A9D7
+C41F40C4189510987887942E60A412B3EEC84C9A6E1AC7D54D528F5604B72C08
+94B7882621A5BF1F325B92FF96B80878CC550D1AE4D8196E41CB1251856609A5
+C4D3BD05A922D0D45E039D9450DEF8490A3E924E41434194910BF60BA1B08BE1
+B41824345627745541A4F1703E956328F6227D11C74946B38CFB096139979E56
+4E723B889B44C6D78673868C89912F8B4F0B4B485F1587A637B630F92E6072D5
+7F3B44EA6FD96BBD4FC28A6C1D90805E3BE3E42A7BC9C880762966C55BC04E01
+204D083AE976FAE6F37C94F27E68F8C0F28D52B17F6C0FD7C9150701FD78F8CE
+B8E8DC9260E3974005EB5CA728171F482D765016C94D4ADFE4A42EF42212BC56
+7E4EEEE8B0D2A7856CD4E44F55C0BAB762F92CB8D64C17022D4BF3A47C12F5E6
+279FC23101FEE93753653CE8CEDC3B75C9CCB29BF1D4554C6120DE8EE750FCBB
+E38B5D915206974962E320362E59B3F21B3AB1875703191043D03284D4467346
+CFF2F98CEB4845B73ED8E003E0DC94251B73E13A9B51A3F1430BCF6A21EB9B7A
+65E17FA411F53BE6432F1506232B8159E008FA257F884A4A01AC53BE91754D78
+BF14A5B0FBFB9C31BF4908355F8A762052968DF526D118708CCB0B7CB5BEE285
+6DAB6CD2E3934178E60BECB11AAB5478623CF6C50C92F8BB5D1A583609028FA7
+B8A53B791BDC9EF76A124F3F7641857E4BEA0837CB36176EC9A522EA7F41B8D3
+63C37D1145367BD300F17B54522A834BBB74DE12BF9EB26ACE6F24A046D58F89
+4D4B7DF74875F1A0C1C9D97BE0849593D7B398EB4B00BEBC8C8D1497B6EF831A
+A35380FFB7F1AFA4D888AA52C9482E8B1755CC209905F98F40D95B44D4DCBCB6
+67423D1BC2F3560FF0A8B4F0CAC352A4EE2C1D946E45AAEC8A6AD40303F3382C
+DF0756BFA3B1ED64C169E56ED1C760F2FF0E24DC5C9F41306EF8D2628153D30A
+5DCB0791126BEFD4947D7EF08301FE015F2B0008DFFCBF9F2D4D859FD43EC7D9
+C5BE237E9BF6665B7B1BEBB362F0C0C3A8D86010B9C97FA741C97C2E0513386C
+9C26C235B14DD2A58BFDAC7B5F63DB4DA6D5D37D0098175A9071590E1DF66A3D
+B8173A047C29D7D35557F06132CC920B5460B8AFC11D23D09A4E45D089F5EB51
+963FA1A6256E359D485107FD143B2BF21FDE9DA5744BC2615E86C31C89470CF0
+D06C6397D9FCCB316EA9989430240759D2C4945D941F159FC02327F34B042BAB
+B5C3A47C78E8C1A6FBCD396B1A51CC4B020B8AD401841EDABACECDB482D6EC5B
+72D2BFEB4556720FADD49D07307C8B22ACB7E310CA4151A85C71EEF70E8D15DE
+B3B00F26E0E166C14647A65ADA228A3D1C89025BE059306565DB1B1EFC37D358
+8C1EB024254AFD049BA977BD4C2C605050E17940A89D0D4C5D963E792320F5DB
+3706682E03D25D9E02487247819551465092CC22B6B56E93F3AB528038FEC3F0
+668F866707A19B0463BE706EC729D2EE1653AAC7E29BD25BFB3241D4792F5152
+ED415B4E7FA92C2EE5A22E27E8B75542C492E56D811C192E95542A6FE0BFE5A5
+69273C2ABED4300D491B92D2AECDD278404CB84B1BB1BD7AFEC858215837D118
+C0E928BE7E07CFEEB51A6D21375B772B8248C994564014015232A0DA4BEA1754
+3274F407FED0837A236371F1A32056240F2015B1E7F4B2CA72C6B58610A66F13
+407CFFBA5E0A2893C1F572D50F51286E9133B5A84239C9493B0574E77D281D01
+11D00683354A000C9700EAFBC1FD104EA19DFCB87470190E7E2CE26E3A6FD0FF
+2620B87B82AC8686B6206B530F17E9348BC7D04B948348802CE53A312443DB87
+4DBBA5313A6A2A8DAB8A1CC9A594FF8C299281C0A261C8CB2226B732FBEEDE40
+2C6ACC74A1A61379E2E1CD5548CD908268A32FA83D8504C442EA0E183ADBF7FF
+9FD09C037AB03516ECCA93FF048235BD11A25DB07F164512A079C5392AC7F889
+CE96AE5C8D9580BCAFCC087C35E76EED1A671E87C12E3045E15A687134736DF8
+DA984772AFD189D68571A2ED7256F1E204230E41D3D9DD876F938951714A3973
+0CA9310489F8E807C1C7A4E51AEA5BC030610A5D7263FF7E0F9FDE3E5E37A362
+5B919000BD94D978583B942EB79CF2BEAC33FEBC9A67272EB10865BA8FB75FD7
+9D280AB59F91B96C16C982DE848D76D8FA8620DFD7C80B7DEAE7264350D6FB3A
+EF04794DA3305844A7CF718F6D1A4A3AFF6826173A076A1372ABFC54ED3AC6C2
+09C9287FC830556CA694E21CA5342ECA7B10C90AFC4783D841D7B1E34FA3DB7A
+2B706F3E21B0FBAB23E7257962FC3BC309CEA2C7239A9D6B44CC96825115ABD2
+AF9A2566D2F3382C01569FBDB94C8D664A5DA0F7DC3DD140CA77C743D7BC1420
+324ECF9E4780280EB119885E96A6C619CE3C0C8E1E264E2DEB137E5DC8149786
+486D65667ECF47B1A1E20E9E6E4FC8323E0BC8E61BDD3BCDFC6575C69C03E31A
+EFFC290472CBBD049DE3F840AEE37A2486034240F80E75D8A79E0762377DF660
+52B12EAA16D678990B11A9BFBC03C1D4FCDA9FD4FFBB3E88352438102F10B7C5
+9F04C013B6575B5E948FAB58EA691984A0E54E6B9F3F505FFFEF74D06FA1CDF3
+4B8A95904C8A2763AA8AF5B71D00F5DE09DC1CDF87A08B6D181453063E14C12D
+B7BB3775A6E2A901636273D9EEB833EA8CF20FD83AE899E28DADE10EEEC20BD7
+BD93085A4B1AC80AC1AE8280C14767F1A487BD066007A0D050317BD081131A14
+6EA0898ED59E46DA7B6254BDCCBC660686E2EDA0E77A705A653733BB5C5497D0
+B130359F866CF293FB6EF0C2AC5BAA2DB0DED045E2DED3A2612D078333260359
+16CF0CCB272D34767EA069E0F0B0D42327A18529D72E890EDA6195C2688438ED
+E9ACDBEED41E81CA8EB5E43C2B09CE266EFCA03F2D7FF57F12B06F9E54FCC6A6
+546676F6FFC5B8B7D3F0982B6FF0D21D949309F0C0B175CC1D0976F8C55C6AED
+6E821C39041E22D91AB30922F2B2EC2746BC7DAB484991542FBC82D87B487507
+559AB466F73EE23C2D3194DC5CE4C9AE66D3164613AC5CBB3DB501B64DA7C91B
+C7ED2EE9027FC0906820B35D4F2CF66C4F9CE4A884B7C07155BCA884ECA5EB3A
+ABB83F84DB1F5639599DC7D3F51241AB5D95C3BCB7AB1EC90B4BC989F74FB354
+04B2D7366A34D335A47B8C00C05CB423482BF6C7970A95545424A08AFF9A035B
+7F83F52B65A9799CE76E303B85664B624C65E9CA58184C7BE2BB9D9C86A4DE5A
+8165EE3DA2E652B5022EE7893896BABD88931DE1D538F615787645DF5ACBBA0B
+A8E5B899A37321AA7D4B283AC9234978C2DD81813A1EE5DB6EC170DAC1B6EF02
+94892635B498765C07A38D2E9DB0B7581B11056C28278F89B0E60998379C07EB
+C0EAEDC32AA69B8B836F92A61AFD35688315B2C3F860632FC13E4BDFB63214BC
+41CC6859EAB3AC3034449213CAB99FA1D216563419CD6D6CE4E1B56F33E6C654
+7AA9DCB5B05FC068DF02AC32408C8010AD004F6CCA9887830927F8CBCD49CDB5
+18CAC1EAFF815FF2F6F527F936948201565003022C6C7390B4E3C2B219FB4F76
+9F12BD25CA7B3B61D1A2F8DFEE795D04D5428B42FB66E0C254AF7B7A10CEF7FD
+E5ADA5E217BE24851180E9A1700FBA66C7D2B0D7BFDE4F4EED1D24B821A40947
+5620363657F6D048E651A689822CF815E72FC8AE9D835BE31D1DD8B54C9A717F
+4DC319B4B59AE073936EA40B070524C7E71D5A7B64436DA107749746B516E29F
+E3BBCB8F8C473E706670E11E5B221716F315FF097CD1841D0069FA69EA1898FF
+9F9EC2518C77806A19730C97F54BEAD604548D553D4A6EDB247853225E24E7E9
+89D71F6BC94DB986467E755CCC99069B313F5745B02B4BB608A39F0A0A732B87
+7EA2DED68219754BF1FBCA350327572D769C962EF9242132D93A5C8E9725D8D3
+AAAEC15ED0F362471AA58488620156F3474FA59CA080EA96FE995D2B3DEEADF3
+3141D157481C66507725ACA5953CBBE1ACEE7E3F02C72C6552D15EB3D612730E
+61A06A43575568DC3CF3844BABF04CA767E2995196097015E0C4F622C4356B6B
+F41DBAFD797A4B9D7AC22332C552043EF98913D0D9B50CA6B7CDAF903BC5C04F
+D20A952BA5CC35B646ACD0A287C956B98C450051AF6AAF79DF37F8954473F8F6
+652BF03AE2AE82B99D820CF93F5FC0BA17EBD7AF90313E70594EB5C354023BFA
+07912408F1757319C7288E99872B907D5AB583B082EEED8AB079C63E38B07D11
+6744856E689A479CB3A8BC081F33CB06755926204981DC0A45B3ACC18F6865BB
+EE2C50DB43B62E3630FC1D9B1FFB3BFFAA6D0A20C0381ADF48E4D916BEE85BA2
+BB40F538F55C11D50F882B73913840B45161262BC8B0012694C3EF26452F9B77
+2CD7C7AD6BFEEAFE31C8A721C2D46AA00C10681BA9970D09F1E10DDB693AFE84
+246AB18279A2B24E5B50A2FF6337B7B1039FFDD4B00ED3667B5F2F7BC2786D2F
+525A0E82234B30711AA835EAEAC2E404915FC7EC0081B194765032708B5E11CE
+EF68682FBA16ECD75C6A6CAF0F577583B72C77BF328E68308B929229A0930D9C
+61CEFDC57E376B63ACB4F3DB9B5C602C248B4CA233E2C25E16314CC878BC1B88
+6C0706423F71514CC2DBF0D259D87DF704CB718A866DBAAE005180435034AF3D
+5EFA02237755986AC73CDEB3B4766710B762312D5F48C59537B158DCEC084C96
+19F1F37CD1CFB61C63F6D05F59B2E47137A433DEAA34823395727B67CBC15B6A
+857627BBD49BE34F5C7B2EA6C0ADEC83FD5E10907355E926ADFAA74C6CBBFB41
+1E37968BC3BD7F665AFE2CF6740125D751CA66148781310C76FD92731C0513A2
+0ED792B34207ACE82F3E84425756F6205E70E1BDE989DA786C6234FB98DB8195
+737FFB8086D05B4D5C88D80B7DCE555AB3882DA305ED26351BD26ADDA377EAB5
+0618D08F7EDFE61938ED5CF78A4BE43408C7C2889C8E81CE04A4C20BDDF31A5D
+31BA15A2BE1CFE0AB51E539CE09DFE33808277D947D083C066478F23A4D524A0
+D89553E24ADE78EAEB4ACFD51EA3D2E1D5C84024D893F050DAE5314C91EFD93C
+91D81F3591168B4EE3B01ED80CDDDAE0FBAB3936EEF02462A6A2895E22D24FDC
+F93DA61C36998E2297B512FAB1FD39409175426A8A7A56EEA4FA8B0D525E849E
+27AB6622A3BE999A30A415B7C8A317D3802BC0B8FA6F89712D9F38D9366BC724
+8060287F1B859F13CF627ADBC25002D1610DBCEB93C866520FD018715FCA7ECC
+853869B7F55FD5649526F9355BBEFB83E9DA1E05406F8E32C1E112BB9207637E
+8B976EC8B51F0D45F717C6BF4BD2B352FD491822DDC1FD074A4DAEC4AD128A62
+475A39455847C265210B5B4CC476930162CEE809E3E4DC76250CDBE461FEC4C0
+0C40D656D905D6AFB4390B62DD21887206733520E4C95FD857BF38350B03F2AA
+BD0AD9A87F485E0DB510F8216107EB7B31F81CF5DE76386D475A4CA18133BD84
+74E1CC1A9F2BB4013E570EF03C0F93AFF4095EED8F861BA5DB1D28EBEFBBBA0A
+AD9FA3BCA136A0EACE7D66B63728374A3A5A198D2348E8FB33DCF83C12C77A43
+01C57D222B4FD5C3A9B8BBBFAB1A04BE0C1DB269D7C7DFDDF849C849F5592390
+32023ADE6B8F65BC17C850FFE3F7154D6ABD89B1EED4ADF354A071B0DF8B22E6
+CC94F1660E4C0F9E6E22EB77ED0EE9E3E10459B9AA355E912CE927A429B02152
+56CFF25F22E753393188F7B79B49C0F44512626F2BE1339F28FEABCA02052072
+2A4B1FDF77C3C092EA151A6F3762571629775247A6AC65DEFBCBC464A5EB0BB4
+F2C8AE029BD1172B430088B5786E7CA468E96E826FAB1D8A48A3700F8EF65B63
+C6F0EDE8519C256C46808B033DC9FAB61B1D49C8AE59C69176AF3AC875F86A64
+6F149241EF5610992222B79B859135D0DA31C438D26A3C8CF43B1D23ED27C852
+E8668043F8279A423942A5070D136425ACABEE43E4A45B846F4E7F7DB374E0E3
+D066CBF83AC321D26021738105BCED4081EE6AA264737F6862385FF9F3691197
+1D924EC2D0DC8019350CD7ECBE9814BD19184BACC9DA9A3A433F950E8B3400C9
+84EA3D3DCF2CF050DC3435E1294136E6998104B897A5ED4709B6DC996527A8E1
+AAB1B3DA5285EB8AEE64A2D47D29F09004DC142553CE14262D2AE3774A65EB9D
+4782B048008979779F56C8D8BAB280B043B49F5AC33462CC5A1157DE60AB3347
+831ACEE9CBC3B88AF70F6AFA0C191867F2DF1CA821C6596552C7066932979570
+ECDC82CC1A565E4DDC16373B2B976B99BA5F0B92E0FDFD5C0D7DE2197E5C91C7
+9EBD346C4643295F769C4B2C15D2429FADBAE9F8DF0B80063F9A3B214535951F
+A61DDC0F82F21CD0C6E779EBDDF5F660E8262CD10AA422586EED7BA629AA87DE
+796AF15A95E1E579AF686729C69646AFA2DF78BC053A65AE1FF65945FBA879B4
+A21449B2F252C9601A3E54D1247C5B102D138C0D2CF15616A3E3ED3802608BE5
+4BD40194D3526B2F54E7F73D3C0DD86A64D1EAA8A23EA4719AE3E9694C8ECCAE
+5CA73829CEE0B8F18CC386797D2A696F3666950E1E9804B899AFDB003C38EDB7
+AA93BB2FA9F447DC37AAABB9140A382AD6E69933724EDC6375C6305BCCFD126A
+1E962DD9769EFAEA41D4F64FF7818DFFE7ED253836BA51AF3554AF92E3AC3145
+990C8FB0867DE7CA55C54D3CE900AD4492B2D3B50907E6B3DE62FC41CBE8C737
+760EE51E5C6D9F1CC15CFF852770A3991F86CDD3C188F08FF2AA1CF66D3ED8A4
+96C04CD3BC8E97C820FF51DBAC94109C9ACA1C8DEE7E6D43B55A3F3ACADBA997
+39FDD65E250335E05CDD9563F70AF53CE842BD51BF75777F269D3895E82A5F20
+CFCD667AB094E7DDE057203E2634DCB355054F9DD8A2DD1EF927B0154E7603E1
+76D2167B8CF3794CC8977E665AAE5D703AFB18A9C1B94B2EAC6162C36681AF82
+E3D62B671C8C274AA208813E57FC625E63296E325E2C31ED632C3136F0919FB6
+A34D452892690811A376BF8342F01CACB948360AD003609F3509EE55639B904E
+CF801A157CA626EC056A683D84AC9D95E327411C7646269A27E297D0C1616947
+BCA4D4E4C32BF7A49FBB7ADE2766785B6939FB94029B2880BAC407F736E15B3D
+6C2416C48002740A4E6663380089C45FEBC743CD82E6891224A561C003D1F65B
+B01AECDE888B9DA271C80796B4693072DD1BF68182687CF10C1B4F0FE15EBC6A
+695647F5B0C1D1B57FAD61FB1E348C8BBD3B7031A0DC7F7DB374E0E3D066C91A
+C339E16323C7E4428D2EE11C1079BA8DDD66CC775FE43E1C7D9A454DA6434341
+2AD0E5836244D8F9B99F349B12BB4EC608FD760951981D9D7D67FBA77BA1637A
+2C1D282B90601F9493B789F09B70B52F2EF2825DED6AFC88E7BF74241D7DEDFD
+CE064578CE287B1AFB246DA586223BB4D80AB9A542D62A2CC807FFFFC7383921
+09C105D198B7D05743D1779154CFF12DC90FC2DDAE7318A9065A81A757C2255E
+5832AE7DC10658AE2B5647CB5CD00E4C86AC8DE6E61B7C251F1F52A905F45745
+03F255C15ADF31815753145F3F9F1A71382A2996AD2955DD8B1A35CFB2ED77A4
+04F9DF20CA177A8A0C4863CA54B6B646828364824C7D41C3B93E473AEE9243F0
+A89C4DF01C4322AF90578A9A290C1AB64B77EAA019B739C465BDA098161F8256
+9CB8746FDA4FBD95600E6C1AA356F3A2E5DF49312C7AC27D9204EEBDF1A271A3
+AACED2042AFB7CBEA4BBBBDB159784008721738BDC79B89E7F5226092A0FEF60
+DC87CE9EFC97DA5698D5B4BFEB8F379BD02D7F1A024EF4D10D85AA4E8A0E38EA
+1974B3FF78F01CAE5274C223DF459A776B4B31492C4D6F555DAC9A6DE72D42F7
+7C28B735E62DA5413F00525CD590107C9D39B41E36C19D316C38A8F29E2D6E5C
+BA9F47D561E741B96947C368084A78375398EDD47BCA95DA3913705D4DE85882
+61BD9681B2FC75CAD1888311CA11322DFCDDC15804BD0C789D1D29562CBA2001
+A7B127F68F2914EEB96FBA5169B7ED30FCFA1023FACAA27B9AA8DC42C2C8BBC0
+B9AE6327E705B50995BA6ED0B538A693C74CCB6C250F2E2080660A2634D67D1C
+2D928502D4D5D5C9C68C0A289DF434CC3B75118690B10738560610DD15BFC537
+55B548B55DFE2D08B3682AEA2E22CF0CC35C26E8322378374BA80FF2185C146C
+3B2548A38A09796D087F33932C5ED4D513A1C8AB31058AC27B6BF81522692A15
+12DEA25281CE4DDC009ECA8ECC714D2066C9BAD6DD7D4244A3C3B1586B501DC0
+4A43DF7A21C7DE55DC385B2EA52E96A8182486574857DBA1C7DD7BE38C7F6605
+8EB798D6FE20324315A736793F0C6BEE522AD3E582E965ACC07C1F78C784982D
+BC451B029ED37E2F8492A9770813DF2B1B539C5AECCF93BCCF128F3455C30B45
+D7FBEDCC43893291BD3270368500D3BE66EFE9702411375EFE3E10F0AD8E5906
+3A70BB8298517DE21FCEF75496E0782BDC1E924E1C6F28D619F5047592830AC5
+E06EFC6525E06B7607D65B2927946E73FE9C8CAE65FF1D9E321779E94CDE9085
+4C7BAA86BBA2C4A53F0DC10ED188DE1574088A2141DE6FF48450144607B4C1DA
+C8EDC64EF6246E40CC20CDE7A22F892629475D4DA16DC62C42462393779609F1
+B479EFC7EA8C20CDE04DD0F6B6175E997D2ADF32CCC0D351B3D4A5F8E0274D1A
+3EEE83F04EB815896C3C727D60E3B85E655186F7A7BB423D1A7CD19296DAA015
+204FCF401E9A56F64C697497C61662AA7F4097C0721822BEDD824426324A70BC
+EE6757B6DD103C370796839A4E76C039B9B5B316FA8F6565B7CDDE544D0991E0
+302D896C0885A3542B3B7216F6156BF5554DA7E0129935C31A2154C7110E6061
+26B6C1102DFA3512AD1ADB0720992481EA7EFCF4DFC6FFC2605FCC550AE5ADDC
+E021A7C84541C48A0856E1F2BDB47560AEF2ED181B2F9E9D1B466FD9EABA1D02
+8F0D2989D62E03727346FBB96694AA60DB90075A1E4671888FAAC0F5CFCA3FA2
+55E024E0A3565639CBD91D4798A4735506E6A03C7A805C5AA651DFD7BFC5FC1E
+D85DBF025D98281323C7EB5A6AD56C22C139B13F4BB5346A5BFE8DA3DA8F9B40
+7ACEF81F3B6D2915E16B56BAD8F23C2B4685B19BE4DE5E0DCA120EB161E620DE
+FC3691FA087DED6F4ECDBA980E7B3E30BB3383E0FBB3BBB70194162DAB70D516
+659E682FEF8B291493F99D78494432E4D68A7212A4F363441C51E317A1C2F60D
+2A8CA4321599EBF483D155D14C173AE29B7DFBAB79E26B963EE984CA5D467FE1
+AAF9D1AAC02D00DE91D177DDDB891B6C515C8199F29C473CF4618655F70C53E4
+CA3A87DADFAB36E523AE2D91B7B8A768679DB1C90077BE6E3D7A2C72B6449348
+29F5FC9F6D2799DCB69845958006A46F7EF86830D372AEB56ADD69E33A096411
+80D9271F61CA7A28B8073D6E194F6C9BE8E93479E8E64223CE98C31A011E4BD1
+9A5746408154A365470CA46C5413C4D55B69328F13C9DA2D22EAD288E2993073
+00F51CDE2C443A4ED60821065D493C5D0F2BA5816DD57E86CEB90046E66EED20
+CF52F00A23FCC18279248872C297FBE6727A45B4EFF0199C9CE54A8FC5DC2EDC
+75CF68CE217318DFDBA3896AA6805CA4F9BE4E7E3A3A2772CFD39365F192F884
+13DF92FC39FCE3A1F9D9513BA7161088AEDDD4F8BDD9D414963BF54725802983
+64B5306599724F40C2D146F9F9EB50B9C65A211F0E9992C4E2DC925C44BCF9DE
+A619A551090A28275303FF0D0ACA6B4D00354DD874E53B167BD81B58BA6AA4DF
+3DD703EB95199BD02DA951336995D273A6B8A1345A76F043007017B077CA5127
+2CFA3215CAB06F857B22C1E1DBD335629B037482372E6CA2EF5E176F66255509
+80D0ECD3E933D029C567C4628D8938F576B16835EC112C3F3DC4AA74E8AC43FA
+6FA6F42F618B958CC83980D86567FA17E7B821FEBA4888DA6C964F2A7F9E6CE5
+04531D53DCD037FBA89A7F840DCE36E251D3896D4735394497035E96D3DA12A7
+6AC5A61146701BDA722955BB8EE66E838CB128284158E9CCCB5DF51DA6036CD0
+D4029141D01EBC90E0DDD8FB1C884D7243782F62FF196C942212E4D2F7C65788
+E8B5C79962FA1941C3F0731D16403412C3FF79C08ACF03034169E676AA39F9ED
+4BCE98694FB1A9EEFF44E40267921733AEF80C73743C20C99F49A7323EA27E15
+6D5F2C3EC4F7896EC28E3630F66741B723A7860EA5FB584185D77ACF418B79DD
+8C8E9B6DE87D17BBEDD558E350F4CE69488A995189CD56AF75677C31897C62CB
+07BFA36265AE30FD06D55F59ADF2CDB21E7E13BC9E88EFEEF3F9ABFADFF2B6C8
+5275F80D7D4BE9976DF0476D070B9625E7AFB99E6CA526FBCB61554B87F8B1BF
+320F79BE2695E7DB5E6E2BA3276275C82A53BC3DDFF0F2979F8C4E5752D130C7
+8C9F7CF16E436B823B1A2FD914700A263D3F3DE48BABC99FA90E0316AAB12D95
+8C59195EF634E8B29F9CCA10677E46730E1AF19F046BC5239B7C1F430955F158
+6E3F0BB2151E5D05C35F4C3E2205440C44B8EB2ABF0612EC6B413FC233126D16
+55AAA85F5DDEC3C008C5B559CB9C37B78512FD9FC93A435B68871DDD1D5FFD3B
+C0045588F0CA5442D7984C1F782E109653AFE579756584D216275663B2B9890F
+EB3F11B17A58EE8F5A92410DE390807D2E03B522CD0B2DEBD381270710DDC6A7
+9F1B8F8E669E65E1354D5ED7953EDF0AEC9119A162B2D1CF3039AD0EFA9DBBCA
+9446EC4819D07FA893A019A38E2189F5DE84DB0E4DA2F0C169D25A636DB7D8DA
+33BAB84A4331DDE5E29362F174D5618DAC5E1B830E0F464B7B8007A4283E48D8
+95DD3F13982278B538767816C211AAF263F1D40DA68AEE2FC007CB4093E14DFB
+042AF398DC5029B701DD13AB11473ABEE8EC65D76591C485681529863B61B321
+3D9C04C6FC4FAFA0FBAE2252012201C55E0C03F532D68854124B117B2F350654
+E000EC5844A178DE9709C32B751EECD46C0713B7989B1835F7F50F64A6147C9F
+F219283A82E3B86F6F6D29DC37B8A0C9FA4D4D41920C25D3DF33AD39ED08C289
+856FEA05AAB6D69577B0D8A5476169ECB15CA63F670F8D1B9C2E820697278597
+6BAC78708D8176B3B1576865D0280DC3588E8293A1CC7EF5FC59D9980BAA08EA
+B093970E06743EA33350BCAF0933D2B009740F9495D7B24B88F46271CF23AEF9
+273E1F6F5F1F371508FE264100A16EB6F3F97A66D718166592239AC3009D8812
+65A495A9DC01F527B189190A79DEBCFB7FDE92FF64C77BD545EADCCA35076238
+C3000C2E27445209E8B4965B25D707B51AFB11B6D80B36FAC32657A2CBD51A82
+8A159B3A433760AD4558221A09E94011B682EE29AB16E9234C0AA1834A5AEBDB
+957108C46AEE9AE963716EE61BAF4BE54C1A2224A3DB7E3C30DF9D07D652AA43
+1AB19D826F7DB18BCA8DD4806DEF031CF933406E38ECED77C7F1229C0A3CF129
+AB12BAFD207C68737198A64B573B6A11F3F287A48C92FEEA8306D1DEC14A91E6
+4CEB56C3EE69C5C36F68D96A88AF8B1289E41B3410BF2DF7C9A2BD5B9139121F
+7AFD6E7DB302E9AC30AE901D4AFB90B05E614BCCAEC67E8F57CA0F4A0B780EBD
+55D9239ED6F716F3CB0B3191AE1A4BDC6BCD82AFF7821C120A553E454D00B679
+BDC33B347F2E9B4D15223A4C7AB0D321F277E0623550917980B5BBC0607AF56C
+F10C29146DBE2F6BF9FD8E4879F6FCF8199B446C25E4E65B6214FEA3EC34E4F7
+8CBFE934045822A6C961620D2BB3A4B36825E4D8E5BEA28E55868D30B02BF507
+F6FAABE950F17B4C4130D9252701F08014068E33A4F20C83CC54FD940C92318D
+CF76AE0F4522A50DE7C14352EB7C94F746A7F73942129D6BD12A8C843DA6CF89
+A6E58575036DC8AED79C892E1AD7AA11EDBF43FA64D625556AEE04D3CD4DDA31
+CCCEEE3E3153FCAB30BA65A3A34AECC7663D745DA62838BEDFEAF4F167B0BBA7
+222BF55A9626B85DCAD9AAD5FC333A85950710749D55F7C12369941E8AB8DD41
+FAD6502A069EA1490B953694860AF8AB930DD5EC009FDBCEFECEAFE298E33727
+70ECC760BB8156DE8FC2F2B5A1E03B0F3FC8F7448AF02EEF97FE5A94BB0801AD
+E83DF738A4D5131E16CA198DEEAB023E253227DF06A26950327409A9722101E3
+79D57BC5106B6EC703320192D7DEB89BEFD19000E2E6E43C10FE960551B81D78
+50EFE679BE528666AE7CC2FD9826AA224A009C7387A542AADB9403C24F8AE183
+3A40BA685BBA9F8DFB6717E1C247C52773DDBAD04D2EFC606C55E4EF7B292595
+F03D82D3FFFACB5AB2BDE9406AB2354675CC29FD01D8A625FB22BAF3602A5C08
+663A212E29617C2CFE55AD4E251A2F864AFC683984B4D72843B24D321EB85835
+00719B26365E467D664A654C692476F0FC1BE27302FB3959D722C3613F846923
+FED287F447F5DE22DBB6771FFF56E746DAA399DF493CDCF95B96CC809CEE835C
+F8D827B1B1F7EF28AB0D91F6224E5C6DA4CFE20F7ADEE7EB834CD7C54447F49F
+9B353F9BCE262CACF2867E6F462CB21044202B554CD8C1EF87FB0A863A8CDDED
+59D32030EFB62C81136175EB9874B7C627ED7E63AC77F78FBEF2D2E5C2149360
+0C8C8278529A79E42FCD4B4551F2593E96F36D15CDB56CF8D6D65357CFA98663
+600732BA9F1CE83E0D47647F02FE3EC8443E81B3A7B55E80F3216252AAD626C3
+030A9E420221DA91E57CF1B3ECECB36FFD21EAD729CDB7B3C6F35168BEA82F36
+E52D0CD46B0A3D962E8CC48B3F35C049FF18AF0E271BF7B03429FD90EA4C68BE
+41014CE3A859D138B3D51F53790DE3E7F4BBFF2997FFCB2C189056091633A2A1
+03E88A3CF49967B712991DCC769501523EAF0D70895A45DB09A40DB1DB221E79
+A1869BFAEE115B3970D0696EE1EEA3F29AFFD16D6FEF99F6EEA625AAADE8EAF9
+C23187CC5CD5A9CC9D0A3E76AC308694FA802DA1F900A1D324CB0E622F192647
+FE0CDE1A22585CF4FACBBF456AE5AA5F01D255F4B9A4163891DA74E4364625FE
+30EB70BFFD698B6B27BF55FACE80B4A55F8370FCD74FD0B29FF8B3EE6F4DE577
+3F842ACD7F112C9AA9597AAAADC5C746AB7AF8B97B906B56B3607C72D988831B
+B5202C6F76BFA5DA8101971CABB1E24D305460305FF0C9C0BA75BF2FE7692F3D
+DA6971F3F63C81842428B93585E7C2413206969587A556B6E36AC4453394CA18
+777FC5D838D4EBFFDEFA1BCDD4064964421E862699C2E2B4BCB800D22EBEAE14
+A97744D1EBED19B62EA117EF78B59EDB5DF17647C34BFBD9FCAA296D9E3BEBB6
+ED05FFFBE063EF811B18D104AE7B8B4C386164C9B5CF1EB30247AFD937CE04E7
+6A35FF92CB0B8DD9239AD1DC8E8608AA924CAB7361D5F48192D24FB92B6D21EF
+9D83CB3E13967E2250B32410B86EC6BF4722D31239891479B0C65DE3A5A43E0D
+A0192649B5F44902FB67DD68A9609B8FB578174D970CB01B9F86248DF15A769A
+0B0EF0C116A96A4D2D0A9380137270CBED1CA8C19C486E22E13E1BCAAA65F157
+E82A6AFA76530DAA8B27BD83ECAB41121AF2C764CCED122B94FEC74719D22D98
+C6981745F42ABD6C0476776584BE443655ACA39F0BE0AAE445C96325F5A69D08
+41AB9B0ABD19ED358BEEE6DB94724900250B795404243489FB69928CEA6126A8
+2036010760904A7DC8F15D9B05DF3779D1C657FD5162B801996F1F7572BCE8B6
+89DB7020F784D2F750BDCFCAF1E66E5D1CF8206D33D104AE44659298387CD149
+4E2A992E1548A37C0587752D46EF35357BBCD8DDA9BBFB616898AA1BEAE18180
+7AAABCDF3B9D51351EE5CDC490CC365FBCC2325076F696E9C731250A014F635A
+E0EE366E3515066E0735430AF23D407FC997EB489BECFDFBD65872788AF7E13A
+5A216C115DDD2F8FAE684B0F17EC9B53EE00E5966BED1FD155F32B3744F02FC8
+592F8C5B7044F0CD6C23BD26FA11C128CF92E1EAED0DECAE1B3CA64EB558A6F0
+415DFCBFEC7339822CC12F95F0E151ECDCEDD36CCE14AD2D4F57C9932E2F9FA7
+00FB8D7B2C97EE4BFC16F650D0FCFEB70DAB22318CB400BDBCFDB79529F11403
+026348DEC4AB352296519895E23B3305A44887739E906DEF031B92A0F41A4411
+09BDAECAD78E6A853C0A1973657BAC3A58A4EEDF99C0EBDD974EE2E9D2DE83A4
+181A7E72C8CD49EF58369C674D6B7EFC24120A0F245523E85C6E91083F131CC0
+B91CC5DB16712011C2AD2DDBF6D7AECF5BDC2E09ECBD88797912330CE1FAF21C
+D2754C8B16797C577A376B452E96DA49624F063653FDB04098EF11CF1EB5B602
+DD7E66675AA3EC317152ABBD1FABC470A4841B347D80E6021D4E290512F91D53
+6DBE98C25A17631B93544297FF7CA950B903494DA2F686857C118BE4F2D2F5B4
+D63F931457D1507F13FAAF06881670C1F46A11339169B6E859D2F75F9401F5B1
+0F6BBF066B6410C522D3647DF86FEB25C1ACB394F2EE034B6FBA1E1F0C166CAC
+23AD89FD97B43C63867C86FD5609496B8B58F9E10CD24141A110530EC24ADE79
+3A9CAF5E07793AC8B0F9E560649F589FB4312CF3B61FCFAF08B8B62C185A442E
+5EA71733D96F429DA0E2343910D9FBB4225C1B6710721B89316B3F12E3A2E39B
+4B139D9805B64E831BB2D4D1885094552900CB91275C8052B93B59730F1162B8
+76DC1B604C73145C7B9CD5B8B352F3012D8FA03BE0C48998A45C9CE392047BEE
+81E8FA2AF78903D4A55CC2F8CE39C3582FFA7C010D879967F28A1FE3D21416C7
+30F381F99B01020FE3F35340A770629C16333805AE2830BECF5C40EECFCFE629
+67FF0A3A9AF794C5FDD669A18FA5EB93244E6C54843B3868C28D66902429854C
+E3B70B242CF8652F910465050775B542AF7FE158DE22027F228C48F8D137E1EA
+E734DA62FC34B5CC44C9ACD3A078C7D4FCA262EE953EC784B134F40CFF645045
+71B9E302A1B579793BCCD8ADD3FC027EC85A5770A26A1F71C545784E1998E396
+A6E567E1F605A1E89826D328ECF772FB1902F0A05F08F3F7C1DE5A0B1BA02A99
+0348A28AED186D63857976EC0B837EA34AE4D781CCB5B07F39C9E788DD15D549
+BFA3984DD591CA27AD98FD841C57ACF08A0F62287531043EA497D6F48613133F
+BD84A9EA1F660F26660147B4C62EC20648FD4D079BCFEDCE8B96A32FAE2B53CE
+62557A1C739805245755ABF416A368D238FA86EF6C904EA55516A25F4A8DC805
+C9095D78D07E2F79A6C5FC0D4DE4F5A7B14C9809E1141C78705FD9B25A482E44
+D994E5718640CC735DE0412DDE3DBD6BC724446933E83655AF78F08094D074D8
+6890E72F22E5C1228E8D21444669C7BDF8FBE16454610FABF167A63B62C46673
+6CB69B77FB6F0D144CF7B7968668069C819F7D4DEB00343F0AD05B99E8F40DA8
+A3608556D5F823F4FE26B10C1A135161F7684FA93A64EC896097D65DAACC6830
+EE3ED51E612B7D60C85D0C035BE59D78DAAAB868561015257361686D668FB635
+6A4F1B01317B6A07BA91FA9DE649B378CF0C7A37E4BA8FBE74DF0C907DA0047D
+2014ACB6F7DE1698A8E689E23355F9A56E5B36F0A5220D010DB6CC174A78BA9F
+FC79C6ADF5E5FE639264BFAAC91F253876AF829D4A6F59EBB89FA5B00EBB3049
+78FAEAD988E030CC48D18FACB55D4683A5F4DCDEBD347C64CFF09E7AF1FAFAB3
+750A2C59C2FE52A678AEF44E4D72836F7EFB4DEE537F3FCB1B5F2F46EF3835AD
+A4725EE1695F778527E6BFB0D9C1574822D31DFD5B47219954E006F5CE225B7D
+6957FF7C3400031C01DD55BBE7CA2701D3D38E7B0ACE3F14B57876D9A66BD8B5
+42DD5654030E04F002139350208DCA6D83BA9DE34F437E85D5BECDD5E26FCCEC
+892C4AE075F7824261A87484135FD125C430448F2FD46C3C3C70B0AF9AC6C683
+E22995E1A8BEA75475A817C1B399D6C5D673ABAC95BE3DD7837397C609303655
+52442881BE93455BAE061A9A4BFD2824076AAE70418A52FCB61BDDE7B9EFB935
+0DFDDB6160FEC9A4409A4A8BBDC5AEECCA8A4978BA93A63270F06D8D08137C8D
+87D80FDEE637B74C9F26E0AAF1A42111D751877DF17302D3A09EADDB12B787F6
+15FAB9D634DCF45FF7D84597813143C6AA252DD2585BE200F4C0F25C17EE82CD
+564F0044838462C828EA8CDC0B4F7D995527A5425ED593FBADD183A1F488AB67
+1E9AD1A1041E867D2B988F300D87ACA7F675DC85CFA8A478CF2B8C4F1571CB64
+EE2A4F693BA8A7D6F7D0406A4157CA86BA4C64B285186AFAB6387B3D540CC02A
+01900D447BDBB936BC0F94EC4EFA96DC2D09FA22440376C718DC6742D24128E4
+581C8143652E5E07736BCC0A6E5A1C31A1B8E137A9914EA8A38EC38515582A2A
+5F21B9814F1B95A3A231501353800B112149C71F5CFD2E3A55B6179442A55EF9
+24834308DDB593652CB134C208A7F84A4E9FCF7D580FCE2AC4AADF08DB7A7EE7
+86B8079082EC5A1FF3D45B561B69B9F56C2698EB54888531D945421ADDF26BB4
+E4A5AD30D1DFEA597292757F308971BFDED158EC1A793462CFF812E6A809A388
+24795AA06078601971152F7EDC2973374DCF2C2D3945CB839E8CB7702F6E435A
+0E79F28BCDA3D3AA18B9B9C97673B75DF095B22D658C90D163F8DF0CA86214C0
+3D165234B14E373B20F8913638FF228FEFEF111DD0F930968F17EFDD8B87C05E
+0A3A895C202389DD7F5EA6855E2841E6DC01323992E8DD4516199CEF2EDD87C9
+5C1C8F4085C9B85ACF85316E22EE715FA188632115F151BCEE512805990FF3AB
+D8F4927DE10EACD49B720FD17EB260CB9F2BE96D7B50EF189E5579166A7DF683
+EDB55429F1A54AE9DDE34B4A9AA8DF685F8567967C263E2153458BF1E654E2FE
+C19BBBBE7409AF5DDFBF32F26D50EFDD0BB09A1D1106D9B963296034E7D6997F
+9BD4C3478CCA3549D3086930C6F9DF60D1DC3ABA1A289982699ACD964112E30E
+A1C568A53D701642DB80E2B2C0B6084B29F6FB73B0A9FCCD3ABEBAD6B3D58FD4
+1C5C45606AAF806333B354D19F58467B3C315D65B9A9109708966FB7F498A999
+CB0C7DAAC86F9A0F1488D9235A07D6D524BC88C8C212D80143EFFF603406BE2C
+C3108EF1CEE6F6DCF9A3C3CED684800E0E186EE7435A20F54DF2CA4F5539A6C5
+9A5907AEF0DB6AD436FCEF56C198768FAEAEC2D886DD94F7091C44621EED8DC3
+5737DD96B7B2860DC4EF1E0A2B7A963CF707C2C29DF918B7D3066652D6CFE261
+5D381B08F5711C594C03BC72875C384BC01556D907B0641DCE086EA20C621354
+1A2FF32AE1EC09D3F39A11D0FF0A710F4F9E0E7507B6951F96F8FE1E1CA43FDD
+34A511B7AE7D87FB7239CD88D1C0E203A6B9AE1AE673AE441352112FC8728874
+D6585EDEED161FE8303725036402609F36A62E1EF8C3014C4B67A986C741B5FA
+260A32768B2D1F7B23C4BFAE60AF5353AD6C300928427A5A6E942BA44A9BE95A
+E1D5EA5E14F4FE92129D28F01A3B61E49FC01FEC7367DA93FF88DE296A22D62C
+B464A027D7F151FCD84811B26FC115932A86F16EBB16EE974B39AAC5643E6EBA
+5383F1B29C499B66C09FBE07663CF953FBDFF9AB4F50C2DB63498CB80444A58D
+9A91332C23586D1735220BDE76CDE790E86C518C07DC1597ED533CFC62467BE0
+9EC9C70EC2A095F634DB70D5D7DF3D45F66318FBF8FB8316538DDEB13136AFE4
+84B5151453FC9400CF33D0DE81B429FA70449542CDEF957A23643B31ACC5D310
+07BEEA3E2964B17FD1BD27A18D4240C1F445E3B0C177611963A32249F614E521
+1C465B1870EDB7B3EA4B003F113776A8D9EBD060201A0EA68C0D1EAF6B414BAC
+D2CF83F811F5921C0BE37730D093F78B1B58F3E566690BAF966F573370B47AF9
+575EB124495710B9DA2F16EB1E33BEF989B63DD525F57B134D15D083326329BC
+64CCFC0688BFF7A8D56FC1A6A042A4C5BCA5FBB6CE393B990C33EDED14450F24
+1BBC77354E1B4C88A4E7928890379BB6A3083E3E2D29EBA2125F993A97462F01
+B8C47D06845FAEA3FB523C5CE5761050F4D7BE3C07EF80FC8A2D96FE16DA2F52
+2B50F6518446BF64A0717824F7F8BE9E4734BD4737DB4B613E7E3ED9395672EF
+E7F61A887996E5B8B44C94EF7D5800D04353C739043E5BE9F2B93AEB49180390
+BEA7B15653E02A52C70FFA11E3D6ADF017EECA77E97BA1D5DA509A251D585225
+E7FBB89E38482514CCFAE1B3871B36ED6421014B9BC9854247ED67F962F8582B
+A4471805054B1A62A064E1CDB4CDE6CEADA8C63E5013C99E5F35611C23F93A17
+5A39EAC64AC8CBB76B19F15C3E71AFE68FA93AD903E7D2C1CC094AEAADA2EA6C
+C639BFD4842A2B7C9ACE44433CC181EA2FF9BCDC47FEFFEC9CC0737B7088AF78
+29557E8C1F7A825AB31A7E64522EA9F2F3983C1EB14048B4FA453FC04879FB27
+A38584B80E4923D449D4C9171936934F8605FDA9905A5FD87CA1C44A31920C26
+E1EDEB80B835D8E7A647AE842792BAD46DC5F4E277E534D7641AD2FA14FF177A
+0802F81CDE37059B4568A8B06649D7950471FDA7056B675A90FC1FD4B8D380B7
+6BE5958AD92772AEB05010F911CC8FE665F72CF3B8174F7558ED94A3297AE918
+91512710D7F85D5892572B15A933E98E4498882A26EEB6FCFA55D90D48F4D84C
+55E3D32F5F8CD1827A5B5A3DD8B8322EC61558D1BC1E0432D9396F508B5E2B21
+4705FA448A68E087CB39A7A3A184A098EA095301A064638156CAF3A2AB163551
+3FBA7DA70C080D6F90A2F0F2EC614ADBFDF2CC0FA7A2FD8359014F3189765B48
+4EBF26C3B384108AF709CACE708076A951E1336FDB85F6D65CF93A5FCB00E81A
+AEFD1AC063CF370A5019183C85111E7C94F0B00E84E3B5A1A844FCB9FB350253
+59CC1D705A644E174B3132B017E6CF0690FB041A3598E43C5A7379E74A68AF3C
+91030D7E1AC1150B848BA3679B9FD4C389B1A5EED00B807798928A080FB8E2D3
+9E942BA6DC13C68EA2AEB352854A3DE429010E542C59D89FE3B5F3A2FD4A7CC7
+486ADFDC50AA172E0E199B31012D4D6F088082D695410566026F6A3E20F381F0
+03B53A3B6478F821E351F8BD8EF78F793DE6AE2C326308AAD96BCF38D0429D2D
+849E05706752C6407CBF8E174648D96EB30E797B7C8B4F95495D9B7D0EF1CA0B
+C228CABA268389ACF9581CD0F51DDB8CE99FD508AFC4A38DCF717734CC076A24
+6B28248F8529207CA64F929329B012A25BB61AAC60215C6F1E736F9CA55E80E7
+2E9DAAB650FBB96212005B08D389B6DC61EDF075B734DE09B98DF4129F9EC36E
+6596E2AC6418DB0C32138AB85430005710C758D7448DF224734D2E3923259B0D
+FC6B7065C867CA4AA8199093264518584E1AA9FAAE36087116086A2E9AC10CF4
+09D3EF67012D1593BB50C9BFC3B59C3600ED250D5C70251E978313933C3C9F59
+891C46B03F7A7091E77C557E7053D3812D7D693CB6C7DA4E0F489B207738D7F3
+3759FFEEC013B1691AF0C60798CAC322685D26060C9CE6EBF066D53F30F11D25
+894358D31207551EB0AFAF3AE1D1B66A6675EBF44C467C6758594A4D01DB0912
+EAC8754AE29E0B3C4D99AE6CF89BF5692934E7A07B0177F919FCCA9EBD323E15
+374291E778B3FE8A8A6CB9A69858F3278D8419AEBADA50B248D2D8C96EB63884
+0C27CB385767F01AD1AEAE9C6406EEBF21B2DFE26C759E2D955A74A28F06F0B9
+45E678A9D7813522CAD3A0A91DA860A6C7EF9AEDF3423FDD5558F1CF976280D9
+E85944B29D1050C2482B9D97A9357C0B3853F98BF7CE394C71A92FC724AD68AF
+6A9918F688DD40C917FA4AB39C175B185896FDA430AA88A9ED2516E8EA77BA83
+E45319F24D5E82DC9762FBA0B801B8D0E4F7DE641D4695A9F0A1212F53964508
+5A9C4113B36A9605092435B16E6F765DD95A1DDBD7B8697C94A943623025C291
+04B695920CF1B9C5554F9DAE95F05DF8B61B73A45FA4D65B8450CBD46BEB6AC9
+8CEB6211F698E70F355770ABBEB1951B89FA09CD5E71138F93E2CF3285A28E2A
+F075019DB6E974A032F5137B07B6A4C63DCA29E3D60137399A43D7FDA58DBC9B
+4EAC070EA82F1BF66D7FA3B06E721048AE9B31B7D5A3327AD85A866358D3AF40
+F062B1372AEBCB11CA70420FD18657C8687EFDFDD545ECEAA2F2BE2F34A05AC7
+7919093131B5849BEDBE80429648434A0302DAA9993A83316718E48CF96BCCFA
+F7A1D7E186DCF349C7070F7385E8AA028223DDBFF26F66CF215F61F28A6457DD
+1DCE4EA972AF73F231900E0A524ECEBCEB05BC23C5B7407643F8AB7D23423C82
+0A2534D9F582280D0D2445D3EBC42B471C2458E6FBABA52D938A0EC7876A2304
+9D8B04ADCBA20D1101284D4858F97AC95D6DC0111D1573CAFAE8F6F8446C43F1
+D3BC51596AD3C2FB6C69F2A9570795CACB459EDC78C52ADFB76E6784DA1B5FEB
+3F305ADDE49ADABEB42C5C01EA61946012C921133742255494D32060EE4A2455
+5BFDDC076F26692597EBDDEF9EC84E253A3B4219F3F13E6C94E3280E8D28BCA4
+E076025C91CC07A384B9962CFE482B734D545E0CFF7B941FA601C10B3E9C2518
+BAE689B889CD18AEB0220CCE3617E63906B7D8CFC26F95B5AE3564B4E9EA384D
+3BDF74E8436805ABFAADD9CB40A59095F3FCE96C07DE973CA7958B01D74F5046
+B942EDD853FEE099584E9D2E935C7745B7FF6BEA18DC184ECEF507D14276C680
+E6F07604A1ACA225A52E1C45DC5864068A90B65B98F78357240FB76F991F9364
+F00E4602A8701E1025B16B7F1A97F594B6FBD2A321B042DB35AA44F47D2D049B
+BF97DCB804CE4EE2EDA3C5D6BAFD1B214E35D23ED4F216961419152CC037D1B0
+2CA38A5111946C23CFE641DA07FD378590CA88F7743CA51DC77923CA75B681D6
+DC69B139588E6560692E351B2ACDAB8CC26A6341CFAFB2C3486DD98915BE765F
+4CD20807C525A85B515C0C16621D90623EC943B55F0771FE3737866867A47060
+CFAA4542902BE0677A53B77544E2CEFA3C04E2008598250F28688CAA37953C71
+6C190F7D4D7C4C63BB198454EBF42AB7EF205BC46C94890A7F694DEB313157D3
+53D9CC57F45C8B4B45205B34E3BC4E6E7ABB1637BF2FE53CBDA4DB86D96883DB
+13C3E0DAC10A36BBCD0EB98943C82C3D4EC140BFADACE3CA5837657905013F19
+5D656E299E99857911C105038B940013CF7120AD119DB6387FB82673C7425E41
+3EBD4C898BB6C4CA79327C5C8224755C09F406E7ADC5312F268D28113245C5A4
+1FD5187376C43B631A46606B5E4DD342EC3794ADB2668384C6074CD62C8B3FD3
+0E250A6010DC25AB2D9C2130372A7ABA5D99A55FFD5C2BFB361B6641950273B3
+DAEC41E29B5F4E4BE6C47B6F8B07BA114715715ED44A7EC9E5E02143E9158FEB
+D74AEC18677F3289490ED44AE41E5E644A88A2608259FD8289F70382ACF1FB65
+DFFB6068CB49E42D2BD143E716B2552F79AA583492AD1B0101FD8BCEE7408A15
+EC0F74F86AD1E5960B644CB98A0D7EF61BEB88CF986591C7CA593D4C335C2242
+FA9BDEC9EF27F959874CB790433050010B76C5C4E8E52F6081FE12B43B68511A
+F8E44C320C77ADF8BE420B49D01A35B2196D311C54746A890E309014B28AAB43
+5494C69A64116E35286FA70DEC52AAF6F01B279BF7C3EEC83C5F83A7E06B86C6
+C87AAC3F48CA4A46497A678D42D7F6E5B75EE084986050C72D2AE7403918FA52
+9448E84F0C13ED2E05C5046A86B785D6B28FC837CA0679AF787FC6B9E0BB6694
+6D9E6D362C0E5D2286AE2C5108059A6F1062FE5BF325ED0AD064CF9ED457D201
+920AD9DDC276D4AAE77F4FFFED8C3CDD938EF957C720CDB03ADC8D5802852EE0
+3889A623D3CBFE97DEA0AFB94E3E8E4D46A3C58327FE6F23958DF08B80D5F764
+08F1EFDF674493B0FDBEB2B19805DED353D9995ADC3DF804E574CAB0E954E3BA
+9C76607F322D2155D8473107715EF96A06A85A765F594814198083CF841C120C
+E1DDF6EB226382EBEC5547CC40BFCF24DA3383BB8CBB1C4E5C71AA04A49A32DB
+B08E650951358951785012DD855EB6F7BE2606215B61715CDFA9E3B7F74AE31E
+19814B61AD49AF25C42C298F52D4F4B1F0D72CA53CD511BF16D59F2E3F7FF3A3
+0228445FA2267D52A1049CC43EAC74C474E19CD574DECCDAC37366BA1C533BF2
+3590EB9E6E4E402D6B331BA57C25A9DE9CAA3551C2EA3B3B48D1193C811E94E6
+477C451A23203C0F901D5DF77A2BC15A54D0289D7E1D5F051DCBB6F97A2C0007
+64F1FDE12220479919B1AD7EDE462A28BDF5625FD11BCE29DC73B0F130D7B73E
+F1C956F0EB7D355530E80263FF95A3FD86C5BF5A8F9280A302EF55B50246177B
+FCBD3C8B4F29887FE682524ADED4B3EDBE4FE9C3174C072E24631D919E297DA9
+785E4CB724A606B8E056E3C12081ABC5E3CA9DF754330539089AF63B85F05938
+D871A58BC53C5ACA3A057302E0E5EC036145465AB04210B257753DFA9D75BE9D
+B57AAE25F11331C4E19B210B39ED8AC74C2A45640C7F914B56CA1D85DDD83ED5
+40D1E4370D44FC03C5DE5384AEF8B63BAF7BC7FC32349CB6611FDCC82B91D2C4
+BA111BEA7545081D250895C8E5BABE45DCE4FE11BA87E728E08FEB146281A44D
+00012518E56AC86BCA87308C247A99C14559D383B85F045BD99EC6EC40C4D2F0
+65701599595737E17FF4707E938D4163DC5C5DB95E2F4D4AD8E437F66A3C36A4
+C792D1687679DE42FFAB0BC754E5B1E43508C21FBB1A3DC304485C415A686657
+EA1A0E90C7322A364B8AE93425E044661F6556651D3F9873A102E87B0B68D8E5
+D468CE2F02359FF20CCE5CF53A22D19250A7ECB6940A98CBF7C3E2A664D1861F
+86EAACD43BCBBB0D888BAF4B5E90E90D32CA53BCD5660FC10866B9CA92E43DB4
+569CEEAE4CFD211763AD75B885B9C65A8AC553E5CBB5F2C4496DFDDEF46C0115
+0AE64EE489283932D13FC4DE2ABCA4795F3668C63416EB357062394DA0A826C1
+7E6B05CEA77CC0CB3322700F3E1ABF1E6CCF7BAB83B6B4026F03F1BBAD0A10C5
+5E8D9828C10AA29C5A2EA82730561D4019A0C6D131B433B9DD9BE471F66C15CA
+384266E8C1714EA8585BF507366B7FC0F0F797F40CF4A613FD15F033F88BB3A9
+9D5B2654E591B634D49253B2706A31E2F0B2A1C699D0890BC8FD4B25FCCFFF92
+809336ADA46928D535ECB86D167A081FCF19AE7BC30E56225E040AD75FB5DE61
+52C32A4649F2ECF10D3438E80A50F56FA3A43009C5C845838563EA25421030FA
+F79825592A51030E21F9BBC1536F33D2CBCFC1C22499C0F80503FCBE9BAF8BAD
+D35DF34D2875D4E6E83EDE725C829D4A53083484351BF341A8DF8004E20DEDAB
+607D9328425085A8F3E757917EBB775ABB9EB9969093AA44B58E092975ED4966
+5495E0E7E602F0D3194CD7672495CA11BFB1E80231258EFB746275FFEFCEB535
+A718A12D58827F2EB225400C6881451A4BBFDD4B46114779926BD485EFC8DE44
+D6DB332605AAA5A7FC1DE0B4C222E49A33C821426D8E368B931D0402AA1B839F
+1C5FE1C77C329F8DAC88B72EED01779E9C18ECB4369240460980C264FFE5ED13
+5897ABB3A748D0F855EB83796DBBC99917F6FE0C9CDF733AE4CF9A05CB96E88D
+B81C17897EA2B714F9B83342CA33D092C148EBFE2F5341CCF2CE1E4E1E5CF89C
+5AFBD1B998C0806AA39D7BBF68DB42F013A8E1328F1F32542D5636ED8EEA525F
+33F5E1204CAA6E8498CBA5F4B4C970F31F0E9D59ECA534D6B886BDE7B5617B46
+D0B6E8796F51A4CB169C64A2D5A4D04E53B46373A7824E35CD6BFE1017F733E3
+239A0B21E556C96D64CCA81665CEA5A1EFA5B91FEC17BB99DB9B16838A615890
+F6A235A1FD3E7746681EED1A73D9C0BA3F5F229B7C4F8BCE672F8535A6332894
+8C788FC18113BB20EB0C802995E333737D6EAAFDFFBEC04DA500B28E3B1B9CF9
+8A74D155FB6560060F9E8CF4E1EBB3B47043CEC18BF2B764EA71A7F7FABB50FF
+DE301187D740865EC7CA01A58A315D9E31D38476FC8F20FBC23F3A6658001088
+B9FD73F5164E3689210E6C88A83C1894AE8CDBB53E10EDA5C88839D7AFDC3910
+66B88A12BABC981BA4099C05EB047042785ECB701932C9CC4F96E8F5A2D20B11
+E908D9C619F1D579ECD5ED7998EEE848EE23066FA80292CCF13B0B33B15EFAF5
+5878F3CA17A08440DA18802A5C6E212BC7E3B8555E9DF231C1F9571D77E2C8F0
+81AF6E1B91E53C1B630BC5A149F863290A8A596F6D4C5205A6149C9E356ECA6A
+B827C7417010AB2750F020E0BECF6F40A3D356C708FFED6CCF928911AEA0D6C4
+A96F2C1F794C9F6B208646C25A60C65B00F7E0A3321F21B25D1064FAA29113B4
+8F3D1DD8A9F67AAE5200858A7A4EADAB2326FC8DC5069225F464B34A0E6DBC92
+7E960DBC2BE9E03657BF54552699CA523BAEA23D8B0FF3DB605B6802DBDA6421
+88D4B5950ADB9DCBF1CD9C6BA643463B09C725460A9B5CED29ABDB2813613A3E
+9546615A0E247A13FE0843433BB13DA9F53ECFF4661DED22C2E33542DB518D09
+BFDB906B8952BB029BE10DDB9DC059B59E4EC6E7BD2889F2ACC74402D9F96DC7
+7D8125154FA2407151A926147689035FC32C0AD2A606A9FE3107B5EE501280D6
+C75236BCFD6C422C1216ABDA87DD13B045E541F88D566214E579F8D3E6C8B68D
+0BFDBD1715628FF84A2F8778384F9E7B796F299AA3CB76B10C82F9D5CD7B0242
+3CF6091D12DE398C69F29F1DD5F11BD467995E35F6E296D48CA8EB7D4671575F
+4A53CB37F995A33A39AC6241B7FCAD9C1A8C23E14A9CCC0E233DB1C4888FE4CC
+709DDA2563CE6F834131994CEFF5692B0E4945A2CA672913FD17E2A5C58D0EFA
+268AFA4A39E948D2084F0AC14F1F59A0AABEED9322A1BEE00959499A657EB681
+A32E13A6BFA469078B6E752C48EEBD614A48B8238105D61EC32FCA6D27C0F914
+E665E9D87C5EA62B53F1E7C4CE2E7CBF07319ED1608C9E9E3F1258C463C1C100
+2554DD5265D35A13B3CD9304BBFF08096EA237C9178F88BAC17EE12E2AA7CD29
+CCD7E976F6A102DF7EF4947846F415DED6E60D180B22EC9E91C81227CD167583
+BADFA76080A434CA059E64BADA0BEB2B0E91AE2013BA5D23D3FC1ED9519027CF
+D3E3E2482786E08B3B35D2B6E14BAD2E24C6F437BFE4CCAC08C67F2D61971C9D
+D30381D9CC8882FB245FD0BBA73EE79C1C5EA7892239B54198CA4F2DB0D77267
+38CFA22A1D8A53030602FF834C0717B3E372559D9347215675DA86CBCF01DFF9
+C46451FA26844D4B3864D9C6879F3062F8F851B552876BD15CC84504EE8D5B25
+E981F9AD4FDCE79FF59366236C19D41126BE0003908E91DFF2A3CE3A42A9ED9F
+FA8272446D31ACF35067CFA838C0D1D023C7F99F45194550851B4A11584F1EB9
+9C0E3967867C92A260D815A28CAA5CC842F313BCF1140C5C2146F2FD25A46243
+320A1C5A27725472E5640211DB0F01EA82640C880EB557298E54B1CC27CBDF6E
+C2AF67684B23B6822210207E45E302AEF4F9DC2F2A3B9B7F321243057D881DFF
+5DA582555915ADF2297C99CC0561B26C194B764B7FA2B1837B6C5F087FCB9CF7
+D718DD816FDDBC26012531473A1521E63A724D95C73D29987105C38AE741D75F
+76B95C4CEAE23A6D1D29B494D089F9B1750243E6C2443C37484721BBAA145979
+0B65E86F97F81D1A44D9AFAF762604FA442B33E0B985F8414AC699284C05FA83
+802D0ABCB947971C2DCB161661D1F38F96081E974504C00DB0D89D8BE113493A
+1A248CE00F8A54DD352BBC2728F509853EE05A1C6FF40C6DF5CD7B2968344F1F
+2350E9B88FF8415CE0E113D22DCC6E5980E5FCE557A3BC64E141B4458150347B
+168E35237A245A1D1532A7C1E8AA487271BB4DC122C0C75E47AD7E7A1C35BAF1
+BB797EA981CC72DC550BFEDAEE0DC722AD62AE9554FE9E822D2BEF7E9EC838C4
+4995143A593CF33BD92E37B12D3A8F29DE6EDD8B98401AD25FE73F3505F18369
+5A5DF007C4ABA613145AF6A8B7B06F1FDEBAE506DFE8585265ABFE2D662F1ACF
+BDFADA70EF86FDC577EFAC8B24C7C399CD098E1A0DEB65E8C95C2C773D2B1092
+1A39F5AD71DFB6EF8192FA1DA31156D08205792B948D26FA1FA3BC6F5F3275FC
+BADD90204837A228544B30AE0B0F8470DE34B9C928A980958FF01C481BA1480D
+998D4A6D648B97C060EE44AF668BC1546F7309E685C1A00D8227B4B7C5F17E78
+A89809823590469C0343177A54DEECC1BCEC612AE333F34981A28F78A0FCAA78
+116FD3C17B19EED4E55C01ADF0F8895EEA12D45B4F3A25AB605A263DE932276D
+16B9B72BEDEA2FFA8F493D119B2721F72DD3CE0F1DC7365386B63CAFD774D142
+388527F0A02394F0C5502E3768ABAB2C080FBE5A832EA82D6FF99C5A65AF5D33
+F667F0225B9F319F054C475780DDA9C6F1C8F0FD0505AE8AAEF27D0D1CC330A6
+410825436D6CC0842D91EEE3B5F198AD84CD3423177602D521570365078AE6C8
+8079A4A0D87E599C0876AED67FFB3FD13886CB536EA2F022326A00A121CAB893
+01CD94FFAACCCFEE2B2167FBBC4A62F6B40BEA1AAF1EAC43AFFBD70E53B80039
+6CFA90D932D1E597C040D98BDA0B019D36ADFAE872EC1BD91ED628994D071EBC
+F62659CBDF3EF702D0FA67EB9F95E2BA245F1957EC8BF8D5D1F7271CF8CF3837
+A07B3367ACCF0B4C4CFD30A374FA5C9156FEA1F05AD54FEB2C377AAA7911C614
+582AEDC105D97B86408C005F597F861D8FED1F401D3AFB853AADA4E81C57D744
+227F9ED2E1FA8A46C68679A5561CC83BEBCCC2B432EDC0FBEF5BA4B925B6BA76
+965CD982D5CD469FA31C5BB567171AD4D79B62894ADC3BC94749B4FC2D137759
+2892026E16A0F372EA323AB51E23C114F30BE247CB5F2BB4E3656F660A8F0C31
+25C43E7F0DD10669E2B0819D62A402AC1F403B3B3E42181207A8FD19EC9C9EA2
+00CEBB75DB7B7D1969CD18DDEF18B7A20B0D3F702455B4CB9705BDCA36B09397
+B76D7ADBB40E2037288F57C2CA99EABB9870E1D1CD7F3F2DDBA010D641BFDBD4
+321CC05839ADC1D3ADCA67B2FDD3C5A3B4D703ACE6EF665F7293162B39051CEB
+4CEAD2CFDE2AD38C1DEF0076325E869CC4279164A66D8922957AFDA10DDE38BA
+C8237AFCE135D3EDD082B4E3FCEF82E6402E44F4511F823AECED2B222DB97856
+26E846408D556491567CC4259FFC7BD9C0838652714B3CFC61F44C9BEBA4485E
+53718997739101069F14B2A1900FA728515D0BA26FAE48BDE871091AB3B6EA90
+8C2D42858E8DAD44FD2DDEE93C0785EF10A4EB9185C429750820DEFF528796FF
+1F668B63762870C23768712FD62382311C8C4737065E8FFDEF70B3DBACDFF083
+49DB6627FA66567048891BA794EDDDC9C5A1C47F60EC1E0B5744C26B4B110900
+04FEDC8143AF0DC2B02F29342CE024D6D5876E5DB59D7323A28B265FE2578FB6
+2BF0EA9F0D85987E3C7B9C4B8E491D9193D40A5E0BCCCB3E9D9428386881A3F0
+CC586A6A6C1B256976F03A0BA5028ACE4E5AFCEC7CA47FAD65FEB559B3F7B0B4
+A24316CDABCD387BE5E241A11BA2D3F48A9951FDCBEB6DDB9227B78CACA27A75
+371A9CBC4F2BE12D139E79ACBBE5760A3A0A044583B334FF524BB1D5F0FA54AA
+6ADBCAC4D6F6C01213D0C6B54BA8554B49765ECFCF8456014B7179876B88FD81
+0725C7106266B3B9241E6EE12535771864EFD3C31EA57772239B7DA8B9139C5A
+2E3AD47B2A27E560CFD6DA87776E3D66D19A9351B1E352E829A7127BCB0F9713
+83E3E5FF6301535F372C38DFB8310CDE0FF24806A4B97B608C8B249EA1D60E76
+AACBBE28B7C4A3581F977680F67C5C3A5FB412E481AE7A11417DBB7D8B2ED528
+658E92B8B0B1FEDFB8F4DEF05D2CCC42F6B57703A33EDBB4852BE8E975E4C6CF
+1085908476EC40C50CA746BD761318481936B71639B24011BF652347BEE3FDA2
+FEC5BEBA0F5A5609F5B834DB04746D4395B08B1AD4CC45B7D24099259DE86DE0
+F5C0638881A9C92C09B14B24AE8230E47E53B4785B52989911C164A58FDCB167
+2B0390701EC7B6287D9C942BD519449A4754C9AC7C0A22BB500B2A32A55208CC
+2DE0E516483DE632789471B8D46260290AC32C26FE2E31389A604490A087D0DB
+81937C0F9C0B15714F2410133CCCFDB6F0B0FCF95897DA3E0AFD783FD9AD2BE4
+6D21A6BE877592E404475471648F8205483B894BE866799E772533AA33728D4E
+F54C1354822020AFBBFA7B4BEC6F3FD9B26D6EF307618DA000C56ABC87D98643
+D543A519FC8D61A2B86C7E18364EAB4D31A48EDC70869DEB8044A17FA8B2CBA5
+224851AFB9FE49CD5219376D6EE66772EE27FF6419557E845C2B0426D793CC2A
+3165B3EEA6A1A13F421C8CA3E47C93106B0B6202D86C5A31C1122AA3F17A86BD
+065EA5A687EA3B1ED324A9F36246919BA50117492866DD545E42A1186979FC71
+DDFC98C8A6FDD649B17DEE9FF4AFD78920A75FF69ADEF128077DCB3F5FF601C8
+96599F8C9168D7229BE969E5AE9A08166EC40E890D1DD8B62E29AFD2E3B406A8
+73396BABAAFC158C6A92390B33598F8C643DD4FBDB760D2D202815DE41E8A471
+039F8D61F8033532CD100F07D726D0D92E68338C014C88B274357D554EBCC802
+265288D9E554ADA4CB6D1431D0CD94CB3D1A26675EFD6D036BC583D242710A8F
+19751007530B1CB76025D04432FBB38D7468FD4203D9A47F7E67C636ACA10E19
+A9FA72D3DF82FB37474966A58AA01C5F7568DC7D4668ADE721BA5219CEAAFD3C
+AE372963DF037ED7574AA890AD12463C5109B5CF23E54DE574CCA937D5C49BF1
+F763F6380300887970BB22246FCF5B2B2EB69942748A30BCF9A003BC6FBCA2C7
+325284834812EAB44F42921A116B12D184F9EBCDD8B782933A1BA9ED1F33F97B
+548D72EDE27B24A0A8714E6A847254763CA5AF040D304D75E376A43F9CF839ED
+1D9E2BEDD3C0BB55E19B8C5FD48CD785AAF3FD381CD301C75B6BCD63CDC52D0E
+3DB72DFD034AFCBD61DE9C83AB58A593D727B6EAB8217CC38FD5AB57FF1DBF78
+01B4CB52D6E888339B00FF527F839026787F743EC13446C2B9BC6C73E24C5E75
+29AE3FD77A54E341F0D40DE696FB0C11E12252BE4B039A80618E1B9C824744C6
+E918CA1230C1A1B389AE706AC4E4974A204854CF371E655A80CADBB400DD8F8D
+A6C3C168A237B5DD57E69FFFF2D670268242A54A2A30DF8EE3D6802EB60B8568
+F101F3B8081563E133B5589666278217DE793AEDA75F72A50A558EF3C4E2DFB7
+6CAEF16C7FC19C7C2EF3A1288E1B77064CC245CB799CA5DE7D709C1DA186AF22
+1453CB15AED504F92D27201EB935E397D85983135B606265449423D878AD8B0D
+C53B9461A91F46AD34F5CB1A3A0264B6305C01273C84CBA9761260A30C36BCA2
+F9CF25CB60710671DC2EA7D9D48444E53DB4F4FC0803BF617632C87EB04D54EC
+B729E72DCCE2B88CF6A4FCBE878615FC4A1728D456E911F904965FF49CF1CE7D
+69B4EC40857946FD8A761310B2D2AB5B753D6A47C11C789D682A23E7F80416DF
+4834804F7E600AD21CC2930429D479319E970CE129AEC7AEEDB3CBCFCB311693
+FA4F4C645405B6C9A6C5DD437F6D8D320C36DB8C34C8883218B913C3B9F3787C
+DE794BDCF63BE1BE6AD878880243BB1F5DB700A5FEBEB48E8778827FC428A1D5
+
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -1310,25 +2174,41 @@ C80EC3F7D915376410FC4961F37D73D13268B7E93C8B4F29880B535D14DE1205
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
+{restore}if
%%EndFont
%%BeginFont: CMTT9
-%!PS-AdobeFont-1.1: CMTT9 1.0
-%%CreationDate: 1991 Aug 20 16:46:24
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+%!PS-AdobeFont-1.0: CMTT9 003.002
+%%Title: CMTT9
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMTT9.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMTT9 known{/CMTT9 findfont dup/UniqueID known{dup
+/UniqueID get 5000831 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMTT9 def
+/FontBBox {-6 -233 542 698 }readonly def
+/UniqueID 5000831 def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMTT9.) readonly def
/FullName (CMTT9) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle 0 def
/isFixedPitch true def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
end readonly def
-/FontName /CMTT9 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 33 /exclam put
@@ -1418,416 +2298,570 @@ dup 124 /bar put
dup 125 /braceright put
dup 126 /asciitilde put
readonly def
-/FontBBox{-6 -233 542 698}readonly def
currentdict end
currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
-016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
-9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
-D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
-469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
-2BDBF16FBC7512FAA308A093FE5F00F963068B8232429ED8B7CF6A3D879A2D1E
-2931CE5F5D18C658602059F07BE66E6EFC9239D7AB2FB8A4CBD41675B8ECF279
-650C29E53B14AC0E392A664848C1844B1CECBB2D5CFB72D0916B675C9A9A1E35
-F12696A6F628473C604A95376468E06E295AD6F76CEB939D94113532050B9D5A
-D2F41A9EFB9424D986612313B89EFE9C8A71313340B248F6853B1EDBF02B7F9E
-F447220FE131D7D54CFB8AA1281DBAEA73E665BACB1F164552CC0CEDB63BD4B1
-4A9AE8AC6FA02242DBE8DA46B64B6BFC11762F0784F216FC8B9120D688D1705A
-438B14F5E5DEAF2A98408B3B64620DE3732A4DAE6D08D5D97E34C75DAE19EABD
-BA0796165C1151BCBFB1DF8D29A63A8300DBDB9E3323CB82D0337598B83F4F2B
-A97CF5196D4D1CEC1EDB8966E548C0D9C194C932319610FB43EA1B86322FE641
-AB48770FF13BD475A7267E142388563D1A400419C585B22A9886074687BEDF74
-D905BE8EE440BA2ABF28EAB673399B7F129B9729DD5564C681954621903B84BB
-CAF89AC5ADB2932472DF29ADA2BDBDB4D05F65F28F5F4C529613D61858E0074A
-082A852710A62A147C966F2B85B51B0BE85F11D2057C66FDD61F6C5755367980
-9F4DE680601D4DA41B46F8D2148450000413C27AA39B586B74B977B25F0FD3C0
-4BA1EBFAFDBEC531EA1210365091671CE3C86A6D4BC591C37DCC02570042575A
-9D24252D6E01A8603753934D7EA5CAC1BE4E5AD2BA047DE8F3983B23A8A1511F
-B08D373B69E5076CE4300137B8805EBCC0AAB89BBB312A77835795E3C069322D
-42C893A30AD739E2BDD299679B158F7493764F2321E3965141B5ED1C6F4765ED
-F46D391A646B30C90002B1C461AEE79E5F094CACCA656CEA3DB921CC5205F328
-A2C69F817061D6C60B121EEE844CA5008F23DF07284565BBEF0CE7F1CF6FEF28
-F076C9A548815E85D9217BB252D3891CEE88E98C74015AD579DAB8A8F3CE74B4
-E054D34D0C8CBD8CD31B76ED594A67C314D947D71132A546EFF9F0A1D5C9EF00
-1935D169FDC0597ED3C84AC306B76F096C76CF2415ED28833BA187E53992D4CF
-7989F353CEA37B66136E61631E21C0C94A66DD92E36A668D781331758FCEF642
-0BB4EFC8FB6B340077270EF871B3FA6181714DF7B1C4F31E0A878E8A80F17303
-08125D405932EF6347F2076FAEAD5AD3B6BFD37FBDA386349E86AC43FDC075FE
-2F723D59ACA1827B7411FAAFDD192B067D9ADC43837A4AFAA44A9B9977F38A40
-B455394BB37FD42F864D87FC6354472FD07ABCCDB8ADB91920F4499E9FF9CED2
-7BC068A35B1E8F42C1D713435484F507D07BD88FCDC2AD786357212007D929AC
-91739C997CF60059723035D8118760650266DE84D67BBFFC8F9160A6047E1872
-543B2E6314994D0EC2239A0B392E4E063B59935CB1D746CAB6A0CEAD5C607BFB
-2B8D8BE15CABC61545AE4B0ABF52D5D6D4E79676D54319CF5C372B1620FEE9A9
-ED112E8EB0C9926D241005CA3E0713D7C404A4E36BF2CD40ED1BD929C502977E
-5519DE3613A4BE33C2202BD51A2931D1B8DF61D0FE4D579E6F0AFE9F8BCE6B81
-620605D3B24BB4E759D444ADE5D414C358E01BD56077326338059D3E072DFC6B
-A73042A5079C5D208C68919BCCB94D915B85FDCFA99307121D906A6644B1E985
-7BC0B72B5AA099B6FE5F136CA1D3858A24B67287A286F3A33A14BE5CC6F58AE3
-BAA95A683081195371180499A2DE681E8953092BC24A9491AC8C12135D697161
-9594262B9062AF226ECA469B31E6D983B52CCD2A3052778B124C897419757544
-95F0A7BB2CEA697A5591108D7C19C0AAD06F64A87F5582E0D48587D39701B3E7
-D9DC742E6C7326E030335E0617736614AE8EBA185F40263E79798C73924DDC32
-19CF344BE4EB06576343FE3E443E2CDBDE0EA7835C0D2D1151B4793C27A1B1C5
-E1AE0233C7A19CC23FA2CD07A3D73B7DB2EF96104D94B2F62DD3FB7277351A9A
-52A0778A3C83656B338D3F8951BC5A9BA28002BCF4C4815F119C001F6D656924
-FBED0CD9A28A0A49E200A3683F91A705B6847EBA41E47B65AB0905F91F908157
-0172210E075CB7EAED23A3F51147394606C02F9667A5DD977C4AAA8BD09C9294
-72C2428BD937C93EC6BE3E67DCF4928A2A96115EA1A98D6B06658493C2370E6E
-088E8B181E6542974FF1C51ECD7FB084932A9931B33C7ED6DD22C036829979D6
-760B78C1F08BAC053C883BFAE5B90FF2C1DD429AD5613D9EFDB35501069B651E
-969E59CD89B214F252D6E704FA00601F2ACC744AD9B38717C0BC0DF1E6C6DE99
-069E1E16FDF9CB81D9EEB02D27AEF5DC382BFD68689EBF58F644C0A3341F0529
-9DC677EB851B300E80519FFBCE90300F2D74198F9A4615C55DFFB10540066F5B
-DE4597687BA06A7056467B5B2261ECCAA224BDA8B26FC76939AAEEF3D9F19909
-A639FD5FFC9B7EEA77FB99359A55F776D7AEA05AF8F2A58F3D8D683A75C46D8A
-14984758C7DDAC37182186FDA630FA43754CF09E518E7760E073A39220C423B9
-AEA6962C84B7EE1389CB8ACDDA116A15A28D48F630685888C05D40A5E2FC1D5B
-A1CA6CB880CC2A3D12E68BECD474AB71B601F84047B8F653DCAB5D752D118A15
-05B46BEFAF68B6575E2C24D26DBAC139A29A218042407609D1DC5382C116A77F
-B793FC657596D3BE2FF0A30E64488A8749A6051209AB4C9D723442E1F16E66B2
-EF043314E1DF470B2087E9733337B61438E9E730EF61917F094E067457E52DBC
-3CB73A61F5599D3F80BC3A30EE2AED6725574804BE163BDA713BC2E16E8A1A65
-293D12C2191AE91FAC7E94A6C0BFFB3F0870DA9EC1F21A9E69654B72886FB22B
-6E603A7F31F327CF361B89E1C88FEB1BF3E537DCC0E82E4FE3CE976FEBFF885C
-3070D236A7CBB2BDF557C51A5F28AC6CD527508AD903481254A7737FBA4A0800
-D9A54A384C9E5979020A9609D6190E0C24C4D092C7D0B09370AFA5EE3C372ED1
-C3936F20543165F5D70AA0D4CFE2017239954E617907FD9C72AA9C2FD4C94279
-46DBC2FCF2788F62EA5C8E6B16ED355C14C5DCED3A04E276E22268F7D80DB574
-932937B1DB44D2AAF4B8CBED21BD3DCF7C620B115ACA9BF698AAC602BD0BEB65
-25890BCDB375DDA7C8807E43E534B849C21FCB75BF960ABBAD8561902C242DFC
-B2D3AA455524985FAE0CBBC9839BA84D77B3EC5B38D378F4C203AA48BBBB9757
-809648484684C95DF804ED2D29F672E4895BE54B821FD25B6C57EFD164DB0E5C
-7D178E57DE47D2376AACB150C60D986AA7C3B23392B7A3C7C8D89F86C98BBF80
-4CB51559D210251588340AA851DA3176CCFA61F8AF643A6E52E4109F059EFABA
-3973E580FBFBD2E75B73D7FF70C13D1394E187EFA4AF831B5A6876B3748A1CFC
-2F642F3829F5699C0DCB3CA99B2FC34176C6FAA943813CAA6A52CB170E87A1F0
-E02DF9C1243E7B4955B4380B6D8800E832E2F799FF72F2C0A3A373F21C43207B
-68A816147A46D8B4070E96EECE7AB0FC949D0400EBF6232EA7CC9A81BDB0F7B0
-886D5A1316A9636D779748A7D8E70B36A3AB65967C3258621100E0D6675376B9
-974959879BF814EDE2E764C84077561C357D9B427C3689243BB73C1B49D69B1A
-39379E3E0C57C9ED1D8DCA2C2EDD70652020773518B16AF171A14C77720EE361
-B3E79BA06B7B4182A2148356F0D7038E6CE2545E13142C93D3F20F430A927F96
-4902B1A00579EAD4B2EFB6E7BFD074D41A013624A088412D9E961509F1E0D60C
-BDAF336DF7FE2240A21A1C16FB2E112A550BB4700A61918AC6A21FBAF2EA2ADC
-828F356BC995BCE890CF78D8F0071DBBC47600589A65AB58D5F3ED6F0EFE2C09
-F8182026A24F645830A19B5A14C4DE5337ABECE46CE37EB86D21C6B7944F8C65
-BBB716DFCFB8E7B3885B85D376A69E5EE7A8F7029F6C89E4C442517F66DE9353
-BBE7C67FED5D1BF039960B1169BCB617A99526E7920BBFDCA33E11D279CD8AA6
-A7889AF9C8AA7ACD334E3AE2A4E48C33F44BCC96F3D78143BEAEF0EC9FA357BA
-83153E31EC162FB03998063DDE15DA5F51B261CBFC82690C0D4BEFCFAA5FCFFC
-E138EBEE9F4DA0CE076805D2FFD37586F1F45E7DFB68349C4173BC7996794EED
-EC2673224C40D2E0FFF9707F479745EA603BF93F6A99EFE10C7F449098DFE0E4
-0089BC6533A317F51A4BC0EAD3314DA8CAD24188DF1C6570C6E6DF36FA45ECC1
-39DDF72BE39B4A5ECA23D5E09DD856C10F0D3F25D78F8478D57669085B1D8124
-37C0E20DFF027B15614458F86E1BA3C655448F2FC6AFBDF333568F3704149C63
-E394A7F98322B15FFC5DA905ACCE397BD928054E48ABC3DA121B0A182555A109
-F014E0734D5AAF5858048F49F0B324DC77E060417B54F3A7060DE4475774C5FC
-77E7F583918AFB6E7C6E5AF0FF6708EA61ACF225DC79FB5B19AD288B4E2174E4
-A480A30FAB2617A62FA296825CF53C8EBEED170F11EFD6D4917770D273604800
-F384DB40581569C5041992F4EFF39079E8925294D26DFA83B091457E1E8B8B26
-3BC281683D4C19E29701661EE43DB860177E24FE50572FF9B44186165ADCE2EB
-FCC16E4D41DA9B0495133941815AD4D559F070B3E05AADC78D01CE604B260AEC
-6508DEFC3661719C04EA4F348B21BDD60CDA9EA543BCE78C2B4C85E870DB0B13
-2FA544ACABC56E8ADDA9CBE7FD8FA934C9AE1E0E998402A2CA6EF950A722F550
-6817C340EEAF4AB987C0AEF640BB2B739F5B21A96ACA55DD1DFC43F8CF9D1899
-FDCA0A5D55D2C9F4CF0F738C1D60A216E5ABE76451FD310CE60E485512139FE1
-DAABE87F8619669746C80D3306B8B6BE040F8C15ED2A69191180F3C887C847FA
-F3DD9FECE9207774CA07602D32096844F681AD05B79A59EE082B9D70558E9B0D
-9C9CDB807773E6EC3EB9BC15100628F961500082D34F2037851BB50546EB32A9
-E2ACE8E919B3A4B0CDC3B772B4670E3D8A23AA5CB70B8887D43C937BDA694362
-630F09DD0D5D759FC52D6464657CB8694E67B021DECF63394ABA00FC5294B482
-E7986938C5A302B41370FAB777A167E19F2615EEEA0B4334C5B644AFEC30FD84
-C61FC154A0442DE42606F4F86BFFBB296FD58EA4C61A266913A052F64E389B39
-00ACF232A472E72DFA9F75DEDC442D9D7BE5FC1E029E6448113EDD17E8F21A0E
-C13680609691B776763A537A85F87E4B0AED171C24151F72D63A5DE9A4407FC1
-FDD0FB731C8D37664BC51E050936D73920ACE8F3489470C75732A55C5147302B
-1033634FC4BFA63E857E8FCA328E9B7F05D0C0B52627F01AADCD3472281E0872
-F970229A6A64457F49A9BAD409B2FB60B683472212BBB0D65421F72CF3F1C4C5
-3085DB6D43BD7101985C6AED5F847C95EE7C3BC5F25CED1F90BD73A572CA2870
-3207ECA293318FFDAEB6E62B00BF3BF8A74134819BCF8C7ED7F381B3483D150D
-BEB0604C226B03E4DE88D7C58EC8C4DB6BF785E03E0381922D29E6AA35979AC4
-0DEBCACC1748EED7BDC1188F32C833D10544CE363D8BA4C1BAEDCB8533BC3C87
-C13A72E1B196E4FF17E364F4161416D54E3E4C81A9F195D0FD825525D5F9EF69
-723E889D8C82E3E22078A8E430B2940329E917728A91D41D834A0B8A6AB146DE
-080B33DD7D54BA206BD577952573EABD08BB0028F76DAFD32E5645A0020A71E2
-3503F599EB37E59502A3D87D16BB530007B7A5A01883BBD7755AE618DBA3AF0E
-BDC0013822545D40D40ACC23DF07BDBB0AFFAD46FFAA0082AEC302A2A540A30E
-DC3DA64D8681E01F744C06E7BD019711CE1AA9C34D60F8CEE96793C3477131AE
-672C0FA34AAD8BC6FF10B2D986506E07E0B93CE8AF15BB6F88C2E0F7525F5275
-6279AB8036BD871B0569E924AB1EF44496ECDA2456258128A8875F9C7379A65B
-A6E3B1B1B4F7D839E31E682FB9AF51D0F5E16C8C8DDAE9373AFEAE392FFAB643
-8B779858DCFC4D6C917ACD3B5DA3E3BCB41C5F489925D45398709BB202082527
-2CE1113EE58B9ABBE345E1E0B81326A0B5F6D8673F8D916A10D49E17E6A9EE6B
-A49DEE9CE9341D60BDCFE7C5E23F2ACE74E2410C8D7AA08B8C87934B7E25A293
-2C009BCF429D4E5855AC07C8BE039BE1C43D88EFC374C5D1D4DD0897CC12C4D6
-832E832670B3AC8810A742D19F2753E07C3FCD214BFD159E68EC7C70777F2623
-FB5A5A493B76C0557970D7D61776B9B10A62CABBFF26AD4BD31FD8B7C7339509
-6AD519595E5D9453EF513F9C8D081D9CDE9BA95864439DBB51215A3750B4BD6B
-8224D95966A2A7DE8643A3A4BB25B6D36C4D13832C3596C141B9687C783B42A5
-53393CDAA387B6E5BBD02F8A0EDC987AB79972AA7459833058891202CCB89B55
-8C02A10B0E4B543BBB0940791E72A75AE7F88F74FF4C4F22B0F130D97E38D815
-9CA982109A3D84B7ECB8704F7C553FB8BC64BC61565E48BCBB6F6A2CCC1F5067
-32217F7610347DF4849B4712E02D06908673117D7CC67598DD3B7EEE5C9028C7
-A6E32BD23E40AC3B5CA11E251BC9BBA74A37B4C6E1140555258C09DF0384F318
-8005E822A6801271634B6682938A4265737359B176A9AC91F38C4CC0BBE42205
-9C7896B48BCCA264B690491FF320917C8435649EDE509019E0D346DE9B241C31
-05D5401B68D63395F453D3EFC344948A37859ECF58BFC6B5834D2AE39DDBCB00
-56F9BE5115B8972A8AE8626234CE7505956BD6BF328F4AA09F2FD5B04A6B9273
-536DD8DE5166569A60ADCF27797C39B19DCCA6C928DC8A27C778D57405D77B57
-79A36660CB92D8E0215225F7D0B46DACF80CCBBD1020245B7C728D7F581C5412
-97191889A4199ABE2A0D261F86E5C1004378153AB6DAF5948D7CC2C0D4356B62
-86BCE32439DFDD30F5BAB2DCAF3855E6BB025737CE3FFEB1B2124AA5BE3084C2
-BCF2BC8C54212B75F5E741B66E49D36E51109007076B446C65A112181B42E721
-FF95011DBA1ED7C3349C889A4F6A55C21878647AE8B3615A87D3619057E14471
-04B5D5552CB886808BBC66B2CC86D7C040104A984F3B4E7B28A85FA0E04D83E6
-16877535A40F14FA5E2661D7209212D57B271F009CBB11F4C5096057A940C68D
-A2A5D5F2FFE3ADD8AC4B56D73FDF49A8F8C8E253971B74F5F97C9397B6273D92
-1A684C24845A9988D993D26FDD816463B8DC021381FE041E8B39FE1756FD9ACD
-93EAF3BD313EFE4334BAC1D5C0BAC7CD96B54CDAC088761FC4A712693AD9E27C
-B80042A35B024508831EF37789426A50F7729887A6136623FC72C79EFF02AF92
-C16EEA04C8BDED4E36F7168A6663943677F201B42C6FEABA4451E656F125A768
-71B87E37395283DA33EFBC32EC3CF594F2855934501511D0407F0927D6AD83EF
-EE8ACC2218706BBC1EF73DE12A30012DB5AB7585A1111DF2F806A1454C0E027F
-7F8A1A20C11F63D5D819E0880D0E0D5FA865CAA0A6AD24705F484CBBE6112CFC
-798587925A0B7A7DF5D0A6040B86EB87AC0D70A5B59A109A3BF7EC528E585CB7
-32403F77C45DA7A4734810421F50C25C72FF0F8414F5335789CB749E4D20D251
-2924278C9D4E3ABF5F266A56BECE755E5318C0B37F7F058CE78573914BCFD5D4
-6B147AE4E632C737C9F399F3415914DD3C57C05C697CA13DEF0696402444382E
-42257875079560216373E8D049C53D40CDC962D910F62A1D31AD6BE38675D993
-1CC639034FCCB16F47BC2646F9AB7C9A0EC6A6F8C5CF7C5CE4F48907B3734A94
-66E1538A7CCA5A25962D3718DAD9413D4A83FC1D771ADA62BBA18B61E5C316AC
-5A5FD60E465957FB57356D489B75BECAD72BE7D8B00E698C638C8559505052FE
-BAAAC08FFC1401C6220BD743C1DE9BDD4394EC43301B1286E309E82064C9109D
-86EDD1B9463464DD9802CDF87F2C69BDC36FD716070106836B1F094395A237FD
-708CF182D7AA177F8035BF20112A89BFB7C91782794BABA06AE5EAE132A409D5
-5495ACD3CC44115FEE36AC1795E5FFB697D5FFDE200CAE0D9F05AA17C290CEE8
-50D4C49C9D454C5B0478E34594C670D68D07AFC5F43DA79BE491AEA1E9580198
-6D1866D7C18D3724BB1E816138866C7365CEE09A417E22DE299410FA84903F08
-930044BD6190BAF3EAB5E6EAF5B9D1ACCD1E0E815842912B294B0AC8D005A107
-699A8D4EA623166AA426DBBE2C40CC591E079DBC45FFF20601D117CA0A350F63
-BC78A120D41C128945530D42C2EF749883C3398605C2FAADE077185E5C00397E
-06C2A11F14652CE4C4EB0D2F2D03574FB8B2ACC245F8A574DD8179ADFDC0E33E
-CD6485343FDA2B9B93A78A7E5A66E2F124CF7FDA4E7E1ED950CC26252B75F48A
-245E6276D3B2B57846E33BE57F199E5E8F2CC4FFC5C8AC892380A74A34370773
-D5545F0866CCB2ADDFFA0DB418FA6603242743E57A6B3865C91D1D2E58C90368
-1D1FDF0EA982DE83FB982AEBEF6B9C6C892A84E31B8F01E789F13D3897594C50
-3CA25239865731A70449CB6F5FB17E27671156D9B5CDEFF26CACDB53A6FDBDC6
-94D182A742DE0A6BA0A94A97285FABBB33978BCA5CACCDA547B5E2B94CF5888E
-F1FE5B08E538E181BEA643F837F2C8ECF2F037AE2E3BC799736B872356ED8540
-08132496E96093F6E54D81C839110668811AD8EB85FCCFE57BDA05B3BB36C49D
-493B8FBDEEED0A75EA7725F47C88877D3203463EECA12DD006FB114ED670CC01
-5B833EA5B7A2653F6EDE65BB4E4814462CF57D6DA21FCB31AB047B44AE237520
-A0985C465901BFC451154B1EBEBEA93A52426A431EEB4E5B67F09CFBED73847C
-5DF607D9B0F652E99D385AE147EB9A4CBC1BA1F8FC0D9BD0950FBB53A0E125EC
-5D309660F53D33CBE34F9A8DAB9B6ACC925FA8D5E44D4A925E832230A2E2AED9
-70BF7D0E5F72FFF045730EE23559EDF57276C359D7F4FEA17169C003D8913B18
-ECAD8580AE3216DA2C272665B7E884F1A324A42C3B7198AEB0CA29CC507F436A
-0E2F3C844CDDB13A7F08BC02EECE4654B65EA5260C79E6D765BA727C67A05F2C
-E859BFF7257A98E7417C6028C65162050D75BCD3204C134033F1F0238979E3BD
-16CC87AC37891FBF6CDFEA5F597C580DF2B97F40B30F1C0C3BE5BFE17F50E9BE
-649A7176012DE190C87A9A121E0D6FFF8AF785A9296F870CAC751D6AB615142B
-F0906CA484D5C6C5FFAA3AB1172121115DC0D6320050D821E127842FDC76E794
-BD15784EF5BA1F9744A5C7E5F5B1C13C8F6A589CE09E34E84E32BE17E8F0A7DB
-0EC8A2DF7B42875183FD7203C3648F71CE2E922A523C4992FCF2B3B006EFD0F0
-80C915358A2840CAC25EE98C63066F544867C5DA5D0B38972A30407040210E1C
-6521116F8934A475CFEC2EF86FBC3B6D4E505859FAD7EE1C146ADF6AD5BD4153
-9A74388B6E82534EEF4D974959E1817C79F5ADF22EB9FD06B8FD1F3AA33AF4AB
-EA293D18517B8E3BB1B188FA33216D2287C8B3B76BB1E1F0B57CEBBC7BC4A33B
-241FDC73F1462AE72C85F106C8DCD6258F98522D7F679770931D8571D1ABE54D
-4D7D7769C2DC95F8D76C00E43752C9B9EB6728CC52FAD9F0F970039C806001F1
-1F7B6913ED4DA7DC3354C8AA50396ADF00244F235947497731EEC97B62CEC45A
-314626A50BA9A651A2DFB2CCB98E267B4B99C4444BBE65B685AF3F75E3EE1823
-3F342FDA1D96D4436C250B2CEC024297689BA42EC47976147E5249DF44D211D2
-A115101B84AC60D85C6F4E0B0FFE40718828EBE248D3528F576A7B09327BEBF2
-75F1C0CA1493627C8CA4CCC318B4DDDE39D19DDE3A3512F37975D6607D13E890
-46B2FC2C190D6BD0FDD3DB46E0828E6FE14B0D4D05004A39742BB0C739771A79
-30FB99D67E3ED9C6D5945CB68CC07445F2814BFEA35E6EC66503F72BDE2FC89C
-5AB15BB82D3621AACFB83229AD75D7BABAE812DA050256DBEA32811132BBD3AE
-30705DAD3CC04FB369577D6C6A47234D64FB4B65EFE732507D634C104A6D7ED5
-011925FCED5E9B0209C1A6FC7E2241B5AC0137C9B02958DC49BF1ABEB4510EEF
-9CE5F52B8DADDDD7E2DC8239883D8E464E1485CF91F86EBA1F05C63EA0DB7D70
-5845A5CD291C4A7DFCFA0485F322E6F6169370B901BDA83074E03E3A7DEF6A51
-D747A4CA0DA80780E5C7750FAB43DCF65825CAF4F1384E732A82B41B7BC10D1A
-4DF2D164ECBB5A412A2F661AA9EA5A830B9B9FFA9BA28F7C77B4B44630582D76
-21729619FBE1855B765AAC1D1FC9F210015761110204A1DD1454BC2083E0C0B5
-302ACC80661F07A4E7A383D4504765F1BBA6453656EF433B057745CD4B3188E7
-80B1D64743A3D8D4C833DFDF1F7BE62DCA2E8F19B2E6B42B5824D9DCE4D25169
-B1ECD48AA770DF10B8CDAF0C052B74FA492C8F1F32B8F6653AB71E89C6AC861A
-17FC1C2521C3F13D51C8F3E8A194ECEB65D6E378DF77CA59261D89C22F447ABF
-F32B364C3317B10D7D4BB125ED13D2652628BB000C93FC0858927502959A08DA
-7D7DED2FB05F67DC4C8FD57FF0557DFB41B3B64B70E6CD4CC2BB1A93A9871C95
-8AECE589604D2728AC560357447712D6122A07A718A120192A05C60ACD76AE12
-A770F2BA949E7AEBDABB82DF856FC1B083D94A4F33E59133FC5852C372B3643C
-9C9FBCEC3842BE87407FFBCC197CEED5288EC521F8A9FAFFEE7E621ED6F7C4D2
-018B324E40D9DA379D44EA69CCAC6F6AC4B60496E1516EBEA89C3C71154769D5
-2D2DA6E22735EDAA07836CA0D80C75E746A5E10352C7EE38B7194AA011DE3CE4
-B0413B424160BEA8D036BBABB5F6605AB502A8E025ED1DB50854EB564A7F2EBB
-20A7D53E060CA39C4DE5031CB1B559F693F8DBDA03621F8F6082C8A23FC06609
-686E9D71059660B2CDD0D87E76EF4F72868347621992CE997D5BCFFD098369EA
-D5D393857D30B13A570FA6C7DC6EC565DB0CA5CF839B7F775D14AD508C52C5BE
-68CD329DD680503B8E76153A134414DF249A260C80D420E6F58FE267D10C3075
-5BA504D55FADCB03FB567111B64C5A307047607042D3BE73070A6C41A2D5F430
-A02548F6722C56FD30A0A6D29380AAB46B0A3F0CAFA020D5CA4DAFF00B73A08C
-568A14A89BC0DD190355AD8F346A5388EE11B5E814C087DF6BA4F2A2A3857706
-0A5DBE5A2FE2E5EF391238BDD884EDF8DA3161988BAD084968492F750BF85D97
-88901D90F27413763D1902690CA542CAB1A11FD7FC392365B20DECFC51642389
-F2E82AE2B0815F2E6D642AC005F9D919D27FA43164D322F44A1FF72811EA9E91
-CBEC140B38E52320B3C2A3E99E12E10CE5B416CD56AB3602595297FC4CB848B9
-8945B09267554B9810986AB04EE880C31B33DD65241ADFF147AD5FB644E98775
-6CCD3DCF3791960CCF51C263C36BD3CD0DE61A0FA8700F94117F8307FA253427
-E64AB799D6CE27239FE3BED969134A380458D4869F9A3D23DD026B21222ED323
-BF0C653347B5D80A1DB74D36CC658EF7DF7049E43E109E9FA712CAF4BF60B32D
-E82833CD3B0A264043E27F8A4BD73658FF982D2B7DC1813732714C8F3E07020D
-4D729A492CFE3E9F1F4BBC73F5075B25DA735CDAABB9929DFA59CAF06FB32A6B
-0DBE4039E516EAFA6D4211397F55CBA368286AF6533707AE9C7FA9C92B3980F2
-6D535BFD1ABDAD8F05B41280069A5ABC2C10E6071891E433C372F736A4F82DBF
-A442724B8CA4D1AB913B61CB402BF3638124FCBEED4775219ED8FFE18F26FA11
-46996E807D8F0878537A5E0B202F483ADDEC049817341890CA0515BA9B50EAC0
-D9CF13366E88F2729552BCE9188866A87E084CCC6BE773EC0DB26EF7C84687EA
-CB90DFD88A492C7A8A495018375B4FFE2D8A1D2BCAE6BBB4239EF32990ABD96B
-9D1FFE94585FAD705AF2C7C5D09F2410536B7BC0F693D2C90BD10E6D1F21F0EA
-61B449C48AF9D8DF6B8C40CF3BF5D7AE960ADEE9031B281745FD7E0F2A1C2067
-8BB23277FE5812392A125282235B1CA921BC6D8626994432EA40224D1BBF90C4
-AF80AE41EFA1F501CF0AE7C8CC1AD3EA097F6512E19B1977313B2132300CE351
-14A1B7CF795537B74D83202ABC1F30E246439CDC6853E0E16AA67DE68F91104D
-C857A19FD19266774A862AC4EFC6B8012E3734599BF62A2A10987D8E66A12EB9
-0181C1AA5029214BA6C1CE72932E156297EE549BDFE0E400EEBD5AD3E30FA623
-9BD16275D2C673DD757D458FC58814703E0A310658CB3492BC286E8BCEA52119
-4D2DBF77AD22E9E6653DC9B5ABAE4F1699B0118C9328DED651229B82F9C2E674
-8039384372131D1F9C6D3C552ED0E55E88ECC96BFF158D0E13E5BC5C2B893943
-4EB62EB18C0060496641E9CEE93B02E7E5FC55717912E69C015F689EAF43994C
-5564E5A4BA753C26315BB868BFD63D9FDC6366679ED1E867FF3527B9A108C907
-FEB1E5BE95D81A49CB46A927F47AEBAD027D728F4869488F3C2EB32A91BEEEC2
-57C0FC84416812685BC269B819650C63D7E89A7B400655A7B9937D57E1B3D66E
-CEBB750F0B0EC52CB33C32672980674F983E8314C49D634C541015D18A602B9E
-3716039734F351A43C35486F6AE7E4F5E3EF509359AF01F32CE9992AB4AF5876
-24FC19965F574FDAC74535F0D24D5993DD90BE1B308F4D5C9EBF21A0F094FCB1
-0D583DD7B3C56D9D2A5C620E8B993838E73A85C6783AD86ED94A29AEFA298CDF
-633CCFB27D5BF4F84F709B5801051BC0088ECA63E6D02D4EC74C2CDABAE14713
-4E6D6FFE4B4F152D14AA973ECE9B09DF78D4BE6B5FB62B1876B1AE7D7F94F61A
-D82296959CE171CDE1F5CEEC8DE98A8DB770C428373202AD265DBC8DA00AF665
-15057EAC78B3CAFCE9409D1675D729EAF2C7200FA1B20B372C223DA8C6ACF2BB
-2AF4D61985A52DCA98AB61055DCE71CD5C51A5B7AFC46763FE243F1895F8F915
-CE65F0F6833316F5B8294A9790B8F9DEA0F7B2BEB452CED4662B4CDC816261B3
-FB1FCFB4D6A2336EB40408ACE3514509AE32208BBCD952F54AF37DEAA18F44A2
-77AEFD2E07027EFC96B9A22B30FE1D05AD72A617B2C51BA0B3E37F91548AD129
-0A1674D8F8E36D190690E922D3E5D4A11F4A8C1534281EDF1E8AE1D4E7D3DF52
-9A7D82B0D6E73A6A2204561967132AD8150C71A83889EF70744D19C8D2A50989
-1AA29A536DF571345ACA92F4C0767D0AC410561E401FC8E4586A15BB59EF78C8
-307CAF4461BFCE1E5A42DB8505EC1E6E235CC7286966008FE81D8AD2E426E78E
-3E9B87BB29B224148F8425AA1B8EBCAFC7070A950920D5F81E498204B5068AD2
-317F664F717AE214FEF8C91DA5F834E7527362B9691B0939A917CAB856831BA7
-AF3268CB4364E8D2826BA3EAD0718EF3E96ECFCF5DE78DC519547EA0ACE1C2A4
-81CD9E1B5613742DB05BBBFD2ABE366A10FD8D90218D738BB34C83A1E4CFBEC5
-D4F8497FAAB97730B21AFB5830D926F2AD6EC81913418DFCAF52393CCE81D23C
-E44A38E63AA13F0B05625BE4D681EFFBCBA426B188D722EEF511F5F710988231
-7C89CA1D041C877951BD3666F39CF1E60AFD70237C94DCE0AD24C9A8E3E0E55C
-DEAA44D7A654B0DC255B6D1CCDB66B495705334B509879AB4CCBD9F388DEFEF6
-C135B0875658508E2CEF5AB1B1B67EDD2D9B2D8DAF3279B13D088A1A8E9BD07E
-9E3E08CEFA9EC5647AA804D126ABE371F5BFE161A7705A4EAC1F41057D0F2036
-B7001AFE5601544C76385797136B91E24364D630AA76DCE510555A0F2F9C3C1F
-21AB51814B579459EF58FA80853642BD9B5C61316A44BBBE61C5924D6E2D5E80
-923558A516092C344820B2FDA303695788847B85F382C9AC7356A19B8645F449
-80B5B0A28B148D3B9FF349A97F43FDB668045D055C6F58C3921A8A3FC3DE40B7
-06EEC36786201502FE29A5C31C926E372D0139D2957C7583CF44D2FABF004DA2
-5B613B628210876D18DCA2A9DE7B391027451052B2A09C4153BA2455467BF428
-0DD26997F39C20F41DB43DEFC5880A9FC2987F6E70614403DAABB926ABEEFCB0
-36E2F7B53B9E0AFD3B17944413D3BF32423D4985E540358EBD3CF30B2258E593
-F4154FDB13A2459F51CF66E30973D066ED04C9A184884AC896224C7E8FECC19C
-36F83B76826342A517FCDEF4E311B8677C3C3725B048779A498824D9C59952F9
-5D3C35A9C1F46CA02D096152C3AC5B909EB015AA346B72AF75F1DA75052280A6
-9972EE1E02B403D8FA54E303E2795EE7CF99F47949AC1BA8EC0758431E254BD9
-142AD913FABEFC32B5869812F13768D9DB84A92B5C7FF5E36DA2E75121053294
-A32350523F7B1DFFCF898CBA2C6D5963101F5072FA3A22B4B1DFC952160DF160
-77E432EBE4D3789DCC63C6DD72FD93F676E12E0B21ECB97E2D3017103B98D354
-A7272639DDF42E8260DD82A1FEBC06658575B3AC3CB95C51C7725CC878EE4CFE
-2D22057854CB47750ED829F15AA969B129A159188CA695DECA2A7416FD750656
-6E38F5CFE680480C8E35FA71CA8879679C5F257BA9708E48ED5ECB8B7C01FC88
-411E872B7F77DFD7CEE57F08811B89DD7671F76BBFB15573074119CF723359EE
-3B1C3B2098F3C096EFDE8DDCD1F216333AD4746D953727FFF976125BD1B4C887
-79D9432C118F5D401B427A3CDE48CC5DA66AD31270AF198330E55F75B6D4144C
-EFE163FE0025D5BE51D31C881913DCA8A0E7642A1C052A427CCDB71D0D5026C5
-F0DB66B54EE0281A4EE924FC5C803B8D86969793D0CD6D8E359A7FE2391CBDBE
-CA9D350217AE564AEAD14139A46C74A780E45BB11986160B42545247A0205F53
-A4EAE8A5C5C39C4C0EBD18715CA92BF4D9AEAE8870C90B9AD239ED31E291C0D5
-DA1B46F9D15B3D0AD0B83281AC2D9C742824BD66B1435AD7EAD5FECEBB47BC6F
-354C4271653238ACFE8C3732C575FD574AE3710BEB0EE8A177AB06E715306A3F
-6F3FFE555A2D1FE8832CE1F7E34F2D9D25F6CB04002E382E134D9E2714401A03
-8BA326501CD838F7CB060A568C339131F0239DF4CAF57B0F70FEF6E18B229CB6
-7E6B90D2EFE57C053763CF058D472CFA3480CC83F8754DDD38DB5779E0A10020
-4E1D8DB91FB515A5F62353F35333FE72FF99677B51073A7C62854A1A4F6447F4
-6A3D422DAFBDEA495979480E19744FA0176034AABE57E98540A60990F7CD0B31
-0F49891566AED89BC704950DBE56C594F89607F7189B690AD41E36E8EB3F62D2
-5F4AB75E8B5A4AD772654957C02510A7332DF9E0FEE697BF5D3B0A027FC222C5
-774121ECF991C3B55755AF3F448C1605A75DD7955794BD090490BE50A6628995
-1C2F50B25F50347739AAEE9709D2295B8542008C4C6C7F42EC7F1006E50C42AC
-9A6DFEBDFE541798C9FBF291DE1EBC14407349300A1266184D165BA45B1895F4
-B659CF40733DB9C6169085DC61D96BEFF0291572557BB39B205970F98EAD6E8E
-F3CC19E1DD13547AD53678815EFDA7977BE7928E28ABECFDB71A762ED37B6D3A
-9FCC95659715C47317885001DD00261D3AD0E62AB66BE5879427B578F155BF43
-7FB452A8997B4C032170B4AC96B1503C16877FCD5141F0CD1F2C0A265755C548
-FAB6C2B9AFBB90405781AFEFAAB65A172DDF50EC77DB40BCF2C3499B34C44E07
-8E56763B50FFB88985249DC698CC7A338B297DB6FEBC7016B580BC019E18EE78
-F2243FE7B78722F158AACE4B7CBF3F631CD38A49934FD79862B78882381C2CA7
-B52B19877F148B24E336A1105C26CF30AB1091552C997CF4C58F8E3C784448BE
-20CEAE23DF2353DE4126E2A541AACFB51871150ECE62F031CA1F6C62D744AB72
-9374B112537F04B3C8B8836724BE1623F5FB11EB83BFB86CDAC9C2D1A6BA4DDE
-5B8A0D52D04FB27A50AEDEC8D2ADE5C92869C1714180021DC255EC9293C553F2
-6D0EBDC24351CC3CA028E632236F5F33E659F8666CF0E991B210985EC7BD45D2
-652A601686699EDE09404A423BA6269580394F8C416D924FE5553EACD0580478
-981D4BA194288402277F5EB318C5607570C1C13D7C05B094E996C6B204532541
-58804F66117E1BAFA3FC190641E5E973685F1199E93BA30B2E21E5E55BA9AA1B
-8B23A4EEC8E48F3BF1DB8D2A7D2605C08668B155F7ECAFCEBEBBBAD52BD81D3D
-6AA3DA75C1070CE27A115FF4CA9A53AE9BEE0BE1688526D5300A853D8E1BB518
-FD612A88DB8C1373F33E0327A5F96A6A949A1A1057F7D10ECEAA6A30737FD126
-8DA97AD95733503C77DC89565C339410019F51910A7A387D9294933B70F4B995
-2C85427E083438743D4B121E184A294CF8B68F60441E89B2769218F1AB2FE409
-127494C22BA1B86A19617C8BE730B10839A73965EC81EA26410821C88E1AF123
-DF47BE758A311E9DB30713C58EB11CB21228C37F8124BAA72B4A257FC7A3BE2F
-5DE92314C63D6C29EF43679AE1A6AA2592A8B8F4D261C3913B28C15860A48C61
-FB6082B4CEAF34D8DD48C5477C9C8FB7BE56223157819D5C4FD194AC7DD12CBA
-CF445BDB1CEBA5521A71CC528B8E9A03B6D7E8484B033858C27185EAB563D12D
-68E5781E3C32A751A3BDC8AA61E2D12A30EBB63B0E65D0C094EBA423CA4F93E3
-4295EA088659ADFCF8D4C04E1DA8662AC56AFB1DABF0F02A4202FAB2834BE0AA
-57C78548AFE9CEB728B466673B8281412C3543A74249CF3BE96290741D34C73F
-0C8A0BDDE88A751B6C92EE0727A149C4E4897C32464A04F4A9850034802B5B61
-106771D35A0F38A8CCE154ECC6316765A978DB5FBBC40364ED3019277501B797
-B3A82E1A24D0C93B275F62BB22CB13A0870C63E5C17DA91D72A70AE8D8A9263B
-F4B11E811DB061322330995DAE4BE9CC77FB8D52EFC409382786DAE1C5FBD89B
-976E2C2B2A7EF03994220A47412072DB4B6744A3AF3C8BB7DA94A302A122D2B9
-69603F4996EA7A90F365DE594E09D54B156B5BC62108199052482EFBA2B9509B
-80B98030C8A598DF3DD137A980965B6AD38BB36E90468724D3BEBC97470422DE
-62D043A0682D30DF47CA36917EE1166E48C178D9EEFC9E5109B0889B3ED61E36
-8FE08EFE67A24856A8E298DE721AA064F68BF38D8FED193A93950DF9D83CE52A
-4C70BADEB5626DCC240C798A57E365897DB847E8A1141D2B4A7B34D726D6D9E4
-D56B5D4312D5AC01293A55362A6A7AE6E3221CDE683ABE93D54C8E0421999CBE
-982FFCD77D88A7A54874D9E1B3802295683215A15B34F0E6646EF35698253F92
-C9BD94E6CD758647558A130A7F415C32DE5ACF3E829E432FEF4400C177C96C2A
-6E43AB236B9E4EBFE4579B08B02FEBA3660406FD3157E1B61634F066FEB313EE
-10567E0E52F0445CE2A072A3D4E083DBD64DA04A1EBB2B0D6D131E85FAEB529B
-740879214E838CEE99F5E1368B2DC1938A97D9326758B481FCF4C97BDAB3EF68
-25F79B7C6C5CB408BE2BB366D484B258656E3C070D7880BDC1136303A72E2459
-878E53FFD9BB034A84111A2859FF255244E202F05AC5EBA37F8B352A592E14BD
-7913DA80C69A0CA65F25BB70783BC3AE556167556B4C5E382F0B84462EE0A51C
-1C25042F6893E1D1EAFA8E71953AC764C7473D906E5CD33BAC2A1D0D594B5B51
-446884767B53AC97229DC035CC5A02FAC222AF9D9D4F2F5B0A5530AA6C5FE06D
-999D45751D06754600BEE6A778B77CCFD4E00573A1CF1B8169BE1A281FBADE26
-11EDDE9ADC6E0898235D656E6DD0F8966B43622F6AC7904DF39359EE0F3FF7E6
-BFDCCC2480ED79BB17E43D5BB79D0654AD92A5F3DEB90C8AAF2008F8263EDF33
-FAD8329E487A7F31BA46C3F3DD6220153131B305EFD23C10908728A86FA57F22
-47C7A224F7A0E0776BB8A4FF7E2159E7DC61785970FA25ABEB7B11C100E49175
-2EE8346B59150535375D99588830D943FB79CC7D076246EACA26055990D7C8D6
-BB8928AF10FB92F769F2F85DB4280D8F7B39ECDA06C8E18FDF5B6ED0C1E5299A
-0C219BC1118AFA68A020D8514835CE357A090DCD39741CBA75BE62ABDE92E2CF
-88CD97318B616EF0D6B11A21502354FC9E69A1D4BADA349A6D3D79798B694B2E
-8C44A6C31B8348EE672D092B061529EE178739133BF57C766BC3F49B6AE7C62B
-781B240959F3275802518F210685EA431490994BCB0CA2ECAECA38F24EE26AF3
-0A4C54E8270196C452F504F9F9213C5B0224F6A0AE1C690338CF83937300C96C
-77D4241CB4C0F852E0ADB5AE3E8A456A5B749652621531E5976DBA5BE091A3D9
-6BA18D0F277086B0D773556F6DF40271C8038B3CEE459794AB12FE3A6037C850
-C9C4F1CD1618B53F7A4976BF426288C7D2A41180EB090C9421E8BED372E8EE3F
-C4D4C5ACE2590766FBF42B79ABAEE8AA572820C4
+D9D66F633B846AB284BCF8B0411B772DE5CE3DD325E55798292D7BD972BD75FA
+0E079529AF9C82DF72F64195C9C210DCE34528F540DA1FFD7BEBB9B40787BA93
+51BBFB7CFC5F9152D1E5BB0AD8D016C6CFA4EB41B3C51D091C2D5440E67CFD71
+7C56816B03B901BF4A25A07175380E50A213F877C44778B3C5AADBCC86D6E551
+E6AF364B0BFCAAD22D8D558C5C81A7D425A1629DD5182206742D1D082A12F078
+0FD4F5F6D3129FCFFF1F4A912B0A7DEC8D33A57B5AE0328EF9D57ADDAC543273
+C01924195A181D03F5054A93B71E5065F8D92FE23794DDF2E6BABDA4215500A0
+42D1A3D0D02C0C98BB1D6ED0B7791274C38B038FC7921FF1FB8FAE7258C09259
+4B8E1BD9EDCEDE9ADAD9BD9598EEA9691589649A9A21539161E374075BEE3457
+689F308A4A7AC9F2FE4B301A6C36B0442FB92E3B002623493DC087800B5A0521
+0DB96A23175AC584DE166F59142779F26FEE9783E28DE49FC3A8D6583EE63FBA
+610DA773CA18ACE6F64A4867A1A7817120ABF9DE4D17782866E6CB6B65A9F6D8
+3667C8D3E61E5356E35343FDD4C6436DF73934470916CB5F0ECEA6BFF092E735
+C7C355B56189D1DD5715EC97E50145FFC17BB1497315A9585D713A7A6DFC7933
+995468EFD0F59E3C15865B87925A3F2930E20D5A35970E2C44F1629FA16E00EE
+EE21EFC50D49F5BC02300D0A7BB85E649CB4E2E828C8B1C5469463013E71D723
+2CB11BCBAC191AC751A2AF7FC228395CE9472DC1809052012AEC2CD66695DAF0
+4CA04234F0187F4116C93F59A7F1F8123DE87F111853B785A20CA8B49B3B0CEC
+B11AD345E1A11578D2EFEB0536D125237086CC8CD9F34A5137AC5DDFD8746014
+D74AAE8239B81ACF65F379CF2153B06A238A2D767F294CAE0D79228F0B7D45CE
+510AC9657A1776202FEF42F96D476E7DF407786AEA12DEA0013D3B4C5D0640F5
+BC5BB72C34066270399CE595827175B23B25072723BD24E07F6BCD9EF0175DEF
+93714BAA53960F81103CFB731CED4A267B53727BCA3C97B0BA5004055D4EF0EC
+F725658E53AC86E4061B489AD4154915C3981B3B703E1E2A8D390CCECCA99385
+45EBE35441B062D7D12DAB2B31569387187D74A4043FD71F1C6D352EAE0F6757
+4345FBFB6DB15CAE47CAC4BAE47AECAE5FF5EC19057DCEFA1B23F47364ABDF47
+088A7C6A2AE26B10459B6D41CB69182FD1472F326CE3A15B59255D1DE3B616D8
+9D1F12561038839781E657C896B8C58A32DF5AEA23732A0966D96C68C988ED7A
+09B7E2C8F9F3D0D56879764781566299A4EDD3588BDF70E3D924D25074F30988
+E35BDD827AE4D0B4A06F55A9976BF0DB3C0B1D09CD08E8CB168B50617691638C
+0EC1A791C228177D4FFB021EC3DF5082CA3487AD2EFC8DE9466A690ADDB4C52A
+FE2A6DB4CC275CD33D9136E735279FBB2008D59E667905EBB04326EC33C98B2C
+94744B7F540D86E90DED64572ECF1EAD3A58EC101642B245A9C7232DC8FB8741
+03F97883BB32FB955C22F878FA0FD114451A3B3859B0B5537AFAB73AEC7DB2BF
+409E1FB41D473714F6BEA73CB085139879FA31710E01915C2938C37BAD6D7D71
+45B897E00857D3931A489EAC7B42BCE4E65F73F67FE027CE482DC47598ABCB95
+39E98DA8ECA3E23F0799D5963ABA6E2984DEACBE7B46B40ADC6213E0F4D08971
+58F68C946C748E4B4217CBA2391BE2086C9758F4E32C9B6413E48D84D33A6E85
+84747029C0A9C9B92841D217A902BA8EB333999D62FDA9F82BFC8ED11F67988A
+0CAE42182E414A9766AFFF4B046A09D476F8E3F15A8C7829BEE982D8350BDF5F
+F215F2BBBF68D4B567BAB798B9604C79306C475926E9FEC0F07A99F43473C6FD
+B15AC29C3D07FEBAD1BAFF75AAF2FBE94F104F1DBF838044FAD94B661B06AECD
+D9AEBD02B60CA4546DD6B5B5C1A3833ED07845671CEFCA8955CE0DE5DB8FC93B
+3306683CBFB8E5B79A863DE78D455DE9D592043C2686F88A43140F8B9F3B553B
+7047420E93E753829F8D47AC7621CFE3626F271E31F0019CC02D0B57F67BB47D
+8CFB63E902EA3231C00EC66EEC0D30FE8394558BD3535C888C4CEFC6EB72E737
+712ADC6300162D5D79BEE0CA1F6E4127A0BC90656C01692F6D82C85550AFC97E
+C2693E379160FDB9636FA41AE9C75B7F6643B05971C6D67CE30971D590FC07B3
+E0B36B4D1C7F25110B5DA2130D574FA292B47322975A2BADBDB39AAE69BDDBDA
+A880F9AAB580117708C79204DFFDC08BF4A48919B5C22228845CE8C3109E93AC
+2479E523B8A1C12A6E541118F121DC6B4EAED83491A03192D5C3A2A45D1A2467
+757E7B377C635CF5CAE11A7CB49D49F3A1BB2286090B5F0E4F89869D1771D50C
+54B5C5E091E3048A2C194F0ED00DD64FB95BAC6FA9D61ECD093ED416DA3A4981
+DB07CFF17C4F55C62DF628EBFF06FAC3F3D3F91C30EBB34052BE1A08F5EDA4B9
+08977197950A282B84E21D43C64BE3AE4BCE22C70E7D392DE09D89B7F23351AD
+6AD37225C12BA79EC9951F5DA1E505DB26200190ADE0E549305B7530CB86EFD2
+A896F13A97E51754F70B609CB4511CEFC38BA579C071E9510A49982389980DC5
+336D6C4A2DB100DFEC4055C7AA9C55880F94FBEA9EB280BEF66CB8E1E38A359D
+E5AFB12B540CD599085ADDA7FC2C72E7C873015773FFEECA2C596B75BC39A3EB
+3C43FA2E53C0D7993042F3D652BCC483E48B7F6C94C3FF6D38E276086A6AE67A
+E5A571B9C72E0D7824E0BC2ADF51A393B9E334649F786EC1923C854382B89627
+1B9E701AE5A6C42E672B2C6A33C8BBCA8F69B9061E787D6B92183F20CF4C3903
+FF5417427B84798C82BE28D2C81624E3920CA61EC9EADB364B5A6E50E49A1A72
+A9A090A1FCD84814B8B2708AD787D2B5015DA1305874F58C5EB62F843685FCB6
+465FCA80176CAB2B2FE65E0A270BCE1E3DB97564BEDFAE5CA44395A8DF4505C0
+3E103CC3B914359B2870DA6CD30382EAE8949131CFE31E9E75C3E47A3834BB32
+CF183D4A8B9001710D0A11390C9DAD116196568591D38C2AF4ADD852F31494EF
+573462759A35415900360882739789D6B89ACEFA251C5ED90ED704DD7C3C80CA
+9F6CDED69537D201D520C99E69EEAD5D3C0EB84C166660B3C190166D93EDFE6D
+15BCB6DC5CDCA825E48D33845CC2FB15291AAB823F25CF8BB0A1EAED8BEC524D
+D9CA016027141FAC9D35B64FB9C224552F29EF6B32497254E319090E698FD8A5
+15491CDFE1B988C79A0E3B9D01E12FF084E9FA86CCAE02A3EE6F2917B61A2CC1
+64B8CAF309D1AB48A34227A7729DFF99CB6EC282E3FAEDD2673779AA7E4C1789
+D93FDC37FE95F087C5F88F53D30A2DA9C913BF205FC6BDD060A40184F4AAEB3C
+D080D63B89CA3DEFF310D09EF0A83F3914BD5B7932980ECE139EF0313C20B4C8
+576EE0FE3F28FAF4D3CE7CD0890BC824A85B8EF4636BDF1EF1BB519F93D36540
+ED09FAF93FD71992CA2CE2E83F5355162ECEB32AD218092F45D5A61A44E67135
+EF0453589CECDC6962D0E8DA7E7567603BAF50B2C8F1CA65EA5320984E7D69AC
+9A7D3D7F92565D79E8C9DD2D92CCA7DE9CD058545E9F98AA47904D70E1897099
+3C4C852B3BA131DDD348433C336BDF5FBDFB62120DDEAEB3255E3207B0C84A0A
+1ECF9EC869DB9BFA3693B03FCB27C5A5D3CDD62630DEDE91B4DD5B9784BF0BDD
+FC6EEC3FA7ACA9E15FAE47CDD9B7FCD2BF0EFA10716F08C0AF25FF67CB6F9598
+C607D2FCA452417D2C69DC808A9441A66492394C3450BD30632AE739EAD654BA
+4343459CA36B6D5B2C12C39495952F2EF93D82C73E33236785A79609E260C4E0
+CF3A3C950DE71DDC3939D42DB1CB1CA917CEAD56979A70F8F3B207C805319FA7
+3C000AE2B21D711A6D78C7BFB901334DC06F59EAB6D94B507734C27971F8458D
+D00193645AB92FB8FE163D5C51AE4F40BDB4F2C51691E76EE0636F071F37AAA9
+BA78BD12459CA499210EB0CE2F8BD317387797C33F5933AE7A6264DA06B4A6A6
+1188326147A16B205D1F965872DED7D8EDB3294FAD2FCDF0D423329E9CCF879D
+4E0B966D509F45527F7609DD09694D286F6FF7535EF8971B7DFBAF608A19D442
+C133207EB1152ABBD11C455D0977F66A9B73E51381D1CA4B66E87C0C7175A63D
+80C699A052F00C41DAEF42E7A40E07B1B14107AB0787E24E17C1462960E3C54C
+AE73BE4924464FB177EC62F116B2822842541543EFF7ABDDEE197D6BD8F8D4E6
+59175D8C5957550B70BE775AD52FFF6E7C00DA7CDC16E1DF7446BB5D8FD82647
+3E9F87D5EA365C82A2D991321ECB14A9E3AEADC5A56665DF7072D6DAE402BCB6
+14D92B17F9E063E4E9D8D239C91F5C7C0BCD2FBD936C9D4A0B57659420343B59
+B395BBD1AB5B6003F653699D57E7581F9813CC98D4F072FB78899D6DECC42D34
+F2787EDEA64058B46C4BFAA2BB96E9BE5CACE8D91E4C080ADFC0FA0D4A29C6B8
+54FEA9E11DBCF53D9CA40A21AE5076451EDAB3593E56B6D453DC8EAB8C78B588
+34D4C4F36861B5649BC1E9F3091E704BDA7613ED45C911DFECA74EEA05165191
+825F95A947CAF382FBAF01F3B8B041ACCDF39718D7DC5BA6CA12BB20EEE96439
+BF2E2628AA3BD2C91998E6247A690FCB0CC95F286F427345CC4F1115BA3A6E54
+4743355F2CC991CBDFF5725902C1F5A6DEFDC8638A26EA456C33C27773D6214F
+66536CD2E44FD253531732D5A8C44B336B1BB47B0477350EB8CF74889B93402E
+2356A9CAAFCA562315D8E0B3F42F08932CB87BA2499A875AFA08D11DA73B38AF
+F46D03B7F639A8D7BF88CF07FFF4E91716DCCE6E2CCAB60A64D5E40EFD8B336A
+1BFCC4CB04F49DE1FBDE7AA5B2092A6EDBD913D161A3271AB6411622D0E14416
+37F81E0102F5B0F2F9A2B27819E4BACD7C50E29D6291AE5B0973C657761545A6
+741729620EF2BF1046B3913399C10982EE5F4142CF461EA31042E432CC79A1A1
+39C607D22E45A6DEC008CB4BF6007CDE9DD5802B49A62C8E02A6D448B64177CC
+887AD71D171B99E7ABE2085B37D90B3BD8513995D9A57F53184DA474F6DB5E49
+B73E04CC214EA5398DF7D7541F94E623E8687B511640457A48A68E9D9D6584CD
+15B57CC044D8091C771D175F2EEDD411099BC8F7B4317DC503BB5E405AEEB526
+5E6E1B1F2705275D274E012A98F66075CEB90AFC648B964DDC0E9C4AE7B24CE1
+80B051022E5781A533A21DCFB97893847D685137EAD85BA708A7E118C72FA839
+A9E460B5D17365A0AF1F53A98319FB64A5819B087F554BC056C4BE44113A5404
+BEF759F890C1CA5E7AE156F4F8106FDB4F8DFCCC640976983EADB30976344048
+2A86D7B2AF4A01CA736B98D52ACE392AD4BECE7E61C710B08B66F01857CA460B
+B8376E257113E10F6DEDF14CE2A4E6A99ECBCD302C36CADB713D849EAE9EB598
+F29DC98531D793B79F83091F9B136809E006F34E423D528CC4309AFFB3EEB47B
+9A9DE4D5B25CE953345C326BCBE2B4912641780637783084D3D12693F8135483
+CBB0AC4EE0B5610D7CEB7DF205830BDB9BB404DC1B28FB0824CC187B26C19A91
+DA0025EC739BF3993700101D042DED86D67F5FB87912CFC51AA7DF53F2162D62
+6314A2CE13810D0B8D81F45771391A236422CFA0F35F7A0CDF14ACB2724AA57B
+7C2C28D53029B1146558610E0CFBBF72A85AB9BA308F846228F299F13F68E8F7
+D963B2EE9EF7D4C21690632B640BDDAD0556EFA4EFBF035F13377ABB5CBC280B
+9E0C12AACB153C93351E5BA95A7D149010E204950A59C7FC6581D9703468C1E9
+EFAE37E7E6ACB892B3F8D1248D9A4A72F642FECC5E0B25C15EEB921EDDE84D12
+0E524FE6133C4921FF4921242392C12FBE69744D53739F7E849C1B96C4020AB2
+1FF10DEA608F111749E2FBD8DBCB17F353DCB3075B4F4B8186963EFE95A76A10
+85AA5BB6DB4095291974221829A8E436680F4860E01C3843BE5BB3101D0869C0
+EFCE08D187BC04F58C7A450A59093680A0F09E8E3F12DF5223E7EAFEFA01978F
+D8354753A68022CC92C71F2CA732DADAA8A466D4AAE5999B0DC077715671F518
+E6277741F44AE798EE50DF44CCF71FCF8BC71F76374005FEBC4883C6EDA854B0
+88C0C2B476709AA809ECE41AE786DB1A32B3FBBCC14921673578D3514C8CA842
+E1FF90BE33F7B93ADF6BFB8B1AFBBD080783BEF056A6BFAEF676F7BF9F2DFCC8
+01D255A9F0391951210D60D4D4DCA93AA858B38C0D7B8FD740D5FC6F277C2A68
+54CC2DE1F40B6347201FCA2A0A91822708D820CE645C3E4E5A09FE25721AB33A
+97871ED448F38FC5A349D81F402B34461D840D5768BFC6849439AB6115104F78
+B87115B1DAE12542EA898F86ACE247709817850B067F537E6137196101D46DD2
+D842EA03EF4501E34074E8458E638ACC4EB349A7430AB035BEF2DD4CE00554F9
+18F9FE32A55AC1E7E50D64AAFDA278D77A7149C59DC5B1E3064A4B281A54C9CE
+A5EA94ABEAE4C6D5674C208ABC72563976487136AF2E21F835BEFD232D7F0D13
+1D19932367F51D5379934DA7F1635AC51EE5CEBFA63D4D32F018DEF13624EE62
+31DAE68A08DBE3B4FDAAFC75291C8C6CC7A657E3C7453C7D1461A36E88E633D5
+408253B673AD87A9FB2D0F56DF1305916D14D5DD62051E27BCE09CEE9A1F14AF
+1D7164BA5FB6E6EC8D38750F7E28BE330909F303ECDEE692E347DE13C8C2F82E
+29C8BE6EFD76546F362A12A1C2DC12389EA95ACB4DCBE95620F0C193EAD91B33
+BAAC5801AE827B9AB3FCE5D11D1D7854F8FA8A31670119CC0CA98628F801838B
+AAC7EF90AC5466BE69CE3E3CD9951A5EB9AC08014285422F6DA6F6E221BB30F8
+0042A11F2E4B765BB0D142AD52F4D85785EA71B2E1CE20728B9E9306CE93268D
+99B822A5AB5232EC7E26EE1160850AD3905864A01357F22722B6A54D4EBE58CE
+480EAD9FBF068EE965AC4B5FD2FA8CCB91ECFC6E90B9C49268CA0B0FDAD23ADC
+D5A74B41149BB08454054C451AD0DA4CCF8B60F2EBD061AA03A011D548B6B481
+FAB00AF9225BB5463F27FD67333FB51F8664536267E95CFAA0BE3BC1B8F889CB
+587A3A4FA2B45864F07E11372C9507A625C0030EF7030A0B4D931BCC48F6DD51
+A4D1F63FDC4B59C1CB18E6242E9F4B4B8AD9755B870FE60D640181FB7EB8120C
+C56F51DC8C47FCC6318C2145EDCBEFA7BC4253315BA67FD2B3D4AF6A9F3F229C
+AB75B592EADE15B1FB5FDBA1C0F786BD21A51506B7A2E42C2D086BA6F84D1B3D
+AC7531545F0B01346831FF36A52CAC1E390F99AEDC265B44B0FC9C581BBA6BE4
+48B723811EBCAEA5FEFAEA7E5B987F2C7B3E9A65D2D14A7B74F099401C57E367
+385352D0776D2A908F7A5A2E4D4160946C5591397877025C8C387CA413EFED56
+8B142E8341E349DB4DBA422A4FEE56A573972A0C66590175158E48850A9F7F38
+4B95726787B8F969FDBC97491CC81CABC976CD00A27D1DFCA7CF467A956C1C6C
+839817AEF8794B6151FAE9261119DD5DB787DC9D3B420FD325ED6599FACADE0C
+320D54C2E0D296537E22C1783670A9D9BECAEC63853EC2F05A990260DC189D63
+7CCC0BDDF2CF7585071ABAC14630666737041194D0777EA4292AE60BD7F7100E
+DB568C90F0D899EA006CA423CFFD6EC70A5D3D8AC43C747DBAD3B02219E47D8D
+DE030631F4678C357A58ECC52782B31B50CFD44EC33F41585E51B27E3997D33F
+461BEF897220AEC80007F13C5A1EE3A0430CA899047DF944831F8B010A7DE74A
+BFD26001472DC00CDC9F17CC435F61ADAD4E9AE062ED477FC621FDDF9242C449
+1BB3F77FDD1519A251B663A693D84B42BF0962F537757F38CE5C5D56B98AB10A
+3B70C8AE8D52DCAFCEC22E7B09D3C4EFDA1841C74CA975E4F8294F7BDC796500
+0ABE197ED3737A65F7BAE601C91DB3983EAE11DA3EA18ABBBA3650DC361C2E77
+EF9F97618B0C337A906FF39926D2B0B7883ABBA650816C4C6B34EEA836994EEA
+AFEDDE56E0099D0E09EB88EB093544B9BF4871200746A0409C475FC4232A38D8
+F3105B0FF44E4F132378DD12D9E796412FD0F9478322215E9F59E69396C35AC4
+097C4995B2C3BAB2DD04B1A7097DE16DFDD76465E79ADEEBA90489ADD0914EBA
+53E11A43ECB11D072C68D2131BE1C7C43CB9DD5FBA0A67BA43D6851AD4CD3BC7
+39AE2E22CCC183A56CEB71D4F9F578518E376426E42B6390426A8434B5A83E78
+77A5B9963BAECD5FA5521C2A29418764E4EC1A72462B04957F823E2817A7F8D0
+1512919889500024B1C42EC107E8B8533C0B314EE4E23313A4C1BDB009A2073F
+9BAB479A3F9DA76CCD65629CCEF78015ADBC2D0D124B3BB2D322FC4D209E417D
+84BC3C758B6AB64A01E25C9C7B71D741AF90A19A339F99A0BE9FC39622F04C6F
+737474CFEC19C890A657BCE192B9DCD8F273CDC5294875DD4507DC572551C934
+9C362FD595A429FDA2D815959461B0CC2A804C1142BD91C7567082699B8E274C
+6A22806D6C51B7DA809BE9F612EC537D4FF3122644AE0718BBDC6ADEFE7EDBCB
+8C8A76CBB280E70ADFE563C01CB9EB828ECFCD365825941C8B7E1B1401AF773E
+0D3E8A6F2D62624F8F5FD1EC3CC76254E4CCB4D8E4DF0D5E6DE10BC1FD8BC325
+05E773E0925B6838E0D7ACF12AE32E572F6642EA587806FD2805C9147B873194
+788B8162F3C20C915E4909B72D0A62D4A2B63B3825F96C42625DA10FC0E9ADCD
+77F50821EC585193A56698ABDF8822AD65F853F06E4171E1A1AC06E5C57691D5
+90523A7F03DC50F41C46D72151717149566C2D356C1A75FE76619AE45B9CD605
+D3A0B33690F9431CE242042149A2E42BC6A9356F786ED9B7674C243C8AED9D77
+636564B36A52EAC1EE25999127F925F8755EA21272E3AFC856EA92F1B1E130A6
+9486E1DBE81C78914A157EEF0414901AC8BF313A9F444FB2844405C263105609
+9E302C68BACCE64BB7945535F2F9C2872DBA3A602BFDDC2C6438B302B8D96DE5
+F537A714B7D2BF4C8B6915011D38800C0922B7089E1F58A5A6DF1D426261FFD3
+8496FC59ABEF5653D244E51DC18D750C61F4AFE49961F461F60F05664DF2395B
+7CF8112611AD3C6BE0D64AD95CD956DA57C6E641EA2DFB4F84B441D627E68C6A
+ED7CD840D1B199AD4B428C6FCC8E0E4CE294433A4C8A4F1E498B5ADC74B75490
+60C206487C101F03F8704FAD6B22DF1BE74DBB61631B2426EAECE3BC8120EABC
+A4B87B7D1C47DC03DC1F132E4A4671129F793002C5163D5A341BF2339A0DE9EA
+F6CE84D02DFA57BBB021EF5B165E47F01EFD7441F57D5072F4649F2C6A9271EC
+6333129DC28B1DF6641E7BDE87E27B19D474DA41A43A6F985CFBABDA93BD0C9E
+4552DDE651D58874023F062CEF99CCB280E75E6ACD9170013E67ABCFB7765B63
+8D5778C5B9294A5F9EB8165B534CCF2345373D744D46DCABB2386EACF24FBFDC
+945B43021D51381512993D0CCE214FDF11143F608964E2E4458BC307618FB066
+D0A09A1D3986B9B2BEBEF6CCB56B060D92488CED8F8657B779DCD06FAE5DDEA9
+AF3DEE61771BEB0106B8446FFF798BDA4522241ED5A3C2201B859CF99E487A9D
+6D09F1F4E15771BD8B827C0C6FAC0C68CA005767EEA79C653D10B357B2F35AB8
+E27E9A9E1647B8B0695D9B3361D5C4DD1C8502307AB8D589E8E7730CF4E79138
+DC663A160F8B48A09E2463A3884F7110DA86DBAC85BCDF0F2FB642D3A32079BF
+3EA12A6EC68F1B16886B92C447C6C671D056C625D983A59AFDEDDB11F5CA4607
+849A561FF10F2D8AC4C7A07FE97CD0D40EF2FA3C70CBA1003A32B6F1E6AF34CB
+297A8161614ECF7582E57A0C28073664DACE0B1F5975CA309A313954912428F3
+EB1FD70B512C6BA2807E7DE61C4DEA4AF0F975BD0813D74C3E7DC9B0FC48B19F
+8AE1D32B736870819CA75057B963C1AFB107309889506B0905CA55B6F3021515
+B0B6A1C0F298421CD24784B89EA18251ECB9E9F76C0A61CB6B61CE4FC18E84D4
+C7ED481808433D1AD785D0E66ACC21F5DD37CFE2DAB64F3D23E0BED8A8E21058
+94802B93AB33E5B66B126C818CCE25F58852380D0A46A10BAFFA90979FE3C5D6
+C1A41AB044D3A12D258AA40B505A7E167FB20697D5607D83C90F512DFBF4B8FB
+F0AEA744390E9D06FBED2D1D5708EDE5C4365CADB27F9126DE2D0D91448776A0
+1CB4091C21D62A253B12FE336DF35BD4B322890B0AAAFE6B917E584156632567
+136AB50A591298F50D9B7756AE5B9DC1CA48C08E564BFD1AB5AACA99027E5950
+E12037FA2BB52BC7F430096C7CCC2E6E49036B2EDC04602B42047659ED14B344
+996D0819CB04E198855E16E34FAB061B23CAB292B6A3A33A692ED38128193D37
+C8CC57648A3E641593A39E464E46D260B38391EC6C54A5866E555F46AB175457
+7EF1CF14F518D86A975E0741C75816DEABB25DCD1BF501F3F7FDBE8940DD1256
+8386A7D8FF00994FD669D6377A279C6833A2D4AFA5BA3B02925B1D4C8547268F
+408B524D3F9CEEA491A0A7D81843317C001EBF830C369B61205CF76201FCE5A3
+B2A5A6D96F9F22212CEE6D220337B2F0799EA3BC4AE337CB463AAA21C79C57DA
+02A2E0A60931AD78E20D5471DA17C2480346818533D131A62C5630ECA98D24FA
+03612960B26BEF1FC3A01B45348CF695D4A2C2B69B15EEEEE49B7DB78B03F39D
+A6694E0E1CDCF75945810A6388412487107C38BC9632D637FA26ADE3EA61F5D6
+3D48E4873A03C7DA132CCA34530F27504B51DD425A3E74DFCC5BB227F63B82BB
+6C854F5447F3517A794A78753775ACC29A61DD380CBA00EB25730E613C11899D
+B5542B8F0F4C80FD9ED2073D9A5EFD3D4126F64CCD5B3626B6B8C0014C31C9AF
+E638C4E9381415F903DE7B554B1BC135138F12926805CA71A11D6551078FA370
+08AB0C884EB5EDD95994D4D1C5D8DB1412DF91DDBC521339479DD06F5CDC1A20
+0E35304ABAC27079C48B688B3E138026764E6F579503D13E2A87C11903360655
+2E3EE587F8DF681F6514BC853425BE7178778B0B95A9107FEB58A69CFC9CC845
+D13AA5DA512CCD45886411C0809CCDA5B28F54E5C1EF261C280E0B218F6E28BA
+2D97F92962D962F48F753A61FA204411DB939E77120B8069155754B663029E00
+D7397C001E098A45D84FC93AA3407F8BE54CF5052FFBD2780E3A78CC0F6292E5
+17A6DDB977B817CD9EE2FF76EB1ECD06A7E36D256BA05DC8E523B63FF807E1C4
+198E61EF3537B05706F8B58286DB806A9F4380AA85982EF8A053F52E26D28D4E
+5EE719E725A624A024AD029984C35E6502FF21CFA2EB865D910F667F810F4A19
+855F8051CBBAB71EED5F57ACDF4718EAC86910C8B38FD1EE596E98A0F95BE413
+885D92B2412DB15C27E8A88C7DC20781CB6D9197F6063554777A3E2AB59A3369
+916C3554B025B6EC0792F09D0396F6AE8CBAAF647CBC58FDA759A4AE2BBA8F01
+C9DD5208A58C25210A8F6B8EE44C2E83FB0C5819ACE93D946A822FC5D1A5B329
+8B7883E0DA2555B6905EB07D3EFE3A5F5354B7A6DA5FE2FAF2A8DD8ED3A095C3
+7D7EE87ED1947EFA55EECB85E9944C9B3D9DB1B2B46A88D2B4F0276188C758DB
+A7A9B5F9EC59C67A553831CDB326C1C6D38528911BBE5C9CAA2A845B6D34AA1D
+4876501B96E9E4515DA1242E6FCA80EDDEA1E3D2DE9C549844D239A9CFB3905E
+984FD2AE71E9D356077A261EC502B8D8BAD6C5CE9C1711D65CCECB52D69BBA9C
+B2A5BF994B7405D09AD22C54D1A8D4893FC7DAAE7D9CAB00AB3FB61F7F56A88E
+A6146C98CDDA05078DC0387E8B35C5D460D21E19372E6056E5E4B23A2F2FB3EF
+1DDB4E5312E0B2A4631C546A7CB1CA2A3EE23795BBFD061A44CA4A2F6F5A5E0C
+4560FFCD520E8F235D6B768D119B83163CC1B13547DC447575DFCFFE1E06DDE6
+4A0F0AD5C08BBE48432B15FC9D144E6ED679107C81D1117E7A7ADDD5723F4EF5
+235E44730BA14F7AA0737B933590C453162240A1E712FF1436BF8CC9312ADD0C
+2825E46187ABD85D9661B7A84F57BD78A35E7684F6F9E6ED1B1552D2DE55119A
+0C1CE4CD1712EC5A318CF4B9A389C8120F332043129F24E341BA41D5C1FDFEDB
+B3777549F7ED355DCECBB56EE36622E0F2D22B3F37B0DB808920807577ED7230
+35DA36AB230E3D914E653D94859F257149E617D82F5EA6E6D1B6C17C96008260
+3730E3370F9F979A98CF71F9E38D592992251AD5B1DFB03FC466DBC7485D641C
+97E5FA71484745A41CD87B4C1AB959A4B7E1404E30E8133E5707258A0236461F
+58C7F5FB1F0CBDADC204311590FCE4C7B0165690CC869F221EE486217770B65A
+980677F4B80A045587EF3F0C71E90DF404BA8F1BD7A3DCAE406A9EBDB2CC2E8D
+E4D25A8ABF1B4F67D5A1DA34C6F67AD574F71E894A52DA063FBDC6A5F35E2385
+14809CDE8D4C549DA24DBD6B41359F474C0ADAB4B17F5FCA1DB304C685687DA8
+510292B17FDBA634EAC57DCEF505025DD1BB9AC7D186AB560A57871840FCBA7B
+7FC606D2643015E570A3917F89A7586D71AF8CA24D56E71284C979F37F59C921
+7E7F33B1F62A556CAD6F0F43B0D31BDC3FC92082C3216A3B4960086D578BB797
+0ADDC78CFAE010530E09A86F950BA7DF855D0CF9EEE48E726D32DDBF97469277
+0856D2C19F819DD0086BB19C9A445F76C4745E3EEAEF48A86FC7F62EAFBD0D3E
+E5FE58DA688C278CE3C4806230C33DE2E6927D1A0621910C75FB0F6BBF85FEFE
+8F6E8B55E2CC59E2E33F1CE139E08C3195F0BB3653A45434BAF26A3D8D150CEF
+52C48C478E651A5F413E89DC60A7A16D7B73F7F90B070AF22F560A7CD2EDE5DF
+D3136617AA3CBDA07AD5BAE734E54A99C00EA3B4B46511C93D5ECC962E96A35A
+EB39D6DEEFB06D6E2E4C027A47E8EA8EC2FF0F4A9C84E5D3CF4273E50DFA722B
+5D60C918C6981B8627F1B4F4BCC31426317D3EBC95C25B53255557AF2DF70199
+1974A9F67FA7E7F545081C54F3103E4A45FE2C439368DA42D72FF4ACBFB14B5A
+73597AB5E1EDC92A3A0BF4FFC68E9E74D0244573145959130142D903015C8D82
+F0558015D3FD56C45472D1346AD727639D26DD574C9DE0A4FFF51498B78C9653
+05CFC327139DE48316D7790E8CD1A9D0D5606ABFAB745F17C5E90244A209CE56
+298384344A2A216EDFE7D5E7906BA6E7E03EEC80B10E2F3ADD160ED4A21E5E0B
+B64BB6FCC7893D6074E8884BAD38B4DFB61F429CE906062D8C37488433BA7FCF
+F305D8C59C900C6F36BD72C2F48344C6C8B69DDD304212B539C950B9C40ECDF8
+01134774881EFFC2E7BBB8465311A852099D9379C7522BF903496DEAAD12D7E8
+C662DA12A6DA3E3A99D7DDC0DC81221BFB27F1CF2FC6CC1679F09B89FBF66130
+4CD106B99AAEA0AAB0FB6C3C43C2405FB979459C27CFA6CAC2A453157AA7712C
+E4C4EB0D03E6F4DB648CB2FF46A7BCBCCA740AF8D03F4E032BC1F07B58A28C7F
+20C67A9F5DB3036769493076258B474F7F2B11F78E1600A1AD228963B37E86A6
+20440597F89F67A08C07AF0CF3E3628C9698B4103B7E296FD5D78491695958CB
+4F61366EEBA51C3A7F22D7DFA81FAC74483D6BD1E17718D8608D728D45FFFF41
+AA925D4FB248EBA78A31BC2E4EDA9B4BDECF75E69C1572B02724AE0E88A47C2C
+2606B0D5A952E0705AC500DDFDBD9653D4CA984EF9CCC2DB8F0E70853D172D61
+8510F07D0CEB47AF4BC8EEC06D2AABA4125CE96FD28D9CEFCF6201A70C139900
+1AF6D4CF7DC807FD1A8202AB8B0C005067BCD3AEBB482BA2F8B8FA44D3DC7338
+CAAA8D46A5EA05B8B1A868493F8B503393678AB75C5F7649332BEFC624F1693A
+3E34ECDE22A60891F423950A854F3BB1F6B4959AB0EABFA8955D67F42734C8C6
+23F6FC71518A86FF0E1804E7CC09CAA830479D9CC01CD03EDE50DADEDB16FAE7
+9CA4ACEC7AAA5E704290A2F7527DEBA2CDC1444F027EC86C81367F54516C1654
+5E11FEE3F10FFCA2D74206F365D53655BD8FA76BAA8F8C78696D47591BCE88DC
+B12AB8176EB03BC115F99B7D88C56F2A3400040637386FB86D093CFC38814F2A
+F1616AD54EC908AB3AEB11C61E3AE380D99FEA37B1D594559A904278CF2425A6
+012729A40062BB0AB84A0FCB86A3F5D04561B93A77CF011F4DE3ECFF5E0B004B
+933084F930F0AF3437D59447EEA731352339492A0685B45101CBFB5B8259E6A6
+3583582DFF0529E4AA5806AC2F6C9C448B0422C8125CF30259325E05B0A85EFF
+C20FFAF525F73604DD2CEC421190B3A47875BAD36104DA1D80283DF395B6B87C
+961E613CE164B60DC343D3AA6D7065149B412C3CC3FC1BFF415652F99F698B52
+31FE11816B341B2E2BEA3F7D7732B5C9E0C754027486D56B1D2268B981B81C30
+9FE2AC2F949990068F30403E3243CB7E4A448A4CB05CCC59B9C19CCACD03E428
+E423CEAC7B976B59ACEDB3FF08B094AC3E969C99AAF5EA974F3FF61C5C663B53
+8878F3885945B1A3299C219976D2842AA5DEBB5428E1A0864CF48BE957C7BE41
+66861F3B4BA7CBCEF06B80137F83E351D8CA3D5051BBB3D2E1EFCA8905061D14
+643A240BEA6AEFD788B00A807FBCCD4557E191A51D62D9729C98D1FC4BDB776C
+781E824E0FB8B5900C41ACCE7831C4F6AB814BC7CB47ED8031DF80F517AA5E44
+45046B25AC5F3474135E429142E5BC33D924CBA166596FAF5D25E732C79C2AE5
+F3095A5D565B855E15A585FE57EC321B7D904BFB9EA2D724A085F298888EF252
+938DFA23FFCFF6A1A1AB9436CC63DA9B560B074BBFD39E552DBB8D174ECDF5A0
+FD92ECCD75EF488732377DBF97C7069851AC0EBFC3AC4226A534FDE26B47527B
+0DA64B77BA16385223580B784D1E74DE433186809AFE97A7B51514E4F665D14C
+D1968CDCFBD8E50ACE4D76442D68FF726EB83685DD0FC3B14DAFAAE06A894CB2
+D2CDA2C50FFBA709023472951955D39E7467E978DEA8371A935390407C01FD50
+C8B393DDF202F0BB76B7572FCAEE5FD588C6F01AAAD38C99B277C501DF5C25B8
+56F5BBEB4FD1BB379563093D54247A365CC66E04A09EEB1702FF946B2DA1247E
+15D82AD0078AE820CB71AE2481C3B23EB86A5295CA58E00BC638EF541D4644A2
+748E7AD3212B1E297F583AC4EEDB93641F2B7C0817245326322B0AF2C2028EBD
+6EEA236F8E774B379AA00D7BF9B9AA8D9978649FD1CC8DFD7C145F36E2CAE63D
+157480ADE56A69DCA2BA077F8AFCBA252DF716D99442EE7286DC74CEF7F539E4
+11EBE1B2914351CF6D12FBD2658285129176D0566F2104CF95589AF2CEFB1DF7
+CBA05FDAD557F3279007CF49BB3783470BC974F47408BE287877ADDDC30DB1D1
+1ECF880973C5ABEC997DC089A91EC2781B77D4B1BB436C785B9EFDAD04FD6B17
+22B53DE2A271A527E2A4A98875A041F5E1DA7BBB96BB550DD32ADEB761B561C6
+71266E345FE58024F192ED4D918892CF596AA20791D196AF8034F94F8EC9AB76
+625595C86424B94BA9143E035ABB4405A6CD2240CA82A6F38ECFC0629C877482
+AC4DB88AFB832A4659B60CE2F2781BA482C8CD801D55C165055B404F1DC8D6F9
+7748CAD55829445A5985D4DA6F0B2BAD86A6435CBA6D314712C260C4DA58CD29
+BDE901ADAEA60C3AE82F9D52CEB3E29AFDC1E03B4CB387987BE958F3DC449A5C
+ABA0F3E720378B1FDD5D4B6F8F96432380A83E0664AFD7C9D8F85A0034403E2F
+8CBE7840B219589C7E7D7E20A12684F0D01239D1D41CEA6B48361C390BAED783
+DC6692FE202F3C7146F8C4B799A4ED5D6558DCF34793CFE86D7AAD1B27CDD541
+293E1DFE875F5F397349FFBA48015435855269CE3E82E320EDBF3DBD81243C85
+E7235E75A98EE2F7A8F5B2C90E2C213B13B9CB1776B8AF2D5F4753A812B2EFEA
+E9BEB45F4B3CC3C35DB9526E3B2AE4C1AEA573970E588FFD894EEA7F4F29DF14
+61AC620D18337395F04E2F05D2CA8280BFFEC6F56E1862D19E891D753DE8114C
+76CB8C88429A0706B68B2FB53D73D80DA80A88519174D0993427FC39CF7CC668
+F2FB56CFB3F26F9E2F35743AA8BC2530930EE7B330314BE7A4AB21882FC84522
+4AAF8A9B58AB8CA2E316B29EDAEE4A140FBBB591398A86BBB933AC07B0931CA2
+086842ED8B3CBA0EA117C5B0FEF0DC8D4293435CF92998916C53346435048556
+A36B15C19BE595C8055959299645BE7B56E3A3353F443E90E0A9540E8F5433B8
+FCA78FBD369DCFCA049E4EA27E890FE125DAB0AB6DEF649E23F34F2FA46BB1EB
+CC1A041CF273F94DBAC2ABAD5E225DD6046B03CEDC518E8A13DA56E4AD6E36A4
+BB319081EC89978E4215940DD715795D07A61221705ADC30DD8D6343BB3427D4
+DB7B910D256F65B9BB9202C482B190C7FEB04EDBF80EF23EB3C17DB117B501BA
+3CB89B34300BDB9A0B97ECAC87536EC94FE2D74B48CE2A14C0AB0F50F54E6D7A
+88DBC59FF9D3C33D8AD4D3F1CD47F3A4E7E181500A4A96EE73A2954DF83F1D64
+9C1257D65FDCD057BFBFC9A18534B5BEE8902ACCA38D313F992FFAAB300FAE74
+5D7FE062C4C1AF0EA71A1F4C2D34313BE0F6DB1CA515A9F10DB27560D24B6D0A
+6090E9099E59F59C0AD9FF714967B00A741B691A5D11B6042402C5584E487295
+F4DCE8FACE662E1FCAF88601F9C076AF879790F742B4B1C00A15642E3ECD4661
+995F0151413F513C28A365634A73596D5DFDC010D53C07AE9052A8F9E3C5C557
+D5434ECA23B77A3DAF392919FD782EAADDC4D121F91EF04666444661D94783BB
+240252B7C302AD0D5DA1994246D768424B449A3D1B160210C0F3296D34D63290
+D40FC924B1956C2F21EAEFDBCD302C1DF97ADA7748EF8BE4D9C746706DA02399
+04FEB35B54B61AE0131EAFFF5F410E586948EED156937E836A5DEC3204DD8C8E
+E556B8EDA52064864FB9776CC1E05E6181C549C10F09296924E6FD7BA07CA23E
+783F7EFC19B869E903640009A37AB5A47A3F394FAD97F7EF0A1DBEF5C74BB515
+70016BE28E8FA12F9A10E15C1EE3B31E4CEFEDEB385FD9B5019A5BD57681F9B1
+C05AFD6B83A1FDEF4E4789245BED5F4CBCFC4838A89491FE93FBC5773A89737D
+35588EF3CD0C9ECD89FFD27A7FF414A9B7CB89FAD15E692E509C65F3AF36A346
+6C8AEFF5AC7CC50262B24F75CFD7C44A977D9A34F89ABAB25A957B3657C76D31
+0F02B398202E98A8C65742FF5BB296BA192D3FA12B617A0F3EF5FA1502B4D519
+9D2301D2089CB47A16606CA16BED608743AEF37E9DD4BE4B6E90AAD8D12B27CD
+DD26A6B8B67277DFCC46855EB23EE26492311CF9A8DC0C39241284284DEEA02F
+4F358E3A47A2D5A7B349A22E46BFF61BADBE1C86E111B50E7297459F0F18FA3D
+CE461031BAC0D1DA78AC387DE0EA454005598217978529D5089EACB059D99642
+5DF928E23215B6E5DAA35DAEC505AE112EB1F8E127898FBEE7C8A54EDD0C2ED8
+C75AE6DA5BDC0BB86086AB7E64DE8EF6A1495D81ED8DE1A59796769164CD417B
+46C45C9A3686C7A8FCCAD6F7BEBBCE514655FFFA6228A8312A5BC50538DC2CCD
+3E59DD99D6E4147DE8F3983B031C03D07125107E20604545A43BD7880D3423C3
+5E0261158F004423D18607C2BF0A39BCB65A685BCF2A391FBA8844C3ACC37067
+64B2803C5FDC03D43668E31489BA7004B06E7C4C874834586ECF7B00035DB428
+E4421E6A6651393FCA5057DD05AF837AC75AFA4106B354F3026710B5E101CE9D
+830602A5D6704780155DE76792D9A3F2EAEE4734B3E1E87C85801C50834DFBC1
+DB501193CFA6763795F2387BE9218F33072ACF3DDEB08946119F3C9B71AB2F1F
+D1FA74C1AABC8668A8770B120DC488F988F68F08FBF4DD6B44104673D927A39F
+27E00683A10FA6322F30244431EC032DE80300F6E55414BAF8BE15C308F95A89
+E3665655592F74B91FD7F71B7638CA14E0E1C273FAD0B9F84BE5FCF3533DEE1C
+9E8E5A654EC3ED9693A38BF2617C0367229D6FDA89B2288827B98A8917C65D11
+5F47124E457C20FAFABA69E18044169FEFEAF870ABEBBF08BCE5F3C7E1EF8970
+66B5B5AB84F3AC7EB3E55C9546DD38C096F7221AC728ABA58FE76FF090164587
+45C0C6C83A858307703AF33E31ECBD76350C9408454F90C04E9F106B659DD02D
+5824BAC124F4547215C3A1CC3D38CCB90765731744736903F24271B9D8D3BE66
+5790DEA93EBF0C8E5EC7F70721C00205BAF4C7BB4B6637F5C4CB0F2858A7E1F8
+93F56B29E08B5CB9185433A3CD281F9AC60576DD1BC993C08D61111347350861
+783244234AB06A2B5F94134721164E3F09296B2CC51D09C1CF55211160A43837
+3210EFC0B9892BFFC4BA6F4B37F9084382E4C8329C564DC321A88A4AEEE84812
+2863DF387D3FD8F5752305598E941412CFC362BD40C1B3F30B42BE007C52DEF6
+0570FAEB855BD314989DA4590AD1D4A89BE78DAF819D776F9ECA616B88FFB866
+7A0E1F09D20849ACAA5D08DF3C31ACCCB086F55B75310685D4E3ACAED8B1A467
+706F72366FE39727DEDC6DBA504D24D9736EAE848E97C61131FABF70740BA88D
+50125D6E12D3AF5644475779C0EF186EFC4A63FACA5D8A2A40BBC627FB743DF8
+6B2E912FE4499B9D5FB2A75DD37A900A01FAC066796BDBA13C9E32B86F5C272B
+4B0480D4FFF49C5097C7590BEEB0224C91ABBCCCFF307BDEFA90E08446BBCA0D
+3AE04D1B6B27D672617C8F9F88083E172CA368109A7C982B5B696F74FC9AA09F
+E1C83A6ADF5A458985D9521953259835D0AE78E1E5F46F4A22F4CC5766EC5220
+CD8E11FB08D53D5F37AEB5E88E48D20BF8CC58E870A59B125059639581432D34
+99943D762D20ABC4D1D3DB1E97744753DF3B3C975952D6FBF22C0A2BE79551EB
+3F63FB6F3F4D95BE06A9C776E7F1FDCE2318EBAF88D9F39CD438EFF576D905E6
+EB8984AFB3975CBF69A86E7D7585BC830EF5E23E069147106302D1EE530340F8
+347DB627B7A0BA0A446225E964EFE1727EF63CDF7D015C3874D92B642CA3A4C2
+BC20830B3475098718D29588F44504B7BBA9B3114A312EACFFE8087F1CAA7273
+7C85F63CB022B89433E2FD51F24F08F0026CC3718CFB2E80D116EE6F2F970918
+B40D5CD8FAFD1B3521C30FBA07E165F6EFF498A37E458C3C2748F8B76FB6DEC0
+E544DDE2A0EB0E8E13FE9F6BFE93419830E428C5D359470838FB7C28317488B4
+531ADE2C830507F77705AD6891DD9A9FB229D08EF1AD6320CBFD44AEDF48F270
+A5E44BC0FD3AAF090D3AC47AF8E60C24F39E1AA2187387CB1E2E95AFF46D6035
+AF7305F28FF3FF34232E62610F4A042BEA25E6DB4C13311FB2373405683C31EC
+AF28B816DC2DE3A755FA83BA05B76F3A9FFC64402CB2B1FD8DDE4503FB0FAA6C
+487A0E98B5FA21D2D0E0C08E95D4853C6B94FA64420B4156F604EC2904AF7517
+D37608E12E15E4A0694B6D156D042DCF390D2FBA766FEAC58202134C2D830D5B
+6C73AA9ACCEACC970166FFDBCDE630296CD3B2EA3E358F2B664CE2C483157344
+22E31B86E17E87BE0D226E3CAC1E28FCA18E0BDDAAA4911B4B0CFC1611DE0D36
+9476DA0B14A81808160D1AF72B3596CD9D52F422E49ADB32631337F434445CCE
+79AC26BEE9593567E6D3EF1C34F0EB319113EB747A222A9BF802502AB151E8D4
+F7D855C4722B69A5C273C55BEBE22C6EFDF368E7A8C96CF52633BFC5D8DFBFB8
+4D1869FCF68D5F12805505EF0AFD01C3363A2761E074C8F1B65CFCC31676E8CF
+49DAADA1DC8A4083EDAA612B511D11EBB48C8AA68B46C9BE82F02111BCE83751
+4B898EF55DEB2B08C623F6BE1116532AD67AEFE0AC912B6B6A0CD5DF0AE34305
+3E0A6399F9583688D9A6CC489D3A78C6E91E231AB397870A35772B4B3E2A21B6
+323D8D4C0EA2E90AF4F1733AE639682987390BA69229A5B1250C707D7968C24E
+FD0A41618549071E30C3B9D52726B19169E57944B1B308DCC548D33C37112BD7
+F40D3E924A44344EE55DABFDB38BD54527D69F0143F1531CAC341E2F6DD01E1C
+2ADF7600DA63A36382CF208CC0A66BAE48C602264F24E531A15167B91BB7AF0E
+1C26FFBD08B83BA63CB1AA44C10EFB8BA65C69B6E7D1F9E31E59FA199DE21D04
+214497337A255731A41A1007A9467588B8970A4DBA19A82B5AB3F1A625F41986
+F30D0FF266F1B01E6C7122CFE08644615006345390CDDC83DC092E21BCA8A10C
+FC90B8BD2840189AED7E8454F2892A27A5F1EDAF3DCFBBD0B6B70E0D9382005A
+453216284D819AE346D6625BBA0649CB036993C81BC8DE47DC0E7A842229D11E
+CFCF6B6529AFB2982269BD9749D705DA9C50EEED1E170DCEA5FD8911DFACF3EC
+B611B64A8E5F0E6C832442937EEC88C846E5D1FF75F727D46A06985171BB644F
+CC176EF60C923F702D7DB188BE640A0576235B348185B1FE7BD4ADCD3672D721
+27D2C69A59DBB5DAE9B8D0D4FF08307C836C96966BC34AB4B86291E5128293C1
+BCEE06A9753BD16B7A46BD446B44A0D13DC6430C035812F0F7DA4AFD0D28F149
+CA679E12FD6B84FADDA55BEE84925D5C31AB08AFC3CB7405AAF3401BAABAA91E
+DCF901F1C02D33C3067F2C70A7ACFC4C64D6028079AA8E034EF5A5827DA7BC27
+EFCCC8D9BC327FC1C7A28391DBC107055EB1E72AF7D7C5B2A0FF5FE8B87FC6EE
+E8719B150520D46D80A7D04129A78B5D4352885EC2F0F00571842ED025FBCA12
+CECDD3C8872BE5A946C227D13DE562E04B14B0E8662A86E99FD207F7CC7C03A9
+10E7D4BCF20403E31BA872D19D919A2E62878D85A722A7FDF6C9647077560503
+80E15736CC7A15C036E0E393D40EB0869E04875142A7A785270E445ED15A0D31
+79682041D4E06BD186ADA99B1114D20BC49EAAB01165403C71FE0753F1DAF1BB
+CCEEE569B7F35D05AD3A350914F18543F58B4217653FC1DC4E11B6B4F551F3C3
+EE7B4E155E96360ECCE1725A52E092247A7122D2CEB207C4515E161C6C7DF458
+4CDB8A7D169013D0B88DEA979C0FC29B0823BC382FE5A0A652ADC92C205B2BE1
+E56E7F8A6C2CA338DAB9207C4B34D6BFA688651F33A4AC17B9E4E233677ACC38
+819100D84A65658C0D534EFA1E4CD6711BF1FD9A3D8ECE96330E30D98D1DCDB6
+9ECB183FC19F36D5557E8CDE45A7DEA5F2DBB7B39FB12655900B54383E159B38
+BA15EE7BDE96EE0FCA3826ECED79205EF09EC5D22B45E9ADFD8BD63A930BD880
+A257596D32D565B22EA79873AFE995AE22D80CFBD17493103EC15203DD451D77
+9E5FF077766122DFA39C19A75F725249C5FD6F6172DAB38104C8D9EF17C59976
+2608766EEA72D15D016A14B61224D3B7E036BAD6DF9303C09D0303F938190A9D
+896E2C51DA6F4BAB7E4125FDD6BD7F9E8F53A7B2BF06767D34539156BAD603B8
+0FC62ABC3AE2E2F87FC4A2A02493840EF44EEEE69B4CDBAF94E5F47469A788B2
+7DD2B0F561FEE6AF0B9A3A32B4398EF8385B45D44B093E507054F87483CC7A65
+54DE0F2D372E93AD7767460E35450ADAA100B66A55774D603E80E977F2CBDAFF
+48D50247FCD4A9745C549BDEA2A3A484970AB11C148047C070A67766ADDAA645
+A0E69F0A798522A9DBC96C5A3DD2095ADE685AD822A19904F07BC9F124303FDD
+2AB94120A04B8451843E2E17D77AB45AA4CC5EB54D656D04EB50408019EB5823
+B09E7E03A1FC293CDCFFE0AE30AE4F10A674FA76B89F1C77E0F1D1BE8D7D6340
+7D2B3B34817F51067AA93013B2807465E774D3684CBE3461EA7077CB7D3098ED
+B90F319B4245D49EA0C0E941180CD5DD6E5C7EA09FCEA5BEABCBE65F172EB8CA
+FD3ECA8939644924DDFF6563CDE2104B71321DB5621BE2BB04A47C9AE0B4C089
+1CDEA1F22ACA1AC6D51E2BFDE746AC5AAAF50E6EA8AF1A8511F3174561C72D77
+3E31FD25760D29E06BFC439EFD31742A1CA3D80286BEE71D52541FDF1A4562DA
+086C6E8FCE2144148757F04199D70F1F5C815167086A7D2425ADF1B847669F22
+70D989E9FF76C9B8A78E83359924C0A0B71C0839D813FCF5AE63F122A4B29460
+354A69963C86F84B2C45271FD4A55D17EC3AAF29CC912F17BAA000B6AC6C1F8C
+16F49AD587D291B5FAE5CFA1C14248CF27C26D7041C10BB062153AB19C533A7D
+36DD9F4FAEC118D7F6BE81AC93E5DB9D518D363D2EC9CCA6680DE4CAA10E0853
+8AF5620B8126F7CED1C74902DBDD7C57FC66FFC8D9161D81B4D8ED83396CB0B6
+969124F5DEB10BB2CF08941FD99C12730F943A156ABD9474E00CF928EF98A85D
+4A54CB66168C6353F8AA45E91E303EA35F9A2F9ED1934F01044E8AFF92F6FC5E
+23234178CED72963406AB794EF3EF1CC77065B0C34B61ED9B8FB9E012B932B1E
+C571D76EDAAC5F5D1824D33F3B1870ACE8511C58380CB1EC520251FCE68CF0CA
+CA867B41EA77DC779335472A31CA940D5AF95226E6DB5CAD012718519743F5CC
+953F4C54096155E5208D976A95F949ECD1F60CED24153087E43B5C9852705C63
+48A34256DE0CB89A7D3D8672975F67115106B253ED23F3F047F58B28FFB51C95
+FA8DC5EE05936CE3FA9DA0FCB262B1352559BA47A777CF7FE5203ED95715BB7C
+CCAA97D93652BD828F28E0121EEE2636559DBEAC5C1232C9328E59D95F7860D4
+E41D8A0CBF0DACD52496D758AEBFBD49FC98786A65FFB437F8F771A68AC6ED14
+6ECBADA8180624157386803078C0ECB02BB7B932C39F6DC6E8AAC9332564795F
+5230E53F828495C18360B7B3EC221247BEB7442A5EDF74227BAE75A00C20FAF8
+573E01A5877EB85DE496E36AB3794AD3515D2AC9E13A955FE19B1F3DEC1E4455
+D5ADC17D98EC3C2A9EB4551DD05C6397F9B929DA17A93CDA0960657C6F86118F
+393755BFD5E968BE8D0C2ABA8CFABA4FF46921C939C3FBB3B32E00F768796DA9
+35B2042C3A83A5FC05ADBBC1A9867CC706272F852B26733ED874A8DE1548B87D
+9D603FD4CF61EB969433D53A0066F12EC6B931383A848AB71DF468E6A1C34FDF
+72321140796702414E04E0ABD984300B9F9D22F16E401892E6184A67B9434AD1
+23C83EDBE48F392B49251F6206E84CE8360F241D651A7F9B62B5DCB8F0DF22F0
+AD6ABD8F2B9E908367FEE467160E89680B9378F57D243DA04C1434FFED253524
+D0F308D1F311F33DCF829E3B5BA0F07C3EB16C2DB9CE9FAA111C0DC01AEEF1CD
+FC2A587D9A041DCEEAECB101F1D597CD36FBF647C015B062DE5858F96DC10F74
+1021A06EB06F283820B5C0E62DE4671F72985444AE2C17AC2232E6E49B9BA13E
+2DFAB0EB4B2B24EFF70A777E892F5B7B7C44153BA6C7AA19FC1315A857F1E564
+93990DDDC452691ACC8A681EB658AC0B7C823B7D3A8CB995B30CA3C44C352D0D
+C4E253B3B694EBB74568E08479B87FDFC05F239297733C494FF8C3BB84558666
+316BB7B1969B523A58AB2FF029F806A05B72F6CE07083F9555D982058E10DA3D
+ED21DA3E40F1E9CA9B6428984A7DFACBD366591AABB0DA6E17F401BF99E2829E
+C89A71F2AFAD41C3EF856A40473E9C463FD6896C5D2148029F4FAC4C14C92E13
+A8FA2A50EF4C33EE9E1BD5C61083DE92CB45F426BC5A58CEAE29E823A8652F19
+CF88A03CAF9D697FBDBD8CBA47402061EDC788BF7A89521C86128CE4B4CD0D13
+4C7B36766649B401B0D10B686F04711890C1AC5997F2B2D2E0F3D2C8D7DBB266
+BBC730A2502FFB7E922F57CF8F52B3583873440D139B22FAF276FEB94F75D912
+EF6CFAF3C580F26DB6FBEFCF66A1D4016608E387F69B424D841E4A2DFC840FF4
+6497E03BDEE98DB3D397146532B82B54549CDC76D79B8A1CF1B492207AA39B5C
+C68A13CBDC69BAFAB217AC5A76CF46F20E2903EBD232639EA413005776B1CDB6
+76EB3E52310A2D99A5CBCEC16209F5218D91DE873B767DF5A35819F00B3CDAD0
+548FBA1EA519D97B3D2A9F09330376D70E07C8FA0E38254EC50DD93473F86E99
+AC7021540D5CDF0AA97F7417B80E238C1AECC55286582FA4388218AB1FDFB4D2
+61B982926FD6CA5E1F3750C7DFCDD5715869092DBDE4DB0164E551567DC87E7B
+003A41EAF47463A0F677BBD3ADCF4709E08ACA108BD076CE993068A6431ED97A
+4181BEA89CCFD7BDBBFC892C0F4D15A75FE208DDFFFDB1544062658D9A587ED6
+E000F66A1F17080D187A6D8E6527B89E10551AF1F8FEA3AA87384AF4664BE52D
+13FCA2C0081613F0CD796CEEB06D03C2BCC2E42C8C1B4D7B23DA0DFA7C84997D
+5556977DF44F7224D82CA9DEFFA4A27569C6ACC8AD127D4A39AC6684040E6799
+1EFB7A0F795F7AB18C9702D352A5A9BA8D7FE7CA709DFAB6DB9155D2D1368A12
+90145D1809E05625C37C0D71E23D0561D47195232FAA5970265F588C82A6DA50
+26A66D7CA3ABABA6B937C469583B7B1237AE6DA66DBE7E91B4E80AC1FF8F6945
+4FF694AA6D9C3B25029FBDBE37453274D6BE1A7914C8EB57EFDA0C92559F3FEC
+72F8E3CE874AFD49FB15BA8E522D8CFDE1C69A840BF0D7E45784642F6680C1BA
+894BFD16D7DF40FBD111DB9DF3AACD08AA4EB01BE973C98F6F3AF457AE31C452
+0008841418CDBCC2C21339EE42E41ADB6C62ECDEA8BEF8A483402CD363454F66
+BBBE0C2DECDC90307A59EF912EC8E4CA6C14993FD67D33954F623BEDDBBFED3F
+09C23C55596B72BD878BF68B557A25A25AFEE1A3C605DE39DCA0D586A081E263
+4FE2F07228ACC92DE650259A2DE812D1FA36527BECF5DE7AE586123DFFB29942
+0E931039D95774E0E961732ACCF261193350DC60116E8C469BC5482B51E717B0
+730A03A27EC79ECDD9306DEA21534D2804C745F45CE4B113F20D1CBF8458684A
+3462795E7901BCFAD90E2812654EA2966C9064FA05DC20151EB8971CDB9291FE
+CB6F8A18F05E30EB7BBCC169205D5FF17DC78FF18324EF97E647F64D73F0263A
+69C2D2D49119E36D310749ACCEC23F2F435B967598FB71D4AE7465AE82F9C4BB
+F5C980CBB9C08C9E867073726625B84569ACF09E2D4B7A62E3C824631BEFE27D
+54C2D8E5B8511F987E96279EC67672ADAC8A55FD95346A89A5E98273E6805C84
+94BAB7BFD758AB05D898EB55947C52B6888D6B16FF3C4F4EBAB8D03BFF4773CE
+85A1C9C1FFEA6736CD22E099515496C142D4841450C6493C39308469BB4CD63F
+CADD4660AF12E09176818321D89D6250962D0ADD925E6360A12E4459F8A35FAE
+4B2E60ACA34F95BC7D9F51EAEF17E005D85ACA444093DF4CB08976421B9D41C9
+0DD437FEF4E85C68CEEE5C0DBEB7BE7750075ADADD6F53A7D44C3E4457AAE62E
+C917BD7DFC8E76A0520AC474570DDA5D3B816720DC627DFEE065BF1007129438
+875D9ABD264033847491D43C9A9711714AD90BC5FF3CB9D32D14C143991C090D
+0E8430AD22ED7992451FDA1E5179FE72472FEB568C83138A47F0277C81857F8D
+F44A93B07ABC2E874AF2E8ECECBDB9FE26164CE6A7A5DE4DF18648447751EA97
+AE6F927FE9090BD42FB13C65ADA216AB7D33C6BCC127F42503E6E90C17653751
+79D3FD5583E815AE0440DE02F41042D91FBAF80F7289E7E4F4959EE4E7C6222B
+6D23CD8C79736E8325A50A4C9FE3A35CEE9BAF5F51C02932F8FEC830B38F0240
+B502334C036F4E1BA4367161E7AB3D4E36F4A2BC9C8B5D37F4527AB9BBBDB585
+F8A078
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -1837,70 +2871,239 @@ C4D4C5ACE2590766FBF42B79ABAEE8AA572820C4
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
+{restore}if
%%EndFont
%%BeginFont: CMSS10
-%!PS-AdobeFont-1.1: CMSS10 1.0
-%%CreationDate: 1991 Aug 20 17:33:34
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+%!PS-AdobeFont-1.0: CMSS10 003.002
+%%Title: CMSS10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMSS10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMSS10 known{/CMSS10 findfont dup/UniqueID known{dup
+/UniqueID get 5000803 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMSS10 def
+/FontBBox {-61 -250 999 759 }readonly def
+/UniqueID 5000803 def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMSS10.) readonly def
/FullName (CMSS10) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle 0 def
/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
end readonly def
-/FontName /CMSS10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 40 /parenleft put
dup 41 /parenright put
readonly def
-/FontBBox{-61 -250 999 759}readonly def
currentdict end
currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
-016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
-9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
-D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
-469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
-2BDBF16FBC7512FAA308A093FE5CF7158F1163BDCEEA888D07B439DBD4E8B4C9
-D198C03874B5E6F8FBF4922065A92BC3E66D05DE53971CB1424510E892442858
-D69CE1F76E4DA76C87C763A4B2FE36321E54B1328C9155B8ED6361855A151723
-3386AEA3D042B8D89C8C0E9A33E5DF3B466F7BB8C2C8A4ED4CDAFF55FC6D3EE6
-0AF2CEBFC1AC3A6E6692F8BB81F82D86BAE85016AD62FCB05467082C2E5AD348
-44D1439C2B59F65590E57CA0DE481A7A34E79931B1513C4C30156170409A4BB8
-46D412D1DAF88AD30722F12DBCA1CCC6B4BCC28D06B0D29149DDEC520C8FBA13
-6B82E2E1790F00B216282FF122EF0D47B70A1B29514DDF7C0435ED238C14BDF5
-6DA243117FBEF7398F97EB95597707ED63C6797EBA1B46EA19ABB1DABDA171B3
-16CD500F5D64CBFBE4F9CBC3E66A34427D3C4D0C432710289381F9BFD91B4FF4
-1E3A896C3EEA2F3105C218877D6C0C6B763760FA364D00065E1CAE9DCB5676ED
-286A9ED0D1C946DCA6A2A670EE0936FB4706CC62E234CFEED34AA615C48D2872
-A087F30990C85E64BA68F3D5C117123467DB411C9F2D6F6858CC70C1E352C477
-713097321B4C4FD4C5CDE305415F998E7245908EEDE6E056A736EA77BD8C639C
-3A79FFD0B74B3D28F0494A115F2841CF8A8827AB5608F96FD8998A5F40FB3DFE
-3AA0C7696DE4E1D18DC0D6E84B943175FC38FFC42A9C0CBB13A908978C98BFE5
-034F88480F32B9DEB2FD228FF6CB0B89B045AB02020C82E3F5716DC640613185
-9F597CE262729BC52132F43922B9E28BB71A30AC8709634561B22D13C4FAFE0A
-12C4451969226B220038AD8DDA990A4E2CAD53DBEAB698898BBD3046234EB4EA
-901287E71CB41296C431383AB85F18882F65BE36923F6C0FD6FADAC5B42FDB68
-64C06E047434FA7A659EF7F3D1AA8E547939FBF9C2ED7AC829F03CA59AFFBFA5
-A7AD2E0FC7BBE619961AE1785D09444B333993199FFED007382B54DDAEBE21E0
-1E75E0AB6D309DBE53BC7BB9F95D342F51798574D70B95021FA40163A86BE6C9
-342536A5730837C522D5314B1289D9B7E4EDD108BE7F35A20AB2A16608F6F007
-6DDD702A5A9BA1325CE2C1CD020DF677872135CF04F4E4F1E9AA6B494E2BC22F
-107C331A7E80718B030A1103804D144802E3B03EF7CB083BCCDEAC7B43F1B4F5
-C1BF6016741B741CF7E12B4BF95221A72CC9F4657264771AA69C73DA1DA29102
-65D01A0E61F3024E672AFCCBE13CD0B7F54AE1418B72E357A0BABB4D03073B1D
-F4EB54F899AD4A41A9F94DC200880A0DB99D67235A2451B25F710C29A882865B
-A922E56E9FC16756014FA5CBDB1C32750BD6835A70EB715CEA19A8872041905E
-8C660BACDCA26C8247D6B3C10FA5DC240E433E479AC6AFCF57CF96697FF46BE6
-44748E
+D9D66F633B846AB284BCF8B0411B772DE5CD06DFE1BE899059C588357426D7A0
+7B684C079A47D271426064AD18CB9750D8A986D1D67C1B2AEEF8CE785CC19C81
+DE96489F740045C5E342F02DA1C9F9F3C167651E646F1A67CF379789E311EF91
+511D0F605B045B279357D6FC8537C233E7AEE6A4FDBE73E75A39EB206D20A6F6
+1021961B748D419EBEEB028B592124E174CA595C108E12725B9875544955CFFD
+028B698EF742BC8C19F979E35B8E99CADDDDC89CC6C59733F2A24BC3AF36AD86
+1319147A4A219ECB92D0D9F6228B51A97C295470093CA270C4488BB4EB864B48
+63941B9739638D2E6F3CC778582B46AEB4E466D89D1C211225274356A4BC90F3
+274C6AA56E200249B7D0949A3FD4185DCB3E5286910EFD7CA72D5D8E8052C96F
+388D12094B87D3705CE64459558CF024667C0FE96CBB32B0BC9E51037D7BD62B
+E4B05FF99384E71D78441A79B0B1DBA1CAE02434A9FAE46596FB86B873B1670D
+AE0BAF516445A0DDC127F8FF3ADA0B10EC30A9CC1F7E9248828B5E8AB46C3FE4
+154B80A54128A08777F5F9B8C519C7E3B632B3476F007FA156E9F39FBE57638B
+4214CD2BA79BA9DDA0F4C073AED814ABCCC2F7906C57A872C00E67FF03AC1200
+29DAB92376422FA21C67CA98BCEB8C431CA2D3EDDC16972F84BF6DB2F705BAB5
+CAB39C82D139FB1304B9E7BF1F6FF447596081D5690B1519E468D6BE49C329C5
+C9C809023EDEB9DCE4A6D52A8049E0CC134E8B41BFC6558CFCAD3D9D2773EA16
+131567AE6231B3235869767A1E7C1FA6C8D6FC1B276CBB1CAD14D376188C9682
+302836A9290E587D4225EB8BB1DBA2C4580A81FACFDA197174FE948CE757C575
+F23070FD84DE121955D7D9307BF986C5E739FFFB6CB76822C341FBD9FC2E3378
+AC9332B40C07D5B8745D74E30F1D719EAFAEDBF5FBC40D0546F69A66072D8A49
+28D2CC2E76B9B1EFD191E0BC7510C2C8761BD92EFCFDAC263342A01398A56D18
+121A591FF5CD4AD8B25699A7897E60BA940336BC17B9EC9F97C2464D031F958A
+A3548D0C97C50C580B6EEFD0FE8330EE2BB0D2E7FD1DAE33448953544A4B1C5D
+8EB57798D0ED4B22909FEA78ECDBC4D8A124DA05B9999242D68681017285A0C7
+69041C1F79442279FBE328733EA0A6694D68BA89739FDB9297BE0CF1808C07F7
+BBF6F1538DFE084EC8C0EC24D883F6CC08A51DFEA23EE920F44BA55FFF58E960
+C7BEE551FCD2D5814DE7E3F835608073C2CB80EC57100CFD484C837881674E92
+B217F4D11165427DACCC29C129005874C05CDE5FBB2D912368EA2B98C45AEDD8
+8A0D2493F60EF36809C8C6EBBC7856F6656E8D398BCB29DAACD4F7D4300A0B01
+161CEF51195D2C58DDFBCAFC1C03F49304ADF02789889826F1E20BCC14827565
+F2A45CA57DCC61B52E33638A0C6C5A59B145E82B82571DF1806EC40FC0E8634E
+A34A791B1325571E19F3AC2EF6FE68A14B0ABEF7EBE0EDA3942E85E5AE967A14
+0C5AEBFF2A36DCA8866700CB7082D2ABE470864C44AEE1F6D180D511304C8674
+D02FAB12A7079ABF96E1CA3CDF9D75532123E87663B1D524265AEF63EB5C2169
+B67A651A101E1C7EDB008D3DB06DB1FC1A81B41B291D6C4A58FB57989FFCA434
+DA84B3914D1D80B17AA3A55A70BBC06C49DD5F7DDD03FEB0055088558FA192A5
+261477899857CF598DB740E82D035E84CF17B33048CFED2DCBEBC2B75CCAEBEA
+B6C5AA1C6978FBB36ED98D9047028360ED430A0AA69AC85A8F83825EA649E1B2
+64B260197B06A24A1DD969CEEEE136FB046D713D0630B246BD41CA285F076038
+F7F8431913BB9A3E70311844D4C22AA446E3CA217A9DFD75A898997130269B29
+AD4AB7D9662856E677FB2DAED7078639CF31C6E6637C74DE2B5D0ACB88BD61F3
+CE3C5D56D3D4B3EC1ACB33EACBE05E53A133EBFE93CE6A0CBC8F24BDC5B31BBF
+5B3E55D6B40B1CED389076014667E28BBBD60145A06BDECEE8011A2C6F06D091
+73767A8045CEF2A110B614149FEE783A2351FB2938A9F73CA406538EAD82ACC5
+A3DFD3DE00221E1B4EA977AF8C89661357FF7D2F1FCEAD6CFC9D6AD81F95100D
+EA1F328249AD84AE849220E6593D45015B4D7C9527F3063E9F6DB6E572092A1F
+1F460696227D5F0FA5A5484B1F0D8B4A35066451663BE448D924DBBFD388B6D6
+D7CFC87C9E75B7CF79A4C9207E29E0BAAAD7FDF529B860F7731EA978E335334C
+13CB2F0A4250F5957B44CAA0674AE8356F586A24FD137103973B9A1FC31090C7
+C84DC5D380404BCDF3FE20C6F74FFDD8BD1DE845E99DC6FE09931F003834ECC8
+08C5D962070B6C44F901A787CCEF048A2C584A2285506B4D4E82B1BF130E2220
+B6C8B3240A4CBBCE16AD3676B23A50B75F82CD88D1B8F21D30A12716426112B3
+23DFDE5A348DC9DCCCE5BB5DB5433A5AC125DE1229FFAAE0D8319B2929986EEA
+56A93BA1FBDBE617F30852A3DC8C712DF674169C6D656F75E252187A085B2788
+2467CC4DB08D48EE6A98C61BC55E6EFB1938FAA718802B7587B94C8F1477E9BB
+DCF6E02B5E67FE3AD9D87C321CD9BC0CCD36B9C4BC601E6BD552EAB8E1C940CE
+3A22F3C2501C3C939CB4F17CE97566F0A04602D2A22A05CECDF4A49CAFD6332D
+5870E1F31AAA5F86867F71610CDB83E473B9D20BA00D8986D7148E0EED03865D
+9622864B52B09D12E0C5FCDD023D29D5AB1CACFA92B6FC14FC84E95F407861D5
+2BEE3301AF399FD7ED04DFDE6679A345A282E7FC08D47E3FC8969D3B00ACD7B7
+F8769647D6D4F4106340EF739583374D023C2702C48FAC1B643B5897D2D7DBCB
+73257712A0FDEEEB98A021D218CDDEBBA34687E23C4828D7F96D1ADDFAED7EA5
+B279322E6D55FB486AD8F3A8E7B2C67915564FE56F0C9277A06B29C47FB7D007
+11AFDDB3FC1B173B4E449CC6B198041CCA0624D81B4840FE5B63BE72157AC6E7
+03E5E95D2E2CE2E40BCE8044A8F2AA45F855484A891B9F0F8F70188AC66A8DEE
+F4D656CBE216E6D9AC33BA8DD0685D480833E1226784469A221D9FA3CA600AC7
+5574B5226649A9C48CCB43339942FC9010F86BAA2D181AEB487A92A96BF2EDF1
+60F3B93FDFF4137A25A8AEC5ADF8613019CDB103DC4367EF3D8AEB4FED0E6BF7
+622AE0CD3CAA0321D26CA4280CFB60D08D9560AB8AA5698231171B881BE9A27F
+BDCF3162134126212C523738D221AA05E31CEE73D9D40F73C450B6AE2C1E70D5
+C37162BDF55943069923A290A6C720042566E55A21CD81C460818883AB016C16
+8FCCD1255A66977DC1C110261D7642199D466DD3D2493A2D47694F842241C474
+1752B00DA03E69CD16A8A14BEB8A431A315D19A39BA978E46EB1189089FEF647
+F9DBB58AAE6B3FBD475E4DCAD241A051DD100ABE81D40ADF18A4C50F53BF749F
+D6F7C8E02A5665B4AD18DDAE79096DD447F8BD32C68F9F97F05E0071D9E9AFEE
+257B96D48ABD9920418E17C8F027E9E975E4A08DFB1988E7104CBBC1CAF356EA
+7750AA7110BE116AF1BA69A94776E4356573B38472A8A1292C63701543B0F315
+611A0E0595B30424A1137478BA6F990AC7C3AB4DB69E75C222B617F373C521D4
+246E954E9857AF59D1E6C36412B643733CF5E1C90389EF0E5E0DA55D3AD12E97
+E7630C315F72A03CAF22E0ACE3AAAFC1D496CF4E5ABC49C2DD5E264BE7EB2698
+AFF36089B5DD2C53DB1C1FCFBE1E89D41A95DDD278CEB29DC85FD1DB8B83CAB1
+EB37C531E9BB8466ED6B8B60258D3C355626CDA43A32834DC89DFB11E5FC6D68
+0F78CFA871113DB81A1690250A6F842ADA15734CB6DF7C6ACED6D8D586BC4E1A
+94EF3052FB0F8B9454390B882CBB6E135AF1F9C777AC362C2A758C3A98117120
+73C6E2FAFB580716D4B2889A4331CC658AAE996245685B973D9C184541385680
+AEC2956107DAB00230FB39BE98D3CA898D917E5F2088F26CBA4F8B5B115B6443
+8753331233B10852702FC26D9DD4C990C13CE4D0DCEA23D62A826A4B4FD16070
+5F3638C0A50A3373A33FCAA6F3644975AFD0560EE5F2D1CDF08820373468E4FE
+6679A229D6955CFDF7ACAA92A87E6D8571AD18CF59F84F88A674B2946FF20A28
+B9798EAA22442415EB46B9498DDC0F4BA6ADD347AB43E9293CAABEAE80127378
+129D5DC69F6DFFBDAFA5D65580239E8EDF6833D0DE6DF75F0FD090A83CE0974B
+AC947BABBD1B1C7194DDAEA37B0CAB477ABF9433FCE0243C8D308409427D1DCB
+8EE4FC36C7E5CEE104904B520B3F6E677A5B92F694BDBC2C799991667E0EC14C
+B95EAE7DE1854BF4542F05B4AF401CF67FC3E46EA5A0DC362F3CF177B1796DA6
+753AA803E724D1721DDD1BCB0C12CE0859E172D2A370C3697286F80D9E138AFD
+A0EE016805F847BD30D11D8B891E54C77AB51A7CABF76BB14B06153C7F811FE4
+93FC4B7CF161051A458EDF767DF94F487DB939A2740B4242BFEE234F75084DDE
+207E84533004B933D43C712F0C71DA4A00FFD6D721EBC93AFDC4200E3B8DE433
+3ED3E1DB799BAA27548ADC853AFF5D9D6BD92D644E3CF394789C99D9DC054A26
+7770AF5DC5BD6563929AE11BE341F036584DD573D3F43D9D975201EF77BEEF80
+D1EEDD1D4AD5D4D4DAF6D5B9D4C1736CB111D6FC74C236779C0ADA430323A825
+09EA8D0CB1772220AF28B93098BDB36913159208D1B2D7ED45808BF7B686419C
+5C0E3DAB5BC9830FDF3B494D624EE8068BF6F5212BD69EF466B9A213047BD105
+B848F056DC544A8CE66C546B1A4DCB4BA29CF0EB4DCD9C2452F22172AFF33B29
+E97E12D8F0D312B03BD9E5377BF0C81D884F1E79DB66E8144F106DFD2579AD26
+C693C5B68F3AC46BF0D6281032D4D4BAEB2243151AB1AC0BDA2ACDDD4D590C90
+F29B335DF8F57DC593DCC081FB56924028E3161AC4865B49D1B0F63F5EE866D9
+7A71171C09B09A44B0E32F03494D9EA63F3C89F5E772BE25A6557F119299E989
+99BA041694ED805AA4F3BBDF00D88171C9D43A9085A287A36A1F0F9386F2A98A
+96815CA51F06E1CDF20B757983C5FDF4003F5438232159F325C6335B734FD982
+1423BA77D0EFD044381AFBD0704E3DE95D23A70E2428E9AA355A9A8A25C6C74B
+48488C14DEC93A766E112D74C83576ED355F17A809E8D3F9C65C4E3E14EF484F
+4658DFB57597E2A4461D8044E95844391C1275D63F282B37888C842A5151937A
+45007547263D70195ACC018A373D498B88C5A028BC66ED96A343EEE74D61EEB3
+D9472B6A549CEB8699F4B35154A0E2ED22867E4F9E4A76311EB2C9F9078FBA81
+838EA49C2966BA64C165434DA3093206B70186BE80600B891D9979F730FDC794
+5DD6D8B2090CC67A634B719F441092A10C447A86ADB78DAE45823ECED5FCEADA
+ECA52E363D913D9EFC0ED98A5A1F823DDA3350EE27F09C14E4C7298CC0FB6200
+DEBC640C68C82D70AFB7A7BA668F1D7948686206884736CD03D9F6E6CF9702BF
+E3C932CEF3CE07FBBFCEC0476EA6E8D5D4C5C6450C8FB236B89BB82D51886240
+5BA7462F50A88F69228DCBDF26B7250E90B3DF8E94ACA1CADD9EFB5C73EF9DD5
+46052314D445CC92512BA231F79A09A2F0D91976B160B8C9BA055DA4AAC1300D
+491193EC66A6DE12BE01EEEDBC3A2291DA1F27AB76596A236B75E19FC5F1FB6A
+DA1AD835CA08B6CD03B97B4CA1BFCBDD2500BB09F1A1B0438E4A759370EFA318
+F062BA9F3D352572CE232E6FBADDAA5363807D0DC5320B807FE5485C8CB09B6B
+0BED9F5B1300FF370252DEBAC9DB25CE2EC494E8EEA45FC6604B3C104E81B287
+EDD49F3D7430EC9176A16B4FCEC5DF68DCC11ADF90BD5337E2E4B59BEFAC8298
+E5ED2C7FC5928635420FB1955251932713236DCE28012C86F63D12AF1DB634D0
+0B8CB8992B8723548177BD6822A808FF221A9E38B0DCCBC1F3430A9BAEDA89CD
+ACEBBDD8CCA5E17F1CC37E35A01E058BAAAB6BE7124314DA19962BADB74EE73D
+8FB13FF6AFB6FFF97926CA045B62B98BAA753AB0FC78B881D3FAFF9EE2FE918C
+8EDBEF87637F1530E3E13AC090FF81F4136E08D5F3734327E643CDF621278741
+A17AEBC56E21217888A6C8B5ED4269731910E7E25693CFBDD4EB4A32698F2447
+4C45D73E810B627D8719E4E34D8FF378F9B68BFB149AC67B3B1E55F20D097FC1
+AF74D46F5A3923C63DFEBFCA210F6B257F5FF3F2AC34CE41C15C9977634E473C
+2235295C05C3DF6B3009C7854BF11CC87471CBE085793AF9C5D05C5479B9E780
+14A5A6F3F6DDE5A18243DA15732CCF26ADE40C566DBC3C62B71D46DE87A12C6A
+647CAC923254E2E74AF882DBD5C9E108A9160393C5CD12566AF7C824EFEAC56E
+6F05B92C73A76824C5ED1735BCBAC61B98D509250C854CF1500C212F574D18D6
+4426B8510FE9785B814A70E75C9234D42483E736D0689D3561E8EE5650F33A36
+D50127589401D267BA6442E8616E2CDB1F6691D3FC4A2A377E5E154972E890DD
+60CB463E9EA9A6EA61087DF452FA5646F69BE879337EAA0F5DA4438FF0365627
+4E3B16851C2F08E976FDA27AF451CCEFED00376FC3D6E0C160F0BC19544DE289
+BECEEF9A067FD71D54DA3A4F73F06E2F522BA07551296214DDA47B1BBB1212E0
+1100ACB5F65FD30C655A3402C83058F8ECFE48FA60B6A3DC86C4996414130194
+6676EC7F37454023AB53E9D9EE60249ABF6953E76DCE3123DD268BBD492412BE
+65D7C3E5A5E483C381182A8F19B506F0AF6DCD55532B89852D1D96021B22E9DF
+D9D072BD7DD4450577E658B433A84F92752B260AFA2EC4A118747CBFE36AB7D7
+6D5DD96A119AA1BDD0FDCBC3AFDAE5FF72713EB46759A06CD09B5CFABCDAB0E9
+85599506AC07AA525978AB157496163AAB387F079EC9FA1F9E91B9C2FBCDC9EC
+7027D77016760539AC03F1C1DB242D28D6EE946C42DD2262D82ED48C3A839853
+BA977046F0EF373AFF884AC3112D2FB319421C3165DFA5710BFB9AB9595A10F4
+9D05704B9E22137CF27F4B2DA9CEF6D8801D5F792969B2E58FB539B8038DF440
+6DE20C0313A7BCD16F279290AD6859B0E657CC3041C7928CAE35B9D3A681F2A3
+2D40F8EDAF1127E754276556C95E1282514B6EB6E43FF4F0FAFF28C715E3F39A
+374415B62C1F5F8E31E006D6ABC736057910A3729AC60360CEE1B2C8D9F77336
+39CAC45329A372205FD551B9E9EA5082411207473D9D90E76136AA70180172E6
+AF6EF3EF6B38B1906B904BE9BD5251EF067738840C28877659B649C6C4CA328F
+1BEF8A9CEC2CB062702F58CC0B8D2D097FBC278F9FD894E10ACE1DEC4530CBF8
+E4E467B6DB9C596DF0C3D43E6AD70F30B733EEE692C2EBD68756D0C16E1F00B6
+AD011B5DA073A769B53C2DA2E7C9B7ADC6F551BF4DF4C39C66443692C3DC62CD
+B1E094013F364D04BE2FBFCD1C7B2836180E9022E0434421FFA4317A50096684
+CF0B8740EF680F27F4A84AAF2AA92C64883BAF57BDC60C6467A8D4E09E6316FF
+9BE73053045E5F3586DA3BD1298DC15D751913FB1E72EF80047F6B33591B97D3
+DFAD34EB224D64EF60F5B4ACC6EB42E1BE0CB2812FF2F3C264AD2E44F5EBA441
+670CA0A60E73176ACDC4E42E74F8F489C73481EB5D46A61FDA1C0FF9F8844DBD
+99CECAFE2A72833E4522981FA13713AAFAF8F121E60FAA6F379B2C8874CFF23B
+8FECE70654E5855E525A403700A96CF7F8111BF2B58386E29640D82F1DD86900
+E0E203F3ED554209CBDA2A61A5641D4B39D98C5C43D4575648D06BB82B6C4D4A
+F043EC61B17C208CE8B4F43A7BCBBE588A3D13A183D79A47404223037FCFA4F1
+DD237344E589F161BB9BBF3FAD2E28749350DB9A74C09E894BBCA85B82E704E2
+99788B24642A7D0F0FD96601CF1AE4819EBECAB89824A0DC1C03BA4B546ED36E
+DABC8D49CFAA53D2A9A5DD6B3431E364C99ED0323513476CDCEE49BC413E50BF
+51EB93563DC03B62F84C5F96ED713F288D109C79179AEC41424822772032035A
+40E84014F5BF40948F05E8562C9CA9DDD71F89021BE238E74781A92D64E5F9E5
+AD6C0D954C6686C714BF189E78EE47F1530CDB8376E52631A1A26E3021FAB977
+DBF01167266AD68A779C0180E034A90CB77B86747395BE885E484BE4028B4093
+8BE191D58D0BF85308C72E6384292A2E1CD06130A091F8AF9DC6C3E12B1E4BA2
+BB2C37AB4AAFC0CCC7964C06B9EC1C7E3BDCB6BA265288D9C8625EBA35BD2A49
+BC50472D7AE262237FF1EA8D9DEA3C0DBCF7C3B2DF5AFB1F31E46B48E096517A
+0CEDD60F43DDB684BC6E4C3F6F3D70BD58AAB5052936EC4ED7140EDE795223D0
+4E3B95161D16B0402EB45FE97ADAFA0433FCAF55E22BD7E4AD2030D9DC86F55A
+8D7EA00901EB1351EE8A0F1BFE75CE46DA4165D78043F8F0741D4D9DE0CCA00E
+5F7D89A849AD0F0CEBBCB948613028CFC39617FE9184753372C375A9896F5F1C
+7E24255FD49D2109CFF9ADD9A118CA47CF58975A9CD3A960A8A08A078B98A50E
+4DE619C8B2D3E15938C879D785539445AC468AABD6A6576AF0E8ED368A9350EC
+717B7D3BB55AF58941B47FF639CA2946028CDDFDB84FF0060D330DCDEDF13BE1
+FB1F743317C15C7A9F34408F5FF7CD9745217D9B809DACDDF7DAF9D821C06B37
+25738F0D20F4A86A079EDF71583A9640173B3EC529B98899601F0EBDFE45BEF0
+
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -1910,25 +3113,41 @@ A922E56E9FC16756014FA5CBDB1C32750BD6835A70EB715CEA19A8872041905E
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
+{restore}if
%%EndFont
%%BeginFont: CMTT10
-%!PS-AdobeFont-1.1: CMTT10 1.00B
-%%CreationDate: 1992 Apr 26 10:42:42
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+%!PS-AdobeFont-1.0: CMTT10 003.002
+%%Title: CMTT10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMTT10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMTT10 known{/CMTT10 findfont dup/UniqueID known{dup
+/UniqueID get 5000832 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.00B) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMTT10 def
+/FontBBox {-4 -233 537 696 }readonly def
+/UniqueID 5000832 def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMTT10.) readonly def
/FullName (CMTT10) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle 0 def
/isFixedPitch true def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
end readonly def
-/FontName /CMTT10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 33 /exclam put
@@ -1949,6 +3168,7 @@ dup 47 /slash put
dup 48 /zero put
dup 49 /one put
dup 50 /two put
+dup 51 /three put
dup 52 /four put
dup 53 /five put
dup 55 /seven put
@@ -1988,6 +3208,7 @@ dup 90 /Z put
dup 91 /bracketleft put
dup 92 /backslash put
dup 93 /bracketright put
+dup 94 /asciicircum put
dup 95 /underscore put
dup 96 /quoteleft put
dup 97 /a put
@@ -2021,460 +3242,654 @@ dup 124 /bar put
dup 125 /braceright put
dup 126 /asciitilde put
readonly def
-/FontBBox{-4 -235 731 800}readonly def
currentdict end
currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
-016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
-9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
-D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
-469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
-2BDBF16FBC7512FAA308A093FE5F00F963068B8232429ED8B7CF6A3D879A2D19
-38DD5C4467F9DD8C5D1A2000B3A6BF2F25629BAEC199AE8BD4BA6ED9BBF7DABF
-D0E153BAB1C17900D4FCE209622ACD19E7C74C2807D0397357ED07AB460D5204
-EB3A45B7AC4D106B7303AD8348853032A745F417943F9B4FED652B835AA49727
-A8B4117AFF1D4BCE831EB510B6851796D0BE6982B76620CB3CE0C22CACDD4593
-F244C14EEC0E5A7C4AC42392F81C01BC4257FE12AF33F4BFEA9108FF11CF9714
-4DD6EC70A2C4C1E4F328A1EB25E43525FB1E16C07E28CC359DF61F426B7D41EA
-6A0C84DD63275395A503AAE908E1C82D389FD12A21E86999799E7F24A994472E
-A10EAE77096709BE0D11AAD24A30D96E15A51D720AFB3B10D2E0AC8DC1A1204B
-E8725E00D7E3A96F9978BC19377034D93D080C4391E579C34FF9FC2379CB119F
-1E5BBEA91AE20F343C6420BE1E2BD0636B04FCCC0BEE0DC2D56D66F06DB22438
-452822CBEAF03EE9EAA8398F276EC0D92A7FB978C17805DB2F4A7DFBA56FD6AF
-8670EB364F01DE8FCAFBAF657D68C3A03112915736CEABAA8BA5C0AC25288369
-5D49BD891FABEFE8699A0AE3ED85B48ACB22229E15623399C93DE7D935734ADA
-DA7A1462C111D44AD53EA35B57E5D0B5FC0B481820E43222DB8EFCD5D30E15F9
-BA304FA879392EE0BCC0E1A61E74B3A1FC3A3D170218D7244580C7AA0DC65D19
-741FA5FE6F8CBF60250ACC27454BBF0897CA4B909C83A56672958752ED4B5E79
-E18660764F155E86F09EFA9F7685F2F5027EC85A775287B30E2069DE4E4D5712
-E7D033481A53A2702BA7542C71062173039030CF28D8B9C63B5596A9B42B33E7
-D922944A38713383D3648A4AF160A3B0C8F3379BA4372BE2E7EA49AABA75AEEE
-C5DDE1D8BF68483C3D21271280ABB91D54CC819680322EAB72E1250A760BC8DA
-726405EFE420635B5B7F0B48752C06083E92BDE06401C42A2C528C8A60381227
-CEBEF0C9440DC034DAD9C19FB27A350233112B0A339366B7373CE058456E0E1F
-139936F6CC9B50441C2F5994977426AD7DC8C717E737F8C201EA55AD94908336
-FFE9568C0E6EF3202D8CD7B7A6CC203EC601F9A7E2A4395ABA3406503DECAC56
-B03219CEBD0E465EA0F635F26D984F5942E4FB186AB874F3E74CC2F2E378BD83
-57CD1B63C9DE9963587B7457D56024D95645ADE0D95DEA748A6ECC6809C2A7E8
-6A568F83BFB184B31349A771DD72ED3FFE8D16E3138EC49EC6D7524E611331C6
-DB2E16059C9A12512C7208E3B30F04273E20BAF41EF8C96BA4B17F31572BDD15
-3FB7D15CE31684D721083208D7698A31D07160927C9A7CF8B7EBE81A83C0BD46
-9CA06245FDA37F0F2DF7948A20D121660A73E079F4ABDD8F90367BDBBA323957
-062438FF3B28A3880380CDC76A055096D30FABA4AECAF238ABC2513F089A6C4D
-67EA0050A34F5DBE5FE32D9E75E67F4C87AD8115DBFC00124DB4D3F4CB62CA02
-59BFE46E90DE9ED306D6CDC51005C233BD39F41B264E2892AD23E8F93C8C61A0
-B5C5CC1021411DAB515039DCAC06E1FAEFA259E6AB07135CBB345E90E2BD64AE
-37B9A46934BEB383D3AB1787A2656FCCEA6467ECC2582807E7DED181C53829A7
-1818C3FB17567D81D1A833E0559798D06163781D7895C31B1D81CC439AD51CA0
-5E33E96253064B684F3261EF86AA8452B32E9C5907153BBD692BF8BD4AC45E3D
-7161488C716CEFAA695877B03781F64840D49C9C1BCE9D5E759BF1812712F2EE
-054A34F2153AD6C953E795B6F40AFAB115C5FCDD1864A85C1AEF5DAF40337068
-08730BA7AC580213881F8AF1F76FC830EC76BE4CE6E090A1F91618595AB6D1FB
-A885D04A4E73C9C7A923D813275810DD2B2A3AB4FAE4BDA24FC170A4BCF46E05
-572529A19B09E5ADEAADD071EAC20C5DA884C7D414F5AC5206E87E53989B7378
-BADCEEC6FCDD4B4EA03EA994FDF6A80A2E232B1A007B7554471FC1DA24901896
-9CA84283A02FA1D9176026BC1529147F19D07521A4997B70258FFC03821EED0C
-D44BC9C2E67C3CD9971954C58BF1775D61115B75E26AFCC3B7CE6E5ECB8CCDFB
-640DE440334737D63F539385F83BBF603B631AB2F750DBAE707F5D008591A05E
-9D532C165FA35B580D690138463047F77F10FD4FDC8F724367545C0F5B6AF978
-B6AFA49624EC2AEBCB2D19E9652CC74B66289E42A8FC4A694F13626C3CA05926
-C1369F80FF1114F0EB03CFA40C37B2327992DD0CC598F10BD9D1483080CF33C1
-02DE0CA7BC38424C3438B4CDBEE66793A2480A15BF47F2FC621E66CC563F5052
-491ECDD9C38BE1966161403BC22BA41CB3FF9E90A70A99205ECC558C928F2FE6
-5EA5203977100FD3ABE953E7E5BA57AE0700E33A0ECB6FC6953C9029B25D61C5
-F57323AEA10B43D5A46C6F248F021E096E02AD7EB00923B0229336369EC82FE1
-F1C198456B9982956549CC441B859501FAA0CE507A8B131F10BC99B060B8113C
-2DB536DE8485DF33F1BDF4FCD571098CC6FC6B2A828D8478991B354B2309E31D
-0DAE3E8FAA0189B3C1E8208FC4C31FBF64689BF81BE39FFC2E680246BCFE4448
-8FFF4C7522CC12B622EE7982E0F52863B97965AC2CB74444618C691975D758E5
-53878C44180D2BCAC4CDFF06D1F109FF858198CD225C7F9BCE564D861394730B
-9A47876CDAA300EBAA793BDD2881D6D0A66D3727C871D97F199FAF1CA45425BF
-5B4A161F8C1408A20FFAEAD31141B18ADE6D229F57CE29E92DF9FD553274CDE4
-28E94100A930CD8F41F9BF6285743EC5DFC9BADB196021E045BA231B0DFFC8E7
-3EB7B7BC8F641CF337FE57D17BCD02C4980FF1A649EE62D2445C28033355500F
-B460C58BF63DE130BA82909404613348149F01DA396AF06195B4F42D402F22A3
-708DAB87F85EA515B743CB94D464F1C980F0BEC03EC7E34911F288459B59B672
-9474C93CB8A8A016ED52201F4E43830FF8ECFD652924BDA223DA5E2B2D6C057E
-C8E558872D762C0EA343657A627FEB5F492114D38ECA96B14AACAA7EDD85B562
-EA087D768A96507C1E814574B08442C49EA2AF4DD67C322C3D8DD4686632067F
-01E7E62E8486C163A39C28F7070318FE91167D148265BBAE808916900F0B45FC
-C106F3CB047BE800BF442A75BCFEB94E7DC7E317845097A30F1D2686439BE077
-741A968F3D4C5927030192D52CF2536D4F7489323EAB74EFADEAE1FE3F887925
-8E106352FA0ED99EBC97D693D287AD29E57FD1AA6A9EC121041636311364FCDF
-045E969FFB7761D0EDED38DB4477DA4CEB05758B314CA631E704AEA1827B3A3B
-8CF8B4785147426AC7F85D15760C964305EC631B21F6280E31DED8549F100B89
-918D6A48BCA74FE4EF45A6E4F9B694C2324B1E700256B84B7DDA3C18EF854626
-DC54291003BB1108B99C1E730C8E562830E12A561F1C292B1EBF809EBC2558DB
-71F8949C9B435513BF01AB86D7A7989287D028AC882A98B56EEBC95582D054D8
-21BBD6D4AE1483616321E1C148699B82B3343C2D63BAC0BD2910E0EE97ABE442
-0EE6003D124D45E4CE75C995BF7A75AABC96B9617EDD5ED91C69FA3928F93325
-D7E354E81F8F63E25AFBA8044D95FE560D74DF51FD00F8803E5C257D380A3CE9
-6F2824EE3C538B1CCD59B4BE7DA742200FCFAD187722EECDF8FFCB59C8306AA0
-FEE3C0689093FFF1FD393D24F1B1A6F0A5CC523AB1DC5A34C768B6FDE57F756A
-DEEFB6ACC7DC990C0EA07872B9364D2D024B2D56DFB4103242184E0DFA8E2A24
-A6C5F4DDFB1A3F86A508DC15AE85B1C5A8416175B5F1FF33B4CB70FFA6701D5D
-D3EE3294391DB669C03DAC462C501555E031AA6E7F221DAA99999E87B2C345CB
-2350D7F62242635E55D926FECAF4CFD3B55266BC86722AB631771BFDE91AB7D1
-B55C8651BDCA3BBE77D49E26E8A7B56478068613FB132521C4C800CA93A93CC2
-601D4869ABF79EAEC353363F6A8E7005831B925323D7370B1EDA9CB91626E452
-35E961B3DCEFFA27D8D0092DD911951D4EC48F9BCBF4F19E6DFF6831B5755BF3
-A593FA1314455C1923E8A8DEABC87A93CB4CD22E1CACA7C4A4F6172F7DA6B6A6
-D07E45DA2FCF16C67D730EC221E3E3217CB907756C5783DB363E775598FF8342
-70EB36BD2307E359A7A10DB2FDA8BA18264B7C7159FD6B1C568DCBC67FE75AB1
-A1751BDB4246A135AF6646044E7EA3BE868DC2B2643395129034B14DF42F4B77
-D513EDA2E438DBAEB147CA6F41256048DC034680E91CC5B6B800FA42F0857911
-82790F473119BF368D5A49257D66C665563406265A47661D560329BC4CAEC9E0
-775695224BDD347A896E0A41163D548B8DD7018DF368E3E6FE364DDAAC020B88
-20A6C218CF0D40B300B166B3125D81BCF6C04F43EC7F1C1E3522C7D119473F03
-266547389DAAB843F9AD52D94F12BD620763FD8C13B0C43B29E40373CC86E9A7
-D83F222E5B2448BFB419B3BA7ED209B30485C78F7E0C6C48212B8418B14FC2BD
-F4C928C7699F67D6CCA3DA7462D3744280578250E7E6728781DFF9CE34B5403B
-07030E9C4B2E69D4309823DE0CE13EE758834416F9DD6F90B8DDECA1C7603DBF
-62058D4E768DC18AB628815C30F59CADA4D5BDE8B40F1A59C3CAE107D1696823
-C3AE4393AD8BD1C5AE24AEB00D2D2CE88762D31AB2B1A1D462037F2F1B3B48DB
-57298490CF0C4EF23C342152265F86E3A0BA147E3700DC3E889475548A24C577
-D11399C971DC4CB8C122066D20B1FD862CCC440C6D9F9C0D91267CEBC252C67B
-A6C7E545DDE69BBA4F5407ED30A8EE165E05E78FFD7632AB5641D76A41C6AF36
-1497E6A3A7D86C4C0D3B4916F044CEBEFF2EB0514F4CF9FB967CA2C1E3676A96
-D30B2CADFF05C328B68914FB584EA5F41A66AE4BCC94D9A0E3006F82A9B90EF1
-00D1519240D0A1E0810B0B061841A49143FD0EC4B14BE095EFF5BF06F2BF4226
-0635EE011E3F05E80838EF86B6F1F183F578873813A6AEA87428BED4A3AAC9E3
-5DD0FE857FC76936B979D12973A5823E75E0A8731AD914B666D8DAE2C8199E56
-0E236D47F36549AEAC1A74951D43A453ADD5154A937EC9CDCAF9D3728406596B
-6EA7C1AE4CB09854B52523D6788BAB7AB1CE4389A811E4E8451E3695AC9D336D
-B51E9E493E65628FBFD51D6DA8227AD05BF2C4A15076A51A3B83D9975018BBF2
-B3CB2EBC72B9E577C740CC64854635C7637DA157F697EE3EE1FB4E5657CA602A
-842AC29523B20BFCB1850C5B329DFC307A17498FF4C0D1050E4A0B72B1B7063D
-9E651B9C33C732DEEA4B858E8CBD2B7F507A42323F0F625AB5322DC866E06197
-C3F761F22576CD6C228FF69E54BB1D9B054C6B8BE3C60430A69C2609A32EDEB1
-BC2B1AD00BE0D32E32A66D19E590BC8FE6245782387EAB2E2C55660A3DDF63C2
-A18EEBDA448A6CA3E3AFE4E562A7AA0DA87C31DBC83F208E7D8382E64082A4C3
-EEFD83068DE6DA96F90E3553BD664314FAC4A6BCCA6E520A5D0D9BB4511389B4
-E3E3ACA3F51D47B62F11D8B80A7C75299196F525F9582F33B295CCFCEED4A27A
-601CD8052C9BAE30A11BCFF10E426498D23A0E0584C0D171DFA3D52696A1B866
-10413FA62745A826988BFFF1D543271A4DF7AE242A7BCFE154FECCB63247E5B0
-12F45E0DABE15654E160747A4882CEDF036AF7F3A69F11904B8D4E7FB7CD5801
-3A407C9281685669EDECCF91BA3B25AB55AC8E7AD12C9D26839DC9F698C1A854
-2CF430F2B625D3E629D865A013369573A36B89D6A76133E667F952923C387660
-E2B8BB1B09CD385A33CE8DE5208A7A9B404B845DCF9B1872AFB734DCB5E72BF6
-655FBE94E54E6994C4D5FA652D7CAFB00DFFC85475DFD7D8CA078581985DB551
-531482FBBED61652E862F84CAC42C4D786F274DEA28CB8058EE64CB3DBA19940
-8E9ADF1306E971AC8ED60F42268548D16339DCCF0FCB2A52D70241D531469CDD
-F306E350EEBC4610B237B93E9D4385D1414B30812C41FB899A5D16ADF8DC4081
-1F207C8CAAE4D39B99E9386C5AAADBDE232E8B751811C971126DF8229D802153
-5DB62D286DADFC847D98AAB73B159F61F6F1BBA9D4E18C71D982436294178EDB
-9D3E2C3394F824B1A67B381224AC2B126DC07F9D1FB1FEB55E4E1698130584E6
-EC789847090AC359A465C33889FD6770BE79EAB44A489BE86DC210C61167CACF
-328BCC50EDED458A10EC0C0EC907A808B902B92ACABE442C8D17503980929F06
-0EF04CEB2828302E9EAEA75B43A142A791508D1C3576B0F0584AF2064BDE04D5
-4B2A98DD648974BB712F4D4FA0C3E3F247355709CA187F2E22808847E5BFC0C5
-A2D2F6B53340A943379D26BF95AD0E771FDEE47E88299FBA70EEEA09B5CAE91F
-3920F5E3DF158B31E60971DAED8211FE21CB82609B581A20DD60D738C186A8F2
-AD2F826A9031831BD1B510A11BE5C61D683922957A8D909773AE1EC6CA3E615C
-21AC4ACDC6FABCC1DE0007D16F137B2698D92C312D5913D35BB703A678425D42
-E4E4923C3D6B844682219916B33163CE6D87EFD43ECCEF7BEDD597401FA75A70
-A3D902BF4D8716FF47E5D7B1587ADF4EE2F8718BD6EE9A3FA58460E875AD7E78
-45C2F49981B3E4DDAF2A0E5463BD845A2B7F65A4A7F58B78194AE04F58FE53E1
-6F8029DBFF18E1B52BDA098793EF741C1E4A705A158E47FEF0B7F7DEFB9C9C3B
-1A0B82DF66E71AD34E0F0A0AEF314E6040902ABA0822A44B2040156EC942A78B
-60E26257686A1C15873986DE3BCFED2A5AED392F9470991040D5147951C84D34
-715E767FC6D1BD855C6FFFFC9B8E0F21303AC01D15E21024CD2936D8BB054E54
-11303C2A225999ACE40F838B36DBC92791AD97112408409FDE74D7CE35B206FF
-29C9FB23F71D5D65B2E8961A006B04B81836430E0FF3986EF0DFAAF222DEE50D
-D39EF1CD8AEDCC1E7BCDE93D0BEADBDA95781F67E5AD523DCD2404B89ADB12C2
-54519D2627D577B7BCCB6E9D8A2DC4AB0C9F2FF27EFC6BF14F0E187860719120
-A9F604B57AB0473B695038883A6138727F1E093C1DC8848EE2B6B7AB3375E2C2
-4F9666D60D376AF5EC01F409FD3EEE13B0C67A31DC55A2C3C0C9E7B6AD07FFBB
-1D91E809AA64890EEDBF695D161FC4F51EB72514E575DBDEFEA70867508B1E19
-8DA5D6FA85F0B1E544D4A3A2F430CCCD13077D9E46DF94AED300DC90F196AEFA
-212E5D45C17285E2D13A44E524243A668A23A6C97BC7B6F68321CD4837618CA0
-3D1FBF8EC7C61EE2569A16357D23011C2273B7224C03BB5D1D1767D04B11AED4
-9B0F2157E84576AB864EFF097A6171529E0E6ADB1F42139C91C4CEFA543C06BF
-C5D1B3DDA23822234BF0E898D46CBD9A316101E411389856CA6504AB7C1DF7A3
-8602E41303C4E967EEB54D56BEAF159BE060557C9DD0116D88D6B2430DFAF48C
-DE6868A6D74A2DE94052E1B44F0CAA0B88469B0E4E778250EA1F121ADD0D0899
-7C88B17A3E719643F9E1E18F781DDA306190BC8725156AA13DE6B589C55B4218
-6E03A3E33B7C31156859DA3070035BBD6B7FC2FBE3DCB9E946895B633754FD2E
-CB0919F53655C852FC66C25C83511FE4D11BBA1948EC094FE024234B43FA4161
-D6D7B6917C423D80FEEFD12B32C50F45C46643DBEB2756BB3639ADDB4A628FBF
-A08381FDA81E9004DE04644BAC33AC06CC46DEA3B61785F3F7AB20EB09AD90BF
-5C522512C09AF7B9B64D2FCB88D297C9113302D601778F4A40502208BDFB6237
-0A58517F03F4EB24ACAEBACFED72DB99C6F09B1A9B52C072A5B4573A0A327A90
-98A10BAB75124A00B8CE0AEEF29A6EB6423B02BE542D9CF5C1C2583AB23B949E
-E7F60F643EE1DE8F9EF5A4EE1851970565CC391B1849BFD1CD5CC99E949E3C69
-986292D09396DB57FE068AF5E1FB61A7C2B8C6044EDDF17F8C5B2DB9ADAD93FE
-38618487018274733019813027AB1C43D778F02EB94B09FCA7F3E21C566CCF63
-3172A02827FA8056D59E26C74EEFB7B651EDE7C74EF43D205941A58DE5F5ABC1
-0DAB2E0AD8617CA26CA9902DF93AFD42C4DF308D8DECEADB384A913358B0F279
-766F18E6F9C94EAF754C74F2180C61417899EE7C01B52E5EE873AA1EFFCC0DD2
-B58D93E68C4AA4111E7964E82FF7D18A67A14FD181AEE2E12C400E6BE3DAD5F1
-33B0DFD95227F3BAB381813D9E76BE7266A13A7B0DF06BEF237B40B5DC81B5D7
-C601FDFD07965FBA6A51D65DEA26CC0652F149BA86BD366AB2A510CD5DE9B163
-7601EB4273B0703D5ADA2126FA5472CD4FCEE99AF2A7AFB79810433DC93D025A
-9CDA1E3D431FA18BBEAB333A510083A1F76A718723D43635826B51868CC0C85E
-F16A2A7AF39FA6693A605A65DF42851C444F61CA38E073412AC89E7324997AD0
-2B709EFE96F05B0FC60C4A3C804AF6D2A6C0EEF850728CA7DD5419DF8BF1C324
-4DF2DB944A683FECDA2B29AB564FE6F659037FC499F1D6FB7A6374C5C336C8C7
-4591354CB1E6AF135261AA3222FA156E6128F3EADD591030F59B3D1F0619B506
-498CC2EFA72C35E88EF37DCBC6CEDF837C522E88A5652F947C5407D8FBAF2448
-EAA1F4C03A8A0C173946415FC06B4604F77952C5913E4263B741CD9B1512912B
-0CF9D89F82133719BF9D48C7127BDFAB0B2801134127C23F84F8AC313E23F91E
-2D357B97A35985B1815E50B645B60A837D530E8AC939EFFD5B336659BECA5F2D
-F45CAAAF2BFC57BECAA1A80156CBB1D82FE32639981412B4798501A1404F8458
-0FB53F483971A364D4E4390EA18575885E29ED8C391827AFAD7126C1A7A43E9E
-2998941601EA863F89ED0CD76DE298D594D167DD4C11C161D54C804E8AFD78A6
-6C5A1AFC0C939DFF1659C4853CEED6F1BBD689465EAFAA059AA41CF4226C7691
-71854745CE754500AEF5C77F1DBA47C84C62DDB4F8FBD127C29483189EE00F67
-19F601A4C0A61BE1ED927F76A8EB787D7EE62E292CD2AFB1D4396A5338AA16A5
-463B0C8CBE73FE4BBCD4517A4385A77971457C554FBD6DEBF75F696DEEA34C2F
-92C01471638D82ECAAF13DFB18896EB5E3D52A5F10E22CEE6542F7DA10E58D89
-CEE3ABADE7721C75B83CDF45EBDCDD258154628DFDF883410DDF7792EF5BF4F2
-27F56501B7910D6D39AD509A4F3163D783E941AAE24579B3AEC898F21DDA9016
-FEB7D49022E004AB49558C877C3133754BE99A3C81177D6517B0668189B55581
-49AA091B3D6E3F1933236F546F4652D464447C44309510BABA869E219EE32BD2
-3E40A733C45A71C79B2116A36A71BD75EFFEA12614AF6E4F8B3329D407D951FC
-2EAE537C9EE872EEED792D89FB56C5F0840F804DD18C1256434E58FDB0F15735
-B6EB98363E14CE4EFA0AD8A863018B924F4B4A709D2F7ECFD2C2BECCD2775390
-8EF8029AE33676EFFC5E283CC3376051EBF50EAAC53EA76BE589043E6862FC68
-D7367F06955C799FC4FD98FA4318C8B8A3874B84CF03AA2FDF381AE8D0FB2231
-FBCC5A144BE7D4F9A1449F9C2409E712F3DD107DDB167695843FABFE8EC31DD4
-A660AD9E7B05BDC4122034776412FDE112C1858F79994E3D5000513EA9F8BB94
-7E58D1BDBF9CB797585E16D6BED350A5AF0C999E409D20487DFD21D881699C93
-461F925B7930FC6867372B0D6F7BDA3BB19D8455194961D9A888F27B7ED3B1BB
-32AC650E3510EB4A563BACB079210D3B787D153EA12400590A01871C5F7A29B3
-036105A1513ED6DBECE39E7A46C9B47968C083A01C1DA428D5966811F5AB756F
-96548832B6EFEDA43C534F4CE9A2F3760750C4341C7A4407D69C90ED68932F02
-49DFA7393011EBB581997FE9FB9AA12A43C15DB1C0211D5A4CE3C1FF8E28FA0D
-4A5FE81501EF0ED2E1E2E014B613A56DF164E427AC960FF73391B054FCEB8AE3
-94545520941B8257E08286037A7AB7633E6AC7E37645455A7173A51FB9EA9115
-888A5FD0D419CB90A7D0D6F64B57B76FD74179F8A1A162F0B9D543BF53BDFEBA
-3B4ABB7BF27FC1030C6D1A188C595BE9D59F9CA8F3C43678762F6B01408471DA
-D7AE01D940A59B7A50D9C0143C0744CB90FADC94A7710450BE6437062D48E8F1
-A34326E9C68CDE3B7E6185E793C0AF505DF186BECEB66667EE0CA04B006ACF8A
-0CA407EA918AA7FDCC40D851DC56A2701E646695DBE56EA4193200D98126307F
-3FA547ABB75EEF2B33EDEF1371D7C068BB1297CD9536BA228C52F85F2372F3F0
-3C80234C9F6871D0B76687312516EFD1731F9748A14DA6978C86219CA674B267
-DFCAD0FD7BCEF477E0EDA4EFC48161C43D557C732052C5E62AED8C0B00D54A11
-FA51CA87415563603D7CAA21E29C84501DA0777B154F5DE943701E02B811366D
-05F520C9E4D53865A3060A9739CB6F6B997BD52A705BEA845DE404392F4DDCB0
-783DD19069033E1D3E095C4804202214A7E2D19A134D1307E5A121BFB04715B3
-5B989751F514B6EE5763D3A8FC64BA558C71E26834144E088FFAD3B183600D60
-A5FCEAD02C1418593B8F1E0DE6FBF324BDF262024F7117CA742260942588093D
-C08185A90F23B185B5F95767424C537DFDEAD50CC7FE3B8AE3F5108873C9C7B5
-8CA586AEF7B7F6DDE202FC22740954A10F6AE3E8266CEC7002B9F2DDBCF64CCB
-33EA716C6E1B7C0FDC9A8B697393C7FBFABA175FAE04618259614B035EE13E7B
-471ECB2ADDC4AFD3ED49FADEE0CC434375A0EDF967011361466A900CBED0E761
-5C9E3D79CC8C844D423ECAF271FFA00B43D3887B9C8860593930D17DB4C20D2A
-1E23B070B3C902FC1BC1A88D98B4EC513F38CDF7311717790E1B90B411DCFEC7
-6F238FFC87D1DE418640779C6618854E8DE423A48AD87791633A000DF0BDD49E
-F664C20CB025F17ABFC8F606754AF229638C6C0D211C0AD3AA8AC3C9DD5D624E
-103854DDA2A834C347E6F242947BF06EB5DBF0D3066E24B8F7880238F72D0F0A
-88A4B5A4DB11FEDDBA112D89C755B3759B187F4E12DB3D90CAFEFD91DA9A160A
-39A7749BD2E7DF4946457260C6D895347D074CEC06CD3E442DF682B32A9C4753
-CBE4E0F6BDCF150945268A7FE5C0BED753FD298381B34EA0829B2B94DC38007B
-B72D0FCFCA0CDF5846190A24036EDEC853AC17BC40FB9BA2F62E96581607C1A2
-B68D50F3F186D48887A5E8204DF84D7EDE2E619B66D2D2AFF968F453D8E585AF
-2B2FA4FAD81094530172426CDF5CA0F876502287DD1080047E31D18D67704D31
-07F0BA091DD050E4660FD5DE4912AB5D2A530035ADDA20AE61DCB7B30981309C
-3B6BB005EF8729AB0452697BEDDA5DE5AD7D54A1D1454DF0134203E618D02A10
-ED115131B03939E01F741A8502B88BAB4D82C670C76E7F4E8592D5D6A74D81D4
-9E8F3EB18622BE1165050D90C8681283D2476D6404E0B7197429D0F81F1C846E
-0FF2EBDBBFCC289D692608F4D82DFEE8AB1D2644195AB3E433C264E991F6E1B2
-E2B21DDBEB4E46E03537B4C3595050E65CB525E082D690240E19768AF062F89A
-2970A5C9CAEE6955937196192FCE3D42106B20AC488463B28F5B028B809529B7
-0B164044789AB45CE8FB40D70127B1F3867A1ED544CF8C8CF2E24BB6E1A514C3
-E25E327E51972FBF7E0813FEE52010E48944682FA348A67306E0166BB3069925
-C670F6954E85615EA2758DACE93EE89A43FD0BF53DC7E3BC68966B475C00AD65
-73A9778723FBC930452393FDE06823A5933CD35703C9A327AC36644105AF9277
-A0CA9A3DFC4BD348D001680125321712BA71B16C38A5128985927FB23869EECC
-893DD2688367980E7F98E8BD83110464E38EA770B88303AA1DD3F2D1D65A41A6
-EC6BCB3290B82486031D3DCBECD1E6A2C428225F56B6DD66668DEA84CE146CFB
-9958AFAF934A5FDCCCCE7B99CC8002C27DE55D867F1B9158121D04D763D9A3BC
-D0D8D87AECBEDBC250A2ECFC6F42E58A8BF069DDE94A4A162A6F76A6790EDABA
-E564B286BF200D33D9FE6774DA9BD91A1AC4E0906CC8EED350A232FB35C084C9
-3C521EACF914383169C274A83F4EB79F5A0D10E63CB8338366E3273FF831B05C
-B37840C7BCCD97B54A954C2542B5DFA9688F2735D993F7ED2F369B6BC37F8B78
-519AB0BA4C936C16C41724AB96F5941D4C6CB6431509CEE02073115C00FCD01F
-6F4B76C2F997BF2B9F09C53613766A94E1B466F9D434B73B35173DDA365EEB4F
-5B48E85C9CC0A50767FB61D7FD3C6CFE2DE088FF06E1A5DFDCA921A09D73013E
-8E9087559F081324576ABB53AEE66FBC9D248EA4DC6ED1BB821235C6A1777319
-FDE6FCDEDC54763C3F822E500D0D557E934631AF88E10BCCC06179708E2B3A99
-0172B0AB69E47849BA8067EA14C184F01CD5400964BC603DF20DDBC055936BBD
-E6527DAC9B198DCA9C418AD21FDA370D2141D70CBC8D15276C21273F9E1B93FE
-812BBEE4B0D72ADB4B593DCE83865CA3F5ECD20EE28225B729A6800E8FACAA6D
-3C64CE11492B491D15C068B37DA58360F9A7F9B9B65A508848E12B83F7DB7FD6
-772033A989B34E46955D2F4C0630494302CD9AD4247DCAE3EB91F67D9544E88D
-8FE84ECACA113ABA1D8555FFE1ABD0F431FF157C8595F4397FCCCB80D5B2B17A
-0C601D43026FB9ED0E9E9C46CB870672C1324D7283BD28E9693842269669F57B
-2EA2D0DC1A8757CF6C583A3235311BCD01539AC00ACE6ADA5EDB20306C469ED9
-73A7DC687570AA2837D3877AD51E17E0A649078E73895ED7A5550E1650A34B33
-72C2EF569CDB2242AB91129175F578BA0134635A03C04F684F7982CDA57C9E90
-4B333E4962ACA9E2686FBBCC0FC2606A514E683AD8351D9795326091339DBC1C
-D5B547E449096CA2A71D13DE28B967257F1F0731E1A4ADBFBD6DF74D6DFFA5BC
-08C4C2AE615ECD20D52BD8EF537DA2E0FEE314F1D60928A87EFC7A42C4B167FD
-537F9256E03CD8D2EEB07AC438E55C33FDBE2FE4438F6F8B29ED01D23BE33F0C
-465B0FBD1B55041D16BD5ECB92204B4F614024190EF4B87C6D03EAC1EB863005
-D3AFE487D1686A4A356252745101FDFF3F85C162AFF34B2063E6B2DB7749653A
-D3EADDE7C1FDA2F246CB3154737E277509925ED8DD86210C94B64BC7B8C4A037
-9F4C147CCFF8C2C1C431E1E8E5EFD8D49AD10E416A2DA4F45092FD499E4025BD
-93588050EE9907A530BE3FF8BD9A4BE19526AB3CCA10F70E702E90C72BEAFC15
-C66774473AF87569AF99B516CD67F2F6D26DC6DB5508AF6286AE547BC63F95C9
-DA6190EC85F3D8605DD1A7A42C7C7B60DD3BFB8E84FE0F584D8A986BF0EDFD3B
-33B6C953C8E69DA03A5D0C5DCFC66D800388B2E4473F68F52CA474FB8F1E4D1C
-F7F5119CFEDE6F45B2C6BA1E0B82DEC953A26F1104EA8C6EED38B065B02EE952
-4D7CD7FAC772D6AF3862D8FDCF7BEEC514795BF37C14D4A502EA7E10699E2B99
-0EC296F769EA6C20078265D25617B1225C7D7EEDA1A10062216EB83EBAAA8CCC
-A1C750FAAF6F44246436DB8C2CA7C3010ECF6FE9A66BA6AF6400618D170DD44F
-E231343E2368632C89C738DF38F618DD9774B75EE2B146690EE6726E6462613F
-2A6F47522F1843F126BE21A8FF4FA0D9E6AB154ECF0FFA138E036C57D49ED1DF
-517D36CA6171E5C4A26027787F2DE873B6438C55B7CFA023CBB5360B60C84496
-130968C3DFD4F16608D310458725E904300D304B660F5D6962592C7073B2C9E0
-513F8F6D25AFFD7E743A710302CD5F12AECB08ABC02E650371A5B23C18FE024C
-9827FD131A14E622E7E3F1C2DD0531CC6B91AC9E259E78463314ACA0BC7DD2E9
-B2EC250B3BD48075040FABBC5C87F5EE51B5CBE1E167DC4E151E902403A59F12
-C4E4BD1A31E95E430EB6C214EAB8F6825EDB0ECF123AE0B980C4361A2EFD55C4
-74925A2592AE2195B0267E828F7ECF7B9F674D0D3D4D2A9FE7E03AFE8214C82E
-B97F69E4ABD689257F3987F84B31AFE10133A6A86610D497EDEB680145F0D62B
-647998A8DA295A5EDB43000C63EB9106BD35C280BBDB84D478EB316E506BE0B7
-1823AE8E409652AC05D96ABB02E8815640B33BFF08793D23A2797847C7793573
-BE9A0AE34ABCBB712BA86BC2B3D614D77CDE77DAD8D41A59C29FE2138BE18717
-60F23F275BEAEA736E1237232B4F5C9171E49C5214F841ACE919411FD651D4EE
-D0E49C79E175E2AC19B0690D7F7091665EA3DA20DE5A559D1481EC058B5521F5
-D26A8B10966B6EA55E7B23CF0333D7EE20919C9168A50EF7AF4D4E57D9E5C698
-3A0626D67575BE6CBF0618C12A169F9CA62F3273C4E790DECF8590274D7D7C20
-BED651E2C65107CFE57AA16DB17F45F7F178F8B63EA3E9969FB3D6A376A416A4
-14F809F02F8B9A5331A6A1279B19C9D4CA9D9987B8FC1AD3CEF0797F53B70F25
-CBC85BFFD3AD3F1D460DBBB2CC644109668790DD2B5AB7301F37F19FD1AD0A52
-C6920EA73858AB10EF369E5ACCB35A61051ACB6586B3B5435FB7A8CE51C16EE6
-A9DE7CFB1B7C6695DEB484A8D4A723E83B573B0399AB442A1E57793F9D6AC73D
-B8DEC23105D56BEA2424E91B9DA5CAB114BDC3636F0CB34C60BF1B0DBC9174A6
-A8EEB5F832D3B44BB7593250A6ED065309DEDFD9A1B3E57E10CD1C651877151D
-B086E2D82959C3BB999C11110C2D61CB8278AC65B013F6A48D501417AC494D51
-E75F579246F4449D4D7B83612A4E80F65845B8766E95EA5129F49BD80CDD2E96
-60CE7A6EB6DFF8E9E94A77A0126892D661AD2FA3D587B7260ABF3A8449A43E9D
-1582D0D12DE3E35F3AF68BC48935487A6C8AFF614012FFE86E48DA54DD62B510
-BBCD311AAF2472B2882B0E1A8E4A0B37DCFF968A7F293B529EAEBDFF5861E56B
-FA1009DF759867512F68CFD8F01A7122CE07AD3F409F809E3B6A6FC0C5244229
-9199342EDB58E0D35B6519443411794978DB0BBD28E736491B0F04EBE14B2C1C
-3BF6EC7CBF1411BA50AAB52088B88997355417A7049F389C770F1D33DCB3CED6
-0ACEB141033F237611D473191C1C54467391EF4BEB3A64241583A603F3C79B7C
-2F0B75DCE77C4C88A1AC382503FE2F6421A3CC5824DC16AD7537BCBA4DB1EC4B
-F336F77352683BE1546356CCC9702F24DCE6D1F84AC55DC7BF562B6605A36115
-6F9D6ABA30A043C99C1A0194879AE635B4AEE1C0F0D515018F45F9EC58DD76A6
-EA0DD8EE108EE353D8CB3AE7A6E4C2391E24F4607A688E283ACF52199E20902D
-F8EB7960666C8552BFD487F6BB348DC50189B03F0F959743183B92DABDE7A8BA
-E1DE007CDA5802D6B2F00553B927D9B787630441C04593344EE7BD12DD085A64
-8FB62FB4836C5AA2B1AC7400A00C038E55DE2FB9AD92FEF7EBCD8F11378450E2
-83673F87DE599C80786B0E0BA22356CF30E9D2E16E5D27FABD579D71D399AB7D
-4485299038F6813CF8C5063CE55172E3989562DB517522BEA73A4FCBEECF85D8
-AE4A4F9CF3324EDCA9EC981DA2264FFF7284A15E3A30DDB7E347072193D0BA4A
-08A127B89F591E2702A7D4D6F95556140AA417CF5CC62D69F9457E0215AE019B
-1A8970E87074B208719B4DCEF7679D12D771DE2A01E723391D59DF7BD0A7326F
-B5695926DC92E40C177389E289200909E425D1CD28D1A19E1B1E4E41682A82C2
-7FDABF1AE57DEAFE7C395886E06524AD96E214725129A3ADF8D515FF3CF78CFA
-EF84B53620D5FFD99B1EA3F28DBABCA650B046C320A028426C44D2AE3953A9D9
-46EFD717B838F2E3FD8FAEAB40F2128F46410F1431440F60326A1198889CCDF9
-C2F9DD3D119A9132541FF09116A8C30C6E8CFFD9AA3EE31E00288566F07DC598
-D7234FDFA8F8B068E1062998F8EB6B4751CF1D4FACF98CED6581FFB46990A524
-B382A1D65C66D131BDC936A1A1834E3CE36525D63BED86416B7B7F1D24564D25
-A60990FDD9E9FB1C1BBE5FFF5DAD9D8525AAD7B823B00EECC9373D671FBA7B8A
-5166B2B4B72A93373FA9063DE4B22D7A6D1859EEB440634DB57990ACEA84D507
-69409DBF24C5A96ECEC2DFE715643FDB87703A4B42EB6D3ED5D5FC117199E324
-FA36C00AE07A6A772F6DDB48BC19F6255FA3583BF967ACD54991A78A5E3BD803
-C442C3E8438813F8E4D040FF5F287FE9D9D450F5420AFD1BDB7006A1C2965562
-D8B8BB8A8DB9E8016E69C25B6FEB864CBAC9B1635F78E57A0167E4FBC3269286
-A829BABF548377EDD4A7A7809219941BCF62160DE5EB11A6C3F73F22EEEFAD6D
-79349CA6E83DE5F014989BA7801172B7DCE74B1CBA05563434352D8CCA8DE220
-3FE92EEE6DBE5D0F15E1E4A4ADEF7BEF05DD0F5A066373B47C98CDA85509F685
-BB0A9EE13E239C34BAFA19DF1253BA3E03FBC1FC85D5387878EF5EE62B77D254
-5D7468FB55B9D5EFE11BE32F7E7FE83A8D60B15480674FEC54CE1DB50D05C58A
-3C3DBA96784AFE89468FE881C7D5E569A6387EB96A2E6C0293FCCB29FD5E3022
-6C4DABDB07C4D2B211A6C7AEB61E6151FBA636EF6403BA6C7B8BB793C5F4F7D9
-62AD6160B6705BB536C7C4C6B6049ECAC5DD72814370EF535444C611CAA0DF1C
-CE66A641A30EE8B3B8703410E55970FF5DD77E5B3932355EC6269102D7D9CEE7
-D3E78B00DB3C002CCC5A5447A3568669EBA5133D5682AFBF5589AF5E5833F539
-D767B8BADE673D65B88C8297428CB077E68FECDD2387C58D7C3EB9E545CED26E
-A1D7370F2F4DADFBD9722031A72FA1D3E8F564378D08D5D9B05DC16D1E2C187B
-C5D20ADA34B3FAB982743B3070977EA4A9CEC000C46CB79BD3E84F30D1A2D334
-6B0771A66033FCA6813F22300E643E33B130939236AA4019AF8641D0D5974AF1
-88D18EC8B25EE465FAEF3E7690391E33FA8EBF2B43A7622894356303D6E7CEB6
-FC2FF5050E1A2D21D61AE6D1F5641EC7689846BA4B7EA87A20D309EFE78C9DE8
-A10251FFB6A4E0269F7A37F566A826B1FA2C55A243769546A2BB9D4CDCF4A543
-029BFC4425E79307F1A3EBF4D5B8EA261CC4C0320E2449A381E9D8E4BA7C7F6D
-340FBC8B3C50B0E59A61E9782DCCD9BBD23D3FA9C54230C5E1CE3D0A235F33EE
-7D8EF251D33EB218D57BCA368487B0B6F7D5792CEF0B885F71DAED5BBB17BEFD
-17DEB3C15BE0F452534DD61094C298FA9B5CFA0E96D091A2589D0F69C85F8BDA
-59936C67A80AF924CBA0765706672940476C91C76FAEEFE48467FF8198468BF9
-238E2926377C2CC141CFA2B4FEAC7117FF081EF0FD3B2B48028D57EA49B448E7
-902D0690096EE6C83231FD32653432A231943718F6BB9DB10C534730BC8CF192
-02973DBD125618EF21BA17142C8DA4099A6B530F36F9C782436927BB03B9A761
-77D0ABCD53BF2398562C623260043B3E7D041B5C2A244DAAF6B57245C6A977CF
-C5A34693D558DFEB02ACC7C08393E21AE88C22E3C228A2FC4B000A14664F586A
-FAF41B2DE959CC3F58FFEBDBCB3D8CECC85660F8F6628643AC63EBE17C02A6D5
-BB3965D42559D47EEF9A98A3DDD12193A445D678E53E55A8FC95A96F3FE1F0BB
-825A0A4F158F54097880ED2DABBBF7B6DB3FAAFD59E981FAE49B79406B813E91
-DAA2AB3195A5A0CD655516A92157BD59164840B4F4A7D266B9474BA220A48599
-1C2B1DDD7BDFBD99327D677E45698F80353D43A9BADF034824473765F0EA2F10
-44B98499FC974CB913C4B64E1269E6B5BC912B34D0B89FA37879A63B93A91256
-553416F94A8B00EE325F328631787E37C9DF3AA9D7C2041DC58425FAA5DA0CCA
-BE2971E437FE146D557ABD238F8CA06C5E2966815CB4B7E1DA75A5AB83617E0A
-AA0DD4F5BFB79225F7D083B6380EF342D6AFCE6B18FBB40EEBC845D20632385E
-8063551716EDF22F257487DF1904618ADE7487F6708FAB208A911399351F71A1
-FBBE41602512D92CBA6CEE36043093FAAD2688BB0409D71B6B09C61982EDFFC7
-1BAA404D3ED854ECBFED7E9D4FCA1DF74F5BF05A1417E973C308CB805B4336A9
-2ECEB6CC76908C93D627C557B3BD77018F96DEF4145A9DDCDDE08E47F80626C2
-489C7042DF12A37C574FEE56DB542AED908C22600F22D467B8F50F4C4809015E
-EBE96D4A6288A07BEF0D73690D7FCB45995F0701D0DF507675F59FDA3DD997ED
-C349ADDB576A6F2FE117CD42978CF975246390610DF22AB9BEE4BC8124FDF869
-0D33C973FB6242981DD07E21EA24F0C4656EF450BE15FAF83BC9B5A5C38C2D68
-99412B858E80CE9ED73E513C8A169F9490C94FD74C837D338A2F627E481F09F0
-89B319F6076A70A0AF1ED9E4E8C6C9C0C697374BE102466C5870E7564C692899
-9A0FAC9A82C038FBFEBB2912E8E335FFED0AA2788856144EC2E147714075988B
-FBE652847CC46ACA47F77EA672BA21D6B1815071B85ADF862DB0F26928761F55
-92B610D5524839CACFB89A0C1C3A50063710BF3F85E48748352ED45907122625
-3D1270F4548E6893D1B25F6D0C1384DC91F6400B0AEC3BF07F634716844689E4
-EBF65C1BE2A5B31B111BEC0AD90E4D571F67C0F28A57878D2B93AA616FD1E969
-1DCDA4FD3004CEFB0536057B412318E69D9E589B852E41AB1D79C88A214631EF
-6F407003F1E303C6492BA95F475F139E9A508134E39FFA501C01F5979A062085
-E07149AAC966E190DF1C10D6C197F7D90F388AE154B401102B7155B48B5E812B
-BB035E4BF85504F0F6D73F12F1871B986DB5037FF1A07BFA91010C69F7DE4D04
-5568FD6DC581C20485C58DC87296AE14D94DD4EFCB90FC49D59B3A24FD5134AE
-228F9D6B522B9D698D82B01A2598991D427324AD1418811A30039325134A3991
-1900B9F104CCE14A6FE8060192A9BD2272390DA86710FA38968F84A0EEB722BA
-647850892C21E446C52CB44D65CE6ABAF963EF7E4373FC84B8C1C024E21D3EA3
-B9EBDD9A7C55A6F759807BFD086C78CF5B522449B1610F3BD0590C97B17B26B5
-4EED5D1395D9BFE60ED37EF4B00CB48BA1A904C4137433067EB2AEAF35030874
-D0C061F2C83B8A4283ADB386201192832E4C3C5A47031D6AF00CC267F7DE8449
-73CE55232992AE3E71131A18B348EA7D0118857000CECC69B80BAC3EF6508999
-27CBFCC211314D256E112BBAFE8BE0063F85764E2FCBA821CAFB9DEE8EEF9B21
-7B7F361B8F817576F09B9A8A33CDDDE20CD30E5D07BF072553CD55FE164112FA
-CEE7AF710FB84812E334ACBF603E21A3A1B78AB470B232041D75E041DDAAAF26
-3F3D9267E9DD307AF620E16B50064D8F5C8F1E917C8608405DE1EB8B1AD1FE90
-6EFB0F29A9540F9A0FFDF4810CE7CEF183A6AE3DDF193ED3C6DF3DFCCF989C64
-37248688B532CF9B91750A86768DB6741E2DB3312FED357B174AA9318DD6A78D
-25456E6D80B32495FAE60E5AFE0AC1A05D1D8FDAD6288CC6CBD3EF14B3B87058
-454841B2B5D37DE3ED4E5F0FC4E684836EDD69BDBEAF3C4AC483666715FF6075
-98313AF84619C2C9AEDDD0D20EF2CF95C56F5A910C628DC242FF71BEF79732C4
-93B3897BE143B1C74942F124F194EC904BF92B677FAFCB0A85C3900A75B1F0D5
-CEC1F977AC17C7EC394718CDD08AB218211A5C702FD4246E5737959F527847C4
-C1730B0AAC3E28DF726DEF7BA051EAF425E442493C7A616AC70E9658C95D417B
-29E655827D9630AF834C87EE85419F4AD1D6F618493D3C610F1409A8FFE3E5C8
-43642A161300E6C90151CD21EE11DA13C7925B7D5B44C59AF3565D89C7D9594A
-66C411A848E067424A23B13EC03FCB090A15791CE346376241809E3851388F9E
-BB90C488DB50AA60ABAC64CB67DAE8F374F2C90CFD3D8B2F2CCD41740EAE2349
-2167952F63D005C9F1F09E6DAA22077F7998CA1209633A1F719F2EED5FB3122A
-52F67D1CF0FDF42324A6C86EECDD300EBFD9494430BE5B462D70349BB64C2508
-F0D7FCA414462DD4F3CDD0C531F385179B316B7B043404DC4067D450F81366F3
-9D3BFDA706859CEB1DEE3E62C453344BB48D69D093B7B15B71FBC503E2414316
-ECEBD9F7E25C20F06F22469902954AF3B2A128F76C0B7CB6357A5D8402EDAB0C
-F5D5288D07CB484B69BB687608F51611ED3AC3780D11AC3AFA9E804EF56D8089
-64ED8A5F0589267D8330F17580BA3E35517EC2C692A66965BC089777DAA7C8E8
-9D419BC85C6DEAD167196761928B28C212B4B88A83096ECB68B84EBE98D97C85
-293B8CB1021DD541EAC2DAE1087D6464A74CDC165479940C9425D636619B1BE7
-967F7259D1A536B2D83EDB38E473311E1FD0C02A31EF851F3AD001482AEC0D9F
-D507F00DA975A2EC33F5DED8D6DD551257E20930EA0497E40C692CD76EFD6012
-2FBA02244EE7D0C540D98DB6B33AC5472AD9E653C1EA35FB2CA5A7309061E28A
-096617B9F6A34A017A42D2A13C7AEE8D875A94CFDAEA73E1EC32B2F4F0
+D9D66F633B846AB284BCF8B0411B772DE5CE3DD325E55798292D7BD972BD75FA
+0E079529AF9C82DF72F64195C9C210DCE34528F540DA1FFD7BEBB9B40787BA93
+51BBFB7CFC5F9152D1E5BB0AD8D016C6CFA4EB41B3C51D091C2D5440E67CFD71
+7C56816B03B901BF4A25A07175380E50A213F877C44778B3C5AADBCC86D6E551
+E6AF364B0BFCAAD22D8D558C5C81A7D425A1629DD5182206742D1D082A12F078
+0FD4F5F6D3129FCFFF1F4A912B0A7DEC8D33A57B5AE0328EF9D57ADDAC543273
+C01924195A181D03F5054A93B71E5065F8D92FE23794DDF2E5ECEBA191DB82B3
+7A69521B0C4D40495B5D9CE7A3AF33D17EE69979B82B715BAD8A5904C5DE0260
+6C15950CCF6E188A0CDF841EB68E5A2F88253E382140F87C87E55C9EA93B8C89
+14A36CDF630D6BE7CD36DBDCE22B21778E8648B97B7EC6742EB5114BDF0454B0
+0EA7B1FE236C84C0E5308C871F67B973892890557AA12E00B2C20C71F516C397
+3F3BBD14A1D0149CA064391056E45E9470FC7F6F556ABC82653B3C8049AB5CF4
+BA83C8F2158C236B2FFD4208846013BAF4165E8BB8D334C8FF2E8D74AF5DAB2F
+D44788869B08399421AAA900ECC6A2D594641C121660D4B5F512938994C18DD0
+FCD9B008F68F0351D21ED735B2740CB1E0C1CCD25EB548C35B844601D98828DB
+556F71D07E081A593FF12DAF83676492A0FFE16E95717A07082B43A966C1EE8F
+8A59E1255E1705C43A23CF29A5E4A6547C93F1680A870EE7BAD8CF74D838CD5E
+F806911D8FE4262ED8E7F5BC58B92C9C6D74F8AD45FBB021EC7E97393018B9DB
+B1B84E7B243ADB05ADD3F1DB3692ADC5D47FEC7DF93080669E63281F1576B673
+125EDF08016664BE73364F65389F7C3B66623AD1754ECBEF9E5CE6948D933787
+A5674279ACB2EBECD3B4E6361419AB32028A27670C9F3E18B746A10B00AF6D77
+4EC00E3BE521C02A99AE5BAA98F793EB1228952BE67934B91472E01AF7B816BC
+56D7F19F631A1927846D800C107B1E9CBFF9D2DD513B4A8CE2E0DFD77B1ED178
+E43FA7052765E9FAF89989D490D8FEF6C536EC0D4AE27A74F474B98DA9E6B92F
+15E063DB260571979A5DE2423920CE1F59F56EB11E00E3BB9D466A8263E1E385
+2014BEFDA8D1EA3EDA04BE32AEE6CD15C5C010A1DF7F705A2C0C18E87C8DCCE9
+05D9163181CBA56C0FAC8C06A2990554C8E759D076B01BBEADE3B5FB8B551390
+6C8E4A2A1C6E7D9C708614626F3770C0AB7DD2027469C77975C27576065862AD
+04E5E50CEBE907E3E991FA0C627302C0E207B4D5992BEBAB5853AD1C0D271728
+C76F40A79392ACCA7358F948AC65DC823CFDA59E1FF69CEBB6B7EC3CF21669E4
+70D999508F9C49E2D9F8818CA53C977D93E15FBBBAF75B1E84F0BA62BCC4BAFA
+4EEC82D804C8A8C0210F3E5E258BB1F6921AF02BA9861BAD5C3D5FC8CEFABA8A
+A607E547B802096F7AEB09FBA99C83C9A494B94408DD607CA6561A6E6660C473
+62CF8D35F31D052F6C6C8138A8E1430CBA7EA6973D6D510C1A06B3FBD79D9364
+240C1A00272DA44B89A9FE8D5BF36DC1B5EBB4A78ADBE9C5EDB485F093D9517D
+69E1AC9A8E6C9D7C324E3797CFEAD9A18E82E03F69B2CED7D5DDCD1A218BF2E2
+ED2293AE999FE2A4B5213A10083EE0407BCF8007670B8C737EAB30311C868D84
+121149ACB4A27F3ED6C0C181C98AAAF51B105F264B5672D7F745131ABAB5BEA4
+0C9B43C0DD9116D6DC61F90BE72018F290D26D5E9D341055CAF09C9F45333CDB
+D45B7954271767F638EEC499F7B53C2CC5774EA7A7F024C4CABFB93D9CB1856A
+0C671A4ECA7C62EA5242648A84E7F3AFB9547A0AFC29593CFCE6D8B873A78157
+D337CABD291431C0A2CE1F37E0CD7340567AC206FF98E4B5A6410F70F750451C
+550EFB54AA259A1B236CA9CB730D2CEF125EC65D959441F7CC9768F777B44844
+CC9842A307C72B740680ACBBF6AA35FA7A94825069BF7696ED81A371A9E5475A
+9D997F2DFAD339AADF797F7E03E654234455AC3D17702A420EE0A597BA31BDE4
+FEB8DBA7C61D311CC90441A620164DC22DC2D373973EF84CC553453AB1B3337F
+7B39983B8DFFB3A9425F119B45C1CD37A76F905777B3154CA6200792F1759D06
+E017890F4041A385F2238E3C48B6C8EE6F5258463FDBFF7AC762F6C4363926D6
+50F004D473B7B7F73CA686B559C2885F1AA761653C727A77D73431E9D110E76A
+2E55C68CD50F43997C9B2FC4710F8C8540909829E215678E63BB8363C4B8AF05
+9986102BB36580D9CA95CD216B7C321822CB41B2E0422CD077F3B55E0246FDB2
+44D5976F67296B5B0BE4B06F6E43535C21164E6C5089C3E9BA2D6B30888C57DE
+49DC8D9D46C0D5EDC47ACF2C03B72DE3B69512508539019B759280BABEA12BC9
+385308A0395C4CD33182A10A5A229743379C2075D82D8BFCE4A66E1AA087A091
+8F5372684FA5037D1B92D50CD9CB4F50AD4F8EE7D51F1C9E63C721CB5B9BD011
+6F0A8DD4FDCD2B008F223A1036D90F0F3B252487DE7898F9AFBB3A9D9CD49E0C
+EF4ADAD5155A98D2125ED5A3D3907F67301649519419F33CD942E8DDEAC1BDA0
+E90C431B198F646766A8FA9F8D1561B57E126EF604838C0C1966655CF31FB7EB
+C8CCC434FC1C96046D38203E1791EC824A3D7AED85C029288D4608CA7668A2BE
+484C99639F121845B22EEFCE0A3B808261921AA042AE19E641769E91277BEC29
+4594082CCB3058F90FAC4A700A8A827ACA00FCF574ABC8EB7DBCECD97F2B22C0
+0AA19E8739B81AF8C6F621D69B8E6F29BAE233FBA655A0AF5BDFD7F5C6B9167C
+6BC7AB693D45EF2AD999F5DA3CEFA39BA48A17EE6D9F2C4DAB91AE3F0044DC3F
+5D5506CE4675AA928B0092D6F173644F91295216D8BBB14CDDE0AD524A4D545C
+1B5E284A3BF0396664081CFB4F186A84A0D24D61E82F4767C1E55A0642720CF3
+909FA1AB8EAB78030B59BEA067DEDBD2F1D0340E790AB2777DB18248521934A8
+BB38A58B7F633DEA4291B0D5D13E9A882C974697CC6D3B49E030C94EA29B5506
+CC29C44D01B4751B453A46A9F6BF3BF135AE87A4CE232AF57B66578310DE41E0
+2A6AC422117F1963C4D7CC306BD25A6E724E51921779F22F029733122E23E2F0
+CB340008813ABB104380C80A492B3FC6D0BB07CB8D8409E9576891EF6E5C9D08
+EB8320DFA31BAFFBD336D0C2BBC3D3B2D30368B9860768FC080D30569C7F7811
+0EBEDA2962476113625EEB555490B8CE4C5F99D74ED10F738C61854CFF8B41C6
+9402E56BE8856144A1A05D0B05F4CB7EF728B2F4F5A439F18C3B68CEFA41E59A
+D8308ADC92EC1289DC84CF48D2CDEFF509A145BF945E1E00D552D329EBD2A7C4
+21D58082CC8FA790E981F4AC8EAB99950678FD3A7DA3DF13778681B208DD71A0
+7C3CBD0664B37C9EDC6B601D79A2C51FB54DAEE849F93209793849104E722D3F
+52DFAF7047EEEDDFE744787A5801E4AC2C3D58EC5DDC15FCEE03990C53B0C57A
+FC54F125A04C8E4A0ADAA725808C587E7DAFB9F784FA2875689979D316DC22BD
+AA36B306A1ABCF907B63C6476737B746099973CAEA8C1E2C5C41F27E0F7DE8D7
+F0D942E34E92F43FE902653D4D2EBB6F3B9F7928B1550A82AF234D45D028F429
+067652BD3D391BF423AE72B9CB1E8D91E898161BE3A7849D456A861A2046711E
+E934DC59442AE7D81661CE8EF727D8D7DDC0270E937E40F896AEAE6171661431
+C1025C53172F9D366834BA0054FBFD84503FBAE328B6FDEA180F8EA35B1DA937
+5CC3B8F00C206908C2FFFFA6A7AC6915D15EA44BDCF29E2BFCFD4A849535F19B
+0D307C696BE8205C7D84B9C77F02EF27D911056EDBB4080E4D3ED72788666CAD
+CD91B0ECE27A177DB23320A7FA9C31408B4D02D2A4B1CC6DDE1A6CAC3D8EC1EC
+2226EC98E51046D1EC26FA20EE62D24747D83CF4941DCE5CCEEC0DBE387149CD
+E05B19FFCAFC0D117F9A3E60DCD4C815228D98EF95EB559AD0ACC0D50FFDF714
+56C3C812EA5ADBB013BBD956A7C4CC0ED7D3E25D5C9AF5E626F18297F75D4957
+F5B0B33379114B903FE98BCF35C3FF76FEE1D9AEB711F2962276531F7380EE3F
+E368720E0292A170A15C5539B1FC7BB954EE2624B504CB8C805B8D31AC38307F
+0513606F09211AE64DAC447693B2A0AD15E9A64C34F5A911ECD0ABCA90E9791D
+67C6BD202B0858EF96E7722305B8AC02B01AB1706CC6AE875A8DDD15EE349046
+EAA65005E7866B506EDFB7A5A2AFD5C9E9DCC821A79EE9C1EA2C7BBA32A40BC7
+CEC26DB1AC473C8C3960ACEC581B37D6569E8C8C42950BAB7930B65E1570E3F8
+9A7FA719F1DCFDA45A3BF2AAB32C9A93BA3552608A61C623DE59BCB346E87EF5
+9CF025A87803161221C5C1C6F6B3403712C76E9D755C7BD68D7F2DC03C14CDF0
+C1BBED1D648B905B4B17037B7263C1EA7A7F06FAAC4E09E08483A8D714C19861
+327CD9C32DDF850302DD6DDE24912D00C22ECDF3CDFB18FA831A41A7488EC203
+F564CFE30D506F0829A96D35A7E09C3DCD107D589B627A15B55C5D6649126BEC
+60B88C55ECCBB4E680265D9EAB4CE22965D3B1AF759B01ACB0D0E6C92B6B4EFD
+A81E6A648708979487FC591CF09631310D46891423F4EC159A73E30D8DD147A4
+B0EACF6D45D18CD16CEB8176F03ABCB41F2234747B9733C8FAF34AE5D43D3BA5
+0CE0FACFC9B087F84FB6C68678BC6E76022B1526D6E5B3A48EC1A110BD75F45F
+1C4DC6D39F254976453F57DF873B7D635C80C42026DE020E5BAFE0DA0D54D1E1
+DC634D2621BA184347E5252F645A6A1DB7657C48124186F0E4C644077457C24D
+55753C651A9A7B6349867641464B515B821349C795A645420508673B93750D0C
+7A3B33EB1F09782033742AE8F3A23FC02284E6C03818FADD1731361542E3FA3E
+75B8D52B668C3E18A4AE967D0FC3157083D952AFB8144D549E69EAAC51C279C5
+E5D88A0D9D53013DFFB4352A1598FF84DCDE6FA32FC377306B9B92C0F96EE149
+8CD55E7B2445B86CCA7A547FA732D52D59025129FD8C6333AC0DF4F0CFF6287E
+F2036D5DBBB3B91B92F12FEBE0B61A313A4DB5A9CF0BB3DDB781A56FEBFFACCB
+8CB9D1D3DBDBC4CB6AAE6769E470582403CB920630221B68BCB625CD4605FA8F
+D3D5B7A1A28D15E44B38E92E906C138E72C15B86F64C38E23BF0440052A8C914
+54397F49DBED99D0AF7CEA3B0A05FF37C2D7EAE1412567E6776333237C31E3C0
+49949EC8BFD6E0F6446CE2D4DCD2C1524A288818CC5D159BF8463A847AE4A2B9
+CC8C58F822804B81B13BF4F2DEB6229C4F51F093075581791D02C36A13B855A0
+34900AA7CD4F1A797652656FE3A8425A38F421C4CC0ACA1CDD44FA6B31219276
+1CDE1CD63D6A58CE705CB56CCA1260F9B86E989019071563A9B4C274A87558CA
+6EF1660D574EDA276801F0057740E2C3B80D253D697736484D892CE1AB128B8A
+DECD69712F5E70E895FBAA927E8194D792A04AB6CE205E04E38A433BBB793FB4
+E8BBC4279D58A223C6673D909D6AFECD246E66A52F4CB35E5931D24C828489BD
+4ECAF621A220D8ECF702BEB01C4FC7510197D3F6D15321EC87175ADBA6434ECD
+2B5A306E91375CAD22CD94301763E4A8B981472890422C5488FCD523C9CB17DC
+ED22FBF12D5F7525D0D6BCFE8CE85B0DFB1D6F989C267FFBA0A996D309E4A934
+3DB54A9D29C88B9D55D7300DA3D46419256C5A07A2A529A8DE8BD1727281F5FE
+97033D861E0531B14E811378EC1AF1CC7EE9BA2B07D935843D3053F673979F8C
+FAFD59D555B56CE338F606747238B22BD62C42BB7238FEA335678D474A643570
+A9E7B4970E8C541CE9DBC7BF70ED7BA33639D6744A18379455029E934C95E2EF
+639C4848CE9A0879B51649FAB023A71782444B451F92A34CB8A124270CCF86D4
+D18EEF5C1D2B2A29012613851C49F50702D63BACF95EE2AB4D72B375E0A62615
+E0991E130A67ECBA9E05329B740708F1CB148724C3A6E5E3AEC1F88EBCA398D2
+1CA8827C977D72734310233176D1AE26C55CF2CEACA62223315C28FCF6305C7E
+A22414D4739A059F552F1F9372CCCA5FED4F9AC987942848EB498900269511F3
+F408CBEA0659B954F5F1B18AE4FB270213646F9B28AE4439D2BA2D3E0AAAA780
+5E530E4EFC8A060EB979E12191044509DA0C14397AFF949E12DC970658D5EAF5
+4EA963F5BC1407A32F3837CA6A24B7F3D60EB8E6222B702E25ED903F9D21AE50
+664A095009BDEAF4B78DAF94E5A55D48366CABF07791A1684B2F54EA69070844
+4F031AF8DF416C2D3679F8BA038B0DC9DD0400CA6B34667BCBBC07E62C1668A8
+35A8C57C9048A7227E672E89681B54D662079A189A9E96A3CA96D8DD10189B04
+1DA49BA2729F1CA585B1BD5C467295285D52E47CA904235A1A3E48EFAE9EB6F6
+01374125CE89D53C276858668CF45D2F092DDCAA52418E0BB94C2B8266B4D88A
+5D911507BB1DDA3D8F6E7C14A91CA11AE799EC42E993098E18CADA70BD2A1D82
+2C39326C6E3F9E84CD9758B9AE43D79BF99E6A0CD713E95B3D9B7DB90D127DE0
+DAFEBF850CAAACBD860B5DEF2082F1ADA64B44B193C4A1417BE221FDCA36456C
+BE5934C8CE3ED55AE3A11697C2D682B7D0F72D48976451D205783BE25DBD2507
+39C14FFB4BB828DFD187104F38A7F11D5F0698C11E8C1D4F107CACE573FDC4B1
+C56FDAE47024D6FD16A2FEABB434CA320300FC4B6C1B6CA08F76C60B7C08A665
+99F404DBA8A2A1EB18EF6750E4EC186E31561A3F080BA6562967546715859481
+7BA782940F5C5D06626D6F6A412CA7C13820EC7C1DF23E15E5829F698CF617BE
+D940523E4EE4ADECEC48C24297DBAD528BA1DCE7AC335A1D15D55415B108EFC8
+6D45030D27B3EA63B2B4CD771DBE66AE0218ABB1153D4B7482289D1313CEF184
+5C960B1E3C3C953912CC6F4521D1E15636C1545EEE457EFB87B88C9E43CC2F38
+6BC4BC96969F4FF28ABB06F4454C01CEF1B6DC538F1E832FC1666D977E5A881B
+F72F1B4C7DD4BE167A5535F1163A0706F9A0B26400178DF8A128FB5EBE6A7B81
+E478AD183EC06622B591337B9F1872AAEA356F4FC67EE767B34CB5A4D90702D9
+39FB846947F4096FB3DCF16EC81455164783BA0B5D723060DAFF411B68307E81
+7BEA1D9A47A5AA3D648E618C83C60F060029E6EC4D46B045FA7415BAB2AD0AA5
+ED9C729C24136F6AF61E6409C0B5CA760B16225641E268A68CFB8260BBEAFC77
+6626EBD97195E77CAB425CFB0096D805D9EE699E41680D095AE9FA10122A7882
+2F00F495C9EB2102DF0D3E61833BC0A2E468C5CF7AB430FDB7C0BE3DF2C0D230
+1580BAA25D65F599378D873165482A1FBB224AEA89C6BCCFBDBA42AE1C5DCF41
+06969F585CD3B737D1388D6359F5468D88FCD2279BDB270F6A858FB7D2ABDEFE
+5EE8FB79FA437F8F50237B92C307B73B0DCB808D07A9C3255CB9B3B17039CE5A
+288103D05D132863FB522A02CEE3839EF9AF7F07D99732F0B8B384745369FB3E
+7901166478F4A16076A1504C5E98D17408494E270BBF4470ED12B4332422679F
+759F1D93984D7E506D16950DB6C2682FE1379EFFA6F6C95DD71F6E55BE3EF6AF
+E0CB25388EEB436E6527806FC75484133F6E561DEB979D5C1FFEFDAF2A6D964E
+03BAE0BD593C2992AD84569C81050F7A793C5263E50C2F50B98C4CC703EAE17A
+6AEDAACE312DAFAF5278D125B6EFC5587484F61DAFF46B87B7C9B1EEDECA4859
+314A9A9E2248467DE1E54D90DD671660B9040B3E0DD982260822177EFD757266
+74A16C83A7FB168016A320D3DF3BD7726F1F4EC90EE5DFE810C96B099FD4368D
+906AE4699049EFD37E8EF058D4B97BF71106445AADD4FC6E90615A0066823A36
+673B8DE32322BBE861AE251226B4385AB28702831270DBD25D666FBB0AD7B96E
+A44E891EA1EAF0F87013AFC982E33D67A28E96E0C9CB99B9E4192536830D9901
+931A8CAFA41289633B20BA3BD7AA3414B6DA8D57CCF2FBE39920CC06361F075B
+CC40335DB9A0071CFF77F6B7BB47F3100DBDC9C4A58C2B81EC99E8E966AF3390
+E3FBCC28BA1D79961C8A1584266454DF772FBA99664D74D4A89FC82FFEDFCFE1
+4C9E4A04291E803D142E37E7ACA66AB279378F2F192FFB2B5BBAD18B95F03136
+2CB594A3D6D3F8576B90A6C4DAD6D6C8EE07AF682F925F01D0B26CBA347C03BE
+F3B0585CF4539FDC66915E22117078CC94D621F31DCB3E021998A5D6EE94CA4B
+E214D07517283D56973D8E4367392BF6C1150DEBF459D141AE0941C1C8C5CFBE
+E735D796E365A1B0F60BB4CF2801EAFE4889EE5F338D3C4885368281B3C95CCE
+251C28A90D318A8A0384439B38D63B94757252062EA44E88509FDD2E75FAAB71
+7329622828B2785C1A8B26351BC74237A6BF99216652ACBD4CCF54CFC8AC72A6
+46342F1E32D4318E7E27C7B2DAC943B3E72C472FC6F1DDA8684AA922516A672C
+E969C047E318B5E3B1270C1BEB1C4071A15BC81B29B268C679B41FC5E381BE33
+DD95F0D68118CBB60C521E5CB2BA46A10E50E9238163713290DF6DD8A27D3813
+F871C07E725D4518013D9A84CEC96782541E5580E33C2EBCDB18F08EB4655A46
+507A8526DB26C854928B81FD502B0CCE4A68943C12078F57C10F4E85FBEE1025
+46D925B8B3B447D4920410FEEB9844FABE985F9228FDD9F58392F2F3BD650E49
+2E3AD5A14984874DF4572816931885CE8A448EC95BBF40DDF4F85653AD90A88C
+C4A879C0C7596E61997B972E8A55E57B17F802C738E5C7A8FBF6424F8B131B23
+CEE3EA3747DB066246C250EAD335A76FA166ABF75120CECB59076AB31A51F176
+57176CBE8C802A97B0542A5CFD6D5E6D7EC848B923012E45D9F065BFFA0D03E6
+788B68BA4DE51DA37994948F859D41C28BA939C3A82BFDB44DA585AE80B8CD7B
+A6EEA79B70BFB4864E06F06A9751BD2D2A209D150D7135E0A25D67263EDD2A7C
+C63B5B76ADB05A2BF747D5699036377F1A645372E5CF6497D8D4465492780B56
+0D7A64F4AACF00DD611A0D4AA2A1B4ABBCE41B0BF87A7351F26E125166E2E07E
+2E64639C4DC21B996EB744C784A145F80D07676331178ECAA4967195803AE02D
+1A6A04B38D721323251A1B1F656498F5FF255E4F1632DEE1A8C2B197CD7BD5FE
+3819B1998273EA5EF8EE032E0638F6DCE419852021D098A19CBA9A2B675BEDDA
+B6513BFA1F239FFC92CEC9ECC612072E87FBEF1ABEDF6804E605AC8979E970E1
+3EB524894E3949BF090C1BB477C45FC0054DFB6B6816C5B0312BB9FA09EA87A0
+9A18B9B5E0DA687BAB199267EC6668094D1FA853632DE7124CEAB78BC994D6BF
+FD8BB4B920B89A68DC0D60BB73AFED84D38925B4E8C4D4E239080FB47F44979B
+7660A9C57F1CBCE1AD69AE3E7782796EE69BC910251DF8406ACF78CDED5224AA
+B13F1E17BB454BD4B5AAAF0143570E5FB2236DD096A2607B8D24EE238110486A
+0759B4AA276E3B5AE6BCCD2299EF7EC5C0ADB9E3A838DF0A0541FC56F62684E2
+F165BDE1EEC719A7DD44D7251B0D28C63304BA3758C76B1FACD54A4E73C9B32E
+A49366083906EF8927B6463215012B3927CB643C0292688601AF2348D62292CD
+5E20110FDD05739D7EC6A3BD1B166DCC421ABA7901FB926025EF88A54B0E695C
+38E9C894A2EF7F33E5D0304268849FC3D2F972148ED6C631EA375D67DEA1F8C3
+C44173E5FAD943C81B72D818D7202AB20B77EA0299D4FF7FBCFCD7BDB0C9655A
+B02646E5BA32F6A7033BEA306BE69EDF532347B24DC7E6BA226C6005EBF841E4
+16430F8B4405B2ED05003F10080C12CC74EB07708FDBADB821BFE0DE6C8A3278
+C2349EB88B977D15639695B35C35235E00862E70D7E9BF6632E0F2E342FCEE2F
+16880A993EA9BF5FE7C0220D844C5920A2C334ED030FE2D062F8549508589F66
+66B2E4F66E249A01BE6CC56E73AB21117213B7502DAE7A2CDC2D8788C24F8F40
+74B96C17464510BE4F2543E536BB32E943522E9113DFBB56096A34BCF507E7A1
+B17451E6AF90ECD2A3E0234FF01F93BF0BF1300FAC48AFAA064419428256019A
+A55C94130C7A4AF9ED17AF615FFC9C10517B0D210C464C8C0E2B344B31D33886
+5264577F17CD7137CCED2612E1B01DBC93A98CDCC6C83A858307703AE11DF924
+BABC5FDE240C80CB0B4DE1672AD86C9BC4773E95182C70A6E809D336B71E25E5
+17C60BC4C8182FC222EFE5419EEAAB8CB1C04750631F7B4846D75651244286A3
+3F87AC81C3DE5937D4545937DF166D02B0505EEF1F744A2A955DBA5AE1FD8453
+8E3AC7E38B333C7A741A58472B543C870CD2885E812FC88DC0E3A56D3340144C
+B6EF013F04707315145E4B41142BB00A2BE5F6D17EDD30DFCBEA3F099010C431
+E2D5BD261DCE594B5E0FF7F1E836E88494B7489BABC9A230A7324E122F40DA62
+08922179B7EDF55176E4D11F985E6F3CE8B6695BBCCFF8AD96CCE92C0CE3E8D9
+C27F103747346DE482B3A922A19BFC5E18C3556B48BF53EDCE941744C43EF096
+E36866CF42D145087DE6A41F205D04A802E2E26EBA56BE4BE182B460E8A7DF98
+8C160EEF6FFA866EE54AA2541B1595F5B1D0104BCB313E5C886A0519311E2413
+CC40CF96EF3E05CCAF796A3FD36BEE034878238A40C77C6205904A9ABC8CCC9C
+7E1AA1FEAE4732BE0FCB9BFF9044486A232D39745885AF66470F281F7CD076F3
+B11CEB70BC1215D944D65357D0967F83E13EBBABB3576B89AB755A14A4A8D292
+5FAE31DDBE3999E4EAE54E5892C6087C4B6436DEE581FAFD1F33A8DB8000B5F0
+F644C655674DEF2BAB3105EA12B5550286FC001F5BA1A63F46E30A2EE663C24C
+F5390CF05D72727D7AF09433ED15A112E199447E0C516C8D2E535D38F5EFF96C
+763F51F7A8656D90DA6AD7199EC102AFC5D65DFC505E51E7EEA199D39C2CDF80
+B2CE3E35B688B79D566F1737C588D9CBBAD02F9782C7DB3439DD85BEAD21C70C
+5628EA55B38F9D2BEFA897974E09C2413E9C51A2400BB2364D650BF71637E7E2
+99DF9E4BC127FB7367DD9F74FEC16E339B19FB70A20A4A2E4874E110880294CA
+C90712CF08AD98C8532E3B730962F63C8F8D3DA209A0E23FA25DD02421B4D4B1
+DFAF5D3548FE36B0A1637ADE5CCD1672FBD40A3D1CDBB9499B4C660A27F619AB
+C06F37FD8EBE08C838060031735E43E74F649456956B785270C84C96EFA7C5FE
+2404D77480F5FEE892AF6534497C7AF401A5C9AD95B4B4D186076AB0A32315E4
+E6D7185675405E6E483571A3CBA6EF76403567F282B2AA8FFE99D988D612DEBF
+7ABD96797B6404CB5CD95D39464213DF90944C3ED33778F3EE4FCBB1A5F961E7
+9714553A81472BFF2052561C22720C0C8493D1B2FE75019255AA8014F437FFBF
+380BD498D02D7FA6904B4BC147C8D75C4863DCEAD5EA7E6FF41C609583BB7E99
+03ECAE65264FD63E13191FBC5B26E034651B737000E6B894C373B58DF4002F04
+E2F7ED898A9B029B671A19934263D92A0B8E3F7594FC90F62F937842E614689A
+238062D2BFB7C44482AF7C1556760125086F34A76C83B27717F322D190D30308
+EBD2A7BAC65B74105193942208DD78056DD569B2BA9FD4066A78DFB0316C1DDF
+C1B960A6AE6BFD9F7136870100916A9F8598C1647E1A9F86A26A83111433584C
+D0F4804BA5C3754AA9C93A9054C4591D38CC05AD1433EE5318458AEBD77ACA20
+5B1FC97F62B5A90E3B75C7A15FBF4EA4B0A8D1134E117D38C82781A68A3EE04B
+80DB2BE38196EFB1CFD47A5DC9874A15F21D156A23DAF2C7D31147D76599F8FD
+4A575532AD29F7203964BE4C153AC914516D33A54F97B9BA83562DB89D40DBF3
+4AA7BE547EEF84D1917B9620FCE9E5FC8771BA045C6BA72DC3CEA88BC85FCE2C
+BD04E17AE45A9D871930CC49F4F93447F43312888794162962428B915A6DF5EE
+0758D1D24AEB9792A9AED3489EA635140874BA43FD7FCD56103FECC4F4306C09
+8F06A031F5C639184AFB5C97A5ED69D6A974D6BA2144B4ADCE8F1285ECE7AA41
+BE46EB5473C5E6327ED45E1BD5D2721856E2751E85112A44A04F54556B41DBBC
+224A1C1C434FC53BFE371231544C64E64BEF27AC008BD468B51708C46ADA959D
+68C73A16515F09230DEAA0408245960D54D12C1E3AA868E5DDD8ABCAC5363927
+4C6EBFAE8F7B31C89BB7E1196C4C9FC9AF846006E838F7245B134766D83698D0
+85E95121BFAF5669E54B918FB792E8F7EAD1FD1EFAEB2AC98A1144F4A2081500
+2FE1E7CD3E1FFF00BD79CCEBC18EB0552EA5776E6A52E1AA30E3CA1FCBEF057D
+EFE38381A5E9A53B3ED386008C162188E393E81EEFCE3D59300CB1E5845150C9
+35D129A662146D504FC1DC23DB26E958D628DD312A2682654356C3F3221269FA
+A8725F1D52B5CFD7ED9FCBD8F4D2CF53CD7FF2BF435E75732BD9868155B6A9FD
+4511BEB18944423CAF5B2FE4EE6AB1CCE21927537FF3ACFE2D3344A471FEFB32
+D3E944E0DF6115BA76E5FD1C6141FE96C397B59F7D3270A605727DCAF2BC0D4A
+AE8D84FDEA284931A6DD9AFF9CA3AF16D21187533B45F77515F6FA432FCF53C7
+DCFE593148D2286D448A5922B774F0200EE756E982B3B4F8050D93E031488398
+8BF46569A6B233A0B2AC6DF78385C9A649DE07BE3CCF13DF7DDFE5F163D523AE
+46077B52147BC1C7BA80BA33607004F0B289CAB47DCADC7466F743973A546CEC
+939AB3A938BB362C529C4F71232FB9341EFF9A7CDDFB740BEB573F009E19E9AB
+79AFECE39A6D28F0A70937175399A045C2C1AB3DCA0ECB1F7167D07440F53910
+B8123E6C1E5EF4F5A1FDDF00D1AADBBA2182D35624A8170D346E40B117781931
+C79988553558F7696EFF44C0A4FBE8058D7A94F0E7C8C8B584E6790D59CDAEBA
+5B634EBB57DEF241E9823194818E6DE24985F2AE341E878C9665827155CC918D
+7C3CF4E508303382907BAE5DBFF39C75A49103AC5E604FF20C2649C30A70BC1A
+63B54D38C541D76E7616B6132C94D9366ABECB27D33CEE252FD573BE533721BB
+4311CB5557376E17EC4952692396BA291A5E593396441707B48037A84F515C13
+C58D372418B8DA762B731A8B15BA74837F2A6A1A1446289B247E7A6F05081B32
+E928FA2A972826D39C4A2CBB68274054BD284EC26411D07CE7BC2D06D64E2690
+C724C07CD5BC7F2DE4859F83F548DC0CCA56B9FE4E1DDC62E4B943B9F395508F
+F98E980279D2E7C13DE18A22A76CFF59814F2FFCE93978552A0F4E01D78B3C01
+B45A9CF8FDEB42A166A0E7678201526CF4773259EAED7B4099865DB5AB295C98
+FCBB1521D8624B87EE1CAC6B9B460E76D4B4E4D0A4BD69CA06A02D9AE0DC14D5
+55C47B7FA78A0BC299545C89FCD1A5449D45FAC62E38A42319DC318AC386563E
+4CFA1E3E137ABEF3EA7D9DCBC7BCE914902EC7D7B1AE6C9E19E739EBF1BCBDB9
+983829702832E22044F9A5B475718374F1A60FA48508D815F6810008C1299759
+EC776C0E70ACE3F719FE1E9DD554CABCE3937F54F38D5CC3C1392070A07964F4
+26B7CB30915F7586B31C04BAA3CA5EF956DA352C6A8A2A1356924727A8EB829A
+48C9A8894D29C2C196C0B731B6724BBBD84FBB94AC9B9DC80C435C5387D625AB
+6538076BECB3C21D19FAB3551075687E1C43CDD9BE49CC506D3423B5C2A6754D
+87CA10D3686A4FCA91AE60466045A328F996EDDD3918E2F56C029D1992A2A1A2
+78B2E95B99C822822F3630378ABECE2C2318010BDD2A492E112602BA2E092693
+54DBFD0367AF9552B11E043BB544644B079ACEA1BA6123CAB40F9E7B2ABF6969
+A8BFED3FA9C3CD76CE6DA595C63956DD27A87F256A7801330F603F21DC8195DE
+04BE9EA43F308B2888F5EC1D51DD43C6B44363FD277DB689FA2FED1D4B587210
+3F2B7305713987C9FB5B6992F23646F5AA9DFC71C0B3B411CBF369315255C1DC
+BE9357E76156A356902148517DC6EEE64AABAFBF106ECF4E55485756C801AD0E
+81961033CFA0B2DE0B96B88B38DB562AC046F65F058682E139C0F882CD795096
+9557336AC81FB537E37CDBBEC64975FF3BFA899236778283770D540257D3524F
+8B5ABC38B9DD4A240502ED8AF2A7496295A793CA1D6CBA7C2C50E60880B73E96
+84E0E5C85B07EDA8DD48A8249D6EE25273D3510333287C71DD0ED8032EE04848
+0410C1E0785B071430F4053AEB3042D5B9C3E34E4B854D42EE5044DE5941DFE1
+AB6DE585C02B5FEC52F0C565E6A5635C377AA57607723A9D246639CF06A2F4EC
+90CEE93C2EA2C419F3AD9CAFEAA6B2ED3F2D4F9F6330FAC9972903786AC09B7B
+DD51932A1378BED9BD5434078442B9C13CF156FCB4060CF81F98D5EB8011DDBC
+049806FAEC29F3841CF0BAD050713FF0CA75F4058F86C388E179710300A21312
+72915D0C9DAE32B1D6C092A9E5990178E8A11C6A2B525E0D9E006C135D1BF185
+FC7A58576F23CDE582A0512E54798B634B2E5A06F4A107D2685EC1578583515D
+19230589279FB9BA66E6DFE827387C5FB1E491CE19739A4532C5CBE869174A29
+F1E27164210F9D924B835E9CFD9356643C3DFEFDD21D733DEAADE25DDF15EF88
+17A9360BB2281613734FF66126A90DB9AE008F6DAFAF9DCA23A882A38A0F478A
+E6465F8391002417637A87303A9168632C68A031EE4DEAB32D7E6FCA721FA484
+3D01D2877B2CE55A8F3665388FD2791200FE69D692EE6C266DCD65014A9BB1E9
+27C1F5E6857D5923F56D3AA916E50802FFBD561FB9894C1A75022818A6CD8EC7
+06DA976DD2609CF7023B0D2258311F321E064D956CB8D55C1A4CEE12254DD6EC
+68680A52FCD777EF99456BA60807741E0845C47E4F8A93E11F4CDBA611DC4B50
+3B5F83C5475663090CF0450893E076132C6D25147C260D4D731A03C715BB80DF
+727864AEA432A5C95E688313C1C62C95E154E00E5F00713D2B27E2F64F7200F2
+C52B3C95376242DB2233B50B988214FD47A88F3C4F15001EBBF541BE75CDC0E0
+D4087F5DCF70B0814207C43690D2D9A2AF382423515B7277E4D3A990D4CD0F25
+9BDBB2350A8ECDE52D641B901E94E524E9FE6612037EB6EAD9C3A887B45F3B02
+2F60C45F88E147512CD1D4A967AD6FFE126F3C4E92FE3117E38FB2A662D90B1E
+12C80B32C9C547C7EB719063E25157F726885481D0B2EC9472A0108693BE337C
+2D7EFFD1285B4F507316529357529D3245AE2D18A4DDAE37225D682D8D20574B
+0DAA73817D1B70CD37B2501CFD087C0DBD704C544DEDFE282788DE15703E9D81
+F5A1AE011E6DDAE53728D2FAF938EAB8ACAC0D07F32CE8E8C8E8C0262A76D9DE
+B533DA266E44B2A36DB0E19710EC9B9E99E9C1DB500D0D8A293EEC71628E9842
+A8CA8C99F9CC5B6B26E4C96F7D840C84D827299489D0F9C7E952A91F78EDFFDB
+83554679AD863C2C64DC49A33E74AA4F58DDEBC9807A92372E227EC0CACCA61C
+629C34C083A21F278CBD8747BBD7D00AFC2BB546FEE02DE9892EF88FAC0EADD0
+4EE10387D6386E77C462864180AC2F655ACA5903C751F060835DBC1F72AACF0B
+F4F48B83FC85E9A3EC662222907A796938C8CBB946801696FFD8630E897170A4
+759BC269834173D8EBDC70CB16EC918CC68DBC61D8A53EC5F6F63732FD4D7EC6
+234CFC1408CEE045CD2739C71BBD175368731CDF9CC19DB87B7B974FEE39BC9A
+80948277A9676968840537A4DAA22EA9D970FC096ADB6172577DC54FD7B57BA8
+7925FADBA77E5707C51B8EC45FE227B13966B45C39DCF0F315EB7A6149134803
+E18FB6CB61F252E09A7720804C6941615CD2B01FC5F8B8E12D3DD1D4984D0E16
+0E4E3342253C6CCF6EF407DF245C19FB550CAABF4A4F6B0E251D2EF04F18BFAB
+A10FFF86ED39BDDC366595AA6D4B1DABA39FBAD8620E7638FBF54E34A26487D6
+2EA281D9D2251055C510A401023A14F3B97193C2B038FFD1C728AD75A186721D
+23CE5865389B0E47DB6F3DCA265B878950B567895A10EDB5A6B3F3FCD30FAB63
+C6D09D90D2FB1C05D8839D0B4EC950006F996447840C8DC888EA71794A23C27D
+D77453DD43121B9B78FE67913896A0B65033060072CBE1992DCA145C1C88A88B
+B516B239797B9B709045266E742BF9907803FD36953C9299BF788D3BF01E9134
+9FEAE5F30EE1A8E7449093FDB9992D74493DAB0BA265D3974992F5D4ED79D6BF
+99EAAA95DFC89ECB4799BAEFC10012A5610194CA9DDDCDB009BD6436BF30B1B4
+401B2E4B6FC0EDF60FB188878A822073165F0E0399ACBC7E72770F960AC46061
+F89852A0205A8A7813450A60A16014AD433C45388A3166C15D900597B37DB638
+9DB6D76BFC3395CE83ABE084B5DF3E616D5E13CA29C7BC6C19737C4CFA04B514
+7727C2383D4DC36CFF04142A1425D1A420DAD27EC6A779FE4FA9E8E44B0A71AA
+2DB0DD4C5A4AD2EA39F0FCDBC0CFA81644CD6F86683FDB5D97E7FB3B4C5C9BF0
+C3F0E49BB2031EFCC6770FF520FC24631DF7DB8D2B5A7E672F6352ED95C3EF41
+80B53CB4780B779A2C870E935E1F774C2B83299A9FDD5447EE674A157B7B51A9
+DB721193CA4545B4EF0D312DF015F1491AAF251B16872B689C2938053BD3843C
+9E4B4DA7B1A9ED3DE85A2D848C5DD26F4B3D6CD96835915EE86169803C6ABA5D
+BC878F9502190EED465E574E5730EDCCA3B4D5FE7B1BFE3F5AF5FBB466475A0D
+E6D2724FB9C11AC63B3424F422DFFD3B72A168522CD943D7EF214A36B19F3C1F
+8FCD50591ACD2E4525078561EA379982D47A010D6B7C325E8566BB370E6188F9
+40F7934B2DCA11D58A5EA2A42FA79F8F5A69E4C8313E2ED201C6AA5E7FD5BA87
+3F819A807799AC8084E2FAE69516236284A571A5A3CEB8CD0A73AB1D67EDE888
+1A69184D68842D02BACC239C898DC171A8EA05B8D2811A865BFE2AFB428AB6FD
+012B295903DE73A0D3A393E0D9D766FF470401C335AD8623A5EDB7B0F35332AF
+CAD6E222B741973EB894361A862317BE692CD4B855E4042F7228A83C14CA28DB
+926EC8CC9BFFE3BF98AE8923E6B6BCB248663774FC2DA52C5FDD448A5B85BD76
+6493998AE13C84B4D8C1CA3FF66982244E7197928E8CB91C71D60CCF1F6BFF74
+1FBE8FC9E0285ED3AB5610393B7D11301D8945C71B3AD01F1E7F97E9BB9D8737
+C4D113FF9B84E8D84CF3D04C01AD7E9F586FCF5B20FC9662A5D6440478134FAC
+BC580FF2FDBCF7A494AD744A9289B8358D2A14F6DC4ADC0A343D857D2EDB65F3
+4D97B49CC92601B90D63C5650F895A2485A18617B7BC02EA2A9FF1E0D777F393
+D7A6DD6AE36E73BFCB74560E398583E0B716650B24FF5F54AA73346A01D76967
+97E8E1C8B6DB6B4BCB511EFF3237A40960F3EE230EA142EAED3F73CD0B13F23D
+A1D51F490DB90D37ECCEE52B9EC135E26F36E509535752FF6F9135A1DAC1AC81
+3701EE34956ED7BAD6C8CF1D70B9CAEE2644F94B10935F9DD1B03C5D356AC0AD
+0B6F327DA139D31FF65498675D193540EAEFC3FB8A119ADC74536C152DA82D2C
+0B523263DDC88E048ACC64DB32B259989488476CB0D351243A09A2BA6697D0B0
+6C8D52A51C0F631E9EEFEF3A2042A2EEBE5046FB670C75B4157F7B5AB507FD34
+6F52BCBA13FCDF4C923DDF9908ABBB26521FE2A7F9A0BAEB7EF7E82830E596BD
+6CB249A0F61C0FAAECEEBCF556846411E352F468F7F6B404B3BD3B92712D362C
+4A84545661FEE4B5FA52A7A7C461B9F7ACC3E8321B30068F609DA42857078152
+1A00EC0B51CDC27C8B505B00E49BD1439EF1C861173182EA5BC4CBEE7CF73255
+57E6AD9AEE58B43D54F6E22DB3B8F5F9D58EEB756B672547B521CB7D82E78B26
+32C27B3F93E5122482F87852C2F357E666AEEDDC369BB5DEA3E02EF8CC69DC4E
+31F677ADE63DE168D6A500055E06FF746F5FE59864319FB3E49DE62F5E2D7005
+596F22D88796164AD412D3B254E8D5F7E7CAE3EF1D35D67733BA291BADDE92CF
+70BADEBB6169228447DB4A99473D865A7E105DC43421491AB8563C62C215EBF1
+564E27BB8C008B2617DB934E0665D7208C441321AB5EFE9FF1743C357A9C2E5C
+4AF4039F16367C6B9837A08924300E6ABD2AB033C146DE6B2821DD9172E5D7F1
+53785578BB227092E8ED1BBB8E0CB70C2E23E640AF20828C09FDC2421ADA6DC8
+2D117F0E3DF208E70F00C9C410E8F77FB1221D1C07F6C25C1930D0F2DC601025
+EE0B877941CC9F82621D4712CB9DE0BAFFCCA38DB1CE1896D6A5FB876CE944CE
+97A297BF3468B264B32B7C8BDF5777F197F64EE9BD2C6676BA50752CFB9F5051
+3C14D6D0658F7D4841B9F3C47B9522E1696F32838ADB3E877FDF5339F6721A8C
+7F39D070D9912AAE0A69B6E1E27F4727513D78AD9F1128079E3100D0B559B179
+FBF88885A0681A7847F26D70D8F7A3286E4958DD615CED53147A5A50D06D55F6
+45808222273C6F6A972D49873290654057517F1E067197C5A863324BAE696A25
+F250DC419B5428EA0655E118F77B1545494C94EFA32D34434C0916BD6C62F9C1
+2506EC7CEE3456B012DEF7C87D19DCD3F197047F3C57B2391A238839884A3F19
+CC0B1814255F4DD8977E61513F7FADF4BB98315C72F84B4792243022B827DDA7
+FEF9E1434C631FBBD0CE34CCCF4CFC655D0F9BF1E22B91FA21D95C6AD6B0C098
+E987D92C862954B2CFD8E8CC0132432A40ADC155F8A0F97FC03B38B9738B4317
+CBDBB8E7B4BB929F6D39338AA69A5A11BE27316BE370800C82706772CE33E367
+29A80B24D41F520D993098C4B04F0F62F9C74679BC076706F0969545AD65D6B0
+44900379A36E940359B6BCDD0F3F5FB0A8F30BD5456EED4DF5CE72F7A7B93858
+14BE51729E4F8AA97DD6D134279E88C3EF28D61D7937837DF831BC8A314F2D3C
+1353E96806AE841A57EFAD644C8D884758880415F91E7683A88CA150493EC28D
+6C7272E3465DFC48645B2F722ABFC1943CEA4B5ABCF8D76C3D032F1B3264E7E5
+06690EFDEBE83EBF967085035A199297BBF94EB3D884AD4C0DFB476B85E6BFBF
+F69BCB9E57ED6753285C36AB62CB8C98E676D4D23C44416DFDA957CB93EF7E78
+8379C6328FD6711EB9B45D10681B56591EA22DB43DDEAFA65FFCFDA65075C6F1
+FF96A492130ECBCF265425FABDE849C62767F6B36895CCB19CF177B8BA4C7163
+D9DF847A42072F60B3911D8DA23A30D63C7FEE986F939CB35F7C47298D6596F8
+9BD7354FC35915C0CA8CF2A60F2DE21F355C74E605DBECE35A70FA12BDD3D915
+729B3D75FC8CEB2BF67DAC531BFD24A2E975375F85D7AC7CACCFBC62FE51F11F
+F877377CAA80F8FD8DEB1B1FA7C1ABC73B88D4ADEF4D045708657864418FB434
+7DAEE52F2E2AD61680B4E5E229C12EEAFCEF8184B3B03D16BCCFF6E0EACDE3D8
+CDC8D9185DC2672784EABC5E55C8F45AE77BD18C9FDC3189D24E3C93CA20A916
+1750AFEEB67F95016FCEE6BF60016FE2097AB01CA18B0EE0CEB254976858635D
+13D51A80F202A59A66B54E81972AB98BF9BC188EB653F43FD0EE5E7740487B5A
+6102C31D939943905FCCB91C95F54E69CEBB4F4A66027B2D03AE23F09D91B676
+4EAF654BBCB61F084EB153BFB0839D882ECDA35D1AC2C1863A3C5F0523FFB7A1
+A707C2D48E8B2F421A192E898960D888212D488816628740CD9F9FB6EE1DC21B
+82725168913244FE38347B234317F127026147CDB4BBF8BA9274C987193DBA07
+0DE6596DE26FAB1618D77E552AC34F71D0B77AD262314963C69EC171C1EA0706
+905BD2BAE70C9806CC263DC44FEFD2E7742538B2C62D782D6FE9AFB6464BD9F7
+7C537D1CB46E93F998D0AC153BFF65D71F72DD0FBC30E427C94BEA08A51FEDD0
+E9BC9C656715B761EED9E0DF6F1430BBC2F5FD6F2D5A31FEA89F7D3B8ACB3524
+56D36998729CB9EB6C464A709387869BB5D9062A5798B9C3F6906CA8E9C1A53C
+BAB4CFB6D6CBAFB766754CA2D15E927872427EDD9E73BD16C3BF4DCC479B7550
+1623FB8E04B11986EF4A3916248BA3328BBC2DF30E994B20ACD597FF14B91032
+274884EFFF7E94BDE8963D41E9CE9F192C84AA7B2FD2F6242B9828F54759ADBA
+352CECEE86152B06D785DF2781CB339BB1B1571FB31D18C3CC831B15736FB91B
+3C95834BF98DC3B42C9D32804F0E1B0418C30E944E103B1B381FA9B54CC41994
+78B4BFFE0445D1499C19B4577513B2324B7A3A752047C36449C2EAB3506DD87A
+A5A7FAE639C0A70E71A32DB71FF4D8C741A8FCA4A26C886DBB89AB5ED74F7B53
+025F00F3E5832CAD54696CEA99BF7D37950143F74A1A31B139374778438D0DCB
+75D125317E14B837147FAE2B7DC6BBDE62AEA6D74C7D8B2EACDEFFB5A61763E8
+5CD01EAB644B4FE0CE573B681C201BE621EF353ACB26BBC14DB249CFB079F488
+1ADF1C4E19CF04159792E40A5E63EB9DCFECFF901DE04D02604C195C315AC187
+34DB4F6C850E9BD424D3971CC3091A41D5B8F5020B3C79E72B99A1CAE66C959F
+55E4C6C1C1C34DCEB68E8806967C638D01E8103A6E886609E5276FC013ADB053
+AE2806AFD0E6CDAFF0D97E75AFF72A027F2817FEB32964ACD45FEA9534996A50
+53ABD80249F5890C69BA0D650BB7F0AEC076CC809EDA4BCD8265F334DB581361
+329C2530144ED7073D99EE1959AB477C6149B3A6547F024AF983BE69BDB9BF4D
+827728F2423F648185B1FC0AC9C7ACC727AD43FDB6B0D433C8172EB74B8B8AB1
+8C0C2C0357458E197A842358705883EC22E7162967172C0519820D5994DF9D7F
+D50B52AAE696F603985E3504742D31C0B69D77552E9396F18C71DEDA17BFFE67
+E1415DD4BD373819A33CBE990992973DA11CEFBE7B81DC910273B315B82B8861
+63B2E66BFC29A213D5526427B723B4856DFCF3559FD701F77857812B0C6C0FDC
+4AFFAC54B1CDF29E882BC2E2E9BA0319BB084DA04A82539AEABE7FB793B7AB28
+E755B8B1CB2F0EA0329B29816B127EEAB2E16B99B9FB1BCDC5ED2A5322F3A271
+99A1981B3212711FE1DCB32D0638EF932D00B3C04F896BF7DC7F67EF8F3DB82B
+0536D186F24BF7ED544AE148F24F6CD5D81059F55AB8E24128F755991F89CBFE
+75DB53CAD6129E392EDF60FAB2C90396568683A0C996C46358975676C6A8E3CE
+131C90FA98570DB4E576B4F669CDE352F19DF7652C97F2357C4C8F0716E5C290
+1354DBE5105A874C105F541DBFD7E6A63B1231BDB998EDC392678D1EF93183FB
+0815568798BDF68665F37205546A6528225B3B91B3A80C0F433C8888B45BFF9E
+A972D7C29B2647DF29806C4113613512C117061E7DE70F763D097A7CF236F371
+4BB3BFDE60B73EC884BDAD2E7864F24BED01210DA9F229F7A87D3CC0B3AEF75D
+D8B763EF2B7591B8D2CC201A635C82B771BFDB42FA533E321B587735AECDB3DB
+071FAEBC9ECB06F06A0EB364ED723D12EB6E7BB479AB013624ABD11060CFFFF3
+5FE5CC50E86F9224466913EC8167158FDFD81438BC1522685CDE8A038F0C8A35
+8AA1FA8E38ACEB99E18B55075D594DF39FF874DE7E7E6C95C677F35B2DF0F203
+B78369144DD99484A35F26414874463458FE0F6D2C63481260398F5FD319DED2
+19C9DE91CE63155DF12CE842E67B8DF8E61149FC4563C4ADC280E564505F0F80
+2B6CD6BCDEC7AC194C372BE1A4FBB457739A8AFC4A7727E37E2D3E5AA30E7461
+FD43AA99CF8EC08CF47CD67B820899D75935C6DFD775619CA2D52E4FE3A5B0E5
+3D1231BC641544611EB461A1991FC02E040C574272D428419F6D0AEF4285DD7E
+4731CBF498243B66ED76F66CE3F33DC996BD10334741D351DE2294D268EF045E
+CB360B89A5E9690FF21C91E396E686C67B5570A1FE2182A5E78DA735C70162F8
+E978C1E449853FA9B6494F2C38F5FF2A27F8E9DA96EFC069145C844402B0223C
+CAC1AAF9E74C8576E524A2E5F072DA0297AF5AE4F1B0F1E3BF24989DD836C057
+D18E755B8296E8402CEDD8F34A258ACC0D34D341ECA9889F4B2A06FB778D591B
+157DDC8D7F54A289F918E980C367E46575F05CB8C847000C6CFCC939867C78AF
+8A0980B0352250C063F3960D06E88A86694879A6DB159C2C5CF831ABD393A174
+C9BAB470B7EF87F10A5C3EBA5716279D525D51323BA98E262B1EAEC96A61163A
+44F84EEBD3CDE74822FC6ED53FA7C30A4167B1BF8BB9D3347665A33DCA967641
+E4739C8A7ADC90369E7C236D812BD03144A282176D5E906B55D1274AD6B5ED2D
+CBC01CAC7B92D8D919D25D80F0E0CD744B33F303C43E0D9F1F0E778056C43E1B
+5A300D823B0070C69DDC9CEF534DA19FFEA924A6D20D50D3CEAB46949288EA59
+8428450CE0960400BA1EF843C4D538C6A2087D3E1DB7AD847898602ED66F9366
+3F8E07233BE8331D36C159E8602B8193A5534030BEB136E24B24886D063694C6
+4A86C6F0B74CBAD19B83C2637AE35A07221F79860B87754A8042CB7489B0648F
+50BD0B93ABE34188C91AE0846406F063DE6FC2FF17D3E39B758A9182F258E2F2
+8FAD163152FFDBBC23B122523A2BC4421B025B0D8E876F80F12977AD02F2C393
+F8DBA9B7DE3D98B21C2FD1BFC42AFB3A6B0C303E94EDEE21B704737CA349ED48
+8332A075AB14489FBA412E4950BAC4F79BA0DC7EB6AFD1D43311E04F7047C851
+02612F1BDF9549A1C5A4E096C7946749A9E6FD356FAEEEE03C196042B6689913
+2912AF6EAE06BDA5E9F7A85CC503E22008CDFDB0F51DAB9C7821BDB79D1E7477
+16E244E95AAA34AD1B2084506F7C22CE2EC64C2EA5E2E2424E265173B01CAC83
+5A14B1FA3CA554535FB71CFD640E6F04917771589AFD81CDF19B80F2338A462C
+A7931133B7609357EBBCD05DC82B6909139C5D9ECC63511CC7FF28601260C7E9
+B3253E2B8655135DF5AC5EA5F037233C61495895D1499C5A00B13A90B8B3A886
+42F3F12F7A902F5520AE4F8E5AD9380EB5063BB93D98476969FA47F2BF6EB1A3
+94D15CB620277C1D586661CE897F3526DC5B52C447FAEB44FD3377DCD023293C
+CD7A75809CE202165BBDD0311E1E793B9E44C747FBCF9AB319C9F3BCA0F65881
+D85A2549005C27CD2A477C5DEBE1BCA541DFD153BD6357215CB195A53CB1AA0A
+636FA25E28420EDCB036BDC3AE3D522E912C00EA6061E8EFC7176DB1D106BCC9
+F7420AA98E67899D2AB3B63A14B966D06BB785067DE6EDFAEA7567367DF1B9AB
+24C2194360006894B979EC31B09E92440945036AFB89155DA483FD44C1F9515B
+4B576CD51A079C22C668B72EA35E21930B701E7AEC08100BFCE2891AEC0CAFD4
+A71401645287CE15CE5C4A94409B207D1A8B13DC9D1CE2CF6E09696E7793BC1D
+8766A4FEFD11FB4A3B13B32A5E994D010370A0890D85A500FAB60F60D8EC607D
+CD3B7657B32A4B99C89BCDB0162BDAEE9CCEF0B52C54C8EB5CF320DCD9803405
+10B060667538413E9BB43F15C72510A68AB688C9512FE05E87AF5CD4C2717FBF
+F0B5E605CE4360D89C7BA422C2A867710CF0668BB684E83FCD47888C92216068
+B03655C718AB989492A6D432275B1F64005849A85ED0D167C121134A59996BB3
+8029B44938C401192B96DFECFC6C7EA90EEC009AE79F2D94926581B2073B81F1
+E995224D452AA32115134F7C8B0AFCBAFAD316F2DED91212E5E2715A9A0F59BA
+787C811A7CE37859B9BFD4B6648010C449AB624401ABBAD5D22623A05B127FD5
+F6C3FDE7966A3AFEB0BB98B38E8DAA05643EF7A9242F48837F2552AA6E449594
+9BE7E93EAA719FEB29077A5B86C14B5F47B1B86D9F1EE50A9BEF6F6FB2DCC4C7
+D3EDA4FA1744310A2C5BD39E8EFF9831D2E91698BCE0D2E9769525F934D7F08A
+FB4DF1732A46D4CD48BF73322E25BDDA632CBCD9F0571779CA52A60775ECAAF0
+04A6ED054E9527CC85F67D2C480D6BA074A3D73D5386C7D3B06AFA386C931512
+AA015585BFE18F6B5B79140570B655295A0C56F6D3FFB790185D4F1A10F0AD18
+C143DE30A7FAAF80239CAFA2DF1CEB743341B05E8FE1D90FE3C0F75398B6FB76
+28FDF55AF051AAD341AF59A6FDAE8B1BC878A52E5FC2B504D4C113979D7E7524
+F44C86A5C12F5546024D792A0E4FF98AC19EC3850D88DBE34B4C2BBBBDD77E62
+67219B59243B4DDDBB88AB7AFEEE234F08DCA63F51508BEB43BDC3B00A3A6F9A
+B4EB5EBB12D928D2E1901A0D9799F82676F6E158A6E521D11EADC606176809CB
+82687208E6F491C6B92901015A67A67508A68FD8F910A41FCE333AC61A17F772
+13FBB7DDCA5C17263946D38738E019B016BBC294F89083A2E8AA6A9433272CEA
+42C8A243DF05FE3AB837F0793AE36FB9B1378B7DF1D50CB48DAE3F9CECEFEE6B
+7E372802B2A19C7C1BBB14D3B061C5DC6FB29EAAC558386C58D87E1CBBA07AE8
+B66DE0AC1AAD4D714C00B528E0A10D54AD7D99A3F5459BCBD196C0A86DA69508
+C4C780D2000407BCF22ECA07C1FA37DA0E05CD0D1A78AA64AA9F4682F2F2F05F
+0D219E2D4A1B55D836B36397586C46E54F7E7B56B969EEF401B7BA9AB3B71491
+0B33E2694C3B10AE3702DFA3EBA9A42888E2FA495B521FB5B860EBECD878EE73
+720ACF8DB674DB5C4A3418E5C4B1B93E8BD5FD6FCB334BF3C93D6825201A02F8
+A8BD1F64CEF4D6E8BC96948226D8E0C34A7C65978BC66563B39BB41098EA4DBD
+DA6D7CB34A411B9A789775C2559A9F90B7F643551156FDA8B8C3B368E666A546
+0D9458F1BF0649BBAFCB8A2B0B35633A873D5F9B0E55A1A1EBA070DB4636B725
+BAD1250138E0A08B59DDC3BAC64DBA14313B8937275F8E8A506F6D6EA691FA5A
+D37453B2619C027CC5E6DEDF6C6EB248F182A7349A21CE744152BED4F91508AF
+AEC8563F1894734EC9BEEE05A1CA429BA1A134CFB7D7D533595CEBEA887EFE8E
+8D41BB1711FD033A6D6707CDCD2F1F3D02DDAAB98311AD5BA5DA9EDF971FBDD4
+BB4EF7EB3641CDEF6CC694948ADB8D94D39106C7D4E8E788627991A6AE33D7DA
+81FF3259C745D3C3F53FF8CC0FDE715D61801FE115F534FF3FB04CF5324979D7
+2AE393F01B9B84992F16390825059AE1560CA637AE72CA56D3CA686CE9514E1F
+CE1859CFCEABB3DF9FBD8F0E3A1E8B1ECF291081A63A86128BDF2DB251287810
+DEE008FD4F5ED49D0BAB3E7638B975CF6C8528B9B8BBF490F9632F83A060AF42
+1469997731E304C44B80503B391B9632C15D209556CD5FB94EC7CF4C98B51C7F
+284ABF771FB70ED5F1CCBF4AA789AA9CF8C9EAF42F9C9725D87820C10282679C
+DA104A08E1AE5F01DD4399211C62C5F3370C9D159923447D15C2056A0F840203
+62903BE8B5B1994C9D7C6052077E5446D54444628AE19229209F815677ECC5D6
+45E6E1CDC2FF1AC81EFB1D73ABAEEFE54E185E3A817C0506CD754393CAA3D30A
+B2F401490D83B72BD07B4BF1D1ACE8AE0AF145A3CEA0E05439EA8EDE1C4597AE
+B5E866BFC94E30C9E8D8884DC900862E23767B9F8781F5623B4F5F74592F11E2
+DD253253D176019798665BE833997D2ED432380DDB144EAB37C7756C6F729B0B
+D13D8D02951BF2C016DA02873E4B589EDA8021397BDE47000E0BBDD2AD8D5160
+C7E9F69831FAEF84C27C7342C8CE4092278F767ABD3C7220870D40EF9AC505AC
+FB5F3E1BD3F0905F71AE8751C4E6BE02B392874356C7F25B37B16D7E8848A9C5
+08FDC51948C71D3031BA695B44891D7C56F5A06113C1DF9E7A5B2306053AB76C
+18B3BFED61C8E196494FCB0408DCA9389D6DE9611CB19B793D286011E9AD6E78
+CFD74396029C4ABF7075143A71D14EF93B2053A0E8C8789E176D500DA7945DD4
+B7F805169681F4033DA8A2941F8BAB7E4A1A0971E017FECCD8738DA3186B0DB8
+8C63476272C63364DF6C3CA5D9847A6D81736F0BE388AF95A7F9B5663F55E3DF
+1C740E4358B349DE17A63CA2282B03065A66D9FE3D6BDCEF932193E5F2E2D150
+47984A57B31A7AEB54A101DF328A74040317529842B4A5A20E3448077C331626
+9A5EA78E5EBFB81778BD4C9B392186E3C811EE82CFDD6A57E050DA15478791A9
+65CAAEE28B55362594BB58EDC4D01FD54CA7EC5C4D2A3FBC6F399D5F35EC2256
+EA0B1472A99F3349DD62F3931F193C322608E6452472E00EC22BC13E2E17949F
+9F00E979D5D5E38CE6C6EB9CFD7B05E724CB49EFCBB211953A36EBB3A3E18498
+8CC2B96F8FDE18C678282C0A707ACF03CC41F735E5A4173B45A9312944D69B2D
+4D448C4914D987DE531C6D3EADE9C94F9E6F978AF50F6C25CF8586185FB7CAA8
+5C428C606709C5FA5ED63CE6C0456664A552BD6B6AC8A321A97807279CCDD27A
+EA484CFEAE6FC10413A373A9E041D3CC05B48BDDE5DC89F1B9D140F95C9370F7
+1126CAF6256DDC8081BB304F294398A5B5994800684B097444BB35D4D293E782
+F61C8EA1AB2886CB6911B260127D8A2D116C3AB62F07920E37E0405F516F47D4
+C4E865E9606301B86A9013E5244E1C145D515251089F62C780C17B1C2A605DA6
+4E8F113081631041C38512469AAFFBA750A16A4921C2B809CAFD80F17DEE5BBC
+6A00C67E59A4C3B1C34DA41EF7D4CC836CBA67ACD86822FBCD160ADC54D10A5C
+CD5A1C1D01AABBB900776AFF0BE76CCC484037C34D348A7BE0B15109BB114DD6
+F0EACCA18800AEA8692D875F761C574B90F586ECB60183D3DD81C3B1C0EF1822
+3FA0688E244FAD05F5AA4490DC6E0F515E174DFC2F26821E9C4B189830EE8D14
+56BD9EE6BE690E62E2688D180B231704148F643873BAEF2466099D01E98D0A22
+8CAD70DF0140C21585651CF257F62248FE2418DE3087907355F88886BE1DAD3F
+043C30DF1CAA28F327A71B8EDFB5470F64298B899596DD2236B23058E3339E8B
+82A8B27BD3ED46D1B5F2CBC333B4AB6C8314B26320134D8B8479F2824DD9AF44
+D5F10F431F64B832D1881F59E8832C8935765E9C1ED9768EB864E3847F4F4928
+71D2CBB138BCA7085D5E619C17BD6513F53293A9F419A74077EE0F97BDFFE479
+CD960D5603C2CF26A3B4B3A6372F954041FEB600A528FEC76BF86420CB8FE902
+C978E8D7A3D317683FAA98F299611F900FC0C38E267B9D2295AB317A0C65CDEE
+214DE4298121B7385D9AC35D23ED48BC980D8BDF0ED1B3DF469E74B2FEB07B5C
+F26F8C6A61D4B1EF1F95EC93F618CACF0674C625BD9E960299A92E12BA082080
+7DDB8D06817185AE7FB28174B530DD2EE84660606AABF27A171C33BD15173A09
+69DDAAAE380C89FBB4FDDF271D3FB5CD0A2D62A1F1BF8EEF00A9FE22FDEA08B5
+32E6995008D17A9B885BFCBB80E9AE1E3A4E75A8820AE2A7845D366F29CAE72A
+9D41A40B32DB7F477E218C646A28FFDA6E58EA290AF7E19DCB764FFFFF8248E5
+179AED3D8F1B91480B3729C79B3C96B3AEF105E11E370AC65F47F58917FC5EEF
+68C5F518D1079ED2182CA6B149F76312133A4BAABC1E1862CBAE7AF59AADF2C8
+FE748103948695737AD7BEBC52DF8C4BEE11C346D0E9B07338A1E82B86B8AF42
+88A49CA23BA88579F911319AA8B7DEA4CCA6387BA33B217D02D121FD38FBD51B
+C100B95B21D41606B40B9A11CC731F10A8F4B86C572FD9AADCAB4CAF8F27353A
+C05EE5A9F372B1FD74B71522A6F9248F838630A8DE2429CFC5B34161E83B0B38
+9713AFB911C246E5ECC6AB86CFC463B46D0358841EC85787E055ED7C5513B0E7
+960D05F0BDCD5DEF56CDB808B755396E2F16F43B6D58BD13DB0A6B9FCA646521
+5B114C3DE7253500A6D89A0DAC7F9EBD1E14D7EEBF8EAC1ADC5EA574781EC870
+7C820F1ACBA1986CC55F78DB10F9F76E9392FC9265F3B370988CC56BAA379B46
+E5DBF4FC5C1A5EBFC1DEE04AD79977B8B9213DB98649B6F9AC0F99F53A449CA9
+FA33BED4F5EDE8D1B53EEDCACB0A883976C98DD719BE5C2A0A948535BE0B324D
+4CD123FD9E346FB8E5C5AB593049CD5330D34DEB46C4AD0D21BF6E5D715B8A62
+40E0BDA591D2727E4245B29089FCE0A2238B7AB0798FED91B6F8CDD6C2FCA085
+3993743912D66BC8049C30643F9362D510575CE4926D53858A1BD2B8309CA46F
+F93B3941D0822B182AE4DCDAAEF090AB4DCDBF403E4BED69B62ED62530AC3A6C
+EDCCE216FFD057C8A388145720BED9D31A89D149E9A26AA4DDFE8EE93924FEB7
+97A0DCDEFC84F9266A86D2B88495F4A9B1D33248BB0861BC4D38825D1EE3C930
+11077737AC6E307B12ECEE27F82B554F40053CA24D2520DDAC7F547407A77196
+41E85341D1D1C10411003E66708BC4FF4F31AF6E689321788C59D63DF263FE23
+71FF6C27BA99A5D9C16E08CECE622CDB8517D14644BD03A5E7DFA8DF8AED725B
+F6AB8971EC1AD359AA0290B31A2DC818DD2BF80EDB07EB81F7787965ACBDEEFC
+05337DFFABD0786D1C71B192B04618A00E90E0BB3BB704D1AA86E1FE5AE09B9B
+256B82ABFCE181CC45745A0B2E51B1B780A91FB2387EFF75ACDAA8AC13B1F44B
+81AB96DF1D9CF587DC8B9F926D02F81C8BABA56DFC79E25883453E84E22CADAA
+ADB64593275CCFFF770B53ED4F4F1B0A76DF0D5AD96FEA25AC42B8C350061A2D
+1C97513C9F7F921ED913F321CFF95EF57FA1E19A9D3F3C927568888E1E7DFAA2
+D12525815F2C65B72737B4AD9BD64F922526C3527693B552ADFA10C281F99A79
+26513709301215BEEA51BAB631ADD6DB698BD96006913FBE8AAF394A051ABA45
+D4C7F093DAC9707CF64509D64A39EFA0207910A575932F928CE105E6A2745088
+4D23F6EBEBDD583037106433728693D9D24462F3E75DAB68059ABCB05B2B5633
+D46ECEB9E1A9CD67317F5D1197DED31050A102F739792CE307D6928681542F39
+954589A5187E9FF713B1D0A3E5515C5C0F935B7921E4B37E12F0638352EA1447
+7C5BB21D4CB3181B1C056A3B4D98396DF351BA384FF61A170C1FABB51B025E1A
+206FB57FCA26D929BB232A9CC3249C1A0400FC039D3EBB543812C5918D6219D0
+882DD96CFA770A03BE1D0494C090D5F5EECEB305435FFD740824EB85E59CCCB4
+AA411710DC67EA2489430D8C08423F00C499323ED1BAA4EB1B5089424F898D86
+BDF5CE56C028B107B8972433EDA77EE397A193B1793BE61F8DCC0273A0FCED9F
+8A98FE8D1A49469C3A4ADEF38888A1199DBAB63DE30E56B82E55C6B31D70FB4C
+5F9514DF02B648CD3FD6860E426DB1D853910F1F96EA328759229347ABF6C503
+A7B6A63D729001711890C1AC5997F2F352F3130C760F49D0510DEC22B51A7FB9
+F2A7EC4939171B82F24440AA058C5522681A0A97BDE06B15B88DB1F1246A095A
+E89230E74BB7B404806FD2FE9F698C167954184129B40CFCD711D69D7C1B4F8A
+7D2A8D496A7EA0FDA901AD9D79D067614D868290F804649280671903D1085A1C
+E2E3C0ECEC635D975D66CDC5312568AC5C85F87804BE7E60EF787F5B97DB71C9
+4DB5F1AB7069B1B411319D3D70E1554D56120E2E5C9D474DAA7C93D5371A9DF6
+10A823F3105FF629CB8A2D564545638B9203283F6D70E4CD
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -2484,25 +3899,41 @@ D507F00DA975A2EC33F5DED8D6DD551257E20930EA0497E40C692CD76EFD6012
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
+{restore}if
%%EndFont
%%BeginFont: CMBX12
-%!PS-AdobeFont-1.1: CMBX12 1.0
-%%CreationDate: 1991 Aug 20 16:34:54
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+%!PS-AdobeFont-1.0: CMBX12 003.002
+%%Title: CMBX12
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMBX12.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMBX12 known{/CMBX12 findfont dup/UniqueID known{dup
+/UniqueID get 5000769 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMBX12 def
+/FontBBox {-53 -251 1139 750 }readonly def
+/UniqueID 5000769 def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMBX12.) readonly def
/FullName (CMBX12) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Bold) readonly def
/ItalicAngle 0 def
/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
end readonly def
-/FontName /CMBX12 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 44 /comma put
@@ -2565,321 +3996,529 @@ dup 119 /w put
dup 120 /x put
dup 121 /y put
readonly def
-/FontBBox{-53 -251 1139 750}readonly def
currentdict end
currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
-016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
-9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
-D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
-469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
-2BDBF16FBC7512FAA308A093FE5F0364CD5660F74BEE96790DE35AFA90CCF712
-B1805DA88AE375A04D99598EADFC625BDC1F9C315B6CF28C9BD427F32C745C99
-AEBE70DAAED49EA45AF94F081934AA47894A370D698ABABDA4215500B190AF26
-7FCFB7DDA2BC68605A4EF61ECCA3D61C684B47FFB5887A3BEDE0B4D30E8EBABF
-20980C23312618EB0EAF289B2924FF4A334B85D98FD68545FDADB47F991E7390
-B10EE86A46A5AF8866C010225024D5E5862D49DEB5D8ECCB95D94283C50A363D
-68A49071445610F03CE3600945118A6BC0B3AA4593104E727261C68C4A47F809
-D77E4CF27B3681F6B6F3AC498E45361BF9E01FAF5527F5E3CC790D3084674B3E
-26296F3E03321B5C555D2458578A89E72D3166A3C5D740B3ABB127CF420C316D
-F957873DA04CF0DB25A73574A4DE2E4F2D5D4E8E0B430654CF7F341A1BDB3E26
-77C194764EAD58C585F49EF10843FE020F9FDFD9008D660DE50B9BD7A2A87299
-BC319E66D781101BB956E30643A19B93C8967E1AE4719F300BFE5866F0D6DA5E
-C55E171A24D3B707EFA325D47F473764E99BC8B1108D815CF2ACADFA6C4663E8
-30855D673CE98AB78F5F829F7FA226AB57F07B3E7D4E7CE30ED3B7EB0D3035C5
-148DA8D9FA34483414FDA8E3DC9E6C479E3EEE9A11A0547FC9085FA4631AD19C
-E936E0598E3197207FA7BB6E55CFD5EF72AEC12D9A9675241C7A71316B2E148D
-E2A1732B3627109EA446CB320EBBE2E78281CDF0890E2E72B6711335857F1E23
-337C75E729701E93D5BEC0630CDC7F4E957233EC09F917E5CA703C7E93841598
-0E73843FC6619DE017C8473A6D1B2BE5142DEBA285B98FA1CC5E64D2ADB981E6
-472971848451A245DDF6AA3B8225E9AC8E4630B0FF32D679EC27ACAD85C6394E
-A6F71023B660EE883D8B676837E9EBA4E42BA8F365433A900F1DC3A9F0E88A26
-30F19E1BCE69BC499D860F9B17E6A78469F652E469E22DF3BBBCC803F7483463
-96F1C811AF62FC36891457BD3A5B988F62177864939C23E86BEB50B9FD0D186A
-1C14795945646D82AA97F66F6050F81D9279AC6CBB908C7E1F96E082B31DC1CE
-66777F3D7C18637E94FFFD28171E19E178CF932B38A8C1681877DCA0CC4BBA17
-250D9C00BCA8F753A4D3CCF503528B0CA11871F2F0E1F400FA9AA5894128D07F
-CC739AA7B0A8A3B872647E1BCC9F015E007F208CECB08EE15C91ADF0F06094CF
-A1A6ECDF5BAB53B67395C422F009C511570CE39F739F4C5187386037AEC9BAF3
-434368015408A4317115A1A8D296CF477E67C0A49614602F4B9C9007B2C78024
-E33584D32B6A1D226044CA57336FAA01585F3BA39D9616780FD6C124B63F19E2
-F20EBCFD23222358D8229B701B2703280E0B86E4771AE2C5017A3BF22A545246
-8D6BC985C2220034A34E0CA85BACDA735A9ADB3D3981E04B9AAB9E11A959AFF7
-0AC9B7C54AB816E2CF48178CCAC839D1216AF26D93547F242069F877ABA93E19
-45B75BC79A45D12E23B40D1D28074AB7D20597B517E0AC38860D1D0048661999
-4A424F6983DA23E0E6DC06D6F7EFFA87C88EAD1AAE2BC85574596B913279BCAE
-B535042306ADE5EE2AEB1FA1B833D56EE907B1FD6838369000023CA728DB364F
-6C2012E4C2614E0C662F88E2FD02B32499CAF6918DC050BAD957D7B727927B10
-24F98C9B780E6FBED86B63795719FF60F0EB582D4A5E9CDA6FE05D7FFB0625E1
-FB94151065C607914FFC72D372399283A48B6AA96421974F5AFC60E28BD25D48
-B28BCF78428B21EB03A00C878246EF8BA2A2EE7DB6AFCA47EC9A02EDBC55D2B7
-929A0B178491A4C483699AF945ACB840525647C9E7F55E11BDB76E2A6E3C2828
-FFBB5DB375F4E15293B494868FF31B07860BEADFF66311130A0BD51D976287DC
-201EB34FD81BA3274938CE0A3C68324BC9FB70C00910D7C34D507B529EAFC6CD
-24CA11385CBAC30928F4E088960C773020720312A7CCD60EA5F822E12855BEE3
-7A734C12C8956A373AA7658C809E4FDC280E3936D422FC50ACE01A66C73A4636
-BFBA5F940E08F3CA382B540FC795D6ED2D57190BFAB1430CE08F39020B29BF2E
-B1399B2D3292AA99F892520F88C5A0FF9B479ED45721EB772BC18D4DA9CB02EA
-54BDDECF4249FBA0184EEE9990EA902613B5F6D55D5B010D19188B0B36DAEB75
-922A7AE22ED53A34AC47FAD7E72374D47F349943FBDA4731D2E1CF30BC103F4F
-575A03E46F37EBAFE903C74D81D8D3F241516021862D9E203CFC1280572E0C50
-359D4E87B2976C7F35334F4744FC78E15DD7979F29308148494C2A42A2FEE1CE
-FBF756BA8683B7AB065FB07F666896832A5C83A2B85EE546FCAC2DD870FFDDCD
-19890A5FD9D88FBA6AE267FC8F1664270F3BA6B990BE056AC79E55762990CBCB
-D8D60EF5A747623D719C6A76414BDBBE4549D31C15EE2DD02D452ADDD22E64F8
-CD13525C274456A216AA919EB8B6CC3692D9128A76B03566CA33C1B0C5E3158A
-0722E8236156F1B51302BD02C97D4C00DC60B298E2731485F3EAEEB50A4D7135
-72DB3DE87ACFCE1E40C8602A6C2E00D6F3C7CD712D214A53BB8EA0B445BBCF1A
-412AFDA97AD44DA2DFD293420DE95B0B88584B2CC79AEA82685006BE5C6C783F
-9957D4B1F77E2932741E056F3FA78033BCB92FDBA00B2E498FBF1000DE6D9DAE
-299CD854743A82032DD62F04F4BFA9C5CD84D22F2CF7013C2CB6AC249D67AB12
-3396C3B333A5CBE9A97E4F07BE0DB2C71AE4EF79DF3DE952D7E473C5AB2EE898
-4968FF37D409DADF2432B774B5A0BA55AADA100D27C96102BCEDF0440CFABE41
-19D49D6BA5A8A887EE02068CB1788FA378CB0BCA436847E0925C2F883A980158
-694D66927C117212493015BCAE200249B7758DC98D849B7AEB32C78B2F1577D1
-1D91912C0522AF14F75DA48A197229C2BE08B6F8F52A839AB507C8CA524FCF24
-C91DCE6C53D784D15E691CDA18EB40BE0A7C3B24BCB99F36F7E8F77C45EF87A1
-A0932AB194A0D5E8DE4C567C6E86EB3E734F89EC1E4C485D81B90D505FDEE463
-B4EB9DCE53CDCDC19F4F99033DB2ABF9698FD153FB68576A25FD188B98CE1BB5
-B7FD420849C0835A54391C28A169F57EFB53AB29B0E9DBE776E37C04A6D6BD91
-20FCD689532059A98B4477107E868A123B273128F7E747C0F0724811DF029AA5
-22C2082D557EB8CE9DF349450C4446B4B1DEA70CC1B146AFECA06A1859D212F2
-BDAF41ED546BD1057F6F6AFF46FEE60FE8380E8899F71735D2C8D7EB9653B027
-68321432B37050229B6815A8C4A1EBFE19A76109EE29800B88E6C528054A17B7
-395CF482AE62445478D6F41C0E7B8F78313DF1DBED339E389875A8E883867921
-1AB53CA0A3980594830B13200073F966F005D1B1402877CA4A46485318A1B863
-24464445E264EBDD3567E9273FF01016EC1CDC142FD9DBF980F099509F330305
-3B138C51170BCE3D59072ABA6C241048612434271419A80DFDD1BA156A8AD54B
-39E45FE64F1B558A712D93C46D729A1F8B364CBECA67A618FA1337247C08D0CB
-9B0A418C729668147DEA47BBDE342C2E0E29A83631077DF34C861EDC9E80EFEA
-75BE3040125BCC60D4FB69CDB78C25ADA72F2D104CAB8D3FBAAB5E8931A7B8FB
-6EB41252542F302C11D3DCBA66345EFD816D9623BE2019AC332577E1CE8E6A8B
-3DA487BC54B82EA9876961A4968E772603F37936C5ECB4C14625DC3E36E4BE99
-E692EFD3AD7B0814DA32B13D6C64FCE750F80E5985E708E54C7A545429496894
-6451BB8608F12DEFBD585ED62A2452377DD91AE560D14E54C9A449FABBD16F26
-AAD76026066CD8F5677BC18FE9F9BF89344D90B454B7A7FF20A3EF058816ECAC
-D49486263BB4AC87ABBDF43D8BE4A09F0DEF416C95AD8DA91E187A5528390F9F
-FE96D0CEC53022F1DD7C565ADCCBAD63B1105CF11DAEA2D2A9D827171CDE1B90
-0A71D9C2C782B74884C9605DAF063F99759079E3A821196781C756614E400149
-A6199699F5F2AA97859FC36699F86504D58BA77D14810424C2A3FD79247F3DE2
-1EE6CE0011250433EC504A3146827949468227E75687BB81EE40F4EDC2803F71
-CCE3BB5F60FB0E121253C3385543B6AF741BFD67158D2F38227A29C3ABA429A3
-33BC564E8867C1FBB058ED6EEC8FD0D835AAF442103348751C7AD941D1B16566
-761ED69AFCEB4B213CC9A75A1C01260B545654EFDE7042C8E7ABD0508F43D4E8
-B50E6E799A5CC8507E814EBA958EC2DD9655CBD18B018F284658C4C8299532AA
-48EA747019D9DB74DAF848CB76192C0125C7A51695E8DCB73C4BAD826A83FC9D
-AB177685DDF5CE3A7DCA21B02FBC6DD7B52B6C086B0C06AA24919A38845FB295
-1EA169C8D17210C14E712CD90099334C9EF449FCE214CF640FF39CA1DA2120FF
-CF5A9F387B3E0C7EE4904DBA33444A668316DCAC18B85C98826F5FCA5CAB12A5
-9F75424521CAF417B326F8975E6574E5C9E55EE2772FE20AEC65C4CB692A2425
-9A29F75EDF9B31C2503C6A7E79A17B957EB19D4E5E666C83AEA92A8DBDB033EF
-1628486E2BFCAC1C9E32676488BA13B3001F6AA2EA03747A3EA5D220A5F33B29
-4AC5AD623B0C9A4D0C4C6D41F89E3FC325747170BCB0803A7D988627CDACDEEB
-0D9DFE8AC357C07F6B60E90C5DA3ACF868F145237D1710895C4859A319FEE038
-D7FCC9D56620607F5392D1998C6BB1B2ED2BF4F9B5BB6F80AB0CC5A535D52BE3
-A996A70D581CE43C365EEE168ADAD963D0B2892F56FDECFA8664737A5CC0595D
-3D135410CE5CB4B094746D5CD8C3355C4BF77F9D5375334A119833995EBF757F
-EAEC6ECAD4A62B90917006A1AE4632D758D437DB443D6D7661434C9A8813BB1A
-80C5389D2210F4BFA057DA7900FDF6B60212B5747E586FB865E2FF4260B2E3D8
-0C78E003F3FD527925BCA22DFB87EC7DB2188309D8DF6C6424048D99C0CD7F18
-478740413A816B92D6A38AF0025FC79B4A8D35E2B3FF5BED4523B21E9CE49350
-AB42D25A5B42B1A49D5A468C38635E91AA1B6C835C18D5B2506533B4E77EC0D1
-CEEE1D66569498F6482BEAC3FD818EA2B3191A3A67212EB41D8C725F52937F99
-06D33486272E82A3C9B5A5457D0219A3CFFCA0F18D246AE6506915E055F2E1BE
-8678389745B28EDC2DB006A0AA5A4C6483B24DDC0F3A38EED7CF30FA00B81CD5
-56757EA8C44164F2BDE071226598D6246C8A0CF972AF52331D0D2A192C98A320
-01435C77CA0B61256EE98D373A3A8F2B41622A6BCD5AEFEB9004B90F8A9558C5
-D4EF6B36912E854014AB35841B99F6E1AC11F09F536134DE90865F721DF86DA0
-D13B6BA2146D75696B2C2DE21F4ABAC37B3C0CA96BDBAE8334E2FA6E38F75866
-FF7ED0F64D5896CC294032AB86E5C328A6B06C2225A617F39CCE8B69AFD5B041
-9B1F9FF00401D7F0C9189B79B0C2B700945EEEBCAA38A9E202CD5B68469542DE
-E9EA782D7C494CC6B411D614867B498B2C2729D65D6087C3D17956227B02345A
-FD3E8653A3D4A9CE1FBC46C7E8690C803B4556A80F05674CE27069D24563DA46
-7D2C4219D242453D06650A9522A3184246937CBF4EA2A188C6B2A71E29E0CFB2
-934B93550B451AE9847F96AE18647C09C927C4AC12846180DBABF3F145FE073E
-45C129D663E21A1F1F1F6755F6FECD1C1F7061939722D403BC2F2E856BBC25DA
-F069F39A441C837FDDD2563B3A370EF73F0835D34DA86CE65162917E84C76201
-0A5F2854830822FAA545FC0A0F77E62A79545FDCAE728FCCDF2B720C0AF9A9C1
-2FB5878E9831D42FC9A56D41904B1551DB2E7410EE055948CDB8B9625C6DC618
-F8282896C1C258608234A372CF031E5660949250072025B7EC4E535899EA8BD8
-D1CE98A870C159964CEBC0ECEA5DEBBAC1CAF86A398D9C84A076ED630991501C
-141AE2DED1688C1F1389ADC40B025407BAE7EF3AA847EEBC61DF58A6C3FC8F2A
-D9FC820DCF1DB3CD2FD32A46BE1B98D87F3D291C8229DD9169E370BB10706B0A
-606D45D65E3F9A4D5CA23DBF23972668A0D0FAD4D485AFF44AE284B91EA6BB13
-108B9E0AA5C0CE5EE80D9A6D10114ADAF14AC05569B7CA7F7A8444D75D504700
-89E7DE515BB66E320816BB61DF65D9B6DBCDF5BFEB475EB6BC93661D39BFABF2
-B542CB9E5F38AB3271CAEC60AFDE8FF533DAD806B61C17A985FA5CD8E537D941
-020D2CF7CAD6389AD73578558B49795CA5D2831FDEA1BB0BC181AC848EDD5FBF
-E9A052FCD5BCFB883C704D80D9CA06C7D147645742EC0A601F66A5D198A7B6D1
-7851CF5D65E96E4D801D87FD271D079A59AA5E96E345053FA3CF427A80D78A5A
-D5007F12ACEAA2F21E612AC2ADD7B35941EAEC728CE7BF64809270D09D469BC0
-422C3760D1D6FFAA75B0F36A1961278A5E63406E4AAED935320C68A3E5515C5C
-226488F98CAC3B04F016A03E343A9835EE8E373A6B49C685F1B02798436BB098
-DF854825EA14526B337630DFC27914F374DE9A915D77369DDD88FEAC626B0183
-EECE378BD9B0FF448EAA2B656A20102641B181433CAEB6D6A0A30A8346E710B6
-B9E2C6103103CD25CBC8195C02DDB8A6E4216F24FEC5E0F8092D9B74F7945F58
-C8BBEDE1F6993592E723AD0F343B2B118098F64D52BC5726B253BCC4EE3526C2
-49D22E2AE02CC44F11C2DF0F3AB0AE48BA03795C1ED3D5E10B1158690D402C43
-FF3DB585DBF3EB9EAA8083DE62B198E2D81D9CCF4CFD13D5F5DCCC1A07F6D94A
-E3E11DB551CC1124229C84F311EAD1EA54B30918A44CE0CB565C29C099ABCED3
-25EE19B9B1775C25E2BCC0D580275F4E526571B074CD8531C66A6302FED3EFE6
-C516427341082633AF21777A02140C90779B33CA0D31FB4D8A79474454AF949E
-855C5E1D1D9510B2759A9DF9626A2DA26B6DCF05E68ABB11B5321D9299F3D8C3
-91588707B63CDFD33FE34BECACA899612072830172F1481702541322416E3F55
-BFD2BBFDD9A4322E27576748EA043E4092603BC4B79019674A29378AE9A35A82
-42405650D62A13DBDE6BDD55A831685DE31F9C20AB76AE2337E1E7CC6B0FB44C
-FC396190083575E186BACB52932AA11624D830A58AFBB2670E39242F8609BA50
-BCB062991C4A193C09466F4FF2AC09F1E7C094F502E664F129500F2B93ACC2CE
-B916D080C6DE142E496526F0C9A5804688896D31895D0C0ABB7A0AE4918D3481
-5360C8CD618960A8F014B0AD55575C50B901C5A57AEF996230642A5C8DA0944A
-76ECDEC0730E6EFC7FADD09D9095FB540F377D460D159CCFD7059B0A34F738DF
-012B7CD8BA63A47263423A9A70C14BF72386746772CA8954C5BD1F1FC4C77115
-FD47E72638FFA322F399D7123BA9DB28022589735875F058DC05521309DE8B01
-27387F330C5489B1752B789561FAB8C92ADF7778068BC27E25C245539AD11B15
-017A7AFD7BFAD63D0DC400B369194B8D9E4D298D548FC1968A0063A7EB8FE1EF
-71AE77F99B78F6529CF9415E886C565EC305BEADEC0AB65DEABAC40DCD5E2430
-36315F52C005A9802DC49944A423F1828513EB381F24B0FEFFB99FB53FB86A4D
-DBFD7B5994FE736820AEB30AB5832ED56048A846A1388D3BA69C68180E017170
-CD6EDF246A127BD8D8D24664171024ED9E1A99279DB6B5FC91E4248EDB7EF45D
-5A9A851EDED58F11D586EA07F9D32D80BFF6112B4395916FBB5DC06BA0896492
-D9C770F973522E6CB5CCC92A08CA1F9067F7ED0A35CE4103EF73C3BEEE22F2EF
-B3445433295AFC30D464929C0607FCD7495F9A6C0F5727CD8844BC3EAE436046
-B8D484DE4B8BCE607904DBE5D01924A86E18F73C5D530BBDFE7DEEA30ECF1C80
-D10614F7713CEA36DCA8AB9DD488C57E4D0E846B48433DE35205B57506175570
-F8A0740F6B654B7C3B744C5D030827DD29952CD579BAC27E25AD67D946F707F1
-EC44D9AA1FA6F99BBC9F473FE5191C7A918951F66AB09A9AE6980DBE3CB1742A
-9D95175D440778A3F9CB5B5C9A0AFDA59EFB9EFA6883C836D562E2629C9202A1
-0C12FB0B7CD4313B89FC47202D9A9131BAA40082CBD9F3B0757853D79FBB63DC
-4230097FD151C9620F5238C8A3900D3F4D0A4E9DFACBE9CEAA5042A8DA1C9838
-554C754D1F947DA0F13861F71919A886935409EABDE5BDF80AB586AD80FDFAC3
-259A58CA5B2164FE4E8BB441C76DFAE412F9D8F6A0791D654C8846415B8F50EE
-2B51DDE94C594C35B200F6394727F6AACAB7BCA7089728C4D43D08D92085E899
-4D49B867A20D4D988269E5BE9075B8598815B98A33F71EF1DC57A16F1F8A6A21
-5EFCFCB8D5D6EA63BD71AA812A06B65178BA861B49D228B0562CB643CC272FD5
-5B75D91C52B23F5119AE56700D9316162537A4B11004DD2B36CD5BEEF7CF5007
-1321A5A8FE603B12EB3AA6874E2ACB44FF89228BED8B457E1E671DB262FB3999
-F21754172CD06E250734DD0B037D39BC7F95B59F706D96B3438FBD36F8096AE1
-CEF0C6B206FD1FC09A267F05C2FCAD9D48B7ED79C5274ABB901EBC710C56CB51
-29314F4FBEEA48BF0C63582C5071627BE63F1A8997D45DDF0777F983629FDF43
-1C88D91790B1ADD40007131D9EBFD2775CCC7DB5F43E6549E6DEA92FD93A6E62
-5F19742A969B6DF6835E58FDBA0ACA7561DDA911B8872C5F7649CC798CAE3BAB
-D34BE5B8FBC192CD49DBDF869865C89CD13D5E1DEEB078CA83B54115E398B027
-F02F20A2FA1598CE55D6261D71F91B8250C8C2F2774E21C623AB8558E6BE220F
-5CF0D43E6F48ABB5E7AE213266ECAB04810CE30BF85EE98D8145427EC8CFF5E9
-86E1BF142EB41D8C7276DE545605BF8104806355303409CAF619EAF139DF67A0
-7F768B867066C95F429DFDF448465B94979CAB16A0DA2B116A4F42968EEFAC43
-C89E9A4B2C9C4EAFFDD84FA4C3A997D042389392AD291133A42152ECEB35D361
-7FEDF25957674492074C77EE5DFBF544DEBCC883C292390C9DDF991B0287D8F6
-D3D070EC59023AEC64BEEF14F870339B83AE10DFFC49AE74AEB45ECAE8AC2E34
-243D7520D4845D89FFA6B594D8AB95DAEA65868E4C6FA56616233269F4DD0A94
-FBCDE3B1BE6D7A98F62E6E58208CF6B524B9B826757A5E443A07FDDB057C550F
-D3992B9E464E6EE833CC53086F03F990C82B36E9A1810B24560DB09814C855DC
-2CDCE238364E42B9382BEE77D9C29BC8606E9A514C0EA0C83884764F6E034E20
-9BC152C2F10F0C867CA4CC98D0D0769FC254D8DBA38215F6CC85F3767104126B
-2CE70A4D40C8F8CE5895FACAF369FD9BCD27441EAB29EA0427FB06F42F8DD689
-11533849A08759376E87AC341AEE5FB95CB3152B2BDFE9CB046E012AA3389B15
-EAFBADF9C8869E53B009964B02239BB7B9DB3AE01D0F5B33DF315520A733745F
-904BB8B003624B3B8511D67BECD37DED77F0237C0D51B72A7F7F92EEE9A04BFA
-9EFC02EF4699C2EC0F4699CA60381C4F2A39351AEE2772AFEDACC90D92333F89
-54D65F161351FB24368068A78C527BCF188204033CB08065A892828F43C05A2C
-2648F9A979733190786A03D47A727FDFE8EDBA3F49255BC3795E373CE2A933B5
-2A72E2F670977F4986156487B4974BDB948E452E2DB429D3D2FB8266F7B36626
-1CC210760CFEC9D23C9621ABE14FC18AD7C9FDAD031D56CE72EB7982B653B8F0
-D991F9B5A0946AD308355EDFBB2A3F62FC8B57B4FF2F66FB35647381E545972B
-8099A7DB9CED093055CE1A414062458D701ACA675362598AD0ED73944EA9DAFD
-6E3043B91DC39077C7758439BE71CABC2C16B59303B49FA4C02B5A5844A01367
-0B8068FA9B4CB58C5F24FF462AF013F8EEED386DC5E5C0CE30E5908E722E40FF
-860C02C080E14282980C09C5307B63806D01E6A61A37D39DC2446470D7D90E45
-2E3CBF1847BF4BF8D7845AEE4AF1CE34978577FAE2A71D501F97C85BE49C1583
-A07B590256324105AC3601D061149ECFD87E1FA726089A2C19D1A4B2B273FC8B
-0FBA9E23F63E1766E5FB216877FFEAB2473D023BD1F793F6D7561850BA060C43
-7342682C622E0203BE175097AC69CF9324A87BABCE6FDB4AF08E27C3D8E7D65F
-DB19F68B3335B3EC2F5E8EE1462C52AACCB0A9898205855ED815A42830675F9D
-457479A33BA6A034F3BBAF66799EAD3A152624C3F50279264C8CF38A66DF5FD9
-97F9EAB52B7A280667B42983D65DFE44144BA34FB1BEEC5FE1B7E3D201038C47
-88A5DAE0E719C8E4B3D2988BF536F2C94962BCACB12A8A28CA12487B709585CE
-A36F7C289BDAFC52E9374B05989D2B409ADAD6F18149BEC1DDD16C8FF5B18BB5
-4AEBD7FBF9C62174979665D2BA7914ECBE3D0DFDE3FC2AA6FF7F88A37240A353
-D3EBD858B0D1FF939F40449BA58D592B85F2C6217279FB62B484C2C4EB0B6B5A
-D35FD070653A16443D51D291C4A9200AAB185A28EED382C91E307A3B4AA1AF26
-EF0E6837730BA40038B336863431D30525DF8AAFB6FDC92C0E98E5528956D4CB
-330DE95CB79542670A8C89A813C356255A263FDDDBBC543AC5D7B2CFD1AE25F0
-D6A01465EACF69BA84AEDB6F0154AA25AEBD7927D636CEF416494AC8E5340424
-4CD0AC43C5C03598CB6BD8049B34B2641060DBB0E3FCB5AC60BE229F355D94C4
-225FEA17641AA23AEE655FF569F90E24C8CF27082E4E7AAD634F281612F87705
-A15B7C05BE8330AA970EB82B01DB4AF18B3117BFB53860B40B370A98EE513E4F
-2E6108BA508172CEB8BCD22CE4FE5188D2C7DE76862A3F78747DDEE3A617336C
-BB7D3EE52D46ECB52DC057E82B6704A2F1A0C3115AE8E7D2D8B31517DE586AD7
-DB72A4BEDF2D22F883F70DF03593CAC92EBABC5AFCCDE1A78509E024C6AAF558
-C45C7F1A4AAA246778F967ADAAC21699B3C2F7F53CCD424642892C3173F61703
-BCA47E653C62458309689785EF8EE2922E80634449F0D5F7A8D70FF8561E30DD
-CC464AA3F3760E7ACD1988BB44770F258EC07172DFEFC95AFE45B7143F61BA47
-EFE05472C43A1240E4ECA51664614FB9E46C08CB00B3BEB9A1979E7CCD6E198B
-40D5D6FF8435ED0234FDBC6786B0EED8646EB3F49B68D2F4E238A3A5FB509FFD
-0C18D7370C768192A66770F77F254F3D6CE99865EE852437775E2ECF6A070D06
-629D8CD6349D0E40738DFE2B2322F8E9B53A40B6FF442230071FE3C8F1CB165B
-5AC61446AF6DDCBAF235AF8C3E5897B295F5C898871FC7676EE5536F23D948CD
-730F67D658DCE8BA321DE88BFC5B2D5AFB76D04CB7BDF3142E1CDBE22218DB9D
-A2187DB6C2BA28F8B1E56E4FBDA64A73CC93FD301DE2ED8661D61D21A54B258D
-664D91305B62BC03F9FBAD1C9B09643DBEB374950E8BDECD2840E3B48A2B0045
-85FF594BB6AFCFB94BC4F82AA8B81073E9A991AFE6A39709606967EA58F6B498
-12B336A139F1C8398B10C43468E4D54F8DF36F74B9A34271759CF249F6987E16
-9A119CB6BA19300AA1602D2A1A68E7859E0BED5ADE943681014B83E4098A9724
-E7BFD908CF6E90A25EFD148CAC2017C71D84D8EF214FF9417B0FC8E475513D3A
-39530CD26C08004CFFDCDA05A7858684F5AEC1CCC131ADD910A51A93A4F1E288
-8486BFA3CB3ED0015D8527731C53D273F5C51DF3768C1FA7C004537457D0EC86
-45F2484A76FE59C55523C21EA566D7E75A6A825001173F6A34AED8537C0D312D
-9E5AF5BBB8C19BEA4071BE9B14E75EED39BEB37A6E78CCC9C58FC9BD74E93A16
-BA479DAD22BF879F7F76D7CE0A39478190787C410D4E7BAB6CA813CC2AEE1A7F
-E1F35431FF07AD1A5DAFAA1853385E96022553EC5B1B625118FCB6C1B30051CA
-E231DE09B98D9D99E821F50D435BE18DF0621F60D9D5D37A55CECE00EEC5711E
-3DA7A696E412EC22B7B0A48B56FB2FCC5CAB6BCCA80F73AB9E77536E03AEBB21
-AA2E7F5FB2687E7A726B1F24FE9ABD388C2DBFFB8C7645ECA1C3192007EDD223
-6B79D161F94F838C53E1D994A9D89409D998427A4CCA56580F5CEFCD3163F90E
-F4DFFFDDAD963264CFD034C40C11B5A425C1A51D2DE781E03EB2648A409819AC
-1D6C73F4EA08031B6ADCE61F80323FEAF3C049ED4F7A6008F4EC04193CF051AD
-96F15C6A47771B4CB267DF45255EFF5D7BEA21C4B8F06598E0FC2F3E7CBC2B1E
-2DDA078D01D9B55D8A20AF61666493B74A369F7B64C2D7B7E3109B033026EC7E
-C2A01BE7C8EA7AAD1F533008F6CCDD3AA0898238BE055BAE80E15D3ED7778C1C
-0AD9E39ECC67FD9B9910011F980EF3618F8E91ECED76263D0A13B1917A86AE3D
-D800879EE7D742328B0B1448AF3540732D52C9D6530CE36032586D5EE643BF51
-17492A3BF5CB62C9EEA019F77026B13581541A06A1098D6F0E330196E0B929E3
-D923C0B43C28D0BDACB639F7D0474B84A43A3CB8A2C61FFF0C07479EF58825F1
-133487DE8B2A382B58538855165F466A3F066BF3BB90F3E49B8F92D69A02D0B1
-F79BF014DF7946D0E492E936837C9102240302E26726943BE70C0BC64BB08D4A
-9C0ABF2E1444980CD359553D67B178B52797BD03F64C69BBC4737C654DC2FFA5
-29F64C35D7CDF2EE29DA97A7BA4D32E475702767290E984BF9EE85EBCFDBDA24
-C984826C7564AD82249AD05DD17BCDDFDE646E822492CB3E6648C414F9DB4A20
-A76F6DA8EFA046A0A50A2834671B66852CEEBBBB57F1C162F6C5BCE7A3962A2B
-D08D49B3D8A66882132B494FD028BF40161BD24B07F3E851B372D8883BA6B955
-51F5A535D8D44E9F5141420798770F368079954549B505F94541B3988BB1716E
-C4336D6FF12EC282597DA8DA87EB66BFE134885A7A1E27DCAC28B228A50CB41B
-5AEA034FACBE35433B0764F451A51DDCAA3480A07910501080A94EDE59D95CFA
-94C8EF5FA0E86E751A1DB653D6C9022B94CEF77EE80455FE513F17F07E3B6366
-B14032684004763E72298DCDF3A57222D64DEE2E49D8FBFA309FA6F4B78F7414
-CB30A2C8F4168B9DC02C4D489CA1305DB50D1F2F02AD88680285C85DE712D2AC
-673C235672CD6B428766575C7032971930AE264A768D40474C275E1CA9D8E690
-E592C565FFA7EA1CBC7F7FA586ED8E2987217F871642F677A588DF3C10F2A855
-78B74CEEA437FC6328DA6E1FF942CE6FA971381FA6440490C0DB60644E1E4237
-E2431B475D7AD678E6A72AD0A3ED0EB7E026ADD2666D99EBD4F05C2E1C25FD19
-86641C1AE15DFA7489AB7B26393A8F77F1410507520ECECECEE8CF5D6CA41F7B
-85EEC1DFBE32CF43514CE691289A06286A46AC0FD23A23F7CB60293685ABCA88
-2996BBDE3D98F57EEF708B22007F920EEF74A55BEA404F6B7DCEE10DDBC99241
-E003FFCE303F78C5EBE1E4A60F33C1FE91877806F225712D2095141E1E43BF0A
-23B42A2C3BA99F1F3C46127211F4B9D8BEC8563B24D3EA2F1D3C37C59EED8E60
-EBC4A7466E963667BCBA206DDC700B1F99D5BB54B1ADB843797DEADA6DFF0D58
-43E1EBEBAFEB9706857712EDD1F21D0DD1102A95950223A36BD84BA78E7085C4
-ABC2B9852D1BDF205905948B35F85A553FA3719B0E6D5CE2D2167EA238ED03E6
-C83B2909079CF9D0AC89E8ADF899FFEF1A951158C8257C256AD7F00819F29F37
-A3C4D48A6C7D1FD0D212107F462406BE4C74C7D241CA0BA93FE225A31190505B
-B47F435974F65228B39D69A2CD94D2E64EC17A0AE11FBD7F88BA89868CAB6B45
-06C9F7C0788A6758594796186EF6561723D9E3D540A0E4C3F4681285E3E53BB6
-0DA52F4A2BDD414D1748586BCC68BB408775EA9A38B02C1D30A12E6EF56D702A
-4B2A443854D9F13DAD905587E879497455F80FAF60D5E03F0951A5F57D6B0B87
-FE19E867C3EA3CB445527EFAA4110770828CCF0E013C102C2B1DB02AB939D46A
-8EB43B028A10E6C7EC3E616FB498DBD170333013A4008635B23F7CCDCD8A0879
-34D2FF449D6F2B90C31AAD0EF5F5AFB312E0FD496FBF5177999EBA15A448E6BB
-A45F5460FA0E
+D9D66F633B846AB284BCF8B0411B772DE5CE3DD325E55798292D7BD972BD75FA
+0E079529AF9C82DF72F64195C9C210DCE34528F540DA1FFD7BEBB9B40787BA93
+51BBFB7CFC5F9152D1E5BB0AD8D016C6CFA4EB41B3C51D091C2D5440E67CFD71
+7C56816B03B901BF4A25A07175380E50A213F877C44778B3C5AADBCC86D6E551
+E6AF364B0BFCAAD22D8D558C5C81A7D425A1629DD5182206742D1D082A12F078
+0FD4F5F6D3129FCFFF1F4A912B0A7DEC8D33A57B5AE0328EF9D57ADDAC543273
+C01924195A181D03F5054A93B71E5065F8D92FE23794D2D43A151FEE81296FBE
+0CF37DF6A338C826464BA5198991445EC4BE80971DB687336AE8F74B516E333D
+2D8AB74D362C559AAE6ACFAE49AEEF4F52E28C869222C1301D041E7A0BC1B608
+1BF728EF9E98F3A12EB2714E7F16B14E055FE1FA0EEFB058860ACADEDA9D0E4C
+42E3C6F1E4869471BFAA3760175F3FBD842755A9D7847EBF605F18293B42F557
+FBE2715002669091BB033E1AAD657532F34F7C66E4F04D63ABB07E6CB9D9AEAE
+78EDE8B79DD9BC87A1FF445EAA05B5572BB880E69F4DE1F82D7F0E9980AB0C18
+22C448B0B1722D3CC33C56FF287CECB80658B3AF5E7675BE82CEFF3DAD5942EE
+A03C955FF979E41E54BCFB5316A9AB8945C403A73180D0961416EC9C92F49811
+4B91BC4C788392994587517718521E416D469F69952149FF7F9224377EBA1065
+4A727BF806A112A7B45B0A1BA1D5A23683960575368D9EAC8C04753BF7465AF7
+95F25C258C63E4FDFFD0B412FD381946AA38C0B961652BCEC30322C47BF4755D
+9F91880688AF066E32FFB22E1A52DE741307AD3ED830D6BAA1D1F562919666DC
+5E8FD9862AC8600B0AE0BC7FC779252AAC57248744ACC8A8AAFA836BCF09B0DF
+9253DFBB1CB77EA8A59D42D1B18FF25E9AED72FA62FEC3F126F030F5D7DED9C3
+CF60FE890BA4A48E39E687BFFAEAB96AE542A6387F6624486037C8924002A511
+BEE5FBFD780AC1D4BEC3FBC47A930BAD0280D444259528B6C565DE11DE36BB65
+9BADC55C1EDA1A80458E98896D782DFB5C137897419602809F9BF8CA39F00C68
+EFB9E076FB324C2963F23CBFED28B9EF70EAA4E4B903225D1F199A7162AB239A
+D92D71C18B1B682D04C6A48926275BCB16D413B2A0E953E1257E0B12D8B717CE
+2EC84CFBC046A4338A69F454A469B12118E562B4F56C5FFB3CA5D357513E6FFE
+947A564B229C7FD873057D5C7CDF03E958294A1003B37D8DF565A70A00A3734B
+0138AE5277D383D10C2BD853EF806D3CCDC47739F0E374A3DF3B63638B949ED6
+4EC25869DC1C0B1F4DBDFFCC97382841D8F10F3635C792139A1EC462FDBA379C
+BE0990CA2E70FE73137AFBBF30CA54954D7E7377CC50BDD780DDD4C7FDC77AD2
+F3EB1169F14A0041F18160F43C24FAF556DB5D621709FBC544CE55424F7446D4
+6AC07A51C8CD5161AB0AD5084A96FB35D77F1CA155147DEF8D7A590EA6939514
+D4A226588295CE0007BA8A550895511C8D80BBE5CDFB8A50D249C3BDCA974415
+F5557914A9B805782F399E4078DDB6264F1A49A9A5BA45E284A5196E9828EBA8
+481D357B8D9E6ECA631A6204439FDFACE7D7E6A2392726107CB7D2517CD19A24
+FBE592C119626DB221BBB635B6EB84845C16A9585282E34958B961F4A543AF9D
+419B6A9105BF185FC767712D923437BE08A9C0EB92AB6792DBDC671029B6FCA6
+7F717FCE379C0F3B51C6CF042A762ED04898FBB4B0105C3C4ADDDC18C51BAA3B
+70A93666669547081D9246732CFF74C83EE90DA17F5B4F8BAF47FE4D81590988
+2858C9B96071341FA0A0D23BDD4947FC9BC2297913CFBD4FD6CA4303AB3179AE
+0203F1BD502065F90CE9BEA3B52DAFE4A29446082EA0E6B1D7AF1F31D0AD02CC
+9A7FACE2CA86E5FE0F6A425B28A5940ECA306891CECDB3CFC7A5BBC76B5D9E8A
+C754379ADE80B4D72CE493010317BF21A0CF4A0A55C1246218839DCA3F4D626D
+1F4161D38F54AD5142C1CEE95C61D8BB10FAD4B772F4955777AFDE8AE5A837C2
+A2BBB11D0BF5DA2E63D0B75ED421DBA9C789B281B01846B65DC572BA69591969
+21265DB722AE86BD8CAA3D887C975A617ACEDDFB7AAB341F47532AC0F354A530
+7662C089DA3939588774FFA16FC4A52555DED6D6F51DE718BF5F345C23C90198
+17B77CB8B5D53A5CE7A79F3E286B6A59F3F6178AC8BF15C0A15C1A8A95D03B60
+30EBE53DE328CE085CD9A1D49C69AA299C5B58B24334A546F6E274C1B534DC8F
+3289553F560C2F81E413ADB92FA0E7DD1C2F39D5FD268EBA97AB7335ECF28257
+96B4EADB7D0778706CB41C7E9C882760E7670936774A1088FFB2011115FDADB3
+B69EBD5108760762521C25C968C3E282DC3400001AC8FB1EA27FF643E3025950
+1D617BB8BB321281708E496277E11DD3AE0023DA9F25AD06B39C7CF527FED27B
+57397E88D3DF70EE4FCCEFC8A0927D6B05517E571B3E70ECC99F3CBA32CCD4DE
+B8BF22626B6C94FE65598A88AB90D238461EBD9A098DADEA4091AF1CDD7560EC
+8E1B9BC2321686E1759E6B8A270C8CB4A254F7368039602EAEAB86ED21CDED91
+8F2DB9889F46981C494C7EAF5E819B91C129F0740B8002B510014985E5791F59
+B16879CC6521D8E9F1C4C1890AC85A78022BE614BEFF318AB2616F0C3F02405E
+BB425D1555472A2642BA7686E431DC3FB8A1688B76660D9957C3FDE8D58109AC
+21B1234C9DDF3F0FAF93BCF7B2F88A001F23162E1A13E5E9118D51B485B70A91
+D0CBC39CF44413FD8686D9030782DAB58064F5B987E0402AF5B264B17BD31BD4
+FDF63951BECD73ACA6138854EF35B062D01F33073850D9C09A818828C581241F
+A625AB3638081DD0F00F946BE5450D38489CECEA4E66B4D85CC8AE0157E2AEE4
+A22A9313829F24D573101D84CC1784D1CED7DFAD5DD966601370C6CCBB723082
+A86BBAF0A5D867D0D2E3CA16E14E5109A29EF02649C47E12E88B3B397D65CACA
+DEB9940B92100744D686066F8250FF30E5F13D81428EE238A2E4E07ACE0F5C38
+7D79D4A336D0D26AF9C2B84088ED8ECDF94A1E3FADB45AFDAB46CAD6FF950B0F
+07AA2CDF82374DA76C56D29C80138841EB13F0D02ADD32F88B23E282ECC845F9
+BB9AAECE9CDC644AC2D49577A92307A83A99434F6493156DF25DBF0FCF2EC21E
+8C50A312C3D19E0609C0038554CF4FEF3ACEB7A833FD54B06EF0D617C2971C89
+E4C06075B09B84A4F78A82152B9A9C540B1D881313C2C74F20ED064A9606EC2C
+B56D7BB4797F1EEF4A9B13579CCF311FA4A4DFA62D80FDB7F535CC6526D1AAE5
+45C008EAF024B48C377522F74D939A475970533E645B1BFA81997549AFF26F67
+2AAE6C2EFA357DB3B525276EF330905688777057F4E4CBF584520A534A8587E5
+5A8360891E75A15205E8ADAC4A4E5A6E27D0C4A7D492216E4BC023AB027F37AF
+A8DC7579BA50204D5F45A51460C5BD8A5A7F87668CA6451137F2F59E117BBE28
+5C40820882A5546FA76F0CF49F8A6EC445F0647CC3227C400F56E7E9B84A6975
+E85E243CC1666DBAFF4E07EEAF3AF71BDACB30DAEA792F2B8504CAB071544F01
+5D66243D529C479D276FE22F7E275D9E7FA9C6EECA18716B2F213916E32C1D94
+6E32397B41AC6779543218E506569E3544803BBF9B404A983EBA62A494187B30
+8D3DFA4E1237A2E5E08224A60492C09ADAD8775B7CDB830520829BA164209ACB
+BCDEB2D574CEBFB7AE4BE72DF4EB1945FEF2458761AD8DCC0D378AEB7DA002C6
+9C14A665DAAA532B0ABA98D7BFB5A6151FF6703385AF7AE8FD315A492FCCDBCB
+B825707F9566B3B4943A3C61C3DEFDC31A843A2D67AB06891F3E110DD8C73D3B
+B5E4151B51D9F13905D7D94DB9ABBFCAF35F43B6EEE256B1A80ED6D1739D8D5E
+8C767F6F0E8704C5345D028A2A6DAFD9BB7AA048B8B895FE9423A7ACE858BADD
+595CB074A128DAFE08FDFFD6BDAC0114159A702FDCBF8013804B0CAEAD7AF38E
+FAF086A3248AD4FCA1401A85AE2F72E3E6956DC0996FE8ADB18F89B14A208A15
+13F81AF73D0DB72F78C4DA634ADE3C73756CAE6AF2E149C26316DFD93370BE1A
+FB4A79F77A67C07CB0A53C78367F21661D4AFE9E27328E077B522B50FD9AE2E3
+DA087BE481515B5DD7BF894A96A84A6C78874100505B7DDE1D22EFCE8D58B3AB
+313AB5495F72E2CA4E6AE22C0CB854302B9990372F1661D9F0A517F90686F248
+C5643008B3D29F7296E5C8FD4049886662EFDD4106E17C879F5D41CE84F87E89
+F6A3117C968B95A35940CC29C43E1E0DEF51C1E46B676301F40D59615C3F73DD
+DE37B72FF7105DB84227DA5241583272AB1C3CD97AE11C1EE98FFDB5E5F44844
+8FC41BEA5C54B26341AFF6830D9D0A5A2901B0653D8BD0746838194D240FF753
+E99750D3383373F453723D86BE97B571B8B84D8696089B5CFDD53E6C562A2197
+A8C4FB0CC690C27761A816B441029D3D306245052E0C41B53025D8CB7267CFE3
+C17FDFE348E765326F91AEB700CC49162DF748171214252CBC821493DD01AA20
+417D66DF47EBEFFF3E9BB2B0A2BE7D9B8C68BD570FC2EB0FA54CECC318F04C43
+19598BDE93F2F13DC7847354C99059AB20593EE51E94F9D4E9241869D605AAF4
+9D9B5FD88C3798A039A67993C5EC68B6326B132E647F67EACCA7F7AE7F718D85
+12666E90D7C73EF210E344964A38228B236679A2B18F5E081234CAA2458F8D83
+3F0CA308D19663CB12EB904076EF88E556407C33C9380A6A3D68A9EFE65387C1
+A1BCD2D26DFD2AC0881EC30E81C0A4E76C244A2BD822EE88C4A60B480D107E68
+90E419A1F512E865BA922A7830909BC2611A80931CB2E9344529586726614D94
+3AC5200FB9FF68AD9686506C5EFA8788C0AD0251AFE7F95E84683380CDB421C5
+B1A783B6D5F3A6BD1BC1C14B363DB01C87C0796DCDD5BECF41A1A9F43183CF6B
+82C2AE49F0BFDC5DEF7729F2E638EE6EA9E4D059EB9BB1B992AD8C82D501A550
+1BF73CBBFE740179B54E193E84A55DCD61B343C1852780FFB44248FC9426AC94
+AA2B3FE20FBA30F6C4D1E0FF3EDCDD8C0F57CCB50CDB0EFE2E04A8927E239C1D
+9B026C7929BB48461D4D695FFC766C8A0E545B1BCC2AA068D1865333108E7985
+2D93F9B00EA0A90939D0D3840D59B6CC0CE2C147B2E1A9A4F14270FE3ACF51D5
+99F7349106165AD627CBBB0ABA01ECC6D3A14C1DC1ED23A9DB9865BB4396C51A
+31ECD001EAC94B33C34E29C5611148EF3E55DD61813470B8F3CE32564C749414
+3C93C77EA5A3538A0B5AE3FC4DA32813B06772E0E48E25BB39F3F6FDCC077E86
+F86FA50E18FD19EB2F37311CE87F18F3BC85CE7FD71CA92D5C3264E34E04A2E5
+70C79D99F54D6C6D9D527AE45EBB48411221134587D2253E7C8ED7658EDCA34E
+5E768DD14E0200470F73C44D006CE8CB35DE1CA3EC10ADC668B0662A7774C891
+84EC95A31DD872F0728D9F65CA80940080E04630BE4DEC77A2C49E3913C39978
+BF145F8832AF2C4385EBCDB15F9D32C22CBA0CF950877717D6F1591D7C0B8047
+8C9BFCB16AF7124ED83137695F3D69228DB633053208C29E0ABA1B06A7FB3EE7
+5625CB44927E2DA6E038A6E62DEBDA2D96A03177982D8FA33BAAF4426E05F4B7
+9C1748B3FF7691F9888E7FF864A10B9DF761A41E6B5CFAD2BDD7E1C4924AC97B
+F4B352705316DD1A58637CC12D71C18A5CA691AB2AA8F171590EC24582B1123E
+94D4DC587D8F99E18A711776BF4013C96446BFECFEE4C809EA94B169088024DE
+0CBD20199A915AA406F0BD5F3D63D1467C49B4691AEBBB35ED6624F2D7BB74BC
+E80FD92B9FD04DD9C2BE9B6FD29EC7EC07FAB447511C61DD299C783BC09AE2A4
+7B3CBCA6A20C6631D06D0B2E2482A50612BB7C29B7E7D0A205EB0E8436702581
+596BC996ABD58CD8D5BAAE4B1478195CAFF98FE0141287296C4EFB8D2E7A8442
+F0A3AA9F9264329982532295A176BA1867EF732BBAC49AF485D9D0F7130F617E
+7F7DEEF935874D55A22240F8EDE4F247D5F73481373A392D40A8076BD91079E1
+1CE5998BA13D48D56B49A92B4A18430E316405D2E2E391B496A1934671FF1785
+AF42BA3B2D14B8E04014437FD194455C50289DFBA61B5C377BCBDADA48E82DEE
+4E70EF5E9DC03064907BCB8BE4D59DE069FB0C0CB140DA54708E630767313F9F
+744594AD8A499CFEF733E640A11FD74E46A749F9C7D18D49251BF85C6EB4668D
+67598C31A8F90922FEAEAD4B83B6E7184567DC798E4BA1C4C9B3461A478D63CA
+054F13B502DACB674EB49D6BB935E5EC82BF99FDA7D47C581AD7F940DF4FC6FA
+6C6D25D647033AC69505F0CAC58DE99087F365531A6283CB89CB644688963C3B
+8B2203A94294E58739EF23C7803630A1F9121D62BE1977DE2F41687C8CAF87FE
+CBD7AD3B98E0D95C8C6E1A7CCB0E09465AA874DC90A0F5DB2C5E7C130297FD39
+EFE63B0350B5139D09E6864D22C3F1150B29196E40EEF9723E71158B7ECFB8E4
+C426FEDCD439420B7F1C251FADA347C9A2C49738B5A17922E1EA93CA7B125B76
+57449EAA9C1D591CAD327D0E98EF2D44D614EE9ED49DD31ACAC0B956620B6BA5
+5BF6D08CA7541059D5ED2EF00AE2EE95488F5645BF6837D9241C0D3959B7580F
+C9ECB2BCF3E65C07D52EC9CFB21C11CD4C883E44C173214C900C44D2E1E43DD1
+CE8DFE3DA93C38B548BC4EC46FF91F30CFB97525E1FD4E77686433B20BABF8D2
+848C1CDF1BCF185CFD7A81D2D4BB826E837E2AF35CFC4F419F698DB0C43E9F9C
+B0FB628AC9A3CBE9B1FF4A067016E70333E78B32AB2D89C483834B31F5808FDB
+77492E099F1504DABCA5722C7860CDCEDB2DDEB512FFCC7D287F4945FD711F28
+87BC3D36173566B81FC2C1290C717A09697DAC6072408E20926D39270121CE58
+3EF97CE12EDD7F87F2C8CFE36C3C0400869C0D813B71C425343EE0CDF717BDD8
+409D5297D0F8F7FDEB0257C0A391F5635E0DB1116058942FF3E7C94D5F2873A7
+A3B0ADAFC3835AF2BE474E6741319BC6695FB37F59AEE388F81F6E66F910000B
+72E6BA7531B4378CEFEEDC79CCF4947BA1703823B5AB4F4AD73D9615C66C489D
+99D68E49C9BF765B7FC547BAB9640D51D5A7A2396507AB5A4DFF3D14F52422CD
+8FCFEAA06A56C6C7FFCD29C9A7A59DDD2A909A9363FE5F1E9629616D25ED38CB
+E754C059E4379318CC491C3B1A90128693AC53F80F8210FAEA7EE638902A7D3C
+82B95B3F5AE340EC1B648DBB9FB679D6E80B7F426D8671FE7136D97F51E2D2F3
+C9CE9183E4061CA40091A2A70DBB9ECBB19CE3F65ADD0FB346B54BAB182E2CD0
+EAF4C0F402C25573FB344EA771B297BEB615FCD0595172E84ED2A62FF8962634
+23C19076C2A9ECEED5135994EB397303A9619C76DC55E032DA83FBA441BD484A
+59F70A5110A8927F6239A14D4E223E189A5462E4A92EAEFFA4B961A2A32B320F
+C2B4E8C1821FA67A655B5042C15E4DE1FB3652B55078DB123573C4E986B19DB0
+1C5131F3DFAB271C30A5476B4A19D8FC922E31879C34BAED94C07A4841B8209C
+403369FB8E842610D1EB4662B6171A4465FD0E819964F62EC5B0ADC92F08CF90
+1DE0B410FFBAD16F6D355E8AD72CCF67961EDB6CDA82398021007C2D0462E893
+75EB0710AE4A6CDD15077C9DEFC5774EF4A657734D703CE42174259B58E5277E
+0DF26BF59AF8D1A3E7DC12E3C12AA4B67CF35B19962F6950C2020B698D971B35
+82FF84E72F72FBB0C54A112BADBAE6C4CAA358BDE6A705AB59332C3850CA3D25
+C7564499BC1319121CE0D93218210C68080AFF33420E3CB3A48BF9EB66BC07C8
+A79D8CD8E78C200FF7CFA3DAED0B9E87E6141C88B436D8FCBA50AC195FCBB9BC
+9512B95FE3A37FFAAB39850FCEBD4D50A243EA416E73F53B4B00F3B6EAE0CA06
+0693AFFEF215D00BFCAD02E45496D7C8F5E99EB9096FC4300D038C1AFD31EC4C
+5ACA6B72C1BE7204E37A4CBBCB1EC26AB87F2FF82DE20601025169A5FBD2D060
+62B5B2DBC288C79C33B596832AA18D730AD572C6EDFABCBD36DEA87C0F323C3D
+6E537AD3B43C6F3A905597570A8C6B0B4A5E08C08EAFF9731E745F2BA8ED0C0E
+1ADF7821CFCD4E38F3F4C243CAD31D9F8FC68B9043740852B4CCBDD37BF728E5
+648215961FA82A0C847ADCC5187331D0863A4573BE520C02CAE14AED4F06B3F1
+FB4A318AB54CD86DEC824707B29F858FD726A167F2333855C0575EAF4EBEA0B6
+754B1775F967140641FC06F82B191244186FF347A351FBD8FA62E8C978B21F6A
+E124929876488AFA97FAD1A68A0C3496BCA768F4AF8016D7A65BBA3AAFD7F5FE
+E75FE714FFF3D54D09C9747ACA01CEFD260985C6E87477C9C7843343C7E9E3F4
+0537D461EF019E046DB8B5BA258462B2FAEA1826B3410BA3333480CFE0DECE61
+CE2731FDDF7FCF2AEF7CC2B1EE7095F480B3B27932ADC486BD9CC130D94BBD05
+43872FEBA04FB8866ABCB4D379696E73B84BBE98FBC4A16CFF22F8A7AF754624
+2912C228030FF7EF23D51DD61BEB5171AD31E2B630475E16B6E0F3C78D44AC30
+712D165DB5ADED89056FBDA355CE0DE5DDF2A52DB851879E39085EE9D44EF757
+9B4BEE1ACDB865002ED4C5A98683AC13D9E1F818EE88E0A0408E13888A023B87
+31F35E750C4DE7EE68DFCC0211A2860C0988F6E682EF84373DB982BA28162A69
+64E9CFC6ACE0A25114F95EB7FAA7E99A68533FC4888AE57C5C104B219CFCB938
+DA518553B57BB2D9E462A5A68F1E8E0044F1FBC52560D53A6C2EB0393AF5CBB1
+55D81F9DC2C643F2E2DD0129C306FA3A787149550BF32119399076BC885D150C
+B3584CB2DD79AA0B27FF0D59D7CBC477D5A29F789E37CF19F32D9D3F6914961E
+AADE5423667209A686D8BB6F2293659E91D09CFE321C53B34D830CF72F00D3E5
+FCD3B6479BD4C862429A52E964B3BF8B81906F32517E927023C2AB14AAE1BC5B
+6B0B906F420772505D76FFF558C9D3BC3E980A1FCC61E9AF4B9A9843EC4787D7
+C41C6DEC165A5299444976F34F301F2950FAF95C529BF7A74514AF883C50B4AB
+C21227588FF0A57D1CCD8A91EED659F63BCE43D5ADD1F3CEDD661CA2B68654B7
+01E17109377F92C75135E060CD805F98FF47DE13FEB6C7FEAC15DBF630016448
+6C7F12BBDDF1C248C3B8FCDB8DF5F93357AF164A7114606087697E5021AFED3C
+0F775E02982C4599496B71E4B6F3271396CB9B581F70DCBB0435F111D2216D73
+0C78C0A5C2AA5D2A40758BC181BAEAF2641B439D4FA6EB46D03338BD95820ED2
+D57CB7AEE41EEDD77FA59FFD1DD7B805B567A1164AE77D8DB5F49E8779938D9C
+875AABA87925BBA4B374E59AE9780D231EC4D1B192E7CCFC31D87F5378200532
+F64EFA6055C148898D5E67ACE7363D8AC3CA2050EE8C47DD1EE29FDB882A31B5
+E8116DCBA78D5B9329DF559EE4F7855222AA01E676A7CEE978D9881121BBB96E
+DEA72B73FDB70E170B93BE01C4159319F4FAE38ACA41966CCF60A8F9424C098E
+69210A0ADB89D2CECD169D5448BB34DEE20D9905BAE45DE37F41259185F8B175
+B8EB2AAC102E05940B494BCB1F3B79458F0086AF241B063D7EDDE676BEA3055D
+E3D18A35A848A22F9B4B79DEBAF97466F8158D8E782331B673D4FF9C12177DD0
+CD62BCF177DDD0F950A8652AEF529AEE43BD52DD513F8D6585B85F4896B45B58
+6F0FC7FFD12BAE6B0E477C9D6510F6E87E3B4D75C9DED5592CE95B6E8ED406AD
+D71F59197A116377319BA68A214FF237B591757AE362289F2782350C12666847
+91F72F0A88E56827097522C55B3F44D76ED3EAB90B7ED0ECC3FEF34DC3C0D391
+6E06E03715926E3AA986E3C5DC076EF9CC0F5B71FFD3F02ED339B1CAFBCB04B3
+D7B17B617003BE14730CA3341A003EFBCDC8A176BF4467440389BFDB7D331823
+CB278DBE285E6732477E017A2A9B1AEC5C113A491EEC6141D7B9C435091FAC4B
+6C393AC995DC79F0046B3CB03CC01F714A30BFA08052C0BC7C888B1E615AF648
+256AB8F551EFB544240131B54C3415265C6716F9E852DC4973525332CD5B181B
+A4DE4E041BFCD79E978E572C2A53A7395F23977E60B61057111B47AD35A580A8
+769AF52AA9067CBE946298D77FACCF06BCEF0514943EE8AABD1C54B9378F0BDC
+CFE0D81EB1BF9D0082FBF97648C763009B41E8610D6904DBDD4F1C5D82E6A663
+2F6F7C4F99B83C0A327A90E16092E7963848B243A7E718E078A209B1A830D978
+73588ACBD3E1F872900D4C3879524F139FFCA71066C96424771C19E5FFA0285A
+D0E051214F11F4D7557C8B376B7E6DABD206AE08307F20F12755B39306B35011
+E5EEF050AF9118DCE00ACA6B266E66C0C63D579D7D90134D82268773D570B7CC
+5E4C183ABB09646D3B9E70D06E2CDCB9EA0B108A6DA4E3AEC5733CCC0A14EB34
+1D39DC8EF3308FF55CCF1F736B2DCBCC90207D6D484216A28C5BC32775C91D2E
+78A63A01BB22EC15E69860AF1EBA0D74EA154F044CA403E210291D18489EB661
+40786D375568D52BE04A49C51F2E294329192552E084BE826B25EC6A254D891F
+6C34A8B08ADD1BFB2FEE17B28CEA54E4FD352E2A01C649D05BA5E72722D42F5F
+A2C90C27FECEA6E5C21B0DF46E6571358C04287147DB535DC397A958A90F9A64
+6A60053642B8607ABC3EBD65B1A46F4B22017F945D059975D7A2A465E13651D1
+96D111DCA6B3AEFD4F3B5C0B51E968F9C6E1C365A390850BBEE64AF381E7929C
+9EE72908432B77B9D58B0DEADA36802520B699766400B2B04AC92014D99C669F
+FFC0E2127416F71925E7579213FA266F9803C197F2F0722B37C78C03A505C76A
+D86B400C039466E4D2E2DC5CEE614932A0B8600811EE809E21446D12A4A30D8D
+32C6AB1BDD383C05897CB4A08F719102D38ECD71359273F623865600455A040E
+EBE2FE4D6D031A0F96FBD7CD0EDF88C6D092755EE07DBDD793FFF279D1C5BFC5
+4DB4D3E4BFA1A8850A608BD6F635A7AD717C45407607FEF9E14576EAFFCB5EFB
+2B8C1B12CB88CD3D70FDD0458443046F85CE4DAA12FA4BAF6FB1673A1D3C48CF
+2F891D1BF832037885457B4E46A2D2418AEE1B46C30EE4E524723B7842C9DFD2
+60A72B6AA65B88031BD577A546CB320EF9E2B980DB8E85BA6652FD2BF20BB637
+2753016E7800E540154727C01E6ADEB5422B91D5C20F9E8B2B2AB9109EF13F05
+15DA2ED05ACAF566A51BED58221EB434CBB6EC3CC34C083DCFA54694A1E9FD7D
+2FA520B3DA37095B92844CCB2958E86484759AF1657B5B6966E70E21F720B0DB
+51F4C3D14EF63A60A5383CD166AC41860949F52A9EDEEBE352C64DE286D9FA70
+7030FA4357196B56E8FF52E2264DD8DB2AC5057E448DAB1B828DAA153393C805
+A57328D0583339DD7AFBD7A9A5B0D67FA92C62046F8F9B2FD8FB424EC1165936
+486A469AAB12FF9490BA39D4AF4EB41D682F278423016AA6C173A2ADA81AB2A6
+919412F56463799ABD6DBCC68A96C67C18E793A4B84027DD9CC233310E84E4A3
+1941DA5DBBBD462F7C7605ECBB28F46E6089E9B911CBE04C207C579BD999ACDA
+F9A39FFA4C396166DBA3A7286D8A6830B975CFBB9CB99DCF36A3057015218BC9
+C05CCB01B514AF78D5E3F6DCEDE6816E64719DB53CBDADDC52C3E05E2075813A
+9238E39CE61E0C17DBCC3D5A321950FDFA8F7DA670821C1F37032E6C52EC0BD5
+81F698295732C4248C634449F3F8DD016D07583818161066DA6D1F8F97F09423
+E887B17579B2B6AF2F4D18DA593C0A0E7DCD4A21AB3D7E657D12E07FD63F5B23
+2F362D1664E293E7D85957D450C025C5B9B2E8889283D8C8D395B135AA50942B
+AE668712615EDC2100EB5EA761360E565F06A23BFD436DBFFAAFAF6E583E84B1
+AB02C5418E41B8CDEEF026EE19139441F33DA61F28E6218B0F2C7FC79D2A3AAE
+5C7270F0032E465BAB57AD5323F4851D4C231A66D4038562DCE696F2DCFB0F7C
+B85AA1DF6068D85C017C5C95064FD4F0C3EA966E1E94CA3C9C9A76AF0B5E981F
+4CC71CC9C686EA4ED348CE57AA6BD30A16F7111E092D81B6675F7EFDB30E4411
+C0CC449A53D60F13BB248ABFE7DEDD56A03A675707AF1B1F13829E41C9226504
+FBF20B944E575731B7FD1D1D16B18275E7AC756800BEA08B3DB6F505127B6BB1
+2E49246603B265FEC2DCF02330C86FBCF9C9F83D335E363744CD49AA4CADCC4C
+EA2D570C6B130166F100436E50118D56630E2B596F44D37275D61DCC9C9D365C
+DD280B1E3C50F7CA3CF3A7AE08FD2451ECAC08092472D660BF787D04D3C3B936
+7292F46A57441B15E7398C7A2E139DE61729D049484B9E9E29632795AF3C198E
+E450BD4E843FFC0B8EB45D3F0BCD408A33F6B9E6B83E19317183654B196D9FC2
+BF327E50BF4F5CC83989D88683FAA8851FD91BCC64C797370809623DEA519BC0
+0F6637F304BE66317FBF98F8C700D28D74B643FCE8517454412D0F56D4DA901A
+8C8890F98BDCC83B836F806A4BE2349868E7722D6D8A260FC3FCFD39AA2DE620
+E8F5EB6FD9466F7135C436F9E86937631BA472EA77E9FD4BB9E5772AF4E19232
+712783E10A83A065E1DBE7F3DC45CE16D1BB35113470C88FD7BACCCEE874208A
+43D915B0B6D0A497D55D5D4ECA65FBBE334EA902D71766F00B1D950FE2F1EC77
+E4ED0E969DCC78C7F04BFE7D03F1113DD85A47FDD921E4714A59EFD829D62F1C
+98876969C68FBA644BFF55B3FEF54D99E081FB6CBDA470A2952E29F52FBB59FF
+778B2A9327D0E12964F34E1537E81251B2C910E6F75497A01EF0F24A3C85B421
+AAEB193514A26869B53A9C7974CCAD5FA2CD9E3598353D755B04597048C5F740
+81CB4F80AF5EC07078B84458A0EDFD58301CF24967ABDC5CE8B6A9737748C494
+0F16EFF7D430328DC9B04E0770C70E68BA005506E86737776B763EB88E64C5A6
+F5EAD4C4356F4A196900B9D3878A0DFB898496EB0C85EE207C50C868909D0847
+87E9D16DB5DDA440CAE1D609EDAC8D96E0E83BB67C74AD1271559593CB4733C3
+58D54577B35CB1CF9B954A9C422482682732835019D1FE22D6A0A6EA8950D25C
+E30AD2985C44267209498029F8FE133A435BD5009CB0A8A1099E95B34BBAD9E1
+8FB64C79F6E1D8C09553B35A952ECEE66360621077435F8E6E64C1C6D7713BC0
+91DB1434B9CF86CBF48B2FEAA908AED5691CC81C09D87EFC6FBFFC2D1F79EE9A
+836F333D6B473375BC8F6E8102B0C24700FF38BFD7025963C86218DC1E077559
+D4B80B68208E317E47E4B6816F04775C64DFBF621883955BF81D0DD586B4AD09
+CC10EDCB8A82C0B6D4A7056BA14A113DF3B35C7300D43772EEC5C0309A741CD1
+1A26C2C80D520DBD1EF1256B746BDA0D34DEBA442BCD33FFB6F103EABC60C585
+D885AAC3E1B6452B48A66C83F918E918EFA6034829C898440E436AF1A3D81AE6
+E74AF9E8F505D5DBD7BB58432C5AFF73C5406D78C8BD85181E5345803B2D1F98
+0C81540F82A04C357AC31E9AED37BD4E8D5FDD95B058AF5AAC0E1D35A7D11095
+31D1F8AFD1DA22506B8E1B9D72D91BC9F19D308C7FE6B85C2B8D5109276092FC
+718C3892052A890B3F785E57F91E83FDCCF702117E5E81A123C53218F4B74355
+65BD683FB87D87527BEFCAEFDC83C019E7FF741486E3CC1597B6A2E493D35603
+92B57EF508876C54193887DAEED97A41B66FB83412239066EA2E1C0617FF7B10
+8BDA62531DA6C6F8F06B7F150DFB3F6905A2B7076442F7C4780A41F6628E3207
+1D1FB86627C40A84D9894B73FFF000CDBBE088CFBBB241FF16C982353936EB17
+743EE092F93894D92E9BFD73E382FA5E618B21AFE8E593B35EDC97D82D5FF8BF
+485605DBEF4C1C533AF217EB31852B6D05ABE12BB50F307C0F59500B5F89CA28
+D7FAB89BBFE04B93474B3E6E863F5BD37222A6EDFE81FC5AEDDFD128DBDC1ABC
+EDF98F9D5AC4888493B4208D2B7C937BED3A271F4C0DAF78D3F5809B3697E28F
+8C8C00C6AE930844D3B54C6C52E0F48DD76BF562C67D4B035AF36201AB990445
+6DDEE6DF82A8E4242787B565E8DCEF69D54DE590019CD5189053A04342E2515A
+CCD0D4F3DBC7ED1FFC82F35407DB1D4D5A322B7957A40C30B3DAF4CF44CD096B
+B8C19BE6005DB525A0462BB49665589DBBDB111CD21AC2F7B6AF3F61D6A97FEE
+5103DBE08AF0826660BCCA78410A361CA68950DD6A0AE6408C5964CC8C73741E
+4ABABF4EB49D61BE53561577CCF022347C3DFE48F5913E45F1C7E39A1747A0FD
+E41B5800AD5FFCC50DA109F2B38743A9566FE6098A85D27C1E3C069FACD059A4
+7E4A706761CEDADAE28FAFD44A8C3F9CAD93CA94FAB838D8053CE56E0B0A4AF8
+CEC76D72955D888BAB4ED03271BFEB2A41EBD7F7CE463286D25F49894E8E6BEC
+18346F4AAE8B7C2524D586C937020B6FEA4A69562275E28C1CCC37987E6CB9E4
+27F47C1B45D60889D8C40A5E3CAF5E67DDDFB2EC9C87142074CDBE0FB508EE5D
+7F9ED4996F009B94E0FCBC38938DA56EF7E86ACF4ADC049CB2CFC6B9E2B4CA10
+699D52B2ECA9AB025A104109637D50744B218924373D1D0CD1138D516408B64A
+DF3E3A16F462AF6BE00DCA51EC0DFBB796313B65D01E6CE4160E071B17979990
+D6337DB92F3F112025DFB0DDD1E1EC1108F55EAE8F96788A1894F59B525F9935
+CE8818B66542CD18D019EF18D77DB8FA541BB47445DCDDA30156033BC031C191
+5039096D293D1A34FA2EF1551E243E1D88A55EE6E2736DD1A725A06F6A78A520
+BCAD87F68AFC45540ADA3D8DE97841178A7FCC969C159FD2B6F5153F4912198A
+A555B9250AA73454E9DED6FE1060661BEA6283FFDACABCB0207B3A48E036C39F
+731833C66AE165844344678A3D9A70AA3910473EE01100585DC37E364C3DCE0C
+E81306C3DF3C6EFAA67A8DA1F07B0D7B0E919F4C6E7897A4B3AE49A29ED10788
+83FAE69A32A97E36A29BF854831F84534C1F36D962AB49551028505A5FB3B84F
+6F0D66A06D333596DFA8F3384D6C74022523B58F1E96BA619278F79B6D24C63E
+138E241ED8ABB23DFEEE6B7B2B7E16568AAD039DFD22E5B42AB5B458FB8E7239
+57282147B69E6E3A3C5C70BCA065826FAACC8552FC0DEE5560FBC1084255DAA7
+2E8D48ACFB4C3AA1C28F0A6F7D0A6AC1293AFA503A96B664169944D0F31B4618
+C09B8D108D0F77B9485D1ED26C487FBB8B47F83F782A0206B625A4A81A350D75
+A1DDB921F0610A4DEFB93C2288CEAEBE0AC68F757D11D49F3052946BBF4B11CA
+2B9171A4A18D8C5C095703ED5F10D93C6EA3B4E46E0C9E9BFF3AC1CBDEB4E019
+123CF2099D469FEFD70066B214C0C76C0B2E0F4110DCF2FC8E8619707E025927
+8D5E5CD3C4950A055ED20CF299DC3127B7FA0AD747533CE11921DC4F110B6ED9
+21B9BA08CC207FE021DE4CC5285829F47A92636B0DB68ABFE8E26A50E36BFD2D
+C2641EFD86B588DF3AA72309788AE3ECFE10347F41F051BF51F54F05007C21B2
+8B4F64329200E21994516DF419BB3E10224A92D7E5B7682D0FB7097EC5672780
+77DE4BC4B1A343611F79CCF778793766CC0E01795A83B3171421F40A144966CD
+41A188F56F3D54E6578732D53E21156993E78B903572BC184C87DB3FAE64D5E8
+597D06D882D5C0DA5F8F8AB03014C5886E836F601A0C4ACFF9EF81B986E9D053
+55BA66A303FDD1AEC853A9E30DC0C1F42E850C02FE9216A86E9527C1BED627D1
+6554C85BA07015A2A7A7F00FB51C14CC19DDB920C41DBF56DA249930D58C034C
+BDBF98F17F143EE5C635BBFDD3BC81E4A1805085AE6CC28FE3EB47C2818C35BC
+ADF57AC82D142E1AFB16106AB08A3DFE989519E5C5903F2D8C42B13FB114857D
+35B75B239DEDC70163B181AA43D7F9B964EEF1E43CCC9959AADE728DA6D08463
+854EC66A8F2114A2200EAD92D5003C357C0B42C113A0CF1095D6375B613FD68A
+ED6048680853B5621B55CA62EECF5C4F77F909D7BF361C53F8B90D853930267C
+A79CC67A446B0087B2B4FE074C242C8F3D8F203E73B1FFDB2433010E00AE80B5
+27709B16EEF0EF42DDD56B46D1C0BFEB89B5194A2285C9C2F9B62541C0F86BE7
+ED1903968B13FDDE177F877EC6B9ED63DFB5DC4D26385BD85E27B86B5AAF00C4
+427FF5CCD7D539D7912CB8E0FEDFCD4641CFE9922C4A3A67A72C363A18E2BAF1
+15B2C145CA6A6C07461E113517D6383A03120286883493139D48E18DCBA93714
+A936C2232F79E6482E870BCC7E1C22355316A34D521EF8405E91BDC56C0F6DDD
+FC53DD99D9837771A89B5B8CC3F176A2A9815AC1B6D2E43C394C43ADC530C84A
+763886ED0DFB2AC863D8EAA55572732446A31953620D920AFF34E2590F1B29C8
+EF50348330B6C718E8C23165CD739392185CFB2970BC2148CDE2D7D3C1A244BF
+AAD43899E41254AB30FEB10016E5F11AC0185761F73ED6285E041132B9F094D5
+FFCFB4C932DE1CB65666A1B7BCF0A610BBA9578B8414B90FE0F6D5E83C8B9335
+D487A8380FBE1570A01B995284559454E89DB607E434BEA9582AF8900C1CAFA5
+9411C8BD17F37969432F7CA0E7C676D77511DC2037FA3461C763809022E1A8D8
+6646FC08A21541654A5735BFEA2FA68D9995AE458C11C41D563418A13D5FEFE8
+E7E3E3A601A362CA2422A749AA1B226D35110B03270B6C620F851A3F50D34707
+08FB5DCDB10D33AAD6728B0E76AAA7E98767D997F144ACAE9884F8DE2B3FBCEF
+DE7463CED6C95DBCEA9AE9EA9E666B366C5FE334D03B0097EE7148A3DF2978B6
+FED5E4C262DB969A775F941AA6653FFDB7066A24FC6E19EA0868AC065D5863DA
+0BACA600CA715BC1A23AB469530F4D7730131556FA1B3CF3C78F2B37EBBB801E
+F108203B858D2CE1E432E9319BF6CF57137216505A8DF7F307E70DE9A2387853
+7C028D25FEA6C83C2558AACA0B903E4DE917B872C8226FA349F587E482ACC697
+2F8726CAD12A19032AB62E3814AC6D2C3B36C09DD4E4D8B518DFE2C21306FCDE
+0F030AB52B41116486DB9E5BECACCCF97C0CE60CA33F5E81E2B1E118F79F07F8
+51F02CB58E8F9C63A81D61D6AE819C82E5F473C9AB135AFA3495C8363A3555B8
+7EF46153D5D277B5759558BB7FA70D96D2B0F26EC3C984DF063A14463DF7BEA6
+398F4CC4E105522C359F8352D6A858A7AABA0FBB87168C7D00D96E1B3F15AA2F
+19F1838AA08018509DF7443DF50AF59511119F193D4F5B3EE8AC9B2FB7D19240
+CE2F356E4BD77087232CD182E5ABAE8F6E5C47B5F26F4EB75052CBB82F3A9AC8
+FCC913DABB75A51F49247BBE4369FC52A6A24344DF6926F3DEF4D4A2847A583D
+FCEFA3EEFDB13FF245D6A0B0D1B17BB4A1C4D6E94D577F9936B1079766C46960
+29B365FA82CAD68EC00CA7A4B89B4F06BD1B0790B22C5067B2D26AA3F178C749
+A146A1651DD02F0397673C670E06E6BF5EA920FCE3FD23BE3DC25D9BE67A168F
+07B8D5EE0A2A97DDEDED6A2707CC2BBB455A07FC27258E85A640C51802B19ED9
+E9F43E95A190486D28B70FFDF5D89E3326F9F8E223470849C3070250A94F854D
+871A511960C2B4C857AB6B83C6F56E99146C9B1A4FC2D3D192EE0AD1B448F573
+7BDE711B9E3C47EA284063F1F8490A6DAEBF52677F8C20EB7D6A9086084296E2
+AC144156509A91CCA3DE861398DEFF7E74C844A3ACAA79B860579AB910E5E1A3
+4C5A81109B1BBF9DA1C2C81928353A443031AF58B5E1A545EDC5613CB726B3E4
+169FCE4503C5FF09A1F402F99D4EBF27B3D8DCB127D6BD615584C311E3C1FE4E
+B288205B3E9281BDBC52A949E8DAAFF4FE860943E7810B65B4B000A5D42A6F01
+10626E1596DF0C854CE2F3407FE0E864EF4138422F16CFE2C65525E3972E42C9
+A27BA1895C8F2C386FB300CD73EC7DC03EA0846E3DC5B843C1FFAC25BA59F47E
+AC3787E294EF256061CB16EE09FC5295F5803BD3F24F6C4188E206EEFFD2580D
+94BCE1E6F9C606698BDB3218301D3765973C2B75AA913443CE6B1D7438F805E2
+5D5ACC016A8DD0B71E5D7EE45E019C0B7BA0C149B9158021B6F472426C655275
+C645CF768BAB03DC70A9488A06BF62BA784F44A74CAA79E4332DD8BC1FDD95DC
+3736404A100258673E4895B8E22B1A123E0919D5CC599CDFCE0BD96C10BFE421
+0CB3A7F194A2442E2AE8153C0B531D05F1704C4C63F8CA19990EE5A7D08176B2
+38839E6BBE2CA42F629F7EF5163B64DE09462BE9C202455EB083C529F48AA41B
+7E0342F4C28AD3DBDDBA75880CD30B272A212B5C3987D27EA1726956CBA39A5E
+4C83EC82BBDE3103C0BC11B5E03D951DD80D863D6AB24F1412B31EB47A1C92E0
+038E8796D09C6F32FE27EF73BAA5718CC8D84178C53313D4FA7720E706AB0B16
+8D264C86CE1CEA0DA942FBC8DF04241F2F84BD46A97FA6CA390A8A791FA8CA47
+085D532C8B72D9AC204A8F2711CECC595AB286C4608FBD36C82A2FF545602010
+41B69445CEA932843CD24B22261E1532E848148BEA74579989C0F3450468BDB2
+11E0247514C2C2ADC66820A65FB9C7683D50D5961C2122CAFCAB27AE613DBA6C
+911BCBEEA62D981B55615D47FF6E49C7348A680BFFE06EF9DE6E19DAD5424965
+DCDA1B655D803CE8581BA0AB7EAD32B7EC4C9CBE0BCC74DF132F5EDC9D50B438
+D87A96B3FF181058A150FBA16390766BFC98CE986C3875D8C6F15F78D88268E2
+42ADD540D06525B10F6E80F114E8DAF907F31B639FC62E1B824F3B245083F708
+C50D9CBD333CD4BB33F0AD549BC51BB611DDA9CB4520ABA377847C5F4C7644DE
+A3AAE8A48CFA03011ECA539AE646F47988982E09DFCDDB5E25DDC32772885AAB
+BF9555F6FF946A53E9656D625DF441C32CC63137FE4AFF164836EFC6718A8DB7
+B4D81E86F3D4D1A0DF6DD22ACBC23A2ED878B9BD43617DF539EB4431E7E49CED
+22EB650937C1188C750CA36E20C8F374DE68B7C79007729BE085772F7A3A8DBC
+9BF36220846630924F317CA350E9173D618F81DADACFFDE09E710299BF6001FE
+B5CF89F66F623A5F7CED70EE024B8ACEAD657F63F7CAA773B59B5620E72FC26B
+4678042E0BA4F75F5596600CCDFD7972806E1F3CF64C7EF3D88240C4A2A8E81B
+07B93F8060719905C7F7E877C4FCA35F46ACF97F7128EA1FDAB570ACC9B8CA88
+957A8F91D301336210FD59D3C5F365E822B90076231477F49C3CB4EC2792024D
+6864AD523326123254C7AE2D9C11D30A4ADD2CB8D8CA14CCFEE0FEDC8C49D2F4
+99C69EA518C7EE58E94403C4C20DB99DE800588BBF79C27C3A6F03D653F3C15C
+8238B0E8E607D425028405BE81042E33EC2B5595677AB24EBD08BF1858CBC0B0
+154D1E3CAFD2780D6A73BF7D8DBC5B800D4328E4F14955F6D86A2F5934A4EC50
+B2D7ADF53A532D6484677807839039F9BD047FDB0680C50BF89D3924716F80DD
+0B421DFBCD32F4A7C454B4B91C6C8639BAB5598951DAC178E2320BE563AE0F14
+B96CCB98F51AEE99B83098EF77FAC10D8B88FB29B839C094785F46A377BD655A
+68787E5A6DBFE78ED1F304AFCFBDBD481348A65D004646E03B5AAB0EDA67A779
+B9014D14750AA488D8DF9C9DD347AE5B68DCB3C28986D9F09C48612B8795BA3B
+702415A816258790947FBEFBE2B85BA0913BFF1C4F35C7464DCD0EAF8397A769
+8677C8DA5F89253B1C3AB2F41C3C5448F17C5DCCB18DE110CB9020B9E26F0BD5
+E0806485FDA93F3B54AA9B9D445090A23123BB399318B4771EC426CDDBAB6BEF
+8E24B165DEFDAEAB660649754283A4A3BEA95522F058D118C7892EAACF376CAC
+877028063F1C0429B5AACC47CA6874B8A83C75B78A64D21CD14214EEAB0F4FB4
+D26FBEEB479ACBF5740230C9943EF7B6983AFB683855A877CDB8238CCECD8156
+DF9271A64D6148560A81EB5DE5F20564E2EA814A974DAA436AC36F107B289E90
+111B28D488CDED75CF61C3FAC18581D21E7B517271FE4284CFD0865A6FCEFA3D
+E26B649A2F392FF3A6A0A781E090FF5A98594BF0341D065E8E68B0A0969DF7A5
+71356D718C2933003D218218BDB35BF0AC541180635FC8CA3C777008B09FBCF8
+8BAAE9D764AC5A8CA2E88E11247E8512B6FED52E7C2339CED4E4F82BE578E342
+6DE6129998C520F77AA5032191A68F101D9451651C003B33D9A0DA25E241ABA3
+A29AAAF4B3C81DEF8C36A52C0D8A42999B63199295BB479F171599CC952C7F59
+B18BDA62685B45AE1CE46CCE2311789C46E155ACD5A8838C6E392F5CC2551401
+399F83BCBD4DB6BD9DF2EF4676D900EE843BD07D9CACDBAA05855AE2F7993A7A
+2FB0937F06186306D7C788FB26B536C1915E570863E5FB2D91C63E6FDEBA34D6
+A2D27DE682224614ACB3A799B3604026FF9F9EE56ED3A9380E1BA58057A036C5
+5550170FFA61924C47BED31688796BEB3927C3CBDC9CBCAA0BE5D685D7DE241B
+24C6EABDAA52B245BBA14D214CB61FF044B0EC7CB8731958F61D65D7268C7FAA
+B5BEAE3192ED338920EBDE9B6F625E10CA87520C72223FDE13C7BD49FFE99DC8
+5DB87EA56CD6C06C8C7AC6C193340E9F913C83B62CD5BD580F5CC6B6D8C1470E
+BD09AE843D9EF28CDEA143B7206DBAC3B896CA9D6169DD634B30C41D73310BE2
+DABB707A86A5FFE942BCC7A75FB92EAE77EBCDF26DA07B07D8ACE98C3277995D
+B7B1198233DC78136FBE39D3DE9B6F1F62BBB311D451B46D7AE0FB28A3EE7AD9
+323547D3399AA95E95811CBB50C5EF6680363FC8F7C7E5230B9DB9815F8697FD
+047161AC68896D17821504A87A73775544F932495C55174EF14A8350BC2C055F
+E095F53B4955170A06721543827E3F1C90CF48866685B359147BDDF8FC42C423
+3A6ECC23FB9353B3B6B90C3E8CA4E4E930AB97B2A5B8E348F9242F479FB85CF6
+C67ABD6A09ECF1CFB93CAB1960FDBFDFE108570395385765077565E82107CCF4
+95612493959FEA678C601C03115D6947A0B14492B04053FBC7CCDBC058DA2D32
+44E1CB3FF3B4F3582002245707F20494E04D681627A2D084AFC1B8144F5A21A5
+088FDCA63E160ED588C28FCFC523623415D2632F2104245379D9BC5E067E63DA
+3A320036E60A2A65F56997572166E8E6DD4AFDB39F1F84AFF1D5E05366F0E2D9
+0FF1BDD6A98C9405CFB576E4C96F747E4BBE12569018B5123CD9EB8A5C0CABF4
+63833B489B792596B97231202AE359E0D9648F7A350EA0304B7AEF575212C851
+788EFD372B9A3220E6C647A317FD31663D1F6E6B0F14F7A8EC8E7A7C291792C8
+A9EFD4191C8381B62E8BCC7B14C8755FE1613758E94FBA6EE7F9DEAB356EFFFA
+20D359112A8CF8AA6EB2990DBD57020993A4C0D3BACD910A25F318009C253F49
+CF460E81F4B942F009BE7909AC9EF593E7050DA6F7E0588F7D70B7E5E3982855
+29752C3FED27CC39C420E8A1A27CC22335798C214CFF18359B85F84CAB375769
+035A617724D498437B8AC8E7C3DB12389DA206D271D4406913F37EB48C820E07
+245E5E87E4F2CF38FA332B539A8FC1F5A2162A1353DC27C2064FBDDFE12FF7E3
+9A6A7690B8E0730C0F9B78F275DF43F5F5FEB0360C0DF657152846DD8AF2186E
+FF6E19B7E53E8F992451E1CD7E888417D3168D1299CA31BA75DC2EEC6DD751FC
+FFF946411A8C48E3A5C98535A58FA490DE9F0C5ACBB228A5255C48BA98736095
+7CE11E73BF3C403915FA14A4A8144BD6AD1D79843688BD5BAC427FF96B6C17E6
+82266F1204D00801F0274E8C05587957458527D7EADE10A03C301578C8BC4111
+334DE9BB4B78FEFB8154CE0ACBB95316CF7B5A1BB4547722DDF513E013A23B3B
+3899293091E25619C0ADB9B66E3C54DE2A257A5BE8CFCAA337DB1D7A01383F99
+F5457952EDA9C68E89BDF8E7B3F557DD20834C428A4DFA5B957A0BE481889125
+02751A25A687F5CC5E679329CF50F644BDDF436E1E3178CE27E0B87115FB5A98
+23065CEE85BE84BD37DBC82D94ECFD6FF88284F98848C73E5155D425609CA6D6
+ECC71922CAC6F81B37D3A0BED469A5A879673F4D7E623D77F2C9533417FFCBD2
+BB09CEDA826AD2945904619620E7A759BD3BB2E799ECF66FF19194510973CABD
+46EE7FF5B8609B79469720FC8F934AB53A4A39E583EE43E1E3568CCB96A7877A
+923F66B2F7EBA572ADB047DD9D9F25E01F7681A4B06C05FDB062FD346DC244FA
+B3A054BD47B48626907A7CF81674F3535DAB490E275E776154471A5F8BBC9F8D
+D811CCD6B26E085A660AB44533C4A3FE8B1511595399832368D022623D945C09
+B65F2E7B404E11A0BB3AE589BA84520F06EED018D09245CE627E358E24FB4690
+A617620ACBBEC71D374AC3C96D7ED04DC0893C1034226AC9D70FFA094491B64A
+2EE7DACACD7B4712B218AED6786E85A97A0662C261E99FDD6322998B1F95E08E
+D035A977C2DB94793DA2D90F3A14D4EC9A879CD3DDE7B874872E117ABB74A699
+16BE210CE77A1F4BA087E7E5E6F0666CA396FA06E9D7582105FA8E9B702B5654
+7323554BEC4DC645EF7259FAD81D36725394F94C1F1B0DDCB992F4F6692C879D
+D8DF61F743B5BFAECCCDC1C7A16925D8E99D7D1BCA04A6ABA8E8327063B97FC3
+095EC36F6062A93AA99E39DEECFCB507BD677899A2F170F612785DE13B89C7FA
+B32BAE429661C35EC5CA6F6916F6FAE1B03BCD6D1EB88DC99656BBC40DACBBEA
+C5CBEA244B3A44EAD417B65554C8CCFD173CB9ADA94F5D55E802E032BE53F6AE
+4C024EB9D647CBCD0D05F4CB0E49C7D1E9F573129B46E1168DA84DF1F7E9E657
+A1C37AD37489AA8509AE5B71C4183A5BC9726687C167702EAA26DC959B3553D0
+FEF8B04A46FEA60A7B66F83246725DB510C0D7F9A4C274BDF5BCB8EB9EB0A5A4
+52D7E328AE40F0E80F7C388EE93E434F2B6ECE185FE729F5C25F4169043CEC9A
+42B0D432D25F97A3F4F2849F5E11B0F2D7AE49F4FE5C59C4181664F8938F9B7C
+6DDF4EF92EA98AE49948AC5A70AAE737835C9DC33973AB817E1AD6C5DDF42BDD
+5F5CE7EB9570DCBA106D45D2B31876F1C5BC94D2733E603D7DDC1AB7332E66BB
+EA9A3A8E95B7372BCA6F841B22C2B6C914710373CC20009E07E417F709A540AC
+78D58511DFB85F629AF125DB14480979C68AE774184EE8759064288C0E794D76
+E6F80729725D0A6ADC875D58D6657F0ABFCA16FD200C48A45028B4283E3008D2
+244706006EE511A84882C5CA0E307ED3A9A4F50450900684A655918269F1D146
+86656A3600C0391A4C6857F24B3ACCEE4E782FBDC0EB487A85A2B575364C905A
+40E70F0866ACF299D231D624949692ABA887D56A0D94065A3FD6FB30E9EBC027
+755DC262C0912EAE5D330614DFC41F66B3B00461682C16EE71FFB95AC0670259
+8C58380A0ABB59BD43798091F979D6800E92EFE12F50B499589267198C9E6602
+5B4B6EBD6461F78D7F24E647F4FE4E4844460ADF4CFB5CF60B1FA0D42D02B836
+3615E35FD7E0E6866206485BE7C4BC920431799F14C89C17D4F82E7ACF1C012F
+40BA05E3337D56EB9B56CF8444402109A9E3DF297369C6B9CFBBC781E17DEA3B
+68886370468B45066C6D6158E16924079282177EF599F66ECA50BBC316E9935C
+7C8047EB708F831FCD7EC7BAC3CFF9DF196CA7CD583F9F69A65676A69D957C31
+B98C1512D62AD24A9A860C34B9B5699BDBCFF4FAF504F3A6EE72F75F0AD14BEA
+716C41BDC36A7B8213E98A57D120D5CD3E1009BC546EFFF690D73E026E7F32FD
+D60ABD6DC5057B11
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -2889,25 +4528,41 @@ A45F5460FA0E
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
+{restore}if
%%EndFont
%%BeginFont: CMSL10
-%!PS-AdobeFont-1.1: CMSL10 1.0
-%%CreationDate: 1991 Aug 20 16:40:20
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+%!PS-AdobeFont-1.0: CMSL10 003.002
+%%Title: CMSL10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMSL10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMSL10 known{/CMSL10 findfont dup/UniqueID known{dup
+/UniqueID get 5000798 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMSL10 def
+/FontBBox {-62 -250 1123 750 }readonly def
+/UniqueID 5000798 def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMSL10.) readonly def
/FullName (CMSL10) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle -9.46 def
/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
end readonly def
-/FontName /CMSL10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 12 /fi put
@@ -2962,338 +4617,541 @@ dup 119 /w put
dup 120 /x put
dup 121 /y put
readonly def
-/FontBBox{-62 -250 1123 750}readonly def
currentdict end
currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
-3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
-532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
-B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
-986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
-D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A319B6B1FD958
-9429B9D40924DC059325D9D4CC0344F3F997A99E6CC0676735EBCD685AAC9142
-08DAFEC78BB41AFC2F1C219910BDF41D6279284EF600B69776CA15BC8A34347C
-30783C52AFA60FBE3E353E2AE354CF87B558776A22C776C7A0B5AB5CE1F941EF
-C2D9CAC37294BF407A671F10E4743BF842143F4F7DFEE643BA3BBD8BB9E3F24A
-BCCF7F0ADF8BA500620C81033EAE8C4EF2C1DEF13AC575F1B3BBB66F093D3B78
-5412B82B67FFA087AF57182B2230F9F2137180CA58A7D9B2C822FF04BE6CD01D
-43B2CA7058C7B953F6D9B5D6E91ECBAA5CDE1159B0E59C83DBAD96D6C8C8BAB1
-374EF652D10C0F3EE7104472C98DD3572AAF2D45A70BF7061447E21EE3C3BF23
-DF39C2D1B35B42CD5297BEBE6BC94F7C9DC6E61EC67E4F677256FED9064BD3E4
-B51A71B1D27CA4E5AA9E1D8080E6DAB5310711EEF87C40859FA935B19524AE83
-63B163FA8397BDFF443227FEDF7DB27DC35D89FB1C5E435DA0619A5C88AFC73B
-89A2DF5E767C5B536BC7167A840A0C32BD57A14DE69A7D0D819AC36FF32F908A
-5070F32983BB007437E3500799DF5E0AD3710A4C0000F0098D5BE99F2EB9C1C2
-C444FD9552D0DCA098A94B3BF176F511CEE13DB7EFFAED7C47B5ADCF8D4700F5
-7A5FD1B49560969BF5C44F3749370663A04776F749DDD7B50674D93254426C4B
-EFE264BEE7810EC93784B7C01A7F29EFD92547E13A2C7851A2E709FBD5B87850
-4A44F08F56A542DBE072D2FBC58D9E6468E1AB858DC35240E30D31C7AC13D6C5
-7D2BB634BEE96FA0E10F842B11A789F72A333DD6DDCB1BC23227EBC406E50B40
-30AF0C48E6359AB0C46898CDAF1118E46BFF8B00F54EACBC2AC262AB898C42B9
-2E080C10DE923C1959C82C55551BEAECA9B83CB5E9364252CFCC406A27FC43B9
-69C5BB80A41C85D80EDDCD5029E57D77EF4128B40B131799B4DE0EBAE17C595D
-A450B79703CFDBFF2D455DA910FE978A84F7ED3852BD7E3969F36C3F1BA3BE81
-9B299A46CE155CDD0BB9584D8278BC323B43C6DC278E2AD1D77733116900D045
-22458514359B1EF0E9CFA4516B201C65031C002AA05514C2318959530C2EB73F
-439703EB108208492CE953091DB2E5C76FF7E7005FEBCB01A6C62BC823004287
-105EA9213BF4C9D647629BEAE0F304A369E81C6D9A1F24B98E78D0EDE100A874
-E3063FAC51AC5972896DD151B0780613872DA4FEED668C04FB312B7C5186AFF7
-70655B9658FEDFF154B9A13D1B5836F9AF14D66F46D1C45AC7D463648AF9EEF6
-0C17A66F7E9073A202EC00779327F491B51DF6C55D13251D23431B796B2E59AF
-3931607D3F1A2A045B89891E7591B2B12D8EF65F473E1247400C6B659B75E8BF
-E440E150F2E99A1B10747489BB813DFB1D4E7AA795E2214D3BD602CBA6E8573E
-1F4CEB6A1838B9DA209396DD3B91614A4A385198D49FBC655525E2B06F030E3C
-49283EEC4478DE3AF41861F4735D3ECE7D33C691A166035F8673FDB0B531F898
-C4E7072358144B59BACA5023AAE3E8036DD031AC6FEBE425DB5F90D39A79E7CE
-CA99E6F917EEE7DF2D08126F9136AA95E8E41B478D989C03F4F878F997FBFE04
-2B95720FDA3337E5BED32E070BAC56AF0E355B069E1E6889C9D6F6937BAAC791
-5AED48536D08CA46BB78B23C68BFDC6DE47EEAAB93F2BBC77108230F1EB87F73
-DAF46561BB346ABAFBDB677554C9BC17A2E51C9A9E8B2E34209066D68F00D78A
-AF29130FA85DD757793C9F5A530571F5CD66A5F4C5E9FE9E169DE23B884BE1E0
-B2615D294132B328FFEB8F0442ABA50E426A56EFE98BEECC32AC74A7F0F8FDF3
-73DAFB11640FB3E56630463621162219B9724EBEE31091FCF2D8EB2804DE56A1
-6324D717C155FF07E5018CEECCD323F0BA1069107C9622347DF889F4B160FF6A
-ABD50968D9FA47DCD238F1C9604776700F419D41838368BF226CB8C55C205FDD
-56B5A3F323249337E20A596FB953D84C0985722F0F9C839535DCD876CFD1DB11
-EAD95F81FCBEAC415D2805AA0942008AA3D7AC928A05DC19783FCEC5E01160C9
-63C211AC8E01A6462D900E53B4D1F0D8C10D84F1237324688A08CBBA419E59B0
-6AC55D092D154BBA8DC0B55333776A50F2913818BE2140ED1812AB499E2E38CF
-67542F031FD267289A7AB060FAD335561BD52289D97D2AD51A0873EDC8949C19
-AE7B8FB4D296509D9D995FD051EAB8BE66C6659408FAB7BDAD50C31A61523B78
-709A9D262FD5EA01F59268209B4B35D760A539EC69AEEF23DAA56C23B4ECB893
-5AC1FEDE4B478AB5F547D49F2E44018D01E64BE5F36837916F7D19BF15D9D4DB
-BCCC32DB9A28EB375D1E4325C7C693D9BD88A70C3620D0599C3342DF779716F9
-E18A42D3E13C9609DAC603A84799610FFBDA4B853A0426106394FA8E42FF8FB9
-1AE904388AFC7F2FBC1150993F5351EC17F8BCC86F41C51D51AA8845294511BC
-32AA2479F0141B465FA0ECF4D8761EFD23AFD85420C626C5C35407091A2D214B
-30A45EE381C9B898A083354F7CDBDC0CFFEDBFFF455237B54E0ECAF8309E6D8C
-FF27D347253E8BB7B417F5B44B01081377EAE2C7436B3FE3D01E464DA600827B
-079B0A2254B9F88D1C61C7F6D5617CA305D4F4238C073AE29B6D1983CF94C62E
-F0CCA0404BEBD074F11483399E45146BCCF17E6365822B7B51019FD473AEEF2A
-695D94232796C71A2C50278FDEA1C0424E58B9CEBE77B5BAB0796CBE1A784766
-A0E839511930F9CD6C8A59B0FCA8CE2EC2664F6E87ACB790C0CA1013B226EBDF
-3FADF8FBA0DDBCC7DA37FC5021921FA98F08E9288B21451BC06FD1420C069A53
-CAD2DCC57C2A66F76421D1EC65E5519A11BE065CFD614BE5990EAB0EB683A122
-1C70415F20AAE49258EEC654051C25EDFA0FB0FF0336867F7B18D76F257A8BD5
-D0F082105AA8DD426ACB8CCB1A5079CD845B99FCC4B1240E12A01BB9117CE119
-42FBAE841A1F85902BAD49E631D3AA217AEBBB2DE5B67F7DB47E06ED9FCA76B4
-C738165E8381868EA9185007FD72ECEE398152CABEDA2B0F5A978F3B49917379
-75786B51AEF3178A29DD9B16A223C84561A64E0F9B30D4C3BBF919E50F240AF4
-ABA9ABF1C1D9500DFF5651FBB53B5EEAC51A9A3B27A24BF7541345521949B30C
-39F519C040606C747FAFE8E046A98A45D02CCE57CD74A48FC33D9FF36381289C
-468139415984B5671790C38DCE919671DB1A8C0EEE1A7F54431A3C59378E829E
-F668815796359C54C7EF7305FF3FB0B0CF3E9553C1CB27FE768FE3E098BA4520
-16690A5B3F2D002113F48A8946B6898EAC1C517AF424F915CD5E5B632004B323
-F89D471BE0C1AB5934E73C355C6A72794DE07E6072D1768C25B4B8B4546847A8
-D1A0E21898CAF30F9E298B541AD0E346D4B74512D54B035AC2FA7474C06F6810
-E200C2D10C53EA5F0CAF74A7B0EEA4B9D4401EFEB642AAB30324DA2A5B89D0FF
-923616E4555CEEE924E62159EFC62B83009BBF4EDFF78BFF0465D8CFB5804C64
-3085CEB43A7D402E7E52DEA25088FFD361D3CEDBDCF1C18285C15EA1EEFE2EBB
-01AC677391DCA6DE005306F81E22BC2C8E24C4652A8CAF251EDB5E0B528A08A4
-809675DCD887033951C59F342AC595AED7A320D18BE2EC00A4FD1D7080A67FE4
-9ACA25B493EFAC70B6C0B432250D2934D05E059BBAF6B3DE86CE33F8BA70BABC
-B28E0710F87D08F06FFC885608E9168A379A2F3EB249E62B4B2A0D09D51A13AB
-4168398E09F793099C4C5EFADE04027C4E107D31E9919C08AD69AFCFBBA3C3F6
-39552C8DC60752F7FA2BAAA1CA89B8A79F0510B5054C71634CFD2D2401EB5AD3
-C71CE94410DE7AC64315BB52C82FF2E87DAE8DEB0231AC7C95FFF330576AC7E7
-709316BB5FCA67A3FA7B740E9D94E725D12289ED95E379529AD26D950E995616
-9BF5D40DEFFE7320318A6FB359F9D895F7AC454A94DACE6DCAB13103C87654D3
-8641A4029703981BA8EAB3BDF3759704E3297077853BDA0DC32DAA45BAD52B8D
-B0B3DFE4CD99E92493937D1FAE4FEF8BFD83034B14119B4E1E81192795ABCC54
-60EA53E59E388B2462579EECAE76E9D7538AE1F030A7C2EDBABFC2EF39264B25
-1AB664E8FB4FD3AFE50C5C789FE09F17047FAB6423F0B8F7245C055961A68A3E
-E52EFE2D95FF3D5D4B59926DEE73BD53760C5670825376DE0FE488EACACA1088
-BB49CC951C5123672C77452DD0141E35A4F7A519B781FB7993DB9803EEE0749A
-196ECC81583E6F6E6EA5C2483834DFC23DBC6B19073F19753B4694705DFA6498
-72E9DD7B53A123DBFEB26F2E3574160F538A4095C31739EFFB6EBFD95DF1D2D0
-484ED99692BD62E3024684F3ECC3F8F053F7316DC95E87C7FBCF72396025E3DC
-211B200C7A0B07DF73DE5C3E54AC0ED5351E730CD35E4FCE7516B4F250B63510
-1B8091E85FDA67E8CB8610FC8C3BA6102FE173418B846AD1F9497B819FDA5B78
-1BF8E370BF18B95E7B26A29B8751E63F38FC78FB882B7B69C25A7F266D958D36
-0D4C7DB1B8DA32D333B50BBDD6AE691EA480AB3DE7A5C6F818EA1E1EFA0AD197
-F03EDCC93A7CE7193DF3E9E583CDEB97D11756DAB3A8E565AFBD7929F8C71A55
-377BA9522684CFB184C8E6F6516FB73E59EE46132FCBEB878D2340FAA2BF051C
-64A0F7A398F30EF2C2A7346659CDAEDE932E5579E44EAC17EB31BED2113212E3
-1AEB2DBB63124E60ACB1C853612A1304A15059905F769C6EFD2B2E0FE93EE3E7
-A342131EF659788EAC53FDBBA84D320A6A995ADC6DA03DE53BBFD13533EE7D06
-3C43FE41104DECD6885E397B67B16FF1E1779B5FFA18B8779BB9A99521BB27B8
-9E95CB638EE5A4A41573D6B65A9AB48E20AFAB5373C75C3AA928A828FFD5B8DC
-D406C8155F94CC10260E4A2ED282C3D60B0D10E63D97893BF559979F31EA574B
-5EF21BCD88136C381C29CE35E2D3F4D63A70F979BEFF8C009AC80C759A03D559
-FE8ACE97B6BB2A713043F853AE57E5783F449B2884A3551A3CD2EF85F485684A
-6F9C0493B5F628298F49065BB1E85ABE09A5B8A97779DB4E478FA0567F76BF44
-674429A44BB35EA03D0AE4C0C92C6E674FBFBF39A9090D4E5F9A040B4339EF49
-2B1CF8DA2DD76FC000CB175245F2B4A2135CF04BDF04E9F29BC5749A790379C0
-96C57E8FFE17D61A2833D7E164E1AA1BFE817D5BEE037D4B741BFDB90646A8DB
-6C9EFF527EAFAB6FF2A8018C20298B700358229A3435EA4EDBD6B59F4C934520
-9111571018CAE0C6429027C2FF53144AA4FE93AD2AB352EAF0104FD1E5B3DFB4
-1C9627903B2BEF2B3997C8C4A158096AFCEE97DC0A74AAE2563D1922A3C5AE7E
-A99ED5BCE2A6E9B775E3986872A9F638625E0CBCD65A80565B3D559147A506FF
-81AE38AC03BD4A600E98DD856A8611C6E163088DD4807862F794CD4D324C0FE8
-0D96CB0F9052B4F2835B840DA6783020EC367270EA1E184FC9FEF9D22FCDBC8B
-192699B51FBE05B9A80170035929D859F29C44130990ABE674D9ED6C69177580
-9676EEAF9C053F4C514756F3481ED1F6609AA2FB5C6D97F548E4524A423F4B00
-2E4DE423FD134FDF417F74EA4CC17F5E96D153C9D10BB4993123AB835A6B62E2
-CCD4E356062EAB83F019B6FFC689E66D87D4D7F9C95DB7B5CA6614E196552D9D
-CABB6B6E0AC3890579CA7F20DEBF377DACD6C0697499110E1B10F2C58641E105
-8B47211E6EDFBE63E38EB023B4904D7459030BA1C4E37F393C8BBF0D3FADA478
-29BFB4436B69238810FAB19C66FEE3DE6DFB43D55F2DFD07A9064DEA5E552104
-4950740A18F1F0B6A7AF574EA71D4BE3714164D362F138868BC698CC4465F675
-AB8EC379E75934696B8E5CB849454F5AACD2C658694DCFDB8A5E9D06D5EA13F9
-A46AD15FD3049207DFB2B51EACC552254C4D4D495CF457FF81990C0A07E56245
-C1CF05311B52547C599817B72E81162540578B35E5296E416F3F0F3BF8A55DBE
-22559D5D8352DC7952F6FF1849FD4E257C6F0A063884CDE3F5AAB1893CAC5475
-E78F71D55D1EFEFE2150AFB45066565828CB2B9D672823E669F9DA47E2B5BE5C
-8EB31A2FA16CC6D342BA046DFC32AF799476E80C36D87FE89BEAC2455E0757AB
-F0AA69CE84B9955EE420973A9FCD16C89032F34EDF41BF044A123F41BDDF71CA
-BA5BA6B46E798EAEC9219AECBAA99BC417D7F5C5CD1589D5F84C2F19D7F9A913
-11A7D6C47005514705C9C617E4BD55D92D1528608F72346DDE5DDB47F5C59CE9
-0B27F41EBA097FDB67C335031B5AF893E9BBF4DFE945229E2C4272115A69B65D
-025A58098AD6B366207A2065E865EF8F8EA1363A4D5FB0F62A556CC885110B98
-2FF55126EAB50DEC2F28415C27588470601B1FBB9E8FECD8A9C55E213BED6E88
-3CA6CA6A3FFFDCAF09E748EA047CA109960F92ABAAAF99602F5B13E4D998516B
-B459808807B52949589A22166076A28EBD49DA713802B7731E047104630C89AF
-C99FF96B9B16E0901696AB8E665CB94C39C0957F08423AB6188B3F505B37A3EC
-A449345CD1208BE2845C13E9FA2B8D03300928FA5424A7F8F27E9D6716EAEB29
-E2BFC6C41648B9F13FA4A4D8D8B81972C32FE45F1817B3182D270AC9F6B5B001
-4574EFA7EDDD8E4BC7BE6BFDE7CB04FED64E104920892B9E98AC63F16C0366AA
-D317A19C71AF274EA7AC9F3409CBC042A1D7875459ED89887497A9152E212915
-B83B7721D57B169B1F201C3B0605ED07D5997EC79D9F367ED4F455DD7DCAE65A
-2B9057B3E6B2A719956BBFD189372FB8D3B60B075F15D91F5E3A2DF51430C000
-038E71AE7AE040E1A0CF0A3BDB8F21D6C0FDB1339B2821F7542A782A43B70DCA
-6A46832981BC5DB43B5D0CF208F38E642727AB79E710DA022D47D39884A400BD
-DB5F80A39CD46558BE7915FD7AFFACF243AF5A3762E76D33D6B6AAE666F67BB6
-B78BD2D2BFF6F7CC10B3B66F3241BF6F8518EA32E020A26905E6AFBFBDBDBA17
-244BCC8D6A127D1A8690DDDF509E06532D3F28D9235E965F4D9E5D8664F0BD12
-11FC9D1A8C7C2A4CE4FBC9EB95611D9581C3FFE6991EF04073803DAE1B5D717F
-D65437213F3E1A3CBFC1AE66746FDF8FD949F7D72F73B11A01C0FECC9B51D203
-617750CD5DA57AF8E793594397AA33A1A3205C5D0838EEECD209A67EA5249A56
-7B727F6B22798508D2CB2D5E2460BCA4826B82A3BC1BB6CD709ABC64E2977973
-82B520C7EE77AFF1F940E95E4AC7776D40E6FA636A2BEFF673A61C81BC958BDC
-F7EE7BC246DB2474A6761B5B18BEEFD57BDC13688FDCE862356FEAEFE42B8083
-8D388566CFFCAF64F5B494973B56E311D795EC29D9F215012A571AD28903B0AA
-C3C46929133385A99EE73B05A603481067E6E813E2C80518835EC64C65DFB130
-2B69257C3814989A9C2C1E49EB02D3A93502871A121EB6A7D07C1F243344AAD8
-6EB61BA565BA9EC0B28909A15FE82E425190A8C1AC8B1DBB92E6289794F24E4F
-3A25CDDFC30277669DDA68269500D610254E2E67981B361B919960EC286120FA
-6954B91A94341A5EEE52AD61BD71486207463D4A412E45D802D89D3CAC436C6A
-EE5C9E06FA42222E004771D58FFC2EE277B720DAD3DE5B505077D0240C4CF3AA
-A54A971FADF7C3CEFBBEEEC093E294BDF4D3B21BDBF13B7FBF5DB4D2528B2EC6
-A03FCA688ABDE692AFFBDFA8DE5E80882C1FE4640C7A3A3EFBB49DD31564624B
-C5656606CD565B84976820101994B26F41B7AD49A969D93A8CE62212EDBD1E9F
-C97B3E26DC29A6540AD72C0504F374B2A4AC955158D4DEB3DD544C8A404753E9
-4D44733D2AB083F6B49286D5BF71BC746E23DAFE40F95E4CD33D026CF949B7E8
-B7955BBC6588914204F8BD1916BC28CE626DE554FFA95BE341EE51536AC10742
-A5FCA8F5F76A417C9DA3D803330A1A6901A26D0278107BEF1301C46BB081D355
-3725DA2B5ABFBD795200B2BD231657FC28B6228BE8A18B00A540A49D69477A6A
-538D1F3548270295BFFED29777CE491BBE6D367FF5393D736837823022711475
-1D03EA22D6D4C380F351D3159AC9407C7F1D948B34FEBDCF6AFE7FE0F816F84B
-C3682C5BFEDCF6B1332DBF0032BF88F9229AEF4858A3D935B855B5C738A05631
-2A77CACDFD2144E2FA60784AF2166830340A0AED0302F50D0EBA673B1F450F51
-DA9E3C9DF5136EA4167E008E2E2AD0BABDB9E144FFB9D39B54D80BE7F347F4CD
-FB2B1C98DA84E855EFD44A169788EE5E08754FCD8C0154F2D601020D918071E3
-C10FC2BB6446437527E237B336D5D04D43530D6F5AED60F2248E7A08F3F17514
-D21B09FE0BF5CE4E23DDEACB81EA87EB649559FF29590B2569CF8C07898D7034
-07B70776F93C0F943F1489F0262C44AF4E300A30A583B6A0030AA64D07E28B65
-2AE7668596D8A7C51C315BAACF5B907F6361E86B2DE484FDE057141204C98F77
-64A8C9B68EC184F7A17FAED61B022161A662DB4569AEF8F04E6B887A0C63AE9D
-0284B943B53EF9C247A595887A612B90694876643C35D46FCFCA331E7B3D8646
-F9826CBD0D4F691C2CD9542DFAB7BB3789D9990BA426F9A8F161CB4AF752C023
-46CF0E9AAB48FD24931BDF51B58CFB9C548E93BAE1038D6966A2B997DFA012AF
-F4B2FC4C56179DDF4B40D51E7C6A4929EE7CDF2A985DA06EB93D91235BB66BD7
-854A6A6BFE3E8C8578CBF3723339E95AFF4CDDB9DC00AFF87436E1789C3F3CD1
-EC77D8B6C106242C16E35E6DDB58BF9A96FF7CB9C5522E76D76DBE6AF29CC54E
-F32A928E53EC588CA74219FAA9B37BF26FFA3954B5C7A3246E47968493FE1BD7
-A7146F58F403018491276DA918180B6C95BB2C4D93A654782E7D7780D1176A0F
-CCE14041A005AA613C103D5F47F82327CD646C14A81A9FAE771E944CF70A602B
-1E93976C4C6800CC1A9DF0077BB83FFE5186C107C8FDB2D70AAFB230A1F53BC4
-6E930636155C34315FA191AE48DCAFBE12F934283BB7C9E4433F8DA8E5BA24C9
-F47EC01DDA3C61A7327612136249FB3D14596B966F48FE1E1F95E780E8D10EF8
-09CA34C7988B0D6004902D72C03C9343C00DF128648C68A78DBFE16D829342EF
-72861BA47C9ECE6DC444B8E03263FDA416F396D90EC4C83E2F55907B963B3793
-AD8AC58A04180EB504F093A069397CBA0E496C8D9B31F7FFE925949910C429C0
-E514429F6F46E467057803CC0603E39F90662C951CE9FFD4525E76D4D29115E7
-2C39128A44C44D4B0E208B6ECDEE73B753F05C7883B1345C3C8CB40EEC35DE4A
-2EB8F1A6167B180A8C18C95FBDD462C4BA2A23E884F5FEABB0012C3567F7DF54
-5786B6BA32B5D331A1BA7E819D2E3EA92E288D509FE70DB067D351EA53AD858A
-F88F250CD0933421FCFB23B77CC305749FCAAFD49A2BC4BBD7087F04D85DF0C2
-7DF68ED3A0CEA4374123D54C538D05765A482B023EE4BC2519636346AF825D67
-80F78FC3EFF8E9D198E3DD67397F9AC965B1A9D99AF8C96C17CEEF8346007D05
-16E880B8716FF385C0CD679FC7A770E02E06CEA67160D2AE407C64B5E84F2591
-88371FD832A05D190472A74139860FC897C0A93C1ED82766534ED9415D4D7102
-DA832B566A44C52125620ECD7FC4B3147A571156547770E83A08CA935CA16AAA
-1201E7B759BDA9A9C35BFB9398651504D3B97440DC2E1B83FD9C68838EB29EB0
-0CAF700CF11FEAAE098F62B3A5A67E9DE2B20FEE44A31C740139859158EEC81C
-0F905187C722AE412502B526D03EF5CD45EE125A4DFAF40B51EC4275994A424F
-699F61ACD1A09F68895718E56B66CC8F4C59E71158DBB33FA2E35CC2845F516E
-96BBF28C8073CCDB88B459BEFA4FF251E3181C563D98EF87A4648D67C31E3FAD
-770578BFCA0FFFCD9F6A746DF448B8594A68B81C28536E9E393A8E6241A63450
-54ECAEDE256F21E5D0A2E1A100FB843F6A7B0C97A3B2942DD137C4E7FBE2BBEE
-F252E9BAA695EE6C0B21E44623D35F0B11E232E626F292892C8D5F099E216418
-E08420BEBC1EFB03E4D154A2B35E776CD84C8C9EAB0FE10D38DC323851405E17
-4660DE87A1C42298F40F33861FCD9E68FDFE7EEC68FE4EF9341D5B539179CBDD
-DB15416397B2E67D937327FB707ED93DD02BEF04EC195D7A901631DB45EB68C3
-F4E38459DE458B6793A157FECA9895EE150DD71216887FBB73279E0FEA743A39
-1F8468931FE798D8196C96E9BBABCB19D2AD97BFE5A776E6626C9F83D745BF14
-E9C10375A3561FA3585BC4E86FBA6513E5AB20C4BABC0761A9A897DB95A1498D
-48E4246313758DB16803789B29ED9B04013A8DA79BEAB0E0CD901EE32E241BE1
-BA0C64F93FF30DBF15DB9266C872DFF210DB36E3C71FD096D03DECE673AE73A6
-3A909D7F15807C71729ABE5EC7222DD5C1475FCB9920B8F2B1B5019238C9ACDF
-7A2948789A6E5219D964627992618D6AC27D8C898FD50207D6DA833EA2DDC744
-D241C7B7403F8BD4804FC03D89F5A53D80F96E24E8EBD0C5276BC2DD5443A986
-D4FA9262BFBE50D93CEDE92D3741EBC7EBA9DAEB6D3C24F50365D445AD284E3E
-88B245CFEC62F0E8A62517E652F2AFD5AC720030AC82768B362E1BE33A3BFBC6
-4862A01E3F70178B3C30C984DE6C14E153AB5663D191599D5DAF55C82C9F045B
-243C3FD310FB49C4508F3E71686E6780E96BDC5DE7B93EE02E356155DD12C554
-4723199288C6668D7BC952BFAD9C9AE708AC084EBD43952853864E3195596C52
-1DF754A536EBF9A2B222DFD13DAFDB65AFE622AB231EFFF7643651C3E802ADC2
-65CE15FD0B3AF65285B68CD78055B2012BD4B07C6F44F76594BD8D3571CC2169
-93AFDB2DA8469B4CD9608AA42A70C8C65B18D0BAFFCA685983B114C9C36407FB
-9B0CEC6D678DF677B2960DF600EB7A0D8BFC3DE30B779E0E87B4C8756CC8F1E8
-DC0389D9874FF275101681917F62A3BE7F031C3CB45BCAFC4B75ABAC37E472FE
-320CA222FF0D93F2952C9DA2CD57B3C976DD6380A21A2A014EB65F634179F992
-6B6DE6E668DD114127152C847FDEE9A9E0DC031D779C273B9822452C0E3E37A4
-EA8A0B836F6FF43A6FE2514926903E92A04A511616AE373E8B65D2ECE3B61CC1
-828478FC9B4934B748644472E615988344F5D54CD785B53B3EADA902D6C1DF47
-2C186FC0427158C014AE68ECDABA015E4E99602350D82DD760BC82DB0FE41A3C
-18B6D86F76D56E5E6916FB0B4B0ACE1709766A5131E89A24EC44DBFE292F1A71
-36E71C382051CA99C7DECDF461FCA13EDF3AA06210ED2406EB79C65BF6B4FF64
-98DE9D823F1003DDCF89304D1B3278B3B262A9FF9E13C8B5D16F6587A727456C
-C8F72C28F76CAFB9849DD15B6D2450AA91B2EE2D013C702E7BA39CB3C46F9D0B
-B31680D89BDD9D06A9319D9EFAC175CEC30A952DC5C87A9E4594AB85173E9E03
-522D9061CDB335A59E4E8B97516AFC7E4EFCABF1D931C80E4D031B3B191AD517
-A5E2F2AA4C23A392FE09906226F1B846D1CCF3D799341EC2C83E6A3E9ED4F35A
-66506EEC7C22640E42DCB7D8959ABF8F1EFB45791545AEC4526CDA41CCF07B82
-884D2048CEF6A49E0267579C030E4CD228F6AC78EA3EC6A3D9E35F2F1A690A28
-9060B0F3785EBA06C57F52C5C13FEC575A2D3A2C2FB809C6A3FC3A4E4F11093B
-6B03E139505DE7F41FCF765C5427F45243A766FC486E7BCD5B466809432311F1
-0B83A44B03D9B5A65D1F4E385A6FD02BC0A4B3204CE852E1721F6F0E1C2EEBA8
-3D4911A981547FBA5ACA6AACBFF16382A1C980E292DC66D399ECFCC42F078ED2
-A05C06AA792345D157A2D6E59337CA6FD7F951DA2FB02D6F2B80AFDF36B6148F
-B6AAE89FE177D9AC92DEE51774059863F58A551352241B9434F383BBA4D61A8A
-901283B9D08AC993B49E2CF4B27E8BD2475C02603F5B4A2EC98E21F306DEFBAD
-0BB4C0DB806729B61E2839C8345D62C46EA1826B4E7CCD5EB69DD7BD899ED2A0
-B4992CCE2C5FCE9415371001840BFAE846784BD81F2915DF8792C923E37D6823
-A5427949C219D9C8CA716AF631485CD72934B3E8E2F077FF2EDC8E6A0B742FBC
-946A608F7FEE8CFEA0583FB6D9BFC68A2A01E379A6AD0DEDCAF66C7900A2F967
-C21804DFE2B5ADD2A334E7208778FEA247BF012D1790C0B796D2C5AD7C0C26AB
-311864254A3F88895197C36D5C236D6FD3F58C1B4A7CE43E317B14D488F5B20B
-DA16C269B9DCBCD197A72B980C6A443C22EC0741B6680B8D2CB4FF597709EC92
-63BBB449B884B516B50D5003815B2978C5933A6C80D572DB08433B373C7375C4
-EDAE583976BB729F93F57212B521E5046FB5E755AF208BE5987EA8D9CBA315D9
-6E0DECEE1E2469B3C0326A809929B5049766A14DC81923CC25D17AC4A203878B
-AC6C2CAD5D7D5D1E9CEEAB73FF195D5EDD81947D6FD078927318C19D382DE6FC
-6C44294B400C207DD83270C1E53313CA05735EE194C80F266E2CC34E041F1B66
-E2847E682E22BCC536982D6D6A96250EABC30D5EA344FC019292ADBF477795E7
-CD89D9D47D67214D08DAC6A8E8AE2192F195DA7D41AB0ED40510631C36701CE9
-4670F48AC472D1BE219F48EBF9977A03DA7DE787FBA5CC59C6FEF6A5F76C4865
-8A7F2A267B8CEF6B4CB736BE4C6ED226A57C092BC83E4522D19BF8999244125D
-23C36CD772E7ABCB48C7D1A27D482F6D444B910CB957835F78473238D3421CC6
-AEA1399BB2533B2818D77FE394481DBD8CB3C10D931589B0959D217FACADA757
-0DADBF579386DB95A6F12F61D10C465633245E05A100961844CC9A5527B6D7AD
-C632910D4ED6D71AFB2B34D975C4A32631FE66BC051728D50C63F481AD641D2B
-4E2F7E72F66FD22D424B8C6C93ADD447DCE87C2608E884D36EBE21D97DB9C82E
-14417EC97C835FBA7F020B6CB06A0CD989F9D9E5CB5C8F662357B365A581610C
-9165823D6BC005B510C60EC4BB3A7FEDE70410355D8E58A1725E4BFD93BCB75D
-01988E0F9E4F4F7F007F153C76A450A24FE139A8B7D2C9825A2370664263F1E0
-411A4A0FCBCC1B8F5EBFE15C4143E4E48FA39B5CC68A116E8A96645AD578FCC3
-9475DF1FF6EA1C3F203CFA3952482B6D380C25B80084F849224296B2193CA434
-B4850EF0BD04FB56F1BEB4B465E5193BA62D8D6B6920749ACB685D09E026E12F
-1E23C68EB275542E53C855CBE19E400B7DC47046F72AF881EEB1372B5C7B90AE
-F3654A9DC8436043A6278B375ACD4F81017FFDC478226EF57CC1C3730E302601
-777AD0E09E9E2CE8D0270DD6F19A6DA3741F25727EB307C7F8AF73CA4CFED885
-0C148D4A2444DDA2C22EDAC2356788B90ACB3428DB71DFC65380959FAFD573EA
-9B5793D05C40E2AC8059D024EB873CAFE1711FACCB17E6CA35F5F6B55C4539BA
-0F66A1EA6D16A26D4CA8C07765F76C68638FEC66CFF951DD13E0F48CD839AC23
-0E183844C5DDC94AC5ACB56C532960E0C24ACD0C7F29530E9DB888C260F651D4
-A063B9489961BE9D68F3138CC2006D0EEC618B1165C22CA07802840DD8562BC8
-04FEFB8300B01DA3A5D25CEEB5115AEF6EE197EB88B4CE3FA5092867044274F0
-B2C49E7604FE33554BFC8BC782019F0342806089BF8BF7FE6F9779D61702015E
-1D8CDE9B2F199ECA9F5AE69E4E286DB30A02B9FA44A53081E015B5FFD2DE7D6F
-9932903EF3FF0259BE2D491DB2F15B9170AD9C3BEEC5818B65D58C2EAEA21EB7
-874960E7F46D8D76856926345542E021148D95559520FB876D13B2B18D9C5EE6
-6FF720F22F1EDB66E0216D20C46153B1CFB096105DCCB04DD7F4F606566EEF62
-C638DAA0044D2DBCC6B460682F0FD9973F4396F4CA99D56F28C0105DF0110714
-906A9EBA29B9AB375F250C065CC0329DCE53577386E005EDC452BAC822CE7E69
-F9973AE14490E9FE6C033BC6A77391052BCB476AFD901DB71DC2BD5BEAF51C99
-609D01BF2696558515B6FCF825217DA206C87C894133D0B49E8944ABADC9FF3C
-E8BF10B2CB5D5AC9CAAE9AFFF7779A48DAE362E4F97EEBA75144F4610DEF1F4F
-F89E6DCAA88CB1910B0AA98BB53DFAE78611B28DF5C42D6253218E48187D65E1
-C093CE0CC8A137F6D9C268203B483F153928415EB96784E993F4B13E598348B4
-0ED07D148B74B5FBEE7BCBB298F4E3E364DC6AE166C0D91C4FB69AF8B7A47C9D
-03692EEACD8E700B9E79807311E320CEB913BAEC5E305A96DEA1456145E2113E
-871A649B7D143E05FB3E1242782F2CE15CDDCC9ED74F12D02FB74D23F2103979
-DD5CC27040B20F0324A3367DEABE17FA6069C1645F801E9ED5C9E653F9207C6B
-C03622E1F65E3280AB84ED97BD555DA13AA3AD7DA97C4772185F63F009D4EE5A
-9A8898A99A4CE1AB51B60F872D337233BA7E0BBF6C4F7302F0F9CAB90022ABC9
-AEE327C1A866BAA2F2CEF71E9B71A7070649E1C25EF91AA389B2C56B53B2DDC1
-CCEB2DF6571E19F71ECD136B0370C6417D484C4FC1DA9C200F3406D26377C807
-FF79460F38019130498C0F8E283D3A6416A51A2099F78D4B66DCD2FE873C2B4E
-B9DCDE7F8DFD42EF767F381C034C8106F5AEE118B209952FB6BDF693611433A3
-CA8814367719F0CEC27352AF826A1455EF8A5DDDBA6853932A1B1212A3FD8B93
-2E83EBBC72F2CCCE97CF5EE3A85CDA4805A5D4663D66015A9E92F670BA5FD46F
-B5735192AE1B0630B6857B070B43A8E602DA6127EDCDD3550A17FBC52BC26229
-399DBDFA557C94ABD7409495921931C68D1372BB0AF7F5F1414735
+D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7
+5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99
+8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716
+EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C
+02CE8D8B07183838330C0284BD419CBDAE42B141D3D4BE492473F240CEED931D
+46E9F999C5CB3235E2C6DAAA2C0169E1991BEAEA0D704BF49CEA3E98E8C2361A
+4B60D020D325E4C2450F3BCF59223103D20DB6943DE1BA6FC8D4362C3CE32E0D
+DCE118A7394CB72B56624142B74A3863C1D054C7CB14F89CBAFF08A4162FC384
+7FEDA760DD8E09028C461D7C8C765390E13667DD233EA2E20063634941F668C0
+C14657504A30C0C298F341B0EC9D1247E084CC760B7D4F27874744CDC5D76814
+25E2367955EA15B0B5CD2C4A0B21F3653FCC70D32D6AC6E28FB470EB246D6ED5
+7872201EF784EE43930DC4801FC99043C93D789F5ED9A09946EC104C430B5581
+299CB76590919D5538B16837F966CF6B213D6E40238F55B4E0F715DBD2A8B8B8
+80A4B633D128EB01BB783569E827F83AF61665C0510C7EA8E6FC89A30B0BC0EB
+5A53E5E67EF62D8855F6606E421BD351916549C569C7368AAFB714E22A023584
+8B1D6B52FC6F635E44058690002C6BA02CEC21C54CC8875B408A8BB84F445894
+5D6B3E4841CA20AF852A660FE9C832F773691DC6F7197FF3DEAEE97418A5ED2F
+F2AE65300416227CD3BB03C29003C770CD7D2A7A2E4C1DCA193651C2CDDBF93B
+966938788694BFB562AB0010268955FC3555E5984CCAB0A9B7590C77C9BC713E
+A29E5BD7193A4E971D1752DDD0F0AA4648E7E87BBCE66A1E836C715C408B07A5
+9EB56BEFD4596706CF839BA4CFA90CAD4038C1E006B51913279A2C31FBEE5BD4
+A7D74F9103CE6124F5B439CB860987DF44FE17EF88EF1BF62C67060D25696BCD
+94ADF08F04E349CEBDF9D3389D870D94CC05E393B3F4362A13A6A672EE5E8F5A
+DFE7046AFE3EBAEA58FFEBA4A47BF61F92E2003756DA643CCF2C9DFCCAB62669
+E3C2A18D690B64D907F50BCA155A85E47C3A6954C6FF7ACA36D8DFCE777B7929
+5F5D5F787B9C247ABF13D6D7B4A8F06BA25CCB342F8A5071325CDA86AD71BA23
+8A9695C7D1D50D0AAC267AB7CDBA7AAF46A264B7B081B7E79AD937FEE4969FD5
+155A99E652461EFFB4BD010E5885631E2B2497D6B8C43CE77D7D47FE201DD46E
+4482FFDCE150A1183C22C004A0AF0E1F42AA6804E038E1DFC8B0A3CE26B52038
+44D2E7F759DA5C252489E5525963D68BC27C82247BEB18818C7D4CF0BC5CC97D
+8C701034B8DF798DD4CE36C3F8B1FD40B2DA14EA75583852875031AF8C909EE0
+04495FDCD04B05A5EFEBA56A8CAC1F57F1B8AB91FB25C81CD51EE69D6E0F52CC
+A0E12CF7E3187D67DF71A599FFD895FAA7BF80E2E6B96592BE77AE96905BAF0F
+F547355A36C443797DDA7C414AA606CF9153E03450B77D1BA4088D739DF55F07
+111B9E11AF37F45B6EDE6D7AC126E05886A57C83886DA87761BE600DEECD1344
+8A82BD652BE7ABFE6A0F50ED7C6F4EE12CDFD80CA7A5518692F267C51C3FE76C
+567BB8DDBE09A2AF901F79AD02B435287CB8057B3D5EE6655071F67B00438728
+C4C3EBD648BAF650993AFE5E2B29074A99ED0FB725D9B8CE8B0292B08A280214
+C3AF252BEEAD30C88F72E322FAC3E9D78A1038F5DFC41F7BF1AE3744A0677094
+51B77C2D630B67853FE5E975A395C06A4D4DA744040B272C2B88D8B7ED3A2C01
+66F503C9DFD3C7DDAC865900D2A4F2CDF517F449851DB1963468D0266D7A3E58
+9F6B2A1843E6444274F16A9930302DACD8D2BC4588765099A86BCCD8A31DF0E6
+2853114DFF2D19F812F19AE6C2E419D7AC1BC024D1195074FD0C6717BFB389A4
+4D5428E7BB2E4F9E9FDEDED7BDCBDD3460805AEA0B5F6460C2FDF19273CE5BA7
+5D3AAE0DB94C6AFA8339646191C23B0149E7CBF136FC4C844E025A38935DF256
+0A0A6466A45EE8B9B23B6A055856FB084F87C73BA28F1883E3B184CD813C72F9
+233B78CA4E125ABD26F29B92CD9DF39D6FDC2A217E2B6B45D9B0A4D536790A5D
+BC0903069565A442FA7466414D948AC432C6B75D8D0E1DBB217CA3DC38A52DEF
+62E9D5AE9E753956C13819D93148C7683BE4F71B80BC066D8C19FC807FB1C086
+B49215DCF56A91A42089F0D063B9981925691F7DDE3237403AC714F5CC3ACA88
+DB2F1DD205578C00472FD70C8BA4F752E3923ACF3164D442A6B639902ED060D0
+C5777BC20F9A3BDA60FA3BC986C38136FBD2E8F910E32EF36377C9CC187F4AFA
+CCEC423DB925B378522B748BDF12D523804CABA83CB5A7ED69FAB9AAB75EE8FC
+38D9866E3754C4E2F2B9AEFA804044D878DED0E114EA0E9682FCF38F6628E63D
+FE1C1B5615E54FAE8684566EDC4B616F76EEFD6207E0386F06D3BFFA26425F24
+303CC7C8A8D7021E7D09B202616988287838C3DBCE3179B4FB5C726E603A47F2
+8248CB508F327D1291CF3F08F7C88298DC2D0F778D24304EFCF6E074182BF5B1
+8E6551811FD6991971692108E289B61053D6DCBA2925B3903E8916EBD09D97A2
+C6D08E89DE4C0CDF7185E1E00DF456B249F0BFC686E04FDAAD2772DC2C39DD53
+9C23A41471267F53A87E5C2B8CBCDB66CE0B9844BC506428E6150B48D2FA6363
+4FDB2CEDFBAE0B7DBCE4D83E29B2955F8966272CB865EDB360C8A8C19EC62A29
+03066483E4083524A1E8D80FE3867BC1AA91753C26ACBE8489AB0E3330206212
+93E07ED473DBF457EB8489E66FB4B8ED8A9EA8911CF9308CFE3E6D6F36810EE8
+91CCB11BD548617B2C683C354452B9229E7C9E68828BBEC324420DF7C188CCE0
+FBB514547553A7E9B38AC265783891F42DA472388569C8E7594F7E8810895A27
+06E456902A8D9F65CA808F1FD475D011C4572F8A654BA01D67942226A663D179
+95149FFF41A9F55AE84EEB9A6A39C017D7E4FD6EFEEE7FF3CE847CDB064A4954
+9DCD273B810E0F259501BA4003A3EC1ABA6E13D24C0B57FF82D6DF077833B6A2
+7EA54801BA81DB961C261689C0887FAD83771E55D3D137AFBB21779397E11972
+6C6CA922F45AFA5C0526863A5AD8B9C0775CCBA17FFD37A44CED4710884DBC31
+5C9D3F5441595B86CF7CA2EEE42AE87896E9E60EBF5F35C2B7FDBF9A9CDAE262
+3F48396F0F741E9DDF1D4FEF75E68AFB020D06CC29B3A7B2ED819D1AABC12B91
+CA2A65F1AFDDA2F3FB322E0268DBBA024663E49EFF076455338FE31A16B04EC1
+797EAB0B49AFFB906A0690A1E8E2F5314773E1CCFFF43E6FB3875AC907F0C5D0
+DCB9BCC127014D472463560CA0CB1C2CE614D94177C7A52A5B089316689C8112
+CA57E35D716D956DBF9013B1E5B9626456B1433C8C15FA906458F957133B9E19
+8D46DC3AC015F7602538C2AE3927C6DDBACF38E59220C2F5AF36B68DE9117C51
+04CF7DF32B1AF55B87D1D8A5F4BCFEC66F63B32B6548DEDA3AAB06C5310E4757
+78AFF947DA22809B360FE535506A554DDDE5A6F2411246653710ECE5CD3185BE
+730520A766C47E1ED01890059882BE1432586864E1A86A7F586438C8DD35C00F
+021A741ED47E0F16DB6070ED0C50038632CA4AC2975578A8372A080CC0447C79
+CEABDF2BCD5E78564247B0F0025F556DA8FB62125227849EACFB724A4AE3EF57
+90C07A5B27D2E59425F56BF8AD84C5F5310FEB1BC73D536339FC2E6A5BE2DAFD
+97FC835E0D52F680F80ACA37DB498AACF152B9B44626CD89E3302C3EE1623EE0
+F998FA78305960AAB9F483F731F5F67A8C963C23DB8E48FB804EF8B86FAFE7F9
+4C09641915FA7E3930AC922682313408BC1607C76751CEEAFD660206A39CF394
+40ABE2A313AB7D5FD6444E219DC5C26734D322BA268D330AC17959A390D6C8E7
+3A155095BDD66516DAD5D65519A7FB871ECDA77061EFB21F359158B4470EF79B
+362C35C06B85C9A9505C8361939C6AC013F2CFE8EEF46FD8CB4452AAB3EF1FA7
+DC066557BADC2ADDDF7DDC2A0E1DD4A357E27A2073427EACF9B9035DA5272136
+7DF37E26D96ED4B2ACD60596E039BCB15E259C72FEB3344E3EEE3D4F17DF4233
+04C1416BCADE80BD483DD8C9AF979E1C7D50C4CF015870703F88B92C4FE46AB8
+DE6717B55C460C805B391B84333097E116F4A51F631FAFAB34CFC925BEE8B72B
+C9FD5F5A79D8F2295FBFAE649DC6AB47794AC7D73431FFE5BE992F2B5AC67049
+B5208251C0E442385A9FACF25E3A98D7F5D4C2A1ABDC600AABE84769CA83350F
+9B87F71CEAD3600E02FF9AC03C1B5C21C84F911511A0CF0111BAC7605EE31229
+3C526A79D943D92E1CC3C38ABE82D560CFD4172F318030852A5FCC0534B8B3FE
+D7365987C8B48A072907B26CDC2108130A33233E8E0BB5FDF14FB55098A10EA2
+B51AD9EFB119F82B08D256D396D3263FBD9DBF172D43A90ACD1A31F3E89E8571
+74BE98B9560E2CD661A2F93C69FEA3FF26B00772AE2C2C24B98D3D122EA2AA8A
+44652CCDF4EF4F01CA7D62A976E23E8A86291F43BFAF38FD9C325E70F9C36CB5
+A181DAD30156E98339E6A0498D3420B7BB3B4E651A9090D4A17604AE386273A8
+3D4AE8CC18345E6E19DF06BA848F203F74B161D6A8882991CBA7385F308696A1
+BEEB0130D938A764B98A2001A38489B1334025EA848CA44A116D64926D460D64
+01159E77EA7ED9ECE7BA77635BE564A4ED89315BDFF54ACE6AA1A26591D13CD4
+6D6425CA7933769B842192858D10998509396829263290A3A7CFEBBDA3EE6CDD
+DF1E492AECDFF7941B53573F01F623CA0A5ECC9D05A3D0954F7AE8CE94AC3B2A
+CD4E27519B2E16F033EB732AA024BBAF74626DB55DC74B1FDDB07FAE98B4AC5C
+683CFD8744F361838D343B657EBF52DEEE7AEA7565C5BEEFE455DDDBC4DCCA7D
+87D6D769C5ECCF14118A14A85A86865777C8E28F953160D5E82844AE54D541DF
+550D5F1519E183E0C42BE88F0458CE8087F2CD4B1B49A8E9E3D127C4A4CB74A6
+2E73BF4CC317781D03FF04BC36AC0E4AF99E2ACAD20F6F8029DE8A035DAB40DB
+17D237850BCDD05931FF4B0FE2D0B79EC5A88FE0236271CCB075BD194AA25AFB
+3FB93A5206F61A14602E4EB6F1C31C654527CE0C02D04314DF9AFD710D0EBB9E
+F8721B97F5FB18E27507E1F800B5509A58A1A8296C72B7B73F99B6CFE42E9C2F
+B63B3555475E562672645CD374BCDE937A9B05A157FB3E74C8297507253E957B
+1A9DC421946734CEFA3D5EE357DAC7E9DE17A5BDDEF6B2D2A740BC58128FC514
+61154664412BA1C05209EC992A77B7CA45AB7C0EEBF590A5B5652866008CDEF7
+124A3003AE6A7CF9DF3C72750CBD281358CD2FF25B162B78CBB971DB3477F8D2
+ECA3EE9CBC90323B2C236E375337EA0848CD7CB5781A2B0A42DE7E4D99DB2746
+0B26796CEE129D23C76794B7CE21C13C7D4A998B752C8CF43A4821B736EBE246
+D2A2BD7BA3351FBCD1B0A501EC1EAABE60D06DA2FE39BE1F0AD629769FDDC933
+F9D02F9686EC8C2D7455C26AF4DD3F6860B2289E3A30E1C254AD17D731CB73B2
+BF4DFE90CAEECE3ED0CD3FB4C8F4C7BE1C056AB4E9B95781A8968E3CC1010003
+75DFBC4AB9F6B27C5A9AD88D94441A8ADF09EB275E5F0E5E6F3BFEA0FA8C308A
+8593ABA0645ECA8FDC3F0E264B35D4B0DDB86B93CD8A047FC409E18196B501C3
+B003622999C47BAC04FD1ABD8AD359C977766E9643EF3BD6385306B08EE3E13E
+7DA5A06AE33D17A3D574C6390DB6E9429754B210F0C349C359559C7EAA2350BD
+F61D4D8A92B1AF697BC620FA0351E67E0D9F41A95A47EE0BF210C2C48691901F
+F905F65693DCB85BE412F097480F6A7266AE0A928729DA0F691CBFFF3B276EA7
+322BCD2206D96E3DAFDFB992CA8F2955F0E8B882729DFF840569D12E4DA1775E
+523AA734552AAB6F2F16B89B39F1A3FF0E07EA08D13E612F201716C67F327017
+6C041760DA30374434808273062C1FFA2C47B3FB578807BC26537F542040FF77
+66C995EF3E8B08B09FCD3EE89C30F157158A739606D2CEAA26694A4F1CEA6633
+B54933141CB85C60AB262E2D4E824A3B85C2BEF810DD774F296AB37D0BAE7182
+5648CD18556ACB124246A75474B232D712C2358908B5D9A76F82C626BFDE01A1
+093B8FA6AA0B32F2CDEF737B28BC0448FF816DDB5812131DA0DD5979D77C3838
+B978CC3F6778A4BFCE9A7087EFB19749285AE4C92B99A6649DA349A2E0889D72
+6D4FC664522F06C8C4D86D30BA43ED4E42211217D01636A4E17E2A132D26F394
+EC34EA12D84594AED9C6CDBBC0908860F39B240FA7D7B3003DB10322498691CF
+A294C0FC7ACC0BAD1EED3E9D60AAE3F7429695892D1A21CEBF062C6129B33966
+8B2EF6E932F9891DE6028B81C5E9B23278D35B7F0D83989BCBA25E20E9D503DE
+144DC485F09A4EFA1268AC5E4B551C5B2F1D51E9B9B9C0FEE585204F869D0BE0
+7287D7570A12940A47C1F51AC6134F03B415C30E147C49F89228855D093EE55F
+172711F37776E97A99CC4B36E2F10713E36FB279FD3FA5A0EB9F3938F42E2BB9
+254EB8F0C0F30391735019E02BFDA21D9813C6A22279B898EAF01AA892B14DC6
+5912B9275167AB46EBC420836CC1A5F38A4EB47C039A7BCA62BC3FCE4199FC71
+011DD6E5FFA0F3D7F04AC02AF91B9249B9F993AE346572329DA852115BEF8460
+B94690E790003586F473F37EAB5AC2922F5F663EE2C3C0C336A8DB71650631AC
+0A923A389AC911CB215EC2EC7D50CF8AEFD59EBFFA53A9F1FFB7E6215F17093E
+3975F186FE23BB5FA5474C11408FABD223E1E6F62035B5A5C1AEFD8899F00FFB
+E729C2D5FD551E80716CEA4E8281660286A802AAE8D5834F37F2EAC46297E57E
+993B09251DD7789D3467417E393B7DEABD06676B96241B0E43ED1A1A9FC3B12E
+0D34B2B0792B79AA648FE9450C3B209FB6D7D91F50C52A5DAB0BC81A8B698BD9
+18946EFF691912D7348D48FE68CD876FC6F71F81165D0C3272DA1A992308D9E0
+ED6D0A4DAD679AF495F62B78D462B463BD4A40931172290C615B3B3B6B47E45F
+CEBB85E0A6AB6832067CA6D403C239530D07F199788AA4DD52553836851C5228
+1072406F6D7323A334E7A7FCA588897C4FBA6D4F7DEB65525EFB74E539C988C3
+A685A98752F7198E77E456A545F0D23A1BEF81EF58B02D289CF980A3F17BEC8A
+6F83DD90C4A917EB0E5E2B444A608E2E9D2FF80620E16AC1D7775C0A10C1299B
+BEE0E1AB24C50647E5CA1DA65CFF3B2C295F0644CA7826E1DC6FADEA93D66A20
+DE852F20AD224D28DB900519EB1569837139C833F24B799F7EBE3FDC14235323
+1D0BCD4991C861F38DF413A5A5588B73AEC3BBFDB885CE17BB3E97B4E6A79761
+93EC8418C2BC4725CD61B5E30C07352F647C3FD50083878C13CFAC241DDCB082
+E53703D182068727F9EB6FACEC25F6D901D7309ED7370867E34E267519E22D62
+4FC7093448BD0D6B1C43D318A3E14C92032325C132AE0FF7ED707E1FA4A955FB
+F5224BE0045CB14ECC321D0F333FE24EEFCC504F7C756451D7693C3E6CA87526
+4912E1B6DB935BDE76FBFAFCA4ED473F1D2618812CFF25A6859C626A216603C1
+361BE3E071FCFEC2D4BF2FEBDE07DBD56A1BFF8303901168FA06488BA6B76F36
+95B0A90D7724E9ADB567C2ADC65CF3482CF47FD1D16F70AA19A97D0F9EFC611C
+AEA5E1ACCDA7FB2DF05E9480936281484BC329F0B771775E73F7FD72FE3F45F0
+50ADBD03932B38F37A8F0A66B2F739EA3AC8811C8F514E68C5643E4AFF485C81
+88475A523D7FCCA5C8809BD49846C77795A38DC6406082000236A4D2628B5932
+AB7916D44EC2210CB941B1422DEB13896DD78CB7B7F400EA5A6CD639D9CC828F
+52311A11F2A84E566DE98826F1E28D55FB08ED70950205DE52C207CF14238446
+084FB4DCE04C781858BB4E0744C023EB0B563769751AF1D807EED20E4AFFDC46
+3C1510C782FD92902761F7557FEF701AA67B20A9B019C760B2BBA8A048BA3681
+35DB440925CABA05B8A13B2D30D14FA875D3E200A018C78BE2E930457BC33AD2
+FE3610314A268E9A30EB41F7C771758410E7D1179567B22CFEB5163F7CADBC40
+4D40860E83BD5DF2BAB4822B55B863D0793D3B60F0DDDB6DB993711C4C7C2F39
+31D02C7D8EE36FFF8FF2179534EE4F2DF388C96C9AF6978D929610EBAA615EE2
+FA163D8C52E5810E94456BE63570A6878E791DF4958E60C057FAE0FFA4C2B7F6
+192AF8786E14A6C6379C6E13A9C528A198B8EC8654AD69CCB5C209964A2B26E4
+E636DDD749286B80A5C22474B49FC5C093A8215D49B30ADA383485030AEE93AF
+BABB827D996E563D1681528F54353D1245ED78D1915CFBB5595E3B9272ACF503
+8FEE0B65C4CD9D5783F948ECAB51BA25F77DFA440C1D8B636FF6A15E6BB0800B
+AD6C7A22C4F0BF6C9A19F0E696B103D8150AAA337C303ABE10C87D87549D150C
+2D9665F99AADD64A1B526D040C348128ACF21D2A5D1899C792CD26066E790D69
+0A373E2593B4F664CD294B5D50067184BD254567C7E039257B015A8035A9BF1D
+A3F89E96EEA10C232662807A2DD6879D4FE3B18BACD337B4CDDEC7087DEC661F
+AC34BEF100A17D5655BF009AE2567AA2BA92CA36BBD484C0EAD74D4FE21FA8B8
+5491388DA8672F56F41E7C30F3F197EAF49964FE2AF95552535CCC10AC5C97D1
+AB5261EC411D9DAB8E026F2D94BB0B79E658B6BEC5B6B9E25FC7480E3F6D56A6
+B9F108C12EED6C256D83F44963B5A238A2DF31D8DBCC094FD7E418A5FE9A7F0E
+B109CC36C470721D58E734978E0FAB9EC8F41861C3F4B3BBFB6C8F84A5EE765D
+DD4C22AB092309BCF1CDEFCA32AC3388BA7BBED00FD861FD4EF03149E02BBBD3
+1C8018D21A106F904C843DA6DBAEE2BF7CD7B8D86847AC43F604FF64DF793204
+FE06EA0B0C7ACD4CCC3065B8727D44E1D74D4DD6F6CB53063B7191A67366931E
+0D23AA2723BDC2EF7D50C3A6F64C9B976F05DBC76408D53F62A405FE327B5B25
+BCE72C26BC228ECADB62A519E63CF8A3B04C4D062450B2574E0229E06A9A7462
+408BC437C205190531A6F12E5A6D4DA06FC9EF4DA672068EAA35774FD3FA080D
+55FDE55CCDEB252BC73D67A3144134F9D69249F6D17E016EFDFE4AA09E5E046B
+F11E637EA411DE91500B463BCC7B19F950BAAE92EEC173269351CBE593A1A5AE
+C925C401F920FA1F0F83D852A52DCB027B5D3E57D9E8088CE19356FB19AC86BF
+CD2A136D406ADE7A5FE0CD8DCAF7F2FC3E8B4544CE2E95D3FAA8F989FC165615
+7C6D210FFC9F0DF1C08D1B45D43A5EF2F93CDAE23FC90EF4E466EEAA3A4A3697
+ABCD9C5A5BE58B59C0204408FDE6E4FB41344144B26DEEA6EA4F457FF8A5D2EE
+8767F2D06A4B67F5A0EE498E1B41ED786DCE79EF41A944180B08B21E8FFAA9CC
+FB91BFBC9003CE1715236930AB6CD3CE157C0C58DB2CE030C67A50758FC70AA6
+1B3C0216FBD233650A71AD9984998025F432635BC2E324C1B71DD7076E8F6198
+D22F064B062B8BA565FE5691F3E012834B107C7122A77EE958B7E5CA7ADABCDF
+5571F16E9DC6BFB0250ADFAB806C525BDF196FCA4FECFDDC0872C36F2554F408
+87BA9EA3A28FA8DC3A9732C839C6C3E084658607A7BCDC6F41EFED4E2728D1E2
+225C58B7CDAF34323B03FB947B5408A52569913C7C4161819310D93F10490D67
+7D0EE1CDF4E87F168375AABC22FB587A8C5F6CB9A859350AA1DD4358DE9C6B20
+EF559F152B300F2E64636F77F4A0CE640AF8A7AE8360D6212A5498CC8C3BEB12
+F53AAA78FEEF32B34EC6843BF23B8E5D4CFFF9ECC814325EE583BFFEB41C23F6
+BAABAE49BCE4B79189F29FDCA6C2D75038F3C6E4FBF49A91616E5D117BBDE868
+689601C05D7B1E59897739A10A0A67B016276FAC9211F2DB649CE848A280722F
+3DEC1E57A1FC9AED529C9149D2947CA2271511378A5C500E75A0CECAE417E06C
+15B12747E262751D0FE4CCCDB3B1D67681A806ED0FB8826A0461AEAC1B7607B7
+589946D0F4F143C6BA44D9D30EE39F819E58DECF85FFF15067F1D4D132026E11
+E92D8982A412650F50E47FB2BE419BC956FFB44DDA87BC624A21A19AF4FF5D89
+3C6677B1FF3A6FD710DEDED18CED4DF2B56795EDAD8A5B294656C004D6D11714
+530C6C5ECB42BA9262DDC017F9557A26D6C9B9C7C22707AC15EFBCCFE44B5900
+C998E96AF0F7D2AAA6C485D43341B61FA18B49DA1F6EE5701F1857C3C86A995E
+29DB86FA21968AAE20BCB8688091455FB6A0EF0E9B6392EC7A5D7655D5D16BCB
+1DFB0E4558B1004827BF9D4654DDF544C2FE55734033AFD5BE72C3D4C7B65FF2
+20F0DC9D002B39E9907654ADE76C6657344B204313165C5BC8B83FF1491BDA7E
+6131F288185DFCBDCA7C1A7FFC657CA8675C74E06E1AA443746A22008DF927AC
+5881F10FACCAA1768DC7333028377102BC172C8C6CC9ABDE03E713998B94E754
+3D6E2C6888AE1A2BC97D3889D7029A29024A7E7AD5ABD49AEB017CEC22E3EFBF
+6B84D9E1AAFC10BF9C6FF5E48DDC7DEC1D2AA3E792AD3235B2F393B76EEC9A3E
+ABEE96053ADA7DA5BB45C95EBEF25DAA88BE8EEC4EF136D897FE64524C0EFE43
+D63CA15B1FCA343EDF23ADDF377996A4E1A53267BC3BAF6B285A4CB005D2BDA2
+5EFD69B3887328607E232028283DEF0044A7A15270769BA9107A4B79B7CFC6B7
+3604CC85349B379376D5008A2B17273B813076C95C10B157BB69667A4824B683
+B632253D2E737619FC6900EDA79B5180CC1DDB88B20635BB3DF6883AE42DF139
+A1F6639DED98535F93ADBA68811EECC99FACE6071F52053B3AFD104F00313A55
+0AD686E2C197E923037F46A827C47BA1C63758E4649CE51B20A4B2CDC8ABE57C
+3D6C144DE423FBDCAC75123402DEAD6DE2FD83DC2539BF892049FA5D55DFAA1B
+9C3AD6EAEF48405F18001E1B51A1E827C3BDDD90A30ACA4E5EBBC133E838C6BB
+0C0C98B4CCDD56E0305FD2B57F8FB83428C7B73F2400F524BA965C41D96479DA
+72A24A6F6EC62BA7AB59ECC4F95BDA474DA969AA4504CB6DBF29FFE4FA0970B6
+977BE7FFE0FF0E55F07B54A868B77628D7BF68E94EE9464ED13145BDD22043E2
+78DD0E6D657821E8C369C54B6B299B29185332B866BAFA3962E1624A5FA9057B
+2DB20773F149BF122D9DED1698F0ED17B4FCA7DAF88EE05517C6F539DD21440A
+77925C9B5CB194DBB9546D655EDF04D82C39B4895F9AF2306D106F1033BD9B30
+11F07A7D57CD5B86EBD84F4EAD872F9814613E12BCC804EEBDAA3CCD8C89AFE4
+33197ED56846C977C7954A258194F3DC4CE9093C895CBC8E827E47C8D34F6A80
+19C0A62076AEEA73A5172717A20D0E524EDCD042BEC8F03D3E84A1A2C97D2BD5
+E506A0DB7B65CD39A24B5247CC08127C60B9ED3B407086CB959D89FC4C2F8A93
+B7AB0ECECD0120E1B5A8ECBD94EC12139D401D1E30231AB3A99BABBE4714FE2C
+A0CC0E9365DC01F66B64D4460E01E90AFF3359642AA28426B7CBE41017F8BABE
+9235EDAD39964692BCF9CEE94C4F29ED3483640176BF591BF710BA93946A3C95
+C7D4CF5D16357F2E6DE5A4CC7D7EAA546B9510943B9CB9DEC062B475FCBF55C8
+5CCA579CAD0A2FFA8B3901820125D46443F6A353FE05ACFCF3FDA5DEC17CD9C6
+8D6565A29B18C26AE80F5B93227A1A91522A0A93DB41DC5F9CC831735FF97BFF
+0DD9C81020E1169AB923D51693C8B11AF7A7234E2F3D7B49A66C80645C2E4059
+B7F15327A4A4D807460570438BCCAEB863C520DEE2DB628BFEEBDA37EFE63FF1
+0D6EC66E7EE5F314E2A62E37752D0B8EEE6AE77E4255456CADA7EBB4EAC07122
+CA742E1AAED581A1CE3158C790882134ACF3EBAC983A876C218643183E2E9129
+98F8B54F1AB36F057416DA1D6438607B8AE7043F1EE1D25CBC0D68718AFEDCF1
+9E0645079AF0B4FBA0F8B40720BF428CD87225C7FF285AEE6F048B5983F458DE
+15FBD918F9198FEC7F9DBC08B1CAD5890684579E540E5A22D79CCAD378CA3185
+2337C8006CB37CA031B719E61DC45138C87B47C880D00CB789127D4F31FEFE7B
+CB100BFC256ABEECA695D0DF90DD780F6BA088B74BF09AE7EF73141E7337C89B
+69DCD842F5AD3881613EA235FD37DB2817E33427AECF0ED55BEEA7EF410C1376
+7350BAF850481AC0635A9220EE2485DB9A35CA9544B79D067D4C82C8CE937AA4
+5CE2860777D75888A90FB9603E2B4FDCBE41C011B45320054362A143ACE9383B
+65ED71622EDA39FF82D8E88FD7F5E9D947663296ED93FC16A95F04961938B836
+FB1267C5A512B0AB28B32292449EC3F03825409CD01007B7B28349B7B7EE496B
+EA4CC3B9A877BF627C35908FAA85D10AC7D9B9BB65C201E7E4B4C671236B3C60
+B1CCE5C51BE24C2FA060EF9539CEAB6A640744CEAACB9AFAEFEA785AFF8473AF
+0D0A134031F4A38FA62C154CC4FA4DF334DB857DA6774395F59CCE2915EB2F94
+C3D803C2467C862FD10F6A7685A5FECBAAB4B15C12C7AF04029755FAF352F76C
+DE91D1EC35C345E0CDF3E808735A5A63C8BA55914099750C737C6ECA4F80AD57
+02343BC5417C62B5DC9AAF73B5B6435744A983B8E3FF3F1305CC8A32C2301DE9
+1BD2903185BC29CC5E1D79F5733D1D011A8015D03C7246601DB2EF01F0E3EAB8
+CA11EA8A0A5C254FD12398089580CD9E6C53274D97ECE50370719E5CB0483EFE
+210FAC6FA0FCD278369828B62A7EDE838CFEACF2A60177FDBA6E41CB5FB0D23A
+57D8A8D455B1153F49064CDB898E93FA620735F3448F827055B8EB37074295FF
+1C4B609EFADEA7CB1D8A6C3D57FD6D3DDDA663FE44736CCCA8E1E92B49A06E92
+7616DFEBBD028713B618CAC526534B7E8D2275659E56B0BA20489EFB7B376D5D
+72EDCFFA2C9C4EB029B53989F064537D7DC4A656B32B8BE82337930238D5C796
+09DE101C6546A7E33CA597E4E8F609D22401239C22DBECF530874E7EEF014807
+AB37D0882E4569B95D07E1AC3A7C37D75C1C6060DAD38CB8F6628004FB410A81
+81F3D6F9D375B3A01C76E9A5A816A3BC4DF9FFFA5DBC469879D63BDCD499EA88
+9053B0FC67214D53852D53F072A65098D5F4D21353CCF45A7C72B87FAB90F0D1
+7A0A7C2785610C8A01EBCA23C8DF59A6056CEB54C7CED7ED2F6C35A65C9AB4C8
+EF3E4753136F2ECA5D5093B70C4A70045DFAC28A854F0B96790849EA3E276C62
+25B21178758B5769350F9A6380ACFC3726B4655AA6CF9EED9582B88706E6EC7D
+E82DFBB3EA1C9D3E39C64E1632AD04A6AFCE6DEADC7473C2E57FDC36C52DD63F
+31EFD2F1645AC7C004D572655616FA55B74489CD7BC7B94B49D6690A6D6E29D9
+6D39014FED4A381C1424BB4EFB306790942709635DB330D4DC506AC34E9E6375
+2D54D9731506DED192E59F4BD5826DA59B907875C8ADF5402A969D3A1ECE6DD7
+2C8F3F13B291F3E32DBF307F0A9A2F1486D7F72AB88D4D10C0B2058438D328B4
+7F10A539111C51C8247CC6DA45F29DA7A70E981EC9C44531A748FC9DED39C4E3
+B0A65D6DAC8423208B20B06371AAE8396BC29C9C3A49A49488F50517C0BCB217
+566EFBF97F0EF490D3E0F3AFFB17C8BD4297A36B63700EA93C52365B0E88155B
+9525FBFB909A649A9846A16F77E19225F9DDE5C2835D7426AFAD563CB7BFB410
+5935CFC756CE19D2989A84F22CA3E9AA90621749AECA3C8A81702C418846AD87
+CBA63197A06EC59179E27ECD7CC714E7F69EB20422E28F9B3CC032389950DFA7
+27B63A98B7AD8EA93D178092061DA799F93A67E5B32199DEFF93910E0B9D4E23
+E5C2C11E51CB75884081C918386B7639D79F82BB55DEFF63EDF40A04CA551F16
+19F0974E82C34CF257776C9A6F694E5850B5C5BE3C5E61AA23AD12A03A4030E7
+6A1F40695A02AB9CFCFD19B9CF3606B8F84F2C0327436F2C79E6A6DC9399E5B1
+27D646FA17BA49440B8FC385FCC45EC0A5F6731ECA5645538D909C4E3733E6A1
+41D02CB5C7072D729144CA7C1B009862F18EDF7053E10185CBB8F6E0891BDBF8
+26396E41C63F0DDE5D7A24501EAAB8245C50D0492220ACFF27025746D11872B5
+00B93A493B39E118D666C221812B6BEC53DF9B5A04AA992774D03B0CF6DBEFF2
+838113D0195ADFEBC6010CA8F578F0984A5DD3C857500DF8C6C77A1136092B72
+FF85EE75214628BC2513DC49FDA1B418724BA32FD67CADE1C5FEFB1F3248365A
+DC1E5275B7A9E243BBD0E595CFCFA2900CD2F53B72B6CF3D489C410E00F3A105
+E38E714498930C5D0F57AA3388B0A71BF3B003B54BFA359955E433247B0463B0
+5D19E7D67C38263E366844533EFBA2EB840FC31D0DE664753FB3927D9C914683
+A1FF0CD308D9A07AAB051BA6681A316389F9AB00C41C7CEA170A79DC52D605F4
+965F8CABD2D68C7795055DD0E391386ACD1D0E532671082D805DB80C8A461673
+3CC4AF55C1ED96E3B5B7C708470E487C1E2ABE73B8BD55B7FC7E39CBD3AC38A3
+1B3CFB02BEB17D460A1FDFA29A6EFE4371B996D2E4CA5DE19DF3912309095775
+C792112C84BE3765FAF21BEBFA04CDE0CEDB38BD6192E23F81F496895D7393FF
+1073BA5C3A8C865206A3CB68A98A3BE586565EEF92786C99ACE1FDD50D60C103
+A936D1946B216300939904B4AF2B8F4D63B4F7255535291109D55D8C39152DFD
+0BBBE256FD2F892362D90AE9CBDDA6F729427848FCF97424122452F4F15664EA
+C7FEE09C6B19995BFA5E5F57714F01C892DE78E3EBF82824E38C53B8877D515F
+A126028A78DC60D1F7866540EEE5DC1077F72A4A04C4053FE19A686955D91D11
+0513CF5F50081F3A267BCC6D30F1B0D543C392B4008E56C59CB0E7AF7ADC59E4
+16EA70B6F6FDFAAD57999AF5D192CE1C71C398D5A8D62A821422A9EB79224FFC
+9403BE1E9B39E87E81AFD3E08942BD0EFA615E921CC865C7E13968EEFFBB96DF
+58502A5E3A6B80EED40FA7EEE9DF32B60CE70154B5F9DC4265B4AAC0F8B872CA
+659FC2162A0BFF85F55C45152964EF354A49B743CB88CA1C0550CA213F523B5F
+F8CA3E0E111A18C61850454D8B5CAB4BB9FF96F0E10A1C92DEF460ECDF06F71B
+E09EB607B2980A08187C6DF5BD91F63DD006AD0C2F8A3DBB5C9BA0897E711DFF
+3B4BCAF937785A3CAE7A554013A71E7D0E7A2DB6A652A9859C6C475D9F9D41C0
+25CA2595350B3F013FC3C152D3B3C511508A4E16452ACFCB4DDFF29DDFD01D3D
+09F7624AE4A50813D70229FA5B012E2689254EA3BFDECCD3DB9D43B2B77FAD26
+007A632D14845C7B2656242F0D78AF4883F632150367A685D6045C0AB7EC32BC
+77E0BD7E208E2887B211E2100756CED3C8FEBFBF37D5DB921C7A1AAA536A746F
+640EB7808987F463F71BF35A0EDC8CD2DB64C0854AA3CA221B73627A48FD7E6D
+B64F7967B0153C1BBBBE45A4073864F143223F946672181D1A8A97D3EE4DF997
+633E5348F62EF49BD8DB1111584E38F7735A6B205DA659ADBA809842DA07A86D
+15AC9439CB432BCB8AA975A0CEA982F27F7AFA17BDBC07BB5A66AC79CBB2BB4F
+7FF4E5494D71319122CAFF0DD7C139AE2FD469DEFD76AF10A93CFE5C32A41C21
+BC116AD3E2F8416FEA532BEB14033D93E1F188FCBB649B21389A38EDD20E039A
+D0491C711C671B2303D541A1CFB4724EF133964BB1EBAE34C0735755D8457393
+6F0D6F0DACAB0DC46AFA06FF37A42080737F8AB7829BA634C43A47C538CAD587
+0449F1AB88F5B1BB56FEB516E8B43C15E0FB4DE1225A21A1698FFDE9FFB22124
+228165B5115679E215876B0B29DA91B21747D304262ECF1D9394F2DEDD8D6A4E
+3D3FEDE27E41B64A179A226A806263972A3EE59F21BCB40E4B332EA7FBB2A138
+E34F68A0DBDC6F4562F9E3D2FADC975BC0A8EE8D8780CBCD3873A49911A5ECB3
+A3E081BF3ADF691C08E04B6316845C5BC2E42DCD519D71D032163E32D48A16D2
+D5223CFA7CB6525C13A28217246F1578A5403F509EDC3309140F7BAB188FB97B
+9C35B6B3B10EEE8A5C8048CCA9A4BEB397A4F57817B4EE4CA387F4ECE353A1B2
+F0C00CB0D563C4C664561D817D4F7261145425622D09818C7019A12E191FE6D0
+F4647FECE6A520C96FDFED6A365B668D335CFD199FE9549171DF5199AB83A3EC
+83C7B8C00DE6BF293287AC50E5D0A81284647881C083A7879BBDBF68452EADB4
+149ED27C084F2E7ED50D556FE790372F4629073C7634062868C0F01954043259
+3C98E2F40C4A2B277B9BEE035DE673FBC8B3FE5542FAACF076C5F875F3AF5ECA
+501ED2AC96892754A4DC0845E847756EFD5407AFFE0AEEFE8941B22F8B3C2C85
+DE6CA54594767E0B8596FAD54C90AE3C4EFA793120D0F308032D0E7DC3206EF1
+0C681D9DBC0FBC26330D5B44C0BEAF71F1DCE7E69EF10B18A01A29EB8D83FC2A
+73B4FB230A3036D527D7F6DA5903420C7A6283FFC85E51083EEE085B21B94468
+BE4AF9BC00636ECB2B75B686EE93ED5E1C42A7B00FC2F845C531EFC55EDBB672
+0C26C9D446BE286149B7A63CACDE7D20015D21CF191A2A9F42218E31A82679CD
+F9255900BE3AC0D2D33398E0F70D1B3486E541A0B6169FE7A94BE41B2593F639
+2CFB3489ED6C46B9C81D564D0E92FF2F28FCF99D1D4738316FA44232D8291A84
+EA761C63655548D1A892F281F839085554D4D3E98884458B3C183EEB6B19B234
+D887657FA7F09D6918930207EC00EB91FA17D8D904D9C577606880609F6C86F8
+40D31234EFFBDC53059FCDB658FE10A1E1167E1BEED54BFC71846DBDE91CD695
+75C3572DAC845B5199EF98BEDD79B08500B08012B728502325CDBB8013BFFB1E
+088DBD1AE35601F4E9B2A4BD7E8158596A47AB71D66F35EA9575D8321D17503E
+F28B0B5B78A99ADCC93CCBD359DA2CBEE7CEE3B087FEDB4667C9F6E8B82BEA09
+9B5A3ECB3A09A03CD6C7E12160CD9D70B18A885ECE9B3E91C1791411893ABD3D
+4108F07CF8BEC447895F931F33561256330BF27F73852446045415066A5817DE
+CC1BB3C3718A79565127354CD687F5FF1EBA545F286C7870260882F92870BAFB
+F3F9C7D44FEB6087260BE7851BBF2779EA23B55C22BB40B610493070139FAA4D
+439613BEEECD27538EF4068436BD321725E7C192776C9AEEBC63CC817E9192C3
+3B2F08C429654E590CD321C73699642B678011B2042027E811F18DCED3F04B1B
+B71DC8C88EBAFE715BE890E9B418236CFAD3992F118118CEA637EE33D4773B7D
+FA50CE749EE655CBD34DE654ED2C599B423AC51BE1C002B7065A80634E514896
+4896E7C6D88BE2B1F77A333F2680BD616C5B511F624F48519A64FF0C6367D012
+006F86BBA304AFC449D8A44B782804B2BFECA070C16443EE01B7D347A00815BE
+A877AD0842B71807389860B01837A1667B1CA974C702674B9923F477AA3A3A2E
+7C68840F054C33E4C961161EF96BEBD0C22AE027D6C66C1512502C09EE2068D9
+E8DB81F1B3BE98A8D5378773344A8075FD17E6ED95884D1450D841127C94E8C1
+547D7E5EA2B1C7CC0685C7140CC128F24D36AD6E9304490553F57C0BF0254E96
+64E8BE7D5E66A3707F97B62DAF7FFA0AF208B1E048CF8C1C9FBDF47758BEA9EB
+8A8746E826B8057B8C2AE11AE60C8BA1857BCA4C910F35D9F10BBC4196AA4B09
+BFD5EA6DD1144D26B7F890E4879C5B5771EFB5430FF2CC75A7338532AA4EBBB6
+99E319B3CCB5558A149C541A15462DE5AEE476682F356C8F22EB0CFA3EEDB735
+00B7AB93075F8B08F0A590279395358AA45B494E6BABA94AFF8FB367C80934F4
+7EF060E35F81F66E223B1414D05EE51AD56033EEDCBFA3148E8DE3D2AD5F9896
+6207C8D9DD991262C989EF4FF4BA86235BFCB7BEC2C730AB6EE2F5771D92FB32
+FDB235CEDD9C638780268C77EB39AF593F5DF2E1F5906F14D53544D54E94905B
+2E4096AA8AA145AAE060E76CB6D6097F6D1048A15B38B2C58568C325471CE949
+D7EF40FA6168CFFCDA2EBAFC3BAD6DF806A94C22E58C73C7C181CF0ACD76AE12
+9749989C31BA69C7965DC0D8F82AD88B68C18372C68E1491ADF11156778ADAF8
+5D4F99A31F105F1C3B60E7754F6CD843675D6BEFA92F0D1E5C66227FB44EDE14
+1FC8430DFC4A78DB842D74FD209CB8E31FA51E21237B2FDCFEE3554FDB48899F
+44090D381999A8251C873317A95EC0D40ACB3B072F8F08E43E9080F7AD582176
+B65F5A582E30F703F2A0C47D1808FEB30F6E637629471BC3B41B5D31593AF3BF
+B828EDAA29AEF1CE8B6591B19F22A9C5C8E2A22B55F0F5DEC7E6B8FEA0674109
+DFA90E882091ACCF93762A05148F8DFDEDB896855D674FBFD692FDF0B8FCA95B
+722BE85B32C776B59A13D1A2554F39DB9701E3B3D71A560E05060D0DFDAB6D6F
+34FA50CA902AB69D62188D39809A5D724D887AFA0963BA6ABC05ECACA701FA71
+BE8204871B373A02E8B91E110A17DC99FD87CBEDD32E9A4C48A344D157EC3D21
+665CEC66C67B204C9D9FBF164C026F1915D3A766DE2A2DB4CCD990A463A93906
+1EFA2DAFF7A7947F2931B5655E4DC0BA96EB7E5F598D435F5AC39FE5626C25CA
+8ACBBD0CAFC62D33B27A350B866241061022A0B446795B9EDF3D7980BE2A1465
+8E4840818466F9CFDFEE203E565B6E6EE9F933884F84EC1E23A8644CE4A79E79
+841662C13FF90FFC75FE328E65D0284C7792BA60E1C1D0E2CB3ADD2DA5AC1EC8
+CE9974A7210B748B60C28F7F655355EDAFBA2DE76E1157950C62800D65263B2D
+CD97D6E7836C0EF36E2A2B7B916E8D58B35B32776D24BF4E125EA9DC3C2D9DD5
+2CFED715F7661D61F59A282622FA6C76F044F6501B33FAADE63D747A72D847F8
+F99013B92BA34A89E07C61FFF30CED15B2E616EDA7B0B0D42EFA3916C7095975
+9F2F4450D8144B2D718A3C230A4C2F787D01BC12170DB2CA342B3D1F97217C77
+D8CAA9E4B48515AF06CC97C03F5750A8B41A645FB7EC8D88C460C86CC304FAEB
+87421BF12B8EB0C2096B17DFEA3A88F68767D69ADCF4BD64CE1ED3302871E855
+5E12A7E7A04D0D0734DDA06493D557B2FD8BD3A23712AEB746E0DB51CED4388D
+55A67F19F85BA6278E4912C7110D855A246A8C540EBE1E4239F19DC97F928552
+F6C126AEB1F11F4E21D96BB525C70927F92A7754992277B53FB85124D0408FBB
+9A6FD79F32F972CB5CBF16CC7FA05ABFD4D739FA496BE03A427072DB47918B50
+43ADEEA672A4340F63FE51AEB92BB16AC4AAD2AEADB2A9B604CB00063F235A83
+14C7BC354A2DD6B74F13E82CC1E5B83830F60A0FAE73897B8E12D4FF851366A1
+6C0761E01B7C71F9F7DB08DEBAD2C72705DAB8DA582AA2F0447A3C8AF5671685
+B6372068D64F25DDAAD9D610141569704CD86724839DE2E3BA2847DC3466E69C
+851F7764B043FA59A4307A434631DBA05A77D988A6A3E2274CB5A8E6BF71B50A
+D3C52395BB8CB53E9007B2F67B98677EBE4F233274414432B8B19F969BDB6D55
+B202EC30D26608A13D1F19E323148EE41F481EC45E38A69D8E6BD54F3CD5A91E
+55ABAC1492AAC8641B0173011C5A5DB8847EA2A6F96E01C400F6F138703C14C5
+C6C1501D1EA70AB40D32AB3196A07E940F93F96560B3F0FCCF70409EC14715B0
+42F53DD3238E1237C2A966BB5D32E76C7673C21E2E0501B37FBAEC23AE80793F
+9EDB34CB6716DADFAE94AA34D206D38248E541A2A725B951990270B105793603
+6551779DAC75BA668368DD12D1C1064A7E7CB744F81E6F63133427F01A4A2C36
+BFD7080607CA7C4EC983F47977A762546387DF1DB87696F922E19A7C1FA1214A
+CC77A031A170A8463CA0F8E5B74522745659E412122CD7F96FA9DB92BBBD5F85
+025FF8C64861237F7ECC20775F36375C7B3C2F93B53D10DB66A4950F8FF9F93A
+27F086E7CD3AC08533101F56BD358B042D60522FC8CDA226C8170EF702DCADF3
+AFAB85B8429DCCB9949BB2FC5EC59A4D5BA820803A9D58CB0F27E328A8038090
+426668CEFCFCA4ADDABA1CAB0E0C526E153BBA35A154B4E170C25356A553B5C7
+F924E4088487FFB070100C3C13F3D492BCE5FC75798F3906C8CA0B38B9B52733
+0783E8615695E6F53F72EF10EF84E7B6BA3EAF3832F1AF96CD57A4B13353AF83
+8ADF52C46480220E4CA48D5BB8BBF9EBC9F0DF4149790613DBB0A7E3FC41BBE4
+655D1669645BCC6F6F319C490E8C9344A3A086DAC8AA514B0E4A6002C7564CC8
+119074B5CDE906BD7EBC7C14718F2113D11A28FEFD1C94AFF1B142BA226F6637
+6A0E546E8FC0EF0E6B8DB79553628574E0A7F08AAA6321025F4ABD65472705FD
+FD3999052A4D4F8E4584771EACBBE44BDBD9ED9A9123D2A3A15F96C18AC8C7A5
+6C17BDFCAAAC60BF88D651888DA06F227F567037E2A55DC24C6131A94C89012C
+A91F160A0F7DAFA03B15E502B51C0DED7FDF093DF4DABAE5705E5823DBDA1C11
+380972EFC4789A590C34CE915B30E27604991017A95E18D07AA8E52428F5EAD5
+560F43B0326D715CB7A486201E38FEE71D15E19F23493374AEC3051DA6EF471D
+B6F70E319095E0D74B6D5284F4C02BEBB4659D35F6854E225CC85B252BB2E3BC
+1FD3CE07B39200BF9E5072C05B7CBCA2834CB5C07AE54305B96458A59E9CCE4A
+BCA04748F660DA3BF17D2B915CE0E5B1D327C65FF8B645DDD1FA9D0D48F9BCAB
+243C1603E9423004FE6A55440300178BD9C433780B453684E6E159FBA89A1A7F
+4C55BEA025B9DA02BAD177E925E3848DD56684D6D7A306D8580F9B454DD394B9
+766F6E623F1E233E658E0DF75D9666238B166292663B770EDD964B910CF01426
+5E296C3533AA94DE3C7C7A5A7C66650CE904429640C38937F4AD35E29CA2CC34
+CD2B4F23B41EC48501CC6695B7A592572C7805950F21014BB34F07785EFB9B46
+87F6C196EB98BC0488BCF83D0E35E74DC5D28F631FBAE2AF84ED00F9478ADD41
+E55E6478709D133C00E9736A5B1244B3F7E1AEE4144E1C12962F841DBB2EC103
+8D6B21DEE565927696C30B32786B0BE9EF519CF5CD028D1D9DB8D8DC69182DA0
+9CE848EF34B3AE757213641E0A5DA73D0851E1B78A34D13DC88FEDAE88E6A36F
+F093E4F8C24EBC3C9E49BF6A4E73F4626D854D9EEE82472F7CAF7C70E6233374
+7261842E3CC9ECAD676580F4FA0FCF333D00EFD80A775578480CAD913E6DE76F
+EA34E2D59E5C313DC36206FB843658462800DCF5AFFB5B569907F9614D993852
+20DAF6F9EE86C6DE02C734EF4C399023865AC14A79A02FAC18C6DB6224C7D525
+A16240E267FA34BF98285B923C1FF866E21C9CAC949A55C53A54A0CB0BBE0F00
+41D3B45490BD44FD8ADDA5B83EF45F74D68ECF3406DCB2E212DC93801D571DDF
+A39518F7FAEC9B48DFAE47AFCCFB1E1C6FF0F88EF736D17F7A786E1904816C09
+02CFF0AB99C67AF35A7373ACD5AD404770FB25EB4492996EE31F9E015E0D1D35
+91BEF50A2808002231F85CFE55EFB82E25355E4747007AB4F8E13CC859F692A4
+6274A88508498CF85A6407B9D604C0EC3E82E28D8EBCD654EF88286164800DF6
+5DE8617392C671942DB149AF1CA200B16BD11C9A08DB458F0F5FFB345EA6404C
+498E9D5F9974F14118463D5A43A7E882B272A6215560F7F09FD7B2041C08006E
+B9154AE60BBD9293909621E8085F24C506B1381858B9F23AEBC2F5B3FE9E8B46
+B0D1F94A8E3DB22B42135731CB33B8BBED9B0717A0E9D46800F1E38D9DEA3C0D
+BCF7C39527556C9C8DC7385180249E6FC4F4D7C0FF0D6E8B441ABF5F3E630782
+097EEF387F129D44D7B228F9B1406C6CC2096215CA07454B341DFAE7EF513DA9
+476F91A4FF009F4AB1DA8F0B1D9A1AFF2609A37B709525EA79897EB7AE543E9E
+A6ECC2C09C4B50F2C05ACF7A115E6CED8A532908D1F29092C519529145130524
+B57C13B5A58F3AF9F07ACFD03B974534CB7E0AAB902627099C1C2AC04F6BAAFC
+F74D21BA432022214F300A1DB1BD681BFB27D63119B0A1CCBE145395C15264C7
+82520AFFF25975EECFB1093766E4D29B233367F842B725F40381439CB20A6172
+75B4BE58EC62C2AAAEAAF52A3FB9383064E38CF69F44D6BCD5938DB6F7160D26
+4537BE55A15193F4DB40937960C186B6BA5258A83B53B40986B72819D85A4C8D
+691EB3CA85F1E83E1333EC2F6B46068EB59F89124B6151CB22892B8EB702078C
+2924DCBC26F745ACDAAD84FA33254EDD96D6E61609105A65117D49C807F394B2
+014160CF85023EEA048816572EAA27183A02CA9E7F2D6D732F1D0012CED3313C
+AA2CC72C658303B22356912EB88A49B0343E9479CE65881E65DF43ED475DD0BF
+7EA2B1C2BD686213841019D221A675162D02E78816B9D3659B1BD478EB28FDF2
+D4CFD378F4D6EC98474E3B28177DDEB81889CFBD29F476D674AD4CC74C8DB777
+FB1E175B03F65A59658BBF3A0E0B8039136041DD1ED2A25AE05888DAE3D20FEA
+210D2A2EAFDDE2ECAEC1E7F085E47C9AD131B40F1A59C3CC0A7BCEE24E2B18FA
+0D5A7BAA52C4054B54B6A9033CC3E346407B69905470AD16E5A74680795E56F2
+8697231A95068D78AAD19297734E09B93B0620F58AF72456BE2C0F7563E578E5
+4D3E03D4891460692127ADA0E0676ED9FC379E1EB2C9A73254D5D4565A9E6E61
+FF5CD7CF907E31A30A2A3D892B73DBA3A42E7FED37EF8BBDE88E3901EF507E8D
+C99F6D32DFA4799DF696F9541FEC06CCCF4FF2B2E374FA11F8BEA527D116857F
+E904A85EB3B876FFA226C570DBBEE692224782D90827B22FBE62CE501BEB28CD
+FA5BAC22843F80B64C01EEAAD90CC2627A90945C9E946F4E6BB1FFFE9F39A806
+052746A36D4E591090D72206620BB8E38C05A088DC2467DE7516C128127508BA
+746416EB47E3ADC8A9B77F2FA2E80CFB614481D9F232949CE0E7A746EC6671CF
+86DC2FC324E6A97398E72F74F6B730E3998ECF8FC047954E3D0AE023A4536F77
+7E921A53D3A732E80EAB5D9736F131FAEC1A269FDEF4C26996A150ACC14B0723
+72946BC954B9E3A8878DECF71CBCB2C72111F5A9A55614EBC9E2D01D7BAF74FA
+3BE2CE3DC63B6A993129A627AC8CC80FD09248A8F8838019F66C99B4271A682F
+386C8CF988290B5C07E1133ADD623C6B62F719C128B3D4F33CF34F1A44074768
+5C9205957EF01DD3E4F818E8DEA19B520B9ADA0D62DA4BF4BD36F287EAB92DF7
+664436D8282E9938B47394DE9F4E91ED8A9DD0CA6887F404D90DAC9685C3EF4F
+5855DA4329A1BFB3A61F064F61197AFD54AAE2752FC1FA2D233E4952E6F77BDE
+FC97A410B543CF4D52A3FE02FCFA5C4CF9A37EEF946E2077BDBABEB28372FF34
+B4F037F4DADED2EACE026F6535CDE726EBF37E5E4456B7548E2CA899A73A4615
+462891A41E81824D4A9C0732C4B02BDB94399F202B7EED6E0F72D81532374173
+D0B6C753CAE68998EA8D869CC05A6F7AEB9CA27AB0044201D596C3265CDA1B79
+023F49245B0757E69EEF30AF41018DE7B3D521EC4E4AE4D304C1A4BD3F01E406
+1AAA7E0062B61E711204A5BF5ADE97885AAFE3F8375FDB8EC3B21FBC1EA92520
+7D0E19BE2CC2FD1282A98791F993A0D96C9141DAB5EE8CB671ABC34B1E9C6435
+1E65E95EEA4DD47E0C1CF9C9C687C623C8EB2916FB86973C2469616B9A0CF8A6
+3D7F2B327DFBEBC63C7058DECD155475D297EBF1445E0D72D03493DA80020845
+BB7E57BC1E7C0A03114EDFD47D95BAE5C58D9168ED879B965F16BCC424DDC51F
+4659AA4FF9EC747811E937DE5A7832C1BA3DC99379CA36CECFDDF73697630805
+728EB9E00F5BBA4DA9C1A71BC3588BBD6EFBE78325B38C9FEBBB35FF6AF34B68
+604B713746811458FA69AFB294FC71620732C7C53A8E936F2333565861018476
+390548AAC2C080C642A20B6E4C03F6A50E438A11211E737AD15A0CEC2BDC3C7A
+082A90AF6AD020A8AAD22836B7197719A374758305D39EE8ED0A1A28E5981719
+9DE1CF42A2B8093223789402C7DF57D9D85232311A1104063D3CDCC7994AE6E9
+3208AC98DF93B4D0572DDBB1526457292420B85AE4B45EB5D89B9A078FE8DB1C
+84A8AFC65D712ACE75770929F58092E9D1FAA8021EB562A83AD3976A4F293B1F
+78F622CB4771F383FCB1AB8CC3FBDDBB8BE2F04A4E25395C3123AF12C254F5BC
+4DF587C94797236D4D17CC6F94DACCCBDB46F1F5ED3E99728F512D0E51D69346
+9412EBF63747C346962EC8DBFAD170D5251F1F3C93BA929D7FDA7F5C83845F0B
+12E294108AD94F87D3157E6024A8F24E935B61D119567ACD5F7E9B
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -3303,25 +5161,41 @@ B5735192AE1B0630B6857B070B43A8E602DA6127EDCDD3550A17FBC52BC26229
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
+{restore}if
%%EndFont
%%BeginFont: CMTI10
-%!PS-AdobeFont-1.1: CMTI10 1.00B
-%%CreationDate: 1992 Feb 19 19:56:16
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+%!PS-AdobeFont-1.0: CMTI10 003.002
+%%Title: CMTI10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMTI10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMTI10 known{/CMTI10 findfont dup/UniqueID known{dup
+/UniqueID get 5000828 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.00B) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMTI10 def
+/FontBBox {-35 -250 1124 750 }readonly def
+/UniqueID 5000828 def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMTI10.) readonly def
/FullName (CMTI10) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle -14.04 def
/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
end readonly def
-/FontName /CMTI10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 12 /fi put
@@ -3344,167 +5218,342 @@ dup 118 /v put
dup 119 /w put
dup 121 /y put
readonly def
-/FontBBox{-163 -250 1146 969}readonly def
currentdict end
currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
-3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
-532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
-B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
-986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
-D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A319B6B1FD958
-9E3948FFB0B4E70F212EC976D65099D84E0D37A7A771C3101D6AD26A0513378F
-21EC3643079EECE0C9AB54B4772E5DCA82D0D4ACC7F42FB493AA04A3BF4A1BD6
-06ECE186315DBE9CFDCB1A0303E8D3E83027CD3AFA8F0BD466A8E8CA0E7164CF
-55B332FAD43482748DD4A1CB3F40CB1F5E67192B8216A0D8FE30F9F05BF016F5
-B5CC130A4B0796EE065495422FBA55BEE9BFD99D04464D987AC4D237C208FA86
-0B112E55CE7B3782A34BC22E3DE31755D9AFF19E490C8E43B85E17ECE87FA8B9
-1485831624D24F37C39BF9972D74E6EC4784727AC00B9C4A3AD3DA1C22BD6961
-7E0ADAF55422F22ACA5E4DCD4DF9FCD187A566B7FB661D0530454D0DD6C6C50A
-7A3875C6CBF8EC7769F32A1F3F7FC1C072BADEC97794D4E90E0035282A170402
-356E5A9CD9ABD80AC4342A5283E458A7269252F4541CBB6452B39ED54D336D0B
-19928E9CD1AB26AD83EB209E2EC75011A2643813053B5DBB0246097C4821B5F2
-C92554E9140BE35B2DBFCD98809A8EC9FC910FDE9E0D86457C70ACB056EBF90F
-244DC0A5BBD455E15D6E3180311D52CF50B0BF7D0A7F64F3A1821E0AEDBC2E7B
-AEB549FE1D51088C153799C6E089B5D5D65E1C4E2D2B430CDF1FFA23CCB25D95
-5C4DD885310A706B320AB25C8D742C6F29953254FA54DAAEE60ED477877D19BC
-D28E9AB576B0EA088171FD000B60D73B3C57F754BC07EBC9BF751B7D2B32459D
-993861B7C4B0D98C422A11BECEF76F4EFC0ECAEE89723E6CED53E3678D733363
-2DF068AEF0FE7DFB57393BDAA439A6A4C396F86032A98009EAE1247B7DE83B3B
-E46DF2898598FF5E6CA6953127432A967E4FD41CDD60D6E413059A58FA556EF3
-309178B57C16A763CFC9BEEC276944BDEA255789EF4E1ECDE1EA43EEDB955513
-F42EDDCF39AE522A1DC2D80B2772B05DA60F3DC15A815A6BAFEDC399C7956E75
-3851CB3588E22936FBFB63A58300298B11C45D82385C083D07AF133BB1BC941A
-FDD9F34D5E0B8087EF2A58C54D8AB7580EE3ED58AEB83B72CB9028F472ADBF11
-05A77651F118824F6CD00209EFB60C1D32D46A78E8C8DCB8B0E742828E3B7D17
-DF5200D68189C91FB8489CDEE8BC223C4281DDCA5F7DA80BD5C2D66A14695EA1
-5F05E03500579ADD440ED2C57F535807560C6FE3873143D792734FEAB93AE8DD
-633BA6FC5683083402BF086D23594AAC84A4868AFAA32AFBDF86142B350F8F62
-E2531321E4CCF34293024EF8AB617BAB11A3A5EDA03CAC5AC431C893607DF8E5
-C3DC8646027A7554625A16FD184A70DB5FE6DCEA366B64430A147144CC9839F5
-72829FFA42BC3A8406D680E44A0305C9C9E265E91AE82EDF30F73730DCD4AA20
-8B63D3B568DBA690DFC2103EE47296E0EE2AD4627B84BF062FF54A76E4C48137
-E491AFA711FA8087A3F3FAD6C3BC571655D66A52BFFC2AB09CB9035AA67A50B2
-E938298E2DA5C50C50948BBFB6DAE4613B0C70E5E2E0E7C72621E61E51107C33
-463BC505D3FE9FE04CE5A67B252B8BBA81759F6EADADF1DADEB0B15872130D09
-D48E8AA0633DAF01025F36A0C224A65540E062922F9FAE9DD77BA007CF237ECB
-1DBEB5BC617C7B84599EC193456F2959D222DCECE46B26699F71AB1B2640D8D2
-3EC0C04CE0CCD5B6940E36472275ECE2E42ACA7B3E886F9846A6894D1E16A448
-6DE9DCA4F5CAC1DD63172DD7603A082CF812D1427FFB51E155AFDEAF583BE97F
-5CE8E4E9FEA15618846B1FAE475C62689784326A95DB1383BEFDFAED6BB9194E
-9BBB86476F78F0243B4515002D76AFC202225F62B1F04FF4B69D4B63C16B3063
-711F889BF159978BB6F83E2C090D44195AA4791554F092D82D50D4A3A3B7153D
-7078A482E02D272728CBF0A96B85948C31B71028F03B77CB61EF7AECBA66676A
-D050B06C53BA2401E3B0AFED364E0864A5B65CF9093F78A84A0DD628730D6F4A
-B65C861E42E9466E7D1E477BE5D7035CF30F9675585B52C01924AC437DCE2943
-8B545C90ECFE190144AA8A7A76FA522D98EC1B581C9F5253F704EBE33FF1D1A6
-86CD1F9B706ECA6A1BBF01F0C56FA59C014512C31432A9ABF09AD6C49363AA5D
-8E08AA4D0AB995DCD4CCC0400B71055505EBE7D21D2061504E990600C3C04937
-424C2527DADEF40A0C058E76B08BC7B8CDC5BAA13E4E7AC6D3B59F25439BCABC
-1A940BB9D4BDCA9DECBF4EC7F4FF3655C89E05A7706613C9BDD0179F8C686333
-C9A876055B3ADB816692BAD1AF575011E30287CC9B65902F2BCB1BB45CD441C2
-1968E8DE4FEA5837AA93CD73FAF6F50B87DD2EEE0C1487149C562864A528EDA5
-A3612AE68D8ACC67C5207735F4AFD19462CB84EEEFBE81DFC66CE8E89311DE83
-6546CFBC19D4A18F4A3725838DE19D7F4DE87F9F1866DC65E155A82FD5555D79
-F799EDF508A4F7BBD16D7C09C035DB51858CFC00DE7CEFA7A8C6ED6C47EC33C1
-0E613E1FAB5B5686B439F467DBE384AEDF8836B2CEFC1B917AE95AEE4329BC16
-EEFE7CFE5B43323E90AC167B1DAC570C3FA61A334427495A5B53C6DE597AC069
-1E56B9CC27C7789AD915F2A33A70F2D194859EFE129A9A6994559A898DC9267A
-A1966BB9438FBB2EDD33995A4749416205A3E2F71A30114B161AA043FFCFD30A
-1094C56555DA272AAD08228C0AB1FC39BB11D103894FA0A899E0AED597A595A2
-EA8D70AA76BEB04C244BDF4CF94226EED1B01DFBE1F0C3E3AC90DB4AA8BFF2E1
-C718A17B6B69F423E7E44F8D42EB67C0A6369CC1CFA9E9D7F50F09402431B2DC
-B5CA0FEF2E24242C5027836C6399D28F384F1236DFD33EC8634997BB78B25DFA
-CE75E060D19009A6AF994F883A0908B4AD79FA8D69D1930D9CE40B53D1396553
-9D9A7FA0CF827957BC1244A816576C8B2DAB8BA123A164E717E9BCEA023CAA5F
-265D9D24E4EAF58F0B580A351B8AB2BC43E338AF241AFD001A19A984CFC62A59
-8B2013E8824A6827A7FEE516A09485F301AF11D925D18F59A2E907B17646C8AE
-586E9168900605CA101CD78C24D3559508F80E844D31BA7E197DEA3A38A82766
-A45E8C41B60DED52B1DF8691737FD7D57C807968D6937B90275F082C692E1C0D
-2C767E0C77B192774D37B2BD4E80E214A8E28EDA8926A120C12A4E7901DBFBC0
-B5A72A1CCECF325FFB569231EC8AD0528086D6E94397F8F3ACA26BB976FFBB1C
-F49B8B6BF7B3A9E953E9D089FBF8E0B82D156A6C11BA6520F91B8B9ECE690FF6
-324176A8016379348959A20C78F07D82DDF803D38C73BB3E0C0DC1028ACBD6CC
-8DF50D96AE276FD243FDC8C8FAE66E146160C966F3F67177436F9F861940AA6D
-B5348AEEC6B0E923DCDC589E392C72D0936D958884858E397B8BA8B553333BAC
-6022064E4F1D42C3CC143061D377FDD0542BBB5F3CD1A089CE64B60B4B436A14
-6A429D05FAD474C84CD8672364D35543C605EE5FDDCABE2C06B4AE7D4F8490BA
-E2CC28E290E5323E4676391739E2EA134105BBC58B3A74D940575BB9A919DD7A
-C38E05A366F23A0143F4C192316CB7408F5E64028F28840A27FC4DEC8448D593
-9D5468134DAECF543F5697EF5989FFEB34807A1D79DBF2A354A0714B27B97DEB
-0D8EEAED69E1F90211E1BB6A6795537BEA950601168458AFE5940E78A5FFAD60
-ED2E04D99E7FC6BC0E5747B56E80805FE24D81A604E867CFA1F9814E048D2DFC
-34D04E8884EBDCA85AAC94DA6ECE609228892682EB8C569C974CC0E7362234DE
-0B81F683B81ED714DC0F586D903EFD97805FBEB92170C0C25A6A13F76DD60921
-2F1CFD57CC219FE6B91DC1C99C0FF4951027EDE31DC5535DF6612BCD4963F9D8
-E6D01817CBA5A350CA666B64B6A6B45E4AA33694142CC1E150C0CCEDE5168DBA
-50938787F91B44CFC3DB90121B49032F0D73F631F16A82D4E19245CB94BF688A
-213A56D62D546ABC818C730AD4F40E4C622276BB12C090C9ED9C1B8A9FFF2DBB
-AC82A80CA2406A842AC497F5EC0B227194714BC6D47312177616C638CAB94C31
-42ABC4FAD725A3DB1B83A590B4E05A984EF6492C68BD2E13FAEE77DEAA2CA56D
-B8F6CF2800B15BE370179ACA404C87E7D9A6C7F70ABECDA8AE07DD3AA14808F8
-219CC49DCC2828AC72966710D1506B400640CF80090F5BB400EEEC11851E630E
-23F01BBBBD9D2B84246FC644567C45C2324998679A7EB28ADBD2C4FC20CD3F5B
-E712E38F87EBC6621769C99ED42789505EB5135A47DE4F6D15B536586D7F2382
-9514C2528E4E9BC0CC8BA6828AB7ECF3D87A0CF5B7A26F52AA89B5A1B5980AB4
-399F408B0A1AC21AD1C6A40F1B489BC8051B8D3C537C765AFC909D5C62A2F5D7
-C30C349576D36B1FD4EBBEC9F3FA3466FE03C885FDFBB308929CDEF89BF35E00
-DE9A5EE59B1730528FC4A653397FFBB2833073CC792AAFDF9421E5DBE494BDEF
-70243094C61678C79CAFD7DA8363FBAB45202455F72241CD4037225FBDAE983C
-22F1CE3831BECA0F99B1BE8C239563B2BDA6B32246B213DDB45F2CA748E43769
-A49AC5042B18CB894E9A108A1062B0D8E72AB0A81B866AEF65B1B993DFB12ACB
-68265B8408568516415E4C1900204B0617110C98E9EABC34712BC3306B595761
-79F96C39D826C959536B2F2F9320EC9FAAF97427E07EEFC64523CAED57C2D6D7
-DA9AC41E4F589F223C214E80140D2F65E062685D333B44C39365C1721DF60B77
-990E6B0E3EA4AB7354905C402416BC67356D485798C00DDEE17A812091590520
-FC2845FE24345017180408BB143B6B6054B947961A307A3CDD9CCD858ADFF2F3
-D3430EDB2254DCA877BA18A46D48FA1979B434DBF737ABE3AA240DFF74A2994D
-B8D53B6A2A85B81E815B22BC7A61190D8A56DCDA40DABA6F0EB7C1A5549A5516
-FE816ADBEC811EA881A820BA1816E2D42C45AD4FE575551D3EB4976D5E975479
-D0A32D47D874E94A4A5AEE8BBCAD973053749AA70D03105828DF417813E61169
-BB5F6ABA5CFE500AA78582E4BE8074FEFB29EB32A8BEF9FB6FE4CBA2A6D72BE5
-05F8B488FABC424FB00EA88C43712BAEE1AC2FE75D93C2E759963962AAF81A4F
-F802636AA0B493B93C2D6D39F070CB0B36776950CB2E60C437F7E32809C25F66
-CC7424AB194B88C30EADFC68E83F856A0293DB2C4749A0098EF5CF33D07DB18D
-13EEA54031B24D2D5D131183F8DEA7C98417C985EF148F64A48D95DC8C1D7F8F
-F0536B1B0C00A8C3BFC67E558DB07A2A9C8BF6F462E3531B6E7E3BBCEE830E9A
-12A7F85D1E7EABC09221C4BF383AC8ED6BF538640B25426E59CF9060A6D40B71
-BE73C09C847786462AB9B2A5AE60F99E628DC5E83CB4F44786457C85DCC76D6C
-816EBDD86013E6EEC0B9305390AC028E99E98C7DD7AFD17548F5EBB7FEC28E31
-9B2EED71BCA9E5A24380E0C4DB993A1B9E93A2DE919EE00257A682CD0F48F38E
-686B0AC7F2CE64789AC368DDEF067C79A1F0CB3CFCA3BD7D7CB7A9582C6ED4FA
-F3A5EFF59E995E04B6543F3A25CD2FDCD39D2C87E980C175740EF0D6805C154E
-B422B9826CF396C64DA951DD3A1449CAE447BDAC920846E0CDB4DC4256B4C832
-87E907C43E933C70D04F84EECE984B7701732592BC81E7AD669E30A32F65DF87
-94AC9AC35C56F3FD5E25F67DBA459F76D2711B621D85EF0034C5F2D16F27AF13
-2CABFFDADFB87AC4FB1BABD2658CAFFBBEB290D9F62619120D0A4FE45B9EEC26
-FC2E285AED3F5FADB85F2B0D64DD278A86FD01FB80E251DFAB40A371F183FB2D
-A72C7FA2176128F7A85F01343A3A5BACC7CF7ECF9C5FE98D058201B31E7F3FDB
-F9CFCE3A66FA77382A43240FD80E97A933C5FE116C911D14BCCD8947B0C50C34
-799EB0A2391A8B49E29FA94EE7F4563D38C3B9A700FB608DF98D2ECF6841221C
-6AC099E8318392F1F28AB7E6E97CDA9196A87B509E67BA93C74DBC84D8B72B78
-D6F5C3CA30CFE25150DA227F9DD260A57FCE041BC8DDE287FD0DBD65EC465B00
-80E564FE2967F1FCB1E072ACA9C168AA746F4F54B4A9F83381DD11EF6F8DAE6D
-14077695AA1113EDBDC6B8DF4BEC621FF81A2D505CD5B7D30F90CEF1A477FF01
-BE15B018484169432E922D935E4863C66E8769651A899D5E1A1BA511CF49D211
-446546B71DDA8C2F944E66F76202EB4DC8F6CA54103DBB01CAC20CB08DC77A4D
-3973E29C2DE8C858865FBBEAE5D71E81E0CCEF5FD4FFD706D7428EC33D5AF789
-C13C5AE91FD36FB215D4D9A51C96739B0DA033D83BFB812411CE25D49C19819E
-533F4EB14FCAC3F746F7FFC7270E4E947AD2C5FB4447B9BA284D788C9AACCF69
-B35CD1EF290B662DD72118B0C475C2DFF997FD62E279BC0C44AE5D2F7290E4AA
-E6443141D9CB366CD71374BD411C4E72B09165021AADE20E747E2CC89D8BEA12
-59EDF9CF61FC957C9DB0F1B4B3CA73B2DACF4DA0BF1E08912EB4C23C66C21447
-E22B8B8F93B89D853F6CB728111E6788BF95F969A654C9FE69F0CE3DCF436CFD
-8B3B68353ED1DCD6C26DE48817E4B0F46741D0DA7695802A16442F1052C99131
-F8D7D2FC2965B90B9D9675E6F66BF502B4BA495A5899A46760B8E8E2426396FD
-2BBABEA05AFFE78DAE98972BB61E07385A8566AAB160BA5E4030F1BC6DDFACAC
-850354E3F98294698DA8553D2D4F40DEAFC25DDEE47C5047776AAE8AE49A0E3F
-B52F4EC8D68F195AFF4C13FCED0FF91B06F6C9160F6A0BD1518CF4A2F6353357
-846DE266C22B4FCB2550C4E1CC9BF7FBD5ACCF31CF037EC4AFC8D2560D0F5FF7
-3B3F3D1E0399F7ED51C7D194EA17E298C33CFA73133A64C29F834E8684017D26
-4E9FEDE39001667895474D7649C39DAA83BA7EB97A3A5F66E7F07C9C389579E6
-E07C7B8517CFC535DB0D12B6F57A7C292582309C09E89CF4111734BAA78CAB3B
-DD6B34C23235968C14851E3760940A38F367A42D48D453
+D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7
+5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99
+8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716
+EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C
+02CE8D8B07183838330C0284BD419CBDAE42B141D3D4BE492473F240CEED931D
+46E9F999C5CB3235E2C6DAAA2C0169E1991BEAEA0D704BF49CEA3E98E8C2361A
+4B60D020D325E4C2450F3BCF59223103D20DB6943DE1B57C5FD29DA32D34C95E
+2AB2ADB3F60EEB0600C8ADE15A2380DE10AC5AAD585FBD13097B1A7E8E210D4A
+EE96785449E07F0C8EBC2EC5EFBFD0897DFDC15E5BFAC9584D8DE95C5AB288CD
+8AD8B9BEF0B8E5F887B3B0B331542FC8184DCCB753DB6ACEEF98B85756B988DF
+CAF1AE0DBE7D37D5F44A2E760AAE3A5197C27B15E32275A64946C3E4D0476FD2
+7FDE148C788DD2106F7C825E270588AC05B57E625AB17BDD02306F9E5FC851DC
+32A5A6EDC43C770A71419B2C0C8074EF3F222C8A2097CD81A91F333A521B3A09
+482A4FE1CB231CE344AD126AA284C3280AAC3AD162CF0EE241BFB4C8F20502FF
+118507F5D1B5FD898571015E73E5CF2281085072E00D401F6F59761EEC3E8381
+1F26F75DB66C504AB6BABA87D121B1E7040A07AA2FE01F80DBC246CC03C4B2DC
+C2A715980C52B7F96BC1A78FCC7F4F52EEED5F705E08FC1E5BBFCAD121FA88AA
+8EBE58172C162AF409DBB0728F14923ED02A65EA24E5D52B6AD07777455A70A4
+61833D3789C719BA92E901232599767E423D5AD9C807670BE0E7B5CFF8256A20
+C7BF7214FFE0342809570F5966A2C43E784F35015D9040BA34FEAB6A6F089504
+3A40A9E9D711A2721D3F4998371430FB3C94BFC619559B97D49627BB630F4B70
+9D0A8FE4E916235335C3962F3CFDB04C4A3CF714DB5E260F4E66FFF2F27CEF2A
+D4AA26BBCAED23B8BDC98F8F453BA27AD7758537561E766B82DC3032E92A9EB0
+125D98A22C5466AF069BF72A9BFA052A8628FEC6A6AD0B711DFFEDE3AA2D7CE8
+34EA487038EF50F953B8B4471CBA6FC3C53877EC1BC94582B1123EDF44B4056A
+30F49394BDE22CDAD7F01951C7013D26979277D18EFA594E8F4F2B5E615187D9
+39E842EC28461B9ABA52020A127D2CB9002A673A435B13C10602EEFDBBA6BD49
+9DDEAB9E68D655443A5C2492BA061C1391A51592BA8C353A6F6A0708E8860184
+2B5D031D2CAB87D618E9F6F7A0BF3F66B3FD5A25BB91F7F1F5F99CFF56EFF4FF
+0A35C55658001ED2E97B26C869292F6274D433A5443179DBB8EE987196306348
+3F9E87C6422AFFDD30080C9AC4EE7FE5E2DCBFEE4974331F4AAE479FD8806D4D
+9C2B85FC69EB0453AD827A1E767E5C484BDFBF5C8D6E2B3C96298B390F22D757
+802643A79D5E29CF3AEDF0E12CFBECA4663444FC87F2027571DBA9ECF688BF28
+FF0DDB3AEDBA0FB28447CB4B5D5205F40C1E7A525FD7373392EEFFD910AC82D0
+98E71660A1B3227C4A2592F3E853CA4CDF64DF19A52582E167234F4036FAAAB9
+5446BE102DE2BF43E82F0112C2A20F15A3F92C6571AC761665A905362C4F8BDF
+AC8705519C99862CD9C0D75113C4AB5FBB83C880E46B82715B5628890D9103AD
+A2329638B95D93C4DECDC5E6C588C9D5183EE6FC28FAF9825F02DCA567306D93
+5440987A81B51EE7291107A08F201C609FEF91A8F0587E8B13D4BAF74A5A6815
+DE9E4441F46AF8E1DDDFA2D611C889614040B144A5EC064DEE4638C04EAB2E37
+4CA8F50FB8C4D65BB296DCCCD39F1F554CFBED96670A91F515CA10EF896874BC
+8EF48C6447752C70FF5A06F928DB55586354076773BFF7E94C4C3A7A1C1F421B
+A9B4E3936EC26E0C19BBBFC90F021E877F54B62108F6DD1C7F6D5B8E64FC9362
+E173F01BF2904B7E5A08B3543611562C2714099DE7D4FA330DB148B560A9601F
+42A84452811CE213DCE782A0D7809CFD954D6BC1EBF2BA4D1B18F50FA8174C96
+3E0120E266AD5DDB40B3F6798AC28CDC5C3C4BC34583528F5B5DC8A222B80B59
+A3A93DC715D061EC6915E6E6E21A25425C25E8747C60F170D61047108826F96F
+7830E220C108B441B6EA3198E33C49BAD8D43086E49F5A2BC7958A1A8CD011C4
+49045193394696EC3DDD0BE084E8F2E9F0B9496F035C0DEC1CE11409DF566428
+D50043CFF5CDD1092F6E0807E660B68163BCA738E8D98FC6EE3F713164CD204C
+0BA84FFF4F33F47BC31750B448603D7ADB9AE92FA91AEBBBEC0DCD66980E6955
+CEB425ED07115B24E40F53B29B9D840842EAC691B4F591F866DF27556474B485
+1C6F53DD72499847109B16C7093984A6B8487D4F3870DD517945CD90E648C1BB
+8A6861E540FCF9D75B984B5009B5CC760CBE297042C240DD624111670B703388
+6FE6FC0E89C6B4C88F51DFF3913D0CC1FB4770C8CBEADD4B86393605C0B6C468
+83CA5594754411B6FC331EF56D7CD6D247FAE42E966583C29239A8F862348D29
+60B177984B6B957E733DB4D275015691D91443BBB13C2DA96097A29733CDB284
+42F89C85A7A743338C9DD3BBC4EE53F695E5163E6E1ABE5791ABF100B198B9B2
+1C21E2FA2FB4AFE7F9BB2D381260CDD3A2CC05BF513AA1E80ED69FA27BC5ED5A
+21445BF00BC2F997B356D94AF13736C6D3B0613EB6F4CD96A685FEB672661DCA
+206105EDC3CA07900676EB2FAB37F48D2E8207BDE1463894DA3C5B1488AC1EE9
+D39DAF691648048F5D7A384B8927F8DA2BE3602669F71D80686E427F395134E7
+7ADCC611BA91AD4B7A0237213C60CF2C905359C90795230344FC3C50A22BD44B
+55B2044792509F50F5C21F53D9F9E9F063ADBED3AB99E2613B23334FE8DF70B4
+6120F2EDF69F50BE793EE145B9FF9C73179DE640FC2ACEB5C6617F918CEEB762
+4CD81E665B2E544864D13230B058717B207D3CC5D6647D5343DB4D0356082392
+871EFFA896631A7E0D6477942B632074A9A4EF7B09D4701B1639BAAB4E03A40E
+9B54A7A4F845CD63F88831EBFA4FB847847CB98F3455CB5957F2E0A0F5623645
+DBB5C5564C7F8B117D6E27E65C0F3EA81AE67B4AE4B201E7C4FB0A8364FE53F5
+41A7CE8F834C2C4B322809B353A5E63BBA7BF3B7DC1A85EA700BD287C2BD3FC8
+2832B0BB4695FC937FF5EF06FCD87DCE6DE793C2B1EE10E6450352C17726155F
+220D550B1759E15AB2C1D5968E52C8080CD280E99D3CCC0E80C2EF8BBFD96001
+A226FEED7311EFB4B67F424B557A877379A15BCA54780F0CD2CCA00400B9B39D
+981C6B552AFD2506D1B23618FA9AE6D8143CD7198A8482CB416CCE62B992347F
+337D505A4078713BBD91E5535BD58EF0351EBDCD749CC24D4AD39F8CECD7D6C8
+139756680A4C03A58B3374CEC658D30160AE4863A3938A891BB59CBE02BB451B
+1BA4B2B6E68AB61DEB85F95E3C909B8B66E220B9F18280161C279F10F7093CDC
+100A53D542F071CC0A5AF834DC1D18738F5DD62A5573E884E1FFD22BD810828A
+1EA47F8218C15A2E97CBC609927DA3CC2B802EA4A0D7EB57627C135E3B065905
+F97597D818A2C5CC6F328AD25AD11FA50F1E4FE637980B7474D6F85A521892FB
+72989AABEBE02A2D0EFE88A6F67AC29F5D8DDFEDAAF465C439983C6B84389FF7
+A6434462BEB7B07DBE4BBA61ACD4A60C55B5C0AAE527DE381DFECA2E6BAFDC8D
+310364ECB42CAFF72BA93C067B2F02D1CA7C34AE7CDC46787A0E234C8BE8A928
+7A6F3DDE0338FAD532A9886E8E3525B85DD39364AB03EC4C0DD25DC179CC1989
+1BE232E387E857C78332D834679195E10F1E7B87B7966DA3B2238F53D1E13FE2
+8F55ED6A92A750C7250C9B91E29796621E7E9520373214D7DA81B2875A986D33
+80382AFF6DE1F829F048E57664D9C4ACE91E4684A51023943A4964AB5657D610
+3A5405EFD4CFD1EBA684243E15093C9667797BB47617B66054EE02C41FFEC45C
+C1BAE8AD56B00D323FCB1D2744F061FA16E161988741A319B1564E04BA210996
+4F9F02A3268CABE450D166A763F5284954564A1C86B76544C5F5ACDFE0D758DB
+865A1CFCF9FE8CD5F9C3B2998C56468FD52DF8EE60C6935A3D221EAEC7714E3B
+301371C7DDA0B03A2416238F2B47BAD3A2C5021C886DF51C695AF9C87A864B48
+3BB3FE0B355EED5454B59B25A0D8A1B8CBD356C24F64D9B55E16C30C011365C9
+1E0380753BA3EDC0868788D5F50B9353D0227BCEE1BE36998B2622C0759BD66B
+E4444250589F9CEDE766D8B940770CB6B89503E925B35C00CBEC2873D2DC4A29
+0823FB7A3717B69A7DEDBAAECC067949932728E89BEECAA91DE3AF9BF070B9C0
+30EEFA8C0A55C8388CAA2F0515915C98E67FA095BB98967D14B0DCAFA9622E4E
+2E0EBFC768D80585ACDF28D8A5C2B6EE2FE7AAF62FFB90F569F84A0903996DF0
+C1D5723366C436E4088F3E2BB9B47F9789052A71CF5C49908CDC1DDA194BFB89
+14D7E3D7D4D72A150FD6FFD8303E9DE5A97A71B808B8BDF2AE466F31BF5D7A4A
+44F81230BBE2B456A221E2F72A8B59F8FEA8D31F8A005A5BD93B9F49CFDC3DCC
+CE2B67090460F632271C7157BDC2F05BC2749FD562FC28682A616A52D1B67654
+DF78B7843A9EC26A7DE2EB168F874904C2915B97534B2D4D9F74A9573A771D34
+9F7BC855E8F794621BF6AD471BCC347E2DF5F620F5C209E33A4CBF1EA85AEA87
+4492A77342DD33EF615FF34037D660B713C908786D9022051B825226545827A3
+2AD1B05D654DB6E6D261B4E8AF0933AD1F0FCFC7201E1A7C1B4199F160C38676
+21ABA2DDF1CEB655B3EC3226E0B122976EEA998F7A5241F062E54AD1DFD6ED26
+47C99A439E0AE95415059179867CDD3F0FF751F3141309F40E00A6C7C28433E4
+F649BCD5DAA64177580E05C495EE7BCBCC5FBF104DAF360CC2711386655B26F9
+D349D887EEB32ADE595241560FD5924A1745A22E6A01DB9C285EF14596EBFF0F
+03F36EB2E0A7C3864F819EF7B0855121292D49482F046A55CD7271FE03F02EA5
+886864D9D8EC22A68C23089EAEFFF03DED6484D8C341861EF8B6FD3C5BDF5AC8
+352DA4E13A1E30D0CB71E090E9CFB9AB2CAFD0CA7C34AE7D8E3B2EB4666834BD
+9CCD1AC2108348AFEF6071796F4BB2FFA4A67ED917E76A109FA2DC2A30D744A0
+9AE653A748C1D18FB52595D84E87F1C1FB6B2F32667FE203262C66627AEFFED3
+92B23861E5EB238BB4EDCE09DAE1C65BAFC198CDD1B45D42CDF93E16BB82D35F
+821E9E49067E966AFAB2AB52928F8DD6359984071FC37AA652FB834A09E5BD93
+3AFAE161140E74C6531E413E8FBBFC42BFE8A464B71EB1D8CAA93B33D7BCC3B0
+47C7EEFCD3E9FCF26FF9441DD9BDE68D77AD7251C06BBB9A2103049E8827CAF0
+F26BEF33F656A690235DEEC623CC519AFA82DE2AE16FB99F780FD7D8290DA40B
+9B604AEF36B529FD184239E7D50561A07428D28E51B55546590A1AEAD4B7F2B1
+AB8C5B9022C1FA03E33F8F409B24911AB8BFCF6EF4A8E415263C789F89063E71
+C0910DC20347469380B7FC1EEB87D4CED7F4A361E58B61C91AFCABA35C03F978
+B9FB5257C31657EE48504C355CE893FE3C553274C641DBC4004F5D5B879CC5ED
+D3F21F867F6DF054127067DE86189F0B59A1B90FDABCDFEE61423609D888EEFD
+F4A1367129962110C651D9481CEDDB8C5C2576A59AED64E95F7ED042AEAE2F7E
+81AC0C408E593DC30DCAC334EDE9EE27D932B98F040DDCD195D6155607DD2038
+970EB78221A94C52BD4F0EAC65F1FC10E5DAA93C17266F351669CAE56F42B68C
+6D01E1EA03AE554D63CE76D800FDD9CFD89F80A241EAEFF7EDFA41794EA25CE7
+97BD5028464D2CD45B53834B4AEF8BF0B9E7C6ECDEACEC887E8790A47A93F668
+A9095E5FA1116A122C0E5B74E2226C654D3187C6CFD8807917820423DA3EC1DE
+AA020EEEF2280C44A15209EE2F3FC1776875308CEAD38571E7BF889F287E4594
+971A83605E0B4169D4A23EE790515223DF8724054EDAD905F57918FC0BC64F96
+514B4BF7DC9BA79E763C22C977FB6146B10D26FEA1BAA7BAF21312F78D1625A7
+8E242D743471DB5821408AB786E4A7EA9D35E30E85533C617689F95758FB2C7C
+392E759C299DCCE36689686DE0C4DCE32649493650BA194A6208C5EAB670B170
+3F2C70BF0EF0E3BE2FB0A79224FF4ECECD6BB3388C6D06867A0E5E3DB93C1B2F
+464C23E44D3132E7D4086E3B59B1D13F49EB4772DEDF8EDC4F603217233FB7BE
+C13C28648E9AA51D53F11FB896839F97AEDD8834BCA53CB0021AE91FD8E95E2E
+F8A094093AF556B9639F508A401542B06821FF9DE1A745FE9AC5CACD5E8E1053
+911442FC15CA5333751ABFE2C617D38FA1DC332BFEF44AE569DC631C93EC54D6
+261583A695F5A392867A57F59B741EFCD2DCFECBC55D1EA5F2317601C9DFE9ED
+D1EA466210FFA905A8F85BD58B98991BEA58DFD1CDED5C9B086D42CCE632DADA
+147941917B879139E016B0DDEB8446BA017FC8EE5A354533D667B0835F5D027D
+C2D580C16B80B3D05CC92C0465CAE077729F0A15B2DAFC89DCD349B3F81D0516
+C65526EB5C10E45A8A85D716EE35FB9AB201FD7C89ADE5AD925A174169DA20FB
+61E96C73A143DF964C20589EF24A0FCFE6195317F2FA0D2249C0D8E649C3D9AD
+FF13332EA2E4C9CD36D8443EC8F027B61CEF92C6A6B72DD4ACBACC16E429A9A3
+F5F29C1631360E32F8C1C93ACB22F810B86D2969A7480F486F62F8488BEEC74C
+2C1AF13BB92BC578E8CD30BEA6BC8CB68ED730F54CED0167605FA76AD7B7E88C
+7AE7688E598F91C471BD65A542E96D64B1EAF19FB4F1234308C48C2DC86E2193
+11ABDB4C6189C6F201627C693691A86DD07FF55C30FDB3F72381E09C6080FD7C
+9182762E5001E30F52A216E0B71E4D2D4E2F3B20F95DF3A11FDB2D2B5B5FAA66
+C46226D5E0C77066349770514E5675550FAC9394FB27CD2C2F974F1FD58C04A3
+1EF53A8AB3B2202CCA1CEFA66228E1480A0709436C44BD3319C40CF888AE4692
+5DBBB52B15CF3A518F627F672135A24D5DB9B2EBEF04C860AECF231EBB5A3BF5
+6DCCD5E72FE4B6DD29E896691868A7DE4120AD06AC573F5608B8449B38E71CA0
+EB5CDA3F942482EA7973661170F81DC88D54DD5B92323F46F833DFA757107E9E
+F62A47CC50FAA1B68ED535C3E0E1073532A05ED339C8D70B3B9864808ABACD23
+AA95E9FDA43D54C66A675FA074E0A5B8777D3C07850A09087F36852B5351F35D
+8BC4DDFCA35CF29CD5E3DE118A741FAC4DED36847F2E2C6CFE08669301722D94
+376F540982958074E7F1383C409652F6C99DA39FE90B38221E75BC1ECB93ABF6
+B00F410A0C5651DB418566AB350FDA1789AFD88286AF3BCB42B98386F7BC144B
+02DEB8940D20A6B3062F0C4244EABC50923390064F1D027A8BACC3DE45156E56
+4A942D1B87F1C4A76B0D4D6801AE792CCAE3009BF25368B31B6AD5476FBD3BFF
+9759EF463EF5E78E10B7BF64005B2ABE0E8813950A08A1808587A98E0021D0DD
+751AD515E8278F1A0759E85D8A084490BBB0F8206484AA36388B1013643D3198
+3509078847BDAE08E76FA5BF3E3A73C323CE093DCC148E3C02C2DE1E26C94D5A
+40EC8308ECB02FF7DD04EC1005A2A0DC74D4E587F10A3EF349E828F69FD38962
+2F0C74D5DAB3ED6CC9F97008ACCE74C086A503948DEF1AAF58FC8BEC703CD360
+D32098A56AC776B1BD08442052A2A4EF6C8798F7CDC102AF1A2009657254762A
+0793F79A39DCD6ADBAA5EC84A7ED6018BBE727E5D477893D84F157074B24C13E
+8D4881C7DF8ADC13EBA0D89745EF93B7616EC5355600BB0D2B630AABA3CF2946
+AFFD0B2B724EF0F28393F2034B2E69DA5061426805353EB4D80E20739BC4C510
+6C45275B8261DCBA10DE1D104B12F46ACD230977EE7D7D1D35D2814139E38C4B
+CA6937CCFA653349B1EF64A98457F7B4B5D8F2978F16ECCEF7054905863AA46E
+DD524CB33459220C71E9EFA7845A3A760A507B3D3ABC525B35930B613710A13D
+098832C58EBBC8B0CA6AD516E6385792C59220331D0922A1F6F838A8DE13C337
+900462F952EABBDC2EB1FBF94A66186C177501453CD3FE3582073DD86F04406B
+41B6AEB440DA475E13240445D46726A6D45185D56BAB8807CEC8A8F7CE1AD149
+7CE2E1BB5DE4E5B9592241DD136479A65905FD0062C91DFF7349874BFEA5D9EA
+2F610ADB9AE7757B2307A1BB9D6797D9F9C4844A59841C7C7682105E23A374BC
+A91885E7410F56F60C29AB8B417E2D6092F8BB70A2DD5DEDD4BA1077D7CC62FD
+EA43428C6F79C332342E15F75B08A1ED360B3511F823E75AD49BA7AE63B19238
+2AFE8FAC2715E2FDC895E95036D23127557837506A3B542B0E4651CE2B89C252
+31EE8ADC26E2C04E8E30A9CA12F066CE01953BE7867171FF6C7E834742C36C3B
+58E74E4B482CB85FD4D24DB03D753F260A585D552CDC9E1941446F2F5B45FF24
+2DA4932B973139F328E7E92828B900BFD398B6F41DAA0D6861C66AA7F5E3299C
+87A5925CE0E0F9E09AAE0792954A1F2C0AAA8288DEEFFE579E38A3CE8A943EB4
+55322A87C1634074EBEC25F724DC1BCC1BC10458CA6C4395659B0DB6B612C151
+557CC669D8DC37769E59A5AC6BF061C79FEE265DBB59520EB8FFEA273601D1E8
+2984B8AE31AE343F37D03E2BF97DC48AFE50BB6138C7B9F9B5E28672A37BD8F5
+8F8C98DC43DB22C6537028798198E2D3B0453ED72487267D653DD50F1BBBDA92
+833A987A95FC1F275B90B581B4BB62B6863A4CFAE37F715EDF3EA5A33679FEB6
+4847ABB4B3D170C275B9F1AC3156D731198DACE0B051674E85B758500AC9FBEE
+ECC75EBBD85F8D62AAA328FB09C6526F853077AEF7EFBFC2B6A29D6D508B1E19
+EAFA4C67EEE44045B9F15B9762B3DDF5CE5C18B23A5C2F73A1F6DF7F8679AB78
+843AA41FD2A7DC02B45B729EB76C66A89F5F76E5C4A0C0563B1EC5E75D72EE35
+A7F1FC89216B60D82F6F2B8DBE85E4FF4D63712C689E696F60B52AB622C2A4F9
+37C380775EDB72638D3F81F61D8D74C76D813DDFFF35ABD9A502F2BC7FF65754
+2A8660A5A53E0CDC2E8A95B6E33CA153EB711DC796D313C8183D707D3F0E3EE8
+BA65E0FCE3F1C07F3D93F77056688B5496AE35A6BA0B59619DE78640A8C3F7D9
+7DC5E94894E1E63A7D80600B945B1CCA50F1B85F57673C6CE09EFC4E229D4635
+48AB466118D273BAF7C1B52A067A88C00EBFA7FCB378F1575BC0145F294E6F7F
+8007602C6560476FA20BDB91831B22404DB1C4C167594B1216C25226D262FEC6
+F5D0DBAC4B8D743C669CFF2068CB9BCD2DAE8CD6EE1B33BBF7514C4941AFCDD6
+89B75F67339B25AB6E267BCCC5E2118879AACCECB5CC2865802BDB4D7581F5A0
+E81AB0F7AA143FDBE743E16D028E46BDA94AC2CBA77DBEFBFA32E462EBCDBDC5
+B86B63333A0C05C65D4B351948D03668F7A86A8A1388C4604675EA7384F3398E
+49404AFCE19832C975A668FBDC29D06268085022982F01A2DA1DA8B8DD5F4584
+75F98D7606BD6A45A403CC026A4BD1AFA63E1BC1034C1F617E14A1EE9543BF7E
+1ADB8019F7AFE089150EBFC613C414955363C43E0D82ACBB01251C070E7F1040
+602A58B2BF55094DF2BCD2689320899F987472681D0933A4BE78C2ED69D76E60
+2C437D4D3EA9C8D25588F1689224D92CDC65AC636325718AF7EA47946CFF07C2
+DC0FF0BE3642ABB0CC38BEB60E00B41D45DCEE44A71F11B99CC4CC22C5A0C62C
+074F3C2FB093560B7FE9B3AAEAF3B563D1D646046174516991A196A915CE6918
+CEBF16946487E546C6E433A5C5B9FB7D5B97F2B4B202F892CF5121199EB48642
+4448B45EDB617EDB931969D53B9C200E954B4A6DA6617E3A56D72EF332FB941F
+4694BAF21CAF8473EE2767CB5434E955C5A08DB04F67508AA1F5CFAE25FBC9B3
+9FA855CBF2DFBD04C656532230B8A2A0B33C7EC74BF3EB2877DA369035C976C2
+F3227355AE2E740152A344AC5E0CB3D04A1D4273A54A35BF8B1F24797246B5E1
+CFD5D260F4D5E5131120AEE3B3BF1308B9E55026C969C5451EDA76E0F06E75F2
+6DCC258952B63FE0B7B99B39D5563AB4F7CDE57AA7490C71E3CD9EB563E0A9C0
+8C54E64E3B537A901395E33847C6FF75C2B6FC3536E8F990C18A6623A00AB558
+272AE4D142503BF0B82A13EB6088D27E0D8B319D6BCF1E0E8EE94C9ADD6D4645
+A5B0FBD17AF7CB1E1ADDD2D822A76F6B9338B6B459D4A67631292AA028A8B976
+8F9771C890FFDF7751F3079E36D8F92AFB62BBB960A45891B5FABC8E5BDA1348
+5AC23D29879FA27A392E3DE732D78EFF7168F2FB7B0841C8B3729FFA2B515885
+C699663626473D04C1421BE24259C91B9FE8F63DC99929D9741F37E67CF70E38
+3C489E823CF0F62B020CF576753734C989AA1A360A21A137DFD644ED2197032C
+3DEAB8E7A1306D8DF7E36DDD52A895488E63701D6A69E634EC862DFCDAC01BA2
+56DE73FC77027F65B89BF3188686026D0C2A2F22DA92B8DA0F6476F6252D8066
+D9F0AEAC5E6F09120646EF77CC81FEDB1BC8E3197E9CCA12C941152387E71286
+E00B8ED61DBA85D2EF5550663A1D2C7233D6FDEDBE947241585C4B9580E7A700
+5081C957D863FD2DBDBF56CE8DA67E3D6A8A47C3BF38478D3D4D72A803DEC0D5
+797CC1ED5B005CFE4A46CF549FEE756419351B89B8DDF13BC2EC18939901BA5D
+37ED1DBCE8DA072938DFA9585444FA6F09CC32C7098E2ACCEEEDF7D117235385
+BD95CE9C7C997491613FA253743E7D0B03348072F516B7436A78435B19C828FB
+1712254A679503CE81FF1761ACA3C3BEC0C1E2736A2908C7A8D6F30D86F7DD00
+1BA2200908FA4180273E50863CA552868F1EE5EC1D8D47AE159B4A42C65F3D7A
+73332A618CEA966BFA32B9AEFCE9C7CD4678B2301FC1DB91964486B62E28DD60
+11D123711C6A2D190F6FB97ECE36679247507514606287D049455AB9CCF928CE
+CB2C62D55BBC4DFB1F8A033B7D42D8D1119D71F616205A91B48C7C83CB2D0B39
+15824D6F324A9CB64E6C09D65C478F8753905E1A0B094D310123FBB7CBC4CF71
+08D6381228C2B6C393E8055AF7D226FFBD9CF19379B4E7F75938D5A39E3410D5
+4E2BB197AD202DB623844B156AD0FD80AE4CB0E8B7831CECF25E15753FE27E19
+A8CF57C78C6D1CD021C6FED91E81AE1F09F1F9CE7D8CB480EB559729BAFB507D
+B99DE23E7D3A9FD04345DDC7E8E498F2229CC33A991418E69A9366ECB375C42E
+69E1B73DC94401E5E7AD9CFE8086432F8026224CD42D9A1EFDB1B3B0D5BE74A9
+186F30C774BAF35F25D4B0B1C9C791CAA87015D3A7519184FCE9DB2439A98A49
+0DA01A0A9ED463382DAAA05555106902836A46E3651871D20B65879902C0D93E
+C8C3358A8F64CD0CA264614EBE741ABEC13F29CAC4625A1A7301889D9A994416
+24BC8C7816579FB7D7AF946DBB3D911457CB2D0CE74BD645CE388BEDA28CA1F6
+EF4DD197628362D38ED6499657B1E45D1DDE460ABE0EC838DF3BBD2B90FD2245
+6DC211B771E1ECC3E294F1B767BA0F3D041BF4DB159EF01C3AC7C00281A675A7
+BECDF043A5EB64CB6D99FC8E7876EA1216F005A7A63EBA79549D5B6C33FA47BE
+38466B6D62D3D00C52D9BB7AB23DD4A4C896D3A5890E8C57B7ED5A627CC7EA4C
+0BE63CAA285E1A35808FEE0ADB1FF9EA3B18EC1040560B1FD950D7EF32F7F958
+5ECEFC1C01A98E4DCB69934F9314316D3CBC0AD4A1F68346CD40AE6E3A804EA5
+7286646FB2A7ABFE62B300F72A0484CC51D34D3FA2B292D308D605576D56EFAD
+DB68453A08E5B45720C99964B02A5F517A7CA00F6976CF1F6CAEBCDC1772568D
+14129CB82DDE0705F45EABE56EA4DC5AC1656105957F509F2E8AA72FE5C2F830
+38F2BB415C413D54F348903AA6B614A3AE99EC4B800D4AA2677BC588B5813A94
+F5C2FC3F8B09E58B00DA92C2946D5B9FD8DECF4E0B49BF16A81A6F19EA1FBA6A
+41FA0D679E6CA980C541395DD15AA0C203335ADF3B0D48D519816D46681993D4
+A857426475A068E6C30E75E1201524D6B5EEA7BFCAA429AD5DA4504B245B23D1
+9E5E2498B1F63A7E2B7CC42C3E5B75F075006FC833724FC05AE4157F640E7D1F
+48C35EC8DF3DDD461EA211E48B2B3E628BE4A523680BC78FAC41FA1FCBC6FE81
+17AC84A895CB2CC9CAE4D77FE1ADC8C8A4797A3F1D00E090282FE2116D5848BD
+1E61B36613A89BECE27188CBE9E0C7ED75385BDC63BBC9C55E2191F1186917F8
+423A10D8326896DF44D7B2A5AC320B1818771EFCC9C20D7E5BD5291ABE762A50
+5148AE49289CF337FE6F2B6A369C557D6AA731ACF3BB97E38306F77A94C6EB2B
+B7846ABC4F32E886B0C66A806C27B4EE3CE94297C19714C889943921426433BF
+19002E5C083BA89BF31D8F5A2602BF058A8C5C78DA421DA74A4E2DCE034D6510
+C4720403654A84BD4000C074522F9D2D7ED733AC6B46232C69E21496575EFA86
+D24B2A8DC064071F35AA926565BF09130B4F96A8150A2E3EB36355535D866B67
+17B9F62C47A065E28261990D79E64DE2E4C5CA8E3B6D215925200D982510F150
+8B0562589AA66EC47508F0A5AC15B06078A83B911C15232963F6B59BEDF57A57
+1322DB18C44E6CA9154AF9084CC02095987FA65AFB0D896551415EC9D45BE803
+BD428A107A492BBA8AD075A89112B3FE451399E061AFB98FBDDDEC71DA7BCFB5
+2833E5299591FC86BF14F7B324F7F3EBAD36DDFB77313F1ACC40D0E4805D5B04
+FB965C08CEC682A07412118A17C4549C0A96F397C3FB466C6D888F5A407D43B7
+761962E8CBC5C7E27AD0A3605336CA17DB4CC1593C64E66285117EF7CCFE1A17
+203C9F1ED41FB4FADFF14DE66F78E87A9028C853A757204F81CC7F425FC7F8A2
+509611BDE84D0F549F5614C814C3E88851F9FE74506EB52C5BCEE4F21DB52BBF
+31940BC2156EF38908869732038D1EA6E39B5417E547DC412CDB0B1F1DA09E65
+07B13C1C9C962D1A9F7A0EE6187B92874964B3C5E20AFAE716E33C3E999A4FC9
+462899118EA9CC961A7D704FE46A872BCF77491F70DEE94E1335196FD787579E
+30A01C29CBCA08F301889C27910B03E20B4DA1363F6F5896007F71CA90E1DC57
+9C6BE8898B3E2AC201895AB1223CEC56C003299D9C0947320DA9D9DA474D59F8
+1EF5F4720AE0FCA1A8E55A2B9CD79801FECDABE6E5FDDDA140226714304D6EC0
+AE2BDDDD1A02E3C01D6A46682D801A7BD61C1737358EDAD7D993D9006B56BC43
+2467A2A0B58C33FE4BCFD8DAE939184D45DFC23F5B597D788F14319EB52B1FCE
+DF8C405005CEFF39D4167B66082A38209A7A8E1D5E73D87CE049BDA2FFDD49C6
+3DA02E5D6405E2F54C921F6E2CF9F1E18268DCE0D0C960D477C8525CE5FEE998
+82ACB08902CF6FF1E437468C519FDD447A2661C381A999E8724AACE9F461E629
+998539472CC9355A9E55989EB7CE1FEC9D313A160294AA55910F4F8E55BFB917
+BC77A51055CCC1772D0021AFBC1E79B289B539ADC3E99D9632919F8BD17A1B91
+BA25661178C5EE19D4CEC42744B52F04FFC27A2E3C044BAEDCBFE020A896BA3E
+79A6451ADECB932F183CD599F694DC8393E1F878737113E3DCBA11F22D46F028
+6FA7CF148F2CFEB03F61D40D6A0D30451723E7C91D4BE58E6976FBDB89D50F4B
+6EE65D2DB6465545038E094E333A015E79737CEDA211F913D831E78032B2626B
+0FB1E7E20CAD4E01BF398E9C4965BF91136D4AE83029E5F3A6339CE3C8FB64DF
+E5925D739FD720AE38EFBA0E32E74317DD35363F19EEC4806EA840F2A77AAE2C
+8752B4B786378B134F5A376A1F0BDF8FE6F0B247D4A28248D0693988D696E7B3
+4B937A41277C56A182BC2BE08D57939398C3CC125A74905ABE953028EB2A8A0B
+9BEB795D484BC979809506C8FA55AD6135FA66A0FAEC7EF53F5F91B37D8515DB
+C93CD4EF0A12CF0F9C3CD06C57FC9646A15810910EACA53BCBAEFF4AC568CD8D
+13DE144FF06FB3F1A6CE76ACC351297DE4D7E755561C1EEBBD39F1351D1731C2
+16AAFFB586C680F588B62AEC37650017928769C53E032EEADAE9E5361F28F78E
+1841C1419290D1A453C63EBEFD3C99B5F8A72548393E2C6B1C95A43CB19EC099
+4DA22BC088E6E95FC177B3D00DB7B3652D8C5DF1682DE9C3D22796AF78149E7E
+A951D0A46EB6EFDA46594BF4D608E3C4BF9406EC7A09D3A8D6623D79FB609222
+C8B1257CAB63C810A5C6983BD16FE6322E5CACDF56B91FDD46AA8B292210D3D4
+B59BE801C1B5A425CF5F5774968D510C017C3EA4D7B86C8555A96D4F0163DD8D
+F1FD9DA5D9D15999E626DB68763C5CD22EF18C747BCA003DA4354FD484A56552
+D0A96B7FF1958035AE04025DF7F67EB52B468D63D735CC8EA34484B7E18136F9
+9D4C0966C79990ED629A87C033A52F4C96295E3D3CCD4B476188101B94E214B0
+7B4C4463CEB3C81E8838D0FFC9BA36CB0A39173105C90BF8A6FE12A0B3749045
+7CA9DB29EE500088F3FFD13BAC41782854B25955B23118FF880BF20D66E30C4F
+164FD408E5E5636976D9D2686192BE5AE7B2C96A911C290B749344C0B630DF9F
+B3FD98F2E62707541A128058A5F22E05922103A39A95C1B7F6F807A5F3A21A25
+50EBF0F5950A45C9B864D2785C24F30108BB15A3E5468902D83B5F3CFBE1E359
+BD129E494D769A371B26967AC8D715BB742EA20B414D5ACBB4B25A5770A80E7F
+B315EC73D3AD78C7BEC227661C2EFDCED86C4240D38267BF1EE26C506CF00382
+8E7F86509AFABDA5ABA519C6CDA52703B40DB3502D72E8308725E660F107F4A9
+026DFE14CF4BCFD2F4832F6AD1550CDBDB5644CA52899F4641C5897D4F907931
+185D13C33184D78EAE54BCC164076DB74D99F52C064216C7FAAC977CFB69B150
+A78A2052E4EE7090A7465324648976E1C3F19F146328BA460DADED492AA74BFD
+04AE08FD24AC871D21CF7CC808495ECA5E73B26D97EAE5F9BC435D53BF2C1BD9
+0A9004BFC44EBBF6683D52781943814C3C942BDD9BF95F1661761119B49AED7B
+D9376B6124A4DC87B9D7DDB2386974A6E02B29AC5A994617F3F988B692EDC47E
+6C948C5071CFE0D680E018950F545831B5EBE3C19BF384A51DF56F3CC7757B8D
+037FDB95F4D1878C407B8C1DF1CA9E9236C468E9B8
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -3514,25 +5563,42 @@ DD6B34C23235968C14851E3760940A38F367A42D48D453
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
+{restore}if
%%EndFont
%%BeginFont: CMCSC10
-%!PS-AdobeFont-1.1: CMCSC10 1.0
-%%CreationDate: 1991 Aug 18 17:46:49
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+%!PS-AdobeFont-1.0: CMCSC10 003.002
+%%Title: CMCSC10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMCSC10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMCSC10 known{/CMCSC10 findfont dup/UniqueID known{dup
+/UniqueID get 5087402 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMCSC10 def
+/FontBBox {14 -250 1077 750 }readonly def
+/UniqueID 5087402 def
+/PaintType 0 def
+/FontInfo 10 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMCSC10.) readonly def
/FullName (CMCSC10) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle 0 def
/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+/ascent 750 def
end readonly def
-/FontName /CMCSC10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 97 /a put
@@ -3548,98 +5614,269 @@ dup 115 /s put
dup 117 /u put
dup 120 /x put
readonly def
-/FontBBox{14 -250 1077 750}readonly def
currentdict end
currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
-3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
-532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
-B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
-986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
-D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A30EB76029337
-900ECFB1390CA5C0C3A04528044F266BA17BE487C79B94FAC6D6484684C5BFEA
-87BCCC77D40AD11552035E95E3007126418ED49B68468B38A14E88E68A267B98
-076F1C9769A5AFBC285E5B158EAC9F926F1D6C0B8F1D57D9C31D25AE27123518
-9D2CD92E5689E0213089BD268DA5E47525CB8EABAA4B78A15AEA34705889AB3A
-FFB8953B5B3482E52BFA0940630ADF8C0AC2177D907324299EE980E850F203CD
-B627962F43D5A678C44243CDE97853BDC6AB45FD5C09AD274DAF89929F583CC9
-CCC24BDFC68B92111055ABA5F26D2DC67C70906F71C2957701D65AE746A60C30
-40E6CB24B97FCDAD0487AE38A201FBF0E41BABD2181981A71940F1E707F91E5D
-C8CA50CB16D8702D188E56D014D92F76CE0B52ABDB9110E32438D2BBF3E6A40B
-7B005F10BB437812CAC6ED2996F7606DC962C4FDE207FF322782C343DF44CEC5
-FF06A55C630C20E9AE1B0D1C5673753C43BA0767D65D1B451CC6380D8BB3C4DC
-81E8FD8AA79BE993218686F29D3CD925566DD587F541A0DA1B1CC3BCEA2E6C7D
-5E1016F6917A871F1BBAD96AF9E867735017119A381FCF33EB2D3E1E7093FD90
-CDB0CED4818CFD9E201A03430CEC713620BE0D3254158931FB657C6877C1B3D2
-24030F377820DA58F4B95CFE645109F3F1B80DB5FACFD7D05AE2909EEFCF95AD
-9CB286C8B6C075CA2267C101B736139863186C193E31085E7C9FD88EF8BBECE3
-933542C85309013325B4BBFE9A5B606780C8580ABDA2F5D0064EBFC23939B307
-08568C3B7F5F053BF367DEBA349FABB9F760C44D100BDEEFBB01F27BFC61FCD3
-64512116F2751A1B95D2439E266074DB3B9FC76ED319B2851588B1F38F46C8FE
-040793C860F05E26700B72A766D0BF3F6F2EDEE06A26866BF0207CEF2841BCD2
-84F5873A147D5BAD18FD74DF7B77B8CF1913AD882DC1F4A94020B2A8A73237BB
-222E6B78BD1C4C0975B9B6683B5DFBFA693970DD53FB5D5CA5805B7728C11D6F
-92E6293F82E628C9FDD901010DEC199055B6682D6B2A688E3EE8759F7E592F54
-43E63699F1D60CD915365B85B8713DC4EB3EC4D2860880035348966F004FBE18
-9299E1DD0D491A5D542D450C8945321BFB9E823E18D1F33178BECAADD34378BF
-6FDE26691802F24E43CFA4ED1FB81C824F808A049085FA95CA518D9F4EE91D78
-26A8B8B461486419D598E7E341E9D43CED2402BF225B2C75CEE127D8B8633FC3
-6F4F69DBAF7134D4F3D669B35822FA701A441E5FBA3DC1F02A00B25C583EDB52
-4D4D488C6A810128777654B956C3CCE8FFB0D1985AE2A2735BA415941D1CAD5D
-62D9DBBF01CC979B8E1509F5DDD3BA6E87B14879955F978209CB398825E40199
-2B1C7D2C55251F321BAC0764D40B80D7AE1B787E5690CB5907719044B2AC832C
-C002C181088BA15AEFDA44D2305E6327358D1DC1D9B93AB1802FE9F24CF49739
-9863288D0195F5610441122648F5E38208E1AE5F01D1966DE10B8AAC02EF9F2E
-27D2383BC6D5BF9DA8F9018BABA01B70755FCA281588B85BB705FB7016F6D7D6
-8607BD0739433B54DFB87614A76902A3C122F39A21E80CC1970C5A6932C6046A
-771484EA9BD04CF0963E1D372B456C50625807B3557384F5368C520E757716F0
-16EF17F3A58F2F7EA42C9BFE2A64AE786F49213CC47B496B8F127696EDD017A2
-A07FD72357F4D847CE1EC8103EECDE35AA194F9CE466E733F66515749B3C36DB
-6F7E83B31034687CE18CBD15342723FC21689731B45C72DA278994FF8C5824A0
-EFE9F8D734D75C3C263F9D4BEACDD86406567055B1A8A5EF73ACAB4A09255E39
-BE9AD89DBF4624E686541E2FF03742C99BE71E7CE3B4756A22CA4B0121E1FC6D
-D62BB37F46B6EDA0AC3669802D1DF75B0F9F61976B2FA2DFB5AE2274CF08A000
-AB716CF047D7770A76B6577C75D806D878BC185C4117FD7BBE29E767E028633D
-257C34395F8988DE13F0F9083823F028E05D16BAB6B3E9002F01AD5039CA62BD
-07AE9C5FA71D6F234899382F90EBCC371C5501FE01E38646BC3C734C7E2C1AA2
-11355703BE46724DD85F5DB4051F65E48A3E8DA4CF8845BB4B3F39C47000E871
-AD2FB60C3161437D8C76A10377B98456BC205F3676D02132B174AC046658D059
-5E506F3C4178C400AD4E721AD613199FD1395413EC7AE6960F96849D6A26F695
-B78395941D62A7F7B6E25CD6824E78804A8CFA780E9919BA860C2951EB88DB5B
-C2F9E9AF635BD2C95C7D6AD4BA85E4B85483EEA4EF1908E3D5451AF6EE9176C2
-BA3F1622024250AC2A1F8E66811EE9C1608FDE0E91287AFBEFB43800212C90C1
-6D2D8066C742EAC7D611CB9F0590AB2AA66C17340FC81E55C339FE83B68D060B
-33A10B037B3370E351168E98E9DC4E8AB2B909879566CC28DD053B6EEB04A3EE
-6016A02EBB0E8D0BDB7F0B1B3BEC8C559F48448AFBBFFF5E11051516E9CB5F45
-6F38CEADF429570FB2DEC6E13CFB2A59D5FFBF0A2396FE9F7B3A0836C76B06CF
-9B9D99035BFF40EA918DC4A8CBF4576809F49DF330A9F742AB2FB385C9382076
-6FA8BB32BA81FA3E57E91BB6757C6E98047E9537A0595EC0F2A9BB2D3E093294
-023360099DC1D4EBE77960AB4E26211D1A75ADE1C764E5C2E80EC234F678159E
-3E64331306FB3E2BE3AE0CFEED0FC3F583E875A98694742C3DEDC35CCD9D45B5
-D4200D69F93C5B730AF952EA0DCC88EE1F6D50B9477E249C6274EA0FD849B537
-BA497FBD6617943E7BE06CAF71A0F6B13CFFBB51AEF3E042F28BFCAD6CBA2DBA
-CECBDB7BB399AF5D80487592A820F82A7255B46A0D7C739CCF16B7F60B709651
-0B91A26FF4854483DEF0336B7633C1E053BA889F4306F7398D85C3EBE21A5A41
-B7DB32141ACA892DDD4C0FE0C95328A70F53DD95940017CFA865D15FB0BB281A
-13E2CF735AB238D278FE175EB8B72337218B5F66B62FFD912FCCD0E180AA69D4
-23701D46D44EC2E80D3C4275DC7B5848F50682394C4E67ED98A2E6B41C348263
-EABA9705AA74CD35EC6E1D9DD55634102C6633ED9117DD472DA7F41705DC5772
-72A3C2D8BF6B308567D07153BC750C8CE867E40355C3D50747B757E52F7575DF
-9B5B913AF7FC3FDBEB317DA46DB498C7C044F83E46BAA00321A84DAE2DF14604
-12031AF813C994414F098824C30FC07E9B5307EFD8D01B56481BBD2EF648A69E
-7507FED42C6605B09EA047F09DFA9BE15B59B93395DF192C0FB33F6F31F325E4
-DCC9A5DFAA157D1D5B4E5BF811F6F5B0FD1E69ED7EE1A6FBC2CE14D11D6FA699
-255370376844BFF3C2BE814A1FEDD0B0854647B9B193B4984394C8602820A17C
-62704CEEC824C3C745BC615C54EE5DF86EBD79E874CC3522F8B8954C8E4A6FB4
-F715EE641A3D52C06574E8D7DCFCE83F3F8809D08A3C9C70C962D33F5B3D6128
-16EF2DCD4D6DCF0DD055AEA2293E10C1B7C2399C0DE4928F0A47E0BA652943B1
-004568BBA7CE62F12C7B58966BBF7B0327481DCCFC56218E7C4B9F0761063BA3
-BEA01AD1BC99DB3C1FE550DED79B243A7A554F2B1752F18FEE94120B708FE4DB
-5948387091DF4198859CF49ECAC3AB49CE2E5F0451EA4EDF9BD49633C9826026
-BC9E7E1544A0318C545ED1C37C64176504D175B83CF974B4ACC39F5790E24B11
-85F01604144C0E694DB7206941933B60651A800DF182E19C3BF2862E72F25F2F
-2D9BD71056559C0FE547D0C752640DD4DC6110A849CF9557FCB0643A1EE77855
-512015F57A80140FC06B8CDEABC5580B89F9F30A489696AEF2
+D9D66F633B846AB284BCF8B0411B772DE5CE3C05EF98F858322DCEA45E0874C5
+45D25FE192539D9CDA4BAA46D9C431465E6ABF4E4271F89EDED7F37BE4B31FB4
+7934F62D1F46E8671F6290D6FFF601D4937BF71C22D60FB800A15796421E3AA7
+72C500501D8B10C0093F6467C553250F7C27B2C3D893772614A846374A85BC4E
+BEC0B0A89C4C161C3956ECE25274B962C854E535F418279FE26D8F83E38C5C89
+974E9A224B3CBEF90A9277AF10E0C7CAC8DC11C41DC18B814A7682E5F0248674
+11453BC81C443407AF41AF8A831A85A700CFC65E2181BB89566A9BDEC70EB4F2
+048A6EB631F05C014D372103E37FC3FA317EBC9973565A638403DA02E48B7D31
+CFF6C241DC5CDB470561002FF46437C06EF93BC99352DF04393C661FFFBF4BA2
+0723ABD9B3E9CA9E63BA57EFDBAE684655CBBDBA15ADAE43E1A2C98A3CF060A3
+D16AF8FE3A49B50A24C20EEED716E49AF6013D4D38CD9CC41A91C17E4D04D79D
+567E1EF49110AA9C34464E95D81A730ECEB2C9AF38FBA6B45E253288438B4CB3
+DC75B3A906D4357293BA41E59C35223A6C9CBD6FF5FC90C2D07CBB376C7320FF
+435A6251822BFCBB612CE630EDF826C37E95F541C21B93FCE127591D5E38165E
+2B58A34AAE37712BC58B63FFD70AB80F4F24612CFD2F1466BAAF3CA2BCB45148
+D0DEA0E9B8FBA4C4FF5B8B3CB02E461355051842BD1C94F41066B9B909DB83B1
+DCDCBEF7CD00A43E4C0B8191A29600CA197F0BA227FB8309BB539D2A620BAC70
+8A1AB2DFA51ADC9873B8E5582DCD3ED154E5D727D1665F99BD89883D69E6CC2F
+DB3A57AEB612171A88E22F038461DE03FC357F771675E34E90D4D19B4B36891C
+9D2333960400E97494F4FC4DBCE6A73C34A0409E433BBDC0AAAEBA7D3555066E
+1CFBB4515C8B573C9B9DD12ED5B6ECEBE35AD0DDEA9DB004FC6CB540B5117B49
+59CABE5FD74C6F5B6482B42C20B5FF0467D1DBD7CED2CC651CA57852B6FBB402
+A6764DB342889132C911CAA713A7F2FDD8A5E849345D6C81025E02F5B8B682BA
+90CC9B467FBC37362436EA6BF8EB62D784B01D5430147945BC09D1F49EE89F2E
+3E2B8E6D439248A56F82F2E03EA5C7A922F2813BE6538A3A423BEBC55B345AFB
+3B3C125306749E137C647D78028AE1FBF3E1A82C260132832A9668F454D39C41
+736717DED0A99F6B11F005F0E1D07FE84713AAB4C042FDC166AA146D7B5E9198
+E4F485BE5B135EA281FF1C1E616B5AAF02771F58C5840CB5A427FF9794F93E94
+17FD799C78AED1DC4810BCEF4C6C51D3C1504EA2C6F2B29805B7ECF97B5F637D
+FE92E168CB9029E90404CB54FB312FC7AA8A9F2F524C03E61F03B1E31D4F061E
+1677B39D5D30C9FD4673E1723F4AE3CCF38593AD6D7F61E9DF3C010E51F25085
+35D51105E1464BA146A78D7297D4D310AD91342A0BB942034A3EC0696B467367
+3E39D202D637E6B14D0EBCA6AD3CF22B07D4CA69C0FCBB6C93782B2F0DFC5AC1
+5D8A16CB5EDB671A0C1BA9D10F63CEAFCD0E06E42C730C8EF769CCFD57937245
+658F486036D37E8BDDE5670A212FB488A8753322A5B170C9662750AA958C0BBD
+8E97D8239D2A08B30416504DEEC4E506013E037C91785C674F8A6A44E23FEE6F
+CCC00CC5E4D355B0871FDB8ECD64F70EE32449BB5D6F84F8C8AA2D5B1A489BA9
+D7FF2DBAA8D0B84054E93D64D3E77850A3724824914A0F821EEC3D605DD851A7
+606936B8B9E24D6E932E16C448140FE94DD96C75AECB73850035ED9C04A1D93C
+64B21E7D4657E030483EC5C3554AEF8BE4D0FE5B9743B875340B09E01273DAE8
+F256C50A1A8F2E0417440A8BB0173F59E11523E1CEF2593A4AC5AF2167627B00
+C5EA97D125EB8A4BD4C372877ABF10F5B7B149D73787E0834BFB3084E9508DF7
+072DD71637019599252059738D4D6BC57A9358E4B14F6AF9C4B31DB8E25C29B3
+7A15F9953BD73ACDE5F0445A5DC406BB4635FAE51C1D8202AE31730E6F355317
+1DC197DB0B6177307C60E5D38F4487363EE051B2E609A52BC4D45B14B6558B6B
+5E1618748794B8340752CDBE7756C068975B559615D4CD5A97CE30BAA7B2B1A3
+2FEF2E055232B24FD8A21BECDE1B6A479A28EC80AE2CD16DB50B30B4A6CFCF06
+491C7CD5AC29FB964D4846415233947522676DEABDA0D9535F8507D33693930C
+B4E4240A02B0CE7EA288516B8A6EF908D7F8BAF9012D052C6AC96D9F8F6ADB07
+8984F3559C5E7E3022A957982155FC9CD599C74E18328D3AB46F9DD15D1C4C3F
+9B93ADB4489BA02CFCF57DE6270F3AD2F8597BE71786510EF08142F430EE5568
+4F9DDB792B7C46B6135E341DBBF062FBC50FABA80CD4A384157BAE57CBEA9781
+AA4416323265168AC097DE7E30A0D4750143A4FCE70A863A31876A8FA5327C3E
+36E89589E363AA2B1A6E8B09F5AEB8FFFD0396067173465B6503383DE517A6EA
+88C0FC08578398C2A721E5AEB29F4AC9BC990A50CD87BD35A11F9E81F68E7B85
+5E5B95A4F9A5D30379EF90D78E1E466DEF867BAEFC4F5ED2C762BFF099C1C2B3
+5E0DA1C2FB33BE1379413CDDB1EE6BB3A495331F72F2FAEB8152E8AD5FD334A8
+AAB0082A71D5574B618EA8D487B8FAF1B445F3395B1E21224F5492A0E06F5152
+7726835C900E2E52BE3B7B654183AEDEC68053DD0AF19EF6DBC10B6FC08EC7D0
+CC0E2C8FAF8C9A4C21FB7C34E074BBA4EE64226BEC8C928A784C1BEE35B72EC8
+E9295240B29DDC2539CD118BAC38DB3917D14CD33AB45FE47E827F2A2B193AFF
+53C5396C52CEA4F43F06AC2D08C74CC85D608CBA267175EC31311EE25AB48DD9
+FE811B411AE426C9FC0B6044D1EBF130231623F1566CEA4D1C06D8032FD9808A
+94479C842BC41B675CF6B90113BD681F8D43F51D5016D80EDC11D7640FB950D4
+E709A46184406ED90D0892A4CD9062938A8205697A200DBE1F38EB166EFEA0EC
+4FCB45CDAF82EA103DD6FDD03D146F3E42EDA6496064DB3F4FC1C5280C9E604B
+D5EBCA08BF2AAC90156C11EF68137DC76502EBF216F3AF3EE30DD2676D218428
+F41C655093F8B530FCA378B5769F262A6FDB4B66B83F18F050E77227E28D71F4
+5F4425CB8D51B3DAE872CD86D7804F870BC564A6DA1CA13EDB00D131CE4F6460
+7021661B99612629DCC20C85CF155EDC5111E015A77B0B82A8FC1EBB374B7EF2
+361419BA93B857D5C9944BB5B4AEDD86ABCC261542077FE09701C96370168579
+5F89D5AAA08D700E2643E88C2FB8D1D56D37AAA9744872E7C050B4CE046B47A7
+83F224FA9FD311C955EFBF173042C8FC66524135F579B1397828870D5C9DC71F
+8615FADE2A1CFAEA90F732B6C266E2F3048FC43EDA7A6B6D98E9DB793CF457B3
+F5877E7A055C92B0246FEA8C72B3B3456F93BF36E2651D32CD614C3AECC0B4BC
+F824C8363E593A6458D37408FC5B09883B280005DD24123E2D4B1B85F4113327
+EEDD9186A4AF2CD6439B46C5C168C125CA80F9EE9E68906620EE126CFBF26E15
+B269838A54224EDCFE2A373EB750D4829BFA410DE5F1541E428BB1E024AF496D
+F5F1C151F5A645C8622F2EF9088D57A2811868A8A8BFCDBFCE3ACB8463AC35B4
+8B6F44E1C1232805842F56FA468F81FF37D5D55B81CA56058558544C142EB3BE
+07CFB1F75DECB1E48C14D6AFDD455989AA6FFE8B8DC54F462B3C20E31D270BCE
+8E68E2B43A6625AC7E9792704FAAD6CE8BBE0B341DA7189EBB3E9D5375B27FD4
+12506D5BCA50AEDC6955E6C3C7BAA84BACAF7ABDF3A270C7734EC3C6EC22793B
+E67B0E288F99699D38DA8B79F2D21DD97945FBDDD132A8F0BF947950D3C0B4AA
+EB7B2C435AFE54489E1930610311D718AC610C21A644F34CB2D1959B3066F39B
+EADEAB5CFC6AF4D191D86B02402B00D1C5262707861C5308730579795EB53207
+A291A27A8B5C4DAE0A87A0C6A260026CA3CB620E1002E066A515D7990F3DEA29
+0FAC962E0B82B7A6C86B1EDC54007822BAECED673FAAEF88C8109777EB79A53F
+AF3C58546974F2F56E70E9B5CB59ACB5C27CB01895557B2D82134D7F02029B24
+3331621F38E68717F5CB68A8892D0B9C0A8ED4F8BB56E80505170D44C6856128
+2DED0254ADA4875CF56B4D97372AAE730D4C77A2940DC8C178274DF88A9EE037
+215C6FE7B9D481EE4DE809B124C0270782411ACCCF89906A8B143D0BA8B2CEDE
+E9B90465C3E57A4FD9AD2702323450256ABD09A1F8C26F08480317C08B75B720
+70A161C99715A35A94DD5C9647ED0F8A5337B774C8E54F9653AC859485A1FED5
+37B725A7E4BA58711CBCDA6054E34CBD8E9F9460179DA7DBD243D81A1531FDDE
+BF2BD425BD9DBE75EAA333B1F5793669A215549A774597E6ADA16D323FE5601A
+EDA41092730009A99BF5B5AAE281844A6BF3292D4D4EDE36B4FD8BCAEB6EB72F
+AC5D3CD53D0D621CA9EA8D254FDCB2B5161EE9E80B266563F669805A3A15271A
+0753983004A1ECC7FBADF62AFEA4DAB49A178C231759857DB910668BDB07CB3F
+7E8EC24901863088B3231EE3FA563924032C91CA9D68DB398F9BD9AC0C651EC8
+9051C9F709CD784F3FF5951DECD7E869ACC34B83AECDB011E6594347855EE7F5
+28811F744A4BD70D4E9077EA7EC19FFCF612689F12B34332857AE41F13E6D16A
+962DB9B6AAAC167B9FBDF0068EA13412F318384134B29F3F0C399F1973A3564E
+F9C3C39B5BDD4C98D81A6CB476E565860B50704BD65ABD630A5F1372F2D826F3
+3AD47C08B8AD3176A170C369EF3CEEB190134006D6135C5B8CCDBE1C11FFF1EC
+3F6D8C46E15C4F5EB9ED9F31A129594D542D40DC3815CD075A0DBB648D868AF5
+15A05C4BDB28BF23653A3AD96CF6AFC065DCCCB23D5D9A945F8CBB539DD3BFA8
+DB8F1FBF9B6F25B41EB4309995CA3D5D6ABD70CBB4A2F0C6364E5439AD1045FF
+72F6B45A30BD3A548CFAADDCC6C15D46F6D783D3E520215751DC98335A4ED512
+D7D19235CDF911CC69F3CF4365B678EBF3E87C456A4E77339C74930083445588
+462529C22A96A28C5CE87AFA0C981F26CAED5A1C8DBCDDA612624DBE0373F026
+465185A4D8C73CCD8D71EE97116F8F7D341B87FD78F9CCB9FBDA2A7799711607
+6BBA855AE9D5C505870DC85FDFAAA130A351D56AADBFBD6A7D52055E3200F8B7
+8AE9A00092B55DEA8BDE224B4BA7FD4A191CB1FFC4CB995FEE1AC2883AB69E1A
+AFFC09AB5B9AE311A030A5BA05E2213F9BBF016C8FA80689C069314D91274B20
+53FCC65C7D7B3A7504887525BFFA060304931672A078BCD7F269595686310E34
+E1ECA868899BC402D17EC36CE40D5041D7CEDA77F7764C9D98793F5334F574DF
+E93CB10A5E8ADAE95CE63D2339557091B4B4911A4987CF21B7F1DBADBC2DD605
+8EB72473C1F2EABCC44E0D0339EECB55DA74085606C3F89D57ACFBF5755A5395
+CA8D4BD47E4EE8D8B882D3AB31A1F0C62E74654C7E041E4FF2693A38A9796064
+46526B0A37E6B5BF8E48E80EDEF81E34DA8F6CC9025936A4D0E6D709D61B7B5C
+AB550397117F3F9D2F5A542A64DEA8E1178F7337124D6B56BA92F659AAD694D7
+391028731E01284BFEA635314A8DA8DF7A34EA3B6B2F8803BE6DCB423A9E8015
+55EBD90EBAE8A00298B3B6B1C02BA516AF528122C1F2B07EF69F5466C2C36643
+0D665D6561705509B7582D8301AF3C32E2F3B9433E3E04D62117C7E8A368BDE1
+0D4DAA1C415B2A6573116D2A169AFEF700A83F55D88813585E89C94C07802BA8
+3AE8F9BC3CDBFD9C2E35D062B1FD6E79E1EF104FC70B0AB09D12CA027F33F85A
+22F0ECBB4AD55FE8C616B82C46CE69A600E4F767BD7A9C5F9B37A3196B038384
+5DEF76A8884425FE598A63AEB19FA698C2AF7CAA4983CEC789268E22BA051EE0
+20A40633D22D8F707626ED30E8273EAAD1C065F0B2E1718B5AC853ABE09330C3
+B0082A71D557169BC1559B6D285A3499D41C4CCF1F74884EC3917EB9C574371E
+AFE8578DDCA459B8D22C0188A8D150437B05FB92022C95EB6FBCC954216B5FED
+CBC7C90B9A1F061376A9840FB64390A6BA99CFC8279A86A730C6DBFD14C53C4B
+7277D676BD42203677E9ABEEC8C97E13DAA626474513B06F8734DD784F2FBBB9
+B3B448B8E8221E380AB4A86D3A683B86A54129519D50DD4FE63B30954D805CED
+A9A5D9A39C58B65B08E1C19555E927C6DBF7FD07252B2B57F62B905D6B488201
+213D106A41033B26FFBAC2E616DA6ADA6D560BADF10E68872806CFD6F6E19D7B
+57CF1F7A030A7BAD374F16A977E0ECB8742D034ADAF9C247DA19C8AEA74EF6CE
+DAFD6B1DC562FD3B77E4D008BDE4D8C7FCA9895DA1AC9EAA01C32A0DA712B082
+9438E77230D38FC4153E1711417B918BA6CC03203A5FF082AF880F48518D8271
+C1121E4F1386B30A7F1BC6F10EA98443F8A65C867A109336B808BC9A8E2A75AC
+F950835AA84B56F59DA4C8A18859C3B68F6B6DE09A6675F639EA9107BDB67B0F
+54EBC564BC2D781B61C14363A54956BA78A2BB89C9F966C94EEFC29EE9F4E23E
+C0BF750144DC289F0DEE1F8A25BB52E54F656FAFEE4BD2DA57E1306BBE648051
+1D0CFD6A23A3DF082E3CF13197BF1B7FB22B2CD427BB78F455C9634DF989DC90
+7BB2AE247B1C99AB2062855B2948341B0F857ACD750B59E370A6698C6A1F5287
+72A4A9628A592E313956C242DF8277EDD2F1FDFB07CDC104275FFBF796D7518A
+DF49FF3CDEC3BDFF1D290C382F244DF18005ECDABF0C5C2C64EEC4383E2E07DC
+5C82587C071E59B46B7BEF31D268F39D9B12D534344FBA515E9DE8F166FAD1E2
+7D1558967AAAD3829D3F7EC6938D20E5379F414532976ABA844D97A5E9078901
+EAE4D0ED1F4C7EE7A2D80D891A5013D6409A38ACFA497F5A169EB7F9F4890DC4
+62FA6A89EA48267331F086992B9CA9305E16611E6AEE67DCDD588A25D37F45B1
+0DE75C802EE021E574B64B3969DE2E5061ED9364B646C38D4BBA86802CA6338A
+94E135D2256920EBFB1AA22D9E90C7D16853F0DF9F2D942748EE540E4FCE63C6
+5380D7AB4ADD6CB00FE8F7867E4862D8DB432F28331428CC350CDF7F447A65ED
+D7683ECA35A22ADD06E9FE6BAF060913AEEE7B2B8EE4798E437698CC9EB2428E
+74CE73F84D0D2292DE709D71FFF8901C3505370E6F1D4E28E6B7372492C65A88
+159371B1D60D77CEC93B272B6C5394EE1D2EF9969DB2838B8E128553879A1BA5
+2884B0A596E8FC3D1E648B7E26A4AC57DF09B9CE09B2F91D8CA618CA52AB3DBD
+D005A56A420366069B73146A6F58E88BA49671A1AB7C2070C3D42AA770285143
+40AE7D7868C0E1993506B07C086AD7D4F28CE2D15853FC5FBCBF9425D8012B9E
+DB6E1E5002517659C8DA69DCEACA94F368537668843D281FC11782F1C5F71977
+CA215349EE6F20565DE3D8D8212A40E1227A4B22965FA64A0B02C62BFDE97E6F
+C3C54FED4057EF9D258C42D7440C78C5E0CC58A40DD74ECED4152F70A93CE71A
+1B3A57C46F74A6D27BF98C97CCD31A8EA487260F224A3E40F52C65490AB4098A
+7B9EEB54A5A415C8C88568F7D9EFE74BBB785FA18AA27D9201F28BBC477A20A5
+D1307AA78EB8C7CAD409AB64B29E4115E45F5FADDCC80CA74B296C4265A40614
+37F2ACD8386AC0202D6FDB6711E8CB06442F209D781E940ADDD6D881D4F8E874
+357C533115923B90138FFE31D3577C6AAE60D768970FAAB682CD0DCA3E9A9A68
+6393E4B772691C1013ADFFC90C508D51B02D2518ADCC7E79F7DE5DF9D18B8435
+6129064DD1A3995E5A6F45D78287CC10A0EAFBF47223494C5EA934B1BC2F7C53
+686C5880303F9E3ADC8B100D441D944686E1FD811C646C6DD0224F6CF55FA87F
+D132EF50450879A25242A18683BD6D0266F8F333F3768D1952B0F32AA75106D8
+EC0AB703F287E847CB91FFB88CD9DA174B49171822BDE34621CF41EA772230A6
+3088F8D19CF2364A329162D39E166AC728B267758341630B00398D64538FCC4D
+E3E6CF103794C29AEF7F7E56970F6B1ABA87DC8D23E280EDC77556593D02DFF3
+154883CFE4EF04E07E7539A4750FA1CF1A994E99B656E728D140C83AE1F196AD
+9F049188A4184C84556C0476BE46DDA8ED86888DDA3065C5091D99EEEAC43092
+40B97AE327215024ACC0134CBE91FD761C26A48EDFF9028DA28222985FAED7B6
+A1CC891D07185666E34BEFBBF77C6C32B88FF3F1046E4EB2CD942E70746DDCDE
+002E74BA03A2B15E0529E61DCAC207A71F61C89D81B3C53C5B458EAC70ADFC54
+810310CB04E1A21FFBC5DE2429EC0989A3F2B6AE4290A005FBE736750956765D
+637B7CABF7F9A593D9FF6C322895835C0007A78771D1404671122F9CF898AB24
+1A5648EF8C40B27FD537612C4CBC6E584FBD058DBD4F0A00C63A79077826D3F1
+859589B221F7F82DBE392601B0A89142648EB40BCD943E382FC7758A10F978FF
+6DD9C3C1D284C5642C812DBF29A75A50BF63F788CBEA5883DC1544ABB49289EE
+2C99CB03C1BA72C7320904C7EC94736825A793D5629EABFCEFAB8D28B6F23858
+89A6967942A943FAB5E5B26B8567CC9606DE60329C6D890843F700FC1F60656A
+38164ED7976AD47A8E54940B9E340D61353AAD260C9273D45772AEC8E9F4F045
+9CC576D152757AF3B74DFB9B6962001EA9FF7F62C2E36F71D9B76BB99DA7631F
+774795B8CD1E08480153496DE5E08A1F4BEA681D0C1D6336A49A222B0537ABD9
+75A3A9D27D0B71B8913E9355F8E56C5FB3E14B9D5ACC4F87339FF9D9039ADEEC
+660B5CEF75E7C1772D4A3A4D0C8976A165766D9DBD0CA8132D17E5149AE716A9
+2E255277FB5294A96194C462C74AAB251A36941768EDB3EC6DC2C481393ABA6C
+8BC2F3AB0BF5A6E5619BE16DF43BB099C6CEA5044ABACC419174664232E97B29
+ED32362D219AF109E5D8CA751EB1F9F31BDD08C93AE018E5269AC327FEC67D99
+588CA80F068AEB94A7B943BAD5EC8D89C0B8D153B4345E77A5AD9B4522208A33
+DA92CDF765B44123C6EBAA06D629EB9E8D0FDD29BFD60EB582CB369474767FE4
+C0947F27DCFE0C8BD3CF5131E706E02ED136DBCE6363CB5CA637E08C3D832037
+5AAA88B746B6D915EE72D7B458C55598DA6284F362D2DBF06C51DB50A9FFFB5E
+EBFD69D8D06AB0A6DF2D03F6E14FF290B1A1531109E43892B82B29395910021F
+A6EA74B8420A14FC189741ECF67F81686BD3C5559DAF75DF9FEF3346CCC35AC5
+37A1E30C2602945974A2359EE3183A1AA568978F7732C35BE2B9224C27161748
+515E5899B0387F0640DE1D712F390A8A026FC5C5A893E98F46B418B7B32BEF07
+AD0EEA87737D929180B2BE697D0DFD46CF307E4FF76BC03492E66633F1357848
+AA5A594EB8CC5913E76602C9CF8B7428F67965D5BAAA29BD6C978EF6B22B0BEF
+4203B223443554971EFE558FD2F51D01B35D2194A1F6820293385CF12DC1ED73
+79EA6082A30796D5EB72A67C5DB42A01F18CCBFEBE2F10B091C43C2CBACD8914
+D665B340281C1EBF92249FBDAA577CB7769974B669DA0B74E822EE5DCF3A32D8
+9C6714D8C82CE9BF3F16E6336094BC55381E73A96D45B7A70AE00F9CB8348E08
+2A64E4B40B3BD0A653B423C5D3C1ECB62F5E05393FB8C9B0C44AB26F6BF796BF
+5B51601913014ED708B97731A5642351ECD0F6CA9C06832E0BCD0055E9BA51CB
+7242CD34AF0B75F3594AF9235C42B974074665C5B6C934B08E5C7F55638E7DB5
+312BC541A8000E69A92ED6C63AA6485A50DFAA1DCF9B0DDAD23C43DF22F3000C
+0CBF6F8F64F37BDF8F8DF321FD8F42C3FF774A388F9C033572B177A493814ECC
+BE19595AD285F11763857603EAE0D6AED509225CACBC49351E6BF1457BD11490
+EDA1C3DD6DE8C7036464CF80FE562CDA51ED2EB92BBC79252FA79EAFE5E6BD4F
+DC16AB83B2C902A9027BA4AE30ABADFF6D513BEA850FF35416E76FE62D8E88DC
+69F0C60921B33BA59FA3EDC8F532B47FF2A5E5680BEFCDAEA4474DFA2F8FD68F
+74B5837A22984A7534A5321B83459E436AE4C498702EA14A77D3F78DAEA47BA0
+1BE6CFAD95132683BCE0601F3EDDEFF5207FD5FF3CC9093ABD946CC7C1076DB9
+4DAF08C682269CEE980159541D92FFE484B7440E5AC58D7707BAE579605D1EB6
+42C396807AA13B3ACEDBF3A465CBD56F076FA9319E43907B6522904F92483537
+6102700CEAA52EE916B80AA4C5F8C98C9AC9557F97784F075D37A83649D632F5
+82A519507162012A671F3B4DBAC454D920606E9C87CADCAA1172A04E445A28A7
+0FA9545E5FFD15302664B5C2C4F479C8C760C2A015F5F5CB51EC6C0260154D37
+4A65B01E58B458ED0FEBBE74884C9DF7D50770153FB498E94F65475A5EA6A687
+543DEA3156D3E5CEE23923120DF4D561D2C082F1F3BFC5039A1DFC1C9C3A328E
+6F879AB979F2C177FBA357FD63F8CC21E8AF632D6B01A3AC3EA7DE91C17B8120
+42E78A1AA2E04581B1C434A8147DBE81A87C73782DAF4BD5F309280FEA22DBAF
+586AF386182364E45D7DEAFFA74E338E875B64B13CFC909B30E074D777D347ED
+3A58A82D5F6A6E913054F9FABFDD9ABD8BBF54DC3480F3A90965A0081092714B
+D77604CC7275050DBCCC800BCD8E2BA540B18CB07AF27D66F8887A571685600F
+3FF8C7A4966A8CF8CB25DE0495CD4E048999ECE6579AFA82D1644FE160E2D3F0
+EE7CE89045332B172425D7D1443E8DD9043A12042ADD7EC106CB4DAAEAB310E5
+85F93869A1C519DC0E3CF8F4C05030F0BF7054C5859A74ECE7D6FC5644C5B84A
+F3EDF0C4B2DCDD0D193599CB3CA00464A90AB55674F884001EC896726A9B374B
+3A73AECDCBE06895E87FCE6267091C6CED0E779DEC36D8CC35184E00247AB90C
+37161FFEE7CABFD7499859042093BCAE22D6B811FD16EFBC8AAE6283881C12CA
+98E0792640063169F76B18EF543AFE7951E82EDB1DB9597F2F9C959B69943379
+CC7F5BDBD1BAFF7C77AD8D504D5F17E1B7DFFC515AC237748D33FB6B9D7DD903
+2F3E9768290A90A5FC5EA516A94C1885B17676D33CE4124CED1359E473305B02
+03C28731C0FC52B18FC14360C9494FF2A86AEE929E4022ACB78C02ADD6174FD0
+D35105BB00643F6560A9CCBB3E5CE2F79F0EB9BA774D27DC476867C991598380
+F77CC0444500CF43DAB8D729B31EA5A3184F178F82622A8B711A9CA6A770971C
+521C44969E814B44D8E1927C283E6A38B78D7C258630730EA463FEEEAB263838
+2A517BA176D1C137AAE7430532FFB0FFCA8BF110DECB42B1A7A9457A9ECCABFA
+D6CC11CD925518857AAA8498CEF35377CF92FEA77C09E6AE25DB2D09F1E355BD
+7F7F5C72A76315F3C2B6BEA1AF7BA5D0E8000778A0FB2C60FF677ADBA9156A11
+A5B0B7AE92DB368571C040FD7A29C3DF384CCC29A0E9F40FA385630D23AC1E97
+C15C06848761CC7D19D208BC115A6A2933056BCEB3717CE2488E86D0B0D6D276
+22B2FF1E77FA719372BE62A5B6E10D3DFCA57DE70AE16C57718B86C58B6A7F3D
+C6DD45D7559F9A0ED8889E707FE7622997F2D573F7688621245E0FB3D34A08C6
+40B72F4BDA0394CBF90735B9E6B3928AD56F50FEF9A5DA8B195008164EC03424
+7F5317FB8157C33F6903FD6D4B4728F82F1B02046DA16F4285DF088E08A136FD
+1366494E3F5AEBED4B48B3B9072BC811A700940FF4B2A51C0434ABF225B37BBF
+E4AB11F394332D66393420D4B843CAB6AAD9C32418CFE6A2A1260BF430E61176
+4B1762E3C9F1727BA47AAE4C7589E7099A56F5E1CB6BD64C0C8D026ED60EAFBC
+BAD1476E98F5F12ED94BDB1E4B0D8FE9E36CF40DA6F5B2E1BC41EF5F7CB49825
+EA5058FF7C49C5FA11F9F9F575AB4D8237FFC2573F94B695CBE9BC44A1BB26DD
+C6E55627BA16E5197CADA519CC7302DBE77F1FE4CF68C558D8F6E264
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -3649,63 +5886,233 @@ BC9E7E1544A0318C545ED1C37C64176504D175B83CF974B4ACC39F5790E24B11
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
+{restore}if
%%EndFont
%%BeginFont: CMMI10
-%!PS-AdobeFont-1.1: CMMI10 1.100
-%%CreationDate: 1996 Jul 23 07:53:57
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+%!PS-AdobeFont-1.0: CMMI10 003.002
+%%Title: CMMI10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMMI10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMMI10 known{/CMMI10 findfont dup/UniqueID known{dup
+/UniqueID get 5087385 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.100) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMMI10 def
+/FontBBox {-32 -250 1048 750 }readonly def
+/UniqueID 5087385 def
+/PaintType 0 def
+/FontInfo 10 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMMI10.) readonly def
/FullName (CMMI10) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle -14.04 def
/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+/ascent 750 def
end readonly def
-/FontName /CMMI10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 58 /period put
readonly def
-/FontBBox{-32 -250 1048 750}readonly def
currentdict end
currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
-3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
-532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
-B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
-986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
-D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A319B6B1FD958
-9E394A533A081C36D456A09920001A3D2199583EB9B84B4DEE08E3D12939E321
-990CD249827D9648574955F61BAAA11263A91B6C3D47A5190165B0C25ABF6D3E
-6EC187E4B05182126BB0D0323D943170B795255260F9FD25F2248D04F45DFBFB
-DEF7FF8B19BFEF637B210018AE02572B389B3F76282BEB29CC301905D388C721
-59616893E774413F48DE0B408BC66DCE3FE17CB9F84D205839D58014D6A88823
-D9320AE93AF96D97A02C4D5A2BB2B8C7925C4578003959C46E3CE1A2F0EAC4BF
-8B9B325E46435BDE60BC54D72BC8ACB5C0A34413AC87045DC7B84646A324B808
-6FD8E34217213E131C3B1510415CE45420688ED9C1D27890EC68BD7C1235FAF9
-1DAB3A369DD2FC3BE5CF9655C7B7EDA7361D7E05E5831B6B8E2EEC542A7B38EE
-03BE4BAC6079D038ACB3C7C916279764547C2D51976BABA94BA9866D79F13909
-95AA39B0F03103A07CBDF441B8C5669F729020AF284B7FF52A29C6255FCAACF1
-74109050FBA2602E72593FBCBFC26E726EE4AEF97B7632BC4F5F353B5C67FED2
-3EA752A4A57B8F7FEFF1D7341D895F0A3A0BE1D8E3391970457A967EFF84F6D8
-47750B1145B8CC5BD96EE7AA99DDC9E06939E383BDA41175233D58AD263EBF19
-AFC0E2F840512D321166547B306C592B8A01E1FA2564B9A26DAC14256414E4C8
-42616728D918C74D13C349F4186EC7B9708B86467425A6FDB3A396562F7EE4D8
-40B43621744CF8A23A6E532649B66C2A0002DD04F8F39618E4F572819DD34837
-B5A08E643FDCA1505AF6A1FA3DDFD1FA758013CAED8ACDDBBB334D664DFF5B53
-9560176676ABB71BBD0EE56B4CC492C0652750227CEC6CBEEE374709231B00CD
-0DE83AFDE295B314F6C8B1FFD32251C1925D96A64D739FF1DA4926460B28B3DE
-E949AA0BA3DDB16534FBA30C32092D5F712B5E8C8D5142F35AF2906E6C219D2C
-7FD9A368C193E0EB9C7E25FF03C546B6ED993F964CEDB1B8537C617170787F37
-88D6F2AD02384B01067FE3F98257BAB958BB3BCD1001090A4502DA0638080EC6
-DB784CC8AC37CDC01B29BC481D6A05ADC6188785262358C1BF1D694BBF31C1F1
-AF117C1ACED44AAC6EB4B9A2511A6762DDE8FCCBA5
+D9D66F633B846AB284BCF8B0411B772DE5CE3C05EF98F858322DCEA45E0874C5
+45D25FE192539D9CDA4BAA46D9C431465E6ABF4E4271F89EDED7F37BE4B31FB4
+7934F62D1F46E8671F6290D6FFF601D4937BF71C22D60FB800A15796421E3AA7
+72C500501D8B10C0093F6467C553250F7C27B2C3D893772614A846374A85BC4E
+BEC0B0A89C4C161C3956ECE25274B962C854E535F418279FE26D8F83E38C5C89
+974E9A224B3CBEF90A9277AF10E0C7CAC8DC11C41DC18B814A7682E5F0248674
+11453BC81C443407AF41AF8A831A85A700CFC65E2181BCBFBC7878DFBD546AC2
+1EF6CC527FEEA044B7C8E686367E920F575AD585387358FFF41BCB212922791C
+7B0BD3BED7C6D8F3D9D52D0F181CD4D164E75851D04F64309D810A0DEA1E257B
+0D7633CEFE93FEF9D2FB7901453A46F8ACA007358D904E0189AE7B7221545085
+EDD3D5A3CEACD6023861F13C8A345A68115425E94B8FDCCEC1255454EC3E7A37
+404F6C00A3BCCF851B929D4FE66B6D8FD1C0C80130541609759F18EF07BCD133
+78CBC4A0D8A796A2574260C6A952CA73D9EB5C28356F5C90D1A59DC788762BFF
+A1B6F0614958D09751C0DB2309406F6B4489125B31C5DD365B2F140CB5E42CEE
+88BE11C7176E6BBC90D24E40956279FBDC9D89A6C4A1F4D27EC57F496602FBC4
+C854143903A53EF1188D117C49F8B6F2498B4698C25F2C5E8D8BD833206F88FC
+BD5B495EB993A26B6055BD0BBA2B3DDFD462C39E022D4A1760C845EA448DED88
+98C44BAAB85CD0423E00154C4741240EB3A2290B67144A4C80C88BE3D59AD760
+E553DAC4E8BA00B06398B1D0DFE96FB89449D4AE18CE8B27AFE75D2B84EFDB44
+143FD887F8FB364D000651912E40B0BAEDDA5AD57A3BC0E411E1AD908C77DCE3
+981985F98E258A9BB3A1B845FC4A21BCC54559E51BC0E6C22F0C38540F8C9490
+88A0E23EA504FA79F8960CC9D58611C519D3ACDC63FB2FBCAE6674357D7F2285
+4BCC9F54D3DA421D744D3A341DA3B494BB526C0734E1A8FC71501745399F7683
+FD17EC3044419A88C3979FD2ABA5B0130907B145A8462AAF0A9B511D2C8A7C7F
+347FF6AC057E6512902BFD2918E2CD31DE615F5D643764E900B60287670AE18F
+FDE15545D8BC69591A8CBBB275AFFC9B14BD68DF0AAB32268FB84844D4DBC7BB
+C591C1AC5102C50A9C7BAAA848DA88B0519F0F5F0813BF055CF0E3C86F633A04
+B779D2E8E656DB1E09A66A85FE21CA8BA5523F472A229E83F2C4E91ABA46C733
+F3C7B5775B06C97782BC225C46385BEBDC61572458EFC5CF4190AB7A9C1C92DA
+29F84BAACF552089195966E3AD9E57CC914D20B6962BE80429A16D4DF1ECAA66
+36C4343FADF0B2B48F12E2EB8443C4AA29D00949255F3968617F98B8ABD4CC12
+048B838EE243A21AC808BD295195E4AE9027005F52258BFCA915C8D9AED9A2C0
+80814F79CF943FBE3594C530A22A92E11BE80FCEC1684C4F56712D5846B0749C
+9B54A979B315222F209DEE72583B03093EC38F7C5B9F9BCB21DBE8EDDAE9BE8B
+75ACE6B12A31083AC8348EC84D1D29D2297A266284B7E9734E207DAF59A25F4E
+4AA38509E993C5394FED76E6A2F25462685C4C86C6E8CFC9863338EC1428BDFC
+74616BB1BC8948B0ED4C87C15B4405F3A7796F9DB3798FFFE8BD0A94E834817B
+D5E9812E308D0CC920470A6F2CD088FCB80462BF7CB3F039A7DF3DAF5B2B5355
+E083A385CD2EAF0FC181E40E96DD7E9AB9EF5C7E6866A13B8A54718E950FE097
+EF0951A357114F18CE9933D28B3A77AA71E3CE884661F13284BCED5D5FD1A86D
+543E588FF473DC2CF9A4DC312500135F29C2D0174B32018C8DBD40EF9A232883
+710A1F2AB2CD11312300ACDF789A9B7B93D2035D81D1C84984D92D78A53A00C6
+EDA94B24BBAC1AD17774A4E07E6F74ABD90415965616AD540C8ECD8C3A44EE4F
+7F4F6BB6238C5062D63FA59B7BF08BE93FAEA70A2AB08FBEAAF7DBF56B95FD93
+03CA406543BA6C9527D0DF01F5108D31A51778A5EB1C93F27B72B46146A353A2
+01CACBC829603B9989A87CF64528682CCBA0562A8165B185C58A5C6BB72F5E89
+500ACCAAB8ECEFBB2640E99EAEEC4EA979AA793D013D61D8ACF8784FF8D9398F
+F6A252A709324FB39509F0B3A4E725E82F53543383C6765BE556CC897C758208
+AA3AD37B0406E4A79F8F0A6C1983FC73E71CD858C0DB66ED66D5D992978614EE
+1EA91EBE191E082EBA1FC040AF19A2202575C2EBEB8058833E3520FA03D2F915
+85C1ED337E457B9FEEB0C6EF2735EFDA6E0D05FA641BCF698AC6B97751E8306C
+4DF00A39B8581FF53DB8F8525FDB196D85950906CCB59B8EF171349AA3B567B1
+6A00819947A995FB383C3C1709C9A2C113B2E40BB832B7D4A0FBA0B16A2C455F
+55809CC425C403E9668DC66BE45B71A81C332FD4DB279D22A2959962304A8F18
+085893DAC61317D24A8F198FDAB95F3B86F0AFD35047B868A9A17037A2829A02
+BAB042F75F349E197A7EED41984C2859754CAFD0251439921C248B463B516951
+2E1322C80D73F9CBCAA63A585450275AC2492E4D3FB78E800F788254DB5E610D
+CF788DF5C70FF99892BCDF16133E34B24B77C8F097F546B87C603DDB8998B66E
+BACB68BA27462AF54AA405682EC96D701F0D474DECD5F95CA2102DF639EB169E
+D518162C2BAE45FF698B6DE15FC6E7DE48C336C40A670FD26952A6BAB09115E1
+991F0073419F2CC2A1C08BE91096936AA0C37E4ED3CCCEE235476074B8FF1125
+6BDE3701F85532D8BB64CCC927CC335281C95EA689706F0AC717DC2CF680C754
+E5EFD7FA4BB8880B2B727A964C876D4A223069D4E6001771F0E23EAD2A4BBC80
+E76675297B2EF05F52BF4E71B3EE2BE3048CF088C79540113C66AE98B2FD3CB1
+B0741A215FD070882C52765009D7D711DAA2508F19AE7DDA15229A856AC49BC3
+4DDF40814FF96500E4B9B02D412E94623C5FDCC76C0FB8E42DF56A904FE49D65
+1DA7C53901B2EA71AB658A464D3ABDE27D9DB8D9E0B48F64E61A2495AD5D8DAB
+B5E72424AD017DF37964AF911BD7FA21A5EB4775DC8E95EF0C0EB856B00D89D7
+8172A1DE8530767D317B8256103E53CFB877E10686A04F5A08F8DC58D843DEBA
+FD5F40597588663D103689F6EB3EB14D06E18C8078F2538B43E712DF491FC5C6
+AF639256C8C6134B64D560D8476DEA6329D995E46CC4BC78841C59E73648B47E
+BFA7DE0846422F738454AE77E822A083405289247BD7C478BE4974F742CD6051
+E99FBB1D1B3FBABFEE855174734EE45E87D0AADF32B1283B911162A9955847FD
+38944D70584FAA6B1A7191C5C134B73F98EB632B69E2F0C0F94156787C34C8A3
+7622A029D58F9626B74F8A8A1F3803E0BC20E0EADEB1E99B70F1BD9F980FB751
+2A842843DE42EB142A84D5D3138629AE9EAF6F3479C423E8829C8816FA6EFA27
+DCE5580E65AA9854B1C64163DC318420CD993C15BFD76A8BA1182860A6B03D6D
+22B8CF43CFE6C8AB27C64842E239CAE707D3086BADDE1D7C94E3BC96319470D6
+8D26915C575CFDD03271D6BB9DE86A0EB6EEA6E768B224A626C62A9AB48A6EDB
+44F70BB5AF991CDF9736D65933E81CC57A78F623F33EC9AF535F2F25FA4EEC90
+D50DB7E87F31E971A75A33A301CA6013EEC5A4E179D695B33DADF2C98364434A
+42926776000B610E17524162253F6FA638D6581C18F99EA0BD1D2E24D2424ADF
+C05010D08192485153DD03930C7BF45237593E484F9851E6D464FA10FECA5D9E
+0C8CCC97DE029030900CDBB491C5CF226DBF903CFE7735D939C3FDF3A20B70CE
+66579B28B99313FEE914E295388C7BC8E055A2E54EA3A8206D3C8F4F7C0BA5E6
+E519419FD8CE215F7B8E9BEC604A9E3FE272A0328A24E31997C8A91E0946BCF1
+6943A97CBED2AB9FC636B49828BBB8B89E0BBC2653796431224895ABA5DAC41E
+1854BD9764E86147FD7624F736F40DE3B7582EDDFD15C2BDE3F22B5A54D7DF10
+B87A1301CE85CFC061689A890A321412A13314AE96DCD3EDA75035FDD8F4AB9B
+897A2C68263A68457032C469987970648BA2D88B1C5375DFEAA35A917B8A952E
+EE670427942AEDB3CB599C5746180E392837D371E15D860620ABDB6AA7772C40
+A5E346661673ACA530BE3D8E3FFB895E5DA3DC23B1B43C080C77F7E47847F0F3
+F3AA5CA9E4BF75FC5EBD18D19F21A7DAA3B11CABC6E4070A15F7DBC8B05EB6AA
+A02EF1B078EB66D61D6AFE41DA9B36FE7EC9EF94D1EA26282A9871E2CACB3126
+2AD49C2D9B50A6E47D8F2CCAD50992D1B430979A45FD9E76182A19964BB2A1F6
+51779A2B258DC1DF4C2F3074621286831F3848AC152DDD2BA561E6586ADA88D3
+598A2CE2CD048F027CE0008B828BD915887D7785341E8305DF2346ADB76BE99F
+87B02173BDC334E9221C8DF54114A6B24C1C5340299512FA6C8C51AB4C8778CE
+178CEF531C6D1B5FF0A1BE8EFF767F959BD4C345C52699A29A17B2A230842BF6
+4B011217D6D24EDAC3F6D53482786F1CA33169B90ECD499407D37CE9B70DDF78
+7B7547B32952535BA9ACD1E244447AE3FCED3AF28717083CF9590A09780984D6
+AF0743C82AE4FB3E2BB2856A4153A3967A023FFC35382D6C22D84A924900B6A6
+3DDD400E6D2418DA6C27F2FA34C075C902B89EBAE658B3C9A18EEE449DA5A379
+337DE95CB7AB3F0970CF1A5D8FAD8090E495570FDFB2FBBA79244780D8035547
+C5A55BB21A2270F724BF5D442CDC5BB9F09BE0CAE59B1C2270F0BDACE698F2C5
+DE8F66BFB9634904B161F5BA2B1950048300D69BABD312D58D89C4ED527AF7BA
+7DA2478EDC2CDEE3473DD8A8ED9D891CD1FC21F23013228BB3281B71FCE959BD
+6F8E9059D682A7FCC5265A0620992D4FA8D78377EB34CE3ECA070EE3707239BC
+98907DB0120CE42ABA32CF97127E28382BDDFD685674279F588D4F951216C355
+821361790F64C2CC720DE97E8ECB57326C43EE47367628E05769E106868B54F4
+C33C9951908DF6FC4F5ED2C7787BD8FA591BBB3E9C6C1DA94CC5E38D9B20C886
+7D237572FF46DD896A4D6163408EA6CEFAC398EE041EAE29D577E75326CA17A6
+B072D47A7B13EC441CE6DAA042ECD02134CBFA6809A435050413817193DAEB16
+A5882C8AEA44BCF36E74E9ECCDFE7E19FF5A5DD7A94E5AB4F8702C3DA7F42325
+23C808670A0490F5B373DADE40814FF9650241D3D69C91FBC5ECE728F827D9BF
+C928602E05477903449E079164CA39859C4BCA60C579F490AA455F82B5050BB3
+969AFB478E0D4A257B3356EA3CD62051FCE6C6B1929CFF85BFDF166BEF658E10
+3A55E007F38EBBB248B3F0B8ED1925106B499B762E45113AE1AC9DE09644C84B
+9C08034B297314EE69BC32DB6E7D7FB9913CE5AC17E7335979E9DCCE2BAB3725
+1976155551F9706A576FE0E3ADCCF72C87683291528ECB749CB0ED291966E239
+B5E3630676BD409E08F85BC1AEC9A2D4135376284A96EA24431243BD6FE8B966
+95F11A4BB53F392E0AEFEA623064FF8A7002367B0A515635CB2D2DDFB9B4A8D7
+FE721754E81BBA548848A235B91AD4E4F7DB19CCE2F61D277FC00AB956EB93BE
+44AB4970CA56BF59506C94ED160FB1E25D3DF2988A532BDB787BFB8539D22986
+FDC378AC31444E63C4727FEE121A43751043849E6DCAC5B59D0FC703AAFBBFD4
+E8B7C268F21615AD02CE9DABEFA27B5FE6A6441B619539CAB1F810F1263447AA
+633F5DAF483752EF1A0421740E3A811D2D2898CBF53E7F686C9223FD7235F02D
+6F90D2D48CC20AB87778DE3C6FB335E0F0EC20B5DC5B65223FE117526DE2C72F
+FE839DF93CB2A7D66CD900CB325F891E311BEC932F703FB4FEFA29DB8B9C88DD
+375EC71B3D58C7BC59ADA91971A3BDA1ADEA629CE6CC92BD542CDDFAA7706FB2
+6CDDE2DF07E56D6741916AE8E8744339816F3E6C38062747AA9FDA2A2678A6B7
+EFEA870AA3A4D71B25EE3013EAB1DBA34401B867C7A41AE51E0421D41D3BB83C
+E120C8FEABA6E5DEC53A689C21426D4BBCB68CB37568761C360E6D4E3596FB7D
+F4DEC7918E58C0293D12D6DDA7E9DCDAAD7C939F55CD1BC4A228B31E9A904156
+DA6B40B08E6ACE674618B768DD681C772A3E55FE096CF949CF3B0460ABDCD891
+D17B37B355B29AB5137899C036F31DA026244FA25FB798FBE5105BDA29F46538
+D3D3AC1001A7BCECE64DE94FFE6C354166A0F97256137BDFA07F6E22A3D1D2F4
+9588DBAE95E895BC5E64DDCBBAA8D0A22C229B42CB717FC711E7E9DF793DF80B
+9F14754585A3C7E17F37B32924B9F9870DA8635E3E18BD1DCD81EDF01834D9C6
+B33F23C956C2FCBFA47D84422F583459D827D1E120B97694D12F1F54D02379C0
+D288F7104F3FFCF4F76E3494F4ACBD1BE3A15543CC680924C78A473F8E311ADF
+8FE00A04C6C393DE61AD3EDA5BC031E2353076A2489391B52632387CA28A7B93
+FBB065A6EF3658AE80B1ADA47E9B2539E73A71FA75645F85ED8ECC257FB4CF26
+B6C912DE9D0F9899E70BECCB934AD32CF49A093371A9F73DE6255EBC39DE1E7F
+00D0CBDABD4D0383977E694890E71FBE5C376BE5F3A80C28987417504F515C50
+909F3D31178BB9B1D085BE514F71B910A9085BD6122DDC72A150BFE266920E49
+5661BCB4BAB51D6DEFE32B616963DBD989FCDD1637B294CE4E288655FBEFA1BF
+7F25BBF8CF17C2D5FD161A7C2CC9CC7490D9BF15A1D35B3BFA43ADE256E88BDA
+BD490D92907C57BAC408A575EC84D6AEE070148C7C9A91C03B09FDBD792E8FF0
+C0B886AAD2EDD86541E5E579359D40E3AC312ACD3D8FD49F71BD533DDF8859B1
+BAF17F1884E331DD07CEEF93B71D492AEBAADF7A263450A7A72210CE630A0D37
+BF024BDC09ACC882816B8C22C62AE38A3A8D0F6EBC2B1B2C0B8161A8B076DD5D
+4B779C0788546BB4CF57332230D237856B00D79C28A7C01D11F44B7304F69075
+94B97A745DA43D1BE561372CE611C345A843834E46AD9DDB16CABCD3FA33D6F1
+F6B5C0497F5EE5400B305CDC16A7EC286AA4D45D0EEBB9DA06AC9C5294D68EC9
+E4DC3CA2B92CE8FC0526184A86EDC7AB34D67E60AC12D9CA8FD300235EC968BA
+92C6FBDA47572BC5600F25249F60AD287CBDAE980E747FCBE7EE5CD323E733F0
+63553B494D3DDEB9CC1480B5C3BB79A28E419AA65B18CB297AB383419E890E2A
+CE6F98C9900CCB4675280A10CF060B8D220DDA1BE55DFA65715EABCC1AFAA271
+B1F8732341613E17B231231A0D24D4D7FC198AE04D89A99C4536217769C6FBD9
+5EE24A6302F97438F7C0E311C878F674B4477A5ADA3952CDE4055AC408B8174E
+86F8FB797646DFFFE0ECA25D1BAB9A9F71F3926D3D85AA63E7A8C931D71E79E0
+AF1EAC26FADE468F4FF7F3861D14C10E3BE1F9EAFD6D3A544E8108D5DAB5B180
+3950C74818BC8AF4758A108F462EF1826647A49667F5E482038C54716856D9BC
+35F29922846D2148F92F943E951D7438C73D6A60459A8003174036C64E1629CD
+155D47FD04B03C023AD67CD5A70C98AB556EEAB8C48169706E5B352F6505D580
+AC945171BFE62E81F8F500438AC3B64D857BA5BC54C2C4BBB237F8FA51296255
+E66A92A61FE13FDE781D393557EB72CEBAD86511035F775FAC39A0479CCD400F
+226709118F887F47CC2ECC8F79816D4A945B2845F50AFD62D8C9A9BBF4739496
+9E644BC9F7B04803B7EE75A09EAE94365F6F374B4FCEB0B506C76297564B9B6B
+8B812BC3A33929AA94692572B010E6210AEAA312BDFC88BF302244AB9D587A9B
+919823FD01DE12438D960944D1977800FEB49E638C32E5B188B1CA033E0C37EE
+A142F746367888AA119535F0CCAF7EAA461B790EB089D2D6962E28A398439BB7
+9C9943654D7A2D765B46BC0DD1F915327F369162E1BA1BA83110B93F442905E0
+523BFF5E279508A98568CD5CFD18FABBE9D17265A9081E7BF64155A2CE3C0DF7
+88D00671AD65654709589BAD7EA65BBA811387ABA5CA0BC3F66D3D48597A0D1D
+2C268375DF47CCF62166262AE4840AB03BF49BE67A05EF66328EC729F03CA5FF
+AD3937FC053E223303565DC771ACF32E63DFB96D5030E787961D72D02C195C66
+B48E9AF0309DC169CFE8D16E2818DA94693A18F027DEA0D916672480464F7E22
+CA6E431FE38D3FC019BDD229E064B72C545C61C6EA55984565CCA88ACB01F744
+3B4593CC8944C70F30925FB48A16342CC26D444F54CA15E5A624C4A2DAA2AEF8
+404145BBA339F2A2D6FC2F3ECE54387761CA1213C8D56FF96E37C6147CA44B84
+262EA87E7CC10D931E6B5B80D7F09813498497AA84ACB4AC69BC6C8481ED2953
+084F560D7B1CF90555E69BD2AF7C5D944E8E3506165014652462BE1BC81CA341
+E1B0725159D36DA0FFF3577D1DEBC5D91AE683FB0384
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -3715,63 +6122,233 @@ AF117C1ACED44AAC6EB4B9A2511A6762DDE8FCCBA5
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
+{restore}if
%%EndFont
%%BeginFont: CMMI12
-%!PS-AdobeFont-1.1: CMMI12 1.100
-%%CreationDate: 1996 Jul 27 08:57:55
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+%!PS-AdobeFont-1.0: CMMI12 003.002
+%%Title: CMMI12
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMMI12.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMMI12 known{/CMMI12 findfont dup/UniqueID known{dup
+/UniqueID get 5087386 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.100) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMMI12 def
+/FontBBox {-31 -250 1026 750 }readonly def
+/UniqueID 5087386 def
+/PaintType 0 def
+/FontInfo 10 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMMI12.) readonly def
/FullName (CMMI12) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle -14.04 def
/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+/ascent 750 def
end readonly def
-/FontName /CMMI12 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 58 /period put
readonly def
-/FontBBox{-30 -250 1026 750}readonly def
currentdict end
currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
-3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
-532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
-B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
-986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
-D919C2DDD26BDC0D99398B9F4D03D6A8F05B47AF95EF28A9C561DBDC98C47CF5
-5250011D19E9366EB6FD153D3A100CAA6212E3D5D93990737F8D326D347B7EDC
-4391C9DF440285B8FC159D0E98D4258FC57892DCC57F7903449E07914FBE9E67
-3C15C2153C061EB541F66C11E7EE77D5D77C0B11E1AC55101DA976CCACAB6993
-EED1406FBB7FF30EAC9E90B90B2AF4EC7C273CA32F11A5C1426FF641B4A2FB2F
-4E68635C93DB835737567FAF8471CBC05078DCD4E40E25A2F4E5AF46C234CF59
-2A1CE8F39E1BA1B2A594355637E474167EAD4D97D51AF0A899B44387E1FD933A
-323AFDA6BA740534A510B4705C0A15647AFBF3E53A82BF320DD96753639BE49C
-2F79A1988863EF977B800C9DB5B42039C23EB86953713F730E03EA22FF7BB2C1
-D97D33FD77B1BDCC2A60B12CF7805CFC90C5B914C0F30A673DF9587F93E47CEA
-5932DD1930560C4F0D97547BCD805D6D854455B13A4D7382A22F562D7C55041F
-0FD294BDAA1834820F894265A667E5C97D95FF152531EF97258F56374502865D
-A1E7C0C5FB7C6FB7D3C43FEB3431095A59FBF6F61CEC6D6DEE09F4EB0FD70D77
-2A8B0A4984C6120293F6B947944BE23259F6EB64303D627353163B6505FC8A60
-00681F7A3968B6CBB49E0420A691258F5E7B07B417157803FCBE9B9FB1F80FD8
-CA0DA1186446DD565542BCCC7D339A1EB34C7F49246E8D72E987EB477C6DB757
-99AF86CEBCD7605C487A00CD2CD093098182DC57B20D78ECE0BECF3A0BF88EBA
-C866DB19F34BBBED6634AFC0F08D2AFB2A92578A6F8B4ADCD6594737FF6EED7D
-5B536DA9E3E2CADB40DB7C600EA4D100D33C3B92B1CF857E012C4EB370BA8295
-55B50047CC8911C98FE1A7BA6CDEA82D34476286E710776823690AD333DD3A49
-335002F4680DBE1C21174BF016B0DF799B01EB9D6988479A8334BBA2F8DC7146
-BC0DAE9DE3A6453B181808E68A89E0C02DAC6264D002B422EBC1CF14F65D9888
-15EE6D514D3457F7F3C6A3D17EE1DA076F73ECC392D349174DA9E4680F29CE10
-0157E42CA35F5DBFF56BFC3AA07E61A78DBE882C5AB388220C19750D3643E7C8
-23D6673027CE568A4ACCE1D12B1D9E5A43507F4AF9BC873237F65A6B95078DD2
-378007CF0F0DE7CCEF760E19D6D1D7B412EC5D4972
+D9D66F633B846AB284BCF8B0411B772DE5CE3C05EF98F858322DCEA45E0874C5
+45D25FE192539D9CDA4BAA46D9C431465E6ABF4E4271F89EDED7F37BE4B31FB4
+7934F62D1F46E8671F6290D6FFF601D4937BF71C22D60FB800A15796421E3AA7
+72C500501D8B10C0093F6467C553250F7C27B2C3D893772614A846374A85BC4E
+BEC0B0A89C4C161C3956ECE25274B962C854E535F418279FE26D8F83E38C5C89
+974E9A224B3CBEF90A9277AF10E0C7CAC8DC11C41DC18B814A7682E5F0248674
+11453BC81C443407AF41AF8A831A85A700CFC65E2181BCBFBFE3573BF464E2BE
+882A715BE109B49A15C32F62CF5C10257E5EA12C24F72137EB63297C28625AC3
+2274038691582D6D75FE8F895A0813982793297E49CC9B54053BA2ABD429156A
+7FFCD7B19DAA44E2107720921B74185AE507AC33141819511A6AC20BC20FB541
+0B5AAEC5743673E9E39C1976D5E6EB4E4D8E2B31BEA302E5AF1B2FBCEC6D9E69
+987970648B9276232093695D55A806D87648B1749CB537E78BB08AA83A5001F7
+609CD1D17FFA1043EB3807AF0B596AF38C91A9675E2A53196FEF45849C95F7DC
+182A5EC0EC4435A8A4B6E1CDBF9A5AF457564EA72BF85228EB6FD244F2511F5A
+CA9B71A65D53CC06EF5F7EC3A85106139A4D312378BC22183C09A229577B793A
+1B7422611C03E84BF809F46C62CE52D3AE29CE01C32B202ACDAA5B72733EB0AE
+C31D7EF7BA88D2D14F85313F7A8B9B7A5B124B03AB923744D336C969E5CE304D
+3AD977A46664479EDEFB69F113024E761C05FA48A54072DF9E12C2F352ACB3E6
+D04F6EEFFDE209E7FA3DA22E5B1D1409461F4286B7F4F8251B44E5CB7805762E
+E129FF4A06A7458F3191926B1CAF70E32C6571AD2DC07C34FF62840896F4D200
+761B1A7FA356526D1E3AB4C542AF13623BAEB9F61B1BEEF79A9205B1FEFDAE24
+8799D516A9ACC30BC0139C63C9A0523E9D5439213B67D490C96F902958779B8F
+68BD8E9FDDCE8A3A2E35877DB6C94B7612382ED8F218EB1157D2ADD090A2448D
+10B99FBC9211C5629ED1C61C74FE93041E5AA03EA4AC3FFDA00C2B6E719CFAA4
+262FE17F66804A6B54D3669836EE4367D2A2991580C5564463C973CA0DA38AC6
+922716E13B4A807B50304B8826CEFEAA47C305FC07EB2AF25FA7945797237B16
+56CDE17AB0834F5C97E0CC5741B061C6FF3A8DD1A79B9A173B66A6A750538E26
+32FBC92E75BA15CFFE22A7302F47908547007402569158F62C29BA2956534FEA
+7DACF1E507AC309DAE8C325F2A6023D2FBD81EF42146BFCE6A16A6310A650460
+7B07BB7647C8760FADDF0DBBCD3DA6CC4645D1732DB3A22D8B76E1D2D48E4D4A
+46F4BEB80CE65F3517283A1AE08391FD1C10ED452133706BC6725AABC80107FD
+754A8BA47B0281D479F052CE26A723EFFACB79B213041A536542AB334769A2BF
+88505D82C498ABDD5A73EB539530F47CAC52825D16A969C8BB56D4A7F2830B8F
+CB63B92B576E7BD922A4B25E634751F8A3B7C4EBAFCB373EDC8B8281B1D1371A
+7844E9AD990CFF09F0D7ED73A5CF873D2D5C9E8A9923CFA31E1A4B4CCCC40760
+8B3AC8FC3C88BC08BD7407725281BB879A1A822D94997826418F1B89D303F2C0
+BE7A0102E6F529630CBF1BC5BF3E4578C164A3DDE45E62A957EF3FB7F0FBBA6B
+CA1E79A1ED195B6A11CFB345B663C5E72FA55D80476F604F6C4257B51686AE25
+8F7D159FE605DDA0AC74BAA5034F29FFFD403070013C6E2D8EF6A0990D91173B
+D5A3AEB98B64E412991505C3CB7C2CDE13C091FEB3DFBCAF30C4C19511102300
+135BD5D444BB55692013F52056908DFAB2ABFACE81A58423ACEC59344CEF7D4A
+C5A3EFFFFF70759BC3E593D878281225060B97D1BEE6B26EED90571FEAFA1812
+1115C0EEC892F5DE6FDD68321A0B3F10A2D771B79BD85476AF6018472A499A86
+07D64CFF4550866AFE590C471C80EB12CB3A989A60BC7BED39097C12D9286E39
+14C7952C4C64820B4DE44A1827B7B0B535244E93FDB80036D6332F90F95B472D
+7031E7E3819E881BD0313CFA112EB3AAE943C99C47635CCA7E34DC0306C04E5D
+2E9F60FF037EB11602BE74E8E6B711392E866E3E55D988F7C856417A2B9C186D
+639819B4786D039B77F8578EF63C088FF28BD08D8353031445C8498A8F445BC3
+D08923D32AC04BF3CAFEFCCC1E77EA894F4E846F47EF62D6841B8D8576FEAE8F
+90044626869D04D61D64D56E8C51AF8C18D6CC3FEF3B6C4F7D56FE3260354948
+10104F69B117FB8269292579A7D52FED688C663B643D8D99F13956612271073E
+1A337AED059B7A93819A28CDF01569CBEB51069D22ADAE25C47355560F402B2E
+8C9900DA82B79C64497C8494F42FABE5AC41791C2010D98FB7E593C744F250DC
+D837DB0EAA4F75D0016970F3AE8359878A08CF9A697A06C5EA945819151265B9
+1A12122B98F79185DF852257BB4798E7DC03712EA6ED34F6E6AE1476788DBC33
+9229FADB8D581BE1A63F596698DBD6DB98A092F67197A4FD4A50B648F2691875
+EE2495D6BB310078F516785A0CEC7EB6E8305FDBAEB1D15690409FE32DD9CFAE
+DBD3866FB63EBCAAB73E3E4BE5D7F3AA44793938AAF3F8341683F0790F1D46A3
+60CE083F9BEDDA22E0639A92393960F86602216FA51E2754BC2F4CD0BDECE3D8
+FFAB7E0E49613DD4956C9A10AEA798BDA1F756C755BEC12147ADECAB0FB73B7D
+203A11D84DD2AB5AA98FD38C1C2573570FD49A4924A94A106D2A7D850E793608
+FB135853E8C4204441CDBE697FD0CB330B1C3596F32D2BCBF263237EAB362D09
+DA6F531B40384DC91F30674760CA7B64BA1968F6A7FC9EBEF431A1AFC5E76D7F
+2D44DCB7F61C7F6B16196B3E8B47343F572DBA8B8B21B43E35BB6B2DD5C7982D
+244FD4304D254D6CCB5E8CF70E77F50812F41A988EEB3B26BF0F6F69BBA18077
+31134B5A5823D10FEF6201D045AEE7A24E0F25376E9FC66340C56C05F6CD810B
+724D85CC4BB8D789834A447CBBA159565D08BA5793D8599035BB5063271518E8
+F6C50E7DCE71B1D186270DDC860C6DC0CD506010EB5B1FDF6BE47A9A18CC15D7
+D657E58BED9EECAD5CE5D49F63139A39BC52C6584BB2C3264D51BD584B40F8EA
+AFCD8B83F548594386EB2B05CE803105E84931DC6E7A1398073D48E130E0D907
+CD0F1ECC3254EDF5D4DDBF44415DC9BA66C673820CDB0FDF033D59BE2B5EFCEF
+01FF9D33EDC88F8D522E07F1689D024DBCD09A16A63519E1764C8630FF36058D
+CFC07027E0ECDA01E0E85B166C613B22F587B4D355EB018BA93E92A36007B4DA
+287FF5A91F7D8A0EDF5554ACCF45AC8066E88865C5692E63EB99CAC81367B605
+8E6C19EB98EBFE0D2D161B447B9A70CDD1122C7B78A413369016E6D8481E2AE9
+9AA97B5DD0ACC9B0820F7742CEB2F46F89F3E2092621969A88DC0156B4F941A1
+6BF1546D4B136657C47B082A8A35FE96016BAF3D9679B8C32EDDD6AE6DF3BFB5
+7854074FA019707FC22BFA82299E72ADF9A980AE29A8E2434277E58B01F6B03C
+192E1E25DADD49F6E3F69799AE62B56E00B60A031BF8721DB8B2CB6D4A4C15CA
+AB1FDE010AB7DC0DDED977389B101B8E53A949222FAA126656E02817DD32B0D4
+A49516CEC2B97EA7C78FD66229B044EB92F502384BCC6CCDFFF995EABE3BB7A9
+50D5D1AED861E7D3BA8D333026C673C5762712E763E59261426044583D789C67
+A606B96F97663F92BF104CE02FBFDFC521EC0D6670B7D4F85A229F51426DE912
+3B729C4A535FB7C88D0A5E78074751B58885DD6BDD2DD9E9C83F105E8CF63DDF
+CA7DB39D0319CA7CC2E73F42747F007574DE25AE1538B4D493D22D0D5F0F80C6
+5F6FA3937C8391DE2F0116F81DB2DB0EF751EC838A7F85F163A6F48804E84B96
+8D715EF25B7E2A5CAECC558D80F421052A1D698F3B8452AC27E30A4E6226E3CE
+084C8A83ADA0818A110923CF7AC7AD4CB92AE4ABBE0A9EC1FF935FD02774C1F7
+92A278E513012AD17722A23C55EF82E18F8847B5CCE47F4FE3EC508BA563F7B2
+AE56C94285A18DED4D432FB0CEFC05A20BC17DDF9FF919C724810A8ED7358A27
+97EC93C1A13C443A91947FE1F6F528EA7B628917FA7E554A1D7B31ED46C5ABCF
+92BA57961C8876DB4041305EBB029B03D8351D5E2819FF87E97ED214D8F1CEF5
+7F7668DDE223721C0B810F4A4AC81CA4EAC86EAE546E1B15D91E626FB9A31824
+5BFF17C4E79FD56ADBF6DBF01BAF6453A81EBDCB38A5FC0FD0FF0646B3B0D199
+13E2E59A1B5CAB6DE5329BE389BA0E2A2AB55CA40B711ED746C24F1E48892E76
+6DACF7DA163CDC90CF076763008E7A899870CDED5A80758E6177BE6B93B07EB1
+5800A3BF7B9AAC3FA825CE594EF5B7546B181375FA8F37608DF17856D2F8EBD5
+6030A9E6F6BEAF224AD2AEF76D03B023E2FCB922CB8E3C6816AABB61FE6E4F83
+F21B4935102C860ECA03DBEFCA461F0E5B93E5A8D18440BCF7D1D6252A24CB6E
+A64FDAC8B67C4888519AA368D9C4A8C08C7155DF5BACD75C5196C571C3C456C4
+7CE8D90215FA6EE8CDD72C48740F7F5930EC3632DB63A9C8D2DA125088C0F05A
+9FC83D16B7F53163F4EB6FF372C6C3115F1E68EB35967D11126EDEDF0BF80817
+E68A698183B3EB0A207DB43786E1B9D289359D75AD5E465328CAA90E712C2962
+AE2A466173F2FF30EB535A6054BB0B875DC8552C16B49DF17CF84D98D35497BD
+F55E273FCBB0C735899529A69990E09149FBD2DDE64B7FA8D50AE83925DF03C8
+0B63EA158FBABB12A028803DA4B9DD6C48C0FEC469C4E730729F4BB420D5B003
+1918B4AE9CF35CFD31E8E62A44C0484E3D00143BF1D330235E821E5CFEAB4D31
+7CB4604DB1F310457FCF9075A3527279644D908DE847CCD00B6F50DBDEF91D3E
+38238CAF550FDCABA2C3A46237218DCC5A09AFAF69997E1EBDA7EFE6FC99ECC8
+5D4AFD5EE35FE2346BE79B499EC8EC436868154A947D13BC02C780EBA4B9E64F
+3026F1BF5DC1F8D64FEA1281EA40B4BC355638A3A59BD9055BCBB232FA45EA0B
+B405131B64F105814019BC55466EE78E9E9ABB62DB30EA452F7EFD7196C76A85
+15B2CFCD89922CADC0F392B0C54A231F3999AEFB53C24EB0C63B0C8A1A1ABB6B
+AAB2F93E5ECC7AB90EADA320E918106BAAFC1F8C425C617639984629018BA674
+6FF4F338AC43E23BC3740542911C058D43A49A11CB3A0CC8E3088BB5BA6048D6
+CC2AD250DE956BFBE83BB24C945C20D9C22E7105983F284EF478F9B68BFB0322
+EEB7D62802CBAAEFF1C2332159DCC7243EA40CE15C734EA905E04C476B178B82
+A08ABCB0B86A7330C75E62EE7844C9E22DDB013ADDF20AFE08122EE1B930A81D
+806A0F8CC584CB7FF5F56F9B35E5FF78FD93E7E4A40C64537464EAA275FE88F4
+461FC6A467C8A69B9A9FBC10D44AC1B753D313A8E7D97F5FAEB60F82855658D1
+4DCEE043C8FCDFD8A29DD091F3BA55874A458B2B8989F35055C72FC411382361
+9AADC717E602B48D7C9521D3971A6F7EB19D539445DDE9EFBC5B58FA9E5E426C
+172C45CDA24985FC4632287FC3B15849DEB56F5A061993AB10A6BC59868534E6
+69888175053108B77E4978D971B4EC57224C0F93EEA4C15AE92254140A94704E
+ED5666FC06C5341F643F779CC88A9E81891565C63B6F7F6286E664F4E0A48690
+356DC96F1B98026C563700772485B83BFA06435D4E0793EF822F423C93FBACA0
+E5D889D2B76771C6F0EE997A5DB43C2F6921132890406E3C33F6F159B14C5D78
+7C151BDFFDD02B697315F191B5490073EB418A4FF2A398C68D44F0CD1B87CF9C
+B52F12728B72F94D752D23151196A256908135C87991E508B8906CE2539DCA8A
+31F86809C8C6C18A09F6129BD7CDC6B37E76B648788056851F22BD3E3B5772FF
+EC01D822B57FFDB3BAE624F05531292641FD6A7E3666152D18F6C653048DD7D7
+98A942C840C4A0FA662F260B21C64214152BB86F03662A330109C5AC0A5EBA30
+C6201F558858130703DF76AF4FBBEE069BDE45C0D9467077D85FFED4F9BA9C61
+AED87D67CDCA453A6528AC5BA153E1039D9CCC556CEA5CBB542265FF54A1B208
+E0E13740E7E7C26AA00AEE909F8F3ADC2726081A744D8EF6BB711BF5F611A900
+76F91C26A338DA13A7160A9F42410CCEB3190000D963D036FDA05A29F598EF40
+8FAE6F8E7E6F50C99C3304A573501C13A00023085F057DF331E3354CBE65D573
+CAE73BF15B3B96B502E0AAF2B4A86237E98A997AAEFFF4227D5A26E8972C48E7
+761F430733E6EF8AB2D903C17FAFBFA21C25F8A0AC157D397BF3CC1AE7598F0A
+2BE4FB46B29443CE57F41FD5F91122E9D86F903E94D5B55E2BB95949C156D138
+89883BEFD634311F9280C7F028DCA6408D3A682DF5B55B9F7ABF08F019190F60
+D39E4F0E80F0594235B09A5320109638B938633A2C196E4ED2B43DCD8643C3CF
+C6123B076B7F73352F906D96FDE0FBF50CCCA432712C574D5857838BAC30B485
+D25024EB254A7EFE57D1DF0892C275CDB3DF77602F0FED0FAEBC644BCACA04B8
+B424DB125E487794CAB36E01B5E1A26F5E1E97A739AA36D77A12F5B45338EB39
+AF36CEBDED55DCBFCF497FD475FC6BAB5530AD6153C6BD982564EE8712185F1F
+D5EA7ADF4104661168A01994C1FD773A50C8AD6A3E4D332E4D59521BB8BBC6C3
+866EB4AC3EA4532477E6CBF6BBF0860031C3B916AA25E3492670EA67F55CF4FD
+207C684A0DDB6F4AD21B2909CBA71BCE2E762012B0927BA72367A6AE0AF87F73
+756C9BC85E4EDE35317E2CCCD138C02C7A8013AFDC1A48C3A4BB8EF257BDEEA7
+60E012F54D12D31D18DC59D5E526F12567B8688B4B67E16B56713870300016BD
+A3B9DA87FDC865246AF8E94316799110D86B1DDADB8A673402D4226C519C058A
+1D1E5A5778584FC28AF12819B1924060BC4F54B1054EA6AB0149E04B8C4302D4
+A56D8A347EB5D3D2A0E12CF7E35059BDB53D9FF6BD25F6D9619BC4669CFC1048
+C6C9978B8751B840F27D82A69075832BE59F55C1737CBB1220FB8FF691FDBDF3
+03BD7D225A9372AC221C38245E48320E1CCF898D9EEDD678E5B8C65B7F588321
+1A3953EEB9B39EA9A8CB72DB08C3E9234DFFF5FDF9DF804C021D57E97DA7622B
+97F4CB6E0EB640E0DC9EA15C5193F92A3A7565F4C7A4C9CC327F7CD2C44900AE
+D9E76FFE62FC37FA376E77131B566AE67C3E09DA80F198BBB995EE8FA47EEDB8
+4B467C6C7DB8AEA745CF8C56B8BE56534E9C56FCB2B7006426DFE93D728FA4CF
+94F131C549814E54ECE7C914C5FE8E4961D3437CE7475D03534B62650F551D97
+201C794AA877445DBEB11C85ADF6119B05360700F8CEDE4766E3A1D7A35CDDC7
+9ABF7C619E3868A39D1852DBE1EEAF5D7898C78323873AC005542B68C43C5000
+CC58F675EB595F87C879694751494676465891E8A897158B481F11A171CCBBD7
+29603F00210CFD7FF31FE3D273933ECC34AFBCC4108D9B76D9ECE63EA06CF939
+4799092A54A749DACB82C1424E9879672C8BC084C360014C9C1B6D5D65C68AED
+66CE329C3AD712C0A36BE7EF03FDF339CAA2E0336D387A693B1DFAB5D5164E31
+14755A158168962C9B399F8F1DF3FF5060D7464D5071058C30C572A2BC7DEE53
+84BD7614A4BEC4C84E18CF7EC81C811724463BD46CECA5FB57B0F55EAE20CC74
+6AD815D1897B037C197D2456797B992C20C70B663BF99FE28C513B4E221C8E12
+49779F8C0AE8517048ADDF7CDF0D698E3EFE60071C4997B7F5EF12B6CB65390C
+224F13FBB99FFC034C0710F05019899689B6D3350BBA65C7CE7C2AB03D81B9A5
+5F3D65E4D462DAB189006669F7390A78A1B8908A4C913B15DB8827DFF15BB9A4
+A6037DDB643103B937257A7DAB025F09D53FBBC2BCB6B0BCD8D56B2B2784E498
+1F6CF8470DCC892AD0CFE11578718948BABF9C1427084643B66BB9181094E29D
+5FBE37708E1D8A6B7518A96876844CB66954227A7A6AF28DD075A462526DD5D6
+40EECC56FA366106E55C7068997B54B7F0D03AC1AD45D28C67C7ECA99DBEDB1C
+E18A79C353113E2E05B837E703278B202112B1C69E42A69D64B62F0E7D8F7E5B
+C1F93F0F99EC20EF312046F4B0CD7DAB31E422070B629A7FA96583CF3F1519CD
+CF08806F40ACD7BB5C960F21E9DA7FB3C72CBA0801ADE83DF738A4EC94F2977D
+2B95A166BA4AE28CAD1E37FBBF49D342CDB4DF615E2C5F3076313AC517C350DE
+710F5D52DE31DF69864D29DABF14234DF13904BA4333B0D714EEA55CDD79DE45
+FF5D64259C877191547076B1C7684CD252C0337BD9DF66CDC5DBAA4F3102F2E8
+FE48385C55727B80D11F3BE0B7568AA9356FB2B180A6B1392D620DED02F0B736
+5F4399FB9D32DFBC8ED942AD311C82250DA8BFE98D65
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -3781,53 +6358,235 @@ BC0DAE9DE3A6453B181808E68A89E0C02DAC6264D002B422EBC1CF14F65D9888
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
+{restore}if
%%EndFont
%%BeginFont: CMSY10
-%!PS-AdobeFont-1.1: CMSY10 1.0
-%%CreationDate: 1991 Aug 15 07:20:57
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+%!PS-AdobeFont-1.0: CMSY10 003.002
+%%Title: CMSY10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMSY10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMSY10 known{/CMSY10 findfont dup/UniqueID known{dup
+/UniqueID get 5096651 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMSY10 def
+/FontBBox {-29 -960 1116 775 }readonly def
+/UniqueID 5096651 def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMSY10.) readonly def
/FullName (CMSY10) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
-/ItalicAngle -14.035 def
+/ItalicAngle -14.04 def
/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
end readonly def
-/FontName /CMSY10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 13 /circlecopyrt put
readonly def
-/FontBBox{-29 -960 1116 775}readonly def
currentdict end
currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052F09F9C8ADE9D907C058B87E9B6964
-7D53359E51216774A4EAA1E2B58EC3176BD1184A633B951372B4198D4E8C5EF4
-A213ACB58AA0A658908035BF2ED8531779838A960DFE2B27EA49C37156989C85
-E21B3ABF72E39A89232CD9F4237FC80C9E64E8425AA3BEF7DED60B122A52922A
-221A37D9A807DD01161779DDE7D31FF2B87F97C73D63EECDDA4C49501773468A
-27D1663E0B62F461F6E40A5D6676D1D12B51E641C1D4E8E2771864FC104F8CBF
-5B78EC1D88228725F1C453A678F58A7E1B7BD7CA700717D288EB8DA1F57C4F09
-0ABF1D42C5DDD0C384C7E22F8F8047BE1D4C1CC8E33368FB1AC82B4E96146730
-DE3302B2E6B819CB6AE455B1AF3187FFE8071AA57EF8A6616B9CB7941D44EC7A
-71A7BB3DF755178D7D2E4BB69859EFA4BBC30BD6BB1531133FD4D9438FF99F09
-4ECC068A324D75B5F696B8688EEB2F17E5ED34CCD6D047A4E3806D000C199D7C
-515DB70A8D4F6146FE068DC1E5DE8BC5703711DA090312BA3FC00A08C453C609
-C627A8BFEF75B4DEFAF34B44B356A516B765AFCDD3F5475B1F928731D09D2170
-B97E40F12CCEDF4F6BB3756C4734F6E98D74B7E942A954B1BAAB83D4AD727FF6
-DF6DC50B2223BCB5568A73A112E4860AD490554E64E780073FF3399CB4688D33
-9E8829667CD6EAEF25E0C7D2D44F2BBFA40E999325F9561514844221B50BC8FC
-4C7AD68CA7220D69125C2AF06849A3E068D18733276F0C0A6A2936D3C2C87CDE
-59CD1AF148C44F85784A5DAD569F5FF53C061056C067CE29AEF1E3BD1FD8B0B8
-71A0A638CDAC6AEEDBD5337D4683C084BB60B1859E600F59CB4E19C5FC5C6327
-EC544A68134496A9BD0B87D83AF6FDA3CB62FBF0B54FACE1F0E6A2D84B467AFF
-0F62DB
+D9D66F633B846AB284BCF8B0411B772DE5CD06DFE1BE899059C588357426D7A0
+7B684C079A47D271426064AD18CB9750D8A986D1D67C1B2AEEF8CE785CC19C81
+DE96489F740045C5E342F02DA1C9F9F3C167651E646F1A67CF379789E311EF91
+511D0F605B045B279357D6FC8537C233E7AEE6A4FDBE73E75A39EB206D20A6F6
+1021961B748D419EBEEB028B592124E174CA595C108E12725B9875544955CFFD
+028B698EF742BC8C19F979E35B8E99CADDDDC89CC6C59733F2A24BC3AF36AD86
+1319147A4A219ECB92D0D9F6228B51A97C29547000FCC8A581BE543D73F1FED4
+3D08C53693138003C01E1D216B185179E1856E2A05AA6C66AABB68B7E4409021
+91AA9D8E4C5FBBDA55F1BB6BC679EABA06BE9795DB920A6343CE934B04D75DF2
+E0C30B8FD2E475FE0D66D4AA65821864C7DD6AC9939A04094EEA832EAD33DB7A
+11EE8D595FB0E543D0E80D31D584B97879B3C7B4A85CC6358A41342D70AD0B97
+C14123421FE8A7D131FB0D03900B392FDA0ABAFC25E946D2251F150EC595E857
+D17AE424DB76B431366086F377B2A0EEFD3909E3FA35E51886FC318989C1EF20
+B6F5990F1D39C22127F0A47BC8461F3AFDF87D9BDA4B6C1D1CFD7513F1E3C3D3
+93BEF764AA832316343F9FE869A720E4AA87AE76FA87A833BBC5892DE05B867F
+10FA225E233BCFA9BB51F46A6DF22ADCEACC01C3CD1F54C9AEFA25E92EFAC00D
+7E2BA427C25483BA42A199F4D2E43DFCE79A7156F7417ACF78E41FCA91E6C9EF
+B933450D851B73A6AB6AEA7EE4C710CB5C14270D1674FA334686653793FCB31B
+491E870D3C2BC654D2C1DE463EC9BA29D7371AA1078800EF93D3F66263A2EBBB
+F5723697BF7448BD0D2E301544BECF497FD475B85DFEF52AF4F8F8BE445CABE6
+019318806D10C5952157FF8F8286C1EE701545C8F60EFA854EAE66835A2046A6
+915D395F1E0366EFE0C0391583FE001FF16D82A2E2DA5F57754A2C6F69306E36
+356ECF8EFC3F1188AD6FCD2427E0580C97A5B69B4E0E09B85EEDE142F5ADD2F0
+5DE51D6DB72B127412A0D57106C19CA493048A4F815129ABE767D51715B1515D
+9C21067CB5BC88741B7298C83EAE36A866DFA87D8981F179B1C31292F56BBB64
+3C430779468AAF07C8A8B4934E1E775FE3F35186BD1FA6EE3689C1C750678AF1
+FBF9B23195A124C5C991FE670AC0C86FD39D2B07B9A319E74EFD498B45820252
+720ECDF7294F7B0B137CEB86D33BFCEB8606985A3260FD669E461C8BE94216C5
+D434FD8854F44EE66E5A289A9F9E32BC36AF645D53F96652602BAED418C8D726
+BD04A1B4617551FE4DEF54083D414F7DCE004E6BB2DC9C2EF7CE232B254BA2C5
+7DCBD36C2072ED46FF711F121A701E2284BF1B718B3164382B8F453D68FA0377
+DFE106503B8401D4DB87F5402A3AC9A442FA060B0610A9524D530C7157C26B56
+AC970FCC1D5655FFFFA39246E6420CF97D08ADFB7B05822679BD40C638DDF0E7
+A97BFE8918B611A145AC965C203F1428812F9D340AF499B3A915B22BE798594E
+0F520109FC81E452180AE45B170FF999C5FC2761C6CECD8742A5A6FC97F16743
+AD4EFCC6572A6D3F3E4E330C5CB2FF6FEA48A5B64DD3DBE943BD9918D4A18E18
+CBCF598AEFBB6AB3CD2CBC9BFD6099272F6543F3E532E0E21E614BD2880B1023
+0AC234CB705827BF016DB84E00E8C255FDEFA0101A842929540B7B4AA8A089BD
+5EFF05B72356B6BC3727817823B5CDBB1B963103000D7F2A4E2A1472FC3E614B
+5CBCB6D6D784023173DEFEBFA8F9ED87EC1A0A9EE98CA59CFC964CF943DC683F
+E9E00DA718C4425A705A69D99988EC6F152525C790912C2E46A2381A569424AB
+54DF4798BC2D7E7A361E7991641D4B756CE2A7FF4A2848927092C59C2C4B8809
+E13AB84FB6B111E680D7FB9F2FFC2C5C66B0B501E4447C2E46C10E2F6124476F
+A140C404CFE2DC9E0199BF61E035CEB481D438139A9630934E541D261FFD2906
+4CAD99E20655FA746AFB81EDBB5601F5FD6B1D6832A01D585E2C55053F6A7378
+4DAACCAC7608DBDADAAE732D66B3E7F87E79756337C1A961E53A4651BE7C77F4
+038B89C87F650C54A2A90EB7F1D525BB353F33318551EE8D84A6A83C718EA5A4
+B2AC0F7306B1E095819B87015A90CA3ED739B09061782C28CDB36BA4BD5E5308
+5CBB70414E4112193DAC4A1FA30996327230D1E021F3CD8115E12D239D93FFDC
+B645910EB29E40D830E7BAF2DB255FD7C4E776557BB38157917D993EAC245837
+A3B515147043574157B8342D829C7228CCEA843ABC89D1785A9672A5923FC4CD
+2F3FF27E6FCACF84E2D3136CA2C0FD3EF1EE7354CD04C38B5FB874553646ED2D
+CEDF7E362EADD04B18051F20A8FB0DE18E152385B9D05F98A3A7EF177824E246
+455ABE69E2F700EB78185CCFC07E3B4C6FA301112528D977367D30D0D5D59EDE
+FAEB706DDC970A9E296236C725B2B55B09B9C336B8E23CBA5FB8692D56F33B03
+16294E5FC7FAA42E96395A57CE51CA8DDD77442F142E2E576B778373FB31C81C
+16840BB422CA827E30A81829648BDF1CA36700EA32AD888D097C1FE0A05B2D9F
+483AEE40269DF09AF0D1AD3DF80C45DDC59C2A03FBB661C79B87853737C6D352
+67626B657321B16198DBD6DB98A092F17878AE4698121E1006E53D6F9B0A3BE2
+3FB68828EF854A0CDBAA68B37ABCA6AD4A3D809AAF0BAB1697A81FE59C98C472
+1E33CD70A75A22C249DD11D76C2575ED3370A25892A16D2FD569CDA70C130770
+93F493C7D47D6F9A5424A7A542BAD726BFC3AB225DCEBBE6AC4BE006F8C7C0EA
+051424B08305BF2D951AB2986AAFEA04E078CA79B399585BFF0F1ADCED02E15B
+8765EB6BF6A8E4D0901EFF2C3AA104924EAD9637A35D877E0C51A3C37DA78CD4
+8643C8CE6DCDDE3F116A6C2390F948E5371BEB5AD2E87B41C5F01FB5C196C436
+6E256A88D082E3F46E4EFFBF605B2EFF1E9D9AD5EE4DDC323A137CD9451EDEE0
+06F7D82898D71FAF2362C0FCF1F726F97F820305B7CE20728CA08C63575083A7
+84BA28B7DE2B916432475510E274C12FFD1660A717F51DACFDF0A102D85224E0
+D6DB607BB72569ABB8A7BC6A10354CBBC01732EFE35B72062DF269CB25EA3DE6
+DC603B04C90C5912D2C38D7A5ACDCDD3F6F116D884F0D8C528F69D5D47BA20DB
+0A9E585C7D8CC3C324FE8A1DF150279F7E8FB43BDB720E624E5E9918032C02CD
+8020636AE5C38DA2484B7F4B34163E0D0A561B43B80E97746DC05C871AB620EC
+C5D47101ECED4A7E25F291184BEF8B80024AA7BB456C1B83A907652B331DEA34
+754226C39C6889EBEEFDAD081E01EF8FE47751987667836FDE4C8BB8A3FD4406
+1E643B4EA37BD370734D1A2DB17C2F4B74B4ED75098B433601F75A88C9A37A05
+CCB157EF6E32023BFA33973F3E655A4D58289136996FCFA61EEABD70791B6523
+1FF5DE71AB8A17038923118A5EED8D59C4C58D246FFA9BB26472346B40C8741F
+153D19CAFF20DD2A86C6DB89154A630FB1761929FC3F0448EE2F089C1C953E02
+905BA8DE75D101A982A611056C4B237596C10951DD98BAB838B742D3CF7DE718
+617DB72E5268583223E37E029D1C8FD3F1D21690151F76B76C52C725CA135CA2
+8666553E863CE188BFC9B99AF56AC2DB5BFEBEB12FB563D00244EB89E478657A
+98AF2E1223C1ABC25A4500E8119B86EB3C26B8A2F3505A3E5610F89B7C34E278
+53FA0A54A7F46D84A35EFEC36AE660A9E3C37EE3864106702DE5AF6C45ABF64B
+888A4A51323138CE77DB935576FE6B4824B6942DF80625098CE1B5B32B234F1D
+052A9D6039697118A9D793793775D8729D8574A2E74D7109C7B7E23BC5E2E87A
+CA8E019203952A4892544E1AD3D4EDD22971611358AB230E9A2ABDF00A288501
+A01B67C42B33F6B78C39562DB50F4663B922D9BE0D8A150311AE44B83C1F129F
+07337323E9A23211EE58E16043E127C6F9574019179F5635648A011266677B56
+B5D0201A4E1470B952A1579B57AB2329CD4C615395023C653F784D36B5EE3672
+10D191F29EA508CE84763CA4CE7C2C5229E38E241255A5CABCD6C7CBAED901A2
+CA53B5E24111921CDDF83578D33D463D70EDACA0E470D8F592303FB6BFD68B4D
+3F3BE2D7C5EC8BBF10C90111A33E205F2649B56E8443F6FAA6C721C66575AE12
+D4C40F1F46CF9E9DA675AB5D5840D938780CD9E4AD6736ECBEB6A4397613586F
+849B51048AC5F9405E03E14540A5E5582F61CDCDB57EDDF95A8C6705F433EE16
+648F098C03DED8A2AD94AE3DE202D629B9422ABB031318D48F2C85F9DBFA17BE
+84708AA3B6C9F81F4508F7A5CB7B6646AB8722ECF817877B77D473F577556DAA
+2BA0ABACFCF5DEA7498C47328E873019A956FBB250FD9D8885D21D368FA70CBD
+2709D2DA44EE7A9869963EAB48789541906DE49FAE785ECE1F18A22C7E7ED204
+9768896B78E9EB7A2BD6EEC1B26083940656ECD689D92942CC8AF05CBF82AED0
+B45A7DF4DD7AA6526FB597322560B9ED3087A65B5EEF1371C328A021411BFE3B
+D9B5088B2F1AAE381FFED52D2D1E02CD0DA78683E3B06171CBE94BE9760005D7
+135893D7CC2DB097F6AC664D9594CF1C650F84DA80D2EDE04802DBA33CE3DAFE
+EB7A37E8AEFA4FDA6252FF21E8673DD98E67124D5DBC7BACF361E57077B71939
+C1D1FB923E4E35C075CD1BCBE0E80DAEA1320D55B43EAB45D9B26C366B278782
+7519FDC482D98839BF0DF2E7C3A56A1C1A3FC0E57A75CA414F6536C1FE8EB7A0
+4ADFEE3BEDA0F53BE8CF5F64230784A797133E8CD46BCCB3BF38BCE38A73CCE2
+9E073ADE792F7128231DDD1F63E6156ADB2609C200837C2E8A2D93D2A7BC9171
+050C709A71E44E32B1B03C92EB5CF1D3BAB1C38E027DC4ED9AED633D98CD7486
+3F773ACF8AE332631CF2ABE6D606607593FE862ADE31803964E3F4DC3CE3A271
+C76BDD95C87CDB3B87BC26FC7A16D567EEC62E6FF0D471B4853DB8A94D4CACF8
+843824F818083F10E88D52FC4253E8203292CB40F1414AE7E51DD7347007C342
+CD70E8E9F2D2A13D71213B841DDEAAB208AD9EA644591C15DEB084165F9DF24B
+B91D3BBEEC2E34E38EF16A0C3F00700A7BDCBBFED2EC0D09601AD6538288DB50
+3478B051B5E16B604A0341FE621A58718D960D699D3FAD284310DCF54EB13175
+19A75A539EE98E804AEA24689D3540F0F12951A3C01FACCE9A7BAF4D0DAFA946
+FF65A4D2A4C39969607272C6886F44E90ABE27CA3A1F12A29D9B32E60E8E34F0
+17C5FE43D0E69A99A922D98909B2BBCD145E59A5E7F5426B3988F73B09A525F6
+8BD4915663C1301323180E760BE81CB874B020FDA3AE63340E4261E4F3E4949B
+CC0966BDC4426190BE9F5D77F76A72AD925662E5FE1CEF9CCAB68F0BD33DA003
+F11EB91AC4502FBD6AE48DA0F9D07C35B96B103E379B8A83A05FE728F1716194
+1F650F75BEBADB2E3810388F3E2DC7B19F1BA9E32925F2FD9F19F4E8701F3E4E
+4069125D7C401144740691E7A460021A47B1E27997FC1DDABEC5BD0EE0B20194
+2D579C7D6727AA124083242BDA46D8E116E2751C5F298851A62B60AEBE82A929
+9B9F2492BA35690D1EFD16215B8EF14E7A3803B93C28FA41D971B05B6AF3B593
+E74AD1E68A5FCE12A86E63B78BFEA87D3949FD164F12277A4688BE96356791CB
+8671C49365608F3EDECC109321AF92B4C29CAF073DA3A7D73E913D0D83FAC5EB
+BD884D4C686056404DAAAD6F82F94F803FA1FB0DD8908D1DF08FB87A8BB83027
+04DE0CBB1C6FEB6B517FBD7CF065120079E608CE41893C2BC96A347826CCDFD5
+C69E161217F2127A59F1A6F22037641613F191F22D5B4CDCBCC2EE5615623404
+ABA7BE6C5FE475481615B2AC1A2412E54688DD21E44CC9AF5F16E634AFCA389C
+4D740B7B51BB141BFAD1080E7C726C1606A28ED492E6BDE9F800EFACD1513909
+84E98CEB6A0B7A2A6F3E1D1DCC3B2552795E0932673E59ECC56DDD37A1D52BA6
+C3F0E905978AB568941A163F4CE3AAB5C5B16F86016EC47BA6F3F7AAAA77C3B6
+09C8C3ABDB6D514A76ECD37C37AA88B5860630B3406B494F7725975596F84777
+D9CF48686EC9C5DBCC1D78513F591C7C10AB9D153B3D41426B7BF668B0D04503
+56BCB686258462C1DC61095724B9F3312316262FD7C1AEC6E54DE7E5A7BD8EFF
+035299B8FD8A4A7B0F51404F4A760F4D8B4C0FB7A32FA4B2383AB6E9C78FDEDB
+FE6A5788D38A6701B123630C2A6D820A684166FBBC83DB17069494FBD411B333
+CB37E2491C5BD035A33867A6D3A3D420CC31ACF43AA07182CAAE67E40EC63663
+B678F71D4C6E0EC3A0AAF904CD3AA66E0DE5E3CDE049E94249B39A1C06E3CE9A
+F974B2484BB2CDA14282B9511E505B3C89F9C802218AE40D1A7541335C5736DD
+CD565D4B9F4CC78F3A393737EDB4FBD0DA299E21CCFEBA5478EEF013F0552A8B
+0BB11FF46CCDB784E8BDCF730A16363E66572049E42C695886EAB42A9AD9094C
+B635DF4B5B9BD9B9AE8455DFA3EEFC77653190F9A8B1E93B7281C2A21EA7DDA9
+33484745BDF7E3DD63C7AC66C286C9A5A698A5E4D7A91710B7FF943FB23609B6
+4B442F83CB795788FAB5E9CF3F75D5487DA26170E4561C7941C910B088C3B86D
+F844B0F340CF82786A3FCF347048463EBD2006281A816627065DDA6CD4D3AC5E
+2024BC96C7D896381BBB567951E7A1F29D4E95351298B000D29E5F3D0448CB5A
+CFDAE1BADE9403B90371C3A07D208948AFA022A69C519434B6813086ADF518D5
+88E0B92072A44BA1B3EBB630A13B7AB90992E85B6D67361C8D96F3E0D826FF37
+17B67E4B1EB7BADFD98D7F4FD17BECE740ADF13C141EBF0A91CB105DABB32FE0
+55086D56A0D358841D15FD349E6B95512E4EDF4C430216FF85C2ABE995E4B40A
+A6044CC8820AD885C07E052B3F91C2E9A1D163BFFD210F7BE95B923E2500DB50
+2075106DB541C267BD450B25B670CE80BCD068D4DBFF2D82634175B61FBD3BC3
+406131F44C7D6F18D375D1F2270829DDF29DC14DBB58A30AC193245D18DE91F8
+AB88AB548D8138605BB5A50073295534E314366E26665AE70482B890E4101D6B
+60E4F3B37ABCA1346DAAE8FDB8DD9C832EFF3E73BA470E2BACE7B8515CB43388
+C27AF99FF9322175CF8D4947E6B3846AFF5163E972156847F58A66660EC8A3A6
+5FB47C9F637B4CBB4C73B6A080B0CF6FD1E9665E92032540570FFCC747C67C50
+822811AADC404BC7ECD1673E8AA6C3A2F1D82F39430B58C29145E2F1B679C46E
+94EDC711883F1E4EA84117A54757E8895A40401A26E1437B39A2F65CAADD6E02
+D71FA8AF7453668DC613F326A3344F74AD7AC67569AF399385500ABDA5EDD3BA
+343CC5EDD4B558467626850E752B9959FEF1454E53E7A3DCBC2255AD8F6AB4FE
+894455118A61C58840CB68A925ACCAD75CEACE863D806916228F0614191A1CD5
+DC9BAE256018615AA3725834519449B0A88B4F396654E74099C007930ADB1327
+DD119BF799FE3B0B223E1EDA04FE2DA7A1C879143E1C33B6C6344F4BA033AD6F
+8E88C33DEF1977796B454BAB2494C930F492A518E8198C708A75FFEF8C49C324
+A718AB59B889DED521229E741FFE53F98EBE88B0405AD523254FD3FA4BBE96DA
+DA1C27C1C979A0DD4E61C3B1F4C4DE01E42F1C4435EECFC02D97994BC8AF5270
+E7CB1458D76ED0229C5FFB4A23B8716018F9050970895D51722CDE8F2EA3D947
+DFF374D84915D5C5D16463A6FFCD079D1ED416C4347BF831FF0C4ADFB61295DC
+4D5785BB0852BF472CFC97EC174491CAF961AB90629F055E75DAA6D9898E8653
+5BCF379816CAE46FEA62E7BE8E9B953466E51828172C4DBD0E1BBAD1CE28B5B1
+02B3E36403BE80B49A47446A6677FCED438F01D60EB10F478C89528FA337D0D8
+88D3FC123C076507ACDAF783A9A6E24ED73BF24B6E0F11C13E532DE5F70EB02A
+60651FC2E263002D3986B7B20CC2AA08330B9FC2E26765CD52266969A86EE30E
+71E0B41B6C1C6DA423D3A7E1553D2FAF26EF40DC183099322D362E4965695C52
+9FC3E5BD7ABD743CDCB717DB10372A722A39CE53FABB454EADE2179C4CBFC016
+A8E893C28EF549CA1692C8D8ADFC471DCCDE266FB4E97A1F3035801F3F034D44
+AE6ADA0192657E8078A1D27420093FEBA111333314658021B90DA4E7A8D4B829
+F1795501020D5FF0AD25584C1D47BE08ED6CE96278050BA67680A3B973613647
+A93FAEC756FC253B3693FA2D6491B276EF45751EFB306961788E7C15297A5822
+AFC5A2DABD0DBBFF0BE135267EA6B9D1B4E4760ED14895FFE1F8C3F564830001
+EFA901B8442BD2D98561BAB9A0FD939E0F856E4D2EB04A9A4496704109B8A84C
+EA06AB0999427B3B1BE776004AE906D0F22159C051D88CF573A0255D99B56781
+CF326CD11919AA40B096769CD6D0ADF3ACEC7957621084ACF21AF1F265416628
+86B67FCBDE9370D4F5C6F5CC67EBB0A2727E074090DBCA459AFA1A4778AED4C9
+AE5400775223E684BFCB
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -3837,114 +6596,105 @@ EC544A68134496A9BD0B87D83AF6FDA3CB62FBF0B54FACE1F0E6A2D84B467AFF
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
+{restore}if
%%EndFont
TeXDict begin 40258431 52099146 1000 600 600 (readline.dvi)
@start /Fa 197[21 58[{}1 74.7198 /CMMI9 rf /Fb 133[34
41 41 55 41 43 30 30 30 41 43 38 43 64 21 41 1[21 43
38 23 34 43 34 43 38 39[38 38 38 38 38 38 38 38 38 38
2[26 21 30[43 43 12[{}39 74.7198 /CMR9 rf /Fc 134[39
-39 2[39 39 39 39 2[39 39 39 39 2[39 39 2[39 3[39 19[39
-27[39 39 2[39 45[{}18 74.7198 /CMSLTT10 rf /Fd 167[62
-3[60 46 2[57 1[62 76 52 1[43 1[62 65 54 1[63 60 67[{}13
-83.022 /CMR10 rf /Fe 129[39 39 39 39 39 39 39 39 39 39
+39 2[39 39 39 39 2[39 39 39 39 2[39 39 1[39 39 39 2[39
+19[39 27[39 39 2[39 45[{}20 74.7198 /CMSLTT10 rf /Fd
+167[62 3[60 46 2[57 1[62 76 52 1[43 1[62 65 54 1[63 60
+67[{}13 83.022 /CMR10 rf /Fe 129[39 39 39 39 39 39 39
39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 39
-39 39 39 39 1[39 39 39 1[39 39 39 39 39 39 39 39 39 39
-39 39 39 39 1[39 39 39 39 39 39 39 39 39 39 39 39 39
-39 39 39 39 3[39 1[39 39 39 39 39 39 39 39 39 39 39 39
-39 39 39 39 1[39 39 39 33[{}86 74.7198 /CMTT9 rf /Ff
-214[35 35 40[{}2 90.9091 /CMSS10 rf /Fg 133[52 52 52
-52 52 52 52 52 52 52 52 52 52 52 52 52 1[52 52 52 52
-52 52 52 52 52 1[52 18[52 52 1[52 2[52 52 26[52 42[{}32
-99.6264 /CMTT10 rf /Fh 134[65 65 89 65 68 48 48 50 1[68
-61 68 102 34 65 1[34 68 61 37 56 68 55 68 60 7[93 1[127
-93 94 85 68 92 3[96 116 74 96 1[46 96 1[77 81 1[89 87
-93 7[61 61 61 61 61 61 61 61 61 61 1[34 46[{}52 109.091
-/CMBX12 rf /Fi 134[48 48 66 48 51 35 36 36 48 51 45 51
-76 25 48 1[25 51 45 28 40 51 40 51 45 9[93 1[68 66 51
-67 1[62 71 68 83 57 71 1[33 68 1[59 62 69 66 64 68 15[45
-45 1[25 30 25 1[45 28[51 51 12[{}51 90.9091 /CMSL10 rf
-/Fj 134[44 1[60 42 49 30 37 38 1[46 46 51 74 23 2[28
-1[42 1[42 46 42 1[46 84[51 12[{}19 90.9091 /CMTI10 rf
-/Fk 134[48 48 48 48 48 48 48 48 48 48 48 48 48 48 48
-48 48 1[48 48 48 48 48 48 48 1[48 2[48 14[48 48 1[48
-1[48 2[48 48 48 17[48 48 2[48 5[48 39[{}37 90.9091 /CMSLTT10
-rf /Fl 135[56 2[56 1[42 2[51 58 56 4[27 1[58 49 51 1[54
-1[56 97[{}12 90.9091 /CMCSC10 rf /Fm 197[25 58[{}1 90.9091
-/CMMI10 rf /Fn 197[33 58[{}1 119.552 /CMMI12 rf /Fo 135[85
-117 1[90 63 64 66 1[90 81 90 134 45 2[45 90 81 49 74
-90 72 90 78 10[122 124 112 1[120 1[110 1[126 1[97 2[60
-1[127 101 106 124 117 1[122 14[81 81 49[{}36 143.462
-/CMBX12 rf /Fp 242[91 13[{}1 90.9091 /CMSY10 rf /Fq 134[71
-71 97 71 75 52 53 55 1[75 67 75 112 37 2[37 75 67 41
-61 75 60 75 65 7[102 1[139 102 103 94 75 100 101 92 101
-105 128 81 105 1[50 105 106 85 88 103 97 96 102 6[37
-1[67 67 67 67 67 67 67 67 2[37 1[37 44[{}56 119.552 /CMBX12
-rf /Fr 129[48 48 48 48 48 48 48 48 48 48 48 48 48 48
+39 39 39 39 39 39 39 1[39 39 39 1[39 39 39 39 39 39 39
+39 39 39 39 39 39 39 1[39 39 39 39 39 39 39 39 39 39
+39 39 39 39 39 39 39 3[39 1[39 39 39 39 39 39 39 39 39
+39 39 39 39 39 39 39 1[39 39 39 33[{}86 74.7198 /CMTT9
+rf /Ff 214[35 35 40[{}2 90.9091 /CMSS10 rf /Fg 133[52
+52 52 52 52 52 52 52 52 52 52 52 52 52 52 52 1[52 52
+52 52 52 52 52 52 52 1[52 18[52 52 1[52 2[52 52 9[52
+16[52 42[{}33 99.6264 /CMTT10 rf /Fh 134[65 65 89 65
+68 48 48 50 1[68 61 68 102 34 65 1[34 68 61 37 56 68
+55 68 60 7[93 1[127 93 94 85 68 92 3[96 116 74 96 1[46
+96 1[77 81 1[89 87 93 7[61 61 61 61 61 61 61 61 61 61
+1[34 46[{}52 109.091 /CMBX12 rf /Fi 134[48 48 66 48 51
+35 36 36 48 51 45 51 76 25 48 1[25 51 45 28 40 51 40
+51 45 9[93 1[68 66 51 67 1[62 71 68 83 57 71 1[33 68
+1[59 62 69 66 64 68 15[45 45 1[25 30 25 1[45 28[51 51
+12[{}51 90.9091 /CMSL10 rf /Fj 134[44 1[60 42 49 30 37
+38 1[46 46 51 74 23 2[28 1[42 1[42 46 42 1[46 84[51 12[{}19
+90.9091 /CMTI10 rf /Fk 134[48 48 48 48 48 48 48 48 48
+48 48 48 48 48 48 48 48 1[48 48 48 48 48 48 48 1[48 2[48
+14[48 48 1[48 1[48 2[48 48 48 17[48 48 2[48 5[48 39[{}37
+90.9091 /CMSLTT10 rf /Fl 135[56 2[56 1[42 2[51 58 56
+4[27 1[58 49 51 1[54 1[56 97[{}12 90.9091 /CMCSC10 rf
+/Fm 197[25 58[{}1 90.9091 /CMMI10 rf /Fn 197[33 58[{}1
+119.552 /CMMI12 rf /Fo 135[85 117 1[90 63 64 66 1[90
+81 90 134 45 2[45 90 81 49 74 90 72 90 78 10[122 124
+112 1[120 1[110 1[126 1[97 2[60 1[127 101 106 124 117
+1[122 14[81 81 49[{}36 143.462 /CMBX12 rf /Fp 242[91
+13[{}1 90.9091 /CMSY10 rf /Fq 134[71 71 97 71 75 52 53
+55 1[75 67 75 112 37 2[37 75 67 41 61 75 60 75 65 7[102
+1[139 102 103 94 75 100 101 92 101 105 128 81 105 1[50
+105 106 85 88 103 97 96 102 6[37 67 1[67 67 67 67 67
+67 67 67 1[37 1[37 44[{}57 119.552 /CMBX12 rf /Fr 129[48
+48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48
+48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48
+48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 1[48 48
+48 48 48 48 48 48 48 48 48 48 48 48 48 48 1[48 48 1[48
48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48
-1[48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48
-48 48 1[48 48 48 48 48 48 48 48 48 48 48 48 48 48 48
-48 1[48 48 1[48 48 1[48 48 48 48 48 48 48 48 48 48 48
-48 48 48 48 48 48 48 33[{}89 90.9091 /CMTT10 rf /Fs 131[91
-45 40 48 48 66 48 51 35 36 36 48 51 45 51 76 25 48 28
-25 51 45 28 40 51 40 51 45 25 2[25 45 25 56 68 68 93
-68 68 66 51 67 71 62 71 68 83 57 71 47 33 68 71 59 62
-69 66 64 68 5[25 25 45 45 45 45 45 45 45 45 45 45 45
-25 30 25 2[35 35 25 2[45 1[45 19[76 51 51 53 11[{}83
-90.9091 /CMR10 rf /Ft 134[102 6[79 3[108 1[54 2[54 3[88
-108 1[108 94 11[149 2[144 3[151 1[116 4[152 71[{}14 172.154
-/CMBX12 rf end
+48 48 33[{}91 90.9091 /CMTT10 rf /Fs 131[91 45 40 48
+48 66 48 51 35 36 36 48 51 45 51 76 25 48 28 25 51 45
+28 40 51 40 51 45 25 2[25 45 25 56 68 68 93 68 68 66
+51 67 71 62 71 68 83 57 71 47 33 68 71 59 62 69 66 64
+68 71 4[25 25 45 45 45 45 45 45 45 45 45 45 45 25 30
+25 2[35 35 25 2[45 1[45 19[76 51 51 53 11[{}84 90.9091
+/CMR10 rf /Ft 134[102 6[79 3[108 1[54 2[54 3[88 108 1[108
+94 11[149 2[144 3[151 1[116 4[152 71[{}14 172.154 /CMBX12
+rf end
%%EndProlog
%%BeginSetup
%%Feature: *Resolution 600dpi
TeXDict begin
%%BeginPaperSize: Letter
-letter
+/setpagedevice where
+{ pop << /PageSize [612 792] >> setpagedevice }
+{ /letter where { pop letter } if }
+ifelse
%%EndPaperSize
end
%%EndSetup
%%Page: 1 1
TeXDict begin 1 0 bop 150 1318 a Ft(GNU)65 b(Readline)g(Library)p
-150 1418 3600 34 v 1873 1515 a Fs(Edition)30 b(6.2,)i(for)e
-Fr(Readline)e(Library)h Fs(V)-8 b(ersion)31 b(6.2.)3118
-1623 y(Septem)m(b)s(er)f(2010)150 4935 y Fq(Chet)45 b(Ramey)-11
+150 1418 3600 34 v 1873 1515 a Fs(Edition)30 b(6.3,)i(for)e
+Fr(Readline)e(Library)h Fs(V)-8 b(ersion)31 b(6.3.)3218
+1623 y(Jan)m(uary)f(2014)150 4935 y Fq(Chet)45 b(Ramey)-11
b(,)46 b(Case)g(W)-11 b(estern)46 b(Reserv)l(e)g(Univ)l(ersit)l(y)150
5068 y(Brian)f(F)-11 b(o)l(x,)45 b(F)-11 b(ree)45 b(Soft)l(w)l(are)h(F)
-11 b(oundation)p 150 5141 3600 17 v eop end
%%Page: 2 2
-TeXDict begin 2 1 bop 150 3024 a Fs(This)24 b(man)m(ual)h(describ)s(es)
-g(the)g(GNU)g(Readline)h(Library)e(\(v)m(ersion)i(6.2,)h(Septem)m(b)s
-(er)d(6)i(2010\),)i(a)d(library)150 3133 y(whic)m(h)39
+TeXDict begin 2 1 bop 150 4413 a Fs(This)32 b(man)m(ual)h(describ)s(es)
+f(the)h(GNU)g(Readline)g(Library)f(\(v)m(ersion)i(6.3,)g(6)f(Jan)m
+(uary)g(2014\),)i(a)e(library)150 4523 y(whic)m(h)39
b(aids)g(in)g(the)g(consistency)h(of)g(user)e(in)m(terface)j(across)f
(discrete)g(programs)e(whic)m(h)h(pro)m(vide)h(a)150
-3243 y(command)30 b(line)h(in)m(terface.)150 3377 y(Cop)m(yrigh)m(t)602
-3374 y(c)577 3377 y Fp(\015)f Fs(1988{2011)35 b(F)-8
-b(ree)31 b(Soft)m(w)m(are)h(F)-8 b(oundation,)31 b(Inc.)150
-3512 y(P)m(ermission)h(is)h(gran)m(ted)g(to)f(mak)m(e)i(and)d
-(distribute)h(v)m(erbatim)h(copies)g(of)f(this)g(man)m(ual)h(pro)m
-(vided)f(the)150 3621 y(cop)m(yrigh)m(t)g(notice)f(and)f(this)g(p)s
-(ermission)g(notice)h(are)g(preserv)m(ed)f(on)h(all)g(copies.)390
-3756 y(P)m(ermission)k(is)h(gran)m(ted)f(to)h(cop)m(y)-8
-b(,)38 b(distribute)d(and/or)g(mo)s(dify)f(this)h(do)s(cumen)m(t)g
-(under)390 3866 y(the)j(terms)g(of)g(the)g(GNU)h(F)-8
-b(ree)39 b(Do)s(cumen)m(tation)h(License,)g(V)-8 b(ersion)39
-b(1.3)g(or)f(an)m(y)g(later)390 3975 y(v)m(ersion)28
-b(published)d(b)m(y)j(the)f(F)-8 b(ree)29 b(Soft)m(w)m(are)f(F)-8
-b(oundation;)30 b(with)d(no)g(In)m(v)-5 b(arian)m(t)28
-b(Sections,)390 4085 y(with)i(the)h(F)-8 b(ron)m(t-Co)m(v)m(er)33
-b(texts)e(b)s(eing)g(\\A)g(GNU)g(Man)m(ual",)h(and)e(with)g(the)h(Bac)m
-(k-Co)m(v)m(er)390 4194 y(T)-8 b(exts)33 b(as)g(in)f(\(a\))h(b)s(elo)m
-(w.)47 b(A)33 b(cop)m(y)g(of)f(the)h(license)g(is)g(included)e(in)h
-(the)h(section)g(en)m(titled)390 4304 y(\\GNU)e(F)-8
-b(ree)32 b(Do)s(cumen)m(tation)g(License".)390 4438 y(\(a\))f(The)f
-(FSF's)g(Bac)m(k-Co)m(v)m(er)j(T)-8 b(ext)31 b(is:)41
-b(Y)-8 b(ou)31 b(are)f(free)h(to)f(cop)m(y)h(and)f(mo)s(dify)f(this)h
-(GNU)390 4548 y(man)m(ual.)41 b(Buying)30 b(copies)h(from)e(GNU)i
-(Press)f(supp)s(orts)e(the)i(FSF)g(in)g(dev)m(eloping)h(GNU)390
-4658 y(and)f(promoting)g(soft)m(w)m(are)i(freedom.")150
-4902 y(Published)d(b)m(y)h(the)h(F)-8 b(ree)31 b(Soft)m(w)m(are)h(F)-8
-b(oundation)150 5011 y(59)31 b(T)-8 b(emple)31 b(Place,)h(Suite)e(330,)
-150 5121 y(Boston,)i(MA)e(02111-1307)150 5230 y(USA)p
-eop end
+4633 y(command)30 b(line)h(in)m(terface.)150 4767 y(Cop)m(yrigh)m(t)602
+4764 y(c)577 4767 y Fp(\015)f Fs(1988{2014)35 b(F)-8
+b(ree)31 b(Soft)m(w)m(are)h(F)-8 b(oundation,)31 b(Inc.)390
+4902 y(P)m(ermission)21 b(is)f(gran)m(ted)h(to)g(cop)m(y)-8
+b(,)24 b(distribute)c(and/or)h(mo)s(dify)e(this)i(do)s(cumen)m(t)f
+(under)f(the)390 5011 y(terms)25 b(of)h(the)f(GNU)h(F)-8
+b(ree)27 b(Do)s(cumen)m(tation)g(License,)g(V)-8 b(ersion)26
+b(1.3)g(or)f(an)m(y)h(later)g(v)m(ersion)390 5121 y(published)43
+b(b)m(y)h(the)h(F)-8 b(ree)46 b(Soft)m(w)m(are)g(F)-8
+b(oundation;)53 b(with)44 b(no)g(In)m(v)-5 b(arian)m(t)46
+b(Sections,)j(no)390 5230 y(F)-8 b(ron)m(t-Co)m(v)m(er)31
+b(T)-8 b(exts,)30 b(and)f(no)f(Bac)m(k-Co)m(v)m(er)k(T)-8
+b(exts.)41 b(A)29 b(cop)m(y)h(of)f(the)g(license)h(is)f(included)390
+5340 y(in)h(the)h(section)g(en)m(titled)h(\\GNU)f(F)-8
+b(ree)32 b(Do)s(cumen)m(tation)g(License".)p eop end
%%Page: -1 3
TeXDict begin -1 2 bop 3725 -116 a Fs(i)150 299 y Fo(T)-13
b(able)53 b(of)h(Con)l(ten)l(ts)150 641 y Fq(1)135 b(Command)45
@@ -3982,7 +6732,7 @@ f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)47
b Fs(4)399 1764 y(1.3.2)93 b(Conditional)31 b(Init)f(Constructs)e
Fm(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)58
-b Fs(10)399 1874 y(1.3.3)93 b(Sample)30 b(Init)g(File)14
+b Fs(11)399 1874 y(1.3.3)93 b(Sample)30 b(Init)g(File)14
b Fm(:)j(:)e(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)44 b Fs(11)275 1983 y(1.4)92
@@ -4040,10 +6790,10 @@ h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)53 b Fs(25)275
3897 y(2.4)92 b(Readline)31 b(Con)m(v)m(enience)g(F)-8
b(unctions)14 b Fm(:)i(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)
-43 b Fs(29)399 4007 y(2.4.1)93 b(Naming)31 b(a)g(F)-8
+43 b Fs(30)399 4007 y(2.4.1)93 b(Naming)31 b(a)g(F)-8
b(unction)13 b Fm(:)j(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
-h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)43 b Fs(29)399 4116 y(2.4.2)93
+h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)43 b Fs(30)399 4116 y(2.4.2)93
b(Selecting)32 b(a)e(Keymap)21 b Fm(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h
(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)51 b
@@ -4053,70 +6803,73 @@ b(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)56 b Fs(31)399 4335 y(2.4.4)93
b(Asso)s(ciating)32 b(F)-8 b(unction)31 b(Names)g(and)e(Bindings)18
b Fm(:)d(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)47
-b Fs(32)399 4445 y(2.4.5)93 b(Allo)m(wing)32 b(Undoing)19
+b Fs(33)399 4445 y(2.4.5)93 b(Allo)m(wing)32 b(Undoing)19
b Fm(:)14 b(:)i(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
-h(:)f(:)h(:)f(:)g(:)h(:)48 b Fs(33)399 4555 y(2.4.6)93
+h(:)f(:)h(:)f(:)g(:)h(:)48 b Fs(34)399 4555 y(2.4.6)93
b(Redispla)m(y)21 b Fm(:)16 b(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h
-(:)f(:)51 b Fs(34)399 4664 y(2.4.7)93 b(Mo)s(difying)30
+(:)f(:)51 b Fs(35)399 4664 y(2.4.7)93 b(Mo)s(difying)30
b(T)-8 b(ext)28 b Fm(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)57 b
-Fs(35)399 4774 y(2.4.8)93 b(Character)31 b(Input)13 b
+Fs(36)399 4774 y(2.4.8)93 b(Character)31 b(Input)13 b
Fm(:)h(:)h(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)h(:)f(:)43 b Fs(36)399 4883 y(2.4.9)93
b(T)-8 b(erminal)30 b(Managemen)m(t)8 b Fm(:)18 b(:)e(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)38 b
-Fs(36)399 4993 y(2.4.10)93 b(Utilit)m(y)33 b(F)-8 b(unctions)15
+Fs(37)399 4993 y(2.4.10)93 b(Utilit)m(y)33 b(F)-8 b(unctions)15
b Fm(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
-(:)h(:)f(:)g(:)h(:)f(:)45 b Fs(37)399 5103 y(2.4.11)93
+(:)h(:)f(:)g(:)h(:)f(:)45 b Fs(38)399 5103 y(2.4.11)93
b(Miscellaneous)33 b(F)-8 b(unctions)15 b Fm(:)g(:)h(:)f(:)g(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
-(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)44 b Fs(38)399 5212
+(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)44 b Fs(39)399 5212
y(2.4.12)93 b(Alternate)32 b(In)m(terface)17 b Fm(:)g(:)e(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)47
-b Fs(39)399 5322 y(2.4.13)93 b(A)31 b(Readline)g(Example)24
+b Fs(40)399 5322 y(2.4.13)93 b(A)31 b(Readline)g(Example)24
b Fm(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
g(:)h(:)53 b Fs(40)p eop end
%%Page: -2 4
-TeXDict begin -2 3 bop 3699 -116 a Fs(ii)275 83 y(2.5)92
-b(Readline)31 b(Signal)f(Handling)10 b Fm(:)15 b(:)h(:)f(:)h(:)f(:)g(:)
-h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
-(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)39
-b Fs(41)275 193 y(2.6)92 b(Custom)29 b(Completers)18
+TeXDict begin -2 3 bop 3699 -116 a Fs(ii)399 83 y(2.4.14)93
+b(Alternate)32 b(In)m(terface)g(Example)10 b Fm(:)15
+b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)40 b Fs(42)275
+193 y(2.5)92 b(Readline)31 b(Signal)f(Handling)10 b Fm(:)15
+b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
+g(:)h(:)39 b Fs(43)275 302 y(2.6)92 b(Custom)29 b(Completers)18
b Fm(:)e(:)g(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
-(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)48 b Fs(43)399 302
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)48 b Fs(46)399 412
y(2.6.1)93 b(Ho)m(w)31 b(Completing)g(W)-8 b(orks)24
b Fm(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
-53 b Fs(43)399 412 y(2.6.2)93 b(Completion)31 b(F)-8
+53 b Fs(46)399 521 y(2.6.2)93 b(Completion)31 b(F)-8
b(unctions)19 b Fm(:)d(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
-h(:)f(:)h(:)f(:)g(:)49 b Fs(44)399 521 y(2.6.3)93 b(Completion)31
+h(:)f(:)h(:)f(:)g(:)49 b Fs(47)399 631 y(2.6.3)93 b(Completion)31
b(V)-8 b(ariables)9 b Fm(:)17 b(:)e(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
-f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)39 b Fs(45)399 631 y(2.6.4)93
+f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)39 b Fs(48)399 741 y(2.6.4)93
b(A)30 b(Short)g(Completion)h(Example)c Fm(:)15 b(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
-h(:)f(:)g(:)h(:)56 b Fs(49)150 873 y Fq(App)t(endix)44
+h(:)f(:)g(:)h(:)56 b Fs(52)150 983 y Fq(App)t(endix)44
b(A)160 b(GNU)45 b(F)-11 b(ree)45 b(Do)t(cumen)l(tation)h(License)446
-1006 y Fn(:)20 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)
+1116 y Fn(:)20 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)
h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)72
-b Fq(58)150 1276 y(Concept)45 b(Index)18 b Fn(:)i(:)f(:)g(:)h(:)f(:)h
+b Fq(61)150 1386 y(Concept)45 b(Index)18 b Fn(:)i(:)f(:)g(:)h(:)f(:)h
(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)63
-b Fq(66)150 1546 y(F)-11 b(unction)44 b(and)h(V)-11 b(ariable)45
+b Fq(69)150 1655 y(F)-11 b(unction)44 b(and)h(V)-11 b(ariable)45
b(Index)29 b Fn(:)19 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h
-(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)73 b Fq(67)p eop end
+(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)73 b Fq(70)p eop end
%%Page: 1 5
TeXDict begin 1 4 bop 150 -116 a Fs(Chapter)30 b(1:)41
b(Command)29 b(Line)i(Editing)2153 b(1)150 299 y Fo(1)80
@@ -4395,13 +7148,13 @@ g Fi(inputrc)49 b Fs(\014le,)g(con)m(v)m(en)m(tionally)e(in)d(his)g
(home)150 1924 y(directory)-8 b(.)39 b(The)23 b(name)h(of)f(this)h
(\014le)f(is)g(tak)m(en)i(from)e(the)g(v)-5 b(alue)24
b(of)g(the)f(en)m(vironmen)m(t)h(v)-5 b(ariable)25 b
-Fr(INPUTRC)p Fs(.)150 2033 y(If)34 b(that)g(v)-5 b(ariable)35
-b(is)g(unset,)g(the)f(default)g(is)g(`)p Fr(~/.inputrc)p
-Fs('.)50 b(If)34 b(that)h(\014le)f(do)s(es)g(not)g(exist)h(or)f(cannot)
-150 2143 y(b)s(e)c(read,)g(the)h(ultimate)g(default)g(is)f(`)p
-Fr(/etc/inputrc)p Fs('.)275 2272 y(When)f(a)h(program)f(whic)m(h)h
-(uses)f(the)h(Readline)g(library)f(starts)h(up,)f(the)h(init)g(\014le)f
-(is)h(read,)g(and)f(the)150 2381 y(k)m(ey)i(bindings)e(are)i(set.)275
+Fr(INPUTRC)p Fs(.)150 2033 y(If)30 b(that)g(v)-5 b(ariable)31
+b(is)f(unset,)g(the)h(default)f(is)g Fr(~/.inputrc)p
+Fs(.)38 b(If)30 b(that)g(\014le)h(do)s(es)e(not)i(exist)g(or)f(cannot)h
+(b)s(e)150 2143 y(read,)g(the)f(ultimate)i(default)e(is)h
+Fr(/etc/inputrc)p Fs(.)275 2272 y(When)e(a)h(program)f(whic)m(h)h(uses)
+f(the)h(Readline)g(library)f(starts)h(up,)f(the)h(init)g(\014le)f(is)h
+(read,)g(and)f(the)150 2381 y(k)m(ey)i(bindings)e(are)i(set.)275
2510 y(In)26 b(addition,)i(the)f Fr(C-x)i(C-r)d Fs(command)h(re-reads)g
(this)f(init)h(\014le,)h(th)m(us)f(incorp)s(orating)g(an)m(y)g(c)m
(hanges)150 2620 y(that)k(y)m(ou)g(migh)m(t)g(ha)m(v)m(e)g(made)g(to)g
@@ -4412,7 +7165,7 @@ b(lines)h(are)150 3065 y(ignored.)72 b(Lines)41 b(b)s(eginning)f(with)h
(a)g(`)p Fr(#)p Fs(')g(are)h(commen)m(ts.)73 b(Lines)41
b(b)s(eginning)f(with)g(a)i(`)p Fr($)p Fs(')f(indicate)150
3174 y(conditional)i(constructs)e(\(see)i(Section)f(1.3.2)h
-([Conditional)f(Init)f(Constructs],)j(page)f(10\).)74
+([Conditional)f(Init)f(Constructs],)j(page)f(11\).)74
b(Other)150 3284 y(lines)31 b(denote)g(v)-5 b(ariable)31
b(settings)g(and)f(k)m(ey)h(bindings.)150 3432 y(V)-8
b(ariable)32 b(Settings)630 3542 y(Y)-8 b(ou)41 b(can)g(mo)s(dify)e
@@ -4420,17 +7173,17 @@ b(ariable)32 b(Settings)630 3542 y(Y)-8 b(ou)41 b(can)g(mo)s(dify)e
(the)g(v)-5 b(alues)41 b(of)630 3651 y(v)-5 b(ariables)34
b(in)f(Readline)i(using)e(the)g Fr(set)g Fs(command)g(within)g(the)h
(init)g(\014le.)50 b(The)33 b(syn)m(tax)630 3761 y(is)d(simple:)870
-3890 y Fr(set)47 b Fk(variable)56 b(value)630 4019 y
-Fs(Here,)29 b(for)e(example,)h(is)g(ho)m(w)f(to)h(c)m(hange)g(from)f
-(the)g(default)h(Emacs-lik)m(e)h(k)m(ey)f(binding)e(to)630
-4128 y(use)k Fr(vi)g Fs(line)h(editing)g(commands:)870
-4257 y Fr(set)47 b(editing-mode)d(vi)630 4386 y Fs(V)-8
-b(ariable)36 b(names)f(and)g(v)-5 b(alues,)36 b(where)f(appropriate,)h
-(are)g(recognized)g(without)f(regard)630 4496 y(to)c(case.)42
-b(Unrecognized)31 b(v)-5 b(ariable)31 b(names)g(are)f(ignored.)630
-4624 y(Bo)s(olean)c(v)-5 b(ariables)26 b(\(those)g(that)g(can)f(b)s(e)f
-(set)i(to)g(on)f(or)g(o\013)7 b(\))25 b(are)h(set)f(to)h(on)f(if)g(the)
-g(v)-5 b(alue)26 b(is)630 4734 y(n)m(ull)e(or)g(empt)m(y)-8
+3890 y Fr(set)47 b Fk(variable)e(value)630 4019 y Fs(Here,)29
+b(for)e(example,)h(is)g(ho)m(w)f(to)h(c)m(hange)g(from)f(the)g(default)
+h(Emacs-lik)m(e)h(k)m(ey)f(binding)e(to)630 4128 y(use)k
+Fr(vi)g Fs(line)h(editing)g(commands:)870 4257 y Fr(set)47
+b(editing-mode)d(vi)630 4386 y Fs(V)-8 b(ariable)36 b(names)f(and)g(v)
+-5 b(alues,)36 b(where)f(appropriate,)h(are)g(recognized)g(without)f
+(regard)630 4496 y(to)c(case.)42 b(Unrecognized)31 b(v)-5
+b(ariable)31 b(names)g(are)f(ignored.)630 4624 y(Bo)s(olean)c(v)-5
+b(ariables)26 b(\(those)g(that)g(can)f(b)s(e)f(set)i(to)g(on)f(or)g
+(o\013)7 b(\))25 b(are)h(set)f(to)h(on)f(if)g(the)g(v)-5
+b(alue)26 b(is)630 4734 y(n)m(ull)e(or)g(empt)m(y)-8
b(,)27 b Fi(on)d Fs(\(case-insensitiv)m(e\),)29 b(or)24
b(1.)39 b(An)m(y)25 b(other)f(v)-5 b(alue)25 b(results)f(in)g(the)g(v)
-5 b(ariable)630 4844 y(b)s(eing)30 b(set)h(to)g(o\013.)630
@@ -4448,415 +7201,458 @@ Fr(visible)p Fs(',)32 b(Readline)i(uses)f(a)g(visible)g(b)s(ell)g(if)g
(one)g(is)g(a)m(v)-5 b(ailable.)51 b(If)33 b(set)g(to)1110
408 y(`)p Fr(audible)p Fs(')j(\(the)i(default\),)i(Readline)e(attempts)
g(to)h(ring)e(the)g(terminal's)1110 518 y(b)s(ell.)630
-664 y Fr(bind-tty-special-chars)1110 774 y Fs(If)45 b(set)h(to)f(`)p
+676 y Fr(bind-tty-special-chars)1110 786 y Fs(If)45 b(set)h(to)f(`)p
Fr(on)p Fs(',)50 b(Readline)45 b(attempts)i(to)f(bind)d(the)j(con)m
-(trol)g(c)m(haracters)1110 883 y(treated)36 b(sp)s(ecially)h(b)m(y)e
+(trol)g(c)m(haracters)1110 896 y(treated)36 b(sp)s(ecially)h(b)m(y)e
(the)h(k)m(ernel's)g(terminal)g(driv)m(er)f(to)h(their)f(Readline)1110
-993 y(equiv)-5 b(alen)m(ts.)630 1139 y Fr(comment-begin)1110
-1249 y Fs(The)29 b(string)g(to)h(insert)f(at)h(the)f(b)s(eginning)g(of)
-g(the)h(line)f(when)f(the)i Fr(insert-)1110 1358 y(comment)e
-Fs(command)j(is)f(executed.)42 b(The)29 b(default)i(v)-5
-b(alue)31 b(is)f Fr("#")p Fs(.)630 1504 y Fr(completion-display-width)
-1110 1614 y Fs(The)41 b(n)m(um)m(b)s(er)f(of)i(screen)g(columns)f(used)
-g(to)h(displa)m(y)g(p)s(ossible)f(matc)m(hes)1110 1724
+1005 y(equiv)-5 b(alen)m(ts.)630 1163 y Fr(colored-stats)1110
+1273 y Fs(If)26 b(set)h(to)g(`)p Fr(on)p Fs(',)h(Readline)f(displa)m
+(ys)g(p)s(ossible)f(completions)h(using)f(di\013eren)m(t)1110
+1383 y(colors)40 b(to)g(indicate)g(their)f(\014le)h(t)m(yp)s(e.)67
+b(The)38 b(color)j(de\014nitions)d(are)i(tak)m(en)1110
+1492 y(from)24 b(the)h(v)-5 b(alue)25 b(of)g(the)g Fr(LS_COLORS)d
+Fs(en)m(vironmen)m(t)j(v)-5 b(ariable.)40 b(The)24 b(default)1110
+1602 y(is)30 b(`)p Fr(off)p Fs('.)630 1760 y Fr(comment-begin)1110
+1870 y Fs(The)62 b(string)g(to)h(insert)f(at)h(the)g(b)s(eginning)e(of)
+h(the)h(line)f(when)g(the)1110 1979 y Fr(insert-comment)26
+b Fs(command)31 b(is)f(executed.)42 b(The)30 b(default)g(v)-5
+b(alue)31 b(is)f Fr("#")p Fs(.)630 2138 y Fr(completion-display-width)
+1110 2247 y Fs(The)41 b(n)m(um)m(b)s(er)f(of)i(screen)g(columns)f(used)
+g(to)h(displa)m(y)g(p)s(ossible)f(matc)m(hes)1110 2357
y(when)28 b(p)s(erforming)g(completion.)41 b(The)29 b(v)-5
b(alue)29 b(is)g(ignored)g(if)g(it)h(is)f(less)g(than)1110
-1833 y(0)e(or)f(greater)h(than)f(the)g(terminal)h(screen)f(width.)39
+2466 y(0)e(or)f(greater)h(than)f(the)g(terminal)h(screen)f(width.)39
b(A)26 b(v)-5 b(alue)27 b(of)f(0)h(will)f(cause)1110
-1943 y(matc)m(hes)32 b(to)f(b)s(e)e(displa)m(y)m(ed)i(one)g(p)s(er)e
+2576 y(matc)m(hes)32 b(to)f(b)s(e)e(displa)m(y)m(ed)i(one)g(p)s(er)e
(line.)41 b(The)30 b(default)h(v)-5 b(alue)31 b(is)f(-1.)630
-2089 y Fr(completion-ignore-case)1110 2198 y Fs(If)d(set)h(to)g(`)p
+2734 y Fr(completion-ignore-case)1110 2844 y Fs(If)d(set)h(to)g(`)p
Fr(on)p Fs(',)g(Readline)g(p)s(erforms)e(\014lename)h(matc)m(hing)i
-(and)e(completion)1110 2308 y(in)j(a)h(case-insensitiv)m(e)i(fashion.)
+(and)e(completion)1110 2953 y(in)j(a)h(case-insensitiv)m(e)i(fashion.)
40 b(The)30 b(default)h(v)-5 b(alue)30 b(is)h(`)p Fr(off)p
-Fs('.)630 2454 y Fr(completion-map-case)1110 2564 y Fs(If)22
+Fs('.)630 3112 y Fr(completion-map-case)1110 3221 y Fs(If)22
b(set)g(to)h(`)p Fr(on)p Fs(',)h(and)e Fi(completion-ignore-case)31
-b Fs(is)22 b(enabled,)i(Readline)f(treats)1110 2673 y(h)m(yphens)29
+b Fs(is)22 b(enabled,)i(Readline)f(treats)1110 3331 y(h)m(yphens)29
b(\(`)p Fr(-)p Fs('\))j(and)e(underscores)g(\(`)p Fr(_)p
Fs('\))i(as)f(equiv)-5 b(alen)m(t)32 b(when)e(p)s(erforming)1110
-2783 y(case-insensitiv)m(e)j(\014lename)d(matc)m(hing)i(and)e
-(completion.)630 2929 y Fr(completion-prefix-displa)o(y-le)o(ngth)1110
-3039 y Fs(The)h(length)g(in)g(c)m(haracters)i(of)f(the)f(common)h
-(pre\014x)e(of)h(a)h(list)g(of)f(p)s(ossible)1110 3148
+3440 y(case-insensitiv)m(e)j(\014lename)d(matc)m(hing)i(and)e
+(completion.)630 3599 y Fr(completion-prefix-displa)o(y-le)o(ngth)1110
+3708 y Fs(The)h(length)g(in)g(c)m(haracters)i(of)f(the)f(common)h
+(pre\014x)e(of)h(a)h(list)g(of)f(p)s(ossible)1110 3818
y(completions)g(that)f(is)g(displa)m(y)m(ed)g(without)g(mo)s
-(di\014cation.)41 b(When)29 b(set)h(to)h(a)1110 3258
+(di\014cation.)41 b(When)29 b(set)h(to)h(a)1110 3927
y(v)-5 b(alue)26 b(greater)h(than)e(zero,)j(common)e(pre\014xes)e
-(longer)j(than)e(this)g(v)-5 b(alue)27 b(are)1110 3367
+(longer)j(than)e(this)g(v)-5 b(alue)27 b(are)1110 4037
y(replaced)k(with)f(an)g(ellipsis)h(when)e(displa)m(ying)i(p)s(ossible)
-f(completions.)630 3513 y Fr(completion-query-items)1110
-3623 y Fs(The)c(n)m(um)m(b)s(er)f(of)h(p)s(ossible)g(completions)h
-(that)g(determines)f(when)f(the)i(user)1110 3733 y(is)i(ask)m(ed)h
+f(completions.)630 4195 y Fr(completion-query-items)1110
+4305 y Fs(The)c(n)m(um)m(b)s(er)f(of)h(p)s(ossible)g(completions)h
+(that)g(determines)f(when)f(the)i(user)1110 4415 y(is)i(ask)m(ed)h
(whether)f(the)h(list)g(of)f(p)s(ossibilities)h(should)e(b)s(e)h
-(displa)m(y)m(ed.)41 b(If)29 b(the)1110 3842 y(n)m(um)m(b)s(er)d(of)h
+(displa)m(y)m(ed.)41 b(If)29 b(the)1110 4524 y(n)m(um)m(b)s(er)d(of)h
(p)s(ossible)f(completions)i(is)f(greater)h(than)e(this)h(v)-5
-b(alue,)28 b(Readline)1110 3952 y(will)f(ask)g(the)f(user)g(whether)g
+b(alue,)28 b(Readline)1110 4634 y(will)f(ask)g(the)f(user)g(whether)g
(or)g(not)h(he)f(wishes)g(to)i(view)e(them;)i(otherwise,)1110
-4061 y(they)d(are)f(simply)g(listed.)40 b(This)23 b(v)-5
+4743 y(they)d(are)f(simply)g(listed.)40 b(This)23 b(v)-5
b(ariable)25 b(m)m(ust)g(b)s(e)e(set)i(to)g(an)g(in)m(teger)g(v)-5
-b(alue)1110 4171 y(greater)26 b(than)f(or)f(equal)i(to)f(0.)40
+b(alue)1110 4853 y(greater)26 b(than)f(or)f(equal)i(to)f(0.)40
b(A)24 b(negativ)m(e)j(v)-5 b(alue)26 b(means)e(Readline)i(should)1110
-4281 y(nev)m(er)31 b(ask.)41 b(The)29 b(default)i(limit)g(is)g
-Fr(100)p Fs(.)630 4427 y Fr(convert-meta)1110 4536 y
+4963 y(nev)m(er)31 b(ask.)41 b(The)29 b(default)i(limit)g(is)g
+Fr(100)p Fs(.)630 5121 y Fr(convert-meta)1110 5230 y
Fs(If)22 b(set)g(to)h(`)p Fr(on)p Fs(',)h(Readline)f(will)f(con)m(v)m
(ert)i(c)m(haracters)f(with)f(the)g(eigh)m(th)h(bit)f(set)1110
-4646 y(to)33 b(an)e Fl(asci)r(i)h Fs(k)m(ey)h(sequence)f(b)m(y)g
-(stripping)f(the)h(eigh)m(th)h(bit)f(and)f(pre\014xing)1110
-4756 y(an)24 b Fr(ESC)g Fs(c)m(haracter,)j(con)m(v)m(erting)f(them)f
-(to)g(a)g(meta-pre\014xed)f(k)m(ey)h(sequence.)1110 4865
-y(The)30 b(default)g(v)-5 b(alue)31 b(is)g(`)p Fr(on)p
-Fs('.)630 5011 y Fr(disable-completion)1110 5121 y Fs(If)36
-b(set)h(to)h(`)p Fr(On)p Fs(',)g(Readline)f(will)g(inhibit)f(w)m(ord)h
-(completion.)60 b(Completion)1110 5230 y(c)m(haracters)28
-b(will)e(b)s(e)f(inserted)h(in)m(to)h(the)g(line)f(as)g(if)g(they)h
-(had)e(b)s(een)g(mapp)s(ed)1110 5340 y(to)31 b Fr(self-insert)p
-Fs(.)38 b(The)30 b(default)g(is)h(`)p Fr(off)p Fs('.)p
+5340 y(to)33 b(an)e Fl(asci)r(i)h Fs(k)m(ey)h(sequence)f(b)m(y)g
+(stripping)f(the)h(eigh)m(th)h(bit)f(and)f(pre\014xing)p
eop end
%%Page: 6 10
TeXDict begin 6 9 bop 150 -116 a Fs(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2153 b(6)630 299 y Fr(editing-mode)1110
-408 y Fs(The)28 b Fr(editing-mode)e Fs(v)-5 b(ariable)29
-b(con)m(trols)h(whic)m(h)e(default)h(set)h(of)e(k)m(ey)i(bind-)1110
-518 y(ings)25 b(is)g(used.)38 b(By)26 b(default,)g(Readline)g(starts)f
-(up)f(in)h(Emacs)g(editing)h(mo)s(de,)1110 628 y(where)j(the)g(k)m
-(eystrok)m(es)i(are)e(most)h(similar)f(to)h(Emacs.)40
-b(This)29 b(v)-5 b(ariable)30 b(can)1110 737 y(b)s(e)g(set)h(to)g
-(either)g(`)p Fr(emacs)p Fs(')e(or)h(`)p Fr(vi)p Fs('.)630
-883 y Fr(echo-control-characters)1110 993 y Fs(When)g(set)h(to)g(`)p
+b(Command)29 b(Line)i(Editing)2153 b(6)1110 299 y(an)24
+b Fr(ESC)g Fs(c)m(haracter,)j(con)m(v)m(erting)f(them)f(to)g(a)g
+(meta-pre\014xed)f(k)m(ey)h(sequence.)1110 408 y(The)30
+b(default)g(v)-5 b(alue)31 b(is)g(`)p Fr(on)p Fs('.)630
+555 y Fr(disable-completion)1110 664 y Fs(If)36 b(set)h(to)h(`)p
+Fr(On)p Fs(',)g(Readline)f(will)g(inhibit)f(w)m(ord)h(completion.)60
+b(Completion)1110 774 y(c)m(haracters)28 b(will)e(b)s(e)f(inserted)h
+(in)m(to)h(the)g(line)f(as)g(if)g(they)h(had)e(b)s(een)g(mapp)s(ed)1110
+883 y(to)31 b Fr(self-insert)p Fs(.)38 b(The)30 b(default)g(is)h(`)p
+Fr(off)p Fs('.)630 1029 y Fr(editing-mode)1110 1139 y
+Fs(The)d Fr(editing-mode)e Fs(v)-5 b(ariable)29 b(con)m(trols)h(whic)m
+(h)e(default)h(set)h(of)e(k)m(ey)i(bind-)1110 1249 y(ings)25
+b(is)g(used.)38 b(By)26 b(default,)g(Readline)g(starts)f(up)f(in)h
+(Emacs)g(editing)h(mo)s(de,)1110 1358 y(where)j(the)g(k)m(eystrok)m(es)
+i(are)e(most)h(similar)f(to)h(Emacs.)40 b(This)29 b(v)-5
+b(ariable)30 b(can)1110 1468 y(b)s(e)g(set)h(to)g(either)g(`)p
+Fr(emacs)p Fs(')e(or)h(`)p Fr(vi)p Fs('.)630 1614 y Fr
+(echo-control-characters)1110 1724 y Fs(When)g(set)h(to)g(`)p
Fr(on)p Fs(',)f(on)g(op)s(erating)h(systems)f(that)h(indicate)g(they)g
-(supp)s(ort)1110 1103 y(it,)i(readline)e(ec)m(ho)s(es)i(a)f(c)m
+(supp)s(ort)1110 1833 y(it,)i(readline)e(ec)m(ho)s(es)i(a)f(c)m
(haracter)h(corresp)s(onding)d(to)j(a)f(signal)g(generated)1110
-1212 y(from)e(the)g(k)m(eyb)s(oard.)41 b(The)30 b(default)g(is)h(`)p
-Fr(on)p Fs('.)630 1358 y Fr(enable-keypad)1110 1468 y
+1943 y(from)e(the)g(k)m(eyb)s(oard.)41 b(The)30 b(default)g(is)h(`)p
+Fr(on)p Fs('.)630 2089 y Fr(enable-keypad)1110 2198 y
Fs(When)23 b(set)h(to)g(`)p Fr(on)p Fs(',)h(Readline)f(will)g(try)f(to)
-h(enable)g(the)f(application)i(k)m(eypad)1110 1577 y(when)h(it)h(is)f
+h(enable)g(the)f(application)i(k)m(eypad)1110 2308 y(when)h(it)h(is)f
(called.)41 b(Some)27 b(systems)f(need)h(this)f(to)h(enable)g(the)g
-(arro)m(w)g(k)m(eys.)1110 1687 y(The)j(default)g(is)h(`)p
-Fr(off)p Fs('.)630 1833 y Fr(enable-meta-key)1110 1943
+(arro)m(w)g(k)m(eys.)1110 2418 y(The)j(default)g(is)h(`)p
+Fr(off)p Fs('.)630 2564 y Fr(enable-meta-key)1110 2673
y Fs(When)40 b(set)g(to)g(`)p Fr(on)p Fs(',)j(Readline)d(will)g(try)g
-(to)g(enable)g(an)m(y)g(meta)h(mo)s(di\014er)1110 2052
+(to)g(enable)g(an)m(y)g(meta)h(mo)s(di\014er)1110 2783
y(k)m(ey)i(the)e(terminal)i(claims)f(to)h(supp)s(ort)d(when)h(it)h(is)g
-(called.)76 b(On)41 b(man)m(y)1110 2162 y(terminals,)c(the)e(meta)h(k)m
+(called.)76 b(On)41 b(man)m(y)1110 2892 y(terminals,)c(the)e(meta)h(k)m
(ey)g(is)f(used)g(to)h(send)e(eigh)m(t-bit)j(c)m(haracters.)56
-b(The)1110 2271 y(default)31 b(is)f(`)p Fr(on)p Fs('.)630
-2418 y Fr(expand-tilde)1110 2527 y Fs(If)d(set)h(to)h(`)p
+b(The)1110 3002 y(default)31 b(is)f(`)p Fr(on)p Fs('.)630
+3148 y Fr(expand-tilde)1110 3258 y Fs(If)d(set)h(to)h(`)p
Fr(on)p Fs(',)f(tilde)g(expansion)g(is)f(p)s(erformed)f(when)h
-(Readline)h(attempts)1110 2637 y(w)m(ord)i(completion.)42
-b(The)30 b(default)g(is)h(`)p Fr(off)p Fs('.)630 2783
-y Fr(history-preserve-point)1110 2892 y Fs(If)41 b(set)h(to)h(`)p
+(Readline)h(attempts)1110 3367 y(w)m(ord)i(completion.)42
+b(The)30 b(default)g(is)h(`)p Fr(off)p Fs('.)630 3513
+y Fr(history-preserve-point)1110 3623 y Fs(If)41 b(set)h(to)h(`)p
Fr(on)p Fs(',)i(the)c(history)h(co)s(de)g(attempts)h(to)f(place)h(the)f
-(p)s(oin)m(t)f(\(the)1110 3002 y(curren)m(t)35 b(cursor)g(p)s
+(p)s(oin)m(t)f(\(the)1110 3733 y(curren)m(t)35 b(cursor)g(p)s
(osition\))g(at)h(the)g(same)f(lo)s(cation)i(on)e(eac)m(h)h(history)g
-(line)1110 3112 y(retriev)m(ed)h(with)f Fr(previous-history)c
+(line)1110 3842 y(retriev)m(ed)h(with)f Fr(previous-history)c
Fs(or)37 b Fr(next-history)p Fs(.)55 b(The)36 b(default)1110
-3221 y(is)30 b(`)p Fr(off)p Fs('.)630 3367 y Fr(history-size)1110
-3477 y Fs(Set)39 b(the)g(maxim)m(um)g(n)m(um)m(b)s(er)f(of)h(history)g
-(en)m(tries)h(sa)m(v)m(ed)g(in)f(the)g(history)1110 3587
-y(list.)53 b(If)34 b(set)h(to)g(zero,)i(the)d(n)m(um)m(b)s(er)g(of)g
-(en)m(tries)h(in)f(the)h(history)f(list)h(is)g(not)1110
-3696 y(limited.)630 3842 y Fr(horizontal-scroll-mode)1110
-3952 y Fs(This)g(v)-5 b(ariable)37 b(can)f(b)s(e)f(set)h(to)h(either)f
-(`)p Fr(on)p Fs(')g(or)g(`)p Fr(off)p Fs('.)57 b(Setting)36
-b(it)g(to)h(`)p Fr(on)p Fs(')1110 4061 y(means)26 b(that)h(the)f(text)h
+3952 y(is)30 b(`)p Fr(off)p Fs('.)630 4098 y Fr(history-size)1110
+4208 y Fs(Set)39 b(the)g(maxim)m(um)g(n)m(um)m(b)s(er)f(of)h(history)g
+(en)m(tries)h(sa)m(v)m(ed)g(in)f(the)g(history)1110 4317
+y(list.)51 b(If)34 b(set)g(to)h(zero,)g(an)m(y)f(existing)h(history)f
+(en)m(tries)g(are)g(deleted)h(and)e(no)1110 4427 y(new)e(en)m(tries)i
+(are)f(sa)m(v)m(ed.)46 b(If)31 b(set)h(to)h(a)f(v)-5
+b(alue)32 b(less)g(than)f(zero,)i(the)f(n)m(um)m(b)s(er)1110
+4536 y(of)f(history)f(en)m(tries)h(is)g(not)g(limited.)42
+b(By)30 b(default,)h(the)g(n)m(um)m(b)s(er)e(of)i(history)1110
+4646 y(en)m(tries)g(is)g(not)f(limited.)630 4792 y Fr
+(horizontal-scroll-mode)1110 4902 y Fs(This)35 b(v)-5
+b(ariable)37 b(can)f(b)s(e)f(set)h(to)h(either)f(`)p
+Fr(on)p Fs(')g(or)g(`)p Fr(off)p Fs('.)57 b(Setting)36
+b(it)g(to)h(`)p Fr(on)p Fs(')1110 5011 y(means)26 b(that)h(the)f(text)h
(of)g(the)f(lines)g(b)s(eing)g(edited)h(will)f(scroll)h(horizon)m
-(tally)1110 4171 y(on)32 b(a)g(single)g(screen)g(line)g(when)e(they)i
-(are)g(longer)h(than)e(the)h(width)f(of)h(the)1110 4281
+(tally)1110 5121 y(on)32 b(a)g(single)g(screen)g(line)g(when)e(they)i
+(are)g(longer)h(than)e(the)h(width)f(of)h(the)1110 5230
y(screen,)27 b(instead)g(of)f(wrapping)f(on)m(to)i(a)f(new)g(screen)g
-(line.)39 b(By)27 b(default,)g(this)1110 4390 y(v)-5
-b(ariable)31 b(is)g(set)f(to)i(`)p Fr(off)p Fs('.)630
-4536 y Fr(input-meta)1110 4646 y Fs(If)f(set)g(to)h(`)p
-Fr(on)p Fs(',)g(Readline)g(will)f(enable)h(eigh)m(t-bit)h(input)d(\(it)
-i(will)f(not)h(clear)1110 4756 y(the)40 b(eigh)m(th)g(bit)g(in)f(the)h
-(c)m(haracters)h(it)f(reads\),)j(regardless)c(of)h(what)g(the)1110
-4865 y(terminal)g(claims)h(it)g(can)f(supp)s(ort.)68
-b(The)39 b(default)h(v)-5 b(alue)40 b(is)g(`)p Fr(off)p
-Fs('.)69 b(The)1110 4975 y(name)30 b Fr(meta-flag)e Fs(is)j(a)f(synon)m
-(ym)g(for)g(this)h(v)-5 b(ariable.)630 5121 y Fr(isearch-terminators)
-1110 5230 y Fs(The)51 b(string)h(of)g(c)m(haracters)h(that)f(should)e
-(terminate)j(an)f(incremen)m(tal)1110 5340 y(searc)m(h)25
-b(without)g(subsequen)m(tly)g(executing)h(the)f(c)m(haracter)h(as)f(a)g
-(command)p eop end
+(line.)39 b(By)27 b(default,)g(this)1110 5340 y(v)-5
+b(ariable)31 b(is)g(set)f(to)i(`)p Fr(off)p Fs('.)p eop
+end
%%Page: 7 11
TeXDict begin 7 10 bop 150 -116 a Fs(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2153 b(7)1110 299 y(\(see)45
-b(Section)h(1.2.5)g([Searc)m(hing],)j(page)d(3\).)84
-b(If)44 b(this)g(v)-5 b(ariable)45 b(has)g(not)1110 408
+b(Command)29 b(Line)i(Editing)2153 b(7)630 299 y Fr(input-meta)1110
+408 y Fs(If)31 b(set)g(to)h(`)p Fr(on)p Fs(',)g(Readline)g(will)f
+(enable)h(eigh)m(t-bit)h(input)d(\(it)i(will)f(not)h(clear)1110
+518 y(the)40 b(eigh)m(th)g(bit)g(in)f(the)h(c)m(haracters)h(it)f
+(reads\),)j(regardless)c(of)h(what)g(the)1110 628 y(terminal)g(claims)h
+(it)g(can)f(supp)s(ort.)68 b(The)39 b(default)h(v)-5
+b(alue)40 b(is)g(`)p Fr(off)p Fs('.)69 b(The)1110 737
+y(name)30 b Fr(meta-flag)e Fs(is)j(a)f(synon)m(ym)g(for)g(this)h(v)-5
+b(ariable.)630 894 y Fr(isearch-terminators)1110 1003
+y Fs(The)51 b(string)h(of)g(c)m(haracters)h(that)f(should)e(terminate)j
+(an)f(incremen)m(tal)1110 1113 y(searc)m(h)25 b(without)g(subsequen)m
+(tly)g(executing)h(the)f(c)m(haracter)h(as)f(a)g(command)1110
+1223 y(\(see)45 b(Section)h(1.2.5)g([Searc)m(hing],)j(page)d(3\).)84
+b(If)44 b(this)g(v)-5 b(ariable)45 b(has)g(not)1110 1332
y(b)s(een)35 b(giv)m(en)h(a)g(v)-5 b(alue,)37 b(the)f(c)m(haracters)h
Fr(ESC)d Fs(and)h Fk(C-J)g Fs(will)h(terminate)g(an)1110
-518 y(incremen)m(tal)c(searc)m(h.)630 689 y Fr(keymap)192
+1442 y(incremen)m(tal)c(searc)m(h.)630 1598 y Fr(keymap)192
b Fs(Sets)39 b(Readline's)g(idea)h(of)f(the)g(curren)m(t)f(k)m(eymap)h
-(for)g(k)m(ey)g(binding)f(com-)1110 798 y(mands.)81 b(Acceptable)47
-b Fr(keymap)42 b Fs(names)i(are)h Fr(emacs)p Fs(,)i Fr(emacs-standard)p
-Fs(,)1110 908 y Fr(emacs-meta)p Fs(,)99 b Fr(emacs-ctlx)p
-Fs(,)f Fr(vi)p Fs(,)j Fr(vi-move)p Fs(,)f Fr(vi-command)p
-Fs(,)f(and)1110 1017 y Fr(vi-insert)p Fs(.)64 b Fr(vi)38
-b Fs(is)h(equiv)-5 b(alen)m(t)41 b(to)e Fr(vi-command)p
-Fs(;)i Fr(emacs)c Fs(is)i(equiv)-5 b(alen)m(t)1110 1127
-y(to)33 b Fr(emacs-standard)p Fs(.)41 b(The)31 b(default)h(v)-5
+(for)g(k)m(ey)g(binding)f(com-)1110 1708 y(mands.)81
+b(Acceptable)47 b Fr(keymap)42 b Fs(names)i(are)h Fr(emacs)p
+Fs(,)i Fr(emacs-standard)p Fs(,)1110 1817 y Fr(emacs-meta)p
+Fs(,)99 b Fr(emacs-ctlx)p Fs(,)f Fr(vi)p Fs(,)j Fr(vi-move)p
+Fs(,)f Fr(vi-command)p Fs(,)f(and)1110 1927 y Fr(vi-insert)p
+Fs(.)64 b Fr(vi)38 b Fs(is)h(equiv)-5 b(alen)m(t)41 b(to)e
+Fr(vi-command)p Fs(;)i Fr(emacs)c Fs(is)i(equiv)-5 b(alen)m(t)1110
+2037 y(to)33 b Fr(emacs-standard)p Fs(.)41 b(The)31 b(default)h(v)-5
b(alue)32 b(is)g Fr(emacs)p Fs(.)44 b(The)31 b(v)-5 b(alue)33
-b(of)f(the)1110 1236 y Fr(editing-mode)27 b Fs(v)-5 b(ariable)31
-b(also)h(a\013ects)f(the)g(default)f(k)m(eymap.)630 1407
-y Fr(mark-directories)1110 1517 y Fs(If)38 b(set)g(to)h(`)p
-Fr(on)p Fs(',)i(completed)e(directory)f(names)g(ha)m(v)m(e)i(a)e(slash)
-g(app)s(ended.)1110 1626 y(The)30 b(default)g(is)h(`)p
-Fr(on)p Fs('.)630 1797 y Fr(mark-modified-lines)1110
-1906 y Fs(This)k(v)-5 b(ariable,)38 b(when)d(set)h(to)h(`)p
-Fr(on)p Fs(',)g(causes)g(Readline)f(to)h(displa)m(y)f(an)f(as-)1110
-2016 y(terisk)f(\(`)p Fr(*)p Fs('\))h(at)f(the)g(start)g(of)g(history)g
-(lines)g(whic)m(h)f(ha)m(v)m(e)i(b)s(een)e(mo)s(di\014ed.)1110
-2125 y(This)d(v)-5 b(ariable)31 b(is)f(`)p Fr(off)p Fs(')g(b)m(y)g
-(default.)630 2296 y Fr(mark-symlinked-directori)o(es)1110
-2405 y Fs(If)44 b(set)h(to)h(`)p Fr(on)p Fs(',)i(completed)e(names)f
-(whic)m(h)f(are)h(sym)m(b)s(olic)g(links)g(to)g(di-)1110
-2515 y(rectories)j(ha)m(v)m(e)f(a)g(slash)f(app)s(ended)e(\(sub)5
-b(ject)47 b(to)g(the)f(v)-5 b(alue)47 b(of)f Fr(mark-)1110
-2625 y(directories)p Fs(\).)38 b(The)30 b(default)g(is)h(`)p
-Fr(off)p Fs('.)630 2795 y Fr(match-hidden-files)1110
-2905 y Fs(This)21 b(v)-5 b(ariable,)25 b(when)d(set)g(to)h(`)p
-Fr(on)p Fs(',)h(causes)f(Readline)g(to)g(matc)m(h)g(\014les)f(whose)
-1110 3014 y(names)44 b(b)s(egin)g(with)g(a)g(`)p Fr(.)p
-Fs(')g(\(hidden)f(\014les\))i(when)e(p)s(erforming)g(\014lename)1110
-3124 y(completion.)75 b(If)41 b(set)g(to)h(`)p Fr(off)p
-Fs(',)i(the)e(leading)g(`)p Fr(.)p Fs(')f(m)m(ust)g(b)s(e)g(supplied)f
-(b)m(y)1110 3233 y(the)34 b(user)g(in)g(the)g(\014lename)g(to)h(b)s(e)f
-(completed.)53 b(This)33 b(v)-5 b(ariable)35 b(is)f(`)p
-Fr(on)p Fs(')g(b)m(y)1110 3343 y(default.)630 3513 y
-Fr(menu-complete-display-pr)o(efix)1110 3623 y Fs(If)f(set)h(to)g(`)p
-Fr(on)p Fs(',)h(men)m(u)e(completion)i(displa)m(ys)e(the)h(common)g
-(pre\014x)e(of)i(the)1110 3733 y(list)k(of)g(p)s(ossible)f(completions)
-i(\(whic)m(h)e(ma)m(y)h(b)s(e)f(empt)m(y\))i(b)s(efore)e(cycling)1110
-3842 y(through)30 b(the)g(list.)42 b(The)29 b(default)i(is)f(`)p
-Fr(off)p Fs('.)630 4013 y Fr(output-meta)1110 4122 y
-Fs(If)35 b(set)h(to)g(`)p Fr(on)p Fs(',)h(Readline)f(will)g(displa)m(y)
-f(c)m(haracters)i(with)e(the)h(eigh)m(th)g(bit)1110 4232
-y(set)h(directly)g(rather)f(than)g(as)h(a)g(meta-pre\014xed)f(escap)s
-(e)h(sequence.)59 b(The)1110 4341 y(default)31 b(is)f(`)p
-Fr(off)p Fs('.)630 4512 y Fr(page-completions)1110 4622
-y Fs(If)j(set)i(to)f(`)p Fr(on)p Fs(',)h(Readline)g(uses)e(an)h(in)m
-(ternal)h Fr(more)p Fs(-lik)m(e)f(pager)g(to)h(displa)m(y)1110
-4731 y(a)e(screenful)f(of)g(p)s(ossible)g(completions)i(at)f(a)g(time.)
-47 b(This)31 b(v)-5 b(ariable)34 b(is)e(`)p Fr(on)p Fs(')1110
-4841 y(b)m(y)e(default.)630 5011 y Fr(print-completions-horizo)o(ntal)o
-(ly)1110 5121 y Fs(If)23 b(set)i(to)g(`)p Fr(on)p Fs(',)g(Readline)g
-(will)f(displa)m(y)g(completions)h(with)f(matc)m(hes)h(sorted)1110
-5230 y(horizon)m(tally)45 b(in)e(alphab)s(etical)i(order,)i(rather)c
-(than)g(do)m(wn)g(the)h(screen.)1110 5340 y(The)30 b(default)g(is)h(`)p
-Fr(off)p Fs('.)p eop end
+b(of)f(the)1110 2146 y Fr(editing-mode)27 b Fs(v)-5 b(ariable)31
+b(also)h(a\013ects)f(the)g(default)f(k)m(eymap.)630 2303
+y Fr(keyseq-timeout)1110 2412 y Fs(Sp)s(eci\014es)25
+b(the)g(duration)g(Readline)h(will)g(w)m(ait)g(for)g(a)f(c)m(haracter)i
+(when)e(read-)1110 2522 y(ing)30 b(an)g(am)m(biguous)g(k)m(ey)h
+(sequence)f(\(one)g(that)h(can)f(form)g(a)g(complete)h(k)m(ey)1110
+2632 y(sequence)j(using)e(the)i(input)e(read)h(so)g(far,)h(or)g(can)f
+(tak)m(e)i(additional)f(input)1110 2741 y(to)g(complete)g(a)f(longer)h
+(k)m(ey)f(sequence\).)49 b(If)33 b(no)f(input)g(is)h(receiv)m(ed)h
+(within)1110 2851 y(the)43 b(timeout,)48 b(Readline)43
+b(will)g(use)g(the)g(shorter)g(but)f(complete)j(k)m(ey)e(se-)1110
+2960 y(quence.)c(Readline)26 b(uses)f(this)h(v)-5 b(alue)26
+b(to)g(determine)g(whether)f(or)g(not)h(input)1110 3070
+y(is)31 b(a)m(v)-5 b(ailable)33 b(on)d(the)h(curren)m(t)f(input)g
+(source)h(\()p Fr(rl_instream)d Fs(b)m(y)i(default\).)1110
+3180 y(The)25 b(v)-5 b(alue)26 b(is)f(sp)s(eci\014ed)f(in)h
+(milliseconds,)j(so)d(a)h(v)-5 b(alue)26 b(of)f(1000)i(means)e(that)
+1110 3289 y(Readline)e(will)g(w)m(ait)g(one)g(second)f(for)g
+(additional)i(input.)37 b(If)22 b(this)g(v)-5 b(ariable)23
+b(is)1110 3399 y(set)28 b(to)h(a)f(v)-5 b(alue)29 b(less)f(than)g(or)f
+(equal)i(to)f(zero,)i(or)e(to)g(a)h(non-n)m(umeric)e(v)-5
+b(alue,)1110 3508 y(Readline)30 b(will)f(w)m(ait)i(un)m(til)e(another)h
+(k)m(ey)g(is)f(pressed)g(to)h(decide)f(whic)m(h)g(k)m(ey)1110
+3618 y(sequence)i(to)g(complete.)42 b(The)30 b(default)g(v)-5
+b(alue)31 b(is)g Fr(500)p Fs(.)630 3774 y Fr(mark-directories)1110
+3884 y Fs(If)38 b(set)g(to)h(`)p Fr(on)p Fs(',)i(completed)e(directory)
+f(names)g(ha)m(v)m(e)i(a)e(slash)g(app)s(ended.)1110
+3994 y(The)30 b(default)g(is)h(`)p Fr(on)p Fs('.)630
+4150 y Fr(mark-modified-lines)1110 4260 y Fs(This)k(v)-5
+b(ariable,)38 b(when)d(set)h(to)h(`)p Fr(on)p Fs(',)g(causes)g
+(Readline)f(to)h(displa)m(y)f(an)f(as-)1110 4369 y(terisk)f(\(`)p
+Fr(*)p Fs('\))h(at)f(the)g(start)g(of)g(history)g(lines)g(whic)m(h)f
+(ha)m(v)m(e)i(b)s(een)e(mo)s(di\014ed.)1110 4479 y(This)d(v)-5
+b(ariable)31 b(is)f(`)p Fr(off)p Fs(')g(b)m(y)g(default.)630
+4635 y Fr(mark-symlinked-directori)o(es)1110 4745 y Fs(If)59
+b(set)h(to)g(`)p Fr(on)p Fs(',)67 b(completed)60 b(names)f(whic)m(h)g
+(are)h(sym)m(b)s(olic)g(links)f(to)1110 4855 y(directories)71
+b(ha)m(v)m(e)f(a)g(slash)f(app)s(ended)f(\(sub)5 b(ject)70
+b(to)g(the)g(v)-5 b(alue)70 b(of)1110 4964 y Fr(mark-directories)p
+Fs(\).)37 b(The)30 b(default)g(is)g(`)p Fr(off)p Fs('.)630
+5121 y Fr(match-hidden-files)1110 5230 y Fs(This)21 b(v)-5
+b(ariable,)25 b(when)d(set)g(to)h(`)p Fr(on)p Fs(',)h(causes)f
+(Readline)g(to)g(matc)m(h)g(\014les)f(whose)1110 5340
+y(names)44 b(b)s(egin)g(with)g(a)g(`)p Fr(.)p Fs(')g(\(hidden)f
+(\014les\))i(when)e(p)s(erforming)g(\014lename)p eop
+end
%%Page: 8 12
TeXDict begin 8 11 bop 150 -116 a Fs(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2153 b(8)630 299 y Fr
-(revert-all-at-newline)1110 408 y Fs(If)29 b(set)h(to)g(`)p
-Fr(on)p Fs(',)g(Readline)g(will)g(undo)f(all)h(c)m(hanges)h(to)f
-(history)g(lines)f(b)s(efore)1110 518 y(returning)f(when)f
-Fr(accept-line)f Fs(is)j(executed.)41 b(By)29 b(default,)g(history)g
-(lines)1110 628 y(ma)m(y)42 b(b)s(e)g(mo)s(di\014ed)e(and)h(retain)i
-(individual)e(undo)g(lists)h(across)g(calls)h(to)1110
-737 y Fr(readline)p Fs(.)38 b(The)30 b(default)h(is)f(`)p
-Fr(off)p Fs('.)630 902 y Fr(show-all-if-ambiguous)1110
-1011 y Fs(This)f(alters)i(the)f(default)g(b)s(eha)m(vior)g(of)g(the)h
-(completion)g(functions.)40 b(If)29 b(set)1110 1121 y(to)f(`)p
-Fr(on)p Fs(',)g(w)m(ords)f(whic)m(h)g(ha)m(v)m(e)i(more)f(than)f(one)h
-(p)s(ossible)f(completion)h(cause)1110 1230 y(the)39
-b(matc)m(hes)h(to)g(b)s(e)e(listed)h(immediately)i(instead)e(of)g
-(ringing)g(the)g(b)s(ell.)1110 1340 y(The)30 b(default)g(v)-5
-b(alue)31 b(is)g(`)p Fr(off)p Fs('.)630 1504 y Fr
-(show-all-if-unmodified)1110 1614 y Fs(This)38 b(alters)h(the)g
-(default)g(b)s(eha)m(vior)g(of)f(the)h(completion)h(functions)e(in)h(a)
-1110 1724 y(fashion)25 b(similar)g(to)h Fi(sho)m(w-all-if-am)m(biguous)
-t Fs(.)41 b(If)24 b(set)i(to)f(`)p Fr(on)p Fs(',)i(w)m(ords)d(whic)m(h)
-1110 1833 y(ha)m(v)m(e)32 b(more)f(than)f(one)i(p)s(ossible)e
-(completion)i(without)f(an)m(y)g(p)s(ossible)f(par-)1110
-1943 y(tial)43 b(completion)h(\(the)f(p)s(ossible)f(completions)h
-(don't)f(share)g(a)h(common)1110 2052 y(pre\014x\))30
-b(cause)g(the)h(matc)m(hes)g(to)g(b)s(e)f(listed)g(immediately)i
-(instead)e(of)h(ring-)1110 2162 y(ing)g(the)f(b)s(ell.)41
+b(Command)29 b(Line)i(Editing)2153 b(8)1110 299 y(completion.)75
+b(If)41 b(set)g(to)h(`)p Fr(off)p Fs(',)i(the)e(leading)g(`)p
+Fr(.)p Fs(')f(m)m(ust)g(b)s(e)g(supplied)f(b)m(y)1110
+408 y(the)34 b(user)g(in)g(the)g(\014lename)g(to)h(b)s(e)f(completed.)
+53 b(This)33 b(v)-5 b(ariable)35 b(is)f(`)p Fr(on)p Fs(')g(b)m(y)1110
+518 y(default.)630 664 y Fr(menu-complete-display-pr)o(efix)1110
+774 y Fs(If)f(set)h(to)g(`)p Fr(on)p Fs(',)h(men)m(u)e(completion)i
+(displa)m(ys)e(the)h(common)g(pre\014x)e(of)i(the)1110
+883 y(list)k(of)g(p)s(ossible)f(completions)i(\(whic)m(h)e(ma)m(y)h(b)s
+(e)f(empt)m(y\))i(b)s(efore)e(cycling)1110 993 y(through)30
+b(the)g(list.)42 b(The)29 b(default)i(is)f(`)p Fr(off)p
+Fs('.)630 1139 y Fr(output-meta)1110 1249 y Fs(If)35
+b(set)h(to)g(`)p Fr(on)p Fs(',)h(Readline)f(will)g(displa)m(y)f(c)m
+(haracters)i(with)e(the)h(eigh)m(th)g(bit)1110 1358 y(set)h(directly)g
+(rather)f(than)g(as)h(a)g(meta-pre\014xed)f(escap)s(e)h(sequence.)59
+b(The)1110 1468 y(default)31 b(is)f(`)p Fr(off)p Fs('.)630
+1614 y Fr(page-completions)1110 1724 y Fs(If)j(set)i(to)f(`)p
+Fr(on)p Fs(',)h(Readline)g(uses)e(an)h(in)m(ternal)h
+Fr(more)p Fs(-lik)m(e)f(pager)g(to)h(displa)m(y)1110
+1833 y(a)e(screenful)f(of)g(p)s(ossible)g(completions)i(at)f(a)g(time.)
+47 b(This)31 b(v)-5 b(ariable)34 b(is)e(`)p Fr(on)p Fs(')1110
+1943 y(b)m(y)e(default.)630 2089 y Fr(print-completions-horizo)o(ntal)o
+(ly)1110 2198 y Fs(If)23 b(set)i(to)g(`)p Fr(on)p Fs(',)g(Readline)g
+(will)f(displa)m(y)g(completions)h(with)f(matc)m(hes)h(sorted)1110
+2308 y(horizon)m(tally)45 b(in)e(alphab)s(etical)i(order,)i(rather)c
+(than)g(do)m(wn)g(the)h(screen.)1110 2418 y(The)30 b(default)g(is)h(`)p
+Fr(off)p Fs('.)630 2564 y Fr(revert-all-at-newline)1110
+2673 y Fs(If)e(set)h(to)g(`)p Fr(on)p Fs(',)g(Readline)g(will)g(undo)f
+(all)h(c)m(hanges)h(to)f(history)g(lines)f(b)s(efore)1110
+2783 y(returning)f(when)f Fr(accept-line)f Fs(is)j(executed.)41
+b(By)29 b(default,)g(history)g(lines)1110 2892 y(ma)m(y)42
+b(b)s(e)g(mo)s(di\014ed)e(and)h(retain)i(individual)e(undo)g(lists)h
+(across)g(calls)h(to)1110 3002 y Fr(readline)p Fs(.)38
+b(The)30 b(default)h(is)f(`)p Fr(off)p Fs('.)630 3148
+y Fr(show-all-if-ambiguous)1110 3258 y Fs(This)f(alters)i(the)f
+(default)g(b)s(eha)m(vior)g(of)g(the)h(completion)g(functions.)40
+b(If)29 b(set)1110 3367 y(to)f(`)p Fr(on)p Fs(',)g(w)m(ords)f(whic)m(h)
+g(ha)m(v)m(e)i(more)f(than)f(one)h(p)s(ossible)f(completion)h(cause)
+1110 3477 y(the)39 b(matc)m(hes)h(to)g(b)s(e)e(listed)h(immediately)i
+(instead)e(of)g(ringing)g(the)g(b)s(ell.)1110 3587 y(The)30
+b(default)g(v)-5 b(alue)31 b(is)g(`)p Fr(off)p Fs('.)630
+3733 y Fr(show-all-if-unmodified)1110 3842 y Fs(This)38
+b(alters)h(the)g(default)g(b)s(eha)m(vior)g(of)f(the)h(completion)h
+(functions)e(in)h(a)1110 3952 y(fashion)25 b(similar)h(to)g
+Fi(sho)m(w-all-if-am)m(biguous)p Fs(.)41 b(If)25 b(set)h(to)h(`)p
+Fr(on)p Fs(',)f(w)m(ords)f(whic)m(h)1110 4061 y(ha)m(v)m(e)32
+b(more)f(than)f(one)i(p)s(ossible)e(completion)i(without)f(an)m(y)g(p)s
+(ossible)f(par-)1110 4171 y(tial)43 b(completion)h(\(the)f(p)s(ossible)
+f(completions)h(don't)f(share)g(a)h(common)1110 4281
+y(pre\014x\))30 b(cause)g(the)h(matc)m(hes)g(to)g(b)s(e)f(listed)g
+(immediately)i(instead)e(of)h(ring-)1110 4390 y(ing)g(the)f(b)s(ell.)41
b(The)30 b(default)g(v)-5 b(alue)31 b(is)f(`)p Fr(off)p
-Fs('.)630 2326 y Fr(skip-completed-text)1110 2436 y Fs(If)i(set)i(to)f
-(`)p Fr(on)p Fs(',)h(this)f(alters)g(the)g(default)g(completion)h(b)s
-(eha)m(vior)f(when)f(in-)1110 2545 y(serting)d(a)h(single)g(matc)m(h)f
-(in)m(to)h(the)g(line.)40 b(It's)30 b(only)f(activ)m(e)i(when)d(p)s
-(erform-)1110 2655 y(ing)35 b(completion)h(in)e(the)h(middle)f(of)h(a)f
-(w)m(ord.)53 b(If)35 b(enabled,)g(readline)g(do)s(es)1110
-2765 y(not)41 b(insert)f(c)m(haracters)i(from)e(the)h(completion)h
-(that)f(matc)m(h)g(c)m(haracters)1110 2874 y(after)c(p)s(oin)m(t)g(in)g
-(the)g(w)m(ord)f(b)s(eing)g(completed,)k(so)d(p)s(ortions)f(of)h(the)g
-(w)m(ord)1110 2984 y(follo)m(wing)c(the)f(cursor)f(are)h(not)g
-(duplicated.)45 b(F)-8 b(or)32 b(instance,)h(if)f(this)f(is)h(en-)1110
-3093 y(abled,)43 b(attempting)f(completion)g(when)d(the)i(cursor)f(is)g
-(after)h(the)g(`)p Fr(e)p Fs(')f(in)1110 3203 y(`)p Fr(Makefile)p
+Fs('.)630 4536 y Fr(show-mode-in-prompt)1110 4646 y Fs(If)35
+b(set)i(to)f(`)p Fr(on)p Fs(',)h(add)e(a)h(c)m(haracter)i(to)e(the)g(b)
+s(eginning)f(of)h(the)g(prompt)f(in-)1110 4756 y(dicating)43
+b(the)f(editing)h(mo)s(de:)63 b(emacs)43 b(\(`)p Fr(@)p
+Fs('\),)i(vi)d(command)g(\(`)p Fr(:)p Fs('\),)k(or)c(vi)1110
+4865 y(insertion)30 b(\(`)p Fr(+)p Fs('\).)42 b(The)30
+b(default)h(v)-5 b(alue)30 b(is)h(`)p Fr(off)p Fs('.)630
+5011 y Fr(skip-completed-text)1110 5121 y Fs(If)h(set)i(to)f(`)p
+Fr(on)p Fs(',)h(this)f(alters)g(the)g(default)g(completion)h(b)s(eha)m
+(vior)f(when)f(in-)1110 5230 y(serting)d(a)h(single)g(matc)m(h)f(in)m
+(to)h(the)g(line.)40 b(It's)30 b(only)f(activ)m(e)i(when)d(p)s(erform-)
+1110 5340 y(ing)35 b(completion)h(in)e(the)h(middle)f(of)h(a)f(w)m
+(ord.)53 b(If)35 b(enabled,)g(readline)g(do)s(es)p eop
+end
+%%Page: 9 13
+TeXDict begin 9 12 bop 150 -116 a Fs(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2153 b(9)1110 299 y(not)41
+b(insert)f(c)m(haracters)i(from)e(the)h(completion)h(that)f(matc)m(h)g
+(c)m(haracters)1110 408 y(after)c(p)s(oin)m(t)g(in)g(the)g(w)m(ord)f(b)
+s(eing)g(completed,)k(so)d(p)s(ortions)f(of)h(the)g(w)m(ord)1110
+518 y(follo)m(wing)c(the)f(cursor)f(are)h(not)g(duplicated.)45
+b(F)-8 b(or)32 b(instance,)h(if)f(this)f(is)h(en-)1110
+628 y(abled,)43 b(attempting)f(completion)g(when)d(the)i(cursor)f(is)g
+(after)h(the)g(`)p Fr(e)p Fs(')f(in)1110 737 y(`)p Fr(Makefile)p
Fs(')c(will)i(result)f(in)g(`)p Fr(Makefile)p Fs(')f(rather)h(than)h(`)
-p Fr(Makefilefile)p Fs(',)1110 3313 y(assuming)d(there)g(is)h(a)f
+p Fr(Makefilefile)p Fs(',)1110 847 y(assuming)d(there)g(is)h(a)f
(single)h(p)s(ossible)f(completion.)56 b(The)35 b(default)g(v)-5
-b(alue)1110 3422 y(is)30 b(`)p Fr(off)p Fs('.)630 3587
-y Fr(visible-stats)1110 3696 y Fs(If)h(set)i(to)f(`)p
+b(alue)1110 956 y(is)30 b(`)p Fr(off)p Fs('.)630 1113
+y Fr(visible-stats)1110 1223 y Fs(If)h(set)i(to)f(`)p
Fr(on)p Fs(',)h(a)f(c)m(haracter)i(denoting)e(a)g(\014le's)g(t)m(yp)s
-(e)g(is)g(app)s(ended)e(to)j(the)1110 3806 y(\014lename)e(when)e
+(e)g(is)g(app)s(ended)e(to)j(the)1110 1332 y(\014lename)e(when)e
(listing)i(p)s(ossible)f(completions.)42 b(The)30 b(default)g(is)h(`)p
-Fr(off)p Fs('.)150 3970 y(Key)f(Bindings)630 4080 y(The)41
+Fr(off)p Fs('.)150 1489 y(Key)f(Bindings)630 1598 y(The)41
b(syn)m(tax)i(for)f(con)m(trolling)h(k)m(ey)g(bindings)e(in)h(the)g
(init)g(\014le)g(is)g(simple.)75 b(First)43 b(y)m(ou)630
-4189 y(need)27 b(to)i(\014nd)d(the)i(name)f(of)h(the)g(command)f(that)i
+1708 y(need)27 b(to)i(\014nd)d(the)i(name)f(of)h(the)g(command)f(that)i
(y)m(ou)f(w)m(an)m(t)g(to)g(c)m(hange.)41 b(The)27 b(follo)m(wing)630
-4299 y(sections)37 b(con)m(tain)g(tables)g(of)f(the)g(command)f(name,)j
+1817 y(sections)37 b(con)m(tain)g(tables)g(of)f(the)g(command)f(name,)j
(the)e(default)g(k)m(eybinding,)h(if)f(an)m(y)-8 b(,)630
-4408 y(and)30 b(a)h(short)f(description)g(of)h(what)f(the)g(command)h
-(do)s(es.)630 4545 y(Once)36 b(y)m(ou)g(kno)m(w)g(the)g(name)g(of)g
+1927 y(and)30 b(a)h(short)f(description)g(of)h(what)f(the)g(command)h
+(do)s(es.)630 2060 y(Once)36 b(y)m(ou)g(kno)m(w)g(the)g(name)g(of)g
(the)g(command,)h(simply)f(place)h(on)e(a)i(line)f(in)g(the)g(init)630
-4655 y(\014le)e(the)g(name)f(of)h(the)g(k)m(ey)g(y)m(ou)g(wish)f(to)h
+2170 y(\014le)e(the)g(name)f(of)h(the)g(k)m(ey)g(y)m(ou)g(wish)f(to)h
(bind)f(the)h(command)f(to,)i(a)f(colon,)i(and)d(then)630
-4765 y(the)f(name)h(of)f(the)g(command.)46 b(There)32
+2279 y(the)f(name)h(of)f(the)g(command.)46 b(There)32
b(can)g(b)s(e)g(no)g(space)g(b)s(et)m(w)m(een)h(the)f(k)m(ey)h(name)g
-(and)630 4874 y(the)41 b(colon)h({)f(that)g(will)g(b)s(e)g(in)m
+(and)630 2389 y(the)41 b(colon)h({)f(that)g(will)g(b)s(e)g(in)m
(terpreted)g(as)g(part)f(of)h(the)g(k)m(ey)h(name.)72
-b(The)40 b(name)h(of)630 4984 y(the)35 b(k)m(ey)g(can)g(b)s(e)f
+b(The)40 b(name)h(of)630 2498 y(the)35 b(k)m(ey)g(can)g(b)s(e)f
(expressed)f(in)i(di\013eren)m(t)g(w)m(a)m(ys,)h(dep)s(ending)d(on)h
-(what)h(y)m(ou)g(\014nd)e(most)630 5093 y(comfortable.)630
-5230 y(In)i(addition)h(to)h(command)f(names,)i(readline)e(allo)m(ws)h
+(what)h(y)m(ou)g(\014nd)e(most)630 2608 y(comfortable.)630
+2741 y(In)i(addition)h(to)h(command)f(names,)i(readline)e(allo)m(ws)h
(k)m(eys)g(to)g(b)s(e)e(b)s(ound)f(to)j(a)f(string)630
-5340 y(that)31 b(is)f(inserted)h(when)e(the)i(k)m(ey)g(is)f(pressed)g
-(\(a)h Fi(macro)5 b Fs(\).)p eop end
-%%Page: 9 13
-TeXDict begin 9 12 bop 150 -116 a Fs(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2153 b(9)630 299 y Fi(k)m(eyname)5
-b Fs(:)42 b Fi(function-name)35 b Fs(or)c Fi(macro)1110
-408 y(k)m(eyname)k Fs(is)29 b(the)f(name)h(of)g(a)g(k)m(ey)h(sp)s
+2851 y(that)31 b(is)f(inserted)h(when)e(the)i(k)m(ey)g(is)f(pressed)g
+(\(a)h Fi(macro)5 b Fs(\).)630 3007 y Fi(k)m(eyname)g
+Fs(:)42 b Fi(function-name)35 b Fs(or)c Fi(macro)1110
+3117 y(k)m(eyname)k Fs(is)29 b(the)f(name)h(of)g(a)g(k)m(ey)h(sp)s
(elled)e(out)h(in)g(English.)39 b(F)-8 b(or)30 b(example:)1350
-541 y Fr(Control-u:)45 b(universal-argument)1350 651
-y(Meta-Rubout:)f(backward-kill-word)1350 760 y(Control-o:)h(">)i
-(output")1110 893 y Fs(In)38 b(the)h(ab)s(o)m(v)m(e)h(example,)h
-Fk(C-u)d Fs(is)h(b)s(ound)d(to)k(the)e(function)h Fr(universal-)1110
-1003 y(argument)p Fs(,)f Fk(M-DEL)e Fs(is)i(b)s(ound)e(to)i(the)g
-(function)g Fr(backward-kill-word)p Fs(,)1110 1112 y(and)g
-Fk(C-o)g Fs(is)h(b)s(ound)e(to)j(run)d(the)j(macro)f(expressed)g(on)f
-(the)i(righ)m(t)f(hand)1110 1222 y(side)30 b(\(that)i(is,)e(to)h
-(insert)g(the)f(text)i(`)p Fr(>)e(output)p Fs(')f(in)m(to)i(the)g
-(line\).)1110 1355 y(A)37 b(n)m(um)m(b)s(er)f(of)h(sym)m(b)s(olic)g(c)m
-(haracter)i(names)e(are)g(recognized)h(while)f(pro-)1110
-1465 y(cessing)22 b(this)g(k)m(ey)g(binding)e(syn)m(tax:)37
-b Fi(DEL)p Fs(,)22 b Fi(ESC)8 b Fs(,)20 b Fi(ESCAPE)5
-b Fs(,)21 b Fi(LFD)5 b Fs(,)22 b Fi(NEW-)1110 1574 y(LINE)5
-b Fs(,)31 b Fi(RET)7 b Fs(,)29 b Fi(RETURN)10 b Fs(,)30
-b Fi(R)m(UBOUT)7 b Fs(,)31 b Fi(SP)-8 b(A)m(CE)5 b Fs(,)31
-b Fi(SPC)8 b Fs(,)29 b(and)h Fi(T)-8 b(AB)5 b Fs(.)630
-1730 y Fr(")p Fi(k)m(eyseq)r Fr(")p Fs(:)41 b Fi(function-name)36
-b Fs(or)30 b Fi(macro)1110 1840 y(k)m(eyseq)k Fs(di\013ers)d(from)f
+3250 y Fr(Control-u:)45 b(universal-argument)1350 3360
+y(Meta-Rubout:)f(backward-kill-word)1350 3469 y(Control-o:)h(">)i
+(output")1110 3602 y Fs(In)94 b(the)g(ab)s(o)m(v)m(e)i(example,)111
+b Fk(C-u)94 b Fs(is)g(b)s(ound)f(to)i(the)f(function)1110
+3712 y Fr(universal-argument)p Fs(,)124 b Fk(M-DEL)107
+b Fs(is)i(b)s(ound)e(to)j(the)f(function)1110 3821 y
+Fr(backward-kill-word)p Fs(,)75 b(and)69 b Fk(C-o)g Fs(is)h(b)s(ound)e
+(to)j(run)d(the)i(macro)1110 3931 y(expressed)45 b(on)h(the)g(righ)m(t)
+g(hand)e(side)i(\(that)h(is,)i(to)e(insert)e(the)h(text)h(`)p
+Fr(>)1110 4041 y(output)p Fs(')29 b(in)m(to)i(the)g(line\).)1110
+4174 y(A)62 b(n)m(um)m(b)s(er)e(of)i(sym)m(b)s(olic)h(c)m(haracter)g
+(names)f(are)g(recognized)h(while)1110 4283 y(pro)s(cessing)40
+b(this)f(k)m(ey)i(binding)e(syn)m(tax:)60 b Fi(DEL)p
+Fs(,)42 b Fi(ESC)p Fs(,)g Fi(ESCAPE)p Fs(,)f Fi(LFD)p
+Fs(,)1110 4393 y Fi(NEWLINE)p Fs(,)31 b Fi(RET)p Fs(,)f
+Fi(RETURN)p Fs(,)g Fi(R)m(UBOUT)p Fs(,)h Fi(SP)-8 b(A)m(CE)p
+Fs(,)31 b Fi(SPC)p Fs(,)e(and)h Fi(T)-8 b(AB)p Fs(.)630
+4549 y Fr(")p Fi(k)m(eyseq)r Fr(")p Fs(:)41 b Fi(function-name)36
+b Fs(or)30 b Fi(macro)1110 4659 y(k)m(eyseq)k Fs(di\013ers)d(from)f
Fi(k)m(eyname)37 b Fs(ab)s(o)m(v)m(e)32 b(in)f(that)h(strings)f
-(denoting)g(an)g(en-)1110 1949 y(tire)j(k)m(ey)h(sequence)f(can)g(b)s
+(denoting)g(an)g(en-)1110 4769 y(tire)j(k)m(ey)h(sequence)f(can)g(b)s
(e)f(sp)s(eci\014ed,)h(b)m(y)f(placing)i(the)f(k)m(ey)g(sequence)g(in)
-1110 2059 y(double)29 b(quotes.)41 b(Some)29 b Fl(gnu)h
+1110 4878 y(double)29 b(quotes.)41 b(Some)29 b Fl(gnu)h
Fs(Emacs)f(st)m(yle)i(k)m(ey)f(escap)s(es)g(can)g(b)s(e)f(used,)g(as)
-1110 2169 y(in)k(the)h(follo)m(wing)i(example,)f(but)e(the)h(sp)s
-(ecial)h(c)m(haracter)g(names)f(are)g(not)1110 2278 y(recognized.)1350
-2411 y Fr("\\C-u":)46 b(universal-argument)1350 2521
-y("\\C-x\\C-r":)f(re-read-init-file)1350 2630 y("\\e[11~":)g("Function)
-h(Key)g(1")1110 2763 y Fs(In)64 b(the)g(ab)s(o)m(v)m(e)i(example,)74
-b Fk(C-u)64 b Fs(is)g(again)i(b)s(ound)c(to)k(the)e(function)1110
-2873 y Fr(universal-argument)39 b Fs(\(just)k(as)h(it)g(w)m(as)g(in)g
-(the)f(\014rst)g(example\),)49 b(`)p Fk(C-x)1110 2982
-y(C-r)p Fs(')30 b(is)g(b)s(ound)e(to)j(the)g(function)f
+1110 4988 y(in)k(the)h(follo)m(wing)i(example,)f(but)e(the)h(sp)s
+(ecial)h(c)m(haracter)g(names)f(are)g(not)1110 5097 y(recognized.)1350
+5230 y Fr("\\C-u":)46 b(universal-argument)1350 5340
+y("\\C-x\\C-r":)f(re-read-init-file)p eop end
+%%Page: 10 14
+TeXDict begin 10 13 bop 150 -116 a Fs(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(10)1350 299 y Fr("\\e[11~":)45
+b("Function)h(Key)g(1")1110 447 y Fs(In)64 b(the)g(ab)s(o)m(v)m(e)i
+(example,)74 b Fk(C-u)64 b Fs(is)g(again)i(b)s(ound)c(to)k(the)e
+(function)1110 556 y Fr(universal-argument)39 b Fs(\(just)k(as)h(it)g
+(w)m(as)g(in)g(the)f(\014rst)g(example\),)49 b(`)p Fk(C-x)1110
+666 y(C-r)p Fs(')30 b(is)g(b)s(ound)e(to)j(the)g(function)f
Fr(re-read-init-file)p Fs(,)c(and)j(`)p Fr(ESC)h([)g(1)g(1)1110
-3092 y(~)p Fs(')g(is)h(b)s(ound)d(to)j(insert)f(the)h(text)g(`)p
-Fr(Function)e(Key)g(1)p Fs('.)630 3248 y(The)g(follo)m(wing)i
+775 y(~)p Fs(')g(is)h(b)s(ound)d(to)j(insert)f(the)h(text)g(`)p
+Fr(Function)e(Key)g(1)p Fs('.)630 961 y(The)g(follo)m(wing)i
Fl(gnu)f Fs(Emacs)g(st)m(yle)h(escap)s(e)f(sequences)g(are)g(a)m(v)-5
-b(ailable)32 b(when)d(sp)s(ecifying)630 3357 y(k)m(ey)i(sequences:)630
-3513 y Fk(\\C-)336 b Fs(con)m(trol)32 b(pre\014x)630
-3670 y Fk(\\M-)336 b Fs(meta)31 b(pre\014x)630 3826 y
+b(ailable)32 b(when)d(sp)s(ecifying)630 1071 y(k)m(ey)i(sequences:)630
+1257 y Fk(\\C-)336 b Fs(con)m(trol)32 b(pre\014x)630
+1443 y Fk(\\M-)336 b Fs(meta)31 b(pre\014x)630 1629 y
Fk(\\e)384 b Fs(an)30 b(escap)s(e)h(c)m(haracter)630
-3982 y Fk(\\\\)384 b Fs(bac)m(kslash)630 4138 y Fk(\\)p
+1815 y Fk(\\\\)384 b Fs(bac)m(kslash)630 2001 y Fk(\\)p
Fr(")g(")p Fs(,)30 b(a)h(double)f(quotation)i(mark)630
-4294 y Fk(\\')384 b Fr(')p Fs(,)30 b(a)h(single)g(quote)g(or)f(ap)s
-(ostrophe)630 4450 y(In)d(addition)h(to)g(the)g Fl(gnu)f
+2186 y Fk(\\')384 b Fr(')p Fs(,)30 b(a)h(single)g(quote)g(or)f(ap)s
+(ostrophe)630 2372 y(In)d(addition)h(to)g(the)g Fl(gnu)f
Fs(Emacs)h(st)m(yle)h(escap)s(e)f(sequences,)h(a)f(second)f(set)h(of)g
-(bac)m(kslash)630 4560 y(escap)s(es)j(is)f(a)m(v)-5 b(ailable:)630
-4716 y Fr(\\a)384 b Fs(alert)31 b(\(b)s(ell\))630 4872
-y Fr(\\b)384 b Fs(bac)m(kspace)630 5028 y Fr(\\d)g Fs(delete)630
-5184 y Fr(\\f)g Fs(form)30 b(feed)630 5340 y Fr(\\n)384
-b Fs(newline)p eop end
-%%Page: 10 14
-TeXDict begin 10 13 bop 150 -116 a Fs(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(10)630 299 y Fr(\\r)384
-b Fs(carriage)32 b(return)630 451 y Fr(\\t)384 b Fs(horizon)m(tal)32
-b(tab)630 604 y Fr(\\v)384 b Fs(v)m(ertical)32 b(tab)630
-756 y Fr(\\)p Fk(nnn)288 b Fs(the)35 b(eigh)m(t-bit)h(c)m(haracter)g
-(whose)e(v)-5 b(alue)35 b(is)g(the)f(o)s(ctal)i(v)-5
-b(alue)35 b Fi(nnn)e Fs(\(one)i(to)1110 866 y(three)c(digits\))630
-1018 y Fr(\\x)p Fk(HH)288 b Fs(the)40 b(eigh)m(t-bit)h(c)m(haracter)g
-(whose)e(v)-5 b(alue)39 b(is)h(the)f(hexadecimal)i(v)-5
-b(alue)40 b Fi(HH)1110 1128 y Fs(\(one)31 b(or)f(t)m(w)m(o)i(hex)e
-(digits\))630 1280 y(When)37 b(en)m(tering)h(the)g(text)g(of)g(a)g
-(macro,)i(single)e(or)f(double)g(quotes)h(m)m(ust)f(b)s(e)g(used)f(to)
-630 1390 y(indicate)23 b(a)e(macro)h(de\014nition.)38
-b(Unquoted)21 b(text)i(is)e(assumed)g(to)h(b)s(e)f(a)h(function)f
-(name.)38 b(In)630 1499 y(the)22 b(macro)f(b)s(o)s(dy)-8
-b(,)23 b(the)e(bac)m(kslash)h(escap)s(es)g(describ)s(ed)e(ab)s(o)m(v)m
-(e)j(are)e(expanded.)37 b(Bac)m(kslash)630 1609 y(will)j(quote)h(an)m
-(y)f(other)g(c)m(haracter)i(in)d(the)i(macro)f(text,)k(including)39
+(bac)m(kslash)630 2482 y(escap)s(es)j(is)f(a)m(v)-5 b(ailable:)630
+2668 y Fr(\\a)384 b Fs(alert)31 b(\(b)s(ell\))630 2854
+y Fr(\\b)384 b Fs(bac)m(kspace)630 3040 y Fr(\\d)g Fs(delete)630
+3226 y Fr(\\f)g Fs(form)30 b(feed)630 3412 y Fr(\\n)384
+b Fs(newline)630 3597 y Fr(\\r)g Fs(carriage)32 b(return)630
+3783 y Fr(\\t)384 b Fs(horizon)m(tal)32 b(tab)630 3969
+y Fr(\\v)384 b Fs(v)m(ertical)32 b(tab)630 4155 y Fr(\\)p
+Fk(nnn)288 b Fs(the)35 b(eigh)m(t-bit)h(c)m(haracter)g(whose)e(v)-5
+b(alue)35 b(is)g(the)f(o)s(ctal)i(v)-5 b(alue)35 b Fi(nnn)e
+Fs(\(one)i(to)1110 4265 y(three)c(digits\))630 4451 y
+Fr(\\x)p Fk(HH)288 b Fs(the)38 b(eigh)m(t-bit)i(c)m(haracter)g(whose)e
+(v)-5 b(alue)39 b(is)f(the)h(hexadecimal)g(v)-5 b(alue)39
+b Fi(HH)1110 4560 y Fs(\(one)31 b(or)f(t)m(w)m(o)i(hex)e(digits\))630
+4746 y(When)37 b(en)m(tering)h(the)g(text)g(of)g(a)g(macro,)i(single)e
+(or)f(double)g(quotes)h(m)m(ust)f(b)s(e)g(used)f(to)630
+4856 y(indicate)23 b(a)e(macro)h(de\014nition.)38 b(Unquoted)21
+b(text)i(is)e(assumed)g(to)h(b)s(e)f(a)h(function)f(name.)38
+b(In)630 4965 y(the)22 b(macro)f(b)s(o)s(dy)-8 b(,)23
+b(the)e(bac)m(kslash)h(escap)s(es)g(describ)s(ed)e(ab)s(o)m(v)m(e)j
+(are)e(expanded.)37 b(Bac)m(kslash)630 5075 y(will)j(quote)h(an)m(y)f
+(other)g(c)m(haracter)i(in)d(the)i(macro)f(text,)k(including)39
b(`)p Fr(")p Fs(')h(and)g(`)p Fr(')p Fs('.)69 b(F)-8
-b(or)630 1718 y(example,)28 b(the)e(follo)m(wing)h(binding)d(will)i
+b(or)630 5185 y(example,)28 b(the)e(follo)m(wing)h(binding)d(will)i
(mak)m(e)h(`)p Fk(C-x)j Fr(\\)p Fs(')c(insert)f(a)h(single)h(`)p
-Fr(\\)p Fs(')f(in)m(to)g(the)g(line:)870 1849 y Fr("\\C-x\\\\":)45
-b("\\\\")150 2042 y Fh(1.3.2)63 b(Conditional)41 b(Init)g(Constructs)
-150 2188 y Fs(Readline)c(implemen)m(ts)g(a)h(facilit)m(y)g(similar)f
-(in)g(spirit)f(to)i(the)f(conditional)h(compilation)g(features)f(of)150
-2298 y(the)31 b(C)f(prepro)s(cessor)g(whic)m(h)g(allo)m(ws)i(k)m(ey)g
-(bindings)d(and)h(v)-5 b(ariable)32 b(settings)f(to)h(b)s(e)e(p)s
-(erformed)f(as)i(the)150 2408 y(result)f(of)h(tests.)41
-b(There)30 b(are)h(four)f(parser)f(directiv)m(es)j(used.)150
-2560 y Fr($if)336 b Fs(The)31 b Fr($if)f Fs(construct)i(allo)m(ws)h
-(bindings)d(to)i(b)s(e)e(made)i(based)f(on)g(the)g(editing)h(mo)s(de,)g
-(the)630 2670 y(terminal)39 b(b)s(eing)e(used,)j(or)e(the)g
-(application)h(using)f(Readline.)64 b(The)38 b(text)h(of)f(the)g(test)
-630 2779 y(extends)30 b(to)h(the)g(end)f(of)g(the)h(line;)g(no)f(c)m
-(haracters)i(are)f(required)e(to)i(isolate)i(it.)630
-2932 y Fr(mode)288 b Fs(The)20 b Fr(mode=)g Fs(form)g(of)h(the)g
-Fr($if)f Fs(directiv)m(e)j(is)e(used)f(to)h(test)h(whether)e(Readline)
-1110 3041 y(is)29 b(in)h Fr(emacs)e Fs(or)h Fr(vi)g Fs(mo)s(de.)40
-b(This)29 b(ma)m(y)h(b)s(e)e(used)h(in)g(conjunction)h(with)f(the)1110
-3151 y(`)p Fr(set)h(keymap)p Fs(')c(command,)i(for)f(instance,)i(to)f
-(set)g(bindings)f(in)g(the)h Fr(emacs-)1110 3260 y(standard)23
-b Fs(and)h Fr(emacs-ctlx)f Fs(k)m(eymaps)i(only)g(if)g(Readline)h(is)f
-(starting)h(out)1110 3370 y(in)k Fr(emacs)f Fs(mo)s(de.)630
-3522 y Fr(term)288 b Fs(The)26 b Fr(term=)g Fs(form)g(ma)m(y)i(b)s(e)e
-(used)g(to)i(include)f(terminal-sp)s(eci\014c)g(k)m(ey)h(bind-)1110
-3632 y(ings,)38 b(p)s(erhaps)c(to)j(bind)e(the)h(k)m(ey)h(sequences)f
-(output)g(b)m(y)g(the)g(terminal's)1110 3742 y(function)24
-b(k)m(eys.)39 b(The)23 b(w)m(ord)h(on)f(the)i(righ)m(t)f(side)g(of)g
-(the)g(`)p Fr(=)p Fs(')g(is)g(tested)h(against)1110 3851
-y(b)s(oth)k(the)h(full)g(name)g(of)g(the)g(terminal)h(and)e(the)i(p)s
-(ortion)e(of)h(the)g(terminal)1110 3961 y(name)k(b)s(efore)f(the)g
-(\014rst)g(`)p Fr(-)p Fs('.)50 b(This)33 b(allo)m(ws)i
-Fr(sun)e Fs(to)h(matc)m(h)g(b)s(oth)f Fr(sun)g Fs(and)1110
-4070 y Fr(sun-cmd)p Fs(,)c(for)h(instance.)630 4223 y
-Fr(application)1110 4332 y Fs(The)21 b Fi(application)j
-Fs(construct)e(is)g(used)f(to)i(include)f(application-sp)s(eci\014c)h
-(set-)1110 4442 y(tings.)39 b(Eac)m(h)26 b(program)e(using)g(the)h
-(Readline)g(library)g(sets)g(the)g Fi(application)1110
-4551 y(name)5 b Fs(,)25 b(and)d(y)m(ou)h(can)g(test)h(for)e(a)h
-(particular)h(v)-5 b(alue.)38 b(This)22 b(could)h(b)s(e)f(used)g(to)
-1110 4661 y(bind)32 b(k)m(ey)h(sequences)g(to)h(functions)e(useful)g
-(for)h(a)g(sp)s(eci\014c)f(program.)48 b(F)-8 b(or)1110
-4771 y(instance,)35 b(the)e(follo)m(wing)h(command)f(adds)f(a)i(k)m(ey)
-f(sequence)h(that)f(quotes)1110 4880 y(the)e(curren)m(t)f(or)g
-(previous)g(w)m(ord)g(in)g(Bash:)1350 5011 y Fr($if)47
-b(Bash)1350 5121 y(#)g(Quote)g(the)g(current)f(or)h(previous)e(word)
-1350 5230 y("\\C-xq":)h("\\eb\\"\\ef\\"")1350 5340 y($endif)p
-eop end
+Fr(\\)p Fs(')f(in)m(to)g(the)g(line:)870 5332 y Fr("\\C-x\\\\":)45
+b("\\\\")p eop end
%%Page: 11 15
TeXDict begin 11 14 bop 150 -116 a Fs(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(11)150 299 y Fr($endif)192
-b Fs(This)29 b(command,)i(as)f(seen)h(in)f(the)g(previous)g(example,)h
-(terminates)g(an)g Fr($if)e Fs(command.)150 458 y Fr($else)240
-b Fs(Commands)29 b(in)h(this)h(branc)m(h)e(of)i(the)f
-Fr($if)g Fs(directiv)m(e)i(are)f(executed)g(if)f(the)h(test)g(fails.)
-150 618 y Fr($include)96 b Fs(This)43 b(directiv)m(e)i(tak)m(es)g(a)e
-(single)i(\014lename)e(as)h(an)f(argumen)m(t)h(and)f(reads)g(commands)
-630 727 y(and)38 b(bindings)f(from)h(that)i(\014le.)65
+b(Command)29 b(Line)i(Editing)2107 b(11)150 299 y Fh(1.3.2)63
+b(Conditional)41 b(Init)g(Constructs)150 446 y Fs(Readline)c(implemen)m
+(ts)g(a)h(facilit)m(y)g(similar)f(in)g(spirit)f(to)i(the)f(conditional)
+h(compilation)g(features)f(of)150 555 y(the)31 b(C)f(prepro)s(cessor)g
+(whic)m(h)g(allo)m(ws)i(k)m(ey)g(bindings)d(and)h(v)-5
+b(ariable)32 b(settings)f(to)h(b)s(e)e(p)s(erformed)f(as)i(the)150
+665 y(result)f(of)h(tests.)41 b(There)30 b(are)h(four)f(parser)f
+(directiv)m(es)j(used.)150 824 y Fr($if)336 b Fs(The)31
+b Fr($if)f Fs(construct)i(allo)m(ws)h(bindings)d(to)i(b)s(e)e(made)i
+(based)f(on)g(the)g(editing)h(mo)s(de,)g(the)630 934
+y(terminal)39 b(b)s(eing)e(used,)j(or)e(the)g(application)h(using)f
+(Readline.)64 b(The)38 b(text)h(of)f(the)g(test)630 1044
+y(extends)30 b(to)h(the)g(end)f(of)g(the)h(line;)g(no)f(c)m(haracters)i
+(are)f(required)e(to)i(isolate)i(it.)630 1203 y Fr(mode)288
+b Fs(The)30 b Fr(mode=)e Fs(form)i(of)g(the)h Fr($if)e
+Fs(directiv)m(e)j(is)e(used)f(to)i(test)g(whether)e(Read-)1110
+1313 y(line)44 b(is)f(in)g Fr(emacs)f Fs(or)h Fr(vi)g
+Fs(mo)s(de.)79 b(This)42 b(ma)m(y)i(b)s(e)e(used)h(in)g(conjunction)
+1110 1422 y(with)c(the)h(`)p Fr(set)29 b(keymap)p Fs(')38
+b(command,)k(for)d(instance,)j(to)e(set)g(bindings)e(in)1110
+1532 y(the)32 b Fr(emacs-standard)c Fs(and)j Fr(emacs-ctlx)d
+Fs(k)m(eymaps)k(only)g(if)g(Readline)g(is)1110 1641 y(starting)f(out)g
+(in)f Fr(emacs)f Fs(mo)s(de.)630 1801 y Fr(term)288 b
+Fs(The)26 b Fr(term=)g Fs(form)g(ma)m(y)i(b)s(e)e(used)g(to)i(include)f
+(terminal-sp)s(eci\014c)g(k)m(ey)h(bind-)1110 1910 y(ings,)38
+b(p)s(erhaps)c(to)j(bind)e(the)h(k)m(ey)h(sequences)f(output)g(b)m(y)g
+(the)g(terminal's)1110 2020 y(function)24 b(k)m(eys.)39
+b(The)23 b(w)m(ord)h(on)f(the)i(righ)m(t)f(side)g(of)g(the)g(`)p
+Fr(=)p Fs(')g(is)g(tested)h(against)1110 2130 y(b)s(oth)k(the)h(full)g
+(name)g(of)g(the)g(terminal)h(and)e(the)i(p)s(ortion)e(of)h(the)g
+(terminal)1110 2239 y(name)k(b)s(efore)f(the)g(\014rst)g(`)p
+Fr(-)p Fs('.)50 b(This)33 b(allo)m(ws)i Fr(sun)e Fs(to)h(matc)m(h)g(b)s
+(oth)f Fr(sun)g Fs(and)1110 2349 y Fr(sun-cmd)p Fs(,)c(for)h(instance.)
+630 2508 y Fr(application)1110 2618 y Fs(The)21 b Fi(application)j
+Fs(construct)e(is)g(used)f(to)i(include)f(application-sp)s(eci\014c)h
+(set-)1110 2727 y(tings.)39 b(Eac)m(h)26 b(program)e(using)g(the)h
+(Readline)g(library)g(sets)g(the)g Fi(application)1110
+2837 y(name)p Fs(,)g(and)e(y)m(ou)g(can)h(test)g(for)f(a)g(particular)h
+(v)-5 b(alue.)39 b(This)22 b(could)h(b)s(e)g(used)f(to)1110
+2946 y(bind)32 b(k)m(ey)h(sequences)g(to)h(functions)e(useful)g(for)h
+(a)g(sp)s(eci\014c)f(program.)48 b(F)-8 b(or)1110 3056
+y(instance,)35 b(the)e(follo)m(wing)h(command)f(adds)f(a)i(k)m(ey)f
+(sequence)h(that)f(quotes)1110 3166 y(the)e(curren)m(t)f(or)g(previous)
+g(w)m(ord)g(in)g(Bash:)1350 3300 y Fr($if)47 b(Bash)1350
+3410 y(#)g(Quote)g(the)g(current)f(or)h(previous)e(word)1350
+3519 y("\\C-xq":)h("\\eb\\"\\ef\\"")1350 3629 y($endif)150
+3788 y($endif)192 b Fs(This)29 b(command,)i(as)f(seen)h(in)f(the)g
+(previous)g(example,)h(terminates)g(an)g Fr($if)e Fs(command.)150
+3948 y Fr($else)240 b Fs(Commands)29 b(in)h(this)h(branc)m(h)e(of)i
+(the)f Fr($if)g Fs(directiv)m(e)i(are)f(executed)g(if)f(the)h(test)g
+(fails.)150 4107 y Fr($include)96 b Fs(This)43 b(directiv)m(e)i(tak)m
+(es)g(a)e(single)i(\014lename)e(as)h(an)f(argumen)m(t)h(and)f(reads)g
+(commands)630 4217 y(and)38 b(bindings)f(from)h(that)i(\014le.)65
b(F)-8 b(or)39 b(example,)j(the)d(follo)m(wing)h(directiv)m(e)g(reads)e
-(from)630 837 y(`)p Fr(/etc/inputrc)p Fs(':)870 971 y
-Fr($include)46 b(/etc/inputrc)150 1171 y Fh(1.3.3)63
-b(Sample)41 b(Init)g(File)150 1318 y Fs(Here)27 b(is)f(an)h(example)g
-(of)f(an)h Fi(inputrc)k Fs(\014le.)39 b(This)26 b(illustrates)h(k)m(ey)
-h(binding,)e(v)-5 b(ariable)27 b(assignmen)m(t,)i(and)150
-1427 y(conditional)j(syn)m(tax.)p eop end
+(from)630 4326 y Fr(/etc/inputrc)p Fs(:)870 4461 y Fr($include)46
+b(/etc/inputrc)150 4660 y Fh(1.3.3)63 b(Sample)41 b(Init)g(File)150
+4807 y Fs(Here)27 b(is)f(an)h(example)g(of)f(an)h Fi(inputrc)k
+Fs(\014le.)39 b(This)26 b(illustrates)h(k)m(ey)h(binding,)e(v)-5
+b(ariable)27 b(assignmen)m(t,)i(and)150 4917 y(conditional)j(syn)m
+(tax.)p eop end
%%Page: 12 16
TeXDict begin 12 15 bop 150 -116 a Fs(Chapter)30 b(1:)41
b(Command)29 b(Line)i(Editing)2107 b(12)390 408 y Fr(#)47
@@ -4866,13 +7662,13 @@ b(This)g(file)g(controls)e(the)i(behaviour)e(of)j(line)e(input)h
g(FTP,)g(Bash,)h(and)g(GDB.)390 737 y(#)390 847 y(#)g(You)g(can)g
(re-read)f(the)h(inputrc)f(file)g(with)h(C-x)g(C-r.)390
956 y(#)g(Lines)g(beginning)e(with)i('#')g(are)g(comments.)390
-1066 y(#)390 1176 y(#)g(First,)g(include)e(any)i(systemwide)e(bindings)
-h(and)h(variable)390 1285 y(#)g(assignments)e(from)i(/etc/Inputrc)390
-1395 y($include)f(/etc/Inputrc)390 1614 y(#)390 1724
-y(#)h(Set)g(various)f(bindings)g(for)h(emacs)f(mode.)390
-1943 y(set)h(editing-mode)d(emacs)390 2162 y($if)j(mode=emacs)390
+1066 y(#)390 1176 y(#)g(First,)g(include)e(any)i(system-wide)e
+(bindings)h(and)g(variable)390 1285 y(#)h(assignments)e(from)i
+(/etc/Inputrc)390 1395 y($include)f(/etc/Inputrc)390
+1614 y(#)390 1724 y(#)h(Set)g(various)f(bindings)g(for)h(emacs)f(mode.)
+390 1943 y(set)h(editing-mode)d(emacs)390 2162 y($if)j(mode=emacs)390
2381 y(Meta-Control-h:)91 b(backward-kill-word)43 b(Text)k(after)f(the)
-h(function)f(name)g(is)h(ignored)p 3971 2401 42 76 v
+h(function)f(name)g(is)h(ignored)p 3970 2401 42 76 v
390 2600 a(#)390 2710 y(#)g(Arrow)g(keys)f(in)i(keypad)e(mode)390
2819 y(#)390 2929 y(#"\\M-OD":)379 b(backward-char)390
3039 y(#"\\M-OC":)g(forward-char)390 3148 y(#"\\M-OA":)g
@@ -4976,404 +7772,436 @@ TeXDict begin 15 18 bop 150 -116 a Fs(Chapter)30 b(1:)41
b(Command)29 b(Line)i(Editing)2107 b(15)150 299 y Fr(next-history)27
b(\(C-n\))630 408 y Fs(Mo)m(v)m(e)32 b(`forw)m(ard')f(through)e(the)i
(history)f(list,)i(fetc)m(hing)f(the)g(next)f(command.)150
-573 y Fr(beginning-of-history)25 b(\(M-<\))630 682 y
+558 y Fr(beginning-of-history)25 b(\(M-<\))630 667 y
Fs(Mo)m(v)m(e)32 b(to)g(the)e(\014rst)g(line)g(in)h(the)f(history)-8
-b(.)150 847 y Fr(end-of-history)26 b(\(M->\))630 956
+b(.)150 817 y Fr(end-of-history)26 b(\(M->\))630 927
y Fs(Mo)m(v)m(e)32 b(to)g(the)e(end)g(of)g(the)h(input)e(history)-8
b(,)31 b(i.e.,)h(the)f(line)f(curren)m(tly)h(b)s(eing)f(en)m(tered.)150
-1121 y Fr(reverse-search-history)24 b(\(C-r\))630 1230
+1076 y Fr(reverse-search-history)24 b(\(C-r\))630 1186
y Fs(Searc)m(h)31 b(bac)m(kw)m(ard)h(starting)g(at)g(the)f(curren)m(t)g
(line)g(and)g(mo)m(ving)h(`up')e(through)h(the)g(his-)630
-1340 y(tory)g(as)f(necessary)-8 b(.)42 b(This)29 b(is)i(an)f(incremen)m
-(tal)i(searc)m(h.)150 1504 y Fr(forward-search-history)24
-b(\(C-s\))630 1614 y Fs(Searc)m(h)30 b(forw)m(ard)f(starting)h(at)g
+1295 y(tory)g(as)f(necessary)-8 b(.)42 b(This)29 b(is)i(an)f(incremen)m
+(tal)i(searc)m(h.)150 1445 y Fr(forward-search-history)24
+b(\(C-s\))630 1554 y Fs(Searc)m(h)30 b(forw)m(ard)f(starting)h(at)g
(the)g(curren)m(t)f(line)h(and)f(mo)m(ving)h(`do)m(wn')f(through)g(the)
-h(the)630 1724 y(history)g(as)h(necessary)-8 b(.)41 b(This)30
-b(is)g(an)h(incremen)m(tal)g(searc)m(h.)150 1888 y Fr
+h(the)630 1664 y(history)g(as)h(necessary)-8 b(.)41 b(This)30
+b(is)g(an)h(incremen)m(tal)g(searc)m(h.)150 1813 y Fr
(non-incremental-reverse-)o(sear)o(ch-h)o(ist)o(ory)24
-b(\(M-p\))630 1998 y Fs(Searc)m(h)31 b(bac)m(kw)m(ard)h(starting)g(at)g
+b(\(M-p\))630 1923 y Fs(Searc)m(h)31 b(bac)m(kw)m(ard)h(starting)g(at)g
(the)f(curren)m(t)g(line)g(and)g(mo)m(ving)h(`up')e(through)h(the)g
-(his-)630 2107 y(tory)36 b(as)g(necessary)h(using)e(a)i(non-incremen)m
+(his-)630 2032 y(tory)36 b(as)g(necessary)h(using)e(a)i(non-incremen)m
(tal)g(searc)m(h)f(for)g(a)g(string)g(supplied)f(b)m(y)h(the)630
-2217 y(user.)150 2381 y Fr(non-incremental-forward-)o(sear)o(ch-h)o
-(ist)o(ory)24 b(\(M-n\))630 2491 y Fs(Searc)m(h)30 b(forw)m(ard)f
+2142 y(user.)150 2291 y Fr(non-incremental-forward-)o(sear)o(ch-h)o
+(ist)o(ory)24 b(\(M-n\))630 2401 y Fs(Searc)m(h)30 b(forw)m(ard)f
(starting)h(at)g(the)g(curren)m(t)f(line)h(and)f(mo)m(ving)h(`do)m(wn')
-f(through)g(the)h(the)630 2600 y(history)d(as)f(necessary)i(using)e(a)h
+f(through)g(the)h(the)630 2511 y(history)d(as)f(necessary)i(using)e(a)h
(non-incremen)m(tal)g(searc)m(h)h(for)e(a)h(string)g(supplied)e(b)m(y)i
-(the)630 2710 y(user.)150 2874 y Fr(history-search-forward)d(\(\))630
-2984 y Fs(Searc)m(h)42 b(forw)m(ard)f(through)f(the)i(history)f(for)g
+(the)630 2620 y(user.)150 2770 y Fr(history-search-forward)d(\(\))630
+2879 y Fs(Searc)m(h)42 b(forw)m(ard)f(through)f(the)i(history)f(for)g
(the)h(string)f(of)h(c)m(haracters)h(b)s(et)m(w)m(een)f(the)630
-3093 y(start)36 b(of)f(the)g(curren)m(t)g(line)g(and)g(the)g(p)s(oin)m
-(t.)55 b(This)34 b(is)i(a)f(non-incremen)m(tal)h(searc)m(h.)56
-b(By)630 3203 y(default,)31 b(this)f(command)g(is)h(un)m(b)s(ound.)150
-3367 y Fr(history-search-backward)24 b(\(\))630 3477
+2989 y(start)36 b(of)h(the)f(curren)m(t)f(line)i(and)e(the)h(p)s(oin)m
+(t.)58 b(The)35 b(searc)m(h)i(string)e(m)m(ust)h(matc)m(h)h(at)g(the)
+630 3098 y(b)s(eginning)32 b(of)g(a)h(history)g(line.)47
+b(This)32 b(is)h(a)f(non-incremen)m(tal)i(searc)m(h.)48
+b(By)33 b(default,)g(this)630 3208 y(command)d(is)h(un)m(b)s(ound.)150
+3357 y Fr(history-search-backward)24 b(\(\))630 3467
y Fs(Searc)m(h)35 b(bac)m(kw)m(ard)g(through)f(the)h(history)g(for)g
(the)f(string)h(of)g(c)m(haracters)h(b)s(et)m(w)m(een)g(the)630
-3587 y(start)g(of)f(the)g(curren)m(t)g(line)g(and)g(the)g(p)s(oin)m(t.)
-55 b(This)34 b(is)i(a)f(non-incremen)m(tal)h(searc)m(h.)56
-b(By)630 3696 y(default,)31 b(this)f(command)g(is)h(un)m(b)s(ound.)150
-3861 y Fr(yank-nth-arg)c(\(M-C-y\))630 3970 y Fs(Insert)37
-b(the)g(\014rst)f(argumen)m(t)i(to)f(the)h(previous)e(command)h
-(\(usually)g(the)g(second)g(w)m(ord)630 4080 y(on)32
-b(the)g(previous)f(line\))i(at)f(p)s(oin)m(t.)46 b(With)32
-b(an)g(argumen)m(t)g Fi(n)p Fs(,)g(insert)g(the)g Fi(n)p
-Fs(th)f(w)m(ord)g(from)630 4189 y(the)k(previous)f(command)h(\(the)g(w)
-m(ords)g(in)f(the)h(previous)g(command)f(b)s(egin)h(with)f(w)m(ord)630
-4299 y(0\).)69 b(A)40 b(negativ)m(e)h(argumen)m(t)f(inserts)g(the)f
+3577 y(start)g(of)h(the)f(curren)m(t)f(line)i(and)e(the)h(p)s(oin)m(t.)
+58 b(The)35 b(searc)m(h)i(string)e(m)m(ust)h(matc)m(h)h(at)g(the)630
+3686 y(b)s(eginning)32 b(of)g(a)h(history)g(line.)47
+b(This)32 b(is)h(a)f(non-incremen)m(tal)i(searc)m(h.)48
+b(By)33 b(default,)g(this)630 3796 y(command)d(is)h(un)m(b)s(ound.)150
+3945 y Fr(history-substr-search-fo)o(rwar)o(d)24 b(\(\))630
+4055 y Fs(Searc)m(h)42 b(forw)m(ard)f(through)f(the)i(history)f(for)g
+(the)h(string)f(of)h(c)m(haracters)h(b)s(et)m(w)m(een)f(the)630
+4164 y(start)29 b(of)g(the)g(curren)m(t)g(line)g(and)f(the)h(p)s(oin)m
+(t.)40 b(The)29 b(searc)m(h)g(string)g(ma)m(y)g(matc)m(h)h(an)m(ywhere)
+630 4274 y(in)i(a)h(history)g(line.)47 b(This)32 b(is)g(a)h
+(non-incremen)m(tal)h(searc)m(h.)47 b(By)33 b(default,)h(this)e
+(command)630 4384 y(is)e(un)m(b)s(ound.)150 4533 y Fr
+(history-substr-search-ba)o(ckwa)o(rd)24 b(\(\))630 4643
+y Fs(Searc)m(h)35 b(bac)m(kw)m(ard)g(through)f(the)h(history)g(for)g
+(the)f(string)h(of)g(c)m(haracters)h(b)s(et)m(w)m(een)g(the)630
+4752 y(start)29 b(of)g(the)g(curren)m(t)g(line)g(and)f(the)h(p)s(oin)m
+(t.)40 b(The)29 b(searc)m(h)g(string)g(ma)m(y)g(matc)m(h)h(an)m(ywhere)
+630 4862 y(in)i(a)h(history)g(line.)47 b(This)32 b(is)g(a)h
+(non-incremen)m(tal)h(searc)m(h.)47 b(By)33 b(default,)h(this)e
+(command)630 4971 y(is)e(un)m(b)s(ound.)150 5121 y Fr(yank-nth-arg)d
+(\(M-C-y\))630 5230 y Fs(Insert)37 b(the)g(\014rst)f(argumen)m(t)i(to)f
+(the)h(previous)e(command)h(\(usually)g(the)g(second)g(w)m(ord)630
+5340 y(on)32 b(the)g(previous)f(line\))i(at)f(p)s(oin)m(t.)46
+b(With)32 b(an)g(argumen)m(t)g Fi(n)p Fs(,)g(insert)g(the)g
+Fi(n)p Fs(th)f(w)m(ord)g(from)p eop end
+%%Page: 16 20
+TeXDict begin 16 19 bop 150 -116 a Fs(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(16)630 299 y(the)35
+b(previous)f(command)h(\(the)g(w)m(ords)g(in)f(the)h(previous)g
+(command)f(b)s(egin)h(with)f(w)m(ord)630 408 y(0\).)69
+b(A)40 b(negativ)m(e)h(argumen)m(t)f(inserts)g(the)f
Fi(n)p Fs(th)g(w)m(ord)g(from)g(the)h(end)f(of)h(the)f(previous)630
-4408 y(command.)48 b(Once)33 b(the)g(argumen)m(t)h Fi(n)e
+518 y(command.)48 b(Once)33 b(the)g(argumen)m(t)h Fi(n)e
Fs(is)h(computed,)h(the)f(argumen)m(t)g(is)g(extracted)i(as)e(if)630
-4518 y(the)e(`)p Fr(!)p Fk(n)11 b Fs(')29 b(history)i(expansion)f(had)g
-(b)s(een)f(sp)s(eci\014ed.)150 4682 y Fr(yank-last-arg)e(\(M-.)i(or)h
-(M-_\))630 4792 y Fs(Insert)k(last)i(argumen)m(t)g(to)g(the)f(previous)
-f(command)h(\(the)h(last)f(w)m(ord)g(of)g(the)g(previous)630
-4902 y(history)e(en)m(try\).)51 b(With)34 b(a)g(n)m(umeric)g(argumen)m
+628 y(the)e(`)p Fr(!)p Fk(n)p Fs(')f(history)g(expansion)g(had)g(b)s
+(een)g(sp)s(eci\014ed.)150 798 y Fr(yank-last-arg)d(\(M-.)i(or)h(M-_\))
+630 908 y Fs(Insert)k(last)i(argumen)m(t)g(to)g(the)f(previous)f
+(command)h(\(the)h(last)f(w)m(ord)g(of)g(the)g(previous)630
+1018 y(history)e(en)m(try\).)51 b(With)34 b(a)g(n)m(umeric)g(argumen)m
(t,)h(b)s(eha)m(v)m(e)f(exactly)h(lik)m(e)g Fr(yank-nth-arg)p
-Fs(.)630 5011 y(Successiv)m(e)26 b(calls)g(to)f Fr(yank-last-arg)c
+Fs(.)630 1127 y(Successiv)m(e)26 b(calls)g(to)f Fr(yank-last-arg)c
Fs(mo)m(v)m(e)27 b(bac)m(k)e(through)f(the)h(history)g(list,)i
-(inserting)630 5121 y(the)c(last)g(w)m(ord)f(\(or)h(the)g(w)m(ord)f(sp)
+(inserting)630 1237 y(the)c(last)g(w)m(ord)f(\(or)h(the)g(w)m(ord)f(sp)
s(eci\014ed)g(b)m(y)g(the)h(argumen)m(t)g(to)g(the)g(\014rst)f(call\))i
-(of)f(eac)m(h)h(line)630 5230 y(in)36 b(turn.)58 b(An)m(y)36
+(of)f(eac)m(h)h(line)630 1346 y(in)36 b(turn.)58 b(An)m(y)36
b(n)m(umeric)h(argumen)m(t)f(supplied)g(to)h(these)g(successiv)m(e)g
-(calls)h(determines)630 5340 y(the)d(direction)g(to)h(mo)m(v)m(e)g
+(calls)h(determines)630 1456 y(the)d(direction)g(to)h(mo)m(v)m(e)g
(through)e(the)h(history)-8 b(.)54 b(A)35 b(negativ)m(e)i(argumen)m(t)e
-(switc)m(hes)h(the)p eop end
-%%Page: 16 20
-TeXDict begin 16 19 bop 150 -116 a Fs(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(16)630 299 y(direction)23
-b(through)g(the)g(history)f(\(bac)m(k)i(or)f(forw)m(ard\).)38
-b(The)22 b(history)h(expansion)g(facilities)630 408 y(are)28
-b(used)f(to)h(extract)h(the)f(last)g(argumen)m(t,)h(as)e(if)h(the)g(`)p
-Fr(!$)p Fs(')f(history)g(expansion)h(had)f(b)s(een)630
-518 y(sp)s(eci\014ed.)150 727 y Fh(1.4.3)63 b(Commands)42
-b(F)-10 b(or)41 b(Changing)g(T)-10 b(ext)150 904 y Fr(delete-char)27
-b(\(C-d\))630 1014 y Fs(Delete)41 b(the)e(c)m(haracter)i(at)e(p)s(oin)m
-(t.)66 b(If)39 b(p)s(oin)m(t)f(is)h(at)h(the)f(b)s(eginning)f(of)h(the)
-g(line,)j(there)630 1124 y(are)37 b(no)g(c)m(haracters)i(in)d(the)i
-(line,)h(and)d(the)h(last)h(c)m(haracter)h(t)m(yp)s(ed)e(w)m(as)g(not)g
-(b)s(ound)e(to)630 1233 y Fr(delete-char)p Fs(,)28 b(then)i(return)f
-Fl(eof)p Fs(.)150 1403 y Fr(backward-delete-char)c(\(Rubout\))630
-1512 y Fs(Delete)32 b(the)f(c)m(haracter)g(b)s(ehind)e(the)h(cursor.)40
+(switc)m(hes)h(the)630 1565 y(direction)23 b(through)g(the)g(history)f
+(\(bac)m(k)i(or)f(forw)m(ard\).)38 b(The)22 b(history)h(expansion)g
+(facilities)630 1675 y(are)28 b(used)f(to)h(extract)h(the)f(last)g
+(argumen)m(t,)h(as)e(if)h(the)g(`)p Fr(!$)p Fs(')f(history)g(expansion)
+h(had)f(b)s(een)630 1785 y(sp)s(eci\014ed.)150 1995 y
+Fh(1.4.3)63 b(Commands)42 b(F)-10 b(or)41 b(Changing)g(T)-10
+b(ext)150 2173 y Fk(end-of-file)27 b Fr(\(usually)h(C-d\))630
+2282 y Fs(The)e(c)m(haracter)h(indicating)h(end-of-\014le)e(as)h(set,)g
+(for)f(example,)i(b)m(y)e Fr(stty)p Fs(.)39 b(If)25 b(this)h(c)m
+(harac-)630 2392 y(ter)c(is)g(read)g(when)e(there)i(are)h(no)e(c)m
+(haracters)j(on)d(the)h(line,)i(and)d(p)s(oin)m(t)h(is)g(at)h(the)f(b)s
+(eginning)630 2501 y(of)31 b(the)f(line,)h(Readline)g(in)m(terprets)g
+(it)g(as)f(the)h(end)f(of)g(input)f(and)h(returns)f Fl(eof)p
+Fs(.)150 2672 y Fr(delete-char)e(\(C-d\))630 2782 y Fs(Delete)35
+b(the)f(c)m(haracter)h(at)f(p)s(oin)m(t.)49 b(If)33 b(this)g(function)g
+(is)g(b)s(ound)e(to)j(the)g(same)f(c)m(haracter)630 2891
+y(as)e(the)f(tt)m(y)i Fl(eof)d Fs(c)m(haracter,)j(as)f
+Fk(C-d)e Fs(commonly)i(is,)g(see)g(ab)s(o)m(v)m(e)h(for)e(the)g
+(e\013ects.)150 3062 y Fr(backward-delete-char)25 b(\(Rubout\))630
+3172 y Fs(Delete)32 b(the)f(c)m(haracter)g(b)s(ehind)e(the)h(cursor.)40
b(A)30 b(n)m(umeric)g(argumen)m(t)h(means)f(to)h(kill)g(the)630
-1622 y(c)m(haracters)h(instead)e(of)h(deleting)g(them.)150
-1792 y Fr(forward-backward-delete-)o(char)24 b(\(\))630
-1901 y Fs(Delete)40 b(the)f(c)m(haracter)h(under)c(the)j(cursor,)h
+3281 y(c)m(haracters)h(instead)e(of)h(deleting)g(them.)150
+3452 y Fr(forward-backward-delete-)o(char)24 b(\(\))630
+3561 y Fs(Delete)40 b(the)f(c)m(haracter)h(under)c(the)j(cursor,)h
(unless)d(the)i(cursor)e(is)h(at)h(the)g(end)e(of)i(the)630
-2011 y(line,)33 b(in)e(whic)m(h)g(case)i(the)f(c)m(haracter)h(b)s
+3671 y(line,)33 b(in)e(whic)m(h)g(case)i(the)f(c)m(haracter)h(b)s
(ehind)d(the)i(cursor)f(is)g(deleted.)46 b(By)32 b(default,)g(this)630
-2120 y(is)e(not)h(b)s(ound)d(to)j(a)g(k)m(ey)-8 b(.)150
-2290 y Fr(quoted-insert)27 b(\(C-q)i(or)h(C-v\))630 2399
+3781 y(is)e(not)h(b)s(ound)d(to)j(a)g(k)m(ey)-8 b(.)150
+3951 y Fr(quoted-insert)27 b(\(C-q)i(or)h(C-v\))630 4061
y Fs(Add)j(the)i(next)f(c)m(haracter)i(t)m(yp)s(ed)e(to)h(the)f(line)h
(v)m(erbatim.)53 b(This)33 b(is)i(ho)m(w)f(to)h(insert)f(k)m(ey)630
-2509 y(sequences)d(lik)m(e)g Fk(C-q)p Fs(,)f(for)g(example.)150
-2679 y Fr(tab-insert)e(\(M-TAB\))630 2788 y Fs(Insert)i(a)h(tab)f(c)m
-(haracter.)150 2958 y Fr(self-insert)d(\(a,)j(b,)g(A,)f(1,)h(!,)g(...)o
-(\))630 3067 y Fs(Insert)g(y)m(ourself.)150 3237 y Fr(transpose-chars)c
-(\(C-t\))630 3347 y Fs(Drag)33 b(the)f(c)m(haracter)h(b)s(efore)f(the)g
+4170 y(sequences)d(lik)m(e)g Fk(C-q)p Fs(,)f(for)g(example.)150
+4341 y Fr(tab-insert)e(\(M-TAB\))630 4451 y Fs(Insert)i(a)h(tab)f(c)m
+(haracter.)150 4621 y Fr(self-insert)d(\(a,)j(b,)g(A,)f(1,)h(!,)g(...)o
+(\))630 4731 y Fs(Insert)g(y)m(ourself.)150 4902 y Fr(transpose-chars)c
+(\(C-t\))630 5011 y Fs(Drag)33 b(the)f(c)m(haracter)h(b)s(efore)f(the)g
(cursor)f(forw)m(ard)h(o)m(v)m(er)h(the)f(c)m(haracter)i(at)e(the)g
-(cursor,)630 3456 y(mo)m(ving)k(the)g(cursor)f(forw)m(ard)g(as)g(w)m
+(cursor,)630 5121 y(mo)m(ving)k(the)g(cursor)f(forw)m(ard)g(as)g(w)m
(ell.)57 b(If)35 b(the)h(insertion)g(p)s(oin)m(t)f(is)g(at)i(the)e(end)
-g(of)h(the)630 3566 y(line,)24 b(then)e(this)g(transp)s(oses)f(the)h
+g(of)h(the)630 5230 y(line,)24 b(then)e(this)g(transp)s(oses)f(the)h
(last)h(t)m(w)m(o)g(c)m(haracters)g(of)f(the)h(line.)38
-b(Negativ)m(e)25 b(argumen)m(ts)630 3675 y(ha)m(v)m(e)32
-b(no)e(e\013ect.)150 3845 y Fr(transpose-words)c(\(M-t\))630
-3955 y Fs(Drag)33 b(the)g(w)m(ord)f(b)s(efore)g(p)s(oin)m(t)g(past)g
-(the)h(w)m(ord)f(after)g(p)s(oin)m(t,)i(mo)m(ving)f(p)s(oin)m(t)f(past)
-g(that)630 4064 y(w)m(ord)c(as)h(w)m(ell.)41 b(If)27
-b(the)i(insertion)f(p)s(oin)m(t)h(is)f(at)h(the)g(end)e(of)i(the)f
-(line,)i(this)e(transp)s(oses)g(the)630 4174 y(last)j(t)m(w)m(o)h(w)m
-(ords)e(on)g(the)h(line.)150 4343 y Fr(upcase-word)c(\(M-u\))630
-4453 y Fs(Upp)s(ercase)32 b(the)g(curren)m(t)g(\(or)g(follo)m(wing\))i
+b(Negativ)m(e)25 b(argumen)m(ts)630 5340 y(ha)m(v)m(e)32
+b(no)e(e\013ect.)p eop end
+%%Page: 17 21
+TeXDict begin 17 20 bop 150 -116 a Fs(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(17)150 299 y Fr(transpose-words)26
+b(\(M-t\))630 408 y Fs(Drag)33 b(the)g(w)m(ord)f(b)s(efore)g(p)s(oin)m
+(t)g(past)g(the)h(w)m(ord)f(after)g(p)s(oin)m(t,)i(mo)m(ving)f(p)s(oin)
+m(t)f(past)g(that)630 518 y(w)m(ord)c(as)h(w)m(ell.)41
+b(If)27 b(the)i(insertion)f(p)s(oin)m(t)h(is)f(at)h(the)g(end)e(of)i
+(the)f(line,)i(this)e(transp)s(oses)g(the)630 628 y(last)j(t)m(w)m(o)h
+(w)m(ords)e(on)g(the)h(line.)150 792 y Fr(upcase-word)c(\(M-u\))630
+902 y Fs(Upp)s(ercase)32 b(the)g(curren)m(t)g(\(or)g(follo)m(wing\))i
(w)m(ord.)45 b(With)32 b(a)g(negativ)m(e)j(argumen)m(t,)e(upp)s(er-)630
-4562 y(case)e(the)g(previous)f(w)m(ord,)g(but)g(do)g(not)h(mo)m(v)m(e)h
-(the)e(cursor.)150 4732 y Fr(downcase-word)d(\(M-l\))630
-4842 y Fs(Lo)m(w)m(ercase)c(the)f(curren)m(t)f(\(or)h(follo)m(wing\))i
+1012 y(case)e(the)g(previous)f(w)m(ord,)g(but)g(do)g(not)h(mo)m(v)m(e)h
+(the)e(cursor.)150 1176 y Fr(downcase-word)d(\(M-l\))630
+1286 y Fs(Lo)m(w)m(ercase)c(the)f(curren)m(t)f(\(or)h(follo)m(wing\))i
(w)m(ord.)37 b(With)22 b(a)g(negativ)m(e)i(argumen)m(t,)g(lo)m(w)m
-(ercase)630 4951 y(the)31 b(previous)e(w)m(ord,)i(but)e(do)i(not)f(mo)m
-(v)m(e)i(the)f(cursor.)150 5121 y Fr(capitalize-word)26
-b(\(M-c\))630 5230 y Fs(Capitalize)d(the)f(curren)m(t)f(\(or)g(follo)m
+(ercase)630 1396 y(the)31 b(previous)e(w)m(ord,)i(but)e(do)i(not)f(mo)m
+(v)m(e)i(the)f(cursor.)150 1560 y Fr(capitalize-word)26
+b(\(M-c\))630 1670 y Fs(Capitalize)d(the)f(curren)m(t)f(\(or)g(follo)m
(wing\))i(w)m(ord.)38 b(With)21 b(a)h(negativ)m(e)h(argumen)m(t,)h
-(capitalize)630 5340 y(the)31 b(previous)e(w)m(ord,)i(but)e(do)i(not)f
-(mo)m(v)m(e)i(the)f(cursor.)p eop end
-%%Page: 17 21
-TeXDict begin 17 20 bop 150 -116 a Fs(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(17)150 299 y Fr(overwrite-mode)26
-b(\(\))630 408 y Fs(T)-8 b(oggle)35 b(o)m(v)m(erwrite)g(mo)s(de.)48
+(capitalize)630 1780 y(the)31 b(previous)e(w)m(ord,)i(but)e(do)i(not)f
+(mo)m(v)m(e)i(the)f(cursor.)150 1944 y Fr(overwrite-mode)26
+b(\(\))630 2054 y Fs(T)-8 b(oggle)35 b(o)m(v)m(erwrite)g(mo)s(de.)48
b(With)33 b(an)g(explicit)h(p)s(ositiv)m(e)g(n)m(umeric)f(argumen)m(t,)
-h(switc)m(hes)630 518 y(to)22 b(o)m(v)m(erwrite)i(mo)s(de.)37
+h(switc)m(hes)630 2163 y(to)22 b(o)m(v)m(erwrite)i(mo)s(de.)37
b(With)22 b(an)g(explicit)h(non-p)s(ositiv)m(e)f(n)m(umeric)g(argumen)m
-(t,)i(switc)m(hes)e(to)630 628 y(insert)30 b(mo)s(de.)41
+(t,)i(switc)m(hes)e(to)630 2273 y(insert)30 b(mo)s(de.)41
b(This)30 b(command)h(a\013ects)h(only)e Fr(emacs)f Fs(mo)s(de;)i
-Fr(vi)f Fs(mo)s(de)g(do)s(es)g(o)m(v)m(erwrite)630 737
+Fr(vi)f Fs(mo)s(de)g(do)s(es)g(o)m(v)m(erwrite)630 2383
y(di\013eren)m(tly)-8 b(.)42 b(Eac)m(h)31 b(call)h(to)f
Fr(readline\(\))c Fs(starts)k(in)f(insert)g(mo)s(de.)630
-872 y(In)e(o)m(v)m(erwrite)j(mo)s(de,)e(c)m(haracters)i(b)s(ound)c(to)j
-Fr(self-insert)c Fs(replace)k(the)g(text)g(at)g(p)s(oin)m(t)630
-982 y(rather)41 b(than)h(pushing)e(the)i(text)g(to)g(the)g(righ)m(t.)75
-b(Characters)42 b(b)s(ound)d(to)j Fr(backward-)630 1092
-y(delete-char)27 b Fs(replace)32 b(the)e(c)m(haracter)i(b)s(efore)e(p)s
-(oin)m(t)h(with)f(a)g(space.)630 1227 y(By)h(default,)f(this)h(command)
-f(is)g(un)m(b)s(ound.)150 1427 y Fh(1.4.4)63 b(Killing)42
-b(And)e(Y)-10 b(anking)150 1600 y Fr(kill-line)28 b(\(C-k\))630
-1709 y Fs(Kill)j(the)f(text)i(from)e(p)s(oin)m(t)g(to)h(the)g(end)e(of)
-i(the)f(line.)150 1870 y Fr(backward-kill-line)25 b(\(C-x)30
-b(Rubout\))630 1980 y Fs(Kill)h(bac)m(kw)m(ard)g(to)g(the)f(b)s
-(eginning)g(of)g(the)h(line.)150 2140 y Fr(unix-line-discard)26
-b(\(C-u\))630 2250 y Fs(Kill)31 b(bac)m(kw)m(ard)g(from)e(the)i(cursor)
-f(to)h(the)f(b)s(eginning)g(of)h(the)f(curren)m(t)g(line.)150
-2411 y Fr(kill-whole-line)c(\(\))630 2520 y Fs(Kill)37
-b(all)g(c)m(haracters)h(on)f(the)f(curren)m(t)h(line,)h(no)f(matter)g
-(where)f(p)s(oin)m(t)h(is.)59 b(By)36 b(default,)630
-2630 y(this)30 b(is)h(un)m(b)s(ound.)150 2790 y Fr(kill-word)d(\(M-d\))
-630 2900 y Fs(Kill)i(from)f(p)s(oin)m(t)g(to)h(the)g(end)e(of)i(the)f
+2520 y(In)52 b(o)m(v)m(erwrite)h(mo)s(de,)58 b(c)m(haracters)c(b)s
+(ound)c(to)j Fr(self-insert)c Fs(replace)k(the)g(text)g(at)630
+2629 y(p)s(oin)m(t)59 b(rather)f(than)h(pushing)e(the)i(text)g(to)h
+(the)f(righ)m(t.)126 b(Characters)59 b(b)s(ound)d(to)630
+2739 y Fr(backward-delete-char)25 b Fs(replace)31 b(the)g(c)m(haracter)
+h(b)s(efore)e(p)s(oin)m(t)g(with)g(a)h(space.)630 2876
+y(By)g(default,)f(this)h(command)f(is)g(un)m(b)s(ound.)150
+3081 y Fh(1.4.4)63 b(Killing)42 b(And)e(Y)-10 b(anking)150
+3255 y Fr(kill-line)28 b(\(C-k\))630 3365 y Fs(Kill)j(the)f(text)i
+(from)e(p)s(oin)m(t)g(to)h(the)g(end)e(of)i(the)f(line.)150
+3530 y Fr(backward-kill-line)25 b(\(C-x)30 b(Rubout\))630
+3639 y Fs(Kill)h(bac)m(kw)m(ard)g(to)g(the)f(b)s(eginning)g(of)g(the)h
+(line.)150 3804 y Fr(unix-line-discard)26 b(\(C-u\))630
+3914 y Fs(Kill)31 b(bac)m(kw)m(ard)g(from)e(the)i(cursor)f(to)h(the)f
+(b)s(eginning)g(of)h(the)f(curren)m(t)g(line.)150 4079
+y Fr(kill-whole-line)c(\(\))630 4188 y Fs(Kill)37 b(all)g(c)m
+(haracters)h(on)f(the)f(curren)m(t)h(line,)h(no)f(matter)g(where)f(p)s
+(oin)m(t)h(is.)59 b(By)36 b(default,)630 4298 y(this)30
+b(is)h(un)m(b)s(ound.)150 4462 y Fr(kill-word)d(\(M-d\))630
+4572 y Fs(Kill)i(from)f(p)s(oin)m(t)g(to)h(the)g(end)e(of)i(the)f
(curren)m(t)h(w)m(ord,)f(or)g(if)h(b)s(et)m(w)m(een)g(w)m(ords,)f(to)h
-(the)g(end)630 3010 y(of)h(the)f(next)h(w)m(ord.)40 b(W)-8
+(the)g(end)630 4682 y(of)h(the)f(next)h(w)m(ord.)40 b(W)-8
b(ord)31 b(b)s(oundaries)e(are)h(the)h(same)g(as)f Fr(forward-word)p
-Fs(.)150 3170 y Fr(backward-kill-word)25 b(\(M-DEL\))630
-3280 y Fs(Kill)k(the)g(w)m(ord)g(b)s(ehind)e(p)s(oin)m(t.)40
+Fs(.)150 4846 y Fr(backward-kill-word)25 b(\(M-DEL\))630
+4956 y Fs(Kill)k(the)g(w)m(ord)g(b)s(ehind)e(p)s(oin)m(t.)40
b(W)-8 b(ord)29 b(b)s(oundaries)f(are)h(the)g(same)g(as)g
-Fr(backward-word)p Fs(.)150 3441 y Fr(unix-word-rubout)d(\(C-w\))630
-3550 y Fs(Kill)32 b(the)g(w)m(ord)f(b)s(ehind)f(p)s(oin)m(t,)i(using)f
+Fr(backward-word)p Fs(.)150 5121 y Fr(unix-word-rubout)d(\(C-w\))630
+5230 y Fs(Kill)32 b(the)g(w)m(ord)f(b)s(ehind)f(p)s(oin)m(t,)i(using)f
(white)h(space)g(as)g(a)g(w)m(ord)f(b)s(oundary)-8 b(.)43
-b(The)31 b(killed)630 3660 y(text)g(is)g(sa)m(v)m(ed)g(on)g(the)f
-(kill-ring.)150 3820 y Fr(unix-filename-rubout)25 b(\(\))630
-3930 y Fs(Kill)37 b(the)f(w)m(ord)g(b)s(ehind)f(p)s(oin)m(t,)j(using)e
-(white)g(space)h(and)f(the)g(slash)g(c)m(haracter)i(as)f(the)630
-4040 y(w)m(ord)30 b(b)s(oundaries.)39 b(The)30 b(killed)h(text)g(is)g
-(sa)m(v)m(ed)g(on)g(the)f(kill-ring.)150 4200 y Fr
-(delete-horizontal-space)24 b(\(\))630 4310 y Fs(Delete)33
-b(all)e(spaces)g(and)e(tabs)i(around)e(p)s(oin)m(t.)41
-b(By)31 b(default,)f(this)h(is)f(un)m(b)s(ound.)150 4471
-y Fr(kill-region)d(\(\))630 4580 y Fs(Kill)k(the)f(text)i(in)e(the)g
-(curren)m(t)h(region.)41 b(By)31 b(default,)f(this)h(command)f(is)g(un)
-m(b)s(ound.)150 4741 y Fr(copy-region-as-kill)25 b(\(\))630
-4851 y Fs(Cop)m(y)34 b(the)g(text)h(in)f(the)g(region)g(to)h(the)f
-(kill)h(bu\013er,)f(so)g(it)h(can)f(b)s(e)f(y)m(ank)m(ed)i(righ)m(t)f
-(a)m(w)m(a)m(y)-8 b(.)630 4960 y(By)31 b(default,)f(this)h(command)f
-(is)g(un)m(b)s(ound.)150 5121 y Fr(copy-backward-word)25
-b(\(\))630 5230 y Fs(Cop)m(y)38 b(the)h(w)m(ord)f(b)s(efore)g(p)s(oin)m
-(t)g(to)i(the)e(kill)h(bu\013er.)64 b(The)38 b(w)m(ord)g(b)s(oundaries)
-f(are)i(the)630 5340 y(same)31 b(as)f Fr(backward-word)p
-Fs(.)38 b(By)30 b(default,)h(this)f(command)g(is)h(un)m(b)s(ound.)p
-eop end
+b(The)31 b(killed)630 5340 y(text)g(is)g(sa)m(v)m(ed)g(on)g(the)f
+(kill-ring.)p eop end
%%Page: 18 22
TeXDict begin 18 21 bop 150 -116 a Fs(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(18)150 299 y Fr(copy-forward-word)
-26 b(\(\))630 408 y Fs(Cop)m(y)31 b(the)g(w)m(ord)g(follo)m(wing)h(p)s
-(oin)m(t)f(to)h(the)f(kill)h(bu\013er.)42 b(The)30 b(w)m(ord)h(b)s
-(oundaries)e(are)j(the)630 518 y(same)f(as)f Fr(forward-word)p
-Fs(.)38 b(By)30 b(default,)h(this)g(command)f(is)g(un)m(b)s(ound.)150
-684 y Fr(yank)f(\(C-y\))630 793 y Fs(Y)-8 b(ank)31 b(the)f(top)h(of)g
-(the)f(kill)h(ring)f(in)m(to)i(the)e(bu\013er)g(at)h(p)s(oin)m(t.)150
-959 y Fr(yank-pop)d(\(M-y\))630 1068 y Fs(Rotate)36 b(the)f(kill-ring,)
-i(and)d(y)m(ank)h(the)f(new)g(top.)54 b(Y)-8 b(ou)35
-b(can)g(only)f(do)h(this)f(if)h(the)g(prior)630 1178
-y(command)30 b(is)h Fr(yank)e Fs(or)h Fr(yank-pop)p Fs(.)150
-1383 y Fh(1.4.5)63 b(Sp)s(ecifying)42 b(Numeric)f(Argumen)m(ts)150
-1558 y Fr(digit-argument)26 b(\()p Fk(M-0)p Fr(,)j Fk(M-1)p
-Fr(,)h(...)f Fk(M--)p Fr(\))630 1668 y Fs(Add)d(this)h(digit)g(to)h
-(the)f(argumen)m(t)g(already)h(accum)m(ulating,)h(or)e(start)h(a)f(new)
-f(argumen)m(t.)630 1777 y Fk(M--)j Fs(starts)i(a)g(negativ)m(e)i
-(argumen)m(t.)150 1943 y Fr(universal-argument)25 b(\(\))630
-2052 y Fs(This)g(is)g(another)h(w)m(a)m(y)g(to)h(sp)s(ecify)e(an)g
+b(Command)29 b(Line)i(Editing)2107 b(18)150 299 y Fr
+(unix-filename-rubout)25 b(\(\))630 408 y Fs(Kill)37
+b(the)f(w)m(ord)g(b)s(ehind)f(p)s(oin)m(t,)j(using)e(white)g(space)h
+(and)f(the)g(slash)g(c)m(haracter)i(as)f(the)630 518
+y(w)m(ord)30 b(b)s(oundaries.)39 b(The)30 b(killed)h(text)g(is)g(sa)m
+(v)m(ed)g(on)g(the)f(kill-ring.)150 693 y Fr(delete-horizontal-space)24
+b(\(\))630 803 y Fs(Delete)33 b(all)e(spaces)g(and)e(tabs)i(around)e(p)
+s(oin)m(t.)41 b(By)31 b(default,)f(this)h(is)f(un)m(b)s(ound.)150
+978 y Fr(kill-region)d(\(\))630 1088 y Fs(Kill)k(the)f(text)i(in)e(the)
+g(curren)m(t)h(region.)41 b(By)31 b(default,)f(this)h(command)f(is)g
+(un)m(b)s(ound.)150 1263 y Fr(copy-region-as-kill)25
+b(\(\))630 1373 y Fs(Cop)m(y)34 b(the)g(text)h(in)f(the)g(region)g(to)h
+(the)f(kill)h(bu\013er,)f(so)g(it)h(can)f(b)s(e)f(y)m(ank)m(ed)i(righ)m
+(t)f(a)m(w)m(a)m(y)-8 b(.)630 1482 y(By)31 b(default,)f(this)h(command)
+f(is)g(un)m(b)s(ound.)150 1657 y Fr(copy-backward-word)25
+b(\(\))630 1767 y Fs(Cop)m(y)38 b(the)h(w)m(ord)f(b)s(efore)g(p)s(oin)m
+(t)g(to)i(the)e(kill)h(bu\013er.)64 b(The)38 b(w)m(ord)g(b)s(oundaries)
+f(are)i(the)630 1877 y(same)31 b(as)f Fr(backward-word)p
+Fs(.)38 b(By)30 b(default,)h(this)f(command)g(is)h(un)m(b)s(ound.)150
+2052 y Fr(copy-forward-word)26 b(\(\))630 2161 y Fs(Cop)m(y)31
+b(the)g(w)m(ord)g(follo)m(wing)h(p)s(oin)m(t)f(to)h(the)f(kill)h
+(bu\013er.)42 b(The)30 b(w)m(ord)h(b)s(oundaries)e(are)j(the)630
+2271 y(same)f(as)f Fr(forward-word)p Fs(.)38 b(By)30
+b(default,)h(this)g(command)f(is)g(un)m(b)s(ound.)150
+2446 y Fr(yank)f(\(C-y\))630 2556 y Fs(Y)-8 b(ank)31
+b(the)f(top)h(of)g(the)f(kill)h(ring)f(in)m(to)i(the)e(bu\013er)g(at)h
+(p)s(oin)m(t.)150 2731 y Fr(yank-pop)d(\(M-y\))630 2841
+y Fs(Rotate)36 b(the)f(kill-ring,)i(and)d(y)m(ank)h(the)f(new)g(top.)54
+b(Y)-8 b(ou)35 b(can)g(only)f(do)h(this)f(if)h(the)g(prior)630
+2950 y(command)30 b(is)h Fr(yank)e Fs(or)h Fr(yank-pop)p
+Fs(.)150 3165 y Fh(1.4.5)63 b(Sp)s(ecifying)42 b(Numeric)f(Argumen)m
+(ts)150 3345 y Fr(digit-argument)26 b(\()p Fk(M-0)p Fr(,)j
+Fk(M-1)p Fr(,)h(...)f Fk(M--)p Fr(\))630 3455 y Fs(Add)d(this)h(digit)g
+(to)h(the)f(argumen)m(t)g(already)h(accum)m(ulating,)h(or)e(start)h(a)f
+(new)f(argumen)m(t.)630 3564 y Fk(M--)j Fs(starts)i(a)g(negativ)m(e)i
+(argumen)m(t.)150 3740 y Fr(universal-argument)25 b(\(\))630
+3849 y Fs(This)g(is)g(another)h(w)m(a)m(y)g(to)h(sp)s(ecify)e(an)g
(argumen)m(t.)40 b(If)25 b(this)g(command)h(is)f(follo)m(w)m(ed)i(b)m
-(y)f(one)630 2162 y(or)k(more)f(digits,)i(optionally)g(with)e(a)h
+(y)f(one)630 3959 y(or)k(more)f(digits,)i(optionally)g(with)e(a)h
(leading)h(min)m(us)e(sign,)h(those)g(digits)g(de\014ne)f(the)h(ar-)630
-2271 y(gumen)m(t.)41 b(If)28 b(the)i(command)f(is)g(follo)m(w)m(ed)h(b)
+4068 y(gumen)m(t.)41 b(If)28 b(the)i(command)f(is)g(follo)m(w)m(ed)h(b)
m(y)f(digits,)i(executing)f Fr(universal-argument)630
-2381 y Fs(again)j(ends)e(the)h(n)m(umeric)f(argumen)m(t,)i(but)e(is)h
+4178 y Fs(again)j(ends)e(the)h(n)m(umeric)f(argumen)m(t,)i(but)e(is)h
(otherwise)g(ignored.)45 b(As)32 b(a)g(sp)s(ecial)h(case,)630
-2491 y(if)g(this)g(command)f(is)h(immediately)h(follo)m(w)m(ed)h(b)m(y)
+4288 y(if)g(this)g(command)f(is)h(immediately)h(follo)m(w)m(ed)h(b)m(y)
d(a)h(c)m(haracter)i(that)e(is)g(neither)g(a)g(digit)630
-2600 y(or)28 b(min)m(us)f(sign,)i(the)f(argumen)m(t)g(coun)m(t)h(for)e
+4397 y(or)28 b(min)m(us)f(sign,)i(the)f(argumen)m(t)g(coun)m(t)h(for)e
(the)i(next)f(command)f(is)h(m)m(ultiplied)h(b)m(y)e(four.)630
-2710 y(The)37 b(argumen)m(t)h(coun)m(t)f(is)h(initially)h(one,)g(so)f
+4507 y(The)37 b(argumen)m(t)h(coun)m(t)f(is)h(initially)h(one,)g(so)f
(executing)g(this)f(function)g(the)h(\014rst)e(time)630
-2819 y(mak)m(es)d(the)e(argumen)m(t)i(coun)m(t)f(four,)f(a)i(second)e
+4616 y(mak)m(es)d(the)e(argumen)m(t)i(coun)m(t)f(four,)f(a)i(second)e
(time)i(mak)m(es)f(the)g(argumen)m(t)g(coun)m(t)h(six-)630
-2929 y(teen,)e(and)f(so)h(on.)40 b(By)31 b(default,)g(this)f(is)g(not)h
-(b)s(ound)d(to)j(a)g(k)m(ey)-8 b(.)150 3134 y Fh(1.4.6)63
+4726 y(teen,)e(and)f(so)h(on.)40 b(By)31 b(default,)g(this)f(is)g(not)h
+(b)s(ound)d(to)j(a)g(k)m(ey)-8 b(.)150 4941 y Fh(1.4.6)63
b(Letting)40 b(Readline)h(T)m(yp)s(e)g(F)-10 b(or)42
-b(Y)-10 b(ou)150 3309 y Fr(complete)28 b(\(TAB\))630
-3419 y Fs(A)m(ttempt)c(to)f(p)s(erform)e(completion)j(on)f(the)g(text)g
+b(Y)-10 b(ou)150 5121 y Fr(complete)28 b(\(TAB\))630
+5230 y Fs(A)m(ttempt)c(to)f(p)s(erform)e(completion)j(on)f(the)g(text)g
(b)s(efore)f(p)s(oin)m(t.)39 b(The)22 b(actual)i(completion)630
-3528 y(p)s(erformed)29 b(is)h(application-sp)s(eci\014c.)42
-b(The)30 b(default)h(is)f(\014lename)h(completion.)150
-3694 y Fr(possible-completions)25 b(\(M-?\))630 3804
-y Fs(List)35 b(the)g(p)s(ossible)f(completions)i(of)e(the)h(text)h(b)s
-(efore)e(p)s(oin)m(t.)54 b(When)34 b(displa)m(ying)h(com-)630
-3913 y(pletions,)f(Readline)f(sets)f(the)h(n)m(um)m(b)s(er)e(of)i
-(columns)f(used)f(for)i(displa)m(y)f(to)h(the)g(v)-5
-b(alue)33 b(of)630 4023 y Fr(completion-display-width)o
-Fs(,)g(the)j(v)-5 b(alue)37 b(of)g(the)f(en)m(vironmen)m(t)h(v)-5
-b(ariable)38 b Fr(COLUMNS)p Fs(,)630 4132 y(or)30 b(the)h(screen)f
-(width,)g(in)g(that)h(order.)150 4298 y Fr(insert-completions)25
-b(\(M-*\))630 4407 y Fs(Insert)30 b(all)h(completions)h(of)f(the)g
-(text)g(b)s(efore)f(p)s(oin)m(t)h(that)g(w)m(ould)f(ha)m(v)m(e)i(b)s
-(een)e(generated)630 4517 y(b)m(y)g Fr(possible-completions)p
-Fs(.)150 4682 y Fr(menu-complete)d(\(\))630 4792 y Fs(Similar)d(to)g
+5340 y(p)s(erformed)29 b(is)h(application-sp)s(eci\014c.)42
+b(The)30 b(default)h(is)f(\014lename)h(completion.)p
+eop end
+%%Page: 19 23
+TeXDict begin 19 22 bop 150 -116 a Fs(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(19)150 299 y Fr
+(possible-completions)25 b(\(M-?\))630 408 y Fs(List)35
+b(the)g(p)s(ossible)f(completions)i(of)e(the)h(text)h(b)s(efore)e(p)s
+(oin)m(t.)54 b(When)34 b(displa)m(ying)h(com-)630 518
+y(pletions,)f(Readline)f(sets)f(the)h(n)m(um)m(b)s(er)e(of)i(columns)f
+(used)f(for)i(displa)m(y)f(to)h(the)g(v)-5 b(alue)33
+b(of)630 628 y Fr(completion-display-width)o Fs(,)g(the)j(v)-5
+b(alue)37 b(of)g(the)f(en)m(vironmen)m(t)h(v)-5 b(ariable)38
+b Fr(COLUMNS)p Fs(,)630 737 y(or)30 b(the)h(screen)f(width,)g(in)g
+(that)h(order.)150 883 y Fr(insert-completions)25 b(\(M-*\))630
+992 y Fs(Insert)30 b(all)h(completions)h(of)f(the)g(text)g(b)s(efore)f
+(p)s(oin)m(t)h(that)g(w)m(ould)f(ha)m(v)m(e)i(b)s(een)e(generated)630
+1102 y(b)m(y)g Fr(possible-completions)p Fs(.)150 1247
+y Fr(menu-complete)d(\(\))630 1357 y Fs(Similar)d(to)g
Fr(complete)p Fs(,)f(but)h(replaces)g(the)g(w)m(ord)g(to)g(b)s(e)f
-(completed)i(with)e(a)i(single)f(matc)m(h)630 4902 y(from)37
+(completed)i(with)e(a)i(single)f(matc)m(h)630 1466 y(from)37
b(the)h(list)h(of)f(p)s(ossible)f(completions.)64 b(Rep)s(eated)39
-b(execution)g(of)f Fr(menu-complete)630 5011 y Fs(steps)i(through)g
+b(execution)g(of)f Fr(menu-complete)630 1576 y Fs(steps)i(through)g
(the)g(list)h(of)f(p)s(ossible)g(completions,)k(inserting)c(eac)m(h)i
-(matc)m(h)f(in)f(turn.)630 5121 y(A)m(t)e(the)f(end)f(of)h(the)g(list)g
+(matc)m(h)f(in)f(turn.)630 1685 y(A)m(t)e(the)f(end)f(of)h(the)g(list)g
(of)g(completions,)i(the)e(b)s(ell)g(is)g(rung)f(\(sub)5
-b(ject)36 b(to)i(the)f(setting)630 5230 y(of)f Fr(bell-style)p
+b(ject)36 b(to)i(the)f(setting)630 1795 y(of)f Fr(bell-style)p
Fs(\))e(and)h(the)h(original)i(text)f(is)f(restored.)57
b(An)36 b(argumen)m(t)h(of)f Fi(n)f Fs(mo)m(v)m(es)i
-Fi(n)630 5340 y Fs(p)s(ositions)e(forw)m(ard)f(in)g(the)h(list)h(of)e
+Fi(n)630 1905 y Fs(p)s(ositions)e(forw)m(ard)f(in)g(the)h(list)h(of)e
(matc)m(hes;)39 b(a)c(negativ)m(e)i(argumen)m(t)e(ma)m(y)g(b)s(e)f
-(used)g(to)p eop end
-%%Page: 19 23
-TeXDict begin 19 22 bop 150 -116 a Fs(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(19)630 299 y(mo)m(v)m(e)40
-b(bac)m(kw)m(ard)e(through)g(the)g(list.)65 b(This)38
-b(command)g(is)g(in)m(tended)g(to)h(b)s(e)f(b)s(ound)e(to)630
-408 y Fr(TAB)p Fs(,)30 b(but)f(is)i(un)m(b)s(ound)d(b)m(y)i(default.)
-150 554 y Fr(menu-complete-backward)24 b(\(\))630 664
-y Fs(Iden)m(tical)36 b(to)g Fr(menu-complete)p Fs(,)d(but)h(mo)m(v)m
-(es)j(bac)m(kw)m(ard)e(through)f(the)i(list)f(of)g(p)s(ossible)630
-773 y(completions,)d(as)e(if)h Fr(menu-complete)26 b
-Fs(had)k(b)s(een)g(giv)m(en)h(a)g(negativ)m(e)i(argumen)m(t.)150
-919 y Fr(delete-char-or-list)25 b(\(\))630 1028 y Fs(Deletes)k(the)e(c)
-m(haracter)h(under)e(the)h(cursor)f(if)h(not)g(at)g(the)g(b)s(eginning)
-g(or)f(end)h(of)g(the)g(line)630 1138 y(\(lik)m(e)k Fr(delete-char)p
-Fs(\).)37 b(If)29 b(at)h(the)f(end)f(of)i(the)f(line,)h(b)s(eha)m(v)m
-(es)g(iden)m(tically)h(to)e Fr(possible-)630 1247 y(completions)p
-Fs(.)38 b(This)29 b(command)h(is)h(un)m(b)s(ound)d(b)m(y)i(default.)150
-1433 y Fh(1.4.7)63 b(Keyb)s(oard)41 b(Macros)150 1598
-y Fr(start-kbd-macro)26 b(\(C-x)j(\(\))630 1707 y Fs(Begin)i(sa)m(ving)
-h(the)e(c)m(haracters)i(t)m(yp)s(ed)e(in)m(to)h(the)g(curren)m(t)f(k)m
-(eyb)s(oard)g(macro.)150 1853 y Fr(end-kbd-macro)d(\(C-x)i(\)\))630
-1962 y Fs(Stop)e(sa)m(ving)h(the)g(c)m(haracters)g(t)m(yp)s(ed)f(in)m
-(to)i(the)e(curren)m(t)g(k)m(eyb)s(oard)g(macro)h(and)f(sa)m(v)m(e)i
-(the)630 2072 y(de\014nition.)150 2218 y Fr(call-last-kbd-macro)c
-(\(C-x)k(e\))630 2327 y Fs(Re-execute)37 b(the)e(last)h(k)m(eyb)s(oard)
-f(macro)h(de\014ned,)f(b)m(y)h(making)f(the)g(c)m(haracters)i(in)e(the)
-630 2437 y(macro)c(app)s(ear)f(as)g(if)h(t)m(yp)s(ed)f(at)h(the)f(k)m
-(eyb)s(oard.)150 2622 y Fh(1.4.8)63 b(Some)41 b(Miscellaneous)i
-(Commands)150 2787 y Fr(re-read-init-file)26 b(\(C-x)j(C-r\))630
-2897 y Fs(Read)22 b(in)g(the)g(con)m(ten)m(ts)h(of)f(the)g
+(used)g(to)630 2014 y(mo)m(v)m(e)40 b(bac)m(kw)m(ard)e(through)g(the)g
+(list.)65 b(This)38 b(command)g(is)g(in)m(tended)g(to)h(b)s(e)f(b)s
+(ound)e(to)630 2124 y Fr(TAB)p Fs(,)30 b(but)f(is)i(un)m(b)s(ound)d(b)m
+(y)i(default.)150 2269 y Fr(menu-complete-backward)24
+b(\(\))630 2379 y Fs(Iden)m(tical)36 b(to)g Fr(menu-complete)p
+Fs(,)d(but)h(mo)m(v)m(es)j(bac)m(kw)m(ard)e(through)f(the)i(list)f(of)g
+(p)s(ossible)630 2488 y(completions,)d(as)e(if)h Fr(menu-complete)26
+b Fs(had)k(b)s(een)g(giv)m(en)h(a)g(negativ)m(e)i(argumen)m(t.)150
+2634 y Fr(delete-char-or-list)25 b(\(\))630 2743 y Fs(Deletes)41
+b(the)e(c)m(haracter)h(under)e(the)h(cursor)f(if)h(not)g(at)g(the)h(b)s
+(eginning)e(or)h(end)f(of)h(the)630 2853 y(line)50 b(\(lik)m(e)h
+Fr(delete-char)p Fs(\).)96 b(If)49 b(at)h(the)g(end)f(of)h(the)f(line,)
+55 b(b)s(eha)m(v)m(es)c(iden)m(tically)g(to)630 2963
+y Fr(possible-completions)p Fs(.)35 b(This)30 b(command)g(is)g(un)m(b)s
+(ound)e(b)m(y)i(default.)150 3148 y Fh(1.4.7)63 b(Keyb)s(oard)41
+b(Macros)150 3313 y Fr(start-kbd-macro)26 b(\(C-x)j(\(\))630
+3422 y Fs(Begin)i(sa)m(ving)h(the)e(c)m(haracters)i(t)m(yp)s(ed)e(in)m
+(to)h(the)g(curren)m(t)f(k)m(eyb)s(oard)g(macro.)150
+3568 y Fr(end-kbd-macro)d(\(C-x)i(\)\))630 3677 y Fs(Stop)e(sa)m(ving)h
+(the)g(c)m(haracters)g(t)m(yp)s(ed)f(in)m(to)i(the)e(curren)m(t)g(k)m
+(eyb)s(oard)g(macro)h(and)f(sa)m(v)m(e)i(the)630 3787
+y(de\014nition.)150 3932 y Fr(call-last-kbd-macro)c(\(C-x)k(e\))630
+4042 y Fs(Re-execute)37 b(the)e(last)h(k)m(eyb)s(oard)f(macro)h
+(de\014ned,)f(b)m(y)h(making)f(the)g(c)m(haracters)i(in)e(the)630
+4151 y(macro)c(app)s(ear)f(as)g(if)h(t)m(yp)s(ed)f(at)h(the)f(k)m(eyb)s
+(oard.)150 4297 y Fr(print-last-kbd-macro)25 b(\(\))630
+4406 y Fs(Prin)m(t)30 b(the)h(last)g(k)m(eb)s(oard)f(macro)h(de\014ned)
+e(in)i(a)f(format)h(suitable)g(for)f(the)h Fi(inputrc)k
+Fs(\014le.)150 4591 y Fh(1.4.8)63 b(Some)41 b(Miscellaneous)i(Commands)
+150 4756 y Fr(re-read-init-file)26 b(\(C-x)j(C-r\))630
+4866 y Fs(Read)22 b(in)g(the)g(con)m(ten)m(ts)h(of)f(the)g
Fi(inputrc)27 b Fs(\014le,)d(and)d(incorp)s(orate)h(an)m(y)h(bindings)d
-(or)i(v)-5 b(ariable)630 3006 y(assignmen)m(ts)31 b(found)e(there.)150
-3152 y Fr(abort)g(\(C-g\))630 3261 y Fs(Ab)s(ort)d(the)h(curren)m(t)f
+(or)i(v)-5 b(ariable)630 4975 y(assignmen)m(ts)31 b(found)e(there.)150
+5121 y Fr(abort)g(\(C-g\))630 5230 y Fs(Ab)s(ort)d(the)h(curren)m(t)f
(editing)h(command)f(and)g(ring)h(the)f(terminal's)h(b)s(ell)g(\(sub)5
-b(ject)26 b(to)i(the)630 3371 y(setting)j(of)g Fr(bell-style)p
-Fs(\).)150 3516 y Fr(do-uppercase-version)25 b(\(M-a,)k(M-b,)g(M-)p
-Fk(x)11 b Fr(,)29 b(...)o(\))630 3626 y Fs(If)e(the)h(meta\014ed)g(c)m
-(haracter)h Fi(x)34 b Fs(is)28 b(lo)m(w)m(ercase,)i(run)d(the)g
-(command)h(that)g(is)g(b)s(ound)d(to)k(the)630 3736 y(corresp)s(onding)
-g(upp)s(ercase)h(c)m(haracter.)150 3881 y Fr(prefix-meta)d(\(ESC\))630
-3991 y Fs(Metafy)39 b(the)e(next)h(c)m(haracter)h(t)m(yp)s(ed.)62
+b(ject)26 b(to)i(the)630 5340 y(setting)j(of)g Fr(bell-style)p
+Fs(\).)p eop end
+%%Page: 20 24
+TeXDict begin 20 23 bop 150 -116 a Fs(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(20)150 299 y Fr
+(do-uppercase-version)25 b(\(M-a,)k(M-b,)g(M-)p Fk(x)p
+Fr(,)g(...)o(\))630 408 y Fs(If)e(the)h(meta\014ed)g(c)m(haracter)h
+Fi(x)34 b Fs(is)28 b(lo)m(w)m(ercase,)i(run)d(the)g(command)h(that)g
+(is)g(b)s(ound)d(to)k(the)630 518 y(corresp)s(onding)g(upp)s(ercase)h
+(c)m(haracter.)150 667 y Fr(prefix-meta)d(\(ESC\))630
+777 y Fs(Metafy)39 b(the)e(next)h(c)m(haracter)h(t)m(yp)s(ed.)62
b(This)37 b(is)g(for)h(k)m(eyb)s(oards)f(without)g(a)h(meta)g(k)m(ey)-8
-b(.)630 4100 y(T)m(yping)30 b(`)p Fr(ESC)g(f)p Fs(')g(is)h(equiv)-5
-b(alen)m(t)31 b(to)g(t)m(yping)g Fk(M-f)p Fs(.)150 4246
-y Fr(undo)e(\(C-_)g(or)h(C-x)g(C-u\))630 4355 y Fs(Incremen)m(tal)h
+b(.)630 887 y(T)m(yping)30 b(`)p Fr(ESC)g(f)p Fs(')g(is)h(equiv)-5
+b(alen)m(t)31 b(to)g(t)m(yping)g Fk(M-f)p Fs(.)150 1036
+y Fr(undo)e(\(C-_)g(or)h(C-x)g(C-u\))630 1146 y Fs(Incremen)m(tal)h
(undo,)f(separately)h(remem)m(b)s(ered)f(for)g(eac)m(h)i(line.)150
-4501 y Fr(revert-line)27 b(\(M-r\))630 4611 y Fs(Undo)33
+1295 y Fr(revert-line)27 b(\(M-r\))630 1405 y Fs(Undo)33
b(all)h(c)m(hanges)g(made)f(to)h(this)f(line.)49 b(This)32
b(is)h(lik)m(e)i(executing)f(the)f Fr(undo)f Fs(command)630
-4720 y(enough)e(times)h(to)g(get)h(bac)m(k)f(to)g(the)f(b)s(eginning.)
-150 4866 y Fr(tilde-expand)d(\(M-~\))630 4975 y Fs(P)m(erform)j(tilde)h
-(expansion)g(on)f(the)g(curren)m(t)h(w)m(ord.)150 5121
-y Fr(set-mark)d(\(C-@\))630 5230 y Fs(Set)33 b(the)g(mark)f(to)i(the)f
+1514 y(enough)e(times)h(to)g(get)h(bac)m(k)f(to)g(the)f(b)s(eginning.)
+150 1664 y Fr(tilde-expand)d(\(M-~\))630 1773 y Fs(P)m(erform)j(tilde)h
+(expansion)g(on)f(the)g(curren)m(t)h(w)m(ord.)150 1923
+y Fr(set-mark)d(\(C-@\))630 2032 y Fs(Set)33 b(the)g(mark)f(to)i(the)f
(p)s(oin)m(t.)48 b(If)32 b(a)h(n)m(umeric)g(argumen)m(t)g(is)g
-(supplied,)f(the)h(mark)g(is)f(set)630 5340 y(to)f(that)g(p)s(osition.)
-p eop end
-%%Page: 20 24
-TeXDict begin 20 23 bop 150 -116 a Fs(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(20)150 299 y Fr
-(exchange-point-and-mark)24 b(\(C-x)29 b(C-x\))630 408
-y Fs(Sw)m(ap)i(the)g(p)s(oin)m(t)g(with)g(the)g(mark.)43
+(supplied,)f(the)h(mark)g(is)f(set)630 2142 y(to)f(that)g(p)s(osition.)
+150 2291 y Fr(exchange-point-and-mark)24 b(\(C-x)29 b(C-x\))630
+2401 y Fs(Sw)m(ap)i(the)g(p)s(oin)m(t)g(with)g(the)g(mark.)43
b(The)31 b(curren)m(t)g(cursor)f(p)s(osition)i(is)f(set)h(to)f(the)h
-(sa)m(v)m(ed)630 518 y(p)s(osition,)f(and)e(the)i(old)g(cursor)e(p)s
-(osition)i(is)f(sa)m(v)m(ed)i(as)e(the)h(mark.)150 711
-y Fr(character-search)26 b(\(C-]\))630 821 y Fs(A)f(c)m(haracter)h(is)f
-(read)g(and)f(p)s(oin)m(t)h(is)g(mo)m(v)m(ed)h(to)g(the)f(next)g(o)s
-(ccurrence)g(of)g(that)g(c)m(haracter.)630 930 y(A)30
+(sa)m(v)m(ed)630 2511 y(p)s(osition,)f(and)e(the)i(old)g(cursor)e(p)s
+(osition)i(is)f(sa)m(v)m(ed)i(as)e(the)h(mark.)150 2660
+y Fr(character-search)26 b(\(C-]\))630 2770 y Fs(A)f(c)m(haracter)h(is)
+f(read)g(and)f(p)s(oin)m(t)h(is)g(mo)m(v)m(ed)h(to)g(the)f(next)g(o)s
+(ccurrence)g(of)g(that)g(c)m(haracter.)630 2879 y(A)30
b(negativ)m(e)j(coun)m(t)e(searc)m(hes)g(for)f(previous)g(o)s
-(ccurrences.)150 1123 y Fr(character-search-backwar)o(d)24
-b(\(M-C-]\))630 1233 y Fs(A)45 b(c)m(haracter)h(is)f(read)g(and)f(p)s
+(ccurrences.)150 3029 y Fr(character-search-backwar)o(d)24
+b(\(M-C-]\))630 3138 y Fs(A)45 b(c)m(haracter)h(is)f(read)g(and)f(p)s
(oin)m(t)h(is)g(mo)m(v)m(ed)h(to)f(the)g(previous)f(o)s(ccurrence)h(of)
-g(that)630 1342 y(c)m(haracter.)d(A)31 b(negativ)m(e)h(coun)m(t)f
+g(that)630 3248 y(c)m(haracter.)d(A)31 b(negativ)m(e)h(coun)m(t)f
(searc)m(hes)h(for)e(subsequen)m(t)f(o)s(ccurrences.)150
-1535 y Fr(skip-csi-sequence)d(\(\))630 1645 y Fs(Read)i(enough)f(c)m
+3397 y Fr(skip-csi-sequence)d(\(\))630 3507 y Fs(Read)i(enough)f(c)m
(haracters)h(to)g(consume)f(a)h(m)m(ulti-k)m(ey)h(sequence)f(suc)m(h)f
-(as)g(those)h(de\014ned)630 1754 y(for)37 b(k)m(eys)h(lik)m(e)g(Home)g
+(as)g(those)h(de\014ned)630 3616 y(for)37 b(k)m(eys)h(lik)m(e)g(Home)g
(and)f(End.)60 b(Suc)m(h)37 b(sequences)g(b)s(egin)g(with)g(a)h(Con)m
-(trol)g(Sequence)630 1864 y(Indicator)f(\(CSI\),)f(usually)h(ESC-[.)59
+(trol)g(Sequence)630 3726 y(Indicator)f(\(CSI\),)f(usually)h(ESC-[.)59
b(If)36 b(this)g(sequence)h(is)g(b)s(ound)d(to)k Fr("\\)p
-Fs(e[)p Fr(")p Fs(,)g(k)m(eys)f(pro-)630 1973 y(ducing)31
+Fs(e[)p Fr(")p Fs(,)g(k)m(eys)f(pro-)630 3836 y(ducing)31
b(suc)m(h)h(sequences)g(will)h(ha)m(v)m(e)g(no)f(e\013ect)h(unless)e
-(explicitly)j(b)s(ound)c(to)i(a)h(readline)630 2083 y(command,)f
+(explicitly)j(b)s(ound)c(to)i(a)h(readline)630 3945 y(command,)f
(instead)g(of)g(inserting)g(stra)m(y)h(c)m(haracters)g(in)m(to)g(the)f
-(editing)h(bu\013er.)44 b(This)31 b(is)630 2193 y(un)m(b)s(ound)d(b)m
+(editing)h(bu\013er.)44 b(This)31 b(is)630 4055 y(un)m(b)s(ound)d(b)m
(y)i(default,)h(but)f(usually)g(b)s(ound)e(to)j(ESC-[.)150
-2385 y Fr(insert-comment)26 b(\(M-#\))630 2495 y Fs(Without)36
+4204 y Fr(insert-comment)26 b(\(M-#\))630 4314 y Fs(Without)36
b(a)g(n)m(umeric)g(argumen)m(t,)h(the)f(v)-5 b(alue)36
b(of)g(the)g Fr(comment-begin)c Fs(v)-5 b(ariable)36
-b(is)g(in-)630 2605 y(serted)c(at)g(the)g(b)s(eginning)f(of)h(the)f
+b(is)g(in-)630 4423 y(serted)c(at)g(the)g(b)s(eginning)f(of)h(the)f
(curren)m(t)h(line.)45 b(If)31 b(a)h(n)m(umeric)f(argumen)m(t)h(is)g
-(supplied,)630 2714 y(this)k(command)h(acts)g(as)g(a)g(toggle:)55
+(supplied,)630 4533 y(this)k(command)h(acts)g(as)g(a)g(toggle:)55
b(if)37 b(the)f(c)m(haracters)i(at)g(the)e(b)s(eginning)g(of)h(the)g
-(line)630 2824 y(do)30 b(not)h(matc)m(h)h(the)f(v)-5
+(line)630 4643 y(do)30 b(not)h(matc)m(h)h(the)f(v)-5
b(alue)31 b(of)f Fr(comment-begin)p Fs(,)e(the)i(v)-5
-b(alue)31 b(is)g(inserted,)g(otherwise)g(the)630 2933
+b(alue)31 b(is)g(inserted,)g(otherwise)g(the)630 4752
y(c)m(haracters)42 b(in)d Fr(comment-begin)e Fs(are)j(deleted)h(from)f
-(the)g(b)s(eginning)g(of)g(the)g(line.)71 b(In)630 3043
+(the)g(b)s(eginning)g(of)g(the)g(line.)71 b(In)630 4862
y(either)31 b(case,)h(the)e(line)h(is)f(accepted)i(as)f(if)f(a)h
-(newline)f(had)g(b)s(een)f(t)m(yp)s(ed.)150 3236 y Fr(dump-functions)d
-(\(\))630 3345 y Fs(Prin)m(t)g(all)i(of)e(the)h(functions)f(and)g
+(newline)f(had)g(b)s(een)f(t)m(yp)s(ed.)150 5011 y Fr(dump-functions)d
+(\(\))630 5121 y Fs(Prin)m(t)g(all)i(of)e(the)h(functions)f(and)g
(their)g(k)m(ey)h(bindings)e(to)j(the)e(Readline)h(output)f(stream.)630
-3455 y(If)31 b(a)h(n)m(umeric)g(argumen)m(t)g(is)g(supplied,)f(the)h
+5230 y(If)31 b(a)h(n)m(umeric)g(argumen)m(t)g(is)g(supplied,)f(the)h
(output)f(is)h(formatted)g(in)f(suc)m(h)h(a)g(w)m(a)m(y)g(that)630
-3565 y(it)f(can)g(b)s(e)e(made)i(part)f(of)g(an)h Fi(inputrc)k
+5340 y(it)f(can)g(b)s(e)e(made)i(part)f(of)g(an)h Fi(inputrc)k
Fs(\014le.)41 b(This)29 b(command)h(is)h(un)m(b)s(ound)c(b)m(y)k
-(default.)150 3757 y Fr(dump-variables)26 b(\(\))630
-3867 y Fs(Prin)m(t)21 b(all)h(of)g(the)f(settable)i(v)-5
+(default.)p eop end
+%%Page: 21 25
+TeXDict begin 21 24 bop 150 -116 a Fs(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(21)150 299 y Fr(dump-variables)26
+b(\(\))630 408 y Fs(Prin)m(t)21 b(all)h(of)g(the)f(settable)i(v)-5
b(ariables)22 b(and)f(their)g(v)-5 b(alues)22 b(to)g(the)f(Readline)h
-(output)f(stream.)630 3977 y(If)31 b(a)h(n)m(umeric)g(argumen)m(t)g(is)
-g(supplied,)f(the)h(output)f(is)h(formatted)g(in)f(suc)m(h)h(a)g(w)m(a)
-m(y)g(that)630 4086 y(it)f(can)g(b)s(e)e(made)i(part)f(of)g(an)h
+(output)f(stream.)630 518 y(If)31 b(a)h(n)m(umeric)g(argumen)m(t)g(is)g
+(supplied,)f(the)h(output)f(is)h(formatted)g(in)f(suc)m(h)h(a)g(w)m(a)m
+(y)g(that)630 628 y(it)f(can)g(b)s(e)e(made)i(part)f(of)g(an)h
Fi(inputrc)k Fs(\014le.)41 b(This)29 b(command)h(is)h(un)m(b)s(ound)c
-(b)m(y)k(default.)150 4279 y Fr(dump-macros)c(\(\))630
-4389 y Fs(Prin)m(t)34 b(all)g(of)g(the)g(Readline)g(k)m(ey)h(sequences)
-f(b)s(ound)e(to)i(macros)g(and)f(the)h(strings)g(they)630
-4498 y(output.)53 b(If)35 b(a)g(n)m(umeric)f(argumen)m(t)i(is)e
+(b)m(y)k(default.)150 787 y Fr(dump-macros)c(\(\))630
+897 y Fs(Prin)m(t)34 b(all)g(of)g(the)g(Readline)g(k)m(ey)h(sequences)f
+(b)s(ound)e(to)i(macros)g(and)f(the)h(strings)g(they)630
+1006 y(output.)53 b(If)35 b(a)g(n)m(umeric)f(argumen)m(t)i(is)e
(supplied,)h(the)g(output)g(is)f(formatted)i(in)e(suc)m(h)h(a)630
-4608 y(w)m(a)m(y)c(that)g(it)f(can)g(b)s(e)g(made)g(part)f(of)i(an)e
+1116 y(w)m(a)m(y)c(that)g(it)f(can)g(b)s(e)g(made)g(part)f(of)i(an)e
Fi(inputrc)35 b Fs(\014le.)41 b(This)29 b(command)h(is)g(un)m(b)s(ound)
-d(b)m(y)630 4717 y(default.)150 4910 y Fr(emacs-editing-mode)e(\(C-e\))
-630 5020 y Fs(When)30 b(in)g Fr(vi)g Fs(command)g(mo)s(de,)g(this)h
+d(b)m(y)630 1225 y(default.)150 1385 y Fr(emacs-editing-mode)e(\(C-e\))
+630 1494 y Fs(When)30 b(in)g Fr(vi)g Fs(command)g(mo)s(de,)g(this)h
(causes)f(a)h(switc)m(h)g(to)g Fr(emacs)e Fs(editing)i(mo)s(de.)150
-5213 y Fr(vi-editing-mode)26 b(\(M-C-j\))630 5322 y Fs(When)k(in)g
+1654 y Fr(vi-editing-mode)26 b(\(M-C-j\))630 1763 y Fs(When)k(in)g
Fr(emacs)f Fs(editing)i(mo)s(de,)f(this)h(causes)f(a)h(switc)m(h)g(to)g
-Fr(vi)f Fs(editing)h(mo)s(de.)p eop end
-%%Page: 21 25
-TeXDict begin 21 24 bop 150 -116 a Fs(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(21)150 299 y Fq(1.5)68
-b(Readline)47 b(vi)e(Mo)t(de)150 458 y Fs(While)32 b(the)g(Readline)g
-(library)f(do)s(es)g(not)h(ha)m(v)m(e)h(a)f(full)f(set)h(of)g
-Fr(vi)f Fs(editing)h(functions,)f(it)h(do)s(es)g(con)m(tain)150
-568 y(enough)i(to)h(allo)m(w)g(simple)f(editing)h(of)f(the)g(line.)52
+Fr(vi)f Fs(editing)h(mo)s(de.)150 1996 y Fq(1.5)68 b(Readline)47
+b(vi)e(Mo)t(de)150 2155 y Fs(While)32 b(the)g(Readline)g(library)f(do)s
+(es)g(not)h(ha)m(v)m(e)h(a)f(full)f(set)h(of)g Fr(vi)f
+Fs(editing)h(functions,)f(it)h(do)s(es)g(con)m(tain)150
+2265 y(enough)i(to)h(allo)m(w)g(simple)f(editing)h(of)f(the)g(line.)52
b(The)34 b(Readline)g Fr(vi)g Fs(mo)s(de)f(b)s(eha)m(v)m(es)i(as)f(sp)s
-(eci\014ed)f(in)150 677 y(the)e Fl(posix)e Fs(standard.)275
-812 y(In)f(order)g(to)i(switc)m(h)g(in)m(teractiv)m(ely)i(b)s(et)m(w)m
+(eci\014ed)f(in)150 2374 y(the)e Fl(posix)e Fs(standard.)275
+2509 y(In)f(order)g(to)i(switc)m(h)g(in)m(teractiv)m(ely)i(b)s(et)m(w)m
(een)d Fr(emacs)f Fs(and)g Fr(vi)h Fs(editing)g(mo)s(des,)g(use)g(the)g
-(command)150 922 y Fk(M-C-j)36 b Fs(\(b)s(ound)h(to)h(emacs-editing-mo)
-s(de)i(when)d(in)g Fr(vi)h Fs(mo)s(de)f(and)g(to)i(vi-editing-mo)s(de)g
-(in)e Fr(emacs)150 1031 y Fs(mo)s(de\).)k(The)30 b(Readline)h(default)f
-(is)g Fr(emacs)f Fs(mo)s(de.)275 1166 y(When)g(y)m(ou)i(en)m(ter)f(a)h
-(line)f(in)g Fr(vi)f Fs(mo)s(de,)h(y)m(ou)h(are)f(already)h(placed)f
-(in)g(`insertion')g(mo)s(de,)g(as)h(if)f(y)m(ou)150 1275
-y(had)f(t)m(yp)s(ed)g(an)g(`)p Fr(i)p Fs('.)41 b(Pressing)29
-b Fr(ESC)f Fs(switc)m(hes)i(y)m(ou)g(in)m(to)h(`command')e(mo)s(de,)h
-(where)e(y)m(ou)i(can)g(edit)g(the)150 1385 y(text)35
-b(of)f(the)g(line)g(with)f(the)h(standard)f Fr(vi)g Fs(mo)m(v)m(emen)m
-(t)j(k)m(eys,)g(mo)m(v)m(e)f(to)f(previous)g(history)f(lines)h(with)150
-1494 y(`)p Fr(k)p Fs(')d(and)e(subsequen)m(t)h(lines)h(with)f(`)p
-Fr(j)p Fs(',)g(and)g(so)h(forth.)p eop end
+(command)150 2619 y Fk(M-C-j)36 b Fs(\(b)s(ound)h(to)h
+(emacs-editing-mo)s(de)i(when)d(in)g Fr(vi)h Fs(mo)s(de)f(and)g(to)i
+(vi-editing-mo)s(de)g(in)e Fr(emacs)150 2728 y Fs(mo)s(de\).)k(The)30
+b(Readline)h(default)f(is)g Fr(emacs)f Fs(mo)s(de.)275
+2863 y(When)g(y)m(ou)i(en)m(ter)f(a)h(line)f(in)g Fr(vi)f
+Fs(mo)s(de,)h(y)m(ou)h(are)f(already)h(placed)f(in)g(`insertion')g(mo)s
+(de,)g(as)h(if)f(y)m(ou)150 2972 y(had)f(t)m(yp)s(ed)g(an)g(`)p
+Fr(i)p Fs('.)41 b(Pressing)29 b Fr(ESC)f Fs(switc)m(hes)i(y)m(ou)g(in)m
+(to)h(`command')e(mo)s(de,)h(where)e(y)m(ou)i(can)g(edit)g(the)150
+3082 y(text)35 b(of)f(the)g(line)g(with)f(the)h(standard)f
+Fr(vi)g Fs(mo)m(v)m(emen)m(t)j(k)m(eys,)g(mo)m(v)m(e)f(to)f(previous)g
+(history)f(lines)h(with)150 3191 y(`)p Fr(k)p Fs(')d(and)e(subsequen)m
+(t)h(lines)h(with)f(`)p Fr(j)p Fs(',)g(and)g(so)h(forth.)p
+eop end
%%Page: 22 26
TeXDict begin 22 25 bop 150 -116 a Fs(Chapter)30 b(2:)41
b(Programming)30 b(with)g(GNU)h(Readline)1683 b(22)150
@@ -5404,40 +8232,39 @@ Fr(malloc\(\))p Fs(;)h(the)f(caller)i(should)d Fr(free\(\))f
Fs(the)j(line)150 2035 y(when)29 b(it)i(has)f(\014nished)f(with)h(it.)
42 b(The)29 b(declaration)j(for)f Fr(readline)d Fs(in)i(ANSI)g(C)g(is)
390 2169 y Fr(char)47 b(*readline)e(\(const)h(char)h(*)p
-Fk(prompt)11 b Fr(\);)150 2302 y Fs(So,)31 b(one)f(migh)m(t)h(sa)m(y)
-390 2435 y Fr(char)47 b(*line)f(=)h(readline)f(\("Enter)g(a)h(line:)g
-("\);)150 2568 y Fs(in)23 b(order)f(to)h(read)g(a)g(line)h(of)f(text)h
-(from)e(the)h(user.)38 b(The)22 b(line)h(returned)f(has)g(the)h
-(\014nal)g(newline)g(remo)m(v)m(ed,)150 2678 y(so)31
-b(only)f(the)h(text)g(remains.)275 2811 y(If)40 b Fr(readline)e
-Fs(encoun)m(ters)j(an)f Fr(EOF)f Fs(while)i(reading)f(the)h(line,)j
-(and)39 b(the)i(line)g(is)f(empt)m(y)h(at)g(that)150
-2921 y(p)s(oin)m(t,)30 b(then)f Fr(\(char)g(*\)NULL)e
-Fs(is)j(returned.)39 b(Otherwise,)30 b(the)f(line)h(is)f(ended)g(just)g
-(as)g(if)h(a)f(newline)h(had)150 3030 y(b)s(een)g(t)m(yp)s(ed.)275
-3163 y(If)c(y)m(ou)h(w)m(an)m(t)h(the)f(user)g(to)g(b)s(e)g(able)g(to)h
-(get)g(at)g(the)f(line)g(later,)i(\(with)e Fr(C-p)f Fs(for)h
-(example\),)i(y)m(ou)e(m)m(ust)150 3273 y(call)32 b Fr(add_history\(\))
-26 b Fs(to)32 b(sa)m(v)m(e)f(the)g(line)g(a)m(w)m(a)m(y)h(in)e(a)h
-Fi(history)38 b Fs(list)31 b(of)g(suc)m(h)f(lines.)390
-3406 y Fr(add_history)45 b(\(line\);)150 3539 y Fs(F)-8
-b(or)31 b(full)f(details)i(on)e(the)g(GNU)h(History)g(Library)-8
-b(,)31 b(see)g(the)f(asso)s(ciated)i(man)m(ual.)275 3673
-y(It)f(is)g(preferable)g(to)i(a)m(v)m(oid)f(sa)m(ving)h(empt)m(y)e
-(lines)h(on)f(the)h(history)f(list,)h(since)g(users)e(rarely)i(ha)m(v)m
-(e)h(a)150 3782 y(burning)28 b(need)h(to)i(reuse)e(a)h(blank)g(line.)40
-b(Here)31 b(is)e(a)h(function)g(whic)m(h)f(usefully)g(replaces)i(the)f
-(standard)150 3892 y Fr(gets\(\))f Fs(library)h(function,)g(and)g(has)g
-(the)g(adv)-5 b(an)m(tage)33 b(of)d(no)g(static)i(bu\013er)e(to)h(o)m
-(v)m(er\015o)m(w:)390 4025 y Fr(/*)47 b(A)h(static)e(variable)f(for)i
-(holding)f(the)h(line.)f(*/)390 4134 y(static)g(char)h(*line_read)e(=)i
-(\(char)g(*\)NULL;)390 4354 y(/*)g(Read)g(a)g(string,)f(and)h(return)f
-(a)i(pointer)d(to)j(it.)533 4463 y(Returns)e(NULL)h(on)g(EOF.)f(*/)390
-4573 y(char)h(*)390 4682 y(rl_gets)f(\(\))390 4792 y({)485
-4902 y(/*)i(If)f(the)g(buffer)f(has)h(already)f(been)g(allocated,)629
-5011 y(return)g(the)h(memory)f(to)h(the)g(free)f(pool.)h(*/)485
-5121 y(if)h(\(line_read\))581 5230 y({)676 5340 y(free)f
-(\(line_read\);)p eop end
+Fk(prompt)p Fr(\);)150 2302 y Fs(So,)31 b(one)f(migh)m(t)h(sa)m(y)390
+2435 y Fr(char)47 b(*line)f(=)h(readline)f(\("Enter)g(a)h(line:)g("\);)
+150 2568 y Fs(in)23 b(order)f(to)h(read)g(a)g(line)h(of)f(text)h(from)e
+(the)h(user.)38 b(The)22 b(line)h(returned)f(has)g(the)h(\014nal)g
+(newline)g(remo)m(v)m(ed,)150 2678 y(so)31 b(only)f(the)h(text)g
+(remains.)275 2811 y(If)40 b Fr(readline)e Fs(encoun)m(ters)j(an)f
+Fr(EOF)f Fs(while)i(reading)f(the)h(line,)j(and)39 b(the)i(line)g(is)f
+(empt)m(y)h(at)g(that)150 2921 y(p)s(oin)m(t,)30 b(then)f
+Fr(\(char)g(*\)NULL)e Fs(is)j(returned.)39 b(Otherwise,)30
+b(the)f(line)h(is)f(ended)g(just)g(as)g(if)h(a)f(newline)h(had)150
+3030 y(b)s(een)g(t)m(yp)s(ed.)275 3163 y(If)c(y)m(ou)h(w)m(an)m(t)h
+(the)f(user)g(to)g(b)s(e)g(able)g(to)h(get)g(at)g(the)f(line)g(later,)i
+(\(with)e Fr(C-p)f Fs(for)h(example\),)i(y)m(ou)e(m)m(ust)150
+3273 y(call)32 b Fr(add_history\(\))26 b Fs(to)32 b(sa)m(v)m(e)f(the)g
+(line)g(a)m(w)m(a)m(y)h(in)e(a)h Fi(history)38 b Fs(list)31
+b(of)g(suc)m(h)f(lines.)390 3406 y Fr(add_history)45
+b(\(line\);)150 3539 y Fs(F)-8 b(or)31 b(full)f(details)i(on)e(the)g
+(GNU)h(History)g(Library)-8 b(,)31 b(see)g(the)f(asso)s(ciated)i(man)m
+(ual.)275 3673 y(It)f(is)g(preferable)g(to)i(a)m(v)m(oid)f(sa)m(ving)h
+(empt)m(y)e(lines)h(on)f(the)h(history)f(list,)h(since)g(users)e
+(rarely)i(ha)m(v)m(e)h(a)150 3782 y(burning)28 b(need)h(to)i(reuse)e(a)
+h(blank)g(line.)40 b(Here)31 b(is)e(a)h(function)g(whic)m(h)f(usefully)
+g(replaces)i(the)f(standard)150 3892 y Fr(gets\(\))f
+Fs(library)h(function,)g(and)g(has)g(the)g(adv)-5 b(an)m(tage)33
+b(of)d(no)g(static)i(bu\013er)e(to)h(o)m(v)m(er\015o)m(w:)390
+4025 y Fr(/*)47 b(A)h(static)e(variable)f(for)i(holding)f(the)h(line.)f
+(*/)390 4134 y(static)g(char)h(*line_read)e(=)i(\(char)g(*\)NULL;)390
+4354 y(/*)g(Read)g(a)g(string,)f(and)h(return)f(a)i(pointer)d(to)j(it.)
+533 4463 y(Returns)e(NULL)h(on)g(EOF.)f(*/)390 4573 y(char)h(*)390
+4682 y(rl_gets)f(\(\))390 4792 y({)485 4902 y(/*)i(If)f(the)g(buffer)f
+(has)h(already)f(been)g(allocated,)629 5011 y(return)g(the)h(memory)f
+(to)h(the)g(free)f(pool.)h(*/)485 5121 y(if)h(\(line_read\))581
+5230 y({)676 5340 y(free)f(\(line_read\);)p eop end
%%Page: 23 27
TeXDict begin 23 26 bop 150 -116 a Fs(Chapter)30 b(2:)41
b(Programming)30 b(with)g(GNU)h(Readline)1683 b(23)676
@@ -5453,20 +8280,20 @@ b(completion)30 b(on)e(\014le)150 1877 y(names.)41 b(If)31
b(y)m(ou)g(do)f(not)h(w)m(an)m(t)g(Readline)h(to)f(complete)h(on)f
(\014lenames,)g(y)m(ou)g(can)f(c)m(hange)i(the)f(binding)150
1986 y(of)g(the)f Fr(TAB)g Fs(k)m(ey)h(with)f Fr(rl_bind_key\(\))p
-Fs(.)390 2139 y Fr(int)47 b(rl_bind_key)e(\(int)h Fk(key)11
-b Fr(,)46 b(rl_command_func_t)d(*)p Fk(function)11 b
-Fr(\);)275 2292 y(rl_bind_key\(\))29 b Fs(tak)m(es)35
-b(t)m(w)m(o)g(argumen)m(ts:)47 b Fi(k)m(ey)c Fs(is)33
-b(the)h(c)m(haracter)h(that)f(y)m(ou)g(w)m(an)m(t)g(to)g(bind,)g(and)
-150 2402 y Fi(function)39 b Fs(is)f(the)h(address)f(of)h(the)g
-(function)g(to)g(call)i(when)c Fi(k)m(ey)48 b Fs(is)39
-b(pressed.)65 b(Binding)38 b Fr(TAB)g Fs(to)i Fr(rl_)150
-2511 y(insert\(\))c Fs(mak)m(es)k Fr(TAB)e Fs(insert)g(itself.)67
-b Fr(rl_bind_key\(\))35 b Fs(returns)j(non-zero)h(if)g
-Fi(k)m(ey)47 b Fs(is)39 b(not)g(a)g(v)-5 b(alid)150 2621
-y(ASCI)s(I)29 b(c)m(haracter)j(co)s(de)e(\(b)s(et)m(w)m(een)i(0)f(and)e
-(255\).)275 2774 y(Th)m(us,)g(to)i(disable)g(the)f(default)h
-Fr(TAB)e Fs(b)s(eha)m(vior,)i(the)g(follo)m(wing)g(su\016ces:)390
+Fs(.)390 2139 y Fr(int)47 b(rl_bind_key)e(\(int)h Fk(key)p
+Fr(,)h(rl_command_func_t)c(*)p Fk(function)p Fr(\);)275
+2292 y(rl_bind_key\(\))29 b Fs(tak)m(es)35 b(t)m(w)m(o)g(argumen)m(ts:)
+47 b Fi(k)m(ey)c Fs(is)33 b(the)h(c)m(haracter)h(that)f(y)m(ou)g(w)m
+(an)m(t)g(to)g(bind,)g(and)150 2402 y Fi(function)39
+b Fs(is)f(the)h(address)f(of)h(the)g(function)g(to)g(call)i(when)c
+Fi(k)m(ey)48 b Fs(is)39 b(pressed.)65 b(Binding)38 b
+Fr(TAB)g Fs(to)i Fr(rl_)150 2511 y(insert\(\))c Fs(mak)m(es)k
+Fr(TAB)e Fs(insert)g(itself.)67 b Fr(rl_bind_key\(\))35
+b Fs(returns)j(non-zero)h(if)g Fi(k)m(ey)47 b Fs(is)39
+b(not)g(a)g(v)-5 b(alid)150 2621 y(ASCI)s(I)29 b(c)m(haracter)j(co)s
+(de)e(\(b)s(et)m(w)m(een)i(0)f(and)e(255\).)275 2774
+y(Th)m(us,)g(to)i(disable)g(the)f(default)h Fr(TAB)e
+Fs(b)s(eha)m(vior,)i(the)g(follo)m(wing)g(su\016ces:)390
2927 y Fr(rl_bind_key)45 b(\('\\t',)h(rl_insert\);)275
3080 y Fs(This)25 b(co)s(de)i(should)e(b)s(e)h(executed)h(once)g(at)g
(the)g(start)g(of)f(y)m(our)h(program;)g(y)m(ou)g(migh)m(t)g(write)g(a)
@@ -5474,7 +8301,7 @@ g(func-)150 3190 y(tion)33 b(called)h Fr(initialize_readline\(\))27
b Fs(whic)m(h)33 b(p)s(erforms)e(this)h(and)h(other)g(desired)f
(initializations,)150 3299 y(suc)m(h)e(as)h(installing)g(custom)g
(completers)g(\(see)g(Section)h(2.6)f([Custom)f(Completers],)h(page)g
-(43\).)150 3559 y Fq(2.2)68 b(Custom)45 b(F)-11 b(unctions)150
+(46\).)150 3559 y Fq(2.2)68 b(Custom)45 b(F)-11 b(unctions)150
3719 y Fs(Readline)28 b(pro)m(vides)f(man)m(y)g(functions)g(for)g
(manipulating)h(the)f(text)h(of)g(the)f(line,)i(but)d(it)i(isn't)f(p)s
(ossible)150 3828 y(to)37 b(an)m(ticipate)i(the)e(needs)f(of)h(all)g
@@ -5511,11 +8338,11 @@ b Fs(w)m(ould)30 b(b)s(e)g Fr(0x0402)p Fs(.)p eop end
TeXDict begin 24 27 bop 150 -116 a Fs(Chapter)30 b(2:)41
b(Programming)30 b(with)g(GNU)h(Readline)1683 b(24)150
299 y Fh(2.2.1)63 b(Readline)40 b(T)m(yp)s(edefs)150
-446 y Fs(F)-8 b(or)31 b(readabilt)m(y)-8 b(,)32 b(w)m(e)f(declare)h(a)e
-(n)m(um)m(b)s(er)f(of)i(new)f(ob)5 b(ject)31 b(t)m(yp)s(es,)g(all)g(p)s
-(oin)m(ters)f(to)h(functions.)275 585 y(The)k(reason)h(for)f(declaring)
-h(these)h(new)e(t)m(yp)s(es)g(is)h(to)h(mak)m(e)f(it)g(easier)h(to)f
-(write)g(co)s(de)g(describing)150 694 y(p)s(oin)m(ters)30
+446 y Fs(F)-8 b(or)31 b(readabilit)m(y)-8 b(,)33 b(w)m(e)d(declare)i(a)
+f(n)m(um)m(b)s(er)e(of)h(new)g(ob)5 b(ject)31 b(t)m(yp)s(es,)g(all)g(p)
+s(oin)m(ters)f(to)i(functions.)275 585 y(The)j(reason)h(for)f
+(declaring)h(these)h(new)e(t)m(yp)s(es)g(is)h(to)h(mak)m(e)f(it)g
+(easier)h(to)f(write)g(co)s(de)g(describing)150 694 y(p)s(oin)m(ters)30
b(to)h(C)f(functions)g(with)g(appropriately)h(protot)m(yp)s(ed)f
(argumen)m(ts)h(and)f(return)f(v)-5 b(alues.)275 833
y(F)d(or)37 b(instance,)j(sa)m(y)d(w)m(e)g(w)m(an)m(t)h(to)g(declare)f
@@ -5591,7 +8418,7 @@ b(are)g(a)m(v)-5 b(ailable)33 b(to)e(function)f(writers.)3371
1583 y Fs(This)30 b(is)i(the)f(line)g(gathered)h(so)f(far.)43
b(Y)-8 b(ou)32 b(are)f(w)m(elcome)i(to)f(mo)s(dify)f(the)g(con)m(ten)m
(ts)i(of)e(the)g(line,)390 1693 y(but)k(see)h(Section)g(2.4.5)h([Allo)m
-(wing)h(Undoing],)f(page)f(33.)57 b(The)35 b(function)g
+(wing)h(Undoing],)f(page)f(34.)57 b(The)35 b(function)g
Fr(rl_extend_line_)390 1802 y(buffer)29 b Fs(is)h(a)m(v)-5
b(ailable)33 b(to)e(increase)g(the)g(memory)f(allo)s(cated)i(to)f
Fr(rl_line_buffer)p Fs(.)3371 1998 y([V)-8 b(ariable])-3598
@@ -5644,13 +8471,13 @@ b(Programming)30 b(with)g(GNU)h(Readline)1683 b(26)3371
b(is)g(set)h(from)e(the)i(argumen)m(t)f(to)h Fr(readline\(\))p
Fs(,)d(and)i(should)390 518 y(not)h(b)s(e)f(assigned)h(to)h(directly)-8
b(.)41 b(The)26 b Fr(rl_set_prompt\(\))d Fs(function)j(\(see)i(Section)
-g(2.4.6)h([Redis-)390 628 y(pla)m(y],)i(page)h(34\))f(ma)m(y)g(b)s(e)f
+g(2.4.6)h([Redis-)390 628 y(pla)m(y],)i(page)h(35\))f(ma)m(y)g(b)s(e)f
(used)f(to)j(mo)s(dify)d(the)i(prompt)e(string)h(after)h(calling)h
Fr(readline\(\))p Fs(.)3371 814 y([V)-8 b(ariable])-3598
b Fg(char)54 b(*)e(rl_display_prompt)390 924 y Fs(The)31
-b(string)h(displa)m(y)m(ed)g(as)g(the)f(prompt.)44 b(This)31
-b(is)g(usually)h(iden)m(tical)h(to)f Fi(rl)p 3029 924
-28 4 v 40 w(prompt)r Fs(,)f(but)g(ma)m(y)390 1033 y(b)s(e)j(c)m(hanged)
+b(string)h(displa)m(y)m(ed)g(as)g(the)g(prompt.)44 b(This)31
+b(is)h(usually)f(iden)m(tical)j(to)e Fi(rl)p 3031 924
+28 4 v 40 w(prompt)p Fs(,)f(but)g(ma)m(y)390 1033 y(b)s(e)j(c)m(hanged)
g(temp)s(orarily)h(b)m(y)f(functions)g(that)g(use)g(the)h(prompt)e
(string)h(as)h(a)f(message)i(area,)390 1143 y(suc)m(h)30
b(as)h(incremen)m(tal)g(searc)m(h.)3371 1329 y([V)-8
@@ -5694,7 +8521,7 @@ b(is)g(set)f(to)h(a)g(unique)e(name)h(b)m(y)g(eac)m(h)i(application)f
(using)f(Readline.)44 b(The)30 b(v)-5 b(alue)390 3904
y(allo)m(ws)29 b(conditional)h(parsing)d(of)h(the)h(inputrc)e(\014le)h
(\(see)h(Section)g(1.3.2)g([Conditional)g(Init)f(Con-)390
-4014 y(structs],)j(page)g(10\).)3371 4200 y([V)-8 b(ariable])-3598
+4014 y(structs],)j(page)g(11\).)3371 4200 y([V)-8 b(ariable])-3598
b Fg(FILE)54 b(*)e(rl_instream)390 4310 y Fs(The)40 b(stdio)i(stream)f
(from)g(whic)m(h)f(Readline)i(reads)f(input.)71 b(If)41
b Fr(NULL)p Fs(,)i(Readline)e(defaults)g(to)390 4419
@@ -5702,7 +8529,7 @@ y Fi(stdin)p Fs(.)3371 4606 y([V)-8 b(ariable])-3598
b Fg(FILE)54 b(*)e(rl_outstream)390 4715 y Fs(The)34
b(stdio)h(stream)f(to)i(whic)m(h)e(Readline)h(p)s(erforms)e(output.)52
b(If)34 b Fr(NULL)p Fs(,)h(Readline)g(defaults)f(to)390
-4825 y Fi(stdout)r Fs(.)3371 5011 y([V)-8 b(ariable])-3598
+4825 y Fi(stdout)p Fs(.)3371 5011 y([V)-8 b(ariable])-3598
b Fg(int)53 b(rl_prefer_env_winsize)390 5121 y Fs(If)28
b(non-zero,)h(Readline)g(giv)m(es)h(v)-5 b(alues)29 b(found)e(in)h(the)
g Fr(LINES)f Fs(and)h Fr(COLUMNS)e Fs(en)m(vironmen)m(t)j(v)-5
@@ -5717,1747 +8544,1921 @@ b(*)c(rl_last_func)390 408 y Fs(The)34 b(address)g(of)h(the)g(last)h
(command)e(function)g(Readline)i(executed.)55 b(Ma)m(y)35
b(b)s(e)g(used)f(to)h(test)390 518 y(whether)30 b(or)g(not)h(a)f
(function)h(is)f(b)s(eing)g(executed)h(t)m(wice)h(in)e(succession,)h
-(for)f(example.)3371 726 y([V)-8 b(ariable])-3598 b Fg(rl_hook_func_t)
-57 b(*)52 b(rl_startup_hook)390 836 y Fs(If)34 b(non-zero,)i(this)e(is)
+(for)f(example.)3371 737 y([V)-8 b(ariable])-3598 b Fg(rl_hook_func_t)
+57 b(*)52 b(rl_startup_hook)390 847 y Fs(If)34 b(non-zero,)i(this)e(is)
h(the)f(address)f(of)i(a)g(function)f(to)h(call)g(just)f(b)s(efore)g
-Fr(readline)e Fs(prin)m(ts)i(the)390 945 y(\014rst)c(prompt.)3371
-1154 y([V)-8 b(ariable])-3598 b Fg(rl_hook_func_t)57
-b(*)52 b(rl_pre_input_hook)390 1263 y Fs(If)35 b(non-zero,)j(this)d(is)
+Fr(readline)e Fs(prin)m(ts)i(the)390 956 y(\014rst)c(prompt.)3371
+1176 y([V)-8 b(ariable])-3598 b Fg(rl_hook_func_t)57
+b(*)52 b(rl_pre_input_hook)390 1285 y Fs(If)35 b(non-zero,)j(this)d(is)
g(the)h(address)f(of)g(a)h(function)f(to)i(call)f(after)g(the)g
-(\014rst)f(prompt)f(has)i(b)s(een)390 1373 y(prin)m(ted)30
+(\014rst)f(prompt)f(has)i(b)s(een)390 1395 y(prin)m(ted)30
b(and)g(just)f(b)s(efore)h Fr(readline)f Fs(starts)h(reading)h(input)e
-(c)m(haracters.)3371 1581 y([V)-8 b(ariable])-3598 b
-Fg(rl_hook_func_t)57 b(*)52 b(rl_event_hook)390 1691
+(c)m(haracters.)3371 1614 y([V)-8 b(ariable])-3598 b
+Fg(rl_hook_func_t)57 b(*)52 b(rl_event_hook)390 1724
y Fs(If)40 b(non-zero,)k(this)d(is)f(the)h(address)f(of)h(a)g(function)
f(to)h(call)h(p)s(erio)s(dically)f(when)f(Readline)h(is)390
-1800 y(w)m(aiting)30 b(for)f(terminal)h(input.)39 b(By)30
+1833 y(w)m(aiting)30 b(for)f(terminal)h(input.)39 b(By)30
b(default,)g(this)f(will)g(b)s(e)g(called)h(at)g(most)f(ten)h(times)f
-(a)h(second)390 1910 y(if)g(there)h(is)f(no)h(k)m(eyb)s(oard)f(input.)
-3371 2118 y([V)-8 b(ariable])-3598 b Fg(rl_getc_func_t)57
-b(*)52 b(rl_getc_function)390 2228 y Fs(If)30 b(non-zero,)h(Readline)g
+(a)h(second)390 1943 y(if)g(there)h(is)f(no)h(k)m(eyb)s(oard)f(input.)
+3371 2162 y([V)-8 b(ariable])-3598 b Fg(rl_getc_func_t)57
+b(*)52 b(rl_getc_function)390 2271 y Fs(If)30 b(non-zero,)h(Readline)g
(will)g(call)h(indirectly)e(through)g(this)h(p)s(oin)m(ter)f(to)h(get)h
-(a)e(c)m(haracter)i(from)390 2337 y(the)39 b(input)e(stream.)65
-b(By)39 b(default,)i(it)e(is)f(set)h(to)g Fr(rl_getc)p
-Fs(,)g(the)g(default)f(Readline)h(c)m(haracter)390 2447
-y(input)29 b(function)h(\(see)i(Section)f(2.4.8)h([Character)f(Input],)
-f(page)h(36\).)3371 2655 y([V)-8 b(ariable])-3598 b Fg(rl_voidfunc_t)56
-b(*)d(rl_redisplay_function)390 2765 y Fs(If)36 b(non-zero,)i(Readline)
-e(will)h(call)g(indirectly)f(through)g(this)g(p)s(oin)m(ter)g(to)g(up)s
-(date)g(the)g(displa)m(y)390 2874 y(with)27 b(the)g(curren)m(t)g(con)m
+(a)e(c)m(haracter)i(from)390 2381 y(the)21 b(input)g(stream.)38
+b(By)21 b(default,)j(it)e(is)f(set)h(to)g Fr(rl_getc)p
+Fs(,)f(the)h(default)f(Readline)h(c)m(haracter)h(input)390
+2491 y(function)f(\(see)i(Section)g(2.4.8)g([Character)g(Input],)f
+(page)h(36\).)39 b(In)22 b(general,)k(an)c(application)i(that)390
+2600 y(sets)31 b Fi(rl)p 635 2600 28 4 v 40 w(getc)p
+835 2600 V 41 w(function)f Fs(should)g(consider)g(setting)h
+Fi(rl)p 2234 2600 V 40 w(input)p 2487 2600 V 39 w(a)m(v)-5
+b(ailable)p 2867 2600 V 43 w(ho)s(ok)36 b Fs(as)30 b(w)m(ell.)3371
+2819 y([V)-8 b(ariable])-3598 b Fg(rl_hook_func_t)57
+b(*)52 b(rl_signal_event_hook)390 2929 y Fs(If)27 b(non-zero,)h(this)f
+(is)g(the)g(address)f(of)i(a)f(function)g(to)g(call)i(if)e(a)g(read)g
+(system)g(call)h(is)g(in)m(terrupted)390 3039 y(when)h(Readline)i(is)g
+(reading)f(terminal)h(input.)3371 3258 y([V)-8 b(ariable])-3598
+b Fg(rl_hook_func_t)57 b(*)52 b(rl_input_available_ho)q(ok)390
+3367 y Fs(If)28 b(non-zero,)j(Readline)e(will)g(use)g(this)g
+(function's)g(return)f(v)-5 b(alue)29 b(when)f(it)i(needs)e(to)i
+(determine)390 3477 y(whether)42 b(or)g(not)h(there)f(is)h(a)m(v)-5
+b(ailable)45 b(input)c(on)i(the)f(curren)m(t)g(input)g(source.)77
+b(The)42 b(default)390 3587 y(ho)s(ok)25 b(c)m(hec)m(ks)i
+Fr(rl_instream)p Fs(;)d(if)i(an)f(application)i(is)e(using)g(a)h
+(di\013eren)m(t)g(input)e(source,)j(it)f(should)390 3696
+y(set)34 b(the)f(ho)s(ok)h(appropriately)-8 b(.)50 b(Readline)34
+b(queries)f(for)h(a)m(v)-5 b(ailable)35 b(input)e(when)f(implemen)m
+(ting)390 3806 y(in)m(tra-k)m(ey-sequence)f(timeouts)e(during)e(input)g
+(and)h(incremen)m(tal)h(searc)m(hes.)41 b(This)27 b(ma)m(y)i(use)f(an)
+390 3915 y(application-sp)s(eci\014c)22 b(timeout)g(b)s(efore)f
+(returning)f(a)h(v)-5 b(alue;)25 b(Readline)c(uses)f(the)i(v)-5
+b(alue)21 b(passed)f(to)390 4025 y Fr(rl_set_keyboard_input_ti)o(meou)o
+(t\(\))e Fs(or)24 b(the)g(v)-5 b(alue)25 b(of)g(the)f(user-settable)i
+Fi(k)m(eyseq-timeout)390 4134 y Fs(v)-5 b(ariable.)48
+b(This)31 b(is)i(designed)f(for)g(use)g(b)m(y)g(applications)i(using)e
+(Readline's)h(callbac)m(k)h(in)m(terface)390 4244 y(\(see)d(Section)f
+(2.4.12)i([Alternate)f(In)m(terface],)h(page)e(40\),)i(whic)m(h)d(ma)m
+(y)h(not)g(use)g(the)g(traditional)390 4354 y Fr(read\(2\))39
+b Fs(and)g(\014le)i(descriptor)f(in)m(terface,)45 b(or)c(other)f
+(applications)i(using)e(a)h(di\013eren)m(t)g(input)390
+4463 y(mec)m(hanism.)k(If)31 b(an)g(application)i(uses)e(an)h(input)e
+(mec)m(hanism)i(or)g(ho)s(ok)f(that)h(can)g(p)s(oten)m(tially)390
+4573 y(exceed)38 b(the)e(v)-5 b(alue)37 b(of)g Fi(k)m(eyseq-timeout)p
+Fs(,)k(it)c(should)e(increase)j(the)e(timeout)i(or)f(set)g(this)f(ho)s
+(ok)390 4682 y(appropriately)d(ev)m(en)g(when)e(not)h(using)g(the)h
+(callbac)m(k)h(in)m(terface.)48 b(In)31 b(general,)j(an)f(application)
+390 4792 y(that)e(sets)g Fi(rl)p 832 4792 V 40 w(getc)p
+1032 4792 V 41 w(function)f Fs(should)g(consider)g(setting)h
+Fi(rl)p 2431 4792 V 40 w(input)p 2684 4792 V 39 w(a)m(v)-5
+b(ailable)p 3064 4792 V 43 w(ho)s(ok)36 b Fs(as)30 b(w)m(ell.)3371
+5011 y([V)-8 b(ariable])-3598 b Fg(rl_voidfunc_t)56 b(*)d
+(rl_redisplay_function)390 5121 y Fs(If)36 b(non-zero,)i(Readline)e
+(will)h(call)g(indirectly)f(through)g(this)g(p)s(oin)m(ter)g(to)g(up)s
+(date)g(the)g(displa)m(y)390 5230 y(with)27 b(the)g(curren)m(t)g(con)m
(ten)m(ts)h(of)f(the)h(editing)f(bu\013er.)39 b(By)27
b(default,)h(it)g(is)f(set)g(to)h Fr(rl_redisplay)p Fs(,)390
-2984 y(the)j(default)f(Readline)h(redispla)m(y)g(function)f(\(see)h
-(Section)g(2.4.6)h([Redispla)m(y],)g(page)f(34\).)3371
-3192 y([V)-8 b(ariable])-3598 b Fg(rl_vintfunc_t)56 b(*)d
-(rl_prep_term_function)390 3302 y Fs(If)24 b(non-zero,)i(Readline)e
-(will)h(call)g(indirectly)g(through)e(this)h(p)s(oin)m(ter)g(to)h
-(initialize)h(the)e(terminal.)390 3411 y(The)37 b(function)f(tak)m(es)j
-(a)e(single)h(argumen)m(t,)i(an)d Fr(int)f Fs(\015ag)h(that)h(sa)m(ys)g
-(whether)e(or)h(not)g(to)h(use)390 3521 y(eigh)m(t-bit)e(c)m
-(haracters.)53 b(By)35 b(default,)g(this)f(is)g(set)h(to)g
-Fr(rl_prep_terminal)29 b Fs(\(see)35 b(Section)g(2.4.9)390
-3630 y([T)-8 b(erminal)31 b(Managemen)m(t],)i(page)e(36\).)3371
-3839 y([V)-8 b(ariable])-3598 b Fg(rl_voidfunc_t)56 b(*)d
-(rl_deprep_term_functio)q(n)390 3948 y Fs(If)36 b(non-zero,)j(Readline)
-e(will)g(call)h(indirectly)f(through)f(this)g(p)s(oin)m(ter)h(to)g
-(reset)g(the)g(terminal.)390 4058 y(This)d(function)h(should)f(undo)g
-(the)h(e\013ects)h(of)f Fr(rl_prep_term_function)p Fs(.)49
-b(By)35 b(default,)i(this)390 4167 y(is)30 b(set)h(to)g
-Fr(rl_deprep_terminal)26 b Fs(\(see)31 b(Section)g(2.4.9)i([T)-8
-b(erminal)30 b(Managemen)m(t],)j(page)e(36\).)3371 4376
-y([V)-8 b(ariable])-3598 b Fg(Keymap)54 b(rl_executing_keymap)390
-4485 y Fs(This)35 b(v)-5 b(ariable)37 b(is)f(set)g(to)h(the)f(k)m
-(eymap)h(\(see)g(Section)f(2.4.2)i([Keymaps],)g(page)e(30\))i(in)d
-(whic)m(h)390 4595 y(the)c(curren)m(tly)f(executing)i(readline)e
-(function)g(w)m(as)h(found.)3371 4803 y([V)-8 b(ariable])-3598
-b Fg(Keymap)54 b(rl_binding_keymap)390 4913 y Fs(This)35
-b(v)-5 b(ariable)37 b(is)f(set)g(to)h(the)f(k)m(eymap)h(\(see)g
-(Section)f(2.4.2)i([Keymaps],)g(page)e(30\))i(in)d(whic)m(h)390
-5022 y(the)c(last)g(k)m(ey)g(binding)e(o)s(ccurred.)3371
-5230 y([V)-8 b(ariable])-3598 b Fg(char)54 b(*)e(rl_executing_macro)390
-5340 y Fs(This)30 b(v)-5 b(ariable)31 b(is)f(set)h(to)g(the)g(text)g
-(of)g(an)m(y)f(curren)m(tly-executing)i(macro.)p eop
+5340 y(the)j(default)f(Readline)h(redispla)m(y)g(function)f(\(see)h
+(Section)g(2.4.6)h([Redispla)m(y],)g(page)f(35\).)p eop
end
%%Page: 28 32
TeXDict begin 28 31 bop 150 -116 a Fs(Chapter)30 b(2:)41
b(Programming)30 b(with)g(GNU)h(Readline)1683 b(28)3371
-299 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_readline_state)390
-408 y Fs(A)35 b(v)-5 b(ariable)35 b(with)f(bit)g(v)-5
-b(alues)35 b(that)g(encapsulate)h(the)e(curren)m(t)h(Readline)g(state.)
-54 b(A)34 b(bit)h(is)f(set)390 518 y(with)k(the)g Fr(RL_SETSTATE)c
-Fs(macro,)41 b(and)c(unset)h(with)f(the)h Fr(RL_UNSETSTATE)d
-Fs(macro.)63 b(Use)39 b(the)390 628 y Fr(RL_ISSTATE)34
-b Fs(macro)k(to)g(test)g(whether)f(a)h(particular)f(state)i(bit)e(is)g
-(set.)62 b(Curren)m(t)36 b(state)j(bits)390 737 y(include:)390
-904 y Fr(RL_STATE_NONE)870 1013 y Fs(Readline)31 b(has)f(not)h(y)m(et)g
-(b)s(een)f(called,)i(nor)e(has)g(it)h(b)s(egun)e(to)i(in)m(tialize.)390
-1178 y Fr(RL_STATE_INITIALIZING)870 1287 y Fs(Readline)g(is)f
-(initializing)j(its)e(in)m(ternal)g(data)g(structures.)390
-1452 y Fr(RL_STATE_INITIALIZED)870 1561 y Fs(Readline)g(has)f
-(completed)h(its)g(initialization.)390 1725 y Fr(RL_STATE_TERMPREPPED)
-870 1835 y Fs(Readline)e(has)g(mo)s(di\014ed)e(the)i(terminal)g(mo)s
-(des)f(to)i(do)e(its)i(o)m(wn)e(input)g(and)g(redis-)870
-1945 y(pla)m(y)-8 b(.)390 2109 y Fr(RL_STATE_READCMD)870
-2218 y Fs(Readline)31 b(is)f(reading)h(a)g(command)f(from)g(the)g(k)m
-(eyb)s(oard.)390 2383 y Fr(RL_STATE_METANEXT)870 2492
-y Fs(Readline)h(is)f(reading)h(more)f(input)g(after)h(reading)f(the)h
-(meta-pre\014x)f(c)m(haracter.)390 2656 y Fr(RL_STATE_DISPATCHING)870
-2766 y Fs(Readline)h(is)f(dispatc)m(hing)h(to)g(a)g(command.)390
-2930 y Fr(RL_STATE_MOREINPUT)870 3040 y Fs(Readline)g(is)f(reading)h
-(more)f(input)g(while)g(executing)i(an)e(editing)h(command.)390
-3204 y Fr(RL_STATE_ISEARCH)870 3314 y Fs(Readline)g(is)f(p)s(erforming)
-g(an)g(incremen)m(tal)i(history)e(searc)m(h.)390 3478
-y Fr(RL_STATE_NSEARCH)870 3587 y Fs(Readline)h(is)f(p)s(erforming)g(a)g
-(non-incremen)m(tal)i(history)e(searc)m(h.)390 3752 y
-Fr(RL_STATE_SEARCH)870 3861 y Fs(Readline)21 b(is)f(searc)m(hing)i(bac)
-m(kw)m(ard)e(or)h(forw)m(ard)e(through)h(the)h(history)f(for)g(a)h
-(string.)390 4026 y Fr(RL_STATE_NUMERICARG)870 4135 y
-Fs(Readline)31 b(is)f(reading)h(a)g(n)m(umeric)f(argumen)m(t.)390
-4299 y Fr(RL_STATE_MACROINPUT)870 4409 y Fs(Readline)25
-b(is)f(curren)m(tly)g(getting)i(its)f(input)e(from)h(a)g
-(previously-de\014ned)f(k)m(eyb)s(oard)870 4519 y(macro.)390
-4683 y Fr(RL_STATE_MACRODEF)870 4792 y Fs(Readline)31
-b(is)f(curren)m(tly)h(reading)f(c)m(haracters)i(de\014ning)e(a)g(k)m
-(eyb)s(oard)h(macro.)390 4957 y Fr(RL_STATE_OVERWRITE)870
-5066 y Fs(Readline)g(is)f(in)g(o)m(v)m(erwrite)i(mo)s(de.)390
-5230 y Fr(RL_STATE_COMPLETING)870 5340 y Fs(Readline)f(is)f(p)s
-(erforming)g(w)m(ord)g(completion.)p eop end
+299 y([V)-8 b(ariable])-3598 b Fg(rl_vintfunc_t)56 b(*)d
+(rl_prep_term_function)390 408 y Fs(If)24 b(non-zero,)i(Readline)e
+(will)h(call)g(indirectly)g(through)e(this)h(p)s(oin)m(ter)g(to)h
+(initialize)h(the)e(terminal.)390 518 y(The)37 b(function)f(tak)m(es)j
+(a)e(single)h(argumen)m(t,)i(an)d Fr(int)f Fs(\015ag)h(that)h(sa)m(ys)g
+(whether)e(or)h(not)g(to)h(use)390 628 y(eigh)m(t-bit)e(c)m(haracters.)
+53 b(By)35 b(default,)g(this)f(is)g(set)h(to)g Fr(rl_prep_terminal)29
+b Fs(\(see)35 b(Section)g(2.4.9)390 737 y([T)-8 b(erminal)31
+b(Managemen)m(t],)i(page)e(37\).)3371 915 y([V)-8 b(ariable])-3598
+b Fg(rl_voidfunc_t)56 b(*)d(rl_deprep_term_functio)q(n)390
+1024 y Fs(If)36 b(non-zero,)j(Readline)e(will)g(call)h(indirectly)f
+(through)f(this)g(p)s(oin)m(ter)h(to)g(reset)g(the)g(terminal.)390
+1134 y(This)d(function)h(should)f(undo)g(the)h(e\013ects)h(of)f
+Fr(rl_prep_term_function)p Fs(.)49 b(By)35 b(default,)i(this)390
+1243 y(is)30 b(set)h(to)g Fr(rl_deprep_terminal)26 b
+Fs(\(see)31 b(Section)g(2.4.9)i([T)-8 b(erminal)30 b(Managemen)m(t],)j
+(page)e(37\).)3371 1421 y([V)-8 b(ariable])-3598 b Fg(Keymap)54
+b(rl_executing_keymap)390 1530 y Fs(This)35 b(v)-5 b(ariable)37
+b(is)f(set)g(to)h(the)f(k)m(eymap)h(\(see)g(Section)f(2.4.2)i
+([Keymaps],)g(page)e(30\))i(in)d(whic)m(h)390 1640 y(the)c(curren)m
+(tly)f(executing)i(readline)e(function)g(w)m(as)h(found.)3371
+1817 y([V)-8 b(ariable])-3598 b Fg(Keymap)54 b(rl_binding_keymap)390
+1927 y Fs(This)35 b(v)-5 b(ariable)37 b(is)f(set)g(to)h(the)f(k)m
+(eymap)h(\(see)g(Section)f(2.4.2)i([Keymaps],)g(page)e(30\))i(in)d
+(whic)m(h)390 2036 y(the)c(last)g(k)m(ey)g(binding)e(o)s(ccurred.)3371
+2213 y([V)-8 b(ariable])-3598 b Fg(char)54 b(*)e(rl_executing_macro)390
+2323 y Fs(This)30 b(v)-5 b(ariable)31 b(is)f(set)h(to)g(the)g(text)g
+(of)g(an)m(y)f(curren)m(tly-executing)i(macro.)3371 2500
+y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_executing_key)390
+2610 y Fs(The)30 b(k)m(ey)h(that)g(caused)f(the)h(dispatc)m(h)g(to)g
+(the)f(curren)m(tly-executing)i(Readline)f(function.)3371
+2787 y([V)-8 b(ariable])-3598 b Fg(char)54 b(*)e(rl_executing_keyseq)
+390 2897 y Fs(The)35 b(full)g(k)m(ey)h(sequence)g(that)g(caused)g(the)g
+(dispatc)m(h)f(to)i(the)e(curren)m(tly-executing)i(Readline)390
+3006 y(function.)3371 3184 y([V)-8 b(ariable])-3598 b
+Fg(int)53 b(rl_key_sequence_lengt)q(h)390 3293 y Fs(The)30
+b(n)m(um)m(b)s(er)f(of)h(c)m(haracters)i(in)e Fi(rl)p
+1617 3293 28 4 v 40 w(executing)p 2032 3293 V 41 w(k)m(eyseq)p
+Fs(.)3371 3471 y([V)-8 b(ariable])-3598 b Fg(int)53 b
+(rl_readline_state)390 3580 y Fs(A)35 b(v)-5 b(ariable)35
+b(with)f(bit)g(v)-5 b(alues)35 b(that)g(encapsulate)h(the)e(curren)m(t)
+h(Readline)g(state.)54 b(A)34 b(bit)h(is)f(set)390 3690
+y(with)k(the)g Fr(RL_SETSTATE)c Fs(macro,)41 b(and)c(unset)h(with)f
+(the)h Fr(RL_UNSETSTATE)d Fs(macro.)63 b(Use)39 b(the)390
+3799 y Fr(RL_ISSTATE)34 b Fs(macro)k(to)g(test)g(whether)f(a)h
+(particular)f(state)i(bit)e(is)g(set.)62 b(Curren)m(t)36
+b(state)j(bits)390 3909 y(include:)390 4064 y Fr(RL_STATE_NONE)870
+4173 y Fs(Readline)31 b(has)f(not)h(y)m(et)g(b)s(een)f(called,)i(nor)e
+(has)g(it)h(b)s(egun)e(to)i(initialize.)390 4328 y Fr
+(RL_STATE_INITIALIZING)870 4437 y Fs(Readline)g(is)f(initializing)j
+(its)e(in)m(ternal)g(data)g(structures.)390 4592 y Fr
+(RL_STATE_INITIALIZED)870 4702 y Fs(Readline)g(has)f(completed)h(its)g
+(initialization.)390 4856 y Fr(RL_STATE_TERMPREPPED)870
+4966 y Fs(Readline)e(has)g(mo)s(di\014ed)e(the)i(terminal)g(mo)s(des)f
+(to)i(do)e(its)i(o)m(wn)e(input)g(and)g(redis-)870 5076
+y(pla)m(y)-8 b(.)390 5230 y Fr(RL_STATE_READCMD)870 5340
+y Fs(Readline)31 b(is)f(reading)h(a)g(command)f(from)g(the)g(k)m(eyb)s
+(oard.)p eop end
%%Page: 29 33
TeXDict begin 29 32 bop 150 -116 a Fs(Chapter)30 b(2:)41
b(Programming)30 b(with)g(GNU)h(Readline)1683 b(29)390
-299 y Fr(RL_STATE_SIGHANDLER)870 408 y Fs(Readline)31
-b(is)f(curren)m(tly)h(executing)g(the)g(readline)g(signal)g(handler.)
-390 563 y Fr(RL_STATE_UNDOING)870 673 y Fs(Readline)g(is)f(p)s
-(erforming)g(an)g(undo.)390 827 y Fr(RL_STATE_INPUTPENDING)870
-937 y Fs(Readline)h(has)f(input)g(p)s(ending)f(due)g(to)i(a)g(call)h
-(to)f Fr(rl_execute_next\(\))p Fs(.)390 1092 y Fr(RL_STATE_TTYCSAVED)
-870 1201 y Fs(Readline)g(has)f(sa)m(v)m(ed)i(the)e(v)-5
+299 y Fr(RL_STATE_METANEXT)870 408 y Fs(Readline)31 b(is)f(reading)h
+(more)f(input)g(after)h(reading)f(the)h(meta-pre\014x)f(c)m(haracter.)
+390 576 y Fr(RL_STATE_DISPATCHING)870 686 y Fs(Readline)h(is)f(dispatc)
+m(hing)h(to)g(a)g(command.)390 853 y Fr(RL_STATE_MOREINPUT)870
+963 y Fs(Readline)g(is)f(reading)h(more)f(input)g(while)g(executing)i
+(an)e(editing)h(command.)390 1130 y Fr(RL_STATE_ISEARCH)870
+1240 y Fs(Readline)g(is)f(p)s(erforming)g(an)g(incremen)m(tal)i
+(history)e(searc)m(h.)390 1408 y Fr(RL_STATE_NSEARCH)870
+1517 y Fs(Readline)h(is)f(p)s(erforming)g(a)g(non-incremen)m(tal)i
+(history)e(searc)m(h.)390 1685 y Fr(RL_STATE_SEARCH)870
+1794 y Fs(Readline)21 b(is)f(searc)m(hing)i(bac)m(kw)m(ard)e(or)h(forw)
+m(ard)e(through)h(the)h(history)f(for)g(a)h(string.)390
+1962 y Fr(RL_STATE_NUMERICARG)870 2072 y Fs(Readline)31
+b(is)f(reading)h(a)g(n)m(umeric)f(argumen)m(t.)390 2239
+y Fr(RL_STATE_MACROINPUT)870 2349 y Fs(Readline)25 b(is)f(curren)m(tly)
+g(getting)i(its)f(input)e(from)h(a)g(previously-de\014ned)f(k)m(eyb)s
+(oard)870 2458 y(macro.)390 2626 y Fr(RL_STATE_MACRODEF)870
+2736 y Fs(Readline)31 b(is)f(curren)m(tly)h(reading)f(c)m(haracters)i
+(de\014ning)e(a)g(k)m(eyb)s(oard)h(macro.)390 2903 y
+Fr(RL_STATE_OVERWRITE)870 3013 y Fs(Readline)g(is)f(in)g(o)m(v)m
+(erwrite)i(mo)s(de.)390 3180 y Fr(RL_STATE_COMPLETING)870
+3290 y Fs(Readline)f(is)f(p)s(erforming)g(w)m(ord)g(completion.)390
+3458 y Fr(RL_STATE_SIGHANDLER)870 3567 y Fs(Readline)h(is)f(curren)m
+(tly)h(executing)g(the)g(readline)g(signal)g(handler.)390
+3735 y Fr(RL_STATE_UNDOING)870 3844 y Fs(Readline)g(is)f(p)s(erforming)
+g(an)g(undo.)390 4012 y Fr(RL_STATE_INPUTPENDING)870
+4122 y Fs(Readline)h(has)f(input)g(p)s(ending)f(due)g(to)i(a)g(call)h
+(to)f Fr(rl_execute_next\(\))p Fs(.)390 4289 y Fr(RL_STATE_TTYCSAVED)
+870 4399 y Fs(Readline)g(has)f(sa)m(v)m(ed)i(the)e(v)-5
b(alues)31 b(of)f(the)h(terminal's)g(sp)s(ecial)g(c)m(haracters.)390
-1356 y Fr(RL_STATE_CALLBACK)870 1466 y Fs(Readline)44
+4566 y Fr(RL_STATE_CALLBACK)870 4676 y Fs(Readline)44
b(is)f(curren)m(tly)g(using)f(the)h(alternate)i(\(callbac)m(k\))h(in)m
-(terface)e(\(see)g(Sec-)870 1575 y(tion)31 b(2.4.12)h([Alternate)h(In)m
-(terface],)f(page)f(39\).)390 1730 y Fr(RL_STATE_VIMOTION)870
-1839 y Fs(Readline)g(is)f(reading)h(the)f(argumen)m(t)h(to)g(a)g(vi-mo)
-s(de)g Fr(")p Fs(motion)p Fr(")f Fs(command.)390 1994
-y Fr(RL_STATE_MULTIKEY)870 2104 y Fs(Readline)h(is)f(reading)h(a)g(m)m
-(ultiple-k)m(eystrok)m(e)i(command.)390 2258 y Fr(RL_STATE_VICMDONCE)
-870 2368 y Fs(Readline)40 b(has)f(en)m(tered)g(vi)g(command)g(\(mo)m(v)
-m(emen)m(t\))j(mo)s(de)d(at)h(least)g(one)f(time)870
-2478 y(during)29 b(the)i(curren)m(t)f(call)i(to)f Fr(readline\(\))p
-Fs(.)390 2632 y Fr(RL_STATE_DONE)870 2742 y Fs(Readline)d(has)g(read)f
-(a)i(k)m(ey)f(sequence)g(b)s(ound)e(to)i Fr(accept-line)d
-Fs(and)i(is)h(ab)s(out)f(to)870 2852 y(return)i(the)i(line)g(to)g(the)f
-(caller.)3371 3029 y([V)-8 b(ariable])-3598 b Fg(int)53
-b(rl_explicit_arg)390 3138 y Fs(Set)39 b(to)g(a)h(non-zero)f(v)-5
-b(alue)39 b(if)g(an)g(explicit)h(n)m(umeric)e(argumen)m(t)i(w)m(as)f
-(sp)s(eci\014ed)f(b)m(y)g(the)h(user.)390 3248 y(Only)30
-b(v)-5 b(alid)30 b(in)h(a)f(bindable)g(command)g(function.)3371
-3425 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_numeric_arg)390
-3535 y Fs(Set)45 b(to)h(the)g(v)-5 b(alue)46 b(of)f(an)m(y)h(n)m
+(terface)e(\(see)g(Sec-)870 4786 y(tion)31 b(2.4.12)h([Alternate)h(In)m
+(terface],)f(page)f(40\).)390 4953 y Fr(RL_STATE_VIMOTION)870
+5063 y Fs(Readline)g(is)f(reading)h(the)f(argumen)m(t)h(to)g(a)g(vi-mo)
+s(de)g Fr(")p Fs(motion)p Fr(")f Fs(command.)390 5230
+y Fr(RL_STATE_MULTIKEY)870 5340 y Fs(Readline)h(is)f(reading)h(a)g(m)m
+(ultiple-k)m(eystrok)m(e)i(command.)p eop end
+%%Page: 30 34
+TeXDict begin 30 33 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(30)390
+299 y Fr(RL_STATE_VICMDONCE)870 408 y Fs(Readline)40
+b(has)f(en)m(tered)g(vi)g(command)g(\(mo)m(v)m(emen)m(t\))j(mo)s(de)d
+(at)h(least)g(one)f(time)870 518 y(during)29 b(the)i(curren)m(t)f(call)
+i(to)f Fr(readline\(\))p Fs(.)390 672 y Fr(RL_STATE_DONE)870
+782 y Fs(Readline)d(has)g(read)f(a)i(k)m(ey)f(sequence)g(b)s(ound)e(to)
+i Fr(accept-line)d Fs(and)i(is)h(ab)s(out)f(to)870 891
+y(return)i(the)i(line)g(to)g(the)f(caller.)3371 1067
+y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_explicit_arg)390
+1177 y Fs(Set)39 b(to)g(a)h(non-zero)f(v)-5 b(alue)39
+b(if)g(an)g(explicit)h(n)m(umeric)e(argumen)m(t)i(w)m(as)f(sp)s
+(eci\014ed)f(b)m(y)g(the)h(user.)390 1287 y(Only)30 b(v)-5
+b(alid)30 b(in)h(a)f(bindable)g(command)g(function.)3371
+1463 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_numeric_arg)390
+1572 y Fs(Set)45 b(to)h(the)g(v)-5 b(alue)46 b(of)f(an)m(y)h(n)m
(umeric)f(argumen)m(t)h(explicitly)h(sp)s(eci\014ed)d(b)m(y)h(the)h
-(user)e(b)s(efore)390 3644 y(executing)27 b(the)f(curren)m(t)g
+(user)e(b)s(efore)390 1682 y(executing)27 b(the)f(curren)m(t)g
(Readline)h(function.)38 b(Only)26 b(v)-5 b(alid)26 b(in)g(a)g
-(bindable)f(command)h(function.)3371 3822 y([V)-8 b(ariable])-3598
-b Fg(int)53 b(rl_editing_mode)390 3931 y Fs(Set)25 b(to)h(a)g(v)-5
+(bindable)f(command)h(function.)3371 1858 y([V)-8 b(ariable])-3598
+b Fg(int)53 b(rl_editing_mode)390 1968 y Fs(Set)25 b(to)h(a)g(v)-5
b(alue)25 b(denoting)h(Readline's)f(curren)m(t)g(editing)h(mo)s(de.)39
b(A)25 b(v)-5 b(alue)25 b(of)h Fi(1)32 b Fs(means)25
-b(Readline)390 4041 y(is)30 b(curren)m(tly)h(in)f(emacs)h(mo)s(de;)f
+b(Readline)390 2077 y(is)30 b(curren)m(tly)h(in)f(emacs)h(mo)s(de;)f
Fi(0)38 b Fs(means)31 b(that)f(vi)h(mo)s(de)f(is)g(activ)m(e.)150
-4269 y Fq(2.4)68 b(Readline)47 b(Con)l(v)l(enience)f(F)-11
-b(unctions)150 4490 y Fh(2.4.1)63 b(Naming)41 b(a)g(F)-10
-b(unction)150 4637 y Fs(The)24 b(user)h(can)g(dynamically)g(c)m(hange)h
+2304 y Fq(2.4)68 b(Readline)47 b(Con)l(v)l(enience)f(F)-11
+b(unctions)150 2526 y Fh(2.4.1)63 b(Naming)41 b(a)g(F)-10
+b(unction)150 2673 y Fs(The)24 b(user)h(can)g(dynamically)g(c)m(hange)h
(the)f(bindings)f(of)h(k)m(eys)h(while)e(using)h(Readline.)39
-b(This)24 b(is)h(done)g(b)m(y)150 4747 y(represen)m(ting)30
+b(This)24 b(is)h(done)g(b)m(y)150 2782 y(represen)m(ting)30
b(the)h(function)f(with)g(a)g(descriptiv)m(e)h(name.)41
b(The)30 b(user)f(is)i(able)f(to)h(t)m(yp)s(e)g(the)f(descriptiv)m(e)
-150 4857 y(name)g(when)g(referring)g(to)h(the)f(function.)41
+150 2892 y(name)g(when)g(referring)g(to)h(the)f(function.)41
b(Th)m(us,)29 b(in)h(an)h(init)f(\014le,)h(one)g(migh)m(t)g(\014nd)390
-4989 y Fr(Meta-Rubout:)92 b(backward-kill-word)275 5121
-y Fs(This)33 b(binds)f(the)j(k)m(eystrok)m(e)h Fr(Meta-Rubout)31
-b Fs(to)k(the)f(function)g Fj(descriptively)43 b Fs(named)33
-b Fr(backward-)150 5230 y(kill-word)p Fs(.)59 b(Y)-8
-b(ou,)39 b(as)f(the)f(programmer,)i(should)d(bind)g(the)h(functions)g
-(y)m(ou)h(write)f(to)h(descriptiv)m(e)150 5340 y(names)30
-b(as)h(w)m(ell.)42 b(Readline)31 b(pro)m(vides)f(a)h(function)f(for)g
-(doing)g(that:)p eop end
-%%Page: 30 34
-TeXDict begin 30 33 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(30)3350
-299 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_add_defun)c
-Ff(\()p Fi(const)32 b(c)m(har)e(*name,)h(rl)p 1885 299
-28 4 v 40 w(command)p 2309 299 V 40 w(func)p 2519 299
-V 39 w(t)g(*function,)g(in)m(t)565 408 y(k)m(ey)p Ff(\))390
-518 y Fs(Add)j Fi(name)41 b Fs(to)36 b(the)f(list)h(of)g(named)e
+3024 y Fr(Meta-Rubout:)92 b(backward-kill-word)275 3156
+y Fs(This)84 b(binds)h(the)g(k)m(eystrok)m(e)j Fr(Meta-Rubout)82
+b Fs(to)87 b(the)e(function)h Fj(descriptively)94 b Fs(named)150
+3265 y Fr(backward-kill-word)p Fs(.)63 b(Y)-8 b(ou,)43
+b(as)d(the)g(programmer,)i(should)c(bind)g(the)i(functions)f(y)m(ou)h
+(write)g(to)150 3375 y(descriptiv)m(e)31 b(names)g(as)f(w)m(ell.)42
+b(Readline)31 b(pro)m(vides)f(a)h(function)f(for)g(doing)h(that:)3350
+3551 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_add_defun)c
+Ff(\()p Fi(const)32 b(c)m(har)e(*name,)h(rl)p 1885 3551
+28 4 v 40 w(command)p 2309 3551 V 40 w(func)p 2519 3551
+V 39 w(t)g(*function,)g(in)m(t)565 3661 y(k)m(ey)p Ff(\))390
+3770 y Fs(Add)j Fi(name)41 b Fs(to)36 b(the)f(list)h(of)g(named)e
(functions.)55 b(Mak)m(e)37 b Fi(function)e Fs(b)s(e)g(the)g(function)g
-(that)h(gets)390 628 y(called.)42 b(If)30 b Fi(k)m(ey)39
+(that)h(gets)390 3880 y(called.)42 b(If)30 b Fi(k)m(ey)39
b Fs(is)30 b(not)h(-1,)g(then)f(bind)f(it)i(to)g Fi(function)f
-Fs(using)g Fr(rl_bind_key\(\))p Fs(.)275 813 y(Using)g(this)g(function)
-g(alone)h(is)f(su\016cien)m(t)g(for)g(most)h(applications.)42
-b(It)30 b(is)g(the)g(recommended)g(w)m(a)m(y)150 923
+Fs(using)g Fr(rl_bind_key\(\))p Fs(.)275 4056 y(Using)g(this)g
+(function)g(alone)h(is)f(su\016cien)m(t)g(for)g(most)h(applications.)42
+b(It)30 b(is)g(the)g(recommended)g(w)m(a)m(y)150 4165
y(to)e(add)e(a)h(few)g(functions)g(to)g(the)g(default)h(functions)e
(that)i(Readline)f(has)g(built)g(in.)39 b(If)26 b(y)m(ou)i(need)e(to)i
-(do)150 1032 y(something)34 b(other)g(than)f(adding)h(a)g(function)f
+(do)150 4275 y(something)34 b(other)g(than)f(adding)h(a)g(function)f
(to)h(Readline,)i(y)m(ou)e(ma)m(y)g(need)f(to)i(use)e(the)h(underlying)
-150 1142 y(functions)c(describ)s(ed)f(b)s(elo)m(w.)150
-1342 y Fh(2.4.2)63 b(Selecting)41 b(a)f(Keymap)150 1489
+150 4385 y(functions)c(describ)s(ed)f(b)s(elo)m(w.)150
+4578 y Fh(2.4.2)63 b(Selecting)41 b(a)f(Keymap)150 4725
y Fs(Key)f(bindings)e(tak)m(e)j(place)g(on)f(a)g Fi(k)m(eymap)p
Fs(.)66 b(The)38 b(k)m(eymap)h(is)g(the)g(asso)s(ciation)h(b)s(et)m(w)m
-(een)f(the)g(k)m(eys)150 1598 y(that)29 b(the)g(user)e(t)m(yp)s(es)i
+(een)f(the)g(k)m(eys)150 4835 y(that)29 b(the)g(user)e(t)m(yp)s(es)i
(and)f(the)g(functions)g(that)h(get)h(run.)39 b(Y)-8
b(ou)29 b(can)f(mak)m(e)i(y)m(our)e(o)m(wn)h(k)m(eymaps,)g(cop)m(y)150
-1708 y(existing)i(k)m(eymaps,)g(and)f(tell)i(Readline)f(whic)m(h)f(k)m
-(eymap)h(to)g(use.)3350 1894 y([F)-8 b(unction])-3599
+4945 y(existing)i(k)m(eymaps,)g(and)f(tell)i(Readline)f(whic)m(h)f(k)m
+(eymap)h(to)g(use.)3350 5121 y([F)-8 b(unction])-3599
b Fg(Keymap)54 b(rl_make_bare_keymap)d Ff(\()p Fi(v)m(oid)p
-Ff(\))390 2003 y Fs(Returns)23 b(a)i(new,)g(empt)m(y)f(k)m(eymap.)40
+Ff(\))390 5230 y Fs(Returns)23 b(a)i(new,)g(empt)m(y)f(k)m(eymap.)40
b(The)23 b(space)i(for)f(the)g(k)m(eymap)h(is)f(allo)s(cated)i(with)e
-Fr(malloc\(\))p Fs(;)390 2113 y(the)31 b(caller)g(should)f(free)g(it)h
-(b)m(y)f(calling)i Fr(rl_free_keymap\(\))26 b Fs(when)j(done.)3350
-2298 y([F)-8 b(unction])-3599 b Fg(Keymap)54 b(rl_copy_keymap)c
-Ff(\()p Fi(Keymap)30 b(map)p Ff(\))390 2408 y Fs(Return)g(a)g(new)g(k)m
-(eymap)h(whic)m(h)f(is)h(a)f(cop)m(y)h(of)g Fi(map)s
-Fs(.)3350 2594 y([F)-8 b(unction])-3599 b Fg(Keymap)54
-b(rl_make_keymap)c Ff(\()p Fi(v)m(oid)p Ff(\))390 2703
+Fr(malloc\(\))p Fs(;)390 5340 y(the)31 b(caller)g(should)f(free)g(it)h
+(b)m(y)f(calling)i Fr(rl_free_keymap\(\))26 b Fs(when)j(done.)p
+eop end
+%%Page: 31 35
+TeXDict begin 31 34 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(31)3350
+299 y([F)-8 b(unction])-3599 b Fg(Keymap)54 b(rl_copy_keymap)c
+Ff(\()p Fi(Keymap)30 b(map)p Ff(\))390 408 y Fs(Return)g(a)g(new)g(k)m
+(eymap)h(whic)m(h)f(is)h(a)f(cop)m(y)h(of)g Fi(map)p
+Fs(.)3350 579 y([F)-8 b(unction])-3599 b Fg(Keymap)54
+b(rl_make_keymap)c Ff(\()p Fi(v)m(oid)p Ff(\))390 689
y Fs(Return)31 b(a)g(new)g(k)m(eymap)h(with)f(the)h(prin)m(ting)f(c)m
-(haracters)i(b)s(ound)c(to)j(rl)p 2909 2703 V 40 w(insert,)g(the)g(lo)m
-(w)m(ercase)390 2813 y(Meta)24 b(c)m(haracters)g(b)s(ound)d(to)i(run)e
-(their)i(equiv)-5 b(alen)m(ts,)25 b(and)d(the)h(Meta)h(digits)f(b)s
-(ound)e(to)i(pro)s(duce)390 2922 y(n)m(umeric)30 b(argumen)m(ts.)3350
-3108 y([F)-8 b(unction])-3599 b Fg(void)54 b(rl_discard_keymap)c
-Ff(\()p Fi(Keymap)31 b(k)m(eymap)p Ff(\))390 3217 y Fs(F)-8
-b(ree)30 b(the)f(storage)h(asso)s(ciated)h(with)d(the)h(data)h(in)f
-Fi(k)m(eymap)s Fs(.)40 b(The)28 b(caller)j(should)c(free)i
-Fi(k)m(eymap)s Fs(.)3350 3403 y([F)-8 b(unction])-3599
+(haracters)i(b)s(ound)c(to)j(rl)p 2909 689 28 4 v 40
+w(insert,)g(the)g(lo)m(w)m(ercase)390 798 y(Meta)24 b(c)m(haracters)g
+(b)s(ound)d(to)i(run)e(their)i(equiv)-5 b(alen)m(ts,)25
+b(and)d(the)h(Meta)h(digits)f(b)s(ound)e(to)i(pro)s(duce)390
+908 y(n)m(umeric)30 b(argumen)m(ts.)3350 1078 y([F)-8
+b(unction])-3599 b Fg(void)54 b(rl_discard_keymap)c Ff(\()p
+Fi(Keymap)31 b(k)m(eymap)p Ff(\))390 1188 y Fs(F)-8 b(ree)30
+b(the)g(storage)h(asso)s(ciated)g(with)e(the)g(data)h(in)f
+Fi(k)m(eymap)p Fs(.)41 b(The)29 b(caller)h(should)f(free)g
+Fi(k)m(eymap)p Fs(.)3350 1358 y([F)-8 b(unction])-3599
b Fg(void)54 b(rl_free_keymap)49 b Ff(\()p Fi(Keymap)31
-b(k)m(eymap)p Ff(\))390 3513 y Fs(F)-8 b(ree)32 b(all)f(storage)h(asso)
-s(ciated)g(with)f Fi(k)m(eymap)s Fs(.)41 b(This)30 b(calls)i
-Fr(rl_discard_keymap)26 b Fs(to)31 b(free)g(sub-)390
-3622 y(ordindate)f(k)m(eymaps)h(and)f(macros.)275 3808
+b(k)m(eymap)p Ff(\))390 1468 y Fs(F)-8 b(ree)32 b(all)g(storage)g(asso)
+s(ciated)g(with)f Fi(k)m(eymap)p Fs(.)42 b(This)30 b(calls)i
+Fr(rl_discard_keymap)26 b Fs(to)32 b(free)f(sub-)390
+1577 y(ordindate)f(k)m(eymaps)h(and)f(macros.)275 1748
y(Readline)45 b(has)g(sev)m(eral)i(in)m(ternal)f(k)m(eymaps.)86
b(These)45 b(functions)g(allo)m(w)h(y)m(ou)g(to)g(c)m(hange)g(whic)m(h)
-150 3917 y(k)m(eymap)31 b(is)f(activ)m(e.)3350 4103 y([F)-8
+150 1857 y(k)m(eymap)31 b(is)f(activ)m(e.)3350 2028 y([F)-8
b(unction])-3599 b Fg(Keymap)54 b(rl_get_keymap)c Ff(\()p
-Fi(v)m(oid)p Ff(\))390 4213 y Fs(Returns)29 b(the)i(curren)m(tly)f
-(activ)m(e)j(k)m(eymap.)3350 4398 y([F)-8 b(unction])-3599
+Fi(v)m(oid)p Ff(\))390 2137 y Fs(Returns)29 b(the)i(curren)m(tly)f
+(activ)m(e)j(k)m(eymap.)3350 2308 y([F)-8 b(unction])-3599
b Fg(void)54 b(rl_set_keymap)49 b Ff(\()p Fi(Keymap)30
-b(k)m(eymap)p Ff(\))390 4508 y Fs(Mak)m(es)i Fi(k)m(eymap)h
-Fs(the)e(curren)m(tly)f(activ)m(e)j(k)m(eymap.)3350 4693
+b(k)m(eymap)p Ff(\))390 2418 y Fs(Mak)m(es)i Fi(k)m(eymap)h
+Fs(the)e(curren)m(tly)f(activ)m(e)j(k)m(eymap.)3350 2588
y([F)-8 b(unction])-3599 b Fg(Keymap)54 b(rl_get_keymap_by_name)e
-Ff(\()p Fi(const)31 b(c)m(har)g(*name)p Ff(\))390 4803
-y Fs(Return)h(the)h(k)m(eymap)h(matc)m(hing)f Fi(name)5
-b Fs(.)49 b Fi(name)38 b Fs(is)33 b(one)g(whic)m(h)g(w)m(ould)f(b)s(e)g
-(supplied)g(in)h(a)g Fr(set)390 4912 y(keymap)c Fs(inputrc)g(line)i
+Ff(\()p Fi(const)31 b(c)m(har)g(*name)p Ff(\))390 2698
+y Fs(Return)h(the)i(k)m(eymap)f(matc)m(hing)i Fi(name)p
+Fs(.)49 b Fi(name)38 b Fs(is)c(one)f(whic)m(h)g(w)m(ould)g(b)s(e)f
+(supplied)g(in)h(a)h Fr(set)390 2807 y(keymap)29 b Fs(inputrc)g(line)i
(\(see)g(Section)g(1.3)h([Readline)f(Init)f(File],)i(page)f(4\).)3350
-5098 y([F)-8 b(unction])-3599 b Fg(char)54 b(*)e(rl_get_keymap_name)f
-Ff(\()p Fi(Keymap)31 b(k)m(eymap)p Ff(\))390 5208 y Fs(Return)h(the)h
-(name)h(matc)m(hing)g Fi(k)m(eymap)s Fs(.)49 b Fi(name)38
-b Fs(is)33 b(one)g(whic)m(h)g(w)m(ould)g(b)s(e)f(supplied)g(in)g(a)i
-Fr(set)390 5317 y(keymap)29 b Fs(inputrc)g(line)i(\(see)g(Section)g
-(1.3)h([Readline)f(Init)f(File],)i(page)f(4\).)p eop
-end
-%%Page: 31 35
-TeXDict begin 31 34 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(31)150
-299 y Fh(2.4.3)63 b(Binding)42 b(Keys)150 446 y Fs(Key)34
+2978 y([F)-8 b(unction])-3599 b Fg(char)54 b(*)e(rl_get_keymap_name)f
+Ff(\()p Fi(Keymap)31 b(k)m(eymap)p Ff(\))390 3087 y Fs(Return)h(the)i
+(name)f(matc)m(hing)h Fi(k)m(eymap)p Fs(.)50 b Fi(name)38
+b Fs(is)c(one)f(whic)m(h)g(w)m(ould)g(b)s(e)f(supplied)g(in)h(a)h
+Fr(set)390 3197 y(keymap)29 b Fs(inputrc)g(line)i(\(see)g(Section)g
+(1.3)h([Readline)f(Init)f(File],)i(page)f(4\).)150 3387
+y Fh(2.4.3)63 b(Binding)42 b(Keys)150 3534 y Fs(Key)34
b(sequences)g(are)h(asso)s(ciate)h(with)e(functions)f(through)h(the)g
(k)m(eymap.)52 b(Readline)35 b(has)f(sev)m(eral)h(in-)150
-555 y(ternal)30 b(k)m(eymaps:)40 b Fr(emacs_standard_keymap)p
+3643 y(ternal)30 b(k)m(eymaps:)40 b Fr(emacs_standard_keymap)p
Fs(,)24 b Fr(emacs_meta_keymap)p Fs(,)h Fr(emacs_ctlx_keymap)p
-Fs(,)g Fr(vi_)150 665 y(movement_keymap)p Fs(,)41 b(and)h
+Fs(,)g Fr(vi_)150 3753 y(movement_keymap)p Fs(,)41 b(and)h
Fr(vi_insertion_keymap)p Fs(.)71 b Fr(emacs_standard_keymap)37
-b Fs(is)42 b(the)g(default,)150 775 y(and)30 b(the)g(examples)h(in)f
-(this)h(man)m(ual)f(assume)g(that.)275 920 y(Since)d
+b Fs(is)42 b(the)g(default,)150 3863 y(and)30 b(the)g(examples)h(in)f
+(this)h(man)m(ual)f(assume)g(that.)275 3992 y(Since)d
Fr(readline\(\))e Fs(installs)j(a)g(set)g(of)g(default)g(k)m(ey)g
(bindings)f(the)h(\014rst)e(time)j(it)f(is)f(called,)j(there)e(is)150
-1030 y(alw)m(a)m(ys)34 b(the)f(danger)f(that)i(a)f(custom)g(binding)e
+4102 y(alw)m(a)m(ys)34 b(the)f(danger)f(that)i(a)f(custom)g(binding)e
(installed)j(b)s(efore)e(the)h(\014rst)e(call)j(to)g
-Fr(readline\(\))c Fs(will)150 1140 y(b)s(e)25 b(o)m(v)m(erridden.)39
+Fr(readline\(\))c Fs(will)150 4212 y(b)s(e)25 b(o)m(v)m(erridden.)39
b(An)26 b(alternate)h(mec)m(hanism)f(is)g(to)g(install)h(custom)f(k)m
-(ey)g(bindings)f(in)g(an)h(initialization)150 1249 y(function)37
+(ey)g(bindings)f(in)g(an)h(initialization)150 4321 y(function)37
b(assigned)g(to)h(the)f Fr(rl_startup_hook)c Fs(v)-5
b(ariable)38 b(\(see)g(Section)g(2.3)g([Readline)g(V)-8
-b(ariables],)150 1359 y(page)31 b(25\).)275 1505 y(These)f(functions)g
-(manage)h(k)m(ey)g(bindings.)3350 1712 y([F)-8 b(unction])-3599
+b(ariables],)150 4431 y(page)31 b(25\).)275 4561 y(These)f(functions)g
+(manage)h(k)m(ey)g(bindings.)3350 4731 y([F)-8 b(unction])-3599
b Fg(int)53 b(rl_bind_key)c Ff(\()p Fi(in)m(t)31 b(k)m(ey)-8
-b(,)32 b(rl)p 1403 1712 28 4 v 40 w(command)p 1827 1712
-V 40 w(func)p 2037 1712 V 39 w(t)f(*function)p Ff(\))390
-1821 y Fs(Binds)h Fi(k)m(ey)42 b Fs(to)34 b Fi(function)e
+b(,)32 b(rl)p 1403 4731 V 40 w(command)p 1827 4731 V
+40 w(func)p 2037 4731 V 39 w(t)f(*function)p Ff(\))390
+4841 y Fs(Binds)h Fi(k)m(ey)42 b Fs(to)34 b Fi(function)e
Fs(in)h(the)g(curren)m(tly)g(activ)m(e)i(k)m(eymap.)49
-b(Returns)32 b(non-zero)i(in)f(the)g(case)390 1931 y(of)e(an)f(in)m(v)
--5 b(alid)31 b Fi(k)m(ey)8 b Fs(.)3350 2138 y([F)-8 b(unction])-3599
+b(Returns)32 b(non-zero)i(in)f(the)g(case)390 4950 y(of)e(an)f(in)m(v)
+-5 b(alid)31 b Fi(k)m(ey)p Fs(.)3350 5121 y([F)-8 b(unction])-3599
b Fg(int)53 b(rl_bind_key_in_map)e Ff(\()p Fi(in)m(t)31
-b(k)m(ey)-8 b(,)32 b(rl)p 1769 2138 V 40 w(command)p
-2193 2138 V 40 w(func)p 2403 2138 V 39 w(t)f(*function,)565
-2247 y(Keymap)f(map)p Ff(\))390 2357 y Fs(Bind)g Fi(k)m(ey)39
-b Fs(to)31 b Fi(function)f Fs(in)g Fi(map)s Fs(.)40 b(Returns)30
-b(non-zero)h(in)f(the)g(case)i(of)e(an)g(in)m(v)-5 b(alid)31
-b Fi(k)m(ey)8 b Fs(.)3350 2564 y([F)-8 b(unction])-3599
-b Fg(int)53 b(rl_bind_key_if_unboun)q(d)e Ff(\()p Fi(in)m(t)32
-b(k)m(ey)-8 b(,)31 b(rl)p 1978 2564 V 40 w(command)p
-2402 2564 V 40 w(func)p 2612 2564 V 39 w(t)g(*function)p
-Ff(\))390 2673 y Fs(Binds)43 b Fi(k)m(ey)53 b Fs(to)45
-b Fi(function)e Fs(if)h(it)h(is)f(not)g(already)g(b)s(ound)e(in)i(the)g
-(curren)m(tly)g(activ)m(e)i(k)m(eymap.)390 2783 y(Returns)29
-b(non-zero)i(in)f(the)h(case)g(of)g(an)f(in)m(v)-5 b(alid)31
-b Fi(k)m(ey)39 b Fs(or)30 b(if)h Fi(k)m(ey)39 b Fs(is)30
-b(already)h(b)s(ound.)3350 2990 y([F)-8 b(unction])-3599
+b(k)m(ey)-8 b(,)32 b(rl)p 1769 5121 V 40 w(command)p
+2193 5121 V 40 w(func)p 2403 5121 V 39 w(t)f(*function,)565
+5230 y(Keymap)f(map)p Ff(\))390 5340 y Fs(Bind)g Fi(k)m(ey)39
+b Fs(to)31 b Fi(function)f Fs(in)g Fi(map)p Fs(.)40 b(Returns)30
+b(non-zero)h(in)f(the)h(case)g(of)f(an)h(in)m(v)-5 b(alid)31
+b Fi(k)m(ey)p Fs(.)p eop end
+%%Page: 32 36
+TeXDict begin 32 35 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(32)3350
+299 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_bind_key_if_unboun)q(d)e
+Ff(\()p Fi(in)m(t)32 b(k)m(ey)-8 b(,)31 b(rl)p 1978 299
+28 4 v 40 w(command)p 2402 299 V 40 w(func)p 2612 299
+V 39 w(t)g(*function)p Ff(\))390 408 y Fs(Binds)43 b
+Fi(k)m(ey)53 b Fs(to)45 b Fi(function)e Fs(if)h(it)h(is)f(not)g
+(already)g(b)s(ound)e(in)i(the)g(curren)m(tly)g(activ)m(e)i(k)m(eymap.)
+390 518 y(Returns)29 b(non-zero)i(in)f(the)h(case)g(of)g(an)f(in)m(v)-5
+b(alid)31 b Fi(k)m(ey)39 b Fs(or)30 b(if)h Fi(k)m(ey)39
+b Fs(is)30 b(already)h(b)s(ound.)3350 737 y([F)-8 b(unction])-3599
b Fg(int)53 b(rl_bind_key_if_unboun)q(d_in)q(_ma)q(p)e
-Ff(\()p Fi(in)m(t)32 b(k)m(ey)-8 b(,)32 b(rl)p 2345 2990
-V 39 w(command)p 2768 2990 V 40 w(func)p 2978 2990 V
-39 w(t)565 3100 y(*function,)f(Keymap)f(map)p Ff(\))390
-3209 y Fs(Binds)d Fi(k)m(ey)35 b Fs(to)28 b Fi(function)f
-Fs(if)g(it)h(is)f(not)g(already)h(b)s(ound)d(in)i Fi(map)s
-Fs(.)39 b(Returns)26 b(non-zero)i(in)f(the)g(case)390
-3319 y(of)k(an)f(in)m(v)-5 b(alid)31 b Fi(k)m(ey)39 b
+Ff(\()p Fi(in)m(t)32 b(k)m(ey)-8 b(,)32 b(rl)p 2345 737
+V 39 w(command)p 2768 737 V 40 w(func)p 2978 737 V 39
+w(t)565 847 y(*function,)f(Keymap)f(map)p Ff(\))390 956
+y Fs(Binds)d Fi(k)m(ey)36 b Fs(to)28 b Fi(function)f
+Fs(if)g(it)h(is)f(not)h(already)g(b)s(ound)d(in)i Fi(map)p
+Fs(.)39 b(Returns)27 b(non-zero)g(in)g(the)h(case)390
+1066 y(of)j(an)f(in)m(v)-5 b(alid)31 b Fi(k)m(ey)39 b
Fs(or)30 b(if)g Fi(k)m(ey)39 b Fs(is)31 b(already)g(b)s(ound.)3350
-3526 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_unbind_key)d
-Ff(\()p Fi(in)m(t)31 b(k)m(ey)p Ff(\))390 3635 y Fs(Bind)36
+1285 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_unbind_key)d
+Ff(\()p Fi(in)m(t)31 b(k)m(ey)p Ff(\))390 1395 y Fs(Bind)36
b Fi(k)m(ey)45 b Fs(to)37 b(the)f(n)m(ull)g(function)g(in)g(the)h
(curren)m(tly)f(activ)m(e)i(k)m(eymap.)59 b(Returns)35
-b(non-zero)i(in)390 3745 y(case)31 b(of)g(error.)3350
-3952 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_unbind_key_in_map)f
+b(non-zero)i(in)390 1504 y(case)31 b(of)g(error.)3350
+1724 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_unbind_key_in_map)f
Ff(\()p Fi(in)m(t)31 b(k)m(ey)-8 b(,)32 b(Keymap)e(map)p
-Ff(\))390 4062 y Fs(Bind)g Fi(k)m(ey)39 b Fs(to)31 b(the)g(n)m(ull)f
-(function)g(in)g Fi(map)s Fs(.)40 b(Returns)30 b(non-zero)h(in)f(case)h
-(of)g(error.)3350 4268 y([F)-8 b(unction])-3599 b Fg(int)53
+Ff(\))390 1833 y Fs(Bind)g Fi(k)m(ey)39 b Fs(to)31 b(the)g(n)m(ull)f
+(function)g(in)g Fi(map)p Fs(.)40 b(Returns)30 b(non-zero)h(in)f(case)h
+(of)g(error.)3350 2052 y([F)-8 b(unction])-3599 b Fg(int)53
b(rl_unbind_function_in)q(_map)f Ff(\()p Fi(rl)p 1814
-4268 V 40 w(command)p 2238 4268 V 40 w(func)p 2448 4268
-V 40 w(t)30 b(*function,)565 4378 y(Keymap)g(map)p Ff(\))390
-4488 y Fs(Un)m(bind)f(all)i(k)m(eys)g(that)g(execute)h
-Fi(function)e Fs(in)g Fi(map)s Fs(.)3350 4695 y([F)-8
+2052 V 40 w(command)p 2238 2052 V 40 w(func)p 2448 2052
+V 40 w(t)30 b(*function,)565 2162 y(Keymap)g(map)p Ff(\))390
+2271 y Fs(Un)m(bind)f(all)i(k)m(eys)g(that)g(execute)h
+Fi(function)e Fs(in)g Fi(map)p Fs(.)3350 2491 y([F)-8
b(unction])-3599 b Fg(int)53 b(rl_unbind_command_in_)q(map)f
Ff(\()p Fi(const)31 b(c)m(har)g(*command,)g(Keymap)f(map)p
-Ff(\))390 4804 y Fs(Un)m(bind)f(all)i(k)m(eys)g(that)g(are)g(b)s(ound)e
-(to)i Fi(command)i Fs(in)d Fi(map)s Fs(.)3350 5011 y([F)-8
+Ff(\))390 2600 y Fs(Un)m(bind)f(all)i(k)m(eys)g(that)g(are)g(b)s(ound)e
+(to)i Fi(command)i Fs(in)d Fi(map)p Fs(.)3350 2819 y([F)-8
b(unction])-3599 b Fg(int)53 b(rl_bind_keyseq)d Ff(\()p
-Fi(const)31 b(c)m(har)g(*k)m(eyseq,)h(rl)p 2036 5011
-V 40 w(command)p 2460 5011 V 40 w(func)p 2670 5011 V
-39 w(t)f(*function)p Ff(\))390 5121 y Fs(Bind)43 b(the)g(k)m(ey)h
+Fi(const)31 b(c)m(har)g(*k)m(eyseq,)h(rl)p 2036 2819
+V 40 w(command)p 2460 2819 V 40 w(func)p 2670 2819 V
+39 w(t)f(*function)p Ff(\))390 2929 y Fs(Bind)43 b(the)g(k)m(ey)h
(sequence)f(represen)m(ted)g(b)m(y)g(the)g(string)g Fi(k)m(eyseq)j
-Fs(to)e(the)f(function)g Fi(function)p Fs(,)390 5230
+Fs(to)e(the)f(function)g Fi(function)p Fs(,)390 3039
y(b)s(eginning)27 b(in)h(the)h(curren)m(t)f(k)m(eymap.)40
b(This)28 b(mak)m(es)h(new)e(k)m(eymaps)i(as)f(necessary)-8
-b(.)41 b(The)28 b(return)390 5340 y(v)-5 b(alue)31 b(is)f(non-zero)h
-(if)g Fi(k)m(eyseq)i Fs(is)d(in)m(v)-5 b(alid.)p eop
-end
-%%Page: 32 36
-TeXDict begin 32 35 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(32)3350
-299 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_bind_keyseq_in_map)f
+b(.)41 b(The)28 b(return)390 3148 y(v)-5 b(alue)31 b(is)f(non-zero)h
+(if)g Fi(k)m(eyseq)i Fs(is)d(in)m(v)-5 b(alid.)3350 3367
+y([F)d(unction])-3599 b Fg(int)53 b(rl_bind_keyseq_in_map)f
Ff(\()p Fi(const)31 b(c)m(har)g(*k)m(eyseq,)h(rl)p 2402
-299 28 4 v 40 w(command)p 2826 299 V 40 w(func)p 3036
-299 V 39 w(t)565 408 y(*function,)f(Keymap)f(map)p Ff(\))390
-518 y Fs(Bind)25 b(the)g(k)m(ey)h(sequence)f(represen)m(ted)g(b)m(y)g
+3367 V 40 w(command)p 2826 3367 V 40 w(func)p 3036 3367
+V 39 w(t)565 3477 y(*function,)f(Keymap)f(map)p Ff(\))390
+3587 y Fs(Bind)25 b(the)g(k)m(ey)h(sequence)f(represen)m(ted)g(b)m(y)g
(the)g(string)g Fi(k)m(eyseq)j Fs(to)e(the)f(function)g
-Fi(function)p Fs(.)39 b(This)390 628 y(mak)m(es)30 b(new)e(k)m(eymaps)h
-(as)g(necessary)-8 b(.)41 b(Initial)30 b(bindings)e(are)h(p)s(erformed)
-e(in)i Fi(map)s Fs(.)40 b(The)28 b(return)390 737 y(v)-5
-b(alue)31 b(is)f(non-zero)h(if)g Fi(k)m(eyseq)i Fs(is)d(in)m(v)-5
-b(alid.)3350 939 y([F)d(unction])-3599 b Fg(int)53 b(rl_set_key)c
-Ff(\()p Fi(const)31 b(c)m(har)g(*k)m(eyseq,)h(rl)p 1827
-939 V 40 w(command)p 2251 939 V 39 w(func)p 2460 939
-V 40 w(t)e(*function,)565 1049 y(Keymap)g(map)p Ff(\))390
-1159 y Fs(Equiv)-5 b(alen)m(t)31 b(to)g Fr(rl_bind_keyseq_in_map)p
-Fs(.)3350 1361 y([F)-8 b(unction])-3599 b Fg(int)53 b
-(rl_bind_keyseq_if_unb)q(ound)f Ff(\()p Fi(const)31 b(c)m(har)g(*k)m
-(eyseq,)565 1470 y(rl)p 632 1470 V 40 w(command)p 1056
-1470 V 40 w(func)p 1266 1470 V 39 w(t)g(*function)p Ff(\))390
-1580 y Fs(Binds)k Fi(k)m(eyseq)k Fs(to)d Fi(function)f
-Fs(if)g(it)h(is)g(not)g(already)g(b)s(ound)d(in)i(the)h(curren)m(tly)f
-(activ)m(e)j(k)m(eymap.)390 1690 y(Returns)29 b(non-zero)i(in)f(the)h
-(case)g(of)g(an)f(in)m(v)-5 b(alid)31 b Fi(k)m(eyseq)j
-Fs(or)c(if)g Fi(k)m(eyseq)k Fs(is)c(already)h(b)s(ound.)3350
-1892 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_bind_keyseq_if_unb)q
-(ound)q(_in)q(_ma)q(p)e Ff(\()p Fi(const)32 b(c)m(har)e(*k)m(eyseq,)565
-2001 y(rl)p 632 2001 V 40 w(command)p 1056 2001 V 40
-w(func)p 1266 2001 V 39 w(t)h(*function,)f(Keymap)h(map)p
-Ff(\))390 2111 y Fs(Binds)g Fi(k)m(eyseq)k Fs(to)e Fi(function)e
-Fs(if)h(it)g(is)g(not)g(already)g(b)s(ound)e(in)i Fi(map)s
-Fs(.)44 b(Returns)31 b(non-zero)h(in)g(the)390 2220 y(case)f(of)g(an)f
+Fi(function)p Fs(.)39 b(This)390 3696 y(mak)m(es)30 b(new)f(k)m(eymaps)
+g(as)g(necessary)-8 b(.)42 b(Initial)30 b(bindings)d(are)j(p)s
+(erformed)e(in)g Fi(map)p Fs(.)40 b(The)29 b(return)390
+3806 y(v)-5 b(alue)31 b(is)f(non-zero)h(if)g Fi(k)m(eyseq)i
+Fs(is)d(in)m(v)-5 b(alid.)3350 4025 y([F)d(unction])-3599
+b Fg(int)53 b(rl_set_key)c Ff(\()p Fi(const)31 b(c)m(har)g(*k)m(eyseq,)
+h(rl)p 1827 4025 V 40 w(command)p 2251 4025 V 39 w(func)p
+2460 4025 V 40 w(t)e(*function,)565 4134 y(Keymap)g(map)p
+Ff(\))390 4244 y Fs(Equiv)-5 b(alen)m(t)31 b(to)g Fr
+(rl_bind_keyseq_in_map)p Fs(.)3350 4463 y([F)-8 b(unction])-3599
+b Fg(int)53 b(rl_bind_keyseq_if_unb)q(ound)f Ff(\()p
+Fi(const)31 b(c)m(har)g(*k)m(eyseq,)565 4573 y(rl)p 632
+4573 V 40 w(command)p 1056 4573 V 40 w(func)p 1266 4573
+V 39 w(t)g(*function)p Ff(\))390 4682 y Fs(Binds)k Fi(k)m(eyseq)k
+Fs(to)d Fi(function)f Fs(if)g(it)h(is)g(not)g(already)g(b)s(ound)d(in)i
+(the)h(curren)m(tly)f(activ)m(e)j(k)m(eymap.)390 4792
+y(Returns)29 b(non-zero)i(in)f(the)h(case)g(of)g(an)f(in)m(v)-5
+b(alid)31 b Fi(k)m(eyseq)j Fs(or)c(if)g Fi(k)m(eyseq)k
+Fs(is)c(already)h(b)s(ound.)3350 5011 y([F)-8 b(unction])-3599
+b Fg(int)53 b(rl_bind_keyseq_if_unb)q(ound)q(_in)q(_ma)q(p)e
+Ff(\()p Fi(const)32 b(c)m(har)e(*k)m(eyseq,)565 5121
+y(rl)p 632 5121 V 40 w(command)p 1056 5121 V 40 w(func)p
+1266 5121 V 39 w(t)h(*function,)f(Keymap)h(map)p Ff(\))390
+5230 y Fs(Binds)g Fi(k)m(eyseq)k Fs(to)e Fi(function)f
+Fs(if)g(it)g(is)g(not)g(already)h(b)s(ound)d(in)h Fi(map)p
+Fs(.)46 b(Returns)31 b(non-zero)h(in)g(the)390 5340 y(case)f(of)g(an)f
(in)m(v)-5 b(alid)31 b Fi(k)m(eyseq)j Fs(or)c(if)g Fi(k)m(eyseq)k
-Fs(is)c(already)h(b)s(ound.)3350 2423 y([F)-8 b(unction])-3599
-b Fg(int)53 b(rl_generic_bind)d Ff(\()p Fi(in)m(t)31
-b(t)m(yp)s(e,)g(const)g(c)m(har)g(*k)m(eyseq,)h(c)m(har)f(*data,)h
-(Keymap)565 2532 y(map)p Ff(\))390 2642 y Fs(Bind)27
-b(the)g(k)m(ey)h(sequence)f(represen)m(ted)g(b)m(y)g(the)g(string)g
-Fi(k)m(eyseq)j Fs(to)e(the)f(arbitrary)g(p)s(oin)m(ter)g
-Fi(data)p Fs(.)390 2751 y Fi(t)m(yp)s(e)34 b Fs(sa)m(ys)29
+Fs(is)c(already)h(b)s(ound.)p eop end
+%%Page: 33 37
+TeXDict begin 33 36 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(33)3350
+299 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_generic_bind)d
+Ff(\()p Fi(in)m(t)31 b(t)m(yp)s(e,)g(const)g(c)m(har)g(*k)m(eyseq,)h(c)
+m(har)f(*data,)h(Keymap)565 408 y(map)p Ff(\))390 518
+y Fs(Bind)27 b(the)g(k)m(ey)h(sequence)f(represen)m(ted)g(b)m(y)g(the)g
+(string)g Fi(k)m(eyseq)j Fs(to)e(the)f(arbitrary)g(p)s(oin)m(ter)g
+Fi(data)p Fs(.)390 628 y Fi(t)m(yp)s(e)34 b Fs(sa)m(ys)29
b(what)f(kind)g(of)g(data)h(is)g(p)s(oin)m(ted)f(to)h(b)m(y)g
Fi(data)p Fs(;)h(this)e(can)h(b)s(e)f(a)g(function)g(\()p
-Fr(ISFUNC)p Fs(\),)h(a)390 2861 y(macro)h(\()p Fr(ISMACR)p
+Fr(ISFUNC)p Fs(\),)h(a)390 737 y(macro)h(\()p Fr(ISMACR)p
Fs(\),)f(or)g(a)h(k)m(eymap)g(\()p Fr(ISKMAP)p Fs(\).)40
b(This)28 b(mak)m(es)j(new)e(k)m(eymaps)g(as)h(necessary)-8
-b(.)41 b(The)390 2971 y(initial)32 b(k)m(eymap)e(in)h(whic)m(h)f(to)h
-(do)f(bindings)f(is)i Fi(map)s Fs(.)3350 3173 y([F)-8
+b(.)41 b(The)390 847 y(initial)32 b(k)m(eymap)e(in)h(whic)m(h)f(to)h
+(do)f(bindings)f(is)i Fi(map)p Fs(.)3350 1028 y([F)-8
b(unction])-3599 b Fg(int)53 b(rl_parse_and_bind)e Ff(\()p
-Fi(c)m(har)31 b(*line)p Ff(\))390 3282 y Fs(P)m(arse)f
+Fi(c)m(har)31 b(*line)p Ff(\))390 1137 y Fs(P)m(arse)f
Fi(line)35 b Fs(as)29 b(if)h(it)g(had)e(b)s(een)h(read)g(from)g(the)h
Fr(inputrc)d Fs(\014le)j(and)e(p)s(erform)g(an)m(y)i(k)m(ey)g(bindings)
-390 3392 y(and)g(v)-5 b(ariable)31 b(assignmen)m(ts)g(found)e(\(see)i
+390 1247 y(and)g(v)-5 b(ariable)31 b(assignmen)m(ts)g(found)e(\(see)i
(Section)h(1.3)f([Readline)g(Init)f(File],)j(page)e(4\).)3350
-3594 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_read_init_file)e
+1428 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_read_init_file)e
Ff(\()p Fi(const)31 b(c)m(har)g(*\014lename)p Ff(\))390
-3704 y Fs(Read)h(k)m(eybindings)f(and)g(v)-5 b(ariable)32
+1538 y Fs(Read)h(k)m(eybindings)f(and)g(v)-5 b(ariable)32
b(assignmen)m(ts)g(from)f Fi(\014lename)37 b Fs(\(see)32
-b(Section)g(1.3)h([Readline)390 3813 y(Init)d(File],)i(page)f(4\).)150
-4022 y Fh(2.4.4)63 b(Asso)s(ciating)41 b(F)-10 b(unction)42
-b(Names)f(and)g(Bindings)150 4168 y Fs(These)30 b(functions)g(allo)m(w)
+b(Section)g(1.3)h([Readline)390 1647 y(Init)d(File],)i(page)f(4\).)150
+1844 y Fh(2.4.4)63 b(Asso)s(ciating)41 b(F)-10 b(unction)42
+b(Names)f(and)g(Bindings)150 1991 y Fs(These)30 b(functions)g(allo)m(w)
h(y)m(ou)g(to)f(\014nd)f(out)h(what)g(k)m(eys)h(in)m(v)m(ok)m(e)h
-(named)e(functions)g(and)f(the)h(functions)150 4278 y(in)m(v)m(ok)m(ed)
+(named)e(functions)g(and)f(the)h(functions)150 2101 y(in)m(v)m(ok)m(ed)
f(b)m(y)e(a)h(particular)g(k)m(ey)g(sequence.)40 b(Y)-8
b(ou)28 b(ma)m(y)g(also)h(asso)s(ciate)g(a)f(new)f(function)g(name)h
-(with)f(an)150 4388 y(arbitrary)j(function.)3350 4590
+(with)f(an)150 2210 y(arbitrary)j(function.)3350 2391
y([F)-8 b(unction])-3599 b Fg(rl_command_func_t)57 b(*)c
(rl_named_function)e Ff(\()p Fi(const)31 b(c)m(har)g(*name)p
-Ff(\))390 4699 y Fs(Return)f(the)g(function)g(with)g(name)h
-Fi(name)5 b Fs(.)3350 4902 y([F)-8 b(unction])-3599 b
-Fg(rl_command_func_t)57 b(*)c(rl_function_of_keyseq)f
-Ff(\()p Fi(const)31 b(c)m(har)g(*k)m(eyseq,)565 5011
-y(Keymap)f(map,)g(in)m(t)h(*t)m(yp)s(e)p Ff(\))390 5121
-y Fs(Return)h(the)g(function)g(in)m(v)m(ok)m(ed)i(b)m(y)e
-Fi(k)m(eyseq)k Fs(in)c(k)m(eymap)h Fi(map)s Fs(.)46 b(If)32
-b Fi(map)i Fs(is)f Fr(NULL)p Fs(,)f(the)g(curren)m(t)390
-5230 y(k)m(eymap)37 b(is)g(used.)60 b(If)37 b Fi(t)m(yp)s(e)42
-b Fs(is)37 b(not)g Fr(NULL)p Fs(,)h(the)f(t)m(yp)s(e)g(of)g(the)g(ob)5
-b(ject)38 b(is)f(returned)f(in)h(the)g Fr(int)390 5340
-y Fs(v)-5 b(ariable)31 b(it)g(p)s(oin)m(ts)f(to)h(\(one)g(of)g
-Fr(ISFUNC)p Fs(,)e Fr(ISKMAP)p Fs(,)g(or)h Fr(ISMACR)p
-Fs(\).)p eop end
-%%Page: 33 37
-TeXDict begin 33 36 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(33)3350
-299 y([F)-8 b(unction])-3599 b Fg(char)54 b(**)e(rl_invoking_keyseqs)g
-Ff(\()p Fi(rl)p 1710 299 28 4 v 40 w(command)p 2134 299
-V 40 w(func)p 2344 299 V 39 w(t)31 b(*function)p Ff(\))390
-408 y Fs(Return)f(an)i(arra)m(y)f(of)h(strings)f(represen)m(ting)g(the)
-g(k)m(ey)h(sequences)g(used)e(to)i(in)m(v)m(ok)m(e)h
-Fi(function)e Fs(in)390 518 y(the)g(curren)m(t)f(k)m(eymap.)3350
-692 y([F)-8 b(unction])-3599 b Fg(char)54 b(**)e(rl_invoking_keyseqs_i)
-q(n_m)q(ap)g Ff(\()p Fi(rl)p 2076 692 V 40 w(command)p
-2500 692 V 40 w(func)p 2710 692 V 39 w(t)565 802 y(*function,)31
-b(Keymap)f(map)p Ff(\))390 911 y Fs(Return)g(an)i(arra)m(y)f(of)h
+Ff(\))390 2501 y Fs(Return)f(the)g(function)g(with)g(name)h
+Fi(name)p Fs(.)3350 2682 y([F)-8 b(unction])-3599 b Fg
+(rl_command_func_t)57 b(*)c(rl_function_of_keyseq)f Ff(\()p
+Fi(const)31 b(c)m(har)g(*k)m(eyseq,)565 2791 y(Keymap)f(map,)g(in)m(t)h
+(*t)m(yp)s(e)p Ff(\))390 2901 y Fs(Return)h(the)g(function)h(in)m(v)m
+(ok)m(ed)h(b)m(y)e Fi(k)m(eyseq)k Fs(in)c(k)m(eymap)h
+Fi(map)p Fs(.)47 b(If)32 b Fi(map)j Fs(is)d Fr(NULL)p
+Fs(,)g(the)h(curren)m(t)390 3011 y(k)m(eymap)k(is)g(used.)60
+b(If)37 b Fi(t)m(yp)s(e)42 b Fs(is)37 b(not)g Fr(NULL)p
+Fs(,)h(the)f(t)m(yp)s(e)g(of)g(the)g(ob)5 b(ject)38 b(is)f(returned)f
+(in)h(the)g Fr(int)390 3120 y Fs(v)-5 b(ariable)31 b(it)g(p)s(oin)m(ts)
+f(to)h(\(one)g(of)g Fr(ISFUNC)p Fs(,)e Fr(ISKMAP)p Fs(,)g(or)h
+Fr(ISMACR)p Fs(\).)3350 3301 y([F)-8 b(unction])-3599
+b Fg(char)54 b(**)e(rl_invoking_keyseqs)g Ff(\()p Fi(rl)p
+1710 3301 28 4 v 40 w(command)p 2134 3301 V 40 w(func)p
+2344 3301 V 39 w(t)31 b(*function)p Ff(\))390 3411 y
+Fs(Return)f(an)i(arra)m(y)f(of)h(strings)f(represen)m(ting)g(the)g(k)m
+(ey)h(sequences)g(used)e(to)i(in)m(v)m(ok)m(e)h Fi(function)e
+Fs(in)390 3520 y(the)g(curren)m(t)f(k)m(eymap.)3350 3701
+y([F)-8 b(unction])-3599 b Fg(char)54 b(**)e(rl_invoking_keyseqs_i)q
+(n_m)q(ap)g Ff(\()p Fi(rl)p 2076 3701 V 40 w(command)p
+2500 3701 V 40 w(func)p 2710 3701 V 39 w(t)565 3811 y(*function,)31
+b(Keymap)f(map)p Ff(\))390 3920 y Fs(Return)g(an)i(arra)m(y)f(of)h
(strings)f(represen)m(ting)g(the)g(k)m(ey)h(sequences)g(used)e(to)i(in)
-m(v)m(ok)m(e)h Fi(function)e Fs(in)390 1021 y(the)g(k)m(eymap)f
-Fi(map)s Fs(.)3350 1195 y([F)-8 b(unction])-3599 b Fg(void)54
+m(v)m(ok)m(e)h Fi(function)e Fs(in)390 4030 y(the)g(k)m(eymap)f
+Fi(map)p Fs(.)3350 4211 y([F)-8 b(unction])-3599 b Fg(void)54
b(rl_function_dumper)c Ff(\()p Fi(in)m(t)32 b(readable)p
-Ff(\))390 1305 y Fs(Prin)m(t)d(the)h(readline)f(function)g(names)g(and)
+Ff(\))390 4321 y Fs(Prin)m(t)d(the)h(readline)f(function)g(names)g(and)
g(the)g(k)m(ey)h(sequences)g(curren)m(tly)f(b)s(ound)e(to)j(them)f(to)
-390 1414 y Fr(rl_outstream)p Fs(.)36 b(If)27 b Fi(readable)33
+390 4430 y Fr(rl_outstream)p Fs(.)36 b(If)27 b Fi(readable)33
b Fs(is)28 b(non-zero,)h(the)e(list)i(is)e(formatted)h(in)f(suc)m(h)g
-(a)h(w)m(a)m(y)h(that)f(it)g(can)390 1524 y(b)s(e)i(made)g(part)g(of)h
-(an)f Fr(inputrc)f Fs(\014le)h(and)g(re-read.)3350 1698
+(a)h(w)m(a)m(y)h(that)f(it)g(can)390 4540 y(b)s(e)i(made)g(part)g(of)h
+(an)f Fr(inputrc)f Fs(\014le)h(and)g(re-read.)3350 4721
y([F)-8 b(unction])-3599 b Fg(void)54 b(rl_list_funmap_names)d
-Ff(\()p Fi(v)m(oid)p Ff(\))390 1808 y Fs(Prin)m(t)30
+Ff(\()p Fi(v)m(oid)p Ff(\))390 4830 y Fs(Prin)m(t)30
b(the)h(names)f(of)h(all)g(bindable)f(Readline)h(functions)f(to)h
-Fr(rl_outstream)p Fs(.)3350 1982 y([F)-8 b(unction])-3599
+Fr(rl_outstream)p Fs(.)3350 5011 y([F)-8 b(unction])-3599
b Fg(const)54 b(char)f(**)g(rl_funmap_names)d Ff(\()p
-Fi(v)m(oid)p Ff(\))390 2091 y Fs(Return)25 b(a)i(NULL)f(terminated)g
+Fi(v)m(oid)p Ff(\))390 5121 y Fs(Return)25 b(a)i(NULL)f(terminated)g
(arra)m(y)h(of)f(kno)m(wn)f(function)h(names.)39 b(The)26
-b(arra)m(y)g(is)g(sorted.)39 b(The)390 2201 y(arra)m(y)28
+b(arra)m(y)g(is)g(sorted.)39 b(The)390 5230 y(arra)m(y)28
b(itself)h(is)f(allo)s(cated,)j(but)c(not)h(the)h(strings)e(inside.)40
b(Y)-8 b(ou)29 b(should)e(free)h(the)g(arra)m(y)-8 b(,)29
-b(but)f(not)390 2311 y(the)j(p)s(oin)m(ters,)f(using)g
-Fr(free)f Fs(or)i Fr(rl_free)d Fs(when)h(y)m(ou)i(are)g(done.)3350
-2485 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_add_funmap_entry)e
-Ff(\()p Fi(const)32 b(c)m(har)e(*name,)i(rl)p 2252 2485
-V 39 w(command)p 2675 2485 V 40 w(func)p 2885 2485 V
-39 w(t)565 2594 y(*function)p Ff(\))390 2704 y Fs(Add)g
+b(but)f(not)390 5340 y(the)j(p)s(oin)m(ters,)f(using)g
+Fr(free)f Fs(or)i Fr(rl_free)d Fs(when)h(y)m(ou)i(are)g(done.)p
+eop end
+%%Page: 34 38
+TeXDict begin 34 37 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(34)3350
+299 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_add_funmap_entry)e
+Ff(\()p Fi(const)32 b(c)m(har)e(*name,)i(rl)p 2252 299
+28 4 v 39 w(command)p 2675 299 V 40 w(func)p 2885 299
+V 39 w(t)565 408 y(*function)p Ff(\))390 518 y Fs(Add)g
Fi(name)38 b Fs(to)33 b(the)g(list)h(of)f(bindable)f(Readline)h
(command)g(names,)g(and)f(mak)m(e)i Fi(function)f Fs(the)390
-2814 y(function)d(to)h(b)s(e)f(called)h(when)f Fi(name)35
-b Fs(is)c(in)m(v)m(ok)m(ed.)150 3006 y Fh(2.4.5)63 b(Allo)m(wing)41
-b(Undoing)150 3153 y Fs(Supp)s(orting)34 b(the)i(undo)e(command)i(is)g
+628 y(function)d(to)h(b)s(e)f(called)h(when)f Fi(name)35
+b Fs(is)c(in)m(v)m(ok)m(ed.)150 838 y Fh(2.4.5)63 b(Allo)m(wing)41
+b(Undoing)150 985 y Fs(Supp)s(orting)34 b(the)i(undo)e(command)i(is)g
(a)g(painless)g(thing,)h(and)e(mak)m(es)i(y)m(our)f(functions)f(m)m(uc)
-m(h)h(more)150 3263 y(useful.)k(It)30 b(is)h(certainly)g(easy)g(to)g
+m(h)h(more)150 1094 y(useful.)k(It)30 b(is)h(certainly)g(easy)g(to)g
(try)g(something)g(if)f(y)m(ou)h(kno)m(w)f(y)m(ou)h(can)f(undo)g(it.)
-275 3394 y(If)40 b(y)m(our)h(function)f(simply)g(inserts)h(text)h
+275 1240 y(If)40 b(y)m(our)h(function)f(simply)g(inserts)h(text)h
(once,)i(or)d(deletes)h(text)g(once,)i(and)c(uses)h Fr(rl_insert_)150
-3503 y(text\(\))26 b Fs(or)i Fr(rl_delete_text\(\))23
+1349 y(text\(\))26 b Fs(or)i Fr(rl_delete_text\(\))23
b Fs(to)29 b(do)f(it,)h(then)f(undoing)f(is)g(already)i(done)f(for)f(y)
-m(ou)h(automatically)-8 b(.)275 3634 y(If)20 b(y)m(ou)g(do)h(m)m
+m(ou)h(automatically)-8 b(.)275 1494 y(If)20 b(y)m(ou)g(do)h(m)m
(ultiple)g(insertions)f(or)h(m)m(ultiple)g(deletions,)j(or)c(an)m(y)h
-(com)m(bination)h(of)e(these)h(op)s(erations,)150 3744
+(com)m(bination)h(of)e(these)h(op)s(erations,)150 1604
y(y)m(ou)38 b(should)f(group)h(them)g(together)h(in)m(to)g(one)f(op)s
(eration.)64 b(This)37 b(is)h(done)g(with)g Fr(rl_begin_undo_)150
-3854 y(group\(\))28 b Fs(and)i Fr(rl_end_undo_group\(\))p
-Fs(.)275 3985 y(The)f(t)m(yp)s(es)i(of)f(ev)m(en)m(ts)i(that)f(can)g(b)
-s(e)e(undone)h(are:)390 4093 y Fe(enum)40 b(undo_code)h({)f
+1714 y(group\(\))28 b Fs(and)i Fr(rl_end_undo_group\(\))p
+Fs(.)275 1859 y(The)f(t)m(yp)s(es)i(of)f(ev)m(en)m(ts)i(that)f(can)g(b)
+s(e)e(undone)h(are:)390 1982 y Fe(enum)40 b(undo_code)h({)f
(UNDO_DELETE,)i(UNDO_INSERT,)g(UNDO_BEGIN,)g(UNDO_END)f(};)275
-4225 y Fs(Notice)32 b(that)f Fr(UNDO_DELETE)c Fs(means)j(to)h(insert)f
+2127 y Fs(Notice)32 b(that)f Fr(UNDO_DELETE)c Fs(means)j(to)h(insert)f
(some)h(text,)h(and)d Fr(UNDO_INSERT)e Fs(means)k(to)g(delete)150
-4334 y(some)d(text.)41 b(That)27 b(is,)i(the)e(undo)g(co)s(de)h(tells)g
+2237 y(some)d(text.)41 b(That)27 b(is,)i(the)e(undo)g(co)s(de)h(tells)g
(what)g(to)g(undo,)f(not)h(ho)m(w)g(to)g(undo)e(it.)41
-b Fr(UNDO_BEGIN)25 b Fs(and)150 4444 y Fr(UNDO_END)j
+b Fr(UNDO_BEGIN)25 b Fs(and)150 2346 y Fr(UNDO_END)j
Fs(are)j(tags)g(added)f(b)m(y)g Fr(rl_begin_undo_group\(\))25
-b Fs(and)30 b Fr(rl_end_undo_group\(\))p Fs(.)3350 4618
+b Fs(and)30 b Fr(rl_end_undo_group\(\))p Fs(.)3350 2552
y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_begin_undo_group)e
-Ff(\()p Fi(v)m(oid)p Ff(\))390 4727 y Fs(Begins)32 b(sa)m(ving)g(undo)d
+Ff(\()p Fi(v)m(oid)p Ff(\))390 2662 y Fs(Begins)32 b(sa)m(ving)g(undo)d
(information)j(in)e(a)i(group)e(construct.)43 b(The)30
-b(undo)g(information)h(usually)390 4837 y(comes)42 b(from)f(calls)i(to)
+b(undo)g(information)h(usually)390 2772 y(comes)42 b(from)f(calls)i(to)
f Fr(rl_insert_text\(\))37 b Fs(and)k Fr(rl_delete_text\(\))p
-Fs(,)f(but)h(could)h(b)s(e)f(the)390 4947 y(result)30
-b(of)h(calls)g(to)g Fr(rl_add_undo\(\))p Fs(.)3350 5121
+Fs(,)f(but)h(could)h(b)s(e)f(the)390 2881 y(result)30
+b(of)h(calls)g(to)g Fr(rl_add_undo\(\))p Fs(.)3350 3087
y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_end_undo_group)e
-Ff(\()p Fi(v)m(oid)p Ff(\))390 5230 y Fs(Closes)29 b(the)h(curren)m(t)e
+Ff(\()p Fi(v)m(oid)p Ff(\))390 3197 y Fs(Closes)29 b(the)h(curren)m(t)e
(undo)g(group)h(started)g(with)g Fr(rl_begin_undo_group)c(\(\))p
-Fs(.)39 b(There)29 b(should)390 5340 y(b)s(e)h(one)g(call)i(to)f
+Fs(.)39 b(There)29 b(should)390 3306 y(b)s(e)h(one)g(call)i(to)f
Fr(rl_end_undo_group\(\))25 b Fs(for)30 b(eac)m(h)i(call)g(to)f
-Fr(rl_begin_undo_group\(\))p Fs(.)p eop end
-%%Page: 34 38
-TeXDict begin 34 37 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(34)3350
-299 y([F)-8 b(unction])-3599 b Fg(void)54 b(rl_add_undo)48
-b Ff(\()p Fi(en)m(um)31 b(undo)p 1517 299 28 4 v 39 w(co)s(de)f(what,)h
-(in)m(t)g(start,)g(in)m(t)g(end,)f(c)m(har)g(*text)p
-Ff(\))390 408 y Fs(Remem)m(b)s(er)k(ho)m(w)g(to)h(undo)d(an)i(ev)m(en)m
-(t)i(\(according)f(to)g Fi(what)r Fs(\).)52 b(The)33
-b(a\013ected)j(text)f(runs)d(from)390 518 y Fi(start)h
-Fs(to)e Fi(end)t Fs(,)f(and)f(encompasses)i Fi(text)r
-Fs(.)3350 708 y([F)-8 b(unction])-3599 b Fg(void)54 b
-(rl_free_undo_list)c Ff(\()p Fi(v)m(oid)p Ff(\))390 818
-y Fs(F)-8 b(ree)31 b(the)g(existing)g(undo)f(list.)3350
-1008 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_do_undo)c
-Ff(\()p Fi(v)m(oid)p Ff(\))390 1117 y Fs(Undo)22 b(the)h(\014rst)g
+Fr(rl_begin_undo_group\(\))p Fs(.)3350 3512 y([F)-8 b(unction])-3599
+b Fg(void)54 b(rl_add_undo)48 b Ff(\()p Fi(en)m(um)31
+b(undo)p 1517 3512 V 39 w(co)s(de)f(what,)h(in)m(t)g(start,)g(in)m(t)g
+(end,)f(c)m(har)g(*text)p Ff(\))390 3622 y Fs(Remem)m(b)s(er)k(ho)m(w)g
+(to)h(undo)d(an)i(ev)m(en)m(t)i(\(according)f(to)g Fi(what)r
+Fs(\).)52 b(The)33 b(a\013ected)j(text)f(runs)d(from)390
+3731 y Fi(start)h Fs(to)e Fi(end)p Fs(,)f(and)g(encompasses)h
+Fi(text)p Fs(.)3350 3937 y([F)-8 b(unction])-3599 b Fg(void)54
+b(rl_free_undo_list)c Ff(\()p Fi(v)m(oid)p Ff(\))390
+4047 y Fs(F)-8 b(ree)31 b(the)g(existing)g(undo)f(list.)3350
+4253 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_do_undo)c
+Ff(\()p Fi(v)m(oid)p Ff(\))390 4362 y Fs(Undo)22 b(the)h(\014rst)g
(thing)f(on)h(the)g(undo)f(list.)39 b(Returns)22 b Fr(0)g
Fs(if)h(there)g(w)m(as)g(nothing)g(to)h(undo,)f(non-zero)390
-1227 y(if)30 b(something)h(w)m(as)g(undone.)275 1417
+4472 y(if)30 b(something)h(w)m(as)g(undone.)275 4678
y(Finally)-8 b(,)32 b(if)f(y)m(ou)h(neither)f(insert)g(nor)f(delete)j
(text,)f(but)f(directly)g(mo)s(dify)g(the)g(existing)h(text)g(\(e.g.,)
-150 1526 y(c)m(hange)40 b(its)f(case\),)j(call)e Fr(rl_modifying\(\))35
+150 4788 y(c)m(hange)40 b(its)f(case\),)j(call)e Fr(rl_modifying\(\))35
b Fs(once,)42 b(just)c(b)s(efore)g(y)m(ou)h(mo)s(dify)f(the)h(text.)67
-b(Y)-8 b(ou)39 b(m)m(ust)150 1636 y(supply)29 b(the)h(indices)h(of)f
+b(Y)-8 b(ou)39 b(m)m(ust)150 4897 y(supply)29 b(the)h(indices)h(of)f
(the)h(text)g(range)g(that)g(y)m(ou)g(are)g(going)g(to)g(mo)s(dify)-8
-b(.)3350 1826 y([F)g(unction])-3599 b Fg(int)53 b(rl_modifying)c
+b(.)3350 5103 y([F)g(unction])-3599 b Fg(int)53 b(rl_modifying)c
Ff(\()p Fi(in)m(t)32 b(start,)f(in)m(t)g(end)p Ff(\))390
-1935 y Fs(T)-8 b(ell)41 b(Readline)g(to)g(sa)m(v)m(e)g(the)g(text)g(b)s
+5213 y Fs(T)-8 b(ell)41 b(Readline)g(to)g(sa)m(v)m(e)g(the)g(text)g(b)s
(et)m(w)m(een)g Fi(start)i Fs(and)c Fi(end)k Fs(as)e(a)f(single)h(undo)
-e(unit.)70 b(It)40 b(is)390 2045 y(assumed)30 b(that)h(y)m(ou)f(will)h
-(subsequen)m(tly)f(mo)s(dify)f(that)i(text.)150 2247
-y Fh(2.4.6)63 b(Redispla)m(y)3350 2447 y Fs([F)-8 b(unction])-3599
-b Fg(void)54 b(rl_redisplay)49 b Ff(\()p Fi(v)m(oid)p
-Ff(\))390 2556 y Fs(Change)38 b(what's)f(displa)m(y)m(ed)i(on)e(the)h
-(screen)g(to)h(re\015ect)f(the)g(curren)m(t)g(con)m(ten)m(ts)h(of)f
-Fr(rl_line_)390 2666 y(buffer)p Fs(.)3350 2856 y([F)-8
-b(unction])-3599 b Fg(int)53 b(rl_forced_update_disp)q(lay)f
-Ff(\()p Fi(v)m(oid)p Ff(\))390 2965 y Fs(F)-8 b(orce)41
+e(unit.)70 b(It)40 b(is)390 5322 y(assumed)30 b(that)h(y)m(ou)f(will)h
+(subsequen)m(tly)f(mo)s(dify)f(that)i(text.)p eop end
+%%Page: 35 39
+TeXDict begin 35 38 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(35)150
+299 y Fh(2.4.6)63 b(Redispla)m(y)3350 508 y Fs([F)-8
+b(unction])-3599 b Fg(void)54 b(rl_redisplay)49 b Ff(\()p
+Fi(v)m(oid)p Ff(\))390 617 y Fs(Change)38 b(what's)f(displa)m(y)m(ed)i
+(on)e(the)h(screen)g(to)h(re\015ect)f(the)g(curren)m(t)g(con)m(ten)m
+(ts)h(of)f Fr(rl_line_)390 727 y(buffer)p Fs(.)3350 935
+y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_forced_update_disp)q(lay)f
+Ff(\()p Fi(v)m(oid)p Ff(\))390 1045 y Fs(F)-8 b(orce)41
b(the)f(line)g(to)h(b)s(e)e(up)s(dated)f(and)h(redispla)m(y)m(ed,)k
-(whether)c(or)g(not)h(Readline)h(thinks)e(the)390 3075
-y(screen)30 b(displa)m(y)h(is)f(correct.)3350 3265 y([F)-8
+(whether)c(or)g(not)h(Readline)h(thinks)e(the)390 1154
+y(screen)30 b(displa)m(y)h(is)f(correct.)3350 1362 y([F)-8
b(unction])-3599 b Fg(int)53 b(rl_on_new_line)d Ff(\()p
-Fi(v)m(oid)p Ff(\))390 3375 y Fs(T)-8 b(ell)31 b(the)f(up)s(date)f
+Fi(v)m(oid)p Ff(\))390 1472 y Fs(T)-8 b(ell)31 b(the)f(up)s(date)f
(functions)g(that)i(w)m(e)f(ha)m(v)m(e)h(mo)m(v)m(ed)g(on)m(to)g(a)f
-(new)f(\(empt)m(y\))i(line,)g(usually)e(after)390 3484
-y(ouputting)h(a)h(newline.)3350 3674 y([F)-8 b(unction])-3599
+(new)f(\(empt)m(y\))i(line,)g(usually)e(after)390 1581
+y(outputting)i(a)f(newline.)3350 1790 y([F)-8 b(unction])-3599
b Fg(int)53 b(rl_on_new_line_with_p)q(romp)q(t)f Ff(\()p
-Fi(v)m(oid)p Ff(\))390 3784 y Fs(T)-8 b(ell)25 b(the)f(up)s(date)f
+Fi(v)m(oid)p Ff(\))390 1899 y Fs(T)-8 b(ell)25 b(the)f(up)s(date)f
(functions)h(that)h(w)m(e)f(ha)m(v)m(e)h(mo)m(v)m(ed)g(on)m(to)h(a)e
-(new)g(line,)i(with)d Fi(rl)p 3106 3784 V 40 w(prompt)i
-Fs(already)390 3893 y(displa)m(y)m(ed.)41 b(This)28 b(could)g(b)s(e)g
+(new)g(line,)i(with)d Fi(rl)p 3106 1899 28 4 v 40 w(prompt)i
+Fs(already)390 2009 y(displa)m(y)m(ed.)41 b(This)28 b(could)g(b)s(e)g
(used)g(b)m(y)g(applications)i(that)f(w)m(an)m(t)h(to)f(output)f(the)h
-(prompt)f(string)390 4003 y(themselv)m(es,)h(but)e(still)h(need)g
+(prompt)f(string)390 2118 y(themselv)m(es,)h(but)e(still)h(need)g
(Readline)g(to)g(kno)m(w)f(the)h(prompt)e(string)h(length)h(for)f
-(redispla)m(y)-8 b(.)41 b(It)390 4113 y(should)29 b(b)s(e)h(used)g
-(after)h(setting)g Fi(rl)p 1590 4113 V 40 w(already)p
-1920 4113 V 41 w(prompted)t Fs(.)3350 4303 y([F)-8 b(unction])-3599
+(redispla)m(y)-8 b(.)41 b(It)390 2228 y(should)29 b(b)s(e)h(used)g
+(after)h(setting)g Fi(rl)p 1590 2228 V 40 w(already)p
+1920 2228 V 41 w(prompted)p Fs(.)3350 2436 y([F)-8 b(unction])-3599
b Fg(int)53 b(rl_reset_line_state)e Ff(\()p Fi(v)m(oid)p
-Ff(\))390 4412 y Fs(Reset)36 b(the)e(displa)m(y)h(state)h(to)g(a)f
+Ff(\))390 2546 y Fs(Reset)36 b(the)e(displa)m(y)h(state)h(to)g(a)f
(clean)g(state)h(and)e(redispla)m(y)h(the)g(curren)m(t)g(line)g
-(starting)g(on)g(a)390 4522 y(new)30 b(line.)3350 4712
+(starting)g(on)g(a)390 2655 y(new)30 b(line.)3350 2863
y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_crlf)48 b Ff(\()p
-Fi(v)m(oid)p Ff(\))390 4821 y Fs(Mo)m(v)m(e)32 b(the)f(cursor)f(to)h
+Fi(v)m(oid)p Ff(\))390 2973 y Fs(Mo)m(v)m(e)32 b(the)f(cursor)f(to)h
(the)f(start)h(of)g(the)f(next)h(screen)f(line.)3350
-5011 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_show_char)c
-Ff(\()p Fi(in)m(t)32 b(c)p Ff(\))390 5121 y Fs(Displa)m(y)i(c)m
+3181 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_show_char)c
+Ff(\()p Fi(in)m(t)32 b(c)p Ff(\))390 3291 y Fs(Displa)m(y)i(c)m
(haracter)g Fi(c)k Fs(on)32 b Fr(rl_outstream)p Fs(.)44
b(If)32 b(Readline)h(has)g(not)f(b)s(een)g(set)h(to)g(displa)m(y)g
-(meta)390 5230 y(c)m(haracters)27 b(directly)-8 b(,)29
+(meta)390 3400 y(c)m(haracters)27 b(directly)-8 b(,)29
b(this)c(will)i(con)m(v)m(ert)g(meta)g(c)m(haracters)h(to)e(a)h
-(meta-pre\014xed)f(k)m(ey)g(sequence.)390 5340 y(This)k(is)g(in)m
+(meta-pre\014xed)f(k)m(ey)g(sequence.)390 3510 y(This)k(is)g(in)m
(tended)g(for)g(use)g(b)m(y)h(applications)g(whic)m(h)f(wish)g(to)h(do)
-f(their)h(o)m(wn)f(redispla)m(y)-8 b(.)p eop end
-%%Page: 35 39
-TeXDict begin 35 38 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(35)3350
-299 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_message)c
-Ff(\()p Fi(const)31 b(c)m(har)g(*,)36 b(.)22 b(.)h(.)11
-b Ff(\))390 408 y Fs(The)20 b(argumen)m(ts)h(are)g(a)g(format)g(string)
-g(as)f(w)m(ould)h(b)s(e)f(supplied)f(to)j Fr(printf)p
-Fs(,)f(p)s(ossibly)e(con)m(taining)390 518 y(con)m(v)m(ersion)45
-b(sp)s(eci\014cations)g(suc)m(h)f(as)g(`)p Fr(\045d)p
-Fs(',)k(and)c(an)m(y)g(additional)h(argumen)m(ts)g(necessary)f(to)390
-628 y(satisfy)e(the)f(con)m(v)m(ersion)i(sp)s(eci\014cations.)74
-b(The)41 b(resulting)h(string)f(is)g(displa)m(y)m(ed)h(in)f(the)h
-Fi(ec)m(ho)390 737 y(area)p Fs(.)63 b(The)37 b(ec)m(ho)i(area)f(is)g
-(also)g(used)f(to)h(displa)m(y)g(n)m(umeric)f(argumen)m(ts)h(and)f
-(searc)m(h)h(strings.)390 847 y(Y)-8 b(ou)34 b(should)e(call)j
-Fr(rl_save_prompt)29 b Fs(to)34 b(sa)m(v)m(e)h(the)f(prompt)e
-(information)i(b)s(efore)f(calling)i(this)390 956 y(function.)3350
-1136 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_clear_message)e
-Ff(\()p Fi(v)m(oid)p Ff(\))390 1245 y Fs(Clear)29 b(the)g(message)h(in)
-f(the)g(ec)m(ho)h(area.)41 b(If)29 b(the)g(prompt)f(w)m(as)h(sa)m(v)m
-(ed)h(with)f(a)g(call)i(to)e Fr(rl_save_)390 1355 y(prompt)38
+f(their)h(o)m(wn)f(redispla)m(y)-8 b(.)3350 3718 y([F)g(unction])-3599
+b Fg(int)53 b(rl_message)c Ff(\()p Fi(const)31 b(c)m(har)g(*,)36
+b(.)22 b(.)h(.)11 b Ff(\))390 3828 y Fs(The)20 b(argumen)m(ts)h(are)g
+(a)g(format)g(string)g(as)f(w)m(ould)h(b)s(e)f(supplied)f(to)j
+Fr(printf)p Fs(,)f(p)s(ossibly)e(con)m(taining)390 3937
+y(con)m(v)m(ersion)45 b(sp)s(eci\014cations)g(suc)m(h)f(as)g(`)p
+Fr(\045d)p Fs(',)k(and)c(an)m(y)g(additional)h(argumen)m(ts)g
+(necessary)f(to)390 4047 y(satisfy)e(the)f(con)m(v)m(ersion)i(sp)s
+(eci\014cations.)74 b(The)41 b(resulting)h(string)f(is)g(displa)m(y)m
+(ed)h(in)f(the)h Fi(ec)m(ho)390 4157 y(area)p Fs(.)63
+b(The)37 b(ec)m(ho)i(area)f(is)g(also)g(used)f(to)h(displa)m(y)g(n)m
+(umeric)f(argumen)m(ts)h(and)f(searc)m(h)h(strings.)390
+4266 y(Y)-8 b(ou)34 b(should)e(call)j Fr(rl_save_prompt)29
+b Fs(to)34 b(sa)m(v)m(e)h(the)f(prompt)e(information)i(b)s(efore)f
+(calling)i(this)390 4376 y(function.)3350 4584 y([F)-8
+b(unction])-3599 b Fg(int)53 b(rl_clear_message)e Ff(\()p
+Fi(v)m(oid)p Ff(\))390 4693 y Fs(Clear)29 b(the)g(message)h(in)f(the)g
+(ec)m(ho)h(area.)41 b(If)29 b(the)g(prompt)f(w)m(as)h(sa)m(v)m(ed)h
+(with)f(a)g(call)i(to)e Fr(rl_save_)390 4803 y(prompt)38
b Fs(b)s(efore)h(the)g(last)h(call)h(to)f Fr(rl_message)p
Fs(,)f(call)i Fr(rl_restore_prompt)34 b Fs(b)s(efore)39
-b(calling)390 1464 y(this)30 b(function.)3350 1644 y([F)-8
+b(calling)390 4913 y(this)30 b(function.)3350 5121 y([F)-8
b(unction])-3599 b Fg(void)54 b(rl_save_prompt)49 b Ff(\()p
-Fi(v)m(oid)p Ff(\))390 1753 y Fs(Sa)m(v)m(e)44 b(the)f(lo)s(cal)i
+Fi(v)m(oid)p Ff(\))390 5230 y Fs(Sa)m(v)m(e)44 b(the)f(lo)s(cal)i
(Readline)e(prompt)f(displa)m(y)i(state)g(in)f(preparation)g(for)g
-(displa)m(ying)g(a)g(new)390 1863 y(message)31 b(in)g(the)f(message)i
-(area)f(with)f Fr(rl_message\(\))p Fs(.)3350 2042 y([F)-8
-b(unction])-3599 b Fg(void)54 b(rl_restore_prompt)c Ff(\()p
-Fi(v)m(oid)p Ff(\))390 2152 y Fs(Restore)44 b(the)e(lo)s(cal)i
+(displa)m(ying)g(a)g(new)390 5340 y(message)31 b(in)g(the)f(message)i
+(area)f(with)f Fr(rl_message\(\))p Fs(.)p eop end
+%%Page: 36 40
+TeXDict begin 36 39 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(36)3350
+299 y([F)-8 b(unction])-3599 b Fg(void)54 b(rl_restore_prompt)c
+Ff(\()p Fi(v)m(oid)p Ff(\))390 408 y Fs(Restore)44 b(the)e(lo)s(cal)i
(Readline)g(prompt)d(displa)m(y)i(state)h(sa)m(v)m(ed)g(b)m(y)f(the)f
-(most)h(recen)m(t)h(call)g(to)390 2261 y Fr(rl_save_prompt)p
+(most)h(recen)m(t)h(call)g(to)390 518 y Fr(rl_save_prompt)p
Fs(.)69 b(if)41 b Fr(rl_save_prompt)d Fs(w)m(as)j(called)i(to)f(sa)m(v)
-m(e)h(the)e(prompt)f(b)s(efore)h(a)h(call)390 2371 y(to)37
+m(e)h(the)e(prompt)f(b)s(efore)h(a)h(call)390 628 y(to)37
b Fr(rl_message)p Fs(,)f(this)h(function)f(should)g(b)s(e)g(called)i(b)
s(efore)f(the)g(corresp)s(onding)e(call)j(to)g Fr(rl_)390
-2480 y(clear_message)p Fs(.)3350 2660 y([F)-8 b(unction])-3599
+737 y(clear_message)p Fs(.)3350 918 y([F)-8 b(unction])-3599
b Fg(int)53 b(rl_expand_prompt)e Ff(\()p Fi(c)m(har)31
-b(*prompt)p Ff(\))390 2769 y Fs(Expand)41 b(an)m(y)j(sp)s(ecial)f(c)m
+b(*prompt)p Ff(\))390 1027 y Fs(Expand)41 b(an)m(y)j(sp)s(ecial)f(c)m
(haracter)h(sequences)f(in)g Fi(prompt)g Fs(and)f(set)i(up)d(the)i(lo)s
-(cal)h(Readline)390 2879 y(prompt)35 b(redispla)m(y)h(v)-5
+(cal)h(Readline)390 1137 y(prompt)35 b(redispla)m(y)h(v)-5
b(ariables.)57 b(This)35 b(function)h(is)g(called)h(b)m(y)e
Fr(readline\(\))p Fs(.)55 b(It)35 b(ma)m(y)i(also)g(b)s(e)390
-2988 y(called)22 b(to)g(expand)f(the)g(primary)f(prompt)g(if)i(the)f
+1246 y(called)22 b(to)g(expand)f(the)g(primary)f(prompt)g(if)i(the)f
Fr(rl_on_new_line_with_prom)o(pt\()o(\))15 b Fs(function)390
-3098 y(or)25 b Fr(rl_already_prompted)c Fs(v)-5 b(ariable)26
+1356 y(or)25 b Fr(rl_already_prompted)c Fs(v)-5 b(ariable)26
b(is)f(used.)39 b(It)25 b(returns)f(the)i(n)m(um)m(b)s(er)e(of)i
-(visible)f(c)m(haracters)390 3208 y(on)34 b(the)g(last)g(line)g(of)g
+(visible)f(c)m(haracters)390 1465 y(on)34 b(the)g(last)g(line)g(of)g
(the)g(\(p)s(ossibly)f(m)m(ulti-line\))j(prompt.)50 b(Applications)34
-b(ma)m(y)h(indicate)f(that)390 3317 y(the)28 b(prompt)f(con)m(tains)i
+b(ma)m(y)h(indicate)f(that)390 1575 y(the)28 b(prompt)f(con)m(tains)i
(c)m(haracters)g(that)g(tak)m(e)g(up)e(no)h(ph)m(ysical)g(screen)g
-(space)g(when)f(displa)m(y)m(ed)390 3427 y(b)m(y)41 b(brac)m(k)m(eting)
+(space)g(when)f(displa)m(y)m(ed)390 1685 y(b)m(y)41 b(brac)m(k)m(eting)
i(a)e(sequence)g(of)g(suc)m(h)g(c)m(haracters)h(with)f(the)g(sp)s
-(ecial)h(mark)m(ers)f Fr(RL_PROMPT_)390 3536 y(START_IGNORE)27
-b Fs(and)k Fr(RL_PROMPT_END_IGNORE)25 b Fs(\(declared)31
-b(in)g(`)p Fr(readline.h)p Fs('.)39 b(This)30 b(ma)m(y)i(b)s(e)390
-3646 y(used)e(to)h(em)m(b)s(ed)f(terminal-sp)s(eci\014c)h(escap)s(e)f
-(sequences)h(in)f(prompts.)3350 3825 y([F)-8 b(unction])-3599
+(ecial)h(mark)m(ers)f Fr(RL_PROMPT_)390 1794 y(START_IGNORE)32
+b Fs(and)k Fr(RL_PROMPT_END_IGNORE)30 b Fs(\(declared)37
+b(in)e Fr(readline.h)p Fs(.)54 b(This)35 b(ma)m(y)i(b)s(e)390
+1904 y(used)30 b(to)h(em)m(b)s(ed)f(terminal-sp)s(eci\014c)h(escap)s(e)
+f(sequences)h(in)f(prompts.)3350 2084 y([F)-8 b(unction])-3599
b Fg(int)53 b(rl_set_prompt)d Ff(\()p Fi(const)31 b(c)m(har)g(*prompt)p
-Ff(\))390 3935 y Fs(Mak)m(e)d(Readline)g(use)f Fi(prompt)h
+Ff(\))390 2194 y Fs(Mak)m(e)d(Readline)g(use)f Fi(prompt)h
Fs(for)e(subsequen)m(t)h(redispla)m(y)-8 b(.)40 b(This)26
-b(calls)i Fr(rl_expand_prompt\(\))390 4044 y Fs(to)j(expand)f(the)g
+b(calls)i Fr(rl_expand_prompt\(\))390 2303 y Fs(to)j(expand)f(the)g
(prompt)g(and)g(sets)g Fr(rl_prompt)e Fs(to)j(the)g(result.)150
-4240 y Fh(2.4.7)63 b(Mo)s(difying)43 b(T)-10 b(ext)3350
-4434 y Fs([F)i(unction])-3599 b Fg(int)53 b(rl_insert_text)d
-Ff(\()p Fi(const)31 b(c)m(har)g(*text)p Ff(\))390 4543
+2500 y Fh(2.4.7)63 b(Mo)s(difying)43 b(T)-10 b(ext)3350
+2694 y Fs([F)i(unction])-3599 b Fg(int)53 b(rl_insert_text)d
+Ff(\()p Fi(const)31 b(c)m(har)g(*text)p Ff(\))390 2804
y Fs(Insert)g Fi(text)k Fs(in)m(to)d(the)g(line)g(at)g(the)g(curren)m
(t)f(cursor)g(p)s(osition.)45 b(Returns)30 b(the)i(n)m(um)m(b)s(er)f
-(of)g(c)m(har-)390 4653 y(acters)g(inserted.)3350 4832
+(of)g(c)m(har-)390 2913 y(acters)g(inserted.)3350 3093
y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_delete_text)d
Ff(\()p Fi(in)m(t)31 b(start,)g(in)m(t)g(end)p Ff(\))390
-4942 y Fs(Delete)40 b(the)e(text)h(b)s(et)m(w)m(een)f
+3203 y Fs(Delete)40 b(the)e(text)h(b)s(et)m(w)m(een)f
Fi(start)i Fs(and)d Fi(end)k Fs(in)c(the)h(curren)m(t)g(line.)63
-b(Returns)36 b(the)i(n)m(um)m(b)s(er)f(of)390 5051 y(c)m(haracters)32
-b(deleted.)3350 5230 y([F)-8 b(unction])-3599 b Fg(char)54
+b(Returns)36 b(the)i(n)m(um)m(b)s(er)f(of)390 3313 y(c)m(haracters)32
+b(deleted.)3350 3493 y([F)-8 b(unction])-3599 b Fg(char)54
b(*)e(rl_copy_text)d Ff(\()p Fi(in)m(t)31 b(start,)h(in)m(t)f(end)p
-Ff(\))390 5340 y Fs(Return)f(a)g(cop)m(y)h(of)g(the)g(text)g(b)s(et)m
+Ff(\))390 3602 y Fs(Return)f(a)g(cop)m(y)h(of)g(the)g(text)g(b)s(et)m
(w)m(een)g Fi(start)i Fs(and)d Fi(end)j Fs(in)d(the)h(curren)m(t)f
-(line.)p eop end
-%%Page: 36 40
-TeXDict begin 36 39 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(36)3350
-299 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_kill_text)c
-Ff(\()p Fi(in)m(t)32 b(start,)f(in)m(t)g(end)p Ff(\))390
-408 y Fs(Cop)m(y)j(the)g(text)i(b)s(et)m(w)m(een)e Fi(start)j
-Fs(and)d Fi(end)j Fs(in)d(the)g(curren)m(t)g(line)g(to)h(the)f(kill)h
-(ring,)g(app)s(ending)390 518 y(or)f(prep)s(ending)e(to)j(the)f(last)h
-(kill)f(if)g(the)g(last)h(command)f(w)m(as)g(a)h(kill)f(command.)51
-b(The)34 b(text)h(is)390 628 y(deleted.)50 b(If)33 b
-Fi(start)j Fs(is)e(less)f(than)g Fi(end)t Fs(,)h(the)f(text)i(is)e(app)
-s(ended,)g(otherwise)g(prep)s(ended.)48 b(If)33 b(the)390
-737 y(last)e(command)f(w)m(as)h(not)g(a)f(kill,)i(a)f(new)e(kill)i
-(ring)g(slot)g(is)f(used.)3350 931 y([F)-8 b(unction])-3599
+(line.)3350 3783 y([F)-8 b(unction])-3599 b Fg(int)53
+b(rl_kill_text)c Ff(\()p Fi(in)m(t)32 b(start,)f(in)m(t)g(end)p
+Ff(\))390 3892 y Fs(Cop)m(y)j(the)g(text)i(b)s(et)m(w)m(een)e
+Fi(start)j Fs(and)d Fi(end)j Fs(in)d(the)g(curren)m(t)g(line)g(to)h
+(the)f(kill)h(ring,)g(app)s(ending)390 4002 y(or)f(prep)s(ending)e(to)j
+(the)f(last)h(kill)f(if)g(the)g(last)h(command)f(w)m(as)g(a)h(kill)f
+(command.)51 b(The)34 b(text)h(is)390 4112 y(deleted.)51
+b(If)33 b Fi(start)j Fs(is)e(less)g(than)f Fi(end)p Fs(,)h(the)g(text)g
+(is)g(app)s(ended,)f(otherwise)h(prep)s(ended.)48 b(If)33
+b(the)390 4221 y(last)e(command)f(w)m(as)h(not)g(a)f(kill,)i(a)f(new)e
+(kill)i(ring)g(slot)g(is)f(used.)3350 4401 y([F)-8 b(unction])-3599
b Fg(int)53 b(rl_push_macro_input)e Ff(\()p Fi(c)m(har)32
-b(*macro)p Ff(\))390 1040 y Fs(Cause)c Fi(macro)33 b
+b(*macro)p Ff(\))390 4511 y Fs(Cause)c Fi(macro)33 b
Fs(to)c(b)s(e)f(inserted)g(in)m(to)h(the)g(line,)g(as)f(if)h(it)f(had)g
(b)s(een)g(in)m(v)m(ok)m(ed)h(b)m(y)f(a)h(k)m(ey)g(b)s(ound)d(to)390
-1150 y(a)31 b(macro.)41 b(Not)31 b(esp)s(ecially)h(useful;)e(use)g
-Fr(rl_insert_text\(\))c Fs(instead.)150 1354 y Fh(2.4.8)63
-b(Character)39 b(Input)3350 1555 y Fs([F)-8 b(unction])-3599
+4621 y(a)31 b(macro.)41 b(Not)31 b(esp)s(ecially)h(useful;)e(use)g
+Fr(rl_insert_text\(\))c Fs(instead.)150 4817 y Fh(2.4.8)63
+b(Character)39 b(Input)3350 5011 y Fs([F)-8 b(unction])-3599
b Fg(int)53 b(rl_read_key)c Ff(\()p Fi(v)m(oid)p Ff(\))390
-1665 y Fs(Return)29 b(the)g(next)h(c)m(haracter)h(a)m(v)-5
+5121 y Fs(Return)29 b(the)g(next)h(c)m(haracter)h(a)m(v)-5
b(ailable)32 b(from)d(Readline's)h(curren)m(t)f(input)g(stream.)41
-b(This)28 b(han-)390 1775 y(dles)e(input)g(inserted)g(in)m(to)i(the)e
-(input)g(stream)h(via)g Fi(rl)p 2226 1775 28 4 v 40 w(p)s(ending)p
-2583 1775 V 38 w(input)h Fs(\(see)f(Section)h(2.3)f([Read-)390
-1884 y(line)40 b(V)-8 b(ariables],)43 b(page)d(25\))g(and)f
+b(This)28 b(han-)390 5230 y(dles)e(input)g(inserted)g(in)m(to)i(the)e
+(input)g(stream)h(via)g Fi(rl)p 2226 5230 28 4 v 40 w(p)s(ending)p
+2583 5230 V 38 w(input)h Fs(\(see)f(Section)h(2.3)f([Read-)390
+5340 y(line)40 b(V)-8 b(ariables],)43 b(page)d(25\))g(and)f
Fr(rl_stuff_char\(\))p Fs(,)f(macros,)k(and)d(c)m(haracters)h(read)f
-(from)390 1994 y(the)34 b(k)m(eyb)s(oard.)52 b(While)35
-b(w)m(aiting)g(for)f(input,)g(this)g(function)g(will)g(call)i(an)m(y)e
-(function)g(assigned)390 2103 y(to)d(the)g Fr(rl_event_hook)26
-b Fs(v)-5 b(ariable.)3350 2297 y([F)d(unction])-3599
-b Fg(int)53 b(rl_getc)48 b Ff(\()p Fi(FILE)30 b(*stream)p
-Ff(\))390 2407 y Fs(Return)20 b(the)i(next)f(c)m(haracter)i(a)m(v)-5
-b(ailable)24 b(from)c Fi(stream)p Fs(,)k(whic)m(h)d(is)g(assumed)g(to)h
-(b)s(e)e(the)i(k)m(eyb)s(oard.)3350 2600 y([F)-8 b(unction])-3599
-b Fg(int)53 b(rl_stuff_char)d Ff(\()p Fi(in)m(t)31 b(c)p
-Ff(\))390 2710 y Fs(Insert)h Fi(c)39 b Fs(in)m(to)34
-b(the)f(Readline)g(input)f(stream.)49 b(It)33 b(will)g(b)s(e)f
-Fr(")p Fs(read)p Fr(")g Fs(b)s(efore)h(Readline)g(attempts)390
-2819 y(to)27 b(read)g(c)m(haracters)h(from)f(the)g(terminal)g(with)f
+(from)p eop end
+%%Page: 37 41
+TeXDict begin 37 40 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(37)390
+299 y(the)34 b(k)m(eyb)s(oard.)52 b(While)35 b(w)m(aiting)g(for)f
+(input,)g(this)g(function)g(will)g(call)i(an)m(y)e(function)g(assigned)
+390 408 y(to)d(the)g Fr(rl_event_hook)26 b Fs(v)-5 b(ariable.)3350
+585 y([F)d(unction])-3599 b Fg(int)53 b(rl_getc)48 b
+Ff(\()p Fi(FILE)30 b(*stream)p Ff(\))390 694 y Fs(Return)20
+b(the)i(next)f(c)m(haracter)i(a)m(v)-5 b(ailable)24 b(from)c
+Fi(stream)p Fs(,)k(whic)m(h)d(is)g(assumed)g(to)h(b)s(e)e(the)i(k)m
+(eyb)s(oard.)3350 871 y([F)-8 b(unction])-3599 b Fg(int)53
+b(rl_stuff_char)d Ff(\()p Fi(in)m(t)31 b(c)p Ff(\))390
+980 y Fs(Insert)h Fi(c)39 b Fs(in)m(to)34 b(the)f(Readline)g(input)f
+(stream.)49 b(It)33 b(will)g(b)s(e)f Fr(")p Fs(read)p
+Fr(")g Fs(b)s(efore)h(Readline)g(attempts)390 1090 y(to)27
+b(read)g(c)m(haracters)h(from)f(the)g(terminal)g(with)f
Fr(rl_read_key\(\))p Fs(.)36 b(Up)27 b(to)g(512)h(c)m(haracters)g(ma)m
-(y)390 2929 y(b)s(e)i(pushed)f(bac)m(k.)42 b Fr(rl_stuff_char)27
+(y)390 1200 y(b)s(e)i(pushed)f(bac)m(k.)42 b Fr(rl_stuff_char)27
b Fs(returns)i(1)i(if)f(the)h(c)m(haracter)h(w)m(as)f(successfully)g
-(inserted;)390 3039 y(0)g(otherwise.)3350 3232 y([F)-8
+(inserted;)390 1309 y(0)g(otherwise.)3350 1485 y([F)-8
b(unction])-3599 b Fg(int)53 b(rl_execute_next)d Ff(\()p
-Fi(in)m(t)31 b(c)p Ff(\))390 3342 y Fs(Mak)m(e)37 b Fi(c)42
+Fi(in)m(t)31 b(c)p Ff(\))390 1595 y Fs(Mak)m(e)37 b Fi(c)42
b Fs(b)s(e)35 b(the)h(next)f(command)h(to)g(b)s(e)f(executed)i(when)d
-Fr(rl_read_key\(\))e Fs(is)k(called.)58 b(This)390 3451
-y(sets)31 b Fi(rl)p 635 3451 V 40 w(p)s(ending)p 992
-3451 V 38 w(input)r Fs(.)3350 3645 y([F)-8 b(unction])-3599
+Fr(rl_read_key\(\))e Fs(is)k(called.)58 b(This)390 1705
+y(sets)31 b Fi(rl)p 635 1705 28 4 v 40 w(p)s(ending)p
+992 1705 V 38 w(input)p Fs(.)3350 1881 y([F)-8 b(unction])-3599
b Fg(int)53 b(rl_clear_pending_inpu)q(t)e Ff(\()p Fi(v)m(oid)p
-Ff(\))390 3755 y Fs(Unset)42 b Fi(rl)p 729 3755 V 40
-w(p)s(ending)p 1086 3755 V 38 w(input)r Fs(,)i(e\013ectiv)m(ely)g
-(negating)f(the)f(e\013ect)h(of)f(an)m(y)g(previous)f(call)i(to)f
-Fr(rl_)390 3864 y(execute_next\(\))p Fs(.)59 b(This)36
+Ff(\))390 1991 y Fs(Unset)42 b Fi(rl)p 729 1991 V 40
+w(p)s(ending)p 1086 1991 V 38 w(input)p Fs(,)i(e\013ectiv)m(ely)h
+(negating)e(the)f(e\013ect)h(of)f(an)m(y)g(previous)f(call)i(to)g
+Fr(rl_)390 2100 y(execute_next\(\))p Fs(.)59 b(This)36
b(w)m(orks)i(only)g(if)f(the)h(p)s(ending)e(input)h(has)g(not)h
-(already)g(b)s(een)f(read)390 3974 y(with)30 b Fr(rl_read_key\(\))p
-Fs(.)3350 4167 y([F)-8 b(unction])-3599 b Fg(int)53 b
+(already)g(b)s(een)f(read)390 2210 y(with)30 b Fr(rl_read_key\(\))p
+Fs(.)3350 2386 y([F)-8 b(unction])-3599 b Fg(int)53 b
(rl_set_keyboard_input)q(_tim)q(eou)q(t)e Ff(\()p Fi(in)m(t)32
-b(u)p Ff(\))390 4277 y Fs(While)41 b(w)m(aiting)g(for)f(k)m(eyb)s(oard)
+b(u)p Ff(\))390 2496 y Fs(While)41 b(w)m(aiting)g(for)f(k)m(eyb)s(oard)
g(input)f(in)h Fr(rl_read_key\(\))p Fs(,)f(Readline)i(will)f(w)m(ait)h
-(for)f Fi(u)g Fs(mi-)390 4387 y(croseconds)31 b(for)g(input)f(b)s
+(for)f Fi(u)g Fs(mi-)390 2605 y(croseconds)31 b(for)g(input)f(b)s
(efore)g(calling)j(an)m(y)e(function)f(assigned)i(to)f
Fr(rl_event_hook)p Fs(.)39 b Fi(u)30 b Fs(m)m(ust)390
-4496 y(b)s(e)h(greater)i(than)f(or)g(equal)g(to)h(zero)f(\(a)h
+2715 y(b)s(e)h(greater)i(than)f(or)g(equal)g(to)h(zero)f(\(a)h
(zero-length)g(timeout)g(is)f(equiv)-5 b(alen)m(t)33
-b(to)g(a)f(p)s(oll\).)45 b(The)390 4606 y(default)31
+b(to)g(a)f(p)s(oll\).)45 b(The)390 2824 y(default)31
b(w)m(aiting)g(p)s(erio)s(d)e(is)i(one-ten)m(th)g(of)g(a)g(second.)40
b(Returns)30 b(the)g(old)h(timeout)g(v)-5 b(alue.)150
-4810 y Fh(2.4.9)63 b(T)-10 b(erminal)41 b(Managemen)m(t)3350
-5011 y Fs([F)-8 b(unction])-3599 b Fg(void)54 b(rl_prep_terminal)c
-Ff(\()p Fi(in)m(t)31 b(meta)p 1670 5011 V 41 w(\015ag)p
-Ff(\))390 5121 y Fs(Mo)s(dify)42 b(the)h(terminal)g(settings)g(for)f
+3018 y Fh(2.4.9)63 b(T)-10 b(erminal)41 b(Managemen)m(t)3350
+3210 y Fs([F)-8 b(unction])-3599 b Fg(void)54 b(rl_prep_terminal)c
+Ff(\()p Fi(in)m(t)31 b(meta)p 1670 3210 V 41 w(\015ag)p
+Ff(\))390 3319 y Fs(Mo)s(dify)42 b(the)h(terminal)g(settings)g(for)f
(Readline's)i(use,)h(so)e Fr(readline\(\))c Fs(can)k(read)f(a)h(single)
-390 5230 y(c)m(haracter)32 b(at)g(a)f(time)h(from)e(the)h(k)m(eyb)s
-(oard.)43 b(The)30 b Fi(meta)p 2376 5230 V 41 w(\015ag)39
-b Fs(argumen)m(t)31 b(should)f(b)s(e)g(non-zero)390 5340
-y(if)g(Readline)h(should)f(read)g(eigh)m(t-bit)i(input.)p
-eop end
-%%Page: 37 41
-TeXDict begin 37 40 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(37)3350
-299 y([F)-8 b(unction])-3599 b Fg(void)54 b(rl_deprep_terminal)c
-Ff(\()p Fi(v)m(oid)p Ff(\))390 408 y Fs(Undo)31 b(the)h(e\013ects)h(of)
-f Fr(rl_prep_terminal\(\))p Fs(,)27 b(lea)m(ving)33 b(the)f(terminal)g
-(in)f(the)h(state)h(in)e(whic)m(h)390 518 y(it)g(w)m(as)g(b)s(efore)f
-(the)g(most)h(recen)m(t)g(call)h(to)f Fr(rl_prep_terminal\(\))p
-Fs(.)3350 698 y([F)-8 b(unction])-3599 b Fg(void)54 b
-(rl_tty_set_default_bindi)q(ngs)e Ff(\()p Fi(Keymap)31
-b(kmap)p Ff(\))390 808 y Fs(Read)37 b(the)g(op)s(erating)h(system's)f
-(terminal)g(editing)h(c)m(haracters)g(\(as)g(w)m(ould)e(b)s(e)h(displa)
-m(y)m(ed)g(b)m(y)390 917 y Fr(stty)p Fs(\))30 b(to)h(their)f(Readline)h
-(equiv)-5 b(alen)m(ts.)42 b(The)30 b(bindings)f(are)i(p)s(erformed)e
-(in)h Fi(kmap)s Fs(.)3350 1098 y([F)-8 b(unction])-3599
-b Fg(void)54 b(rl_tty_unset_default_bin)q(din)q(gs)e
-Ff(\()p Fi(Keymap)30 b(kmap)p Ff(\))390 1207 y Fs(Reset)j(the)f
-(bindings)e(manipulated)i(b)m(y)g Fr(rl_tty_set_default_bind)o(ing)o(s)
-26 b Fs(so)32 b(that)g(the)g(ter-)390 1317 y(minal)40
-b(editing)g(c)m(haracters)h(are)f(b)s(ound)e(to)i Fr(rl_insert)p
-Fs(.)66 b(The)39 b(bindings)f(are)i(p)s(erformed)e(in)390
-1426 y Fi(kmap)s Fs(.)3350 1606 y([F)-8 b(unction])-3599
+390 3429 y(c)m(haracter)32 b(at)g(a)f(time)h(from)e(the)h(k)m(eyb)s
+(oard.)43 b(The)30 b Fi(meta)p 2376 3429 V 41 w(\015ag)39
+b Fs(argumen)m(t)31 b(should)f(b)s(e)g(non-zero)390 3539
+y(if)g(Readline)h(should)f(read)g(eigh)m(t-bit)i(input.)3350
+3715 y([F)-8 b(unction])-3599 b Fg(void)54 b(rl_deprep_terminal)c
+Ff(\()p Fi(v)m(oid)p Ff(\))390 3825 y Fs(Undo)31 b(the)h(e\013ects)h
+(of)f Fr(rl_prep_terminal\(\))p Fs(,)27 b(lea)m(ving)33
+b(the)f(terminal)g(in)f(the)h(state)h(in)e(whic)m(h)390
+3934 y(it)g(w)m(as)g(b)s(efore)f(the)g(most)h(recen)m(t)g(call)h(to)f
+Fr(rl_prep_terminal\(\))p Fs(.)3350 4111 y([F)-8 b(unction])-3599
+b Fg(void)54 b(rl_tty_set_default_bindi)q(ngs)e Ff(\()p
+Fi(Keymap)31 b(kmap)p Ff(\))390 4220 y Fs(Read)37 b(the)g(op)s(erating)
+h(system's)f(terminal)g(editing)h(c)m(haracters)g(\(as)g(w)m(ould)e(b)s
+(e)h(displa)m(y)m(ed)g(b)m(y)390 4330 y Fr(stty)p Fs(\))30
+b(to)h(their)f(Readline)h(equiv)-5 b(alen)m(ts.)42 b(The)30
+b(bindings)f(are)i(p)s(erformed)e(in)h Fi(kmap)p Fs(.)3350
+4506 y([F)-8 b(unction])-3599 b Fg(void)54 b(rl_tty_unset_default_bin)q
+(din)q(gs)e Ff(\()p Fi(Keymap)30 b(kmap)p Ff(\))390 4616
+y Fs(Reset)j(the)f(bindings)e(manipulated)i(b)m(y)g Fr
+(rl_tty_set_default_bind)o(ing)o(s)26 b Fs(so)32 b(that)g(the)g(ter-)
+390 4725 y(minal)40 b(editing)g(c)m(haracters)h(are)f(b)s(ound)e(to)i
+Fr(rl_insert)p Fs(.)66 b(The)39 b(bindings)f(are)i(p)s(erformed)e(in)
+390 4835 y Fi(kmap)p Fs(.)3350 5011 y([F)-8 b(unction])-3599
b Fg(int)53 b(rl_reset_terminal)e Ff(\()p Fi(const)31
-b(c)m(har)g(*terminal)p 2151 1606 28 4 v 41 w(name)p
-Ff(\))390 1716 y Fs(Reinitialize)26 b(Readline's)f(idea)f(of)g(the)g
-(terminal)h(settings)f(using)g Fi(terminal)p 2977 1716
-V 40 w(name)29 b Fs(as)24 b(the)g(termi-)390 1826 y(nal)32
-b(t)m(yp)s(e)g(\(e.g.,)i Fr(vt100)p Fs(\).)44 b(If)31
-b Fi(terminal)p 1753 1826 V 41 w(name)37 b Fs(is)31 b
-Fr(NULL)p Fs(,)h(the)g(v)-5 b(alue)32 b(of)g(the)g Fr(TERM)e
-Fs(en)m(vironmen)m(t)390 1935 y(v)-5 b(ariable)31 b(is)g(used.)150
-2132 y Fh(2.4.10)63 b(Utilit)m(y)40 b(F)-10 b(unctions)3350
-2326 y Fs([F)i(unction])-3599 b Fg(int)53 b(rl_save_state)d
-Ff(\()p Fi(struct)30 b(readline)p 1702 2326 V 41 w(state)h(*sp)p
-Ff(\))390 2435 y Fs(Sa)m(v)m(e)f(a)f(snapshot)f(of)h(Readline's)g(in)m
-(ternal)g(state)h(to)g Fi(sp)s Fs(.)39 b(The)28 b(con)m(ten)m(ts)j(of)d
-(the)h Fi(readline)p 3523 2435 V 41 w(state)390 2545
-y Fs(structure)38 b(are)g(do)s(cumen)m(ted)g(in)g(`)p
-Fr(readline.h)p Fs('.)62 b(The)38 b(caller)h(is)f(resp)s(onsible)g(for)
-g(allo)s(cating)390 2654 y(the)31 b(structure.)3350 2835
-y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_restore_state)e
-Ff(\()p Fi(struct)30 b(readline)p 1859 2835 V 41 w(state)h(*sp)p
-Ff(\))390 2944 y Fs(Restore)23 b(Readline's)g(in)m(ternal)f(state)i(to)
-e(that)h(stored)f(in)g Fi(sp)s Fs(,)h(whic)m(h)e(m)m(ust)h(ha)m(v)m(e)h
-(b)s(een)f(sa)m(v)m(ed)h(b)m(y)f(a)390 3054 y(call)30
+b(c)m(har)g(*terminal)p 2151 5011 V 41 w(name)p Ff(\))390
+5121 y Fs(Reinitialize)26 b(Readline's)f(idea)f(of)g(the)g(terminal)h
+(settings)f(using)g Fi(terminal)p 2977 5121 V 40 w(name)29
+b Fs(as)24 b(the)g(termi-)390 5230 y(nal)32 b(t)m(yp)s(e)g(\(e.g.,)i
+Fr(vt100)p Fs(\).)44 b(If)31 b Fi(terminal)p 1753 5230
+V 41 w(name)37 b Fs(is)31 b Fr(NULL)p Fs(,)h(the)g(v)-5
+b(alue)32 b(of)g(the)g Fr(TERM)e Fs(en)m(vironmen)m(t)390
+5340 y(v)-5 b(ariable)31 b(is)g(used.)p eop end
+%%Page: 38 42
+TeXDict begin 38 41 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(38)150
+299 y Fh(2.4.10)63 b(Utilit)m(y)40 b(F)-10 b(unctions)3350
+503 y Fs([F)i(unction])-3599 b Fg(int)53 b(rl_save_state)d
+Ff(\()p Fi(struct)30 b(readline)p 1702 503 28 4 v 41
+w(state)h(*sp)p Ff(\))390 612 y Fs(Sa)m(v)m(e)f(a)f(snapshot)e(of)i
+(Readline's)g(in)m(ternal)g(state)h(to)f Fi(sp)p Fs(.)40
+b(The)28 b(con)m(ten)m(ts)i(of)e(the)h Fi(readline)p
+3518 612 V 40 w(state)390 722 y Fs(structure)g(are)g(do)s(cumen)m(ted)g
+(in)g Fr(readline.h)p Fs(.)38 b(The)28 b(caller)j(is)e(resp)s(onsible)f
+(for)h(allo)s(cating)j(the)390 832 y(structure.)3350
+1030 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_restore_state)e
+Ff(\()p Fi(struct)30 b(readline)p 1859 1030 V 41 w(state)h(*sp)p
+Ff(\))390 1140 y Fs(Restore)23 b(Readline's)g(in)m(ternal)g(state)g(to)
+g(that)g(stored)f(in)g Fi(sp)p Fs(,)i(whic)m(h)d(m)m(ust)h(ha)m(v)m(e)i
+(b)s(een)d(sa)m(v)m(ed)i(b)m(y)g(a)390 1250 y(call)30
b(to)g Fr(rl_save_state)p Fs(.)37 b(The)28 b(con)m(ten)m(ts)j(of)e(the)
-g Fi(readline)p 2470 3054 V 41 w(state)35 b Fs(structure)29
-b(are)g(do)s(cumen)m(ted)390 3163 y(in)h(`)p Fr(readline.h)p
-Fs('.)38 b(The)30 b(caller)i(is)e(resp)s(onsible)g(for)g(freeing)h(the)
-f(structure.)3350 3343 y([F)-8 b(unction])-3599 b Fg(void)54
+g Fi(readline)p 2470 1250 V 41 w(state)35 b Fs(structure)29
+b(are)g(do)s(cumen)m(ted)390 1359 y(in)h Fr(readline.h)p
+Fs(.)38 b(The)30 b(caller)i(is)e(resp)s(onsible)f(for)i(freeing)f(the)h
+(structure.)3350 1558 y([F)-8 b(unction])-3599 b Fg(void)54
b(rl_free)47 b Ff(\()p Fi(v)m(oid)31 b(*mem)p Ff(\))390
-3453 y Fs(Deallo)s(cate)25 b(the)c(memory)g(p)s(oin)m(ted)g(to)h(b)m(y)
+1668 y Fs(Deallo)s(cate)25 b(the)c(memory)g(p)s(oin)m(ted)g(to)h(b)m(y)
f Fi(mem)p Fs(.)38 b Fi(mem)21 b Fs(m)m(ust)g(ha)m(v)m(e)i(b)s(een)d
-(allo)s(cated)j(b)m(y)e Fr(malloc)p Fs(.)3350 3633 y([F)-8
+(allo)s(cated)j(b)m(y)e Fr(malloc)p Fs(.)3350 1866 y([F)-8
b(unction])-3599 b Fg(void)54 b(rl_replace_line)c Ff(\()p
Fi(const)31 b(c)m(har)g(*text,)h(in)m(t)e(clear)p 2305
-3633 V 42 w(undo)p Ff(\))390 3743 y Fs(Replace)41 b(the)e(con)m(ten)m
-(ts)i(of)e Fr(rl_line_buffer)d Fs(with)j Fi(text)r Fs(.)68
-b(The)39 b(p)s(oin)m(t)g(and)g(mark)g(are)g(pre-)390
-3852 y(serv)m(ed,)27 b(if)e(p)s(ossible.)39 b(If)25 b
-Fi(clear)p 1422 3852 V 41 w(undo)k Fs(is)d(non-zero,)h(the)f(undo)e
-(list)i(asso)s(ciated)h(with)e(the)h(curren)m(t)390 3962
-y(line)31 b(is)f(cleared.)3350 4142 y([F)-8 b(unction])-3599
+1866 V 42 w(undo)p Ff(\))390 1976 y Fs(Replace)41 b(the)e(con)m(ten)m
+(ts)i(of)f Fr(rl_line_buffer)35 b Fs(with)k Fi(text)p
+Fs(.)69 b(The)39 b(p)s(oin)m(t)h(and)e(mark)h(are)h(pre-)390
+2086 y(serv)m(ed,)27 b(if)e(p)s(ossible.)39 b(If)25 b
+Fi(clear)p 1422 2086 V 41 w(undo)k Fs(is)d(non-zero,)h(the)f(undo)e
+(list)i(asso)s(ciated)h(with)e(the)h(curren)m(t)390 2195
+y(line)31 b(is)f(cleared.)3350 2394 y([F)-8 b(unction])-3599
b Fg(void)54 b(rl_extend_line_buffer)d Ff(\()p Fi(in)m(t)32
-b(len)p Ff(\))390 4252 y Fs(Ensure)d(that)h Fr(rl_line_buffer)d
+b(len)p Ff(\))390 2503 y Fs(Ensure)d(that)h Fr(rl_line_buffer)d
Fs(has)j(enough)f(space)i(to)g(hold)f Fi(len)g Fs(c)m(haracters,)i(p)s
-(ossibly)d(real-)390 4361 y(lo)s(cating)j(it)f(if)f(necessary)-8
-b(.)3350 4541 y([F)g(unction])-3599 b Fg(int)53 b(rl_initialize)d
-Ff(\()p Fi(v)m(oid)p Ff(\))390 4651 y Fs(Initialize)39
+(ossibly)d(real-)390 2613 y(lo)s(cating)j(it)f(if)f(necessary)-8
+b(.)3350 2812 y([F)g(unction])-3599 b Fg(int)53 b(rl_initialize)d
+Ff(\()p Fi(v)m(oid)p Ff(\))390 2921 y Fs(Initialize)39
b(or)e(re-initialize)i(Readline's)f(in)m(ternal)f(state.)62
b(It's)37 b(not)g(strictly)h(necessary)f(to)h(call)390
-4761 y(this;)31 b Fr(readline\(\))c Fs(calls)32 b(it)f(b)s(efore)f
-(reading)g(an)m(y)h(input.)3350 4941 y([F)-8 b(unction])-3599
+3031 y(this;)31 b Fr(readline\(\))c Fs(calls)32 b(it)f(b)s(efore)f
+(reading)g(an)m(y)h(input.)3350 3230 y([F)-8 b(unction])-3599
b Fg(int)53 b(rl_ding)48 b Ff(\()p Fi(v)m(oid)p Ff(\))390
-5050 y Fs(Ring)30 b(the)h(terminal)g(b)s(ell,)f(ob)s(eying)h(the)f
-(setting)i(of)e Fr(bell-style)p Fs(.)3350 5230 y([F)-8
+3339 y Fs(Ring)30 b(the)h(terminal)g(b)s(ell,)f(ob)s(eying)h(the)f
+(setting)i(of)e Fr(bell-style)p Fs(.)3350 3538 y([F)-8
b(unction])-3599 b Fg(int)53 b(rl_alphabetic)d Ff(\()p
-Fi(in)m(t)31 b(c)p Ff(\))390 5340 y Fs(Return)f(1)g(if)h
-Fi(c)36 b Fs(is)30 b(an)h(alphab)s(etic)g(c)m(haracter.)p
-eop end
-%%Page: 38 42
-TeXDict begin 38 41 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(38)3350
-299 y([F)-8 b(unction])-3599 b Fg(void)54 b(rl_display_match_list)d
+Fi(in)m(t)31 b(c)p Ff(\))390 3648 y Fs(Return)f(1)g(if)h
+Fi(c)36 b Fs(is)30 b(an)h(alphab)s(etic)g(c)m(haracter.)3350
+3847 y([F)-8 b(unction])-3599 b Fg(void)54 b(rl_display_match_list)d
Ff(\()p Fi(c)m(har)31 b(**matc)m(hes,)i(in)m(t)e(len,)g(in)m(t)g(max)p
-Ff(\))390 408 y Fs(A)k(con)m(v)m(enience)h(function)e(for)g(displa)m
+Ff(\))390 3956 y Fs(A)k(con)m(v)m(enience)h(function)e(for)g(displa)m
(ying)h(a)g(list)g(of)g(strings)f(in)g(columnar)g(format)h(on)f(Read-)
-390 518 y(line's)g(output)f(stream.)51 b Fr(matches)31
+390 4066 y(line's)g(output)f(stream.)51 b Fr(matches)31
b Fs(is)j(the)f(list)i(of)e(strings,)i(in)e(argv)h(format,)h(suc)m(h)e
-(as)h(a)g(list)g(of)390 628 y(completion)26 b(matc)m(hes.)39
+(as)h(a)g(list)g(of)390 4175 y(completion)26 b(matc)m(hes.)39
b Fr(len)24 b Fs(is)g(the)g(n)m(um)m(b)s(er)f(of)i(strings)f(in)g
Fr(matches)p Fs(,)f(and)h Fr(max)f Fs(is)i(the)f(length)h(of)390
-737 y(the)h(longest)i(string)e(in)g Fr(matches)p Fs(.)37
+4285 y(the)h(longest)i(string)e(in)g Fr(matches)p Fs(.)37
b(This)25 b(function)h(uses)g(the)g(setting)i(of)e Fr
-(print-completions-)390 847 y(horizontally)33 b Fs(to)k(select)h(ho)m
+(print-completions-)390 4394 y(horizontally)33 b Fs(to)k(select)h(ho)m
(w)e(the)g(matc)m(hes)i(are)e(displa)m(y)m(ed)h(\(see)g(Section)g
-(1.3.1)h([Readline)390 956 y(Init)30 b(File)h(Syn)m(tax],)g(page)g
+(1.3.1)h([Readline)390 4504 y(Init)30 b(File)h(Syn)m(tax],)g(page)g
(4\).)42 b(When)29 b(displa)m(ying)i(completions,)h(this)e(function)g
-(sets)g(the)g(n)m(um-)390 1066 y(b)s(er)23 b(of)g(columns)g(used)g(for)
+(sets)g(the)g(n)m(um-)390 4614 y(b)s(er)23 b(of)g(columns)g(used)g(for)
h(displa)m(y)f(to)i(the)e(v)-5 b(alue)24 b(of)g Fr
(completion-display-width)p Fs(,)19 b(the)k(v)-5 b(alue)390
-1176 y(of)31 b(the)f(en)m(vironmen)m(t)h(v)-5 b(ariable)31
+4723 y(of)31 b(the)f(en)m(vironmen)m(t)h(v)-5 b(ariable)31
b Fr(COLUMNS)p Fs(,)e(or)h(the)h(screen)f(width,)g(in)g(that)h(order.)
-275 1374 y(The)g(follo)m(wing)j(are)e(implemen)m(ted)h(as)f(macros,)h
+275 4922 y(The)g(follo)m(wing)j(are)e(implemen)m(ted)h(as)f(macros,)h
(de\014ned)e(in)h Fr(chardefs.h)p Fs(.)43 b(Applications)33
-b(should)150 1483 y(refrain)d(from)g(using)g(them.)3350
-1681 y([F)-8 b(unction])-3599 b Fg(int)53 b(_rl_uppercase_p)d
-Ff(\()p Fi(in)m(t)31 b(c)p Ff(\))390 1791 y Fs(Return)f(1)g(if)h
+b(should)150 5032 y(refrain)d(from)g(using)g(them.)3350
+5230 y([F)-8 b(unction])-3599 b Fg(int)53 b(_rl_uppercase_p)d
+Ff(\()p Fi(in)m(t)31 b(c)p Ff(\))390 5340 y Fs(Return)f(1)g(if)h
Fi(c)36 b Fs(is)30 b(an)h(upp)s(ercase)e(alphab)s(etic)i(c)m(haracter.)
-3350 1989 y([F)-8 b(unction])-3599 b Fg(int)53 b(_rl_lowercase_p)d
-Ff(\()p Fi(in)m(t)31 b(c)p Ff(\))390 2098 y Fs(Return)f(1)g(if)h
+p eop end
+%%Page: 39 43
+TeXDict begin 39 42 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(39)3350
+299 y([F)-8 b(unction])-3599 b Fg(int)53 b(_rl_lowercase_p)d
+Ff(\()p Fi(in)m(t)31 b(c)p Ff(\))390 408 y Fs(Return)f(1)g(if)h
Fi(c)36 b Fs(is)30 b(a)h(lo)m(w)m(ercase)i(alphab)s(etic)e(c)m
-(haracter.)3350 2296 y([F)-8 b(unction])-3599 b Fg(int)53
+(haracter.)3350 569 y([F)-8 b(unction])-3599 b Fg(int)53
b(_rl_digit_p)c Ff(\()p Fi(in)m(t)31 b(c)p Ff(\))390
-2406 y Fs(Return)f(1)g(if)h Fi(c)36 b Fs(is)30 b(a)h(n)m(umeric)f(c)m
-(haracter.)3350 2604 y([F)-8 b(unction])-3599 b Fg(int)53
+679 y Fs(Return)f(1)g(if)h Fi(c)36 b Fs(is)30 b(a)h(n)m(umeric)f(c)m
+(haracter.)3350 840 y([F)-8 b(unction])-3599 b Fg(int)53
b(_rl_to_upper)c Ff(\()p Fi(in)m(t)32 b(c)p Ff(\))390
-2714 y Fs(If)23 b Fi(c)30 b Fs(is)24 b(a)g(lo)m(w)m(ercase)i(alphab)s
+949 y Fs(If)23 b Fi(c)30 b Fs(is)24 b(a)g(lo)m(w)m(ercase)i(alphab)s
(etic)e(c)m(haracter,)j(return)c(the)h(corresp)s(onding)e(upp)s(ercase)
-h(c)m(haracter.)3350 2912 y([F)-8 b(unction])-3599 b
+h(c)m(haracter.)3350 1110 y([F)-8 b(unction])-3599 b
Fg(int)53 b(_rl_to_lower)c Ff(\()p Fi(in)m(t)32 b(c)p
-Ff(\))390 3021 y Fs(If)c Fi(c)35 b Fs(is)29 b(an)g(upp)s(ercase)f
+Ff(\))390 1220 y Fs(If)c Fi(c)35 b Fs(is)29 b(an)g(upp)s(ercase)f
(alphab)s(etic)h(c)m(haracter,)i(return)d(the)h(corresp)s(onding)f(lo)m
-(w)m(ercase)j(c)m(harac-)390 3131 y(ter.)3350 3329 y([F)-8
+(w)m(ercase)j(c)m(harac-)390 1329 y(ter.)3350 1490 y([F)-8
b(unction])-3599 b Fg(int)53 b(_rl_digit_value)d Ff(\()p
-Fi(in)m(t)31 b(c)p Ff(\))390 3438 y Fs(If)f Fi(c)36 b
+Fi(in)m(t)31 b(c)p Ff(\))390 1600 y Fs(If)f Fi(c)36 b
Fs(is)31 b(a)f(n)m(um)m(b)s(er,)g(return)f(the)h(v)-5
-b(alue)31 b(it)g(represen)m(ts.)150 3644 y Fh(2.4.11)63
-b(Miscellaneous)42 b(F)-10 b(unctions)3350 3848 y Fs([F)i(unction])
+b(alue)31 b(it)g(represen)m(ts.)150 1783 y Fh(2.4.11)63
+b(Miscellaneous)42 b(F)-10 b(unctions)3350 1964 y Fs([F)i(unction])
-3599 b Fg(int)53 b(rl_macro_bind)d Ff(\()p Fi(const)31
b(c)m(har)g(*k)m(eyseq,)h(const)f(c)m(har)f(*macro,)i(Keymap)565
-3958 y(map)p Ff(\))390 4067 y Fs(Bind)22 b(the)i(k)m(ey)f(sequence)g
-Fi(k)m(eyseq)j Fs(to)e(in)m(v)m(ok)m(e)h(the)e(macro)g
-Fi(macro)5 b Fs(.)39 b(The)22 b(binding)g(is)h(p)s(erformed)e(in)390
-4177 y Fi(map)s Fs(.)39 b(When)27 b Fi(k)m(eyseq)k Fs(is)c(in)m(v)m(ok)
-m(ed,)j(the)d Fi(macro)33 b Fs(will)27 b(b)s(e)g(inserted)g(in)m(to)h
-(the)g(line.)40 b(This)26 b(function)390 4286 y(is)k(deprecated;)i(use)
-e Fr(rl_generic_bind\(\))25 b Fs(instead.)3350 4484 y([F)-8
+2074 y(map)p Ff(\))390 2183 y Fs(Bind)23 b(the)g(k)m(ey)h(sequence)g
+Fi(k)m(eyseq)i Fs(to)e(in)m(v)m(ok)m(e)h(the)f(macro)f
+Fi(macro)p Fs(.)39 b(The)23 b(binding)f(is)i(p)s(erformed)d(in)390
+2293 y Fi(map)p Fs(.)39 b(When)28 b Fi(k)m(eyseq)i Fs(is)e(in)m(v)m(ok)
+m(ed,)i(the)d Fi(macro)33 b Fs(will)28 b(b)s(e)f(inserted)g(in)m(to)i
+(the)e(line.)41 b(This)26 b(function)390 2403 y(is)k(deprecated;)i(use)
+e Fr(rl_generic_bind\(\))25 b Fs(instead.)3350 2563 y([F)-8
b(unction])-3599 b Fg(void)54 b(rl_macro_dumper)c Ff(\()p
-Fi(in)m(t)31 b(readable)p Ff(\))390 4594 y Fs(Prin)m(t)c(the)g(k)m(ey)h
+Fi(in)m(t)31 b(readable)p Ff(\))390 2673 y Fs(Prin)m(t)c(the)g(k)m(ey)h
(sequences)g(b)s(ound)d(to)j(macros)f(and)g(their)g(v)-5
b(alues,)28 b(using)f(the)g(curren)m(t)g(k)m(eymap,)390
-4704 y(to)32 b Fr(rl_outstream)p Fs(.)40 b(If)31 b Fi(readable)36
+2783 y(to)32 b Fr(rl_outstream)p Fs(.)40 b(If)31 b Fi(readable)36
b Fs(is)c(non-zero,)g(the)f(list)h(is)f(formatted)h(in)f(suc)m(h)g(a)g
-(w)m(a)m(y)i(that)e(it)390 4813 y(can)g(b)s(e)e(made)i(part)f(of)h(an)f
-Fr(inputrc)e Fs(\014le)j(and)e(re-read.)3350 5011 y([F)-8
+(w)m(a)m(y)i(that)e(it)390 2892 y(can)g(b)s(e)e(made)i(part)f(of)h(an)f
+Fr(inputrc)e Fs(\014le)j(and)e(re-read.)3350 3053 y([F)-8
b(unction])-3599 b Fg(int)53 b(rl_variable_bind)e Ff(\()p
Fi(const)31 b(c)m(har)g(*v)-5 b(ariable,)31 b(const)g(c)m(har)g(*v)-5
-b(alue)p Ff(\))390 5121 y Fs(Mak)m(e)30 b(the)f(Readline)g(v)-5
-b(ariable)29 b Fi(v)-5 b(ariable)35 b Fs(ha)m(v)m(e)30
-b Fi(v)-5 b(alue)5 b Fs(.)40 b(This)28 b(b)s(eha)m(v)m(es)h(as)g(if)f
-(the)h(readline)g(com-)390 5230 y(mand)f(`)p Fr(set)i
-Fk(variable)38 b(value)11 b Fs(')28 b(had)g(b)s(een)g(executed)i(in)e
-(an)h Fr(inputrc)e Fs(\014le)i(\(see)g(Section)h(1.3.1)390
-5340 y([Readline)h(Init)f(File)i(Syn)m(tax],)f(page)g(4\).)p
-eop end
-%%Page: 39 43
-TeXDict begin 39 42 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(39)3350
-299 y([F)-8 b(unction])-3599 b Fg(char)54 b(*)e(rl_variable_value)f
+b(alue)p Ff(\))390 3163 y Fs(Mak)m(e)31 b(the)e(Readline)g(v)-5
+b(ariable)30 b Fi(v)-5 b(ariable)35 b Fs(ha)m(v)m(e)30
+b Fi(v)-5 b(alue)p Fs(.)41 b(This)28 b(b)s(eha)m(v)m(es)h(as)h(if)f
+(the)g(readline)g(com-)390 3272 y(mand)h(`)p Fr(set)g
+Fk(variable)e(value)p Fs(')h(had)h(b)s(een)h(executed)g(in)g(an)f
+Fr(inputrc)f Fs(\014le)i(\(see)h(Section)f(1.3.1)390
+3382 y([Readline)g(Init)f(File)i(Syn)m(tax],)f(page)g(4\).)3350
+3543 y([F)-8 b(unction])-3599 b Fg(char)54 b(*)e(rl_variable_value)f
Ff(\()p Fi(const)31 b(c)m(har)g(*v)-5 b(ariable)p Ff(\))390
-408 y Fs(Return)28 b(a)h(string)g(represen)m(ting)g(the)g(v)-5
-b(alue)29 b(of)g(the)g(Readline)h(v)-5 b(ariable)29 b
-Fi(v)-5 b(ariable)5 b Fs(.)41 b(F)-8 b(or)30 b(b)s(o)s(olean)390
-518 y(v)-5 b(ariables,)31 b(this)g(string)f(is)g(either)h(`)p
-Fr(on)p Fs(')f(or)h(`)p Fr(off)p Fs('.)3350 712 y([F)-8
+3652 y Fs(Return)28 b(a)i(string)f(represen)m(ting)h(the)f(v)-5
+b(alue)30 b(of)f(the)h(Readline)g(v)-5 b(ariable)30 b
+Fi(v)-5 b(ariable)p Fs(.)41 b(F)-8 b(or)30 b(b)s(o)s(olean)390
+3762 y(v)-5 b(ariables,)31 b(this)g(string)f(is)g(either)h(`)p
+Fr(on)p Fs(')f(or)h(`)p Fr(off)p Fs('.)3350 3922 y([F)-8
b(unction])-3599 b Fg(void)54 b(rl_variable_dumper)c
-Ff(\()p Fi(in)m(t)32 b(readable)p Ff(\))390 822 y Fs(Prin)m(t)d(the)f
+Ff(\()p Fi(in)m(t)32 b(readable)p Ff(\))390 4032 y Fs(Prin)m(t)d(the)f
(readline)h(v)-5 b(ariable)30 b(names)e(and)g(their)h(curren)m(t)f(v)-5
b(alues)29 b(to)h Fr(rl_outstream)p Fs(.)37 b(If)28 b
-Fi(read-)390 931 y(able)40 b Fs(is)34 b(non-zero,)i(the)e(list)g(is)g
+Fi(read-)390 4142 y(able)40 b Fs(is)34 b(non-zero,)i(the)e(list)g(is)g
(formatted)h(in)f(suc)m(h)g(a)g(w)m(a)m(y)h(that)g(it)f(can)g(b)s(e)g
-(made)g(part)g(of)g(an)390 1041 y Fr(inputrc)28 b Fs(\014le)j(and)f
-(re-read.)3350 1235 y([F)-8 b(unction])-3599 b Fg(int)53
+(made)g(part)g(of)g(an)390 4251 y Fr(inputrc)28 b Fs(\014le)j(and)f
+(re-read.)3350 4412 y([F)-8 b(unction])-3599 b Fg(int)53
b(rl_set_paren_blink_ti)q(meou)q(t)f Ff(\()p Fi(in)m(t)31
-b(u)p Ff(\))390 1345 y Fs(Set)25 b(the)h(time)f(in)m(terv)-5
+b(u)p Ff(\))390 4522 y Fs(Set)25 b(the)h(time)f(in)m(terv)-5
b(al)27 b(\(in)e(microseconds\))h(that)g(Readline)f(w)m(aits)h(when)e
-(sho)m(wing)i(a)f(balancing)390 1454 y(c)m(haracter)32
+(sho)m(wing)i(a)f(balancing)390 4631 y(c)m(haracter)32
b(when)d Fr(blink-matching-paren)c Fs(has)30 b(b)s(een)g(enabled.)3350
-1649 y([F)-8 b(unction])-3599 b Fg(char)54 b(*)e(rl_get_termcap)e
-Ff(\()p Fi(const)31 b(c)m(har)g(*cap)p Ff(\))390 1758
-y Fs(Retriev)m(e)d(the)f(string)g(v)-5 b(alue)27 b(of)g(the)g(termcap)g
-(capabilit)m(y)i Fi(cap)s Fs(.)39 b(Readline)28 b(fetc)m(hes)g(the)f
-(termcap)390 1868 y(en)m(try)34 b(for)f(the)h(curren)m(t)f(terminal)h
+4792 y([F)-8 b(unction])-3599 b Fg(char)54 b(*)e(rl_get_termcap)e
+Ff(\()p Fi(const)31 b(c)m(har)g(*cap)p Ff(\))390 4902
+y Fs(Retriev)m(e)e(the)e(string)g(v)-5 b(alue)27 b(of)g(the)h(termcap)f
+(capabilit)m(y)i Fi(cap)p Fs(.)40 b(Readline)27 b(fetc)m(hes)h(the)g
+(termcap)390 5011 y(en)m(try)34 b(for)f(the)h(curren)m(t)f(terminal)h
(name)g(and)f(uses)g(those)h(capabilities)h(to)f(mo)m(v)m(e)h(around)e
-(the)390 1977 y(screen)21 b(line)h(and)e(p)s(erform)g(other)h
+(the)390 5121 y(screen)21 b(line)h(and)e(p)s(erform)g(other)h
(terminal-sp)s(eci\014c)h(op)s(erations,)h(lik)m(e)f(erasing)g(a)f
-(line.)38 b(Readline)390 2087 y(do)s(es)d(not)g(use)g(all)g(of)h(a)f
+(line.)38 b(Readline)390 5230 y(do)s(es)d(not)g(use)g(all)g(of)h(a)f
(terminal's)g(capabilities,)k(and)34 b(this)h(function)g(will)g(return)
-f(v)-5 b(alues)35 b(for)390 2197 y(only)30 b(those)h(capabilities)i
-(Readline)e(uses.)150 2401 y Fh(2.4.12)63 b(Alternate)40
-b(In)m(terface)150 2548 y Fs(An)21 b(alternate)j(in)m(terface)f(is)f(a)
-m(v)-5 b(ailable)24 b(to)e(plain)g Fr(readline\(\))p
-Fs(.)35 b(Some)21 b(applications)i(need)f(to)g(in)m(terlea)m(v)m(e)150
-2657 y(k)m(eyb)s(oard)35 b(I/O)h(with)f(\014le,)i(device,)h(or)e(windo)
+f(v)-5 b(alues)35 b(for)390 5340 y(only)30 b(those)h(capabilities)i
+(Readline)e(uses.)p eop end
+%%Page: 40 44
+TeXDict begin 40 43 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(40)3350
+299 y([F)-8 b(unction])-3599 b Fg(void)54 b(rl_clear_history)c
+Ff(\()p Fi(v)m(oid)p Ff(\))390 408 y Fs(Clear)27 b(the)h(history)f
+(list)h(b)m(y)f(deleting)h(all)g(of)f(the)h(en)m(tries,)h(in)d(the)i
+(same)f(manner)g(as)g(the)g(History)390 518 y(library's)42
+b Fr(clear_history\(\))d Fs(function.)78 b(This)42 b(di\013ers)g(from)g
+Fr(clear_history)e Fs(b)s(ecause)i(it)390 628 y(frees)30
+b(priv)-5 b(ate)31 b(data)g(Readline)g(sa)m(v)m(es)h(in)e(the)h
+(history)f(list.)150 832 y Fh(2.4.12)63 b(Alternate)40
+b(In)m(terface)150 979 y Fs(An)21 b(alternate)j(in)m(terface)f(is)f(a)m
+(v)-5 b(ailable)24 b(to)e(plain)g Fr(readline\(\))p Fs(.)35
+b(Some)21 b(applications)i(need)f(to)g(in)m(terlea)m(v)m(e)150
+1088 y(k)m(eyb)s(oard)35 b(I/O)h(with)f(\014le,)i(device,)h(or)e(windo)
m(w)f(system)g(I/O,)h(t)m(ypically)i(b)m(y)d(using)g(a)h(main)g(lo)s
-(op)f(to)150 2767 y Fr(select\(\))24 b Fs(on)h(v)-5 b(arious)26
-b(\014le)g(descriptors.)39 b(T)-8 b(o)26 b(accomo)s(date)i(this)e
-(need,)g(readline)h(can)f(also)g(b)s(e)f(in)m(v)m(ok)m(ed)150
-2877 y(as)i(a)g(`callbac)m(k')j(function)c(from)g(an)h(ev)m(en)m(t)h
-(lo)s(op.)40 b(There)26 b(are)h(functions)g(a)m(v)-5
-b(ailable)29 b(to)e(mak)m(e)h(this)f(easy)-8 b(.)3350
-3071 y([F)g(unction])-3599 b Fg(void)54 b(rl_callback_handler_inst)q
-(all)e Ff(\()p Fi(const)31 b(c)m(har)g(*prompt,)565 3180
-y(rl)p 632 3180 28 4 v 40 w(v)m(cpfunc)p 978 3180 V 40
-w(t)f(*lhandler)p Ff(\))390 3290 y Fs(Set)25 b(up)e(the)i(terminal)g
-(for)g(readline)g(I/O)f(and)g(displa)m(y)h(the)g(initial)h(expanded)e
-(v)-5 b(alue)25 b(of)g Fi(prompt)r Fs(.)390 3400 y(Sa)m(v)m(e)33
-b(the)f(v)-5 b(alue)32 b(of)g Fi(lhandler)37 b Fs(to)c(use)e(as)h(a)g
-(function)f(to)h(call)h(when)e(a)h(complete)h(line)f(of)g(input)390
-3509 y(has)e(b)s(een)g(en)m(tered.)41 b(The)30 b(function)g(tak)m(es)i
-(the)e(text)i(of)e(the)h(line)g(as)f(an)g(argumen)m(t.)3350
-3703 y([F)-8 b(unction])-3599 b Fg(void)54 b(rl_callback_read_char)d
-Ff(\()p Fi(v)m(oid)p Ff(\))390 3813 y Fs(Whenev)m(er)34
+(op)f(to)150 1198 y Fr(select\(\))42 b Fs(on)i(v)-5 b(arious)45
+b(\014le)f(descriptors.)83 b(T)-8 b(o)45 b(accommo)s(date)h(this)e
+(need,)k(readline)d(can)f(also)i(b)s(e)150 1308 y(in)m(v)m(ok)m(ed)33
+b(as)e(a)h(`callbac)m(k')h(function)e(from)g(an)g(ev)m(en)m(t)h(lo)s
+(op.)44 b(There)30 b(are)i(functions)f(a)m(v)-5 b(ailable)33
+b(to)f(mak)m(e)150 1417 y(this)e(easy)-8 b(.)3350 1611
+y([F)g(unction])-3599 b Fg(void)54 b(rl_callback_handler_inst)q(all)e
+Ff(\()p Fi(const)31 b(c)m(har)g(*prompt,)565 1721 y(rl)p
+632 1721 28 4 v 40 w(v)m(cpfunc)p 978 1721 V 40 w(t)f(*lhandler)p
+Ff(\))390 1831 y Fs(Set)25 b(up)f(the)h(terminal)g(for)f(readline)i
+(I/O)e(and)g(displa)m(y)h(the)g(initial)h(expanded)e(v)-5
+b(alue)26 b(of)f Fi(prompt)p Fs(.)390 1940 y(Sa)m(v)m(e)34
+b(the)f(v)-5 b(alue)33 b(of)g Fi(lhandler)39 b Fs(to)34
+b(use)e(as)h(a)g(handler)f(function)h(to)g(call)h(when)e(a)h(complete)i
+(line)390 2050 y(of)h(input)f(has)g(b)s(een)g(en)m(tered.)57
+b(The)35 b(handler)g(function)g(receiv)m(es)j(the)e(text)g(of)g(the)g
+(line)g(as)g(an)390 2159 y(argumen)m(t.)3350 2354 y([F)-8
+b(unction])-3599 b Fg(void)54 b(rl_callback_read_char)d
+Ff(\()p Fi(v)m(oid)p Ff(\))390 2463 y Fs(Whenev)m(er)34
b(an)g(application)h(determines)e(that)i(k)m(eyb)s(oard)e(input)g(is)h
-(a)m(v)-5 b(ailable,)37 b(it)d(should)f(call)390 3923
+(a)m(v)-5 b(ailable,)37 b(it)d(should)f(call)390 2573
y Fr(rl_callback_read_char\(\))p Fs(,)17 b(whic)m(h)22
b(will)g(read)f(the)h(next)g(c)m(haracter)h(from)f(the)f(curren)m(t)h
-(input)390 4032 y(source.)77 b(If)41 b(that)i(c)m(haracter)h(completes)
-g(the)e(line,)k Fr(rl_callback_read_char)36 b Fs(will)43
-b(in)m(v)m(ok)m(e)390 4142 y(the)36 b Fi(lhandler)41
-b Fs(function)35 b(sa)m(v)m(ed)h(b)m(y)g Fr(rl_callback_handler_ins)o
-(tall)29 b Fs(to)36 b(pro)s(cess)f(the)g(line.)390 4251
-y(Before)28 b(calling)g(the)f Fi(lhandler)32 b Fs(function,)c(the)e
-(terminal)i(settings)f(are)g(reset)h(to)f(the)g(v)-5
-b(alues)27 b(they)390 4361 y(had)i(b)s(efore)g(calling)j
-Fr(rl_callback_handler_ins)o(tall)o Fs(.)j(If)29 b(the)h
-Fi(lhandler)36 b Fs(function)29 b(returns,)390 4471 y(the)c(terminal)g
-(settings)h(are)f(mo)s(di\014ed)e(for)i(Readline's)g(use)f(again.)40
-b Fr(EOF)24 b Fs(is)h(indicated)g(b)m(y)f(calling)390
-4580 y Fi(lhandler)36 b Fs(with)30 b(a)h Fr(NULL)e Fs(line.)3350
-4774 y([F)-8 b(unction])-3599 b Fg(void)54 b(rl_callback_handler_remo)q
-(ve)e Ff(\()p Fi(v)m(oid)p Ff(\))390 4884 y Fs(Restore)38
-b(the)f(terminal)h(to)g(its)f(initial)i(state)f(and)f(remo)m(v)m(e)h
-(the)g(line)f(handler.)60 b(This)37 b(ma)m(y)h(b)s(e)390
-4994 y(called)f(from)f(within)g(a)h(callbac)m(k)h(as)f(w)m(ell)g(as)f
-(indep)s(enden)m(tly)-8 b(.)58 b(If)36 b(the)h Fi(lhandler)42
-b Fs(installed)37 b(b)m(y)390 5103 y Fr(rl_callback_handler_inst)o(all)
-32 b Fs(do)s(es)39 b(not)g(exit)g(the)g(program,)i(either)e(this)g
-(function)f(or)390 5213 y(the)32 b(function)f(referred)f(to)i(b)m(y)g
+(input)390 2682 y(source.)40 b(If)27 b(that)i(c)m(haracter)g(completes)
+h(the)e(line,)h Fr(rl_callback_read_char)22 b Fs(will)28
+b(in)m(v)m(ok)m(e)i(the)390 2792 y Fi(lhandler)47 b Fs(function)40
+b(installed)i(b)m(y)e Fr(rl_callback_handler_insta)o(ll)35
+b Fs(to)41 b(pro)s(cess)f(the)h(line.)390 2902 y(Before)j(calling)h
+(the)e Fi(lhandler)49 b Fs(function,)e(the)c(terminal)h(settings)g(are)
+g(reset)f(to)h(the)g(v)-5 b(alues)390 3011 y(they)44
+b(had)e(b)s(efore)h(calling)i Fr(rl_callback_handler_insta)o(ll)p
+Fs(.)73 b(If)43 b(the)h Fi(lhandler)49 b Fs(function)390
+3121 y(returns,)27 b(and)h(the)g(line)g(handler)f(remains)h(installed,)
+i(the)e(terminal)g(settings)h(are)f(mo)s(di\014ed)f(for)390
+3230 y(Readline's)k(use)f(again.)42 b Fr(EOF)29 b Fs(is)i(indicated)g
+(b)m(y)f(calling)i Fi(lhandler)k Fs(with)30 b(a)h Fr(NULL)e
+Fs(line.)3350 3425 y([F)-8 b(unction])-3599 b Fg(void)54
+b(rl_callback_handler_remo)q(ve)e Ff(\()p Fi(v)m(oid)p
+Ff(\))390 3534 y Fs(Restore)38 b(the)f(terminal)h(to)g(its)f(initial)i
+(state)f(and)f(remo)m(v)m(e)h(the)g(line)f(handler.)60
+b(This)37 b(ma)m(y)h(b)s(e)390 3644 y(called)f(from)f(within)g(a)h
+(callbac)m(k)h(as)f(w)m(ell)g(as)f(indep)s(enden)m(tly)-8
+b(.)58 b(If)36 b(the)h Fi(lhandler)42 b Fs(installed)37
+b(b)m(y)390 3753 y Fr(rl_callback_handler_inst)o(all)32
+b Fs(do)s(es)39 b(not)g(exit)g(the)g(program,)i(either)e(this)g
+(function)f(or)390 3863 y(the)32 b(function)f(referred)f(to)i(b)m(y)g
(the)f(v)-5 b(alue)32 b(of)g Fr(rl_deprep_term_function)25
-b Fs(should)30 b(b)s(e)h(called)390 5322 y(b)s(efore)f(the)h(program)f
-(exits)h(to)g(reset)g(the)f(terminal)h(settings.)p eop
-end
-%%Page: 40 44
-TeXDict begin 40 43 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(40)150
-299 y Fh(2.4.13)63 b(A)41 b(Readline)f(Example)150 446
+b Fs(should)30 b(b)s(e)h(called)390 3973 y(b)s(efore)f(the)h(program)f
+(exits)h(to)g(reset)g(the)f(terminal)h(settings.)150
+4177 y Fh(2.4.13)63 b(A)41 b(Readline)f(Example)150 4324
y Fs(Here)34 b(is)g(a)g(function)g(whic)m(h)g(c)m(hanges)g(lo)m(w)m
(ercase)j(c)m(haracters)e(to)f(their)g(upp)s(ercase)f(equiv)-5
-b(alen)m(ts,)37 b(and)150 555 y(upp)s(ercase)d(c)m(haracters)j(to)f(lo)
-m(w)m(ercase.)58 b(If)35 b(this)g(function)g(w)m(as)h(b)s(ound)d(to)j
-(`)p Fr(M-c)p Fs(',)h(then)e(t)m(yping)g(`)p Fr(M-c)p
-Fs(')150 665 y(w)m(ould)c(c)m(hange)i(the)f(case)g(of)g(the)g(c)m
+b(alen)m(ts,)37 b(and)150 4433 y(upp)s(ercase)d(c)m(haracters)j(to)f
+(lo)m(w)m(ercase.)58 b(If)35 b(this)g(function)g(w)m(as)h(b)s(ound)d
+(to)j(`)p Fr(M-c)p Fs(',)h(then)e(t)m(yping)g(`)p Fr(M-c)p
+Fs(')150 4543 y(w)m(ould)c(c)m(hange)i(the)f(case)g(of)g(the)g(c)m
(haracter)h(under)d(p)s(oin)m(t.)44 b(T)m(yping)31 b(`)p
Fr(M-1)f(0)g(M-c)p Fs(')h(w)m(ould)g(c)m(hange)i(the)150
-775 y(case)e(of)g(the)g(follo)m(wing)g(10)h(c)m(haracters,)g(lea)m
+4653 y(case)e(of)g(the)g(follo)m(wing)g(10)h(c)m(haracters,)g(lea)m
(ving)g(the)e(cursor)g(on)g(the)h(last)g(c)m(haracter)h(c)m(hanged.)390
-956 y Fr(/*)47 b(Invert)f(the)h(case)g(of)g(the)g(COUNT)f(following)g
-(characters.)e(*/)390 1066 y(int)390 1176 y(invert_case_line)f
-(\(count,)j(key\))629 1285 y(int)h(count,)f(key;)390
-1395 y({)485 1504 y(register)g(int)h(start,)f(end,)h(i;)485
-1724 y(start)g(=)g(rl_point;)485 1943 y(if)h(\(rl_point)d(>=)i
-(rl_end\))581 2052 y(return)f(\(0\);)485 2271 y(if)i(\(count)e(<)h(0\))
-581 2381 y({)676 2491 y(direction)f(=)h(-1;)676 2600
-y(count)g(=)g(-count;)581 2710 y(})485 2819 y(else)581
-2929 y(direction)e(=)j(1;)485 3148 y(/*)g(Find)e(the)h(end)g(of)g(the)g
-(range)g(to)g(modify.)f(*/)485 3258 y(end)h(=)h(start)e(+)i(\(count)e
-(*)h(direction\);)485 3477 y(/*)h(Force)e(it)h(to)g(be)h(within)e
-(range.)g(*/)485 3587 y(if)i(\(end)e(>)i(rl_end\))581
-3696 y(end)f(=)g(rl_end;)485 3806 y(else)g(if)g(\(end)g(<)g(0\))581
-3915 y(end)g(=)g(0;)485 4134 y(if)h(\(start)e(==)h(end\))581
-4244 y(return)f(\(0\);)485 4463 y(if)i(\(start)e(>)h(end\))581
-4573 y({)676 4682 y(int)g(temp)g(=)g(start;)676 4792
-y(start)g(=)g(end;)676 4902 y(end)g(=)h(temp;)581 5011
-y(})485 5230 y(/*)g(Tell)e(readline)g(that)g(we)i(are)f(modifying)e
-(the)i(line,)629 5340 y(so)g(it)g(will)g(save)f(the)h(undo)g
-(information.)d(*/)p eop end
+4792 y Fr(/*)47 b(Invert)f(the)h(case)g(of)g(the)g(COUNT)f(following)g
+(characters.)e(*/)390 4902 y(int)390 5011 y(invert_case_line)f
+(\(count,)j(key\))629 5121 y(int)h(count,)f(key;)390
+5230 y({)485 5340 y(register)g(int)h(start,)f(end,)h(i;)p
+eop end
%%Page: 41 45
TeXDict begin 41 44 bop 150 -116 a Fs(Chapter)30 b(2:)41
b(Programming)30 b(with)g(GNU)h(Readline)1683 b(41)485
-299 y Fr(rl_modifying)45 b(\(start,)h(end\);)485 518
-y(for)h(\(i)h(=)f(start;)f(i)i(!=)f(end;)f(i++\))581
-628 y({)676 737 y(if)i(\(_rl_uppercase_p)43 b(\(rl_line_buffer[i]\)\))
-772 847 y(rl_line_buffer[i])g(=)k(_rl_to_lower)e
-(\(rl_line_buffer[i]\);)676 956 y(else)i(if)g(\(_rl_lowercase_p)d
-(\(rl_line_buffer[i]\)\))772 1066 y(rl_line_buffer[i])f(=)k
-(_rl_to_upper)e(\(rl_line_buffer[i]\);)581 1176 y(})485
-1285 y(/*)j(Move)e(point)h(to)g(on)g(top)g(of)g(the)g(last)g(character)
-e(changed.)g(*/)485 1395 y(rl_point)h(=)h(\(direction)e(==)j(1\))f(?)g
-(end)g(-)h(1)f(:)h(start;)485 1504 y(return)f(\(0\);)390
-1614 y(})150 1947 y Fq(2.5)68 b(Readline)47 b(Signal)e(Handling)150
-2106 y Fs(Signals)31 b(are)f(async)m(hronous)g(ev)m(en)m(ts)i(sen)m(t)f
+408 y Fr(start)47 b(=)g(rl_point;)485 628 y(if)h(\(rl_point)d(>=)i
+(rl_end\))581 737 y(return)f(\(0\);)485 956 y(if)i(\(count)e(<)h(0\))
+581 1066 y({)676 1176 y(direction)f(=)h(-1;)676 1285
+y(count)g(=)g(-count;)581 1395 y(})485 1504 y(else)581
+1614 y(direction)e(=)j(1;)485 1833 y(/*)g(Find)e(the)h(end)g(of)g(the)g
+(range)g(to)g(modify.)f(*/)485 1943 y(end)h(=)h(start)e(+)i(\(count)e
+(*)h(direction\);)485 2162 y(/*)h(Force)e(it)h(to)g(be)h(within)e
+(range.)g(*/)485 2271 y(if)i(\(end)e(>)i(rl_end\))581
+2381 y(end)f(=)g(rl_end;)485 2491 y(else)g(if)g(\(end)g(<)g(0\))581
+2600 y(end)g(=)g(0;)485 2819 y(if)h(\(start)e(==)h(end\))581
+2929 y(return)f(\(0\);)485 3148 y(if)i(\(start)e(>)h(end\))581
+3258 y({)676 3367 y(int)g(temp)g(=)g(start;)676 3477
+y(start)g(=)g(end;)676 3587 y(end)g(=)h(temp;)581 3696
+y(})485 3915 y(/*)g(Tell)e(readline)g(that)g(we)i(are)f(modifying)e
+(the)i(line,)629 4025 y(so)g(it)g(will)g(save)f(the)h(undo)g
+(information.)d(*/)485 4134 y(rl_modifying)h(\(start,)h(end\);)485
+4354 y(for)h(\(i)h(=)f(start;)f(i)i(!=)f(end;)f(i++\))581
+4463 y({)676 4573 y(if)i(\(_rl_uppercase_p)43 b
+(\(rl_line_buffer[i]\)\))772 4682 y(rl_line_buffer[i])g(=)k
+(_rl_to_lower)e(\(rl_line_buffer[i]\);)676 4792 y(else)i(if)g
+(\(_rl_lowercase_p)d(\(rl_line_buffer[i]\)\))772 4902
+y(rl_line_buffer[i])f(=)k(_rl_to_upper)e(\(rl_line_buffer[i]\);)581
+5011 y(})485 5121 y(/*)j(Move)e(point)h(to)g(on)g(top)g(of)g(the)g
+(last)g(character)e(changed.)g(*/)485 5230 y(rl_point)h(=)h
+(\(direction)e(==)j(1\))f(?)g(end)g(-)h(1)f(:)h(start;)485
+5340 y(return)f(\(0\);)p eop end
+%%Page: 42 46
+TeXDict begin 42 45 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(42)390
+299 y Fr(})150 532 y Fh(2.4.14)63 b(Alternate)40 b(In)m(terface)g
+(Example)150 679 y Fs(Here)f(is)g(a)g(complete)h(program)e(that)h
+(illustrates)h(Readline's)f(alternate)h(in)m(terface.)67
+b(It)38 b(reads)h(lines)150 788 y(from)30 b(the)i(terminal)f(and)f
+(displa)m(ys)h(them,)h(pro)m(viding)f(the)g(standard)f(history)h(and)f
+(T)-8 b(AB)32 b(completion)150 898 y(functions.)40 b(It)31
+b(understands)d(the)j(EOF)f(c)m(haracter)i(or)e Fr(")p
+Fs(exit)p Fr(")h Fs(to)g(exit)g(the)g(program.)390 1066
+y Fr(/*)47 b(Standard)f(include)g(files.)g(stdio.h)f(is)j(required.)d
+(*/)390 1176 y(#include)h(<stdlib.h>)390 1285 y(#include)g(<unistd.h>)
+390 1504 y(/*)h(Used)g(for)g(select\(2\))e(*/)390 1614
+y(#include)h(<sys/types.h>)390 1724 y(#include)g(<sys/select.h>)390
+1943 y(#include)g(<stdio.h>)390 2162 y(/*)h(Standard)f(readline)f
+(include)h(files.)g(*/)390 2271 y(#include)g(<readline/readline.h>)390
+2381 y(#include)g(<readline/history.h>)390 2600 y(static)g(void)h
+(cb_linehandler)d(\(char)i(*\);)390 2819 y(int)h(running;)390
+2929 y(const)f(char)h(*prompt)f(=)h("rltest$)f(";)390
+3148 y(/*)h(Callback)f(function)f(called)h(for)h(each)g(line)g(when)f
+(accept-line)f(executed,)g(EOF)533 3258 y(seen,)i(or)g(EOF)g(character)
+e(read.)94 b(This)47 b(sets)f(a)i(flag)e(and)h(returns;)f(it)h(could)
+533 3367 y(also)g(call)f(exit\(3\).)g(*/)390 3477 y(static)g(void)390
+3587 y(cb_linehandler)e(\(char)i(*line\))390 3696 y({)485
+3806 y(/*)i(Can)f(use)f(^D)i(\(stty)e(eof\))h(or)g(`exit')f(to)h(exit.)
+f(*/)485 3915 y(if)i(\(line)e(==)h(NULL)g(||)g(strcmp)f(\(line,)g
+("exit"\))g(==)h(0\))581 4025 y({)676 4134 y(if)h(\(line)e(==)h(0\))772
+4244 y(printf)f(\("\\n"\);)676 4354 y(printf)g(\("exit\\n"\);)676
+4463 y(/*)i(This)e(function)g(needs)g(to)h(be)g(called)g(to)g(reset)f
+(the)h(terminal)f(settings,)p 3874 4483 42 84 v 820 4573
+a(and)g(calling)g(it)h(from)g(the)g(line)g(handler)e(keeps)i(one)g
+(extra)f(prompt)g(from)p 3874 4593 42 76 v 820 4682 a(being)g
+(displayed.)f(*/)676 4792 y(rl_callback_handler_remove)c(\(\);)676
+5011 y(running)46 b(=)i(0;)581 5121 y(})485 5230 y(else)581
+5340 y({)p eop end
+%%Page: 43 47
+TeXDict begin 43 46 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(43)676
+299 y Fr(if)48 b(\(*line\))772 408 y(add_history)d(\(line\);)676
+518 y(printf)h(\("input)g(line:)h(\045s\\n",)f(line\);)676
+628 y(free)h(\(line\);)581 737 y(})390 847 y(})390 1066
+y(int)390 1176 y(main)g(\(int)f(c,)h(char)g(**v\))390
+1285 y({)485 1395 y(fd_set)g(fds;)485 1504 y(int)g(r;)485
+1724 y(/*)h(Install)d(the)i(line)g(handler.)f(*/)485
+1833 y(rl_callback_handler_instal)o(l)c(\(prompt,)j(cb_linehandler\);)
+485 2052 y(/*)j(Enter)e(a)h(simple)g(event)f(loop.)94
+b(This)47 b(waits)f(until)g(something)g(is)h(available)629
+2162 y(to)g(read)f(on)i(readline's)d(input)h(stream)g(\(defaults)f(to)j
+(standard)d(input\))h(and)629 2271 y(calls)g(the)h(builtin)f(character)
+f(read)i(callback)e(to)i(read)g(it.)95 b(It)47 b(does)f(not)629
+2381 y(have)g(to)h(modify)g(the)f(user's)h(terminal)e(settings.)g(*/)
+485 2491 y(running)h(=)i(1;)485 2600 y(while)f(\(running\))581
+2710 y({)676 2819 y(FD_ZERO)f(\(&fds\);)676 2929 y(FD_SET)g(\(fileno)g
+(\(rl_instream\),)e(&fds\);)676 3148 y(r)k(=)f(select)f(\(FD_SETSIZE,)f
+(&fds,)h(NULL,)h(NULL,)f(NULL\);)676 3258 y(if)i(\(r)f(<)g(0\))772
+3367 y({)867 3477 y(perror)f(\("rltest:)g(select"\);)867
+3587 y(rl_callback_handler_remov)o(e)c(\(\);)867 3696
+y(break;)772 3806 y(})676 4025 y(if)48 b(\(FD_ISSET)d(\(fileno)h
+(\(rl_instream\),)e(&fds\)\))772 4134 y(rl_callback_read_char)e(\(\);)
+581 4244 y(})485 4463 y(printf)47 b(\("rltest:)e(Event)h(loop)h(has)g
+(exited\\n"\);)485 4573 y(return)g(0;)390 4682 y(})150
+4961 y Fq(2.5)68 b(Readline)47 b(Signal)e(Handling)150
+5121 y Fs(Signals)31 b(are)f(async)m(hronous)g(ev)m(en)m(ts)i(sen)m(t)f
(to)g(a)g(pro)s(cess)f(b)m(y)h(the)f(Unix)g(k)m(ernel,)i(sometimes)f
-(on)g(b)s(ehalf)150 2216 y(of)k(another)g(pro)s(cess.)53
+(on)g(b)s(ehalf)150 5230 y(of)k(another)g(pro)s(cess.)53
b(They)34 b(are)h(in)m(tended)g(to)g(indicate)h(exceptional)g(ev)m(en)m
-(ts,)i(lik)m(e)e(a)f(user)f(pressing)150 2325 y(the)g(in)m(terrupt)f(k)
+(ts,)i(lik)m(e)e(a)f(user)f(pressing)150 5340 y(the)g(in)m(terrupt)f(k)
m(ey)h(on)g(his)f(terminal,)i(or)f(a)g(net)m(w)m(ork)g(connection)h(b)s
-(eing)e(brok)m(en.)50 b(There)34 b(is)f(a)h(class)150
-2435 y(of)29 b(signals)g(that)h(can)f(b)s(e)f(sen)m(t)h(to)h(the)f(pro)
-s(cess)f(curren)m(tly)h(reading)g(input)f(from)g(the)h(k)m(eyb)s(oard.)
-40 b(Since)150 2544 y(Readline)45 b(c)m(hanges)g(the)g(terminal)g
+(eing)e(brok)m(en.)50 b(There)34 b(is)f(a)h(class)p eop
+end
+%%Page: 44 48
+TeXDict begin 44 47 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(44)150
+299 y(of)29 b(signals)g(that)h(can)f(b)s(e)f(sen)m(t)h(to)h(the)f(pro)s
+(cess)f(curren)m(tly)h(reading)g(input)f(from)g(the)h(k)m(eyb)s(oard.)
+40 b(Since)150 408 y(Readline)45 b(c)m(hanges)g(the)g(terminal)g
(attributes)g(when)e(it)i(is)g(called,)k(it)c(needs)f(to)h(p)s(erform)e
-(sp)s(ecial)150 2654 y(pro)s(cessing)27 b(when)g(suc)m(h)g(a)h(signal)g
+(sp)s(ecial)150 518 y(pro)s(cessing)27 b(when)g(suc)m(h)g(a)h(signal)g
(is)g(receiv)m(ed)h(in)e(order)g(to)h(restore)h(the)e(terminal)h(to)h
-(a)f(sane)f(state,)j(or)150 2764 y(pro)m(vide)g(application)i(writers)e
+(a)f(sane)f(state,)j(or)150 628 y(pro)m(vide)g(application)i(writers)e
(with)g(functions)g(to)h(do)g(so)f(man)m(ually)-8 b(.)275
-2965 y(Readline)40 b(con)m(tains)i(an)e(in)m(ternal)h(signal)g(handler)
-f(that)h(is)f(installed)h(for)f(a)h(n)m(um)m(b)s(er)e(of)h(signals)150
-3074 y(\()p Fr(SIGINT)p Fs(,)k Fr(SIGQUIT)p Fs(,)f Fr(SIGTERM)p
-Fs(,)g Fr(SIGALRM)p Fs(,)h Fr(SIGTSTP)p Fs(,)f Fr(SIGTTIN)p
-Fs(,)g(and)e Fr(SIGTTOU)p Fs(\).)75 b(When)41 b(one)i(of)150
-3184 y(these)32 b(signals)g(is)g(receiv)m(ed,)i(the)e(signal)g(handler)
-f(will)h(reset)g(the)g(terminal)g(attributes)h(to)f(those)g(that)150
-3294 y(w)m(ere)c(in)f(e\013ect)h(b)s(efore)f Fr(readline\(\))d
-Fs(w)m(as)k(called,)h(reset)f(the)g(signal)f(handling)g(to)h(what)f(it)
-h(w)m(as)f(b)s(efore)150 3403 y Fr(readline\(\))42 b
-Fs(w)m(as)k(called,)k(and)44 b(resend)h(the)g(signal)h(to)g(the)f
-(calling)i(application.)86 b(If)44 b(and)h(when)150 3513
-y(the)34 b(calling)i(application's)f(signal)g(handler)e(returns,)h
+777 y(Readline)40 b(con)m(tains)i(an)e(in)m(ternal)h(signal)g(handler)f
+(that)h(is)f(installed)h(for)f(a)h(n)m(um)m(b)s(er)e(of)h(signals)150
+887 y(\()p Fr(SIGINT)p Fs(,)e Fr(SIGQUIT)p Fs(,)f Fr(SIGTERM)p
+Fs(,)g Fr(SIGHUP)p Fs(,)g Fr(SIGALRM)p Fs(,)g Fr(SIGTSTP)p
+Fs(,)g Fr(SIGTTIN)p Fs(,)g(and)g Fr(SIGTTOU)p Fs(\).)59
+b(When)150 996 y(one)27 b(of)g(these)g(signals)g(is)g(receiv)m(ed,)i
+(the)e(signal)g(handler)f(will)h(reset)h(the)e(terminal)i(attributes)f
+(to)g(those)150 1106 y(that)33 b(w)m(ere)g(in)f(e\013ect)h(b)s(efore)f
+Fr(readline\(\))e Fs(w)m(as)i(called,)j(reset)d(the)h(signal)g
+(handling)f(to)h(what)f(it)h(w)m(as)150 1215 y(b)s(efore)26
+b Fr(readline\(\))e Fs(w)m(as)j(called,)i(and)d(resend)g(the)h(signal)g
+(to)h(the)f(calling)h(application.)41 b(If)26 b(and)g(when)150
+1325 y(the)34 b(calling)i(application's)f(signal)g(handler)e(returns,)h
(Readline)g(will)h(reinitialize)h(the)e(terminal)h(and)150
-3622 y(con)m(tin)m(ue)29 b(to)g(accept)h(input.)39 b(When)28
+1435 y(con)m(tin)m(ue)29 b(to)g(accept)h(input.)39 b(When)28
b(a)h Fr(SIGINT)d Fs(is)j(receiv)m(ed,)h(the)e(Readline)h(signal)g
-(handler)f(p)s(erforms)150 3732 y(some)39 b(additional)h(w)m(ork,)h
+(handler)f(p)s(erforms)150 1544 y(some)39 b(additional)h(w)m(ork,)h
(whic)m(h)d(will)h(cause)g(an)m(y)h(partially-en)m(tered)g(line)f(to)h
-(b)s(e)e(ab)s(orted)g(\(see)i(the)150 3842 y(description)30
+(b)s(e)e(ab)s(orted)g(\(see)i(the)150 1654 y(description)30
b(of)h Fr(rl_free_line_state\(\))25 b Fs(b)s(elo)m(w\).)275
-4043 y(There)e(is)i(an)f(additional)h(Readline)g(signal)g(handler,)g
+1803 y(There)e(is)i(an)f(additional)h(Readline)g(signal)g(handler,)g
(for)f Fr(SIGWINCH)p Fs(,)g(whic)m(h)g(the)g(k)m(ernel)h(sends)e(to)j
-(a)150 4152 y(pro)s(cess)i(whenev)m(er)h(the)g(terminal's)g(size)h(c)m
+(a)150 1913 y(pro)s(cess)i(whenev)m(er)h(the)g(terminal's)g(size)h(c)m
(hanges)g(\(for)f(example,)h(if)f(a)g(user)f(resizes)i(an)e
-Fr(xterm)p Fs(\).)39 b(The)150 4262 y(Readline)d Fr(SIGWINCH)e
+Fr(xterm)p Fs(\).)39 b(The)150 2022 y(Readline)d Fr(SIGWINCH)e
Fs(handler)g(up)s(dates)h(Readline's)h(in)m(ternal)h(screen)e(size)i
-(information,)g(and)e(then)150 4372 y(calls)g(an)m(y)f
+(information,)g(and)e(then)150 2132 y(calls)g(an)m(y)f
Fr(SIGWINCH)e Fs(signal)i(handler)f(the)h(calling)h(application)g(has)f
-(installed.)51 b(Readline)35 b(calls)g(the)150 4481 y(application's)i
+(installed.)51 b(Readline)35 b(calls)g(the)150 2242 y(application's)i
Fr(SIGWINCH)c Fs(signal)i(handler)g(without)g(resetting)h(the)g
-(terminal)f(to)h(its)g(original)g(state.)150 4591 y(If)31
+(terminal)f(to)h(its)g(original)g(state.)150 2351 y(If)31
b(the)i(application's)g(signal)g(handler)e(do)s(es)g(more)h(than)g(up)s
(date)f(its)i(idea)f(of)g(the)g(terminal)h(size)g(and)150
-4700 y(return)28 b(\(for)i(example,)h(a)f Fr(longjmp)d
+2461 y(return)28 b(\(for)i(example,)h(a)f Fr(longjmp)d
Fs(bac)m(k)k(to)f(a)g(main)g(pro)s(cessing)f(lo)s(op\),)h(it)g
-Fj(must)39 b Fs(call)31 b Fr(rl_cleanup_)150 4810 y(after_signal\(\))26
+Fj(must)39 b Fs(call)31 b Fr(rl_cleanup_)150 2570 y(after_signal\(\))26
b Fs(\(describ)s(ed)k(b)s(elo)m(w\),)h(to)g(restore)g(the)g(terminal)g
-(state.)275 5011 y(Readline)e(pro)m(vides)f(t)m(w)m(o)i(v)-5
+(state.)275 2720 y(Readline)e(pro)m(vides)f(t)m(w)m(o)i(v)-5
b(ariables)29 b(that)h(allo)m(w)g(application)g(writers)e(to)h(con)m
-(trol)h(whether)e(or)h(not)150 5121 y(it)34 b(will)f(catc)m(h)i
+(trol)h(whether)e(or)h(not)150 2829 y(it)34 b(will)f(catc)m(h)i
(certain)f(signals)f(and)g(act)h(on)f(them)g(when)f(they)i(are)f
(receiv)m(ed.)51 b(It)33 b(is)g(imp)s(ortan)m(t)g(that)150
-5230 y(applications)38 b(c)m(hange)g(the)e(v)-5 b(alues)37
+2939 y(applications)38 b(c)m(hange)g(the)e(v)-5 b(alues)37
b(of)g(these)g(v)-5 b(ariables)37 b(only)g(when)f(calling)i
-Fr(readline\(\))p Fs(,)d(not)i(in)g(a)150 5340 y(signal)31
+Fr(readline\(\))p Fs(,)d(not)i(in)g(a)150 3049 y(signal)31
b(handler,)f(so)g(Readline's)i(in)m(ternal)f(signal)g(state)h(is)e(not)
-h(corrupted.)p eop end
-%%Page: 42 46
-TeXDict begin 42 45 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(42)3371
-299 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_catch_signals)390
-408 y Fs(If)28 b(this)h(v)-5 b(ariable)30 b(is)f(non-zero,)h(Readline)f
-(will)g(install)h(signal)f(handlers)f(for)h Fr(SIGINT)p
-Fs(,)f Fr(SIGQUIT)p Fs(,)390 518 y Fr(SIGTERM)p Fs(,)h
-Fr(SIGALRM)p Fs(,)f Fr(SIGTSTP)p Fs(,)h Fr(SIGTTIN)p
-Fs(,)g(and)g Fr(SIGTTOU)p Fs(.)390 661 y(The)h(default)g(v)-5
-b(alue)31 b(of)g Fr(rl_catch_signals)26 b Fs(is)k(1.)3371
-863 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_catch_sigwinch)390
-972 y Fs(If)30 b(this)g(v)-5 b(ariable)31 b(is)g(non-zero,)g(Readline)g
-(will)g(install)g(a)g(signal)g(handler)e(for)h Fr(SIGWINCH)p
-Fs(.)390 1115 y(The)g(default)g(v)-5 b(alue)31 b(of)g
-Fr(rl_catch_sigwinch)25 b Fs(is)31 b(1.)275 1317 y(If)f(an)h
-(application)h(do)s(es)f(not)g(wish)f(to)i(ha)m(v)m(e)g(Readline)g
-(catc)m(h)g(an)m(y)f(signals,)h(or)f(to)h(handle)e(signals)150
-1426 y(other)39 b(than)f(those)h(Readline)h(catc)m(hes)g(\()p
-Fr(SIGHUP)p Fs(,)g(for)e(example\),)k(Readline)d(pro)m(vides)g(con)m(v)
-m(enience)150 1536 y(functions)30 b(to)h(do)f(the)h(necessary)g
-(terminal)g(and)e(in)m(ternal)i(state)h(clean)m(up)f(up)s(on)e(receipt)
-i(of)g(a)f(signal.)3350 1738 y([F)-8 b(unction])-3599
-b Fg(void)54 b(rl_cleanup_after_signal)e Ff(\()p Fi(v)m(oid)p
-Ff(\))390 1847 y Fs(This)33 b(function)h(will)g(reset)g(the)g(state)i
-(of)e(the)g(terminal)g(to)h(what)f(it)g(w)m(as)g(b)s(efore)g
-Fr(readline\(\))390 1957 y Fs(w)m(as)c(called,)h(and)d(remo)m(v)m(e)j
-(the)f(Readline)g(signal)g(handlers)e(for)h(all)h(signals,)h(dep)s
-(ending)d(on)h(the)390 2066 y(v)-5 b(alues)31 b(of)f
-Fr(rl_catch_signals)c Fs(and)k Fr(rl_catch_sigwinch)p
-Fs(.)3350 2268 y([F)-8 b(unction])-3599 b Fg(void)54
-b(rl_free_line_state)c Ff(\()p Fi(v)m(oid)p Ff(\))390
-2377 y Fs(This)38 b(will)i(free)f(an)m(y)h(partial)g(state)g(asso)s
+h(corrupted.)3371 3263 y([V)-8 b(ariable])-3598 b Fg(int)53
+b(rl_catch_signals)390 3372 y Fs(If)28 b(this)h(v)-5
+b(ariable)30 b(is)f(non-zero,)h(Readline)f(will)g(install)h(signal)f
+(handlers)f(for)h Fr(SIGINT)p Fs(,)f Fr(SIGQUIT)p Fs(,)390
+3482 y Fr(SIGTERM)p Fs(,)h Fr(SIGHUP)p Fs(,)g Fr(SIGALRM)p
+Fs(,)f Fr(SIGTSTP)p Fs(,)h Fr(SIGTTIN)p Fs(,)f(and)i
+Fr(SIGTTOU)p Fs(.)390 3631 y(The)g(default)g(v)-5 b(alue)31
+b(of)g Fr(rl_catch_signals)26 b Fs(is)k(1.)3371 3846
+y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_catch_sigwinch)390
+3955 y Fs(If)37 b(this)h(v)-5 b(ariable)38 b(is)g(set)g(to)g(a)g
+(non-zero)g(v)-5 b(alue,)40 b(Readline)f(will)f(install)g(a)g(signal)g
+(handler)f(for)390 4065 y Fr(SIGWINCH)p Fs(.)390 4214
+y(The)30 b(default)g(v)-5 b(alue)31 b(of)g Fr(rl_catch_sigwinch)25
+b Fs(is)31 b(1.)3371 4428 y([V)-8 b(ariable])-3598 b
+Fg(int)53 b(rl_change_environment)390 4538 y Fs(If)31
+b(this)g(v)-5 b(ariable)32 b(is)f(set)h(to)g(a)g(non-zero)g(v)-5
+b(alue,)32 b(and)f(Readline)h(is)f(handling)g Fr(SIGWINCH)p
+Fs(,)e(Read-)390 4648 y(line)h(will)h(mo)s(dify)e(the)h
+Fi(LINES)35 b Fs(and)29 b Fi(COLUMNS)35 b Fs(en)m(vironmen)m(t)30
+b(v)-5 b(ariables)31 b(up)s(on)d(receipt)j(of)g(a)390
+4757 y Fr(SIGWINCH)390 4907 y Fs(The)f(default)g(v)-5
+b(alue)31 b(of)g Fr(rl_change_environment)24 b Fs(is)31
+b(1.)275 5121 y(If)f(an)h(application)h(do)s(es)f(not)g(wish)f(to)i(ha)
+m(v)m(e)g(Readline)g(catc)m(h)g(an)m(y)f(signals,)h(or)f(to)h(handle)e
+(signals)150 5230 y(other)39 b(than)f(those)h(Readline)h(catc)m(hes)g
+(\()p Fr(SIGHUP)p Fs(,)g(for)e(example\),)k(Readline)d(pro)m(vides)g
+(con)m(v)m(enience)150 5340 y(functions)30 b(to)h(do)f(the)h(necessary)
+g(terminal)g(and)e(in)m(ternal)i(state)h(clean)m(up)f(up)s(on)e
+(receipt)i(of)g(a)f(signal.)p eop end
+%%Page: 45 49
+TeXDict begin 45 48 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(45)3350
+299 y([F)-8 b(unction])-3599 b Fg(void)54 b(rl_cleanup_after_signal)e
+Ff(\()p Fi(v)m(oid)p Ff(\))390 408 y Fs(This)33 b(function)h(will)g
+(reset)g(the)g(state)i(of)e(the)g(terminal)g(to)h(what)f(it)g(w)m(as)g
+(b)s(efore)g Fr(readline\(\))390 518 y Fs(w)m(as)c(called,)h(and)d
+(remo)m(v)m(e)j(the)f(Readline)g(signal)g(handlers)e(for)h(all)h
+(signals,)h(dep)s(ending)d(on)h(the)390 628 y(v)-5 b(alues)31
+b(of)f Fr(rl_catch_signals)c Fs(and)k Fr(rl_catch_sigwinch)p
+Fs(.)3350 799 y([F)-8 b(unction])-3599 b Fg(void)54 b
+(rl_free_line_state)c Ff(\()p Fi(v)m(oid)p Ff(\))390
+909 y Fs(This)38 b(will)i(free)f(an)m(y)h(partial)g(state)g(asso)s
(ciated)h(with)e(the)g(curren)m(t)g(input)f(line)i(\(undo)e(infor-)390
-2487 y(mation,)46 b(an)m(y)d(partial)h(history)e(en)m(try)-8
+1019 y(mation,)46 b(an)m(y)d(partial)h(history)e(en)m(try)-8
b(,)47 b(an)m(y)42 b(partially-en)m(tered)j(k)m(eyb)s(oard)d(macro,)47
-b(and)42 b(an)m(y)390 2597 y(partially-en)m(tered)50
+b(and)42 b(an)m(y)390 1128 y(partially-en)m(tered)50
b(n)m(umeric)d(argumen)m(t\).)94 b(This)47 b(should)g(b)s(e)g(called)i
-(b)s(efore)e Fr(rl_cleanup_)390 2706 y(after_signal\(\))p
+(b)s(efore)e Fr(rl_cleanup_)390 1238 y(after_signal\(\))p
Fs(.)74 b(The)42 b(Readline)h(signal)g(handler)f(for)h
Fr(SIGINT)e Fs(calls)i(this)g(to)g(ab)s(ort)g(the)390
-2816 y(curren)m(t)30 b(input)g(line.)3350 3017 y([F)-8
+1347 y(curren)m(t)30 b(input)g(line.)3350 1519 y([F)-8
b(unction])-3599 b Fg(void)54 b(rl_reset_after_signal)d
-Ff(\()p Fi(v)m(oid)p Ff(\))390 3127 y Fs(This)28 b(will)g(reinitialize)
+Ff(\()p Fi(v)m(oid)p Ff(\))390 1629 y Fs(This)28 b(will)g(reinitialize)
j(the)e(terminal)g(and)f(reinstall)h(an)m(y)g(Readline)g(signal)g
-(handlers,)f(dep)s(end-)390 3236 y(ing)j(on)f(the)g(v)-5
+(handlers,)f(dep)s(end-)390 1738 y(ing)j(on)f(the)g(v)-5
b(alues)31 b(of)g Fr(rl_catch_signals)26 b Fs(and)j Fr
-(rl_catch_sigwinch)p Fs(.)275 3438 y(If)38 b(an)i(application)g(do)s
+(rl_catch_sigwinch)p Fs(.)275 1910 y(If)38 b(an)i(application)g(do)s
(es)f(not)h(wish)f(Readline)h(to)g(catc)m(h)h Fr(SIGWINCH)p
-Fs(,)e(it)h(ma)m(y)g(call)h Fr(rl_resize_)150 3548 y(terminal\(\))24
+Fs(,)e(it)h(ma)m(y)g(call)h Fr(rl_resize_)150 2020 y(terminal\(\))24
b Fs(or)j Fr(rl_set_screen_size\(\))22 b Fs(to)28 b(force)g(Readline)f
(to)h(up)s(date)f(its)g(idea)h(of)f(the)g(terminal)150
-3657 y(size)k(when)f(a)g Fr(SIGWINCH)e Fs(is)j(receiv)m(ed.)3350
-3859 y([F)-8 b(unction])-3599 b Fg(void)54 b(rl_echo_signal_char)d
-Ff(\()p Fi(in)m(t)31 b(sig)p Ff(\))390 3968 y Fs(If)43
+2129 y(size)k(when)f(a)g Fr(SIGWINCH)e Fs(is)j(receiv)m(ed.)3350
+2301 y([F)-8 b(unction])-3599 b Fg(void)54 b(rl_echo_signal_char)d
+Ff(\()p Fi(in)m(t)31 b(sig)p Ff(\))390 2411 y Fs(If)43
b(an)g(application)i(wishes)e(to)i(install)f(its)g(o)m(wn)f(signal)i
(handlers,)h(but)c(still)j(ha)m(v)m(e)g(readline)390
-4078 y(displa)m(y)31 b(c)m(haracters)h(that)f(generate)h(signals,)f
+2520 y(displa)m(y)31 b(c)m(haracters)h(that)f(generate)h(signals,)f
(calling)h(this)e(function)g(with)g Fi(sig)39 b Fs(set)31
-b(to)g Fr(SIGINT)p Fs(,)390 4187 y Fr(SIGQUIT)p Fs(,)e(or)h
+b(to)g Fr(SIGINT)p Fs(,)390 2630 y Fr(SIGQUIT)p Fs(,)e(or)h
Fr(SIGTSTP)e Fs(will)j(displa)m(y)g(the)f(c)m(haracter)i(generating)g
-(that)f(signal.)3350 4389 y([F)-8 b(unction])-3599 b
+(that)f(signal.)3350 2802 y([F)-8 b(unction])-3599 b
Fg(void)54 b(rl_resize_terminal)c Ff(\()p Fi(v)m(oid)p
-Ff(\))390 4499 y Fs(Up)s(date)30 b(Readline's)h(in)m(ternal)g(screen)g
+Ff(\))390 2911 y Fs(Up)s(date)30 b(Readline's)h(in)m(ternal)g(screen)g
(size)g(b)m(y)f(reading)h(v)-5 b(alues)31 b(from)f(the)g(k)m(ernel.)
-3350 4700 y([F)-8 b(unction])-3599 b Fg(void)54 b(rl_set_screen_size)c
+3350 3083 y([F)-8 b(unction])-3599 b Fg(void)54 b(rl_set_screen_size)c
Ff(\()p Fi(in)m(t)32 b(ro)m(ws,)e(in)m(t)h(cols)p Ff(\))390
-4810 y Fs(Set)d(Readline's)h(idea)g(of)f(the)g(terminal)h(size)g(to)g
-Fi(ro)m(ws)j Fs(ro)m(ws)c(and)f Fi(cols)33 b Fs(columns.)40
-b(If)27 b(either)i Fi(ro)m(ws)390 4919 y Fs(or)35 b Fi(columns)k
+3193 y Fs(Set)d(Readline's)h(idea)f(of)g(the)g(terminal)g(size)h(to)g
+Fi(ro)m(ws)i Fs(ro)m(ws)d(and)f Fi(cols)33 b Fs(columns.)40
+b(If)27 b(either)h Fi(ro)m(ws)390 3302 y Fs(or)35 b Fi(columns)k
Fs(is)c(less)g(than)g(or)g(equal)h(to)g(0,)h(Readline's)f(idea)g(of)f
-(that)h(terminal)f(dimension)g(is)390 5029 y(unc)m(hanged.)275
-5230 y(If)d(an)i(application)g(do)s(es)f(not)h(w)m(an)m(t)g(to)g
+(that)h(terminal)f(dimension)g(is)390 3412 y(unc)m(hanged.)275
+3584 y(If)d(an)i(application)g(do)s(es)f(not)h(w)m(an)m(t)g(to)g
(install)g(a)g Fr(SIGWINCH)d Fs(handler,)j(but)e(is)i(still)g(in)m
-(terested)g(in)150 5340 y(the)d(screen)f(dimensions,)g(Readline's)h
-(idea)g(of)g(the)f(screen)h(size)g(ma)m(y)g(b)s(e)f(queried.)p
-eop end
-%%Page: 43 47
-TeXDict begin 43 46 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(43)3350
-299 y([F)-8 b(unction])-3599 b Fg(void)54 b(rl_get_screen_size)c
+(terested)g(in)150 3693 y(the)d(screen)f(dimensions,)g(Readline's)h
+(idea)g(of)g(the)f(screen)h(size)g(ma)m(y)g(b)s(e)f(queried.)3350
+3865 y([F)-8 b(unction])-3599 b Fg(void)54 b(rl_get_screen_size)c
Ff(\()p Fi(in)m(t)32 b(*ro)m(ws,)f(in)m(t)g(*cols)p Ff(\))390
-408 y Fs(Return)e(Readline's)i(idea)g(of)f(the)g(terminal's)h(size)g
+3975 y Fs(Return)e(Readline's)i(idea)g(of)f(the)g(terminal's)h(size)g
(in)f(the)g(v)-5 b(ariables)31 b(p)s(oin)m(ted)f(to)g(b)m(y)g(the)h
-(argu-)390 518 y(men)m(ts.)3350 696 y([F)-8 b(unction])-3599
+(argu-)390 4084 y(men)m(ts.)3350 4256 y([F)-8 b(unction])-3599
b Fg(void)54 b(rl_reset_screen_size)d Ff(\()p Fi(v)m(oid)p
-Ff(\))390 806 y Fs(Cause)30 b(Readline)h(to)g(reobtain)g(the)g(screen)f
-(size)h(and)f(recalculate)j(its)e(dimensions.)275 984
+Ff(\))390 4366 y Fs(Cause)30 b(Readline)h(to)g(reobtain)g(the)g(screen)
+f(size)h(and)f(recalculate)j(its)e(dimensions.)275 4538
y(The)e(follo)m(wing)j(functions)e(install)h(and)f(remo)m(v)m(e)i
-(Readline's)f(signal)g(handlers.)3350 1162 y([F)-8 b(unction])-3599
+(Readline's)f(signal)g(handlers.)3350 4710 y([F)-8 b(unction])-3599
b Fg(int)53 b(rl_set_signals)d Ff(\()p Fi(v)m(oid)p Ff(\))390
-1272 y Fs(Install)36 b(Readline's)f(signal)h(handler)e(for)h
-Fr(SIGINT)p Fs(,)g Fr(SIGQUIT)p Fs(,)g Fr(SIGTERM)p Fs(,)f
-Fr(SIGALRM)p Fs(,)h Fr(SIGTSTP)p Fs(,)390 1381 y Fr(SIGTTIN)p
-Fs(,)23 b Fr(SIGTTOU)p Fs(,)g(and)f Fr(SIGWINCH)p Fs(,)h(dep)s(ending)f
-(on)h(the)g(v)-5 b(alues)23 b(of)h Fr(rl_catch_signals)19
-b Fs(and)390 1491 y Fr(rl_catch_sigwinch)p Fs(.)3350
-1669 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_clear_signals)e
-Ff(\()p Fi(v)m(oid)p Ff(\))390 1779 y Fs(Remo)m(v)m(e)32
-b(all)f(of)g(the)g(Readline)g(signal)g(handlers)e(installed)i(b)m(y)f
-Fr(rl_set_signals\(\))p Fs(.)150 2007 y Fq(2.6)68 b(Custom)45
-b(Completers)150 2167 y Fs(T)m(ypically)-8 b(,)47 b(a)c(program)g(that)
-g(reads)f(commands)h(from)f(the)g(user)g(has)h(a)g(w)m(a)m(y)g(of)g
-(disam)m(biguating)150 2276 y(commands)35 b(and)g(data.)56
-b(If)35 b(y)m(our)h(program)f(is)g(one)h(of)g(these,)h(then)e(it)h(can)
-g(pro)m(vide)f(completion)i(for)150 2386 y(commands,)29
-b(data,)i(or)e(b)s(oth.)39 b(The)29 b(follo)m(wing)i(sections)f
-(describ)s(e)e(ho)m(w)i(y)m(our)f(program)g(and)f(Readline)150
-2495 y(co)s(op)s(erate)j(to)h(pro)m(vide)e(this)g(service.)150
-2691 y Fh(2.6.1)63 b(Ho)m(w)40 b(Completing)i(W)-10 b(orks)150
-2838 y Fs(In)26 b(order)f(to)i(complete)h(some)f(text,)h(the)f(full)f
-(list)h(of)f(p)s(ossible)g(completions)h(m)m(ust)g(b)s(e)e(a)m(v)-5
-b(ailable.)42 b(That)150 2947 y(is,)28 b(it)f(is)g(not)g(p)s(ossible)g
-(to)g(accurately)i(expand)d(a)h(partial)h(w)m(ord)f(without)f(kno)m
-(wing)i(all)f(of)g(the)g(p)s(ossible)150 3057 y(w)m(ords)33
+4819 y Fs(Install)40 b(Readline's)h(signal)f(handler)f(for)h
+Fr(SIGINT)p Fs(,)h Fr(SIGQUIT)p Fs(,)f Fr(SIGTERM)p Fs(,)h
+Fr(SIGHUP)p Fs(,)g Fr(SIGALRM)p Fs(,)390 4929 y Fr(SIGTSTP)p
+Fs(,)35 b Fr(SIGTTIN)p Fs(,)f Fr(SIGTTOU)p Fs(,)h(and)g
+Fr(SIGWINCH)p Fs(,)f(dep)s(ending)g(on)h(the)g(v)-5 b(alues)36
+b(of)f Fr(rl_catch_)390 5038 y(signals)28 b Fs(and)i
+Fr(rl_catch_sigwinch)p Fs(.)3350 5210 y([F)-8 b(unction])-3599
+b Fg(int)53 b(rl_clear_signals)e Ff(\()p Fi(v)m(oid)p
+Ff(\))390 5320 y Fs(Remo)m(v)m(e)32 b(all)f(of)g(the)g(Readline)g
+(signal)g(handlers)e(installed)i(b)m(y)f Fr(rl_set_signals\(\))p
+Fs(.)p eop end
+%%Page: 46 50
+TeXDict begin 46 49 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(46)150
+299 y Fq(2.6)68 b(Custom)45 b(Completers)150 458 y Fs(T)m(ypically)-8
+b(,)47 b(a)c(program)g(that)g(reads)f(commands)h(from)f(the)g(user)g
+(has)h(a)g(w)m(a)m(y)g(of)g(disam)m(biguating)150 568
+y(commands)35 b(and)g(data.)56 b(If)35 b(y)m(our)h(program)f(is)g(one)h
+(of)g(these,)h(then)e(it)h(can)g(pro)m(vide)f(completion)i(for)150
+677 y(commands,)29 b(data,)i(or)e(b)s(oth.)39 b(The)29
+b(follo)m(wing)i(sections)f(describ)s(e)e(ho)m(w)i(y)m(our)f(program)g
+(and)f(Readline)150 787 y(co)s(op)s(erate)j(to)h(pro)m(vide)e(this)g
+(service.)150 970 y Fh(2.6.1)63 b(Ho)m(w)40 b(Completing)i(W)-10
+b(orks)150 1117 y Fs(In)26 b(order)f(to)i(complete)h(some)f(text,)h
+(the)f(full)f(list)h(of)f(p)s(ossible)g(completions)h(m)m(ust)g(b)s(e)e
+(a)m(v)-5 b(ailable.)42 b(That)150 1227 y(is,)28 b(it)f(is)g(not)g(p)s
+(ossible)g(to)g(accurately)i(expand)d(a)h(partial)h(w)m(ord)f(without)f
+(kno)m(wing)i(all)f(of)g(the)g(p)s(ossible)150 1336 y(w)m(ords)33
b(whic)m(h)g(mak)m(e)h(sense)f(in)g(that)g(con)m(text.)51
b(The)33 b(Readline)h(library)e(pro)m(vides)i(the)f(user)f(in)m
-(terface)150 3166 y(to)d(completion,)h(and)e(t)m(w)m(o)i(of)e(the)h
+(terface)150 1446 y(to)d(completion,)h(and)e(t)m(w)m(o)i(of)e(the)h
(most)f(common)h(completion)h(functions:)39 b(\014lename)29
-b(and)e(username.)150 3276 y(F)-8 b(or)39 b(completing)g(other)f(t)m
+b(and)e(username.)150 1555 y(F)-8 b(or)39 b(completing)g(other)f(t)m
(yp)s(es)g(of)h(text,)i(y)m(ou)d(m)m(ust)g(write)g(y)m(our)g(o)m(wn)g
-(completion)h(function.)64 b(This)150 3385 y(section)32
+(completion)h(function.)64 b(This)150 1665 y(section)32
b(describ)s(es)d(exactly)j(what)f(suc)m(h)f(functions)g(m)m(ust)g(do,)g
-(and)g(pro)m(vides)g(an)h(example.)275 3518 y(There)e(are)i(three)g(ma)
+(and)g(pro)m(vides)g(an)h(example.)275 1791 y(There)e(are)i(three)g(ma)
5 b(jor)30 b(functions)g(used)g(to)h(p)s(erform)e(completion:)199
-3650 y(1.)61 b(The)43 b(user-in)m(terface)h(function)f
+1918 y(1.)61 b(The)43 b(user-in)m(terface)h(function)f
Fr(rl_complete\(\))p Fs(.)76 b(This)43 b(function)g(is)g(called)i(with)
-e(the)h(same)330 3760 y(argumen)m(ts)35 b(as)h(other)f(bindable)f
-(Readline)i(functions:)49 b Fi(coun)m(t)38 b Fs(and)c
-Fi(in)m(v)m(oking)p 3101 3760 28 4 v 42 w(k)m(ey)8 b
-Fs(.)55 b(It)35 b(isolates)330 3870 y(the)j(w)m(ord)f(to)h(b)s(e)f
-(completed)i(and)d(calls)j Fr(rl_completion_matches\(\))31
-b Fs(to)39 b(generate)g(a)f(list)g(of)330 3979 y(p)s(ossible)31
+e(the)h(same)330 2027 y(argumen)m(ts)36 b(as)g(other)g(bindable)f
+(Readline)h(functions:)51 b Fi(coun)m(t)38 b Fs(and)d
+Fi(in)m(v)m(oking)p 3107 2027 28 4 v 41 w(k)m(ey)p Fs(.)57
+b(It)36 b(isolates)330 2137 y(the)i(w)m(ord)f(to)h(b)s(e)f(completed)i
+(and)d(calls)j Fr(rl_completion_matches\(\))31 b Fs(to)39
+b(generate)g(a)f(list)g(of)330 2247 y(p)s(ossible)31
b(completions.)44 b(It)31 b(then)g(either)g(lists)h(the)f(p)s(ossible)g
-(completions,)h(inserts)f(the)g(p)s(ossible)330 4089
+(completions,)h(inserts)f(the)g(p)s(ossible)330 2356
y(completions,)50 b(or)45 b(actually)i(p)s(erforms)d(the)h(completion,)
50 b(dep)s(ending)44 b(on)h(whic)m(h)g(b)s(eha)m(vior)g(is)330
-4198 y(desired.)199 4331 y(2.)61 b(The)33 b(in)m(ternal)h(function)g
+2466 y(desired.)199 2592 y(2.)61 b(The)33 b(in)m(ternal)h(function)g
Fr(rl_completion_matches\(\))27 b Fs(uses)33 b(an)g
-(application-supplied)h Fi(gener-)330 4440 y(ator)44
+(application-supplied)h Fi(gener-)330 2702 y(ator)44
b Fs(function)37 b(to)h(generate)g(the)f(list)h(of)f(p)s(ossible)f
(matc)m(hes,)k(and)d(then)f(returns)g(the)h(arra)m(y)h(of)330
-4550 y(these)h(matc)m(hes.)68 b(The)39 b(caller)h(should)e(place)i(the)
+2811 y(these)h(matc)m(hes.)68 b(The)39 b(caller)h(should)e(place)i(the)
f(address)f(of)h(its)g(generator)i(function)d(in)h Fr(rl_)330
-4660 y(completion_entry_functio)o(n)p Fs(.)199 4792 y(3.)61
+2921 y(completion_entry_functio)o(n)p Fs(.)199 3047 y(3.)61
b(The)22 b(generator)i(function)f(is)g(called)h(rep)s(eatedly)f(from)g
-Fr(rl_completion_matches\(\))o Fs(,)c(returning)330 4902
-y(a)33 b(string)f(eac)m(h)i(time.)48 b(The)32 b(argumen)m(ts)h(to)g
-(the)g(generator)h(function)e(are)h Fi(text)i Fs(and)d
-Fi(state)5 b Fs(.)49 b Fi(text)330 5011 y Fs(is)32 b(the)g(partial)h(w)
-m(ord)f(to)h(b)s(e)e(completed.)47 b Fi(state)38 b Fs(is)32
+Fr(rl_completion_matches\(\))o Fs(,)c(returning)330 3157
+y(a)33 b(string)g(eac)m(h)h(time.)48 b(The)32 b(argumen)m(ts)h(to)h
+(the)f(generator)h(function)e(are)h Fi(text)j Fs(and)c
+Fi(state)p Fs(.)49 b Fi(text)330 3267 y Fs(is)32 b(the)g(partial)h(w)m
+(ord)f(to)h(b)s(e)e(completed.)47 b Fi(state)38 b Fs(is)32
b(zero)h(the)f(\014rst)g(time)g(the)h(function)e(is)h(called,)330
-5121 y(allo)m(wing)46 b(the)e(generator)h(to)f(p)s(erform)f(an)m(y)h
+3376 y(allo)m(wing)46 b(the)e(generator)h(to)f(p)s(erform)f(an)m(y)h
(necessary)g(initialization,)51 b(and)43 b(a)h(p)s(ositiv)m(e)h(non-)
-330 5230 y(zero)30 b(in)m(teger)h(for)d(eac)m(h)j(subsequen)m(t)d
+330 3486 y(zero)30 b(in)m(teger)h(for)d(eac)m(h)j(subsequen)m(t)d
(call.)42 b(The)29 b(generator)h(function)f(returns)f
-Fr(\(char)h(*\)NULL)e Fs(to)330 5340 y(inform)37 b Fr
+Fr(\(char)h(*\)NULL)e Fs(to)330 3595 y(inform)37 b Fr
(rl_completion_matches\(\))32 b Fs(that)39 b(there)f(are)g(no)g(more)g
-(p)s(ossibilities)h(left.)65 b(Usually)p eop end
-%%Page: 44 48
-TeXDict begin 44 47 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(44)330
-299 y(the)39 b(generator)h(function)e(computes)h(the)g(list)g(of)g(p)s
-(ossible)f(completions)i(when)e Fi(state)45 b Fs(is)39
-b(zero,)330 408 y(and)25 b(returns)f(them)i(one)f(at)i(a)f(time)g(on)f
-(subsequen)m(t)g(calls.)40 b(Eac)m(h)26 b(string)g(the)g(generator)g
-(function)330 518 y(returns)31 b(as)h(a)g(matc)m(h)h(m)m(ust)f(b)s(e)f
-(allo)s(cated)j(with)d Fr(malloc\(\))p Fs(;)g(Readline)h(frees)g(the)g
-(strings)g(when)330 628 y(it)i(has)g(\014nished)e(with)i(them.)51
+(p)s(ossibilities)h(left.)65 b(Usually)330 3705 y(the)39
+b(generator)h(function)e(computes)h(the)g(list)g(of)g(p)s(ossible)f
+(completions)i(when)e Fi(state)45 b Fs(is)39 b(zero,)330
+3814 y(and)25 b(returns)f(them)i(one)f(at)i(a)f(time)g(on)f(subsequen)m
+(t)g(calls.)40 b(Eac)m(h)26 b(string)g(the)g(generator)g(function)330
+3924 y(returns)31 b(as)h(a)g(matc)m(h)h(m)m(ust)f(b)s(e)f(allo)s(cated)
+j(with)d Fr(malloc\(\))p Fs(;)g(Readline)h(frees)g(the)g(strings)g
+(when)330 4034 y(it)i(has)g(\014nished)e(with)i(them.)51
b(Suc)m(h)33 b(a)h(generator)h(function)f(is)g(referred)f(to)h(as)h(an)
-e Fi(application-)330 737 y(sp)s(eci\014c)d(completion)i(function)p
-Fs(.)3350 923 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_complete)c
+e Fi(application-)330 4143 y(sp)s(eci\014c)d(completion)i(function)p
+Fs(.)3350 4303 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_complete)c
Ff(\()p Fi(in)m(t)31 b(ignore,)g(in)m(t)g(in)m(v)m(oking)p
-1929 923 28 4 v 42 w(k)m(ey)p Ff(\))390 1032 y Fs(Complete)g(the)g(w)m
-(ord)g(at)g(or)g(b)s(efore)f(p)s(oin)m(t.)41 b(Y)-8 b(ou)32
+1929 4303 V 42 w(k)m(ey)p Ff(\))390 4413 y Fs(Complete)g(the)g(w)m(ord)
+g(at)g(or)g(b)s(efore)f(p)s(oin)m(t.)41 b(Y)-8 b(ou)32
b(ha)m(v)m(e)g(supplied)d(the)i(function)f(that)h(do)s(es)g(the)390
-1142 y(initial)42 b(simple)f(matc)m(hing)i(selection)f(algorithm)h
+4522 y(initial)42 b(simple)f(matc)m(hing)i(selection)f(algorithm)h
(\(see)f Fr(rl_completion_matches\(\))o Fs(\).)67 b(The)390
-1251 y(default)31 b(is)f(to)h(do)f(\014lename)h(completion.)3371
-1437 y([V)-8 b(ariable])-3598 b Fg(rl_compentry_func_t)58
-b(*)53 b(rl_completion_entry_fun)q(cti)q(on)390 1546
+4632 y(default)31 b(is)f(to)h(do)f(\014lename)h(completion.)3371
+4792 y([V)-8 b(ariable])-3598 b Fg(rl_compentry_func_t)58
+b(*)53 b(rl_completion_entry_fun)q(cti)q(on)390 4902
y Fs(This)39 b(is)h(a)g(p)s(oin)m(ter)g(to)h(the)f(generator)h
(function)f(for)f Fr(rl_completion_matches\(\))p Fs(.)63
-b(If)40 b(the)390 1656 y(v)-5 b(alue)24 b(of)g Fr
+b(If)40 b(the)390 5011 y(v)-5 b(alue)24 b(of)g Fr
(rl_completion_entry_funct)o(ion)17 b Fs(is)24 b Fr(NULL)f
Fs(then)g(the)h(default)g(\014lename)g(generator)390
-1765 y(function,)49 b Fr(rl_filename_completion_)o(fun)o(ctio)o(n\(\))p
+5121 y(function,)49 b Fr(rl_filename_completion_)o(fun)o(ctio)o(n\(\))p
Fs(,)42 b(is)j(used.)84 b(An)44 b Fi(application-sp)s(eci\014c)390
-1875 y(completion)22 b(function)f Fs(is)g(a)h(function)e(whose)h
+5230 y(completion)22 b(function)f Fs(is)g(a)h(function)e(whose)h
(address)f(is)h(assigned)h(to)f Fr(rl_completion_entry_)390
-1985 y(function)28 b Fs(and)i(whose)g(return)f(v)-5 b(alues)31
-b(are)g(used)e(to)j(generate)f(p)s(ossible)f(completions.)150
-2184 y Fh(2.6.2)63 b(Completion)41 b(F)-10 b(unctions)150
-2331 y Fs(Here)31 b(is)f(the)h(complete)h(list)f(of)f(callable)j
+5340 y(function)28 b Fs(and)i(whose)g(return)f(v)-5 b(alues)31
+b(are)g(used)e(to)j(generate)f(p)s(ossible)f(completions.)p
+eop end
+%%Page: 47 51
+TeXDict begin 47 50 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(47)150
+299 y Fh(2.6.2)63 b(Completion)41 b(F)-10 b(unctions)150
+446 y Fs(Here)31 b(is)f(the)h(complete)h(list)f(of)f(callable)j
(completion)e(functions)f(presen)m(t)h(in)f(Readline.)3350
-2517 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_complete_internal)f
-Ff(\()p Fi(in)m(t)31 b(what)p 1828 2517 V 40 w(to)p 1948
-2517 V 41 w(do)p Ff(\))390 2626 y Fs(Complete)37 b(the)g(w)m(ord)f(at)i
-(or)e(b)s(efore)g(p)s(oin)m(t.)60 b Fi(what)p 2208 2626
-V 40 w(to)p 2328 2626 V 41 w(do)41 b Fs(sa)m(ys)c(what)f(to)i(do)e
-(with)g(the)h(com-)390 2736 y(pletion.)44 b(A)31 b(v)-5
+640 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_complete_internal)f
+Ff(\()p Fi(in)m(t)31 b(what)p 1828 640 28 4 v 40 w(to)p
+1948 640 V 41 w(do)p Ff(\))390 749 y Fs(Complete)37 b(the)g(w)m(ord)f
+(at)i(or)e(b)s(efore)g(p)s(oin)m(t.)60 b Fi(what)p 2208
+749 V 40 w(to)p 2328 749 V 41 w(do)41 b Fs(sa)m(ys)c(what)f(to)i(do)e
+(with)g(the)h(com-)390 859 y(pletion.)44 b(A)31 b(v)-5
b(alue)32 b(of)f(`)p Fr(?)p Fs(')g(means)h(list)f(the)h(p)s(ossible)e
(completions.)45 b(`)p Fr(TAB)p Fs(')31 b(means)g(do)g(standard)390
-2845 y(completion.)44 b(`)p Fr(*)p Fs(')32 b(means)f(insert)g(all)h(of)
-f(the)g(p)s(ossible)g(completions.)44 b(`)p Fr(!)p Fs(')32
-b(means)f(to)h(displa)m(y)f(all)390 2955 y(of)k(the)f(p)s(ossible)g
+969 y(completion.)44 b(`)p Fr(*)p Fs(')32 b(means)f(insert)g(all)h(of)f
+(the)g(p)s(ossible)g(completions.)44 b(`)p Fr(!)p Fs(')32
+b(means)f(to)h(displa)m(y)f(all)390 1078 y(of)k(the)f(p)s(ossible)g
(completions,)j(if)d(there)h(is)f(more)g(than)h(one,)g(as)g(w)m(ell)g
-(as)g(p)s(erforming)e(partial)390 3065 y(completion.)41
+(as)g(p)s(erforming)e(partial)390 1188 y(completion.)41
b(`)p Fr(@)p Fs(')27 b(is)h(similar)f(to)h(`)p Fr(!)p
Fs(',)h(but)d(p)s(ossible)h(completions)i(are)e(not)h(listed)g(if)f
-(the)g(p)s(ossible)390 3174 y(completions)32 b(share)e(a)g(common)h
-(pre\014x.)3350 3359 y([F)-8 b(unction])-3599 b Fg(int)53
+(the)g(p)s(ossible)390 1297 y(completions)32 b(share)e(a)g(common)h
+(pre\014x.)3350 1491 y([F)-8 b(unction])-3599 b Fg(int)53
b(rl_complete)c Ff(\()p Fi(in)m(t)31 b(ignore,)g(in)m(t)g(in)m(v)m
-(oking)p 1929 3359 V 42 w(k)m(ey)p Ff(\))390 3469 y Fs(Complete)42
+(oking)p 1929 1491 V 42 w(k)m(ey)p Ff(\))390 1601 y Fs(Complete)42
b(the)f(w)m(ord)g(at)h(or)f(b)s(efore)g(p)s(oin)m(t.)73
b(Y)-8 b(ou)41 b(ha)m(v)m(e)i(supplied)c(the)j(function)f(that)g(do)s
-(es)390 3579 y(the)33 b(initial)h(simple)f(matc)m(hing)h(selection)h
+(es)390 1710 y(the)33 b(initial)h(simple)f(matc)m(hing)h(selection)h
(algorithm)f(\(see)g Fr(rl_completion_matches\(\))27
-b Fs(and)390 3688 y Fr(rl_completion_entry_func)o(tion)o
+b Fs(and)390 1820 y Fr(rl_completion_entry_func)o(tion)o
Fs(\).)52 b(The)35 b(default)h(is)g(to)h(do)e(\014lename)h(completion.)
-59 b(This)390 3798 y(calls)32 b Fr(rl_complete_internal\(\))24
+59 b(This)390 1930 y(calls)32 b Fr(rl_complete_internal\(\))24
b Fs(with)30 b(an)g(argumen)m(t)h(dep)s(ending)e(on)h
-Fi(in)m(v)m(oking)p 3314 3798 V 41 w(k)m(ey)8 b Fs(.)3350
-3983 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_possible_completio)q(ns)
+Fi(in)m(v)m(oking)p 3314 1930 V 41 w(k)m(ey)p Fs(.)3350
+2124 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_possible_completio)q(ns)
f Ff(\()p Fi(in)m(t)31 b(coun)m(t,)g(in)m(t)g(in)m(v)m(oking)p
-2534 3983 V 41 w(k)m(ey)p Ff(\))390 4093 y Fs(List)41
+2534 2124 V 41 w(k)m(ey)p Ff(\))390 2233 y Fs(List)41
b(the)f(p)s(ossible)g(completions.)73 b(See)40 b(description)h(of)g
Fr(rl_complete)27 b(\(\))p Fs(.)70 b(This)40 b(calls)i
-Fr(rl_)390 4202 y(complete_internal\(\))25 b Fs(with)30
-b(an)g(argumen)m(t)h(of)g(`)p Fr(?)p Fs('.)3350 4388
+Fr(rl_)390 2343 y(complete_internal\(\))25 b Fs(with)30
+b(an)g(argumen)m(t)h(of)g(`)p Fr(?)p Fs('.)3350 2537
y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_insert_completions)f
Ff(\()p Fi(in)m(t)31 b(coun)m(t,)h(in)m(t)e(in)m(v)m(oking)p
-2429 4388 V 42 w(k)m(ey)p Ff(\))390 4497 y Fs(Insert)j(the)h(list)g(of)
+2429 2537 V 42 w(k)m(ey)p Ff(\))390 2646 y Fs(Insert)j(the)h(list)g(of)
g(p)s(ossible)f(completions)i(in)m(to)f(the)g(line,)h(deleting)g(the)f
-(partially-completed)390 4607 y(w)m(ord.)44 b(See)32
+(partially-completed)390 2756 y(w)m(ord.)44 b(See)32
b(description)g(of)g Fr(rl_complete\(\))p Fs(.)41 b(This)31
b(calls)i Fr(rl_complete_internal\(\))25 b Fs(with)390
-4716 y(an)30 b(argumen)m(t)h(of)g(`)p Fr(*)p Fs('.)3350
-4902 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_completion_mode)e
-Ff(\()p Fi(rl)p 1448 4902 V 40 w(command)p 1872 4902
-V 40 w(func)p 2082 4902 V 39 w(t)31 b(*cfunc)p Ff(\))390
-5011 y Fs(Returns)50 b(the)g(apppriate)h(v)-5 b(alue)50
-b(to)i(pass)e(to)h Fr(rl_complete_internal\(\))44 b Fs(dep)s(ending)49
-b(on)390 5121 y(whether)40 b Fi(cfunc)46 b Fs(w)m(as)41
+2865 y(an)30 b(argumen)m(t)h(of)g(`)p Fr(*)p Fs('.)3350
+3059 y([F)-8 b(unction])-3599 b Fg(int)53 b(rl_completion_mode)e
+Ff(\()p Fi(rl)p 1448 3059 V 40 w(command)p 1872 3059
+V 40 w(func)p 2082 3059 V 39 w(t)31 b(*cfunc)p Ff(\))390
+3169 y Fs(Returns)40 b(the)i(appropriate)g(v)-5 b(alue)41
+b(to)i(pass)e(to)h Fr(rl_complete_internal\(\))35 b Fs(dep)s(ending)40
+b(on)390 3279 y(whether)g Fi(cfunc)46 b Fs(w)m(as)41
b(called)h(t)m(wice)g(in)f(succession)g(and)f(the)h(v)-5
-b(alues)41 b(of)g(the)g Fr(show-all-if-)390 5230 y(ambiguous)25
+b(alues)41 b(of)g(the)g Fr(show-all-if-)390 3388 y(ambiguous)25
b Fs(and)i Fr(show-all-if-unmodified)21 b Fs(v)-5 b(ariables.)41
-b(Application-sp)s(eci\014c)29 b(completion)390 5340
+b(Application-sp)s(eci\014c)29 b(completion)390 3498
y(functions)h(ma)m(y)h(use)f(this)g(function)g(to)h(presen)m(t)g(the)f
-(same)h(in)m(terface)h(as)f Fr(rl_complete\(\))p Fs(.)p
-eop end
-%%Page: 45 49
-TeXDict begin 45 48 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(45)3350
-299 y([F)-8 b(unction])-3599 b Fg(char)54 b(**)e(rl_completion_matches)
-g Ff(\()p Fi(const)31 b(c)m(har)g(*text,)565 408 y(rl)p
-632 408 28 4 v 40 w(comp)s(en)m(try)p 1094 408 V 40 w(func)p
-1304 408 V 39 w(t)g(*en)m(try)p 1661 408 V 41 w(func)p
-Ff(\))390 518 y Fs(Returns)37 b(an)g(arra)m(y)i(of)f(strings)f(whic)m
-(h)h(is)f(a)h(list)h(of)f(completions)g(for)g Fi(text)r
-Fs(.)64 b(If)37 b(there)h(are)g(no)390 628 y(completions,)f(returns)c
-Fr(NULL)p Fs(.)52 b(The)34 b(\014rst)f(en)m(try)i(in)f(the)h(returned)e
-(arra)m(y)i(is)g(the)f(substitution)390 737 y(for)26
-b Fi(text)r Fs(.)40 b(The)26 b(remaining)g(en)m(tries)h(are)g(the)f(p)s
-(ossible)g(completions.)40 b(The)26 b(arra)m(y)g(is)g(terminated)390
-847 y(with)k(a)h Fr(NULL)e Fs(p)s(oin)m(ter.)390 986
-y Fi(en)m(try)p 603 986 V 40 w(func)44 b Fs(is)c(a)g(function)f(of)h(t)
-m(w)m(o)g(args,)j(and)38 b(returns)h(a)g Fr(char)30 b(*)p
-Fs(.)67 b(The)39 b(\014rst)g(argumen)m(t)h(is)390 1095
-y Fi(text)r Fs(.)66 b(The)38 b(second)h(is)f(a)h(state)h(argumen)m(t;)j
-(it)c(is)g(zero)g(on)g(the)f(\014rst)g(call,)k(and)c(non-zero)h(on)390
-1205 y(subsequen)m(t)33 b(calls.)52 b Fi(en)m(try)p 1320
-1205 V 41 w(func)38 b Fs(returns)33 b(a)h Fr(NULL)f Fs(p)s(oin)m(ter)g
-(to)i(the)f(caller)h(when)e(there)h(are)g(no)390 1314
-y(more)d(matc)m(hes.)3350 1507 y([F)-8 b(unction])-3599
+(same)h(in)m(terface)h(as)f Fr(rl_complete\(\))p Fs(.)3350
+3692 y([F)-8 b(unction])-3599 b Fg(char)54 b(**)e
+(rl_completion_matches)g Ff(\()p Fi(const)31 b(c)m(har)g(*text,)565
+3801 y(rl)p 632 3801 V 40 w(comp)s(en)m(try)p 1094 3801
+V 40 w(func)p 1304 3801 V 39 w(t)g(*en)m(try)p 1661 3801
+V 41 w(func)p Ff(\))390 3911 y Fs(Returns)37 b(an)h(arra)m(y)g(of)g
+(strings)g(whic)m(h)f(is)h(a)g(list)h(of)f(completions)h(for)e
+Fi(text)p Fs(.)64 b(If)38 b(there)g(are)g(no)390 4020
+y(completions,)f(returns)c Fr(NULL)p Fs(.)52 b(The)34
+b(\014rst)f(en)m(try)i(in)f(the)h(returned)e(arra)m(y)i(is)g(the)f
+(substitution)390 4130 y(for)26 b Fi(text)p Fs(.)40 b(The)26
+b(remaining)h(en)m(tries)g(are)g(the)f(p)s(ossible)g(completions.)40
+b(The)26 b(arra)m(y)h(is)f(terminated)390 4240 y(with)k(a)h
+Fr(NULL)e Fs(p)s(oin)m(ter.)390 4379 y Fi(en)m(try)p
+603 4379 V 40 w(func)44 b Fs(is)c(a)g(function)f(of)h(t)m(w)m(o)g
+(args,)j(and)38 b(returns)h(a)g Fr(char)30 b(*)p Fs(.)67
+b(The)39 b(\014rst)g(argumen)m(t)h(is)390 4489 y Fi(text)p
+Fs(.)66 b(The)39 b(second)f(is)h(a)g(state)h(argumen)m(t;)j(it)c(is)g
+(zero)g(on)g(the)g(\014rst)f(call,)k(and)c(non-zero)h(on)390
+4598 y(subsequen)m(t)33 b(calls.)52 b Fi(en)m(try)p 1320
+4598 V 41 w(func)38 b Fs(returns)33 b(a)h Fr(NULL)f Fs(p)s(oin)m(ter)g
+(to)i(the)f(caller)h(when)e(there)h(are)g(no)390 4708
+y(more)d(matc)m(hes.)3350 4902 y([F)-8 b(unction])-3599
b Fg(char)54 b(*)e(rl_filename_completion)q(_fu)q(nct)q(ion)g
-Ff(\()p Fi(const)31 b(c)m(har)g(*text,)h(in)m(t)565 1617
-y(state)p Ff(\))390 1726 y Fs(A)26 b(generator)h(function)e(for)g
+Ff(\()p Fi(const)31 b(c)m(har)g(*text,)h(in)m(t)565 5011
+y(state)p Ff(\))390 5121 y Fs(A)26 b(generator)h(function)e(for)g
(\014lename)h(completion)h(in)e(the)h(general)h(case.)40
-b Fi(text)28 b Fs(is)e(a)g(partial)h(\014le-)390 1836
+b Fi(text)28 b Fs(is)e(a)g(partial)h(\014le-)390 5230
y(name.)38 b(The)21 b(Bash)g(source)h(is)g(a)f(useful)g(reference)h
(for)f(writing)h(application-sp)s(eci\014c)h(completion)390
-1946 y(functions)30 b(\(the)h(Bash)f(completion)i(functions)e(call)i
-(this)e(and)g(other)g(Readline)h(functions\).)3350 2139
-y([F)-8 b(unction])-3599 b Fg(char)54 b(*)e(rl_username_completion)q
-(_fu)q(nct)q(ion)g Ff(\()p Fi(const)31 b(c)m(har)g(*text,)h(in)m(t)565
-2248 y(state)p Ff(\))390 2358 y Fs(A)d(completion)g(generator)h(for)e
+5340 y(functions)30 b(\(the)h(Bash)f(completion)i(functions)e(call)i
+(this)e(and)g(other)g(Readline)h(functions\).)p eop end
+%%Page: 48 52
+TeXDict begin 48 51 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(48)3350
+299 y([F)-8 b(unction])-3599 b Fg(char)54 b(*)e(rl_username_completion)
+q(_fu)q(nct)q(ion)g Ff(\()p Fi(const)31 b(c)m(har)g(*text,)h(in)m(t)565
+408 y(state)p Ff(\))390 518 y Fs(A)d(completion)g(generator)h(for)e
(usernames.)40 b Fi(text)31 b Fs(con)m(tains)f(a)f(partial)g(username)f
-(preceded)g(b)m(y)390 2467 y(a)j(random)f(c)m(haracter)i(\(usually)e(`)
-p Fr(~)p Fs('\).)42 b(As)31 b(with)f(all)h(completion)h(generators,)g
-Fi(state)37 b Fs(is)31 b(zero)g(on)390 2577 y(the)g(\014rst)e(call)j
-(and)e(non-zero)h(for)f(subsequen)m(t)f(calls.)150 2780
+(preceded)g(b)m(y)390 628 y(a)j(random)f(c)m(haracter)i(\(usually)e(`)p
+Fr(~)p Fs('\).)42 b(As)31 b(with)f(all)h(completion)h(generators,)g
+Fi(state)37 b Fs(is)31 b(zero)g(on)390 737 y(the)g(\014rst)e(call)j
+(and)e(non-zero)h(for)f(subsequen)m(t)f(calls.)150 955
y Fh(2.6.3)63 b(Completion)41 b(V)-10 b(ariables)3371
-2982 y Fs([V)i(ariable])-3598 b Fg(rl_compentry_func_t)58
-b(*)53 b(rl_completion_entry_fun)q(cti)q(on)390 3091
+1170 y Fs([V)i(ariable])-3598 b Fg(rl_compentry_func_t)58
+b(*)53 b(rl_completion_entry_fun)q(cti)q(on)390 1279
y Fs(A)34 b(p)s(oin)m(ter)f(to)h(the)g(generator)h(function)e(for)g
Fr(rl_completion_matches\(\))p Fs(.)44 b Fr(NULL)32 b
-Fs(means)h(to)390 3201 y(use)d Fr(rl_filename_completion_fu)o(nct)o
+Fs(means)h(to)390 1389 y(use)d Fr(rl_filename_completion_fu)o(nct)o
(ion\()o(\))p Fs(,)25 b(the)30 b(default)h(\014lename)f(completer.)3371
-3394 y([V)-8 b(ariable])-3598 b Fg(rl_completion_func_t)58
+1609 y([V)-8 b(ariable])-3598 b Fg(rl_completion_func_t)58
b(*)53 b(rl_attempted_completio)q(n_f)q(unct)q(ion)390
-3503 y Fs(A)35 b(p)s(oin)m(ter)g(to)g(an)g(alternativ)m(e)i(function)d
+1719 y Fs(A)35 b(p)s(oin)m(ter)g(to)g(an)g(alternativ)m(e)i(function)d
(to)i(create)g(matc)m(hes.)55 b(The)34 b(function)h(is)f(called)i(with)
-390 3613 y Fi(text)r Fs(,)50 b Fi(start)r Fs(,)g(and)44
-b Fi(end)t Fs(.)84 b Fi(start)48 b Fs(and)d Fi(end)j
-Fs(are)d(indices)g(in)g Fr(rl_line_buffer)d Fs(de\014ning)i(the)390
-3722 y(b)s(oundaries)37 b(of)i Fi(text)r Fs(,)i(whic)m(h)d(is)h(a)g(c)m
-(haracter)h(string.)65 b(If)38 b(this)g(function)g(exists)h(and)f
-(returns)390 3832 y Fr(NULL)p Fs(,)j(or)f(if)g(this)g(v)-5
-b(ariable)41 b(is)f(set)g(to)h Fr(NULL)p Fs(,)h(then)d
-Fr(rl_complete\(\))e Fs(will)j(call)h(the)f(v)-5 b(alue)41
-b(of)390 3942 y Fr(rl_completion_entry_func)o(tion)20
-b Fs(to)28 b(generate)h(matc)m(hes,)g(otherwise)f(the)f(arra)m(y)h(of)f
-(strings)390 4051 y(returned)44 b(will)h(b)s(e)f(used.)82
-b(If)45 b(this)f(function)h(sets)g(the)g Fr(rl_attempted_completion)o
-(_ove)o(r)390 4161 y Fs(v)-5 b(ariable)31 b(to)f(a)h(non-zero)f(v)-5
-b(alue,)31 b(Readline)f(will)g(not)g(p)s(erform)f(its)h(default)g
-(completion)h(ev)m(en)g(if)390 4270 y(this)f(function)g(returns)f(no)i
-(matc)m(hes.)3371 4463 y([V)-8 b(ariable])-3598 b Fg(rl_quote_func_t)57
-b(*)52 b(rl_filename_quoting_)q(func)q(tio)q(n)390 4573
+390 1829 y Fi(text)p Fs(,)26 b Fi(start)p Fs(,)f(and)d
+Fi(end)p Fs(.)38 b Fi(start)25 b Fs(and)e Fi(end)j Fs(are)d(indices)g
+(in)g Fr(rl_line_buffer)c Fs(de\014ning)j(the)h(b)s(ound-)390
+1938 y(aries)j(of)h Fi(text)p Fs(,)h(whic)m(h)d(is)h(a)h(c)m(haracter)g
+(string.)39 b(If)26 b(this)g(function)f(exists)i(and)e(returns)g
+Fr(NULL)p Fs(,)h(or)g(if)390 2048 y(this)c(v)-5 b(ariable)22
+b(is)g(set)h(to)f Fr(NULL)p Fs(,)h(then)f Fr(rl_complete\(\))c
+Fs(will)k(call)h(the)f(v)-5 b(alue)23 b(of)f Fr(rl_completion_)390
+2157 y(entry_function)i Fs(to)30 b(generate)f(matc)m(hes,)i(otherwise)d
+(the)h(arra)m(y)g(of)f(strings)h(returned)e(will)i(b)s(e)390
+2267 y(used.)37 b(If)22 b(this)g(function)g(sets)h(the)g
+Fr(rl_attempted_completion)o(_ove)o(r)16 b Fs(v)-5 b(ariable)24
+b(to)f(a)f(non-zero)390 2377 y(v)-5 b(alue,)35 b(Readline)g(will)f(not)
+g(p)s(erform)f(its)h(default)g(completion)h(ev)m(en)g(if)f(this)g
+(function)f(returns)390 2486 y(no)d(matc)m(hes.)3371
+2707 y([V)-8 b(ariable])-3598 b Fg(rl_quote_func_t)57
+b(*)52 b(rl_filename_quoting_)q(func)q(tio)q(n)390 2816
y Fs(A)33 b(p)s(oin)m(ter)f(to)h(a)g(function)g(that)g(will)g(quote)g
(a)g(\014lename)f(in)h(an)f(application-sp)s(eci\014c)i(fashion.)390
-4682 y(This)k(is)i(called)g(if)f(\014lename)h(completion)g(is)f(b)s
+2926 y(This)k(is)i(called)g(if)f(\014lename)h(completion)g(is)f(b)s
(eing)g(attempted)i(and)d(one)i(of)f(the)g(c)m(haracters)390
-4792 y(in)33 b Fr(rl_filename_quote_charac)o(ter)o(s)27
+3036 y(in)33 b Fr(rl_filename_quote_charac)o(ter)o(s)27
b Fs(app)s(ears)33 b(in)g(a)g(completed)h(\014lename.)50
-b(The)32 b(function)390 4902 y(is)k(called)h(with)f Fi(text)r
-Fs(,)i Fi(matc)m(h)p 1436 4902 V 41 w(t)m(yp)s(e)5 b
-Fs(,)38 b(and)e Fi(quote)p 2121 4902 V 40 w(p)s(oin)m(ter)7
-b Fs(.)57 b(The)36 b Fi(text)j Fs(is)d(the)g(\014lename)g(to)h(b)s(e)
-390 5011 y(quoted.)76 b(The)42 b Fi(matc)m(h)p 1210 5011
+b(The)32 b(function)390 3145 y(is)37 b(called)h(with)e
+Fi(text)p Fs(,)k Fi(matc)m(h)p 1438 3145 28 4 v 41 w(t)m(yp)s(e)p
+Fs(,)f(and)d Fi(quote)p 2119 3145 V 41 w(p)s(oin)m(ter)p
+Fs(.)60 b(The)36 b Fi(text)k Fs(is)d(the)g(\014lename)g(to)h(b)s(e)390
+3255 y(quoted.)76 b(The)42 b Fi(matc)m(h)p 1210 3255
V 41 w(t)m(yp)s(e)48 b Fs(is)42 b(either)h Fr(SINGLE_MATCH)p
Fs(,)f(if)g(there)g(is)h(only)f(one)h(completion)390
-5121 y(matc)m(h,)33 b(or)e Fr(MULT_MATCH)p Fs(.)41 b(Some)31
+3364 y(matc)m(h,)33 b(or)e Fr(MULT_MATCH)p Fs(.)41 b(Some)31
b(functions)g(use)g(this)h(to)g(decide)f(whether)g(or)h(not)f(to)h
-(insert)g(a)390 5230 y(closing)22 b(quote)f(c)m(haracter.)40
-b(The)20 b Fi(quote)p 1751 5230 V 41 w(p)s(oin)m(ter)27
+(insert)g(a)390 3474 y(closing)22 b(quote)f(c)m(haracter.)40
+b(The)20 b Fi(quote)p 1751 3474 V 41 w(p)s(oin)m(ter)27
b Fs(is)21 b(a)g(p)s(oin)m(ter)g(to)g(an)m(y)h(op)s(ening)e(quote)h(c)m
-(haracter)390 5340 y(the)31 b(user)e(t)m(yp)s(ed.)41
+(haracter)390 3584 y(the)31 b(user)e(t)m(yp)s(ed.)41
b(Some)30 b(functions)g(c)m(ho)s(ose)h(to)g(reset)g(this)g(c)m
-(haracter.)p eop end
-%%Page: 46 50
-TeXDict begin 46 49 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(46)3371
-299 y([V)-8 b(ariable])-3598 b Fg(rl_dequote_func_t)57
-b(*)c(rl_filename_dequoting_)q(fun)q(cti)q(on)390 408
+(haracter.)3371 3804 y([V)-8 b(ariable])-3598 b Fg(rl_dequote_func_t)57
+b(*)c(rl_filename_dequoting_)q(fun)q(cti)q(on)390 3914
y Fs(A)30 b(p)s(oin)m(ter)f(to)i(a)f(function)f(that)h(will)g(remo)m(v)
m(e)h(application-sp)s(eci\014c)g(quoting)f(c)m(haracters)h(from)390
-518 y(a)i(\014lename)g(b)s(efore)f(completion)h(is)g(attempted,)h(so)f
+4023 y(a)i(\014lename)g(b)s(efore)f(completion)h(is)g(attempted,)h(so)f
(those)g(c)m(haracters)h(do)e(not)h(in)m(terfere)g(with)390
-628 y(matc)m(hing)39 b(the)f(text)h(against)g(names)f(in)g(the)g
-(\014lesystem.)64 b(It)38 b(is)g(called)h(with)f Fi(text)r
-Fs(,)j(the)d(text)390 737 y(of)k(the)g(w)m(ord)f(to)i(b)s(e)e
-(dequoted,)j(and)d Fi(quote)p 2010 737 28 4 v 41 w(c)m(har)7
-b Fs(,)45 b(whic)m(h)c(is)h(the)g(quoting)g(c)m(haracter)h(that)390
-847 y(delimits)33 b(the)f(\014lename)g(\(usually)h(`)p
+4133 y(matc)m(hing)39 b(the)f(text)i(against)f(names)f(in)g(the)g
+(\014lesystem.)64 b(It)38 b(is)g(called)i(with)d Fi(text)p
+Fs(,)42 b(the)c(text)390 4243 y(of)k(the)h(w)m(ord)f(to)g(b)s(e)g
+(dequoted,)j(and)d Fi(quote)p 2014 4243 V 41 w(c)m(har)p
+Fs(,)j(whic)m(h)d(is)h(the)f(quoting)h(c)m(haracter)g(that)390
+4352 y(delimits)33 b(the)f(\014lename)g(\(usually)h(`)p
Fr(')p Fs(')f(or)g(`)p Fr(")p Fs('\).)46 b(If)32 b Fi(quote)p
-2368 847 V 41 w(c)m(har)39 b Fs(is)32 b(zero,)i(the)e(\014lename)g(w)m
-(as)h(not)390 956 y(in)d(an)g(em)m(b)s(edded)g(string.)3371
-1148 y([V)-8 b(ariable])-3598 b Fg(rl_linebuf_func_t)57
-b(*)c(rl_char_is_quoted_p)390 1258 y Fs(A)37 b(p)s(oin)m(ter)g(to)g(a)g
+2368 4352 V 41 w(c)m(har)39 b Fs(is)32 b(zero,)i(the)e(\014lename)g(w)m
+(as)h(not)390 4462 y(in)d(an)g(em)m(b)s(edded)g(string.)3371
+4682 y([V)-8 b(ariable])-3598 b Fg(rl_linebuf_func_t)57
+b(*)c(rl_char_is_quoted_p)390 4792 y Fs(A)37 b(p)s(oin)m(ter)g(to)g(a)g
(function)g(to)g(call)h(that)g(determines)f(whether)f(or)h(not)g(a)g
-(sp)s(eci\014c)f(c)m(haracter)390 1367 y(in)e(the)h(line)f(bu\013er)g
+(sp)s(eci\014c)f(c)m(haracter)390 4902 y(in)e(the)h(line)f(bu\013er)g
(is)g(quoted,)i(according)g(to)f(whatev)m(er)g(quoting)g(mec)m(hanism)g
-(the)f(program)390 1477 y(calling)26 b(Readline)f(uses.)39
-b(The)24 b(function)g(is)h(called)h(with)e(t)m(w)m(o)i(argumen)m(ts:)38
-b Fi(text)r Fs(,)27 b(the)e(text)h(of)f(the)390 1587
-y(line,)31 b(and)f Fi(index)6 b Fs(,)30 b(the)h(index)f(of)h(the)f(c)m
-(haracter)i(in)e(the)h(line.)41 b(It)31 b(is)f(used)g(to)h(decide)g
-(whether)f(a)390 1696 y(c)m(haracter)i(found)d(in)g Fr
+(the)f(program)390 5011 y(calling)26 b(Readline)g(uses.)38
+b(The)24 b(function)h(is)g(called)h(with)e(t)m(w)m(o)i(argumen)m(ts:)39
+b Fi(text)p Fs(,)27 b(the)e(text)h(of)f(the)390 5121
+y(line,)31 b(and)g Fi(index)p Fs(,)f(the)h(index)f(of)h(the)g(c)m
+(haracter)i(in)d(the)h(line.)42 b(It)31 b(is)g(used)f(to)h(decide)g
+(whether)g(a)390 5230 y(c)m(haracter)h(found)d(in)g Fr
(rl_completer_word_break_ch)o(ara)o(cter)o(s)24 b Fs(should)29
-b(b)s(e)h(used)f(to)i(break)390 1806 y(w)m(ords)f(for)g(the)h
-(completer.)3371 1998 y([V)-8 b(ariable])-3598 b Fg
-(rl_compignore_func_t)58 b(*)53 b(rl_ignore_some_complet)q(ion)q(s_fu)q
-(nct)q(ion)390 2107 y Fs(This)37 b(function,)i(if)f(de\014ned,)g(is)g
-(called)h(b)m(y)e(the)h(completer)h(when)e(real)h(\014lename)g
-(completion)390 2217 y(is)c(done,)h(after)f(all)h(the)g(matc)m(hing)g
-(names)e(ha)m(v)m(e)j(b)s(een)d(generated.)53 b(It)34
-b(is)g(passed)f(a)i Fr(NULL)d Fs(ter-)390 2326 y(minated)f(arra)m(y)g
-(of)g(matc)m(hes.)43 b(The)31 b(\014rst)f(elemen)m(t)i(\()p
-Fr(matches[0])p Fs(\))d(is)h(the)h(maximal)h(substring)390
-2436 y(common)d(to)g(all)h(matc)m(hes.)41 b(This)28 b(function)h(can)g
-(re-arrange)g(the)g(list)h(of)f(matc)m(hes)g(as)g(required,)390
-2545 y(but)h(eac)m(h)h(elemen)m(t)h(deleted)f(from)f(the)h(arra)m(y)g
-(m)m(ust)f(b)s(e)g(freed.)3371 2737 y([V)-8 b(ariable])-3598
-b Fg(rl_icppfunc_t)56 b(*)d(rl_directory_completio)q(n_ho)q(ok)390
-2847 y Fs(This)44 b(function,)49 b(if)d(de\014ned,)i(is)d(allo)m(w)m
-(ed)i(to)f(mo)s(dify)e(the)i(directory)g(p)s(ortion)e(of)i(\014lenames)
-390 2956 y(Readline)35 b(completes.)56 b(It)35 b(could)g(b)s(e)f(used)g
-(to)i(expand)e(sym)m(b)s(olic)h(links)g(or)g(shell)g(v)-5
-b(ariables)35 b(in)390 3066 y(pathnames.)70 b(It)41 b(is)f(called)h
+b(b)s(e)h(used)f(to)i(break)390 5340 y(w)m(ords)f(for)g(the)h
+(completer.)p eop end
+%%Page: 49 53
+TeXDict begin 49 52 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(49)3371
+299 y([V)-8 b(ariable])-3598 b Fg(rl_compignore_func_t)58
+b(*)53 b(rl_ignore_some_complet)q(ion)q(s_fu)q(nct)q(ion)390
+408 y Fs(This)37 b(function,)i(if)f(de\014ned,)g(is)g(called)h(b)m(y)e
+(the)h(completer)h(when)e(real)h(\014lename)g(completion)390
+518 y(is)c(done,)h(after)f(all)h(the)g(matc)m(hing)g(names)e(ha)m(v)m
+(e)j(b)s(een)d(generated.)53 b(It)34 b(is)g(passed)f(a)i
+Fr(NULL)d Fs(ter-)390 628 y(minated)f(arra)m(y)g(of)g(matc)m(hes.)43
+b(The)31 b(\014rst)f(elemen)m(t)i(\()p Fr(matches[0])p
+Fs(\))d(is)h(the)h(maximal)h(substring)390 737 y(common)d(to)g(all)h
+(matc)m(hes.)41 b(This)28 b(function)h(can)g(re-arrange)g(the)g(list)h
+(of)f(matc)m(hes)g(as)g(required,)390 847 y(but)h(eac)m(h)h(elemen)m(t)
+h(deleted)f(from)f(the)h(arra)m(y)g(m)m(ust)f(b)s(e)g(freed.)3371
+1043 y([V)-8 b(ariable])-3598 b Fg(rl_icppfunc_t)56 b(*)d
+(rl_directory_completio)q(n_ho)q(ok)390 1152 y Fs(This)44
+b(function,)49 b(if)d(de\014ned,)i(is)d(allo)m(w)m(ed)i(to)f(mo)s(dify)
+e(the)i(directory)g(p)s(ortion)e(of)i(\014lenames)390
+1262 y(Readline)35 b(completes.)56 b(It)35 b(could)g(b)s(e)f(used)g(to)
+i(expand)e(sym)m(b)s(olic)h(links)g(or)g(shell)g(v)-5
+b(ariables)35 b(in)390 1372 y(pathnames.)70 b(It)41 b(is)f(called)h
(with)f(the)h(address)e(of)i(a)g(string)f(\(the)h(curren)m(t)f
-(directory)h(name\))390 3176 y(as)d(an)f(argumen)m(t,)j(and)d(ma)m(y)i
+(directory)h(name\))390 1481 y(as)d(an)f(argumen)m(t,)j(and)d(ma)m(y)i
(mo)s(dify)d(that)j(string.)62 b(If)37 b(the)h(string)f(is)h(replaced)g
-(with)f(a)h(new)390 3285 y(string,)j(the)d(old)h(v)-5
+(with)f(a)h(new)390 1591 y(string,)j(the)d(old)h(v)-5
b(alue)39 b(should)e(b)s(e)h(freed.)64 b(An)m(y)39 b(mo)s(di\014ed)e
-(directory)i(name)f(should)g(ha)m(v)m(e)i(a)390 3395
+(directory)i(name)f(should)g(ha)m(v)m(e)i(a)390 1700
y(trailing)c(slash.)54 b(The)35 b(mo)s(di\014ed)e(v)-5
b(alue)36 b(will)f(b)s(e)f(used)g(as)i(part)e(of)h(the)h(completion,)h
-(replacing)390 3504 y(the)32 b(directory)g(p)s(ortion)f(of)h(the)g
+(replacing)390 1810 y(the)32 b(directory)g(p)s(ortion)f(of)h(the)g
(pathname)f(the)h(user)f(t)m(yp)s(ed.)44 b(A)m(t)33 b(the)f(least,)h
-(ev)m(en)g(if)e(no)h(other)390 3614 y(expansion)j(is)h(p)s(erformed,)f
+(ev)m(en)g(if)e(no)h(other)390 1920 y(expansion)j(is)h(p)s(erformed,)f
(this)h(function)f(should)g(remo)m(v)m(e)i(an)m(y)f(quote)g(c)m
-(haracters)h(from)e(the)390 3724 y(directory)24 b(name,)h(b)s(ecause)f
-(its)g(result)f(will)h(b)s(e)f(passed)g(directly)h(to)g
-Fr(opendir\(\))p Fs(.)36 b(The)23 b(directory)390 3833
-y(completion)34 b(ho)s(ok)f(returns)f(an)h(in)m(teger)h(that)g(should)e
-(b)s(e)g(non-zero)i(if)f(the)g(function)g(mo)s(di\014es)390
-3943 y(its)f(directory)f(argumen)m(t.)44 b(The)31 b(function)f(should)h
-(not)g(mo)s(dify)g(the)g(directory)h(argumen)m(t)f(if)g(it)390
-4052 y(returns)e(0.)3371 4244 y([V)-8 b(ariable])-3598
+(haracters)h(from)e(the)390 2029 y(directory)c(name,)g(b)s(ecause)f
+(its)h(result)f(will)h(b)s(e)e(passed)h(directly)h(to)g
+Fr(opendir\(\))p Fs(.)390 2170 y(The)25 b(directory)i(completion)g(ho)s
+(ok)e(returns)g(an)h(in)m(teger)h(that)f(should)f(b)s(e)g(non-zero)i
+(if)e(the)i(func-)390 2279 y(tion)35 b(mo)s(di\014es)e(its)i(directory)
+f(argumen)m(t.)53 b(The)33 b(function)h(should)f(not)i(mo)s(dify)e(the)
+h(directory)390 2389 y(argumen)m(t)d(if)f(it)h(returns)e(0.)3371
+2585 y([V)-8 b(ariable])-3598 b Fg(rl_icppfunc_t)56 b(*)d
+(rl_directory_rewrite_h)q(ook;)390 2694 y Fs(If)24 b(non-zero,)i(this)e
+(is)h(the)f(address)g(of)g(a)h(function)f(to)h(call)g(when)f
+(completing)h(a)g(directory)g(name.)390 2804 y(This)h(function)g(tak)m
+(es)i(the)f(address)f(of)h(the)f(directory)h(name)g(to)g(b)s(e)f(mo)s
+(di\014ed)g(as)h(an)f(argumen)m(t.)390 2914 y(Unlik)m(e)40
+b Fr(rl_directory_completion_h)o(ook)p Fs(,)35 b(it)40
+b(only)f(mo)s(di\014es)f(the)i(directory)f(name)h(used)390
+3023 y(in)35 b Fr(opendir)p Fs(,)g(not)g(what)h(is)f(displa)m(y)m(ed)h
+(when)e(the)i(p)s(ossible)f(completions)h(are)g(prin)m(ted)f(or)g(in-)
+390 3133 y(serted.)k(It)27 b(is)f(called)h(b)s(efore)f(rl)p
+1463 3133 28 4 v 40 w(directory)p 1859 3133 V 41 w(completion)p
+2333 3133 V 41 w(ho)s(ok.)39 b(A)m(t)27 b(the)g(least,)h(ev)m(en)f(if)g
+(no)f(other)390 3242 y(expansion)35 b(is)h(p)s(erformed,)f(this)h
+(function)f(should)g(remo)m(v)m(e)i(an)m(y)f(quote)g(c)m(haracters)h
+(from)e(the)390 3352 y(directory)c(name,)g(b)s(ecause)f(its)h(result)f
+(will)h(b)s(e)e(passed)h(directly)h(to)g Fr(opendir\(\))p
+Fs(.)390 3492 y(The)37 b(directory)i(rewrite)f(ho)s(ok)f(returns)g(an)h
+(in)m(teger)h(that)f(should)f(b)s(e)g(non-zero)i(if)e(the)i(func-)390
+3602 y(tion)e(mo)s(d\014es)e(its)h(directory)h(argumen)m(t.)58
+b(The)36 b(function)f(should)h(not)g(mo)s(dify)f(the)h(directory)390
+3712 y(argumen)m(t)31 b(if)f(it)h(returns)e(0.)3371 3908
+y([V)-8 b(ariable])-3598 b Fg(rl_icppfunc_t)56 b(*)d
+(rl_filename_stat_hook)390 4017 y Fs(If)30 b(non-zero,)h(this)f(is)g
+(the)g(address)f(of)h(a)h(function)f(for)f(the)i(completer)g(to)g(call)
+g(b)s(efore)f(deciding)390 4127 y(whic)m(h)g(c)m(haracter)i(to)e(app)s
+(end)f(to)i(a)f(completed)h(name.)41 b(This)29 b(function)h(mo)s
+(di\014es)f(its)i(\014lename)390 4236 y(name)36 b(argumen)m(t,)h(and)e
+(the)h(mo)s(di\014ed)e(v)-5 b(alue)36 b(is)g(passed)f(to)h
+Fr(stat\(\))e Fs(to)i(determine)g(the)g(\014le's)390
+4346 y(t)m(yp)s(e)41 b(and)f(c)m(haracteristics.)73 b(This)40
+b(function)g(do)s(es)g(not)h(need)f(to)h(remo)m(v)m(e)h(quote)f(c)m
+(haracters)390 4456 y(from)30 b(the)g(\014lename.)390
+4596 y(The)i(stat)h(ho)s(ok)f(returns)f(an)h(in)m(teger)i(that)e
+(should)g(b)s(e)f(non-zero)i(if)f(the)g(function)g(mo)s(d\014es)g(its)
+390 4706 y(directory)42 b(argumen)m(t.)73 b(The)40 b(function)h(should)
+f(not)h(mo)s(dify)f(the)h(directory)h(argumen)m(t)f(if)g(it)390
+4815 y(returns)29 b(0.)3371 5011 y([V)-8 b(ariable])-3598
b Fg(rl_dequote_func_t)57 b(*)c(rl_filename_rewrite_ho)q(ok)390
-4354 y Fs(If)23 b(non-zero,)j(this)e(is)g(the)g(address)e(of)i(a)h
-(function)e(called)i(when)e(reading)h(directory)g(en)m(tries)g(from)390
-4463 y(the)d(\014lesystem)g(for)g(completion)i(and)d(comparing)h(them)g
-(to)h(the)f(partial)h(w)m(ord)f(to)g(b)s(e)g(completed.)390
-4573 y(The)g(function)g(should)f(p)s(erform)g(an)m(y)h(necesary)h
-(application)h(or)e(system-sp)s(eci\014c)g(con)m(v)m(ersion)i(on)390
-4682 y(the)f(\014lename,)j(suc)m(h)d(as)g(con)m(v)m(erting)i(b)s(et)m
-(w)m(een)f(c)m(haracter)h(sets)e(or)g(con)m(v)m(erting)i(from)e(a)h
-(\014lesystem)390 4792 y(format)34 b(to)h(a)f(c)m(haracter)i(input)d
-(format.)52 b(The)33 b(function)h(tak)m(es)h(t)m(w)m(o)h(argumen)m(ts:)
-48 b Fi(fname)5 b Fs(,)35 b(the)390 4902 y(\014lename)29
-b(to)g(b)s(e)f(con)m(v)m(erted,)j(and)d Fi(fnlen)p Fs(,)g(its)h(length)
-g(in)f(b)m(ytes.)41 b(It)29 b(m)m(ust)f(either)h(return)f(its)h
-(\014rst)390 5011 y(argumen)m(t)i(\(if)g(no)g(con)m(v)m(ersion)h(tak)m
-(es)g(place\))g(or)f(the)g(con)m(v)m(erted)h(\014lename)f(in)g
-(newly-allo)s(cated)390 5121 y(memory)-8 b(.)48 b(The)32
-b(con)m(v)m(erted)i(form)e(is)h(used)f(to)h(compare)g(against)h(the)f
-(w)m(ord)f(to)i(b)s(e)e(completed,)390 5230 y(and,)37
-b(if)g(it)g(matc)m(hes,)i(is)d(added)g(to)h(the)f(list)h(of)g(matc)m
-(hes.)59 b(Readline)37 b(will)g(free)f(the)h(allo)s(cated)390
-5340 y(string.)p eop end
-%%Page: 47 51
-TeXDict begin 47 50 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(47)3371
-299 y([V)-8 b(ariable])-3598 b Fg(rl_compdisp_func_t)58
+5121 y Fs(If)39 b(non-zero,)k(this)d(is)f(the)h(address)f(of)h(a)g
+(function)g(called)g(when)f(reading)h(directory)g(en)m(tries)390
+5230 y(from)f(the)h(\014lesystem)g(for)g(completion)h(and)e(comparing)i
+(them)e(to)i(the)f(partial)h(w)m(ord)e(to)i(b)s(e)390
+5340 y(completed.)g(The)26 b(function)h(should)f(p)s(erform)f(an)m(y)j
+(necessary)f(application)i(or)e(system-sp)s(eci\014c)p
+eop end
+%%Page: 50 54
+TeXDict begin 50 53 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(50)390
+299 y(con)m(v)m(ersion)35 b(on)g(the)f(\014lename,)i(suc)m(h)d(as)i
+(con)m(v)m(erting)h(b)s(et)m(w)m(een)f(c)m(haracter)g(sets)g(or)f(con)m
+(v)m(erting)390 408 y(from)f(a)g(\014lesystem)h(format)g(to)g(a)f(c)m
+(haracter)i(input)e(format.)50 b(The)32 b(function)h(tak)m(es)i(t)m(w)m
+(o)g(argu-)390 518 y(men)m(ts:)49 b Fi(fname)p Fs(,)36
+b(the)e(\014lename)h(to)g(b)s(e)f(con)m(v)m(erted,)j(and)d
+Fi(fnlen)p Fs(,)h(its)g(length)g(in)f(b)m(ytes.)53 b(It)35
+b(m)m(ust)390 628 y(either)24 b(return)e(its)h(\014rst)g(argumen)m(t)g
+(\(if)h(no)f(con)m(v)m(ersion)h(tak)m(es)h(place\))g(or)e(the)g(con)m
+(v)m(erted)i(\014lename)390 737 y(in)j(newly-allo)s(cated)i(memory)-8
+b(.)41 b(The)27 b(con)m(v)m(erted)j(form)e(is)g(used)g(to)h(compare)f
+(against)i(the)e(w)m(ord)390 847 y(to)g(b)s(e)e(completed,)j(and,)f(if)
+f(it)h(matc)m(hes,)h(is)e(added)f(to)i(the)g(list)f(of)h(matc)m(hes.)41
+b(Readline)27 b(will)h(free)390 956 y(the)j(allo)s(cated)h(string.)3371
+1134 y([V)-8 b(ariable])-3598 b Fg(rl_compdisp_func_t)58
b(*)52 b(rl_completion_display)q(_ma)q(tch)q(es_h)q(ook)390
-408 y Fs(If)22 b(non-zero,)i(then)e(this)g(is)g(the)g(address)f(of)h(a)
-g(function)g(to)h(call)g(when)e(completing)i(a)g(w)m(ord)e(w)m(ould)390
-518 y(normally)h(displa)m(y)h(the)f(list)h(of)f(p)s(ossible)g(matc)m
-(hes.)39 b(This)21 b(function)h(is)g(called)i(in)e(lieu)g(of)g
-(Readline)390 628 y(displa)m(ying)37 b(the)f(list.)60
-b(It)36 b(tak)m(es)i(three)f(argumen)m(ts:)53 b(\()p
-Fr(char)30 b(**)p Fi(matc)m(hes)t Fs(,)38 b Fr(int)e
-Fi(n)m(um)p 3367 628 28 4 v 39 w(matc)m(hes)t Fs(,)390
-737 y Fr(int)26 b Fi(max)p 735 737 V 40 w(length)p Fs(\))h(where)f
-Fi(matc)m(hes)31 b Fs(is)c(the)f(arra)m(y)h(of)g(matc)m(hing)g
-(strings,)h Fi(n)m(um)p 3152 737 V 39 w(matc)m(hes)j
-Fs(is)c(the)390 847 y(n)m(um)m(b)s(er)h(of)h(strings)g(in)g(that)g
-(arra)m(y)-8 b(,)31 b(and)d Fi(max)p 2020 847 V 40 w(length)i
+1244 y Fs(If)22 b(non-zero,)i(then)e(this)g(is)g(the)g(address)f(of)h
+(a)g(function)g(to)h(call)g(when)e(completing)i(a)g(w)m(ord)e(w)m(ould)
+390 1354 y(normally)h(displa)m(y)h(the)f(list)h(of)f(p)s(ossible)g
+(matc)m(hes.)39 b(This)21 b(function)h(is)g(called)i(in)e(lieu)g(of)g
+(Readline)390 1463 y(displa)m(ying)37 b(the)h(list.)61
+b(It)37 b(tak)m(es)i(three)e(argumen)m(ts:)54 b(\()p
+Fr(char)30 b(**)p Fi(matc)m(hes)p Fs(,)39 b Fr(int)d
+Fi(n)m(um)p 3370 1463 28 4 v 40 w(matc)m(hes)p Fs(,)390
+1573 y Fr(int)26 b Fi(max)p 735 1573 V 40 w(length)p
+Fs(\))h(where)f Fi(matc)m(hes)31 b Fs(is)c(the)f(arra)m(y)h(of)g(matc)m
+(hing)g(strings,)h Fi(n)m(um)p 3152 1573 V 39 w(matc)m(hes)j
+Fs(is)c(the)390 1682 y(n)m(um)m(b)s(er)h(of)h(strings)g(in)g(that)g
+(arra)m(y)-8 b(,)31 b(and)d Fi(max)p 2020 1682 V 40 w(length)i
Fs(is)f(the)g(length)h(of)f(the)g(longest)h(string)f(in)390
-956 y(that)g(arra)m(y)-8 b(.)41 b(Readline)28 b(pro)m(vides)g(a)h(con)m
-(v)m(enience)h(function,)e Fr(rl_display_match_list)p
-Fs(,)23 b(that)390 1066 y(tak)m(es)36 b(care)g(of)f(doing)g(the)g
+1792 y(that)g(arra)m(y)-8 b(.)41 b(Readline)28 b(pro)m(vides)g(a)h(con)
+m(v)m(enience)h(function,)e Fr(rl_display_match_list)p
+Fs(,)23 b(that)390 1902 y(tak)m(es)36 b(care)g(of)f(doing)g(the)g
(displa)m(y)f(to)i(Readline's)f(output)g(stream.)54 b(That)35
-b(function)f(ma)m(y)i(b)s(e)390 1176 y(called)c(from)d(this)i(ho)s(ok.)
-3371 1367 y([V)-8 b(ariable])-3598 b Fg(const)54 b(char)f(*)g
-(rl_basic_word_break_ch)q(ara)q(cter)q(s)390 1477 y Fs(The)44
+b(function)f(ma)m(y)i(b)s(e)390 2011 y(called)c(from)d(this)i(ho)s(ok.)
+3371 2189 y([V)-8 b(ariable])-3598 b Fg(const)54 b(char)f(*)g
+(rl_basic_word_break_ch)q(ara)q(cter)q(s)390 2299 y Fs(The)44
b(basic)g(list)h(of)f(c)m(haracters)i(that)f(signal)g(a)f(break)g(b)s
(et)m(w)m(een)h(w)m(ords)f(for)g(the)g(completer)390
-1587 y(routine.)61 b(The)37 b(default)g(v)-5 b(alue)37
+2408 y(routine.)61 b(The)37 b(default)g(v)-5 b(alue)37
b(of)h(this)f(v)-5 b(ariable)38 b(is)f(the)g(c)m(haracters)i(whic)m(h)e
-(break)g(w)m(ords)f(for)390 1696 y(completion)c(in)e(Bash:)41
-b Fr(")30 b(\\t\\n\\"\\\\'`@$><=;|&{\(")p Fs(.)3371 1888
+(break)g(w)m(ords)f(for)390 2518 y(completion)c(in)e(Bash:)41
+b Fr(")30 b(\\t\\n\\"\\\\'`@$><=;|&{\(")p Fs(.)3371 2696
y([V)-8 b(ariable])-3598 b Fg(const)54 b(char)f(*)g
-(rl_basic_quote_charact)q(ers)390 1998 y Fs(A)30 b(list)i(of)e(quote)h
+(rl_basic_quote_charact)q(ers)390 2806 y Fs(A)30 b(list)i(of)e(quote)h
(c)m(haracters)h(whic)m(h)e(can)h(cause)g(a)f(w)m(ord)g(break.)3371
-2189 y([V)-8 b(ariable])-3598 b Fg(const)54 b(char)f(*)g
-(rl_completer_word_brea)q(k_c)q(hara)q(cte)q(rs)390 2299
+2984 y([V)-8 b(ariable])-3598 b Fg(const)54 b(char)f(*)g
+(rl_completer_word_brea)q(k_c)q(hara)q(cte)q(rs)390 3093
y Fs(The)64 b(list)i(of)f(c)m(haracters)h(that)g(signal)g(a)f(break)g
(b)s(et)m(w)m(een)g(w)m(ords)g(for)f Fr(rl_complete_)390
-2408 y(internal\(\))p Fs(.)38 b(The)30 b(default)g(list)h(is)g(the)f(v)
+3203 y(internal\(\))p Fs(.)38 b(The)30 b(default)g(list)h(is)g(the)f(v)
-5 b(alue)31 b(of)g Fr(rl_basic_word_break_cha)o(ract)o(ers)p
-Fs(.)3371 2600 y([V)-8 b(ariable])-3598 b Fg(rl_cpvfunc_t)56
-b(*)d(rl_completion_word_brea)q(k_ho)q(ok)390 2710 y
+Fs(.)3371 3381 y([V)-8 b(ariable])-3598 b Fg(rl_cpvfunc_t)56
+b(*)d(rl_completion_word_brea)q(k_ho)q(ok)390 3491 y
Fs(If)31 b(non-zero,)i(this)e(is)h(the)f(address)g(of)g(a)h(function)g
(to)g(call)h(when)d(Readline)i(is)g(deciding)f(where)390
-2819 y(to)k(separate)g(w)m(ords)f(for)g(w)m(ord)g(completion.)54
+3600 y(to)k(separate)g(w)m(ords)f(for)g(w)m(ord)g(completion.)54
b(It)34 b(should)f(return)g(a)i(c)m(haracter)h(string)e(lik)m(e)i
-Fr(rl_)390 2929 y(completer_word_break_cha)o(ract)o(ers)26
+Fr(rl_)390 3710 y(completer_word_break_cha)o(ract)o(ers)26
b Fs(to)34 b(b)s(e)e(used)g(to)i(p)s(erform)e(the)h(curren)m(t)f
-(completion.)390 3039 y(The)24 b(function)h(ma)m(y)g(c)m(ho)s(ose)h(to)
+(completion.)390 3819 y(The)24 b(function)h(ma)m(y)g(c)m(ho)s(ose)h(to)
f(set)g Fr(rl_completer_word_break_ch)o(arac)o(ter)o(s)19
-b Fs(itself.)39 b(If)25 b(the)390 3148 y(function)30
+b Fs(itself.)39 b(If)25 b(the)390 3929 y(function)30
b(returns)f Fr(NULL)p Fs(,)h Fr(rl_completer_word_break)o(_cha)o(rac)o
-(ters)24 b Fs(is)30 b(used.)3371 3340 y([V)-8 b(ariable])-3598
+(ters)24 b Fs(is)30 b(used.)3371 4107 y([V)-8 b(ariable])-3598
b Fg(const)54 b(char)f(*)g(rl_completer_quote_cha)q(rac)q(ters)390
-3450 y Fs(A)34 b(list)g(of)g(c)m(haracters)h(whic)m(h)e(can)h(b)s(e)g
+4217 y Fs(A)34 b(list)g(of)g(c)m(haracters)h(whic)m(h)e(can)h(b)s(e)g
(used)e(to)j(quote)f(a)g(substring)f(of)h(the)f(line.)51
-b(Completion)390 3559 y(o)s(ccurs)26 b(on)g(the)g(en)m(tire)i
+b(Completion)390 4326 y(o)s(ccurs)26 b(on)g(the)g(en)m(tire)i
(substring,)e(and)f(within)h(the)g(substring)g Fr
-(rl_completer_word_break)o(_)390 3669 y(characters)32
+(rl_completer_word_break)o(_)390 4436 y(characters)32
b Fs(are)k(treated)g(as)f(an)m(y)h(other)f(c)m(haracter,)j(unless)d
-(they)g(also)h(app)s(ear)e(within)h(this)390 3778 y(list.)3371
-3970 y([V)-8 b(ariable])-3598 b Fg(const)54 b(char)f(*)g
-(rl_filename_quote_char)q(act)q(ers)390 4080 y Fs(A)34
+(they)g(also)h(app)s(ear)e(within)h(this)390 4545 y(list.)3371
+4724 y([V)-8 b(ariable])-3598 b Fg(const)54 b(char)f(*)g
+(rl_filename_quote_char)q(act)q(ers)390 4833 y Fs(A)34
b(list)g(of)g(c)m(haracters)h(that)f(cause)h(a)f(\014lename)g(to)g(b)s
(e)f(quoted)h(b)m(y)f(the)h(completer)h(when)e(they)390
-4189 y(app)s(ear)d(in)g(a)h(completed)g(\014lename.)41
+4943 y(app)s(ear)d(in)g(a)h(completed)g(\014lename.)41
b(The)30 b(default)g(is)h(the)f(n)m(ull)h(string.)3371
-4381 y([V)-8 b(ariable])-3598 b Fg(const)54 b(char)f(*)g
-(rl_special_prefixes)390 4491 y Fs(The)27 b(list)i(of)e(c)m(haracters)j
+5121 y([V)-8 b(ariable])-3598 b Fg(const)54 b(char)f(*)g
+(rl_special_prefixes)390 5230 y Fs(The)27 b(list)i(of)e(c)m(haracters)j
(that)e(are)g(w)m(ord)f(break)h(c)m(haracters,)i(but)d(should)f(b)s(e)h
-(left)i(in)e Fi(text)k Fs(when)390 4600 y(it)25 b(is)g(passed)f(to)h
+(left)i(in)e Fi(text)k Fs(when)390 5340 y(it)25 b(is)g(passed)f(to)h
(the)g(completion)h(function.)38 b(Programs)25 b(can)g(use)f(this)h(to)
-g(help)f(determine)h(what)390 4710 y(kind)j(of)i(completing)g(to)g(do.)
-41 b(F)-8 b(or)30 b(instance,)g(Bash)g(sets)f(this)g(v)-5
-b(ariable)31 b(to)f Fr(")p Fs($)p Fr(@")e Fs(so)i(that)g(it)g(can)390
-4819 y(complete)i(shell)e(v)-5 b(ariables)31 b(and)f(hostnames.)3371
-5011 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_completion_query_i)q
-(tems)390 5121 y Fs(Up)36 b(to)h(this)f(man)m(y)g(items)h(will)f(b)s(e)
-g(displa)m(y)m(ed)h(in)e(resp)s(onse)h(to)h(a)f(p)s
-(ossible-completions)h(call.)390 5230 y(After)28 b(that,)h(readline)f
-(asks)g(the)g(user)f(if)h(she)f(is)h(sure)f(she)h(w)m(an)m(ts)g(to)h
-(see)f(them)g(all.)40 b(The)28 b(default)390 5340 y(v)-5
-b(alue)31 b(is)f(100.)42 b(A)31 b(negativ)m(e)h(v)-5
-b(alue)31 b(indicates)g(that)g(Readline)g(should)f(nev)m(er)h(ask)f
-(the)h(user.)p eop end
-%%Page: 48 52
-TeXDict begin 48 51 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(48)3371
-299 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_completion_append_)q
-(char)q(act)q(er)390 408 y Fs(When)33 b(a)h(single)f(completion)i
-(alternativ)m(e)h(matc)m(hes)e(at)g(the)f(end)g(of)g(the)h(command)f
-(line,)h(this)390 518 y(c)m(haracter)23 b(is)e(app)s(ended)f(to)i(the)g
-(inserted)f(completion)i(text.)39 b(The)20 b(default)i(is)g(a)f(space)h
-(c)m(haracter)390 628 y(\(`)31 b('\).)86 b(Setting)46
-b(this)f(to)h(the)g(n)m(ull)f(c)m(haracter)i(\(`)p Fr(\\0)p
-Fs('\))f(prev)m(en)m(ts)g(an)m(ything)g(b)s(eing)f(app)s(ended)390
-737 y(automatically)-8 b(.)66 b(This)37 b(can)h(b)s(e)f(c)m(hanged)h
-(in)g(application-sp)s(eci\014c)h(completion)g(functions)e(to)390
-847 y(pro)m(vide)j(the)g(\\most)g(sensible)g(w)m(ord)f(separator)i(c)m
-(haracter")h(according)e(to)h(an)e(application-)390 956
-y(sp)s(eci\014c)30 b(command)g(line)h(syn)m(tax)g(sp)s(eci\014cation.)
-3371 1176 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_completion_suppres)
-q(s_ap)q(pen)q(d)390 1285 y Fs(If)33 b(non-zero,)i Fi(rl)p
-949 1285 28 4 v 39 w(completion)p 1421 1285 V 42 w(app)s(end)p
-1755 1285 V 38 w(c)m(haracter)42 b Fs(is)33 b(not)g(app)s(ended)f(to)i
-(matc)m(hes)g(at)g(the)g(end)390 1395 y(of)28 b(the)f(command)h(line,)h
-(as)e(describ)s(ed)g(ab)s(o)m(v)m(e.)41 b(It)27 b(is)h(set)g(to)g(0)g
-(b)s(efore)g(an)m(y)f(application-sp)s(eci\014c)390 1504
+g(help)f(determine)h(what)p eop end
+%%Page: 51 55
+TeXDict begin 51 54 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(51)390
+299 y(kind)27 b(of)h(completing)h(to)f(do.)40 b(F)-8
+b(or)29 b(instance,)g(Bash)f(sets)g(this)g(v)-5 b(ariable)28
+b(to)h Fr(")p Fs($@)p Fr(")e Fs(so)h(that)g(it)h(can)390
+408 y(complete)j(shell)e(v)-5 b(ariables)31 b(and)f(hostnames.)3371
+628 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_completion_query_i)q
+(tems)390 737 y Fs(Up)36 b(to)h(this)f(man)m(y)g(items)h(will)f(b)s(e)g
+(displa)m(y)m(ed)h(in)e(resp)s(onse)h(to)h(a)f(p)s(ossible-completions)
+h(call.)390 847 y(After)28 b(that,)h(readline)f(asks)g(the)g(user)f(if)
+h(she)f(is)h(sure)f(she)h(w)m(an)m(ts)g(to)h(see)f(them)g(all.)40
+b(The)28 b(default)390 956 y(v)-5 b(alue)31 b(is)f(100.)42
+b(A)31 b(negativ)m(e)h(v)-5 b(alue)31 b(indicates)g(that)g(Readline)g
+(should)f(nev)m(er)h(ask)f(the)h(user.)3371 1176 y([V)-8
+b(ariable])-3598 b Fg(int)53 b(rl_completion_append_)q(char)q(act)q(er)
+390 1285 y Fs(When)33 b(a)h(single)f(completion)i(alternativ)m(e)h
+(matc)m(hes)e(at)g(the)f(end)g(of)g(the)h(command)f(line,)h(this)390
+1395 y(c)m(haracter)23 b(is)e(app)s(ended)f(to)i(the)g(inserted)f
+(completion)i(text.)39 b(The)20 b(default)i(is)g(a)f(space)h(c)m
+(haracter)390 1504 y(\(`)31 b('\).)86 b(Setting)46 b(this)f(to)h(the)g
+(n)m(ull)f(c)m(haracter)i(\(`)p Fr(\\0)p Fs('\))f(prev)m(en)m(ts)g(an)m
+(ything)g(b)s(eing)f(app)s(ended)390 1614 y(automatically)-8
+b(.)66 b(This)37 b(can)h(b)s(e)f(c)m(hanged)h(in)g(application-sp)s
+(eci\014c)h(completion)g(functions)e(to)390 1724 y(pro)m(vide)j(the)g
+(\\most)g(sensible)g(w)m(ord)f(separator)i(c)m(haracter")h(according)e
+(to)h(an)e(application-)390 1833 y(sp)s(eci\014c)30 b(command)g(line)h
+(syn)m(tax)g(sp)s(eci\014cation.)3371 2052 y([V)-8 b(ariable])-3598
+b Fg(int)53 b(rl_completion_suppres)q(s_ap)q(pen)q(d)390
+2162 y Fs(If)33 b(non-zero,)i Fi(rl)p 949 2162 28 4 v
+39 w(completion)p 1421 2162 V 42 w(app)s(end)p 1755 2162
+V 38 w(c)m(haracter)42 b Fs(is)33 b(not)g(app)s(ended)f(to)i(matc)m
+(hes)g(at)g(the)g(end)390 2271 y(of)28 b(the)f(command)h(line,)h(as)e
+(describ)s(ed)g(ab)s(o)m(v)m(e.)41 b(It)27 b(is)h(set)g(to)g(0)g(b)s
+(efore)g(an)m(y)f(application-sp)s(eci\014c)390 2381
y(completion)32 b(function)e(is)g(called,)i(and)e(ma)m(y)h(only)f(b)s
(e)g(c)m(hanged)h(within)f(suc)m(h)g(a)h(function.)3371
-1724 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_completion_quote_c)q
-(hara)q(cte)q(r)390 1833 y Fs(When)36 b(Readline)h(is)f(completing)h
+2600 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_completion_quote_c)q
+(hara)q(cte)q(r)390 2710 y Fs(When)36 b(Readline)h(is)f(completing)h
(quoted)g(text,)h(as)f(delimited)g(b)m(y)f(one)g(of)g(the)h(c)m
-(haracters)g(in)390 1943 y Fi(rl)p 457 1943 V 40 w(completer)p
-885 1943 V 41 w(quote)p 1145 1943 V 41 w(c)m(haracters)t
-Fs(,)42 b(it)d(sets)g(this)f(v)-5 b(ariable)40 b(to)f(the)g(quoting)g
-(c)m(haracter)h(found.)390 2052 y(This)30 b(is)g(set)h(b)s(efore)f(an)m
+(haracters)g(in)390 2819 y Fi(rl)p 457 2819 V 40 w(completer)p
+885 2819 V 41 w(quote)p 1145 2819 V 41 w(c)m(haracters)p
+Fs(,)43 b(it)c(sets)g(this)g(v)-5 b(ariable)40 b(to)g(the)f(quoting)g
+(c)m(haracter)i(found.)390 2929 y(This)30 b(is)g(set)h(b)s(efore)f(an)m
(y)h(application-sp)s(eci\014c)g(completion)h(function)e(is)h(called.)
-3371 2271 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_completion_suppres)
-q(s_qu)q(ote)390 2381 y Fs(If)32 b(non-zero,)h(Readline)g(do)s(es)f
+3371 3148 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_completion_suppres)
+q(s_qu)q(ote)390 3258 y Fs(If)32 b(non-zero,)h(Readline)g(do)s(es)f
(not)h(app)s(end)d(a)j(matc)m(hing)g(quote)g(c)m(haracter)h(when)d(p)s
-(erforming)390 2491 y(completion)25 b(on)e(a)h(quoted)g(string.)38
+(erforming)390 3367 y(completion)25 b(on)e(a)h(quoted)g(string.)38
b(It)24 b(is)f(set)h(to)h(0)f(b)s(efore)f(an)m(y)h(application-sp)s
-(eci\014c)h(completion)390 2600 y(function)30 b(is)g(called,)i(and)e
+(eci\014c)h(completion)390 3477 y(function)30 b(is)g(called,)i(and)e
(ma)m(y)h(only)g(b)s(e)e(c)m(hanged)i(within)f(suc)m(h)g(a)h(function.)
-3371 2819 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_completion_found_q)
-q(uote)390 2929 y Fs(When)31 b(Readline)i(is)e(completing)i(quoted)f
+3371 3696 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_completion_found_q)
+q(uote)390 3806 y Fs(When)31 b(Readline)i(is)e(completing)i(quoted)f
(text,)h(it)f(sets)g(this)g(v)-5 b(ariable)32 b(to)h(a)f(non-zero)g(v)
--5 b(alue)32 b(if)390 3039 y(the)21 b(w)m(ord)g(b)s(eing)g(completed)h
+-5 b(alue)32 b(if)390 3915 y(the)21 b(w)m(ord)g(b)s(eing)g(completed)h
(con)m(tains)g(or)f(is)g(delimited)h(b)m(y)f(an)m(y)g(quoting)h(c)m
-(haracters,)i(including)390 3148 y(bac)m(kslashes.)42
+(haracters,)i(including)390 4025 y(bac)m(kslashes.)42
b(This)29 b(is)i(set)g(b)s(efore)f(an)m(y)g(application-sp)s(eci\014c)i
-(completion)g(function)e(is)g(called.)3371 3367 y([V)-8
+(completion)g(function)e(is)g(called.)3371 4244 y([V)-8
b(ariable])-3598 b Fg(int)53 b(rl_completion_mark_sy)q(mlin)q(k_d)q
-(irs)390 3477 y Fs(If)31 b(non-zero,)i(a)f(slash)g(will)g(b)s(e)f(app)s
+(irs)390 4354 y Fs(If)31 b(non-zero,)i(a)f(slash)g(will)g(b)s(e)f(app)s
(ended)f(to)j(completed)g(\014lenames)e(that)i(are)f(sym)m(b)s(olic)g
-(links)390 3587 y(to)25 b(directory)g(names,)g(sub)5
+(links)390 4463 y(to)25 b(directory)g(names,)g(sub)5
b(ject)24 b(to)h(the)f(v)-5 b(alue)25 b(of)f(the)h(user-settable)g
-Fi(mark-directories)k Fs(v)-5 b(ariable.)390 3696 y(This)27
+Fi(mark-directories)k Fs(v)-5 b(ariable.)390 4573 y(This)27
b(v)-5 b(ariable)28 b(exists)g(so)f(that)h(application-sp)s(eci\014c)h
(completion)g(functions)e(can)g(o)m(v)m(erride)i(the)390
-3806 y(user's)42 b(global)h(preference)g(\(set)g(via)g(the)f
+4682 y(user's)42 b(global)h(preference)g(\(set)g(via)g(the)f
Fi(mark-symlink)m(ed-directories)48 b Fs(Readline)43
-b(v)-5 b(ariable\))390 3915 y(if)38 b(appropriate.)62
+b(v)-5 b(ariable\))390 4792 y(if)38 b(appropriate.)62
b(This)37 b(v)-5 b(ariable)38 b(is)g(set)g(to)g(the)g(user's)f
-(preference)g(b)s(efore)g(an)m(y)h(application-)390 4025
+(preference)g(b)s(efore)g(an)m(y)h(application-)390 4902
y(sp)s(eci\014c)31 b(completion)i(function)f(is)f(called,)j(so)e
(unless)f(that)h(function)f(mo)s(di\014es)g(the)h(v)-5
-b(alue,)33 b(the)390 4134 y(user's)d(preferences)g(are)h(honored.)3371
-4354 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_ignore_completion_)q
-(dupl)q(ica)q(tes)390 4463 y Fs(If)30 b(non-zero,)h(then)f(duplicates)h
+b(alue,)33 b(the)390 5011 y(user's)d(preferences)g(are)h(honored.)3371
+5230 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_ignore_completion_)q
+(dupl)q(ica)q(tes)390 5340 y Fs(If)30 b(non-zero,)h(then)f(duplicates)h
(in)f(the)h(matc)m(hes)g(are)g(remo)m(v)m(ed.)42 b(The)29
-b(default)i(is)f(1.)3371 4682 y([V)-8 b(ariable])-3598
-b Fg(int)53 b(rl_filename_completio)q(n_de)q(sir)q(ed)390
-4792 y Fs(Non-zero)33 b(means)f(that)g(the)g(results)f(of)h(the)g(matc)
-m(hes)h(are)f(to)h(b)s(e)e(treated)i(as)f(\014lenames.)45
-b(This)390 4902 y(is)40 b Fj(always)49 b Fs(zero)41 b(when)e
-(completion)i(is)f(attempted,)j(and)d(can)g(only)g(b)s(e)f(c)m(hanged)i
-(within)e(an)390 5011 y(application-sp)s(eci\014c)i(completion)g
-(function.)67 b(If)39 b(it)h(is)f(set)h(to)h(a)e(non-zero)h(v)-5
-b(alue)40 b(b)m(y)f(suc)m(h)h(a)390 5121 y(function,)24
+b(default)i(is)f(1.)p eop end
+%%Page: 52 56
+TeXDict begin 52 55 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(52)3371
+299 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_filename_completio)q
+(n_de)q(sir)q(ed)390 408 y Fs(Non-zero)33 b(means)f(that)g(the)g
+(results)f(of)h(the)g(matc)m(hes)h(are)f(to)h(b)s(e)e(treated)i(as)f
+(\014lenames.)45 b(This)390 518 y(is)40 b Fj(always)49
+b Fs(zero)41 b(when)e(completion)i(is)f(attempted,)j(and)d(can)g(only)g
+(b)s(e)f(c)m(hanged)i(within)e(an)390 628 y(application-sp)s(eci\014c)i
+(completion)g(function.)67 b(If)39 b(it)h(is)f(set)h(to)h(a)e(non-zero)
+h(v)-5 b(alue)40 b(b)m(y)f(suc)m(h)h(a)390 737 y(function,)24
b(directory)f(names)f(ha)m(v)m(e)h(a)g(slash)f(app)s(ended)e(and)i
-(Readline)h(attempts)g(to)g(quote)g(com-)390 5230 y(pleted)35
+(Readline)h(attempts)g(to)g(quote)g(com-)390 847 y(pleted)35
b(\014lenames)g(if)g(they)h(con)m(tain)g(an)m(y)f(c)m(haracters)i(in)e
-Fr(rl_filename_quote_chara)o(cter)o(s)390 5340 y Fs(and)30
+Fr(rl_filename_quote_chara)o(cter)o(s)390 956 y Fs(and)30
b Fr(rl_filename_quoting_des)o(ired)24 b Fs(is)30 b(set)h(to)g(a)g
-(non-zero)g(v)-5 b(alue.)p eop end
-%%Page: 49 53
-TeXDict begin 49 52 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(49)3371
-299 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_filename_quoting_d)q
-(esir)q(ed)390 408 y Fs(Non-zero)29 b(means)f(that)h(the)f(results)g
-(of)g(the)g(matc)m(hes)i(are)e(to)h(b)s(e)e(quoted)h(using)g(double)f
-(quotes)390 518 y(\(or)43 b(an)f(application-sp)s(eci\014c)i(quoting)f
-(mec)m(hanism\))g(if)f(the)h(completed)g(\014lename)g(con)m(tains)390
-628 y(an)m(y)28 b(c)m(haracters)h(in)e Fr(rl_filename_quote_chars)p
+(non-zero)g(v)-5 b(alue.)3371 1141 y([V)d(ariable])-3598
+b Fg(int)53 b(rl_filename_quoting_d)q(esir)q(ed)390 1250
+y Fs(Non-zero)29 b(means)f(that)h(the)f(results)g(of)g(the)g(matc)m
+(hes)i(are)e(to)h(b)s(e)e(quoted)h(using)g(double)f(quotes)390
+1360 y(\(or)43 b(an)f(application-sp)s(eci\014c)i(quoting)f(mec)m
+(hanism\))g(if)f(the)h(completed)g(\014lename)g(con)m(tains)390
+1469 y(an)m(y)28 b(c)m(haracters)h(in)e Fr(rl_filename_quote_chars)p
Fs(.)34 b(This)27 b(is)g Fj(always)37 b Fs(non-zero)28
-b(when)f(comple-)390 737 y(tion)h(is)g(attempted,)h(and)e(can)h(only)g
+b(when)f(comple-)390 1579 y(tion)h(is)g(attempted,)h(and)e(can)h(only)g
(b)s(e)f(c)m(hanged)h(within)f(an)h(application-sp)s(eci\014c)h
-(completion)390 847 y(function.)37 b(The)21 b(quoting)g(is)g
+(completion)390 1689 y(function.)37 b(The)21 b(quoting)g(is)g
(e\013ected)i(via)e(a)h(call)g(to)g(the)f(function)g(p)s(oin)m(ted)g
-(to)g(b)m(y)g Fr(rl_filename_)390 956 y(quoting_function)p
-Fs(.)3371 1141 y([V)-8 b(ariable])-3598 b Fg(int)53 b
-(rl_attempted_completi)q(on_o)q(ver)390 1250 y Fs(If)93
+(to)g(b)m(y)g Fr(rl_filename_)390 1798 y(quoting_function)p
+Fs(.)3371 1983 y([V)-8 b(ariable])-3598 b Fg(int)53 b
+(rl_attempted_completi)q(on_o)q(ver)390 2092 y Fs(If)93
b(an)h(application-sp)s(eci\014c)i(completion)f(function)f(assigned)g
-(to)h Fr(rl_attempted_)390 1360 y(completion_function)48
+(to)h Fr(rl_attempted_)390 2202 y(completion_function)48
b Fs(sets)53 b(this)g(v)-5 b(ariable)54 b(to)g(a)f(non-zero)h(v)-5
-b(alue,)60 b(Readline)53 b(will)h(not)390 1469 y(p)s(erform)28
+b(alue,)60 b(Readline)53 b(will)h(not)390 2311 y(p)s(erform)28
b(its)i(default)g(\014lename)g(completion)h(ev)m(en)f(if)g(the)f
-(application's)i(completion)g(function)390 1579 y(returns)e(no)h(matc)m
+(application's)i(completion)g(function)390 2421 y(returns)e(no)h(matc)m
(hes.)42 b(It)31 b(should)e(b)s(e)h(set)h(only)f(b)m(y)h(an)f
-(application's)i(completion)f(function.)3371 1763 y([V)-8
+(application's)i(completion)f(function.)3371 2605 y([V)-8
b(ariable])-3598 b Fg(int)53 b(rl_sort_completion_ma)q(tche)q(s)390
-1873 y Fs(If)29 b(an)h(application)h(sets)f(this)g(v)-5
+2715 y Fs(If)29 b(an)h(application)h(sets)f(this)g(v)-5
b(ariable)31 b(to)f(0,)h(Readline)f(will)g(not)g(sort)g(the)g(list)h
-(of)f(completions)390 1983 y(\(whic)m(h)25 b(implies)f(that)i(it)f
+(of)f(completions)390 2824 y(\(whic)m(h)25 b(implies)f(that)i(it)f
(cannot)g(remo)m(v)m(e)h(an)m(y)f(duplicate)g(completions\).)40
-b(The)24 b(default)h(v)-5 b(alue)25 b(is)390 2092 y(1,)32
+b(The)24 b(default)h(v)-5 b(alue)25 b(is)390 2934 y(1,)32
b(whic)m(h)f(means)g(that)h(Readline)g(will)f(sort)h(the)f(completions)
-h(and,)f(dep)s(ending)f(on)h(the)g(v)-5 b(alue)390 2202
+h(and,)f(dep)s(ending)f(on)h(the)g(v)-5 b(alue)390 3044
y(of)31 b Fr(rl_ignore_completion_du)o(pli)o(cate)o(s)p
Fs(,)25 b(will)30 b(attempt)i(to)f(remo)m(v)m(e)h(duplicate)f(matc)m
-(hes.)3371 2386 y([V)-8 b(ariable])-3598 b Fg(int)53
-b(rl_completion_type)390 2496 y Fs(Set)35 b(to)h(a)f(c)m(haracter)i
+(hes.)3371 3228 y([V)-8 b(ariable])-3598 b Fg(int)53
+b(rl_completion_type)390 3337 y Fs(Set)35 b(to)h(a)f(c)m(haracter)i
(describing)e(the)g(t)m(yp)s(e)g(of)g(completion)i(Readline)e(is)g
-(curren)m(tly)h(attempt-)390 2605 y(ing;)f(see)f(the)g(description)f
+(curren)m(tly)h(attempt-)390 3447 y(ing;)f(see)f(the)g(description)f
(of)g Fr(rl_complete_internal\(\))28 b Fs(\(see)34 b(Section)g(2.6.2)h
-([Completion)390 2715 y(F)-8 b(unctions],)39 b(page)f(44\))f(for)g(the)
+([Completion)390 3557 y(F)-8 b(unctions],)39 b(page)f(47\))f(for)g(the)
g(list)g(of)g(c)m(haracters.)61 b(This)36 b(is)g(set)i(to)f(the)g
-(appropriate)f(v)-5 b(alue)390 2824 y(b)s(efore)31 b(an)m(y)h
+(appropriate)f(v)-5 b(alue)390 3666 y(b)s(efore)31 b(an)m(y)h
(application-sp)s(eci\014c)h(completion)g(function)f(is)f(called,)j
-(allo)m(wing)f(suc)m(h)e(functions)390 2934 y(to)g(presen)m(t)g(the)f
+(allo)m(wing)f(suc)m(h)e(functions)390 3776 y(to)g(presen)m(t)g(the)f
(same)h(in)m(terface)h(as)e Fr(rl_complete\(\))p Fs(.)3371
-3118 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_completion_invokin)q
-(g_ke)q(y)390 3228 y Fs(Set)41 b(to)g(the)g(\014nal)g(c)m(haracter)h
+3960 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_completion_invokin)q
+(g_ke)q(y)390 4070 y Fs(Set)41 b(to)g(the)g(\014nal)g(c)m(haracter)h
(in)e(the)h(k)m(ey)g(sequence)h(that)f(in)m(v)m(ok)m(ed)h(one)f(of)g
-(the)g(completion)390 3337 y(functions)c(that)h(call)h
+(the)g(completion)390 4179 y(functions)c(that)h(call)h
Fr(rl_complete_internal\(\))p Fs(.)56 b(This)37 b(is)g(set)h(to)g(the)g
-(appropriate)f(v)-5 b(alue)390 3447 y(b)s(efore)30 b(an)m(y)h
+(appropriate)f(v)-5 b(alue)390 4289 y(b)s(efore)30 b(an)m(y)h
(application-sp)s(eci\014c)h(completion)f(function)f(is)h(called.)3371
-3631 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_inhibit_completion)390
-3741 y Fs(If)28 b(this)g(v)-5 b(ariable)29 b(is)f(non-zero,)i
+4473 y([V)-8 b(ariable])-3598 b Fg(int)53 b(rl_inhibit_completion)390
+4583 y Fs(If)28 b(this)g(v)-5 b(ariable)29 b(is)f(non-zero,)i
(completion)f(is)f(inhibited.)40 b(The)28 b(completion)h(c)m(haracter)h
-(will)f(b)s(e)390 3851 y(inserted)h(as)h(an)m(y)g(other)f(b)s(ound)e
-(to)k Fr(self-insert)p Fs(.)150 4050 y Fh(2.6.4)63 b(A)40
-b(Short)i(Completion)g(Example)150 4197 y Fs(Here)30
+(will)f(b)s(e)390 4692 y(inserted)h(as)h(an)m(y)g(other)f(b)s(ound)e
+(to)k Fr(self-insert)p Fs(.)150 4892 y Fh(2.6.4)63 b(A)40
+b(Short)i(Completion)g(Example)150 5039 y Fs(Here)30
b(is)f(a)g(small)h(application)g(demonstrating)f(the)h(use)e(of)i(the)f
(GNU)h(Readline)f(library)-8 b(.)40 b(It)30 b(is)f(called)150
-4306 y Fr(fileman)p Fs(,)35 b(and)g(the)h(source)f(co)s(de)h(resides)f
-(in)h(`)p Fr(examples/fileman.c)p Fs('.)51 b(This)35
-b(sample)h(application)150 4416 y(pro)m(vides)26 b(completion)i(of)e
-(command)g(names,)h(line)f(editing)h(features,)h(and)d(access)j(to)f
-(the)f(history)g(list.)p eop end
-%%Page: 50 54
-TeXDict begin 50 53 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(50)390
+5148 y Fr(fileman)p Fs(,)40 b(and)f(the)h(source)g(co)s(de)g(resides)f
+(in)g Fr(examples/fileman.c)p Fs(.)64 b(This)39 b(sample)h(application)
+150 5258 y(pro)m(vides)26 b(completion)i(of)e(command)g(names,)h(line)f
+(editing)h(features,)h(and)d(access)j(to)f(the)f(history)g(list.)p
+eop end
+%%Page: 53 57
+TeXDict begin 53 56 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(53)390
299 y Fe(/*)40 b(fileman.c)h(--)f(A)f(tiny)h(application)i(which)e
(demonstrates)i(how)e(to)g(use)g(the)508 386 y(GNU)g(Readline)h
(library.)80 b(This)40 b(application)i(interactively)g(allows)f(users)
@@ -7493,9 +10494,9 @@ y(int)e(com_cd)g(PARAMS\(\(char)i(*\)\);)390 4483 y(int)e(com_quit)h
(call)i(to)e(do)h(the)g(job.)g(*/)468 5181 y(char)h(*doc;)f(/*)g
(Documentation)i(for)e(this)g(function.)80 b(*/)390 5268
y(})39 b(COMMAND;)p eop end
-%%Page: 51 55
-TeXDict begin 51 54 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(51)390
+%%Page: 54 58
+TeXDict begin 54 57 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(54)390
386 y Fe(COMMAND)41 b(commands[])g(=)f({)468 473 y({)g("cd",)g(com_cd,)
h("Change)g(to)f(directory)h(DIR")f(},)468 560 y({)g("delete",)h
(com_delete,)h("Delete)f(FILE")f(},)468 648 y({)g("help",)h(com_help,)g
@@ -7531,9 +10532,9 @@ y(break;)625 5093 y(/*)g(Remove)h(leading)f(and)g(trailing)h
(whitespace)h(from)e(the)g(line.)743 5181 y(Then,)g(if)g(there)g(is)g
(anything)h(left,)g(add)e(it)h(to)g(the)g(history)h(list)743
5268 y(and)f(execute)h(it.)f(*/)p eop end
-%%Page: 52 56
-TeXDict begin 52 55 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(52)625
+%%Page: 55 59
+TeXDict begin 55 58 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(55)625
299 y Fe(s)40 b(=)f(stripwhite)j(\(line\);)625 473 y(if)e(\(*s\))704
560 y({)782 648 y(add_history)i(\(s\);)782 735 y(execute_line)g(\(s\);)
704 822 y(})625 996 y(free)e(\(line\);)547 1083 y(})468
@@ -7560,9 +10561,9 @@ y(if)e(\(!command\))547 3524 y({)625 3611 y(fprintf)h(\(stderr,)g
b(Return)41 b(a)e(NULL)h(pointer)h(if)f(NAME)g(isn't)g(a)g(command)g
(name.)h(*/)390 5006 y(COMMAND)g(*)390 5093 y(find_command)h(\(name\))
586 5181 y(char)e(*name;)390 5268 y({)p eop end
-%%Page: 53 57
-TeXDict begin 53 56 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(53)468
+%%Page: 56 60
+TeXDict begin 56 59 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(56)468
299 y Fe(register)41 b(int)f(i;)468 473 y(for)g(\(i)g(=)f(0;)h
(commands[i].name;)j(i++\))547 560 y(if)d(\(strcmp)g(\(name,)h
(commands[i].name\))i(==)d(0\))625 648 y(return)h(\(&commands[i]\);)468
@@ -7603,9 +10604,9 @@ b(We)40 b(can)g(use)f(the)h(entire)h(contents)g(of)f(rl_line_buffer)508
b(Return)40 b(the)g(array)h(of)e(matches,)508 5181 y(or)g(NULL)h(if)g
(there)h(aren't)f(any.)g(*/)390 5268 y(char)g(**)p eop
end
-%%Page: 54 58
-TeXDict begin 54 57 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(54)390
+%%Page: 57 61
+TeXDict begin 57 60 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(57)390
299 y Fe(fileman_completion)43 b(\(text,)e(start,)g(end\))586
386 y(const)f(char)h(*text;)586 473 y(int)f(start,)h(end;)390
560 y({)468 648 y(char)g(**matches;)468 822 y(matches)g(=)f(\(char)g
@@ -7644,9 +10645,9 @@ b(*/)390 4832 y(/*)903 b(FileMan)41 b(Commands)1060 b(*/)390
b(*/)390 5181 y(/*)40 b(String)g(to)g(pass)g(to)g(system)g(\(\).)80
b(This)40 b(is)f(for)h(the)g(LIST,)h(VIEW)f(and)g(RENAME)508
5268 y(commands.)h(*/)p eop end
-%%Page: 55 59
-TeXDict begin 55 58 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(55)390
+%%Page: 58 62
+TeXDict begin 58 61 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(58)390
299 y Fe(static)41 b(char)f(syscom[1024];)390 473 y(/*)g(List)g(the)g
(file\(s\))h(named)f(in)g(arg.)g(*/)390 560 y(com_list)h(\(arg\))586
648 y(char)f(*arg;)390 735 y({)468 822 y(if)g(\(!arg\))547
@@ -7674,9 +10675,9 @@ j(==)d(1\))f(?)h("")f(:)h("s",)782 5093 y(finfo.st_size,)782
5181 y(\(finfo.st_size)j(==)c(1\))h(?)g("")f(:)h("s"\);)468
5268 y(printf)h(\("Inode)g(Last)f(Change)h(at:)f(\045s",)g(ctime)g
(\(&finfo.st_ctime\)\);)p eop end
-%%Page: 56 60
-TeXDict begin 56 59 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(56)468
+%%Page: 59 63
+TeXDict begin 59 62 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(59)468
299 y Fe(printf)41 b(\(")236 b(Last)40 b(access)h(at:)f(\045s",)g
(ctime)g(\(&finfo.st_atime\)\);)468 386 y(printf)h(\(")157
b(Last)41 b(modified)g(at:)f(\045s",)g(ctime)g(\(&finfo.st_mtime\)\);)
@@ -7705,9 +10706,9 @@ b(Possibilties)42 b(are:\\n",)f(arg\);)625 3176 y(for)f(\(i)g(=)f(0;)h
4919 y(com_cd)h(\(arg\))586 5006 y(char)f(*arg;)390 5093
y({)468 5181 y(if)g(\(chdir)h(\(arg\))f(==)g(-1\))547
5268 y({)p eop end
-%%Page: 57 61
-TeXDict begin 57 60 bop 150 -116 a Fs(Chapter)30 b(2:)41
-b(Programming)30 b(with)g(GNU)h(Readline)1683 b(57)625
+%%Page: 60 64
+TeXDict begin 60 63 bop 150 -116 a Fs(Chapter)30 b(2:)41
+b(Programming)30 b(with)g(GNU)h(Readline)1683 b(60)625
299 y Fe(perror)41 b(\(arg\);)625 386 y(return)g(1;)547
473 y(})468 648 y(com_pwd)g(\(""\);)468 735 y(return)g(\(0\);)390
822 y(})390 996 y(/*)f(Print)g(out)g(the)g(current)h(working)g
@@ -7736,10 +10737,10 @@ y({)625 4658 y(fprintf)h(\(stderr,)g("\045s:)f(Argument)h
(required.\\n",)i(caller\);)625 4745 y(return)e(\(0\);)547
4832 y(})468 5006 y(return)g(\(1\);)390 5093 y(})p eop
end
-%%Page: 58 62
-TeXDict begin 58 61 bop 150 -116 a Fs(App)s(endix)29
+%%Page: 61 65
+TeXDict begin 61 64 bop 150 -116 a Fs(App)s(endix)29
b(A:)h(GNU)h(F)-8 b(ree)32 b(Do)s(cumen)m(tation)g(License)1603
-b(58)150 299 y Fo(App)t(endix)52 b(A)81 b(GNU)54 b(F)-13
+b(61)150 299 y Fo(App)t(endix)52 b(A)81 b(GNU)54 b(F)-13
b(ree)53 b(Do)t(cumen)l(tation)e(License)1359 502 y Fs(V)-8
b(ersion)31 b(1.3,)g(3)g(No)m(v)m(em)m(b)s(er)h(2008)390
635 y(Cop)m(yrigh)m(t)842 632 y(c)817 635 y Fp(\015)e
@@ -7820,10 +10821,10 @@ b(\\In)m(v)-5 b(arian)m(t)27 b(Sections")g(are)f(certain)g(Secondary)g
5340 y(b)s(eing)e(those)h(of)g(In)m(v)-5 b(arian)m(t)27
b(Sections,)i(in)d(the)h(notice)h(that)f(sa)m(ys)g(that)g(the)g(Do)s
(cumen)m(t)g(is)g(released)p eop end
-%%Page: 59 63
-TeXDict begin 59 62 bop 150 -116 a Fs(App)s(endix)29
+%%Page: 62 66
+TeXDict begin 62 65 bop 150 -116 a Fs(App)s(endix)29
b(A:)h(GNU)h(F)-8 b(ree)32 b(Do)s(cumen)m(tation)g(License)1603
-b(59)330 299 y(under)26 b(this)i(License.)40 b(If)27
+b(62)330 299 y(under)26 b(this)i(License.)40 b(If)27
b(a)h(section)h(do)s(es)f(not)f(\014t)h(the)g(ab)s(o)m(v)m(e)h
(de\014nition)e(of)h(Secondary)f(then)h(it)g(is)330 408
y(not)k(allo)m(w)m(ed)i(to)e(b)s(e)g(designated)g(as)g(In)m(v)-5
@@ -7865,59 +10866,59 @@ b(is)f(not)h(T)-8 b(ransparen)m(t)34 b(if)g(used)g(for)g(an)m(y)g
Fs(without)330 2395 y(markup,)37 b(T)-8 b(exinfo)36 b(input)f(format,)j
(LaT)1759 2414 y(E)1810 2395 y(X)e(input)f(format,)j
Fd(SGML)f Fs(or)f Fd(XML)g Fs(using)g(a)g(publicly)330
-2504 y(a)m(v)-5 b(ailable)42 b Fd(DTD)p Fs(,)g(and)d
-(standard-conforming)h(simple)g Fd(HTML)p Fs(,)g(P)m(ostScript)h(or)f
-Fd(PDF)g Fs(designed)330 2614 y(for)e(h)m(uman)g(mo)s(di\014cation.)65
-b(Examples)38 b(of)h(transparen)m(t)f(image)i(formats)e(include)g
-Fd(PNG)p Fs(,)h Fd(X)n(CF)330 2724 y Fs(and)h Fd(JPG)p
-Fs(.)g(Opaque)h(formats)g(include)f(proprietary)g(formats)h(that)h(can)
-f(b)s(e)f(read)g(and)h(edited)330 2833 y(only)54 b(b)m(y)f(proprietary)
-h(w)m(ord)f(pro)s(cessors,)59 b Fd(SGML)54 b Fs(or)f
-Fd(XML)h Fs(for)g(whic)m(h)f(the)h Fd(DTD)g Fs(and/or)330
-2943 y(pro)s(cessing)61 b(to)s(ols)h(are)f(not)g(generally)i(a)m(v)-5
-b(ailable,)71 b(and)60 b(the)h(mac)m(hine-generated)j
-Fd(HTML)p Fs(,)330 3052 y(P)m(ostScript)31 b(or)f Fd(PDF)h
-Fs(pro)s(duced)d(b)m(y)j(some)f(w)m(ord)g(pro)s(cessors)g(for)g(output)
-g(purp)s(oses)f(only)-8 b(.)330 3203 y(The)34 b(\\Title)h(P)m(age")i
-(means,)e(for)f(a)h(prin)m(ted)f(b)s(o)s(ok,)h(the)f(title)i(page)f
-(itself,)h(plus)e(suc)m(h)f(follo)m(wing)330 3313 y(pages)28
-b(as)g(are)g(needed)g(to)g(hold,)g(legibly)-8 b(,)30
-b(the)e(material)h(this)e(License)i(requires)e(to)h(app)s(ear)f(in)h
-(the)330 3422 y(title)g(page.)40 b(F)-8 b(or)28 b(w)m(orks)e(in)g
-(formats)h(whic)m(h)g(do)f(not)h(ha)m(v)m(e)h(an)m(y)e(title)j(page)e
-(as)g(suc)m(h,)g(\\Title)h(P)m(age")330 3532 y(means)j(the)f(text)i
-(near)e(the)h(most)g(prominen)m(t)g(app)s(earance)f(of)h(the)g(w)m
-(ork's)g(title,)h(preceding)f(the)330 3641 y(b)s(eginning)f(of)g(the)h
-(b)s(o)s(dy)e(of)h(the)h(text.)330 3792 y(The)j(\\publisher")g(means)h
-(an)m(y)f(p)s(erson)g(or)h(en)m(tit)m(y)h(that)f(distributes)f(copies)i
-(of)e(the)h(Do)s(cumen)m(t)330 3902 y(to)c(the)g(public.)330
-4052 y(A)f(section)h(\\En)m(titled)g(XYZ")f(means)f(a)h(named)g
-(subunit)e(of)h(the)h(Do)s(cumen)m(t)h(whose)e(title)i(either)330
-4162 y(is)d(precisely)g(XYZ)g(or)f(con)m(tains)i(XYZ)f(in)f(paren)m
-(theses)i(follo)m(wing)g(text)g(that)f(translates)h(XYZ)e(in)330
-4271 y(another)e(language.)40 b(\(Here)26 b(XYZ)f(stands)f(for)h(a)g
-(sp)s(eci\014c)g(section)h(name)f(men)m(tioned)h(b)s(elo)m(w,)g(suc)m
-(h)330 4381 y(as)i(\\Ac)m(kno)m(wledgemen)m(ts",)33 b(\\Dedications",)e
-(\\Endorsemen)m(ts",)e(or)f(\\History".\))42 b(T)-8 b(o)29
-b(\\Preserv)m(e)330 4491 y(the)34 b(Title")h(of)e(suc)m(h)h(a)g
-(section)g(when)f(y)m(ou)h(mo)s(dify)e(the)i(Do)s(cumen)m(t)h(means)e
-(that)h(it)g(remains)g(a)330 4600 y(section)e(\\En)m(titled)f(XYZ")g
-(according)g(to)g(this)g(de\014nition.)330 4751 y(The)c(Do)s(cumen)m(t)
-i(ma)m(y)f(include)f(W)-8 b(arran)m(t)m(y)30 b(Disclaimers)f(next)f(to)
-g(the)g(notice)h(whic)m(h)e(states)i(that)330 4861 y(this)34
-b(License)g(applies)g(to)h(the)f(Do)s(cumen)m(t.)52 b(These)33
-b(W)-8 b(arran)m(t)m(y)36 b(Disclaimers)f(are)g(considered)e(to)330
-4970 y(b)s(e)k(included)g(b)m(y)g(reference)h(in)g(this)f(License,)j
-(but)d(only)h(as)g(regards)f(disclaiming)i(w)m(arran)m(ties:)330
-5080 y(an)m(y)e(other)g(implication)i(that)e(these)g(W)-8
-b(arran)m(t)m(y)39 b(Disclaimers)f(ma)m(y)g(ha)m(v)m(e)g(is)f(v)m(oid)g
-(and)f(has)h(no)330 5189 y(e\013ect)32 b(on)e(the)h(meaning)f(of)h
-(this)f(License.)199 5340 y(2.)61 b(VERBA)-8 b(TIM)31
-b(COPYING)p eop end
-%%Page: 60 64
-TeXDict begin 60 63 bop 150 -116 a Fs(App)s(endix)29
+2504 y(a)m(v)-5 b(ailable)42 b Fd(DTD)p Fs(,)h(and)c
+(standard-conforming)g(simple)h Fd(HTML)p Fs(,)i(P)m(ostScript)e(or)f
+Fd(PDF)h Fs(designed)330 2614 y(for)e(h)m(uman)f(mo)s(di\014cation.)65
+b(Examples)38 b(of)h(transparen)m(t)f(image)h(formats)g(include)f
+Fd(PNG)p Fs(,)i Fd(X)n(CF)330 2724 y Fs(and)e Fd(JPG)p
+Fs(.)64 b(Opaque)38 b(formats)h(include)f(proprietary)h(formats)f(that)
+h(can)g(b)s(e)f(read)h(and)f(edited)330 2833 y(only)54
+b(b)m(y)f(proprietary)h(w)m(ord)f(pro)s(cessors,)59 b
+Fd(SGML)54 b Fs(or)f Fd(XML)h Fs(for)g(whic)m(h)f(the)h
+Fd(DTD)g Fs(and/or)330 2943 y(pro)s(cessing)61 b(to)s(ols)h(are)f(not)g
+(generally)i(a)m(v)-5 b(ailable,)71 b(and)60 b(the)h(mac)m
+(hine-generated)j Fd(HTML)p Fs(,)330 3052 y(P)m(ostScript)31
+b(or)f Fd(PDF)h Fs(pro)s(duced)d(b)m(y)j(some)f(w)m(ord)g(pro)s
+(cessors)g(for)g(output)g(purp)s(oses)f(only)-8 b(.)330
+3203 y(The)34 b(\\Title)h(P)m(age")i(means,)e(for)f(a)h(prin)m(ted)f(b)
+s(o)s(ok,)h(the)f(title)i(page)f(itself,)h(plus)e(suc)m(h)f(follo)m
+(wing)330 3313 y(pages)28 b(as)g(are)g(needed)g(to)g(hold,)g(legibly)-8
+b(,)30 b(the)e(material)h(this)e(License)i(requires)e(to)h(app)s(ear)f
+(in)h(the)330 3422 y(title)g(page.)40 b(F)-8 b(or)28
+b(w)m(orks)e(in)g(formats)h(whic)m(h)g(do)f(not)h(ha)m(v)m(e)h(an)m(y)e
+(title)j(page)e(as)g(suc)m(h,)g(\\Title)h(P)m(age")330
+3532 y(means)j(the)f(text)i(near)e(the)h(most)g(prominen)m(t)g(app)s
+(earance)f(of)h(the)g(w)m(ork's)g(title,)h(preceding)f(the)330
+3641 y(b)s(eginning)f(of)g(the)h(b)s(o)s(dy)e(of)h(the)h(text.)330
+3792 y(The)j(\\publisher")g(means)h(an)m(y)f(p)s(erson)g(or)h(en)m(tit)
+m(y)h(that)f(distributes)f(copies)i(of)e(the)h(Do)s(cumen)m(t)330
+3902 y(to)c(the)g(public.)330 4052 y(A)f(section)h(\\En)m(titled)g
+(XYZ")f(means)f(a)h(named)g(subunit)e(of)h(the)h(Do)s(cumen)m(t)h
+(whose)e(title)i(either)330 4162 y(is)d(precisely)g(XYZ)g(or)f(con)m
+(tains)i(XYZ)f(in)f(paren)m(theses)i(follo)m(wing)g(text)g(that)f
+(translates)h(XYZ)e(in)330 4271 y(another)e(language.)40
+b(\(Here)26 b(XYZ)f(stands)f(for)h(a)g(sp)s(eci\014c)g(section)h(name)f
+(men)m(tioned)h(b)s(elo)m(w,)g(suc)m(h)330 4381 y(as)i(\\Ac)m(kno)m
+(wledgemen)m(ts",)33 b(\\Dedications",)e(\\Endorsemen)m(ts",)e(or)f
+(\\History".\))42 b(T)-8 b(o)29 b(\\Preserv)m(e)330 4491
+y(the)34 b(Title")h(of)e(suc)m(h)h(a)g(section)g(when)f(y)m(ou)h(mo)s
+(dify)e(the)i(Do)s(cumen)m(t)h(means)e(that)h(it)g(remains)g(a)330
+4600 y(section)e(\\En)m(titled)f(XYZ")g(according)g(to)g(this)g
+(de\014nition.)330 4751 y(The)c(Do)s(cumen)m(t)i(ma)m(y)f(include)f(W)
+-8 b(arran)m(t)m(y)30 b(Disclaimers)f(next)f(to)g(the)g(notice)h(whic)m
+(h)e(states)i(that)330 4861 y(this)34 b(License)g(applies)g(to)h(the)f
+(Do)s(cumen)m(t.)52 b(These)33 b(W)-8 b(arran)m(t)m(y)36
+b(Disclaimers)f(are)g(considered)e(to)330 4970 y(b)s(e)k(included)g(b)m
+(y)g(reference)h(in)g(this)f(License,)j(but)d(only)h(as)g(regards)f
+(disclaiming)i(w)m(arran)m(ties:)330 5080 y(an)m(y)e(other)g
+(implication)i(that)e(these)g(W)-8 b(arran)m(t)m(y)39
+b(Disclaimers)f(ma)m(y)g(ha)m(v)m(e)g(is)f(v)m(oid)g(and)f(has)h(no)330
+5189 y(e\013ect)32 b(on)e(the)h(meaning)f(of)h(this)f(License.)199
+5340 y(2.)61 b(VERBA)-8 b(TIM)31 b(COPYING)p eop end
+%%Page: 63 67
+TeXDict begin 63 66 bop 150 -116 a Fs(App)s(endix)29
b(A:)h(GNU)h(F)-8 b(ree)32 b(Do)s(cumen)m(tation)g(License)1603
-b(60)330 299 y(Y)-8 b(ou)39 b(ma)m(y)f(cop)m(y)h(and)e(distribute)h
+b(63)330 299 y(Y)-8 b(ou)39 b(ma)m(y)f(cop)m(y)h(and)e(distribute)h
(the)g(Do)s(cumen)m(t)h(in)f(an)m(y)g(medium,)h(either)g(commercially)h
(or)330 408 y(noncommercially)-8 b(,)48 b(pro)m(vided)42
b(that)h(this)f(License,)47 b(the)42 b(cop)m(yrigh)m(t)i(notices,)j
@@ -8007,10 +11008,10 @@ b(in)f(the)h(Title)h(P)m(age)g(\(and)f(on)f(the)h(co)m(v)m(ers,)i(if)e
5340 y(Do)s(cumen)m(t,)j(and)d(from)g(those)i(of)f(previous)f(v)m
(ersions)h(\(whic)m(h)g(should,)g(if)g(there)g(w)m(ere)g(an)m(y)-8
b(,)p eop end
-%%Page: 61 65
-TeXDict begin 61 64 bop 150 -116 a Fs(App)s(endix)29
+%%Page: 64 68
+TeXDict begin 64 67 bop 150 -116 a Fs(App)s(endix)29
b(A:)h(GNU)h(F)-8 b(ree)32 b(Do)s(cumen)m(tation)g(License)1603
-b(61)510 299 y(b)s(e)31 b(listed)h(in)f(the)g(History)h(section)g(of)g
+b(64)510 299 y(b)s(e)31 b(listed)h(in)f(the)g(History)h(section)g(of)g
(the)f(Do)s(cumen)m(t\).)45 b(Y)-8 b(ou)32 b(ma)m(y)g(use)f(the)g(same)
h(title)h(as)510 408 y(a)e(previous)f(v)m(ersion)g(if)h(the)f(original)
i(publisher)d(of)h(that)h(v)m(ersion)g(giv)m(es)h(p)s(ermission.)360
@@ -8089,10 +11090,10 @@ b(arran)m(t)m(y)32 b(Disclaimers.)330 5121 y(If)h(the)g(Mo)s(di\014ed)g
(designate)h(some)e(or)h(all)g(of)f(these)h(sections)h(as)e(in)m(v)-5
b(arian)m(t.)48 b(T)-8 b(o)33 b(do)f(this,)h(add)f(their)p
eop end
-%%Page: 62 66
-TeXDict begin 62 65 bop 150 -116 a Fs(App)s(endix)29
+%%Page: 65 69
+TeXDict begin 65 68 bop 150 -116 a Fs(App)s(endix)29
b(A:)h(GNU)h(F)-8 b(ree)32 b(Do)s(cumen)m(tation)g(License)1603
-b(62)330 299 y(titles)37 b(to)f(the)f(list)h(of)g(In)m(v)-5
+b(65)330 299 y(titles)37 b(to)f(the)f(list)h(of)g(In)m(v)-5
b(arian)m(t)36 b(Sections)g(in)f(the)h(Mo)s(di\014ed)f(V)-8
b(ersion's)36 b(license)g(notice.)57 b(These)330 408
y(titles)32 b(m)m(ust)e(b)s(e)g(distinct)h(from)e(an)m(y)i(other)g
@@ -8177,10 +11178,10 @@ b(ma)m(y)g(extract)h(a)f(single)g(do)s(cumen)m(t)f(from)g(suc)m(h)g(a)h
5230 y(do)s(cumen)m(t,)d(and)f(follo)m(w)i(this)e(License)h(in)g(all)g
(other)g(resp)s(ects)f(regarding)h(v)m(erbatim)g(cop)m(ying)h(of)330
5340 y(that)d(do)s(cumen)m(t.)p eop end
-%%Page: 63 67
-TeXDict begin 63 66 bop 150 -116 a Fs(App)s(endix)29
+%%Page: 66 70
+TeXDict begin 66 69 bop 150 -116 a Fs(App)s(endix)29
b(A:)h(GNU)h(F)-8 b(ree)32 b(Do)s(cumen)m(tation)g(License)1603
-b(63)199 299 y(7.)61 b(A)m(GGREGA)-8 b(TION)32 b(WITH)e(INDEPENDENT)h
+b(66)199 299 y(7.)61 b(A)m(GGREGA)-8 b(TION)32 b(WITH)e(INDEPENDENT)h
(W)m(ORKS)330 441 y(A)d(compilation)i(of)e(the)g(Do)s(cumen)m(t)h(or)f
(its)g(deriv)-5 b(ativ)m(es)30 b(with)d(other)i(separate)g(and)e(indep)
s(enden)m(t)330 551 y(do)s(cumen)m(ts)33 b(or)g(w)m(orks,)h(in)f(or)h
@@ -8265,10 +11266,10 @@ b(ha)m(v)m(e)h(receiv)m(ed)h(copies)e(or)h(righ)m(ts)f(from)g(y)m(ou)g
(reinstated,)i(receipt)f(of)f(a)g(cop)m(y)h(of)f(some)h(or)f(all)h(of)f
(the)330 5340 y(same)31 b(material)h(do)s(es)e(not)g(giv)m(e)i(y)m(ou)f
(an)m(y)g(righ)m(ts)f(to)i(use)e(it.)p eop end
-%%Page: 64 68
-TeXDict begin 64 67 bop 150 -116 a Fs(App)s(endix)29
+%%Page: 67 71
+TeXDict begin 67 70 bop 150 -116 a Fs(App)s(endix)29
b(A:)h(GNU)h(F)-8 b(ree)32 b(Do)s(cumen)m(tation)g(License)1603
-b(64)154 299 y(10.)61 b(FUTURE)30 b(REVISIONS)f(OF)i(THIS)e(LICENSE)330
+b(67)154 299 y(10.)61 b(FUTURE)30 b(REVISIONS)f(OF)i(THIS)e(LICENSE)330
433 y(The)41 b(F)-8 b(ree)43 b(Soft)m(w)m(are)f(F)-8
b(oundation)43 b(ma)m(y)f(publish)e(new,)k(revised)d(v)m(ersions)h(of)g
(the)g(GNU)g(F)-8 b(ree)330 543 y(Do)s(cumen)m(tation)34
@@ -8332,17 +11333,17 @@ f(of)g(that)330 2944 y(license)31 b(published)e(b)m(y)h(that)h(same)g
g(under)330 3895 y(CC-BY-SA)30 b(on)g(the)h(same)f(site)h(at)g(an)m(y)g
(time)g(b)s(efore)e(August)h(1,)h(2009,)h(pro)m(vided)e(the)g(MMC)h(is)
330 4005 y(eligible)h(for)e(relicensing.)p eop end
-%%Page: 65 69
-TeXDict begin 65 68 bop 150 -116 a Fs(App)s(endix)29
+%%Page: 68 72
+TeXDict begin 68 71 bop 150 -116 a Fs(App)s(endix)29
b(A:)h(GNU)h(F)-8 b(ree)32 b(Do)s(cumen)m(tation)g(License)1603
-b(65)150 299 y Fq(ADDENDUM:)45 b(Ho)l(w)h(to)f(use)g(this)h(License)f
+b(68)150 299 y Fq(ADDENDUM:)45 b(Ho)l(w)h(to)f(use)g(this)h(License)f
(for)g(y)l(our)g(do)t(cumen)l(ts)150 458 y Fs(T)-8 b(o)35
b(use)f(this)h(License)g(in)f(a)h(do)s(cumen)m(t)g(y)m(ou)f(ha)m(v)m(e)
i(written,)g(include)f(a)f(cop)m(y)i(of)f(the)f(License)h(in)g(the)150
568 y(do)s(cumen)m(t)30 b(and)g(put)g(the)g(follo)m(wing)i(cop)m(yrigh)
m(t)g(and)e(license)h(notices)g(just)f(after)h(the)g(title)h(page:)468
-680 y Fe(Copyright)42 b(\(C\))79 b Fc(year)88 b(your)40
-b(name)9 b Fe(.)468 767 y(Permission)42 b(is)e(granted)g(to)g(copy,)h
+680 y Fe(Copyright)42 b(\(C\))79 b Fc(year)g(your)40
+b(name)p Fe(.)468 767 y(Permission)i(is)e(granted)g(to)g(copy,)h
(distribute)g(and/or)g(modify)f(this)g(document)468 854
y(under)h(the)f(terms)g(of)g(the)g(GNU)g(Free)g(Documentation)i
(License,)f(Version)g(1.3)468 941 y(or)f(any)g(later)g(version)h
@@ -8356,25 +11357,25 @@ b(ron)m(t-Co)m(v)m(er)42 b(T)-8 b(exts)41 b(and)e(Bac)m(k-Co)m(v)m(er)k
(T)-8 b(exts,)43 b(replace)e(the)150 1447 y(\\with)6
b(.)22 b(.)g(.)12 b(T)-8 b(exts.")41 b(line)31 b(with)f(this:)547
1559 y Fe(with)40 b(the)g(Invariant)h(Sections)g(being)g
-Fc(list)f(their)g(titles)9 b Fe(,)41 b(with)547 1646
-y(the)f(Front-Cover)i(Texts)e(being)g Fc(list)9 b Fe(,)40
-b(and)g(with)g(the)g(Back-Cover)i(Texts)547 1733 y(being)e
-Fc(list)9 b Fe(.)275 1868 y Fs(If)34 b(y)m(ou)i(ha)m(v)m(e)g(In)m(v)-5
-b(arian)m(t)36 b(Sections)g(without)f(Co)m(v)m(er)h(T)-8
-b(exts,)38 b(or)d(some)g(other)h(com)m(bination)g(of)g(the)150
-1978 y(three,)31 b(merge)g(those)g(t)m(w)m(o)g(alternativ)m(es)i(to)e
-(suit)f(the)h(situation.)275 2112 y(If)23 b(y)m(our)h(do)s(cumen)m(t)f
-(con)m(tains)i(non)m(trivial)g(examples)g(of)f(program)f(co)s(de,)j(w)m
-(e)e(recommend)g(releasing)150 2222 y(these)44 b(examples)f(in)g
-(parallel)h(under)e(y)m(our)h(c)m(hoice)i(of)e(free)g(soft)m(w)m(are)h
-(license,)k(suc)m(h)43 b(as)g(the)g(GNU)150 2331 y(General)31
-b(Public)f(License,)i(to)f(p)s(ermit)e(their)i(use)f(in)g(free)g(soft)m
-(w)m(are.)p eop end
-%%Page: 66 70
-TeXDict begin 66 69 bop 150 -116 a Fs(Concept)31 b(Index)2927
-b(66)150 299 y Fo(Concept)52 b(Index)150 638 y Fq(A)150
+Fc(list)f(their)g(titles)p Fe(,)h(with)547 1646 y(the)f(Front-Cover)i
+(Texts)e(being)g Fc(list)p Fe(,)h(and)f(with)g(the)g(Back-Cover)h
+(Texts)547 1733 y(being)f Fc(list)p Fe(.)275 1868 y Fs(If)34
+b(y)m(ou)i(ha)m(v)m(e)g(In)m(v)-5 b(arian)m(t)36 b(Sections)g(without)f
+(Co)m(v)m(er)h(T)-8 b(exts,)38 b(or)d(some)g(other)h(com)m(bination)g
+(of)g(the)150 1978 y(three,)31 b(merge)g(those)g(t)m(w)m(o)g
+(alternativ)m(es)i(to)e(suit)f(the)h(situation.)275 2112
+y(If)23 b(y)m(our)h(do)s(cumen)m(t)f(con)m(tains)i(non)m(trivial)g
+(examples)g(of)f(program)f(co)s(de,)j(w)m(e)e(recommend)g(releasing)150
+2222 y(these)44 b(examples)f(in)g(parallel)h(under)e(y)m(our)h(c)m
+(hoice)i(of)e(free)g(soft)m(w)m(are)h(license,)k(suc)m(h)43
+b(as)g(the)g(GNU)150 2331 y(General)31 b(Public)f(License,)i(to)f(p)s
+(ermit)e(their)i(use)f(in)g(free)g(soft)m(w)m(are.)p
+eop end
+%%Page: 69 73
+TeXDict begin 69 72 bop 150 -116 a Fs(Concept)31 b(Index)2927
+b(69)150 299 y Fo(Concept)52 b(Index)150 638 y Fq(A)150
754 y Fb(application-sp)r(eci\014c)27 b(completion)f(functions)17
-b Fa(:)d(:)f(:)g(:)g(:)h(:)f(:)43 b Fb(43)150 1005 y
+b Fa(:)d(:)f(:)g(:)g(:)h(:)f(:)43 b Fb(46)150 1005 y
Fq(C)150 1121 y Fb(command)26 b(editing)17 b Fa(:)d(:)f(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
g(:)g(:)g(:)g(:)g(:)h(:)f(:)44 b Fb(1)150 1372 y Fq(E)150
@@ -8405,24 +11406,24 @@ b Fb(4)2025 2178 y Fq(Y)2025 2309 y Fb(y)n(anking)25
b(text)11 b Fa(:)h(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
g(:)h(:)f(:)g(:)38 b Fb(2)p eop end
-%%Page: 67 71
-TeXDict begin 67 70 bop 150 -116 a Fs(F)-8 b(unction)31
-b(and)f(V)-8 b(ariable)32 b(Index)2370 b(67)150 299 y
+%%Page: 70 74
+TeXDict begin 70 73 bop 150 -116 a Fs(F)-8 b(unction)31
+b(and)f(V)-8 b(ariable)32 b(Index)2370 b(70)150 299 y
Fo(F)-13 b(unction)52 b(and)h(V)-13 b(ariable)53 b(Index)p
159 610 41 6 v 150 726 a Fe(_rl_digit_p)24 b Fa(:)13
b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)48
-b Fb(38)150 814 y Fe(_rl_digit_value)11 b Fa(:)17 b(:)c(:)g(:)g(:)g(:)g
+b Fb(39)150 814 y Fe(_rl_digit_value)11 b Fa(:)17 b(:)c(:)g(:)g(:)g(:)g
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)38 b Fb(38)150 901 y Fe(_rl_lowercase_p)11
+g(:)g(:)g(:)g(:)g(:)g(:)38 b Fb(39)150 901 y Fe(_rl_lowercase_p)11
b Fa(:)17 b(:)c(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)38
-b Fb(38)150 988 y Fe(_rl_to_lower)22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)
+b Fb(39)150 988 y Fe(_rl_to_lower)22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)
h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45 b Fb(38)150 1076
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45 b Fb(39)150 1076
y Fe(_rl_to_upper)22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)45 b Fb(38)150 1163 y Fe(_rl_uppercase_p)11
+(:)g(:)h(:)f(:)g(:)45 b Fb(39)150 1163 y Fe(_rl_uppercase_p)11
b Fa(:)17 b(:)c(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)38
b Fb(38)150 1415 y Fq(A)150 1531 y Fe(abort)27 b(\(C-g\))11
@@ -8456,686 +11457,719 @@ b Fb(5)150 2935 y Fq(C)150 3051 y Fe(call-last-kbd-macro)30
b(\(C-x)c(e\))11 b Fa(:)j(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
(:)g(:)g(:)g(:)g(:)38 b Fb(19)150 3139 y Fe(capitalize-word)29
b(\(M-c\))21 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Fb(16)150
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Fb(17)150
3226 y Fe(character-search)29 b(\(C-]\))17 b Fa(:)e(:)e(:)g(:)g(:)g(:)g
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)44
b Fb(20)150 3313 y Fe(character-search-backward)31 b(\(M-C-]\))6
b Fa(:)15 b(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(20)150
3401 y Fe(clear-screen)28 b(\(C-l\))10 b Fa(:)15 b(:)e(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)37 b Fb(14)150 3488 y(commen)n(t-b)r(egin)17
-b Fa(:)d(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)44
-b Fb(5)150 3575 y Fe(complete)27 b(\(TAB\))22 b Fa(:)13
-b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47
-b Fb(18)150 3662 y(completion-displa)n(y-width)22 b Fa(:)13
-b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)48 b Fb(5)150 3750 y(completion-ignore-case)13
-b Fa(:)i(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)40 b Fb(5)150 3837
-y(completion-map-case)9 b Fa(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-36 b Fb(5)150 3924 y(completion-pre\014x-displa)n(y-length)8
-b Fa(:)k(:)h(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-34 b Fb(5)150 4012 y(completion-query-items)17 b Fa(:)c(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)44 b Fb(5)150 4099 y(con)n(v)n(ert-meta)20 b
-Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+g(:)g(:)g(:)37 b Fb(14)150 3488 y(colored-stats)11 b
+Fa(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)47 b Fb(5)150 4186 y Fe(copy-backward-word)30 b(\(\))20
-b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Fb(17)150 4273 y Fe(copy-forward-word)
-29 b(\(\))23 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)49 b Fb(18)150
-4361 y Fe(copy-region-as-kill)30 b(\(\))17 b Fa(:)d(:)f(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)44
-b Fb(17)150 4613 y Fq(D)150 4729 y Fe(delete-char)28
+h(:)37 b Fb(5)150 3575 y(commen)n(t-b)r(egin)17 b Fa(:)d(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)44 b Fb(5)150
+3662 y Fe(complete)27 b(\(TAB\))22 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)47 b Fb(18)150 3750 y(completion-displa)n
+(y-width)22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)48 b Fb(5)150
+3837 y(completion-ignore-case)13 b Fa(:)i(:)e(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+40 b Fb(5)150 3924 y(completion-map-case)9 b Fa(:)14
+b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)36 b Fb(5)150
+4012 y(completion-pre\014x-displa)n(y-length)8 b Fa(:)k(:)h(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)34 b Fb(5)150
+4099 y(completion-query-items)17 b Fa(:)c(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)44
+b Fb(5)150 4186 y(con)n(v)n(ert-meta)20 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)47 b Fb(5)150
+4273 y Fe(copy-backward-word)30 b(\(\))20 b Fa(:)13 b(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+46 b Fb(18)150 4361 y Fe(copy-forward-word)29 b(\(\))23
+b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)49 b Fb(18)150 4448 y
+Fe(copy-region-as-kill)30 b(\(\))17 b Fa(:)d(:)f(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)44
+b Fb(18)150 4700 y Fq(D)150 4816 y Fe(delete-char)28
b(\(C-d\))13 b Fa(:)h(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39
-b Fb(16)150 4816 y Fe(delete-char-or-list)30 b(\(\))17
+b Fb(16)150 4904 y Fe(delete-char-or-list)30 b(\(\))17
b Fa(:)d(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)44 b Fb(19)150 4904 y Fe(delete-horizontal-space)31
+g(:)g(:)g(:)g(:)g(:)44 b Fb(19)150 4991 y Fe(delete-horizontal-space)31
b(\(\))7 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)33 b Fb(17)150 4991 y Fe(digit-argument)c(\()p
+g(:)g(:)g(:)h(:)33 b Fb(18)150 5078 y Fe(digit-argument)c(\()p
Fc(M-0)p Fe(,)e Fc(M-1)p Fe(,)f(...)g Fc(M--)p Fe(\))7
b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fb(18)150
-5078 y(disable-completion)13 b Fa(:)h(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+5166 y(disable-completion)13 b Fa(:)h(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)40 b Fb(5)150 5166 y Fe(do-uppercase-version)30
-b(\(M-a,)d(M-b,)f(M-)p Fc(x)9 b Fe(,)27 b(...\))310 5253
+g(:)g(:)g(:)40 b Fb(6)150 5253 y Fe(do-uppercase-version)30
+b(\(M-a,)d(M-b,)f(M-)p Fc(x)p Fe(,)h(...)q(\))310 5340
y Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33 b Fb(19)150 5340
-y Fe(downcase-word)c(\(M-l\))8 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-34 b Fb(16)2025 610 y Fe(dump-functions)29 b(\(\))13
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33 b Fb(20)2025 610
+y Fe(downcase-word)28 b(\(M-l\))8 b Fa(:)14 b(:)g(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)34 b Fb(17)2025 698 y Fe(dump-functions)29 b(\(\))13
b Fa(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)39 b Fb(20)2025
-698 y Fe(dump-macros)28 b(\(\))21 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g
+786 y Fe(dump-macros)28 b(\(\))21 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)47 b Fb(20)2025 785 y Fe(dump-variables)29
+g(:)g(:)g(:)h(:)f(:)g(:)47 b Fb(21)2025 874 y Fe(dump-variables)29
b(\(\))13 b Fa(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)39
-b Fb(20)2025 1039 y Fq(E)2025 1156 y Fb(editing-mo)r(de)21
+b Fb(21)2025 1130 y Fq(E)2025 1247 y Fb(editing-mo)r(de)21
b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)48 b Fb(6)2025 1243 y Fe(emacs-editing-mode)29 b(\(C-e\))12
+g(:)48 b Fb(6)2025 1335 y Fe(emacs-editing-mode)29 b(\(C-e\))12
b Fa(:)j(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)39 b Fb(20)2025 1331 y(enable-k)n(eypad)17
+g(:)g(:)g(:)39 b Fb(21)2025 1423 y(enable-k)n(eypad)17
b Fa(:)c(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)46
-b Fb(6)2025 1419 y Fe(end-kbd-macro)28 b(\(C-x)f(\)\))10
+b Fb(6)2025 1511 y Fe(end-kbd-macro)28 b(\(C-x)f(\)\))10
b Fa(:)j(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)36 b Fb(19)2025 1506 y Fe(end-of-history)29
-b(\(M->\))23 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)49 b Fb(15)2025
-1594 y Fe(end-of-line)28 b(\(C-e\))13 b Fa(:)h(:)f(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)39 b Fb(14)2025 1681 y Fe(exchange-point-and-mark)31
-b(\(C-x)26 b(C-x\))13 b Fa(:)h(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)40
-b Fb(20)2025 1769 y(expand-tilde)14 b Fa(:)e(:)h(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)41 b Fb(6)2025
-2020 y Fq(F)2025 2137 y Fe(forward-backward-delete-char)32
-b(\(\))11 b Fa(:)j(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)38
-b Fb(16)2025 2225 y Fe(forward-char)28 b(\(C-f\))10 b
-Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37 b Fb(14)2025
-2312 y Fe(forward-search-history)30 b(\(C-s\))21 b Fa(:)13
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)36 b Fb(19)2025 1599 y Fc(end-of-file)28
+b Fe(\(usually)f(C-d\))16 b Fa(:)f(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)43 b Fb(16)2025 1687
+y Fe(end-of-history)29 b(\(M->\))23 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)49
+b Fb(15)2025 1775 y Fe(end-of-line)28 b(\(C-e\))13 b
+Fa(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)39 b Fb(14)2025
+1863 y Fe(exchange-point-and-mark)31 b(\(C-x)26 b(C-x\))13
+b Fa(:)h(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)40 b Fb(20)2025
+1951 y(expand-tilde)14 b Fa(:)e(:)h(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)41 b Fb(6)2025 2205 y Fq(F)2025
+2322 y Fe(forward-backward-delete-char)32 b(\(\))11 b
+Fa(:)j(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)38 b
+Fb(16)2025 2410 y Fe(forward-char)28 b(\(C-f\))10 b Fa(:)15
+b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37 b Fb(14)2025 2498
+y Fe(forward-search-history)30 b(\(C-s\))21 b Fa(:)13
b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)46
-b Fb(15)2025 2400 y Fe(forward-word)28 b(\(M-f\))10 b
+b Fb(15)2025 2586 y Fe(forward-word)28 b(\(M-f\))10 b
Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37 b Fb(14)2025
-2643 y Fq(H)2025 2760 y Fb(history-preserv)n(e-p)r(oin)n(t)9
+2831 y Fq(H)2025 2949 y Fb(history-preserv)n(e-p)r(oin)n(t)9
b Fa(:)j(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)36 b Fb(6)2025
-2848 y Fe(history-search-backward)31 b(\(\))7 b Fa(:)13
+3037 y Fe(history-search-backward)31 b(\(\))7 b Fa(:)13
b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)34
-b Fb(15)2025 2935 y Fe(history-search-forward)c(\(\))10
+b Fb(15)2025 3125 y Fe(history-search-forward)c(\(\))10
b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)36 b Fb(15)2025 3023 y(history-size)16 b Fa(:)d(:)h(:)f(:)g(:)g
+f(:)g(:)36 b Fb(15)2025 3213 y(history-size)16 b Fa(:)d(:)h(:)f(:)g(:)g
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)43
-b Fb(6)2025 3110 y(horizon)n(tal-scroll-mo)r(de)23 b
-Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)48 b Fb(6)2025
-3345 y Fq(I)2025 3462 y Fb(input-meta)19 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)47
-b Fb(6)2025 3550 y Fe(insert-comment)29 b(\(M-#\))23
-b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)49 b Fb(20)2025 3637 y
-Fe(insert-completions)29 b(\(M-*\))12 b Fa(:)j(:)e(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)39
-b Fb(18)2025 3725 y(isearc)n(h-terminators)21 b Fa(:)13
+b Fb(6)2025 3301 y Fe(history-substr-search-backward)32
+b(\(\))6 b Fa(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)33
+b Fb(15)2025 3389 y Fe(history-substr-search-forward)f(\(\))9
+b Fa(:)k(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)35 b Fb(15)2025
+3477 y(horizon)n(tal-scroll-mo)r(de)23 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)48 b Fb(6)2025 3713 y Fq(I)2025 3831 y Fb(input-meta)19
+b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)47 b Fb(7)2025 3919 y Fe(insert-comment)29
+b(\(M-#\))23 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)49 b Fb(20)2025
+4007 y Fe(insert-completions)29 b(\(M-*\))12 b Fa(:)j(:)e(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)39
+b Fb(19)2025 4095 y(isearc)n(h-terminators)21 b Fa(:)13
b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)47 b Fb(6)2025
-3960 y Fq(K)2025 4077 y Fb(k)n(eymap)8 b Fa(:)k(:)h(:)g(:)g(:)g(:)h(:)f
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)47 b Fb(7)2025
+4332 y Fq(K)2025 4449 y Fb(k)n(eymap)8 b Fa(:)k(:)h(:)g(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)35
-b Fb(7)2025 4164 y Fe(kill-line)27 b(\(C-k\))18 b Fa(:)d(:)e(:)g(:)g(:)
+b Fb(7)2025 4537 y Fe(kill-line)27 b(\(C-k\))18 b Fa(:)d(:)e(:)g(:)g(:)
g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45 b Fb(17)2025 4252 y
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45 b Fb(17)2025 4625 y
Fe(kill-region)28 b(\(\))21 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)47 b Fb(17)2025 4339 y Fe(kill-whole-line)29
+g(:)h(:)f(:)g(:)47 b Fb(18)2025 4713 y Fe(kill-whole-line)29
b(\(\))10 b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37
-b Fb(17)2025 4427 y Fe(kill-word)27 b(\(M-d\))18 b Fa(:)d(:)e(:)g(:)g
+b Fb(17)2025 4801 y Fe(kill-word)27 b(\(M-d\))18 b Fa(:)d(:)e(:)g(:)g
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45 b Fb(17)2025 4670
-y Fq(M)2025 4787 y Fb(mark-mo)r(di\014ed-lines)11 b Fa(:)i(:)g(:)g(:)g
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45 b Fb(17)2025 5046
+y Fq(M)2025 5164 y Fb(mark-mo)r(di\014ed-lines)11 b Fa(:)i(:)g(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)38 b Fb(7)2025 4875 y(mark-symlink)n
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)38 b Fb(7)2025 5252 y(mark-symlink)n
(ed-directories)8 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)35 b Fb(7)2025
-4962 y(matc)n(h-hidden-\014les)18 b Fa(:)12 b(:)h(:)g(:)g(:)g(:)h(:)f
+5340 y(matc)n(h-hidden-\014les)18 b Fa(:)12 b(:)h(:)g(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)45 b Fb(7)2025 5050 y Fe(menu-complete)28
-b(\(\))16 b Fa(:)d(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)42
-b Fb(18)2025 5137 y Fe(menu-complete-backward)30 b(\(\))10
-b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)36 b Fb(19)2025 5225 y(men)n(u-complete-displa)n(y-pre\014x)19
-b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)49 b Fb(7)2025 5312 y(meta-\015ag)15 b Fa(:)f(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)42
-b Fb(6)p eop end
-%%Page: 68 72
-TeXDict begin 68 71 bop 150 -116 a Fs(F)-8 b(unction)31
-b(and)f(V)-8 b(ariable)32 b(Index)2370 b(68)150 299 y
-Fq(N)150 417 y Fe(next-history)28 b(\(C-n\))10 b Fa(:)15
-b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)37 b Fb(15)150 506
-y Fe(non-incremental-forward-searc)q(h-hi)q(story)32
-b(\(M-n\))310 593 y Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+g(:)g(:)g(:)g(:)h(:)45 b Fb(7)p eop end
+%%Page: 71 75
+TeXDict begin 71 74 bop 150 -116 a Fs(F)-8 b(unction)31
+b(and)f(V)-8 b(ariable)32 b(Index)2370 b(71)150 299 y
+Fe(menu-complete)29 b(\(\))16 b Fa(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)42 b Fb(19)150 386 y Fe(menu-complete-backward)31
+b(\(\))10 b Fa(:)j(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)36 b Fb(19)150 473 y(men)n(u-complete-displa)n
+(y-pre\014x)19 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)48 b Fb(8)150 561 y(meta-\015ag)15
+b Fa(:)f(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)42 b Fb(7)150 811 y Fq(N)150 927 y
+Fe(next-history)28 b(\(C-n\))10 b Fa(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)37 b Fb(15)150 1014 y Fe(non-incremental-forward-searc)q(h-hi)q
+(story)32 b(\(M-n\))310 1102 y Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33
+b Fb(15)150 1189 y Fe(non-incremental-reverse-searc)q(h-hi)q(story)f
+(\(M-p\))310 1276 y Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33
-b Fb(15)150 681 y Fe(non-incremental-reverse-searc)q(h-hi)q(story)f
-(\(M-p\))310 769 y Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)33
-b Fb(15)150 1008 y Fq(O)150 1126 y Fb(output-meta)13
+b Fb(15)150 1510 y Fq(O)150 1626 y Fb(output-meta)13
b Fa(:)f(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)40 b Fb(7)150 1215 y Fe(overwrite-mode)29 b(\(\))13
+(:)g(:)40 b Fb(8)150 1713 y Fe(overwrite-mode)29 b(\(\))13
b Fa(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b Fb(17)150
-1462 y Fq(P)150 1581 y Fb(page-completions)21 b Fa(:)13
+1955 y Fq(P)150 2071 y Fb(page-completions)21 b Fa(:)13
b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)46
-b Fb(7)150 1669 y Fe(possible-completions)30 b(\(M-?\))7
+b Fb(8)150 2158 y Fe(possible-completions)30 b(\(M-?\))7
b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)33 b Fb(18)150 1758 y Fe(prefix-meta)28 b(\(ESC\))13
+(:)h(:)33 b Fb(19)150 2246 y Fe(prefix-meta)28 b(\(ESC\))13
b Fa(:)h(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b Fb(19)150
-1846 y Fe(previous-history)29 b(\(C-p\))17 b Fa(:)e(:)e(:)g(:)g(:)g(:)g
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b Fb(20)150
+2333 y Fe(previous-history)29 b(\(C-p\))17 b Fa(:)e(:)e(:)g(:)g(:)g(:)g
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)44
-b Fb(14)150 2104 y Fq(Q)150 2223 y Fe(quoted-insert)29
-b(\(C-q)d(or)g(C-v\))c Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)47 b Fb(16)150 2481 y Fq(R)150
-2599 y Fe(re-read-init-file)29 b(\(C-x)e(C-r\))11 b Fa(:)j(:)g(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)38
-b Fb(19)150 2687 y Fe(readline)12 b Fa(:)j(:)e(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)38 b
-Fb(22)150 2776 y Fe(redraw-current-line)30 b(\(\))17
-b Fa(:)d(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)44 b Fb(14)150 2864 y Fe(reverse-search-history)31
-b(\(C-r\))20 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)45 b Fb(15)150 2953 y(rev)n(ert-all-at-newline)22
-b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)48 b Fb(8)150
-3041 y Fe(revert-line)28 b(\(M-r\))13 b Fa(:)h(:)f(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)39 b Fb(19)150 3130 y Fe(rl_add_defun)22
-b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45
-b Fb(30)150 3218 y Fe(rl_add_funmap_entry)18 b Fa(:)g(:)13
-b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)44 b Fb(33)150 3306 y Fe(rl_add_undo)24
-b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+b Fb(14)150 2420 y Fe(print-last-kbd-macro)30 b(\(\))15
+b Fa(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)41 b Fb(19)150 2673 y Fq(Q)150 2789 y
+Fe(quoted-insert)29 b(\(C-q)d(or)g(C-v\))c Fa(:)13 b(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)47 b
+Fb(16)150 3041 y Fq(R)150 3157 y Fe(re-read-init-file)29
+b(\(C-x)e(C-r\))11 b Fa(:)j(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)38 b Fb(19)150 3245 y Fe(readline)12
+b Fa(:)j(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)38 b Fb(22)150 3332 y Fe(redraw-current-line)30
+b(\(\))17 b Fa(:)d(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)44 b Fb(14)150 3419 y
+Fe(reverse-search-history)31 b(\(C-r\))20 b Fa(:)13 b(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)45 b Fb(15)150
+3506 y(rev)n(ert-all-at-newline)22 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-48 b Fb(34)150 3395 y Fe(rl_alphabetic)16 b Fa(:)g(:)e(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)43 b Fb(37)150 3483 y
-Fe(rl_already_prompted)18 b Fa(:)g(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)44
-b Fb(26)150 3572 y Fe(rl_attempted_completion_funct)q(ion)25
-b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)45 b Fb(45)150
-3660 y Fe(rl_attempted_completion_over)13 b Fa(:)19 b(:)13
-b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39
-b Fb(49)150 3748 y Fe(rl_basic_quote_characters)26 b
+g(:)g(:)h(:)48 b Fb(8)150 3594 y Fe(revert-line)28 b(\(M-r\))13
+b Fa(:)h(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b Fb(20)150
+3681 y Fe(rl_add_defun)22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)45 b Fb(30)150 3768 y Fe(rl_add_funmap_entry)18
+b Fa(:)g(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Fb(34)150 3856
+y Fe(rl_add_undo)24 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)48 b Fb(34)150 3943 y Fe(rl_alphabetic)16
+b Fa(:)g(:)e(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)43
+b Fb(38)150 4030 y Fe(rl_already_prompted)18 b Fa(:)g(:)13
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)44 b Fb(26)150 4118 y Fe
+(rl_attempted_completion_funct)q(ion)25 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)45 b Fb(48)150 4205 y Fe(rl_attempted_completion_over)13
+b Fa(:)19 b(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39
+b Fb(52)150 4292 y Fe(rl_basic_quote_characters)26 b
Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)46 b Fb(47)150 3837 y Fe(rl_basic_word_break_character)q(s)7
+(:)g(:)46 b Fb(50)150 4380 y Fe(rl_basic_word_break_character)q(s)7
b Fa(:)19 b(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33
-b Fb(47)150 3925 y Fe(rl_begin_undo_group)18 b Fa(:)g(:)13
+b Fb(50)150 4467 y Fe(rl_begin_undo_group)18 b Fa(:)g(:)13
b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)44 b Fb(33)150 4014 y Fe(rl_bind_key)24
+(:)g(:)g(:)g(:)g(:)h(:)44 b Fb(34)150 4554 y Fe(rl_bind_key)24
b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-48 b Fb(31)150 4102 y Fe(rl_bind_key_if_unbound)10 b
+48 b Fb(31)150 4641 y Fe(rl_bind_key_if_unbound)10 b
Fa(:)19 b(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)37 b Fb(31)150 4191 y Fe
+h(:)f(:)g(:)g(:)g(:)g(:)37 b Fb(32)150 4729 y Fe
(rl_bind_key_if_unbound_in_map)11 b Fa(:)18 b(:)c(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Fb(31)150 4279 y Fe(rl_bind_key_in_map)
+(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Fb(32)150 4816 y Fe(rl_bind_key_in_map)
25 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Fb(31)150
-4367 y Fe(rl_bind_keyseq)14 b Fa(:)i(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+4903 y Fe(rl_bind_keyseq)14 b Fa(:)i(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)40 b Fb(31)150 4456 y Fe(rl_bind_keyseq_if_unbound)26
+(:)f(:)g(:)g(:)40 b Fb(32)150 4991 y Fe(rl_bind_keyseq_if_unbound)26
b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)46 b Fb(32)150 4544 y Fe(rl_bind_keyseq_if_unbound_in_)q(map)25
+(:)g(:)46 b Fb(32)150 5078 y Fe(rl_bind_keyseq_if_unbound_in_)q(map)25
b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)45 b Fb(32)150
-4633 y Fe(rl_bind_keyseq_in_map)13 b Fa(:)18 b(:)13 b(:)g(:)g(:)g(:)h
+5165 y Fe(rl_bind_keyseq_in_map)13 b Fa(:)18 b(:)13 b(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39
-b Fb(32)150 4721 y Fe(rl_binding_keymap)6 b Fa(:)17 b(:)c(:)g(:)h(:)f
+b Fb(32)150 5253 y Fe(rl_binding_keymap)6 b Fa(:)17 b(:)c(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)32 b Fb(27)150 4809 y Fe
+g(:)g(:)g(:)g(:)h(:)32 b Fb(28)150 5340 y Fe
(rl_callback_handler_install)15 b Fa(:)k(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)41 b Fb(39)150 4898 y
-Fe(rl_callback_handler_remove)18 b Fa(:)g(:)c(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44 b Fb(39)150 4986
-y Fe(rl_callback_read_char)13 b Fa(:)18 b(:)13 b(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39
-b Fb(39)150 5075 y Fe(rl_catch_signals)9 b Fa(:)16 b(:)e(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)35 b Fb(42)150 5163 y Fe(rl_catch_sigwinch)6
-b Fa(:)17 b(:)c(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)32 b Fb(42)150
-5252 y Fe(rl_char_is_quoted_p)18 b Fa(:)g(:)13 b(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)44
-b Fb(46)150 5340 y Fe(rl_cleanup_after_signal)8 b Fa(:)18
-b(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)34 b Fb(42)2025 299 y Fe(rl_clear_message)9
-b Fa(:)16 b(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35
-b Fb(35)2025 387 y Fe(rl_clear_pending_input)10 b Fa(:)18
-b(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)37 b Fb(36)2025 476 y Fe(rl_clear_signals)9
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)41 b Fb(40)2025 299 y
+Fe(rl_callback_handler_remove)17 b Fa(:)i(:)13 b(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)44 b Fb(40)2025 387
+y Fe(rl_callback_read_char)13 b Fa(:)18 b(:)13 b(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)40
+b Fb(40)2025 476 y Fe(rl_catch_signals)9 b Fa(:)16 b(:)d(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(44)2025 564 y Fe(rl_catch_sigwinch)6
+b Fa(:)17 b(:)c(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(44)2025
+653 y Fe(rl_change_environment)13 b Fa(:)18 b(:)13 b(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)40
+b Fb(44)2025 741 y Fe(rl_char_is_quoted_p)18 b Fa(:)f(:)c(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)45 b Fb(48)2025 830 y Fe(rl_cleanup_after_signal)8
+b Fa(:)18 b(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)34 b Fb(45)2025 918 y Fe(rl_clear_history)9
b Fa(:)16 b(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35
-b Fb(43)2025 564 y Fe(rl_complete)24 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)48 b Fb(44)2025
-653 y Fe(rl_complete_internal)16 b Fa(:)h(:)c(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)42
-b Fb(44)2025 741 y Fe(rl_completer_quote_characters)10
-b Fa(:)19 b(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)36
-b Fb(47)2025 830 y Fe(rl_completer_word_break_charac)q(ters)15
-b Fa(:)k(:)13 b(:)g(:)g(:)g(:)g(:)g(:)41 b Fb(47)2025
-918 y Fe(rl_completion_append_character)8 b Fa(:)19 b(:)13
-b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)34 b Fb(48)2025
-1006 y Fe(rl_completion_display_matches_)q(hook)15 b
-Fa(:)k(:)13 b(:)g(:)g(:)g(:)g(:)g(:)41 b Fb(47)2025 1095
-y Fe(rl_completion_entry_function)25 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)45 b Fb(44,)27 b(45)2025 1183 y Fe
+b Fb(40)2025 1006 y Fe(rl_clear_message)9 b Fa(:)16 b(:)d(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(35)2025 1095 y Fe
+(rl_clear_pending_input)10 b Fa(:)18 b(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)37
+b Fb(37)2025 1183 y Fe(rl_clear_signals)9 b Fa(:)16 b(:)d(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(45)2025 1272 y Fe(rl_complete)11
+b Fa(:)k(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)37
+b Fb(46,)27 b(47)2025 1360 y Fe(rl_complete_internal)16
+b Fa(:)h(:)c(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)42 b Fb(47)2025 1449 y Fe
+(rl_completer_quote_characters)10 b Fa(:)19 b(:)13 b(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)36 b Fb(50)2025 1537 y Fe
+(rl_completer_word_break_charac)q(ters)15 b Fa(:)k(:)13
+b(:)g(:)g(:)g(:)g(:)g(:)41 b Fb(50)2025 1625 y Fe
+(rl_completion_append_character)8 b Fa(:)19 b(:)13 b(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)34 b Fb(51)2025 1714 y Fe
+(rl_completion_display_matches_)q(hook)15 b Fa(:)k(:)13
+b(:)g(:)g(:)g(:)g(:)g(:)41 b Fb(50)2025 1802 y Fe
+(rl_completion_entry_function)25 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)45 b Fb(46,)27 b(48)2025 1891 y Fe
(rl_completion_found_quote)e Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)46 b Fb(48)2025 1272
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)46 b Fb(51)2025 1979
y Fe(rl_completion_invoking_key)17 b Fa(:)i(:)13 b(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)44 b Fb(49)2025
-1360 y Fe(rl_completion_mark_symlink_dir)q(s)27 b Fa(:)14
-b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)48 b Fb(48)2025
-1449 y Fe(rl_completion_matches)13 b Fa(:)18 b(:)13 b(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)44 b Fb(52)2025
+2068 y Fe(rl_completion_mark_symlink_dir)q(s)27 b Fa(:)14
+b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)48 b Fb(51)2025
+2156 y Fe(rl_completion_matches)13 b Fa(:)18 b(:)13 b(:)g(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)40
-b Fb(45)2025 1537 y Fe(rl_completion_mode)25 b Fa(:)13
+b Fb(47)2025 2245 y Fe(rl_completion_mode)25 b Fa(:)13
b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)47 b Fb(44)2025 1625 y
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)47 b Fb(47)2025 2333 y
Fe(rl_completion_query_items)25 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)46 b Fb(47)2025
-1714 y Fe(rl_completion_quote_character)10 b Fa(:)19
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)46 b Fb(51)2025
+2421 y Fe(rl_completion_quote_character)10 b Fa(:)19
b(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)36
-b Fb(48)2025 1802 y Fe(rl_completion_suppress_append)10
+b Fb(51)2025 2510 y Fe(rl_completion_suppress_append)10
b Fa(:)19 b(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)36
-b Fb(48)2025 1891 y Fe(rl_completion_suppress_quote)13
+b Fb(51)2025 2598 y Fe(rl_completion_suppress_quote)13
b Fa(:)19 b(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)39
-b Fb(48)2025 1979 y Fe(rl_completion_type)25 b Fa(:)13
+b Fb(51)2025 2687 y Fe(rl_completion_type)25 b Fa(:)13
b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)47 b Fb(49)2025 2068 y
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)47 b Fb(52)2025 2775 y
Fe(rl_completion_word_break_hook)10 b Fa(:)19 b(:)13
b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)36 b
-Fb(47)2025 2156 y Fe(rl_copy_keymap)14 b Fa(:)i(:)d(:)g(:)g(:)g(:)h(:)f
+Fb(50)2025 2864 y Fe(rl_copy_keymap)14 b Fa(:)i(:)d(:)g(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)40 b Fb(30)2025 2245 y Fe(rl_copy_text)21
+g(:)g(:)g(:)g(:)h(:)f(:)40 b Fb(31)2025 2952 y Fe(rl_copy_text)21
b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)45
-b Fb(35)2025 2333 y Fe(rl_crlf)15 b Fa(:)f(:)f(:)g(:)g(:)h(:)f(:)g(:)g
+b Fb(36)2025 3041 y Fe(rl_crlf)15 b Fa(:)f(:)f(:)g(:)g(:)h(:)f(:)g(:)g
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)41
-b Fb(34)2025 2421 y Fe(rl_delete_text)14 b Fa(:)i(:)d(:)g(:)g(:)g(:)h
+b Fb(35)2025 3129 y Fe(rl_delete_text)14 b Fa(:)i(:)d(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)40 b Fb(35)2025 2510 y Fe
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)40 b Fb(36)2025 3217 y Fe
(rl_deprep_term_function)8 b Fa(:)18 b(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)34
-b Fb(27)2025 2598 y Fe(rl_deprep_terminal)25 b Fa(:)13
+b Fb(28)2025 3306 y Fe(rl_deprep_terminal)25 b Fa(:)13
b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)47 b Fb(37)2025 2687 y
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)47 b Fb(37)2025 3394 y
Fe(rl_ding)15 b Fa(:)f(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)41 b Fb(37)2025 2775
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)41 b Fb(38)2025 3483
y Fe(rl_directory_completion_hook)13 b Fa(:)19 b(:)13
b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)39
-b Fb(46)2025 2864 y Fe(rl_discard_keymap)6 b Fa(:)17
+b Fb(49)2025 3571 y Fe(rl_directory_rewrite_hook;)17
+b Fa(:)i(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)44 b Fb(49)2025 3660 y Fe(rl_discard_keymap)6 b Fa(:)17
b(:)c(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(30)2025
-2952 y Fe(rl_dispatching)14 b Fa(:)i(:)d(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(31)2025
+3748 y Fe(rl_dispatching)14 b Fa(:)i(:)d(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)40 b Fb(25)2025 3041 y Fe(rl_display_match_list)13
+(:)g(:)h(:)f(:)40 b Fb(25)2025 3836 y Fe(rl_display_match_list)13
b Fa(:)18 b(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)40 b Fb(38)2025 3129 y
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)40 b Fb(38)2025 3925 y
Fe(rl_display_prompt)6 b Fa(:)17 b(:)c(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-33 b Fb(26)2025 3217 y Fe(rl_do_undo)7 b Fa(:)15 b(:)e(:)g(:)g(:)h(:)f
+33 b Fb(26)2025 4013 y Fe(rl_do_undo)7 b Fa(:)15 b(:)e(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b
-Fb(34)2025 3306 y Fe(rl_done)15 b Fa(:)f(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)
+Fb(34)2025 4102 y Fe(rl_done)15 b Fa(:)f(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)
g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)41
-b Fb(25)2025 3394 y Fe(rl_echo_signal_char)18 b Fa(:)f(:)c(:)h(:)f(:)g
+b Fb(25)2025 4190 y Fe(rl_echo_signal_char)18 b Fa(:)f(:)c(:)h(:)f(:)g
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)45 b Fb(42)2025 3483 y Fe(rl_editing_mode)11
+g(:)g(:)45 b Fb(45)2025 4279 y Fe(rl_editing_mode)11
b Fa(:)17 b(:)c(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)38
-b Fb(29)2025 3571 y Fe(rl_end)17 b Fa(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g
+b Fb(30)2025 4367 y Fe(rl_end)17 b Fa(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44
-b Fb(25)2025 3660 y Fe(rl_end_undo_group)6 b Fa(:)17
+b Fb(25)2025 4456 y Fe(rl_end_undo_group)6 b Fa(:)17
b(:)c(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(33)2025
-3748 y Fe(rl_erase_empty_line)18 b Fa(:)f(:)c(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(34)2025
+4544 y Fe(rl_erase_empty_line)18 b Fa(:)f(:)c(:)h(:)f(:)g(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45
-b Fb(25)2025 3836 y Fe(rl_event_hook)16 b Fa(:)g(:)d(:)g(:)h(:)f(:)g(:)
+b Fb(25)2025 4632 y Fe(rl_event_hook)16 b Fa(:)g(:)d(:)g(:)h(:)f(:)g(:)
g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)43 b Fb(27)2025 3925 y
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)43 b Fb(27)2025 4721 y
Fe(rl_execute_next)11 b Fa(:)17 b(:)c(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)38 b Fb(36)2025 4013 y Fe(rl_executing_keymap)18
+g(:)g(:)38 b Fb(37)2025 4809 y Fe(rl_executing_key)9
+b Fa(:)16 b(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35
+b Fb(28)2025 4898 y Fe(rl_executing_keymap)18 b Fa(:)f(:)c(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)45 b Fb(28)2025 4986 y Fe(rl_executing_keyseq)18
b Fa(:)f(:)c(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45 b Fb(27)2025 4102
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45 b Fb(28)2025 5075
y Fe(rl_executing_macro)25 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)47
-b Fb(27)2025 4190 y Fe(rl_expand_prompt)9 b Fa(:)16 b(:)d(:)g(:)h(:)f
+b Fb(28)2025 5163 y Fe(rl_expand_prompt)9 b Fa(:)16 b(:)d(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(35)2025 4279 y Fe(rl_explicit_arg)11
+g(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(36)2025 5252 y Fe(rl_explicit_arg)11
b Fa(:)17 b(:)c(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)38
-b Fb(29)2025 4367 y Fe(rl_extend_line_buffer)13 b Fa(:)18
+b Fb(30)2025 5340 y Fe(rl_extend_line_buffer)13 b Fa(:)18
b(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)40 b Fb(37)2025 4456 y Fe
-(rl_filename_completion_desired)8 b Fa(:)19 b(:)13 b(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)34 b Fb(48)2025 4544 y Fe
-(rl_filename_completion_functio)q(n)27 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)48 b Fb(45)2025 4632 y Fe
-(rl_filename_dequoting_function)8 b Fa(:)19 b(:)13 b(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)34 b Fb(46)2025 4721 y Fe
-(rl_filename_quote_characters)13 b Fa(:)19 b(:)13 b(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)39 b Fb(47)2025 4809 y
-Fe(rl_filename_quoting_desired)15 b Fa(:)k(:)13 b(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)41 b Fb(49)2025 4898
-y Fe(rl_filename_quoting_function)13 b Fa(:)19 b(:)13
-b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)39
-b Fb(45)2025 4986 y Fe(rl_filename_rewrite_hook)28 b
-Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)49 b Fb(46)2025 5075 y Fe(rl_forced_update_display)28
-b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)49 b Fb(34)2025 5163 y Fe(rl_free)15 b Fa(:)f(:)f(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)41
-b Fb(37)2025 5252 y Fe(rl_free_keymap)14 b Fa(:)i(:)d(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)40 b Fb(30)2025 5340 y Fe
-(rl_free_line_state)25 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)47
-b Fb(42)p eop end
-%%Page: 69 73
-TeXDict begin 69 72 bop 150 -116 a Fs(F)-8 b(unction)31
-b(and)f(V)-8 b(ariable)32 b(Index)2370 b(69)150 299 y
-Fe(rl_free_undo_list)6 b Fa(:)17 b(:)c(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-32 b Fb(34)150 387 y Fe(rl_function_dumper)25 b Fa(:)13
-b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Fb(33)150 476 y Fe
-(rl_function_of_keyseq)13 b Fa(:)18 b(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39
-b Fb(32)150 564 y Fe(rl_funmap_names)11 b Fa(:)17 b(:)c(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)38 b Fb(33)150 653 y Fe(rl_generic_bind)11
+g(:)g(:)g(:)g(:)g(:)40 b Fb(38)p eop end
+%%Page: 72 76
+TeXDict begin 72 75 bop 150 -116 a Fs(F)-8 b(unction)31
+b(and)f(V)-8 b(ariable)32 b(Index)2370 b(72)150 299 y
+Fe(rl_filename_completion_desire)q(d)7 b Fa(:)19 b(:)13
+b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fb(52)150
+387 y Fe(rl_filename_completion_functi)q(on)28 b Fa(:)13
+b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)48 b Fb(47)150
+476 y Fe(rl_filename_dequoting_functio)q(n)7 b Fa(:)19
+b(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33
+b Fb(48)150 564 y Fe(rl_filename_quote_characters)13
+b Fa(:)19 b(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39
+b Fb(50)150 653 y Fe(rl_filename_quoting_desired)15 b
+Fa(:)k(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)41
+b Fb(52)150 741 y Fe(rl_filename_quoting_function)13
+b Fa(:)19 b(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39
+b Fb(48)150 830 y Fe(rl_filename_rewrite_hook)28 b Fa(:)13
+b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)49 b Fb(49)150 918 y Fe(rl_filename_stat_hook)13 b
+Fa(:)18 b(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b Fb(49)150 1006 y Fe
+(rl_forced_update_display)28 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49 b Fb(35)150
+1095 y Fe(rl_free)15 b Fa(:)f(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)41 b Fb(38)150
+1183 y Fe(rl_free_keymap)14 b Fa(:)i(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)40 b Fb(31)150 1272 y Fe(rl_free_line_state)25
+b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Fb(45)150
+1360 y Fe(rl_free_undo_list)6 b Fa(:)17 b(:)c(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)32 b Fb(34)150 1449 y Fe(rl_function_dumper)25
+b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Fb(33)150
+1537 y Fe(rl_function_of_keyseq)13 b Fa(:)18 b(:)13 b(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39
+b Fb(33)150 1625 y Fe(rl_funmap_names)11 b Fa(:)17 b(:)c(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)38 b Fb(33)150 1714 y Fe(rl_generic_bind)11
b Fa(:)17 b(:)c(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)38
-b Fb(32)150 741 y Fe(rl_get_keymap)16 b Fa(:)g(:)e(:)f(:)g(:)g(:)g(:)g
+b Fb(33)150 1802 y Fe(rl_get_keymap)16 b Fa(:)g(:)e(:)f(:)g(:)g(:)g(:)g
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)43 b Fb(30)150 830 y Fe
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)43 b Fb(31)150 1891 y Fe
(rl_get_keymap_by_name)13 b Fa(:)18 b(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)
g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39
-b Fb(30)150 918 y Fe(rl_get_keymap_name)25 b Fa(:)13
+b Fb(31)150 1979 y Fe(rl_get_keymap_name)25 b Fa(:)13
b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Fb(30)150 1006 y
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Fb(31)150 2068 y
Fe(rl_get_screen_size)25 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47
-b Fb(43)150 1095 y Fe(rl_get_termcap)14 b Fa(:)i(:)d(:)g(:)h(:)f(:)g(:)
+b Fb(45)150 2156 y Fe(rl_get_termcap)14 b Fa(:)i(:)d(:)g(:)h(:)f(:)g(:)
g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)40 b Fb(39)150 1183 y Fe(rl_getc)15
+(:)g(:)g(:)h(:)f(:)g(:)g(:)40 b Fb(39)150 2245 y Fe(rl_getc)15
b Fa(:)f(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)41 b Fb(36)150 1272 y Fe(rl_getc_function)9
+(:)f(:)g(:)g(:)g(:)41 b Fb(37)150 2333 y Fe(rl_getc_function)9
b Fa(:)16 b(:)e(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)35
-b Fb(27)150 1360 y Fe(rl_gnu_readline_p)6 b Fa(:)17 b(:)c(:)g(:)h(:)f
+b Fb(27)150 2421 y Fe(rl_gnu_readline_p)6 b Fa(:)17 b(:)c(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)32 b Fb(26)150 1449 y Fe
+g(:)g(:)g(:)g(:)h(:)32 b Fb(26)150 2510 y Fe
(rl_ignore_completion_duplicat)q(es)c Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)48 b Fb(48)150 1537 y Fe(rl_ignore_some_completions_fu)q
+(:)g(:)g(:)g(:)48 b Fb(51)150 2598 y Fe(rl_ignore_some_completions_fu)q
(ncti)q(on)12 b Fa(:)19 b(:)13 b(:)g(:)g(:)g(:)g(:)38
-b Fb(46)150 1625 y Fe(rl_inhibit_completion)13 b Fa(:)18
+b Fb(49)150 2687 y Fe(rl_inhibit_completion)13 b Fa(:)18
b(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)39 b Fb(49)150 1714 y Fe(rl_initialize)16
+g(:)g(:)g(:)h(:)f(:)39 b Fb(52)150 2775 y Fe(rl_initialize)16
b Fa(:)g(:)e(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)43
-b Fb(37)150 1802 y Fe(rl_insert_completions)13 b Fa(:)18
-b(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)39 b Fb(44)150 1891 y Fe(rl_insert_text)14
-b Fa(:)i(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)40
-b Fb(35)150 1979 y Fe(rl_instream)24 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)48 b Fb(26)150
-2068 y Fe(rl_invoking_keyseqs)18 b Fa(:)g(:)13 b(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)44
-b Fb(33)150 2156 y Fe(rl_invoking_keyseqs_in_map)18 b
-Fa(:)g(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44
-b Fb(33)150 2245 y Fe(rl_kill_text)22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g
+b Fb(38)150 2864 y Fe(rl_input_available_hook)8 b Fa(:)18
+b(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)34 b Fb(27)150 2952 y Fe(rl_insert_completions)13
+b Fa(:)18 b(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b Fb(47)150 3041 y
+Fe(rl_insert_text)14 b Fa(:)i(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)40 b Fb(36)150 3129 y Fe(rl_instream)24 b Fa(:)13
+b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)48
+b Fb(26)150 3217 y Fe(rl_invoking_keyseqs)18 b Fa(:)g(:)13
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)44 b Fb(33)150 3306 y Fe
+(rl_invoking_keyseqs_in_map)18 b Fa(:)g(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44 b Fb(33)150 3394 y
+Fe(rl_key_sequence_length)10 b Fa(:)19 b(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37
+b Fb(28)150 3483 y Fe(rl_kill_text)22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45 b Fb(36)150 2333
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45 b Fb(36)150 3571
y Fe(rl_last_func)22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)45 b Fb(27)150 2421 y Fe(rl_library_version)25
+(:)g(:)h(:)f(:)g(:)45 b Fb(27)150 3660 y Fe(rl_library_version)25
b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Fb(26)150
-2510 y Fe(rl_line_buffer)14 b Fa(:)i(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+3748 y Fe(rl_line_buffer)14 b Fa(:)i(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)40 b Fb(25)150 2598 y Fe(rl_list_funmap_names)16
+(:)f(:)g(:)g(:)40 b Fb(25)150 3836 y Fe(rl_list_funmap_names)16
b Fa(:)h(:)c(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)42 b Fb(33)150 2687 y Fe(rl_macro_bind)16
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)42 b Fb(33)150 3925 y Fe(rl_macro_bind)16
b Fa(:)g(:)e(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)43
-b Fb(38)150 2775 y Fe(rl_macro_dumper)11 b Fa(:)17 b(:)c(:)g(:)g(:)g(:)
+b Fb(39)150 4013 y Fe(rl_macro_dumper)11 b Fa(:)17 b(:)c(:)g(:)g(:)g(:)
g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)38 b Fb(38)150 2864 y Fe
+(:)g(:)g(:)g(:)g(:)g(:)g(:)38 b Fb(39)150 4102 y Fe
(rl_make_bare_keymap)18 b Fa(:)g(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)44
-b Fb(30)150 2952 y Fe(rl_make_keymap)14 b Fa(:)i(:)d(:)g(:)h(:)f(:)g(:)
+b Fb(30)150 4190 y Fe(rl_make_keymap)14 b Fa(:)i(:)d(:)g(:)h(:)f(:)g(:)
g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)40 b Fb(30)150 3041 y Fe(rl_mark)15
+(:)g(:)g(:)h(:)f(:)g(:)g(:)40 b Fb(31)150 4279 y Fe(rl_mark)15
b Fa(:)f(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)41 b Fb(25)150 3129 y Fe(rl_message)7
+(:)f(:)g(:)g(:)g(:)41 b Fb(25)150 4367 y Fe(rl_message)7
b Fa(:)15 b(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)33 b Fb(35)150 3217 y Fe(rl_modifying)22 b Fa(:)13
+f(:)g(:)33 b Fb(35)150 4456 y Fe(rl_modifying)22 b Fa(:)13
b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45
-b Fb(34)150 3306 y Fe(rl_named_function)6 b Fa(:)17 b(:)c(:)g(:)h(:)f
+b Fb(34)150 4544 y Fe(rl_named_function)6 b Fa(:)17 b(:)c(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)32 b Fb(32)150 3394 y Fe(rl_num_chars_to_read)16
+g(:)g(:)g(:)g(:)h(:)32 b Fb(33)150 4632 y Fe(rl_num_chars_to_read)16
b Fa(:)h(:)c(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)42 b Fb(25)150 3483 y Fe(rl_numeric_arg)14
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)42 b Fb(25)150 4721 y Fe(rl_numeric_arg)14
b Fa(:)i(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)40
-b Fb(29)150 3571 y Fe(rl_on_new_line)14 b Fa(:)i(:)d(:)g(:)h(:)f(:)g(:)
+b Fb(30)150 4809 y Fe(rl_on_new_line)14 b Fa(:)i(:)d(:)g(:)h(:)f(:)g(:)
g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)40 b Fb(34)150 3660 y Fe
+(:)g(:)g(:)h(:)f(:)g(:)g(:)40 b Fb(35)150 4898 y Fe
(rl_on_new_line_with_prompt)18 b Fa(:)g(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44 b Fb(34)150 3748 y
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44 b Fb(35)150 4986 y
Fe(rl_outstream)22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)45 b Fb(26)150 3836 y Fe(rl_parse_and_bind)6
+g(:)h(:)f(:)g(:)45 b Fb(26)150 5075 y Fe(rl_parse_and_bind)6
b Fa(:)17 b(:)c(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)32 b Fb(32)150
-3925 y Fe(rl_pending_input)9 b Fa(:)16 b(:)e(:)f(:)g(:)g(:)g(:)g(:)g(:)
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)32 b Fb(33)150
+5163 y Fe(rl_pending_input)9 b Fa(:)16 b(:)e(:)f(:)g(:)g(:)g(:)g(:)g(:)
h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)35 b Fb(25)150 4013 y Fe(rl_point)12 b Fa(:)j(:)e(:)g(:)g(:)
+(:)g(:)g(:)35 b Fb(25)150 5252 y Fe(rl_point)12 b Fa(:)j(:)e(:)g(:)g(:)
g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)38
-b Fb(25)150 4102 y Fe(rl_possible_completions)8 b Fa(:)18
+b Fb(25)150 5340 y Fe(rl_possible_completions)8 b Fa(:)18
b(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)34 b Fb(44)150 4190 y Fe(rl_pre_input_hook)6
-b Fa(:)17 b(:)c(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)32 b Fb(27)150
-4279 y Fe(rl_prefer_env_winsize)13 b Fa(:)18 b(:)13 b(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39
-b Fb(26)150 4367 y Fe(rl_prep_term_function)13 b Fa(:)18
-b(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)39 b Fb(27)150 4456 y Fe(rl_prep_terminal)9
-b Fa(:)16 b(:)e(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)35
-b Fb(36)150 4544 y Fe(rl_prompt)9 b Fa(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b
-Fb(26)150 4632 y Fe(rl_push_macro_input)18 b Fa(:)g(:)13
-b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)44 b Fb(36)150 4721 y Fe(rl_read_init_file)6
-b Fa(:)17 b(:)c(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)32 b Fb(32)150
-4809 y Fe(rl_read_key)24 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)48 b Fb(36)150 4898 y Fe(rl_readline_name)9
-b Fa(:)16 b(:)e(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)35
-b Fb(26)150 4986 y Fe(rl_readline_state)6 b Fa(:)17 b(:)c(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)32 b Fb(28)150 5075 y Fe(rl_readline_version)18
-b Fa(:)g(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Fb(26)150 5163
-y Fe(rl_redisplay)22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)45 b Fb(34)150 5252 y Fe(rl_redisplay_function)13
-b Fa(:)18 b(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b Fb(27)150 5340 y
-Fe(rl_replace_line)11 b Fa(:)17 b(:)c(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)38 b Fb(37)2025 299 y Fe(rl_reset_after_signal)13
-b Fa(:)18 b(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)40 b Fb(42)2025 386 y
-Fe(rl_reset_line_state)18 b Fa(:)f(:)c(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45
-b Fb(34)2025 474 y Fe(rl_reset_screen_size)16 b Fa(:)h(:)c(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)42 b Fb(43)2025 561 y Fe(rl_reset_terminal)6 b Fa(:)17
-b(:)c(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(37)2025
-648 y Fe(rl_resize_terminal)25 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-47 b Fb(42)2025 736 y Fe(rl_restore_prompt)6 b Fa(:)17
+h(:)f(:)g(:)34 b Fb(47)2025 299 y Fe(rl_pre_input_hook)6
+b Fa(:)17 b(:)c(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(27)2025
+387 y Fe(rl_prefer_env_winsize)13 b Fa(:)18 b(:)13 b(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)40
+b Fb(26)2025 474 y Fe(rl_prep_term_function)13 b Fa(:)18
+b(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)40 b Fb(28)2025 562 y Fe(rl_prep_terminal)9
+b Fa(:)16 b(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35
+b Fb(37)2025 650 y Fe(rl_prompt)9 b Fa(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b
+Fb(26)2025 738 y Fe(rl_push_macro_input)18 b Fa(:)f(:)c(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)45 b Fb(36)2025 826 y Fe(rl_read_init_file)6 b Fa(:)17
b(:)c(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(35)2025
-823 y Fe(rl_restore_state)9 b Fa(:)16 b(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)35 b Fb(37)2025 910 y Fe(rl_save_prompt)14 b
-Fa(:)i(:)d(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)40
-b Fb(35)2025 998 y Fe(rl_save_state)16 b Fa(:)g(:)d(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(33)2025
+913 y Fe(rl_read_key)24 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)43 b Fb(37)2025 1085 y Fe(rl_set_key)7
-b Fa(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+g(:)h(:)f(:)g(:)g(:)g(:)48 b Fb(36)2025 1001 y Fe(rl_readline_name)9
+b Fa(:)16 b(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35
+b Fb(26)2025 1089 y Fe(rl_readline_state)6 b Fa(:)17
+b(:)c(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(28)2025
+1177 y Fe(rl_readline_version)18 b Fa(:)f(:)c(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45
+b Fb(26)2025 1265 y Fe(rl_redisplay)21 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)45 b Fb(35)2025 1352
+y Fe(rl_redisplay_function)13 b Fa(:)18 b(:)13 b(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)40
+b Fb(27)2025 1440 y Fe(rl_replace_line)11 b Fa(:)17 b(:)c(:)g(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)33 b Fb(32)2025 1173 y Fe(rl_set_keyboard_input_timeout)10
-b Fa(:)19 b(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)36
-b Fb(36)2025 1260 y Fe(rl_set_keymap)16 b Fa(:)g(:)d(:)g(:)h(:)f(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)38 b Fb(38)2025 1528 y Fe
+(rl_reset_after_signal)13 b Fa(:)18 b(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)40
+b Fb(45)2025 1616 y Fe(rl_reset_line_state)18 b Fa(:)f(:)c(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)45 b Fb(35)2025 1704 y Fe(rl_reset_screen_size)16
+b Fa(:)h(:)c(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)42 b Fb(45)2025 1791 y Fe
+(rl_reset_terminal)6 b Fa(:)17 b(:)c(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)33
+b Fb(37)2025 1879 y Fe(rl_resize_terminal)25 b Fa(:)13
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)47 b Fb(45)2025 1967 y
+Fe(rl_restore_prompt)6 b Fa(:)17 b(:)c(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+33 b Fb(36)2025 2055 y Fe(rl_restore_state)9 b Fa(:)16
+b(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(38)2025
+2142 y Fe(rl_save_prompt)14 b Fa(:)i(:)d(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)43 b Fb(30)2025 1347 y
+(:)g(:)h(:)f(:)40 b Fb(35)2025 2230 y Fe(rl_save_state)16
+b Fa(:)g(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)43
+b Fb(38)2025 2318 y Fe(rl_set_key)7 b Fa(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fb(32)2025
+2406 y Fe(rl_set_keyboard_input_timeout)10 b Fa(:)19
+b(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)36
+b Fb(37)2025 2494 y Fe(rl_set_keymap)16 b Fa(:)g(:)d(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)43 b Fb(31)2025 2581 y
Fe(rl_set_paren_blink_timeout)17 b Fa(:)i(:)13 b(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)44 b Fb(39)2025 1435
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)44 b Fb(39)2025 2669
y Fe(rl_set_prompt)16 b Fa(:)g(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)43 b Fb(35)2025 1522 y Fe(rl_set_screen_size)25
+g(:)g(:)g(:)43 b Fb(36)2025 2757 y Fe(rl_set_screen_size)25
b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)47 b Fb(42)2025
-1609 y Fe(rl_set_signals)14 b Fa(:)i(:)d(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)47 b Fb(45)2025
+2845 y Fe(rl_set_signals)14 b Fa(:)i(:)d(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)40 b Fb(43)2025 1697 y Fe(rl_show_char)21
+(:)g(:)h(:)f(:)40 b Fb(45)2025 2933 y Fe(rl_show_char)21
b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)45
-b Fb(34)2025 1784 y Fe(rl_sort_completion_matches)17
+b Fb(35)2025 3020 y Fe(rl_signal_event_hook)16 b Fa(:)h(:)c(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)42 b Fb(27)2025 3108 y Fe(rl_sort_completion_matches)17
b Fa(:)i(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)44 b Fb(49)2025 1872 y Fe(rl_special_prefixes)18 b
+(:)44 b Fb(52)2025 3196 y Fe(rl_special_prefixes)18 b
Fa(:)f(:)c(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45 b Fb(47)2025 1959 y
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45 b Fb(50)2025 3284 y
Fe(rl_startup_hook)11 b Fa(:)17 b(:)c(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)38 b Fb(27)2025 2046 y Fe(rl_stuff_char)16 b
+g(:)g(:)38 b Fb(27)2025 3372 y Fe(rl_stuff_char)16 b
Fa(:)g(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)43
-b Fb(36)2025 2134 y Fe(rl_terminal_name)9 b Fa(:)16 b(:)d(:)g(:)h(:)f
+b Fb(37)2025 3459 y Fe(rl_terminal_name)9 b Fa(:)16 b(:)d(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(26)2025 2221 y Fe
+g(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(26)2025 3547 y Fe
(rl_tty_set_default_bindings)15 b Fa(:)k(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)41 b Fb(37)2025 2308 y
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)41 b Fb(37)2025 3635 y
Fe(rl_tty_unset_default_bindings)10 b Fa(:)19 b(:)13
b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)36 b
-Fb(37)2025 2396 y Fe(rl_unbind_command_in_map)28 b Fa(:)13
+Fb(37)2025 3723 y Fe(rl_unbind_command_in_map)28 b Fa(:)13
b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)49 b Fb(31)2025 2483 y Fe(rl_unbind_function_in_map)25
+(:)49 b Fb(32)2025 3810 y Fe(rl_unbind_function_in_map)25
b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)46 b Fb(31)2025 2570 y Fe(rl_unbind_key)16 b Fa(:)g(:)d(:)g(:)h
+(:)h(:)46 b Fb(32)2025 3898 y Fe(rl_unbind_key)16 b Fa(:)g(:)d(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)43 b Fb(31)2025
-2658 y Fe(rl_unbind_key_in_map)16 b Fa(:)h(:)c(:)g(:)g(:)h(:)f(:)g(:)g
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)43 b Fb(32)2025
+3986 y Fe(rl_unbind_key_in_map)16 b Fa(:)h(:)c(:)g(:)g(:)h(:)f(:)g(:)g
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)42
-b Fb(31)2025 2745 y Fe(rl_username_completion_functio)q(n)27
+b Fb(32)2025 4074 y Fe(rl_username_completion_functio)q(n)27
b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)48
-b Fb(45)2025 2833 y Fe(rl_variable_bind)9 b Fa(:)16 b(:)d(:)g(:)h(:)f
+b Fb(48)2025 4162 y Fe(rl_variable_bind)9 b Fa(:)16 b(:)d(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(38)2025 2920 y Fe(rl_variable_dumper)25
+g(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(39)2025 4249 y Fe(rl_variable_dumper)25
b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)47 b Fb(39)2025
-3007 y Fe(rl_variable_value)6 b Fa(:)17 b(:)c(:)g(:)g(:)g(:)h(:)f(:)g
+4337 y Fe(rl_variable_value)6 b Fa(:)17 b(:)c(:)g(:)g(:)g(:)h(:)f(:)g
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)33 b Fb(39)2025 3250 y Fq(S)2025 3367 y Fe(self-insert)28
+g(:)g(:)33 b Fb(39)2025 4583 y Fq(S)2025 4700 y Fe(self-insert)28
b(\(a,)e(b,)g(A,)g(1,)g(!,)g(...)q(\))9 b Fa(:)k(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)35 b Fb(16)2025 3454 y Fe(set-mark)27
+g(:)g(:)g(:)g(:)h(:)f(:)35 b Fb(16)2025 4788 y Fe(set-mark)27
b(\(C-@\))22 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)47 b Fb(19)2025 3542 y(sho)n(w-all-if-am)n(biguous)14
+(:)47 b Fb(20)2025 4875 y(sho)n(w-all-if-am)n(biguous)14
b Fa(:)h(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)41 b Fb(8)2025
-3629 y(sho)n(w-all-if-unmo)r(di\014ed)23 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)
+4963 y(sho)n(w-all-if-unmo)r(di\014ed)23 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)
g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)50 b Fb(8)2025 3716 y(skip-completed-text)11
-b Fa(:)h(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)38 b
-Fb(8)2025 3804 y Fe(skip-csi-sequence)29 b(\(\))23 b
-Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)49 b Fb(20)2025 3891 y
-Fe(start-kbd-macro)29 b(\(C-x)d(\(\))c Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)48
-b Fb(19)2025 4133 y Fq(T)2025 4249 y Fe(tab-insert)28
-b(\(M-TAB\))10 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37
-b Fb(16)2025 4337 y Fe(tilde-expand)28 b(\(M-~\))10 b
-Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37 b Fb(19)2025
-4424 y Fe(transpose-chars)29 b(\(C-t\))21 b Fa(:)13 b(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-46 b Fb(16)2025 4512 y Fe(transpose-words)29 b(\(M-t\))21
-b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)46 b Fb(16)2025 4764 y Fq(U)2025
-4880 y Fe(undo)26 b(\(C-_)h(or)f(C-x)g(C-u\))6 b Fa(:)14
-b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)33 b Fb(19)2025 4968 y Fe
-(universal-argument)c(\(\))21 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)46
-b Fb(18)2025 5055 y Fe(unix-filename-rubout)30 b(\(\))15
-b Fa(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)41 b Fb(17)2025 5143 y Fe(unix-line-discard)29
-b(\(C-u\))15 b Fa(:)f(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)41 b Fb(17)2025 5230 y
-Fe(unix-word-rubout)29 b(\(C-w\))17 b Fa(:)e(:)e(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)44
-b Fb(17)2025 5317 y Fe(upcase-word)28 b(\(M-u\))13 b
-Fa(:)h(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)39 b Fb(16)p
-eop end
-%%Page: 70 74
-TeXDict begin 70 73 bop 150 -116 a Fs(F)-8 b(unction)31
-b(and)f(V)-8 b(ariable)32 b(Index)2370 b(70)150 299 y
-Fq(V)150 425 y Fe(vi-editing-mode)29 b(\(M-C-j\))15 b
-Fa(:)f(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)41 b Fb(20)150 518 y(visible-stats)7 b
-Fa(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)34 b Fb(8)2025 299 y Fq(Y)2025 416 y Fe(yank)26
-b(\(C-y\))14 b Fa(:)g(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)40 b Fb(18)2025 503 y Fe(yank-last-arg)28
-b(\(M-.)f(or)f(M-_\))c Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)47 b Fb(15)2025 591 y Fe(yank-nth-arg)28
-b(\(M-C-y\))c Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)49 b Fb(15)2025
-679 y Fe(yank-pop)27 b(\(M-y\))22 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)50 b Fb(8)2025 5051 y(sho)n(w-mo)r(de-in-prompt)9
+b Fa(:)j(:)h(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b Fb(8)2025
+5139 y(skip-completed-text)11 b Fa(:)h(:)h(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)38 b Fb(8)2025 5227 y Fe(skip-csi-sequence)29
+b(\(\))23 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)49 b Fb(20)2025
+5314 y Fe(start-kbd-macro)29 b(\(C-x)d(\(\))c Fa(:)13
+b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)48 b Fb(19)p eop end
+%%Page: 73 77
+TeXDict begin 73 76 bop 150 -116 a Fs(F)-8 b(unction)31
+b(and)f(V)-8 b(ariable)32 b(Index)2370 b(73)150 299 y
+Fq(T)150 415 y Fe(tab-insert)28 b(\(M-TAB\))10 b Fa(:)15
+b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)37 b Fb(16)150 502
+y Fe(tilde-expand)28 b(\(M-~\))10 b Fa(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)37 b Fb(20)150 590 y Fe(transpose-chars)29 b(\(C-t\))21
+b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Fb(16)150 677 y Fe(transpose-words)29
+b(\(M-t\))21 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Fb(17)150
+929 y Fq(U)150 1045 y Fe(undo)27 b(\(C-_)f(or)g(C-x)g(C-u\))6
+b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)32 b Fb(20)150 1133
+y Fe(universal-argument)e(\(\))20 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46
+b Fb(18)150 1220 y Fe(unix-filename-rubout)30 b(\(\))15
+b Fa(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)41 b Fb(18)150 1307 y Fe(unix-line-discard)29
+b(\(C-u\))15 b Fa(:)f(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)41 b Fb(17)150 1395 y
+Fe(unix-word-rubout)29 b(\(C-w\))17 b Fa(:)e(:)e(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)44
+b Fb(17)2025 299 y Fe(upcase-word)28 b(\(M-u\))13 b Fa(:)h(:)f(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)h(:)39 b Fb(17)2025 559 y Fq(V)2025
+678 y Fe(vi-editing-mode)29 b(\(M-C-j\))15 b Fa(:)f(:)f(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)41
+b Fb(21)2025 767 y(visible-stats)7 b Fa(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)47 b Fb(18)p eop end
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)34 b
+Fb(9)2025 1009 y Fq(Y)2025 1128 y Fe(yank)26 b(\(C-y\))14
+b Fa(:)g(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)40 b Fb(18)2025 1217 y Fe(yank-last-arg)28 b(\(M-.)f(or)f(M-_\))
+c Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)47 b Fb(16)2025 1306 y Fe(yank-nth-arg)28 b(\(M-C-y\))c
+Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)49 b Fb(15)2025 1395 y
+Fe(yank-pop)27 b(\(M-y\))22 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)47 b Fb(18)p eop end
%%Trailer
userdict /end-hook known{end-hook}if
diff --git a/doc/readline_3.ps b/doc/readline_3.ps
index 27d1a63..306aa74 100644
--- a/doc/readline_3.ps
+++ b/doc/readline_3.ps
@@ -1,14 +1,14 @@
%!PS-Adobe-3.0
%%Creator: groff version 1.19.2
-%%CreationDate: Tue Feb 8 11:13:01 2011
+%%CreationDate: Tue Feb 11 16:57:26 2014
%%DocumentNeededResources: font Times-Roman
%%+ font Times-Bold
%%+ font Times-Italic
%%+ font Courier
%%DocumentSuppliedResources: procset grops 1.19 2
-%%Pages: 15
+%%Pages: 16
%%PageOrder: Ascend
-%%DocumentMedia: Default 595 842 0 () ()
+%%DocumentMedia: Default 612 792 0 () ()
%%Orientation: Portrait
%%EndComments
%%BeginDefaults
@@ -190,18 +190,18 @@ setpacking
%%EndProlog
%%BeginSetup
%%BeginFeature: *PageSize Default
-<< /PageSize [ 595 842 ] /ImagingBBox null >> setpagedevice
+<< /PageSize [ 612 792 ] /ImagingBBox null >> setpagedevice
%%EndFeature
%%IncludeResource: font Times-Roman
%%IncludeResource: font Times-Bold
%%IncludeResource: font Times-Italic
%%IncludeResource: font Courier
grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72
-def/PL 841.89 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron
-/Zcaron/scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef
+def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron
+/scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
-/.notdef/.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent
+/.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent
/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen
/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon
/semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O
@@ -336,8 +336,8 @@ le is read, and the k)108 616.8 R 1.459 -.15(ey b)-.1 H 1.159
(re).15 G(xample, placing)-2.65 E(M\255Control\255u: uni)144 698.4 Q
-.15(ve)-.25 G(rsal\255ar).15 E(gument)-.18 E(or)108 710.4 Q
(C\255Meta\255u: uni)144 722.4 Q -.15(ve)-.25 G(rsal\255ar).15 E(gument)
--.18 E(GNU Readline 6.2)72 768 Q(2010 August 28)127.345 E(1)197.055 E 0
-Cg EP
+-.18 E(GNU Readline 6.3)72 768 Q(2014 January 6)128.74 E(1)198.45 E 0 Cg
+EP
%%Page: 2 2
%%BeginPageSetup
BP
@@ -430,8 +430,8 @@ Q F0(horizontal tab)29.89 E F2(\\v)144 672 Q F0 -.15(ve)28.22 G
o indicate a macro de\214nition.)-.15 F .089(Unquoted te)108 724.8 R
.089(xt is assumed to be a function name.)-.15 F .09(In the macro body)
5.089 F 2.59(,t)-.65 G .09(he backslash escapes described abo)-2.59 F
--.15(ve)-.15 G(GNU Readline 6.2)72 768 Q(2010 August 28)127.345 E(2)
-197.055 E 0 Cg EP
+-.15(ve)-.15 G(GNU Readline 6.3)72 768 Q(2014 January 6)128.74 E(2)
+198.45 E 0 Cg EP
%%Page: 3 3
%%BeginPageSetup
BP
@@ -482,980 +482,1046 @@ E 5.043(.A)-.55 G -.25(va)-2.5 G .043(riable may be set in the).25 F F2
to bind the control characters treated specially by the k)-2.555 F
(ernel')-.1 E 2.556(st)-.55 G(ermi-)-2.556 E(nal dri)144 336 Q -.15(ve)
-.25 G 2.5(rt).15 G 2.5(ot)-2.5 G(heir readline equi)-2.5 E -.25(va)-.25
-G(lents.).25 E F1(comment\255begin \(`)108 348 Q(`#')-.63 E('\))-.63 E
-F0 .062(The string that is inserted in)144 360 R F1(vi)2.562 E F0 .062
+G(lents.).25 E F1(color)108 348 Q(ed\255stats \(Off\))-.18 E F0 1.58
+(If set to)144 360 R F1(On)4.08 E F0 4.08(,r)C 1.579
+(eadline displays possible completions using dif)-4.08 F 1.579
+(ferent colors to indicate their \214le)-.25 F 2.5(type. The)144 372 R
+(color de\214nitions are tak)2.5 E(en from the v)-.1 E(alue of the)-.25
+E F1(LS_COLORS)2.5 E F0(en)2.5 E(vironment v)-.4 E(ariable.)-.25 E F1
+(comment\255begin \(`)108 384 Q(`#')-.63 E('\))-.63 E F0 .062
+(The string that is inserted in)144 396 R F1(vi)2.562 E F0 .062
(mode when the)2.562 F F1(insert\255comment)2.562 E F0 .062
(command is e)2.562 F -.15(xe)-.15 G 2.562(cuted. This).15 F(com-)2.562
-E(mand is bound to)144 372 Q F1(M\255#)2.5 E F0(in emacs mode and to)2.5
+E(mand is bound to)144 408 Q F1(M\255#)2.5 E F0(in emacs mode and to)2.5
E F1(#)2.5 E F0(in vi command mode.)2.5 E F1
-(completion\255display\255width \(-1\))108 384 Q F0 1.453(The number of\
+(completion\255display\255width \(-1\))108 420 Q F0 1.453(The number of\
screen columns used to display possible matches when performing comple\
-tion.)144 396 R .194(The v)144 408 R .193(alue is ignored if it is less\
- than 0 or greater than the terminal screen width.)-.25 F 2.693(Av)5.193
-G .193(alue of 0 will)-2.943 F
-(cause matches to be displayed one per line.)144 420 Q(The def)5 E
-(ault v)-.1 E(alue is -1.)-.25 E F1(completion\255ignor)108 432 Q
-(e\255case \(Off\))-.18 E F0(If set to)144 444 Q F1(On)2.5 E F0 2.5(,r)C
+tion.)144 432 R .193(The v)144 444 R .193(alue is ignored if it is less\
+ than 0 or greater than the terminal screen width.)-.25 F 2.694(Av)5.194
+G .194(alue of 0 will)-2.944 F
+(cause matches to be displayed one per line.)144 456 Q(The def)5 E
+(ault v)-.1 E(alue is -1.)-.25 E F1(completion\255ignor)108 468 Q
+(e\255case \(Off\))-.18 E F0(If set to)144 480 Q F1(On)2.5 E F0 2.5(,r)C
(eadline performs \214lename matching and completion in a case\255insen\
siti)-2.5 E .3 -.15(ve f)-.25 H(ashion.).05 E F1
-(completion\255map\255case \(Off\))108 456 Q F0 .093(If set to)144 468 R
+(completion\255map\255case \(Off\))108 492 Q F0 .094(If set to)144 504 R
F1(On)2.593 E F0 2.593(,a)C(nd)-2.593 E F1(completion\255ignor)2.593 E
(e\255case)-.18 E F0 .093(is enabled, readline treats h)2.593 F .093
-(yphens \()-.05 F F2<ad>A F0 2.593(\)a)C .094(nd underscores)-2.593 F
-(\()144 480 Q F2(_)A F0 2.5(\)a)C 2.5(se)-2.5 G(qui)-2.5 E -.25(va)-.25
+(yphens \()-.05 F F2<ad>A F0 2.593(\)a)C .093(nd underscores)-2.593 F
+(\()144 516 Q F2(_)A F0 2.5(\)a)C 2.5(se)-2.5 G(qui)-2.5 E -.25(va)-.25
G(lent when performing case\255insensiti).25 E .3 -.15(ve \214)-.25 H
-(lename matching and completion.).15 E F1(completion\255pr)108 492 Q
+(lename matching and completion.).15 E F1(completion\255pr)108 528 Q
(e\214x\255display\255length \(0\))-.18 E F0 .829(The length in charact\
ers of the common pre\214x of a list of possible completions that is di\
-splayed)144 504 R 1.274(without modi\214cation.)144 516 R 1.274
-(When set to a v)6.274 F 1.274(alue greater than zero, common pre\214x)
--.25 F 1.275(es longer than this)-.15 F -.25(va)144 528 S(lue are repla\
+splayed)144 540 R 1.275(without modi\214cation.)144 552 R 1.275
+(When set to a v)6.275 F 1.274(alue greater than zero, common pre\214x)
+-.25 F 1.274(es longer than this)-.15 F -.25(va)144 564 S(lue are repla\
ced with an ellipsis when displaying possible completions.).25 E F1
-(completion\255query\255items \(100\))108 540 Q F0 .53
-(This determines when the user is queried about vie)144 552 R .529
-(wing the number of possible completions gen-)-.25 F .56(erated by the)
-144 564 R F1(possible\255completions)3.06 E F0 3.06(command. It)3.06 F
-.561(may be set to an)3.061 F 3.061(yi)-.15 G(nte)-3.061 E .561(ger v)
--.15 F .561(alue greater than or)-.25 F .783(equal to zero.)144 576 R
+(completion\255query\255items \(100\))108 576 Q F0 .529
+(This determines when the user is queried about vie)144 588 R .53
+(wing the number of possible completions gen-)-.25 F .561(erated by the)
+144 600 R F1(possible\255completions)3.061 E F0 3.061(command. It)3.061
+F .561(may be set to an)3.061 F 3.06(yi)-.15 G(nte)-3.06 E .56(ger v)
+-.15 F .56(alue greater than or)-.25 F .782(equal to zero.)144 612 R
.783(If the number of possible completions is greater than or equal to \
-the v)5.783 F .782(alue of this)-.25 F -.25(va)144 588 S .237
+the v)5.782 F .783(alue of this)-.25 F -.25(va)144 624 S .237
(riable, the user is ask).25 F .237(ed whether or not he wishes to vie)
-.1 F 2.737(wt)-.25 G .237(hem; otherwise the)-2.737 F 2.737(ya)-.15 G
-.237(re simply listed)-2.737 F(on the terminal.)144 600 Q 2.5(An)5 G
+.237(re simply listed)-2.737 F(on the terminal.)144 636 Q 2.5(An)5 G
-2.25 -.15(eg a)-2.5 H(ti).15 E .3 -.15(ve v)-.25 H
(alue causes readline to ne)-.1 E -.15(ve)-.25 G 2.5(ra).15 G(sk.)-2.5 E
-F1(con)108 612 Q -.1(ve)-.4 G(rt\255meta \(On\)).1 E F0 .613(If set to)
-144 624 R F1(On)3.113 E F0 3.113(,r)C .613(eadline will con)-3.113 F
+F1(con)108 648 Q -.1(ve)-.4 G(rt\255meta \(On\)).1 E F0 .612(If set to)
+144 660 R F1(On)3.112 E F0 3.112(,r)C .613(eadline will con)-3.112 F
-.15(ve)-.4 G .613(rt characters with the eighth bit set to an ASCII k)
-.15 F .912 -.15(ey s)-.1 H .612(equence by).15 F 1.315(stripping the ei\
-ghth bit and pre\214xing it with an escape character \(in ef)144 636 R
-1.316(fect, using escape as the)-.25 F F2(meta pr)144 648 Q(e\214x)-.37
-E F0(\).)A F1(disable\255completion \(Off\))108 660 Q F0 .038(If set to)
-144 672 R F1(On)2.538 E F0 2.538(,r)C .038(eadline will inhibit w)-2.538
+.15 F .913 -.15(ey s)-.1 H .613(equence by).15 F 1.316(stripping the ei\
+ghth bit and pre\214xing it with an escape character \(in ef)144 672 R
+1.315(fect, using escape as the)-.25 F F2(meta pr)144 684 Q(e\214x)-.37
+E F0(\).)A F1(disable\255completion \(Off\))108 696 Q F0 .038(If set to)
+144 708 R F1(On)2.538 E F0 2.538(,r)C .038(eadline will inhibit w)-2.538
F .038(ord completion.)-.1 F .038
(Completion characters will be inserted into the)5.038 F(line as if the)
-144 684 Q 2.5(yh)-.15 G(ad been mapped to)-2.5 E F1(self-insert)2.5 E F0
-(.)A F1(editing\255mode \(emacs\))108 696 Q F0 .141
-(Controls whether readline be)144 708 R .141(gins with a set of k)-.15 F
-.441 -.15(ey b)-.1 H .141(indings similar to).15 F F2(Emacs)2.642 E F0
-(or)2.642 E F2(vi)2.642 E F0(.)A F1(editing\255mode)5.142 E F0
-(can be set to either)144 720 Q F1(emacs)2.5 E F0(or)2.5 E F1(vi)2.5 E
-F0(.)A(GNU Readline 6.2)72 768 Q(2010 August 28)127.345 E(3)197.055 E 0
-Cg EP
+144 720 Q 2.5(yh)-.15 G(ad been mapped to)-2.5 E F1(self-insert)2.5 E F0
+(.)A(GNU Readline 6.3)72 768 Q(2014 January 6)128.74 E(3)198.45 E 0 Cg
+EP
%%Page: 4 4
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF 342.2(READLINE\(3\) READLINE\(3\))72 48 R/F1 10
-/Times-Bold@0 SF(echo\255contr)108 84 Q(ol\255characters \(On\))-.18 E
-F0 1.211(When set to)144 96 R F1(On)3.711 E F0 3.711(,o)C 3.711(no)
--3.711 G 1.211(perating systems that indicate the)-3.711 F 3.711(ys)-.15
-G 1.21(upport it, readline echoes a character)-3.711 F
-(corresponding to a signal generated from the k)144 108 Q -.15(ey)-.1 G
-(board.).15 E F1(enable\255k)108 120 Q(eypad \(Off\))-.1 E F0 .892
-(When set to)144 132 R F1(On)3.393 E F0 3.393(,r)C .893
+/Times-Bold@0 SF(editing\255mode \(emacs\))108 84 Q F0 .142
+(Controls whether readline be)144 96 R .141(gins with a set of k)-.15 F
+.441 -.15(ey b)-.1 H .141(indings similar to).15 F/F2 10/Times-Italic@0
+SF(Emacs)2.641 E F0(or)2.641 E F2(vi)2.641 E F0(.)A F1(editing\255mode)
+5.141 E F0(can be set to either)144 108 Q F1(emacs)2.5 E F0(or)2.5 E F1
+(vi)2.5 E F0(.)A F1(echo\255contr)108 120 Q(ol\255characters \(On\))-.18
+E F0 1.21(When set to)144 132 R F1(On)3.71 E F0 3.71(,o)C 3.71(no)-3.71
+G 1.211(perating systems that indicate the)-3.71 F 3.711(ys)-.15 G 1.211
+(upport it, readline echoes a character)-3.711 F
+(corresponding to a signal generated from the k)144 144 Q -.15(ey)-.1 G
+(board.).15 E F1(enable\255k)108 156 Q(eypad \(Off\))-.1 E F0 .893
+(When set to)144 168 R F1(On)3.393 E F0 3.393(,r)C .893
(eadline will try to enable the application k)-3.393 F -.15(ey)-.1 G
-.893(pad when it is called.).15 F .893(Some sys-)5.893 F
-(tems need this to enable the arro)144 144 Q 2.5(wk)-.25 G -.15(ey)-2.6
-G(s.).15 E F1(enable\255meta\255k)108 156 Q(ey \(On\))-.1 E F0 .64
-(When set to)144 168 R F1(On)3.14 E F0 3.14(,r)C .64
+.893(pad when it is called.).15 F .892(Some sys-)5.893 F
+(tems need this to enable the arro)144 180 Q 2.5(wk)-.25 G -.15(ey)-2.6
+G(s.).15 E F1(enable\255meta\255k)108 192 Q(ey \(On\))-.1 E F0 .64
+(When set to)144 204 R F1(On)3.14 E F0 3.14(,r)C .64
(eadline will try to enable an)-3.14 F 3.14(ym)-.15 G .64
(eta modi\214er k)-3.14 F .94 -.15(ey t)-.1 H .64
-(he terminal claims to support).15 F(when it is called.)144 180 Q
+(he terminal claims to support).15 F(when it is called.)144 216 Q
(On man)5 E 2.5(yt)-.15 G(erminals, the meta k)-2.5 E .3 -.15(ey i)-.1 H
2.5(su).15 G(sed to send eight-bit characters.)-2.5 E F1
-(expand\255tilde \(Off\))108 192 Q F0(If set to)144 204 Q F1(On)2.5 E F0
+(expand\255tilde \(Off\))108 228 Q F0(If set to)144 240 Q F1(On)2.5 E F0
2.5(,t)C(ilde e)-2.5 E(xpansion is performed when readline attempts w)
--.15 E(ord completion.)-.1 E F1(history\255pr)108 216 Q(eser)-.18 E -.1
-(ve)-.1 G(\255point \(Off\)).1 E F0 1.338(If set to)144 228 R F1(On)
-3.838 E F0 3.838(,t)C 1.338(he history code attempts to place point at \
-the same location on each history line)-3.838 F(retrie)144 240 Q -.15
+-.15 E(ord completion.)-.1 E F1(history\255pr)108 252 Q(eser)-.18 E -.1
+(ve)-.1 G(\255point \(Off\)).1 E F0 1.339(If set to)144 264 R F1(On)
+3.839 E F0 3.839(,t)C 1.338(he history code attempts to place point at \
+the same location on each history line)-3.839 F(retrie)144 276 Q -.15
(ve)-.25 G 2.5(dw).15 G(ith)-2.5 E F1(pr)2.5 E -.15(ev)-.18 G
(ious-history).15 E F0(or)2.5 E F1(next-history)2.5 E F0(.)A F1
-(history\255size \(0\))108 252 Q F0 .463
-(Set the maximum number of history entries sa)144 264 R -.15(ve)-.2 G
-2.963(di).15 G 2.963(nt)-2.963 G .463(he history list.)-2.963 F .462
-(If set to zero, the number of)5.463 F
-(entries in the history list is not limited.)144 276 Q F1
-(horizontal\255scr)108 288 Q(oll\255mode \(Off\))-.18 E F0 .448
-(When set to)144 300 R F1(On)2.948 E F0 2.948(,m)C(ak)-2.948 E .448
+(history\255size \(0\))108 288 Q F0 .948
+(Set the maximum number of history entries sa)144 300 R -.15(ve)-.2 G
+3.448(di).15 G 3.448(nt)-3.448 G .948(he history list.)-3.448 F .949
+(If set to zero, an)5.948 F 3.449(ye)-.15 G(xisting)-3.599 E .483
+(history entries are deleted and no ne)144 312 R 2.983(we)-.25 G .483
+(ntries are sa)-2.983 F -.15(ve)-.2 G 2.983(d. If).15 F .482(set to a v)
+2.983 F .482(alue less than zero, the num-)-.25 F
+(ber of history entries is not limited.)144 324 Q(By def)5 E
+(ault, the number of history entries is not limited.)-.1 E F1
+(horizontal\255scr)108 336 Q(oll\255mode \(Off\))-.18 E F0 .448
+(When set to)144 348 R F1(On)2.948 E F0 2.948(,m)C(ak)-2.948 E .448
(es readline use a single line for display)-.1 F 2.948(,s)-.65 G .449
(crolling the input horizontally on a)-2.948 F 1.194(single screen line\
when it becomes longer than the screen width rather than wrapping to a\
- ne)144 312 R(w)-.25 E(line.)144 324 Q F1(input\255meta \(Off\))108 336
-Q F0 .367(If set to)144 348 R F1(On)2.867 E F0 2.867(,r)C .367(eadline \
+ ne)144 360 R(w)-.25 E(line.)144 372 Q F1(input\255meta \(Off\))108 384
+Q F0 .367(If set to)144 396 R F1(On)2.867 E F0 2.867(,r)C .367(eadline \
will enable eight-bit input \(that is, it will not clear the eighth bit\
- in the char)-2.867 F(-)-.2 E .957(acters it reads\), re)144 360 R -.05
+ in the char)-2.867 F(-)-.2 E .957(acters it reads\), re)144 408 R -.05
(ga)-.15 G .956(rdless of what the terminal claims it can support.).05 F
.956(The name)5.956 F F1(meta\255\215ag)3.456 E F0 .956(is a)3.456 F
-(synon)144 372 Q(ym for this v)-.15 E(ariable.)-.25 E F1(isear)108 384 Q
+(synon)144 420 Q(ym for this v)-.15 E(ariable.)-.25 E F1(isear)108 432 Q
(ch\255terminators \(`)-.18 E(`C\255[ C\255J')-.63 E('\))-.63 E F0 .439
(The string of characters that should terminate an incremental search w\
-ithout subsequently e)144 396 R -.15(xe)-.15 G(cut-).15 E .935
-(ing the character as a command.)144 408 R .935(If this v)5.935 F .935
+ithout subsequently e)144 444 R -.15(xe)-.15 G(cut-).15 E .935
+(ing the character as a command.)144 456 R .935(If this v)5.935 F .935
(ariable has not been gi)-.25 F -.15(ve)-.25 G 3.434(nav).15 G .934
-(alue, the characters)-3.684 F/F2 10/Times-Italic@0 SF(ESC)3.434 E F0
-(and)144 420 Q F2(C\255J)2.5 E F0(will terminate an incremental search.)
-2.5 E F1 -.1(ke)108 432 S(ymap \(emacs\)).1 E F0 2.323
-(Set the current readline k)144 444 R -.15(ey)-.1 G 4.823(map. The).15 F
-2.323(set of le)4.823 F -.05(ga)-.15 G 4.823(lk).05 G -.15(ey)-4.923 G
-2.323(map names is).15 F F2 2.324(emacs, emacs-standar)4.823 F(d,)-.37 E
-.809(emacs-meta, emacs-ctlx, vi, vi-mo)144 456 R(ve)-.1 E 3.308(,v)-.1 G
+(alue, the characters)-3.684 F F2(ESC)3.434 E F0(and)144 468 Q F2
+(C\255J)2.5 E F0(will terminate an incremental search.)2.5 E F1 -.1(ke)
+108 480 S(ymap \(emacs\)).1 E F0 2.323(Set the current readline k)144
+492 R -.15(ey)-.1 G 4.823(map. The).15 F 2.323(set of le)4.823 F -.05
+(ga)-.15 G 4.823(lk).05 G -.15(ey)-4.923 G 2.323(map names is).15 F F2
+2.324(emacs, emacs-standar)4.823 F(d,)-.37 E .809
+(emacs-meta, emacs-ctlx, vi, vi-mo)144 504 R(ve)-.1 E 3.308(,v)-.1 G
(i-command)-3.308 E F0 3.308(,a)C(nd)-3.308 E F2(vi-insert)3.308 E F0(.)
.68 E F2(vi)5.808 E F0 .808(is equi)3.308 F -.25(va)-.25 G .808(lent to)
-.25 F F2(vi-command)3.308 E F0(;)A F2(emacs)144 468 Q F0 .697(is equi)
+.25 F F2(vi-command)3.308 E F0(;)A F2(emacs)144 516 Q F0 .697(is equi)
3.196 F -.25(va)-.25 G .697(lent to).25 F F2(emacs-standar)3.197 E(d)
-.37 E F0 5.697(.T)C .697(he def)-5.697 F .697(ault v)-.1 F .697
(alue is)-.25 F F2(emacs)3.197 E F0 5.697(.T).27 G .697(he v)-5.697 F
-.697(alue of)-.25 F F1(editing\255mode)3.197 E F0(also af)144 480 Q
-(fects the def)-.25 E(ault k)-.1 E -.15(ey)-.1 G(map.).15 E F1
-(mark\255dir)108 492 Q(ectories \(On\))-.18 E F0(If set to)144 504 Q F1
-(On)2.5 E F0 2.5(,c)C(ompleted directory names ha)-2.5 E .3 -.15(ve a s)
--.2 H(lash appended.).15 E F1(mark\255modi\214ed\255lines \(Off\))108
-516 Q F0(If set to)144 528 Q F1(On)2.5 E F0 2.5(,h)C
-(istory lines that ha)-2.5 E .3 -.15(ve b)-.2 H
-(een modi\214ed are displayed with a preceding asterisk \().15 E F1(*)A
-F0(\).)A F1(mark\255symlink)108 540 Q(ed\255dir)-.1 E(ectories \(Off\))
--.18 E F0 .175(If set to)144 552 R F1(On)2.675 E F0 2.675(,c)C .175
+.697(alue of)-.25 F F1(editing\255mode)3.197 E F0(also af)144 528 Q
+(fects the def)-.25 E(ault k)-.1 E -.15(ey)-.1 G(map.).15 E F1 -.1(ke)
+108 540 S(yseq\255timeout \(500\)).1 E F0 .368(Speci\214es the duration)
+144 552 R F2 -.37(re)2.867 G(adline).37 E F0 .367(will w)2.867 F .367
+(ait for a character when reading an ambiguous k)-.1 F .667 -.15(ey s)
+-.1 H(equence).15 E 1.356(\(one that can form a complete k)144 564 R
+1.656 -.15(ey s)-.1 H 1.356(equence using the input read so f).15 F(ar)
+-.1 E 3.856(,o)-.4 G 3.856(rc)-3.856 G 1.356(an tak)-3.856 F 3.856(ea)
+-.1 G(dditional)-3.856 E .32(input to complete a longer k)144 576 R .62
+-.15(ey s)-.1 H 2.82(equence\). If).15 F .32(no input is recei)2.82 F
+-.15(ve)-.25 G 2.82(dw).15 G .32(ithin the timeout,)-2.82 F F2 -.37(re)
+2.82 G(adline).37 E F0(will)2.82 E .906(use the shorter b)144 588 R .907
+(ut complete k)-.2 F 1.207 -.15(ey s)-.1 H 3.407(equence. The).15 F -.25
+(va)3.407 G .907(lue is speci\214ed in milliseconds, so a v).25 F .907
+(alue of)-.25 F .05(1000 means that)144 600 R F2 -.37(re)2.55 G(adline)
+.37 E F0 .05(will w)2.55 F .05(ait one second for additional input.)-.1
+F .05(If this v)5.05 F .05(ariable is set to a v)-.25 F(alue)-.25 E .051
+(less than or equal to zero, or to a non-numeric v)144 612 R(alue,)-.25
+E F2 -.37(re)2.551 G(adline).37 E F0 .051(will w)2.551 F .051
+(ait until another k)-.1 F .352 -.15(ey i)-.1 H 2.552(sp).15 G(ressed)
+-2.552 E(to decide which k)144 624 Q .3 -.15(ey s)-.1 H
+(equence to complete.).15 E F1(mark\255dir)108 636 Q(ectories \(On\))
+-.18 E F0(If set to)144 648 Q F1(On)2.5 E F0 2.5(,c)C
+(ompleted directory names ha)-2.5 E .3 -.15(ve a s)-.2 H(lash appended.)
+.15 E F1(mark\255modi\214ed\255lines \(Off\))108 660 Q F0(If set to)144
+672 Q F1(On)2.5 E F0 2.5(,h)C(istory lines that ha)-2.5 E .3 -.15(ve b)
+-.2 H(een modi\214ed are displayed with a preceding asterisk \().15 E F1
+(*)A F0(\).)A F1(mark\255symlink)108 684 Q(ed\255dir)-.1 E
+(ectories \(Off\))-.18 E F0 .175(If set to)144 696 R F1(On)2.675 E F0
+2.675(,c)C .175
(ompleted names which are symbolic links to directories ha)-2.675 F .475
--.15(ve a s)-.2 H .175(lash appended \(sub-).15 F(ject to the v)144 564
-Q(alue of)-.25 E F1(mark\255dir)2.5 E(ectories)-.18 E F0(\).)A F1
-(match\255hidden\255\214les \(On\))108 576 Q F0 .192(This v)144 588 R
-.192(ariable, when set to)-.25 F F1(On)2.692 E F0 2.692(,c)C .192
-(auses readline to match \214les whose names be)-2.692 F .193
+-.15(ve a s)-.2 H .175(lash appended \(sub-).15 F(ject to the v)144 708
+Q(alue of)-.25 E F1(mark\255dir)2.5 E(ectories)-.18 E F0(\).)A
+(GNU Readline 6.3)72 768 Q(2014 January 6)128.74 E(4)198.45 E 0 Cg EP
+%%Page: 5 5
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF 342.2(READLINE\(3\) READLINE\(3\))72 48 R/F1 10
+/Times-Bold@0 SF(match\255hidden\255\214les \(On\))108 84 Q F0 .192
+(This v)144 96 R .192(ariable, when set to)-.25 F F1(On)2.692 E F0 2.692
+(,c)C .192(auses readline to match \214les whose names be)-2.692 F .193
(gin with a `.)-.15 F 2.693('\()-.7 G(hidden)-2.693 E .457
-(\214les\) when performing \214lename completion.)144 600 R .456
+(\214les\) when performing \214lename completion.)144 108 R .456
(If set to)5.456 F F1(Off)2.956 E F0 2.956(,t)C .456(he leading `.)
-2.956 F 2.956('m)-.7 G .456(ust be supplied by the)-2.956 F
-(user in the \214lename to be completed.)144 612 Q F1
-(menu\255complete\255display\255pr)108 624 Q(e\214x \(Off\))-.18 E F0
-1.585(If set to)144 636 R F1(On)4.085 E F0 4.085(,m)C 1.585(enu complet\
+(user in the \214lename to be completed.)144 120 Q F1
+(menu\255complete\255display\255pr)108 132 Q(e\214x \(Off\))-.18 E F0
+1.585(If set to)144 144 R F1(On)4.085 E F0 4.085(,m)C 1.585(enu complet\
ion displays the common pre\214x of the list of possible completions)
--4.085 F(\(which may be empty\) before c)144 648 Q
-(ycling through the list.)-.15 E F1(output\255meta \(Off\))108 660 Q F0
-.507(If set to)144 672 R F1(On)3.007 E F0 3.007(,r)C .507(eadline will \
+-4.085 F(\(which may be empty\) before c)144 156 Q
+(ycling through the list.)-.15 E F1(output\255meta \(Off\))108 168 Q F0
+.507(If set to)144 180 R F1(On)3.007 E F0 3.007(,r)C .507(eadline will \
display characters with the eighth bit set directly rather than as a me\
-ta-)-3.007 F(pre\214x)144 684 Q(ed escape sequence.)-.15 E F1
-(page\255completions \(On\))108 696 Q F0 .808(If set to)144 708 R F1(On)
-3.308 E F0 3.308(,r)C .808(eadline uses an internal)-3.308 F F2(mor)
-3.308 E(e)-.37 E F0(-lik)A 3.308(ep)-.1 G .808
+ta-)-3.007 F(pre\214x)144 192 Q(ed escape sequence.)-.15 E F1
+(page\255completions \(On\))108 204 Q F0 .808(If set to)144 216 R F1(On)
+3.308 E F0 3.308(,r)C .808(eadline uses an internal)-3.308 F/F2 10
+/Times-Italic@0 SF(mor)3.308 E(e)-.37 E F0(-lik)A 3.308(ep)-.1 G .808
(ager to display a screenful of possible comple-)-3.308 F
-(tions at a time.)144 720 Q(GNU Readline 6.2)72 768 Q(2010 August 28)
-127.345 E(4)197.055 E 0 Cg EP
-%%Page: 5 5
-%%BeginPageSetup
-BP
-%%EndPageSetup
-/F0 10/Times-Roman@0 SF 342.2(READLINE\(3\) READLINE\(3\))72 48 R/F1 10
-/Times-Bold@0 SF(print\255completions\255horizontally \(Off\))108 84 Q
-F0 1.319(If set to)144 96 R F1(On)3.819 E F0 3.819(,r)C 1.318(eadline w\
-ill display completions with matches sorted horizontally in alphabetica\
-l)-3.819 F(order)144 108 Q 2.5(,r)-.4 G(ather than do)-2.5 E
-(wn the screen.)-.25 E F1 -2.29 -.18(re v)108 120 T
-(ert\255all\255at\255newline \(Off\)).08 E F0 .698(If set to)144 132 R
-F1(On)3.198 E F0 3.198(,r)C .699
+(tions at a time.)144 228 Q F1
+(print\255completions\255horizontally \(Off\))108 240 Q F0 1.319
+(If set to)144 252 R F1(On)3.819 E F0 3.819(,r)C 1.318(eadline will dis\
+play completions with matches sorted horizontally in alphabetical)-3.819
+F(order)144 264 Q 2.5(,r)-.4 G(ather than do)-2.5 E(wn the screen.)-.25
+E F1 -2.29 -.18(re v)108 276 T(ert\255all\255at\255newline \(Off\)).08 E
+F0 .698(If set to)144 288 R F1(On)3.198 E F0 3.198(,r)C .699
(eadline will undo all changes to history lines before returning when)
--3.198 F F1(accept\255line)3.199 E F0(is)3.199 E -.15(exe)144 144 S
+-3.198 F F1(accept\255line)3.199 E F0(is)3.199 E -.15(exe)144 300 S
2.686(cuted. By).15 F(def)2.686 E .186
(ault, history lines may be modi\214ed and retain indi)-.1 F .186
-(vidual undo lists across calls to)-.25 F F1 -.18(re)144 156 S(adline)
-.18 E F0(.)A F1(sho)108 168 Q(w\255all\255if\255ambiguous \(Off\))-.1 E
-F0 .303(This alters the def)144 180 R .303(ault beha)-.1 F .304
+(vidual undo lists across calls to)-.25 F F1 -.18(re)144 312 S(adline)
+.18 E F0(.)A F1(sho)108 324 Q(w\255all\255if\255ambiguous \(Off\))-.1 E
+F0 .303(This alters the def)144 336 R .303(ault beha)-.1 F .304
(vior of the completion functions.)-.2 F .304(If set to)5.304 F F1(On)
2.804 E F0 2.804(,w)C .304(ords which ha)-2.904 F .604 -.15(ve m)-.2 H
(ore).15 E 1.264(than one possible completion cause the matches to be l\
-isted immediately instead of ringing the)144 192 R(bell.)144 204 Q F1
-(sho)108 216 Q(w\255all\255if\255unmodi\214ed \(Off\))-.1 E F0 5.345
-(This alters the def)144 228 R 5.345(ault beha)-.1 F 5.345
+isted immediately instead of ringing the)144 348 R(bell.)144 360 Q F1
+(sho)108 372 Q(w\255all\255if\255unmodi\214ed \(Off\))-.1 E F0 5.345
+(This alters the def)144 384 R 5.345(ault beha)-.1 F 5.345
(vior of the completion functions in a f)-.2 F 5.346(ashion similar to)
--.1 F F1(sho)144 240 Q(w\255all\255if\255ambiguous)-.1 E F0 6.691(.I)C
+-.1 F F1(sho)144 396 Q(w\255all\255if\255ambiguous)-.1 E F0 6.691(.I)C
4.191(fs)-6.691 G 1.691(et to)-4.191 F F1(On)4.191 E F0 4.191(,w)C 1.691
(ords which ha)-4.291 F 1.991 -.15(ve m)-.2 H 1.691
-(ore than one possible completion).15 F 1.039(without an)144 252 R 3.539
+(ore than one possible completion).15 F 1.039(without an)144 408 R 3.539
(yp)-.15 G 1.039
(ossible partial completion \(the possible completions don')-3.539 F
3.539(ts)-.18 G 1.04(hare a common pre\214x\))-3.539 F(cause the matche\
-s to be listed immediately instead of ringing the bell.)144 264 Q F1
-(skip\255completed\255text \(Off\))108 276 Q F0 .095(If set to)144 288 R
-F1(On)2.595 E F0 2.595(,t)C .095(his alters the def)-2.595 F .095
-(ault completion beha)-.1 F .094
-(vior when inserting a single match into the line.)-.2 F(It')144 300 Q
-2.545(so)-.55 G .045(nly acti)-2.545 F .345 -.15(ve w)-.25 H .046
-(hen performing completion in the middle of a w).15 F 2.546(ord. If)-.1
-F .046(enabled, readline does not)2.546 F 1.394(insert characters from \
-the completion that match characters after point in the w)144 312 R
-1.394(ord being com-)-.1 F(pleted, so portions of the w)144 324 Q
+s to be listed immediately instead of ringing the bell.)144 420 Q F1
+(sho)108 432 Q(w\255mode\255in\255pr)-.1 E(ompt \(Off\))-.18 E F0 1.019
+(If set to)144 444 R F1(On)3.519 E F0 3.519(,a)C 1.018
+(dd a character to the be)-3.519 F 1.018
+(ginning of the prompt indicating the editing mode: emacs)-.15 F
+(\(@\), vi command \(:\) or vi insertion \(+\).)144 456 Q F1
+(skip\255completed\255text \(Off\))108 468 Q F0 .094(If set to)144 480 R
+F1(On)2.594 E F0 2.594(,t)C .095(his alters the def)-2.594 F .095
+(ault completion beha)-.1 F .095
+(vior when inserting a single match into the line.)-.2 F(It')144 492 Q
+2.546(so)-.55 G .046(nly acti)-2.546 F .346 -.15(ve w)-.25 H .046
+(hen performing completion in the middle of a w).15 F 2.545(ord. If)-.1
+F .045(enabled, readline does not)2.545 F 1.394(insert characters from \
+the completion that match characters after point in the w)144 504 R
+1.395(ord being com-)-.1 F(pleted, so portions of the w)144 516 Q
(ord follo)-.1 E(wing the cursor are not duplicated.)-.25 E F1
-(visible\255stats \(Off\))108 336 Q F0 .846(If set to)144 348 R F1(On)
+(visible\255stats \(Off\))108 528 Q F0 .847(If set to)144 540 R F1(On)
3.346 E F0 3.346(,ac)C .846(haracter denoting a \214le')-3.346 F 3.346
-(st)-.55 G .846(ype as reported by)-3.346 F/F2 10/Times-Italic@0 SF
-(stat)3.346 E F0 .846(\(2\) is appended to the \214lename)B
-(when listing possible completions.)144 360 Q F1(Conditional Constructs)
-87 376.8 Q F0 .05(Readline implements a f)108 388.8 R .05(acility simil\
+(st)-.55 G .846(ype as reported by)-3.346 F F2(stat)3.346 E F0 .846
+(\(2\) is appended to the \214lename)B
+(when listing possible completions.)144 552 Q F1(Conditional Constructs)
+87 568.8 Q F0 .05(Readline implements a f)108 580.8 R .05(acility simil\
ar in spirit to the conditional compilation features of the C preproces\
-sor)-.1 F .096(which allo)108 400.8 R .096(ws k)-.25 F .396 -.15(ey b)
+sor)-.1 F .097(which allo)108 592.8 R .097(ws k)-.25 F .396 -.15(ey b)
-.1 H .096(indings and v).15 F .096
-(ariable settings to be performed as the result of tests.)-.25 F .097
-(There are four parser)5.096 F(directi)108 412.8 Q -.15(ve)-.25 G 2.5
-(su).15 G(sed.)-2.5 E F1($if)108 429.6 Q F0(The)24.89 E F1($if)2.963 E
-F0 .463(construct allo)2.963 F .462(ws bindings to be made based on the\
- editing mode, the terminal being used,)-.25 F .477
-(or the application using readline.)144 441.6 R .477(The te)5.477 F .477
+(ariable settings to be performed as the result of tests.)-.25 F .096
+(There are four parser)5.096 F(directi)108 604.8 Q -.15(ve)-.25 G 2.5
+(su).15 G(sed.)-2.5 E F1($if)108 621.6 Q F0(The)24.89 E F1($if)2.962 E
+F0 .462(construct allo)2.962 F .463(ws bindings to be made based on the\
+ editing mode, the terminal being used,)-.25 F .478
+(or the application using readline.)144 633.6 R .477(The te)5.477 F .477
(xt of the test e)-.15 F .477
(xtends to the end of the line; no characters)-.15 F
-(are required to isolate it.)144 453.6 Q F1(mode)144 470.4 Q F0(The)
-12.67 E F1(mode=)3.712 E F0 1.212(form of the)3.712 F F1($if)3.711 E F0
+(are required to isolate it.)144 645.6 Q F1(mode)144 662.4 Q F0(The)
+12.67 E F1(mode=)3.711 E F0 1.211(form of the)3.711 F F1($if)3.711 E F0
(directi)3.711 E 1.511 -.15(ve i)-.25 H 3.711(su).15 G 1.211
(sed to test whether readline is in emacs or vi)-3.711 F 3.065
-(mode. This)180 482.4 R .565(may be used in conjunction with the)3.065 F
+(mode. This)180 674.4 R .565(may be used in conjunction with the)3.065 F
F1 .565(set k)3.065 F(eymap)-.1 E F0 .565(command, for instance, to)
-3.065 F .03(set bindings in the)180 494.4 R F2(emacs-standar)2.529 E(d)
+3.065 F .029(set bindings in the)180 686.4 R F2(emacs-standar)2.529 E(d)
-.37 E F0(and)2.529 E F2(emacs-ctlx)2.529 E F0 -.1(ke)2.529 G .029
-(ymaps only if readline is starting out)-.05 F(in emacs mode.)180 506.4
-Q F1(term)144 523.2 Q F0(The)15.46 E F1(term=)3.196 E F0 .696
-(form may be used to include terminal-speci\214c k)3.196 F .996 -.15
-(ey b)-.1 H .697(indings, perhaps to bind).15 F .654(the k)180 535.2 R
+(ymaps only if readline is starting out)-.05 F(in emacs mode.)180 698.4
+Q F1(term)144 715.2 Q F0(The)15.46 E F1(term=)3.197 E F0 .696
+(form may be used to include terminal-speci\214c k)3.197 F .996 -.15
+(ey b)-.1 H .696(indings, perhaps to bind).15 F .654(the k)180 727.2 R
.954 -.15(ey s)-.1 H .654(equences output by the terminal').15 F 3.154
(sf)-.55 G .654(unction k)-3.154 F -.15(ey)-.1 G 3.154(s. The).15 F -.1
-(wo)3.154 G .654(rd on the right side of).1 F(the)180 547.2 Q F1(=)3.003
-E F0 .503(is tested ag)3.003 F .504(ainst the full name of the terminal\
- and the portion of the terminal name)-.05 F(before the \214rst)180
-559.2 Q F1<ad>2.5 E F0 5(.T)C(his allo)-5 E(ws)-.25 E F2(sun)2.84 E F0
-(to match both)2.74 E F2(sun)2.84 E F0(and)2.74 E F2(sun\255cmd)2.5 E F0
-2.5(,f).77 G(or instance.)-2.5 E F1(application)144 576 Q F0(The)180 588
-Q F1(application)3.003 E F0 .503
-(construct is used to include application-speci\214c settings.)3.003 F
-.503(Each program)5.503 F .114(using the readline library sets the)180
-600 R F2 .114(application name)2.614 F F0 2.614(,a)C .114
-(nd an initialization \214le can test for a)-2.614 F .501(particular v)
-180 612 R 3.001(alue. This)-.25 F .501(could be used to bind k)3.001 F
-.801 -.15(ey s)-.1 H .5(equences to functions useful for a spe-).15 F
-.396(ci\214c program.)180 624 R -.15(Fo)5.396 G 2.896(ri).15 G .396
-(nstance, the follo)-2.896 F .396(wing command adds a k)-.25 F .696 -.15
-(ey s)-.1 H .397(equence that quotes the).15 F(current or pre)180 636 Q
-(vious w)-.25 E(ord in)-.1 E F1(bash)2.5 E F0(:)A F1($if)180 660 Q F0
-(Bash)2.5 E 2.5(#Q)180 672 S(uote the current or pre)-2.5 E(vious w)-.25
-E(ord)-.1 E("\\C-xq": "\\eb\\"\\ef\\"")180 684 Q F1($endif)180 696 Q
-($endif)108 712.8 Q F0(This command, as seen in the pre)9.33 E(vious e)
--.25 E(xample, terminates an)-.15 E F1($if)2.5 E F0(command.)2.5 E
-(GNU Readline 6.2)72 768 Q(2010 August 28)127.345 E(5)197.055 E 0 Cg EP
+(wo)3.154 G .654(rd on the right side of).1 F(GNU Readline 6.3)72 768 Q
+(2014 January 6)128.74 E(5)198.45 E 0 Cg EP
%%Page: 6 6
%%BeginPageSetup
BP
%%EndPageSetup
-/F0 10/Times-Roman@0 SF 342.2(READLINE\(3\) READLINE\(3\))72 48 R/F1 10
-/Times-Bold@0 SF($else)108 84 Q F0(Commands in this branch of the)15.45
-E F1($if)2.5 E F0(directi)2.5 E .3 -.15(ve a)-.25 H(re e).15 E -.15(xe)
--.15 G(cuted if the test f).15 E(ails.)-.1 E F1($include)108 100.8 Q F0
-.357(This directi)144 112.8 R .657 -.15(ve t)-.25 H(ak).15 E .357
-(es a single \214lename as an ar)-.1 F .356
+/F0 10/Times-Roman@0 SF 342.2(READLINE\(3\) READLINE\(3\))72 48 R(the)
+180 84 Q/F1 10/Times-Bold@0 SF(=)3.004 E F0 .504(is tested ag)3.004 F
+.503(ainst the full name of the terminal and the portion of the termina\
+l name)-.05 F(before the \214rst)180 96 Q F1<ad>2.5 E F0 5(.T)C
+(his allo)-5 E(ws)-.25 E/F2 10/Times-Italic@0 SF(sun)2.84 E F0
+(to match both)2.74 E F2(sun)2.84 E F0(and)2.74 E F2(sun\255cmd)2.5 E F0
+2.5(,f).77 G(or instance.)-2.5 E F1(application)144 112.8 Q F0(The)180
+124.8 Q F1(application)3.003 E F0 .503
+(construct is used to include application-speci\214c settings.)3.003 F
+.503(Each program)5.503 F .114(using the readline library sets the)180
+136.8 R F2 .114(application name)2.614 F F0 2.614(,a)C .114
+(nd an initialization \214le can test for a)-2.614 F .5(particular v)180
+148.8 R 3(alue. This)-.25 F .501(could be used to bind k)3 F .801 -.15
+(ey s)-.1 H .501(equences to functions useful for a spe-).15 F .397
+(ci\214c program.)180 160.8 R -.15(Fo)5.397 G 2.896(ri).15 G .396
+(nstance, the follo)-2.896 F .396(wing command adds a k)-.25 F .696 -.15
+(ey s)-.1 H .396(equence that quotes the).15 F(current or pre)180 172.8
+Q(vious w)-.25 E(ord in)-.1 E F1(bash)2.5 E F0(:)A F1($if)180 196.8 Q F0
+(Bash)2.5 E 2.5(#Q)180 208.8 S(uote the current or pre)-2.5 E(vious w)
+-.25 E(ord)-.1 E("\\C-xq": "\\eb\\"\\ef\\"")180 220.8 Q F1($endif)180
+232.8 Q($endif)108 249.6 Q F0(This command, as seen in the pre)9.33 E
+(vious e)-.25 E(xample, terminates an)-.15 E F1($if)2.5 E F0(command.)
+2.5 E F1($else)108 266.4 Q F0(Commands in this branch of the)15.45 E F1
+($if)2.5 E F0(directi)2.5 E .3 -.15(ve a)-.25 H(re e).15 E -.15(xe)-.15
+G(cuted if the test f).15 E(ails.)-.1 E F1($include)108 283.2 Q F0 .356
+(This directi)144 295.2 R .656 -.15(ve t)-.25 H(ak).15 E .356
+(es a single \214lename as an ar)-.1 F .357
(gument and reads commands and bindings from that)-.18 F 2.5(\214le. F)
-144 124.8 R(or e)-.15 E(xample, the follo)-.15 E(wing directi)-.25 E .3
--.15(ve w)-.25 H(ould read).05 E/F2 10/Times-Italic@0 SF(/etc/inputr)2.5
-E(c)-.37 E F0(:)A F1($include)144 148.8 Q F2(/etc/inputr)5.833 E(c)-.37
-E/F3 10.95/Times-Bold@0 SF(SEARCHING)72 165.6 Q F0 1.003(Readline pro)
-108 177.6 R 1.003(vides commands for searching through the command hist\
-ory for lines containing a speci\214ed)-.15 F 2.5(string. There)108
-189.6 R(are tw)2.5 E 2.5(os)-.1 G(earch modes:)-2.5 E F2(incr)2.51 E
-(emental)-.37 E F0(and)3.01 E F2(non-incr)2.5 E(emental)-.37 E F0(.).51
-E .698(Incremental searches be)108 206.4 R .698
+144 307.2 R(or e)-.15 E(xample, the follo)-.15 E(wing directi)-.25 E .3
+-.15(ve w)-.25 H(ould read).05 E F2(/etc/inputr)2.5 E(c)-.37 E F0(:)A F1
+($include)144 331.2 Q F2(/etc/inputr)5.833 E(c)-.37 E/F3 10.95
+/Times-Bold@0 SF(SEARCHING)72 348 Q F0 1.004(Readline pro)108 360 R
+1.003(vides commands for searching through the command history for line\
+s containing a speci\214ed)-.15 F 2.5(string. There)108 372 R(are tw)2.5
+E 2.5(os)-.1 G(earch modes:)-2.5 E F2(incr)2.51 E(emental)-.37 E F0(and)
+3.01 E F2(non-incr)2.5 E(emental)-.37 E F0(.).51 E .697
+(Incremental searches be)108 388.8 R .697
(gin before the user has \214nished typing the search string.)-.15 F
-.697(As each character of the)5.697 F .112
-(search string is typed, readline displays the ne)108 218.4 R .112
+.698(As each character of the)5.698 F .113
+(search string is typed, readline displays the ne)108 400.8 R .112
(xt entry from the history matching the string typed so f)-.15 F(ar)-.1
-E 5.113(.A)-.55 G(n)-5.113 E .545
-(incremental search requires only as man)108 230.4 R 3.045(yc)-.15 G
-.544(haracters as needed to \214nd the desired history entry)-3.045 F
-5.544(.T)-.65 G 3.044(os)-6.344 G(earch)-3.044 E(backw)108 242.4 Q .18
+E 5.112(.A)-.55 G(n)-5.112 E .544
+(incremental search requires only as man)108 412.8 R 3.044(yc)-.15 G
+.544(haracters as needed to \214nd the desired history entry)-3.044 F
+5.545(.T)-.65 G 3.045(os)-6.345 G(earch)-3.045 E(backw)108 424.8 Q .181
(ard in the history for a particular string, type)-.1 F F1(C\255r)2.681
-E F0 5.181(.T)C(yping)-5.981 E F1(C\255s)2.681 E F0 .181(searches forw)
-2.681 F .181(ard through the history)-.1 F(.)-.65 E .354
-(The characters present in the v)108 254.4 R .354(alue of the)-.25 F F1
+E F0 5.181(.T)C(yping)-5.981 E F1(C\255s)2.68 E F0 .18(searches forw)
+2.68 F .18(ard through the history)-.1 F(.)-.65 E .354
+(The characters present in the v)108 436.8 R .354(alue of the)-.25 F F1
(isear)2.854 E(ch-terminators)-.18 E F0 -.25(va)2.854 G .354
(riable are used to terminate an incremen-).25 F .6(tal search.)108
-266.4 R .6(If that v)5.6 F .6(ariable has not been assigned a v)-.25 F
+448.8 R .6(If that v)5.6 F .6(ariable has not been assigned a v)-.25 F
.6(alue the)-.25 F F2(Escape)3.1 E F0(and)3.1 E F1(C\255J)3.1 E F0 .6
-(characters will terminate an)3.1 F .123(incremental search.)108 278.4 R
-F1(C\255G)5.123 E F0 .123
-(will abort an incremental search and restore the original line.)2.623 F
-.122(When the search is)5.122 F(terminated, the history entry containin\
-g the search string becomes the current line.)108 290.4 Q 2.406 -.8
-(To \214)108 307.2 T .806
+(characters will terminate an)3.1 F .122(incremental search.)108 460.8 R
+F1(C\255G)5.122 E F0 .122
+(will abort an incremental search and restore the original line.)2.622 F
+.123(When the search is)5.123 F(terminated, the history entry containin\
+g the search string becomes the current line.)108 472.8 Q 2.407 -.8
+(To \214)108 489.6 T .806
(nd other matching entries in the history list, type).8 F F1(C\255s)
3.306 E F0(or)3.306 E F1(C\255r)3.306 E F0 .806(as appropriate.)3.306 F
-.807(This will search back-)5.806 F -.1(wa)108 319.2 S 1.309(rd or forw)
+.806(This will search back-)5.806 F -.1(wa)108 501.6 S 1.308(rd or forw)
.1 F 1.309(ard in the history for the ne)-.1 F 1.309
(xt line matching the search string typed so f)-.15 F(ar)-.1 E 6.309(.A)
--.55 G 1.609 -.15(ny o)-6.309 H 1.308(ther k).15 F -.15(ey)-.1 G .317
+-.55 G 1.609 -.15(ny o)-6.309 H 1.309(ther k).15 F -.15(ey)-.1 G .317
(sequence bound to a readline command will terminate the search and e)
-108 331.2 R -.15(xe)-.15 G .318(cute that command.).15 F -.15(Fo)5.318 G
-2.818(ri).15 G(nstance,)-2.818 E 3.481(an)108 343.2 S -.25(ew)-3.481 G
-.981(line will terminate the search and accept the line, thereby e).25 F
--.15(xe)-.15 G .98(cuting the command from the history).15 F 3.061
-(list. A)108 355.2 R(mo)3.061 E -.15(ve)-.15 G .562
+108 513.6 R -.15(xe)-.15 G .317(cute that command.).15 F -.15(Fo)5.317 G
+2.817(ri).15 G(nstance,)-2.817 E 3.48(an)108 525.6 S -.25(ew)-3.48 G .98
+(line will terminate the search and accept the line, thereby e).25 F
+-.15(xe)-.15 G .981(cuting the command from the history).15 F 3.062
+(list. A)108 537.6 R(mo)3.062 E -.15(ve)-.15 G .562
(ment command will terminate the search, mak).15 F 3.062(et)-.1 G .562
(he last line found the current line, and be)-3.062 F(gin)-.15 E
-(editing.)108 367.2 Q .567(Non-incremental searches read the entire sea\
-rch string before starting to search for matching history lines.)108 384
-R(The search string may be typed by the user or be part of the contents\
- of the current line.)108 396 Q F3(EDITING COMMANDS)72 412.8 Q F0 1.391
-(The follo)108 424.8 R 1.391
+(editing.)108 549.6 Q .567(Non-incremental searches read the entire sea\
+rch string before starting to search for matching history lines.)108
+566.4 R(The search string may be typed by the user or be part of the co\
+ntents of the current line.)108 578.4 Q F3(EDITING COMMANDS)72 595.2 Q
+F0 1.392(The follo)108 607.2 R 1.391
(wing is a list of the names of the commands and the def)-.25 F 1.391
(ault k)-.1 F 1.691 -.15(ey s)-.1 H 1.391(equences to which the).15 F
-3.892(ya)-.15 G(re)-3.892 E 2.5(bound. Command)108 436.8 R
+3.891(ya)-.15 G(re)-3.891 E 2.5(bound. Command)108 619.2 R
(names without an accompan)2.5 E(ying k)-.15 E .3 -.15(ey s)-.1 H
-(equence are unbound by def).15 E(ault.)-.1 E .055(In the follo)108
-453.6 R .055(wing descriptions,)-.25 F F2(point)2.555 E F0 .055
-(refers to the current cursor position, and)2.555 F F2(mark)2.555 E F0
-.054(refers to a cursor position)2.554 F(sa)108 465.6 Q -.15(ve)-.2 G
-2.5(db).15 G 2.5(yt)-2.5 G(he)-2.5 E F1(set\255mark)2.5 E F0 2.5
+(equence are unbound by def).15 E(ault.)-.1 E .054(In the follo)108 636
+R .054(wing descriptions,)-.25 F F2(point)2.554 E F0 .055
+(refers to the current cursor position, and)2.554 F F2(mark)2.555 E F0
+.055(refers to a cursor position)2.555 F(sa)108 648 Q -.15(ve)-.2 G 2.5
+(db).15 G 2.5(yt)-2.5 G(he)-2.5 E F1(set\255mark)2.5 E F0 2.5
(command. The)2.5 F(te)2.5 E
(xt between the point and mark is referred to as the)-.15 E F2 -.37(re)
-2.5 G(gion)-.03 E F0(.)A F1(Commands f)87 482.4 Q(or Mo)-.25 E(ving)-.1
-E(beginning\255of\255line \(C\255a\))108 494.4 Q F0(Mo)144 506.4 Q .3
+2.5 G(gion)-.03 E F0(.)A F1(Commands f)87 664.8 Q(or Mo)-.25 E(ving)-.1
+E(beginning\255of\255line \(C\255a\))108 676.8 Q F0(Mo)144 688.8 Q .3
-.15(ve t)-.15 H 2.5(ot).15 G(he start of the current line.)-2.5 E F1
-(end\255of\255line \(C\255e\))108 518.4 Q F0(Mo)144 530.4 Q .3 -.15
-(ve t)-.15 H 2.5(ot).15 G(he end of the line.)-2.5 E F1 -.25(fo)108
-542.4 S(rward\255char \(C\255f\)).25 E F0(Mo)144 554.4 Q .3 -.15(ve f)
--.15 H(orw).15 E(ard a character)-.1 E(.)-.55 E F1
-(backward\255char \(C\255b\))108 566.4 Q F0(Mo)144 578.4 Q .3 -.15(ve b)
--.15 H(ack a character).15 E(.)-.55 E F1 -.25(fo)108 590.4 S(rward\255w)
-.25 E(ord \(M\255f\))-.1 E F0(Mo)144 602.4 Q .822 -.15(ve f)-.15 H(orw)
-.15 E .522(ard to the end of the ne)-.1 F .523(xt w)-.15 F 3.023(ord. W)
--.1 F .523(ords are composed of alphanumeric characters \(let-)-.8 F
-(ters and digits\).)144 614.4 Q F1(backward\255w)108 626.4 Q
-(ord \(M\255b\))-.1 E F0(Mo)144 638.4 Q 1.71 -.15(ve b)-.15 H 1.41
-(ack to the start of the current or pre).15 F 1.41(vious w)-.25 F 3.91
-(ord. W)-.1 F 1.41(ords are composed of alphanumeric)-.8 F
-(characters \(letters and digits\).)144 650.4 Q F1(clear\255scr)108
-662.4 Q(een \(C\255l\))-.18 E F0 .993(Clear the screen lea)144 674.4 R
-.993(ving the current line at the top of the screen.)-.2 F -.4(Wi)5.993
-G .993(th an ar).4 F .993(gument, refresh the)-.18 F
-(current line without clearing the screen.)144 686.4 Q F1 -.18(re)108
-698.4 S(draw\255curr).18 E(ent\255line)-.18 E F0
-(Refresh the current line.)144 710.4 Q(GNU Readline 6.2)72 768 Q
-(2010 August 28)127.345 E(6)197.055 E 0 Cg EP
+(end\255of\255line \(C\255e\))108 700.8 Q F0(Mo)144 712.8 Q .3 -.15
+(ve t)-.15 H 2.5(ot).15 G(he end of the line.)-2.5 E(GNU Readline 6.3)72
+768 Q(2014 January 6)128.74 E(6)198.45 E 0 Cg EP
%%Page: 7 7
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF 342.2(READLINE\(3\) READLINE\(3\))72 48 R/F1 10
-/Times-Bold@0 SF(Commands f)87 84 Q(or Manipulating the History)-.25 E
-(accept\255line \(Newline, Retur)108 96 Q(n\))-.15 E F0 .365
-(Accept the line re)144 108 R -.05(ga)-.15 G .364
+/Times-Bold@0 SF -.25(fo)108 84 S(rward\255char \(C\255f\)).25 E F0(Mo)
+144 96 Q .3 -.15(ve f)-.15 H(orw).15 E(ard a character)-.1 E(.)-.55 E F1
+(backward\255char \(C\255b\))108 108 Q F0(Mo)144 120 Q .3 -.15(ve b)-.15
+H(ack a character).15 E(.)-.55 E F1 -.25(fo)108 132 S(rward\255w).25 E
+(ord \(M\255f\))-.1 E F0(Mo)144 144 Q .823 -.15(ve f)-.15 H(orw).15 E
+.523(ard to the end of the ne)-.1 F .523(xt w)-.15 F 3.023(ord. W)-.1 F
+.522(ords are composed of alphanumeric characters \(let-)-.8 F
+(ters and digits\).)144 156 Q F1(backward\255w)108 168 Q(ord \(M\255b\))
+-.1 E F0(Mo)144 180 Q 1.71 -.15(ve b)-.15 H 1.41
+(ack to the start of the current or pre).15 F 1.41(vious w)-.25 F 3.91
+(ord. W)-.1 F 1.41(ords are composed of alphanumeric)-.8 F
+(characters \(letters and digits\).)144 192 Q F1(clear\255scr)108 204 Q
+(een \(C\255l\))-.18 E F0 .993(Clear the screen lea)144 216 R .993
+(ving the current line at the top of the screen.)-.2 F -.4(Wi)5.993 G
+.993(th an ar).4 F .993(gument, refresh the)-.18 F
+(current line without clearing the screen.)144 228 Q F1 -.18(re)108 240
+S(draw\255curr).18 E(ent\255line)-.18 E F0(Refresh the current line.)144
+252 Q F1(Commands f)87 268.8 Q(or Manipulating the History)-.25 E
+(accept\255line \(Newline, Retur)108 280.8 Q(n\))-.15 E F0 .364
+(Accept the line re)144 292.8 R -.05(ga)-.15 G .364
(rdless of where the cursor is.).05 F .364(If this line is non-empty)
-5.364 F 2.864(,i)-.65 G 2.864(tm)-2.864 G .364(ay be added to the)-2.864
-F .74(history list for future recall with)144 120 R F1(add_history\(\))
-3.24 E F0 5.741(.I)C 3.241(ft)-5.741 G .741
+5.364 F 2.864(,i)-.65 G 2.864(tm)-2.864 G .365(ay be added to the)-2.864
+F .741(history list for future recall with)144 304.8 R F1
+(add_history\(\))3.241 E F0 5.741(.I)C 3.241(ft)-5.741 G .74
(he line is a modi\214ed history line, the history)-3.241 F
-(line is restored to its original state.)144 132 Q F1(pr)108 144 Q -.15
-(ev)-.18 G(ious\255history \(C\255p\)).15 E F0(Fetch the pre)144 156 Q
-(vious command from the history list, mo)-.25 E(ving back in the list.)
--.15 E F1(next\255history \(C\255n\))108 168 Q F0(Fetch the ne)144 180 Q
-(xt command from the history list, mo)-.15 E(ving forw)-.15 E
-(ard in the list.)-.1 E F1(beginning\255of\255history \(M\255<\))108 192
-Q F0(Mo)144 204 Q .3 -.15(ve t)-.15 H 2.5(ot).15 G
-(he \214rst line in the history)-2.5 E(.)-.65 E F1
-(end\255of\255history \(M\255>\))108 216 Q F0(Mo)144 228 Q .3 -.15(ve t)
--.15 H 2.5(ot).15 G(he end of the input history)-2.5 E 2.5(,i)-.65 G
-(.e., the line currently being entered.)-2.5 E F1 -2.29 -.18(re v)108
-240 T(erse\255sear).08 E(ch\255history \(C\255r\))-.18 E F0 1.471
-(Search backw)144 252 R 1.471(ard starting at the current line and mo)
--.1 F 1.47(ving `up' through the history as necessary)-.15 F(.)-.65 E
-(This is an incremental search.)144 264 Q F1 -.25(fo)108 276 S
-(rward\255sear).25 E(ch\255history \(C\255s\))-.18 E F0 1.131
-(Search forw)144 288 R 1.131(ard starting at the current line and mo)-.1
-F 1.132(ving `do)-.15 F 1.132(wn' through the history as necessary)-.25
-F(.)-.65 E(This is an incremental search.)144 300 Q F1(non\255incr)108
-312 Q(emental\255r)-.18 E -2.3 -.15(ev e)-.18 H(rse\255sear).15 E
-(ch\255history \(M\255p\))-.18 E F0 .165(Search backw)144 324 R .164(ar\
-d through the history starting at the current line using a non-incremen\
-tal search for)-.1 F 2.5(as)144 336 S(tring supplied by the user)-2.5 E
-(.)-.55 E F1(non\255incr)108 348 Q(emental\255f)-.18 E(orward\255sear)
--.25 E(ch\255history \(M\255n\))-.18 E F0 1.353(Search forw)144 360 R
-1.354(ard through the history using a non-incremental search for a stri\
-ng supplied by the)-.1 F(user)144 372 Q(.)-.55 E F1(history\255sear)108
-384 Q(ch\255f)-.18 E(orward)-.25 E F0 .249(Search forw)144 396 R .249(a\
-rd through the history for the string of characters between the start o\
-f the current line)-.1 F(and the current cursor position \(the)144 408 Q
-/F2 10/Times-Italic@0 SF(point)2.5 E F0 2.5(\). This)B
-(is a non-incremental search.)2.5 E F1(history\255sear)108 420 Q
-(ch\255backward)-.18 E F0 .95(Search backw)144 432 R .951(ard through t\
-he history for the string of characters between the start of the curren\
-t)-.1 F(line and the point.)144 444 Q(This is a non-incremental search.)
-5 E F1(yank\255nth\255ar)108 456 Q 2.5(g\()-.1 G<4dad43ad7929>-2.5 E F0
-.622(Insert the \214rst ar)144 468 R .622(gument to the pre)-.18 F .622
+(line is restored to its original state.)144 316.8 Q F1(pr)108 328.8 Q
+-.15(ev)-.18 G(ious\255history \(C\255p\)).15 E F0(Fetch the pre)144
+340.8 Q(vious command from the history list, mo)-.25 E
+(ving back in the list.)-.15 E F1(next\255history \(C\255n\))108 352.8 Q
+F0(Fetch the ne)144 364.8 Q(xt command from the history list, mo)-.15 E
+(ving forw)-.15 E(ard in the list.)-.1 E F1
+(beginning\255of\255history \(M\255<\))108 376.8 Q F0(Mo)144 388.8 Q .3
+-.15(ve t)-.15 H 2.5(ot).15 G(he \214rst line in the history)-2.5 E(.)
+-.65 E F1(end\255of\255history \(M\255>\))108 400.8 Q F0(Mo)144 412.8 Q
+.3 -.15(ve t)-.15 H 2.5(ot).15 G(he end of the input history)-2.5 E 2.5
+(,i)-.65 G(.e., the line currently being entered.)-2.5 E F1 -2.29 -.18
+(re v)108 424.8 T(erse\255sear).08 E(ch\255history \(C\255r\))-.18 E F0
+1.47(Search backw)144 436.8 R 1.471
+(ard starting at the current line and mo)-.1 F 1.471
+(ving `up' through the history as necessary)-.15 F(.)-.65 E
+(This is an incremental search.)144 448.8 Q F1 -.25(fo)108 460.8 S
+(rward\255sear).25 E(ch\255history \(C\255s\))-.18 E F0 1.132
+(Search forw)144 472.8 R 1.132(ard starting at the current line and mo)
+-.1 F 1.131(ving `do)-.15 F 1.131(wn' through the history as necessary)
+-.25 F(.)-.65 E(This is an incremental search.)144 484.8 Q F1
+(non\255incr)108 496.8 Q(emental\255r)-.18 E -2.3 -.15(ev e)-.18 H
+(rse\255sear).15 E(ch\255history \(M\255p\))-.18 E F0 .164(Search backw)
+144 508.8 R .164(ard through the history starting at the current line u\
+sing a non-incremental search for)-.1 F 2.5(as)144 520.8 S
+(tring supplied by the user)-2.5 E(.)-.55 E F1(non\255incr)108 532.8 Q
+(emental\255f)-.18 E(orward\255sear)-.25 E(ch\255history \(M\255n\))-.18
+E F0 1.354(Search forw)144 544.8 R 1.354(ard through the history using \
+a non-incremental search for a string supplied by the)-.1 F(user)144
+556.8 Q(.)-.55 E F1(history\255sear)108 568.8 Q(ch\255backward)-.18 E F0
+.95(Search backw)144 580.8 R .951(ard through the history for the strin\
+g of characters between the start of the current)-.1 F .12
+(line and the current cursor position \(the)144 592.8 R/F2 10
+/Times-Italic@0 SF(point)2.62 E F0 2.62(\). The)B .12
+(search string must match at the be)2.62 F .12(ginning of a)-.15 F
+(history line.)144 604.8 Q(This is a non-incremental search.)5 E F1
+(history\255sear)108 616.8 Q(ch\255f)-.18 E(orward)-.25 E F0 .248
+(Search forw)144 628.8 R .249(ard through the history for the string of\
+ characters between the start of the current line)-.1 F .036
+(and the point.)144 640.8 R .036(The search string must match at the be)
+5.036 F .035(ginning of a history line.)-.15 F .035
+(This is a non-incre-)5.035 F(mental search.)144 652.8 Q F1
+(history\255substring\255sear)108 664.8 Q(ch\255backward)-.18 E F0 .95
+(Search backw)144 676.8 R .951(ard through the history for the string o\
+f characters between the start of the current)-.1 F .007
+(line and the current cursor position \(the)144 688.8 R F2(point)2.507 E
+F0 2.507(\). The)B .007(search string may match an)2.507 F .006
+(ywhere in a history)-.15 F 2.5(line. This)144 700.8 R
+(is a non-incremental search.)2.5 E(GNU Readline 6.3)72 768 Q
+(2014 January 6)128.74 E(7)198.45 E 0 Cg EP
+%%Page: 8 8
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF 342.2(READLINE\(3\) READLINE\(3\))72 48 R/F1 10
+/Times-Bold@0 SF(history\255substring\255sear)108 84 Q(ch\255f)-.18 E
+(orward)-.25 E F0 .248(Search forw)144 96 R .249(ard through the histor\
+y for the string of characters between the start of the current line)-.1
+F .319(and the point.)144 108 R .319(The search string may match an)
+5.319 F .319(ywhere in a history line.)-.15 F .318
+(This is a non-incremental)5.318 F(search.)144 120 Q F1
+(yank\255nth\255ar)108 132 Q 2.5(g\()-.1 G<4dad43ad7929>-2.5 E F0 .622
+(Insert the \214rst ar)144 144 R .622(gument to the pre)-.18 F .622
(vious command \(usually the second w)-.25 F .622(ord on the pre)-.1 F
-.622(vious line\))-.25 F .794(at point.)144 480 R -.4(Wi)5.794 G .794
-(th an ar).4 F(gument)-.18 E F2(n)3.294 E F0 3.294(,i).24 G .794
-(nsert the)-3.294 F F2(n)3.294 E F0 .794(th w)B .794(ord from the pre)
--.1 F .794(vious command \(the w)-.25 F .795(ords in the)-.1 F(pre)144
-492 Q .292(vious command be)-.25 F .292(gin with w)-.15 F .291(ord 0\).)
--.1 F 2.791(An)5.291 G -2.25 -.15(eg a)-2.791 H(ti).15 E .591 -.15(ve a)
--.25 H -.18(rg).15 G .291(ument inserts the).18 F F2(n)2.791 E F0 .291
-(th w)B .291(ord from the end of)-.1 F .281(the pre)144 504 R .281
-(vious command.)-.25 F .281(Once the ar)5.281 F(gument)-.18 E F2(n)2.781
-E F0 .281(is computed, the ar)2.781 F .281(gument is e)-.18 F .282
-(xtracted as if the "!)-.15 F F2(n)A F0(")A(history e)144 516 Q
-(xpansion had been speci\214ed.)-.15 E F1(yank\255last\255ar)108 528 Q
-2.5(g\()-.1 G -1.667(M\255. ,)-2.5 F -1.667(M\255_ \))2.5 F F0 1.308
-(Insert the last ar)144 540 R 1.308(gument to the pre)-.18 F 1.307
-(vious command \(the last w)-.25 F 1.307(ord of the pre)-.1 F 1.307
-(vious history entry\).)-.25 F -.4(Wi)144 552 S .203(th a numeric ar).4
-F .203(gument, beha)-.18 F .504 -.15(ve ex)-.2 H .204(actly lik).15 F(e)
--.1 E F1(yank\255nth\255ar)2.704 E(g)-.1 E F0 5.204(.S)C(uccessi)-5.204
-E .504 -.15(ve c)-.25 H .204(alls to).15 F F1(yank\255last\255ar)2.704 E
-(g)-.1 E F0(mo)144 564 Q .807 -.15(ve b)-.15 H .507
+.622(vious line\))-.25 F .795(at point.)144 156 R -.4(Wi)5.795 G .794
+(th an ar).4 F(gument)-.18 E/F2 10/Times-Italic@0 SF(n)3.294 E F0 3.294
+(,i).24 G .794(nsert the)-3.294 F F2(n)3.294 E F0 .794(th w)B .794
+(ord from the pre)-.1 F .794(vious command \(the w)-.25 F .794
+(ords in the)-.1 F(pre)144 168 Q .291(vious command be)-.25 F .291
+(gin with w)-.15 F .291(ord 0\).)-.1 F 2.791(An)5.291 G -2.25 -.15(eg a)
+-2.791 H(ti).15 E .591 -.15(ve a)-.25 H -.18(rg).15 G .291
+(ument inserts the).18 F F2(n)2.791 E F0 .291(th w)B .292
+(ord from the end of)-.1 F .282(the pre)144 180 R .282(vious command.)
+-.25 F .282(Once the ar)5.282 F(gument)-.18 E F2(n)2.781 E F0 .281
+(is computed, the ar)2.781 F .281(gument is e)-.18 F .281
+(xtracted as if the "!)-.15 F F2(n)A F0(")A(history e)144 192 Q
+(xpansion had been speci\214ed.)-.15 E F1(yank\255last\255ar)108 204 Q
+2.5(g\()-.1 G -1.667(M\255. ,)-2.5 F -1.667(M\255_ \))2.5 F F0 1.307
+(Insert the last ar)144 216 R 1.307(gument to the pre)-.18 F 1.307
+(vious command \(the last w)-.25 F 1.308(ord of the pre)-.1 F 1.308
+(vious history entry\).)-.25 F -.4(Wi)144 228 S .204(th a numeric ar).4
+F .204(gument, beha)-.18 F .504 -.15(ve ex)-.2 H .204(actly lik).15 F(e)
+-.1 E F1(yank\255nth\255ar)2.704 E(g)-.1 E F0 5.203(.S)C(uccessi)-5.203
+E .503 -.15(ve c)-.25 H .203(alls to).15 F F1(yank\255last\255ar)2.703 E
+(g)-.1 E F0(mo)144 240 Q .806 -.15(ve b)-.15 H .507
(ack through the history list, inserting the last w).15 F .507
(ord \(or the w)-.1 F .507(ord speci\214ed by the ar)-.1 F(gument)-.18 E
-1.396(to the \214rst call\) of each line in turn.)144 576 R(An)6.396 E
-3.896(yn)-.15 G 1.396(umeric ar)-3.896 F 1.397
-(gument supplied to these successi)-.18 F 1.697 -.15(ve c)-.25 H(alls)
-.15 E .492(determines the direction to mo)144 588 R .792 -.15(ve t)-.15
-H .492(hrough the history).15 F 5.491(.A)-.65 G(ne)-2.5 E -.05(ga)-.15 G
-(ti).05 E .791 -.15(ve a)-.25 H -.18(rg).15 G .491
+1.397(to the \214rst call\) of each line in turn.)144 252 R(An)6.396 E
+3.896(yn)-.15 G 1.396(umeric ar)-3.896 F 1.396
+(gument supplied to these successi)-.18 F 1.696 -.15(ve c)-.25 H(alls)
+.15 E .491(determines the direction to mo)144 264 R .791 -.15(ve t)-.15
+H .491(hrough the history).15 F 5.492(.A)-.65 G(ne)-2.5 E -.05(ga)-.15 G
+(ti).05 E .792 -.15(ve a)-.25 H -.18(rg).15 G .492
(ument switches the direction).18 F .494
-(through the history \(back or forw)144 600 R 2.994(ard\). The)-.1 F
+(through the history \(back or forw)144 276 R 2.994(ard\). The)-.1 F
.494(history e)2.994 F .494(xpansion f)-.15 F .494
-(acilities are used to e)-.1 F .494(xtract the last)-.15 F(ar)144 612 Q
+(acilities are used to e)-.1 F .494(xtract the last)-.15 F(ar)144 288 Q
(gument, as if the "!$" history e)-.18 E(xpansion had been speci\214ed.)
--.15 E F1(Commands f)87 628.8 Q(or Changing T)-.25 E(ext)-.92 E
-(delete\255char \(C\255d\))108 640.8 Q F0 .358
-(Delete the character at point.)144 652.8 R .358(If point is at the be)
-5.358 F .358(ginning of the line, there are no characters in the)-.15 F
-(line, and the last character typed w)144 664.8 Q(as not bound to)-.1 E
-F1(delete\255char)2.5 E F0 2.5(,t)C(hen return)-2.5 E/F3 9/Times-Bold@0
-SF(EOF)2.5 E/F4 9/Times-Roman@0 SF(.)A F1
-(backward\255delete\255char \(Rubout\))108 676.8 Q F0 .552
-(Delete the character behind the cursor)144 688.8 R 5.553(.W)-.55 G .553
-(hen gi)-5.553 F -.15(ve)-.25 G 3.053(nan).15 G .553(umeric ar)-3.053 F
-.553(gument, sa)-.18 F .853 -.15(ve t)-.2 H .553(he deleted te).15 F
-.553(xt on)-.15 F(the kill ring.)144 700.8 Q(GNU Readline 6.2)72 768 Q
-(2010 August 28)127.345 E(7)197.055 E 0 Cg EP
-%%Page: 8 8
+-.15 E F1(Commands f)87 304.8 Q(or Changing T)-.25 E(ext)-.92 E F2
+(end\255of\255\214le)108 316.8 Q F1(\(usually C\255d\))2.5 E F0 .798
+(The character indicating end-of-\214le as set, for e)144 328.8 R .799
+(xample, by)-.15 F/F3 10/Courier@0 SF(stty)3.299 E F0 5.799(.I)C 3.299
+(ft)-5.799 G .799(his character is read when)-3.299 F .592
+(there are no characters on the line, and point is at the be)144 340.8 R
+.592(ginning of the line, Readline interprets it)-.15 F
+(as the end of input and returns)144 352.8 Q/F4 9/Times-Bold@0 SF(EOF)
+2.5 E/F5 9/Times-Roman@0 SF(.)A F1(delete\255char \(C\255d\))108 364.8 Q
+F0 .441(Delete the character at point.)144 376.8 R .442
+(If this function is bound to the same character as the tty)5.441 F F1
+(EOF)2.942 E F0(char)2.942 E(-)-.2 E(acter)144 388.8 Q 2.5(,a)-.4 G(s)
+-2.5 E F1(C\255d)2.5 E F0(commonly is, see abo)2.5 E .3 -.15(ve f)-.15 H
+(or the ef).15 E(fects.)-.25 E F1(backward\255delete\255char \(Rubout\))
+108 400.8 Q F0 .553(Delete the character behind the cursor)144 412.8 R
+5.553(.W)-.55 G .553(hen gi)-5.553 F -.15(ve)-.25 G 3.053(nan).15 G .553
+(umeric ar)-3.053 F .552(gument, sa)-.18 F .852 -.15(ve t)-.2 H .552
+(he deleted te).15 F .552(xt on)-.15 F(the kill ring.)144 424.8 Q F1
+-.25(fo)108 436.8 S(rward\255backward\255delete\255char).25 E F0 .473
+(Delete the character under the cursor)144 448.8 R 2.973(,u)-.4 G .474
+(nless the cursor is at the end of the line, in which case the)-2.973 F
+(character behind the cursor is deleted.)144 460.8 Q F1
+(quoted\255insert \(C\255q, C\255v\))108 472.8 Q F0 1.229(Add the ne)144
+484.8 R 1.228(xt character that you type to the line v)-.15 F 3.728
+(erbatim. This)-.15 F 1.228(is ho)3.728 F 3.728(wt)-.25 G 3.728(oi)
+-3.728 G 1.228(nsert characters lik)-3.728 F(e)-.1 E F1(C\255q)144 496.8
+Q F0 2.5(,f)C(or e)-2.5 E(xample.)-.15 E F1(tab\255insert \(M-T)108
+508.8 Q(AB\))-.9 E F0(Insert a tab character)144 520.8 Q(.)-.55 E F1
+(self\255insert \(a, b, A, 1, !, ...\))108 532.8 Q F0
+(Insert the character typed.)144 544.8 Q F1
+(transpose\255chars \(C\255t\))108 556.8 Q F0 .321
+(Drag the character before point forw)144 568.8 R .321(ard o)-.1 F -.15
+(ve)-.15 G 2.821(rt).15 G .321(he character at point, mo)-2.821 F .322
+(ving point forw)-.15 F .322(ard as well.)-.1 F 1.182
+(If point is at the end of the line, then this transposes the tw)144
+580.8 R 3.682(oc)-.1 G 1.182(haracters before point.)-3.682 F(Ne)6.182 E
+-.05(ga)-.15 G(ti).05 E -.15(ve)-.25 G(ar)144 592.8 Q(guments ha)-.18 E
+.3 -.15(ve n)-.2 H 2.5(oe).15 G -.25(ff)-2.5 G(ect.).25 E F1
+(transpose\255w)108 604.8 Q(ords \(M\255t\))-.1 E F0 .023(Drag the w)144
+616.8 R .023(ord before point past the w)-.1 F .023(ord after point, mo)
+-.1 F .023(ving point o)-.15 F -.15(ve)-.15 G 2.524(rt).15 G .024(hat w)
+-2.524 F .024(ord as well.)-.1 F .024(If point)5.024 F
+(is at the end of the line, this transposes the last tw)144 628.8 Q 2.5
+(ow)-.1 G(ords on the line.)-2.6 E F1(upcase\255w)108 640.8 Q
+(ord \(M\255u\))-.1 E F0 1.699(Uppercase the current \(or follo)144
+652.8 R 1.698(wing\) w)-.25 F 4.198(ord. W)-.1 F 1.698(ith a ne)-.4 F
+-.05(ga)-.15 G(ti).05 E 1.998 -.15(ve a)-.25 H -.18(rg).15 G 1.698
+(ument, uppercase the pre).18 F(vious)-.25 E -.1(wo)144 664.8 S(rd, b).1
+E(ut do not mo)-.2 E .3 -.15(ve p)-.15 H(oint.).15 E F1(do)108 676.8 Q
+(wncase\255w)-.1 E(ord \(M\255l\))-.1 E F0(Lo)144 688.8 Q 1.647
+(wercase the current \(or follo)-.25 F 1.647(wing\) w)-.25 F 4.147
+(ord. W)-.1 F 1.648(ith a ne)-.4 F -.05(ga)-.15 G(ti).05 E 1.948 -.15
+(ve a)-.25 H -.18(rg).15 G 1.648(ument, lo).18 F 1.648(wercase the pre)
+-.25 F(vious)-.25 E -.1(wo)144 700.8 S(rd, b).1 E(ut do not mo)-.2 E .3
+-.15(ve p)-.15 H(oint.).15 E(GNU Readline 6.3)72 768 Q(2014 January 6)
+128.74 E(8)198.45 E 0 Cg EP
+%%Page: 9 9
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF 342.2(READLINE\(3\) READLINE\(3\))72 48 R/F1 10
-/Times-Bold@0 SF -.25(fo)108 84 S(rward\255backward\255delete\255char)
-.25 E F0 .474(Delete the character under the cursor)144 96 R 2.974(,u)
--.4 G .474
-(nless the cursor is at the end of the line, in which case the)-2.974 F
-(character behind the cursor is deleted.)144 108 Q F1
-(quoted\255insert \(C\255q, C\255v\))108 120 Q F0 1.228(Add the ne)144
-132 R 1.228(xt character that you type to the line v)-.15 F 3.728
-(erbatim. This)-.15 F 1.228(is ho)3.728 F 3.729(wt)-.25 G 3.729(oi)
--3.729 G 1.229(nsert characters lik)-3.729 F(e)-.1 E F1(C\255q)144 144 Q
-F0 2.5(,f)C(or e)-2.5 E(xample.)-.15 E F1(tab\255insert \(M-T)108 156 Q
-(AB\))-.9 E F0(Insert a tab character)144 168 Q(.)-.55 E F1
-(self\255insert \(a, b, A, 1, !, ...\))108 180 Q F0
-(Insert the character typed.)144 192 Q F1(transpose\255chars \(C\255t\))
-108 204 Q F0 .322(Drag the character before point forw)144 216 R .321
-(ard o)-.1 F -.15(ve)-.15 G 2.821(rt).15 G .321
-(he character at point, mo)-2.821 F .321(ving point forw)-.15 F .321
-(ard as well.)-.1 F 1.182
-(If point is at the end of the line, then this transposes the tw)144 228
-R 3.683(oc)-.1 G 1.183(haracters before point.)-3.683 F(Ne)6.183 E -.05
-(ga)-.15 G(ti).05 E -.15(ve)-.25 G(ar)144 240 Q(guments ha)-.18 E .3
--.15(ve n)-.2 H 2.5(oe).15 G -.25(ff)-2.5 G(ect.).25 E F1
-(transpose\255w)108 252 Q(ords \(M\255t\))-.1 E F0 .024(Drag the w)144
-264 R .024(ord before point past the w)-.1 F .023(ord after point, mo)
--.1 F .023(ving point o)-.15 F -.15(ve)-.15 G 2.523(rt).15 G .023(hat w)
--2.523 F .023(ord as well.)-.1 F .023(If point)5.023 F
-(is at the end of the line, this transposes the last tw)144 276 Q 2.5
-(ow)-.1 G(ords on the line.)-2.6 E F1(upcase\255w)108 288 Q
-(ord \(M\255u\))-.1 E F0 1.698(Uppercase the current \(or follo)144 300
-R 1.698(wing\) w)-.25 F 4.198(ord. W)-.1 F 1.698(ith a ne)-.4 F -.05(ga)
--.15 G(ti).05 E 1.999 -.15(ve a)-.25 H -.18(rg).15 G 1.699
-(ument, uppercase the pre).18 F(vious)-.25 E -.1(wo)144 312 S(rd, b).1 E
-(ut do not mo)-.2 E .3 -.15(ve p)-.15 H(oint.).15 E F1(do)108 324 Q
-(wncase\255w)-.1 E(ord \(M\255l\))-.1 E F0(Lo)144 336 Q 1.648
-(wercase the current \(or follo)-.25 F 1.648(wing\) w)-.25 F 4.148
-(ord. W)-.1 F 1.647(ith a ne)-.4 F -.05(ga)-.15 G(ti).05 E 1.947 -.15
-(ve a)-.25 H -.18(rg).15 G 1.647(ument, lo).18 F 1.647(wercase the pre)
--.25 F(vious)-.25 E -.1(wo)144 348 S(rd, b).1 E(ut do not mo)-.2 E .3
--.15(ve p)-.15 H(oint.).15 E F1(capitalize\255w)108 360 Q
-(ord \(M\255c\))-.1 E F0 1.974(Capitalize the current \(or follo)144 372
-R 1.974(wing\) w)-.25 F 4.474(ord. W)-.1 F 1.974(ith a ne)-.4 F -.05(ga)
--.15 G(ti).05 E 2.274 -.15(ve a)-.25 H -.18(rg).15 G 1.975
-(ument, capitalize the pre).18 F(vious)-.25 E -.1(wo)144 384 S(rd, b).1
-E(ut do not mo)-.2 E .3 -.15(ve p)-.15 H(oint.).15 E F1 -.1(ove)108 396
-S(rwrite\255mode).1 E F0 -.8(To)144 408 S .438(ggle o).8 F -.15(ve)-.15
-G .438(rwrite mode.).15 F -.4(Wi)5.438 G .438(th an e).4 F .438
-(xplicit positi)-.15 F .737 -.15(ve n)-.25 H .437(umeric ar).15 F .437
-(gument, switches to o)-.18 F -.15(ve)-.15 G .437(rwrite mode.).15 F -.4
-(Wi)144 420 S .78(th an e).4 F .781(xplicit non-positi)-.15 F 1.081 -.15
-(ve n)-.25 H .781(umeric ar).15 F .781(gument, switches to insert mode.)
--.18 F .781(This command af)5.781 F(fects)-.25 E(only)144 432 Q F1
-(emacs)4.395 E F0(mode;)4.395 E F1(vi)4.395 E F0 1.894(mode does o)4.395
-F -.15(ve)-.15 G 1.894(rwrite dif).15 F(ferently)-.25 E 6.894(.E)-.65 G
-1.894(ach call to)-6.894 F/F2 10/Times-Italic@0 SF -.37(re)4.394 G
-(adline\(\)).37 E F0 1.894(starts in insert)4.394 F 3.968(mode. In)144
-444 R -.15(ove)3.968 G 1.468(rwrite mode, characters bound to).15 F F1
-(self\255insert)3.969 E F0 1.469(replace the te)3.969 F 1.469
-(xt at point rather than)-.15 F .958(pushing the te)144 456 R .958
-(xt to the right.)-.15 F .957(Characters bound to)5.958 F F1
-(backward\255delete\255char)3.457 E F0 .957(replace the character)3.457
-F(before point with a space.)144 468 Q(By def)5 E
-(ault, this command is unbound.)-.1 E F1(Killing and Y)87 484.8 Q
-(anking)-.85 E(kill\255line \(C\255k\))108 496.8 Q F0(Kill the te)144
-508.8 Q(xt from point to the end of the line.)-.15 E F1
-(backward\255kill\255line \(C\255x Rubout\))108 520.8 Q F0(Kill backw)
-144 532.8 Q(ard to the be)-.1 E(ginning of the line.)-.15 E F1
-(unix\255line\255discard \(C\255u\))108 544.8 Q F0(Kill backw)144 556.8
+/Times-Bold@0 SF(capitalize\255w)108 84 Q(ord \(M\255c\))-.1 E F0 1.975
+(Capitalize the current \(or follo)144 96 R 1.974(wing\) w)-.25 F 4.474
+(ord. W)-.1 F 1.974(ith a ne)-.4 F -.05(ga)-.15 G(ti).05 E 2.274 -.15
+(ve a)-.25 H -.18(rg).15 G 1.974(ument, capitalize the pre).18 F(vious)
+-.25 E -.1(wo)144 108 S(rd, b).1 E(ut do not mo)-.2 E .3 -.15(ve p)-.15
+H(oint.).15 E F1 -.1(ove)108 120 S(rwrite\255mode).1 E F0 -.8(To)144 132
+S .437(ggle o).8 F -.15(ve)-.15 G .437(rwrite mode.).15 F -.4(Wi)5.437 G
+.437(th an e).4 F .437(xplicit positi)-.15 F .738 -.15(ve n)-.25 H .438
+(umeric ar).15 F .438(gument, switches to o)-.18 F -.15(ve)-.15 G .438
+(rwrite mode.).15 F -.4(Wi)144 144 S .781(th an e).4 F .781
+(xplicit non-positi)-.15 F 1.081 -.15(ve n)-.25 H .781(umeric ar).15 F
+.781(gument, switches to insert mode.)-.18 F .78(This command af)5.781 F
+(fects)-.25 E(only)144 156 Q F1(emacs)4.394 E F0(mode;)4.394 E F1(vi)
+4.394 E F0 1.894(mode does o)4.394 F -.15(ve)-.15 G 1.894(rwrite dif).15
+F(ferently)-.25 E 6.894(.E)-.65 G 1.894(ach call to)-6.894 F/F2 10
+/Times-Italic@0 SF -.37(re)4.395 G(adline\(\)).37 E F0 1.895
+(starts in insert)4.395 F 3.969(mode. In)144 168 R -.15(ove)3.969 G
+1.469(rwrite mode, characters bound to).15 F F1(self\255insert)3.969 E
+F0 1.468(replace the te)3.969 F 1.468(xt at point rather than)-.15 F
+.957(pushing the te)144 180 R .957(xt to the right.)-.15 F .958
+(Characters bound to)5.957 F F1(backward\255delete\255char)3.458 E F0
+.958(replace the character)3.458 F(before point with a space.)144 192 Q
+(By def)5 E(ault, this command is unbound.)-.1 E F1(Killing and Y)87
+208.8 Q(anking)-.85 E(kill\255line \(C\255k\))108 220.8 Q F0
+(Kill the te)144 232.8 Q(xt from point to the end of the line.)-.15 E F1
+(backward\255kill\255line \(C\255x Rubout\))108 244.8 Q F0(Kill backw)
+144 256.8 Q(ard to the be)-.1 E(ginning of the line.)-.15 E F1
+(unix\255line\255discard \(C\255u\))108 268.8 Q F0(Kill backw)144 280.8
Q(ard from point to the be)-.1 E(ginning of the line.)-.15 E
(The killed te)5 E(xt is sa)-.15 E -.15(ve)-.2 G 2.5(do).15 G 2.5(nt)
--2.5 G(he kill-ring.)-2.5 E F1(kill\255whole\255line)108 568.8 Q F0
+-2.5 G(he kill-ring.)-2.5 E F1(kill\255whole\255line)108 292.8 Q F0
(Kill all characters on the current line, no matter where point is.)144
-580.8 Q F1(kill\255w)108 592.8 Q(ord \(M\255d\))-.1 E F0 1.308
-(Kill from point the end of the current w)144 604.8 R 1.308
-(ord, or if between w)-.1 F 1.308(ords, to the end of the ne)-.1 F 1.308
-(xt w)-.15 F(ord.)-.1 E -.8(Wo)144 616.8 S
+304.8 Q F1(kill\255w)108 316.8 Q(ord \(M\255d\))-.1 E F0 1.308
+(Kill from point the end of the current w)144 328.8 R 1.308
+(ord, or if between w)-.1 F 1.308(ords, to the end of the ne)-.1 F 1.307
+(xt w)-.15 F(ord.)-.1 E -.8(Wo)144 340.8 S
(rd boundaries are the same as those used by).8 E F1 -.25(fo)2.5 G
-(rward\255w).25 E(ord)-.1 E F0(.)A F1(backward\255kill\255w)108 628.8 Q
-(ord \(M\255Rubout\))-.1 E F0(Kill the w)144 640.8 Q(ord behind point.)
+(rward\255w).25 E(ord)-.1 E F0(.)A F1(backward\255kill\255w)108 352.8 Q
+(ord \(M\255Rubout\))-.1 E F0(Kill the w)144 364.8 Q(ord behind point.)
-.1 E -.8(Wo)5 G(rd boundaries are the same as those used by).8 E F1
-(backward\255w)2.5 E(ord)-.1 E F0(.)A F1(unix\255w)108 652.8 Q
-(ord\255rubout \(C\255w\))-.1 E F0 .365(Kill the w)144 664.8 R .365
-(ord behind point, using white space as a w)-.1 F .364(ord boundary)-.1
-F 5.364(.T)-.65 G .364(he killed te)-5.364 F .364(xt is sa)-.15 F -.15
-(ve)-.2 G 2.864(do).15 G 2.864(nt)-2.864 G(he)-2.864 E(kill-ring.)144
-676.8 Q F1(unix\255\214lename\255rubout)108 688.8 Q F0 .166(Kill the w)
-144 700.8 R .166
+(backward\255w)2.5 E(ord)-.1 E F0(.)A F1(unix\255w)108 376.8 Q
+(ord\255rubout \(C\255w\))-.1 E F0 .364(Kill the w)144 388.8 R .364
+(ord behind point, using white space as a w)-.1 F .365(ord boundary)-.1
+F 5.365(.T)-.65 G .365(he killed te)-5.365 F .365(xt is sa)-.15 F -.15
+(ve)-.2 G 2.865(do).15 G 2.865(nt)-2.865 G(he)-2.865 E(kill-ring.)144
+400.8 Q F1(unix\255\214lename\255rubout)108 412.8 Q F0 .167(Kill the w)
+144 424.8 R .166
(ord behind point, using white space and the slash character as the w)
--.1 F .167(ord boundaries.)-.1 F(The)5.167 E(killed te)144 712.8 Q
+-.1 F .166(ord boundaries.)-.1 F(The)5.166 E(killed te)144 436.8 Q
(xt is sa)-.15 E -.15(ve)-.2 G 2.5(do).15 G 2.5(nt)-2.5 G(he kill-ring.)
--2.5 E(GNU Readline 6.2)72 768 Q(2010 August 28)127.345 E(8)197.055 E 0
-Cg EP
-%%Page: 9 9
-%%BeginPageSetup
-BP
-%%EndPageSetup
-/F0 10/Times-Roman@0 SF 342.2(READLINE\(3\) READLINE\(3\))72 48 R/F1 10
-/Times-Bold@0 SF(delete\255horizontal\255space \(M\255\\\))108 84 Q F0
-(Delete all spaces and tabs around point.)144 96 Q F1(kill\255r)108 108
-Q(egion)-.18 E F0 1.13(Kill the te)144 120 R 1.13
-(xt between the point and)-.15 F/F2 10/Times-Italic@0 SF(mark)3.63 E F0
-(\(sa)3.63 E -.15(ve)-.2 G 3.63(dc).15 G 1.13(ursor position\).)-3.63 F
-1.13(This te)6.13 F 1.13(xt is referred to as the)-.15 F F2 -.37(re)144
-132 S(gion)-.03 E F0(.)A F1(copy\255r)108 144 Q(egion\255as\255kill)-.18
-E F0(Cop)144 156 Q 2.5(yt)-.1 G(he te)-2.5 E(xt in the re)-.15 E
+-2.5 E F1(delete\255horizontal\255space \(M\255\\\))108 448.8 Q F0
+(Delete all spaces and tabs around point.)144 460.8 Q F1(kill\255r)108
+472.8 Q(egion)-.18 E F0 1.13(Kill the te)144 484.8 R 1.13
+(xt between the point and)-.15 F F2(mark)3.63 E F0(\(sa)3.63 E -.15(ve)
+-.2 G 3.63(dc).15 G 1.13(ursor position\).)-3.63 F 1.13(This te)6.13 F
+1.13(xt is referred to as the)-.15 F F2 -.37(re)144 496.8 S(gion)-.03 E
+F0(.)A F1(copy\255r)108 508.8 Q(egion\255as\255kill)-.18 E F0(Cop)144
+520.8 Q 2.5(yt)-.1 G(he te)-2.5 E(xt in the re)-.15 E
(gion to the kill b)-.15 E(uf)-.2 E(fer)-.25 E(.)-.55 E F1
-(copy\255backward\255w)108 168 Q(ord)-.1 E F0(Cop)144 180 Q 4.8(yt)-.1 G
-2.3(he w)-4.8 F 2.3(ord before point to the kill b)-.1 F(uf)-.2 E(fer)
--.25 E 7.301(.T)-.55 G 2.301(he w)-7.301 F 2.301
-(ord boundaries are the same as)-.1 F F1(back-)4.801 E(ward\255w)144 192
-Q(ord)-.1 E F0(.)A F1(copy\255f)108 204 Q(orward\255w)-.25 E(ord)-.1 E
-F0(Cop)144 216 Q 4.508(yt)-.1 G 2.008(he w)-4.508 F 2.008(ord follo)-.1
-F 2.008(wing point to the kill b)-.25 F(uf)-.2 E(fer)-.25 E 7.007(.T)
--.55 G 2.007(he w)-7.007 F 2.007(ord boundaries are the same as)-.1 F F1
--.25(fo)4.507 G -.37(r-).25 G(ward\255w)144 228 Q(ord)-.1 E F0(.)A F1
-(yank \(C\255y\))108 240 Q F0 -1(Ya)144 252 S
+(copy\255backward\255w)108 532.8 Q(ord)-.1 E F0(Cop)144 544.8 Q 4.801
+(yt)-.1 G 2.301(he w)-4.801 F 2.301(ord before point to the kill b)-.1 F
+(uf)-.2 E(fer)-.25 E 7.301(.T)-.55 G 2.301(he w)-7.301 F 2.3
+(ord boundaries are the same as)-.1 F F1(back-)4.8 E(ward\255w)144 556.8
+Q(ord)-.1 E F0(.)A F1(copy\255f)108 568.8 Q(orward\255w)-.25 E(ord)-.1 E
+F0(Cop)144 580.8 Q 4.507(yt)-.1 G 2.007(he w)-4.507 F 2.007(ord follo)
+-.1 F 2.007(wing point to the kill b)-.25 F(uf)-.2 E(fer)-.25 E 7.008
+(.T)-.55 G 2.008(he w)-7.008 F 2.008(ord boundaries are the same as)-.1
+F F1 -.25(fo)4.508 G -.37(r-).25 G(ward\255w)144 592.8 Q(ord)-.1 E F0(.)
+A F1(yank \(C\255y\))108 604.8 Q F0 -1(Ya)144 616.8 S
(nk the top of the kill ring into the b)1 E(uf)-.2 E(fer at point.)-.25
-E F1(yank\255pop \(M\255y\))108 264 Q F0
-(Rotate the kill ring, and yank the ne)144 276 Q 2.5(wt)-.25 G 2.5
+E F1(yank\255pop \(M\255y\))108 628.8 Q F0
+(Rotate the kill ring, and yank the ne)144 640.8 Q 2.5(wt)-.25 G 2.5
(op. Only)-2.5 F -.1(wo)2.5 G(rks follo).1 E(wing)-.25 E F1(yank)2.5 E
-F0(or)2.5 E F1(yank\255pop)2.5 E F0(.)A F1(Numeric Ar)87 292.8 Q
-(guments)-.1 E(digit\255ar)108 304.8 Q
-(gument \(M\2550, M\2551, ..., M\255\255\))-.1 E F0 .641
-(Add this digit to the ar)144 316.8 R .641
+F0(or)2.5 E F1(yank\255pop)2.5 E F0(.)A F1(Numeric Ar)87 657.6 Q
+(guments)-.1 E(digit\255ar)108 669.6 Q
+(gument \(M\2550, M\2551, ..., M\255\255\))-.1 E F0 .642
+(Add this digit to the ar)144 681.6 R .641
(gument already accumulating, or start a ne)-.18 F 3.141(wa)-.25 G -.18
-(rg)-3.141 G 3.142(ument. M\255\255).18 F .642(starts a ne)3.142 F(g-)
--.15 E(ati)144 328.8 Q .3 -.15(ve a)-.25 H -.18(rg).15 G(ument.).18 E F1
-(uni)108 340.8 Q -.1(ve)-.1 G(rsal\255ar).1 E(gument)-.1 E F0 .779
-(This is another w)144 352.8 R .779(ay to specify an ar)-.1 F 3.279
-(gument. If)-.18 F .779(this command is follo)3.279 F .778
-(wed by one or more digits,)-.25 F 1.376
+(rg)-3.141 G 3.141(ument. M\255\255).18 F .641(starts a ne)3.141 F(g-)
+-.15 E(ati)144 693.6 Q .3 -.15(ve a)-.25 H -.18(rg).15 G(ument.).18 E F1
+(uni)108 705.6 Q -.1(ve)-.1 G(rsal\255ar).1 E(gument)-.1 E F0 .778
+(This is another w)144 717.6 R .779(ay to specify an ar)-.1 F 3.279
+(gument. If)-.18 F .779(this command is follo)3.279 F .779
+(wed by one or more digits,)-.25 F 2.684
(optionally with a leading minus sign, those digits de\214ne the ar)144
-364.8 R 3.876(gument. If)-.18 F 1.376(the command is fol-)3.876 F(lo)144
-376.8 Q 1.17(wed by digits, e)-.25 F -.15(xe)-.15 G(cuting).15 E F1(uni)
-3.67 E -.1(ve)-.1 G(rsal\255ar).1 E(gument)-.1 E F0(ag)3.67 E 1.17
-(ain ends the numeric ar)-.05 F 1.17(gument, b)-.18 F 1.17(ut is other)
--.2 F(-)-.2 E .898(wise ignored.)144 388.8 R .898
-(As a special case, if this command is immediately follo)5.898 F .898
+729.6 R 5.184(gument. If)-.18 F 2.684(the command is)5.184 F
+(GNU Readline 6.3)72 768 Q(2014 January 6)128.74 E(9)198.45 E 0 Cg EP
+%%Page: 10 10
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF 342.2(READLINE\(3\) READLINE\(3\))72 48 R(follo)
+144 84 Q .244(wed by digits, e)-.25 F -.15(xe)-.15 G(cuting).15 E/F1 10
+/Times-Bold@0 SF(uni)2.744 E -.1(ve)-.1 G(rsal\255ar).1 E(gument)-.1 E
+F0(ag)2.744 E .244(ain ends the numeric ar)-.05 F .244(gument, b)-.18 F
+.245(ut is other)-.2 F(-)-.2 E .899(wise ignored.)144 96 R .898
+(As a special case, if this command is immediately follo)5.899 F .898
(wed by a character that is)-.25 F .243
-(neither a digit or minus sign, the ar)144 400.8 R .243
+(neither a digit or minus sign, the ar)144 108 R .243
(gument count for the ne)-.18 F .243(xt command is multiplied by four)
--.15 F 5.242(.T)-.55 G(he)-5.242 E(ar)144 412.8 Q .378
+-.15 F 5.243(.T)-.55 G(he)-5.243 E(ar)144 120 Q .378
(gument count is initially one, so e)-.18 F -.15(xe)-.15 G .378
(cuting this function the \214rst time mak).15 F .378(es the ar)-.1 F
-.378(gument count)-.18 F(four)144 424.8 Q 2.5(,as)-.4 G(econd time mak)
+.378(gument count)-.18 F(four)144 132 Q 2.5(,as)-.4 G(econd time mak)
-2.5 E(es the ar)-.1 E(gument count sixteen, and so on.)-.18 E F1
-(Completing)87 441.6 Q(complete \(T)108 453.6 Q(AB\))-.9 E F0 1.909
-(Attempt to perform completion on the te)144 465.6 R 1.908
-(xt before point.)-.15 F 1.908(The actual completion performed is)6.908
-F(application-speci\214c.)144 477.6 Q F1(Bash)5.517 E F0 3.017(,f)C .518
-(or instance, attempts completion treating the te)-3.017 F .518
-(xt as a v)-.15 F .518(ariable \(if the)-.25 F(te)144 489.6 Q .657
-(xt be)-.15 F .657(gins with)-.15 F F1($)3.156 E F0 .656
+(Completing)87 148.8 Q(complete \(T)108 160.8 Q(AB\))-.9 E F0 1.908
+(Attempt to perform completion on the te)144 172.8 R 1.908
+(xt before point.)-.15 F 1.909(The actual completion performed is)6.909
+F(application-speci\214c.)144 184.8 Q F1(Bash)5.518 E F0 3.018(,f)C .518
+(or instance, attempts completion treating the te)-3.018 F .517
+(xt as a v)-.15 F .517(ariable \(if the)-.25 F(te)144 196.8 Q .656
+(xt be)-.15 F .656(gins with)-.15 F F1($)3.156 E F0 .656
(\), username \(if the te)B .656(xt be)-.15 F .656(gins with)-.15 F F1
(~)3.156 E F0 .656(\), hostname \(if the te)B .656(xt be)-.15 F .656
-(gins with)-.15 F F1(@)3.156 E F0 .656(\), or)B .929
-(command \(including aliases and functions\) in turn.)144 501.6 R .93
-(If none of these produces a match, \214lename)5.929 F 1.274
-(completion is attempted.)144 513.6 R F1(Gdb)6.273 E F0 3.773(,o)C 3.773
+(gins with)-.15 F F1(@)3.157 E F0 .657(\), or)B .93
+(command \(including aliases and functions\) in turn.)144 208.8 R .929
+(If none of these produces a match, \214lename)5.929 F 1.273
+(completion is attempted.)144 220.8 R F1(Gdb)6.273 E F0 3.773(,o)C 3.773
(nt)-3.773 G 1.273(he other hand, allo)-3.773 F 1.273
-(ws completion of program functions and)-.25 F -.25(va)144 525.6 S(riab\
+(ws completion of program functions and)-.25 F -.25(va)144 232.8 S(riab\
les, and only attempts \214lename completion under certain circumstance\
-s.).25 E F1(possible\255completions \(M\255?\))108 537.6 Q F0 .261
-(List the possible completions of the te)144 549.6 R .262
-(xt before point.)-.15 F .262
-(When displaying completions, readline sets)5.262 F 1.002
-(the number of columns used for display to the v)144 561.6 R 1.002
-(alue of)-.25 F F1(completion-display-width)3.502 E F0 3.502(,t)C 1.002
-(he v)-3.502 F 1.002(alue of)-.25 F(the en)144 573.6 Q(vironment v)-.4 E
-(ariable)-.25 E/F3 9/Times-Bold@0 SF(COLUMNS)2.5 E/F4 9/Times-Roman@0 SF
+s.).25 E F1(possible\255completions \(M\255?\))108 244.8 Q F0 .262
+(List the possible completions of the te)144 256.8 R .262
+(xt before point.)-.15 F .261
+(When displaying completions, readline sets)5.261 F 1.002
+(the number of columns used for display to the v)144 268.8 R 1.002
+(alue of)-.25 F F1(completion-display-width)3.502 E F0 3.502(,t)C 1.003
+(he v)-3.502 F 1.003(alue of)-.25 F(the en)144 280.8 Q(vironment v)-.4 E
+(ariable)-.25 E/F2 9/Times-Bold@0 SF(COLUMNS)2.5 E/F3 9/Times-Roman@0 SF
(,)A F0(or the screen width, in that order)2.25 E(.)-.55 E F1
-(insert\255completions \(M\255*\))108 585.6 Q F0 .783
-(Insert all completions of the te)144 597.6 R .783
+(insert\255completions \(M\255*\))108 292.8 Q F0 .783
+(Insert all completions of the te)144 304.8 R .783
(xt before point that w)-.15 F .783(ould ha)-.1 F 1.083 -.15(ve b)-.2 H
-.783(een generated by).15 F F1(possible\255com-)3.283 E(pletions)144
-609.6 Q F0(.)A F1(menu\255complete)108 621.6 Q F0 .929(Similar to)144
-633.6 R F1(complete)3.429 E F0 3.429(,b)C .929(ut replaces the w)-3.629
+.783(een generated by).15 F F1(possible\255com-)3.282 E(pletions)144
+316.8 Q F0(.)A F1(menu\255complete)108 328.8 Q F0 .928(Similar to)144
+340.8 R F1(complete)3.428 E F0 3.428(,b)C .929(ut replaces the w)-3.628
F .929(ord to be completed with a single match from the list of)-.1 F
-1.193(possible completions.)144 645.6 R 1.193(Repeated e)6.193 F -.15
-(xe)-.15 G 1.193(cution of).15 F F1(menu\255complete)3.694 E F0 1.194
-(steps through the list of possible)3.694 F .829
-(completions, inserting each match in turn.)144 657.6 R .828
+1.194(possible completions.)144 352.8 R 1.194(Repeated e)6.194 F -.15
+(xe)-.15 G 1.194(cution of).15 F F1(menu\255complete)3.694 E F0 1.193
+(steps through the list of possible)3.694 F .828
+(completions, inserting each match in turn.)144 364.8 R .828
(At the end of the list of completions, the bell is rung)5.828 F .727
-(\(subject to the setting of)144 669.6 R F1(bell\255style)3.227 E F0
+(\(subject to the setting of)144 376.8 R F1(bell\255style)3.227 E F0
3.227(\)a)C .727(nd the original te)-3.227 F .727(xt is restored.)-.15 F
-.727(An ar)5.727 F .727(gument of)-.18 F F2(n)3.227 E F0(mo)3.227 E -.15
-(ve)-.15 G(s).15 E F2(n)3.228 E F0 1.73(positions forw)144 681.6 R 1.73
-(ard in the list of matches; a ne)-.1 F -.05(ga)-.15 G(ti).05 E 2.03
--.15(ve a)-.25 H -.18(rg).15 G 1.73(ument may be used to mo).18 F 2.03
--.15(ve b)-.15 H(ackw).15 E(ard)-.1 E(through the list.)144 693.6 Q
-(This command is intended to be bound to)5 E F1 -.9(TA)2.5 G(B).9 E F0
-2.5(,b)C(ut is unbound by def)-2.7 E(ault.)-.1 E F1
-(menu\255complete\255backward)108 705.6 Q F0 .82(Identical to)144 717.6
-R F1(menu\255complete)3.32 E F0 3.32(,b)C .82(ut mo)-3.52 F -.15(ve)-.15
-G 3.32(sb).15 G(ackw)-3.32 E .82
+.727(An ar)5.727 F .727(gument of)-.18 F/F4 10/Times-Italic@0 SF(n)3.227
+E F0(mo)3.227 E -.15(ve)-.15 G(s).15 E F4(n)3.227 E F0 1.73
+(positions forw)144 388.8 R 1.73(ard in the list of matches; a ne)-.1 F
+-.05(ga)-.15 G(ti).05 E 2.03 -.15(ve a)-.25 H -.18(rg).15 G 1.73
+(ument may be used to mo).18 F 2.03 -.15(ve b)-.15 H(ackw).15 E(ard)-.1
+E(through the list.)144 400.8 Q(This command is intended to be bound to)
+5 E F1 -.9(TA)2.5 G(B).9 E F0 2.5(,b)C(ut is unbound by def)-2.7 E
+(ault.)-.1 E F1(menu\255complete\255backward)108 412.8 Q F0 .82
+(Identical to)144 424.8 R F1(menu\255complete)3.32 E F0 3.32(,b)C .82
+(ut mo)-3.52 F -.15(ve)-.15 G 3.32(sb).15 G(ackw)-3.32 E .82
(ard through the list of possible completions, as if)-.1 F F1
-(menu\255complete)144 729.6 Q F0(had been gi)2.5 E -.15(ve)-.25 G 2.5
+(menu\255complete)144 436.8 Q F0(had been gi)2.5 E -.15(ve)-.25 G 2.5
(nan).15 G -2.25 -.15(eg a)-2.5 H(ti).15 E .3 -.15(ve a)-.25 H -.18(rg)
.15 G 2.5(ument. This).18 F(command is unbound by def)2.5 E(ault.)-.1 E
-(GNU Readline 6.2)72 768 Q(2010 August 28)127.345 E(9)197.055 E 0 Cg EP
-%%Page: 10 10
-%%BeginPageSetup
-BP
-%%EndPageSetup
-/F0 10/Times-Roman@0 SF 342.2(READLINE\(3\) READLINE\(3\))72 48 R/F1 10
-/Times-Bold@0 SF(delete\255char\255or\255list)108 84 Q F0 .374
-(Deletes the character under the cursor if not at the be)144 96 R .373
-(ginning or end of the line \(lik)-.15 F(e)-.1 E F1(delete-char)2.873 E
-F0(\).)A(If at the end of the line, beha)144 108 Q -.15(ve)-.2 G 2.5(si)
-.15 G(dentically to)-2.5 E F1(possible-completions)2.5 E F0(.)A F1 -.25
-(Ke)87 124.8 S(yboard Macr).25 E(os)-.18 E(start\255kbd\255macr)108
-136.8 Q 2.5(o\()-.18 G(C\255x \()-2.5 E(\)).833 E F0(Be)144 148.8 Q
+F1(delete\255char\255or\255list)108 448.8 Q F0 .373
+(Deletes the character under the cursor if not at the be)144 460.8 R
+.374(ginning or end of the line \(lik)-.15 F(e)-.1 E F1(delete-char)
+2.874 E F0(\).)A(If at the end of the line, beha)144 472.8 Q -.15(ve)-.2
+G 2.5(si).15 G(dentically to)-2.5 E F1(possible-completions)2.5 E F0(.)A
+F1 -.25(Ke)87 489.6 S(yboard Macr).25 E(os)-.18 E(start\255kbd\255macr)
+108 501.6 Q 2.5(o\()-.18 G(C\255x \()-2.5 E(\)).833 E F0(Be)144 513.6 Q
(gin sa)-.15 E(ving the characters typed into the current k)-.2 E -.15
-(ey)-.1 G(board macro.).15 E F1(end\255kbd\255macr)108 160.8 Q 2.5(o\()
--.18 G(C\255x \))-2.5 E(\)).833 E F0(Stop sa)144 172.8 Q
+(ey)-.1 G(board macro.).15 E F1(end\255kbd\255macr)108 525.6 Q 2.5(o\()
+-.18 G(C\255x \))-2.5 E(\)).833 E F0(Stop sa)144 537.6 Q
(ving the characters typed into the current k)-.2 E -.15(ey)-.1 G
(board macro and store the de\214nition.).15 E F1
-(call\255last\255kbd\255macr)108 184.8 Q 2.5(o\()-.18 G(C\255x e\))-2.5
-E F0(Re-e)144 196.8 Q -.15(xe)-.15 G .999(cute the last k).15 F -.15(ey)
--.1 G .999(board macro de\214ned, by making the characters in the macro\
- appear as if).15 F(typed at the k)144 208.8 Q -.15(ey)-.1 G(board.).15
-E F1(Miscellaneous)87 225.6 Q -.18(re)108 237.6 S<ad72>.18 E
+(call\255last\255kbd\255macr)108 549.6 Q 2.5(o\()-.18 G(C\255x e\))-2.5
+E F0(Re-e)144 561.6 Q -.15(xe)-.15 G 1(cute the last k).15 F -.15(ey)-.1
+G .999(board macro de\214ned, by making the characters in the macro app\
+ear as if).15 F .662(typed at the k)144 573.6 R -.15(ey)-.1 G(board.).15
+E F1(print\255last\255kbd\255macr)5.663 E 3.163(o\()-.18 G(\))-3.163 E
+F0 .663(Print the last k)3.163 F -.15(ey)-.1 G .663
+(board macro de\214ned in a for).15 F(-)-.2 E(mat suitable for the)144
+585.6 Q F4(inputr)2.5 E(c)-.37 E F0(\214le.)2.5 E F1(Miscellaneous)87
+602.4 Q -.18(re)108 614.4 S<ad72>.18 E
(ead\255init\255\214le \(C\255x C\255r\))-.18 E F0 1.777
-(Read in the contents of the)144 249.6 R/F2 10/Times-Italic@0 SF(inputr)
-4.277 E(c)-.37 E F0 1.776(\214le, and incorporate an)4.276 F 4.276(yb)
--.15 G 1.776(indings or v)-4.276 F 1.776(ariable assignments)-.25 F
-(found there.)144 261.6 Q F1(abort \(C\255g\))108 273.6 Q F0 3.248
-(Abort the current editing command and ring the terminal')144 285.6 R
+(Read in the contents of the)144 626.4 R F4(inputr)4.277 E(c)-.37 E F0
+1.776(\214le, and incorporate an)4.276 F 4.276(yb)-.15 G 1.776
+(indings or v)-4.276 F 1.776(ariable assignments)-.25 F(found there.)144
+638.4 Q F1(abort \(C\255g\))108 650.4 Q F0 3.248
+(Abort the current editing command and ring the terminal')144 662.4 R
5.749(sb)-.55 G 3.249(ell \(subject to the setting of)-5.749 F F1
-(bell\255style)144 297.6 Q F0(\).)A F1(do\255upper)108 309.6 Q
-(case\255v)-.18 E(ersion \(M\255a, M\255b, M\255)-.1 E F2(x)A F1 2.5(,.)
-C(..\))-2.5 E F0 1.756(If the meta\214ed character)144 321.6 R F2(x)
+(bell\255style)144 674.4 Q F0(\).)A F1(do\255upper)108 686.4 Q
+(case\255v)-.18 E(ersion \(M\255a, M\255b, M\255)-.1 E F4(x)A F1 2.5(,.)
+C(..\))-2.5 E F0 1.756(If the meta\214ed character)144 698.4 R F4(x)
4.256 E F0 1.755(is lo)4.256 F 1.755
(wercase, run the command that is bound to the corresponding)-.25 F
-(uppercase character)144 333.6 Q(.)-.55 E F1(pr)108 345.6 Q
-(e\214x\255meta \(ESC\))-.18 E F0(Metafy the ne)144 357.6 Q
-(xt character typed.)-.15 E/F3 9/Times-Bold@0 SF(ESC)5 E F1(f)2.25 E F0
-(is equi)2.5 E -.25(va)-.25 G(lent to).25 E F1(Meta\255f)2.5 E F0(.)A F1
-(undo \(C\255_, C\255x C\255u\))108 369.6 Q F0
-(Incremental undo, separately remembered for each line.)144 381.6 Q F1
--2.29 -.18(re v)108 393.6 T(ert\255line \(M\255r\)).08 E F0 1.095
-(Undo all changes made to this line.)144 405.6 R 1.095(This is lik)6.095
-F 3.595(ee)-.1 G -.15(xe)-3.745 G 1.095(cuting the).15 F F1(undo)3.595 E
+(uppercase character)144 710.4 Q(.)-.55 E(GNU Readline 6.3)72 768 Q
+(2014 January 6)128.74 E(10)193.45 E 0 Cg EP
+%%Page: 11 11
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF 342.2(READLINE\(3\) READLINE\(3\))72 48 R/F1 10
+/Times-Bold@0 SF(pr)108 84 Q(e\214x\255meta \(ESC\))-.18 E F0
+(Metafy the ne)144 96 Q(xt character typed.)-.15 E/F2 9/Times-Bold@0 SF
+(ESC)5 E F1(f)2.25 E F0(is equi)2.5 E -.25(va)-.25 G(lent to).25 E F1
+(Meta\255f)2.5 E F0(.)A F1(undo \(C\255_, C\255x C\255u\))108 108 Q F0
+(Incremental undo, separately remembered for each line.)144 120 Q F1
+-2.29 -.18(re v)108 132 T(ert\255line \(M\255r\)).08 E F0 1.095
+(Undo all changes made to this line.)144 144 R 1.095(This is lik)6.095 F
+3.595(ee)-.1 G -.15(xe)-3.745 G 1.095(cuting the).15 F F1(undo)3.595 E
F0 1.095(command enough times to)3.595 F
-(return the line to its initial state.)144 417.6 Q F1
-(tilde\255expand \(M\255&\))108 429.6 Q F0(Perform tilde e)144 441.6 Q
+(return the line to its initial state.)144 156 Q F1
+(tilde\255expand \(M\255&\))108 168 Q F0(Perform tilde e)144 180 Q
(xpansion on the current w)-.15 E(ord.)-.1 E F1
-(set\255mark \(C\255@, M\255<space>\))108 453.6 Q F0
-(Set the mark to the point.)144 465.6 Q(If a numeric ar)5 E
+(set\255mark \(C\255@, M\255<space>\))108 192 Q F0
+(Set the mark to the point.)144 204 Q(If a numeric ar)5 E
(gument is supplied, the mark is set to that position.)-.18 E F1
-(exchange\255point\255and\255mark \(C\255x C\255x\))108 477.6 Q F0(Sw)
-144 489.6 Q .283(ap the point with the mark.)-.1 F .283
+(exchange\255point\255and\255mark \(C\255x C\255x\))108 216 Q F0(Sw)144
+228 Q .283(ap the point with the mark.)-.1 F .283
(The current cursor position is set to the sa)5.283 F -.15(ve)-.2 G
2.782(dp).15 G .282(osition, and the old)-2.782 F(cursor position is sa)
-144 501.6 Q -.15(ve)-.2 G 2.5(da).15 G 2.5(st)-2.5 G(he mark.)-2.5 E F1
-(character\255sear)108 513.6 Q(ch \(C\255]\))-.18 E F0 3.035(Ac)144
-525.6 S .535(haracter is read and point is mo)-3.035 F -.15(ve)-.15 G
-3.035(dt).15 G 3.035(ot)-3.035 G .535(he ne)-3.035 F .535
+144 240 Q -.15(ve)-.2 G 2.5(da).15 G 2.5(st)-2.5 G(he mark.)-2.5 E F1
+(character\255sear)108 252 Q(ch \(C\255]\))-.18 E F0 3.035(Ac)144 264 S
+.535(haracter is read and point is mo)-3.035 F -.15(ve)-.15 G 3.035(dt)
+.15 G 3.035(ot)-3.035 G .535(he ne)-3.035 F .535
(xt occurrence of that character)-.15 F 5.536(.A)-.55 G(ne)-2.5 E -.05
(ga)-.15 G(ti).05 E .836 -.15(ve c)-.25 H(ount).15 E(searches for pre)
-144 537.6 Q(vious occurrences.)-.25 E F1(character\255sear)108 549.6 Q
-(ch\255backward \(M\255C\255]\))-.18 E F0 3.544(Ac)144 561.6 S 1.044
+144 276 Q(vious occurrences.)-.25 E F1(character\255sear)108 288 Q
+(ch\255backward \(M\255C\255]\))-.18 E F0 3.544(Ac)144 300 S 1.044
(haracter is read and point is mo)-3.544 F -.15(ve)-.15 G 3.544(dt).15 G
3.544(ot)-3.544 G 1.044(he pre)-3.544 F 1.044
(vious occurrence of that character)-.25 F 6.043(.A)-.55 G(ne)-2.5 E
-.05(ga)-.15 G(ti).05 E -.15(ve)-.25 G
-(count searches for subsequent occurrences.)144 573.6 Q F1
-(skip\255csi\255sequence)108 585.6 Q F0 1.826
-(Read enough characters to consume a multi-k)144 597.6 R 2.126 -.15
-(ey s)-.1 H 1.827(equence such as those de\214ned for k).15 F -.15(ey)
--.1 G 4.327(sl).15 G(ik)-4.327 E(e)-.1 E .791(Home and End.)144 609.6 R
-.791(Such sequences be)5.791 F .791
+(count searches for subsequent occurrences.)144 312 Q F1
+(skip\255csi\255sequence)108 324 Q F0 1.826
+(Read enough characters to consume a multi-k)144 336 R 2.126 -.15(ey s)
+-.1 H 1.827(equence such as those de\214ned for k).15 F -.15(ey)-.1 G
+4.327(sl).15 G(ik)-4.327 E(e)-.1 E .791(Home and End.)144 348 R .791
+(Such sequences be)5.791 F .791
(gin with a Control Sequence Indicator \(CSI\), usually ESC\255[.)-.15 F
-.331(If this sequence is bound to "\\[", k)144 621.6 R -.15(ey)-.1 G
-2.831(sp).15 G .331(roducing such sequences will ha)-2.831 F .632 -.15
-(ve n)-.2 H 2.832(oe).15 G -.25(ff)-2.832 G .332(ect unless e).25 F
-(xplic-)-.15 E .026(itly bound to a readline command, instead of insert\
-ing stray characters into the editing b)144 633.6 R(uf)-.2 E(fer)-.25 E
-5.026(.T)-.55 G(his)-5.026 E(is unbound by def)144 645.6 Q(ault, b)-.1 E
+.331(If this sequence is bound to "\\[", k)144 360 R -.15(ey)-.1 G 2.831
+(sp).15 G .331(roducing such sequences will ha)-2.831 F .632 -.15(ve n)
+-.2 H 2.832(oe).15 G -.25(ff)-2.832 G .332(ect unless e).25 F(xplic-)
+-.15 E .026(itly bound to a readline command, instead of inserting stra\
+y characters into the editing b)144 372 R(uf)-.2 E(fer)-.25 E 5.026(.T)
+-.55 G(his)-5.026 E(is unbound by def)144 384 Q(ault, b)-.1 E
(ut usually bound to ESC\255[.)-.2 E F1(insert\255comment \(M\255#\))108
-657.6 Q F0 -.4(Wi)144 669.6 S .48(thout a numeric ar).4 F .48
-(gument, the v)-.18 F .481(alue of the readline)-.25 F F1
-(comment\255begin)2.981 E F0 -.25(va)2.981 G .481
-(riable is inserted at the).25 F(be)144 681.6 Q .098
+396 Q F0 -.4(Wi)144 408 S .48(thout a numeric ar).4 F .48(gument, the v)
+-.18 F .481(alue of the readline)-.25 F F1(comment\255begin)2.981 E F0
+-.25(va)2.981 G .481(riable is inserted at the).25 F(be)144 420 Q .098
(ginning of the current line.)-.15 F .098(If a numeric ar)5.098 F .097
(gument is supplied, this command acts as a toggle:)-.18 F(if)5.097 E
-.321(the characters at the be)144 693.6 R .321
+.321(the characters at the be)144 432 R .321
(ginning of the line do not match the v)-.15 F .321(alue of)-.25 F F1
(comment\255begin)2.821 E F0 2.822(,t)C .322(he v)-2.822 F .322(alue is)
--.25 F 1.014(inserted, otherwise the characters in)144 705.6 R F1
+-.25 F 1.014(inserted, otherwise the characters in)144 444 R F1
(comment-begin)3.514 E F0 1.014(are deleted from the be)3.514 F 1.013
(ginning of the line.)-.15 F 1.468
-(In either case, the line is accepted as if a ne)144 717.6 R 1.468
+(In either case, the line is accepted as if a ne)144 456 R 1.468
(wline had been typed.)-.25 F 1.469(The def)6.469 F 1.469(ault v)-.1 F
-1.469(alue of)-.25 F F1(com-)3.969 E(ment\255begin)144 729.6 Q F0(mak)
+1.469(alue of)-.25 F F1(com-)3.969 E(ment\255begin)144 468 Q F0(mak)
2.983 E .483(es the current line a shell comment.)-.1 F .483
(If a numeric ar)5.483 F .482(gument causes the comment)-.18 F
-(GNU Readline 6.2)72 768 Q(2010 August 28)127.345 E(10)192.055 E 0 Cg EP
-%%Page: 11 11
-%%BeginPageSetup
-BP
-%%EndPageSetup
-/F0 10/Times-Roman@0 SF 342.2(READLINE\(3\) READLINE\(3\))72 48 R
-(character to be remo)144 84 Q -.15(ve)-.15 G(d, the line will be e).15
-E -.15(xe)-.15 G(cuted by the shell.).15 E/F1 10/Times-Bold@0 SF
-(dump\255functions)108 96 Q F0 .626
-(Print all of the functions and their k)144 108 R .926 -.15(ey b)-.1 H
-.627(indings to the readline output stream.).15 F .627(If a numeric ar)
-5.627 F(gu-)-.18 E
-(ment is supplied, the output is formatted in such a w)144 120 Q
-(ay that it can be made part of an)-.1 E/F2 10/Times-Italic@0 SF(inputr)
-2.5 E(c)-.37 E F0(\214le.)2.5 E F1(dump\255v)108 132 Q(ariables)-.1 E F0
-.283(Print all of the settable v)144 144 R .283(ariables and their v)
+(character to be remo)144 480 Q -.15(ve)-.15 G(d, the line will be e).15
+E -.15(xe)-.15 G(cuted by the shell.).15 E F1(dump\255functions)108 492
+Q F0 .626(Print all of the functions and their k)144 504 R .926 -.15
+(ey b)-.1 H .627(indings to the readline output stream.).15 F .627
+(If a numeric ar)5.627 F(gu-)-.18 E
+(ment is supplied, the output is formatted in such a w)144 516 Q
+(ay that it can be made part of an)-.1 E/F3 10/Times-Italic@0 SF(inputr)
+2.5 E(c)-.37 E F0(\214le.)2.5 E F1(dump\255v)108 528 Q(ariables)-.1 E F0
+.283(Print all of the settable v)144 540 R .283(ariables and their v)
-.25 F .283(alues to the readline output stream.)-.25 F .283
(If a numeric ar)5.283 F(gu-)-.18 E
-(ment is supplied, the output is formatted in such a w)144 156 Q
-(ay that it can be made part of an)-.1 E F2(inputr)2.5 E(c)-.37 E F0
-(\214le.)2.5 E F1(dump\255macr)108 168 Q(os)-.18 E F0 .592
-(Print all of the readline k)144 180 R .892 -.15(ey s)-.1 H .592
+(ment is supplied, the output is formatted in such a w)144 552 Q
+(ay that it can be made part of an)-.1 E F3(inputr)2.5 E(c)-.37 E F0
+(\214le.)2.5 E F1(dump\255macr)108 564 Q(os)-.18 E F0 .592
+(Print all of the readline k)144 576 R .892 -.15(ey s)-.1 H .592
(equences bound to macros and the strings the).15 F 3.093(yo)-.15 G
-3.093(utput. If)-3.093 F 3.093(an)3.093 G(umeric)-3.093 E(ar)144 192 Q
+3.093(utput. If)-3.093 F 3.093(an)3.093 G(umeric)-3.093 E(ar)144 588 Q
.528(gument is supplied, the output is formatted in such a w)-.18 F .528
-(ay that it can be made part of an)-.1 F F2(inputr)3.027 E(c)-.37 E F0
-(\214le.)144 204 Q F1(emacs\255editing\255mode \(C\255e\))108 216 Q F0
-(When in)144 228 Q F1(vi)2.5 E F0(command mode, this causes a switch to)
+(ay that it can be made part of an)-.1 F F3(inputr)3.027 E(c)-.37 E F0
+(\214le.)144 600 Q F1(emacs\255editing\255mode \(C\255e\))108 612 Q F0
+(When in)144 624 Q F1(vi)2.5 E F0(command mode, this causes a switch to)
2.5 E F1(emacs)2.5 E F0(editing mode.)2.5 E F1
-(vi\255editing\255mode \(M\255C\255j\))108 240 Q F0(When in)144 252 Q F1
+(vi\255editing\255mode \(M\255C\255j\))108 636 Q F0(When in)144 648 Q F1
(emacs)2.5 E F0(editing mode, this causes a switch to)2.5 E F1(vi)2.5 E
-F0(editing mode.)2.5 E/F3 10.95/Times-Bold@0 SF(DEF)72 268.8 Q -.548(AU)
+F0(editing mode.)2.5 E/F4 10.95/Times-Bold@0 SF(DEF)72 664.8 Q -.548(AU)
-.986 G 2.014 -1.007(LT K).548 H(EY BINDINGS)1.007 E F0 .064(The follo)
-108 280.8 R .064(wing is a list of the def)-.25 F .064
+108 676.8 R .064(wing is a list of the def)-.25 F .064
(ault emacs and vi bindings.)-.1 F .065
(Characters with the eighth bit set are written as)5.065 F .527
-(M\255<character>, and are referred to as)108 292.8 R F2(meta\214ed)
+(M\255<character>, and are referred to as)108 688.8 R F3(meta\214ed)
3.407 E F0 3.027(characters. The)3.797 F .527
(printable ASCII characters not mentioned)3.027 F 1.115
-(in the list of emacs standard bindings are bound to the)108 304.8 R F1
+(in the list of emacs standard bindings are bound to the)108 700.8 R F1
(self\255insert)3.615 E F0 1.116(function, which just inserts the gi)
3.615 F -.15(ve)-.25 G(n).15 E .945(character into the input line.)108
-316.8 R .945(In vi insertion mode, all characters not speci\214cally me\
-ntioned are bound to)5.945 F F1(self\255insert)108 328.8 Q F0 5.358(.C)C
-.358(haracters assigned to signal generation by)-5.358 F F2(stty)2.859 E
+712.8 R .945(In vi insertion mode, all characters not speci\214cally me\
+ntioned are bound to)5.945 F F1(self\255insert)108 724.8 Q F0 5.358(.C)C
+.358(haracters assigned to signal generation by)-5.358 F F3(stty)2.859 E
F0 .359(\(1\) or the terminal dri).32 F -.15(ve)-.25 G 1.159 -.4(r, s)
-.15 H .359(uch as C-Z or C-C,).4 F .188(retain that function.)108 340.8
-R .188(Upper and lo)5.188 F .188(wer case meta\214ed characters are bou\
-nd to the same function in the emacs)-.25 F .304(mode meta k)108 352.8 R
--.15(ey)-.1 G 2.804(map. The).15 F .305(remaining characters are unboun\
-d, which causes readline to ring the bell \(subject)2.804 F
-(to the setting of the)108 364.8 Q F1(bell\255style)2.5 E F0 -.25(va)2.5
-G(riable\).).25 E F1(Emacs Mode)87 381.6 Q F0(Emacs Standard bindings)
-151.2 393.6 Q 2.5("C-@" set-mark)151.2 417.6 R 2.5("C-A" be)151.2 429.6
-R(ginning-of-line)-.15 E 2.5("C-B" backw)151.2 441.6 R(ard-char)-.1 E
-2.5("C-D" delete-char)151.2 453.6 R 2.5("C-E" end-of-line)151.2 465.6 R
-2.5("C-F" forw)151.2 477.6 R(ard-char)-.1 E 2.5("C-G" abort)151.2 489.6
-R 2.5("C-H" backw)151.2 501.6 R(ard-delete-char)-.1 E 2.5
-("C-I" complete)151.2 513.6 R 2.5("C-J" accept-line)151.2 525.6 R 2.5
-("C-K" kill-line)151.2 537.6 R 2.5("C-L" clear)151.2 549.6 R(-screen)-.2
-E 2.5("C-M" accept-line)151.2 561.6 R 2.5("C-N" ne)151.2 573.6 R
-(xt-history)-.15 E 2.5("C-P" pre)151.2 585.6 R(vious-history)-.25 E 2.5
-("C-Q" quoted-insert)151.2 597.6 R 2.5("C-R" re)151.2 609.6 R -.15(ve)
--.25 G(rse-search-history).15 E 2.5("C-S" forw)151.2 621.6 R
-(ard-search-history)-.1 E 2.5("C-T" transpose-chars)151.2 633.6 R 2.5
-("C-U" unix-line-discard)151.2 645.6 R 2.5("C-V" quoted-insert)151.2
-657.6 R 2.5("C-W" unix-w)151.2 669.6 R(ord-rubout)-.1 E 2.5("C-Y" yank)
-151.2 681.6 R 2.5("C-]" character)151.2 693.6 R(-search)-.2 E 2.5
-("C-_" undo)151.2 705.6 R 3.333("")151.2 717.6 S(to "/")-.833 E
-(self-insert)5 E 2.5("0" to)151.2 729.6 R 2.5("9" self-insert)2.5 F
-(GNU Readline 6.2)72 768 Q(2010 August 28)127.345 E(11)192.055 E 0 Cg EP
+.15 H .359(uch as C-Z or C-C,).4 F(GNU Readline 6.3)72 768 Q
+(2014 January 6)128.74 E(11)193.45 E 0 Cg EP
%%Page: 12 12
%%BeginPageSetup
BP
%%EndPageSetup
-/F0 10/Times-Roman@0 SF 342.2(READLINE\(3\) READLINE\(3\))72 48 R 2.5
-(":" to)151.2 84 R 2.5("~" self-insert)2.5 F 2.5("C-?" backw)151.2 96 R
-(ard-delete-char)-.1 E(Emacs Meta bindings)151.2 112.8 Q 2.5
-("M-C-G" abort)151.2 136.8 R 2.5("M-C-H" backw)151.2 148.8 R(ard-kill-w)
--.1 E(ord)-.1 E 2.5("M-C-I" tab-insert)151.2 160.8 R 2.5
-("M-C-J" vi-editing-mode)151.2 172.8 R 2.5("M-C-M" vi-editing-mode)151.2
-184.8 R 2.5("M-C-R" re)151.2 196.8 R -.15(ve)-.25 G(rt-line).15 E 2.5
-("M-C-Y" yank-nth-ar)151.2 208.8 R(g)-.18 E 2.5("M-C-[" complete)151.2
-220.8 R 2.5("M-C-]" character)151.2 232.8 R(-search-backw)-.2 E(ard)-.1
-E 2.5("M-space" set-mark)151.2 244.8 R 2.5("M-#" insert-comment)151.2
-256.8 R 2.5("M-&" tilde-e)151.2 268.8 R(xpand)-.15 E 2.5
-("M-*" insert-completions)151.2 280.8 R 2.5("M--" digit-ar)151.2 292.8 R
-(gument)-.18 E 2.5("M-." yank-last-ar)151.2 304.8 R(g)-.18 E 2.5
-("M-0" digit-ar)151.2 316.8 R(gument)-.18 E 2.5("M-1" digit-ar)151.2
-328.8 R(gument)-.18 E 2.5("M-2" digit-ar)151.2 340.8 R(gument)-.18 E 2.5
-("M-3" digit-ar)151.2 352.8 R(gument)-.18 E 2.5("M-4" digit-ar)151.2
-364.8 R(gument)-.18 E 2.5("M-5" digit-ar)151.2 376.8 R(gument)-.18 E 2.5
-("M-6" digit-ar)151.2 388.8 R(gument)-.18 E 2.5("M-7" digit-ar)151.2
-400.8 R(gument)-.18 E 2.5("M-8" digit-ar)151.2 412.8 R(gument)-.18 E 2.5
-("M-9" digit-ar)151.2 424.8 R(gument)-.18 E 2.5("M-<" be)151.2 436.8 R
-(ginning-of-history)-.15 E 2.5("M-=" possible-completions)151.2 448.8 R
-2.5("M->" end-of-history)151.2 460.8 R 2.5("M-?" possible-completions)
-151.2 472.8 R 2.5("M-B" backw)151.2 484.8 R(ard-w)-.1 E(ord)-.1 E 2.5
-("M-C" capitalize-w)151.2 496.8 R(ord)-.1 E 2.5("M-D" kill-w)151.2 508.8
-R(ord)-.1 E 2.5("M-F" forw)151.2 520.8 R(ard-w)-.1 E(ord)-.1 E 2.5
-("M-L" do)151.2 532.8 R(wncase-w)-.25 E(ord)-.1 E 2.5
-("M-N" non-incremental-forw)151.2 544.8 R(ard-search-history)-.1 E 2.5
-("M-P" non-incremental-re)151.2 556.8 R -.15(ve)-.25 G
-(rse-search-history).15 E 2.5("M-R" re)151.2 568.8 R -.15(ve)-.25 G
-(rt-line).15 E 2.5("M-T" transpose-w)151.2 580.8 R(ords)-.1 E 2.5
-("M-U" upcase-w)151.2 592.8 R(ord)-.1 E 2.5("M-Y" yank-pop)151.2 604.8 R
-2.5("M-\\" delete-horizontal-space)151.2 616.8 R 2.5("M-~" tilde-e)151.2
-628.8 R(xpand)-.15 E 2.5("M-C-?" backw)151.2 640.8 R(ard-kill-w)-.1 E
-(ord)-.1 E 2.5("M-_" yank-last-ar)151.2 652.8 R(g)-.18 E
-(Emacs Control-X bindings)151.2 669.6 Q 2.5("C-XC-G" abort)151.2 693.6 R
-2.5("C-XC-R" re-read-init-\214le)151.2 705.6 R 2.5("C-XC-U" undo)151.2
-717.6 R 2.5("C-XC-X" e)151.2 729.6 R(xchange-point-and-mark)-.15 E
-(GNU Readline 6.2)72 768 Q(2010 August 28)127.345 E(12)192.055 E 0 Cg EP
+/F0 10/Times-Roman@0 SF 342.2(READLINE\(3\) READLINE\(3\))72 48 R .188
+(retain that function.)108 84 R .188(Upper and lo)5.188 F .188(wer case\
+ meta\214ed characters are bound to the same function in the emacs)-.25
+F .304(mode meta k)108 96 R -.15(ey)-.1 G 2.804(map. The).15 F .305(rem\
+aining characters are unbound, which causes readline to ring the bell \
+\(subject)2.804 F(to the setting of the)108 108 Q/F1 10/Times-Bold@0 SF
+(bell\255style)2.5 E F0 -.25(va)2.5 G(riable\).).25 E F1(Emacs Mode)87
+124.8 Q F0(Emacs Standard bindings)151.2 136.8 Q 2.5("C-@" set-mark)
+151.2 160.8 R 2.5("C-A" be)151.2 172.8 R(ginning-of-line)-.15 E 2.5
+("C-B" backw)151.2 184.8 R(ard-char)-.1 E 2.5("C-D" delete-char)151.2
+196.8 R 2.5("C-E" end-of-line)151.2 208.8 R 2.5("C-F" forw)151.2 220.8 R
+(ard-char)-.1 E 2.5("C-G" abort)151.2 232.8 R 2.5("C-H" backw)151.2
+244.8 R(ard-delete-char)-.1 E 2.5("C-I" complete)151.2 256.8 R 2.5
+("C-J" accept-line)151.2 268.8 R 2.5("C-K" kill-line)151.2 280.8 R 2.5
+("C-L" clear)151.2 292.8 R(-screen)-.2 E 2.5("C-M" accept-line)151.2
+304.8 R 2.5("C-N" ne)151.2 316.8 R(xt-history)-.15 E 2.5("C-P" pre)151.2
+328.8 R(vious-history)-.25 E 2.5("C-Q" quoted-insert)151.2 340.8 R 2.5
+("C-R" re)151.2 352.8 R -.15(ve)-.25 G(rse-search-history).15 E 2.5
+("C-S" forw)151.2 364.8 R(ard-search-history)-.1 E 2.5
+("C-T" transpose-chars)151.2 376.8 R 2.5("C-U" unix-line-discard)151.2
+388.8 R 2.5("C-V" quoted-insert)151.2 400.8 R 2.5("C-W" unix-w)151.2
+412.8 R(ord-rubout)-.1 E 2.5("C-Y" yank)151.2 424.8 R 2.5
+("C-]" character)151.2 436.8 R(-search)-.2 E 2.5("C-_" undo)151.2 448.8
+R 3.333("")151.2 460.8 S(to "/")-.833 E(self-insert)5 E 2.5("0" to)151.2
+472.8 R 2.5("9" self-insert)2.5 F 2.5(":" to)151.2 484.8 R 2.5
+("~" self-insert)2.5 F 2.5("C-?" backw)151.2 496.8 R(ard-delete-char)-.1
+E(Emacs Meta bindings)151.2 513.6 Q 2.5("M-C-G" abort)151.2 537.6 R 2.5
+("M-C-H" backw)151.2 549.6 R(ard-kill-w)-.1 E(ord)-.1 E 2.5
+("M-C-I" tab-insert)151.2 561.6 R 2.5("M-C-J" vi-editing-mode)151.2
+573.6 R 2.5("M-C-M" vi-editing-mode)151.2 585.6 R 2.5("M-C-R" re)151.2
+597.6 R -.15(ve)-.25 G(rt-line).15 E 2.5("M-C-Y" yank-nth-ar)151.2 609.6
+R(g)-.18 E 2.5("M-C-[" complete)151.2 621.6 R 2.5("M-C-]" character)
+151.2 633.6 R(-search-backw)-.2 E(ard)-.1 E 2.5("M-space" set-mark)151.2
+645.6 R 2.5("M-#" insert-comment)151.2 657.6 R 2.5("M-&" tilde-e)151.2
+669.6 R(xpand)-.15 E 2.5("M-*" insert-completions)151.2 681.6 R 2.5
+("M--" digit-ar)151.2 693.6 R(gument)-.18 E 2.5("M-." yank-last-ar)151.2
+705.6 R(g)-.18 E 2.5("M-0" digit-ar)151.2 717.6 R(gument)-.18 E 2.5
+("M-1" digit-ar)151.2 729.6 R(gument)-.18 E(GNU Readline 6.3)72 768 Q
+(2014 January 6)128.74 E(12)193.45 E 0 Cg EP
%%Page: 13 13
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF 342.2(READLINE\(3\) READLINE\(3\))72 48 R 2.5
-("C-X\(" start-kbd-macro)151.2 84 R 2.5("C-X\)" end-kbd-macro)151.2 96 R
-2.5("C-XE" call-last-kbd-macro)151.2 108 R 2.5("C-XC-?" backw)151.2 120
-R(ard-kill-line)-.1 E/F1 10/Times-Bold@0 SF(VI Mode bindings)87 148.8 Q
-F0(VI Insert Mode functions)151.2 160.8 Q 2.5("C-D" vi-eof-maybe)151.2
-184.8 R 2.5("C-H" backw)151.2 196.8 R(ard-delete-char)-.1 E 2.5
-("C-I" complete)151.2 208.8 R 2.5("C-J" accept-line)151.2 220.8 R 2.5
-("C-M" accept-line)151.2 232.8 R 2.5("C-R" re)151.2 244.8 R -.15(ve)-.25
-G(rse-search-history).15 E 2.5("C-S" forw)151.2 256.8 R
-(ard-search-history)-.1 E 2.5("C-T" transpose-chars)151.2 268.8 R 2.5
-("C-U" unix-line-discard)151.2 280.8 R 2.5("C-V" quoted-insert)151.2
-292.8 R 2.5("C-W" unix-w)151.2 304.8 R(ord-rubout)-.1 E 2.5("C-Y" yank)
-151.2 316.8 R 2.5("C-[" vi-mo)151.2 328.8 R -.15(ve)-.15 G(ment-mode).15
-E 2.5("C-_" undo)151.2 340.8 R 3.333("")151.2 352.8 S(to "~")-.833 E
-(self-insert)5 E 2.5("C-?" backw)151.2 364.8 R(ard-delete-char)-.1 E
-(VI Command Mode functions)151.2 381.6 Q 2.5("C-D" vi-eof-maybe)151.2
-405.6 R 2.5("C-E" emacs-editing-mode)151.2 417.6 R 2.5("C-G" abort)151.2
-429.6 R 2.5("C-H" backw)151.2 441.6 R(ard-char)-.1 E 2.5
-("C-J" accept-line)151.2 453.6 R 2.5("C-K" kill-line)151.2 465.6 R 2.5
-("C-L" clear)151.2 477.6 R(-screen)-.2 E 2.5("C-M" accept-line)151.2
-489.6 R 2.5("C-N" ne)151.2 501.6 R(xt-history)-.15 E 2.5("C-P" pre)151.2
-513.6 R(vious-history)-.25 E 2.5("C-Q" quoted-insert)151.2 525.6 R 2.5
-("C-R" re)151.2 537.6 R -.15(ve)-.25 G(rse-search-history).15 E 2.5
-("C-S" forw)151.2 549.6 R(ard-search-history)-.1 E 2.5
-("C-T" transpose-chars)151.2 561.6 R 2.5("C-U" unix-line-discard)151.2
-573.6 R 2.5("C-V" quoted-insert)151.2 585.6 R 2.5("C-W" unix-w)151.2
-597.6 R(ord-rubout)-.1 E 2.5("C-Y" yank)151.2 609.6 R 2.5("C-_" vi-undo)
-151.2 621.6 R -4.166 3.333("" f)151.2 633.6 T(orw)-3.333 E(ard-char)-.1
-E 2.5("#" insert-comment)151.2 645.6 R 2.5("$" end-of-line)151.2 657.6 R
-2.5("%" vi-match)151.2 669.6 R 2.5("&" vi-tilde-e)151.2 681.6 R(xpand)
--.15 E 2.5("*" vi-complete)151.2 693.6 R 2.5("+" ne)151.2 705.6 R
-(xt-history)-.15 E 2.5("," vi-char)151.2 717.6 R(-search)-.2 E 2.5
-("-" pre)151.2 729.6 R(vious-history)-.25 E(GNU Readline 6.2)72 768 Q
-(2010 August 28)127.345 E(13)192.055 E 0 Cg EP
+("M-2" digit-ar)151.2 84 R(gument)-.18 E 2.5("M-3" digit-ar)151.2 96 R
+(gument)-.18 E 2.5("M-4" digit-ar)151.2 108 R(gument)-.18 E 2.5
+("M-5" digit-ar)151.2 120 R(gument)-.18 E 2.5("M-6" digit-ar)151.2 132 R
+(gument)-.18 E 2.5("M-7" digit-ar)151.2 144 R(gument)-.18 E 2.5
+("M-8" digit-ar)151.2 156 R(gument)-.18 E 2.5("M-9" digit-ar)151.2 168 R
+(gument)-.18 E 2.5("M-<" be)151.2 180 R(ginning-of-history)-.15 E 2.5
+("M-=" possible-completions)151.2 192 R 2.5("M->" end-of-history)151.2
+204 R 2.5("M-?" possible-completions)151.2 216 R 2.5("M-B" backw)151.2
+228 R(ard-w)-.1 E(ord)-.1 E 2.5("M-C" capitalize-w)151.2 240 R(ord)-.1 E
+2.5("M-D" kill-w)151.2 252 R(ord)-.1 E 2.5("M-F" forw)151.2 264 R(ard-w)
+-.1 E(ord)-.1 E 2.5("M-L" do)151.2 276 R(wncase-w)-.25 E(ord)-.1 E 2.5
+("M-N" non-incremental-forw)151.2 288 R(ard-search-history)-.1 E 2.5
+("M-P" non-incremental-re)151.2 300 R -.15(ve)-.25 G(rse-search-history)
+.15 E 2.5("M-R" re)151.2 312 R -.15(ve)-.25 G(rt-line).15 E 2.5
+("M-T" transpose-w)151.2 324 R(ords)-.1 E 2.5("M-U" upcase-w)151.2 336 R
+(ord)-.1 E 2.5("M-Y" yank-pop)151.2 348 R 2.5
+("M-\\" delete-horizontal-space)151.2 360 R 2.5("M-~" tilde-e)151.2 372
+R(xpand)-.15 E 2.5("M-C-?" backw)151.2 384 R(ard-kill-w)-.1 E(ord)-.1 E
+2.5("M-_" yank-last-ar)151.2 396 R(g)-.18 E(Emacs Control-X bindings)
+151.2 412.8 Q 2.5("C-XC-G" abort)151.2 436.8 R 2.5
+("C-XC-R" re-read-init-\214le)151.2 448.8 R 2.5("C-XC-U" undo)151.2
+460.8 R 2.5("C-XC-X" e)151.2 472.8 R(xchange-point-and-mark)-.15 E 2.5
+("C-X\(" start-kbd-macro)151.2 484.8 R 2.5("C-X\)" end-kbd-macro)151.2
+496.8 R 2.5("C-XE" call-last-kbd-macro)151.2 508.8 R 2.5("C-XC-?" backw)
+151.2 520.8 R(ard-kill-line)-.1 E/F1 10/Times-Bold@0 SF
+(VI Mode bindings)87 549.6 Q F0(VI Insert Mode functions)151.2 561.6 Q
+2.5("C-D" vi-eof-maybe)151.2 585.6 R 2.5("C-H" backw)151.2 597.6 R
+(ard-delete-char)-.1 E 2.5("C-I" complete)151.2 609.6 R 2.5
+("C-J" accept-line)151.2 621.6 R 2.5("C-M" accept-line)151.2 633.6 R 2.5
+("C-R" re)151.2 645.6 R -.15(ve)-.25 G(rse-search-history).15 E 2.5
+("C-S" forw)151.2 657.6 R(ard-search-history)-.1 E 2.5
+("C-T" transpose-chars)151.2 669.6 R 2.5("C-U" unix-line-discard)151.2
+681.6 R 2.5("C-V" quoted-insert)151.2 693.6 R 2.5("C-W" unix-w)151.2
+705.6 R(ord-rubout)-.1 E 2.5("C-Y" yank)151.2 717.6 R 2.5("C-[" vi-mo)
+151.2 729.6 R -.15(ve)-.15 G(ment-mode).15 E(GNU Readline 6.3)72 768 Q
+(2014 January 6)128.74 E(13)193.45 E 0 Cg EP
%%Page: 14 14
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF 342.2(READLINE\(3\) READLINE\(3\))72 48 R 2.5
-("." vi-redo)151.2 84 R 2.5("/" vi-search)151.2 96 R 2.5("0" be)151.2
-108 R(ginning-of-line)-.15 E("1" to "9")151.2 120 Q(vi-ar)5 E(g-digit)
--.18 E 2.5(";" vi-char)151.2 132 R(-search)-.2 E 2.5("=" vi-complete)
-151.2 144 R 2.5("?" vi-search)151.2 156 R 2.5("A" vi-append-eol)151.2
-168 R 2.5("B" vi-pre)151.2 180 R(v-w)-.25 E(ord)-.1 E 2.5
-("C" vi-change-to)151.2 192 R 2.5("D" vi-delete-to)151.2 204 R 2.5
-("E" vi-end-w)151.2 216 R(ord)-.1 E 2.5("F" vi-char)151.2 228 R(-search)
--.2 E 2.5("G" vi-fetch-history)151.2 240 R 2.5("I" vi-insert-be)151.2
-252 R(g)-.15 E 2.5("N" vi-search-ag)151.2 264 R(ain)-.05 E 2.5
-("P" vi-put)151.2 276 R 2.5("R" vi-replace)151.2 288 R 2.5("S" vi-subst)
-151.2 300 R 2.5("T" vi-char)151.2 312 R(-search)-.2 E 2.5("U" re)151.2
-324 R -.15(ve)-.25 G(rt-line).15 E 2.5("W" vi-ne)151.2 336 R(xt-w)-.15 E
-(ord)-.1 E 2.5("X" backw)151.2 348 R(ard-delete-char)-.1 E 2.5
-("Y" vi-yank-to)151.2 360 R 2.5("\\" vi-complete)151.2 372 R 2.5
-("^" vi-\214rst-print)151.2 384 R 2.5("_" vi-yank-ar)151.2 396 R(g)-.18
-E 2.5("`" vi-goto-mark)151.2 408 R 2.5("a" vi-append-mode)151.2 420 R
-2.5("b" vi-pre)151.2 432 R(v-w)-.25 E(ord)-.1 E 2.5("c" vi-change-to)
-151.2 444 R 2.5("d" vi-delete-to)151.2 456 R 2.5("e" vi-end-w)151.2 468
-R(ord)-.1 E 2.5("f" vi-char)151.2 480 R(-search)-.2 E 2.5("h" backw)
-151.2 492 R(ard-char)-.1 E 2.5("i" vi-insertion-mode)151.2 504 R 2.5
-("j" ne)151.2 516 R(xt-history)-.15 E 2.5("k" pre)151.2 528 R(v-history)
--.25 E 2.5("l" forw)151.2 540 R(ard-char)-.1 E 2.5("m" vi-set-mark)151.2
-552 R 2.5("n" vi-search-ag)151.2 564 R(ain)-.05 E 2.5("p" vi-put)151.2
-576 R 2.5("r" vi-change-char)151.2 588 R 2.5("s" vi-subst)151.2 600 R
-2.5("t" vi-char)151.2 612 R(-search)-.2 E 2.5("u" vi-undo)151.2 624 R
-2.5("w" vi-ne)151.2 636 R(xt-w)-.15 E(ord)-.1 E 2.5("x" vi-delete)151.2
-648 R 2.5("y" vi-yank-to)151.2 660 R 2.5("|" vi-column)151.2 672 R 2.5
-("~" vi-change-case)151.2 684 R/F1 10.95/Times-Bold@0 SF(SEE ALSO)72
-700.8 Q F0(GNU Readline 6.2)72 768 Q(2010 August 28)127.345 E(14)192.055
-E 0 Cg EP
+("C-_" undo)151.2 84 R 3.333("")151.2 96 S(to "~")-.833 E(self-insert)5
+E 2.5("C-?" backw)151.2 108 R(ard-delete-char)-.1 E
+(VI Command Mode functions)151.2 124.8 Q 2.5("C-D" vi-eof-maybe)151.2
+148.8 R 2.5("C-E" emacs-editing-mode)151.2 160.8 R 2.5("C-G" abort)151.2
+172.8 R 2.5("C-H" backw)151.2 184.8 R(ard-char)-.1 E 2.5
+("C-J" accept-line)151.2 196.8 R 2.5("C-K" kill-line)151.2 208.8 R 2.5
+("C-L" clear)151.2 220.8 R(-screen)-.2 E 2.5("C-M" accept-line)151.2
+232.8 R 2.5("C-N" ne)151.2 244.8 R(xt-history)-.15 E 2.5("C-P" pre)151.2
+256.8 R(vious-history)-.25 E 2.5("C-Q" quoted-insert)151.2 268.8 R 2.5
+("C-R" re)151.2 280.8 R -.15(ve)-.25 G(rse-search-history).15 E 2.5
+("C-S" forw)151.2 292.8 R(ard-search-history)-.1 E 2.5
+("C-T" transpose-chars)151.2 304.8 R 2.5("C-U" unix-line-discard)151.2
+316.8 R 2.5("C-V" quoted-insert)151.2 328.8 R 2.5("C-W" unix-w)151.2
+340.8 R(ord-rubout)-.1 E 2.5("C-Y" yank)151.2 352.8 R 2.5("C-_" vi-undo)
+151.2 364.8 R -4.166 3.333("" f)151.2 376.8 T(orw)-3.333 E(ard-char)-.1
+E 2.5("#" insert-comment)151.2 388.8 R 2.5("$" end-of-line)151.2 400.8 R
+2.5("%" vi-match)151.2 412.8 R 2.5("&" vi-tilde-e)151.2 424.8 R(xpand)
+-.15 E 2.5("*" vi-complete)151.2 436.8 R 2.5("+" ne)151.2 448.8 R
+(xt-history)-.15 E 2.5("," vi-char)151.2 460.8 R(-search)-.2 E 2.5
+("-" pre)151.2 472.8 R(vious-history)-.25 E 2.5("." vi-redo)151.2 484.8
+R 2.5("/" vi-search)151.2 496.8 R 2.5("0" be)151.2 508.8 R
+(ginning-of-line)-.15 E("1" to "9")151.2 520.8 Q(vi-ar)5 E(g-digit)-.18
+E 2.5(";" vi-char)151.2 532.8 R(-search)-.2 E 2.5("=" vi-complete)151.2
+544.8 R 2.5("?" vi-search)151.2 556.8 R 2.5("A" vi-append-eol)151.2
+568.8 R 2.5("B" vi-pre)151.2 580.8 R(v-w)-.25 E(ord)-.1 E 2.5
+("C" vi-change-to)151.2 592.8 R 2.5("D" vi-delete-to)151.2 604.8 R 2.5
+("E" vi-end-w)151.2 616.8 R(ord)-.1 E 2.5("F" vi-char)151.2 628.8 R
+(-search)-.2 E 2.5("G" vi-fetch-history)151.2 640.8 R 2.5
+("I" vi-insert-be)151.2 652.8 R(g)-.15 E 2.5("N" vi-search-ag)151.2
+664.8 R(ain)-.05 E 2.5("P" vi-put)151.2 676.8 R 2.5("R" vi-replace)151.2
+688.8 R 2.5("S" vi-subst)151.2 700.8 R 2.5("T" vi-char)151.2 712.8 R
+(-search)-.2 E 2.5("U" re)151.2 724.8 R -.15(ve)-.25 G(rt-line).15 E
+(GNU Readline 6.3)72 768 Q(2014 January 6)128.74 E(14)193.45 E 0 Cg EP
%%Page: 15 15
%%BeginPageSetup
BP
%%EndPageSetup
-/F0 10/Times-Roman@0 SF 342.2(READLINE\(3\) READLINE\(3\))72 48 R/F1 10
-/Times-Italic@0 SF(The Gnu Readline Libr)108 84 Q(ary)-.15 E F0 2.5(,B)C
-(rian F)-2.5 E(ox and Chet Rame)-.15 E(y)-.15 E F1(The Gnu History Libr)
-108 96 Q(ary)-.15 E F0 2.5(,B)C(rian F)-2.5 E(ox and Chet Rame)-.15 E(y)
--.15 E F1(bash)108 108 Q F0(\(1\))A/F2 10.95/Times-Bold@0 SF(FILES)72
-124.8 Q F1(~/.inputr)109.666 136.8 Q(c)-.37 E F0(Indi)144 148.8 Q
-(vidual)-.25 E/F3 10/Times-Bold@0 SF -.18(re)2.5 G(adline).18 E F0
-(initialization \214le)2.5 E F2 -.548(AU)72 165.6 S(THORS).548 E F0
-(Brian F)108 177.6 Q(ox, Free Softw)-.15 E(are F)-.1 E(oundation)-.15 E
-(bfox@gnu.or)108 189.6 Q(g)-.18 E(Chet Rame)108 206.4 Q 1.3 -.65(y, C)
+/F0 10/Times-Roman@0 SF 342.2(READLINE\(3\) READLINE\(3\))72 48 R 2.5
+("W" vi-ne)151.2 84 R(xt-w)-.15 E(ord)-.1 E 2.5("X" backw)151.2 96 R
+(ard-delete-char)-.1 E 2.5("Y" vi-yank-to)151.2 108 R 2.5
+("\\" vi-complete)151.2 120 R 2.5("^" vi-\214rst-print)151.2 132 R 2.5
+("_" vi-yank-ar)151.2 144 R(g)-.18 E 2.5("`" vi-goto-mark)151.2 156 R
+2.5("a" vi-append-mode)151.2 168 R 2.5("b" vi-pre)151.2 180 R(v-w)-.25 E
+(ord)-.1 E 2.5("c" vi-change-to)151.2 192 R 2.5("d" vi-delete-to)151.2
+204 R 2.5("e" vi-end-w)151.2 216 R(ord)-.1 E 2.5("f" vi-char)151.2 228 R
+(-search)-.2 E 2.5("h" backw)151.2 240 R(ard-char)-.1 E 2.5
+("i" vi-insertion-mode)151.2 252 R 2.5("j" ne)151.2 264 R(xt-history)
+-.15 E 2.5("k" pre)151.2 276 R(v-history)-.25 E 2.5("l" forw)151.2 288 R
+(ard-char)-.1 E 2.5("m" vi-set-mark)151.2 300 R 2.5("n" vi-search-ag)
+151.2 312 R(ain)-.05 E 2.5("p" vi-put)151.2 324 R 2.5
+("r" vi-change-char)151.2 336 R 2.5("s" vi-subst)151.2 348 R 2.5
+("t" vi-char)151.2 360 R(-search)-.2 E 2.5("u" vi-undo)151.2 372 R 2.5
+("w" vi-ne)151.2 384 R(xt-w)-.15 E(ord)-.1 E 2.5("x" vi-delete)151.2 396
+R 2.5("y" vi-yank-to)151.2 408 R 2.5("|" vi-column)151.2 420 R 2.5
+("~" vi-change-case)151.2 432 R/F1 10.95/Times-Bold@0 SF(SEE ALSO)72
+448.8 Q/F2 10/Times-Italic@0 SF(The Gnu Readline Libr)108 460.8 Q(ary)
+-.15 E F0 2.5(,B)C(rian F)-2.5 E(ox and Chet Rame)-.15 E(y)-.15 E F2
+(The Gnu History Libr)108 472.8 Q(ary)-.15 E F0 2.5(,B)C(rian F)-2.5 E
+(ox and Chet Rame)-.15 E(y)-.15 E F2(bash)108 484.8 Q F0(\(1\))A F1
+(FILES)72 501.6 Q F2(~/.inputr)109.666 513.6 Q(c)-.37 E F0(Indi)144
+525.6 Q(vidual)-.25 E/F3 10/Times-Bold@0 SF -.18(re)2.5 G(adline).18 E
+F0(initialization \214le)2.5 E F1 -.548(AU)72 542.4 S(THORS).548 E F0
+(Brian F)108 554.4 Q(ox, Free Softw)-.15 E(are F)-.1 E(oundation)-.15 E
+(bfox@gnu.or)108 566.4 Q(g)-.18 E(Chet Rame)108 583.2 Q 1.3 -.65(y, C)
-.15 H(ase W).65 E(estern Reserv)-.8 E 2.5(eU)-.15 G(ni)-2.5 E -.15(ve)
--.25 G(rsity).15 E(chet@ins.CWR)108 218.4 Q(U.Edu)-.4 E F2 -.11(BU)72
-235.2 S 2.738(GR).11 G(EPOR)-2.738 E(TS)-.438 E F0 .691
-(If you \214nd a b)108 247.2 R .691(ug in)-.2 F F3 -.18(re)3.191 G
-(adline,).18 E F0 .691(you should report it.)3.191 F .69
-(But \214rst, you should mak)5.69 F 3.19(es)-.1 G .69
-(ure that it really is a b)-3.19 F(ug,)-.2 E
-(and that it appears in the latest v)108 259.2 Q(ersion of the)-.15 E F3
+-.25 G(rsity).15 E(chet.rame)108 595.2 Q(y@case.edu)-.15 E F1 -.11(BU)72
+612 S 2.738(GR).11 G(EPOR)-2.738 E(TS)-.438 E F0 .691(If you \214nd a b)
+108 624 R .691(ug in)-.2 F F3 -.18(re)3.191 G(adline,).18 E F0 .691
+(you should report it.)3.191 F .69(But \214rst, you should mak)5.69 F
+3.19(es)-.1 G .69(ure that it really is a b)-3.19 F(ug,)-.2 E
+(and that it appears in the latest v)108 636 Q(ersion of the)-.15 E F3
-.18(re)2.5 G(adline).18 E F0(library that you ha)2.5 E -.15(ve)-.2 G(.)
-.15 E .704(Once you ha)108 276 R 1.004 -.15(ve d)-.2 H .704
+.15 E .704(Once you ha)108 652.8 R 1.004 -.15(ve d)-.2 H .704
(etermined that a b).15 F .704(ug actually e)-.2 F .704(xists, mail a b)
--.15 F .705(ug report to)-.2 F F1 -.2(bu)3.205 G(g\255r).2 E(eadline)
--.37 E F0(@)A F1(gnu.or)A(g)-.37 E F0 5.705(.I)C 3.205(fy)-5.705 G(ou)
--3.205 E(ha)108 288 Q 1.81 -.15(ve a \214)-.2 H 1.51
+-.15 F .705(ug report to)-.2 F F2 -.2(bu)3.205 G(g\255r).2 E(eadline)
+-.37 E F0(@)A F2(gnu.or)A(g)-.37 E F0 5.705(.I)C 3.205(fy)-5.705 G(ou)
+-3.205 E(ha)108 664.8 Q 1.81 -.15(ve a \214)-.2 H 1.51
(x, you are welcome to mail that as well!).15 F 1.509
(Suggestions and `philosophical' b)6.509 F 1.509(ug reports may be)-.2 F
-(mailed to)108 300 Q F1 -.2(bu)2.5 G(g-r).2 E(eadline)-.37 E F0(@)A F1
+(mailed to)108 676.8 Q F2 -.2(bu)2.5 G(g-r).2 E(eadline)-.37 E F0(@)A F2
(gnu.or)A(g)-.37 E F0(or posted to the Usenet ne)2.5 E(wsgroup)-.25 E F3
-(gnu.bash.b)2.5 E(ug)-.2 E F0(.)A(Comments and b)108 316.8 Q
-(ug reports concerning this manual page should be directed to)-.2 E F1
--.15(ch)2.5 G(et@ins.CWR).15 E -.25(U.)-.4 G(Edu).25 E F0(.).25 E F2
--.11(BU)72 333.6 S(GS).11 E F0(It')108 345.6 Q 2.5(st)-.55 G
-(oo big and too slo)-2.5 E -.65(w.)-.25 G(GNU Readline 6.2)72 768 Q
-(2010 August 28)127.345 E(15)192.055 E 0 Cg EP
+(gnu.bash.b)2.5 E(ug)-.2 E F0(.)A(Comments and b)108 693.6 Q
+(ug reports concerning this manual page should be directed to)-.2 E F2
+-.15(ch)2.5 G(et.r).15 E(ame)-.15 E(y@case)-.3 E(.edu)-.15 E F0(.).25 E
+(GNU Readline 6.3)72 768 Q(2014 January 6)128.74 E(15)193.45 E 0 Cg EP
+%%Page: 16 16
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF 342.2(READLINE\(3\) READLINE\(3\))72 48 R/F1
+10.95/Times-Bold@0 SF -.11(BU)72 84 S(GS).11 E F0(It')108 96 Q 2.5(st)
+-.55 G(oo big and too slo)-2.5 E -.65(w.)-.25 G(GNU Readline 6.3)72 768
+Q(2014 January 6)128.74 E(16)193.45 E 0 Cg EP
%%Trailer
end
%%EOF
diff --git a/doc/rlman.texi b/doc/rlman.texi
index 1c9ac13..17a8292 100644
--- a/doc/rlman.texi
+++ b/doc/rlman.texi
@@ -2,34 +2,26 @@
@comment %**start of header (This is for running Texinfo on a region.)
@setfilename readline.info
@settitle GNU Readline Library
+@include version.texi
+
@comment %**end of header (This is for running Texinfo on a region.)
@synindex vr fn
-@include version.texi
-
@copying
This manual describes the GNU Readline Library
(version @value{VERSION}, @value{UPDATED}), a library which aids in the
consistency of user interface across discrete programs which provide
a command line interface.
-Copyright @copyright{} 1988--2011 Free Software Foundation, Inc.
-
-Permission is granted to make and distribute verbatim copies of
-this manual provided the copyright notice and this permission notice
-are preserved on all copies.
+Copyright @copyright{} 1988--2014 Free Software Foundation, Inc.
@quotation
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with no
-Invariant Sections, with the Front-Cover texts being ``A GNU Manual'',
-and with the Back-Cover Texts as in (a) below. A copy of the license is
-included in the section entitled ``GNU Free Documentation License''.
-
-(a) The FSF's Back-Cover Text is: You are free to copy and modify
-this GNU manual. Buying copies from GNU Press supports the FSF in
-developing GNU and promoting software freedom.''
+Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
+A copy of the license is included in the section entitled
+``GNU Free Documentation License''.
@end quotation
@end copying
@@ -50,12 +42,6 @@ developing GNU and promoting software freedom.''
@vskip 0pt plus 1filll
@insertcopying
-@sp 1
-Published by the Free Software Foundation @*
-59 Temple Place, Suite 330, @*
-Boston, MA 02111-1307 @*
-USA @*
-
@end titlepage
@contents
@@ -67,6 +53,7 @@ USA @*
This document describes the GNU Readline Library, a utility which aids
in the consistency of user interface across discrete programs which
provide a command line interface.
+The Readline home page is @url{http://www.gnu.org/software/readline/}.
@menu
* Command Line Editing:: GNU Readline User's Manual.
diff --git a/doc/rltech.texi b/doc/rltech.texi
index dc272a2..40de49c 100644
--- a/doc/rltech.texi
+++ b/doc/rltech.texi
@@ -7,7 +7,7 @@ This document describes the GNU Readline Library, a utility for aiding
in the consistency of user interface across discrete programs that need
to provide a command line interface.
-Copyright (C) 1988--2011 Free Software Foundation, Inc.
+Copyright (C) 1988--2014 Free Software Foundation, Inc.
Permission is granted to make and distribute verbatim copies of
this manual provided the copyright notice and this permission notice
@@ -195,7 +195,7 @@ For Readline 4.2, for example, the value of
@node Readline Typedefs
@subsection Readline Typedefs
-For readabilty, we declare a number of new object types, all pointers
+For readability, we declare a number of new object types, all pointers
to functions.
The reason for declaring these new types is to make it easier to write
@@ -440,6 +440,35 @@ If non-zero, Readline will call indirectly through this pointer
to get a character from the input stream. By default, it is set to
@code{rl_getc}, the default Readline character input function
(@pxref{Character Input}).
+In general, an application that sets @var{rl_getc_function} should consider
+setting @var{rl_input_available_hook} as well.
+@end deftypevar
+
+@deftypevar {rl_hook_func_t *} rl_signal_event_hook
+If non-zero, this is the address of a function to call if a read system
+call is interrupted when Readline is reading terminal input.
+@end deftypevar
+
+@deftypevar {rl_hook_func_t *} rl_input_available_hook
+If non-zero, Readline will use this function's return value when it needs
+to determine whether or not there is available input on the current input
+source.
+The default hook checks @code{rl_instream}; if an application is using a
+different input source, it should set the hook appropriately.
+Readline queries for available input when implementing intra-key-sequence
+timeouts during input and incremental searches.
+This may use an application-specific timeout before returning a value;
+Readline uses the value passed to @code{rl_set_keyboard_input_timeout()}
+or the value of the user-settable @var{keyseq-timeout} variable.
+This is designed for use by applications using Readline's callback interface
+(@pxref{Alternate Interface}), which may not use the traditional
+@code{read(2)} and file descriptor interface, or other applications using
+a different input mechanism.
+If an application uses an input mechanism or hook that can potentially exceed
+the value of @var{keyseq-timeout}, it should increase the timeout or set
+this hook appropriately even when not using the callback interface.
+In general, an application that sets @var{rl_getc_function} should consider
+setting @var{rl_input_available_hook} as well.
@end deftypevar
@deftypevar {rl_voidfunc_t *} rl_redisplay_function
@@ -479,6 +508,19 @@ last key binding occurred.
This variable is set to the text of any currently-executing macro.
@end deftypevar
+@deftypevar int rl_executing_key
+The key that caused the dispatch to the currently-executing Readline function.
+@end deftypevar
+
+@deftypevar {char *} rl_executing_keyseq
+The full key sequence that caused the dispatch to the currently-executing
+Readline function.
+@end deftypevar
+
+@deftypevar int rl_key_sequence_length
+The number of characters in @var{rl_executing_keyseq}.
+@end deftypevar
+
@deftypevar {int} rl_readline_state
A variable with bit values that encapsulate the current Readline state.
A bit is set with the @code{RL_SETSTATE} macro, and unset with the
@@ -487,7 +529,7 @@ whether a particular state bit is set. Current state bits include:
@table @code
@item RL_STATE_NONE
-Readline has not yet been called, nor has it begun to intialize.
+Readline has not yet been called, nor has it begun to initialize.
@item RL_STATE_INITIALIZING
Readline is initializing its internal data structures.
@item RL_STATE_INITIALIZED
@@ -580,6 +622,7 @@ means that vi mode is active.
* Miscellaneous Functions:: Functions that don't fall into any category.
* Alternate Interface:: Using Readline in a `callback' fashion.
* A Readline Example:: An example Readline function.
+* Alternate Interface Example:: An example program using the alternate interface.
@end menu
@node Function Naming
@@ -908,7 +951,7 @@ Readline thinks the screen display is correct.
@deftypefun int rl_on_new_line (void)
Tell the update functions that we have moved onto a new (empty) line,
-usually after ouputting a newline.
+usually after outputting a newline.
@end deftypefun
@deftypefun int rl_on_new_line_with_prompt (void)
@@ -1241,21 +1284,29 @@ use all of a terminal's capabilities, and this function will return
values for only those capabilities Readline uses.
@end deftypefun
+@deftypefun {void} rl_clear_history (void)
+Clear the history list by deleting all of the entries, in the same manner
+as the History library's @code{clear_history()} function.
+This differs from @code{clear_history} because it frees private data
+Readline saves in the history list.
+@end deftypefun
+
@node Alternate Interface
@subsection Alternate Interface
An alternate interface is available to plain @code{readline()}. Some
applications need to interleave keyboard I/O with file, device, or
window system I/O, typically by using a main loop to @code{select()}
-on various file descriptors. To accomodate this need, readline can
+on various file descriptors. To accommodate this need, readline can
also be invoked as a `callback' function from an event loop. There
are functions available to make this easy.
@deftypefun void rl_callback_handler_install (const char *prompt, rl_vcpfunc_t *lhandler)
Set up the terminal for readline I/O and display the initial
expanded value of @var{prompt}. Save the value of @var{lhandler} to
-use as a function to call when a complete line of input has been entered.
-The function takes the text of the line as an argument.
+use as a handler function to call when a complete line of input has been
+entered.
+The handler function receives the text of the line as an argument.
@end deftypefun
@deftypefun void rl_callback_read_char (void)
@@ -1263,14 +1314,15 @@ Whenever an application determines that keyboard input is available, it
should call @code{rl_callback_read_char()}, which will read the next
character from the current input source.
If that character completes the line, @code{rl_callback_read_char} will
-invoke the @var{lhandler} function saved by @code{rl_callback_handler_install}
-to process the line.
+invoke the @var{lhandler} function installed by
+@code{rl_callback_handler_install} to process the line.
Before calling the @var{lhandler} function, the terminal settings are
reset to the values they had before calling
@code{rl_callback_handler_install}.
If the @var{lhandler} function returns,
+and the line handler remains installed,
the terminal settings are modified for Readline's use again.
-@code{EOF} is indicated by calling @var{lhandler} with a
+@code{EOF} is indicated by calling @var{lhandler} with a
@code{NULL} line.
@end deftypefun
@@ -1350,6 +1402,98 @@ invert_case_line (count, key)
@}
@end example
+@node Alternate Interface Example
+@subsection Alternate Interface Example
+
+Here is a complete program that illustrates Readline's alternate interface.
+It reads lines from the terminal and displays them, providing the
+standard history and TAB completion functions.
+It understands the EOF character or "exit" to exit the program.
+
+@example
+/* Standard include files. stdio.h is required. */
+#include <stdlib.h>
+#include <unistd.h>
+
+/* Used for select(2) */
+#include <sys/types.h>
+#include <sys/select.h>
+
+#include <stdio.h>
+
+/* Standard readline include files. */
+#include <readline/readline.h>
+#include <readline/history.h>
+
+static void cb_linehandler (char *);
+
+int running;
+const char *prompt = "rltest$ ";
+
+/* Callback function called for each line when accept-line executed, EOF
+ seen, or EOF character read. This sets a flag and returns; it could
+ also call exit(3). */
+static void
+cb_linehandler (char *line)
+@{
+ /* Can use ^D (stty eof) or `exit' to exit. */
+ if (line == NULL || strcmp (line, "exit") == 0)
+ @{
+ if (line == 0)
+ printf ("\n");
+ printf ("exit\n");
+ /* This function needs to be called to reset the terminal settings,
+ and calling it from the line handler keeps one extra prompt from
+ being displayed. */
+ rl_callback_handler_remove ();
+
+ running = 0;
+ @}
+ else
+ @{
+ if (*line)
+ add_history (line);
+ printf ("input line: %s\n", line);
+ free (line);
+ @}
+@}
+
+int
+main (int c, char **v)
+@{
+ fd_set fds;
+ int r;
+
+ /* Install the line handler. */
+ rl_callback_handler_install (prompt, cb_linehandler);
+
+ /* Enter a simple event loop. This waits until something is available
+ to read on readline's input stream (defaults to standard input) and
+ calls the builtin character read callback to read it. It does not
+ have to modify the user's terminal settings. */
+ running = 1;
+ while (running)
+ @{
+ FD_ZERO (&fds);
+ FD_SET (fileno (rl_instream), &fds);
+
+ r = select (FD_SETSIZE, &fds, NULL, NULL, NULL);
+ if (r < 0)
+ @{
+ perror ("rltest: select");
+ rl_callback_handler_remove ();
+ break;
+ @}
+
+ if (FD_ISSET (fileno (rl_instream), &fds))
+ rl_callback_read_char ();
+ @}
+
+ printf ("rltest: Event loop has exited\n");
+ return 0;
+@}
+@end example
+
@node Readline Signal Handling
@section Readline Signal Handling
@@ -1365,6 +1509,7 @@ functions to do so manually.
Readline contains an internal signal handler that is installed for a
number of signals (@code{SIGINT}, @code{SIGQUIT}, @code{SIGTERM},
+@code{SIGHUP},
@code{SIGALRM}, @code{SIGTSTP}, @code{SIGTTIN}, and @code{SIGTTOU}).
When one of these signals is received, the signal handler
will reset the terminal attributes to those that were in effect before
@@ -1397,19 +1542,28 @@ a signal handler, so Readline's internal signal state is not corrupted.
@deftypevar int rl_catch_signals
If this variable is non-zero, Readline will install signal handlers for
-@code{SIGINT}, @code{SIGQUIT}, @code{SIGTERM}, @code{SIGALRM},
+@code{SIGINT}, @code{SIGQUIT}, @code{SIGTERM}, @code{SIGHUP}, @code{SIGALRM},
@code{SIGTSTP}, @code{SIGTTIN}, and @code{SIGTTOU}.
The default value of @code{rl_catch_signals} is 1.
@end deftypevar
@deftypevar int rl_catch_sigwinch
-If this variable is non-zero, Readline will install a signal handler for
-@code{SIGWINCH}.
+If this variable is set to a non-zero value,
+Readline will install a signal handler for @code{SIGWINCH}.
The default value of @code{rl_catch_sigwinch} is 1.
@end deftypevar
+@deftypevar int rl_change_environment
+If this variable is set to a non-zero value,
+and Readline is handling @code{SIGWINCH}, Readline will modify the
+@var{LINES} and @var{COLUMNS} environment variables upon receipt of a
+@code{SIGWINCH}
+
+The default value of @code{rl_change_environment} is 1.
+@end deftypevar
+
If an application does not wish to have Readline catch any signals, or
to handle signals other than those Readline catches (@code{SIGHUP},
for example),
@@ -1477,7 +1631,7 @@ The following functions install and remove Readline's signal handlers.
@deftypefun int rl_set_signals (void)
Install Readline's signal handler for @code{SIGINT}, @code{SIGQUIT},
-@code{SIGTERM}, @code{SIGALRM}, @code{SIGTSTP}, @code{SIGTTIN},
+@code{SIGTERM}, @code{SIGHUP}, @code{SIGALRM}, @code{SIGTSTP}, @code{SIGTTIN},
@code{SIGTTOU}, and @code{SIGWINCH}, depending on the values of
@code{rl_catch_signals} and @code{rl_catch_sigwinch}.
@end deftypefun
@@ -1611,7 +1765,7 @@ This calls @code{rl_complete_internal()} with an argument of @samp{*}.
@end deftypefun
@deftypefun int rl_completion_mode (rl_command_func_t *cfunc)
-Returns the apppriate value to pass to @code{rl_complete_internal()}
+Returns the appropriate value to pass to @code{rl_complete_internal()}
depending on whether @var{cfunc} was called twice in succession and
the values of the @code{show-all-if-ambiguous} and
@code{show-all-if-unmodified} variables.
@@ -1728,29 +1882,45 @@ the directory portion of the pathname the user typed.
At the least, even if no other expansion is performed, this function should
remove any quote characters from the directory name, because its result will
be passed directly to @code{opendir()}.
+
The directory completion hook returns an integer that should be non-zero if
the function modifies its directory argument.
The function should not modify the directory argument if it returns 0.
@end deftypevar
-@ignore
-@deftypevar extern rl_icppfunc_t *rl_directory_rewrite_hook;
+@deftypevar {rl_icppfunc_t *} rl_directory_rewrite_hook;
If non-zero, this is the address of a function to call when completing
a directory name. This function takes the address of the directory name
to be modified as an argument. Unlike @code{rl_directory_completion_hook},
it only modifies the directory name used in @code{opendir}, not what is
displayed when the possible completions are printed or inserted. It is
called before rl_directory_completion_hook.
+At the least, even if no other expansion is performed, this function should
+remove any quote characters from the directory name, because its result will
+be passed directly to @code{opendir()}.
-I'm not happy with how this works yet, so it's undocumented.
+The directory rewrite hook returns an integer that should be non-zero if
+the function modfies its directory argument.
+The function should not modify the directory argument if it returns 0.
+@end deftypevar
+
+@deftypevar {rl_icppfunc_t *} rl_filename_stat_hook
+If non-zero, this is the address of a function for the completer to
+call before deciding which character to append to a completed name.
+This function modifies its filename name argument, and the modified value
+is passed to @code{stat()} to determine the file's type and characteristics.
+This function does not need to remove quote characters from the filename.
+
+The stat hook returns an integer that should be non-zero if
+the function modfies its directory argument.
+The function should not modify the directory argument if it returns 0.
@end deftypevar
-@end ignore
@deftypevar {rl_dequote_func_t *} rl_filename_rewrite_hook
If non-zero, this is the address of a function called when reading
directory entries from the filesystem for completion and comparing
them to the partial word to be completed. The function should
-perform any necesary application or system-specific conversion on
+perform any necessary application or system-specific conversion on
the filename, such as converting between character sets or converting
from a filesystem format to a character input format.
The function takes two arguments: @var{fname}, the filename to be converted,
diff --git a/doc/rluser.texi b/doc/rluser.texi
index 8a69c99..0af6c02 100644
--- a/doc/rluser.texi
+++ b/doc/rluser.texi
@@ -9,7 +9,7 @@ use these features. There is a document entitled "readline.texinfo"
which contains both end-user and programmer documentation for the
GNU Readline Library.
-Copyright (C) 1988--2011 Free Software Foundation, Inc.
+Copyright (C) 1988--2014 Free Software Foundation, Inc.
Authored by Brian Fox and Chet Ramey.
@@ -72,6 +72,8 @@ Line editing can be enabled at any time using the @option{-o emacs} or
a specific command.
* Programmable Completion Builtins:: Builtin commands to specify how to
complete arguments for a particular command.
+* A Programmable Completion Example:: An example shell function for
+ generating possible completions.
@end ifset
@end menu
@@ -425,6 +427,14 @@ If set to @samp{on}, Readline attempts to bind the control characters
treated specially by the kernel's terminal driver to their Readline
equivalents.
+@item colored-stats
+@vindex colored-stats
+If set to @samp{on}, Readline displays possible completions using different
+colors to indicate their file type.
+The color definitions are taken from the value of the @env{LS_COLORS}
+environment variable.
+The default is @samp{off}.
+
@item comment-begin
@vindex comment-begin
The string to insert at the beginning of the line when the
@@ -521,8 +531,12 @@ or @code{next-history}. The default is @samp{off}.
@item history-size
@vindex history-size
-Set the maximum number of history entries saved in the history list. If
-set to zero, the number of entries in the history list is not limited.
+Set the maximum number of history entries saved in the history list.
+If set to zero, any existing history entries are deleted and no new entries
+are saved.
+If set to a value less than zero, the number of history entries is not
+limited.
+By default, the number of history entries is not limited.
@item horizontal-scroll-mode
@vindex horizontal-scroll-mode
@@ -565,6 +579,22 @@ equivalent to @code{emacs-standard}. The default value is @code{emacs}.
The value of the @code{editing-mode} variable also affects the
default keymap.
+@item keyseq-timeout
+Specifies the duration Readline will wait for a character when reading an
+ambiguous key sequence (one that can form a complete key sequence using
+the input read so far, or can take additional input to complete a longer
+key sequence).
+If no input is received within the timeout, Readline will use the shorter
+but complete key sequence.
+Readline uses this value to determine whether or not input is
+available on the current input source (@code{rl_instream} by default).
+The value is specified in milliseconds, so a value of 1000 means that
+Readline will wait one second for additional input.
+If this variable is set to a value less than or equal to zero, or to a
+non-numeric value, Readline will wait until another key is pressed to
+decide which key sequence to complete.
+The default value is @code{500}.
+
@item mark-directories
If set to @samp{on}, completed directory names have a slash
appended. The default is @samp{on}.
@@ -640,6 +670,13 @@ a common prefix) cause the matches to be listed immediately instead
of ringing the bell.
The default value is @samp{off}.
+@item show-mode-in-prompt
+@vindex show-mode-in-prompt
+If set to @samp{on}, add a character to the beginning of the prompt
+indicating the editing mode: emacs (@samp{@@}), vi command (@samp{:}),
+or vi insertion (@samp{+}).
+The default value is @samp{off}.
+
@item skip-completed-text
@vindex skip-completed-text
If set to @samp{on}, this alters the default completion behavior when
@@ -880,7 +917,7 @@ binding, variable assignment, and conditional syntax.
# You can re-read the inputrc file with C-x C-r.
# Lines beginning with '#' are comments.
#
-# First, include any systemwide bindings and variable
+# First, include any system-wide bindings and variable
# assignments from /etc/Inputrc
$include /etc/Inputrc
@@ -1100,13 +1137,30 @@ for a string supplied by the user.
@item history-search-forward ()
Search forward through the history for the string of characters
between the start of the current line and the point.
+The search string must match at the beginning of a history line.
This is a non-incremental search.
By default, this command is unbound.
@item history-search-backward ()
Search backward through the history for the string of characters
-between the start of the current line and the point. This
-is a non-incremental search. By default, this command is unbound.
+between the start of the current line and the point.
+The search string must match at the beginning of a history line.
+This is a non-incremental search.
+By default, this command is unbound.
+
+@item history-substr-search-forward ()
+Search forward through the history for the string of characters
+between the start of the current line and the point.
+The search string may match anywhere in a history line.
+This is a non-incremental search.
+By default, this command is unbound.
+
+@item history-substr-search-backward ()
+Search backward through the history for the string of characters
+between the start of the current line and the point.
+The search string may match anywhere in a history line.
+This is a non-incremental search.
+By default, this command is unbound.
@item yank-nth-arg (M-C-y)
Insert the first argument to the previous command (usually
@@ -1137,11 +1191,17 @@ as if the @samp{!$} history expansion had been specified.
@subsection Commands For Changing Text
@ftable @code
+
+@item @i{end-of-file} (usually C-d)
+The character indicating end-of-file as set, for example, by
+@code{stty}. If this character is read when there are no characters
+on the line, and point is at the beginning of the line, Readline
+interprets it as the end of input and returns @sc{eof}.
+
@item delete-char (C-d)
-Delete the character at point. If point is at the
-beginning of the line, there are no characters in the line, and
-the last character typed was not bound to @code{delete-char}, then
-return @sc{eof}.
+Delete the character at point. If this function is bound to the
+same character as the tty @sc{eof} character, as @kbd{C-d}
+commonly is, see above for the effects.
@item backward-delete-char (Rubout)
Delete the character behind the cursor. A numeric argument means
@@ -1435,6 +1495,10 @@ and save the definition.
Re-execute the last keyboard macro defined, by making the characters
in the macro appear as if typed at the keyboard.
+@item print-last-kbd-macro ()
+Print the last keboard macro defined in a format suitable for the
+@var{inputrc} file.
+
@end ftable
@node Miscellaneous Commands
@@ -1693,10 +1757,11 @@ When the command or function is invoked, the @env{COMP_LINE},
assigned values as described above (@pxref{Bash Variables}).
If a shell function is being invoked, the @env{COMP_WORDS} and
@env{COMP_CWORD} variables are also set.
-When the function or command is invoked, the first argument is the
+When the function or command is invoked, the first argument ($1) is the
name of the command whose arguments are being completed, the
-second argument is the word being completed, and the third argument
-is the word preceding the word being completed on the current command line.
+second argument ($2) is the word being completed, and the third argument
+($3) is the word preceding the word being completed on the current command
+line.
No filtering of the generated completions against the word being completed
is performed; the function or command has complete freedom in generating
the matches.
@@ -1706,7 +1771,7 @@ The function may use any of the shell facilities, including the
@code{compgen} and @code{compopt} builtins described below
(@pxref{Programmable Completion Builtins}), to generate the matches.
It must put the possible completions in the @env{COMPREPLY} array
-variable.
+variable, one per array element.
Next, any command specified with the @option{-C} option is invoked
in an environment equivalent to command substitution.
@@ -1774,17 +1839,18 @@ completion function would load completions dynamically:
@example
_completion_loader()
@{
- . "/etc/bash_completion.d/$1.sh" >/dev/null 2>&1 && return 124
+ . "/etc/bash_completion.d/$1.sh" >/dev/null 2>&1 && return 124
@}
-complete -D -F _completion_loader
+complete -D -F _completion_loader -o bashdefault -o default
@end example
@node Programmable Completion Builtins
@section Programmable Completion Builtins
@cindex completion builtins
-Two builtin commands are available to manipulate the programmable completion
-facilities.
+Three builtin commands are available to manipulate the programmable completion
+facilities: one to specify how the arguments to a particular command are to
+be completed, and two to modify the completion as it is happening.
@table @code
@item compgen
@@ -1871,6 +1937,10 @@ quoting special characters, or suppressing trailing spaces).
This option is intended to be used with shell functions specified
with @option{-F}.
+@item noquote
+Tell Readline not to quote the completed words if they are filenames
+(quoting filenames is the default).
+
@item nospace
Tell Readline not to append a space (the default) to words completed at
the end of the line.
@@ -1970,6 +2040,10 @@ used as the possible completions.
@item -F @var{function}
The shell function @var{function} is executed in the current shell
environment.
+When it is executed, $1 is the name of the command whose arguments are
+being completed, $2 is the word being completed, and $3 is the word
+preceding the word being completed, as described above
+(@pxref{Programmable Completion}).
When it finishes, the possible completions are retrieved from the value
of the @env{COMPREPLY} array variable.
@@ -2034,4 +2108,122 @@ specification exists, or an output error occurs.
@end table
+@node A Programmable Completion Example
+@section A Programmable Completion Example
+
+The most common way to obtain additional completion functionality beyond
+the default actions @code{complete} and @code{compgen} provide is to use
+a shell function and bind it to a particular command using @code{complete -F}.
+
+The following function provides completions for the @code{cd} builtin.
+It is a reasonably good example of what shell functions must do when
+used for completion. This function uses the word passsed as @code{$2}
+to determine the directory name to complete. You can also use the
+@code{COMP_WORDS} array variable; the current word is indexed by the
+@code{COMP_CWORD} variable.
+
+The function relies on the @code{complete} and @code{compgen} builtins
+to do much of the work, adding only the things that the Bash @code{cd}
+does beyond accepting basic directory names:
+tilde expansion (@pxref{Tilde Expansion}),
+searching directories in @var{$CDPATH}, which is described above
+(@pxref{Bourne Shell Builtins}),
+and basic support for the @code{cdable_vars} shell option
+(@pxref{The Shopt Builtin}).
+@code{_comp_cd} modifies the value of @var{IFS} so that it contains only
+a newline to accommodate file names containing spaces and tabs --
+@code{compgen} prints the possible completions it generates one per line.
+
+Possible completions go into the @var{COMPREPLY} array variable, one
+completion per array element. The programmable completion system retrieves
+the completions from there when the function returns.
+
+@example
+# A completion function for the cd builtin
+# based on the cd completion function from the bash_completion package
+_comp_cd()
+@{
+ local IFS=$' \t\n' # normalize IFS
+ local cur _skipdot _cdpath
+ local i j k
+
+ # Tilde expansion, with side effect of expanding tilde to full pathname
+ case "$2" in
+ \~*) eval cur="$2" ;;
+ *) cur=$2 ;;
+ esac
+
+ # no cdpath or absolute pathname -- straight directory completion
+ if [[ -z "$@{CDPATH:-@}" ]] || [[ "$cur" == @@(./*|../*|/*) ]]; then
+ # compgen prints paths one per line; could also use while loop
+ IFS=$'\n'
+ COMPREPLY=( $(compgen -d -- "$cur") )
+ IFS=$' \t\n'
+ # CDPATH+directories in the current directory if not in CDPATH
+ else
+ IFS=$'\n'
+ _skipdot=false
+ # preprocess CDPATH to convert null directory names to .
+ _cdpath=$@{CDPATH/#:/.:@}
+ _cdpath=$@{_cdpath//::/:.:@}
+ _cdpath=$@{_cdpath/%:/:.@}
+ for i in $@{_cdpath//:/$'\n'@}; do
+ if [[ $i -ef . ]]; then _skipdot=true; fi
+ k="$@{#COMPREPLY[@@]@}"
+ for j in $( compgen -d -- "$i/$cur" ); do
+ COMPREPLY[k++]=$@{j#$i/@} # cut off directory
+ done
+ done
+ $_skipdot || COMPREPLY+=( $(compgen -d -- "$cur") )
+ IFS=$' \t\n'
+ fi
+
+ # variable names if appropriate shell option set and no completions
+ if shopt -q cdable_vars && [[ $@{#COMPREPLY[@@]@} -eq 0 ]]; then
+ COMPREPLY=( $(compgen -v -- "$cur") )
+ fi
+
+ return 0
+@}
+@end example
+
+We install the completion function using the @option{-F} option to
+@code{complete}:
+
+@example
+# Tell readline to quote appropriate and append slashes to directories;
+# use the bash default completion for other arguments
+complete -o filenames -o nospace -o bashdefault -F _comp_cd cd
+@end example
+
+@noindent
+Since we'd like Bash and Readline to take care of some
+of the other details for us, we use several other options to tell Bash
+and Readline what to do. The @option{-o filenames} option tells Readline
+that the possible completions should be treated as filenames, and quoted
+appropriately. That option will also cause Readline to append a slash to
+filenames it can determine are directories (which is why we might want to
+extend @code{_comp_cd} to append a slash if we're using directories found
+via @var{CDPATH}: Readline can't tell those completions are directories).
+The @option{-o nospace} option tells Readline to not append a space
+character to the directory name, in case we want to append to it.
+The @option{-o bashdefault} option brings in the rest of the "Bash default"
+completions -- possible completion that Bash adds to the default Readline
+set. These include things like command name completion, variable completion
+for words beginning with @samp{@{}, completions containing pathname
+expansion patterns (@pxref{Filename Expansion}), and so on.
+
+Once installed using @code{complete}, @code{_comp_cd} will be called every
+time we attempt word completion for a @code{cd} command.
+
+Many more examples -- an extensive collection of completions for most of
+the common GNU, Unix, and Linux commands -- are available as part of the
+bash_completion project. This is installed by default on many GNU/Linux
+distributions. Originally written by Ian Macdonald, the project now lives
+at @url{http://bash-completion.alioth.debian.org/}. There are ports for
+other systems such as Solaris and Mac OS X.
+
+An older version of the bash_completion package is distributed with bash
+in the @file{examples/complete} subdirectory.
+
@end ifset
diff --git a/doc/rluserman.dvi b/doc/rluserman.dvi
index 3797f6a..9fd215b 100644
--- a/doc/rluserman.dvi
+++ b/doc/rluserman.dvi
Binary files differ
diff --git a/doc/rluserman.html b/doc/rluserman.html
index 1e9c579..22df7f4 100644
--- a/doc/rluserman.html
+++ b/doc/rluserman.html
@@ -1,6 +1,6 @@
<HTML>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<!-- Created on February, 8 2011 by texi2html 1.64 -->
+<!-- Created on February, 11 2014 by texi2html 1.64 -->
<!--
Written by: Lionel Cons <Lionel.Cons@cern.ch> (original author)
Karl Berry <karl@freefriends.org>
@@ -35,6 +35,7 @@ Send bugs and suggestions to <texi2html@mathematik.uni-kl.de>
This document describes the end user interface of the GNU Readline Library,
a utility which aids in the consistency of user interface across discrete
programs which provide a command line interface.
+The Readline home page is <A HREF="http://www.gnu.org/software/readline/">http://www.gnu.org/software/readline/</A>.
</P><P>
<BLOCKQUOTE><TABLE BORDER=0 CELLSPACING=0>
@@ -592,15 +593,24 @@ treated specially by the kernel's terminal driver to their Readline
equivalents.
<P>
-<DT><CODE>comment-begin</CODE>
+<DT><CODE>colored-stats</CODE>
<DD><A NAME="IDX7"></A>
+If set to <SAMP>`on'</SAMP>, Readline displays possible completions using different
+colors to indicate their file type.
+The color definitions are taken from the value of the <CODE>LS_COLORS</CODE>
+environment variable.
+The default is <SAMP>`off'</SAMP>.
+<P>
+
+<DT><CODE>comment-begin</CODE>
+<DD><A NAME="IDX8"></A>
The string to insert at the beginning of the line when the
<CODE>insert-comment</CODE> command is executed. The default value
is <CODE>"#"</CODE>.
<P>
<DT><CODE>completion-display-width</CODE>
-<DD><A NAME="IDX8"></A>
+<DD><A NAME="IDX9"></A>
The number of screen columns used to display possible matches
when performing completion.
The value is ignored if it is less than 0 or greater than the terminal
@@ -610,21 +620,21 @@ The default value is -1.
<P>
<DT><CODE>completion-ignore-case</CODE>
-<DD><A NAME="IDX9"></A>
+<DD><A NAME="IDX10"></A>
If set to <SAMP>`on'</SAMP>, Readline performs filename matching and completion
in a case-insensitive fashion.
The default value is <SAMP>`off'</SAMP>.
<P>
<DT><CODE>completion-map-case</CODE>
-<DD><A NAME="IDX10"></A>
+<DD><A NAME="IDX11"></A>
If set to <SAMP>`on'</SAMP>, and <VAR>completion-ignore-case</VAR> is enabled, Readline
treats hyphens (<SAMP>`-'</SAMP>) and underscores (<SAMP>`_'</SAMP>) as equivalent when
performing case-insensitive filename matching and completion.
<P>
<DT><CODE>completion-prefix-display-length</CODE>
-<DD><A NAME="IDX11"></A>
+<DD><A NAME="IDX12"></A>
The length in characters of the common prefix of a list of possible
completions that is displayed without modification. When set to a
value greater than zero, common prefixes longer than this value are
@@ -632,7 +642,7 @@ replaced with an ellipsis when displaying possible completions.
<P>
<DT><CODE>completion-query-items</CODE>
-<DD><A NAME="IDX12"></A>
+<DD><A NAME="IDX13"></A>
The number of possible completions that determines when the user is
asked whether the list of possibilities should be displayed.
If the number of possible completions is greater than this value,
@@ -644,7 +654,7 @@ The default limit is <CODE>100</CODE>.
<P>
<DT><CODE>convert-meta</CODE>
-<DD><A NAME="IDX13"></A>
+<DD><A NAME="IDX14"></A>
If set to <SAMP>`on'</SAMP>, Readline will convert characters with the
eighth bit set to an ASCII key sequence by stripping the eighth
bit and prefixing an <KBD>ESC</KBD> character, converting them to a
@@ -652,14 +662,14 @@ meta-prefixed key sequence. The default value is <SAMP>`on'</SAMP>.
<P>
<DT><CODE>disable-completion</CODE>
-<DD><A NAME="IDX14"></A>
+<DD><A NAME="IDX15"></A>
If set to <SAMP>`On'</SAMP>, Readline will inhibit word completion.
Completion characters will be inserted into the line as if they had
been mapped to <CODE>self-insert</CODE>. The default is <SAMP>`off'</SAMP>.
<P>
<DT><CODE>editing-mode</CODE>
-<DD><A NAME="IDX15"></A>
+<DD><A NAME="IDX16"></A>
The <CODE>editing-mode</CODE> variable controls which default set of
key bindings is used. By default, Readline starts up in Emacs editing
mode, where the keystrokes are most similar to Emacs. This variable can be
@@ -673,7 +683,7 @@ keyboard. The default is <SAMP>`on'</SAMP>.
<P>
<DT><CODE>enable-keypad</CODE>
-<DD><A NAME="IDX16"></A>
+<DD><A NAME="IDX17"></A>
When set to <SAMP>`on'</SAMP>, Readline will try to enable the application
keypad when it is called. Some systems need this to enable the
arrow keys. The default is <SAMP>`off'</SAMP>.
@@ -687,13 +697,13 @@ The default is <SAMP>`on'</SAMP>.
<P>
<DT><CODE>expand-tilde</CODE>
-<DD><A NAME="IDX17"></A>
+<DD><A NAME="IDX18"></A>
If set to <SAMP>`on'</SAMP>, tilde expansion is performed when Readline
attempts word completion. The default is <SAMP>`off'</SAMP>.
<P>
<DT><CODE>history-preserve-point</CODE>
-<DD><A NAME="IDX18"></A>
+<DD><A NAME="IDX19"></A>
If set to <SAMP>`on'</SAMP>, the history code attempts to place the point (the
current cursor position) at the
same location on each history line retrieved with <CODE>previous-history</CODE>
@@ -701,13 +711,17 @@ or <CODE>next-history</CODE>. The default is <SAMP>`off'</SAMP>.
<P>
<DT><CODE>history-size</CODE>
-<DD><A NAME="IDX19"></A>
-Set the maximum number of history entries saved in the history list. If
-set to zero, the number of entries in the history list is not limited.
+<DD><A NAME="IDX20"></A>
+Set the maximum number of history entries saved in the history list.
+If set to zero, any existing history entries are deleted and no new entries
+are saved.
+If set to a value less than zero, the number of history entries is not
+limited.
+By default, the number of history entries is not limited.
<P>
<DT><CODE>horizontal-scroll-mode</CODE>
-<DD><A NAME="IDX20"></A>
+<DD><A NAME="IDX21"></A>
This variable can be set to either <SAMP>`on'</SAMP> or <SAMP>`off'</SAMP>. Setting it
to <SAMP>`on'</SAMP> means that the text of the lines being edited will scroll
horizontally on a single screen line when they are longer than the width
@@ -716,8 +730,8 @@ this variable is set to <SAMP>`off'</SAMP>.
<P>
<DT><CODE>input-meta</CODE>
-<DD><A NAME="IDX21"></A>
-<A NAME="IDX22"></A>
+<DD><A NAME="IDX22"></A>
+<A NAME="IDX23"></A>
If set to <SAMP>`on'</SAMP>, Readline will enable eight-bit input (it
will not clear the eighth bit in the characters it reads),
regardless of what the terminal claims it can support. The
@@ -726,7 +740,7 @@ synonym for this variable.
<P>
<DT><CODE>isearch-terminators</CODE>
-<DD><A NAME="IDX23"></A>
+<DD><A NAME="IDX24"></A>
The string of characters that should terminate an incremental search without
subsequently executing the character as a command (see section <A HREF="rluserman.html#SEC8">1.2.5 Searching for Commands in the History</A>).
If this variable has not been given a value, the characters <KBD>ESC</KBD> and
@@ -734,7 +748,7 @@ If this variable has not been given a value, the characters <KBD>ESC</KBD> and
<P>
<DT><CODE>keymap</CODE>
-<DD><A NAME="IDX24"></A>
+<DD><A NAME="IDX25"></A>
Sets Readline's idea of the current keymap for key binding commands.
Acceptable <CODE>keymap</CODE> names are
<CODE>emacs</CODE>,
@@ -751,20 +765,37 @@ The value of the <CODE>editing-mode</CODE> variable also affects the
default keymap.
<P>
+<DT><CODE>keyseq-timeout</CODE>
+<DD>Specifies the duration Readline will wait for a character when reading an
+ambiguous key sequence (one that can form a complete key sequence using
+the input read so far, or can take additional input to complete a longer
+key sequence).
+If no input is received within the timeout, Readline will use the shorter
+but complete key sequence.
+Readline uses this value to determine whether or not input is
+available on the current input source (<CODE>rl_instream</CODE> by default).
+The value is specified in milliseconds, so a value of 1000 means that
+Readline will wait one second for additional input.
+If this variable is set to a value less than or equal to zero, or to a
+non-numeric value, Readline will wait until another key is pressed to
+decide which key sequence to complete.
+The default value is <CODE>500</CODE>.
+<P>
+
<DT><CODE>mark-directories</CODE>
<DD>If set to <SAMP>`on'</SAMP>, completed directory names have a slash
appended. The default is <SAMP>`on'</SAMP>.
<P>
<DT><CODE>mark-modified-lines</CODE>
-<DD><A NAME="IDX25"></A>
+<DD><A NAME="IDX26"></A>
This variable, when set to <SAMP>`on'</SAMP>, causes Readline to display an
asterisk (<SAMP>`*'</SAMP>) at the start of history lines which have been modified.
This variable is <SAMP>`off'</SAMP> by default.
<P>
<DT><CODE>mark-symlinked-directories</CODE>
-<DD><A NAME="IDX26"></A>
+<DD><A NAME="IDX27"></A>
If set to <SAMP>`on'</SAMP>, completed names which are symbolic links
to directories have a slash appended (subject to the value of
<CODE>mark-directories</CODE>).
@@ -772,7 +803,7 @@ The default is <SAMP>`off'</SAMP>.
<P>
<DT><CODE>match-hidden-files</CODE>
-<DD><A NAME="IDX27"></A>
+<DD><A NAME="IDX28"></A>
This variable, when set to <SAMP>`on'</SAMP>, causes Readline to match files whose
names begin with a <SAMP>`.'</SAMP> (hidden files) when performing filename
completion.
@@ -782,21 +813,21 @@ This variable is <SAMP>`on'</SAMP> by default.
<P>
<DT><CODE>menu-complete-display-prefix</CODE>
-<DD><A NAME="IDX28"></A>
+<DD><A NAME="IDX29"></A>
If set to <SAMP>`on'</SAMP>, menu completion displays the common prefix of the
list of possible completions (which may be empty) before cycling through
the list. The default is <SAMP>`off'</SAMP>.
<P>
<DT><CODE>output-meta</CODE>
-<DD><A NAME="IDX29"></A>
+<DD><A NAME="IDX30"></A>
If set to <SAMP>`on'</SAMP>, Readline will display characters with the
eighth bit set directly rather than as a meta-prefixed escape
sequence. The default is <SAMP>`off'</SAMP>.
<P>
<DT><CODE>page-completions</CODE>
-<DD><A NAME="IDX30"></A>
+<DD><A NAME="IDX31"></A>
If set to <SAMP>`on'</SAMP>, Readline uses an internal <CODE>more</CODE>-like pager
to display a screenful of possible completions at a time.
This variable is <SAMP>`on'</SAMP> by default.
@@ -809,7 +840,7 @@ The default is <SAMP>`off'</SAMP>.
<P>
<DT><CODE>revert-all-at-newline</CODE>
-<DD><A NAME="IDX31"></A>
+<DD><A NAME="IDX32"></A>
If set to <SAMP>`on'</SAMP>, Readline will undo all changes to history lines
before returning when <CODE>accept-line</CODE> is executed. By default,
history lines may be modified and retain individual undo lists across
@@ -817,7 +848,7 @@ calls to <CODE>readline</CODE>. The default is <SAMP>`off'</SAMP>.
<P>
<DT><CODE>show-all-if-ambiguous</CODE>
-<DD><A NAME="IDX32"></A>
+<DD><A NAME="IDX33"></A>
This alters the default behavior of the completion functions. If
set to <SAMP>`on'</SAMP>,
words which have more than one possible completion cause the
@@ -826,7 +857,7 @@ The default value is <SAMP>`off'</SAMP>.
<P>
<DT><CODE>show-all-if-unmodified</CODE>
-<DD><A NAME="IDX33"></A>
+<DD><A NAME="IDX34"></A>
This alters the default behavior of the completion functions in
a fashion similar to <VAR>show-all-if-ambiguous</VAR>.
If set to <SAMP>`on'</SAMP>,
@@ -837,8 +868,16 @@ of ringing the bell.
The default value is <SAMP>`off'</SAMP>.
<P>
+<DT><CODE>show-mode-in-prompt</CODE>
+<DD><A NAME="IDX35"></A>
+If set to <SAMP>`on'</SAMP>, add a character to the beginning of the prompt
+indicating the editing mode: emacs (<SAMP>`@'</SAMP>), vi command (<SAMP>`:'</SAMP>),
+or vi insertion (<SAMP>`+'</SAMP>).
+The default value is <SAMP>`off'</SAMP>.
+<P>
+
<DT><CODE>skip-completed-text</CODE>
-<DD><A NAME="IDX34"></A>
+<DD><A NAME="IDX36"></A>
If set to <SAMP>`on'</SAMP>, this alters the default completion behavior when
inserting a single match into the line. It's only active when
performing completion in the middle of a word. If enabled, readline
@@ -853,7 +892,7 @@ The default value is <SAMP>`off'</SAMP>.
<P>
<DT><CODE>visible-stats</CODE>
-<DD><A NAME="IDX35"></A>
+<DD><A NAME="IDX37"></A>
If set to <SAMP>`on'</SAMP>, a character denoting a file's type
is appended to the filename when listing possible
completions. The default is <SAMP>`off'</SAMP>.
@@ -1117,7 +1156,7 @@ binding, variable assignment, and conditional syntax.
# You can re-read the inputrc file with C-x C-r.
# Lines beginning with '#' are comments.
#
-# First, include any systemwide bindings and variable
+# First, include any system-wide bindings and variable
# assignments from /etc/Inputrc
$include /etc/Inputrc
@@ -1269,54 +1308,54 @@ The text between the point and mark is referred to as the <EM>region</EM>.
<H3> 1.4.1 Commands For Moving </H3>
<!--docid::SEC14::-->
<DL COMPACT>
-<A NAME="IDX36"></A>
+<A NAME="IDX38"></A>
<DT><CODE>beginning-of-line (C-a)</CODE>
-<DD><A NAME="IDX37"></A>
+<DD><A NAME="IDX39"></A>
Move to the start of the current line.
<P>
-<A NAME="IDX38"></A>
+<A NAME="IDX40"></A>
<DT><CODE>end-of-line (C-e)</CODE>
-<DD><A NAME="IDX39"></A>
+<DD><A NAME="IDX41"></A>
Move to the end of the line.
<P>
-<A NAME="IDX40"></A>
+<A NAME="IDX42"></A>
<DT><CODE>forward-char (C-f)</CODE>
-<DD><A NAME="IDX41"></A>
+<DD><A NAME="IDX43"></A>
Move forward a character.
<P>
-<A NAME="IDX42"></A>
+<A NAME="IDX44"></A>
<DT><CODE>backward-char (C-b)</CODE>
-<DD><A NAME="IDX43"></A>
+<DD><A NAME="IDX45"></A>
Move back a character.
<P>
-<A NAME="IDX44"></A>
+<A NAME="IDX46"></A>
<DT><CODE>forward-word (M-f)</CODE>
-<DD><A NAME="IDX45"></A>
+<DD><A NAME="IDX47"></A>
Move forward to the end of the next word.
Words are composed of letters and digits.
<P>
-<A NAME="IDX46"></A>
+<A NAME="IDX48"></A>
<DT><CODE>backward-word (M-b)</CODE>
-<DD><A NAME="IDX47"></A>
+<DD><A NAME="IDX49"></A>
Move back to the start of the current or previous word.
Words are composed of letters and digits.
<P>
-<A NAME="IDX48"></A>
+<A NAME="IDX50"></A>
<DT><CODE>clear-screen (C-l)</CODE>
-<DD><A NAME="IDX49"></A>
+<DD><A NAME="IDX51"></A>
Clear the screen and redraw the current line,
leaving the current line at the top of the screen.
<P>
-<A NAME="IDX50"></A>
+<A NAME="IDX52"></A>
<DT><CODE>redraw-current-line ()</CODE>
-<DD><A NAME="IDX51"></A>
+<DD><A NAME="IDX53"></A>
Refresh the current line. By default, this is unbound.
<P>
@@ -1342,9 +1381,9 @@ Refresh the current line. By default, this is unbound.
<P>
<DL COMPACT>
-<A NAME="IDX52"></A>
+<A NAME="IDX54"></A>
<DT><CODE>accept-line (Newline or Return)</CODE>
-<DD><A NAME="IDX53"></A>
+<DD><A NAME="IDX55"></A>
Accept the line regardless of where the cursor is.
If this line is
non-empty, it may be added to the history list for future recall with
@@ -1353,81 +1392,104 @@ If this line is a modified history line, the history line is restored
to its original state.
<P>
-<A NAME="IDX54"></A>
+<A NAME="IDX56"></A>
<DT><CODE>previous-history (C-p)</CODE>
-<DD><A NAME="IDX55"></A>
+<DD><A NAME="IDX57"></A>
Move `back' through the history list, fetching the previous command.
<P>
-<A NAME="IDX56"></A>
+<A NAME="IDX58"></A>
<DT><CODE>next-history (C-n)</CODE>
-<DD><A NAME="IDX57"></A>
+<DD><A NAME="IDX59"></A>
Move `forward' through the history list, fetching the next command.
<P>
-<A NAME="IDX58"></A>
+<A NAME="IDX60"></A>
<DT><CODE>beginning-of-history (M-&#60;)</CODE>
-<DD><A NAME="IDX59"></A>
+<DD><A NAME="IDX61"></A>
Move to the first line in the history.
<P>
-<A NAME="IDX60"></A>
+<A NAME="IDX62"></A>
<DT><CODE>end-of-history (M-&#62;)</CODE>
-<DD><A NAME="IDX61"></A>
+<DD><A NAME="IDX63"></A>
Move to the end of the input history, i.e., the line currently
being entered.
<P>
-<A NAME="IDX62"></A>
+<A NAME="IDX64"></A>
<DT><CODE>reverse-search-history (C-r)</CODE>
-<DD><A NAME="IDX63"></A>
+<DD><A NAME="IDX65"></A>
Search backward starting at the current line and moving `up' through
the history as necessary. This is an incremental search.
<P>
-<A NAME="IDX64"></A>
+<A NAME="IDX66"></A>
<DT><CODE>forward-search-history (C-s)</CODE>
-<DD><A NAME="IDX65"></A>
+<DD><A NAME="IDX67"></A>
Search forward starting at the current line and moving `down' through
the the history as necessary. This is an incremental search.
<P>
-<A NAME="IDX66"></A>
+<A NAME="IDX68"></A>
<DT><CODE>non-incremental-reverse-search-history (M-p)</CODE>
-<DD><A NAME="IDX67"></A>
+<DD><A NAME="IDX69"></A>
Search backward starting at the current line and moving `up'
through the history as necessary using a non-incremental search
for a string supplied by the user.
<P>
-<A NAME="IDX68"></A>
+<A NAME="IDX70"></A>
<DT><CODE>non-incremental-forward-search-history (M-n)</CODE>
-<DD><A NAME="IDX69"></A>
+<DD><A NAME="IDX71"></A>
Search forward starting at the current line and moving `down'
through the the history as necessary using a non-incremental search
for a string supplied by the user.
<P>
-<A NAME="IDX70"></A>
+<A NAME="IDX72"></A>
<DT><CODE>history-search-forward ()</CODE>
-<DD><A NAME="IDX71"></A>
+<DD><A NAME="IDX73"></A>
Search forward through the history for the string of characters
between the start of the current line and the point.
+The search string must match at the beginning of a history line.
This is a non-incremental search.
By default, this command is unbound.
<P>
-<A NAME="IDX72"></A>
+<A NAME="IDX74"></A>
<DT><CODE>history-search-backward ()</CODE>
-<DD><A NAME="IDX73"></A>
+<DD><A NAME="IDX75"></A>
Search backward through the history for the string of characters
-between the start of the current line and the point. This
-is a non-incremental search. By default, this command is unbound.
+between the start of the current line and the point.
+The search string must match at the beginning of a history line.
+This is a non-incremental search.
+By default, this command is unbound.
<P>
-<A NAME="IDX74"></A>
+<A NAME="IDX76"></A>
+<DT><CODE>history-substr-search-forward ()</CODE>
+<DD><A NAME="IDX77"></A>
+Search forward through the history for the string of characters
+between the start of the current line and the point.
+The search string may match anywhere in a history line.
+This is a non-incremental search.
+By default, this command is unbound.
+<P>
+
+<A NAME="IDX78"></A>
+<DT><CODE>history-substr-search-backward ()</CODE>
+<DD><A NAME="IDX79"></A>
+Search backward through the history for the string of characters
+between the start of the current line and the point.
+The search string may match anywhere in a history line.
+This is a non-incremental search.
+By default, this command is unbound.
+<P>
+
+<A NAME="IDX80"></A>
<DT><CODE>yank-nth-arg (M-C-y)</CODE>
-<DD><A NAME="IDX75"></A>
+<DD><A NAME="IDX81"></A>
Insert the first argument to the previous command (usually
the second word on the previous line) at point.
With an argument <VAR>n</VAR>,
@@ -1438,9 +1500,9 @@ Once the argument <VAR>n</VAR> is computed, the argument is extracted
as if the <SAMP>`!<VAR>n</VAR>'</SAMP> history expansion had been specified.
<P>
-<A NAME="IDX76"></A>
+<A NAME="IDX82"></A>
<DT><CODE>yank-last-arg (M-. or M-_)</CODE>
-<DD><A NAME="IDX77"></A>
+<DD><A NAME="IDX83"></A>
Insert last argument to the previous command (the last word of the
previous history entry).
With a numeric argument, behave exactly like <CODE>yank-nth-arg</CODE>.
@@ -1476,52 +1538,61 @@ as if the <SAMP>`!$'</SAMP> history expansion had been specified.
<P>
<DL COMPACT>
-<A NAME="IDX78"></A>
+
+<A NAME="IDX84"></A>
+<DT><CODE><I>end-of-file</I> (usually C-d)</CODE>
+<DD><A NAME="IDX85"></A>
+The character indicating end-of-file as set, for example, by
+<CODE>stty</CODE>. If this character is read when there are no characters
+on the line, and point is at the beginning of the line, Readline
+interprets it as the end of input and returns EOF.
+<P>
+
+<A NAME="IDX86"></A>
<DT><CODE>delete-char (C-d)</CODE>
-<DD><A NAME="IDX79"></A>
-Delete the character at point. If point is at the
-beginning of the line, there are no characters in the line, and
-the last character typed was not bound to <CODE>delete-char</CODE>, then
-return EOF.
+<DD><A NAME="IDX87"></A>
+Delete the character at point. If this function is bound to the
+same character as the tty EOF character, as <KBD>C-d</KBD>
+commonly is, see above for the effects.
<P>
-<A NAME="IDX80"></A>
+<A NAME="IDX88"></A>
<DT><CODE>backward-delete-char (Rubout)</CODE>
-<DD><A NAME="IDX81"></A>
+<DD><A NAME="IDX89"></A>
Delete the character behind the cursor. A numeric argument means
to kill the characters instead of deleting them.
<P>
-<A NAME="IDX82"></A>
+<A NAME="IDX90"></A>
<DT><CODE>forward-backward-delete-char ()</CODE>
-<DD><A NAME="IDX83"></A>
+<DD><A NAME="IDX91"></A>
Delete the character under the cursor, unless the cursor is at the
end of the line, in which case the character behind the cursor is
deleted. By default, this is not bound to a key.
<P>
-<A NAME="IDX84"></A>
+<A NAME="IDX92"></A>
<DT><CODE>quoted-insert (C-q or C-v)</CODE>
-<DD><A NAME="IDX85"></A>
+<DD><A NAME="IDX93"></A>
Add the next character typed to the line verbatim. This is
how to insert key sequences like <KBD>C-q</KBD>, for example.
<P>
-<A NAME="IDX86"></A>
+<A NAME="IDX94"></A>
<DT><CODE>tab-insert (M-<KBD>TAB</KBD>)</CODE>
-<DD><A NAME="IDX87"></A>
+<DD><A NAME="IDX95"></A>
Insert a tab character.
<P>
-<A NAME="IDX88"></A>
+<A NAME="IDX96"></A>
<DT><CODE>self-insert (a, b, A, 1, !, <small>...</small>)</CODE>
-<DD><A NAME="IDX89"></A>
+<DD><A NAME="IDX97"></A>
Insert yourself.
<P>
-<A NAME="IDX90"></A>
+<A NAME="IDX98"></A>
<DT><CODE>transpose-chars (C-t)</CODE>
-<DD><A NAME="IDX91"></A>
+<DD><A NAME="IDX99"></A>
Drag the character before the cursor forward over
the character at the cursor, moving the
cursor forward as well. If the insertion point
@@ -1530,39 +1601,39 @@ transposes the last two characters of the line.
Negative arguments have no effect.
<P>
-<A NAME="IDX92"></A>
+<A NAME="IDX100"></A>
<DT><CODE>transpose-words (M-t)</CODE>
-<DD><A NAME="IDX93"></A>
+<DD><A NAME="IDX101"></A>
Drag the word before point past the word after point,
moving point past that word as well.
If the insertion point is at the end of the line, this transposes
the last two words on the line.
<P>
-<A NAME="IDX94"></A>
+<A NAME="IDX102"></A>
<DT><CODE>upcase-word (M-u)</CODE>
-<DD><A NAME="IDX95"></A>
+<DD><A NAME="IDX103"></A>
Uppercase the current (or following) word. With a negative argument,
uppercase the previous word, but do not move the cursor.
<P>
-<A NAME="IDX96"></A>
+<A NAME="IDX104"></A>
<DT><CODE>downcase-word (M-l)</CODE>
-<DD><A NAME="IDX97"></A>
+<DD><A NAME="IDX105"></A>
Lowercase the current (or following) word. With a negative argument,
lowercase the previous word, but do not move the cursor.
<P>
-<A NAME="IDX98"></A>
+<A NAME="IDX106"></A>
<DT><CODE>capitalize-word (M-c)</CODE>
-<DD><A NAME="IDX99"></A>
+<DD><A NAME="IDX107"></A>
Capitalize the current (or following) word. With a negative argument,
capitalize the previous word, but do not move the cursor.
<P>
-<A NAME="IDX100"></A>
+<A NAME="IDX108"></A>
<DT><CODE>overwrite-mode ()</CODE>
-<DD><A NAME="IDX101"></A>
+<DD><A NAME="IDX109"></A>
Toggle overwrite mode. With an explicit positive numeric argument,
switches to overwrite mode. With an explicit non-positive numeric
argument, switches to insert mode. This command affects only
@@ -1602,106 +1673,106 @@ By default, this command is unbound.
<DL COMPACT>
-<A NAME="IDX102"></A>
+<A NAME="IDX110"></A>
<DT><CODE>kill-line (C-k)</CODE>
-<DD><A NAME="IDX103"></A>
+<DD><A NAME="IDX111"></A>
Kill the text from point to the end of the line.
<P>
-<A NAME="IDX104"></A>
+<A NAME="IDX112"></A>
<DT><CODE>backward-kill-line (C-x Rubout)</CODE>
-<DD><A NAME="IDX105"></A>
+<DD><A NAME="IDX113"></A>
Kill backward to the beginning of the line.
<P>
-<A NAME="IDX106"></A>
+<A NAME="IDX114"></A>
<DT><CODE>unix-line-discard (C-u)</CODE>
-<DD><A NAME="IDX107"></A>
+<DD><A NAME="IDX115"></A>
Kill backward from the cursor to the beginning of the current line.
<P>
-<A NAME="IDX108"></A>
+<A NAME="IDX116"></A>
<DT><CODE>kill-whole-line ()</CODE>
-<DD><A NAME="IDX109"></A>
+<DD><A NAME="IDX117"></A>
Kill all characters on the current line, no matter where point is.
By default, this is unbound.
<P>
-<A NAME="IDX110"></A>
+<A NAME="IDX118"></A>
<DT><CODE>kill-word (M-d)</CODE>
-<DD><A NAME="IDX111"></A>
+<DD><A NAME="IDX119"></A>
Kill from point to the end of the current word, or if between
words, to the end of the next word.
Word boundaries are the same as <CODE>forward-word</CODE>.
<P>
-<A NAME="IDX112"></A>
+<A NAME="IDX120"></A>
<DT><CODE>backward-kill-word (M-<KBD>DEL</KBD>)</CODE>
-<DD><A NAME="IDX113"></A>
+<DD><A NAME="IDX121"></A>
Kill the word behind point.
Word boundaries are the same as <CODE>backward-word</CODE>.
<P>
-<A NAME="IDX114"></A>
+<A NAME="IDX122"></A>
<DT><CODE>unix-word-rubout (C-w)</CODE>
-<DD><A NAME="IDX115"></A>
+<DD><A NAME="IDX123"></A>
Kill the word behind point, using white space as a word boundary.
The killed text is saved on the kill-ring.
<P>
-<A NAME="IDX116"></A>
+<A NAME="IDX124"></A>
<DT><CODE>unix-filename-rubout ()</CODE>
-<DD><A NAME="IDX117"></A>
+<DD><A NAME="IDX125"></A>
Kill the word behind point, using white space and the slash character
as the word boundaries.
The killed text is saved on the kill-ring.
<P>
-<A NAME="IDX118"></A>
+<A NAME="IDX126"></A>
<DT><CODE>delete-horizontal-space ()</CODE>
-<DD><A NAME="IDX119"></A>
+<DD><A NAME="IDX127"></A>
Delete all spaces and tabs around point. By default, this is unbound.
<P>
-<A NAME="IDX120"></A>
+<A NAME="IDX128"></A>
<DT><CODE>kill-region ()</CODE>
-<DD><A NAME="IDX121"></A>
+<DD><A NAME="IDX129"></A>
Kill the text in the current region.
By default, this command is unbound.
<P>
-<A NAME="IDX122"></A>
+<A NAME="IDX130"></A>
<DT><CODE>copy-region-as-kill ()</CODE>
-<DD><A NAME="IDX123"></A>
+<DD><A NAME="IDX131"></A>
Copy the text in the region to the kill buffer, so it can be yanked
right away. By default, this command is unbound.
<P>
-<A NAME="IDX124"></A>
+<A NAME="IDX132"></A>
<DT><CODE>copy-backward-word ()</CODE>
-<DD><A NAME="IDX125"></A>
+<DD><A NAME="IDX133"></A>
Copy the word before point to the kill buffer.
The word boundaries are the same as <CODE>backward-word</CODE>.
By default, this command is unbound.
<P>
-<A NAME="IDX126"></A>
+<A NAME="IDX134"></A>
<DT><CODE>copy-forward-word ()</CODE>
-<DD><A NAME="IDX127"></A>
+<DD><A NAME="IDX135"></A>
Copy the word following point to the kill buffer.
The word boundaries are the same as <CODE>forward-word</CODE>.
By default, this command is unbound.
<P>
-<A NAME="IDX128"></A>
+<A NAME="IDX136"></A>
<DT><CODE>yank (C-y)</CODE>
-<DD><A NAME="IDX129"></A>
+<DD><A NAME="IDX137"></A>
Yank the top of the kill ring into the buffer at point.
<P>
-<A NAME="IDX130"></A>
+<A NAME="IDX138"></A>
<DT><CODE>yank-pop (M-y)</CODE>
-<DD><A NAME="IDX131"></A>
+<DD><A NAME="IDX139"></A>
Rotate the kill-ring, and yank the new top. You can only do this if
the prior command is <CODE>yank</CODE> or <CODE>yank-pop</CODE>.
</DL>
@@ -1725,16 +1796,16 @@ the prior command is <CODE>yank</CODE> or <CODE>yank-pop</CODE>.
<!--docid::SEC18::-->
<DL COMPACT>
-<A NAME="IDX132"></A>
+<A NAME="IDX140"></A>
<DT><CODE>digit-argument (<KBD>M-0</KBD>, <KBD>M-1</KBD>, <small>...</small> <KBD>M--</KBD>)</CODE>
-<DD><A NAME="IDX133"></A>
+<DD><A NAME="IDX141"></A>
Add this digit to the argument already accumulating, or start a new
argument. <KBD>M--</KBD> starts a negative argument.
<P>
-<A NAME="IDX134"></A>
+<A NAME="IDX142"></A>
<DT><CODE>universal-argument ()</CODE>
-<DD><A NAME="IDX135"></A>
+<DD><A NAME="IDX143"></A>
This is another way to specify an argument.
If this command is followed by one or more digits, optionally with a
leading minus sign, those digits define the argument.
@@ -1769,33 +1840,33 @@ By default, this is not bound to a key.
<P>
<DL COMPACT>
-<A NAME="IDX136"></A>
+<A NAME="IDX144"></A>
<DT><CODE>complete (<KBD>TAB</KBD>)</CODE>
-<DD><A NAME="IDX137"></A>
+<DD><A NAME="IDX145"></A>
Attempt to perform completion on the text before point.
The actual completion performed is application-specific.
The default is filename completion.
<P>
-<A NAME="IDX138"></A>
+<A NAME="IDX146"></A>
<DT><CODE>possible-completions (M-?)</CODE>
-<DD><A NAME="IDX139"></A>
+<DD><A NAME="IDX147"></A>
List the possible completions of the text before point.
When displaying completions, Readline sets the number of columns used
for display to the value of <CODE>completion-display-width</CODE>, the value of
the environment variable <CODE>COLUMNS</CODE>, or the screen width, in that order.
<P>
-<A NAME="IDX140"></A>
+<A NAME="IDX148"></A>
<DT><CODE>insert-completions (M-*)</CODE>
-<DD><A NAME="IDX141"></A>
+<DD><A NAME="IDX149"></A>
Insert all completions of the text before point that would have
been generated by <CODE>possible-completions</CODE>.
<P>
-<A NAME="IDX142"></A>
+<A NAME="IDX150"></A>
<DT><CODE>menu-complete ()</CODE>
-<DD><A NAME="IDX143"></A>
+<DD><A NAME="IDX151"></A>
Similar to <CODE>complete</CODE>, but replaces the word to be completed
with a single match from the list of possible completions.
Repeated execution of <CODE>menu-complete</CODE> steps through the list
@@ -1810,17 +1881,17 @@ This command is intended to be bound to <KBD>TAB</KBD>, but is unbound
by default.
<P>
-<A NAME="IDX144"></A>
+<A NAME="IDX152"></A>
<DT><CODE>menu-complete-backward ()</CODE>
-<DD><A NAME="IDX145"></A>
+<DD><A NAME="IDX153"></A>
Identical to <CODE>menu-complete</CODE>, but moves backward through the list
of possible completions, as if <CODE>menu-complete</CODE> had been given a
negative argument.
<P>
-<A NAME="IDX146"></A>
+<A NAME="IDX154"></A>
<DT><CODE>delete-char-or-list ()</CODE>
-<DD><A NAME="IDX147"></A>
+<DD><A NAME="IDX155"></A>
Deletes the character under the cursor if not at the beginning or
end of the line (like <CODE>delete-char</CODE>).
If at the end of the line, behaves identically to
@@ -1849,26 +1920,33 @@ This command is unbound by default.
<!--docid::SEC20::-->
<DL COMPACT>
-<A NAME="IDX148"></A>
+<A NAME="IDX156"></A>
<DT><CODE>start-kbd-macro (C-x ()</CODE>
-<DD><A NAME="IDX149"></A>
+<DD><A NAME="IDX157"></A>
Begin saving the characters typed into the current keyboard macro.
<P>
-<A NAME="IDX150"></A>
+<A NAME="IDX158"></A>
<DT><CODE>end-kbd-macro (C-x ))</CODE>
-<DD><A NAME="IDX151"></A>
+<DD><A NAME="IDX159"></A>
Stop saving the characters typed into the current keyboard macro
and save the definition.
<P>
-<A NAME="IDX152"></A>
+<A NAME="IDX160"></A>
<DT><CODE>call-last-kbd-macro (C-x e)</CODE>
-<DD><A NAME="IDX153"></A>
+<DD><A NAME="IDX161"></A>
Re-execute the last keyboard macro defined, by making the characters
in the macro appear as if typed at the keyboard.
<P>
+<A NAME="IDX162"></A>
+<DT><CODE>print-last-kbd-macro ()</CODE>
+<DD><A NAME="IDX163"></A>
+Print the last keboard macro defined in a format suitable for the
+<VAR>inputrc</VAR> file.
+<P>
+
</DL>
<P>
@@ -1890,87 +1968,87 @@ in the macro appear as if typed at the keyboard.
<!--docid::SEC21::-->
<DL COMPACT>
-<A NAME="IDX154"></A>
+<A NAME="IDX164"></A>
<DT><CODE>re-read-init-file (C-x C-r)</CODE>
-<DD><A NAME="IDX155"></A>
+<DD><A NAME="IDX165"></A>
Read in the contents of the <VAR>inputrc</VAR> file, and incorporate
any bindings or variable assignments found there.
<P>
-<A NAME="IDX156"></A>
+<A NAME="IDX166"></A>
<DT><CODE>abort (C-g)</CODE>
-<DD><A NAME="IDX157"></A>
+<DD><A NAME="IDX167"></A>
Abort the current editing command and
ring the terminal's bell (subject to the setting of
<CODE>bell-style</CODE>).
<P>
-<A NAME="IDX158"></A>
+<A NAME="IDX168"></A>
<DT><CODE>do-uppercase-version (M-a, M-b, M-<VAR>x</VAR>, <small>...</small>)</CODE>
-<DD><A NAME="IDX159"></A>
+<DD><A NAME="IDX169"></A>
If the metafied character <VAR>x</VAR> is lowercase, run the command
that is bound to the corresponding uppercase character.
<P>
-<A NAME="IDX160"></A>
+<A NAME="IDX170"></A>
<DT><CODE>prefix-meta (<KBD>ESC</KBD>)</CODE>
-<DD><A NAME="IDX161"></A>
+<DD><A NAME="IDX171"></A>
Metafy the next character typed. This is for keyboards
without a meta key. Typing <SAMP>`<KBD>ESC</KBD> f'</SAMP> is equivalent to typing
<KBD>M-f</KBD>.
<P>
-<A NAME="IDX162"></A>
+<A NAME="IDX172"></A>
<DT><CODE>undo (C-_ or C-x C-u)</CODE>
-<DD><A NAME="IDX163"></A>
+<DD><A NAME="IDX173"></A>
Incremental undo, separately remembered for each line.
<P>
-<A NAME="IDX164"></A>
+<A NAME="IDX174"></A>
<DT><CODE>revert-line (M-r)</CODE>
-<DD><A NAME="IDX165"></A>
+<DD><A NAME="IDX175"></A>
Undo all changes made to this line. This is like executing the <CODE>undo</CODE>
command enough times to get back to the beginning.
<P>
-<A NAME="IDX166"></A>
+<A NAME="IDX176"></A>
<DT><CODE>tilde-expand (M-~)</CODE>
-<DD><A NAME="IDX167"></A>
+<DD><A NAME="IDX177"></A>
Perform tilde expansion on the current word.
<P>
-<A NAME="IDX168"></A>
+<A NAME="IDX178"></A>
<DT><CODE>set-mark (C-@)</CODE>
-<DD><A NAME="IDX169"></A>
+<DD><A NAME="IDX179"></A>
Set the mark to the point. If a
numeric argument is supplied, the mark is set to that position.
<P>
-<A NAME="IDX170"></A>
+<A NAME="IDX180"></A>
<DT><CODE>exchange-point-and-mark (C-x C-x)</CODE>
-<DD><A NAME="IDX171"></A>
+<DD><A NAME="IDX181"></A>
Swap the point with the mark. The current cursor position is set to
the saved position, and the old cursor position is saved as the mark.
<P>
-<A NAME="IDX172"></A>
+<A NAME="IDX182"></A>
<DT><CODE>character-search (C-])</CODE>
-<DD><A NAME="IDX173"></A>
+<DD><A NAME="IDX183"></A>
A character is read and point is moved to the next occurrence of that
character. A negative count searches for previous occurrences.
<P>
-<A NAME="IDX174"></A>
+<A NAME="IDX184"></A>
<DT><CODE>character-search-backward (M-C-])</CODE>
-<DD><A NAME="IDX175"></A>
+<DD><A NAME="IDX185"></A>
A character is read and point is moved to the previous occurrence
of that character. A negative count searches for subsequent
occurrences.
<P>
-<A NAME="IDX176"></A>
+<A NAME="IDX186"></A>
<DT><CODE>skip-csi-sequence ()</CODE>
-<DD><A NAME="IDX177"></A>
+<DD><A NAME="IDX187"></A>
Read enough characters to consume a multi-key sequence such as those
defined for keys like Home and End. Such sequences begin with a
Control Sequence Indicator (CSI), usually ESC-[. If this sequence is
@@ -1980,9 +2058,9 @@ stray characters into the editing buffer. This is unbound by default,
but usually bound to ESC-[.
<P>
-<A NAME="IDX178"></A>
+<A NAME="IDX188"></A>
<DT><CODE>insert-comment (M-#)</CODE>
-<DD><A NAME="IDX179"></A>
+<DD><A NAME="IDX189"></A>
Without a numeric argument, the value of the <CODE>comment-begin</CODE>
variable is inserted at the beginning of the current line.
If a numeric argument is supplied, this command acts as a toggle: if
@@ -1993,43 +2071,43 @@ the line.
In either case, the line is accepted as if a newline had been typed.
<P>
-<A NAME="IDX180"></A>
+<A NAME="IDX190"></A>
<DT><CODE>dump-functions ()</CODE>
-<DD><A NAME="IDX181"></A>
+<DD><A NAME="IDX191"></A>
Print all of the functions and their key bindings to the
Readline output stream. If a numeric argument is supplied,
the output is formatted in such a way that it can be made part
of an <VAR>inputrc</VAR> file. This command is unbound by default.
<P>
-<A NAME="IDX182"></A>
+<A NAME="IDX192"></A>
<DT><CODE>dump-variables ()</CODE>
-<DD><A NAME="IDX183"></A>
+<DD><A NAME="IDX193"></A>
Print all of the settable variables and their values to the
Readline output stream. If a numeric argument is supplied,
the output is formatted in such a way that it can be made part
of an <VAR>inputrc</VAR> file. This command is unbound by default.
<P>
-<A NAME="IDX184"></A>
+<A NAME="IDX194"></A>
<DT><CODE>dump-macros ()</CODE>
-<DD><A NAME="IDX185"></A>
+<DD><A NAME="IDX195"></A>
Print all of the Readline key sequences bound to macros and the
strings they output. If a numeric argument is supplied,
the output is formatted in such a way that it can be made part
of an <VAR>inputrc</VAR> file. This command is unbound by default.
<P>
-<A NAME="IDX186"></A>
+<A NAME="IDX196"></A>
<DT><CODE>emacs-editing-mode (C-e)</CODE>
-<DD><A NAME="IDX187"></A>
+<DD><A NAME="IDX197"></A>
When in <CODE>vi</CODE> command mode, this causes a switch to <CODE>emacs</CODE>
editing mode.
<P>
-<A NAME="IDX188"></A>
+<A NAME="IDX198"></A>
<DT><CODE>vi-editing-mode (M-C-j)</CODE>
-<DD><A NAME="IDX189"></A>
+<DD><A NAME="IDX199"></A>
When in <CODE>emacs</CODE> editing mode, this causes a switch to <CODE>vi</CODE>
editing mode.
<P>
@@ -2756,7 +2834,7 @@ to permit their use in free software.
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="rluserman.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H1>About this document</H1>
-This document was generated by <I>Chet Ramey</I> on <I>February, 8 2011</I>
+This document was generated by <I>Chet Ramey</I> on <I>February, 11 2014</I>
using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html
"><I>texi2html</I></A>
<P></P>
@@ -2918,7 +2996,7 @@ the following structure:
<BR>
<FONT SIZE="-1">
This document was generated
-by <I>Chet Ramey</I> on <I>February, 8 2011</I>
+by <I>Chet Ramey</I> on <I>February, 11 2014</I>
using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html
"><I>texi2html</I></A>
diff --git a/doc/rluserman.info b/doc/rluserman.info
index dc06b20..1aefd34 100644
--- a/doc/rluserman.info
+++ b/doc/rluserman.info
@@ -1,28 +1,19 @@
This is rluserman.info, produced by makeinfo version 4.13 from
-/usr/src/local/chet/src/bash/readline-src/doc/rluserman.texi.
+/usr/homes/chet/src/bash/readline-src/doc/rluserman.texi.
This manual describes the end user interface of the GNU Readline Library
-(version 6.2, September 6 2010), a library which aids in the
-consistency of user interface across discrete programs which provide a
-command line interface.
+(version 6.3, 6 January 2014), a library which aids in the consistency
+of user interface across discrete programs which provide a command line
+interface.
- Copyright (C) 1988-2011 Free Software Foundation, Inc.
-
- Permission is granted to make and distribute verbatim copies of this
-manual provided the copyright notice and this permission notice are
-preserved on all copies.
+ Copyright (C) 1988-2014 Free Software Foundation, Inc.
Permission is granted to copy, distribute and/or modify this
document under the terms of the GNU Free Documentation License,
Version 1.3 or any later version published by the Free Software
- Foundation; with no Invariant Sections, with the Front-Cover texts
- being "A GNU Manual", and with the Back-Cover Texts as in (a)
- below. A copy of the license is included in the section entitled
- "GNU Free Documentation License".
-
- (a) The FSF's Back-Cover Text is: You are free to copy and modify
- this GNU manual. Buying copies from GNU Press supports the FSF in
- developing GNU and promoting software freedom."
+ Foundation; with no Invariant Sections, no Front-Cover Texts, and
+ no Back-Cover Texts. A copy of the license is included in the
+ section entitled "GNU Free Documentation License".
INFO-DIR-SECTION Libraries
@@ -38,7 +29,8 @@ GNU Readline Library
This document describes the end user interface of the GNU Readline
Library, a utility which aids in the consistency of user interface
-across discrete programs which provide a command line interface.
+across discrete programs which provide a command line interface. The
+Readline home page is `http://www.gnu.org/software/readline/'.
* Menu:
@@ -394,6 +386,12 @@ Variable Settings
characters treated specially by the kernel's terminal driver
to their Readline equivalents.
+ `colored-stats'
+ If set to `on', Readline displays possible completions using
+ different colors to indicate their file type. The color
+ definitions are taken from the value of the `LS_COLORS'
+ environment variable. The default is `off'.
+
`comment-begin'
The string to insert at the beginning of the line when the
`insert-comment' command is executed. The default value is
@@ -479,8 +477,10 @@ Variable Settings
`history-size'
Set the maximum number of history entries saved in the
- history list. If set to zero, the number of entries in the
- history list is not limited.
+ history list. If set to zero, any existing history entries
+ are deleted and no new entries are saved. If set to a value
+ less than zero, the number of history entries is not limited.
+ By default, the number of history entries is not limited.
`horizontal-scroll-mode'
This variable can be set to either `on' or `off'. Setting it
@@ -512,6 +512,22 @@ Variable Settings
default value is `emacs'. The value of the `editing-mode'
variable also affects the default keymap.
+ `keyseq-timeout'
+ Specifies the duration Readline will wait for a character
+ when reading an ambiguous key sequence (one that can form a
+ complete key sequence using the input read so far, or can
+ take additional input to complete a longer key sequence). If
+ no input is received within the timeout, Readline will use
+ the shorter but complete key sequence. Readline uses this
+ value to determine whether or not input is available on the
+ current input source (`rl_instream' by default). The value
+ is specified in milliseconds, so a value of 1000 means that
+ Readline will wait one second for additional input. If this
+ variable is set to a value less than or equal to zero, or to a
+ non-numeric value, Readline will wait until another key is
+ pressed to decide which key sequence to complete. The
+ default value is `500'.
+
`mark-directories'
If set to `on', completed directory names have a slash
appended. The default is `on'.
@@ -574,6 +590,11 @@ Variable Settings
be listed immediately instead of ringing the bell. The
default value is `off'.
+ `show-mode-in-prompt'
+ If set to `on', add a character to the beginning of the prompt
+ indicating the editing mode: emacs (`@'), vi command (`:'),
+ or vi insertion (`+'). The default value is `off'.
+
`skip-completed-text'
If set to `on', this alters the default completion behavior
when inserting a single match into the line. It's only
@@ -788,7 +809,7 @@ variable assignment, and conditional syntax.
# You can re-read the inputrc file with C-x C-r.
# Lines beginning with '#' are comments.
#
- # First, include any systemwide bindings and variable
+ # First, include any system-wide bindings and variable
# assignments from /etc/Inputrc
$include /etc/Inputrc
@@ -988,12 +1009,26 @@ File: rluserman.info, Node: Commands For History, Next: Commands For Text, Pr
`history-search-forward ()'
Search forward through the history for the string of characters
- between the start of the current line and the point. This is a
+ between the start of the current line and the point. The search
+ string must match at the beginning of a history line. This is a
non-incremental search. By default, this command is unbound.
`history-search-backward ()'
Search backward through the history for the string of characters
- between the start of the current line and the point. This is a
+ between the start of the current line and the point. The search
+ string must match at the beginning of a history line. This is a
+ non-incremental search. By default, this command is unbound.
+
+`history-substr-search-forward ()'
+ Search forward through the history for the string of characters
+ between the start of the current line and the point. The search
+ string may match anywhere in a history line. This is a
+ non-incremental search. By default, this command is unbound.
+
+`history-substr-search-backward ()'
+ Search backward through the history for the string of characters
+ between the start of the current line and the point. The search
+ string may match anywhere in a history line. This is a
non-incremental search. By default, this command is unbound.
`yank-nth-arg (M-C-y)'
@@ -1025,10 +1060,16 @@ File: rluserman.info, Node: Commands For Text, Next: Commands For Killing, Pr
1.4.3 Commands For Changing Text
--------------------------------
+`end-of-file (usually C-d)'
+ The character indicating end-of-file as set, for example, by
+ `stty'. If this character is read when there are no characters on
+ the line, and point is at the beginning of the line, Readline
+ interprets it as the end of input and returns EOF.
+
`delete-char (C-d)'
- Delete the character at point. If point is at the beginning of
- the line, there are no characters in the line, and the last
- character typed was not bound to `delete-char', then return EOF.
+ Delete the character at point. If this function is bound to the
+ same character as the tty EOF character, as `C-d' commonly is, see
+ above for the effects.
`backward-delete-char (Rubout)'
Delete the character behind the cursor. A numeric argument means
@@ -1239,6 +1280,10 @@ File: rluserman.info, Node: Keyboard Macros, Next: Miscellaneous Commands, Pr
Re-execute the last keyboard macro defined, by making the
characters in the macro appear as if typed at the keyboard.
+`print-last-kbd-macro ()'
+ Print the last keboard macro defined in a format suitable for the
+ INPUTRC file.
+

File: rluserman.info, Node: Miscellaneous Commands, Prev: Keyboard Macros, Up: Bindable Readline Commands
@@ -1847,29 +1892,29 @@ permit their use in free software.

Tag Table:
-Node: Top1373
-Node: Command Line Editing1827
-Node: Introduction and Notation2481
-Node: Readline Interaction4105
-Node: Readline Bare Essentials5298
-Node: Readline Movement Commands7089
-Node: Readline Killing Commands8056
-Node: Readline Arguments9978
-Node: Searching11024
-Node: Readline Init File13177
-Node: Readline Init File Syntax14332
-Node: Conditional Init Constructs29394
-Node: Sample Init File31929
-Node: Bindable Readline Commands35048
-Node: Commands For Moving36107
-Node: Commands For History36970
-Node: Commands For Text40376
-Node: Commands For Killing43104
-Node: Numeric Arguments45248
-Node: Commands For Completion46389
-Node: Keyboard Macros48360
-Node: Miscellaneous Commands48933
-Node: Readline vi Mode52791
-Node: GNU Free Documentation License53705
+Node: Top950
+Node: Command Line Editing1472
+Node: Introduction and Notation2126
+Node: Readline Interaction3750
+Node: Readline Bare Essentials4943
+Node: Readline Movement Commands6734
+Node: Readline Killing Commands7701
+Node: Readline Arguments9623
+Node: Searching10669
+Node: Readline Init File12822
+Node: Readline Init File Syntax13977
+Node: Conditional Init Constructs30683
+Node: Sample Init File33218
+Node: Bindable Readline Commands36338
+Node: Commands For Moving37397
+Node: Commands For History38260
+Node: Commands For Text42416
+Node: Commands For Killing45400
+Node: Numeric Arguments47544
+Node: Commands For Completion48685
+Node: Keyboard Macros50656
+Node: Miscellaneous Commands51346
+Node: Readline vi Mode55204
+Node: GNU Free Documentation License56118

End Tag Table
diff --git a/doc/rluserman.pdf b/doc/rluserman.pdf
index f0a2d2f..48f73ff 100644
--- a/doc/rluserman.pdf
+++ b/doc/rluserman.pdf
Binary files differ
diff --git a/doc/rluserman.ps b/doc/rluserman.ps
index 46c7f69..4ce4517 100644
--- a/doc/rluserman.ps
+++ b/doc/rluserman.ps
@@ -1,6 +1,7 @@
%!PS-Adobe-2.0
-%%Creator: dvips(k) 5.95a Copyright 2005 Radical Eye Software
+%%Creator: dvips(k) 5.991 Copyright 2011 Radical Eye Software
%%Title: rluserman.dvi
+%%CreationDate: Tue Feb 11 16:57:26 2014
%%Pages: 32
%%PageOrder: Ascend
%%BoundingBox: 0 0 612 792
@@ -11,7 +12,7 @@
%DVIPSWebPage: (www.radicaleye.com)
%DVIPSCommandLine: dvips -D 600 -t letter -o rluserman.ps rluserman.dvi
%DVIPSParameters: dpi=600
-%DVIPSSource: TeX output 2011.02.08:1113
+%DVIPSSource: TeX output 2014.02.11:1657
%%BeginProcSet: tex.pro 0 0
%!
/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
@@ -43,19 +44,21 @@ 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/IEn 256 array N 2 string 0 1 255{IEn 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
+/dir 0 def/dyy{/dir 0 def}B/dyt{/dir 1 def}B/dty{/dir 2 def}B/dtt{/dir 3
+def}B/p{dir 2 eq{-90 rotate show 90 rotate}{dir 3 eq{-90 rotate show 90
+rotate}{show}ifelse}ifelse}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
%%BeginProcSet: texps.pro 0 0
@@ -76,23 +79,38 @@ end
%%EndProcSet
%%BeginFont: CMSLTT10
-%!PS-AdobeFont-1.1: CMSLTT10 1.0
-%%CreationDate: 1991 Aug 20 16:41:43
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+%!PS-AdobeFont-1.0: CMSLTT10 003.002
+%%Title: CMSLTT10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMSLTT10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMSLTT10 known{/CMSLTT10 findfont dup/UniqueID known{dup
+/UniqueID get 5000800 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMSLTT10 def
+/FontBBox {-20 -233 617 696 }readonly def
+/UniqueID 5000800 def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMSLTT10.) readonly def
/FullName (CMSLTT10) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle -9.46 def
/isFixedPitch true def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
end readonly def
-/FontName /CMSLTT10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 39 /quoteright put
@@ -132,203 +150,363 @@ dup 119 /w put
dup 120 /x put
dup 121 /y put
readonly def
-/FontBBox{-20 -233 617 696}readonly def
currentdict end
currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA0528A405DF15F03DB1C3DA8B850431F8
-0E5F73DAC973450D1ED0530313057E971FC7E7CA88E61DA6DB9A5CD61F0F76CB
-4DE9105D0627B8DDF51A655098229920CF429CDAFC3F7788C95E7AB30E84F840
-8CED52E98DB4CFF161D2E62B0D28CB8B0AC82E7A8D2C007953BAFB3056D66079
-8064956E257D31C13509FB81A250D9E875C77A4E91CC49E9FB3C0718B2F691D4
-B4A64F351F4DD68133DED7629B0D96E5124584A16FD2AC7A3EB244A934FF059F
-ED7297B0505F3C2994AD66A3CA5D2728B034DE94B64A8AFAF341601BD4DB5858
-C9950A8BB9C598B8960609F48116ABA8C007190AF0ED335EB5BF61BA6871FA5F
-EAB5A26AEB5C7C352EB80799CEB983F19EEFA801093F62086AADD0B80BB6580F
-2CF61B1390FA56DFA1A0B61C58DEF96BA767A8A37EA44730783C600706606C60
-4EE74EA99B7C0F8E2525C8847F3D31907C3C483EFA98F6C416B6B2C343DE6370
-52FAE423008D086A76A1FFB327CC7FD84B1C66B203A4F41582F4599A82F8362D
-38108452EACCC937FFC4F3ABBFE3628DF51367DA6BA3F6826FC6522D6AC5E8EA
-00BAD300FFB6DEDAB93237704202BACD030AA824B1E97C0AFE17FCE8C75F4FA0
-B8A74329A6CF1788C7EB34DA7307411E9AD7ED8D6582884456E06E033B4FFE7D
-CD4DD8B06AD01340CCCFBC382C18CA451E4C886B01D082FF8CC5793F4727C3DF
-B52B4F1A242F31D1EB79D1E39A1D4FD13D6C5E2A42AD4B4D1CC4EE7BA0E5F80F
-802E5AB57EA15F4DE44D82AC408AA86D4BF58EF967FBC6497BBC7F017C0598AE
-32CF865DFFF0FC7FF9E6DCE9B5F2F4C7491AC674F46E8E7660452CE0A77C1EE8
-00DE382ABED85350033F8ECB97398E4E0A75D4877A107F6A909D0C76D14F9A96
-8A6CFDE3FD9D79B6FD82693A9F354BD2ECF30C6D99F7AC522F8D6C93EA214F7B
-3D0ED77F042ACDE9414264C0698E86398562E2C640DEBBA0734AB4C3ACE3907D
-CC79E6B2C6C3C3F9B01526E8CD98237D4A9B403FF8CE3132222FA60C196A19BC
-A2393AE6935C0F8B67FC1D1A12A45ED5F28B5D6A266A3ECAA5BC3429F2B2FFDD
-70F50A94CACA6AA6B2215B41EA683DF13679E9C950276294B15370256F17E3E8
-5FB8B575E7D4A3FC9BD8A5FAE6FCA53DF678F37701E83F18F1E116E901A39DCB
-C05CF72BFAF7FD8CC6A63A23C1CFC064EF32F3F67EE47B4209A5F83A5B2681C7
-8349B0C686E9D9844242C28DEC5E33DF480418F784EF676681D52ED234561B62
-4B7896DEC847A783789BFA4159279438404D596C9E6789B5C63C749AF0C3FBB3
-AADFC022B8682FD21F13460FE480C6B8CC1FB4EAC8E7AAFDCFDAD39508EF9B61
-BBCC73F90FB40E94EAC04892831753F15E06F77399F8ADB508F411A89A0399B4
-240C28E4DDDA98B9E771FE6AA0E2C8DE04DDA8AE54BD1A90DAFC1B0B66964F3E
-31475DBBC3D3BA2CA2C3D55D91917F6E496EFBCD5CBC46A27DB7E3FD229DE5AE
-A194E4B767F933C434D204BB080A5C24805A23E477BCFF6D19DB22FAFFEB97CA
-5445129773D40A43537F15EE90CC399EF58C31253BBC0177D05A1DBF23EB26D0
-159FA4D20E5E5B04A125FFF85CD1154B20BC5BFBA18F87670A2BF1A32A696A70
-4E82EBEC804D798202DAF537B468B5880FCAC75BDCFBF65FE6EBB93A1309D343
-09CCF1B81155761809E4ABA53CC9BF8D3FEC5602A6F3561CF2AF6D0A35B8876A
-8BE4CCBCB2DE4E4D07F50F9C5F831C499ADC35827F7F7BE7E1E0CE1BF2E3578E
-FA292C0CFCA10329156FC79BE3D80225794DE7062B8CE232355007F53F9184BA
-93F2C8F0EC8FD88F01397E1EC2ADBAA889C003AE4847BD08FBD9673C4B4D20D7
-53D0FD11FE4DE30AF01AF0141573DEB0B054DE244035E6161962D9BA836D42B9
-8B8006A40E357E28859D867052CE7DAA86F32641C1764A51F631CBA3FC206667
-81863B28C5BEE78C574F1946253D192C50CED9746B01CF4BEDDB5AB7492E36B0
-FDDB90206C5410551EA2F44E427B6A254FB2E965932DFA8A4465B509276CDAF3
-CFE6FC9963F801813A03D434B74273BC4FBA6FFB8545A10B453F8AC8086DA9CB
-49A701C500FD3D1577A215026EEB1AD2616223CC65E34CA84D1BAB896EE60C08
-7708BB0E5FFAC9EE1A24F72F03C13B8A275264CE267728084388365FF79B895C
-B65A33011BBEB2356016786F62EBCE765891CCEBC5A57453AA1AE771147D23C5
-7E289B67C94A4C7DBB3520A7E5BA938DDDE360FF69484CC4F31D57271BE2D19F
-7E689DD8373EC2CF7E3874711F3E3EDEEB09435AA0909418AD76074944C06BC6
-10C087339F57A1C828E1DCAC8B6F7D1F94A25133D72E68BA0C15586C997581B5
-957F59D0445D39E0F8226D4C621E9B12256EB583A7EE4A5EBD15B3E6BC9F6687
-28735EC4962332DEAD2D2A28714FB8F606B358E3E9ABC868E169E3FCEA409A48
-6998A5F444CE13F65F3F9D4B2A90CF483346348E4E6B4868C442C83726634EA4
-D4917AC8ED021012707DFC72926B58917264925482CA53A2BB96E2FC58A6083E
-4D7193E39B0B20EA7BC306FFBD70D434795176E77DC76C9643560472AC2718E2
-9A70D6973D0903263D1DEC1E82752CAC7AC2EC5442D9151BF459C27D96A28096
-42ADFD3D9FAA7A42A2EBE9CA3D7DC90AD0A6BA1B9F5224FBE0051352176DA443
-039B52443A0031BCD66485F49B55D7DBF4F4EB7E4A87DCF7A1F3F345EF85DA6D
-30CA6E389FC39930850B63E8EF3523AE1FF188DE5E26766C160A2F1631E1846D
-6DAEF695D585909E1F9A85C551B864046B534FDE0A35E54ACB3EDCF34A87CCC7
-C6073D2761CF74B07D154A4C560F5595A87250E3549E3706A402F3CC879AB051
-796A168E1197187ECF09AC42398AE4085F4C70EFDF98C387C232E3C323C6C496
-5EA1A799D2EC3E9E6C8060ACFFEB714FBBF8210D285D871A40DE8C39DF37FE1F
-241491B1B483A0B7D95DEA6E211954DCF49DA353F4A71CD9E0D144E84CE4A426
-8558F4B2BC06A7D44C961B6ADABA9759D1FF06DCFDE125D0947BC6982C375891
-72762550A44639B5E5E19EBD541848342C060714443D5E96537E1A214E9843F0
-5321B2479DFEE8DD1836B48CDDD5A117E20032334F18267B7323BCEDE5896BFC
-F0D91FA4B1AD0C4E38D9906ABD7009FB69A77CD280BF9BF43772371975CA6145
-A96F562D335A5B4D1366F728243C521B01D9008E655890AACABA0C45DCB1F45E
-BB6CABA51B1D31EA51637D0EE279B49257EE30B587E17DFF959E000AAA048D31
-F998B857205295CBE7177CDF44CC9BDA33CBC918B0AE72187BBB0BC23696F7AB
-1BB5A7D3705FE0579F20707008CD2A88D110343AA8B827A5EE6118F5D846F250
-6FDBC37270FB344E37B33F5F6DF16920CE3518BD459A8349CB87F8D9A61F36B8
-B1D26717D4BD4B8E76E283489718D38C66D0B4473D577F373F9A938705E0C620
-CD56F9B105C4E65B56E55CDD6893B3441F8B215C17E35E3EE4E734AF17C48895
-CE02A9B55C7738B8836EFEBE12AC9E6488CE6C828F2422EFBFDB4EBE80FD6E61
-0D0B85F1DFF9B8F319B0B696E90F60312506934F212454E10C673DF013C6F913
-E60BD6301A9AAB7DAFE5D6193731260024AFA425D46B4BEBD55133A3BB27B27E
-8837C39FFF999C01E9A3EB8905D2FFD482348BC97C07E7B2256CA33303322A5B
-587B1FF198422716A4577CE681B120C4D074EA2B3C275646B853360FC134D674
-0CF1007077B35E3A1D100A3C620BA005BB9F80444DC927E6AAC738DE5B3F87EE
-190B2FF31CE1B1A0AD34C19B28DE21136462A3591002EDB5CBDC06E09326733A
-8498626848549F36B077DFB2A2FCCBB775BAFC2C46BA20811049B7AF4F34C009
-71468C3641D8ED8616C21D1DC90E21A72AFE14B5F5718A42F11F46F2C3CF3FFA
-992DAAA3A3BC90073B3E2765C75F05A5EBDE85F37826131DCE2967089E8F7E69
-F16B41BCFB8914BF2F0B806CB35B133564224C0C9C1D6E3032D276D5464873D9
-0D17CC512E5CFAB6570D61E8D023D2CFE020212DB7B0FBF3D324FA5B3AFE7951
-E8382B7A8FDEBBACAE4B02CDD3D1791C79A78B9D49F20FD6F22B7E55CE36836E
-31A5B619B305CDDC722F6AC84CBC0D49835647204BDABCFF59D9F3B5EA22D533
-F316DD5EFC59A7F645AEE0BCDC07193111510563159EF684A739CE67EEB77638
-54F0C3D4E1A54801F4887BAD58EEDA68539B2A43B5B5D79369F74035966F07E1
-3FFD43FFF05F7EBA48DB0F988F34A44A0B15B028508868EFEA89F22C61DBA74C
-E04F9DBFD28DEC1EBC536587EF7A8DDD7B0ADAF459C0F22C24DC2D8C797C14B5
-9370504500422265C0AEFA2A8C367AD89ABC057E4B6043D991EA59564C1ABD06
-6C6E9147806C79DEA43EB8B7D0560DEB9C81766B9D79608A91D7AB606A7CD6C6
-276BF4F7E294BD0D0D3F94B321434B1A9CD4206E3146B3CE1113D62E7791BD79
-9AE322A997557EDC27045FA4521AB379253C27A4A234662FB4F73AE398C4C9E0
-2D4B3E7EF5F1E5BEEA50FE62B8AC0D42C131FD507D6D1735FD79F8223516E84E
-755930A2E30B80E63A6B24CD4244584BF7E93083EE46EFD9CD19A71A4B8453AB
-233710DC0AE68FAB2B1D9E3A17DE97AE09935E0056589BB7B3AFF3672B406CD8
-E914F786600C5B7AC4E8C57BB65B580A02BE8491E0D8E5817A99C4695E1D3A27
-12E5F7A945BFDB67E2CA285C3ABE5C15C870530F588E0B8686A4C551941BB2C4
-9E9A8DA9A4D4834E09A78F824F60A84C4A84B6C5748BA8D752D0CAB8CABDA89D
-8E21E4FC69C5994E3E100967DBFFA4D2E12BB0E73ED53EA1AD925855DA1A77BA
-1231422722DA75174ADD0F0BD549B6BD08114D32BB6E728DC5DBE05CC0FB960B
-F1D35253BA31654C6E6DD306285953AA681E9E1414D5F23CBF08E29A5B38F69D
-99C6E44DA0C42FB260F1E6D4E947215A0FF41F756177180D3754737C0BF59083
-C47C302D87268AAED752370EFDBC276D0AD59C5A75CA13B292437DA5A90B1713
-723728166637A3C4805B4A2BA8CA1F20B4FD331043FB69331E485BF48025BE08
-6369DBD8FAF526B08E633223D011E1E81BE662D98BD64917F09BA1F4277BA164
-4611705F5ADD316341366D3BF8CAB85A21C88F54792D05EAB91D985A557B4C99
-0BD3B4C020F20C860A6ED0E8CAD870045D69BC434F345EE42830FFCF7468CAF3
-93BD5666598D5CA7ADEC208006B7CF38AFA1A0BE24190E283841B9A5FD0696C2
-CB6FB04BE6108AB9E4CD3F772D78D7468EB761444A5B7FC8995D53880BF2616C
-522EEA33E0F27A5AA1EA25347FD12A1A95F11CF2F3625D56CF8A9FA23A4EC609
-035CD02CA0934BF6CE80DF59E1B60849B9B4A58C11E83D03BEA42A1A4AC10893
-4B92D0B99362180E29AFF2ACF9E0C99A156725071758399F318D720E37FB73DE
-9C5958CC9471C424B5F8E0C76FE28193D2C6514D0EACFEDAB7B76B713BC3AE3D
-57DA9D62396F7A7675CDBD164CE3320EC81A1ACE77EF63CC8FDD466564B8171F
-2157EC631437182AFC083A1B29C223FA944A54930A41824F76E35E5FEF17A836
-4440E9BB793DCDA897B938696458A3BD9C3DED24C2C638C3603939AF44DB144E
-5BCA51A7D729DFBE26E0884B22C0C4E3131AB82CDA170474168D89124A65B0BA
-91523CD1D67475C9D43CB7525451A27B62723867F123003A99B98F2C3C2A482F
-68FB4C42547AA6C4B9B1C8A4259A8A27305A2F0B147BBE39264F510142668128
-FE6610D8D748A20B9F75D48C3692FBFA1EBFE73A3279BD4C38DBDBA0CD429439
-F3C0FE231D0F381D369A1E356917184A4DE9CBB64F400C28B41DFD35F9F74FC1
-57F46400574ECE064CA9AAEA8D70A61F5BE95B5FDFECF87E04D4C45AC7D441A5
-88E6CF0C447DFC832179C012B46B19A7B2542EE40727DED27E08417639D6FDF7
-901CA1AF7385704E7EDF49D8A9AC990CE68A8898B02D618F8700D04426A5692F
-24640B4311C917D9D0B86E45D9D43B99DC81836AE454C14242D107BCE8E4B989
-D8CAA8C401A56CFA611923072B72EF56284AE467BB8E2B04AF81D1C968321611
-B4D1A07B8E2CD4ADA29A8DBE695BCB6F022C8C53E9F0210A0D08F9A531FBAF0A
-902E31DA6B2A3EC290F1A0EB4A5FA4FD504530AF768C15E3EB857849824EE965
-94E2F1974A60615DEDEBC4F4D8D70CA6A4385A45ECEBAC78C945ABFA42B90EA1
-17C59E615272A91488161C2B7B23A8B1F2C7119A49EB7226BEEB3A4C7CDB67DF
-11F945CF22FFED4DDCDDE1E9AD88C63A6A271883F9104CD7F596AA77CCACA8B9
-D5D772A3C0ABDE3F7BBFFD678744DB7540FBF0BDC9D00A0C7E9170A127D21C72
-4B81D78F949773598921A5D3F756CF5823ECE57613DDBEE58F3428BD29BFAC3F
-1EA57663472AEAAD48260EAC5912FC7273F102D1217BF43D6E52CFA93A991B74
-8C6489D7ABD79227C82F85E06D736602AFF3F497C64644DF79F460569F2C3BA2
-250D48D0C0EF5B4A3668BEDD804CD134A0E26FCA4BF071FEA9EB46D5AA52D66B
-4F954E3AB2BA1EA71EB9BE254AD0C5C39A408AF4D287AA24C533BE9BFC0853AC
-C31C43D8C419F5CD294ED38E56645A31FE4AB2C60D4486493ED8199461483F82
-EBDF44F1792BB87CE851105BF44213B35EA812CE967FBAF7304703315F2D126F
-12460B0EB045BC8E196C7816B105259BFDE8C8EC49A751B0DBD7367C0661EA7D
-1A79053C371DE08C233E1774998F8C86F78E4FF7E9239524A784509254D65002
-F9BE0D2A40488E0BE2DE6F336BB7337750F57F94B20764111594B2EAC17391ED
-3C20C8F3277E1E431D55893EA0CAB659ADBC502D85B75DE299044985575C09D6
-C2D275221C738B967F1C92E73FE4E43353845D74B103D6B57B442DDAB3A46B7A
-EF6E776D82B5B9873EF5B3AA77A18FA7069429441BB791123974281B720E6EB2
-6472549EB921883170FCFE289C00A159EAE56B9A8515482CBD5161B70B643718
-92D7BB3FC8E9E45F3635B242BD08FBD958C297205ED7FC812B7B70F65E979BA5
-73E7A7A348FB656843988DA4518F13814A14C336A4F2A610B5D9AD65CE1135F3
-3ACB2594B4204A0A852841F6D3EC52B4262AF8FD7B1E7A860105C85CB95D94D5
-C3BA8374B1DA93F493A25920058409C83B7529FFA6B3FFE79D7EA6F57E2E12F2
-A210EF27BF52F1A366C1B193821BD775FC92335B42854C7C11B253A653A74A7B
-D213A63B69BD0B1FFB4DFBAEBD66C1096C6F2C9B065B5F20E9B02478D1CB8595
-0F68DADA125FA3EB8B7602E94A31750DFCCDED8759E4D87110D7F7B05EC9604E
-364A9BE1D94E15B807C74E2ADC03047EE296179FD4F2C8BA93122598435D2D5F
-D3C824E327629F16631BEA2FEABEA5F49E5A9C4AE2F44D5390CE0628A6915660
-C177B8F431D31410DC7709D57275C7FC45F5EB14F71132FB3BC77C2A7B2EE446
-CEE143193419B97A5B25D1756FA017E17848159CB5FF55E5D240B4E01C83161D
-F3DC8D5D72000BDFE5F53F037CAF57994ACC60FF66417D6B5B6C9287323E201E
-A13DB21DCAE0AFBD2149E8620B22EC21144BFAED02E1B16980897218538DE59C
-E9B8009A4E0708802905AFDB35CC605097EB8CC6C48C73243364F184861B11D5
-070EBA71620C255AE2FBF270941222C302E8F0DA166423B88C3854C352B9E792
-ECD12B40F0B0A5A334695B6DC4360B0476E7993730524AB92DC9F8A74DBEA699
-F9F2C31D4DA3F4426595E729F9B7C88E7B46CC3172168F00EF3F60458D5475A0
-F1B42CDDD171E7E8C98C620CB5548F7CEB4E5BB758C197A09CCB3893D3117350
-F42328EAEB3F0034419A838D5ADCA8483BDF72F02E8821CFADC50E9A09A616E7
-4CE5E6CF698C3F919FD0110F5BFCA55E98753C67168AA91EFCDC2A4AB4CC6C18
-1DA72667621CD578C1E449F0E660B35F43244F09DE26C4ED62360AC69C8F8DAF
-DA76554E6E0F012CA451F0B946462FC564B1AEAB508EBD2B1A1E43D1E7136DB7
-8173F6C2D2837F0FBCA8864AB719C09898108A4273ADD74721F47AFB2850E12B
-CF897301AAA1432DEC0080B2D555BE3C4CE6E652C4806066CB2C19262F219291
-EBB6206B25A12120B1FB077E4638D675B3C50DE867E2C69D9B6BCA9394CA8B5F
-AA2D002D9FB8ECEFA144DBD51905024AB54D6EC3F82A0D625AFBBEEEF6C854F2
-7344A10BE1C8CA785D8C3B2DE606D00D19CFDBE7BF781AA177E651EB07705E1C
-2DD4A54DBB0ABBF1B57A1BA564FE5A9B12E39E346A387E05C4C3986D9CA23C2B
-B2E6A3B4CFD3AD177FC5366B55F11CE924691A1B4DF73830A44E67D750DACBEF
-1893527DABFB8970C3D8ADA24918158142D3EC5730F9202A7B9F61C4FFF4B09C
-C09DE278B71CA6A061396C3671D3F48E85D1E958E7AE94C0706B90B6906C7587
-CE5DC4A9EF4882C314CC987BCAD4A789A09E4D51F370DE4D4484652836363966
-C80CEDEA41FA816AD86C2D792B5B8D04489DE99F06B3C5CC0110C9F24BA5E95A
-E2D78D7FCAFB013BD160BADF4CF2D89F37EEAD80702E440CA21997CA213B96AA
-531A385C254518FD23F710EE0573E86499DFCAF6F038D74C9E617446DA8EF87F
-0861C3BB2FDF70EE95BAA0BD6728E9B4D9381C2B33E17D17BA54AA45DBDB8413
-CE1589C3E63AD7217F9C6B44FDBCAD121D3219A978EA2DBA90A27CF814B313DC
-58C578DF4381F5235499009FEB3CA7D0B4EB8F0839602341D676CD827449D24A
-D9E8223C40B5D34B0846BD9615090EAE3CB77D0B8725A3BD5B0A46558BDA5868
-3A00194345114644BD144EA11F49478FF77E259534791C200B0F98B2DDFF2106
-BB10EDDEBDEA6910C4B897B2BC1791DA
+D9D66F633B846AB284BCF8B0411B772DE5CE33C33655F6FF751F340A8D6C01E3
+2E02C24E186BA91B34A1F538959D4450CB683EAE5B034D030186901B458D3777
+6B3942BD2E07121385120248891AEC2EB33C4E3A0CF00828D0F130C31A918C18
+979FE94379C648EF21ABF659253E43CD1253866F157F1DF85AE7E8714F061B1E
+ABA3AD094FE8D6293916FA82EE4F486C7E513A06D4C9BE44306A8287970B4ABF
+B6D1F9274A5A0BB6ECF713ADBD1260D5D6C4420D357FD486470A74B2F0621B59
+A9373ABECDBF32FA68AABB66FAB0C970A3354A335FEDDA1C288245E6C890B8DA
+3D0EB953283ABFE372221EEB1586B0167F634E3F29CADCAB484B81A243CE1E3F
+D5106AD6BDB1AEC91123377F816711CB9D5140120FEA84B8205B79D1569509FC
+6B671211985CEF51691C45A168740BD826464B2CB0ABC575E7D453161328F80F
+3AF1C99EC219010EC6C95E0A8D1909719CF18BE424967E90DF67537220E60C3C
+4345B154D08F9EA684710E659DFFB0BA1B7FDDCD519305900A5E1CDA219A6C90
+DF8BD712A3686DAB90344E8784C7A9AF3318550285039B701B9FA1D3A3C3B6C2
+753F1E794A3463A173C99A9EC0E2AB5737134CEC2C97CD6A37E38692ADB4B131
+54697B7BBBB23680C72CE96066D8007B90AF0FC5958232AB4F21826691E9874D
+107F47DAC1026298D787989BD77CB43A09FC95F6997DB00D8483AE9C2716CBD3
+7CDF02DA34FDA2F0754ED0968270E118DDD8BAAAA65C41D699E2BCC2556AA231
+328187D2F50FD518CF458B0BA1F7DBAF4B231CFD61D5DC56335B53C3013BCCC9
+85690E19E992ACE55EEF2BA7A75DEE6DC33933C226FC1494269B7CA4CBAE987C
+2C787386400172AE3F44AE47115F4117EED866713BDDCA4A7AF658C49F913CB7
+308635000043F63BA210410A66E192289592882C477B2EEA0B2A339F0E7CF450
+CA0EF79D3A6C28598825CA03FD688DA60C95EF707C6E67CB7E57DE7A80545195
+739ACBDF27069F34C9E0216C3D17CFE7A652B910FCC9B9AECC2E646809C22D93
+FAFAD465DE794755AFF5BEC17160C9563B5C51D07022E2D3A256FB5CACE131D6
+F4B30F591A0419D957D8F0DCAA0A8D65A8D83422AD7C2613FF13A302E152B312
+3F1ABB45E42084EAC894FE335C07324849C9736D00C872C4551997DB889AF17A
+A52C5AA77DEB548B0103B77F65717F70B90C1BBAEA7BCB4959F32851A9882A3F
+55673F24103D6BF7FB3AD3EC3CC50FD8FBB4A6B13C3D278174320713A7B327CC
+A71F01E50840B33D0FC3F5F6A6F2B0F2D0E38494B1C73096A430510F927235FB
+69E931DA8CE5415EE88D0248565E3347353621A48F7948AC9EAB5F5057541B50
+82BA955D90BBC82E582FD71904445A59186022FB928015235B60830DA59813D0
+8DA3FC306C43FF8BB2CB6772B1F7BA3C1AA4B2343E7DA7E065EA53A4E5E28DC8
+0790F2D5CFB203CB135A08DCC9702B59A63290444F202756E55B9FB053F773D6
+0F69C63E74DE593E49186FF4304E8FA76C3E3006358DE549E946DB69431981E8
+1261C9C9A884E4EC708F69E6AF5D22C5BAC49F2AE85903E3D48D03B7B97054F1
+D2937A0C685D912D6D20A75A77712164DCBF8FE4D5460DACE139C5A934EEA09F
+B94DBF168A4BC03A9D689936D833018FF43837DF9519AD10F357F00BC068E737
+170FC9FC6715165F733A0B6FADB9ABB48B845167DBE6D771C916577FC2132863
+767DC6E3D460E779254194AA690983184D934F5E858C1176B3862B69B42EBE7D
+EC9AC4E020085D474093F7694C8A8C2025D4B0163E29320C384D62A9F3FBCB1F
+AB5A374EF3DBA48AC2147A207AEFE8B78BECEBC55C97B538F3A0FF4589D171E3
+826342C8A5186224FEE54E4C6AD5EB02BCB4088B132FA1A48362824BEF161235
+8E661DCFDFD8429C65CCEF63902D0E07C2FEC1DC2756D942F13FECCB7E8A8048
+345338F24B7808E46A04A915C111F939E2669A12FAC0BA4F74B832EAC83EABEE
+67E2817C058E69C2010F2572FDD15194CD8DF0FE9F827D349C0444A18D1A86FD
+802BC120A5114FA3523C221242C7E767B0AAF6AD15DA1561CE8EB18A2401D71E
+20481FA5F1E247CB5288F47795A6A3A3BB186E89EAAC4A54AC91405427136127
+5B151203426830F7CADABDB3FF63B40CA29CF8E667E71615869978E99E6F3F07
+0170EACDE3DC62DC05681D7680E2E96C30002AE34A4E5EAEDF88577601A82C36
+22D625A03B0451D7BBAAAE0C396711500E94A482EA787495073F16A76D1657DC
+4EA7C7B83BC30CE7F145B65B6E2ADC207D192CE3B5FEF7031F4BD64F57E1BEFF
+CCFFE06F1E4ECA48B442DF413766A70DA626359183A9B24C70419487423C816B
+4BCB067E661E47E172563090D6328BD738D2B0FE41A0C1D7A47576A79BAFC880
+0473229D134F998909898301CEF50A82B627A9A06DF59D0B9C530EC5D877F1E5
+220D3A1ABD2ACBFDF1933F92B3137B22B9F95A961D93B729307749A50D8A6403
+7AD0F9C40743E39B8D198CFCF7C033D99440D46D821D97545B930EF92E7AE005
+27F2FC766FDD4790FD1913C7A13328E73E587618ABD9008022C5C6C23935CEFE
+B5ECA2CEBA1D25DD846B48423F7186E03B1F61C8F1D5AC95CE03C83B2F221300
+7A761D6CB5F7F9251D3F9A7F4B25B99EE7A1347ED3059A811A82A35A033E9B07
+A4FB2A95009576F48665605C478E5F6C1B135016FEB4AE6A6BE4B4359836E04D
+45AA11366992162973FB6266547C2E570B8F56F6D992D2C0F63950A16839FE10
+F56E59D93A37573E3268C5892C9F3358753D1FAD6379E82BE740FA17236E96F7
+C53A2FF785FAB86AD17EB1DE8A6AA9C69B91C9D9B43B5188E51F6939FEC21B65
+AF17DCE95DD3BA4F1DD51F0BD5E5869A1ECA7398B6E664EB0D189181E9C23012
+DC1E54C146842A90909DBEC03B79B58909205F2CB2A7F83C66B437D7F7DB9781
+FF0C67F004E979C95B706D8D85255CCD827CF6196D847DB380B56980109E96CA
+997157BE78A4F758CE59D78158A854EF2C20099438F74777D3B0298D45BA86D4
+3C0AC30C984718FD62ABA0567AF0A70C1DD41953E3E7212D5C562085177E650A
+2ACD49940551E3F7619B4CC31DBF67AC15D938619B95DBF66E6D1300B1BB8605
+31C4011379FB5388CA49E4A9BD6C921560CB8D513F8716A0733D2A7D77E62D22
+A69B54E9048CA168D210816E613CF6357706EF6B118A1263B858B7E19AA98891
+43BD675B06C893579957BAB97199ACB82C080593ECB8B66A7334779CC16E4D0D
+4AF365CA6AF9727AE29417B61A5FD52452873B1D666044F8E7C1F6C6AA3397B5
+94A5780F4005FB5E41698FADD1594B505A58253D68D2AE3320E22165D198050E
+425820CC0A43FF1D61F168D87CDD30C14D387610B6CDB63BAA39B3EC9B3CA616
+FF1CC679227749DED3DDEA26B4D97C633090DCB8D8A6E5E07E3579E4A99BF1D5
+51E43D1D7F139C9CB1D76D8F693A3F23A74EFBE79F01E0B850BC6B6C7F62C2E9
+859469A144853434895D73DA6BD2B348A48BA80E79327ABD96539F2EA2209852
+E1BF6B0B819D7C68A9A1D0F6F39416E3EC4AC21DCD3C51D3B5B8D417EFAE165F
+2A7E0B76E558AC9F685A76FEC7E3C73CD607D9025DE6113BE5D0401887A53910
+82A813B026A502B51D484797D9D7E79A25B6624940AEDB4A15F2C73CA1AF60FA
+22D15BFBF268EB044FAE17822511AC6580D1D74DBA3C3335217780B29FEE792D
+200B00B8CD888A8BFF15D938FC758BB5CD9B3E08E1AC6CD1669E663BE86711A5
+892684DFCAF70C11E803164994BDAD89128AAD6461D4558AC2ECA3E05EB56D32
+0290AB16A6DF7133DDCBDEAE89C6CD83552792E23CBF567D57E46548EEB0A140
+437492B53C14419B6FE7E64AC23923A9E85F56A9DF209DC4E6BCAF1E045F9CA3
+BB904BFA150F4083C18B0CB5580450CDB657EA768E71222C71DA911A722AB9D9
+E18B6847F417125C40EA8A0CA1F551A4548712D098209C78DF9C3F78605E5402
+DA2DBE2218E49B819296D5AC88D17DDBA982E171733D1E9E295B3157C9B90BF1
+CE68CB185947D1E3D7544155B741296D14B064BEFD3E6AF25C74006CF6800551
+80FCAAEE6FC9105E1674EDFE68C45617D8D3E2264CD395EE94EDD017EB85884F
+FDF530EDF4F3F14750CA066F149E688FAF8EF4B5FE6AB515CD298E8D170346CA
+9B32BAD1D86DC147BD12EBEDF6CE1E749C5B48314F512470A568C172C35CFA41
+031E34586A89404CB5372D7B2C7A6D96F420D4D7C2D4C08184F4AF86B4536A90
+9367598424112A7B05D7107B23695CBCD569002290599E0FF4EC5C852C31F5F3
+9BD56BB840DC17DEEA579E7A7A9F764788D4E3774BD523D21267869224D68891
+4523070E80A123B58F7B579866332FC38A41A5915EC06F2D14FBE4A6CAF59AEB
+57E98D661637EBB885AA5D74AD429CCFF64E5149815E7350118E6385F4C74E0B
+2EB474A6DED021D429F01C9B0634A09250C40E22B3BFE1B7246D18116D585F39
+0E06E9B5F27A6CB77C8E9462189CB900CFEF08F798CAE15FBD94587F33816EE9
+03FB2DA6826EB69D8C284AB9F7B00630D0420EB6E35E0E288BA25F5C2345C067
+22412633898AF99C2FB232D1469025BF262B567F29A05F4816FE8EEF5F02BD79
+06202F6A1E3E5D4B3C91BA8D5FF53D5136BF70E5FAEF441A7310CA83721711FC
+39EE48BFB2FF287234B1A6102AF146B10A632A53AF97E11FFAC3A2A86BBAE3BD
+E0459ECF0305366078066F2CC628A3918E775E4236651B3D817AF1684B07A163
+A0142D16F55D2FB5F2255A8813B8E54EF3E801E95A4A226AB8C0476AC5EDCAD6
+9258ACB6F7C0CBDD298A0B816560622A1871FBE2FAEBFE697A8216A0D8FE30C6
+B1BA6C3E975F78182743842E7F851064037394142AC91B2530FB1D511EB20F3F
+79EDD8B7E1579D35F6E7B2883C47A46B6C1A458BECD6BE58AAFD834A7D82A553
+2FE4E66878E4699856DEDE964F454638F768AEDB595A883E380408F558015FB5
+8720954ECE2704AFAD4D62E8BB2657C4FA920D72248B3F762B2F12D125B796AA
+1C4BD6B42D766EC1C9B2C7AA4B6A3474BF753742DE8AB76D0AB0DD9A20EE2DCA
+0F34CB25995ED3183759CA83ABC32B8BDF0B06EF169252587971F7D37463BFA2
+BE36B2E45559DD73DE7CBE29DE92B9BE6B9F8093F934BA311D81E18A8DA92FC3
+312E3FAB43C53E803975981F0076EBB8F257C123908450661B6FA79E7ECE98F3
+B0A94E0DE3A4DCC8E0FEC106CDEDAA297A75BF1E40F3C2419BF72A644F452E2F
+9A8793810319885EB3AB23B1E80E8B62A889311355C73722C18E62711A7E6A16
+A5B923408444B13F6522FECA9A60B067EE332B83E1A69CD835C9D69B5D8859D6
+91F9276863D2E2E8193641E4239F4ED15E2C482C735BF5434BAA454EC2830C1F
+7CF766DAC9E924F17F03093132627673BA3D99DC2DBFC89E5BA032C16D3C1C8D
+78B3C464081044DB53C7A29E925F4157EEEE928C8E28EDA5F0A4BB6E0042D8AC
+7595C350645118172D04FBF06B2C9A9F3603A54B57999E2960C993724CCD6A09
+766BDF73F66E07FCA9BD09079CE8010E6CFECBE2E5DE1EA4E280AB78D5184C11
+016385007CB5AC0BC95955A1E88EA1A1D8EFEA886007708BA063F556D9284D4D
+C764E75CECA51BEE3D35DFCEBF6175953D30FDAC00F23B1721A1DD577945B5E3
+8176A21A649D907B5F63C71718ECF32ECCF1B26BF15AF694F1045CF98FC75278
+E9782ACD3D83CBDBEE690D29B3176E745AAE436382D258CB22F3DEDD02E441FC
+6A9931AC2F61156DE258DAAD5EDAD41E6C0DFC902173168BB4F51DFA7EA615C8
+B0F92FDB118378CBAC3D56B6B9BB0883C0C14EAA67396AAA7987222A132B7959
+44FC1E9D6DB6D549DFBEF8D2DD8C53DD3B66935FC239E74E2C440CCA13C068EB
+C4A3B69F499F573D076E2C92E24F2C69B806591B0807CD903E078683854963EE
+5125C3640860CEF37BE186DB781475554BFE6C528A9633AD5772BD53244E24AB
+42CA2D1123AF45FA257940CE611D83014DF04E60220E9AF27CB2A2247BBB004A
+F5722A5EF058FDC7DC2B6ED1406649DBAA58DF2ED3A91483D60F11C4A39BAF57
+CB1E320A987B790672CDD3E3BEF4A67032244DED2FF4588B2072CDABFEB36009
+9F4BCBEE16F811A44CEC77F8AE873C90C0F4C975E51014ECBD45A56A63F034C2
+82212977023A132E5C88AAA826D841FDE9CBCE7A01E4B6F0EBDDB9A69EFEBD72
+0B41EDA807CEDB791084047624BC11CE10B7A0A311272EFC9E013FA374D97EA5
+F7998FD908748CA72D8CABFD0F01220C2114D3B462B22FB71A23B284B1CBC7D9
+EA20BE71F8ACCED21F096009A14A7C7B51450BA51514707EB46B9FAAB31CFBEA
+E1DDA6F5D9AF0B6E7D05A1EEEEECD606427B0F2363D1B882B50140466B9D3CBD
+D00DB06DDD1BD4681E367DAA4B7C405C6281B67FFF794041738FC6A01D261CDD
+F6E0A330985F2CA782CBCC02B6F4EE5993434F656B91A51CC03B1D73FFA6629F
+14F6075EBFD83B702D8844A96CFB5C14051595BC7DB2218156A6DEDA5C98CAD8
+BEB5284D9D9F86406A8C1AE85857185991C360E5F44DEF352A1F301207BE94C2
+9A3A11BA468FACB3FA2D683419C44EFDD7C8F1079659F3ABD89D7F168B1591E5
+6105F9B3FA481BA953CD34CCFE73E427D3AFC46E5C58C2981198BA284DB8B37A
+6647BEAA561799877DD6858FCA71CA6003F2961FAA529906673EA94D82D78116
+4DAC81011FD175DA707C1E15D4B6FF19F8720A4E05E6E103E2DE880FA9C192BE
+C5ABE7C311C2ECCBCE8F9713DBA74AEC37A61C8F21F271B35F0F7C88B182525B
+A4183377597ACDA9A6E2F181725D427795B975BC4168A408D292CAA484BD1B8C
+9DC62E737ABC805C8FCB7E96454DA032B601345570EAE0379BDA84BB6D15D780
+42FA1E068A7D62F152B43B788513E13724666FAB4E2B4F04B0448194E46582CE
+7389BAF0D1DD4435BAA6B82AC305C04686B89FD51197C721D941BD2893596024
+1598E6C2BD84527EDA6FAB782033E4BB4F964FBACD96CAEC3F3CF89CBABF6B4D
+4D3AD14A03D4BE931632BB03BC2B92842FAD51A19A756892D5B978DB695D0540
+CC9D030C612E2B201D60D09F56332DD0BA1351EE62816C21A35C33DC11B37BE4
+D2F164ACD836A5CA1553CBC733E3B159860454B17064B4E22D3764FF6293BC81
+CFA3B2325C8E072857F6FF4ADAA8818247D431A28D3C5FDFBFB24A6CAA327AC1
+0B3630C84ED9F0D33B8255A3CAA9C5A0C79F7BF6BA3B9801C3BD0B30AEF7CCA9
+92F25E332EA97A7CC653C93D1497992D6B76363885B92ADE34C2A33E30A3B1A0
+57E9C16D8CEC189565808D3FAC92973C71CDE74DE9D8781CCAF88747758014C4
+5B62667D4D2CC5EBEBE77C5AD00C6A69D1819F5A786964501E077EB3BBEA52A4
+57729AEDF35253F7E1D31F2DD1587BC15CCFC1B0CA930DA83E2031B099A38158
+8D1849E7145AC74777A3C7136DEABB0C787E5A218309A65EC7D128147EDE3AE0
+C0AC039B56F767A22555CFCC12DCBC7F5A5A3B4E86EF5A69EEA93DF0BAF2A3F3
+7504F5C6A7A67388D2F9045BD755BEB7DFBC2EED679497EBEC808BE20FDCB5C7
+B586463BBB898DECCCF7249E9047DA943FAF0718A2050FCFDF8A4C2029FBA674
+EA64003AC03A847185936FC375CC67B3006EA681F61F640C3640A78D0C7FF521
+D477981E23E5956BAF42252463FDBEC49BB560A9428D248B0C5250CFA2A49CD9
+DBCEF73123C13BA382D3CF6A7B8A8CA3191D379A659F0E2C6E9CAFE9DA2AC074
+F622E397A2F7C73347364AE249B11AE2C34AA7F0D27B5F35D548D5AD1228597D
+D16A478C901D3A34D870BA39F770885B7DE62298F0114752435050E99EA4E5E0
+56B965EA185E8DF96B9FE97EE23DD45AADBFE02B427222B9FC99DA94FB2648B8
+46BD30F881BAD3820DCA4D8093BA0FE70E03482CC063B751439125623FA7AE40
+52DB2A380D89D5E37BF264CC73DA9A1540031587F481A0F146C6ED6F3F2957FA
+19477F075ACF608CD94CE466C1FC3EDAEA3ED25C96FE89A7CBFE528A33C4E84D
+465FE6FB031B48D904C5120D428D6B51F3232847CB0B7521E5CEA887FFC56F02
+0882B3BB7F5B0B954E7078DE3E31D8AE65F9EA55F4C169DB7C35DB9645617AFE
+078E03BF9A1BCE4E489AC9495A1E6CC7D1FFDCC03CEC1A32490186FE8B53B09B
+DBA7F0E23C8F5E5270D039B409D504203A458EEF12C035039A8AA12C719C0339
+F766BE6275511D585F82E9D4AC9B5424312755C4B74383FD094BBB24817D6525
+EE62456392E5DCAD0A0157A4A033E440AA014D5682606312F72248E13C43EC3F
+BBC9B4A2CF19A4AC6ED7F561EB13C3AB22FB3F3EF644B5B47DACE807262DE5C9
+50578464845B950140ADD91D72D28470A5A5FB134EC52F4DBBB9C50A7523592B
+C5BAA056E46F8C004062298BEA010C1CF9F49DEAB58C4D2012E04E630F54C985
+328DB2B6FEAC584308D71A9F5FD945A37EA13F3DEB1748320870057A362E70CD
+50C269D32993CE9CD1E8CB35BC6F69E7574F37032219C6E1C960F36932A8A2DB
+BAD87DCC271657EDF942834AD01C0C35437042331634D36C594CCBD796BB1562
+C5AEFD595E35264ABB2ABFEC7A2E066A7A454659804F6CD9DC64DE1112D95B55
+72AE34B6153425A5D15D9F944A3DB6D580C2A01E308E2CDB032F99617A73866D
+F2F2FB6E8617873AC82D4E2224049BC2FEBFE49527DAD70C079B92F08DC30095
+AE63E3E2FA213D52A347347371724EF08B39D7383D27131F75C2211F82C35CDF
+B78708DE910A5ABCA3075D985AB2E2EAEC2BB6159094F0C0C775C25AFF4F507B
+20070C4FB570D5CBCF40C7DE889378A9EE7E38175ABC3D5B047D1DD925990A04
+76EE4083F3CAEB8F1FF3D8FB0210C93738D68EE884FF86416A2EEF2356DB80C8
+39749F31D1D3751E91D84246B56D759969A6D52832891375DC26E92B7DC756A1
+A02F951C898CF665AB0C2C6D5B455FCA6D20E7F998D2523112A08E8EFE1B5DBE
+940EEB362AEE4EF83237348F7F0C08B490D125BD90107A035A8F5330F0F296F3
+DF4579D7B4A947CA1EC8975B1F6B7E3B077A75F2F42DE456E0D540CDFDECC95D
+F5B3FBB43590ED54FD98CBFD3A20C42C5B6B5ED2A5F0D4F06414757F992487C9
+83CCE2B4BA91825D14090D1EFC53596F92757BE8DCCB7EFA24C3A3D52DB61312
+C04533EE4424F37EE45DC6BDB79519A62454194332562388F3BF0246B40E9108
+7B64FC57054131DA8A4699CF65BFBB862D05519755E207BD0C5E4FF56AC2BAEA
+5D4FC6443069F6314E124BC02D210B8726D3ADF2EDB35E7CB1F92BB412C2AF7D
+547A1E309A63114B38B352702F7E48B931550F79C2487152A5A5CBD19C429BF1
+747D88BF1EC932CBC93F006EC34F9197CB9FD486F42A0D5D72AFBF21B9BD131A
+C89A979FA65013B3CDDA5D164DE3BB762BBB7A4D0DC3ABF3CF906549E2F76C17
+DF8BDB44689AA9140ABCF001781B8906C2B020EB95FE36B8978FA04BEC5E4D82
+B4A537520BDA62736EA2CD9B1EE4A126D7A76BE51C96AC556AE5BFF978C1598B
+6CA42A76139448EA4C8AC849AA3AD204D158854FAC6D7D43BE038F022460A50C
+1DC2B6932CC3DBCBC1C27390E29A474712004A5EA3E0A3E62786C2487EFA767F
+BCDEEAA4875ECA8A9A7C6F2FD1EB9DB79B7489FA8249D33E38599B948CBB7328
+430476A7489C004F1411BA1D5FCD64D478424920EF72530F3C4CCA9EE495ECCD
+125E4E2BB37BD4D4175950422517021F8EC140BC3B11BAA9E513F3DAB63CD245
+27A0A6F69A964E9BFAF575B5E36556A15B2F2FF787DFCC1EE704994A52F2E726
+958538808EE9BCC31BD5E126F848FFE5CDA11FD3F0377D9B814F515750374452
+D7A4BEE6B14BF4C1A75B2BA8083ED62E61155F1B396D960066D0A35D7CF19A5E
+C7856AEA2C505E68C8A0736CC1675F740A662AA8BFFFFE507465E7ECF934DB6F
+75004934154AA82EA699EABE6318E7E5B51DE3387AEBF11E41A413D986947FD8
+23ACB99110C93391DA8FD87341F337F1FBDAFD306B4B08FC69EFF21A6F581420
+893E94073A20778ACCDB074613F7FD68999BCA1F03A0E298CCE83D3D8C25E1DD
+8C25F57C440C5580C87C67C8F391C900F6615ECBA0AA505333A0E00F229F03B8
+69EF147556CCBD10694CB23EEA74CCEE50CA5E8F3DCC8225B950B51C7F0AA44B
+C1200E688A8A7CCB8CD763390992ECCE85F4855DA86ECFD21F57F12CEC09A5A0
+0A50B388C378EEB1C4BBC2BC19ADE95C3CE8A6CD901EEAA8DC6F62BD33A18368
+1B0C445FF57CAA3F690D872D42FE746D3AC94DC889F4AA191E824D66E8ADC3ED
+D7F7507F1DFD560D3D339C528714AEC12609448660243A1C24C8A31FEAA55E96
+5512E63BFF9CB87AA8805D066E71C70DC175FA3449879A44A1A6343561CBBF33
+B6465433C3C99BD06F2FB6A0CB4AE950A3F2F428AA2E5E344439E77B623E959C
+27CBD22A9B092B2604EE92524DF014DAD590A4F474484C2BA41343306A620019
+15B96AF752C312187FF3C1555B5142354F2E947391A96E64DFEEA65D99FCD2B6
+3BC07AB8D7709033C83DE8C9E18BF1490BCCF65D3E1CCD62FC09F7DCBD0A31EF
+70F21BC631CF5F4C112B64B4CA88662103C4343B55FDA36B0F78B6BE583E3134
+464FA2B9C8A2C5BA01338C0A0AEA7DC2CCD0D0E7A02C835C1072830582825BCC
+E7F31BD6C7A20413F5D21C054CD6389DE00C846AE1B558EAFF7E85D07C73C4D9
+CD9A1F33E0328C3B9340DC87FE981D655905D4E2341966C80787F35EAB88792A
+B2F35D91BDAE613DECD5DA192ED10FF454B0A754A14A565DCF8AC760007A333E
+413B53F179AFB886747C2460AADF6FD1DC09012A2ADFFA6FE5228177535E91DE
+71F9C9D82F84CA13A2F55E9EA931B1E89213EE9817DBB433A7EF0316E0624C1D
+45965146A28962980436F050A1E7EB35D18BB8BF8B82F97D64C827F68374CFC0
+E4DB0FFF944DDC0279F2E02108815F40E04EFC82368D19B89F357138F65EF9CA
+878AC45EF423580843F481F1394D5DEE995E0DDB18E2B5E2D04A463672BFFE79
+BB6D9957D3C2BA22DB79CD75DF28B99E6473FC222C6722B9C877D097BFB29C6D
+E5444CFD34880261E7008A372F128BE5CEE9D057486C1AD98E7AE24292D12231
+CCFE1B54DB8623BF68DBECAEC105E446891BF4473765DCCA7EFDA9FE6DF8E6D4
+90C70A79B1AF7AFE9AC5CBA07D0B839AAC2EA62842FEC9117959B10530C8A76E
+85F59E6BF476A0660025900EFD8D714A018AB06240808CFFE5A3766818603531
+AF3FA35AD28CA2C9BA31A2F42FB80BC1ECE71EFE2CD184B4FDC5F76AC2F549FF
+33AC81C11411C47D4857E5E6DB9204AEA0F7545ADAEA22BE42CC3BA7EA3F8B90
+C5FEC359641487D93C52D78CE25535A2A686DD4764C072FA8A56B982A3A7787A
+F124475DD5C2754430C7EC3527D81C272FB7AFEDC6F79E1988AF9401F2B989A8
+CFE1BD96B21D817BBC93BF77B99C8E008E7CC2E34F0AAF20AE88FFC0BC6C3721
+485DD1F25103245E854AB2B60226693E0AFA3EAE85CA52BD938BF31ABFEBEC6F
+4079449F99B5EF0A46E77B6254D4FAAE33FF8B2AA3469F0F0DD625BC4FFD004E
+E6C301A8052043E22ED0FA663364CC9200ACE4CDADCFBD28B721FB43EA7A3B6B
+F6112C35C224543482A7564D62A4A8F15FE329BBF3934DF9345320561E88CBDA
+1C0BF61D400C1539818D2BE38165B6439EA9B45CD0A686C7CF1310604309DE5B
+22987BC91A8E913F6EBAF74C65E8A546D876E46A50BB9A3420D5BE001E0CB34A
+A143776196BF8167006A1052A54001134D539870CECFFD45B6E37D5EF5A9878D
+2A2BB28710DD767C746767498AB23FBDD80706727CF0F556DF7A47A90DE30E5C
+A81522D5EC8C478BB58ACD1D1F0139D4C3561DB574AA8B1FBF0AB0A001FF78E3
+2A646659407760996E97CE00295CDA398DC0E8374B6A13C3EB2BE4226F01E76B
+A932DDAFD90D0FB739B9EDFB9A2472D6424A45D1A698D70766469EBFD9957CF1
+511F6BC41FB43B9517AADD5DF7997A4A8A8F3A5103BF6730B81845F20D160DC0
+E5AD923D9E24AA7DC293E45FBF7422B952A91A97139B15235D29CC52C5084F01
+DE89D2F11E7283A60E4688B54191DDC1159998D10215FE53FD89C87CE9D19041
+1F1E73F063436E786959943B496172A1C497DC002E00B29A4F752CA28BAC5434
+A98F9438064838B0D6252A05052EC8871CEF9FEF05A07B1E401E49324D463E41
+6B7DEBD3B405C9DC5953B93E48162D93438237F11ABE83189F9C1FE70E1A56A4
+CF539F7E9BA6B2B35BEB1586F59897F6E64340B88CA079DFDD1E987198604D2C
+3EB5C8178AAEB19B8D2840F0EF36CCEC7D25080CD1E0BD2B3317603E86FFDC4B
+A453AE086CE8AFB093D57733AA40977E9C8D33E3C87DE2D4C0522C40AF2C01C5
+2A7B86C2571F9B67AD85B35EC83224029832D2ADCE65E37748CE08A600641E03
+6BFCF2F024ECDB4AC2C4AFC4987D01C8F8E74715567F7116597A4318331A35E0
+7BB15E134CD721CBF49210AC06D161E7FE9146D43CB1181F464C7D3BB0BB40EA
+D19E1C33D6D9924AB13EE6C31428D6CDD9AEEBAE6510CDA14F23159CCD725A3E
+1F97ED8DCB17A10783B8CDC9315FC86703FAB6A70DF55E0AB8B4C24862CDCF11
+5F10FAA5E4E54660EA5EA05EAE168E36CA5255DAA0ADF9461176EDC9E3989A84
+0D8D7EAA08F4C766E1A078C3B7D091B9E22A9247A655CE4190A0217ECAF88495
+5DE38DD317E459AC61336D6E403CF8DD2ADD2946F933E1A72C18DFA96EF7C0E4
+0A2D84D3414F3DB23EE3BB5049B174431F4EEA10415D25E41C2094CC2D37C669
+2C46EA4568BB0BC49D1806B98607B8C12AB897E6AF402C6126D4484EB7D9CF81
+B603EECFD92EE41FEBA5F38A93DD24A239BA253BE3776F2368E1664142FF2A53
+5B40B694B20818A2A43226871AF1F7A5A68113CC55AABEAFEEE21E0F4E7641FE
+BB5403E96064650AE2703E43DF01A1594C8FE8646A44323D78E7A5A7CE2C2FAE
+F98F7D9A2CF888DD195FAEBFD1BBB05CE078C6003F9438205F8A3C2977C1827B
+906386BD4B483966FD903432A3A9A54AB0C4E7826CBB97C6808B5B529D5E24CE
+8C76A35EB073FD65944F54D1733FF75FD7F78F524F81CE0D92328FC171AC3DBF
+DB81784F11106137B72B473AB91F40F73B0B410547F5CF6613EEFDBF0F05092C
+3688C3C208E1C9FBF51B505FA0B5F906C5B0A05277772FF9EC806702F0E346BE
+83A535578789733FA68FAD54992C16F3F5F1B7560A729226FDADE4FB96AC09A6
+4C5D79CB60D85AACBCC89C04068803B47CF0FAB92F4267438A2E7CF7CD5C1796
+B07071D9F5A6DB95514B1B60EFE74DD9A028CBCBE850052EC2EFF81C411348E3
+F1ABDF1A4CBBFD7EBECC48F89B18E159DC1CFA0606C3BECE071E4C1759BE2716
+0705460FA9E022BDA1CFB2324C8B51B4E297838F07A5FE8E05FD99600F9E79D5
+490C251772EA34DA6649D421A872CF78A9B55BC0FA47E056A6CA9491ED65E181
+58E2A5EDC038C9BD89B3E975837FDBE2A9AD81F700BD263C25C85873E08DBCE9
+7CC2FBD904038CE72A110493B7ACCA882FD48F54B4E0109B095838F30D80917E
+5C81948F74E7F0D41652480CAB3B24E90570BF861EE2E3A5E1735636C7849C1D
+60FDFAB5386526F7312481A5146C18321F425EC74ED0D778926854C5CA875A57
+9205076C19AB866F5FD0439154484DA165A7CB69746199399E66E662EC2AAF66
+501B6706BA1ACA001546B753B0785AC885A5F13BFB4F76F05AEADA1D290708A8
+22A24FFEEAAAF3C70F89CB52EB655774832296C1FB440B4DC4957C7C32588435
+4FA6775C4BB9070641EB6CB74857A346B38E0F441D61D27489CB0230A23AB63B
+052C8453C969BA44B2B6E700D6286084AFD49A79DA416803200F715CFD9B42A8
+D53BC397262BB8F94C7D0A2D83E1249563098645D0E82959B76E1B05BEB19430
+4080218E58354FAE323F4CB4A3E20B21FF9FB791391956336DF8A6FB49A2DD6F
+A1F06C8C02464E67CDCB9013A4F8229E5A4F136A11AA204001D16C213691EBA2
+2789C03C9122FF21B891569D4D26C2487401AF4C9B310CADE991ADA6D091248F
+30D40520D46944AFEEE4B71D005191AD057AAF2BDCC166F084F29EBF3868C433
+5552509FC469A57DE66010A0538D2CEB7692D1A54B5139D2FC7FCE96C4E1A82F
+578703BE28B82622297BB08F76DB9D8E2A7C4B38C7A819372F72900506CBAD7A
+4B0014B7A9DA2E9AE84B24A83E0BD86D3BD8E0F37F9F0E56D6102C0CAA768E4E
+9BFCDB116780773E04554E67AFA899C9B8AE526257FBD25125EB7644E1AB35FA
+E9D6D716877D2A5E17130740CEFF27133D6A38BD2B2BB7BD17E04C21802EF184
+0AD5C85EDFF4234DE6B89B40F7489B4CD79F54B9B8683E611E372768C55FD93E
+3BFDDBA88B1B60240AC09A05960F9134700A97DE7E6031F5644F83B5A10264D9
+6118C440225E4864A2AFC406BE4A8AF3F6AF8F3B48AF8EEAB503BF7A66C840F9
+825D9D44DEDCD92A11EA70FE597AD39C0CA0F1C6AFD5750D6BCA09D230024DAF
+09F807B23F356891C031E0DAB363DADC371166D728755CA4C375A846C46E7B37
+695A8C66F99132593D066D0757C3E92F64AFF193D211B41405A3E528172C2592
+30A0E1E147E95C002F2BE67E1FAC9C062FBF5182A0726E21CB87BC80E15FA68D
+9E8FEB1888C4717BAA97A135EC4B5234135A64DE68833D1FB55EA7A327C5A9A9
+78312C6B32D66B57A4834D6004D83FDDAB7905D94E0AD3DFAB8A4D5D081F2FD1
+4CEDB8C3D8A344C3596A6E033DB4CC4A2BCA9A86D8858830DD5006D7C7D91F53
+560F76B6B4BAAF3DCEC3704E922E3F32C3A450BCCC92E359265201F07B99BD2C
+24377943614ED7A97E19D988476569CD51B0E85672F4AE6D6D46382A73DA624C
+5188F727DACE6E5BC2F33411206A566B6F830EBE79CC97F295A269141FA8E565
+496EBED5EBDA3E6C7DD9ACDC9AA9864C7F26227F68DAD420BF8AFA428D66F3ED
+3919E517437B7BE7C9550B250E90F7E004B3C3D30D9872B84376C84B913D0032
+9B2280354630E263E101EB02C92FD77A76BAA8CB1C5B5C555C81F6ED6A31B3EC
+356BDF27A16C319DE965D8BE1D654A6E1980C8FC535B72BD951FBED2C6A9FC82
+FA152728191760F9C54E52D900675AE8A88F7867E0A5E5465FC2ABB868B3D227
+8A0DABCA6264CE647623418DC7850FCA18C34AE8532AF543E46B585E20BD1E9A
+E210B1DB301C81537F068B42BDB1B93FB4618B618B34E7D42251DFDF3491472B
+62EE41B9F4C2F1EE43C29AD841A1264285FA4DDFDC07323A24F00EC12627CDCE
+2DB8592A29424150DC72611D88D29267B1F98F386053BD9188CC91FD52876731
+1DE8DF9085F0F49CA5B14089B55E2E9386D59DFA0116C800A5204F6BC0032F6B
+BF15CC4A142729DC002844F5A418C164C1AF0F69353121E4E680199C752AFFF7
+C961E4AD7F5E48212297A346A6FD1E7CA0B7A51670631878D69A60639FB9A150
+30446595791BB1F97919D034BFC08998AE74431E65800A11648D8E5ED18C95C6
+F3F033B3F3E4F7077216D316CA981B5B4EF0C33A7DDB14BF11F496D754D93C6A
+BACDE5D2B6EC1126A0531B61B38E73F377CFED681C9DD5A804BC1B7FD78F6ABD
+1EDAD16A0D3E4BCE8A12291230D94AC0E0CB7D258E46B5D1CEC91B0CE18B1412
+56AF3A04F80C1655C6DB8A9105D611819D4BB6B920F975D0A19104D8239448E6
+B8F4804F6088435C6C2750932C56753D14C5921DC9D871AE804AAE6D2AE9A3E7
+192DAA0D6F9E1E7C22BD2A0E80216723E09213905F4F291D2540F24798CCE9A6
+B6E9E7866CF589DC2CAE23A7945B52E862975F0578F7D8866DA6DF2ABAB1AB11
+12FB5B9AE7C3DF18F726BC7B51C57BF184D42944FCCB796ABE1869AC8F5BDA42
+0EBCA3366E46D6A9030B2EFA1767BD295731CD1DB7FFA74288CD586CE553CA71
+C69BF555CE828D291172D22DF6B1FF97833BCF7BF569CD79C67A65B8D32AE176
+0F8EF4CDFC09F35100D23ABFD911931C51F71EB0D37157CB9C9984A6F107C365
+48AFAD53E3B33EDF970F19D59CD6D5C1D7962CEA24F4AE9C45425589124A7578
+D40D09FB8BE3B386682B9919756D4EF4AFC2450C6A298450DE1A
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -338,25 +516,41 @@ BB10EDDEBDEA6910C4B897B2BC1791DA
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
+{restore}if
%%EndFont
%%BeginFont: CMTT9
-%!PS-AdobeFont-1.1: CMTT9 1.0
-%%CreationDate: 1991 Aug 20 16:46:24
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+%!PS-AdobeFont-1.0: CMTT9 003.002
+%%Title: CMTT9
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMTT9.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMTT9 known{/CMTT9 findfont dup/UniqueID known{dup
+/UniqueID get 5000831 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMTT9 def
+/FontBBox {-6 -233 542 698 }readonly def
+/UniqueID 5000831 def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMTT9.) readonly def
/FullName (CMTT9) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle 0 def
/isFixedPitch true def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
end readonly def
-/FontName /CMTT9 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 39 /quoteright put
@@ -408,243 +602,401 @@ dup 119 /w put
dup 120 /x put
dup 121 /y put
readonly def
-/FontBBox{-6 -233 542 698}readonly def
currentdict end
currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
-016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
-9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
-D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
-469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
-2BDBF16FBC7512FAA308A093FE5F00F963068B8232429ED8B7CF6A3D879A2D1E
-2931CE5F5D18C658602059F07BE66E6EFC9239D7AB2FB8A4CBD41675B8ECF279
-650C29E53B14AC0E392A664848C1844B1CECBB2D5CFB72D0916B675C9A9A1E35
-F12696A6F628473C604A95376468E06E295AD6F76CEB939D94113532050B9D5A
-D2F41A9EFB9424D986612313B89EFE9C8A71313340B248F6853B1EDBF02B7F9E
-F447220FE131D7D54CFB8AA1281DBAEA73E665BACB1F164552CC0CEDB63BD4B1
-4A9AE8AC6FA02242DBE8DA46B64B6BFC11762F0784F216FC8B9120D688D1705A
-438B14F5E5DEAF2A98408B3B64620DE3732A4DAE6D08D5D97E34C75DAE19EABD
-BA0796165C1151BCBFB1DF8D29A63A8300DBDB9E3323CB82D0337598B83F4F2B
-A97CF5196D4D1CEC1EDB8966E548C0D9C194C932319610FB43EA1B86322FE641
-AB48770FF13BD475A7267E142388563D1A400419C585B22A9886074687BEDF74
-D905BE8EE440BA2ABF28EAB673399B7F129B9729DD5564C681954621903B84BB
-CAF89AC5ADB2932472DF29ADA2BDBDB4D05F65F28F5F4C529613D61858E0074A
-082A852710A62A147C966F2B85B51B0BE85F11D2057C66FDD61F6C5755367980
-9F4DE680601D4DA41B46F8D2148450000413C27AA39B586B74B977B25F0FD3C0
-4BA1EBFAFDBEC531EA13DFBD6700E53818CE04D23886B8AE75DCC36BCD3189B1
-0D55FAE27D0D126E82AEF31D7B5DF27E58C30BB0867D6D7AC1DA9EFB8A2DF095
-B5B934A68EE122DA0A83B36C952431586B957990206194E89339048AA6EE4C53
-703763505ED57C494DD907D0EEA04F6B1D4C8F3BA778F4E7AA832AAB4D75F024
-61E91C6D25FD6823CB24FC863D3836C77A7D349AFA8525388E252386788B28B5
-E463F5448C9A287140C4F5FBE612C8F2C2749196D12097233794F702BE49897A
-6DB52147CE35CFED4CC9F38BF3C4AA917D990F007357194F51FF6B77E97C5208
-AE6CB3AC6AF0B5DFD252847C5F1793F5896655EC8D617DFA7FFD9CD861631156
-D178F8C3B2045AE1B4D702708822F2238A29934A870273858FDDD2B9CC74EB9A
-4F610646943F34ACF7707568F66F7CD9F3293060431C2A7AD92904FDD44E8079
-80D54755DFA1FFA2A42C954AC6DE1CBB7BD95B11999FA46F57C467CC5E4ABC3D
-965925F0572DC4368E8D5F5777A11255BFFF91E833F42339775D1BAB2137B328
-59666E88912D609777309A032B3725AC11BF5CF5EC760438BE5303A48DF475FE
-BB57771CB82751F8AE79B3D72CB9B65B192D21E1E3388AC0C9500E132F4017D2
-B6A8BFF48342C94359DCA32D9CE12D6C30011EDA9E28A57A854482FDEA0B6D15
-4574BAD94C43538D87E8DD1FA03AF5FD965C473EF1371A3F125592A0094BE7EE
-CAA3E94F48E86E66D203F3AED59CE58AA1EFE006A136D55545B506172CA14C70
-6452DD81DBC1B3721922DDCF2DF6914E354FBBE00D3CBFE8A0AB309FCC3B8B6A
-6F9F858984D90E731C80F9B050F48E670CA19D05F5D77441E15F304666154B53
-CBAE581CE6091CAC6485522E795B76C9FC509705F3EB4EF36B7CDF757A509617
-D116D7B97C1A3B7334AEF807C23F9F1B150C895E12F73265E5578C24CCBFD2F6
-3BEF1311E0E015D354F3D18BD4BA1757D95C9C583CD60057385A8BE4D14A730C
-BA4DC18D4494D7E765A4CE24E17125FCBECA981F4C2CB4A360B6441A6DB73363
-44F62B470EBD387F1918A814A7B268623F7ADE9229AD314BFA0EC784071190A4
-99FB32985881E32FAD162E8EFFEB6B33E646F97FA94B2AA53F869AA563E519A4
-2EE643CB14B64AD6FC75125203E17826E81F352F5AAA616505D10F7F123EF3E3
-8BC7C41FDE75F110629B87ECC42A3CF2A13308A737D994DBDF999E7496F9B78D
-01BC7889B7BCC46A95887C4C5C34A2BF484068B2B5A40FB408FA8A2F6BE6C3E4
-672116535B37825FDDE04CB8B873D9C022955F4AD86D33E836264BD2B907A86E
-48647DB50B10327E47259BF9262D2573BB34DC48A9D4731E58CB3617D02004ED
-5ACF344C15FF73AD804A871DAF364E51C8907FA058501B08FDD944077C49E44B
-8BAB387A220228E5239CAD4856FF52BB67F4FE3916890521F62C9A015162A0E6
-1D9333C4307B1AA0E049783917E2A8E59F47C80861EAC6C277835BDCE9A2AD9D
-8F3CA78D928D70843707E4CEA121E2AB97841F9184C7AB1D8D3EEC941FBF1213
-9A03AA68069161FFE31C367F80FE36625EC4524CAC0FDC8647558A1303DFCDE7
-B82D289ACEEDDA1227ADA57600B53C1B8C35D3F011B4B15680C2956E91E5604E
-FD866E976DC441EE935D223AE58A57E5AD0F563FCE23DB6D5E03CB0924AF8487
-7A78A88D97581E4F038690F8FE2095C2641CEDE7660EB009B7C2D1A21E425EF0
-CAA97367F222A0E230787CC239F0288E3CE2E97E88B316F57B0238C7E84A84DF
-A636A78892873B8FEB525049AEF96A04F90FDEA521DAA5315FE6090F40F34B7F
-EC8BAECC2790D7FC35EAA4034F4E95ACDA31608C24075C658750CFA390839E34
-1EA429EE352A5A77DC57AD3467E5704FA3568F1021FB4A0587B16284C3CA9918
-E342156D8675ABBC9A18865926748EE6ED03858C53F4CF5F1D08EE1C43E194CA
-4A0DFF7484F620EEAB133D8CEA80A1CEA837B7194FD9964E9C38FB3A4B41593B
-30D6B59B1A0CE6775E9A416D97987BEB3930C88E9AA25119BE8DA9F400A6C096
-ABFEF4732C562FB06C963154CE19580639CC09450196616EDB99B6B7ACA1200B
-5093FB118CD91AAC60410D522BF73D60BE20C8518A2D242576CDAC5B0FE3E337
-AFE60C493DF2DE758B10A4CA8128CB077C4E73329CC1F3BA0F2E2F2396C19384
-0C2B81621D4712A7BB68EC6163DDD4466BA03A7EC26E54881C05036CB957FD23
-57BF528E13370217A4889F3BADE81CC3658CB9EB356DE450887761DD7BB19C59
-31F8C46886EED761CC1E950086FE1A7BC469FF88780B218F2202A4F1FE006743
-4A5BCCA6D1EB301544E55172485105CF04E05E5A892D2EC0D26B4C1C65162ACD
-D0E1E922DE12FB4EE9A1C285F873E0210C756557568BA77FE33770B59197ADCE
-ADA771B078D746F5E2E096E3DA6E7FB9659819789AF94FA9A8133940EC2AAC28
-AE8DF11DEB67F5E28A8EDB6700E9D2E39F90C1975A2BD58B67BC3C64CC9CD71C
-A0CDAE7E535A207F87523C6B204BB480BC34E9E0CF52C79B6F5D0CAFBA30576A
-523D331EEABCBBFAD18B979696C7210BD5B4AE34BB106D7C9A2A84D95B22885D
-18542BFA65D9791DB2A84DFE88251BDB7C907C373B3C2E116ECB8EC2B7FDBB12
-4E40313348A394A58589C1E23C66A9024BF2057719A198D1F0FF01929FB15C46
-DDAF40B4DCF2F16BE69532711C49A0B670442C0FE53C404703610369C3E6B6C7
-22AEE42C0D314AAA1E0EA01594F9F8694C5A16F44476C42C6E07307BD9940490
-E89A6E30111B2BC725C51F5917885D5375F0A4B4F32720A6F364A6AE68B55B84
-35CA3F4215DB779C15EFD82D21129399F699F5815BA34A139A76F5EFA9774820
-51379E30298252B6CD7DFCB140E9AED951C6A527A3E59923F725A32AB2FADA37
-25AAE28C4F0FA92538D60ED5D26939090EF43A89A70104C5D6C7A26CB9E070D8
-C2F2C1BDD073814033B5325532DEEAA46FED75CE884080F4DBAD326DC98309CA
-81589FF76AC06C0FB447132349DB7886966F674B1DC3FAB46BC1BC8D4CC3D32E
-1D7A6F1EA0E77E65261552F0087FFF05A68049420D02A6C005FABCF9C975867E
-B8335E379DD474540EC81EFD7953A432E5932EC6EFEC3675CEE49848BE80618A
-A45477C9237F4F2DA7D37C6777EABBAF1B1C53DE47C4536D603E905E6C0A7E0E
-E30E854E2DA543976B97907DF179223D91D0E53094A9664C721E593958A3FDBB
-A91F79F4AACAE75408D31333293CFDE40332CBBEB470FA9CA803FDEF80D5FBE5
-8DF12584626DC7F4C1AC5B58BA2070CC29E7292324B111AA158EDC483FBD675F
-135A04191543C6CF33449EC04458A4A07B72FD2D3530B3DAD847B6F1627C2A69
-DC68BA7143D2A614574F17EC31D46326F85677F5DA9A6BEC19167EBB7FBFA0D0
-495669797774D6532FAAC83E1D587885F11F947689C745284DBB2AAA34E7E9E2
-2024A5C2BE3973DB40C1FA23352300ABDE8AC895555A432F3C068EB24D16797D
-CD48C62C308015C3BEDE20231C2DEEA689EBC3B82933FAD0E0F44BE307027B23
-4338B870F04CDDA8CE8770E02B71186B6AB50490C1811F3FA178663BDC8FBC18
-C8BA28F090A60F04FA34AA13BCB2158560B2506A2A458984E9DDD7756B84A527
-B52A76E24B0440B1DAB33DAE996020C737B01976BBF32E9FF3AE69EFFD597841
-60FE04A632FD3023EF6F66D94FCD983D2B418DC31BDCA7ED38D89BB61C598824
-9B028A89A1AF9B3D5DF82FE4AC81AF89D7B3944CAB85FF3432050917403DAC0C
-0E66EE586A3E4714CCF623C865D54FAE1F943B1C8BF2DD7396806C22F8E1F7C8
-0B644A2FE78D6FA1DBEE7B5EDC9643565D0B435BF6867843A0AA2C530ED06BAC
-91E3612069C9E45760DB8D862ACE47856D74610F3FEA376CF2C841B8A55DDB4C
-C6A00428119023F900F1E61CE840425A3BFB31DACFC751065F3E8F50602C8DAD
-2B1E213810BF12F28870C97A14574AC1D0EF2A2FF21EBA2C62D113BECD741475
-8E226A77C0E9B52AA70CC8606A72CE70063C2DEF10FE37EAC6B553076A6A77D8
-46563F37009714CDC333A46E2A4FF4E4663546CE102B1DA7F673F3766F86D82A
-2FDA1B71D681A105CB35F48DE3159D34D00EE2F26519E6FC322022D82AE2262C
-6292B221E1F3CF1712702D5C46E1C379AD2DE59E14B905C8D933CDB400376578
-A7C8134FD801216231CCB286678214E036802260DCB46EC504F055CC23779C56
-EF6674A78092CB4F700DADBC3DF9F43009A2770B9AB98F1D4E5B15CD7A1024AE
-8E612E7A5C3C964A8A21B9EED14C035E673D0FAFA8D11172C216EC721F5AA841
-69851049D93C04977246A2D21FFB7EB6ACE1DE6366D202D05046DE2CDB3E0ED4
-231828154A202C43E63BA97313AAB34B1FB9DC40E8588E2ACB81700A03CF6CA9
-178B673A2A5AA0A6A25096DA0444FFBDF89FE56EE129B725A1251936AE79A715
-4829296422CB1EFEDBCD5D1A67C38EA209B8C4C86E669B3D9303AFE9A73AB5B4
-751FCB6E2EBD6E94E7D6D94F61DA1DBEBE7DB352341400BE02367A01618DFB09
-4635C3BE9A4DAC48E689C6AE09DE15BE92B9D9A9219FB25CA900D7D3710BFF63
-1D5392049F8BA435D4DCD77DFC998A02207F0DBB34780CE632E2FC0283D4DC17
-2EF91FAC1C1027DB0CCED0389D9AB0A20E4D9BAFA70EA2512BF7BA5D0FEC73EE
-DFD4EFDD8507E71D8664527E4B0DAF2033ECE1A2326E21439199A9938D792905
-E5A9B0AD4F79290172D8B20F817247DE6A9F2FD95CB4A4312895634BE440A07A
-406D7715F6C1DA42D17577B3F290DFBBE4001EBB1CFECADD3BB4CC93A7B539BC
-9DCFD8C66C78B6C4CFB1E9F4F8E37E82878F92DE67864AE93354E78F56D54DAD
-6B9DC4CB315BDDF5D032AFC7629E10C084506F7C22CE7CBDC8648A042551DDC5
-A391F65ABB6A890920DF87C71883FA1BAB6317B325AD967EB864640AC8A3C2C8
-E41D68614E058D1CEB140588C8C5BEE436B112E7FB82FBCE2BFF44DFEEC1B587
-E36E96EBBA14930703C5A5EA3D45FF0277C39F5CDB9C4AC3655A161A838FB08F
-B0C1AA048E23276A9CB4E8BC114A0E024FAC0BCCFBCA8EFD8A48A2783D7EB4A7
-272737ED343978D2E966DA09A923C93CBB3C3E7F451390430880036479C353D4
-D687759BD75F80DF78349DC28AADEA6FCCA01039431F83E4E864AB54E899D30A
-25ADB18891C4D7A679558127B8AC5273FFF1F28BB7E682EECEB208F0C07CEB1F
-AED0DB62784BC08DCFF99656DAD754BB352C3994DC46CF27BBD463C6CE1753F7
-93774336051D9F67D95F5315AA6A543BFFC708A75700E0FB6523E576724D4F56
-813C825EAF293DC28C007E4C58353A1D5DB1047DC1B1F1F9558B114D582ECE43
-77A4260E2462BB4494A73FD20F73561123A0BAC258FBD8FEB1028039BAEBC4AC
-0E6FC625A4EF0E22AF5726BD88DF2A0AB230411EB5C54980F8B79E80041F944D
-190940C2CF0A24DFAB250EF983DC58BCFCFF40B0EAA9303A0BD0D059B6D6F835
-A1E3AD4E45EAFF511985CBED8E6A46657BCBF149089AC659043D5A09F9993ADE
-81E9C35A5C047816649E521BEA5EDB2BBC66C31901861182C5F660B80CCA72D5
-3B22D840F62B21ECCD91246233AE25FC860919493B625EC6FC6FADDA3DACC9B5
-A71C5B26E3B1ECD0AD570979BC5EA35A91AB34481CC304A7200C322B8A2AEA42
-C418E91C658D78055F2FAF4B3D68F58A284E571759CCC7F00BE3474132D4D2FE
-43DF39479E3A9C4E09AA4A338F26D5C939BD7E1CA50B86413B8E32CE63800EAD
-58C7A77A1CB9E135C7BCF1626FFF76734C321EEBEE3B059216CDE6A6912EFF6C
-BA03D1EA3EAC1F2AFA3709DC9BCC558224A20716AE930015915A254F1ADBEAC1
-941476889919D64CA0D0E9F43EF614F115A2A93273E4E77AAF46027F525A3E7A
-17E1384AB4D41D75E9C0F22C398C6A95B39D3678C55205B38E189382EA03DC4C
-21E4F1245053D5CCA7BF2A1F9AF88E0CD7AC63DDCBE447B963B6DFFEAB65EDE5
-5128F8B555D8795B16FBC856208DA44A7F0F043817B21928E257F7DEB8C930A3
-821E7A3643B5B80DA2DB936A927158F5E7BEA32AF2A1EE9F47D1EB8D420E9A9E
-C57452ACFEC2718BC31B4F7B061C932F768091271235EF6B2EB65C96E4D1ECC2
-C67C543B1A117C2E34CCE57520CE6A69EE6F89B1AE177E06B63193AD1376F86B
-A59B9A385E63EDBDB2005FD2BFB6204FFEC21823E1C5E59F363C760FD3A63F36
-118FCB0FBF612204CED17C7E6C1A30671C591A29BE9F3363DF99657C7D68AFF4
-E0C3F759A361E4D88005FBFD72C464E4F84A773A581BA27C42D9C6BC3DEA42B4
-2F185340BB74CCBB65609965C5636F1D402DFAC5EDFF4B2461FD564E11D7A789
-D391B54B30B129953A4B4F0B34771983D05B271C29855F2E1394CACDCC37DDD6
-47F5AC6123765607F1870F11CFEE08D71FB7458DCEB1AC2D772108FB49D8E71E
-9606E4B5F4F84A939EC5DEBB2F9483BD28A3412EAFB80A7351220EEA9D08B664
-4007DA4F70F4312E4F386D91A556EF9E7747454656DCF8AA85DCCCCCD04BE5DA
-DFF58B6D73B7A1EE282737061DF380CFB0DDF9A3F2F0938183ACA9F1EBD638CF
-C01E67957A3251F3B8663084CA8DF3F794BF4845B2F6D533BF19440CAABD0DEE
-C4D219CA5D9ECD045518FC25C2F12106C065AACADBF33A04E54C8268E21EC9A7
-33B0A06C01F2938818BBFD085CD071B7A11DAB70DFCB7B9F460AC2FE36174768
-083749AF773AB8A67F9B58686A1B330474C7E700C7D48A71BFFD540D268B0623
-931732B4A8BCD1C6F6FE8FD8B856214A86A5A5711AAFCFEB9E33EB5D13BAABEA
-31CF678C67D32EFAB36319F893CC85C883E22C6080FBB45A10D7DA77E1435546
-A07225F78393688C0BF9A78DD8D8CD3504C72245440144DE12012F75564FACB7
-37F39E330C8FFBDC0BC42D455955EC7F4C28EAE43AD2C57C44ABA40EF5AEFB02
-9D9DC202D3B412BA082C9452BEA8269CD3495BF7377F341AE0215CB7257DD323
-92384A3AE9766B79756AB3D6E586B1CB2A630B806B92A272B5F205683160F1F5
-CE1AAB86C03152782EC5A8C8D3B4E2B3E83ACB3F73E8672491F045116A6E8E3B
-33C7C16586D2AB91F7D052CCF0459FD1F597C9EC4095B5D931ACD616E2A9EFBE
-9E19458E5AC84F4F3D17E3234DC4229A9AF4FE10108176C9BE30074EDF251281
-8E5EE83A94446A3099836B4174FBD357A75A19AA4B4C77CD5E95B16C5395C043
-33920CEBF2339B436EE1BB5DB191C7336AF977F1385BE15D27BEABA9053DB219
-65B21B2372A7F7BE670FDA8FDA32017EBD664D03391B580C39793A73A35DC39B
-8775B92FF05C4F4F6E6AC2F1424F5D93A99214A695D1BCE41E7033AB21C5E228
-9AAA7E581CE9A5C3EB2C978345A424696C74A1BB45B6497F7E9F6D405BAEDBC8
-438CE0A26FEC8683E7E4287A3FCA76D0E5BF872E61F2E39E60D02A8ACF14BC03
-7D59924D482421891ECD4DC904CA3A2B0AA4FA574E7F4D8D090EB424258E122C
-EADF399AEDF8189C984282CA9C18D18D282F27670BF95679BAF1EBE92C781D9F
-5739F16679F6853BE2ECC51D78C2A568E5FE066AE0AA98A823E5640F420F23FC
-3CEA1216760242268B9B4673DB11BB7AC0EC9D567C3B543DFE10C062BBB64C6D
-31EA298A98755CCD95107D6B50D477889123E711EA7390C57B3AC5C363BA84A7
-C7C44F0163D7C83539EAFB8C832778C94C53CCFE8CBEDB42F90A0099FA80EB52
-89EA9F32B6CA516470AA826880402A73739CB0E60F2A4812F3B50C40D026F8B6
-F048A37875B3FB4B08C9678DD48FA7852233CD13EC6687AC34D3FFCA66583F52
-26783757F06153F0E385C54C6BF9FD4300CFC1DFC211BCC8132877B4EC99718D
-B3274971E26953478AB2AC50750ECF31C05DD41575020DF1AB0757E714D1542A
-7065D4F034000F77F9917D87665866D842CC989C6F6A7D953EFAF442A2B6E28A
-29BEDC8A940F05DAF7CE8847E136B6596DB70DCA3DB0BA45F74B1616CAC12EBD
-6D0100371E80CA9EC19241C31C0ED657F7B6B089B99E0E551FFFA0FD4885FF65
-FFE878EB3F6A77D27271824ABD182CEA177ACB0FE8363AAAF7C86E2517F31263
-0D6E3EA583CC81A62B92A4D2EDC9A8E3064C41687BD8177B56B66D0165021EC3
-AE70BB02C46F31A1DD4C39D49CE8A2592B7FECFE83D60A17C091E772DC12AE4D
-49AFB19F85486740A5DDC5CCA7209F8292974E09C2247681F7774EEC8E123DC5
-96F05CD7E98B1B5A98448B78ED6AAD144D24C1CB6F9DC811657A9BD25939B698
-7A90FC7AF543503E869FBBEB0F6FB3E5A2A9DB2841ED565F6DC88F66E5CEA418
-EFE0BA5784A3DA1A31B0F2DDCAFAF3CEEBA9A24670E196CB317D88463C885CB3
-BE980DAA9B8286F81CFCB44DC37A96E078F1C0A7BF5C17B7771A26CE394DACE2
-30586AFC49DD632E0DB344252FF8DBB01E6BD935C36A05FADCB78F11E6D37E99
-8CEC682319472DDB6563E0D91913656B26EF27295753F237B2470BB8DACA7BA5
-891EE3BC4295DB66D024E1D51AFA52C1A5855ABBEC35658CA7DEC65321BD357B
-6DEB27E7096A2BB13C1B0CC3EBD6805C154EB74D37B4C7198F13F64C5A743982
-BF5A4575753146173E76E849A2B920FB930537A4E9C9380F8434E0F6FE9488C5
-88E1F24AD6E21F815FC3204734A70AC9D29BC039AD7B6D5AC5F48CAE11DDF2D2
-B8790CA2554A3B7CA37E821F2ACFE8AD7705F1E8935CD63593F61C67C662E97C
-31A0A28A2E3E0DDA451C83F8A982C504BB3BD8F78F94FAFAAA2FCCDF11A52389
-E7AF12260C01AD272925D075F7427E5AB739CEF55134BB04369F1104EC776F52
-EA172B4151A580D871CE02295273AF53B02DB76C3339EBFEBC1975811B539A42
-0CDCB3A0637BB1B12CA0A2EA913E255E5860C600A97CFC33C809AFBCC4DE0F30
-23ACA73B56289D705655DF88E79EE020983451D4AE09E80B835508ED28129F43
-B55A7E0C17A5C5A1030C323F1BB349AD695F25F0358DD68ADD8F4F7998A4F3AA
-74FA7B7ACA2140A3B5014FF0582766905DAC463D6B8D760CF07620832059B898
-14F9413C58E808FB125DA8C4A9B1971F56643978E1663255F287A1129B291A7D
-5F8C7AF137232D3D6B7D4795FD8F5FE9EF9D6B37C0534F9E531D446C52377D04
-13CA29578ED9473A925F6F921F390FB8D126B0946D6F5EBA83725D82E615BC8E
-B5F7F865ACA5C0922CAB07F6EA948EF8DE18917126D3B62A7689F8DCF0965954
-CBE9849EDE0C1FC5BF449C9C609DAA0415B9734B4A7D98C0BA6D4EAD04C51AF5
-037FB78A165662CA89F9680622E2997827B409B408F39EBC019C77F45C424C80
-E31A50638E3D4D0273E02685D09CFDA92E07238683860585E6B44819CEB9AE7C
-967831543E0E2161A8D1DC312E99D16AE0C84B69880375DF7D0C114A96A576C6
-1BEC6918825EB9AD2B900DB1ED0244343A89C67B1548A85425AF9D08ACF0291B
-14C18FAEDCF3C80C124713BC475F3D8788AC04193820AE00F5FF6A118D41DFA6
-D4EF997C5D4D744A7898EA9387C3108EF6FD19628647F9CE7956D4641265BCA4
-770542413AE156AF4BE6DF3EA929843344F2E38951B9EE4D38D2E51A195842E6
-1436C77E7D953CAB3FB8144AFDC371B0DDE968AB88493C15585570F7DE881A17
-24C0CB6E8A3433E6E85320ADC362734A1C81C1EF9CEF1B863A803F96B5F1F61A
-05D61B9992E99BE5A52A58
+D9D66F633B846AB284BCF8B0411B772DE5CE3DD325E55798292D7BD972BD75FA
+0E079529AF9C82DF72F64195C9C210DCE34528F540DA1FFD7BEBB9B40787BA93
+51BBFB7CFC5F9152D1E5BB0AD8D016C6CFA4EB41B3C51D091C2D5440E67CFD71
+7C56816B03B901BF4A25A07175380E50A213F877C44778B3C5AADBCC86D6E551
+E6AF364B0BFCAAD22D8D558C5C81A7D425A1629DD5182206742D1D082A12F078
+0FD4F5F6D3129FCFFF1F4A912B0A7DEC8D33A57B5AE0328EF9D57ADDAC543273
+C01924195A181D03F5054A93B71E5065F8D92FE23794DDF2E6BABDA4215500A0
+42D1A3D0D02C0C98BB1D6ED0B7791274C38B038FC7921FF1FB8FAE7258C09259
+4B8E1BD9EDCEDE9ADAD9BD9598EEA9691589649A9A21539161E374075BEE3457
+689F308A4A7AC9F2FE4B301A6C36B0442FB92E3B002623493DC087800B5A0521
+0DB96A23175AC584DE166F59142779F26FEE9783E28DE49FC3A8D6583EE63FBA
+610DA773CA18ACE6F64A4867A1A7817120ABF9DE4D17782866E6CB6B65A9F6D8
+3667C8D3E61E5356E35343FDD4C6436DF73934470916CB5F0ECEA6BFF092E735
+C7C355B56189D1DD5715EC97E50145FFC17BB1497315A9585D713A7A6DFC7933
+995468EFD0F59E3C15865B87925A3F2930E20D5A35970E2C44F1629FA16E00EE
+EE21EFC50D49F5BC02300D0A7BB85E649CB4E2E828C8B1C5469463013E71D723
+2CB11BCBAC191AC751A2AF7FC228395CE9472DC1809052012AEC2CD66695DAF0
+4CA04234F0187F4116C93F59A7F1F8123DE87F111853B785A20CA8B49B3B0CEC
+B11AD345E1A11578D2EFEB0536D125237086CC8CD9F34A5137AC5DDFD8746014
+D74AAE8239B81ACF65F379CF2153B06A238A2D767F294CAE0D79228F0B7D45CE
+510AC9657A1776202FEF42F96D476E7DF407786AEA12DEA0013D3B4C5D0640F5
+BC5BB72C34066270399CE595827175B23B25072723BD24E07F6BCD9EF0175DEF
+93714BAA53960F81103CFB731CED4A267B53727BCA3C97B0BA5004055D4EF0EC
+F725658E53AC86E4061B489AD4154915C3981B3B703E1E2A8D390CCECCA99385
+45EBE35441B062D7D12DAB2B31569387187D74A4043FD71F1C6D352EAE0F6757
+4345FBFB6DB15CAE47CAC4BAE47AECAE5FF5EC19057DCEFA1B23F47364ABDF47
+088A7C6A2AE26B10459B6D41CB69182FD1472F326CE3A15B59255D1DE3B616D8
+9D1F12561038839781E657C896B8C58A32DF5AEA23732A0966D96C68C988ED7A
+09B7E2C8F9F3D0D56879764781566299A4EDD3588BDF70E3D924D25074F30988
+E35BDD827AE4D0B4A06F55A9976BF0DB3C0B1D09CD08E8CB168B50617691638C
+0EC1A791C228177D4FFB021EC3DF5082CA3487AD2EFC8DE9466A690ADDB4C52A
+FE2A6DB4CC275CD33D9136E735279FBB2008D59E667905EBB04326EC33C98B2C
+94744B7F540D86E90DED64572ECF1EAD3A58EC101642B245A9C7232DC8FB8741
+03F97883BB32FB955C22F878FA0FD114451A3B3859B0B5537AFAB73AEC7DB2BF
+409E1FB41D473714F6BEA73CB085139879FA31710E01915C2938C37BAD6D7D71
+45B897E00857D3931A489EAC7B42BCE4E65F73F67FE027CE482DC47598ABCB95
+39E98DA8ECA3E23F0799D5963ABA6E2984DEACBE7B46B40ADC6213E0F4D08971
+58F68C946C748E4B4217CBA2391BE2086C9758F4E32C9B6413E48D84D33A6E85
+84747029C0A9C9B92841D217A902BA8EB333999D62FDA9F82BFC8ED11F67988A
+0CAE42182E414A9766AFFF4B046A09D476F8E3F15A8C7829BEE982D8350BDF5F
+F215F2BBBF68D4B567BAB798B9604C79306C475926E9FEC0F07A99F43473C6FD
+B15AC29C3D07FEBAD1BAFF75AAF2FBE94F104F1DBF838044FAD94B661B06AECD
+D9AEBD02B60CA4546DD6B5B5C1A3833ED07845671CEFCA8955CE0DE5DB8FC93B
+3306683CBFB8E5B79A863DE78D455DE9D592043C2686F88A43140F8B9F3B553B
+7047420E93E753829F8D47AC7621CFE3626F271E31F0019CC02D0B57F67BB47D
+8CFB63E902EA3231C00EC66EEC0D30FE8394558BD3535C888C4CEFC6EB72E737
+712ADC6300162D5D79BEE0CA1F6E4127A0BC90656C01692F6D82C85550AFC97E
+C2693E379160FDB9636FA41AE9C75B7F6643B05971C6D67CE30971D590FC07B3
+E0B36B4D1C7F25110B5DA2130D574FA292B47322975A2BADBDB39AAE69BDDBDA
+A880F9AAB580117708C79204DFFDC08BF4A48919B5C22228845CE8C3109E93AC
+2479E523B8A1C12A6E541118F121DC6B4EAED83491A03192D5C3A2A45D1A2467
+757E7B377C635CF5CAE11A7CB49D49F3A1BB2286090B5F0E4F89869D1771D50C
+54B5C5E091E3048A2C194F0ED00DD64FB95BAC6FA9D61ECD093ED416DA3A4981
+DB07CFF17C4F55C62DF628EBFF06FAC3F3D3F91C30EBB34052BE1A08F5EDA4B9
+08977197950A282B84E21D43C64BE3AE4BCE22C70E7D392DE09D89B7F23351AD
+6AD37225C12BA79EC9951F5DA1E505DB26200190ADE0E549305B7530CB86EFD2
+A896F13A97E51754F70B609CB4511CEFC38BA579C071E9510A49982389980DC5
+336D6C4A2DB100DFEC4055C7AA9C55880F94FBEA9EB280BEF66CB8E1E38A359D
+E5AFB12B540CD599085ADDA7FC2C72E7C873015773FFEECA2C596B75BC39A3EB
+3C43FA2E53C0D7993042F3D652BCC483E48B7F6C94C3FF6D38E276086A6AE67A
+E5A571B9C72E0D7824E0BC2ADF51A393B9E334649F786EC1923C854382B89627
+1B9E701AE5A6C42E672B2C6A33C8BBCA8F69B9061E787D6B92183F20CF4C3903
+FF5417427B84798C82BE28D2C81624E3920CA61EC9EADB364B5A6E50E49A1A72
+A9A090A1FCD84814B8B2708AD787D2B5015DA1305874F58C5EB62F843685FCB6
+465FCA80176CAB2B2FE65E0A270BCE1E3DB97564BEDFAE5CA44395A8DF4505C0
+3E103CC3B914359B2870DA6CD30382EAE8949131CFE31E9E75C3E47A3834BB32
+CF183D4A8B9001710D0A11390C9DAD116196568591D38C2AF4ADD852F31494EF
+573462759A35415900360882739789D6B89ACEFA251C5ED90ED704DD7C3C80CA
+9F6CDED69537D201D520C99E69EEAD5D3C0EB84C166660B3C190166D93EDFE6D
+15BCB6DC5CDCA825E48D33845CC2FB15291AAB823F25CF8BB0A1EAED8BEC524D
+D9CA016027141FAC9D35B64FB9C224552F29EF6B32497254E319090E698FD8A5
+15491CDFE1B988C79A0E3B9D01E12FF084E9FA86CCAE02A3EE6F2917B61A2CC1
+64B8CAF309D1AB48A34227A7729DFF99CB6EC282E3FAEDD2673779AA7E4C1789
+D93FDC37FE95F087C5F88F53D30A2DA9C913BF205FC6BDD060A40184F4AAEB3C
+D080D63B89CA3DEFF310D09EF0A83F3914BD5B7932980ECE139EF0313C20B4C8
+576EE0FE3F28FAF4D3CE7CD0890BC824A85B8EF4636BDF1EF1BB519F93D36540
+ED09FAF93FD71992CA2CE2E83F5355162ECEB32AD218092F45D5A61A44E67135
+EF0453589CECDC6962D0E8DA7E7567603BAF50B2C8F1CA65EA5320984E7D69AC
+9A7D3D7F92565D79E8C9DD2D92CCA7DE9CD058545E9F98AA47904D70E1897099
+3C4C852B3BA131DDD348433C336BDF5FBDFB62120DDEAEB3255E3207B0C84A0A
+1ECF9EC869DB9BFA3693B03FCB27C5A5D3CDD62630DEDE91B4DD5B9784BF0BDD
+FC6EEC3FA7ACA9E15FAE47CDD9B7FCD2BF0EFA10716F08C0AF25FF67CB6F9598
+C607D2FCA452417D2C69DC808A9441A66492394C3450BD30632AE739EAD654BA
+4343459CA36B6D5B2C12C39495952F2EF93D82C73E33236785A79609E260C4E0
+CF3A3C950DE71DDC3939D42DB1CB1CA917CEAD56979A70F8F3B207C805319FA7
+3C000AE2B21D711A6D78C7BFB901334DC06F59EAB6D94B507734C27971F8458D
+D00193645AB92FB8FE163D5C51AE4F40BDB4F2C51691E76EE0636F071F37AAA9
+BA78BD12459CA499210EB0CE2F8BD317387797C33F5933AE7A6264DA06B4A6A6
+1188326147A16B205D1F965872DED7D8EDB3294FAD2FCDF0D423329E9CCF879D
+4E0B966D509F45527F7609DD09694D286F6FF7535EF8971B7DFBAF608A19D442
+C133207EB1152ABBD11C455D0977F66A9B73E51381D1CA4B66E87C0C7175A63D
+80C699A052F00C41DAEF42E7A40E07B1B14107AB0787E24E17C1462960E3C54C
+AE73BE4924464FB177EC62F116B2822842541543EFF7ABDDEE197D6BD8F8D4E6
+59175D8C5957550B70BE775AD52FFF6E7C00DA7CDC16E1DF7446BB5D8FD82647
+3E9F87D5EA365C82A2D991321ECB14A9E3AEADC5A56665DF7072D6DAE402BCB6
+14D92B17F9E063E4E9D8D239C91F5C7C0BCD2FBD936C9D4A0B57659420343B59
+B395BBD1AB5B6003F653699D57E7581F9813CC98D4F072FB78899D6DECC42D34
+F2787EDEA64058B46C4BFAA2BB96E9BE5CACE8D91E4C080ADFC0FA0D4A29C6B8
+54FEA9E11DBCF53D9CA40A21AE5076451EDAB3593E56B6D453DC8EAB8C78B588
+34D4C4F36861B5649BC1E9F3091E704BDA7613ED45C911DFECA74EEA05165191
+825F95A947CAF382FBAF01F3B8B041ACCDF39718D7DC5BA6CA12BB20EEE96439
+BF2E2628AA3BD2C91998E6247A690FCB0CC95F286F427345CC4F1115BA3A6E54
+4743355F2CC991CBDFF5725902C1F5A6DEFDC8638A26EA456C33C27773D6214F
+66536CD2E44FD253531732D5A8C44B336B1BB47B0477350EB8CF74889B93402E
+2356A9CAAFCA562315D8E0B3F42F08932CB87BA2499A875AFA08D11DA73B38AF
+F46D03B7F639A8D7BF88CF07FFF4E91716DCCE6E2CCAB60A64D5E40EFD8B336A
+1BFCC4CB04F49DE1FBDE7AA5B2092A6EDBD913D161A3271AB6411622D0E14416
+37F81E0102F5B0F2F9A2B27819E4BACD7C50E29D6291AE5B0973C657761545A6
+741729620EF2BF1046B3913399C10982EE5F4142CF461EA31042E432CC79A1A1
+39C607D22E45A6DEC008CB4BF6007CDE9DD5802B49A62C8E02A6D448B64177CC
+887AD71D171B99E7ABE2085B37D90B3BD8513995D9A57F53184DA474F6DB5E49
+B73E04CC214EA5398DF7D7541F94E623E8687B511640457A48A68E9D9D6584CD
+15B57CC044D8091C771D175F2EEDD411099BC8F7B4317DC503BB5E405AEEB526
+5E6E1B1F2705275D274E012A98F66075CEB90AFC648B964DDC0E9C4AE7B24CE1
+80B051022E5781A533A21DCFB97893847D685137EAD85BA708A7E118C72FA839
+A9E460B5D17365A0AF1F53A98319FB64A5819B087F554BC056C4BE44113A5404
+BEF759F890C1CA5E7AE156F4F8106FDB4F8DFCCC640976983EADB30976344048
+2A86D7B2AF4A01CA736B98D52ACE392AD4BECE7E61C710B08B66F01857CA460B
+B8376E257113E10F6DEDF14CE2A4E6A99ECBCD302C36CADB713D849EAE9EB598
+F29DC98531D793B79F83091F9B136809E006F34E423D528CC4309AFFB3EEB47B
+9A9DE4D5B25CE953345C326BCBE2B4912641780637783084D3D12693F8135483
+CBB0AC4EE0B5610D7CEB7DF205830BDB9BB404DC1B28FB0824CC187B26C19A91
+DA0025EC739BF3993700101D042DED86D67F5FB87912CFC51AA7DF53F2162D62
+6314A2CE13810D0B8D81F45771391A236422CFA0F35F7A0CDF14ACB2724AA57B
+7C2C28D53029B1146558610E0CFBBF72A85AB9BA308F846228F299F13F68E8F7
+D963B2EE9EF7D4C21690632B640BDDAD0556EFA4EFBF035F13377ABB5CBC280B
+9E0C12AACB153C93351E5BA95A7D149010E204950A59C7FC6581D9703468C1E9
+EFAE37E7E6ACB892B3F8D1248D9A4A72F642FECC5E0B25C15EEB921EDDE84D12
+0E524FE6133C4921FF4921242392C12FBE69744D53739F7E849C1B96C4020AB2
+1FF10DEA608F111749E2FBD8DBCB17F353DCB3075B4F4B8186963EFE95A76A10
+85AA5BB6DB4095291974221829A8E436680F4860E01C3843BE5BB3101D0869C0
+EFCE08D187BC04F58C7A450A59093680A0F09E8E3F12DF5223E7EAFEFA01978F
+D8354753A68022CC92C71F2CA732DADAA8A466D4AAE5999B0DC077715671F518
+E6277741F44AE798EE50DF44CCF71FCF8BC71F76374005FEBC4883C6EDA854B0
+88C0C2B476709AA809ECE41AE786DB1A32B3FBBCC14921673578D3514C8CA842
+E1FF90BE33F7B93ADF6BFB8B1AFBBD080783BEF056A6BFAEF676F7BF9F2DFCC8
+01D255A9F0391951210D60D4D4DCA93AA858B38C0D7B8FD740D5FC6F277C2A68
+54CC2DE1F40B6347201FCA2A0A91822708D820CE645C3E4E5A09FE25721AB33A
+97871ED448F38FC5A349D81F402B34461D840D5768BFC6849439AB6115104F78
+B87115B1DAE12542EA898F86ACE247709817850B067F537E6137196101D46DD2
+D842EA03EF4501E34074E8458E638ACC4EB349A7430AB035BEF2DD4CE00554F9
+18F9FE32A55AC1E7E50D64AAFDA278D77A7149C59DC5B1E3064A4B281A54C9CE
+A5EA94ABEAE4C6D5674C208ABC72563976487136AF2E21F835BEFD232D7F0D13
+1D19932367F51D5379934DA7F1635AC51EE5CEBFA63D4D32F018DEF13624EE62
+31DAE68A08DBE3B4FDAAFC75291C8C6CC7A657E3C7453C7D1461A36E88E633D5
+408253B673AD87A9FB2D0F56DF1305916D14D5DD62051E27BCE09CEE9A1F14AF
+1D7164BA5FB6E6EC8D38750F7E28BE330909F303ECDEE692E347DE13C8C2F82E
+29C8BE6EFD76546F362A12A1C2DC12389EA95ACB4DCBE95620F0C193EAD91B33
+BAAC5801AE827B9AB3FCE5D11D1D7854F8FA8A31670119CC0CA98628F801838B
+AAC7EF90AC5466BE69CE3E3CD9951A5EB9AC08014285422F6DA6F6E221BB30F8
+0042A11F2E4B765BB0D142AD52F4D85785EA71B2E1CE20728B9E9306CE93268D
+99B822A5AB5232EC7E26EE1160850AD3905864A01357F22722B6A54D4EBE58CE
+480EAD9FBF068EE965AC4B5FD2FA8CCB91ECFC6E90B9C49268CA0B0FDAD23ADC
+D5A74B41149BB08454054C451AD0DA4CCF8B60F2EBD061AA03A011D548B6B481
+FAB00AF9225BB5463F27FD67333FB51F8664536267E95CFAA0BE3BC1B8F889CB
+587A3A4FA2B45864F07E11372C9507A625C0030EF7030A0B4D931BCC48F6DD51
+A4D1F63FDC4B59C1CB18E6242E9F4B4B8AD9755B870FE60D640181FB7EB8120C
+C56F51DC8C47FCC6318C2145EDCBEFA7BC4253315BA67FD2B3D4AF6A9F3F229C
+AB75B592EADE15B1FB5FDBA1C0F786BD21A51506B7A2E42C2D086BA6F84D1B3D
+AC7531545F0B01346831FF36A52CAC1E390F99AEDC265B44B0FC9C581BBA6BE4
+48B723811EBCAEA5FEFAEA7E5B987F2C7B3E9A65D2D14A7B74F099401C57E367
+385352D0776D2A908F7A5A2E4D4160946C5591397877025C8C387CA413EFED56
+8B142E8341E349DB4DBA422A4FEE56A573972A0C66590175158E48850A9F7F38
+4B95726787B8F969FDBC97491CC81CABC976CD00A27D1DFCA7CF467A956C1C6C
+839817AEF8794B6151FAE9261119DD5DB787DC9D3B420FD325ED6599FACADE0C
+320D54C2E0D296537E22C1783670A9D9BECAEC63853EC2F05A990260DC189D63
+7CCC0BDDF2CF7585071ABAC14630666737041194D0777EA4292AE60BD7F7100E
+DB568C90F0D899EA006CA423CFFD6EC70A5D3D8AC43C747DBAD3B02219E47D8D
+DE030631F4678C357A58ECC52782B31B50CFD44EC33F41585E51B27E3997D33F
+461BEF897220AEC80007F13C5A1EE3A0430CA899047DF944831F8B010A7DE74A
+BFD26001472DC00CDC9F17CC435F61ADAD4E9AE062ED477FC621FDDF9242C449
+1BB3F77FDD1519A251B663A693D84B42BF0962F537757F38CE5C5D56B98AB10A
+3B70C8AE8D52DCAFCEC22E7B09D3C4EFDA1841C74CA975E4F8294F7BDC796500
+0ABE197ED3737A65F7BAE601C91DB3983EAE11DA3EA18ABBBA3650DC361C2E77
+EF9F97618B0C337A906FF39926D2B0B7883ABBA650816C4C6B34EEA836994EEA
+AFEDDE56E0099D0E09EB88EB093544B9BF4871200746A0409C475FC4232A38D8
+F3105B0FF44E4F132378DD12D9E796412FD0F9478322215E9F59E69396C35AC4
+097C4995B60BF4D8B3AFD0A002B3A6E4FA114131410D5658999B86DFDD3005F3
+AED1FA8F077AD1F27EA249221585703F20FB70E37A26C6C3F2E101693C94612B
+65BF89F37AA3C10A40EE8E49915F1A1B95D2193D8003DECEF9D76FDAA33B1AA9
+CEDCB21C2A3B05747FB3ABDBD904B66EEC60CED2867442F5FE445587EB8C6D14
+87A6B1B4871A8371A7ECA6A159EAB295B167CC35ADEB8512FD0C237421773BE8
+A081FB687F9C5D676F2944DE6E6B639C37E8E49BD4A6F0903E0C31EAFC4C7ED2
+C3C67E71D8BE2B8D5784E8A6F19A9A8929DF9833440E160945274682F435DFAC
+575048CC768BB8F13AA21C6B125E6073611BE138AE06D13E62E7EDE3D0239474
+E040B3E446165FFE60E20B75D2A5F9EE021B22256621C290A8F3342F0347B8EC
+CFA6AD68D47C05268EE3AC8683F4840D736EAB585C6284018DC94FC103B4A882
+ADAEFB625EA966F3877B3FFEA518B809A4BD184FE4923BFE783B4131410D018B
+E0FF5CB22D92CB1D1C8854DAE543594DBCACC60041E0B906FE5E692CFA6D2B4F
+31CF357A50CB1CBDC0BAE6C841A8C0A605330138715CAFE6EC005E8174AB7D9C
+9A9AE616B75DC1CC62B7F9EE69DB9ED2351442BD48E8D0A467E28525BEB6961B
+CF586AE20AAAA47D9B93AE7B0A4B992B61360AE1A51EA3FC550B5EA3720DCD75
+DD8D07C26180748FE67B2CB3BEB2EFB690657B726CB850C964A773F0EDE2C0D9
+9D7DBED1E5E1E18F68B114C42EB6D734DABD111596AB68D8DEC5246926DB5E4E
+D7D701358D7972B2995C7900DFAD6F78AA604C326024C0E35EA5F2E99B2540CF
+D72644DBB5EFA49C1D91FCD8AA69EF3AC33385AF45F42D1B8DBCF688A431DFC3
+EF8EF75EED3CA8EC03195F410A062E0400499BCF9017D11C9A4E00AECF98D318
+994CBB28D7FBD01C3AE3EEDBEAAAAF122BCA7A10544804177CC0760AD483D5F1
+4DA0ABD57795A29AE0BAFF8ACE042ED8D5C95DBD358C2529B33856B0E442DF62
+F86CAAB5A854D6B1E30E7E671B9B57B0DD28793445FBC64EF5469CD7A3322311
+E24AF1836C6981566C2B8C83D91079DFA5D02A974D3B83DFE932C0D0C8EEBB40
+CFBA6E52A7A2A313CFA0DB34093C1B6E6D740548B9FA9E8A1A4D0956A3D44931
+882578D2BCBC7FA215D51AFD9209524EB158E4E3FD4DCE581E3871AE2D4FAEF1
+6F25B0BA20F1FBD0943FEA005DFEBBDB1CED7F22C8C8A7FBCEA1642AFDE9AB00
+28624D29374A5CA5BD0060BD399B8750B55455FC22A0D8C5EA953A3CC77DD3A3
+472B6E9EEF8C58E28E19DFDFD99ED3FFDBBF3F164196BDAF0BD36479D927F876
+E2C9F0B20CFC925FFF969EEE5C116ED17F17E2682C997C29325D94E6B28799BC
+877868ED48D7B1D23107A5BFB734DE47CB46EB46B636317431E1BAA8F6DC1817
+28CCF87463C739E8E68C40288B69A9E790EB8229DE60BD665964AA130E564EDD
+CAFDD7DE4DFA4B553B695CB12CECEE7617CCEA9C7F5BD466DD88C177D116B243
+B4FB4DD3D2A809A379413566E118EFF3254260E73A55C03FC56A9ACCEC19493A
+6E8815D0B40B2A48E7DBC6DCC5E181F86BF252A4F312FB1EE7833D001520255B
+64B2889C78B19822D3A20363DEE900F0BA53D9CE738F25709C81F90891D4C279
+C5394DD55982721167BFA1C69C55852F92CD6BDDEFD9DCA73DC39791A85908B7
+CC7E5136823E6F4608529995F72C0A7D50874B93B0FC6D6A773A571E5AA0FF10
+C92F4F5E2931177CFC8B8E39AEBE9A5ECF7D6D3DA706E5924B84B8FA2FB56A55
+1130E7001543079C533248B118CD4543EC1BDEDB2BDEF437CCCB539676CDFF28
+9C05CAF4B8A1ED5720768705EE47AF1162E5B979153CCC82A8A9AD1393505BDA
+26FB54D3FDE40B8D2AB3F2DE79A0B483F7AFFB6022B81328727F66B4801BAAC5
+2EC53EAEBC6D8552AC3EF2E16F2977B8F80E8F2F682674C09CBC26C80D849237
+9D01AEAA507F5481FDFF95DA933BB57CFB64C016DDE71BE1557C659D09A9710F
+A073A68EA7B6BE1F70F3C8E7308B276065284DF6584107A76823B9B0778528C8
+ECD793F36CA5C1C405DF3A9F254C4E959337490840EC48DC14D2AD399111FEF4
+D2A870BE8203798A17D97E39BC7D3A0C9F21D609D6B5FCA9001428DC67C9066A
+BED5FB94E6F9EFD725B23AA3CCC97EAF1033C9B48E8682BEF2CEAC57F21C7658
+81A3B8028E6005AC2C13E0C807D92FD343F074F5C543F4B53D2B14FD50B45A30
+86C9775D4AAF93C2E2FE76467BBC2E3A6A95AFBFAAA36D8A9AEFF25C3BDD51DD
+D4B4E2B7C6FEA1F4C1A367D12531326160D859E83F458CD782294CDF38E3794E
+510F1C1704848465FC209C7E26472EA60F8001E945620857F4885CE61F78F66A
+4190871A4136695B576E39D87E5302EB61600EC42B2218CEF1F649F29383FD6E
+341F3A27793909A05FCC5A87AD7742BB41ED886460F0832E6BB8D443318AFED0
+528ADA31AE91D2D0889A755FBEB9C33AFACB902E3919605A9A8F9FC44C3F528E
+8BFD4F509761F1F513FE45863A1EBDD514E210C108DD567C06D446728217176A
+800B542834A5ED0874D4D5556898DFBA679C8AAB914F840C0C9ADEE375269981
+92DDF4B3F3E6226A6657B69604C6536785169F7301CF3C4BBF602C847E01D7B3
+C3824CA683D80C2B06BC68942C8CA4DB60D80043F07DC63E6B31B6A87B3674F0
+FC529D63C6CA00F3B4F2386DA7AE63BD2AA93523E3D70313687D297FCCE6270E
+3B5513CACCF8AC2045944C559F001791F06A2AEB21869BBEFFD79EA7BA743A70
+7917186B0E2E20CEDB0A583BADBACC2F4B3DB64A8A3F927D2000B81046D577CE
+43BB0DC4AD99E609EFD5F55DE8B5A41FD92F34FC96816E948168EE17CAC0D120
+13CC349F8B1225F396CFC62E3502A43F7ED355E901CA9E60687A8D5B597EB356
+7E1FE367860AFD2EE7B722F22473C968C6E91E7E8A4DE41DA2DD35D51E7DEA3E
+D9117DE9E874092248493F0FEA331AE639578A9322B1D3E6A9E866BAE054F555
+3DA676E2B24D1D4C8832355C6AB10F776F24412B106B03085AAEF2F5FDCBFC7D
+DBC4CC9F95E945A4E690AA2E8E16ADDD52CE957E883F09D141C560FF4A53ABBB
+45B07823B592960D914C54E09E44904BB28DFF1B805A1F72BDFC5D4A8BB5BBCD
+EC19366A8E3E08C100E8ADC25118F79BCC38E0D56E2870BA307EDDAC7EE3590C
+39C825E8958787A9F4370176A09984491EA71285ECE7AA6D60DB5ECED84E6A9B
+242B0472EE67542C4CBC98AB661DABC0BEE7B548EF06C347F287598B249615E9
+86081DE85D56453F3FAC216CD3F3E436735A593F4C8F3E28D5914DDF9DB7EADA
+516FF8FB621DD043CD00624FCCAC51EE263B86F46A9162B18FA26E1DCAFFE7DC
+974554DF975D02C2948EF4814A5345DCA12047176CBB7B68244528B6A3EF1CC7
+ECE0B8D472DCF741C82801D2BE5877EC14652819A739C6C8E7653B2671E83276
+75FB5C4D67331989BF8F0E699C0B8FCE9EED69F7ECF5B2127C4EBAA283D7B011
+7F30CF0CFED36D7A81856B746E7B08108C9C9AB484E2760D9678B82C956EEE36
+463826DF521155993F33DD1AC5F76B1CBB689999631298D2217B022744312A90
+2541727F580A4902637EE49DBC39ABD68BBB15BDEA8F8713F0B309B9EBB363AE
+A20BB2AAC22039C90BDC4FF6459814D11ED09CDC7992237B69315F56F9021FE2
+3BD0EE582D1FB0623A17775292868230D4D36CA7741D10B6C4A7890276C825D8
+7F4F04EA3144B8004821F5078C83ADBD3BC7588D856421AD4561AF9DBC18ADF7
+8F9CA070E79C15790E718ADCE4796C2CF3C777B2692A28F0F208FC2DB5F3F2BA
+1C3F731F596FA303E9DB14CB2D5281AF7A574831257A4B4D3E78D964BFDDB79D
+58497074BE55D6397C986981686771459B619C0FE8E2AE1066DFFDDE92F95251
+EB30125E767F8C4B673B8D733BD22ACFDFA7B2AEEB52D2F6C4C3579FAB300B20
+55FB500454327D13AF2DFCAC2A170678730D302168B433E462227D5200CC3473
+8165558FBC94E9041B2D5F44B4373A60737C63F2D1E126272B8CFE386BF8CF12
+511686330C6B61E5AED76AC3A475B8046736F5DF0D92C8F48A0A73FBB788463C
+A50B2266E2AF8E6A88E0385A485752229990FFCC06F517BE2A507A6BD7FA30A4
+2CDD60E5680B321662125EAA1A5C7C62A251C762EE0A028A8E8CA439F788D2A6
+54E47C631B9C1E86E47AC755BE98E7E3BF1B200E10758AE9A8D98935E2941A4F
+FFDFB8F5CF4472A296D6843299EA45776AB68295630A18AE7D28729C3DF2B6AA
+DCFA02D731A1BF2BB4715D0A9F86C45E6260E4D6213EB4A95628ED04D57935FF
+C24806343324305E4D81AED1E5AEEBB42CF2540FF8C96769F04FEE0864A7F085
+DB143D8224A796C6D983B342A95125662E65F969D1546BC8D907B002E46CE298
+900978B43AC371B432EF75E20302B1482B0BE4A1D5F933957F694ECFA8F5E776
+278E430635B727DBF26863E1DD9D36013F2A53F79884B99D4F81AC2CDD3D25B5
+92E870D36B2C8DA33341D19F1357D583C093A65C8B49561EFC71C37E25A74D7B
+C0112D1B4AE64F0B0B73405B416683AE878443FA527EEA2EF14A0234D36FF51B
+ACC4BE38DF8A92B6272B23E344FF4AF04CD3869988EDFDB3058C3E90E7A9659F
+311DE9F880061347C3FF6D326F18C9B67121013499C63E343CC0CB02EF6AE9FF
+FF9F2E46D176B884917823AA077C399E7D7C7780777F02315FC5C0CEFEC3E0C0
+DB1B562F6C1F61939D57267DBB35F449A69BDC6D93793CB7CE9ADB178BA79518
+A43D081F81DDE88BD16F2958EB56FA45516131655B273C8CE060BBA62CC59D6B
+93DD62347C2C68670073843422C24E25E891A4D5322CA595B9D9E45A4D958384
+48636974E6AEFA2A58D8F70953D7805D10AA76A13C75AC5535467DE9F943C582
+98545E8653E95751A2E605192A3EA7576DDC2B3EEE28037914AA83ABE4E8296E
+F0B84055E5413D56EE98A7337D4DD923D49C6BA4FFA8B6DBAC52E1C2B40F68CF
+9AB0FED29250B1B41E9F67656E098020658418BE1B7BBB8029973BEDF017544F
+713CAAA3211CE1E348BC5A56C12C516DF69EDAC03D886F0ABB2212913048FB99
+FB9B1E6802D75A38003C7785EF1A1377972B7DAC156A1B41DE4D6E811290727A
+9E2960C690A4BB5FFB8F0E264908175DA0751FFBB4D51E96DD1190ECDF2BC005
+F6F5B75CDAB236DED30E4F71F42F15C413D07B53672BB60795604BF2CAC6EEF3
+A5DD8F45023F33A77ECCFEC5402D5BE46E4F8F0CE4EC0F32F86B283A43C25235
+EE90E1C05B47BE5F33F1FFF0B69456110B9A8BBC03D3FDC8454D661E711B7B92
+338C0CBDDF9E9832E687AE4456DCDF304A482A72B86EF41F8447D401315B27D6
+3995B7F4280F2ACC8F7031BB26D3240A1407DC0CCFDF0651AAC6F9721B8A9398
+21BA080FA31CCD478972838819A4A1588D230C76C14B86EE189A124C315AA914
+25649216EC8C3F1EC35457264B5C394573C71A3203663ECC797AF3AA36B4C24D
+D6BA6B0EB5F531B8A25AD01BD94EC56BA1C926D753C7B391DBC3DBEE2C2E8C09
+15348A7E8ABB1B14AFD7A5AA07C65204ADA6A6CF391E38485BCDF8C905CFDD1F
+181313BE7025266AE9422E6BDAB3B93936B7C93EB07DBE70F2DB2B7F7958D7E7
+283E2A530B5BD7A41CDFF4A8C057D1DBFADBA85E9CE45A8947618AAE1CB3042F
+9957928296A4BA11CC2EDFB8485CE6D255B00B2F15BCE80D4E88188959722957
+5EEFD638B94E1BC01662E00DE2882C87AB937D47C81242F1C64AB7DB6C334F5F
+F5B73BB8A489629A36D58DBB7999ED2E0C6438272E4DB2CECCC1E64A49472FD0
+AE3AE0AAD5DE8E961D14D070964E2B11E18D9EE65D657E1959738BE1A0890202
+2F447A746243F878CD6FDCFC1C1F688AE4C532F2384BA60EE7243C8FAFEB483B
+F7042EA915A31940BE017AFC5842C951204574C0760A2010A197A7A8D1235CEA
+C7AEE034424412EA4A84B909A275C5BEA94F0E4D63F7E10FDAE75F8CDF7F835E
+F0D99AA64B6A9AAFB358ED698B10E275E1C734BC0B2804A19BD70782CA469865
+281B93F0C09BF0462B817443F3425DF2F006DD7BB238CC4A94619D41F71DE01E
+AC9B92D6D6CA965A9224A1114C9BA2BECA3F8C26AA02DCA5A0C636DF64310E60
+60BA72FE671E07136DD843743ECA7F915211B6F2D6411FDECE80DB5775DBA596
+BE97576B965191E407B394AF393D858847A0854EF280953D70A727707F9A46C9
+1B8A51FC1A19589750FC47058AEFF8AD1EB827CA0F3C78C859290D851D57848F
+E23A1703B33E474B48CAA4DCA698CC878136903D82624ED218A737F6C7D4591F
+C04044287D4977D8C9C50FF760AF82E80F3E6E3CAD0F034C00EEE8791F7C8E17
+000FB21D8F0222103D8F7BE5FD1996F8AAE791679A62F992246AC211D139ACEB
+1DEAE8EA556EB93BC2123C0B9819671EB214546344B935C99B9F3AD1B61914F5
+AD96D7D63772F933D785CA563AEF0CB3F71289E5AF02B18ACB028496BF8C82A5
+18DBA1A715DBDD10C9A0FCC32C5456BEDB824C59B1F9DC1528B82C235F45DB96
+0271BA11D75B66DF50FF54B234B4FD9768FA146E489E257D9F5C62578B3A0D61
+A468AFA9EA6F16C25D5FA4DC5D5F2A4AAC8669CA059BD9363EF6467E1EC13AF5
+747BB3D6B6EC468CBFD294409145E61F5AE298785D9F7DFF54498251C5E3B87D
+387ED09003333963CBEB24659ACFD273273D5655A9A01307CCA16E1FBE241192
+F6E31AC8D490E31C9D0CC49AD6067C60D1CC7A2F0FEF5B2B7AAFFBECDFBB5B27
+08E35A37C41A85F330ECB2C88B94CA5A9E4E047B7C700C32EDFA055335C04F40
+E345BDFD69377877897B25021DE05CFA7ACE7F89389922CA0386DE41E5F97580
+9FF6AD204597C7FA731DD1AC4FCAB912EEC7029FD2C829987AFE21D24F742D77
+F6F689EB2576E386B632F6C3155068C53C2940F731EB37C7905CFB16594428BE
+7B327CC0796E3B3FD6F7719B836A314DD685428419DC74E534E480D17A495921
+5C0DEF9A7AB28CBC1C7EC5642C693E4285EBCCA41E713E1B9FF3F597948E405F
+F7FA11F6A8E43FD5ECEC0CE1B07959A325B49C00483656713A0DF26165CE0BD9
+144079AAC23D7B2E24F73839C01B971542915D70737BB184846EB670EA3BD6AA
+F63B5DE5A709199EAE53CA83D8A248A80CA9FA65F03D0AF0D17CD290A62B8429
+6FBB59FBD51F3280BDCE40E021D9F0552F8601F4837325B87EB8BFFE373251E3
+D76880A6CB90A6920276343452E0854A7ECC84D743C59E8C4EF59FDEAC252242
+90B9C6B666E94CEF8B1A5A05D7940D877EDB1D52B0588C77BFB3149951CC7B41
+F2E77A627C62D6099BBFB571D90D98ADC819DA5691E297F776241EB5CBAD1BE7
+6A2F5A44F5475A6AFCB4683A3FDA9442B5B9C3B4F47D40100B8ECC366BD49DB1
+63AC7485A5B74EA699318C045528C1378CD84D77E0880850F723D341BB904FC0
+C4764E52C0A92058B8AA8ED472473692870B09AF6E22DC29991DEB71002EC47A
+5D8E90392533F3EB4BAEC3FE5F26CFDDFD28CAADE3519AC92B92BC9CB8639D6A
+E8296BA76587587344DFB67AE6C55C81710E9DF937FD98EE8D136A1A2A269917
+D191B4EDE291A7B3E38AD610CD2C79737F7992F8C932AC0426987D029C7E628B
+99B5A35ED77C5943CBEA4591A8A3521BF101BE5195E7D04001E8FB2C9BEDFE8A
+16E60F3F30042A6E33DE1508B471776D74A5C66CD7672B0DE4CC002A63A78001
+5BDFF52FAD0AB9815F70713442CCBFFAC8255EE0BF295F15860CB0AF53BA966B
+BE8856AD62DFF9CEF8679E66A156B8262D394AC2FF8732C235F4909A25E0E6D6
+F44FD9C8B99E2D1A7EB964BC39E95A0D9A1B03530EF9BE6991CA16FDDC5F04EB
+BE6A74F1EDDF7E6FCA0C28E813555BE7F133A7A0E7D33FB311A2A211A22CF727
+1ECF662DE52E971F6A420460194CBA17C19F8992C7C1A52EA49FA708FD097B3D
+BB797E6B86359164BAEE0CA06BA124FEEBA40C4ACDB58587CF914CEEB7CBBD2C
+747BF8E016AE6DE5BEEB9C9DAA15CDC37F27E5A1EDA91099ACFDC5D7A07F491A
+7179D4A2D5B5F045F824F126BB52B8BA1CD8DF1E31C45DA9126CE1BE450B6B3F
+7465E896A0EF8E6BE25B6135F5C9EE3D0E8BB30B2B7C594B8306CA078D9512E9
+6A35B94D24669491080AE1B9A1568ACD117B4D4A6AB6C0325EAB351655A8AEEE
+FC9D1C21AC27D92F53A9E41A0CCF29D98E032098F4EA9C3F6653F84C48AF4AB8
+F7BE53D9B609668997EB4E3B38ACC423ED28D8832D7DE94F63B369C62795FBC0
+3138CC22C0250F5CE92B0F97BC78DAB5F00EFBB57491ED59DDC547FCBDCEB9DF
+B3D8C0826780A9E0C5DFD394357E6BA6311C4B7E569E9353D872AE90EA4AE7BA
+33F62ABF92642F00495CB99D685ED803687B61462B342BDBE629F372EEE7CC48
+68012C362E27001FACA2D0CF46FFC80A2E3956F9501D2637AA1DE848A21F5D56
+0A7A6965B7CA30CC20FFF711457F9B332103EB1770E3D45B853D8205577E16D4
+8E15BAE0901F6EE488206A9827173C21B663CAF46118EEC9C2D86CF9314CC3D7
+E9AE5273CC2716FFF1A486299C00AFE7E28697F82102A4FC554867C401F9E96D
+669D48EFAE660E6C060E2917CA8F34D52DFD08428109E69BE69C49016263517C
+3015CABC10001BF2515E59CB5A0D1430ED0BEFE8E5DF037C816C7BE5E0144B95
+89FBA15801A48A7867D9607D694779BB772D10B6FC498929A4A689D218350740
+D68A8B8B619F8E427D21F7D0F55FEB9065F3C62A24F076884ADDAE44D7EBCFEF
+703C9E342555C8F985C73D05D5733F206A7568A9F3F58A8754C00223A1C5F3F0
+72F387704E979796C5B525E07B52B3DA1BA60BBE7869AB5296C70DE428227E2B
+8BA35911916054F35B5194CF2F67D2FA90BAD0E08BEA7ACDCF8852F22D77E461
+020B6568CCA168EE756DA60BA381881F7BDE913CA63766E9380D4D52371CA9BD
+4D88F97EEC9C9FEA8310BE410D0F01459BE8AC4FF81AF70E094EC9EAB7AFCF7A
+D70D69CC45C1857C6B2872D1B141D68341F36AD9126346230421291F24540713
+177E40B77E99A825AEE693906EFF6BD3B37AEA4425F8525353F5B2BE6AAE27FD
+800E0A44A75F5EFD9EBCA37878C3AA86BADD21070B825EF79FE864C8FAC2F4B4
+CC3255F76A697DF96B49B7477F4ACE3E01C3B308B5047BEC9475FE9D51866376
+00F8D88203A31054CA687E9395AB5E2A39F5DA26BC62F95B3E90CF97214E1DD4
+3E6442F1E59E154C5F6F65C7F8221FE80EF5C389AB47F70F6B929FB4C8D8F51B
+8A64A4E6831B67F27E96AE2B4E030BF39ED862F097DA695EF32D9D4C6B224A20
+049A643796FACCDC81504563547E574958F55D4980602FF40D3A1E945ABF3B97
+03A3E87F2826092B0632077DA7B44319E18341C0A3D1008B7C877A87252C90BF
+D18F22185A572F1A72D141F11A4975B4DC2134275B93AB85ECD20205B690A763
+D689601CE4F859791C32BD4F42400CDF8A711F9CA54C921021FFABAA4BACF191
+0D03B17046E2D6189FFA68152657AE9B54EAF9567A655CDB97DF85BFF36F3316
+501203209E372AC415DFFDECD6ABDAE58C4C80A2FEDE0E29D666FF1C3D345E24
+B8F0E42DB633E7254DD7EF171911B360B4B8BED9424922C4DC228A11B2E998B1
+533B734E5090972DE90739E8BD1429EBAF4A40A8197B46623B193ACD00A1406D
+E3C887E010C3E71ED3DED4F1E44D5AA2220956849AEADB10AAF9E8B6B05FDC80
+8E8247306178B255B90BCE6B21BC8C2951C8AB203B97AB3080387DA3EE38825E
+561D3E738C63300CF1
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -654,25 +1006,41 @@ D4EF997C5D4D744A7898EA9387C3108EF6FD19628647F9CE7956D4641265BCA4
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
+{restore}if
%%EndFont
%%BeginFont: CMR10
-%!PS-AdobeFont-1.1: CMR10 1.00B
-%%CreationDate: 1992 Feb 19 19:54:52
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+%!PS-AdobeFont-1.0: CMR10 003.002
+%%Title: CMR10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMR10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMR10 known{/CMR10 findfont dup/UniqueID known{dup
+/UniqueID get 5000793 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.00B) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMR10 def
+/FontBBox {-40 -250 1009 750 }readonly def
+/UniqueID 5000793 def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMR10.) readonly def
/FullName (CMR10) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle 0 def
/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
end readonly def
-/FontName /CMR10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 11 /ff put
@@ -757,470 +1125,724 @@ dup 122 /z put
dup 123 /endash put
dup 124 /emdash put
readonly def
-/FontBBox{-251 -250 1009 969}readonly def
currentdict end
currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
-016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
-9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
-D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
-469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
-2BDBF16FBC7512FAA308A093FE5CF7158F1163BC1F3352E22A1452E73FECA8A4
-87100FB1FFC4C8AF409B2067537220E605DA0852CA49839E1386AF9D7A1A455F
-D1F017CE45884D76EF2CB9BC5821FD25365DDEA6E45F332B5F68A44AD8A530F0
-92A36FAC8D27F9087AFEEA2096F839A2BC4B937F24E080EF7C0F9374A18D565C
-295A05210DB96A23175AC59A9BD0147A310EF49C551A417E0A22703F94FF7B75
-409A5D417DA6730A69E310FA6A4229FC7E4F620B0FC4C63C50E99E179EB51E4C
-4BC45217722F1E8E40F1E1428E792EAFE05C5A50D38C52114DFCD24D54027CBF
-2512DD116F0463DE4052A7AD53B641A27E81E481947884CE35661B49153FA19E
-0A2A860C7B61558671303DE6AE06A80E4E450E17067676E6BBB42A9A24ACBC3E
-B0CA7B7A3BFEA84FED39CCFB6D545BB2BCC49E5E16976407AB9D94556CD4F008
-24EF579B6800B6DC3AAF840B3FC6822872368E3B4274DD06CA36AF8F6346C11B
-43C772CC242F3B212C4BD7018D71A1A74C9A94ED0093A5FB6557F4E0751047AF
-D72098ECA301B8AE68110F983796E581F106144951DF5B750432A230FDA3B575
-5A38B5E7972AABC12306A01A99FCF8189D71B8DBF49550BAEA9CF1B97CBFC7CC
-96498ECC938B1A1710B670657DE923A659DB8757147B140A48067328E7E3F9C3
-7D1888B284904301450CE0BC15EEEA00E48CCD6388F3FC3BEFD8D9C400015B65
-0F2F536D035626B1FF0A69D732C7A1836D635C30C06BED4327737029E5BA5830
-B9E88A4024C3326AD2F34F47B54739B48825AD6699F7D117EA4C4AEC4440BF6D
-AA0099DEFD326235965C63647921828BF269ECC87A2B1C8CAD6C78B6E561B007
-97BE2BC7CA32B4534075F6491BE959D1F635463E71679E527F4F456F774B2AF8
-FEF3D8C63B2F8B99FE0F73BA44B3CF15A613471EA3C7A1CD783D3EB41F4ACEE5
-20759B6A4C4466E2D80EF7C7866BAD06E5DF0434D2C607FC82C9EBD4D8902EE4
-0A7617C3AEACCB7CCE00319D0677AA6DB7E0250B51908F90A32C4175B6BFB279
-024EAE1B04D721A6C54FD62484F8949B2CE9B87D9CEE04DFF82BF14931B3CA03
-AA5F701B6F80BBCDF2C427C40A51597F0B1BFA25EDD7CE0EAF2EC676BF0059B7
-15DD5462BA30DE78A08DD533DC0E8D85F9DAFC5FD842F417265427E0F1B71834
-D2BF6EFAC3CCC40D3EF3B2E2080F148441BA45E5D0C0F7D8416730AF4BE4FC93
-1E965594E0364F0D4F1EC48004CEBDDAFB1F0EE0A8222358EAC0F62E6BFA3C9F
-46875EB4C999219B91E6147A49A668505667030CDF3495682B79C0F614AAEE68
-D976EFCDCB04127C0D7325A2211E49CD316935A0B472D1F9FFC68F7FBEBC7582
-036CB393016193A9783DD08D647E89C5BA4EFC8701BCCB6A5C027C4FA8644C06
-251B9E33FFEBB1B84AC4D4B148205C8CA7AF5EF97F2788EFB0B71473AD0F5EB4
-FC43F46602C53E53F5A6D1E445439F65967C51EAB636178FA377DB2DDE5FEF41
-9E91F3BEBCFBD3B4EBB510A0DF7F4D19C6552BC98F10E25612B1396020D7836F
-A3D3C865661DB276E428F09F048A916B4F07D8FD01AC1942A3CA342B0E531BF2
-3E9A7AF265ACE1585E331A8F8B5AE06FF085C1F349215581FC7D68D16395D934
-79B3BD866A4BF33913DEB54B4D00ED5EFF3313FBD1C5E6AC430567872BD935F2
-AF1A3F892266CEAC15DEF43BCB83DB075A69EAD7D2EA53303F65E04C5673411D
-EDFB32156120099AC210E623BADDF2991F96813AFBC1126DF53A0A776AF7D61A
-6B42225A5AAC1B0AFDDB59C5922143A156EED76E3E1ED01ECC6ED9F61B5711DC
-C5709EF5A3CED45628AC1728DFE98F07389777E04A7E407E3B007017C96F6EE7
-D0FCC0426C4D734A0B108FD2BEB48FFB6D107C5AB8EBC3584F13A40E5508AD9D
-5A081286BFCE1D5DAF5F3D86515244B4D0D77AF9820A93B7C90420FF4B8D634C
-2C5697E3E04802E2CD7B9AB8368F1A9DC214CF893AFC7BA3A8DC24B0E549E106
-F04530708DD03367D8501655B1501645F17E547C1C948DEA7A4814F22E2A1D55
-5AF16C55D6BB4EE9929C9CEE82C4D6A16D70D17AFBBC6551BB2C9D8B69F5DAE2
-5DF6C2187ACEB119EE6087BAF5E79340D115C53E710CC7E4C771F43ADE91D2E1
-1AEF7BB2E6C9ABED010A835514EEB6C9A2C93396FA12E8CD0B2F9045587E51D2
-7E059224A889B3E7620E57AB6CACFD769898B3955661824DD4AFCB9A7B218DF9
-F84B369F52E246723C7D0B26C145DA0AF81C83DAA091143FBBBD2A414114E34C
-7C994D8401119D5A46856367EE3FBBBB32155A00E5314641288A6E1FCE47F385
-71C2F7A7602F777C11884DEFEFA560333458DD227E63F3FE68A762CAB0A7308A
-FC59C9B293233DFA257E5D10BD5F12B7652C45C4C50F14F17E59A758BD7355EE
-A89B1EC954B86642B87F814F936577429C467BC8E97A481ED15E2633AD73830B
-DDE3DE50E1EC439204C7FE350C69494823725920719D613907163AD63FE83C6D
-1CB6DA81A6C816C747542CA09493306B44A7DCE934B877DD356F38D07D3E0355
-CB149BE6ED646E84DB9DB61859F6FC45BCE13EE42458D1991AC34AAE6EA72320
-3EC6346C38CA87107618ED3C46C331623D8FAACC6CF9292B8F1B407806A0D480
-8F51A5BC97F6B15807F95CA9DC14C0F5FF3AF1881346AF82F65F0C9AC200DD03
-CD20E0C06E8AA4FA8B225DAA01BF6F07ED8B9C9577F5A565755A71A40D2A453B
-AEAAB4599F617CFEB0B809856CE021E25399D38570ACF8354798FDC2DA24F0A9
-3AE098F5EB8C400569A5D4178354CCE780B8CDCA570E6051F21ADDAFFE775A26
-F9222A6DEE1BB669795728FE4DC07114AB6A8067C56D909BAB80358F39B257C5
-779834A4261613C8F2EFD82F20C9AE15E072BD78D60D77EAB14430DC51BCAC86
-DD91D1654E340719EF37A8B7C6AC8471C16680FB0FB7ABCAA8555A292AEAD439
-4C6BA6BAFB0B19F9DE59745E45D0B67C1D4DE80CFEA538A2551037E0CE7E8D57
-C10AF598A2E9F8A5F67D793D2A228E7A1ACAFDC75420318FEA23286A45CE9C45
-EA34C3E15634BE1FAA50EABD04E94F6D47CA2B78F2B129C94579D24946A8BF07
-8E870456AD04FB3D0549B59D1CABEE60F9759BA2BC06E068D2DEDDEFD8B2788E
-92CBF4B44E04781BC17A58A0A3BA1CFC463145593170F06FB4DDB90460256DBE
-572A290F44973D09EABC8D7665E1D18E1B8F5EE44985B498B6E662B87DD610ED
-CBFDFFD33F0A0C95765E24A7D071269FF7FA2D47942FBAEAAE065B7DF4A9EAC1
-FD58D7C302F9D15A2ED0969168E2FC4A021C521FC7D9C53ED3DC1A0F9AC63862
-AB2396C14CF8552EB0A8C067AB163FE0DA20E3AE1C7881AD6DB0E1D615F7F2EC
-1184C69A430487B861F5CBC52F27C53E1588AAD6FD43CE2C0EA490B257C4A36E
-06E21AA6EAB94938E002FA80E1B1295C1322A207C5A87EC49669AA2FF054BB4B
-B64B622FEAEE05CC84835178C4DA9DAD113D5C6BA75830CFCAA2077A071069A5
-258AC7E801FEA6778FB7EA7507470AD0AB6BB49210858477F53A831F9CE5CEF8
-B519C07786D0551A22E3EEB5230098FB06B390FAB4C73F0D3D03EB4890C03329
-5A0B9C67F1E16B0E1A9D4389DE67F6A950F322ADA03433E71E1DD8D4E416D9E8
-CC55EFAAE6C94CCF24980BAE71CE23916DDB17DE1E412CA5CFED25AC13109246
-A26A8F568DDC73538ECDD2BB41B9B5B020F0F1D36C8F414C24566F8F9E1352F3
-38A5D47FF00D91F43069137BAA659301C2A1EBA1AC6623DA8773643A29E498E2
-33C33DA49C290B5719BAA7E9CD8D00C803624BE63EB0100D6D093E3A1A86D653
-A3CAE4459EC25EE9D59D4AFF27CD3FE4BE831C0C31EAF27F364247114E896CD1
-6395D9516ECF3DA7D9A6B4F36245021C9CD6C332182441B79365164B1E40C5DB
-9E4B5A69DB4AD7D79979E6013435C7D70BB7E910B75F28449CFAD0443645DF30
-5AE363FD581271F587E53FA6DB88B28FE6B80F8A5CD58BE57B6B386896BF7A4A
-D1A36057CB2CC346697B21A5CAAE37A68E62BA46568F0CEC8EABCA7D1A08E7FC
-72622305F10E7BECD696DB80A170CB09BC5E27BE68733943C72A163C88485457
-D47FEA6B5D20982E5713DB5C4E499DE5DE8C2090F3006242516349955D8D7857
-0DB51BFFF42BCB28DDBEA8C2AB5431DCD10DDF05F0B59D00F65BECAD61ACCE82
-1454C36AFF83685C530C8E3A5016665E2A50287558A44E43BE485C96E3DC24E1
-8B291399BD9C9D105377497D085FE5F9037B984104E915DB9E76DDA3BD5A83CC
-ECB3DB2A2E14B90760C207F2D53D9389EA03AC1F5A6AC61E1F538DAB42800822
-BBB425E322947A26F51B3E81D2B3D0CF214D2410BE2B0F12CD978C1943A025E9
-C9E5B403936A6B7928966EEE19504D9F7994861A4A73BB3A63719DE764BE9182
-494E70BFAAC3C26CF422727BA3A2660F1B2394CD361886FDB734AA49614F4C61
-565831EA21D56CCFF58F29F2EBDB513E9D3601F405B94FC7F5FCBA22CC3E47B6
-5F71C0768FA87DA0BA8F5390C0EBB0EF2242FC8FA3AC0C3108F6772237BFEFD8
-61F3DBAB78F70D8801A2F4C615D86D011537BCB2B5ADF4A13EDF0C8BFBBBCA0C
-2C0A139999ADE8FD695D2954C79A86D885E70CD72EAEF05430AEF1A15C9F1771
-F10BC3B8C9EF931147E5EDD3EB5C8F459077AA3407829FA8092F61A909A6B67F
-B6AFC3F35F065420DD6CE2E0FE0227B06A203F334EB8B7EE4C6F27C394B86EE5
-75D6200E98B1F37F1A977B8E92BDF6C4532879A6EC1D68BE998EF2B57C50F06E
-5F30DCFAB85B51ACD1B127161A73E0BD1DA354F3025B3F92C054031D03ACF16A
-158B45606BE9E306B633061654527B904E99D6D8FC61D7D1CC69D18D94D977D4
-402BAE1BC49DD45F8772709A4F148476F9302E38BBF6F6843FC56CDFCF7F74F9
-983100F8FF980CA805AC80511BDEDA1138F12733EF1FCB50D0F60EC06D6BE1B0
-9F908DDB1278340BC780A31752A809A0B6651C5B3E5E0F2017F092849B1162BF
-2188145EEDDCD96CDF5C00AC05385492038EB2F10358D853509706635412F19B
-DA6041053C8F41970BCEDF162C1347DEDE920819734B47FD99CD38E1BEF7A7E8
-8150B295BA78BB5EEB055571F49B848E5A85175DD39DDA6364B7BD0C9C3FC42D
-EFB45AC4E52351213740B3CE676A43DBFD4D04B1691D5EEAC147DA471A3D7A00
-93CC624819D3BE17DE9D8F07FAEE4F54EDCDEB4134D9F39C3BC33857BC8A08BD
-82E23B5564415A3410CDF25ED8C3D443A0F5A9CCE3D75C5AD55DD3DD28EEC633
-82882118F09251A0DCC8349AFCA61603ABC621894DA5C1BF308399A9CCB8283B
-6F54E096CE3F2D3C11373E5356570403B418B84B06FBEE27B63D8B678FA39186
-81605E6B09B02037FC124776DAD7AE3EDF993C064EAC0DD678E13D8D78F74DC5
-22BDD780DDE77AEF1C2E2CD2239EBA6A9E8E9AF9F4F4605ABDCF22902055AB90
-3C5CECEE9B92B52EDAD5D29C3FA6964A7A7A2EECD8F9EAE1CC81D9825E8411DF
-058A838F2C335860FB3B063C824FD45825ED5481B9320FF99B60F17ED8A1C1CB
-A7E12EEF35A40266C7DE2E1DEC31AADE7626C5FC57DF545933F602F283A27D9F
-0E2C77A1BD5394944566497E01CACAF62542EC93D16CD80D4647435B6C905A31
-B94C5CC9F43D6492BB70A5E8867C7B0F58D75240B496DEBFA6DB94D8CA775A7E
-53237BB081D1A189124E6880B6D964867804BA33E0BFA961A562836F7FA1E98F
-EE78ACCF16B330473D69D52D011AB174EB440746ABAC7DD7D9AABA70ED2891D2
-47E2AB24669280D11FD453BBE591642A3FCE09EBCAF62F8E27FF0782216E6E87
-AFC464F2316DDBFF0B6736D42577AD10754C6936B6EAFB18AB6AA3AFB316B179
-B19A0561A157E90035FD26B8FDC72C2892C94957D3257C38F8B1BF14CC7C6AEB
-6FA1C4AC6F22C627BDB1CE6AC63D656D5E7410F7E516813CA3BC9EF02EE8ED4F
-B02D57B303875A7F3E1B8176892C2149C39060E2AAB5C4DEEE429B7AE36CCF51
-997C547147B3CB8DAF1E8C8B160F00A869E5FE90F8302E081307F4C92EE0B374
-EFD848E3F943E04245B6393060B126C7E2A2728F9878D7CCE3DA74525AF11C66
-3BBA0749AEEFD5B190A4A0A729784D15665A8150FDE7A8EA5CC4CF0092B2AB09
-CF8659711E84D057DEFFF2696BBB20E16D9E4B1D4D4EAF69F3BF07644B90C94F
-D11E9CF3E66CD3368E808DF69DEB6C6A3233A88D558BE5037ED5B42EDA0070DA
-3D29F04CBFF58BE922CF4C8F9688A20EA7CB644B080D2C01A2715A69D3D8B7D9
-5C0914DD83C9490E465DF0EF013B6473BC28E937C6E13A2F08CCC8B6F35544F5
-9F79AA89481CD0AAD87C6CA2391BB69A39B090208EFE1A0FF5BEC74923193F6E
-B2AED1DCDF644351089CD7460AC4987789B2D92D851E3F58B41BFD281D717863
-5CEC8AEA5CB14F52F6EA6F5156F08A1CED2312CDBD2B18BF01FE503AB86DA440
-F892BAF54438A5FA847DC0FC7121F2EB829DD00D2DF2BE54EDCC42187840D8B4
-1CE8DF33B574EF36701E2873D5824C37C6BD7DA4AC7BE64D12A21FF2A23CB9B4
-1C6FFA7D8B927745000345B5AAC5825D89E617FFC97B6C7FDE0509DE3FC6F2E2
-1508278734B33F4550D4F565B0A23C2615B49BD17B6741E086DFD50E1E6CE979
-558741605E2A314C325BC4216C2F0F809F492B1898431AC7AB4579E76A3A0F63
-E8CADD4AED7CC6C56AA12867A43CB25187686ADBD4591DD35638F5C79C961085
-BBCF38D48E756C295A0FA4E59BC1CFAEE016686A8F91CC56E37E4A8312F39837
-09A926B3713EBCCD1D82DF9DFF36C0C024975F531B42E7F61D830E2FB51BAE2D
-9A05BE87E8F052E748F8B4201C8869A64BBBD42CA4974E230E59CE541EC0C743
-7292203798D2E11AEF67156FEA12C22964785FEB4CFF473A710A5D7F97A07A40
-D5E9A182D7A96A083823DBF8B1726E8B71F0D751D506DFBC20EDD53A0368D098
-59453D360568B76B5168254027AB71D2480C63D486E855050B1F480BEDE9B4E8
-3379C0B539E33AF2E286C2A02A5D73148114F88898D7C01F408844CA50574D1D
-2B513E63ED04011F179512384C647100C1870937BBA5F404E80B6C8BBA52F6FB
-DAD5343B530919E5AE54E0C859591769580B82911BDF290777B825E417D4EFB2
-FA60EED5786B27E3109CBCCE391B855ED46262FC16A663E63E9A19CAA6C6F58A
-72AECBF5234E25B5C49D143F1084F0B571BB424A1952AB4B26366ACF83A29BEF
-75D9307731FCD44EEF157A59117360402DC446F9B58388AD66AD88B8C82631FE
-31E99E3158C25D152EF626EE76B2AAFECA33CC0B9A571C7253D3AB32DCCC1A2C
-11DED910482250F8A84E0C55FB76264A1C4F434CDD85A347B1DF702C8347CF3C
-5461B2F76AE34887964985AEAC9B7ACF13700B60B7C1446ECA269B2E5146AA31
-0F0556C5435B68B92274A4E5B554B0B7A163E15F8D4A0391F1389C3D7BAC8EC7
-A1AEE0C8C79ECD8F6C2A6011BB0FB966134FD1F75C32F515F63F6A5C15323304
-EB0F0C267F5FA8FF55D2E4D64F5184320756B78F8C043B10D267A548EB1E0CD8
-04E106687542C3231D1E8C157A9BBBB053ACA2FC0DE6413D52360CFF6ADA686B
-F2676FCD629ADFFFFE6F818EF61E5E90B2A077790B2B06E0BC1E0B9163982691
-2EC03BC185E8114DBB76298230FE8B82BFB09FE562A0D96C696784D365CAECE3
-A89A1643257B0298449320C35F91980B364D7E589DD82D69C8379B33CEEF951E
-851250D66FFA0F664D6C2A8F61F2C97E925A46547FB698321FC84CD623CC7C94
-223D2B874D39A65264E9B45EE4646BB830F2F62F8B7F391BF70CC3A9C099B7C2
-559F46ADB70B967DBA1B74300C79738BCEE6FCB3C6D9BE839A22D8C7F4930376
-82D2CA6DA3AA63ADAE47FEF0F0812A6E8D6CE62C60181E71DDA511DF008C38B7
-6741FE1D1FDB1244D04809C4DAFACD75070C10CC0937B7FBA274F64252654907
-7BFCDCB0A8095D5BA8687C93BBD90B2AA3085C047DCB8A095640310E0ED49B31
-93DD65DB30F49E3CC07AF9FD1A6EFC7D5DEE306121CF7442C0ED5A1EB49DADBD
-5A0AE4F838C46C78DDE83BAD2AA31EE6E6DD7405970CF09FA9EB5DC00889EC81
-0E42612CD085D64C74C0784C04257F0E708DD74A8D8C06F8845C2B2966FA2358
-4D5DDD2157A00C184E11300D34097737B1CB714CC71070FB05F7385CCABFECDD
-A035DBF8F2FD9B67F7402BA8F589A5AD61A5476178B404188FB908D591E4948B
-FD39377D0AEF18B82D001514B03A123F7FDD63812FD45D62EC971E93EFE90BD3
-9496C49174F0EF0F513C2BA16F6A6507968C5199519BA9D713DEE4D0C2D427C4
-078F347B5120552E2556A42E0FC37BFC7FE8181F17A01B449CF71E093695BFA2
-D53857C0E3DB972244943B67A07D5AF4FE7F6E04C8033EBD20EB55C38AFF58B0
-D04FF4AC82937A650818A480F2A40ABC3F4A26B7F4C17CDF1A7B056EA67E0D29
-01BDBF1DE76DD59523DDFBF39774AD9E4A04CFF23CE673197C6A17015449D65C
-45C56079351A5A16ED030E96D24A755B2C14B6B925D8C30A16B77981B92D2171
-1E77C0C11DBF9ADEFFA03178411F841A109EC7DC45C4C8E133725B7ADF0DA136
-4A46840677A020BE6897A9FD9AB322F27AD0B55B5500D2B48B71D4AAEFB10774
-8553F99DFCB01FC07508200B9367E6C8145D7F1248335E90D32D9E528C4B955E
-B8DEA684A010BF454070B7DAA128C0BDF6AD29810C4CCE310A30080AD36E7799
-9FD52B074E044EE02FA248087EF3D690FD6DA1AB501CCA44D132049479919EC1
-9401487835D2CAF0A89FDFFF635EFA444E8098D4CE6E2C892482F45D002C28EA
-8879170E7A34FD6AEFF140B1EA77C009F30E60B2857609EF8345A0F20F8085AD
-5E78AF3F6EE20F363468B49FC735FF32AC6382F638006B83FC283AB7ECEB0DC7
-0B67505FD5F97105EA4BA11B18AECCA6E5D7EA36C538401F16832183A17BCAF6
-BFB047542E014E2941BE29F8747E6DD07AB13B374AFA63ECA73D4134FD950C03
-DA939E892C35543DB6AE960A18D57490686E0F758061AEE74D40BBEAC328A905
-7A29FEB1EB40ECF45593C6B2829445541DB58D0E8697CCA09C47D6C86B730015
-8E920228398E492FF70A3DB13248033A61DB5542B8327797951A89317C96E68A
-5EF8784D8848222DEF31FE30A9F9E4C12D42D0DE930898DC4446509988E39196
-792F97BFC9A60C717D78D8901C5190899165A1389835DE21EA49EE01B584787B
-8849FDF0146111811047FBC3ABFFE2307E16518093AADA08DF73FDE6227D2BE0
-5DF2071FAB4F7E825B563B3059F8615DA305F51AA2B9906F1516040BD883DEE3
-922D1D905EC34D3F0400CE2492E93BDFEDD8F3230838EB248C0CEFB5ECF929DF
-D707A953953722436BEA6F5DA51A56F7668CD083E9CD7FCC8B736EF8B08442C8
-AC1AFF6DA974FE5E50D1694B3D07B2E47C0238801E7528C04C967023698E5B1B
-23DB992777B22E7448697F2B78A20B98B78A79635104930A408C18C7E6B1577F
-425F2073EE5E17A8998A38DEA4BB12834B6E842835BC711BBBB04B371CC8E532
-2490A6431876346A3A263683C153D77A5BB9B32E3D91B952172DD05C38F72F3F
-A5140DF292545E31C25B27E2791205641375EC542589D61290504CD73B560B2B
-0C2A8AE31CAACCE8BAED61AC04652F2E0977BE269D860034C429B0164585B658
-29EB62078B9B802B4E214FBE0198A76F5C9CDF072D3C3675583E44130306B5D7
-7D2F147BA926C70749525B60374CF6763E273F30F2532469BF6A7A3965E26046
-EA9E93F7D393F8EC2C021987D33A9AB30930764D1534AF53E361EA65B2B64B9B
-4E93768EA25ABF534761CF567552B0B6D52C8C53BCF5E3414A0B653FF21C8F65
-2C6132916466A286C7E498A2897C237AD5568FEBA57B72C7A87A416035CC03BC
-D1EB9DACE25516AFB3A6B6CAE2C70665002FE2DF14C2850662E43C5F05252031
-BBD84960EE0A86C8410082F441B8B594E001133C4D9DFAD9B4F38BC878C29AEC
-5EDDAA290F7FD74C9228995E107A975C70A7A37EF8E01856E978F284F1BB1453
-A44320130DAF09D7064D9867D27A55E3425F5D25B99F553C9202EE42FE8D3AD2
-6C1D34416C520E0483CC2B87ED9D9F39E563A9A0DC421C04B3B9CA8582DADC5D
-323DBCAA108F28E8F11DDB3D0F0B10D4A62C93FF9E2CED79214641160DFE8447
-93ACC0D72E8D30DFA0E368DE8E56C566D7E15E559C409EA8D913BBB18E4BBA89
-3246FD9DAACAC4C5DA87EF5B9A91D10F10D7252F7531FCBC343ECD3D2B674982
-8F0BE87B3E1CA86112FF617A8E63BA92175913CC403038265C5E35621001B6AF
-EBA934372CB68E99920797A6B154557FAA7C3C696A15EC66348E209BDF87943C
-A9F4281847F5C3C8F340C80240F1A93916880670C350B3A9E651EBA7E62F5D50
-9BE78BCDE8E0599FCB7FD9874E87E957D1117CEEC67A63B8862278E015856F2C
-E31898E7FA1436AF76FF20AF5A7E5BBAB5C23E8C0E66C975A290AB6EECC07F04
-C8A37224EBA5D046C7746168EC081B93E0EED2DA80D9754050617DA4CBD3D5AB
-C9C57C0FA2767E7FD633288652C3C4A2C8095D9E8E2A18C887B4D765B2578215
-64EE4227B2A8B3990DE2E0A4361E0C05B145837D58C4BA15CBAB0E79221759F4
-F17BB5097988872A957479DE4734BE905DDE5B8DB9A31FB9C235114974520D2C
-CB6D6284C199A880217364EDEB160F5FB7FC762819E4509FD20E27A5F865EECD
-B893551A9ED16D5E809B49B9AC67763CB67F877EC21D8E2B8A0D06E9936E84B3
-A6181D5831D67A8F2A466A71F5A4DCEF0DD7387CD5B248F2D5981A9F63D8A260
-88B568E1773B13256E440FACF2DE1041CB99397F8B4CDC8CC87447FA6FA0D670
-5B99D0BC94ECB1AD7BAB0DCC66D278E256CC3689DD3B2F036A6A3DCC8FA77FCB
-0A88AB3A3D50C245AAE20ACCEE7ADCD9FC5C9FD53B405F0FAB220385F7D92011
-E527BC0789261AAE6197377DC5BBC9F5BAE3683700F85C63C0DC59B02BF8B65A
-800DE3BB27A3E75A87F6A550C787F67B1430369268BB61CF5FA66D8F5221543F
-2CEE65CAC0BC2996F73B71783E5BB43B030C90A5FB13CD66BC659A3AC2E897C4
-500CA657F16F70759F0DA8D712F4E94BAFD3DBA866DFA8D7310A44F240522200
-C8F14C7CBF9BBC33276B623C746F7D0A4D76AB13E39DA19E1308EED0A388A23F
-D9336D3532151A416C720052128793385DF6B68D3BDDAADF8F7FFB53260B81DB
-321B33EB566593E390158B80DC631545A66C3CC2BDDB61446A6298D884389303
-E2E55D64F430F35271060417EA4350B783041A7607D44DA3452D304797C03864
-DE4CA134F33471E959A74DE4A8403BD5A1A381BE22221ADF76F0B71F29C7DE1C
-9FD94E0F158182F6DE7689A96C555D2D9F1FF664111F56B147B650BCA6FA1FAD
-9ECA4488EA201C8BB72F63BDDFBE7239F13C46C492F320B4F06F34A668F657C5
-CDD4FC447C67E1BAC54C99666DAA9E96ABC836BDF0980239245D48227C14E811
-FEA8C345C2BEE84300C746016F98893E12D296C64C2119208E4C203A8EABDFB6
-699EC1F750DB57FCBC535E0929123F36A0113E6CDAC09149CE5865B9B1DAB041
-A74C6EB8EF0E8FDD6DED8C67B849324EAB11FA732BA2EF27E11190027F657912
-31A49FDF69D97032A07C66B79FE3F39594FD7DD3BB4570A90747E908D0121A05
-27D12831D23C466F31E31C5B3CC636880DEB158BB4A2AC34114299987E9F8F53
-B0A28EEFC3A259F49CBAD20BD7BB4ACB07726033CB8ADF88E7FE0A0DBFDB10B6
-21669AE4942A298072C72522D34E16987ABB7FF0236EF31B00EF6094024AED38
-CF83EA391CA265E5C6B8B63CE728CBF008756D4F1CF35E0E39B7B17A0608FC37
-78CB7864BA7EE90401AC2CDBFE9AAE8E3F726B41DA0BBFD7E503BC01ECDDE23D
-15A1954FCAE479BC85DF88D0044F2403A75F26276D16F8F125BBA3D166DAE700
-8F0C3A51CDB950B603FC44DCEE18028B36282DA5D7C4CC9C79EF2C879A86A1AF
-467CAA95AF247AC7EC18B7282E5A9863473871C679368C9438FE626962BA0D02
-AB329F7F03BA30FBC62A855DCEC3C4099A003F8D6F6FC94D5B7FF9DA05331BE9
-21B06F9CD00C1E2C5F694307ED8D81D474E70BDED837C8973AF6405115C85E57
-7D64640D85C0FA0FED12BDC55DCA2285DF9DA4F9E48361C00AF5F61C57E4E1C9
-60FC8DEA6C2EFF9654CD220D626CBE75E183368BB8B093FC64BF13B90F935756
-F87FC508F719472F96A7E9732C2B8100354A59C88BD82BD12E485EA7680EC9A7
-FFE0A6636C8D0A423D0432561649BA335E8BACBC5126BB4F796EFCE6DF8B00F7
-01DB1C7FB57D15AFC69470774A735CFD876711AE3AF1EF970A1FE154927A0A00
-A68D4CA6899CE12A1A26CF5393446B436F40D5A47238C053F3248C5929C2B5FA
-EA441400AD4B928537A636AB45FEE4F298DCEA28FD29641C41E51926C2FA4F12
-BB1187C4F050FCD171A9EF0954EEADFD2807956D09CD6EE2A4F4B88B54F3BF6E
-653A02FCC95A3BDCE0A0FD9F3F6E74222A52E2D424857E9A4973104842E1C308
-215467C9F5F9943126BA74589C900B74CD8FCBE53DD73FC9063A5B4BFB708DD5
-B8E30211679F57FBC99D651918A04071C6163EC8205AA0BF84BAF8CE8B05193E
-DC677B30A87722E97F961F3F7024FDD5E0A54A30855E8B7A27715DD055F396F4
-E3DA37B23D51C0430D159EAE4116ADEAE6CCC19669593DB3EAFA37E960D63B0D
-34E00C124CA2A621A4D13E2EECE188BD060714E0A5D38EDB57D0FE37E01A3166
-9DAE1B44103702832F003CDC90632C47720FB444223824A893172441238C11DA
-87D57D945EFE864C0FAF9DB4019041D5BCA4B7CABAEE9264F7D0664089252A10
-142B31D8ACEB1D9C8A46A1EAD878C189BC82179911717C4D6DE3A4DDDB117D94
-851A5F735F8F64F6343B92C0C697963DEDC4FECF1D6ABC5276D6156A40C4E53C
-93559EC3E3518A3CFAA0E4F1B296E9CDCCE30FF6D429A927F85980F3A424A719
-050EE1E6DDAA47E6705E996A65E1F805333B9728F4E9E7C8B3B3E29AA68D95C9
-124F5036334D202E1E4A520F47FAEA47FD2AA761E99029365E00447F13FAD190
-DEC04F8356327345FDEB37C79E467BFF87218A40217598D40965C5E06ED0F93D
-AA40CC9445A2649F9D6D8C90FAEA395733E71F8ADE555E2166892B3FCF84C749
-268430344C7E70ED90C9858A74428382BE6E04D39174C1A52FD6727CCEDF3FA4
-55083E08ACE62339128CB8687F00C8DEAD4B7C7F2176154C5A2D2A854B72E3FC
-9EA3320B701637A137EBC3C819CB06F372B543C0E929BFF3383DF0C4B093589A
-40417511C97C3CAB64C88C26743683534320F8CD312E9B48E5683E4E05FC1A22
-7CA3CF17F181D1B581FBAD827964CE1F911F6C48CD868A9F6F1250215C1BE545
-48F29F82CF164AC3376AC9CE8485D2DEE18D515F12726E501AB86E2A904AC445
-5B3859CE24028493A520F8118834427341C7167FDC4731449E9080400929C0E0
-97328ACBC1CAED6C5042AC37E84F5A122DBBF261049BE6D7AB0E688CFA9E457D
-DCB4004DE6E5EF19D57409062F918C6FB0F09B434F30C8E609A11071BCB2B5DA
-A22F9AEA81C48989A244E8BE97BA8CF9A09E9611D47A9F77948B3FF43CE6F378
-71BB181A69867B6E6E01725992C9DD2FA6EE02107375D0C5876FCE49A3E1F3B1
-6A15DFF1BF3DB92ED9162BD4A36AEB4F3FF40E7E71B2B81FC4E372C941243F90
-C959651A8F98C0441B854097EFA8D66FC76FFD29CE9E786AFA3AF08B5C83660D
-7FE132D95866BEEE0E475F04367343112880F80DF8532D14D8EE4991858B0CFC
-2974C53D70C60BA9C6707307699397C30EE5044208F391809C2B7884D74C77EE
-52A34E2D9EBED8C9AD77F8EAF56676AF405E9A162D5970AD68959AA0C01AFDB2
-AF2E7641A58B894E5EE279E723C7BEC3ABD82D5C1BA27F68394652E942E47061
-C2C8B460209A3D141F23E97AEB68872AA946B5D8C65FBB792A8F9A456B755A95
-18434B1A9CD425243A2056307B26386E64BDA30500018C74B38D9CC6BFC7D87E
-52BAEF36B97B8C41FA46F38B4D37813EE37584E5B36FE9DDBECC8C6BF6646194
-59BF4AB637100456713A84BD505FBE9833956C028AD7C521E8C5BDA9E7088760
-1DEB596FFB35100C01D7EB2660A048F2F6AF924CA0A7C1FEE2987A590D9D5C11
-B0F7B5DECD35F54B4CCFCC7BF8370B7A3184A91ED8B963CF9D180CBC7BD83339
-66866C3B335DFDAB771A7C476650F6AA7925E12B2223EA09E7D2BF80E584298E
-3B114466520D713D3D14D73CCE9BF05DB6870D48564C12CAED2A003BCD295E3B
-0872B5FF1896822188C70CD5D25A039C49D49453AD7D379EA749A3FD3B119D1C
-68E98559EEACF0E6BE1DA9D4BEA3A827BCD4BC75AE6013EF1402F744624FFC00
-C17DD16B4E1C44B8B0FA8791FBAA3C3B6E60561523BBF45357BE6A550302D720
-11DDC010C02178E35528C3D6A40078C6ED2E0AE8F1E9C14D9769C3BE991FBC2C
-3F615E83420B9CF206A6B3C9DC5415BDE571BC3B9444BFD5269092D0EC2791C1
-2FCFDE8CACBC5729582143F36DA9CE6D36C5C66854FCE9C29F3189AEB11694B8
-08873FE32E8292FD57B9CE6E4F6B1DC76FEA98EFEBFCED91001B7FC2A78211B1
-F30DD80DF6F6973211A5D76E000D4F73DD012C62E760732C8D2A94FE6404165A
-513EAAE7958D8E80D47F8E4CCAA1C8822944ED82CDDF945E3C990F075CD530D2
-45E0143743A9310C6E493C5E8D4C6D2672C1834AAF7D570C53347AAB358B217A
-65C336328D667D6CEA6BB97EE648EDD4AB856BF8736E036B559A2BB0D476CF60
-F559841C95C1D8DC962F85E63B2C19D55B106D93B896D87D10B1AA94E36433F7
-17EFB0655E5119BA27D08E75DB75DC2895E922EA7463EE9D5FD7E2DA9B0D10D1
-9F31FF30539C079965DA102B2B61E026BF4F425AF25203F62C6606C904C35A3A
-F766B098EED1991E893128512DF0F35E2C0C196601889B6380CAC542BDAFEC17
-11C265A9C773BD7AFF7483FFACDCEA528E66DEB207D5AD57DB3D2CB955A14B1C
-75190E70CE5B650B021757BC64C5D45FA12239041ED5374147540F7E1E06ACCA
-B06DE83B2FF3CAEA93CBC27D37AFDC748881BEDC30BE2118F542ABC14C6F58F0
-A9D6E9FE325657A14462B4D67BF2EB05E5458B120821A75EA86D102DDB92E9CC
-9DF84F5905A7A3A011C8A7A62F556BB2712AE28CE5AA49295717B08727FC6BA8
-E06C6ABAD51FA0AD08E1821C547C599B4134D6DA36E10A6679425C2E6C56BB5C
-CD56CF0CF5069400F9396411AE4F4BF55988646FDFF2290935252C290153044C
-E30C6FFE0A623A697A5EA25C34FBEE0A9D429B88D1512C21E55CFC5715F76027
-1F863D57EA37AD55F910E131A7A7F7C52F4CCAE4434F300461F77305EAEDE26E
-A782B9FE2D4DADF5044F4B912B09B0AF19EDD486C433D682914650AA408C965F
-2CE16EA10005C4F63E23C5E26939C04FBE91C6C021989AB11BC1E9BAEC5ED9A2
-43F8A29BEC53480EE5841392FC2A89CB596589BE8F2F63A56B17B053C2189EDB
-1372F17B54C2CED7D1701AB04395AF3B36DA19D6B2316ADC443E068CEF52477B
-369B931C69579CCF750BB165D6BEF4205CAA35014EA9A678E4891AC0B9B28110
-D9436F71FFD26EB44053A0DC8A846CC31F1B42096CFD3CD3EF42628517FCAFF7
-FC7B26526B9CADEB536A0B583988637177F5A38370643DC4902AD7C65389676B
-2AC2E025A6BDFE6728151DD4C639847C47F00281B382CFBB9FD0833315A7B381
-03327EE5C2E7B4E107EF3685481B63676B0081BE25A5366BD5BC5E06CAC15A60
-25A2EBBB8C9FF37B73E75253EE0CECDDB404779EA69D2332EBFEE235808DE06D
-66BFE466BC0306A120701FE469606DC96BBB1549AD053D06840D530DC1928FB0
-2D8AFA1129EB725B62982248437715E44ED3C0BE04951EC65ACF23F433AF7067
-60FF11CC949E4B5E1F5C8143B8DACEBB520A490AE110F2E0148D10F2B7B9D7D8
-9B445CDCE2A80240DD31A57FBCBB1C99652E4CEEEFC56ED9A4A02A87BAF808D2
-F2F3413A885F57548170B80E001BA0BDC645F3D55BF251EAEB93141359C10BBF
-69FA01583A539E5A76D55EF88B9249487EEED62396103F854F573F91C04FC363
-B3AF64C1244BB7563E4E4837AADFB652BF189D3AC0A8454FA57CE6FF252EAED5
-E3EE3714BB613DD8BDC6128C13A0E8E0CCF2AEEF10063E32FAB2E54918FBEF3E
-1986208B7986F4084768DE289A4AF319C863FD5CF564A72EB7F437DB8DA6DA80
-D33DA28F7987F9C86547904B0F49F351D18F705C4A178B468ED43E179C43C276
-26E5054AA42CC7B5B00FC14C61C25B11A9D5A5DB3B1806F60248CBAEC06C068C
-ECC0AA85F07856F5F73C0AD13308E6FF55C6C7649B96FD3E4B291B9188ABF764
-34610CE0A73EFC9E52357A2BECB4E6ABCC3C5EF8B1350CE3B1907A104690C865
-4D6FB2A1293B00533867EECBF8B1831B753DDE5C683153533A89FC6E3FC0700B
-61CB7C10C37800B8DF5A40732F17322F4464E7057166C966F1BFDA555129648F
-CFD85AD185410961C086CD5B6FA08619FC943100369C186BA5F3E5D2D4B00CF7
-CE3D23D6166F5F2AA31B0B4CFE98CF190841F69AEFF503E7E49838E4BEB81E0E
-9DC3104632B0FB4A6A04D87D02E9C15AA4F046D39B670F5E37827EF6DA926CA2
-3686FC4E27F14D5755B9312D947096C5EB2F1277DB6E843A168261C4E36F36ED
-98B4825791F6335BB8397DB9B5A3C0561621CA93B143AC978B6549AAC5AA047D
-63F39B84E353120DB184F52CAA1E2CCE76F15AFC6CB7F3C507B2944B354E182B
-225E43C25A92C6396C9CDBDDC93E8F5FA2ECB9B9399CA05CA7CCBEC2A9CE968A
-D089CD94001FBD5F8B1E4060B6B55A7DCCF5B1972E3B532C98C555B000CD28AD
-D93033AAA45346EAD38E49B3CD0F272B5CC2609A26677761131815F64753C5A9
-CC335864E866D94ACFB45EFB67692F31C126B256B4112ABCE4C6EC415AE492AF
-B68C14AF756ACA050F179E2DC1144A744C12121F92E3985962791540BD21B304
-864BEE24C5DF20BE89A70E0D4B797338364993D66A1FE2232ADB3D1374111A63
-DCA4B98912B7E3A6E35A457185418835A5B9675C53752B8D5F53E9C01E0F6E77
-51A6350D29C04E22BA5897CCCB579DD5F90FC8482307030DBB6E8561BADFD1F1
-5FC063DEFE5178BCC1A5F4DE534704AE0E43BD1535A12CCDB14AA1D0C74B641D
-658DAACF0059A434EE6282078C1E80F85A34C3228F5F7FF83F89603613B84478
-EE02C184414F84FE7970785ECC2EDDCAAD88FF94E70D3DA9D4747F95080A3C1A
-2EEDFAF5D4ADE27B99436F2E22E18EC8D061E3DD90EC70948BD50D1EE2C8C4E3
-A0D988D36146419C05EDBA0DA61FC95218CFEED1FCBCC91F419FAE7B43D4077B
-44C025532B9AEF5C2D00F08FD4B0CC118222EA16039E16B2B21674F66AB6CD6F
-6E1F1F54DACC75DD1734EF3318D1364F840E10B44842EA2D710D2A36F3528458
-2C68D67B737B90617D3598125CC89EEC39851131EDD077DDFA9CFCD9DD7FBBF9
-DB8470B9E0DCAB56428F1508E3BDE08CB9F91630BE44D6729AB44D3F9CC25BD0
-5358EA6386EF07D8FAA843A187A9FDE319AE69E85801E6901D6CA87D8CFB171B
-FB248FF2EEF1C6AC56D9A36D648348385ADB4B8A7D614794D8F422972A9D4C80
-3F8E33F1B2FC23C480B27E3388B19FE3544AC9461525199447BE809A04714F7C
-F3E80752A16AFEB451720ED3F5DBDAAB5E4B118ACCA148ACB99AE24DC09523E0
-BFA40A88965E69C047E7F00C8A01A0588EB3B47E99293C9284599DBDD099D52A
-A0C2033D88BAE5984261681C024174906F98B99466F38D0DC29337F69B14D3F3
-50843FCBEEFD2BDB556068FD7FC654F087886E1CB17FA2279C3986A3966611C7
-DE7EC1CB51937AF2501369166E96A4DD0B124BEC75588C348B22DADE47B6BAD7
-D1F7C5AC2122B02CFD2218D962C305B2953F7B6D36E4316450A8DCE29866EDB8
-5D3B93CF031A439C48BC55A217BD7A6617E09F5677DC5986AECE3EF80FD633BF
-56D49E21D1E672027461FAD4858BAEAF550D408E71FB357886DCA559931B5149
-8CFFA9C48713600FF392D880B1002C70EA2085E64E217453F873BCC05E5F7CEE
-E5DE1C0ACC95275D4DD32E55147E507150FB2607DDB5E6D3A54F89B3CFB40232
-0D6F40457D714A60AF7DE113F9A0A2DD661FB351B58DF3B626754DCF3D51701F
-BF8B731A4A8F3A143F6782C5F0ACEF6F0774A7C07BC4554C28F2F2D080EC9183
-CD210B3E29032E28F01FA1C16832671DD1699DF342EF00452C34B2779BEC9124
-3C64C978950398237F1AA8D66A3A39A0D7088B271C054A9143D65ACDC3E1F0C7
-7E9F868F07083F55A6386337793D9E8EF88E6CB1FE850F0116B2E1088E1DF2C7
-4AC396C84CF0F35E635140E7A6A19E5E39902A2B52499071247BC39266519B64
-52F027A9EF68DA6F805C47C5B6ECC0A9ED5DB79CB1901AF8CAD2F7B9CE609BD9
-3EC6057888FA4D0AAC5B0DEF146124789E8B6903BB4EF9C05A4EF964EDEB91C1
-4CC2614FCB772D3C72B6DC4D056F185FF3C9F7C96018FBFBD40A636C33810DB4
-47FC8CBDC9962A72404AF156B17D69CBAD1F07B4E75CF402F68097E7588D78BD
-3C9DD1122ED7916C4C56D908F84B2218450E35209DE1A30E71B416898AFB1F3F
-25242B70EE33FCDBD00C2A103A3590AE3B63C5900696365B0F018B80618D0F72
-EB994FD8DCFDDA7EA3CACCF393872EFF39BAEEC6BEDEA67D03AE98F2249E84F3
-6ED37EE5E993EB96F282D0270C794F2FE622434EE5C99C8677B572D1FCE4EC13
-A1B171193307A7C8A81DED947154D90E58E2BF5281C56892201F6C8D287DDCC0
-11AB85EC27554BE0040FD227E027F74847B16D6BA060F75208D12CCE7FA44044
-A08917508036BEAF1D9B9D940C1CDB2298793700F940333A98BCD90147DCF127
-C6B99F4BF49EE656CADA2F4C7EA905A755879E7F692F4F39ADF6EAB7AEABC171
-2A72D147F1CDC0C864B12EE0816399FA7D125CAF57AF89A440D25333D568845F
-B4D6B8EBC58A521073BFBB6D9F860980767343CADF8414D5EC167D9C7BC40B5C
-97FBDD69B3DAC25E87C4D167F376472AD826A4EA0511278C8D9DD9E47F687108
-7C53C4721AEA016627E47487C871A6A6B1FA52CA703169AD6C785415CF63E06F
-CCC95C2FC29097A3F114B5BFE53D0D0D15AAAE7A81211510A28B8DDD2E9D3F5F
-9585367A2FE0E43F1CAAC3BF4D89BF38CD362B57667F97E202289EE40ACD4E76
-247E1C2BB25F65F2BF20745FE3A19CD048228ACC97CB8F66EEDE564758535AF8
-3DECCA4F5251099F649C7F296C068A69EC6EC2ABB93876CF4DB6C9D1B924570A
-5124C65A88FEC62E1DAA87BF2F22F179033EFE247A114ED8753A12F642B32D96
-7EF019414141E494C1A98B7396EDF2427C235EBE37B47A8CB2D6A9F1947A52EB
-D437C9354185B43A4AC299C20AC267FA110508FA24DF66E2EF53A781B0000D06
-2B3589A4E8FC4277A956BC7EF8CAF57FE644C44198499F566DC3843EE31E17A1
-E63B14A615A3B89AD5F16B34EFE495493112F536ABA91750DDB8FD1F558BC74B
-199FF3A48D9BD0DE21B54E3387805AD1B9F105E511569AD44D1191207557AAE5
-CDD74D81C65FC06598248A72A91E9865E736FEB8526E1532620BFEFD7CDBA684
-70F0EAACDB044A1FC37BF155BC61500A207BA16200F7A7EF5C98F7C0BA0CE63D
-DAAF59F0FD04BE25E822AC796F52829BB0048393AADDD343D25734A256C6CA04
-F3F5F041264034247668EBF3C859103930B3B08C595BF890CA60C1E429233A39
-E996C06BE6EB32CD6A1560BB6378C435A1736AFDAE01C0A13F37B8E9C3334DC3
-C385AF8FE1AAE8ABB777EC8555DE3E74A433D47217F9D05CC291D9936CB04652
-9E3DC449849E4E8A012E8DF58F8DB4D3B042445DB2A5F3E98B2005746950F402
-A22085D5DDC5FEF15D8D38DDBC6E5F8261506E3C508EFF3B7C08C1EE8E4B1349
-A845343908E5B9F93CA25ECE6AF6F3AACF4BF3350C703C582842F59CEEE1025A
-406082C780B92205B359155B095CCE851DFE85D83D6842238E0E15DE2DA0BCC9
-F03921E124EE06E5A282DF6F82B2ADD92D0BA0ADB809BBEEAF5DDF399B26A608
-7E89D51E25EC5E70277FA6A96C4F786BA1BB8478A975989F4014887BC73F16E7
-335179472B4B623F160CE46ACFA8CC210652093E8361DE1735A2AD37D923A906
-838167A8060DC4B749F6B62381ADB5B8932502DC3FB47236FD7837172F22FFF1
-2C33897F244B9873F88A29F222299D7E08F79D07FEE3E4ED09F5F9DD29E9E7CE
-450FAC5DDFD241F896AF6680B45011D095CACD10C395966A9C6DA794EF0E81DE
-68298ED97FAFBE0ACE1430713BF604E55CBD770F5B120828AF486B25776581AF
-F6D733602666FEA868B6AE2818B77E7FD71F06A4EE3CB15D19DDF679DEAF17EF
-E0DF14CDDA21C09B4A6FB966CFF6F8B58C042A7F0BD75DBB6DB7EB81C1C134DE
-D84BCF8E507600DFA6D5AB32E9A27BF4DB8EDB419C4D94C6B934B1FD9462E7F9
-CFBAFEF8FCB7D86FFDED8A7470A0A4D8113FE70EA8DE74E19C5F5ADC4B01D4C1
-B27E1393D3449B1285D6F0F0A9041B936A41C3218941B33D3472F46DDA0DEC84
-A0339B5218CBE53DE3516774BA6DEA013C9FB3039BF4DA71BD5D6A5C5CA415C8
-
+D9D66F633B846AB284BCF8B0411B772DE5CE3DD325E55798292D7BD972BD75FA
+0E079529AF9C82DF72F64195C9C210DCE34528F540DA1FFD7BEBB9B40787BA93
+51BBFB7CFC5F9152D1E5BB0AD8D016C6CFA4EB41B3C51D091C2D5440E67CFD71
+7C56816B03B901BF4A25A07175380E50A213F877C44778B3C5AADBCC86D6E551
+E6AF364B0BFCAAD22D8D558C5C81A7D425A1629DD5182206742D1D082A12F078
+0FD4F5F6D3129FCFFF1F4A912B0A7DEC8D33A57B5AE0328EF9D57ADDAC543273
+C01924195A181D03F5054A93B71E5065F8D92FE23794D2DB9B8591E5F01442D8
+569672CF86B91C3F79C5DDC97C190EE0082814A5B5A2A5E77C790F087E729079
+24A5AC880DDED58334DD5E8DC6A0B2BD4F04B17334A74BF8FF5D88B7B678A04A
+2255C050CB39A389106B0C672A1912AFA86A49EFD02E61E6509E50EE35E67944
+8FC63D91C3D2794B49A0C2993832BC4CDC8F7BD7575AD61BCDF42E2E421AA93E
+3FF9E4FAD980256D8B377043A07FC75D6169338028692CCA8CD1FE92FD60AD26
+D57B7519B80A8F8DCE9CEE5CDF720AF268D3C14099498A843D76E3B6C0328F24
+D36EFE7F5C4E5B5C612786200C8DE3A41EE5F1FFAF4097653CFCDC8F4FD32E0B
+03EDB3E413283B9EFB0AC33B055617005BC9B0057FD68C52D1B0E67F0C571685
+767F2AA85ADE4E0104A1C777733D5E318A22A9944336E5B98D965E50D31F357A
+8B6EA5A0EA98E1B027CE68C2EDB149EDDD04ED74A1B3D206D471A0C11C11449B
+DE190BBFEBC08C9E1B7513B43DA3134D6B11A2516E6E86B67F68C970A320D05E
+94FEC57FB347606DF89989C33482BD09D011C55AA920319E7B26A205D3D0F004
+22466F09C0482A164CFB27EF6ED2B040ECCC3DCAF345B5A73676F193D43123B7
+72FD6CFC5E37930E61EBD5A6307E4DE70194E6384EC0D79DB6AD86D3B319A31C
+8B0589D0FE28241D8ACE280D0530EE99C80723E560BB72AE9D53F4713181F491
+344B06D3027BA4E9E94D4305BE1D817197C54C8FF56CD6964165F6448ECC8A8A
+64B48B4F0FD69299A137589E2491A283509B21A3A5772F75B7602A9F60AE559B
+07A58436D04222C73EAEA72DE9A5A441F88D27C11F4F91255EFE280E91A4ACAC
+1E98A4E5E6C57B9AE86FD218C3CD8F24A4104156A80F13821384E529783C52C8
+78B94AB3A0096090867ED32E8A30980E737922037F75F062BD83BF4F5929BC51
+CC22AEE2DBBAAA001CFFBFF41D258424FAD888FFF1BEAB796A44E3126159E120
+7E4025C676CF94888A1971AEF8B6764B3AF4A92D36FAF6FC56FD049710EE3782
+BC2CD84FE2473F133BE03C1346B875463F126DCAB15C7A9BCC9A727D23611462
+4E8D2BFD2466600285D79518712B8681ABCD69608E6AA9578F7BD771EC36E01A
+5A17BC17E375020ECA59B43790ABEB9DF5F4FBBEF807E5699EFEAC563E1ACC5D
+EFA336E75DE6D8248E9381BB110884FDC89C2F9A41EBBC9A8A1F98E6A41F68BE
+EE30E25CA148C1EFF42DFF8C214A6537AB11F260B8C329A4947B5FC8DC9C5622
+4DF7BF4FBFB00380D47BABB03BC30627AA74103E553F55278F538EDD8C1E64CE
+0F1398CA0AB5A86630139B4A7E8FC02804CAFF3830114640AE50D2FDA3B561B5
+C63AD7EE3347804CBB40FB1E77A6C89735DD870351C3A1811591AB493251B904
+314F65791963C0412377C1D02362C5E9655F1C3D4803CD379A8EF24C48218C2E
+DF1165840462BF37DDE1B8D5FF09FA2C3B261E2F1A65ECFBE5D4EAD43B52C029
+EEB3948CB8A252CBAF545C8FA1C31E920E23A12DD7222CEF2D2A513BD758EA13
+DA33BF5FBF1D734653EB83DA2D374A5B9A0CE316F24EE375D6DF6BDA49954C2E
+DB25A88821193636119D469BA66E5DAA9C92520FD4F84426A4E54273FA469084
+7517817A6EE3E21176D333825E88046F50B3CF6938AF9BA79A2F51398239EB91
+1A2D07F7FCD948427FF62F40FF95E39FE1A1AA8451411563FD5388472251C155
+69BDE9283B41900B21EB1190D06E6B13B7794FED020D2C1BDD205AE77B084BCE
+EF628249398B496DE85B406FC2E1939EF00DFC84C07E26CF72EC401BAAE756E5
+7F6673216E7560D1C2A723CB405EE5CA474A07F61B81F8836482F73DC9516D67
+CE0CB770EAD755B6B356198B4B97EBB29C63456953270CCC8D5650C1D006E69D
+38DE2DFEAB27DAD50A817F0D645D30AF5B75A7B53CBD3D2B8D87BD0A7E525AF3
+22F7ADDFCE31716914C2318260C2E2B4664893921B68C5A93334A361D94A759C
+0D7B146D6FD94F0442D672BDA0F6432E18F3C5DFA37ADA378D95B75F413C9ED1
+BB5C606A3EC7DFB3F796F59B0478C13FD1900381EFE0BB5242D5B5D34D03AF1D
+4BDC93EAF8020E26CA23C8B0E7DDEBBC6762A557067A4CE05A524188A8F02E2F
+3625DA38DFCF381727887F5646A3995A8A38A5FB1E5D5EBB395FDD0B7C8E71AD
+B48EEDB62AB2CE99D121435EFBBFCEEA69AE9ED8238B60CC7288DE33C766CDFE
+15B767B4AE2E6CE0965E77272AC9F86023DA620548CFAC85BC751C44218A29C9
+849F1C2DCBDFAD895B54E51A569952ED50F82DC8A19F367E7E44643854EFD6B3
+FCAEB04E55E4661C82D31E2932611748480EF61FB2FBFB0CFB940BEA81AFCD84
+4C6A6332D7A600170E38A8EAFCD4F93DC153C43175434C86BC747348FAC61B76
+1FEC9027C1A193E55C80F1F20B5317AA0A05AAA36AE235F6E49F06E570FEE798
+84857D7552EA92EF3EFAD52DE39C2F8F43C59E3A957B7B926FC95FC4B60186DF
+7F3523EE2AB74E294C8C4BCD8B4975E84849E0FBDA6C0B0F24A636DFA578B122
+CF97BC5089E21E9F5298D1C9F30CB8BAFF6A3A11BB4D9A0A5CF2B18D055C44CA
+4FD4D8FE1AF3630907DE7E585AA811F9CD11FB2C8FC791851D651009FA5DF20B
+3C33FD2FF848A9E3F5652BD294965A332DD3F246C91B0ADA34017FF2451D1394
+F9C3C95AAC6EC8062BE98E8914D51DA6A164AD13938693D446044859D03A949D
+F9AC5DF4A000CDA98BB516D762CB9F6D44B5268FD0C26E88BC4A760C0F75A140
+DEBDECA4F511128B7D2805872160C55236F0A0FA7637FF0D4E94AC079CD3C8A7
+D03A5A56F26B0438B577C46011A10532FEBCAD14FBD6032E224F45691A726886
+56F305231EB2FCDF59C8BBFCB5DBD2D093A0E84D62AC93A2312CA69295E937C4
+8DBA1802B85F54B5E7E6D6216A918F911FF705D3B5CF055F1D873B96283A0B53
+59344D910CD396D883F6F7836BA65FAB4393A773A8F6BC298069E5BA38210EED
+49C9D920F718E3FCE692527DC7CCE6963BF744F2C91BC5952564196D60574E86
+87A0FAB21F2DB2BD5A51D7FBD8FC19946D24E5A228462C4772F978E650ADCE3B
+8D66B9C21279C531CA1C3A8ECE3420BB65837287A7222CC3673A2A5F8BBFDB60
+C719CD073EF9A23675198462C7C87B24CC92D6AEE5C25AC63855CC3281494342
+D28F3D2FDE0C183486769A4FD5B0143193D31FCB2C2A14E487BBD96D0BADBB64
+D1B56021C363A795BF10E2DB448261C363A54A4AC1182B470C457AA82DF3F5D1
+F4B329806141EBD53CAE309319B94133D7EBDC2D0453A905ADD207364371E178
+0A95C2686E3B34C4A978BFC0EE968C39ABA00889BC5149162C2B54483D44FD3B
+5CFF41F611C7E03B94945F414560E874D7CF27FFD0630890D7D7EA66CBD15448
+229059E1C436BB33D69552B5367AB5D53591C4678D0C704DD3EA23F5D9E8A7AC
+17D003C19E333E726FFFA2961F33C70F429085F7BFE3E2510F59B78F58B19CB4
+01B48E184BAD9020FECCE3AF52048A056981DAEA02AE78197E65855DDB170616
+F54278395D9EA50DC83761AE759F9CDEF9E1948E7002414FC05286ED793E6662
+3347F2A9AF8917493D7305B92CF93E8E9185F70015F5594084298A6C2F9FD3C0
+689F262AC9FEDC9B89577ECDE92F08D3142209FBCE7B5C0A840CC767BCA56C20
+4E4E545E2BE4D21C53855CEE4CD0AB35D1A604C0FFFF77DBAE4289752276559F
+A05FEE65F45ECAF44E95E23FAB6052195C7948AF0B1126482D4E02D72BF8AB03
+DE0F1A632F7672AD9DDE70EDC82AA993678A82BEAD0BC2649C4707FD8509810D
+364B5C6FE0E10772E95288C622C2F06C634F4DF8C7FD1432BC9310D5F24FEE3F
+7AB324863D6DABAA1576E70643CA79EF4D7DF4105093D66CEE0F3B87D2164A7F
+26EA05F5C4645B22D3E1BFD2219657712C168FD90DE801FB0F32759E80DEC1E1
+43CEEB19FED12D757205043FC98FEC62D6A8D8B97BC083B4A0E985AF7850D6FD
+8716B9957C1C35A0675BC53DF672C425C79F43FDABAEE7D63F092CF271C9A9D7
+C41F40C4189510987887942E60A412B3EEC84C9A6E1AC7D54D528F5604B72C08
+94B7882621A5BF1F325B92FF96B80878CC550D1AE4D8196E41CB1251856609A5
+C4D3BD05A922D0D45E039D9450DEF8490A3E924E41434194910BF60BA1B08BE1
+B41824345627745541A4F1703E956328F6227D11C74946B38CFB096139979E56
+4E723B889B44C6D78673868C89912F8B4F0B4B485F1587A637B630F92E6072D5
+7F3B44EA6FD96BBD4FC28A6C1D90805E3BE3E42A7BC9C880762966C55BC04E01
+204D083AE976FAE6F37C94F27E68F8C0F28D52B17F6C0FD7C9150701FD78F8CE
+B8E8DC9260E3974005EB5CA728171F482D765016C94D4ADFE4A42EF42212BC56
+7E4EEEE8B0D2A7856CD4E44F55C0BAB762F92CB8D64C17022D4BF3A47C12F5E6
+279FC23101FEE93753653CE8CEDC3B75C9CCB29BF1D4554C6120DE8EE750FCBB
+E38B5D915206974962E320362E59B3F21B3AB1875703191043D03284D4467346
+CFF2F98CEB4845B73ED8E003E0DC94251B73E13A9B51A3F1430BCF6A21EB9B7A
+65E17FA411F53BE6432F1506232B8159E008FA257F884A4A01AC53BE91754D78
+BF14A5B0FBFB9C31BF4908355F8A762052968DF526D118708CCB0B7CB5BEE285
+6DAB6CD2E3934178E60BECB11AAB5478623CF6C50C92F8BB5D1A583609028FA7
+B8A53B791BDC9EF76A124F3F7641857E4BEA0837CB36176EC9A522EA7F41B8D3
+63C37D1145367BD300F17B54522A834BBB74DE12BF9EB26ACE6F24A046D58F89
+4D4B7DF74875F1A0C1C9D97BE0849593D7B398EB4B00BEBC8C8D1497B6EF831A
+A35380FFB7F1AFA4D888AA52C9482E8B1755CC209905F98F40D95B44D4DCBCB6
+67423D1BC2F3560FF0A8B4F0CAC352A4EE2C1D946E45AAEC8A6AD40303F3382C
+DF0756BFA3B1ED64C169E56ED1C760F2FF0E24DC5C9F41306EF8D2628153D30A
+5DCB0791126BEFD4947D7EF08301FE015F2B0008DFFCBF9F2D4D859FD43EC7D9
+C5BE237E9BF6665B7B1BEBB362F0C0C3A8D86010B9C97FA741C97C2E0513386C
+9C26C235B14DD2A58BFDAC7B5F63DB4DA6D5D37D0098175A9071590E1DF66A3D
+B8173A047C29D7D35557F06132CC920B5460B8AFC11D23D09A4E45D089F5EB51
+963FA1A6256E359D485107FD143B2BF21FDE9DA5744BC2615E86C31C89470CF0
+D06C6397D9FCCB316EA9989430240759D2C4945D941F159FC02327F34B042BAB
+B5C3A47C78E8C1A6FBCD396B1A51CC4B020B8AD401841EDABACECDB482D6EC5B
+72D2BFEB4556720FADD49D07307C8B22ACB7E310CA4151A85C71EEF70E8D15DE
+B3B00F26E0E166C14647A65ADA228A3D1C89025BE059306565DB1B1EFC37D358
+8C1EB024254AFD049BA977BD4C2C605050E17940A89D0D4C5D963E792320F5DB
+3706682E03D25D9E02487247819551465092CC22B6B56E93F3AB528038FEC3F0
+668F866707A19B0463BE706EC729D2EE1653AAC7E29BD25BFB3241D4792F5152
+ED415B4E7FA92C2EE5A22E27E8B75542C492E56D811C192E95542A6FE0BFE5A5
+69273C2ABED4300D491B92D2AECDD278404CB84B1BB1BD7AFEC858215837D118
+C0E928BE7E07CFEEB51A6D21375B772B8248C994564014015232A0DA4BEA1754
+3274F407FED0837A236371F1A32056240F2015B1E7F4B2CA72C6B58610A66F13
+407CFFBA5E0A2893C1F572D50F51286E9133B5A84239C9493B0574E77D281D01
+11D00683354A000C9700EAFBC1FD104EA19DFCB87470190E7E2CE26E3A6FD0FF
+2620B87B82AC8686B6206B530F17E9348BC7D04B948348802CE53A312443DB87
+4DBBA5313A6A2A8DAB8A1CC9A594FF8C299281C0A261C8CB2226B732FBEEDE40
+2C6ACC74A1A61379E2E1CD5548CD908268A32FA83D8504C442EA0E183ADBF7FF
+9FD09C037AB03516ECCA93FF048235BD11A25DB07F164512A079C5392AC7F889
+CE96AE5C8D9580BCAFCC087C35E76EED1A671E87C12E3045E15A687134736DF8
+DA984772AFD189D68571A2ED7256F1E204230E41D3D9DD876F938951714A3973
+0CA9310489F8E807C1C7A4E51AEA5BC030610A5D7263FF7E0F9FDE3E5E37A362
+5B919000BD94D978583B942EB79CF2BEAC33FEBC9A67272EB10865BA8FB75FD7
+9D280AB59F91B96C16C982DE848D76D8FA8620DFD7C80B7DEAE7264350D6FB3A
+EF04794DA3305844A7CF718F6D1A4A3AFF6826173A076A1372ABFC54ED3AC6C2
+09C9287FC830556CA694E21CA5342ECA7B10C90AFC4783D841D7B1E34FA3DB7A
+2B706F3E21B0FBAB23E7257962FC3BC309CEA2C7239A9D6B44CC96825115ABD2
+AF9A2566D2F3382C01569FBDB94C8D664A5DA0F7DC3DD140CA77C743D7BC1420
+324ECF9E4780280EB119885E96A6C619CE3C0C8E1E264E2DEB137E5DC8149786
+486D65667ECF47B1A1E20E9E6E4FC8323E0BC8E61BDD3BCDFC6575C69C03E31A
+EFFC290472CBBD049DE3F840AEE37A2486034240F80E75D8A79E0762377DF660
+52B12EAA16D678990B11A9BFBC03C1D4FCDA9FD4FFBB3E88352438102F10B7C5
+9F04C013B6575B5E948FAB58EA691984A0E54E6B9F3F505FFFEF74D06FA1CDF3
+4B8A95904C8A2763AA8AF5B71D00F5DE09DC1CDF87A08B6D181453063E14C12D
+B7BB3775A6E2A901636273D9EEB833EA8CF20FD83AE899E28DADE10EEEC20BD7
+BD93085A4B1AC80AC1AE8280C14767F1A487BD066007A0D050317BD081131A14
+6EA0898ED59E46DA7B6254BDCCBC660686E2EDA0E77A705A653733BB5C5497D0
+B130359F866CF293FB6EF0C2AC5BAA2DB0DED045E2DED3A2612D078333260359
+16CF0CCB272D34767EA069E0F0B0D42327A18529D72E890EDA6195C2688438ED
+E9ACDBEED41E81CA8EB5E43C2B09CE266EFCA03F2D7FF57F12B06F9E54FCC6A6
+546676F6FFC5B8B7D3F0982B6FF0D21D949309F0C0B175CC1D0976F8C55C6AED
+6E821C39041E22D91AB30922F2B2EC2746BC7DAB484991542FBC82D87B487507
+559AB466F73EE23C2D3194DC5CE4C9AE66D3164613AC5CBB3DB501B64DA7C91B
+C7ED2EE9027FC0906820B35D4F2CF66C4F9CE4A884B7C07155BCA884ECA5EB3A
+ABB83F84DB1F5639599DC7D3F51241AB5D95C3BCB7AB1EC90B4BC989F74FB354
+04B2D7366A34D335A47B8C00C05CB423482BF6C7970A95545424A08AFF9A035B
+7F83F52B65A9799CE76E303B85664B624C65E9CA58184C7BE2BB9D9C86A4DE5A
+8165EE3DA2E652B5022EE7893896BABD88931DE1D538F615787645DF5ACBBA0B
+A8E5B899A37321AA7D4B283AC9234978C2DD81813A1EE5DB6EC170DAC1B6EF02
+94892635B498765C07A38D2E9DB0B7581B11056C28278F89B0E60998379C07EB
+C0EAEDC32AA69B8B836F92A61AFD35688315B2C3F860632FC13E4BDFB63214BC
+41CC6859EAB3AC3034449213CAB99FA1D216563419CD6D6CE4E1B56F33E6C654
+7AA9DCB5B05FC068DF02AC32408C8010AD004F6CCA9887830927F8CBCD49CDB5
+18CAC1EAFF815FF2F6F527F936948201565003022C6C7390B4E3C2B219FB4F76
+9F12BD25CA7B3B61D1A2F8DFEE795D04D5428B42FB66E0C254AF7B7A10CEF7FD
+E5ADA5E217BE24851180E9A1700FBA66C7D2B0D7BFDE4F4EED1D24B821A40947
+5620363657F6D048E651A689822CF815E72FC8AE9D835BE31D1DD8B54C9A717F
+4DC319B4B59AE073936EA40B070524C7E71D5A7B64436DA107749746B516E29F
+E3BBCB8F8C473E706670E11E5B221716F315FF097CD1841D0069FA69EA1898FF
+9F9EC2518C77806A19730C97F54BEAD604548D553D4A6EDB247853225E24E7E9
+89D71F6BC94DB986467E755CCC99069B313F5745B02B4BB608A39F0A0A732B87
+7EA2DED68219754BF1FBCA350327572D769C962EF9242132D93A5C8E9725D8D3
+AAAEC15ED0F362471AA58488620156F3474FA59CA080EA96FE995D2B3DEEADF3
+3141D157481C66507725ACA5953CBBE1ACEE7E3F02C72C6552D15EB3D612730E
+61A06A43575568DC3CF3844BABF04CA767E299575EF2ECAAC7649193843D694E
+6CA59318C01132C361A3E43BE637B70B9966664E12EF4707F6B100BC37778D1C
+F1806B1DE081D2C9B995BF1EE3842EFFBB8416161FE31633A6EDA118E563BDC1
+C42F403BE8A009FC756406669E34C6A08668808E0C31A589D0720BE32F3181F9
+8039645643E15D25917F38DFFD8BD08A420854DE15AF291ED675A634C151193D
+29AA6E04E84A598350AF17E71973854842AFEC3EB1B58E4D4433309BF5ED9D86
+32C4BD136C89169D45718A88BABE25072D8E552AA4CA3F840ECB11519B06EB44
+13026DD6800CBAA90F3BF0022E66A54BE1059BD5D224B674AD3199379D82D571
+ABF7BDD1BFA45A0F0E9ACA0A400BC5FE22DF4A041BCCB93DC23D547CDF0A49CC
+6C7DAFF30FE0843CB3324AAA3B92F543A985027FD2715F4182BAB1640F391992
+E4DB6C19A96D1D48EE4A4DD94D6443467C61CDFEC9B11E07DBD7F7BC33B34BF3
+EB97A7C3D0C4E322ADAF9CB6320A64DF78223011738501A124CAAF7D717983FD
+8BABC1AE4CB0FD382E26BE0A83169B6C371950D7E9A94FD82BD20A3E2112F447
+F1E4203D9978E6D9B8DF24E670E2D4BD160D5CABF3C460F00B5229B48CAD82CA
+9ECAB97B709C0C4FED12CD9B497B4D5E505A22F12589E28B0C3017683A6EEE2F
+2928DDF7763CD8F58B531F526EE267EFEDF72DCFC8E547F329A7C6BAE64C2800
+AE848C69574115EB02F9CBA61ABF99AE6DEB18BA4DD295682F10B960D8F0DA3B
+B4D6190603E95B7F8102DE04DBED3AF90DC3CF440F60CF50A8AA982FB965DD80
+E0B8F62F1589924262E1B3292F82EAC5A888AB240D40F889F9CE2CBD7F2F2E8C
+A1E4479DF6E27D00D4347DFBB8B977D8B1ED261C3CE14538C0AF23BF0B4825F0
+39B2F2AC125BD84B6B9626300A2C001119893830B3542A09B6986620B6E9200B
+BBC5CA508A4D0A31B72EAF25651A806F88A2943849C5CC2CEC3C79ABA958B020
+6B8ECADB5438E230ACF8939688C11F16242C5D58A55AFBAC2971E09C0F7A2D20
+2B26FE7FDEF8203A73EB4E47F9953B6EC5ED9985C6D84CAFB3DAE3C39B1EE33E
+8D54A862ABA4FD8C0E9787B5B71E960FBB9C3003F8034CDB16A0D8D0709D18F0
+22679AA4339CF26E41992B5B5B33D59D937892983C5B1151AD6EB37B065E8E99
+6E9BB66724E0CF4044C77E79B6D697D9F368A76B76C93ED4BE9C4E0B61B26919
+976BCD5FA3F527BB093BBB0BB979131EF153F77845B4EB6B7378A17DD297E656
+0BAA38BDB532CB389E2C60778B658220CEBF7F77DD6677D8248975B86D52ED2F
+1DD38A57ABE4ECCF554EFE937070D7F73B8B51F59449236E33FB1C6BE506F7CA
+DABDB3E38B70398F5FD377E00C7DBDBCCA9D82180EEA815E0E2231789FF7FB88
+67F04D4049A6FC4CD8F12202CE784F633E3161FA9E4CD2F3401BBEA11B43D1E4
+A99FEE87D0E97CF4FA509B30F1E0672AD64EBB14C9F19F9E6DD333B78E91E4D7
+058517DCD523FE710FF61D766E9B334BDD7EA54C5BDCF6D612B27BF30449DB57
+9D45152EE0223988AB6689FF07658436359C2461BEA57F9CC512BDC51EF25493
+2C25DBC52DCBC0278D296FB8094DF33E7E3631228639796FAB8E7F3C78D26C89
+F15B4D251835074FF6EFB9261E2702167F46BBD87AF1CCE46D69A9E54B3F19D4
+CDBF4689E4A980A46CB0F8259DAD1CE5C25567321F929B7F501E86FEBFF155EB
+CFBCE24CB837F1299635927640256B311272C6EF36DDC649D05DBA7F9F4536A0
+B3B9513B8FBC8E3A547542F1DD0C6306693FE71BAD597591FF53046DC982506C
+D0A8EF82F11B01A588399B10AF852A61A96D0D8B416DD36D776B23192FBD8B67
+230D93BE0C1238D5FD5E8A762BD8197B11E1B0AAD547A5C203EFF7027AF9017A
+D70DEF3A45D5C32BF964200A3D9BDF03B1CDE2A50601E5F8D083AF733C5D9B28
+39579CC1D94AD59B64555DEA0DA13E2E771517EB7DB91660365FBD319FB79828
+FF9FE5E425F710BC2A5250765A9D4B494028762ADA4FCC849CEB3A4F4CBC3FC7
+9298A3450323174ED9835CCDDAAFFBBD380E889A002CB98D1E46747F6EC97E4F
+CEF493E6729F14AE0F28AAF68F401CDFC05A1D52C92E90E6D61163B99DC7E2FE
+663D254BC29F0923C210385FD72FDE4ACEED53562ADC89CF698C61B81F426408
+6A4F7E6211243D2894A2490C78DDF108FEF22D595919F8176C9151F9C4EC7FB1
+CCFFE2DAED0451C01DCC92B8DA7C897314C6464CB96FE5E9AE8D09FF5356642D
+5BEFFB636CDA259DF1056A41B007AF086F3299DDCB4BFE497658EABF868FE2C8
+17F3F289BB8EE99476366FD4B5FCA6FF6D2B9DDE027C36C3DEA8D9FB8E1E315C
+F7AAAF23098FABCBA9ECA1B3B62D97C718E9CC920D6060DB63D12C54F40A8AF9
+8414ADA57B34319E1B9DCFE37E37DD2419A93FF824AA210581867974EE20376D
+20927C4E0EF852EE9EEAA6C3C33ADEBB54B04F8130C9FFE841BAB8CCFB29DCCC
+AEDB97A11253347D0A93054103092489A7A0FD2DA57144A996C857A51A8D59DE
+97736B5DD55E7D1F3DD15B563C9EB1ECD180E405EBF83F2CE8D8E3BB3CFAD4FC
+3B56C5E371D1F24F8B87871AA4DC5D36402F73E935548AC7CE28D7AF7D503969
+364DB58C5D8C449D9A1CCE52D60FD42EDDAB0E92E04D4085570FC95378DB0E9D
+29177299929C8B877397FCBDA368848AE438EB03B2380B4892FCEC5A6398F275
+C8B9430614CADF97BA564CB4FDA21CCC0BC080D9148D461190E7A68007BAE7AC
+863F39346F91568267DBB3B5AAD9AF3354222301F3ED3E144067310C29E86A68
+680D1F9DABD82E2D6FAD321A778F6A7F4B4848EE947AD1BF122365095AF25FEA
+3B3574B9CCEA66FF03751A4D75176773043BDA6569691729EA8B552FEB498FBF
+CFE32B8B3C37F71B0695A4B1578DD1B8E0D0CBFB6A2CF5BF3D35B63BFA956368
+39F112348E15E0B1DEA4BA6FE0AE44F6A92B0917F673673592085CC2AC0208DE
+2D2CA8E867D68BA9DEDDAAB83FC929D38927F5E5E65F97A160DD4D9A3DB6E76F
+6AD8C92454E46405AA43F782C9C7F3EAAB984F2D26C47C3794586065392A043F
+C8F670C06322769837C380DD81277AD8FB61E2F17D2E6D044EF64802A82227ED
+8947FB5A9D39C3C7BF66900819EDC802B10A867130FF9ACC42B885DDD5652727
+A4F54338B7D8CCD04DE347E31DD5EB6BDBBFACD0F605EFC0825D6E4560174995
+5A3AC5F7C57BCAFB5EDE28FB8FEA0015CCA84A4F421F64B9BAC351E4C9918123
+CC9A9C56FAB9C164E12EA420B0B65521D001040257AD908B17527740A4BE8B4E
+518472003DA96D02A04B567A806D6FCC1AB6581C255047F98C302CF6A3C38A3E
+255CCC51C41FED45DF5A8DCB7CA3FA3D4018AB1B3C5A3A5655BC02EDC17DE7F2
+946449F7B2552C97BFBD1C6C80E3CE122755E1679511101386A75345277E293C
+6BB60E204B16949F9FA0E6802D61128023A73771AA40254F4F7F54F2518A4086
+C8343A5EF3F620329AC04682962E7C2580A0C23ADF1096031DF2C0FA8B578222
+6309D0ABE027DB4E7F59A0D0F33022188CAF881F52A0EB544E53701C7819128C
+96E26E9CDF47938D16143720A9F774D36EF27770625017EF94F3BE6C97FB75F4
+A3B44E10F6D3ABB303CE4F63501FC5C91691D5803CC94C4A4E5211BFDF5EF0E5
+451D2073481EAB5035A78F14D2BC63852BF3A41D51B5A4048D514E16E3519D24
+B1E2A278771055679E561A2632E9DDD7EDEA3599B28ED4C10F1929D10F093018
+22937E17BD99FA33CC4EBCC92A6C21B130F0FABCC7CBE12408C1186CBA3B13CE
+D69E501C346EEA662F847C756DE1616B5B5E4B670FABFFE4889A85AA9AE8DF53
+A2A29D710FEAAF5F275C317A07F484DF206BD0C4CAE557ED66399494FF2C1587
+A6630861B8E5E62D7B02E3F6D98AD4F5D6D3FD34754DC20C8C69325CF4F43117
+80CF56F55822EEFE030D837AD51B2FB722B25098E976AA164939CCEBFE453C40
+54DA26BB8277E5FCB0B209B090001C202B1D417BD407D74C96CE6E315CDCC416
+7EADCF5EA7356F9150A92B5F496E54A4BE33EC139C33FA3D7AE1AEFEA515F540
+299DB28C9EBC83E3C89409F5D528A3CB3F59C1311A1AF0A136E237D91A1E4134
+5EA52642D2D4B151D532F29BCDC1E8FA7EC77B3FDBF561F7707C46753EB922F1
+FC0A0F94D7B9DF786EFEB034179022B5D8D77E368FEBD1BC318DDCCC8126888E
+3277B6F6C9BD74743D3EF6A6D1DA3F7F69E0689B2712DB9CA8C96A1928309695
+D64EFA85FC190E9A88B638FF4314150220DD3DC50A630F19A21D78441BA9A4A3
+E3E0D201086BE1A1BDB1F9F4E6F8ED30903CBFD91F43B8B56FB269929C431F13
+BD550F401CD9FC0A612F61A635C4B778DCF19D773AC9F83E5B393F969F0A6F2D
+2C3399578ADD321DFB6FFC828BC708C132EEEF51812305C5AA9C5123EA790995
+B17C609E9BBAE75AE816CB02FA63A5508EC4D6F5E68B7C69B3A7A743AFE1C00B
+479D1F4D93A85A0AEA989D01CA06485F69A76148A5D541D834864447661987D9
+A81CA3F0AFC109E62D4334B1958B0C260CEC205E37F608D53BC5CC5DE889C156
+D24EE0442D2E487C9425C59EAF0DFC887D850F2AAE32FE27BEFEBF16ED33449F
+746284FD593654A134EA7CB1BA98A9205BED9C2E7625BD7A614DF27C3A72B163
+F57788C67D91F7299AAC5682F031353E80A7FCB23C9DB3CF6440B3223132325A
+D55382F07F7D83C1E7F0F1B5D751FF1F39AB6A357E08D34FF625544F0B62D92A
+0441FE53F5C5068A3FE0A80729DA7693BF377C79FF3F279C52F72F03E439B688
+3552A1F0429477294E062ACB878CD3955BDB1050195EF91F2010611D1680D510
+33154CDEF24459E6FCC010D53C07AE9052CE784D8D060265885B93E5D201A3A8
+39ED6B100E14C87992A5FC12587123D59E9C70096C0B8CCE18996C7A04061127
+37CB2FE94AD25A8894EAB6543B4EDE18178B7CA02251752EAEE9007FE645DCE8
+76E505CC7CB133F1ECA70526437ABA8C3E966B5F7929042A91745F43058F3018
+C135ED93815B54CE444E864F840483D4B9D44CE0202019CBD40B108E1D8B4A0C
+CD10B442AE5C78CB3BED5E7AD9B89DE52CDC3D3FF506159E73F84CAE0C4B19B3
+310F6288DC7A1C13043951094729C2D036E1B268FC30334A61057253D5ADBB06
+062D9CAC36325D9668175C046E8E554101C89F31E0821FACEF7474774EC36C39
+62909FCA2682F0CF31802754757EEBFBB5F98DC008B534245782D12EB30A3DF4
+B892B1E064EB271FA436464256905FF2E91042882267A75914104243B60F12FE
+3A9B5D9754026FCF038A8655423230E5F2984457B260354E75E7E8E438995E0A
+41CE6D077EF1E08257CE1B8BE3A2397A490DACFF0F3FF8D20CFFE6BD58968AC1
+321A49B21C324F322B5FDE900D9E055BF6A020156CD67EAA1AF90BC64A1E1731
+D95EEB12AEF53754C7FE33167B9874D896FC5984CB032C60D66F09CBF5B045B1
+EC95734469F57212202F37D6E294E73BBFB66C4B821C5D844CE81981D7D50327
+F42D8210216D6A4826197CC24865813A441931DA18893031AA1EA62321B0DA7E
+CBAEA839D114032906E18FA1C661C1E88DE33C6337929C6FC8B09B1CC5B95BA3
+E1C71C33CD9A3E4999BDCB55F0F931FE0F7A3EF924368616449551E3B0FE20F3
+6B26C6317A782DDAEDC91723E25A5A325B288416E06A62FACC35A22F7B1AFD01
+6530D0D6E80C193A2E891BBA5CEAAC8315281BA873C95C642253BFC2BAF34605
+9EAB0AF45C3D049A8F433472560AB5DC2561FCA3A2B89AC95B15CBCD15AD6CA1
+C1E7175097D316CBCC0F5785A1CB9EF5D109356B07EC553765C3542CCD4D4A71
+A6D402D95A9869E5194E2B4591CD6A89A83D1ACD0F3AF7ADECBF37C69960526C
+CD96CEB82DB4F1504DB80C171383052DE99AD7A48CF508BE024BD574B06E4A7F
+CCAA259439F581467CC43F1775A797ED8151A08B898A4B4A5E2F2BC98C4410F1
+108393AFB7031C8C1B4CC0880DE20C3BAE0DD0EA1F15DDA20448F7893995F28B
+0608C5D9F4D434FC6B36C56A5A5748BBE676E00C3A9F418FC82F08F7C2650792
+BF935B7ECF4B4B2868A4646D3AF8442072DDB42CBD89671E3D8EE4E0C946ACAB
+2D7DFAD319C93B6474B36F4398D06961CE2EBC611BDFC74C06AF95BF565DDC42
+1F7932FFF7A5658514C04D79CE7888CAB8C0C13E13A0A38DCA8F99A2B0BB9F08
+89F413B0BB6C208C0843F607D1DD21D2D2857F5B15113FCDDF9012C68466EF82
+C9E67E81904730359D72118965173587DA5EE59F28B0A101A8F641F1EFB084DA
+CEF86B85151E31B21F66BD9055293B5878339FCF27216CB67805247EA7166DEA
+065F283E2BC91E9C526024B6954410ED143A88AA91DE752F5CBA7129236D8426
+DB326A5A9DE91A2709F7114049A8FB333E87CF5D1D839F4F79D08FE684A7AE1D
+20AA674461DDEDDE23167D5881AAAB018DDEEA28157CF944C55E0E7C7010FBC4
+7884F438049A6F596912E65A54CE36C42B22AC762362CC4EC9F9213FCB908814
+E63D7E10D6BA9CCF802B662586B6E5DDE8C7D5B7BA6D9C8792E87349A1811F96
+C5A88467B93EAA04D84764C10B344D51541A987548D4F24482902A7744535988
+09DC57E9031AF5955F5659922D46FF6727BE8AABB889563878CD8907E86742CC
+AA1424363B562FE791EB65AE23596095311612AA0720655CBAEC471721635BEA
+2E322E3603F763E4A151AB2A8608BBC11AF4B9EED89930B48627D12C7857D906
+E1BA68C9D2401056C6A100D5EA2A29E34DFB839A22F726508BD77D445EAE286A
+50D46337619F86AF82DC4C2F0D1DAA005E17AB38E54756D48689EEBCB2B70924
+D913013BA5A330D69B7B4A6B30A7396CE684D46DF2C24925CDE10CAC5AFA48E8
+29AA959AFB2ECBB95FE16B483B49A6E10B009E48968EC7EBF2CA18B3A5175499
+8AD1CEFEE2E3A5CB84185BE886B912F4F9BD1859E86C0F2B3BA8E4CDCC509C8B
+70A0226609B2E5B3C693588F89B8B9FD3DDC670B0818D59B1AB6392B61567113
+DE0F0AE4B5402ABBBC5EC181E3F9131E42B4D72FD500AF4A40ABB47FC78EC4C4
+340810870CBAEDB3ED8B6991611F978A9851DBF989CB54A7FB6C5590D6F389ED
+63AE2BBDB9640A581A3D0D56394345EC8A621E639A36D7A3567ED4C646782491
+E6FC3D0A16096A748BCED36335A39D30BA544F5E3250C9A8465BB4BF1F78783A
+A6F4C8AE394E45388641DE0810E79CECA8CCB82EB5B01AEB294BFC1E797CA973
+653AA8E25F12FD4637D4274540476E3BBBA984EC2B58B678650BB30D074713F5
+E6A5579EB116C013DD4BDC716EDBC4B0680BC1D1670BF465BC7575EA0C0FAF7B
+50B4CDA35F6CB2F3801EA75F8B8D13D5CD2B81035C06440EBFEB05C43920C8AF
+161BE712A91A009B3C1DE9CE9A29149E81A30BBC08A7DFE5291A137937AE8CF1
+D24CAA2620309F0CBDADE912CEE0801BA72A097446FE8DE2C494E5E7AB790D3C
+46A4AA9628D791FA83B3FF9DD11F115669209BE8B4FD1EE6627E179BB53C245B
+3AE42A6A95D73A45E7D9A78C2C46544DA9BF229077FADC8BB0A288B044AB219F
+C62E33225DB5B58C19A0894F14C57E318FD66A56BA936DA1DA059FB5E4C89134
+909D531F94915EBD4309465038E6E2D0223EDCC2D9030BC5E6B07C12A28AE03B
+E58266B28B0A4111B445670449021001771205A0016DC0534E84E02007A65E4E
+DA5212D4668270F11113293A1A0FAF9E7F5ECF382760365DF24DFB1A49D50116
+D2959974973840F8BACAADA175B18B0CF49E47728F744F3D3405951EC677C4DE
+F2A8B4AFB9740765742F701691B79309E7F8A9BA9CA4734BD8D6AB97F0B8DCC6
+A77EA6F065844656ABF04A6224CBC9BBBC929E1A4BD3230B901AE1E18FEBC2DD
+1642AB4A5ED317F9AADBDA2062510300CA34A7897D0EAB3DAC7DD375C24221F3
+03E0A4697C6BF80426393BC326893D524CD60CCA3EAA8F09FCEDCE2F08F2DFF2
+CD8C8E6CA25343FC294DF8AAF1C4938DD7BCE943E92CB8C70ACCD03CB2589CA4
+E12353188F519A9E50AD95EB772C39F0D0BCC02DCC9A02C55303B370A511B396
+486313903405479B23FDD01A7D1644212EC65BE4DE730ABEC92F9E5573A7353F
+139BADF8C69BC5EC022D92360A28C66992515A7AC3E1AF4F87BDA91832003EAF
+02B611681A280492A0C0653A7B0502FA0F036B80B1EB5A92B6E2E34F1D3048D7
+9DCBC1994908801E17FC33109B407613C5537C04FFC152072F78F1591D6CEBA5
+37F9E385CB0330754F7FD33255353EFB68A88B6B65D378F90E85996E29E8F888
+E1C837F735FE92E1906D6A3991E23C5F4B6ADAE7F80B134DB3F2E9B45316B5C6
+AAA37C479979F320C431641B87D5164CAAE38089BFC5A0466523901846DDBB97
+7E626FA4406E96E5911BA848F9FDECC660F0D9C8C51855AE6F61E80CC6D7E4EE
+8171B10C33B62C9FB6421E50ADAD266816B3D11B62926EC7674795A37B117816
+3DC5AE02F71DE34EA896ACB2DDC623C44CECCD8D6631517D3B0D51E3F5F373E0
+BA991518CE7A61A4CA01365C812DA9A27A7BF7F61B70BAE4A25353475AB28D20
+0EE8A274B7B81324CED23F8144C859318D24039DF4104EFF6A46A3E4AFABB7C0
+5D54A42B98554FDD4761FADED865F6CC6A62999A6D5E428B87773E34A3D59886
+1AD7953B918FF207806D89C4DA9E29FC56B5335F46516FFF9B0077EF6ABE1B64
+050AF7D08B8E0CA34BBAD1B70B040992EB6905A8C5453EF2A589F51ACB37D2F6
+D7435FDFE1D2647F8E7C9EE8E55F375AD259E806348D28F26685AE4E64CB08C2
+8479514C4F2BE9419CB9D2FE84B2551511171384BFE1FF2514948AC8E0011459
+0194392A0B0CEA69357E0957CF64187606C24B66E75B90E65F6BCBA6B9507400
+FF673F3ECE5DFBBDD8594B2FA9F7FFC6C9EF9E7690D1697E3286C9FEC9CDB3D0
+56F9D219C8A5E8BA1E6EF3C56B279998EA9B86E18678E1D94F1C51AFD500DD7A
+20FD646AC1723028CB77572685818024324CEE2DD03EE89953602B0BEBF931A2
+76549FE146CF4211F5D7BA4CE8A4626D6B6DAB552E158DCB9A85A656F0470F84
+396B9537A99EB633499B8D06C66D543B638282133067A5EAC753FC7B68735FFE
+DE9C5F435282BE7192F9F44D6716BB17CABC23970253B1C4297CCDF520407603
+87E0B3D295DAA1A72034D94CA5417B0E6B5E148A2F3B842A77C54EA8010642F6
+3C45F39A391F146FC070A9384872321AF86924A5C79C4932BA1E0E25EB8C76AE
+C2FABB9F40A19CAB8CE845AF2161E6C5CA4F1F28DF86D04385DA654DDDF4EBE7
+C2067556D6E9C3326F8578DC526050B58962B3FEEADA9E30FD98162A7690B2D6
+31BA0428550DE10F9A61D02A2A978709FD31D2A208379E53B1A29D111ECCE4F4
+BDD9B8E29576B2F18DD4AB9FC631C5BF6ACD81CE8C9F194138A2A9497D966444
+F0868CA92BB615B511B7370CFF55492C57ABBC22FD278E6396B70BD34192F086
+A98492AC442E001B9B77807E3ED26260D69FCAD22B7733708CCBE7F84F7EC267
+53F8163315FADE113CC938E49AC9E00928D16A317AE338E91E38AF8B894EC75C
+B5F3BFE33ADDC0A27F0E754D2CDBFAB0BBCF94A1BEB2F286CEB90AED9C34963F
+39B63EE068288431BA3B31E134AD75D563F5B81782AF676FF5E39AF212EE0282
+D66687205CB81F973D1624F14D1E424EEE9FC189327F1A502F6B45CF3C2D469E
+A6D952A5854556DD6C70382A7939F4333B6F4494D8FB50B1CB27C4700696BACB
+087E7C705250D49F5298C5419F03F713619DC5AA7AF817A48C5E1702E1ED4482
+ECEA7E7EA2DD3B1BDAEE6B4E203346CD7F7024D0AFC488F4420CFE1ACFF96E8B
+F52D2B9D084FA37FC69ABA82C5C1918ECD8A94CC7E3B85DBFC2EA7579AFC0749
+8812579E9D682FF0EB5C00BB9BC897CE9F6BF1F00510F1DDFB17C6FC832E0CA9
+79193FC6DE4EEAEF899448D12826E0AA8799B3E487916017CC3C0FBC559D5921
+78BFF1C4D4C351C472C00B3AF94436C142C8C70189805894A010BE3B8FBD3A08
+97DF5961E9AF3C9B374D733D7049EF23483003189AAE67517A5C953F010B4473
+99EB286E4AB8DFF15C226B1B5BB0CDC1BD1B5890B49525EC07FD9E757864E4D7
+1CEA3FF16FBCA03FE72D50A5FB75463D974BF5A8B9F4F8BF7909059FEA775D23
+5E8A48A69592DD766EBA72EC27126AB1537E8A9E40B8E908A968AB71AE86E9B4
+E34C4C0DDAA6CAE34DA06795C5C23B61F1B3029299CEA838209B9CE83B92BF1B
+81DAFBEB500E13C5C9EBB2D7AC1A9F2428286F5CE7482BF12132F263742E83C4
+B99633A0EC4DFC9C06964FB47FA7E8E6C5A76536ECBA7187092BB64C97B51063
+03409528242E0D79AAE56E8EEC79D10809E0FC4C7894DB3675BE52AD3D954689
+23FD259BC85866AC5626C80E19B46D46BE344EEBB27BE626F03E2AF83287910E
+F1137C184D279F0886A00191DD1E78EFCFB193145ECBEF516BAD89911E0F1261
+E9AA1E7AEAB774443B5B47580E94E8D11CFC72CE036D292DE29C0E458CCB0CD9
+B9FC222E3244A0B41A2FFEF2BB88AD788609E5E244C6C88B093582ECD05782A5
+010C2030B988B7DB1E30C6D8E54837865246B93CE7E040E2A482FD0E1AC9D50E
+632B6508154A39BBF6D4A6BFE0C835B057D5953BA5EE7E0941146E9AFA61FC98
+0182BA32BFC0E8DDB61F96BD482A3F3BB5109B08A97F0C369E9B77CC863B5E5B
+F7086A48F59EC18497AA38753F2CFFF02461FA37E4B555C0F292BFA8ECC2B3D4
+5B41FD849C8E94FC2F8A8FF379961E28EC3DB127D9F006C6F2B91168DEE7255F
+4BA8FC35765D75A2A2C9065570592C25E1726B492819927E6A0278C26072A01A
+C3FCCFEEFD6C303C9BD2189DF98E538140E7ADF92CE4673930E950CB2A5D4F1C
+948FD5F5C0F58D730E710EFB86D7121A8C77DCDFF7563E756A63CA0DCE6699A4
+DFDC0E17DCE17BD056757E944D2A0EE68E819D2FD3326F9C3204CD04363B2767
+1765E56741FB06DFB613B2305AA464B3A2C5950392B7DC4A37FB532B128A76F8
+7BB70D92F0A5A84118658061D40DA770B3A2D8DA3F1EBA9754C451C8147BD4C8
+C8CA37F12C3B3E83DE897CE25B437A079BC16C1046C3935792EF7685B3F234DF
+14DD781A80C66B7B315B2FFE93DB467323E01F0426DA7F488D5B28EC0C4F061D
+CEE054FA05071CDCF0AEA789EAE744D80392BD557F4023ED1937A1B53C757AD3
+185C0710907E7B87482C48A1E13D2BB81F6924FD8E9E8D99756BBAAA03EF85BC
+DE6E14CAD1265E16E781AB6FF98492DD8D479AC2E5206D2917C97966110AD848
+C41687115E67B559D183A07037D04E8E2FD40A5A40E7D87649739CBA8CDCF443
+C587F0D9C00B9A808F4E649AE7C767B35ED489246AAAB778D5E63AB7FD2777C1
+26A941846E215BC7496D78D098CB4FEFB819FE8E5F98E50677D238A1CD1D661C
+67BE46A67131B095025421A13FCDA084279959705D53F0A940AD96948DB37000
+A68603C8843CA4E7444435F17DA361F2048D216763FC5DA7C687C6AC40AA7318
+677599384F99D33DE44040D7DE5A870A420F638E83A811283290F0D5357A0048
+8C1EC53D383C8E5E7895581B59691EE045883E3E779FB0470F901BD8613DB965
+D1D005E804FA715EBA9CCB6623C51F41FE9A5FC108647517FEF1E9407D4F2527
+8E593E8284E9FECAF7653D668F975436E4B44E15A8CBE5CA08C04DBCEB7E40C0
+496E22802F2938433DBBCC34A0BE026AE1C21CB0B89E81159316D6F847CBF057
+5DFA1AFB203BB574E7D5A78C468C285A098798A223A3234500C2564A07F416FC
+3A313DD014ED39222BC4DF4F9C9500095A1F79F71DD3F065C95C3ECBBE57B714
+71FDF51CAED45DE330BB35CA4D3854DD4A353623BDB414C852C8CBC4B1AC6ABD
+6A3F00DA0CB3DCA3189176A2116D9AD01E4A53B7A67158D52D6C36052C625F30
+F443FC0656863F451E67ADE57F662345C33A479B1832928B5220544ED54EFE3B
+7517CA769B4CC4BD91C9A602B9DAFB48B89C3E490613A9B07C4385A121909511
+5A6B9DF7D5FA5381FDB8B456400EFFB006F15DC1EB93D74288E7227C8FE6E137
+56382C86FBFAE90C1E1F9325CB3E872E430F8525EF5A5B34BD7CA45362AC2729
+E1B39550E3BA8E2D29160058F7DA661C17E009762D0D99995E0EEAF8F8893802
+946EA5CF487C25E4C91A2A6B98E5B6DEDBC1BBB01FF8EF23C9928CBFE5DE8040
+390BAAA66997E936B50A1FEC18A90894D832CFAA5C35891CC01CE5DBAB20FD45
+C069106615C30C00758DE66ECB7CED5E8680417DFCBD9DBB672A71530254C71C
+DDE3144D20DAE4B196C462D8828A3D612A998C8CB163BFA33CC62CBE83E63DD8
+3C4709E156A92123BF5FDB588353ECDD293A7281408B73530BE4806BB589C691
+5C10A1472D6C311AE6C173EB4A3CB06B7A3E2626D7979C427C8C11EA06C95904
+CF8A3D509C72C31AC379642EF9C292DEA069347C9136D71F44D39F4CC3E51525
+10403CCDD038D3ED6C6464989218475DD58B27153F0A5FA890029A928C053AD0
+2989CBB3B0176D2F88702D00DBA0177EC51B08D7E0F9333DC89C0E69B470F52E
+38E750F11701B957A3161364F6BA74A8B8429DD87D0981597DA9206A46795412
+225635933413394E4BA04A632695F37E253760874E813FD8F4275BCBB0E4C6B0
+D81D546DBB99E27FF7A1AD640364EF547CB5D2DC12D7D609DB0B9E4EC651EA41
+0E3362B3745F9F1B3849E2C047138C4589137160F63FB5C093FE743F9B2A3907
+B08B14F51FD277EC66F56E19DFA0B0727CACD93ECB1580946C9E0092F94F740F
+F1347CF42AFD46F3CFC4E44BA60BFEC83F31381DDF20EC1808CE650BBB75D8A3
+77827873700806A2A7D3264B95119514AB9940C0593F3EC58D3CB7281F2EA154
+E1C2FA3BDE6DFBED2CE4D7A74EC9718DF075B6928437E54872C8C66EA7C17012
+DEDE74F0185C67C4D884C0DF21C6F80D0820CAE35C6BAC3A9EEC4183DF461FB2
+93E2172FFA04E5470C9D87A71327278B2395201343AD09AFEB35F8501B24445D
+9B2614D75523AB7A8ACB67301FAAF55321FAB88DFD65577E2980418C6EF5D8FF
+52678F027130DAD71117820C20DFB4A24092D8FAED4B8D926CF8C3E054AD0389
+A2C37BBFE78622CCBB3CC1853E90E6E4D906410BA8FCAD74A04C51CF2691AE9C
+6C462FC60E1A644EE0D90FBFA4D099F8B354A7E835BFB1C6569CA247C10B45AB
+F7DBBA63B937012C6E1FA810B83D449D53331DE1379E0F820F43679145B59B4C
+CDD277AD2EF9D907E940E4477D80EBCC77014FF7622E5AA8577C889FA8CBA263
+72510B0F22D28E2C5360B2B2C7ABC7A93AB6C3D728844FC7B841CC53EDEB082A
+2253170E67AE6EA143B5CA64C28EE34917ABB202F2C0BFC6F8223EC68893E887
+3CEDF6706042F4F95D761D4B916DA6E946E66EB78C8A2512DBE6866F181F7480
+387C49646C79DD1C174C26DD5F142EF203E0E7567A680A35A7B7C9EF3FC361F8
+1101E034F202C5DB0D8CE9DC4BAB1BB9CC04CD0036139E96BA34B8F6C37EFCCF
+4081A2B9F1305CC79BD3742DE74B82E39C533D4C2E65C7CD55625673B11AFC34
+2BC54054EED14E9AF22B578A36D638EBBE40075D3206294844283CDE49B54E6E
+11CA2540C763EC4CC7C389051324238D0D380AC81AF4EE04989A762637CF871B
+C43D284D7D5191C68BEEF0060081B16CD93E9F677300422A7CD2D4EC541A6AA0
+DAA2A8A44BFE7BDB65A989AC89E5332DCA160C92D2177ABA2B3CC510B1E6CB2E
+F4C92839132A822CB52941E83E9360A96BA996B0FECF3EAD5DA932DACC0163FC
+EAC4FA40275965FAF0920001F087EA4820B87A49CC4CAAB6C336FB89FAF09AC4
+BACEECDF4B4C106F70576C53F55390D50C6B8EAB81320400A24626E246EA71AC
+98607D9733764521EDA48A56F6B9476030471DBB3D91854D4D6388D0A62F9E3A
+F5086060024541499A375347F861343AE902C150AF033B8F955CB664FA657742
+93AA641F64599C02373F1881272B4A08A44D583D76110A43832F6F22B86DC5A2
+D33053854E746DF104241714A2B17E10EEF0AC2929B4C15C5CE3D5D7C2EA7FA1
+28335A0087CED3DA9536E8460CE5E957747422A3644F96C80714E3B7DC76BB0F
+73D6229AD8FE72FF8FB58EC577F2253E2D5C27168D00401C94201E64EF770A07
+DA43FD8C31F41943E46EB80DD3D9CE38F72AADA9E70B772A692CA7A41573FCA6
+C46E4F9543C004167529716EC417B5EA6AEA374EC7EA6F0F79A5F32B6F40A6E4
+13329175694D7869E60B837C4230269922B681DD5588EF0B0D77050B71D3258A
+89DFDA0E7B4EBDA9F050951D4573EA959E5499DFB5BA7FC894229B26DAE9B82B
+8963640EBE6E892C84FB3954ED3B0EE64E273761B4CCC34E06D88C630A92A79E
+E2B0526201FCD0835D5760F680BFC51573894FF976BF8E6DE378E3B24261C8DD
+BBFE0C9619F2800F807716E9353489EA192157AFB5184B4D4847157491D61C9A
+93AA2DA0B076444CCE6A2065BA5708FD5ABF50A8AFA43AE65982F596CCE43B0B
+550C4D63590E0B8C48884B2388B1E3A050035DFDEB1DA220ABBC945B542E4551
+A039914EF703EAF77FF5A8F53073775703CB7681AC0ABA95E1CF016BDBDB0277
+AC407281BB4A5DB2FDC550DBB92130234AD7054C851A56EE0AD6827B89BCC5A5
+2748735C0F862AF250B55D2CB737DD5B0572F7C129C09828E4D71419C27B59BD
+F9AB2A053F432A956EA9E6801986D3B1E55A80C4397E458ABEDE8E9087B07FBC
+101F3BD84D24C5BB61CED41E292B9CCC884681A3072E0D420F0EE2B1129FC5AF
+C74D2A359AFACFB92A1C849559DFBF0D09018496369B5377E696C1CC6B9D9B67
+030342943DBAA19E677DB0A8DDE0066D8E6896CBBBFDEFE13EF9E5A85D2A9ED3
+9540316EFA056C11A8E65480F85A0CC8D0DE150B8C7D22E45DE10710952C3974
+C9D6026A9A6894C1AE2C650EB15EDE4E87E4F457FC7B8EAD32BCC5FE508C9284
+EB456AA6FB8D297C3F5E71AB1526956C66CECD83124EC68AE6546E9C3BBB42F6
+045F4A6A557145FD982F599F8B285C0772D6F1EC2F73ABC61E7EA0E6A8A4D391
+B5CCC56AF378E9CF4DF4732548024D51CFB3DA18D78747566A7F7E9249834BC4
+6557A1CF2489EF195FAB236BB48FF427FD32E1903B8FF82EBEAD2E1CC6D54821
+FB3F6763D2CB4E6E383324443D1CB3295BABE7328B9FA95813932A37FFC3A9EA
+E45196FCB6236C73CF95FFB675510259939F4525B298B3A69D0B52472BD31D45
+24CBED3F82F7477A180FF3430212B1CDC21EEA48F799B01B763C93CA93398E46
+360707E212942E17BF445D2E054EB9C35B4204A7AD6E72CAD1DE1589219E6530
+7E67859BB41148903CE77201B8FEE094EB659865F6A20E3DDD920CD27B118249
+FBBC11810A14E60E8C09E00363C039AA0360BDA398F3C65085905EE781AD5726
+DBF612DFCAB47C9E9E3E516CF26F53B6605124DAB8C876F50973BD3038B03EA9
+AFA4C6769405477A68BC4D7900E1DE54207FC766AD11F19A64AE8D9A2C058BE1
+E89035EDDA2E568783B36154DAAC4E3A980A38968FF9B81573D5C2B3FDC093F9
+A98050E3E1406E2FAC3D1F9D11BD6F511B1A044D5D62329DFC901E6F962A3DF0
+3663AFFE48E0154AC5AB244524B79B5D5649A2F9C2223DD97594E3BF55225858
+1E8173B8A7BCE623F9B641AB8AAC88B9224622E102CF2D091ABD006875F6C616
+FC7220BE93F77A11E729F04733D12F8E49AEDA23A449CE772971CDE7A8065888
+0032E17FD396B162C22EC213E0D303297FDB3160B303F1EF69851506E3332994
+760B7E59FEEC01445E28C6681E85D90BE5680020976DFAB52AB29EE292747C5B
+41752846FCD3C2E0A2D0F0E8DE92D16B1B5DD41899AAB80EDCF2487E1A986E59
+F7442F68B05C8E1FF12D0D0CC808ECBE51CA429D9FE388929125DB8F03036C95
+39BA0153733DF29B00DA9C96303D265CBB80D314EFEBD2AA26FEDC7328937612
+BBF2714552B94C8EB9A567928C0D275C72AEB08638DE4324115AB9A451ECC6A4
+F0E47E73CECFA0AACD1DD82232540A7D1FBA6075745EC8FC36FD31E3BEAB060C
+BF19783B8B65519FDA47D5BEF90ECA881ED512D200188ED498781F6EA83DC1FE
+95815D1B4F05A33230ABA8A1FE53E13F35B92C1D76E15265C1B6F69103FA33D8
+A90B1176439861ABD9324D2AB91EC9A216BD93472BD9162F9B9D1C0FFD26B185
+A696D9C1927ECB9B20F1F7E1454AF91F9A4A3D129C4B034BA2D85BFCE6A2A1BB
+97B5674A51D56C6DB03A8F26CBFE9DD301513B2671F0BF7B074C4D159F9FEDDC
+B1225B515C1088056A9D81E6FB640FC7D37D3B9174FB65BAF5AE5A5906A5B250
+B7B297C805A087FAEE9D888E0844014C3E4931F29D4B75F8A31C02B0B69A56FF
+A2FE418192D1E3E30FE8414A1E1852C8CC2EEC091F635F6A76EF82878A260F9F
+D9CB3BD28EED2307F1E8A0FEBF82E7B2862E176EEC2947307D81607CE8761480
+6DB2053DEEA46B9391ECF931F0F9BB8BBC097A37C6B02AC724D839BD5AF43C5D
+7DB5146B769DD171844C8EDC0C4F93A63CCBE7519DA6654422B1E4049AF6E96B
+0B23AE5997644EDBDB0C139BD45CD8708824AECA2B07200CF7B384B72D23D60F
+DCC3A98CEF3F6F4744276C714C08B835FA11619580E8E0F433E8D069636BC321
+42D6BFA12DEE9F2D22293950E5097AE72625C6A8BECAB5C0656716D4AF11C755
+298500684671ED70FCA40239AD0A04F4BAA1426B5931BA1196F1C97C765B1C05
+602B887B8482F9A4134E3F0C557E1420A9AFF802445DA1F631B82AEDABA2B98C
+716B9DABFE8E40585EA65D7910A2965F99C5A63BD178E607547A12D60ADC5DAD
+589F7EDD6482FDB2113622C07B0444DA233213846A61C260DE760485A35A47BD
+C020482DEB042B4D7295A7F90032F7228AA7529E7E2C9BB2DCBA64D5BC6D5419
+41D306C16B0DA13DBC5EB7C6874B5362A6300CDDCA16425AF32FDD997E48429C
+EB4B6ED76765939DF0EEB4DA1C58D79BE11980B636C9ACAB2776D3549CCBF157
+4D640A86E1B6DCD14E56F18B0B30CC1FEFA6199BCF33C80FE48EBE85BEFA1174
+4F52F67C06D192B48A79BA47D4E6790563DAA2F1B2967B655FA0111741854C3B
+B53410C582011F89D2BD1509718DED0DA887E39D1FFCBA9BEFF793085A448AAF
+2798D65DB0A3D66D235C00A9977F2D3D3E978F4A03FFF783BAF0C33949D42541
+FB24EFAADA5632EB66A1CB60E22C957B13C7E52D8F49B5C99A52FCEBC7159E33
+749A4F647936CF51D5EC511720FD6DC01A4B0C2D3120D4DEE5E498412213DD20
+5C10975536EEF28F9BDBDA565779E3C9F1C3A087295F6C1D4DF2CB44104BAA81
+C5C8D6B4811AF48F65A3D5BB01B982423E372D612FF20012B0909EC8E41DD25E
+9B21963AF687A9678FD79FB8953CA5A1E38E709457C196D3D080BD764E898617
+F7EDFF583D9D75D8632BBBC57982BC9BD23BB6D9E6C06497CB4C01625579ABEF
+1BB42CA4BD7261CAE0CDFA67F50A1563307DB14C7D3ACD49E59E3842343A97F0
+A5C45A8BD3D80A583B90D88D8829F27B093FDB2E91FF5ECDEAA81DBE611D93D3
+F4FD48F3B74EFD140EB1EC4BD5A463DCC84E2E7B157C778368E46D81A7B29F4C
+D4794473886CF8E2CDC60D2FAA4F537C969175E3D428A3918CBEEF307B34E981
+9534B42005097443968D4291F3CEA793E707B37CA63CB2516E8575B8FAC0EEC8
+48C4CD48E2819E4DB18E428BF7A933753845B5ADFE3C0662C147667BF0FAAE19
+3B6CB8CD20C9D1B5657265EC8F04AB427FFF352BC8A343F98D1AFF1EB6EC03B2
+FEF15CD3CE27135CFFBC2EDBF29E3918330D13516DA2FD899299F4DD996083B2
+AA5CBAF791C8BFC31D25EE31BD8F9E1946FCF35DAC9ECC347BC33E82BE5E5236
+27E424FC8F18B01BDDF1B633C8BEEC69B772F2CFCB521FF7ADF2CD57C6AE9FF9
+B39BE3E3A5CCA2DB161A441246D970484B146B3275557216D001553A58859F12
+9A102D85699E24B901FC3B4D93B84F83BC0DE7AAFCD886703EB065BBDE63C83A
+958EFCD18D53136A283E821E7AEA7EFEFC14602B1E4C428AF80AD991EEC31E69
+B0989D19353B1818874BCD39DA51EEDFE7EA12375B6CF462385963D5CA49F7C1
+E8DE6BDDB7807C3AB5F232E9C8B242F09B18EF6B7C4D88E47E3BA33EE16E0A3A
+DBE6CD175E403DBB1EA5EA1A74C72D749D743C63203050E87A60C952E9925ED9
+9C509459F31F7B69E38E737EC96EAB6B2402F689C10567BB758B9844623C96A5
+9206B8B17A51D67745312CC02028917150D16CDC362E4052C6F5D4405B686A6D
+B7D7CA7E60A99533D0AAA5C0797BDDBC078997FCC20645763F4B5F9E4BCCBE92
+E2E928BDFCB3EC1A9941CBB04D85A0BC386A612A655D849A34A76E3E3E1C91A6
+35ED8D77D27B090DAB616F8772481C57741CD4A3803A35E863D9D2C4863F0AEC
+305059A8C70BBC916AAF8A79077287783F2F01C0F676678D6EE8D1E7F5855D48
+958D0C1304F94B4FC6BAD1FC62DC3834713803B58C680E1AD81E70A09143509C
+B79A5BD469AD6D63AB7C8709BD8457A635E85EE5CE2B81B565CAEA18E6A6F738
+9E40522E0D7B3CD35B68CC2B88FE81279F379DD01643DD52D74046A0D0FCE216
+BCA962C1D10BEF7FE76C602CF2F8DAE1F7160555A806CE3F1F817A3694A2601E
+443A85C32E47393B3D4C08ECB5F507C7A12536B89B446569E5E54512A4897EF9
+84513C8BA4B9C8AF4ACF81B2BEDA480003360DD08DCF43DB57EBD401C9C7C4AC
+E08BDA494B711F9F2E2F954051D7A759BC73E5446ACB973F2EB4764BF8227DFB
+08BA8DCC4CC289E367EB6CB79B8798FEBD585E4C3DEF59834570935A6A3DB3DD
+9630020F4390FED9215ACAFD4683FE82E1F67CBCA8CDEDBDBEE29776AEF92743
+8A28B00C873FEB39A9C693770B410F1B91F631948247658632896F821A43C3BC
+E0E9B92E8017F7E5138F1A472FF1C4BBD64F1642A5818F138B35EAC4C7C1FF6E
+917F0AB74AAA9752283E94DA08563A52BBEFBB97E43121E5FDD1383FD94177C5
+FC7B706A19FF4B8434B33D603E4F05B5FEC2D8A6315D2CBD03527403FBB25632
+4720C539EA5DC49727BF459E73770E64674E49FB76DC914572E9CE7B0CE5EBDD
+50CF330BC6DACA9981FC741455FFAB7E5C4095B0FBB4ED94F327A5D0AFBBFCB5
+5F795A9DB07C04BF326B8C95A73BE943EAB0203DD488FA7F6167CF77638D98B5
+FA44BE3FE030953CAB6CE9F0BD0258FC6862CE8A29D16528CA5597E7997B8078
+70534850BDC3647ADD483C6BC7081EFC121819CCE63A080642ABFF4A223C1CC6
+A866AF0B64EAADE21E55123A8181A1C7F36D5BC654C6B31231B6839FFFE492A4
+E5700603C7B28333967D1F17875ECCFB3590F84451374E30A8962EF0DB618EEE
+D15660CA35168EB3531EF23370A13D629CD1B601178A2A78FAB7EF75D59BD3B3
+3C0F6A0A2483964AA9621848310A1BB3D9AC3EF682D6B2713F821DEFB9208388
+09862D1F53E11B5B822A4F3B02AC5C6CD27B7EC5C20CB2726E811034B360C16F
+7E0B3CDA6E68A36944337E9277FF66379D8CA2D67BE9BDCD844B6FA85DB222A5
+DA51BBFCF8656D5038CB442C49700AABCA3EAAD9AA163B43EA2502CACB0FC4C8
+FB9E6520CB42F5BA1175E9E56A13E4627B81FFF8865DAC818B0A9C2624DD436D
+A2E91BB348E4754020ABA942C7D521B1052D8FE4ED5B5680DA3E33F08B0021F4
+8D62D2DE042B497D8DD8B37CE488FD543A1706F1C87BC111CF8AB593E35CA099
+4D2A02E0FA787B6C090023AC5F62F86E1591E37EA20006B9D3195D8C047CC5B2
+A120139181147628CBEF57F3FEDFEDEAB16B4B7282DC465FC53E50F199A79B48
+8D966083736285148FC1A76382E4991C7EA605B05AB1460C2CCBF10A2EBBE340
+ED042D2A9D2092F3E91CD4C7BA6D9E60EFDA103206E67C6501CC95062F70ED73
+3A591E7FC37CB5A10C92FA2808B494E4BEFC956FEAA6EE82F8D03663BE9C9139
+836AE3D1F88C0B7DBD8AD9FF3BDB7F36DE336D4C0774149A9810C27B3A2EA083
+BA59788788002481964B952182374BD1F9A72545CBC4B0F53EE7411E35C04128
+5CDE87DB0C69A2B8AB74C702A74130B302A8BA4B85D021BD021A68C76357505C
+F439AB81B5FA7834BB48049DF25EEEF85887AEA66DA7234F11FEEF9E665EA2D6
+2F896E5720679F8546C80B37FB91AC7A1EE7182851B3F20BAEC72E1C74E18755
+3B908AFCD384F44E26674D13F3FFE746A718A04F7C92D0E09C21C1AF7267AA50
+0C7C0438E3AC17251A08C4A39142273868BA91E4B9A41A159E6C7B3EE1B95894
+625F2AE90DFB33B36425BCDB41AC15EE4588EF93C29E60071F247432C76BDC13
+7270E92989CFDB470685F6B5D187E15C9078E09A0CC2A46B9229FDE4EC46B236
+4BCEC1E9E0AC88617DED14FF9ADD9B3C874541E226EEB642A3762A382988A15E
+C1BA3F257880D0B0CA7912BF529F626E76D1B242833921A29725CEE9A66C0068
+3232BC8A3170DC768E8D9947B62742B9342B01AEF38E8331B997AF996A73FC48
+C8A457977CF1B4251E645F327B1CF9376D15ACD06D5AE59270E7254A56FB6852
+19CDAC3B14512CAA4D00823B693A1FF0C4E2462E3058DE548CF52047D9F9A39E
+109C9CB83E5AAD0A3C958FC40FFE45415B1EE51132FF593913F3BEE1C01AC778
+1BADA832CADA92FD40EF207617857160563BEB866C76D14FA651507C6739FA28
+FDDDDEA39E858CF7439BE229697565228F4CEB4C94A6878D30D32A00A1E5960B
+2D32953BCB686E0DA000AEA0192BD53618AF9481121779CACA0DE4F2FD4CF81F
+8D4B9D3846AEB66795F81D6EDBAE8BBC60AAE4540E19A6D2173C22D50F9CAF4F
+C4373617F5E449AE35F9820A53893570545D5EA6AE1E8B3D7775535041FD7860
+FCE9F0C78D142172CFB777081BB039877B98D59C797BB2CBB6E17E42DAF185DD
+E593D88552CA8605F910FB64C4292052F781FF971200FD88FFA5BC85CEC50068
+A91B20C2D4129FACF68EE0DB5D814B107AD35571F3BACD2C754EBC6175522881
+25D2168FBAC61AAEBDFC1F5D64F2BBDD8615623BCDAD49F21F7FA77743CC827D
+BF98D727204FBFB424F16C7151C282925198C644119FD82B9402D268755501E5
+7382AF8B16A825AF7368B2D04B77EA16B9A107F6588C346805EC51AA2954E3EB
+59F5C44A28A31E7AB1724337C42F4950651DDDC87F5EFFEA1B537F92A3F60058
+F99F05AF0E58FEEF778DE67A0FABBD933F0FC8D82C9A463088D46BB24D649C60
+C32571EE3E11E17317459D2CB58CB54027F895A862C18999BC0B10B1FA9C0B8D
+CDC2DE7847F8FAE9CEE8D817B4650D730B52506D2FDDB02B0B8FFE375E885C3A
+0F4A747C63BC4D70751B98A32FD386FC8BCC07CD52A9AE3C959311941C77A5C8
+6A5109E4F43C7B79A779FE30DE2AB50F4D3CCFD51C5CD55D7C43917491B364FA
+3BDC3B24043741B0C5D617688A05BCC8F01A14D643214E3B186E6D791A2AF3D3
+A972AF68CF394DE082CFCEC222EC928825CEEFAD02E84F845A5744EB7FB9841C
+F73384071D6DB7E6692B8792DC38256446FA4CC2D3D1E6F7436C568B97AC2950
+167FCA9D6D997218C05A905DDE26DDD283F64E21B11BA2D9217D93DDB0D2F985
+10770F9D756090F8D5F3B09A8B917F12D8D43C4B354FC26C8D56F53C62872CF5
+E32D25F0A993BC0F2E4F0E2103DA6E729996268A3FE96EA48EB6EA6B9C21D042
+BBC55FBCDEF0C786F1CAB555DEA42862F3B6B212952C1D944B010EC51DAEB5AD
+6E0D7361AAF600CD2659DC59DAEFCE791D9B0D3B718D45A1F93CDE3B2ED72E70
+13EE1705DBC0A8F0CDA57068E671B86F35CEF8161355336342F2B95D4092EF3A
+D403C417A5DACD576CC9DE10F0F837240B3669AABAC540361BC69F31AE7ABFED
+96838D6B70DBF3BE145BC07C60FE6498A925C51471788AA5D8E1E69010C8C513
+87C6602BCBD4AE75DCE4BC916D8E4F7B663EFC9939F55A6A8BA7D445D849BCB1
+2BD64A02224B841BC9872865F9A4068DBF73AF28DFCCDA23CFA589FAF6483E4C
+1A0D5D377CC241047AF5172C4E1A7E6C16750E53E61A74BE0CA3EA6E65E9D53A
+912578C709131FEDCBFCD1EFC0610F6D105438CF64A7F259737C3FBE09DA07CF
+8C67CC6FFA640DA3D57B3E2D695DFECF53981357BC06FCD7D089859064651EE6
+607BA03B0C3D7DDB0EAF225F1F28E0E4B38BBC08C76B6C42C4B1747AFCA9F2D5
+BFD0073C03841155CCF38214F48EAE34507272EE5CE69051CA87A6B6214C7A0E
+27F9F3AC4C962E920542C762510244A6B61502684BC99F9867557926066754FF
+D707640D0EE946F98922EC777B3631BFC5230B3892FBA074E6B0C91CBB36E51F
+4BEFA5CE13B58B6278D9A5D82C7EFE170EC2BE0367BF8531C7495C37B848DFE5
+3E789822DAC88A3D5ED772D681F4915983B3A67D3949FFD1A659F936771AAFA8
+C61C3C884F3BEFF84407144332DEAE18923FBD1CCB54DDE059694BB3E46BC0AE
+8C5B914EAA3EC71DA87B4E08CAE59E839546E0D89B3287EF19796E397826E7CF
+3E966F623FF66FD752460A15A7D85F84DEE0BAA16DBA3A649DD0420B28B4C39F
+D49F2058BC109C46C58AE2A9CF47FB3EE019BE11817C2623B473BED923955FED
+5CC714083DE1710E8648B6CE7F900F15C44344B2FAB16355FBD00ED9D16E4396
+36AAA4F49EEFF25401EAC8143E549824FD3949091BD47F24A84987379E3C3526
+8378C1BC4A12B09DD99B6AC638532477CCA879518994B01CD21A3930F1D9669B
+8A778E0CB2A68114D40996A3CE8E55436C5E8F20359E45A434EA9261AAF98F82
+269F021803FB661D4F8C881ADC90A09A1FBB2D03AC115D3421F122D01376AB23
+0220BA0DEA220D22E1490FFE1DD1CFC30986ABFED309FE126F0AEFFDD76EA1EF
+65DBF44E3765AF88E235C74E5242B02C802E4FDA8147D8874CE1C71669F4C261
+E06BA951DABCD307393DBE0F01349B66B8CFFEC90C39DD30BB8FEF864F5D85A8
+B46D8A796F5E25D033E59E14EA5E480F34807F92056CB5C143434525B32A77C9
+A76C1713EEB2D49C346D4B256D14EA6B0ECE2709A9E500C4EF203E031AA43459
+66CC59AB6C19BA33D153A4C53BD6B6037C59BF2C5EBC14563D97E38742FC23E0
+E6C5A1E8896CFA9A03FA76F1947FF788C7FC7C9973B958CE08BD2671C87A4EAC
+BFC023F12BDC146A49533435C0A60D313E0A08173288432DBC2D9DF015547B95
+A09D740908831AB01ACD75AA036961BAE0EF713470E727FBCA880F252116EBAB
+47A38B2D4901C84496FE92D31BBA8CFD8987FFF5E6E290EAF41E4EE3C9C7188A
+76AAA149913F62391663E75BA83A077EDA63A5982C3FE0EAE75C5D9EE8E17E5E
+21454664F25BC0684A225B5F3615205A85C07DF069BD1FE0FC10F12CD65CF334
+1C656085F29212B1E06834F4914260FF7862337BB4A256EF78D068C307947F30
+89C19617889308331CB4B53BA71E38AAB0D161B4112223719DD8D6D63C33FE3F
+569132EA533758DB58E180CFBBD49DCD306FDF0ECADE93EA5495F03AA370C394
+F8BA290FE270F202AEF202A6D15311D2F6EF4D7240E86F95224F6B2B58E0F81F
+82D037BB45D290EBD666AA3A3047484A4EC3ECE51978D2C860FAA066FC97C07D
+D6CE20450B310D93EEA5A306DA97CD6FC055ED1BC298F994CF8A92F2F8335EEB
+DAAED0BB928567A3F61A08AA1760B22413020CAFEBEC16A4AB9FBB6C0FCFAABF
+FF240F40CDFB5AFA8814156921831411912E2B8529325C35E7EA940610C46CCE
+ECC4090734C7DEF297B88B4B4119BD386E51730A492D9A53996A5E611ADED22D
+C6D38152834AD04CC9996E2FBFA34C90BF57ED326BCC7AB3010273E5EE8F1EE9
+60184E436768D65329665FD1043B419D165C12223A22242D03BBAF6FD6DDDD5C
+25570137EB04CAFF3B54198F049A587AEB1DB7604A79F5F25AAB7D457910A1A7
+A5C57B2626502F2C1B0A943C28CA273AD4E8750452FBBCF0DCF9A3E5A40DB15C
+EA31013596481168DC5C66DB2C1A5C18E8A6C8DFCA1BE89FF5727CAE7E9C5250
+67EA84EC9B60DF4CEFF2F4B127D9E6B000B543048D67884E11A41EE56D2D7736
+E1867FEFF8C8B97DFF3749A6C583AD095B8EDE970E3E2011996E4158CFC4E538
+F2951A95B1D9B7D778AA7252BBF3AA1FE817B6E1A3F3831F981DBBE0232B783C
+4BAFD6B0CD
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -1230,25 +1852,41 @@ A0339B5218CBE53DE3516774BA6DEA013C9FB3039BF4DA71BD5D6A5C5CA415C8
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
+{restore}if
%%EndFont
%%BeginFont: CMBX12
-%!PS-AdobeFont-1.1: CMBX12 1.0
-%%CreationDate: 1991 Aug 20 16:34:54
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+%!PS-AdobeFont-1.0: CMBX12 003.002
+%%Title: CMBX12
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMBX12.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMBX12 known{/CMBX12 findfont dup/UniqueID known{dup
+/UniqueID get 5000769 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMBX12 def
+/FontBBox {-53 -251 1139 750 }readonly def
+/UniqueID 5000769 def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMBX12.) readonly def
/FullName (CMBX12) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Bold) readonly def
/ItalicAngle 0 def
/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
end readonly def
-/FontName /CMBX12 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 44 /comma put
@@ -1305,291 +1943,497 @@ dup 119 /w put
dup 120 /x put
dup 121 /y put
readonly def
-/FontBBox{-53 -251 1139 750}readonly def
currentdict end
currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
-016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
-9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
-D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
-469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
-2BDBF16FBC7512FAA308A093FE5F0364CD5660F74BEE96790DE35AFA90CCF712
-B1805DA88AE375A04D99598EADFC625BDC1F9C315B6CF28C9BD427F32C745C99
-AEBE70DAAED49EA45AF94F081934AA47894A370D698ABABDA4215500B190AF26
-7FCFB7DDA2BC68605A4EF61ECCA3D61C684B47FFB5887A3BEDE0B4D30E8EBABF
-20980C23312618EB0EAF289B2924FF4A334B85D98FD68545FDADB47F991E7390
-B10EE86A46A5AF8866C010225024D5E5862D49DEB5D8ECCB95D94283C50A363D
-68A49071445610F03CE3600945118A6BC0B3AA4593104E727261C68C4A47F809
-D77E4CF27B3681F6B6F3AC498E45361BF9E01FAF5527F5E3CC790D3084674B3E
-26296F3E03321B5C555D2458578A89E72D3166A3C5D740B3ABB127CF420C316D
-F957873DA04CF0DB25A73574A4DE2E4F2D5D4E8E0B430654CF7F341A1BDB3E26
-77C194764EAD58C585F49EF10843FE020F9FDFD9008D660DE50B9BD7A2A87299
-BC319E66D781101BB956E30643A19B93C8967E1AE4719F300BFE5866F0D6DA5E
-C55E171A24D3B707EFA325D47F473764E99BC8B1108D815CF2ACADFA6C4663E8
-30855D673CE98AB78F5F829F7FA226AB57F07B3E7D4E7CE30ED3B7EB0D3035C5
-148DA8D9FA34483414FDA8E3DC9E6C479E3EEE9A11A0547FC9085FA4631AD19C
-E936E0598E3197207FA7BB6E55CFD5EF72AEC12D9A9675241C7A71316B2E148D
-E2A1732B3627109EA446CB320EBBE2E78281CDF0890E2E72B6711335857F1E23
-337C75E729701E93D5BEC0630CDC7F4E957233EC09F917E5CA703C7E93841598
-0E73843FC6619DE017C8473A6D1B2BE5142DEBA285B98FA1CC5E64D2ADB981E6
-472971848451A245DDF6AA3B8225E9AC8E4630B0FF32D679EC27ACAD85C6394E
-A6F71023B660EE883D8B676837E9EBA4E42BA8F365433A900F1DC3A9F0E88A26
-3318B32500F76B1038FA6122C2AF6261B025BDD519D349966A067FB190E26763
-A5C6B1AEA2A47EAB8EB272BAE2EE33A622E85A7BDB149A6C7C3BDDFB840280EB
-3099FD3BC4081E2426D68C12D6D360F1EF8FEC18E227A4D43CC27E05ABCBA6DE
-A980A2228625FD33C772C6DB7F803DC69A967891E8D28BA667D8B04CA8A788D7
-C7C5D84B37DD98CCCD946655A12B8B5F9C3B590A001F1EFAE13F739F45C8C6B4
-257C6AA4D133412B2F9E25226E2E9CA4A3C4D31884E143A6207CCC7644C7C30E
-C870AE94C8DAA632A8B3FB90E4A67ABFDE4904E8417CD16EE5D8BDC5483E80AD
-4DE4AB6F0FE123427DB32A8BE5E0BDAFC6281D56CD83997354829EFA338991AB
-0F4ED89C6941BA491B68D608301AE9E608C34A9A035DC3E86CDB4A64EE6F4629
-315A91184FCBDFD727AF7F9A9EDB604A1A13DAFC7C46A730E8CFFFC3FFFB1E89
-9A06F637911BE1BA30E4FBF5A0C5F504004672E5609BBDA6D6308606EB8752FE
-AAD27C809B4F0DC9E5B834433115EACC92A17E214C5341A5C7D42375816F5083
-9E29261577500737B690F0D73EADFDCED50E6482414481F24216C2E7DB0677A3
-991EC0F265B919B8651C16CBB83B6016DCF8071C6E3A8D627BC4416109CCE5F8
-EA954C91C2918D804CA758C5F70551CDB5886FCC4785DEE80412A6CCDF7CE64A
-3328A3D3F38393DB98C4D02F36E0E162C161160BF721AB1947FA3B8C7AE170E9
-61AE9F8B46766E2FCE33DCE39622C4525B4F48B58C2BFEA8E96C5637785713E6
-5D550881BA5DDFDBBE0EA786C8DE9375B694ABCFDEEE060FD93620FA2FA7C80C
-CAAC497C0433736D80221CA7C96B72E2494F1B3CAEB1FD27F83682F04DAA0A3E
-DF102513E3303337E028040AB7B4117037B72AAD9A1E491B705F67361A557B57
-FE15839A3B1664CCFCC8589E2F144E7FE28E3DB055A7AF6B3C329010C2AE8FE5
-D6C32C3DB0A2FED004AF13C6C7884D921DEF0C55C5E8EFD765299C95F7869119
-DEBD617AC908DA15C2665B025BC4D5FE081B2F842C3965F2207A05E21BDAFBB2
-8B8B7018EA48AD4823695C944AA76189F8D3AF3459E1EEBFA9442AA9B845FA25
-3BDB2D6842EC70AE87EFF1A0A241D19BC3349A9F04C5A25C966D2350DDCF5C0C
-1F707723956D01B3EF7B09C7A37081AEDD0DF85D1E4392A73EEC493C85B8F1FC
-C59B1B2A1B91CB642D968B09D4178D36300E85B5E2CED0C18392DC2D498ACF2B
-45A1ADA07CFA3C0F3EDFA7B39B1F8442144C4EEA714A67CAC59A76B78C25F6BA
-49712594A8C82D3199083C9237A69B55678013A886FA4A6E5296071361E4B780
-467CA1EB1838818552E1E03256AD14E0AE84CF2034DC139ABB2D29BE20EFFB21
-4338D4CE010F1BB45767F72088554BD33BEE2AF94ACB6CE894AAAD575F2BD390
-9F6D3DDF9BA8A4EA17244774F2648C9F60464136B6382485626854EBAFC4A2F2
-996399BF2F97C7381BC50057040537F19967890E69691B6BAFC04608DF8DAE15
-EA853EC865E3A88E16276DBB11983BBFF5FBC013AAE53FDFFC0F884A82AE0701
-FBC6B117EF3A45B6959E93D0F811A85243DC3FB13219CD14106B12608CD7336B
-CD26EE6F3A13AD6EAFF464ABBFE54515FF2C44D27EEAD7FDAE9CC5BBBC71F7F2
-6B0F21E1D28B7562BE8A81E0B942467AB3AD918209A02C85048149633794F3EC
-9A4170F3994042671B63BBA3D7E1562EE494BCF10A46B5305D9AF0EDACDD6D9F
-B31FB080C264278AC82C9683EA626A191AACCEBB88E2CE31FBD5D0A7A32C90C9
-03C17D842450976AF1FD86B29CAE0ED6104E017723B18B849344A92E348C8AFB
-53DDBB08E31AB5F82283DD8EE248E691C1FE0CD9E2E57FC66D42856393B83207
-AF58C7265445940B8CF8C3A9F6356FA06255CFF230298068D0C0B51173C10B95
-90134D7CD4F54BBDB4F9FA66FE4855DAA0CB58962DC9EEF28931766F866A1F15
-0A80FE86DD8B38343A03BD67489B7A1D08A28B5E776405DC35A11D4EC08822F5
-DD00FA83DFC9EFC62217E5DCBB775AD0EDC26FFE1EE275E496B92A6E0FAEB92C
-6ECFE9E4F778ED08D0F2BE1571D988424DE1B50A8BB534748FF1ECB464C9A085
-206EEE7A0DE7CC4D5335A40AC51106CD3FC6D75A5E400CA9A0BB610F677D1816
-1BC717F63E3FB497800684E212F8DC5047B00E0F8EDAFBD5D3F1ECEB1F951B23
-C18E0CC93DE2B369B21950C4DF4981DC69725872081E9C1B4556779428603DFE
-1339BB8F5569E649CCAFD9F354344782498B8755D881B07E9C0FE50ACF956141
-6E4A36301DA057C7078D52FFB8D213D3E9086F91BE387CFB33C7744950F62C97
-1589728691863E297CF0894E6C69B3C2981664F69F095933762BFBAA6D5DDD1C
-DD1D090F0C4381B28F07E61403AB616858A86E9BB765D09B30B28277EFFF409C
-FC8009CB393B3AE2D2890A808CFEAA804FFE8C42C0E05C67959E5A23D4B2D3D6
-7CF35FA9650B37A25EC2853E9259AE291DFCFEE4822B9DC9F68EC86A1312283A
-9A789FD180C3ED673D706352785AAF7E8DF79EB323C769DD86E78FEF1D074FC7
-F501DC0D268040A74C54752A5FB0648BBD0A7D3A594C2DB890145C6B74ED5FC2
-D41466AF4F10D74E161BC5EA1C274D222AAD86F1C0EA9D51F6CB7D5FE1A6FCA1
-BA0DDEE4588814A09E5794E6BB1994F7E5CD35E3649601CE6466C8157C87377F
-3D096CCBAC9DB3B66BA616BCE5B8D44062AC65236F294C199017CBFB8BD6505B
-AA7A22D146DD002D36772C4F5162D109227CA4B92E9EE314E43B52174C593F79
-C532E1B4C5E72CD0872DC9891FDC532CD5774EFB23F82FA10B6449FC05EEE066
-2D083C30C5F288B452FBFD5BEA23B7A19EE07083CBCA87A2503B6AC0FFF65497
-6929F65E9E88B6388A84408CDCEB2874BDC72D06B033B886F448948AF3F9E581
-C4EDB3DBF7C4F22FCAA0C54B3C9CBFF77235D5E8F6CB55B48CCC5B7EE1F56358
-25B9E72DDEF7598FF08036634989CB8A416205A8A9532E2F3071A8921B2CCD4C
-370B29DB1D9406BEEE4C93C2022E3075D4D5A94292212EAA9E260ECED28A438D
-2CD8711837287D130D76A5132C8E6E09DC1AAFA65CE31C376A7DF9062AA3E3E5
-F7AC561729F9D3FC358DA3CE1D296662ACCCD3AB2779F13C8FEB5E2F0566C1DA
-9269FAF2CFF44AD65F18BD6ACE9608898139AD229F73B4C1A310890BE0775C52
-A51486A8D721E0BA5E6C2126EADFCDE9AC9CF25EC0CBAD7208C921933EF4765E
-EC4172C9E2DCD6711D770085A752283C785124317DBD66DCA7384FE9764A7CDC
-A4109FC5278C13E2646034478D6A1781FDAF21D9CD3104A2261C412E9072B617
-65294BF1E3E1994BE3670A0A51E4C8AB05B18E337808A386E1FA85C3FA4E9108
-3ADFFE6AE72E28CBC0A8DF3BFED6777390591D1261F774444885730A5B3E6C67
-5CCC8CF984129C4408BB0EB714EB4DFDCF5F8EEF9F4872518F54EB58987CEA33
-F4C2241CCAFDF2566DD874D6050C094A7969BD831EDE4E40B138824196B460AB
-15E6014BA2311D103ACF26DB9CB79CAB968943F4873D92370D367FFA082C93B4
-B4461D199ABA8129AFFFDCD69E98F5C27E1F849EF22FF0FF625D561EBC90F182
-8271DCC654627C1035B5DA0E0BD56830AC185520533EE701638D74FA392403D6
-24A9350C7A695186F896D514AA511063B2B668D8E7C1DAD8EFAD88B78B90986B
-93F59E3F3375CC2F5A84C17D43857455404193CFE58DCD7CB725C71B24844B46
-8C63970C22366756B6B0CF8AF0F5F78080CC6B1E96207E232918719B23329EC0
-0171C78C0E5DEAE224C9FCADFB6A5AAEF93DB384F44C35B5CAE6FB41736B0DD7
-77DCDB5C06CE91E862327056CA27BB2D512AC904295188EDF9DBFEBE4175F55B
-37A3CDFB2E84A9EBF74761A345363A7F10F3E99DE38D1F3B9BBE32B28588B40A
-9D8A5267B485E38C489ECC00B4C81B92DC72B5C7051448766FF9D1FAC49A7BBF
-28E672021BA5CAA75CFEDC9A2439D47D0936DD4E7D870ED4B4F4FB7A85EB21FA
-AE2A93065233AB5256BC1B97DCDADFEEE49B4317EDA13FA14F6F5B0516535981
-046AA626A560CE8ACBF67EF302115944EEA6C17E6FC19EAAF1E46231F9B8607F
-B6B1CFF13E0F2B8CB7258151CDEACB85FE82DE96F72347E6349AFA9F4DAEB0A4
-AF8D5D14E2F34C4A9C51AB1989DE4C4B164D356C30302C77053ADC1CDB5A55A2
-A20957CC440FDECF7D32C208E3F2840D37D65E817D1F677C812CD16B67933CC5
-F3DA679DC7B150CD17BF41F89687EC6B4FB201FFB8B819C5B990BD7CE655A4F8
-DF77295082E3087AA86DAC4C16B145E85ED81D45A504E39389DD1EF62E7C5432
-B66D9BA1F8E2FF7D85F83DDF43FD9AAE7E60AFF215A22F79BF128CA5019EF7AE
-7DA8501754C0D1FDF05FD87E32E4FC3F1A4A681A7CA04237B072BF59FBBB75C8
-69F6837210B528BDD8F9E9788946458347161F55D26B52AAD431606632884829
-B3B9B60191C15E89FA1F20E9CF10A1158EB130E937E79EEAF943B747AA3A3554
-01F3C8F2A7195C32A85BF892753C0AF336ABFDB001C178D00631084D35257355
-44413849A5D963EDD74F7BFE9A9EAE9B7BDE07F3CBAA5B9998F792C6F4BA0055
-3406E4839974EFF70C3774E63E317636594CCA6C14A3772CF8B4032281B76F77
-33E1034E27BF474F0968F299C17DD2C2B8A0EA3ACD5201598B41518B14CB7092
-D79F08BE6870DBF673F60F816C69F440F112035C6BD22126CB013AA67492D9F2
-126970A7A8A0F058BF7588AB4D8BD180B8CF063623AAFDD7879E98EABE7019F7
-FD0F80D4002C7258F53E3EA9B8887D9D5794A7B3423200143FCF2DB62DFFB0D4
-B58C2C91A112924AF820541F7C4D85857926245E47EE4D1A08F9CBEFA442A8B9
-46028B56C398406BFAA30BD67421C96E096E870416A6C2B7E0A2F4A61294CFB1
-568EF5C36C6F91EEFECD67671213BBC7878455DB996EA4177790E5CE860A6A1F
-38B82FE2BFA86436ED46E60BDD900B4674358CBAFF643901AEA043F330790F9D
-E5257D95ECD588145CA9CE752EECCBFAE874AEEFFD9EA12A334FB63D6DC6B0CD
-E0B86A4889736F24BBEEF7FD381AE7C4A3337BB08C650B2A8B7C89CF13D9B620
-C5149075325CEBEEF152A4409F53A3AA3EC9ADBFEF6A16C7CC4671CDEC51006F
-E5C543189EF555778D3581D735880162627CED42B13E4F2FEE33C419AA518884
-E2DFB6D6F1C9759B260E7346814DC0A7A001F33A6372F945D060222DA5D7A57B
-440CF0C215F125B9D327FBF3742C7F74A850FE6BAE73CA89B17A598CBB738AC4
-564AC942698A45A9F81008164DD56A6497751C55F1BF3D1F90851DD8E2F8C43B
-542EEF57CB577FC9733C254D44E9A1CAA3102503031F638E68A59BAE6AC1C7BC
-3A34C7D84AD76D55C7B096F6AD59E94BCC1674FA04CBC0E549C968A814632C46
-C632C393FAE776A024C3262DCF08347C4ED40D259ED7B0DA5E89B688B3F35E02
-6015A9303964EA2D5F4AA60ED1A39BABCBEA725E3504741B5E36D9E63E248F05
-A908DCA18AE5D6ADED8026CDC356D70EAD9BC7690B632752079C0C45098DF5DB
-0E3D771E61D21B20B0360530DE3A32279D16DDB6B16EA1631979CEC0065E1B28
-3C4D59FECD235B616737229EEF4F35814A51D66E2119F6EAAC11BC90A26FC3F2
-804357330EF1763CD4B456B179D133533DCB37AC701CF7E8E0BC088A154FF096
-CB67B3FAF7E2580BD4AA600CE885F7BBB02327093C1FC596AB60981141031792
-EBF76D709C573F7202BC8F8C5F19876671062C7A3F13FEB3E1BC9B4D20B0D1A2
-D1CCCD0D8AAC6490BB3D412F3DD0740BFEFE8C9EB8D8303957D68688DCA33166
-6CB2E1E15CF38094933FF947E357D9759F240006B6B64A8B8BA46A6E43D4D26E
-7A54531E3A3A900FC427887043367A14D88D5D85CC010193DAB07C2D4914DD8B
-8BC94F066A8680337453DCFC19207627515CD5B3FFD2A5C6EB109B503B353CD9
-03BE5110D30C2356D9F751A4D777425ABBBEE997A0C37809989410B5988AE768
-8F1F6E76709C1DAF36C91CB44D3DFC812D289D2F470DEE365D2F3D3A8375CD7B
-28DDF31CE000B7F885DB7286E06975EA1ECF72006765EABA9F75EE34D138E941
-80EC363FDE8B122621A1C18124202F274345C2D2DB2E7075541860DD2531A66F
-71386B3387C2788E5F0BC9CC472CAF6A8F7BBE0A0B004D85A7A5BFA067EBE167
-C5B672A4DE0DF0A39467094774E472854E19EFB3D743ECEB342180E5A97A9254
-44FA677D4440CDC88101A4113CBBE7931433D7FC85AC2FB59AEE3175F22D9270
-1813D82E1608629C5D62E5344D672B8604E7206ABFC39F00A66100E4D560D7D7
-ED8FCF0368E48F3F8551B8CF1D8011C079E20F93A37840D969583A12F4632E63
-8273C351C4803F0E1E99AEB36D69E7DB704365791F4208139FFF42CC0C355812
-9AED12F62F6F61087D7550CDF95A5DEBD271F415CB72A13010A792F81D0A78DB
-E7E03325A4832848112CF0F4DE539A06FBDDB6CA46B78E59DAA89D061F39463C
-44B80A9B8283CFEA9C258D2F2CADEB36BD58C5DA2EE26D4E08F39C48E0204E64
-536E8078BC73D3EF26D9D249F20628784E3C8CC40A54B2C25555473CF727D387
-9D3F2D4BD0CDB02F41F597DC51B74D078271F71806E48EBCDE350040F8B76174
-3D4E6C8202ADD34E5B7319733EF19BEBA4BD57011A60C954FA1ACA3B14CD28FE
-7BE9B4062277F681EA3F10AC9F9835B5FACBE7B918F2C93049B3F23CE9D99E51
-B1295363F246128C2923F8A7859FCCBB211B7426B3B19658FAD95E3467B89165
-630A85BD1542B5AEE76C7D6EF46FCC2C933407ED1FD864C9116F2F1F3CA39BC8
-32C0DB66A7E31B9C17BA34EAF0C64FE043D7FC8B512C8A79AA3374A78DC6D558
-602AC803FA2833118F5EF378A54F70A14B6DCC65CFC0760870E829176BFCC9D7
-F9F6B3219BF6835B42EFE93141C72CEBD230657B1CDF41F74DAB153694FA2FBC
-039FE701EE119540F6E7C7F7B5A303A6CF48696495B902A8EBAEDB378BF291DE
-1D9BBE8F9F82C20EFA58EB948CF5D8EDE0F1C18484534CCF51BCF65CFC833C27
-0DA24723ADA64769F7A9756B57409B3A8D0417CF7379AFC924D683B05BE96319
-4595214CC1203744C828F37B4A03F0345A3A28C87733D1A8D80F8E09C2E43A7E
-AEA179623A29B4DC070B700D3EAC2B00555DC2ED46C834D80690A64E14A8DEF9
-17F06944A47B8C800F25CBD3FC4AE700CFC30459755D57EDBEB3AB92A62F5744
-B5D19C2B6E5EA782440088C609979595F13299AD237A00CFCD8B05A1569395EC
-8D152AD848EAD77EBE4DD9F43E6A6320299823872D2095B90D65FCC36C3A28C6
-81C54FA91BDC185A6A4DDF63F76D68C79052D4B73A5DB18C5D867E69A446F4AF
-7768F227B3B85D336EA06C78535D44AC8C862BE38E135477FF0E13DFA18D957A
-5C576AE1D3290C6C79B7D95C201D1FDE254D9EB2494B3EAC175EAA43AFFFA682
-0C0A0FC25E362525154D9A0E869E2591C885E2FF480AF885B115956A5197DD9C
-D206EE00C4742D4AC78B80A6B7B3503050093C7E4E00685CBDD042E9DF3A416B
-250584D8849B7DE26A378BDD8199BA91295C7081F563D65D8A768A936F3FC310
-A98915827CD8F40AA0DEE30A63B2CB9FA1FDB58B1C7DA3F0F1AFFAA6226A13A4
-56A1FCC427844A3BA1EACCA1964E9293D3EC2AABD04E5963F5E3B1144B0796C1
-A12FB28FA42F6D68C4811582A79A341F84343DBE17B6299F538C89919C618260
-CF0D632AD2F14235BEE555BF5F70BDF168AFB7DE2433424C4124B9FC314B5F37
-8679077441C0FC4F8B2D8E4F13243AA1952E8B5A3A035328EE7C8C09800B531E
-0F70026C7E68189D7C94BE0BDAA917ECCA799E1405CF618FC6CB26053DACF36D
-DFC3ACA8EB6D20F2BC5E679D61505D23047A7C93EDB79034C2829ED267E82A82
-49BD89672F310A69B949AA35FD8CBF3CDB387C48646F81F51B909B3B86A8CF51
-1FA1637F574722576198D8AECD2CD9185481FFEFC722D929B573E1FD54B7B8E8
-CBC86FF89C45548CB06014E68CDECAADB8369B39A2ACEF79D964FAF4D821E4F6
-EF6810D72718708E1E64CE6936E58A4DC928D3E9E4AA5FCF04BB2E27353DA3C9
-7E84D43E59307E078013700155356B5F134F1D5FEB290C6EBF21DDB7E46CB54A
-5E6D4FB62C00950B02741D5344E0C265211BB6F6C55E83C27348F8D6D2761DC1
-2098A0B68DBC1C5CE163A21ED18BDFC84144E364FCEAE6A9243609DBD1B4363E
-877F2E26AF42F34E13B6C2E1E485C8BB9C7F1391122A682B9E9D5F00868EA0F2
-8080D7EEAF14E89DFCC25942E8BB917A5DEE2246DDE18F485667B2430056AF40
-524E708DCDB14DA6EA1269AF4BA225AB7BD49C86EE3B9AEBA2C8B1530A8D72FB
-7FF7602257F185DC18F8C41765CEA7BD9C054DD0CAE1C7E725D2D8D9F0195516
-555596010C69833A45506984745E6321F2C7218C07828F2D52D9A54D042B0673
-9EC77314B4877225EEF527056982395EBEB7BE86DB016ABF99C941914BB8F89E
-BAB0FBD6D390D2AACB75E4A1C0E81BF8918579E91BDCDF21DAEBA4A3B7F1A144
-C603DB6B498B5639BA86FDB53E381D3BD62BE5FA1127DAC61852A980D26A6794
-D1534DAA3240798581929CED645AC2D5B0B64850B1B4CCDEB7F8E5116990D862
-430A4C5A282AA682FA09EE612E6912405EE9B7A1AD2F329A0068CFD84E3114C0
-895DC2A112F482DE127F4825FD0C0B1A38A548596431E23099DD454A7BD9EEEF
-24DDF1E299A3C0AF869AD77DB0382A32AF58542903E9E773CB7A2847C0598855
-C372BCB4BAFB7AEC7276AEB101602415D50C021A3144CAC78EF339CAC4713A34
-20C435062AA9AD9088B3F72CF88D541B8A2914A2144D4E3BAAF8FBC29ED32C52
-EA0A4B8CE949610FE35D78D1A1195D64EE01AF77418C9D49FD7F3DC2D6B6AC03
-0712C54E2ECDF64319343C5A544AEA526EC66F956117FF7C7DB4B171F6ECCA9F
-02DC60EFEA273E3EA814B810BB44BE1A2A9FCC6126DD9312F55095D09891ACE0
-42839B6E743F729BFCF055EFEF6B49395B39A9D937AD3DD6DDC133AA88421EC1
-38118D5339EE09008149BE8D2CBD7D522595D53F0A7FCFFB00D61FFA185F653F
-0765F9C61C732E1B6EA5FD070DDC048C1F9864A31886C0E68BA6616A34D3FF27
-49922B75F719EDD3A2C083C973C5A5756016393AFB68D0E8759628170B0641E7
-7B851DCBA6090DEB21F6B805EB66234E6BA5A3D1FECE2721648747568E01D01F
-60F0147F20EE9EFAA3A5C6EFA8B72203836467EE18382EDD8723ADAC84C7AB5E
-ED8774E3A3A94CD5D6806A93CEF48CF1B50EC9B387B40C2A29F0543DC9F70425
-1C18913567DD72E7811B907FE0AB9149AE3540ED2C51B6EEC62A08BB66B29C90
-7D09797FD3EE73E9E6047DB4A02A70B974F0C1F65E94D6817F9963A8E669B036
-0ED7655B15DA44DC802AF0F667EEE2C9A0BCBD3353F6BB5DBFB3B6EEDD712274
-2DFCE6BD0253A9F42CCA1A3DE7C49D39F1FB313FBC823D21CC2B598BF4D5FA4E
-9BFA1E4DE80D12182C38F424C271F8BBCDF82253E448A59719A13E80E3DFB1DC
-B0A3E4540043FDED9EC93A66287149B751883044F673492E625F4B09F79236E9
-CD69ABE887FFE13FC076DE57C84023C77673D69E2016A8343DCB2C60CF457A85
-086C8B6602F7F1885E1C21891BA9046E0396707B7E6C28CD4383ACE90D189077
-312C10E3E5E72BD1971148429565D3E87FA4CE5D3ACAF4F8D942CF7D6265E11E
-0AE49A2DCC9A25536F272EE9E49779B158A4212F060395EBB011FF00A86070D6
-5B25B9A7028C12B7423F50F7C6B42316DA90A769B9AF0A954AB962CD8889CC11
-41CA39142313F4B953B79261D7F0BFDAD9F07C17E8B82A5E0CEE6CBC357D6E28
-6CDE8C65EF662E95B9E3B86B97DA7FBFEC49766808FBB0A8DC78B81DCB8332D0
-E47303767CC0122F4C7FB3C8749A995E72AB1D31572D4D3F688F685C32171295
-A71B398B524E50C59C64F3E8AC9EE15D7122A3689DCD293D7BE7E7D42E508150
-31A359793D72EC27ED3F367F9777587CAB3BEFE14DC2888E1F43B828618DBD02
-88B10C7EB71DA8818CE5407101D00C4E457E53A2FEC98707F407EA519BF1D45D
-9C4184939FDA36445FA204D572FA795D9FF4FB7797D50FD67931007A73FAE4C7
-234A28CAE7EBEA14B545EF35C08FE94D5D75463B8FC02ECEEECB9D65B418F2BE
-B7C6AE5C12943265ED0258F9B06E7120A59575F0DFCAA167AC38A306F7C67875
-5A8AC63E125DD07BB43909A3C6DB9D28DB0B89B2C76A007670A22403FD8D47B5
-AF8FFBF331374F803A164A0A52EF5F4380F30BB4D81C892C46A5E75F6B10DC44
-FFD825A545C957EB39F4662A5C313D2A4609E680B46BE4C1F6EE4C0DD44C9DE5
-9B03436297794A81473D9A5E4665420C6A392E98E62258155F63F5F4C43638E5
-60FFA20829DF6056B10D647F1EB2CB956A3208D6BF939A646700958F2E2DEDEE
-DA5259D90360BD586FA73F0DC23DDF7640578BBB4F8ED37D19C5AD282DF493E7
-5E1CEE7F172221CB588EB3EFB4C2F1F6889C65EA47242250B28E67C86FD054AA
-946335046D1D686849FCC3A6E1E3142BA920303B1B0884648CCC03BA7C288F3F
-000304F1BD486DDDA1D6B03E6FC5F8D98A0702ED31E043C40CB6F8FAD751CA59
-EE49D32A26A70D96AC1D18F1FF57F22F0DF11C7A7596AC01814BE9F8569BBEC4
-80072664548BBB66EB0AECD471408284E98A297D15505E8A09A4A18687B0292E
-683095D5868329B4D1BC6D44D8ECCE3E0CBE1BE8EEB80BC8CC72DE4B8AE3F4E9
-C946BD645857CFA918545309318A9064DBF3E706909E1BA3B05082CA9BE71186
-99F9E5723FA347879A8DF1B90AA81920F4784CB2B812B0666C5143FA24DB3128
-B6DC3ABA582941AD2D087063F470E120DA9410F8C219CF0FCE60996175F85FE1
-B89BD179F58D75440D7354410B03BD566AE2E5EC520B9E3452A6A71FAFFA5C28
-8AADDB077561CA7429AEB1F6864C06E5707962D4A1993D445A587FC5BC497739
-237635C313B9A65D1A6B53B129439D42C31373AAA8F7D687A4F988D7C82D4C81
-932A09B76C29A27716BCD438D4D08BA2B467FE0E2C3B50E82DC04A4B0E351B26
-2C3D421BA2C7403A5D587C62DAA65899DCDA98BDF2BE0554AEA617CFAA1298BC
-1420CDE9EA38C1EA87DCA25E25F6BB1E6279258A96BCFDED6BB2F98BE47354CB
-FAA54B69E2E74E8B7D09F7E43E3101CC7133B51159B971D566FF27B6F4EFDB38
-86C3CA1D5F2CD03D0DD7024F6CE4FA5C8F3298F4C3E58F086DD2F7B0DA9CE34C
-B0477FC7AD5C1A4ED5B94EA6E145C0FD195736527C9A2727655E134CF5EC08E5
-C0ACC6BBE2D09FD95EFC123A77D1428765CCB7F8A8529205CC4E1EE8AB4BF3BD
-66448CAF34110D7A84EAD50BC8D60CB3C37A86DC0045F5F3B87F08ED2D4AE659
-94A75FA7F021997AD683FFF284CDC8A5D2F0AFE9827F6E28BE008EB1F773B7C0
-B161996761142A37673674F1A6B0AF2C5AE6B981FFA447F1C4016CDCFEEE533F
-A95296CB5B6D53F76F3F39F01ED4552FB98B24177E385B26B180E6586A63E815
-E45E2FD4C49E9F8E0238CA0701071C2B65580E0477683257F5167F5AA91051D5
-90D70DD37239
+D9D66F633B846AB284BCF8B0411B772DE5CE3DD325E55798292D7BD972BD75FA
+0E079529AF9C82DF72F64195C9C210DCE34528F540DA1FFD7BEBB9B40787BA93
+51BBFB7CFC5F9152D1E5BB0AD8D016C6CFA4EB41B3C51D091C2D5440E67CFD71
+7C56816B03B901BF4A25A07175380E50A213F877C44778B3C5AADBCC86D6E551
+E6AF364B0BFCAAD22D8D558C5C81A7D425A1629DD5182206742D1D082A12F078
+0FD4F5F6D3129FCFFF1F4A912B0A7DEC8D33A57B5AE0328EF9D57ADDAC543273
+C01924195A181D03F5054A93B71E5065F8D92FE23794D2D43A151FEE81296FBE
+0CF37DF6A338C826464BA5198991445EC4BE80971DB687336AE8F74B516E333D
+2D8AB74D362C559AAE6ACFAE49AEEF4F52E28C869222C1301D041E7A0BC1B608
+1BF728EF9E98F3A12EB2714E7F16B14E055FE1FA0EEFB058860ACADEDA9D0E4C
+42E3C6F1E4869471BFAA3760175F3FBD842755A9D7847EBF605F18293B42F557
+FBE2715002669091BB033E1AAD657532F34F7C66E4F04D63ABB07E6CB9D9AEAE
+78EDE8B79DD9BC87A1FF445EAA05B5572BB880E69F4DE1F82D7F0E9980AB0C18
+22C448B0B1722D3CC33C56FF287CECB80658B3AF5E7675BE82CEFF3DAD5942EE
+A03C955FF979E41E54BCFB5316A9AB8945C403A73180D0961416EC9C92F49811
+4B91BC4C788392994587517718521E416D469F69952149FF7F9224377EBA1065
+4A727BF806A112A7B45B0A1BA1D5A23683960575368D9EAC8C04753BF7465AF7
+95F25C258C63E4FDFFD0B412FD381946AA38C0B961652BCEC30322C47BF4755D
+9F91880688AF066E32FFB22E1A52DE741307AD3ED830D6BAA1D1F562919666DC
+5E8FD9862AC8600B0AE0BC7FC779252AAC57248744ACC8A8AAFA836BCF09B0DF
+9253DFBB1CB77EA8A59D42D1B18FF25E9AED72FA62FEC3F126F030F5D7DED9C3
+CF60FE890BA4A48E39E687BFFAEAB96AE542A6387F6624486037C8924002A511
+BEE5FBFD780AC1D4BEC3FBC47A930BAD0280D444259528B6C565DE11DE36BB65
+9BADC55C1EDA1A80458E98896D782DFB5C137897419602809F9BF8CA39F00C68
+EFB9E076FB324C2963F23CBFED28B9EF70EAA4E4B903225D1F199A7162AB239A
+D92D71C18B1B682D04C6A48926275BCB16D413B2A0E953E1257E0B12D8B717CE
+2EC84CFBC046A4338A69F454A469B12118E562B4F56C5FFB3CA5D357513E6FFE
+947A564B229C7FD873057D5C7CDF03E958294A1003B37D8DF565A70A00A3734B
+0138AE5277D383D10C2BD853EF806D3CCDC47739F0E374A3DF3B63638B949ED6
+4EC25869DC1C0B1F4DBDFFCC97382841D8F10F3635C792139A1EC462FDBA379C
+BE0990CA2E70FE73137AFBBF30CA54954D7E7377CC50BDD780DDD4C7FDC77AD2
+F3EB1169F14A0041F18160F43C24FAF556DB5D621709FBC544CE55424F7446D4
+6AC07A51C8CD5161AB0AD5084A96FB35D77F1CA155147DEF8D7A590EA6939514
+D4A226588295CE0007BA8A550895511C8D80BBE5CDFB8A50D249C3BDCA974415
+F5557914A9B805782F399E4078DDB6264F1A49A9A5BA45E284A5196E9828EBA8
+481D357B8D9E6ECA631A6204439FDFACE7D7E6A2392726107CB7D2517CD19A24
+FBE592C119626DB221BBB635B6EB84845C16A9585282E34958B961F4A543AF9D
+419B6A9105BF185FC767712D923437BE08A9C0EB92AB6792DBDC671029B6FCA6
+7F717FCE379C0F3B51C6CF042A762ED04898FBB4B0105C3C4ADDDC18C51BAA3B
+70A93666669547081D9246732CFF74C83EE90DA17F5B4F8BAF47FE4D81590988
+2858C9B96071341FA0A0D23BDD4947FC9BC2297913CFBD4FD6CA4303AB3179AE
+0203F1BD502065F90CE9BEA3B52DAFE4A29446082EA0E6B1D7AF1F31D0AD02CC
+9A7FACE2CA86E5FE0F6A425B28A5940ECA306891CECDB3CFC7A5BBC76B5D9E8A
+C754379ADE80B4D72CE493010317BF21A0CF4A0A55C1246218839DCA3F4D626D
+1F4161D38F54AD5142C1CEE95C61D8BB10FAD4B772F4955777AFDE8AE5A837C2
+A2BBB11D0BF5DA2E63D0B75ED421DBA9C789B281B01846B65DC572BA69591969
+21265DB722AE86BD8CAA3D887C975A617ACEDDFB7AAB341F47532AC0F354A530
+7662C089DA3939588774FFA16FC4A52555DED6D6F51DE718BF5F345C23C90198
+17B77CB8B5D53A5CE7A79F3E286B6A59F3F6178AC8BF15C0A15C1A8A95D03B60
+30EBE53DE328CE085CD9A1D49C69AA299C5B58B24334A546F6E274C1B534DC8F
+3289553F560C2F81E413ADB92FA0E7DD1C2F39D5FD268EBA97AB7335ECF28257
+96B4EADB7D0778706CB41C7E9C882760E7670936774A1088FFB2011115FDADB3
+B69EBD5108760762521C25C968C3E282DC3400001AC8FB1EA27FF643E3025950
+1D617BB8BB321281708E496277E11DD3AE0023DA9F25AD06B39C7CF527FED27B
+57397E88D3DF70EE4FCCEFC8A0927D6B05517E571B3E70ECC99F3CBA32CCD4DE
+B8BF22626B6C94FE65598A88AB90D238461EBD9A098DADEA4091AF1CDD7560EC
+8E1B9BC2321686E1759E6B8A270C8CB4A254F7368039602EAEAB86ED21CDED91
+8F2DB9889F46981C494C7EAF5E819B91C129F0740B8002B510014985E5791F59
+B16879CC6521D8E9F1C4C1890AC85A78022BE614BEFF318AB2616F0C3F02405E
+BB425D1555472A2642BA7686E431DC3FB8A1688B76660D9957C3FDE8D58109AC
+21B1234C9DDF3F0FAF93BCF7B2F88A001F23162E1A13E5E9118D51B485B70A91
+D0CBC39CF44413FD8686D9030782DAB58064F5B987E0402AF5B264B17BD31BD4
+FDF63951BECD73ACA6138854EF35B062D01F33073850D9C09A818828C581241F
+A625AB3638081DD0F00F946BE5450D38489CECEA4E66B4D85CC8AE0157E2AEE4
+A22A9313829F24D573101D84CC1784D1CED7DFAD5DD966601370C6CCBB723082
+A86BBAF0A5D867D0D2E3CA16E14E5109A29EF02649C47E12E88B3B397D65CACA
+DEB9940B92100744D686066F8250FF30E5F13D81428EE238A2E4E07ACE0F5C38
+7D79D4A336D0D26AF9C2B84088ED8ECDF94A1E3FADB45AFDAB46CAD6FF950B0F
+07AA2CDF82374DA76C56D29C80138841EB13F0D02ADD32F88B23E282ECC845F9
+BB9AAECE9CDC644AC2D49577A92307A83A99434F6493156DF25DBF0FCF2EC21E
+8C50A312C3D19E0609C0038554CF4FEF3ACEB7A833FD54B06EF0D617C2971C89
+E4C06075B09B84A4F78A82152B9A9C540B1D881313C2C74F20ED064A9606EC2C
+B56D7BB4797F1EEF4A9B13579CCF311FA4A4DFA62D80FDB7F535CC6526D1AAE5
+45C008EAF024B48C377522F74D939A475970533E645B1BFA81997549AFF26F67
+2AAE6C2EFA357DB3B525276EF330905688777057F4E4CBF584520A534A8587E5
+5A8360891E75A15205E8ADAC4A4E5A6E27D0C4A7D492216E4BC023AB027F37AF
+A8DC7579BA50204D5F45A51460C5BD8A5A7F87668CA6451137F2F59E117BBE28
+5C40820882A5546FA76F0CF49F8A6EC445F0647CC3227C400F56E7E9B84A6975
+E85E243CC1666DBAFF4E07EEAF3AF71BDACB30DAEA792F2B8504CAB071544F01
+5D66243D529C479D276FE22F7E275D9E7FA9C6EECA18716B2F213916E32C1D94
+6E32397B41AC6779543218E506569E3544803BBF9B404A983EBA62A494187B30
+8D3DFA4E1237A2E5E08224A60492C09ADAD8775B7CDB830520829BA164209ACB
+BCDEB2D574CEBFB7AE4BE72DF4EB1945FEF2458761AD8DCC0D378AEB7DA002C6
+9C14A665DAAA532B0ABA98D7BFB5A6151FF6703385AF7AE8FD315A492FCCDBCB
+B825707F9566B3B4943A3C61C3DEFDC31A843A2D67AB06891F3E110DD8C73D3B
+B5E4151B51D9F13905D7D94DB9ABBFCAF35F43B6EEE256B1A80ED6D1739D8D5E
+8C767F6F0E8704C5345D028A2A6DAFD9BB7AA048B8B895FE9423A7ACE858BADD
+595CB074A128DAFE08FDFFD6BDAC0114159A702FDCBF8013804B0CAEAD7AF38E
+FAF086A3248AD4FCA1401A85AE2F72E3E6956DC0996FE8ADB18F89B14A208A15
+13F81AF73D0DB72F78C4DA634ADE3C73756CAE6AF2E149C26316DFD93370BE1A
+FB4A79F77A67C07CB0A53C78367F21661D4AFE9E27328E077B522B50FD9AE2E3
+DA087BE481515B5DD7BF894A96A84A6C78874100505B7DDE1D22EFCE8D58B3AB
+313AB5495F72E2CA4E6AE22C0CB854302B9990372F1661D9F0A517F90686F248
+C5643008B3D29F7296E5C8FD4049886662EFDD4106E17C879F5D41CE84F87E89
+F6A3117C968B95A35940CC29C43E1E0DEF51C1E46B676301F40D59615C3F73DD
+DE37B72FF7105DB84227DA5241583272AB1C3CD97AE11C1EE98FFDB5E5F44844
+8FC41BEA5C54B26341AFF6830D9D0A5A2901B0653D8BD0746838194D240FF753
+E99750D3383373F453723D86BE97B571B8B84D8696089B5CFDD53E6C562A2197
+A8C4FB0CC690C27761A816B441029D3D306245052E0C41B53025D8CB7267CFE3
+C17FDFE348E765326F91AEB700CC49162DF748171214252CBC821493DD01AA20
+417D66DF47EBEFFF3E9BB2B0A2BE7D9B8C68BD570FC2EB0FA54CECC318F04C43
+19598BDE93F2F13DC7847354C99059AB20593EE51E94F9D4E9241869D605AAF4
+9D9B5FD88C3798A039A67993C5EC68B6326B132E647F67EACCA7F7AE7F718D85
+12666E90D7C73EF210E344964A38228B236679A2B18F5E081234CAA2458F8D83
+3F0CA308D19663CB12EB904076EF88E556407C33C9380A6A3D68A9EFE65387C1
+A1BCD2D26DFD2AC0881EC30E81C0A4E76C244A2BD822EE88C4A60B480D107E68
+90E419A1F512E865BA922A7830909BC2611A80931CB2E9344529586726614D94
+3AC5200FB9FF68AD9686506C5EFA8788C0AD0251AFE7F95E84683380CDB421C5
+B1A783B6D5F3A6BD1BC1C14B363DB01C87C0796DCDD5BECF41A1A9F43183CF6B
+82C2AE49F0BFDC5DEF7729F2E638EE6EA9E4D059EB9BB1B992AD8C82D501A550
+1BF73CBBFE740179B54E193E84A55DCD61B343C1852780FFB44248FC9426AC94
+AA2B3FE20FBA30F6C4D1E0FF3EDCDD8C0F57CCB50CDB0EFE2E04A8927E239C1D
+9B026C7929BB48461D4D695FFC766C8A0E545B1BCC2AA068D1865333108E7985
+2D93F9B00EA0A90939D0D3840D59B6CC0CE2C147B2E1A9A4F14270FE3ACF51D5
+99F7349106165AD627CBBB0ABA01ECC6D3A14C1DC1ED23A9DB9865BB4396C51A
+31ECD001EAC94B33C34E29C5611148EF3E55DD61813470B8F3CE32564C749414
+3C93C77EA5A3538A0B5AE3FC4DA32813B06772E0E48E25BB39F3F6FDCC077E86
+F86FA50E18FD19EB2F37311CE87F18F3BC85CE7FD71CA92D5C3264E34E04A2E5
+70C79D99F54D6C6D9D527AE45EBB48411221134587D2253E7C8ED7658EDCA34E
+5E768DD14E0200470F73C44D006CE8CB35DE1CA3EC10ADC668B0662A7774C891
+84EC95A31DD872F0728D9F65CA80940080E04630BE4DEC77A2C49E3913C39978
+BF145F8832AF2C4385EBCDB15F9D32C22CBA0CF950877717D6F1591D7C0B8047
+8C9BFCB16AF7124ED83137695F3D69228DB633053208C29E0ABA1B06A7FB3EE7
+5625CB44927E2DA6E038A6E62DEBDA2D96A03177982D8FA33BAAF4426E05F4B7
+9C1748B3FF7691F9888E7FF864A10B9DF761A41E6B5CFAD2BDD7E1C4924AC97B
+F4B352705316DD1A58637CC12D71C18A5CA691AB2AA8F171590EC24582B1123E
+94D4DC587D8F99E18A711776BF4013C96446BFECFEE4C809EA94B169088024DE
+0CBD20199A915AA406F0BD5F3D63D1467C49B4691AEBBB35ED6624F2D7BB74BC
+E80FD92B9FD04DD9C2BE9B6FD29EC7EC07FAB447511C61DD299C783BC09AE2A4
+7B3CBCA6A20C6631D06D0B2E2482A50612BB7C29B7E7D0A205EB0E8436702581
+596BC996ABD58CD8D5BAAE4B1478195CAFF98FE0141287296C4EFB8D2E7A8442
+F0A3AA9F9264329982532295A176BA1867EF732BBAC49AF485D9D0F7130F617E
+7F7DEEF935874D55A22240F8EDE4F247D5F73481373A392D40A8076BD91079E1
+1CE5998BA13D48D56B49A92B4A18430E316405D2E2E391B496A1934671FF1785
+AF42BA3B2D14B8E04014437FD194455C50289DFBA61B5C377BCBDADA48E82DEE
+4E70EF5E9DC03064907BCB8BE4D59DE069FB0C0CB140DA54708E630767313F9F
+744594AD8A499CFEF733E640A11FD74E46A749F9C7D18D49251BF85C6EB4668D
+67598C31A8F90922FEAEAD4B83B6E7184567DC798E4BA1C4C9B3461A478D63CA
+054F13B502DACB674EB49D6BB935E5EC82BF99FDA7D47C581AD7F940DF4FC6FA
+6C6D25D647033AC69505F0CAC58DE99087F365531A6283CB89CB644688963C3B
+8B2203A94294E58739EF23C7803630A1F9121D62BE1977DE2F41687C8CAF87FE
+CBD7AD3B98E0D95C8C6E1A7CCB0E09465AA874DC90A0F5DB2C5E7C130297FD39
+EFE63B0350B5139D09E6864D22C3F1150B29196E40EEF9723E71158B7ECFB8E4
+C426FEDCD439420B7F1C251FADA347C9A2C49738B5A17922E1EA93CA7B125B76
+57449EAA9C1D591CAD327D0E98EF2D44D614EE9ED49DD31ACAC0B956620B6BA5
+5BF6D08CA7541059D5ED2EF00AE2EE95488F5645BF6837D9241C0D3959B7580F
+C9ECB2BCF3E65C07D52EC9CFB21C11CD4C883E44C173214C900C44D2E1E43DD1
+CE8DFE3DA93C38B548BC4EC46FF91F30CFB97525E1FD4E77686433B20BABF8D2
+848C1CDF1BCF185CFD7A81D2D4BB826E837E2AF35CFC4F419F698DB0C43E9F9C
+B0FB628AC9A3CBE9B1FF4A067016E70333E78B32AB2D89C483834B31F5808FDB
+77492E099F1504DABCA5722C7860CDCEDB2DDEB512FFCC7D287F4945FD711F28
+87BC3D36173566B81FC2C1290C717A09697DAC6072408E20926D39270121CE58
+3EF97CE12EDD7F87F2C8CFE36C3C0400869C0D813B71C425343EE0CDF717BDD8
+409D5297D0F8F7FDEB0257C0A391F5635E0DB1116058942FF3E7C94D5F2873A7
+A3B0ADAFC3835AF2BE474E6741319BC6695FB37F59AEE388F81F6E66F910000B
+72E6BA7531B4378CEFEEDC79CCF4947BA1703823B5AB4F4AD73D9615C66C489D
+99D68E49C9BF765B7FC547BAB9640D51D5A7A2396507AB5A4DFF3D14F52422CD
+8FCFEAA06A56C6C7FFCD29C9A7A59DDD2A909A9363FE5F1E9629616D25ED38CB
+E754C059E4379318CC491C3B1A90128693AC53F80F8210FAEA7EE638902A7D3C
+82B95B3F5AE340EC1B648DBB9FB679D6E80B7F426D8671FE7136D97F51E2D2F3
+C9CE9183E4061CA40091A2A70DBB9ECBB19CE3F65ADD0FB346B54BAB182E2CD0
+EAF4C0F402C25573FB344EA771B297BEB615FCD0595172E84ED2A62FF8962634
+23C19076C2A9ECEED5135994EB397303A9619C76DC55E032DA83FBA441BD484A
+59F70A5110A8927F6239A14D4E223E189A5462E4A92EAEFFA4B961A2A32B320F
+C2B4E8C1821FA67A655B5042C15E4DE1FB3652B55078DB123573C4E986B19DB0
+1C5131F3DFAB271C30A5476B4A19D8FC922E31879C34BAED94C07A4841B8209C
+403369FB8E842610D1EB4662B6171A4465FD0E819964F62EC5B0ADC92F08CF90
+1DE0B410FFBAD16F6D355E8AD72CCF67961EDB6CDA82398021007C2D0462E893
+75EB0710AE4A6CDD15077C9DEFC5774EF4A657734D703CE42174259B58E5277E
+0DF26BF59AF8D1A3E7DC12E3C12AA4B67CF35B19962F6950C2020B698D971B35
+82FF84E72F72FBB0C54A112BADBAE6C4CAA358BDE6A705AB59332C3850CA3D25
+C7564499BC1319121CE0D93218210C68080AFF33420E3CB3A48BF9EB66BC07C8
+A79D8CD8E78C200FF7CFA3DAED0B9E87E6141C88B436D8FCBA50AC195FCBB9BC
+9512B95FE3A37FFAAB39850FCEBD4D50A243EA416E73F53B4B00F3B6EAE0CA06
+0693AFFEF215D00BFCAD02E45496D7C8F5E99EB9096FC4300D038C1AFD31EC4C
+5ACA6B72C1BE7204E37A4CBBCB1EC26AB87F2FF82DE20601025169A5FBD2D060
+62B5B2DBC288C79C33B596832AA18D730AD572C6EDFABCBD36DEA87C0F323C3D
+6E537AD3B43C6F3A905597570A8C6B0B4A5E08C08EAFF9731E745F2BA8ED0C0E
+1ADF7821CFCD4E38F3F4C243CAD31D9F8FC68B9043740852B4CCBDD37BF728E5
+648215961FA82A0C847ADCC5187331D0863A4573BE520C02CAE14AED4F06B3F1
+FB4A318AB54CD86DEC824707B29F858FD726A167F2333855C0575EAF4EBEA0B6
+754B1775F967140641FC06F82B191244186FF347A351FBD8FA62E8C978B21F6A
+E124929876488AFA97FAD1A68A0C3496BCA768F4AF8016D7A65BBA3AAFD7F5FE
+E75FE714FFF3D54D09C9747ACA01CEFD260985C6E87477C9C7843343C7E9E3F4
+0537D461EF019E046DB8B5BA258462B2FAEA1826B3410BA3333480CFE0DECE61
+CE2731FDDF7FCF2AEF7CC2B1EE7095F480B3B27932ADC486BD9CC130D94BBD05
+43872FEBA04FB8866ABCB4D379696E73B84BBE98FBC4A16CFF22F8A7AF754624
+2912C228030FF7EF23D51DD61BEB5171AD31E2B630475E16B6E0F3C78D44AC30
+712D165DB658FDA800798803C3CD32B841E159AF0F748400314FAF5038EAD574
+57D57A34CABDBE4B8D145E439A11585A0CEDB161559AEE6459EB57592ECBF980
+681ACF9AD4AA4BF09071C600432BC884639C5F2C3AC4B53CA6285AD78B3070A8
+4912ADB3C55A03A6E1A795BE1026EBB6C6E90DB03B110D3F098CB97BFFD836AB
+EFFE06DABB1B3AF419BB3E10009AD2DA9CB7B01EDC45BD60B4BFF2C7E54036E8
+5B6BEF57D32A76AADAB3B1683A49F317F6ADC62E5AC8BA5514F1B560FE8C3394
+7B6536F37C106A2F7A346EFD1B0279949DDAB840CB184F55E74A1517222483F2
+F8DD0E850E93B6F294F711DBB234D59406AC5BA131B55185128B95723E5F064A
+8C00EF33860A0467B3ECF05E9CCAE87111A62D6FAE5A661014C7D1E7292AF006
+F77D59DD6993FA330DFF85CBDAC37A18D22AF83571E74E93E55AF28C9438D71A
+CF5AADB51C830DFB43104B9094BCF1241DCF70C3481D70B0A96718ABA59A9912
+3D012E528626FDE23D941ABACDD35F58F19DA750BA17D5785FA604F4D91FFE46
+B0AB1158E2E16D72C6C1D563E647AAFF306E3156A8DE6384030E1F83FA970026
+795E8C9905CCF7E0C355BF05638D13FA6B0DF34FC42F166AC2B66607E3DD6A0B
+0F19D8DBE03FEB652D9962B9CAA991223F58B3B945FD7E893EC56412F1D6DCE0
+2BC705DC83EA7109A632270F024264A2DA7311C4E185AFADC8D2C6B58C0BD2C3
+4B38AFDB4EFE7E6E03F76E53C4B9751C138349D42FF32951B446AAAF50C4A9BA
+90650B757DAC00A06C047685725F0D1D8E0A7534B26261AB4E79B5B88182AE6D
+E6FBB991E6BA763687CC9FCBDD922BEC387620F818A7389157AB8D41792E7CE7
+649B1FDF4B05EAAAE1B7301710559EE1E232AF70DD2E137157657237DC466C09
+183D1EFD1439003BF9D14D4CBAD51274816E094ECDD8D4477FE9D58122AA92A3
+1BA2D3F48A9951FDCACEC51FF9835B21C8BC0E1ADDDCEBBD3FF56BE075236F90
+31A61C56B7AFDDB9AA121A24F1D48FCE58E1C584F05B5556592B80824BD2F9E5
+88ED93DB19CFE5082E12B3158444A5F955A2392D840B3E52C74651ABDF75263E
+68C8B20F6108EE6EEBDC836838FF413958C294E140FB3679963224E6288EF036
+654CDE66C9FF8BB505AF95F29A5EE796B58B7205698375727743A69920D43D65
+C1F9F203722B0C6F400BA4F72AF4973CD6772BE36E304EF8983793547EBCB7E7
+5B93EB6160FF8860E4B0DC3BEB649C7D8E8BBFFE919E67661C00A7AAD0E92D38
+5BAB4A07BDF83A31AA8CAA6B995B8B7D0CF168E7488D4CD98A7AC3F0A03E2BD1
+0F6D9E915C1511976BBAE3C6000D428A52114A7DEBE35275E642B01C92BF9F8D
+E48CAAF7DF91E17359FCB334E5189359A26848FB3D21368120A93965C5E695BA
+49D584FFE6A7463499E10AA7D453B7B39A4E69395C9142150AFC85B6EA0D59D1
+D2749DF1E7B14F7C1977C9117A1D7295F527D4FCAC5610CFCA887632DDD84014
+7104D659F4EB53A4C92D553EFED124192BAC43D6BDEF60F3CE6A8F7E1946A2D0
+125435F0889CD55C6B77B5BCB9A76D142E802B56CDF2235A070B88AF1CB857AF
+8B11DDE2A9086BF1D250C2E355A4C72A20956992B43013F0E5258165467AFDE4
+9CDF57B377F18E497004A59EAC9D60F72C8138AF828A73AB373D97AC2654E2D2
+58150C99F15AC779ED77FC223B3E7945A29C8F12653ACA9A717CA5FB39209005
+2894F70E3D5F027319264BD398F94E4445E4A4D54E3CA1EEC859118192E0118E
+78F9ED10596D2F87816D710DF57315BE9FB0BDFE63E74E4023A8320DE5CDCEE3
+44534F95653A5109043AB0AE1E838A85538DF788BCE8C3603DA2A51909B61DF6
+046778206655ABD87C14583EABA345328C776F58DBE125AD481D4E922593B8D1
+15972DB2E1C6BED5870572216EDF4C19D7C12ED2C37E49E6E6CF552B0E9D9EDD
+4F659CB21F3EBD36F28275D69105BF903309C8A7B20258A9642B0541E033646A
+61601867A46F2A577265222BE3978E6F84C29576F2DDFAE642CB5F42DF45FB24
+FA36EC2575A286E4CDFA7F27D535E408716EA40BDCFD7096A5358E9A98F123D7
+92E8314B8D51D763A84993E7D45BEA3195EC3DAB2998DE69CBE2C92A15680F91
+76A05F32B384AFF81750D6A1662179FEE5C1CA80AC689148F3D99E0726D68566
+2256010D2B2274742DEDEF94B338525FEF89E5722CAD34EC2C2BA8AD1E7A1CC4
+E5B71EAA6D0069DE687C6306C3419A4F9BD7E5C9D9BB215E410FFBBD6436B57F
+C4B18AFB2A3412EE490726FB568CDE52E15CF7F12B360DFD08F6F43F295C4E9A
+6FA45D706C707B37FF0CE27BCCFABFF5417DE624A266BADCA629870EEFB43B41
+C5859A5219C9520087C213583AA21695E020B4A4743C06F3A1557AC56CDD305D
+D68D482A6D43F8E9E6135EA1C1F2AEABF167FF4869B46F57207502A39DFD1DC1
+25270E5A3BC02A042E2F98539F53A563364793966D809E17DFA9C91089D7B8F7
+B0169FF8AD8D88BB5903406070AAC303369FC4B7CCDC42105A69674BADCD17FF
+F90270B5CA84DE742E5593596E1ADA971066DE7A9A6AAF884C9312BA73313289
+28F80F803BE810B0C62278C925B41E22441F3018DBEFB30E9AF1C11712CCCB23
+E392DF6721C557E3523478F913EE3CB5CD1A0F6FD60E32D5F00E281B87E1846B
+C629E4896288B86097A2F02DEA398F16E09681886C1453CB71FB4EED50EA998E
+36F164980A2663428298DEEC9851F7174394DB1D21EFE96A3960A7BEC512162C
+72D1E85E823B0FE1600C36971B94A505A085E3FF9BE58FB6205ACB7353C03FE3
+71F64580C76AE11F25425D9C0682F42E9316F5BFCEC0F5D8D9D830FB41AEDA9B
+C02D1A77C1CE5FC6442311150BC3E4ADBFD779DC186592D4A548634F07A16C26
+B79B9D641EF2AA8FE056AF840F16FD232AE1A530B8D23B99D0984D7E98C90B55
+CF4D97F40CC83455CF898CD9A6F8051C30B151219B60F9468790F0A7F4CD053E
+542E1EFF158D94F4ADBF05DAAE0581F56E0F5C8952470EA0D1245680A5AE661F
+D2C83B8D7339D55401690648D47AE9828D233DB32F6C9D9493255E9BAB57C9D5
+3D08E5975F1A844CDCAAC830DD6D2B99C6BE2D2690726A913FFC41DB353B905B
+5B6AB3ED132B53F19F52A6F82ABA5077E0E5E7CFB1087A01B311E943CAC3F44D
+72F28E989AD53808A158A37E73B8E5AB83A920AB36C07BC8EA85A9C78B12E68F
+359661C847BCAB2A6D223CCC012528D868DFCA908C09C0FC39785CCC20D87781
+F165109222779410AF291A3655E2E8199314278E52CF03F93F02502D878583CB
+F75E27B85DFC0B00A2D475201786A32059E04B7F0FAD834A622932600BBB4747
+8A62B566D161E96ABD0195F7164CD84632372541A039E98F75B5B3947281F5B1
+FDD2A16FC8A06A9D16A3886216E1B7DA3EB4E07D25BA5841A21E926072050BF0
+FBD35652E7F3E33B911280C1D2BB6F62CDB5F5CC92540E34949B0BE3E8591084
+6946C8345A0A04BB51574D376C0BC65C7A10F2B1109DB99E62B75B591830BED5
+295C0204A5199E70974A10E61F5DFD751092EC081D9986A1D39D9035237AA552
+CFF4CEAC9CCCC5E5BD17E52E1E80CD0EEFF7F54A9F428D2D6EF035C8434FB215
+1F64D22D77A744D02291B06BFAA9EF6602E0E0DCDE7CC0F45A778D9793FC5281
+8D4269E2F9B61EDC1A3B8D8A75E65D4DA5B3EAE95153EF55504373C24C43D768
+A6D1E210D22FAA4D08F99474BDE3C4E0CBEFA6AB7F6E0153AFE7B2D3A6FC2B4A
+9C4955C15873D2460C94519A5605040F866AB6DCE24200ACCC6A7F685BB96737
+5F82C2B20D6D33E8C482241B82BF228568C542758207B3F26BED5AFE57A0BBC6
+589A676A958E8B444EB839F1508FD1B8D995969BFA5D4DDF345D536F24DA0052
+6C626FD8800C04C8E41A523B9DC0C4EE10D456995C2304C36CD4E867DFE91510
+36D534CF0C8E60CA8DC1815C6256484010BED831F0CB0CDD8FA8303A504B7BE7
+75C5DCA66AB89167236F6983219DE903DE58DB7EE2F04A501E573AACBA610D77
+F4445E54AD79B901DA24C399DDCCB7AC66249E53DB1C3E8AB1B7CD20F0183412
+D10E911CB758B93D6BABECCB29621EC1F1487183603C68AF7130E06413CDF3D8
+9E7EE2263B5D753ECB3795E8E6ACE1BD5EAD4E646F1D76A482BE76D09DE51427
+EB3CAF3876095E404BBDAC2095D8BEABE73C3E97725C34EE9D4449A1F998C318
+A85F8D78F772E4F67B2F84368E1E77BD9B9610BAC6FAD54E047FB71F824568A5
+7AFD5293F486E26BCDB1D39972A30C87D4385088F7D5982D9845F8520CA165F7
+E78E259C139520722D213C9BC811979E84AC1C2054C46D560135F19B87D7539B
+E851A4F76AEC7773F782CCDB2B6DABDEB5711E4CD431A86F5CEFEA6A4C60CC03
+1A1034EE91202F9941FB29D9486042B3BF9A70F9FE0B6D85C50D9B96BE3EAE92
+03331644C25882D3CD9E082D3A2A52798F51DD903CC927AA44C766B782D5A9B1
+54EC47ACEC605C2365E206980EB767E1ACE381154509BADCDA7C1EB736DD01CA
+DCB8D7F7F235A8C7D2E34A5C989C2098AC19067AB250D7C16ABBBD2FC8E4D79F
+F07B9CD3667D19FBFF96BB389F3F753645BA0DEC0A123621D506BC31E9095722
+10EDEE90C92670CDA95C17E4D7CAB6337C8FC0F20152DAB6D3BDEB16D336F478
+FE9A56C823B84FB62AB0AE6C4DADF7A0E7371AB52354A1DF0E9119746808255A
+95013629C536E1DAB1D4288171244D5F5135003EA03D23E222E805EC2E00271F
+9894A9E82B1F9EB36061D92836F31DE252E30954AEE7CAF8DBDD66114FA2B2F9
+9CAC74B353B7656E05835172735979E7DB48681B641A7485F18E460398028B02
+AC62210C0F36A7FECC771106BCED57DF6334EE566E0FE2BAA03E6557AC99D81A
+CA025C8D1D2719861FB05F3901C313AE4189A403BDC9A7D648CAC3561612E0F7
+3F668F58CCCEA9A1C6F4229D575B397FF16FE843C9875D7007408CEE84F6EB63
+5DB941E9AB63B18DA328A44D401AE71A13CA2164C4A5BA7BF78B0EF2AC20EA97
+780F5BE7AEDBB15A4D135BE7B322254E32EAEE7DE78EDC69872E6AA4D15BABF9
+EA2D5723EE875ED677D294CE2A476731E010D3C204CA8063D56F1EA7FAFDA2A6
+A906C3F80DB19183D048D140AE163BD785E3DD7545432F25FC63D2368E506EE5
+6326065BA138CEFD02AF2055D38E5918CAA4BF97C94418EC6F3E14F70140CFEB
+432923B2EE162EA0C3DE430E908DF4545B058ADE35FAFD0C82AD8018ABA534A6
+946ADAB80E5D410F034EB0E22938953E2A1855387CE4FE9A5AA9CE5A74864B19
+E0E9100B09A76442AA75BB5CB4F622AA74319EDB66E30F16CD3FD203362935AA
+180EE9918F4CAFB782E0741EE6196B640E3F0F2AD00B9E9EE198C85AFDA53319
+180EEA95DE8A78F9781B9787529A75E890E9014A2AAF772520CDEBD3DB92A429
+E125581B1CFE03FB7570FEB4F821AE0889D05B9E011643EF88E888801FF81457
+ABFE4B89A160C84C69B129A8434EA9F396DE4011A4E89DF1D27967646FAD2339
+78A9F37E1F730EE96EE3A1D98851C45C5F16122639B326DA74B63F637084678B
+30DAD882C0F0D25AB93A7A4DE413A41381A35E2927D4444257AEF9ADB5260A35
+8E74E6A8CC720DED20CA0C1539FB47F96156450C57E7C0FE5DEAF92F47F2E0F5
+BA9FCDBA25BF9B8326004755A4F4008EE63FD7789666788AB1F3613AE5ADEC78
+0A5ABC85E7DEB5508BFFBA9279C50EF9D5E9907E38EB0225C7562B8D857548A3
+EBCFE3A8F0EF5C3DB8955FB995BA5A482F9FCE4987FABD8D375AC72E4FF7C774
+F48C17F9B55BF5AF12906AA0FAD20934C7F080C49BCBB3F321A222ADEF47D283
+859755588716B89EAD7AB3AD5CF9E0DCB524EEA4A6353BDCF51A5AA45F7F830C
+606181EA7158FE373CADAEA1EE6B0528D95DA03C7A03A1BB2CCE4136198972BD
+445CE59483ACD728B42C40DB7A072F6C82C7F4FF01F8C9FC525E4A2DCC965FEE
+20880CC3A8543F15082C382C30F4FE654A6092B10DFD020B790B2D74BAC86D04
+D16E66EED137407055A86070985E41312C5DE0E899EEFDC13C070CFAA40AA4FD
+3CF1B702A713E877B3AB844E8F639ACFBCF275003F6A3A1B5AF4FBBB0AB04AA0
+52CF9E7B50CAAF2A7D76AB50236694CE617A75AAA31C0DB404298234666CF92C
+9D80B402E7711C7F5489BA6E08CDF0E47866D8EE5F74755BF55B10150D59CA85
+3395C4AD476C07C9E3F2F09698FEA720AA3C1B63611CCB1B56193594A24D5F41
+E6ACEF5989585051EA8650A20D727C179C17C40C6CDC9A7B796596EBA4BDF916
+7A3110FF3D5400ECEB533BFA9D16A931FCFDFC36C1C62F7C09A0AB3E08489F4F
+D6ED312B44B5A8FBCD38F04C89E3BD0BD14C2746C499B08DB1C2922CD7AA770F
+0506823B6007604A490950D6790D024FA38A62762CD693EA10A147CE22107376
+AAED22AE7F02FE1B4810A96A3840741F12AF3E57FC5849A4DE53E296A2B78E7F
+58085E498B304CC62F513ACDF0EA9EA29E8A39E67AF057CE3735E8612F98D9EE
+77EFA7B090BC8169534E3FFE43F392292D231BD04591AD35BBCF6AC5B29E805F
+79994B73DBE38ED215A3DBAA3E4FE249E59CBF889E3129C99590536BB69EAFDE
+94946A9E58AB3488F0E6B820E64D50D65C4D399AC35894DCFBD1358802F5C0F1
+0F628AD4048701ADE6522EEE704105230336F14FB81A3F2D84ADE5EEC2439A87
+BA5A647767EB8A7273CBAE6DB0E5DB87C00AD1C8CDF539F6D00DD61F102DA4BE
+EA6637A9681163EAD32D8913200EA059833DC67AD40A0B69427A588F0DC0A93E
+E86697619084EB4B3B3952EDC511879FC526C4A702B7E6453B16727E51610E5F
+BAB227F6C24874BDEFD5428D9254D4A87526A3324AD6F63557F7296B377CE53A
+A6E27FCFCF9F6170289187C5F9701B35D822E764C1E25296C5747A216384DD55
+B641F02F3756BAFDAA08B7D2BB293D9028D8392551F5BE3C9906926FC2F5BE7A
+3124813C8AF7BEE14C184AEA21515452C07B0D3D4EA3AD6AB8F9E5B7093112D7
+ED9E958AF921B6EAD2DCE5CC74D651996F81F5A5EC55D438C7E4DD3248862F57
+3DC28CAE798B543C6B8FEF03B55B158C96340D27A5A57B39A53883D174ED7A83
+0A2CBF5DF06999630A74A63B59888ACC88E96A13BC788F02C5433A0044D86DBC
+7F8F5D5FC2CD8C6AE4E0867DBE1140B2E2C90F4CEFB00692765854327A9A73CC
+9B52513076AD8B265E94CB4B8FC0033CEEF644EDD772CAF83DF7F0949BBDBD2C
+F681D17D257787B3B93C4FC5B5ECA7DC18466FB5DD0F2A3D360A9B35F39D57D0
+105A0A5FA461AA14DDF1A95CACDBB531755D85867336F5491A1B147DC530EA8C
+1DF6660FE3558EC163C8B0BB9E4DE424AF228819DE1EB8168C3187C6590372C9
+2FDAB4A0E5A08F1121A7F2642946DDB6D1E278B44F9337D31DAB725A2B6250AA
+4CDD4FD6D91CC78EC693AFD3FD30F697446B3B45DB48467CCB4903C25B0BA209
+24EA4BCB450A1FF5153ED0FF51C4C2767821A63281070E8458501627BDEE7B62
+166A66F840493795981162D9C4F19787C4EFF2058CD685DF1DB94102FB88F631
+87B546184C81D6953BA2D749203FAC6520DFBC1898DD01D18F7A3ACA2FEAEE7C
+F013E36C83CE5B56A79FB90E3F3BED6CCBE8433C8A9699DC7CEDB60BC1534271
+4CDFE08C178BDF612E4EB8FAD203B08EBF8D43F0762F09E1773715E75138E932
+B291DBBEBDBF9269833A2605A3DD5C36804077C7A408A1055EFA2A1776E1F9DC
+914C5965795508E5A65D185596A37BF91CF5D72FF27BB20FC9013F7EA391C892
+8BC7C738413CA8D3FBEC8E1DFEAE2DD22E768B5D503A722A430DD6B88E69B2A9
+1AC29D68B111019886484CCDC696C6A87F1F67462D3232C84F431588D38EFBAE
+D8C9D1418D81561F75632154173FA6ACB8A8CD8B7DB19B50A54A265C0CA7B0BC
+DFA77DB810691538ECD0D9615528F7DDD83CD80F97534C7B79ACB57E7DD37038
+B0FDED1E2A80716D2687C4ED42669C280CC14A116FFD9218C0FA289D24A03E51
+2DF267ABC9F9AB70CEA856A0A5EC28017174BF03E32ED851734DA4E20C282201
+3090E1A218C3BF3B1AA3B28732A4D8F552E9A9163BCC6EA10F708972A8BBA763
+9D489A1CC41FE78302CFA605583450FC7215E141AE43AAFFEB28C19411D5F5FF
+2F43DE7454CE4F6AF1A4CD704E8EAFC757AB202753DDF31D8676730D737F4051
+54A920003A0F336567F245356C6EDF40810B532AB5B475E116045C7798EFD152
+D76F0B5AAFD5A581AEFDE044360CA79D5F6776D75BCDBCDA149C2CABE1CCD237
+D1DD3C5166D7C3782540C9EFD1EB34B735C943A5CC7F7B804F92110A5AA95E7F
+8AFFD2884BB7522392AE92A89913DCEA0F28B7B89A244C992A15D0B8881E6F37
+D5B1ABB54B970B61DE93578A12D81E4CC21861BCB1D287CAC00502477850CC0D
+0DDC29D2DE7B362703D7CB938DEB1A64935B5C07B25F589E3C2369E1CC12CE57
+5BE15FADB9E65068B94B16242D3F0181DC92BF0B04C81716F4E197F04C17C568
+416ED85007EF4CAB706BFC780F584633922547178C2D4AE60A8D2B7BC2628674
+15D8AFEF916B6A2EAFB651697BB665A9D53DD0D0B569F8270C1E35C24DD5D2A6
+90257BE909FD3F2FC2BA7EDDE451764CB87897823AFDB0D2109AEDCC5087362C
+783D3276D3388841FFEFE969601A775CFC5AB41137D5E2B86F30C5A2DE485434
+F372BFA764BA67A1B7F54BBD37FFA74A7A927C25CB63032C194F1CEF1D861829
+2EBA90769496984256A7BD0F2A427B76964882486906BACCE372616088E59E34
+603A6862A0AA2CF780DADBD2FEDD4C74FEEC3DD5E9DE299EA4FE3E60A2EFDF13
+EEA265F9988A2DCEF04FC29753F88E30AB8AC6F11935D4863F57BC12D38EFDA5
+CB566A8FCBB2211B58B4E99545EE6E1BD1478B3D4191799E3234132BCCF021C1
+D4FCD08752F2BF8F4A2A05E5ABD47F163D95CF160CDCF82429A6BDB4F72D497A
+8C3C4847EB6F91BDB98786FEC2150C0707D9F1D7E4FF61685EF0BEDA88765072
+E29ADDCE776BDAB6808573E82ED790444457D1584004DA42192932A06ECC3F52
+42EBC78FAD914F5A85E892FEF5EFD24D011C5F0A177D61688A7877B5EEA3F9BC
+97DFE25CC815A67858FB7A11D40EC1538B1879051120FA3A55C089BB9090360A
+5D4BA4A68C8F94D99142E37D619723534A00DC29AF3F1031A6B6F9B2B3CFE40F
+9E538DCFFA89CDED0FE65BAACCD42EAF4AC81E0E3544C118A4223D87C9D82B4C
+E7F3D5DF5D04423A3F809B3806481D689AF165EC25FA0BBE9F052DCD8FEC161A
+1491AF032649472B5ED62E74CAE799A744EBAFA9EAFD33B09BFEDAB70ECC45E1
+461F22F533596013B865CE7C6B0DD363AD150085615C36F4012B0C2367898DEC
+6367112417D2C477D1674C091F1B87575F0107DE1E6919A0B3E23089D6371942
+93E2454C74599C144AFC5ED60AF6B27671821F08063FD47B6BB88D37B2D7074F
+D0CCA9AE060E99856D7612BCAAF9AA1F38879B07D1D7F568D872194A862C211A
+B959CA73B5042E1F024FF6C46D1CCB93179B8EF60B7C003FEF273F4A8BB18F3C
+F51F479543497B252548A219EF8C3643383362D6CB8D990415579589DB86E011
+457535ED6E63B9D9ACC38959D6C68069DFB9D3F72A9B0E0707EC0D6B89A5CAD9
+A8D74A1A1FB61788514579DD347B64681BC247B4E2391B92198BB9B7A16C8D5C
+C29B1F2EE9C5E2484D915EB6862034DEF5D7757588CD8F44EFF325293A8E2CAB
+3D75CDF690359CD1BB95A8DBFCCCB815A5B1DB3B8C7EFC795D1F5B07A08C6E42
+01C46FC11BCCE630AF5055380EAEF2BBE7B124FABD4702D0C620ABD776AEDE72
+E7EE27B34B23CF701C3E305B3D06087658BA8443DF6B6530EE3D2F548463EFB9
+3F86D99FEE1640753685D68ACAE49ABC661CD9408D49588161B2B8F5C9760B62
+90EF02FCCE05EB43BDEE228B11A0F2A0E25AF8DEAA21ED34907094D57602F530
+93B2FBF0BFEEE3AEB27E97D19AB6751A7D7091B58912EB954EEC6FC62CA1FEAB
+3F878C9214BD5085D49ECD04D8A811047F9B1E3D9E23510BF03F4D2FCC62AD51
+C36BB125B68D83A57CCD1B5C06876793C373FF0F201A83F3435CEB3A67C44048
+65D41E0EDB005F84318BE1947C8C66D79F36DECA043975383524A20A3A71D703
+613F52BBB49FE292871F5D87F18D24B4AB1D4492EC457856915A1DB3F13A6E6A
+445A3CF286DDBFD282FFAA768C2B019C8C329B2E61EC3DCC8D16A5DC2D781C7E
+0FF005826FA22BECE6978B61C4BE296D35546EC1D754A9A916C236BA6ABA545C
+A5ACB0C001365EEB32CA78B773C81EE63299CE728C349F28589D5DD4E9C3A81B
+2EE0DA75AA8ED5C6B23FC630C5C3907BBBCD01C83D5F2D07E936AC4B09333C78
+6004D36BB2943B4A5B644636C65753899448E04E967A7F48B186EAE079041782
+C75552B617052ED972D7B6FC5520266582D1F487EB4EF1A3FBD1E0848C80BC20
+066B7443434F1E2CBBDEBA68BBFBC8A38279178D4227821E8DFC21D0E2EBE901
+F9B5A8040AD1132B312A6B0EE9D79B2922C972A24BDA1349A3564C3CC5F02E91
+E3DB08FB2DA6DE7E255907B259FCF7E164154AB4D72CEC17F2E75085B0D1868A
+8A58A959BA88E506D8BFC0A184EC7888EEF77C5E2B5BCD22ACC4E6B00B139783
+E39069AFA2A37B2B4967AE46B9AD37659A3AE9A3DB12FEF79CB6AF18AA1D7A5C
+B2DFE741C367C6C4CA243309056EB3B1E108D9FB6EC8AD273DCD90F47FA5E2B1
+AA7C4F9FDC46E6BDDBC9F1322F019F105BE7DBED29488F3CA28F9190095A552C
+CCF84B07899129672812CB1569716951E8F5725BED497AF4E30359682C293BD7
+C6A56260826EED8D01A243CEB4E90F199AC0E13B169DD71031A34DCD0416F6E2
+5F64628BE29EFEA5F2D1BB19E16801A3E1141031B26A8FCBE9A743200179E8D7
+1119B503EB36E2948DF7FA999B9B727341FE50434ACE2C3C652CEBC5F6BFF03E
+2A33576E534068DADDD223AF11E43B8C4BB5D1200B4254CCE5643CBD73398234
+0C23EFF923ACA9153E65E63E37274D9BEBC952914026E0D661C41620027B5B3B
+016EEC9C0442F1C3C59F8F38BEB118FEB9FCB2815BEA7763B5917A2C6F46949A
+3D1D30605B4AE5D3298F4E96C2094D7B2AD397E4931CE82CC820928B215C70AE
+5A48E61E9B457E869D2D99E34023553B90836C6A836791C8B8E817C57BAE9348
+CBC2EC7A2438FAF387BAC96986380BD874C29EE03DA2C9783C84CDE58F15773C
+15568C23154F885838BF4E8F7F9A0BE9E9480D0CE94E769EDA4AB3BDE1DD30CE
+B2A8B8ED3843CE96A201A423E39E3A45986537A3ADA499C61FC9F5D538A291CC
+F6CF384AF64B8E1348673CC6B317B02AB47A88C4BAA6F8FFA0FA674F600C0120
+98314DEA39A7B5099F513283D572127EEA6439F9ADACCC981CA002E9E9052846
+B5B6CDF69389187DF7BC8942408C71B87C1BDB0E500E9B2E4212FC21340045F3
+E4C421BB9BE10E4C5802524500F4031AA36935F92D8DA29782A13D8D80AC6A57
+D2ECF2235FBCF6E0488C4523B69448D4D6D2040F7204FA910F09973EE65502E6
+4912276255CCC93F30471E517B2636754BFEB588A110BB0992A8AC423E83B22B
+5591FF12D13011F30C5D8C6A3E53F72195C815AE0E613551D4A5BF7ADD5EE851
+78459EFE389D7213812607C981F3F336D3872DC617E687E4C8639F5F58DF1B0D
+9F8F89EA14EB56A0F6BB0B40F9E98EF7F1774F756E8A1249BDF018B7C106B6E5
+E3DA46DC768B2BC9E6E0BFD0948F28FF5186B81A6D9ACA6F87979BE5B243819B
+C341C6B5F9FBD2709D5DD4514F55B16EF6C20A6DB1EEE8D06AC53D6A593596E3
+5CFFF0EED18A48A8A94217F8F656E7FF0815C7A99DEAE190A46F6705FE75EA36
+F4F40100E125A77EE96425FB83E4B470E37AB52CB7E12D57B52C5C856BC1B634
+5A9FD75F12854EDEC5B49A4EB5A4506A073971BA96D86E8EFBE4AA55A80F08E4
+F9FE6F7EAD3BFE9D6AD23CE23A42508B3D1F0C5C706C1EEBEECDE969D33880D1
+DC553F44709645866F3BD1BCB8E768B0921A5EF72DCAACC194A56F970B363E20
+6F427BB9F981224745489CFB750C01A3F0B7FA898E23A3FCEC7ACBF263A4CD6B
+9BB07614881C937DC99A90AF67A9D7F98D90CB6BC7E68A35A198124F3C4ABBA1
+B2166DAB62F411469AD070C81C11D79FD6B7698E45759695CBA05E7B7880DDB9
+E4E2F989CBCEED6C0F3F164ADCC88967C29D59FADA20AF5FC2FEE18FD0201DE8
+F49D96FE359741C7FA44FDF60BB354DA8116FD5B1910D5A26DA3693AF9EDAA68
+21955C318B5BC1C0C020ECB1AFB1090F4584B6BB616BCE5FEF3C0FEEECC545D1
+DE92766EC499E8BF2CE72DE9FE7611CAF4929E7B60DBF82175757080DCD053E3
+E6E8AEE50B540A0C27BB02D4ECBD3EE8B7ADC3312FA31F6C2586DD03505FE6DA
+B462E28B67938BE4B6748B6C8C8A773D454C7D537A695EA8AF0D84D846CF3B27
+D43D15B2263E8ECB5C3BDC91DC45A4E1A3E74DF11CFBB148472B9B320CAE6035
+57DD58C6C05877AC98507619AF78FF76F8C31F04487D82D11CB645C8927D3421
+0C9F889882086C4082B91D3737DC1222FCB6304CC8582628F84D7F88411DAF98
+D2B31E67725F103EFA380555C09A9C01778A05EAD5549DC599CC377D38AE5300
+5AC88D41BDD304409891F0162D3903075A4277813378ED1530310EE75A28EEE5
+489BBED315CEE9928C012B9210E7DD4598996CD7A4A896DAE05724EC43FACD97
+1511EE90285EDA062C703A602B14872122778BE37609FAA932EF0CE234BB4941
+562C19702DBB1016FC64D60CE11C1BF1A5C4CA404CEC577A350C27F87CDBBCB9
+29720680F80556201296302B64B82782C34DABC6222A36CBDEAC67306AC65870
+B4CF79FBC80ECB5F99121058F1609E1EF924181D1A819602B5398845A70A5D6C
+424E3A5C6BDA08FD2937871ED1D82C616F78D56C9307A62D654E2F41EA6CC1D9
+595963C8F308A250B855DBDDAD4A608B9A1579756B70E643EE3850010C1D8B7D
+35252716C4806A79BE13FE4CAD5269EA3B2134EF402478A5A0ED0A0D27AF1EED
+36F9F96A058957C383A19015531250B07A63ADF11769031F86AC1925A0FEE3C9
+ABA906808A9D8CFB58C3D09593ACC2B735B956E21B5C1139AB40CBC12F9C3C9F
+EAF0A42CA26A61424B047531F5C32E0A331960A08BBA8107608BAFC9DB2C76CC
+974E9EDA3840ED36B798902674A27352645858730DFEB91DCD0C2EA4514D5D37
+B4E4BBAE31D3F6282800B92D9B76AD55121D66F35BF1650B09F058D728ADF379
+1D9F342FABFF3EC15D45B8580599C10D0F5E82A490BFF210B8439249A483BF18
+64B6CE120278AFF67DAC16723E1A9056163215EA597947555C22C196D92A6C4D
+2BAEBD772B7CD296EACCE2555DB375D7435A0AFE58D9C6BC8744DA241A1E5836
+75C54C03CC4065A8FA402518FCE53BFFB202403352B6CFD49B83D50B1F1AECCE
+2D03FDE4CA913E7CED2CA42BE3F96CBCAEE028E4F619C788CB5AC5436EC8D21E
+26A3098D6F093002BFD7E71A8F3A024AC612A38759DE7F0CE54767C2122FC1E2
+5EFF6B6A88CDE57566FC4CB6883FC070A0043E847A74307798346E0CDFEE858C
+300E92C2AD0A625E2A
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -1599,25 +2443,41 @@ E45E2FD4C49E9F8E0238CA0701071C2B65580E0477683257F5167F5AA91051D5
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
+{restore}if
%%EndFont
%%BeginFont: CMSL10
-%!PS-AdobeFont-1.1: CMSL10 1.0
-%%CreationDate: 1991 Aug 20 16:40:20
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+%!PS-AdobeFont-1.0: CMSL10 003.002
+%%Title: CMSL10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMSL10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMSL10 known{/CMSL10 findfont dup/UniqueID known{dup
+/UniqueID get 5000798 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMSL10 def
+/FontBBox {-62 -250 1123 750 }readonly def
+/UniqueID 5000798 def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMSL10.) readonly def
/FullName (CMSL10) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle -9.46 def
/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
end readonly def
-/FontName /CMSL10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 45 /hyphen put
@@ -1662,285 +2522,480 @@ dup 119 /w put
dup 120 /x put
dup 121 /y put
readonly def
-/FontBBox{-62 -250 1123 750}readonly def
currentdict end
currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
-3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
-532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
-B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
-986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
-D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A319B6B1FD958
-9429B9D40924DC059325D9D4CC0344F3F997A99E6CC0676735EBCD685AAC9142
-08DAFEC78BB41AFC2F1C219910BDF41D6279284EF600B69776CA15BC8A34347C
-30783C52AFA60FBE3E353E2AE354CF87B558776A22C776C7A0B5AB5CE1F941EF
-C2D9CAC37294BF407A671F10E4743BF842143F4F7DFEE643BA3BBD8BB9E3F24A
-BCCF7F0ADF8BA500620C81033EAE8C4EF2C1DEF13AC575F1B3BBB66F093D3B78
-5412B82B67FFA087AF57182B2230F9F2137180CA58A7D9B2C822FF04BE6CD01D
-43B2CA7058C7B953F6D9B5D6E91ECBAA5CDE1159B0E59C83DBAD96D6C8C8BAB1
-374EF652D10C0F3EE7104472C98DD3572AAF2D45A70BF7061447E21EE3C3BF23
-DF39C2D1B35B42CD5297BEBE6BC94F7C9DC6E61EC67E4F677256FED9064BD3E4
-B51A71B1D27CA4E5AA9E1D8080E6DAB5310711EEF87C40859FA935B19524AE83
-63B163FA8397BDFF443227FEDF7DB27DC35D89FB1C5E435DA0619A5C88AFC73B
-89A2DF5E767C5B536BC7167A840A0C32BD57A14DE69A7D0D819AC36FF32F908A
-5070F32983BB007437E3500799DF5E0AD3710A4C0000F0098D5BE99F2EB9C1C2
-C444FD9552D0DCA098A94B3BF176F511CEE13DB7EFFAED7C47B5ADCF8D4700F5
-7A5FD1B49560969BF5C44F3749370663A04776F749DDD7B50674D93254426C4B
-EFE264BEE7810EC93784B7C01A7F29EFD92547E13A2C7851A2E709FBD5B87850
-4A44F08F56A542DBE072D2FBC58D9E6468E1AB858DC35240E30D31C7AC13D6C5
-7D2BB634BEE96FA0E10F842B11A789F72A333DD6DDCB1BC23227EBC406E50B40
-30AF0C48E6359AB0C46898CDAF1118E46BFF8B00F54EACBC2AC262AB898C42B9
-2E080C10DE923C18AF86D75FCFFAAC63768D4F985185710865FA3225EF531068
-487FB30531B1C2A4B4AB83F8C1494E6D72B1F6A012E10A2A4ED6658E5B081DCA
-1A3FA683903F4354E3F6808212A7B2765AE1F7BFBA912B153A0C7051A50BC080
-C9DFC891A623F1F8EC6223CB3B1F2F7CA0C0E1922A3BD031801B31F970493F3A
-9954C467A04D1D826C9C17155D6D441F123FA232B0908F15EFD9BDB4B8D53E0D
-0ABD89C56213BB393753AA61EA26272566D164A8BCCD6331AA9F20393FEBF998
-E8EE3A54FB522C5ED971A45428116679B75E438CD522CE02F372141B456394F1
-D3D9B8B226AD7911D9B71F419E6B4EA2680F41EF3835715528C2338652222CF5
-07EB1831C27272592E0D7FE16F87710F2C50AB7C4F10626F7203D68FF23CC4D7
-B81B3922914942AC520B3183603EF0198C0A10957302E97A907F8CA7D499B85D
-1F849566DA34D8690ADE3A4DAF7A97E1BF2C2CC784F97F4313DD69F9F06255E4
-B15E5FF86E48FC4644A59BD7D396B64EC5DB796D909A75711742C6706229DD25
-D775B208B14D7E2C129AB980CF9359AE105504F77BFB4ACE3649995C8C5234F9
-0D312AD195458F9F751C62901AB81EADB1762D31C769D55E9FCDC64A7EE3C59A
-A13401859F5EF336EDF438E85B8E7E0EE5127B59ADED11E4075657A5E7111067
-50243C97F57BB93CE988C547F4370BFCB852D4571A3F24D0DDD387F8C366F031
-1C8188B7502BBF0DE92C5E1A2425ECF70E4F8CFF80E60680903871D565CB9B73
-12AAF237EECF3F6A4DB19FAE884D02436B2A4CFAA75B7C0787AC2C4FFE2A0CEA
-522EA455BB048CAD8C89A42361C81475EEB3C2AD1C4104C3CAB9E94C1C932A40
-6B6A582FB7CB0C7776630D3266665A275A9AA25939B6ECD5EDB28A301EA5C475
-C9BF1E6A1841D887358166BD353C506BC26D813DDF90271698E84BFFD2D71FE6
-39F6BCDFD90D5127F385BFD9C0588CB64A2D6EC213FC46DD481B990F022F42DB
-7CCBA22C48489FAF12E89524E9990C5BB71D6A8DBECDB453D4D85D3BD7BBF72F
-33D40A451DED6AA8AC14A6AEA2E0C2B300F96DF9E94ED2CE865224C5E8DFDE38
-BCF426323F00E47B62726021CE7991089BA2327C8356C32267EBA52AD586CF82
-E9A7B46857CCF56CA461B902183012FDF684C649F656CFC2284B5B7C315FAECC
-AB4E9F43EBBB945DB6E0EFD7ED536D672830F7B588592504BA5D9AC1DCFAA3E6
-94DDB28C5BDDCF3B88C6AF36DA732C2F8128AC6C6363D2AC2D62912F5736DF85
-20F2F403D712BD25932EFDD1158AD393676F41CA17F624619FC8D45F6A3A7754
-5ED156AD3BB137B036E5ABC5638260E6EEA46372771AFE123F331B4C9B2CEDB2
-C3F2196245EA2C5CC76800F336259FC8BEF686AEB4F3B1EC48BD2BF903985988
-5554AE3D7D810E2C12A6667BBB93F5CFDB223D1594E37D680CF0EC6A49F2F13B
-590B9376A0597EAE084EC0742B17C52D0214E634764CBC2289B072A7D7BF7E42
-E21F3F33DBB9B3F0DBEE1D9B4830F3893A80A6374ECD4A265D13C2950BFD73F9
-ED3867FD35A5156DA284BDD6D0540FE242E72EB708480240F876C66739EB8500
-1285AC4CCB214850B45FBE616160EF568F3F7E2A905D3D7B97B04429DC4E6E3A
-0CDB03A0238DA527F0E53F72ACA15149AA4BC4245B13BD2458B46C286C8FB1AF
-F2B8536B90A608E857B522230D32CFBD0677650DF1F48E419634A288D5120D87
-AF8648593973A460DF22B9DAB20966754EBA97A8ACA98C1F95C6C2B74E390536
-3FD20B0AADE98306888F17B41822B5FB6C7C0A9E6D7B2F6B4AC4387A645F6620
-0A24144292CF6DC22C80CC7CB653D804A33025DCD98D2856ACFBF6B5004205D6
-1AB0AA4C3AA1701897501C53291787DF77700F153E3F3FE9AF8CF7C27D371B74
-DCE77974D266CD81CCAEFF573083BCD7FBDCF9030D08D9A903D4F302471D08EB
-7A4C9A356821D436F9D612FD574ECD6FE5CAB70A1E732538BE79F53AA7FBD568
-F6CC89149DB8BB9B7427E8894DA272513251336D74D7FCB5D8B7F895667DE628
-7888E5E1EE45019B86966913C5C81ED6531649E4AC3277AF8732D51B1A0F26D3
-30DE8E8F8575F1D13348F08D76EB61275C5BC636A81A462A65E23D56C5487157
-68693587B3505F4FCE2AFEDA2E10BD7461C276BBA43DEC9271AB4F814915414F
-F7537E32A5A53B636754F1DA3F3E14DE5D18D7D57332C2F83E70D9D39450FADF
-A6D705C4A394E0DF31BD26C1130700579B61E2FC30A10ABB11098EE70506C68A
-1A1B03AEE61C841063A9ACF4A64B44B1168527B7DA12A00DECC26E9122384782
-6A8D34002A244F5BFE9D26A9ECECFDB475FFF537351BB0CF5400814B3B0083E4
-6C83B60EBE0C106125A5D95CA52857847E7E3EBF983FC00F2026E51BDD81D015
-09DF78C69D2D842009E05CBD4CBC40E1B52929E73F01922E8416C3A8DCE65673
-06D8BC8A6F08C4AF791D0154666D7945CC0904247399C216752EF57113DA6AFB
-86463D3E5820EF7F73B6459E160BD79B509BCFD02E6346F42A69B43ACCF56334
-71B053140539FDC4F1DA19CAF0691D6F81C21BAFC0B173FE185FA352E7DB9008
-AAB5F0E00BF6DB69CFAF548F51DCED2B737949C20CEDCB5A2DEB72A9BCE98B24
-3610D1CB43A1368044F7DB21215BB899AB3BD138D0DEA278F27FF808F37CE15B
-E3976C5A54C69D54EA7D5BB5E9785D8064C44DC4BDDA4F4B8B1AB4450C6468B1
-B2BEF80BE3329BDC0AD7D12F53C4AF12E248CAD37C709982DD1C256AC8B548EF
-9B2CECA35089376E92731458C5BC0DE099F17950D6F04522093D2B7BB5ACFBD3
-993A0D4254A9C70820A5D894035A8850E449DE7ED7912273F19BAE6244EC1EF4
-AC66BAF2950ACD6714252DB1A0DBB64FEB0E65F32DC52F541219D73EBB3B66B8
-A2CFCC124B4710CA9F0D734057E658040A42D1724E5F6E3DFCD83DE7BAD51FCC
-B70D8025C343242D7176F5D733DF6D439A33DA3834CAD95DC7C992FA6797F572
-FEE1DA81A9DB18F47C780F06AD6CEC736305AA41F8BA41A0F1153E8283BD1E17
-FCD9C2AA203F3835C9328FEF20459E58C595745F872DE784E8547AC485531D81
-EB2636D7D630F28D83B9F0A77CC9CA5DD2FFDACA4B178D961D08D2A18FF05D0C
-0F7CEAE2CA6DB6E11D0CD966E496B2D234F253AE97DABD9F55220EBF886B6DA0
-D60108BCC2AFE066BCBF51E69514EDF5528ADF86CC9534A6BDE291D6BEFA20A7
-F293FBFFA1C0F4A37F92C064D5F3B0623575D1002C6F70CAD0608A67E2840827
-4E9E45AE544ECD99B9DC909BEC3A45C8279A3A971BB17870FF93BD3C1ED35D3D
-E11F99DCEDB6FFF77FEC6DE3734B3607D4D49DB7DBFEA7E3BD4E9906B7F99FBC
-55309B394046AD63F2E59D568113C109D9CF04DCD2B1B0C15F71763F6C531B2C
-83B7E96E0DB04952A9241E71B75DBA88C19109C4ABD60FF7DE9B23E991F14A63
-8827593DBB7E248992E302D6C4AB51B665FA7F66520D67F15E9A221324AF89AE
-8C67B418D06A6B4B6128B149F8069DF7CBE3DA963B110442724A9E16BA691D72
-F3613865CB566D7B3B22F19292C7F39F70BA29D9EBA147B0A72D4F7FB6D07944
-33721F94B04FF9507E82DB7C2E5682A2441610C70D9D8672F3F31ACD9BB583A9
-D1585B5D2D5229A1C99F8CCD16B6CA6C1AD5FCB0254D64EBCC72867CE6C9EEDF
-BDC5538AB3E02C835C2A135D8712307A338880EA270661CFB8E03EC3944D8247
-2CF9CD961C3C0B6CF8FDD8C3AADF769FD19E357142C793D0FBC6D5CBD69D9ECA
-AE8A3F266932466EEE0DD3D32E9913BF8699F2014D1442DC5BF61A3449A6D366
-1B7F4AF08B5DF7072048C4A2DB7E527259AD046C2AC08A202D3741801C6768E9
-3465CAF7CFD73C50C019C7E60C14510FDC51832DDA6FFE385A596F69CCD153D5
-3AB08D09BD5C3AB6BB5908E460921921281F8CF6700E66BFAE45F547DA7E109A
-2526164AD366CCE796A18E73DDC09F0E0E3B480D27E2049661E435564020935C
-EBDF2079886FEEA8B84226936A59F4419F4D10045509C17A8602AFD588080586
-ADDCC0B401D1600247CC2C9A482482883192A4EACD89D3E37D475B7067275175
-399CB330DA1B148686CBF57D8A8EB10AE7DEBBF437EDF24E2ED1968F0C03B91E
-45EA897ACD82550C2316D49017655061D0D92A21FE8B23B23A895CE16DC9528C
-7624F3D349982CCE20ED8DF66446742B1DA0945D87BDE9905865BE3CE8A7B41F
-03066CFE9FE10C2A84751CBADBED2BD074450E130548D58A07FD4119160A081E
-987F4CF71B68DFE39A6DB5562E6368ED7D2A67165EB605E4F7B50073B822C7BB
-5568F8434880D1835090D0F0737B0726E661623A2971F6AFB2BA86C82051F794
-1035D35D34FE0071AA2BFC13ADEF981B63BF6F647422A2DDDFEB9900FFA8DB91
-06A08010A9428D1C52CB2636BEF03605BA3F148851CA6262B4963BABBD015FEE
-2A6F888BC9D19917C5DE5F730725D03E95B951B2DB240A74883123D40CD2788E
-3F22D9F517664D4E20AECA03AD05F6481176E37B5E68383D070A9EE5CD5578F6
-713F5720EE1BDBC20242BAE097C55605A9BE333FC2A67DEF096A6EF03723D702
-562A8031828B4A22B06C4B31626BAA2E90DB509E1FEBD522F2F288FA4075873E
-2C2769DF4942DF150032010767DA0984A2EA10FFC05D5AFFC654C16B4EDC812D
-EB8DA97B59B28583D7C7C5981A704B25886EA32D2094006AD52CE372D211A51D
-D34E86C0ACCB53966B3E4BA9793DABF6E0AEF06757BB30C141982E55017DB1F2
-A9A0BF2751B1C03E276690146B5A6D5A664D74D597EE88545DC5132C61ED4EDB
-51B4743C6C9777CBF428C4FEEBDA8D860D33121DECA25792BA03125B3A8BCB82
-8D33D87B5F0AF0DDB979A79240BE8B99285E8CA00D80570457BA6154B711D5F4
-613F0F48C6778264C938B08BDC0416510D0A17684593996690B86A4F5FF2438A
-1377231FF3B1E27E279BF7CEE12DA82B6E7C45B86CC5EB311211BF7AE6B51A51
-F84E990B2405C9EE8F9F3490008B9E6977B1820A13FA829507D9C6B9B1CB5EF7
-BDC181FDEE7C1A8E48B48BE985A036B153A6A486084B82AD3E72F919BBC149AB
-FD4346DDE9C577315A7A8C498BEA3C5C4744B9E35BCC7449F98568794D9E4F8C
-F1A6FC967F6EFDBDE2D3BA012F12771843637DBC36CD96DCFD211A702E316152
-E9B7A792F94C50DB2CEF650588CF1BD3A612227B09BE1FCC99EEA4DB9266001D
-DE800C3DFCF92F1BC2CECAFEBD6E0FFF8CFB71D644CBD75EDE2470B25DBF4382
-183DFCF9AE2B6E9DE049E17FD7CB5D5E75F69D2A5E1B456AED863F862AEFACF0
-B9A18BA25125934D99E1D68832376640271D9BF3BDE78191C286A1EA5EB52684
-3EB6EC3D1DCF031584113B0EC8BFD77A85969C11032745A8138F0C0E46ECE1B8
-A14D8FAAA919955A7D476E956DD11556EBBF0A093B5493E631BFB38DAC211615
-EDE56ADEBD3EDF75BD1BD87A90F273D4D0E221A1458552A0414A82FA53239798
-85BAE93A73DFA0C78B10F726E3D8DF94BBFA3FBC98817851DD701C778EEE1557
-26499A30C842BC1A194A764F995AA7043F7F91065A2380C846393C7CA6B9274B
-B15C45F7FC74D449769F20A7C57049AA4925158DFDB916872120333C998C496F
-73731B7B055F642EFE27DABE4C3A9411929F78C4AD869FA00E6CB649AD915206
-138C6EDD92F116E34EEC551E7ED1279C454F41E815484AEA44E5CCE017269AB2
-6430C6C3EB0589A247C163315DEE3BD11525FBE7F17490306CD1D9E68F574AA6
-37A1459E4C44F1B7963A7726357F42CBB30E5C2C4558EDB9A5BC066CEE26F18C
-63C0B37113A4481EF346C46EB5160CDFA6F8CABA14422FDBAD2C21E91F697CBD
-A2E38CC8E4B64A00E4A4A046EB1C10310EFC9249DB8303FF599CBA910DE000C7
-5BF7229CF4F475198971421DF4C7D0BF565537497E3E701E7DAFB766E722FEDE
-3EFBCA1D24776F14E988CF494CBF99B58CAE07BE36D678305AA742A4622EF268
-5F44347F7312730FFE21993C15E15188DBA3B137B997B7F0DBB323CE9B244ED5
-3409C50DE3F798AE64B703C8160BB009B40A05A6173240FDE6C9B01476D20E83
-3F9108DAA1AB3BAC0EAE04549DB2F8A7AC7FA78FA81A448F6549596BF6667947
-48326A07281D2EE40BAA1252C79FEABD510D72D53F45CF25BF7BE5858926A465
-C71CCA6927EFB422B8C23C0BD6FEFEB66FA1375B0B8C772CEE1C7C72D6DDD5F5
-7702E88ED8BA354A889A171C1304106BB08012428B5A792F9C94B8C43B6F2090
-37CDB8793C95F2310222BFCC7E1A66AF164D524F49D54A206A2E31AFD481F751
-CB4981B6916D0C624657909761348FA49DFECB3E40C22B3768D1949126EED61F
-6336803CE8329861202E2E44BDA2000286C2BD8E915CF155E27D22C53453FFF8
-46B15E1A6FB0B360BF3CEF320293A0CAE1F37A9C1123EC78B94999D8DAF0CC4C
-A69F129B1206A0CD5CE5C4C3F701B335C2CE6372A8A2E6E07A5D95C10E8D1E1A
-FFC85AB9D4D3E5A956E8116D3732001F444BBF29C59AD4BACA82D0BF6C143FCB
-E9898A6596FB71747723DA5E1F3BDD041238FBF91DDABC81CA4FC9CBFF5DE5F4
-058710E5246B8469EC1B97965D2E809DAAEEEA9DA2DAFC83672989E2A798FDC3
-A731DC25D33BA638C90CFC36250AB855E25F873981C1C134DE9E40F45CFBE0AE
-1656638D45537D94ABA65A99A66AECEC7854514DB7D2EF752B0265A0EA1E503F
-125B18BE0E1F2537F4B98DCBAA19F820088AA18752C806B74FF9E65E3F2F66C6
-ABA7B44EC7729000A951C5D470B0FDDE2D774F82D34E766069C3D242AAFCE6ED
-1E68D95FA3E18770A99040289DF75F4604CB036A67AE7D158D0A07FBBA7B64F6
-6B1F750191AC9F2291A2439DD398434D84F91C4D0ED3B457E53C7B5D8E730716
-6DB507367FC947C7DFF700504E7B5001FB683ED86B75D7326E16F40ECF8ED7E0
-76ED443BEC5337DC2A776776A0C266670378E9134EB595AE449D0D48F9BCAD81
-7147F6B3203DFD0A38227376F0696D0ADEC9BC7F06B66DFD8116FD51982019BB
-F463F6BE6563D173085A1C2A777621801FFC3220F459C77BD1302C1F6BD834B3
-742FDB9BCFB1342931DDE4CF94CD2E9F7A443A67268232853803BF62913B5BD0
-0AD7F4AEF1BBBF89961BA4282D227B1969050802DBC9A788C00E1580C4FA9A71
-ACEA2700E5A71D327345FD65F329177BF2BC1CB7111C6B46ACC4F5795B0C9AA1
-34B39915FB16EF49BCC0F3D2DA4D33F7EDD1E5707B0FF5DAAC677D2DE279A7BF
-D034EF78D146789A2D4BD929F59CD9F208236D6FD4895BCEB920A2316B520B28
-87EAC2F6889F9B53103BC5B959444884CA28D37738298600CACB58C5ABE97F0D
-D49C2C684A46B04D628A28D519BF0917E1A691921A227403D4D0C219F33CD495
-E15C5720BB584D770343520D00C15BE696642AE43B035737E29C4356BEC12269
-5B3E6D14F37011DA04B724299159BB62AE708644099CD6EB298CA66D1C0DE25E
-BB2D83615F3EE99542F0C6C82C9106F9E8284828353D5DBB4B525781F288E9EE
-C208F9355958794D41EB1350FFB308094A68C09F2E2F8CBC77385B7337A4DB71
-A37149024FCDFD6DA887243F71F48101B70665F850BA7F733EF90407BBA8CF8C
-52ECA8D93406BC12800CF57F1DC12B355A10483AE4ECE41F9EEA5840672423E2
-1D75F2306012063AF3CE75677BCAF8F048756C3D3170E256C2F863BD1E0B78E8
-6ABB9F135BD4F0EA2216B631A392B2A0064CF9166FC9A73EB7142440821029EC
-A31BD024C4262BA37BFA3FC5527772604547E09EAD0B23B7CA97FF613B340347
-D7233CEE647221C363F0F534D934CD179DE2BEA2A508DFD1313BA51136C7944B
-7253C1AFF379611C58D41EF51EF55297129294D9FC25F593E2092E83F4346A2C
-2A5E7FD1AC5823E2FDA0222D4FB31B16CA235005530012EF7DF63A7E1AC6AD24
-0629EBA16DB9943399C88201C10DA43C158D5CEF40821F3C7474846DC44A2803
-321F258F5D553D03F5B171A722CBCE7AFD8FE2F4E29B0FCF35EBF0D5ACC1A7C1
-E25934498D044430F545111A7E371F7E3A521661A47B9D525D81350305653D33
-C35E4231BC182DB7C5E9E3FBFA93D6F29C6A714F2E8D7FF27518245F05B13FE7
-12D77D9677E551F80A65F0D058BAC7E0036BEB3DCB6425D19D9AE6347C0F008D
-177F55FE1D89D4FE6ADD4CE00084B944E8F249B421D3D2778198A5AE996DCFE4
-F6BDAD4D1581BC25BCC621C07DA2C8027DBD0211E975F80A0FC73D42C1FA335F
-96573E9C69F023200B0FD6CE61797A88DCAE042B4C82CB3CF74309A392DEB8CF
-0054009E777DF45B649ABD9E549E61D66439A66FDE06CAA712EAE20EA2233E05
-D4BFC80600F8E1C4EA899874CD019D4E514CF8945E022B3F0288F7C89BD9B32B
-F683AA7BE2EDFF16C851A82CA15DC2E9A9FCC3297FFF9117522BD9741201BA93
-F471535EED70599310B05569A4241755A25D080F99F1704321708C6A4AEB60D0
-70AACAEF1675C67086021CCC3AD12979280F8999CCA21DD006462C83B88E98C9
-C785171F08636A58004A2609F4B6E58719215DF7EEABE2E9E2A33D7E38E4036A
-A48FB0EE221C10668B482E9422BF3753ADB09FEAE829E35FC8004958C576AE86
-FAF18B1BC2B15E15955661E262D6D7190744DB9105151F2DF569DF2FA2153377
-0D5B1DC947C08EB11951D5CBFB941F1892F2AD72AB54333468C0B5967A1BE22D
-2CF668465ED282FD7B3826D0BFCBE569D543EA0BC146865AB50FBE4A4800E8E3
-3E86A443F3D786BDE8FB2FB0313D8623E7895E1FE1EF78835444269AC3B55AC3
-352D7946E6032A32A86DE3F7E315AA09DB7D677EAB2B327C9A63F8FE89603707
-EFE8704ADB66CA6FAF412EB99AFE47C73CCFE17A6C6CD994E542EA044FD48A8C
-84D4EA0BC1CE5C2F997232869F0F2A3D206DCB6DAFA49ACCEDDECBC380C73592
-FD44AFBEE9392DC921CC31E8F9181AE15DCFDAD134346E25492BAB25AD450EF4
-BA0FC540E9A26744147BDD9D187B6C1CE6768086894C05017B5A70629C3F24E4
-CADB7D762E9B4168F5340D10DA9EA293889BE0590FB91EFBFE73D51348E505B9
-37A517756A19D1C720566407306BD1A97144C6FB8A9F50386D09321399C0A8B7
-BA893A54C2F514984ED7D95F3F555862A60A6A02881EECF007A59FD8BC7A05F6
-55064C5FE3EF5BA371413125EB92025F144AF939965FF75A59D9D2E154261A5A
-2FA9BA49716889B4202149988B1BF84F64AFE278E079C06F6E177AD07011A258
-FEF05A860299FDCA8AF7D6264C4881601C1E30B29A82CFC7C6D4AAB7883210EC
-2E9C5E1A1F4340CF1419E015B09B5F7E26024B40383F710C534D721C74C2D5F2
-FCBE7B48928C31D2086D769646222FC2C382C72404BB3C5461D55004B27180E8
-E82BD7C3CC78C6F220798058F15776288493570D177E250005449A6E0310957E
-F45B7D859026A071FFFFEA238915639A98B5C79FB693C37F43E4838FA8E4A8C9
-7F5EDE1DC63014DC81F7620C8A2119E8E5828B8D175FF91B87FE1F68DC817E91
-FF01989160665315034669B45A59BFC2F6E17D151476058FC8B4F0E2E2018ABA
-053085E4B95E8674E9738AE36295FC923D8F058ECA7467736609B738806DA807
-847D2F92D02E0597BBB24B0F28D6BA9D281B0635079662ACDE0293BBB8698B58
-A80F23EAA8BFC44262F260D932223131B47F3D94218CFB21DAC1908B6A31AC7E
-FAABBC90A3C3C3394D86ADF67D227D8CEE1876B2E343923017B1703635D3AE9E
-9DB6DC06E52745795255065A5321D22CDC5EC2B2B9F824C23E409B8ECC6B4490
-3D0EA2CC23BCB3CA8A60958541695F97F2D940223BA42C3B49844B628225ADCA
-6930D5783B6FA6EC5E472BA243C0FFA71AA738825EE334975A364548853F824F
-9D5149EB346E8F2D074F4715B29764F114AC0DD2B777C170AF827B157D02C2CF
-199D61FB4566D74CF4FC7B31CF5D3C2353117E7B39233E4B84B98C4535FFAD79
-8FE8593B490B484EC730B9CA552A45388103E8AAFE7E62A86C8B24A642C8BAD3
-C9919FA9619CB718AACCCB0F07945D336BA8CC7478DE959DD738441DEC374E9F
-79D2B328211873D480E5CD0ACD94AE8F57FF0E0E3B235FEB865F680A0C817A16
-7D795B8ED5CD3B5EBCBCF748DB6BC52BEFF719714E9B93C5A0800E380542DB76
-4B12A2580D76CF3996B61FCE2C5C34D06487FF1595628E977D3EBC395C6BEE24
-5EFF7388468EE52154F1030AE786DFAE691564EFDD81BF390B9DDCF1F84BC16F
-DB2E2BC4ECF193352B3C6B4BE06025BC43D0A97856D66661B80C460FA48BCB8A
-F7E7BE633E1CC52EDE7EF01258A3693D8746574B0AEC82A2618856B0B5CA131E
-B6D624ACE129E935D8C3674715D542AF4F0084B0D7C993E2B0691BB1FEFBB735
-0C0802658BF289C32EFD28BA582941B6552ABD8E03A4651AAA797475898BF848
-01BE7FEDF3CCBD26C235BC02C6F907DBD964ADDFCD1A5B0FCD45FBCD6AA6D940
-6B955CD5DCE4CFED6DE9AED7019A44EEEE1D64771F934A56C18BD5714E1E6CE8
-A39CA252042D8174B1CC1A93810BE59DD9F203A7D9075FB74FDB5CAD7B12C1D6
-1475E3C78D29D96D84030F5175074C436415A1E6AD9FA26E4C3F9C9F318AEA82
-E98B6B507FE1FCEB57E57FA712DC259C43A1121685948BFE52398DEB4E472CFF
-C09DC6C20B0D6415BBD93B3F5FA82C03B7F3E7268F9C1CD8F8A7214FD78AC592
-8391A6FB967ABD42A63ADA78B700FCFC4817C4ACE54D8EE4FEB20490B5667469
-3B105470A08E956A71389CAFBF2E96AB9D445AAC58F5597990B0FB65A8306355
-37921A387625F7BF046E9D4D11A18F6FF8E664FC1326E9AD1E4E7696D17A4AE3
-F2767EEF4968983FB8DFD7F731D2065593488D21D2CE61DD0F106E0CA36C7616
-376464D5847B3CAF77B257C6A3D6805C154EB81B614E9DE2D314E8664F3F2928
-7DBBBE43A95B071CF577FC1D4700514C0FA042ED08AA4FEEBCECC59B730A686A
-75072DBE884EECB3B6056A56A7EFF016290E52CD4E6926D0E631D454AA21CDB1
-9B355ADD5AF08D01F58A0EBF61D137CA9DEEDD270DB62FE952B457D65AE2A9F7
-70BD2AFCAF5F02F24B3B1AB9A257137CE6AD6C8415BFFDD7EF318EDA8F16C04B
-92F3BFFCE429051D035726DDBB9BE7560BD44294D6B5AB3D2D470563F9221728
-25327CE19D7E770536AFA9806E0AE707BAE02B2F1D86D102EFE83389CE027FF4
-432C4117D6C8D253C17B49871015CBA55BD6046119D7A956693B2F32A4DBD2C5
-7501EF1C8A277A4FD42347F07CDFD37EC54FA6AFB26742671D66EB4A746DBE28
-791B6E63C25111FEA59E1A0F239A2E041148E2773A491E01DB47D67611F40C4B
-3C862975C0A379DA1D15EF87A840008E02305455E6E13847
+D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7
+5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99
+8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716
+EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C
+02CE8D8B07183838330C0284BD419CBDAE42B141D3D4BE492473F240CEED931D
+46E9F999C5CB3235E2C6DAAA2C0169E1991BEAEA0D704BF49CEA3E98E8C2361A
+4B60D020D325E4C2450F3BCF59223103D20DB6943DE1BA6FC8D4362C3CE32E0D
+DCE118A7394CB72B56624142B74A3863C1D054C7CB14F89CBAFF08A4162FC384
+7FEDA760DD8E09028C461D7C8C765390E13667DD233EA2E20063634941F668C0
+C14657504A30C0C298F341B0EC9D1247E084CC760B7D4F27874744CDC5D76814
+25E2367955EA15B0B5CD2C4A0B21F3653FCC70D32D6AC6E28FB470EB246D6ED5
+7872201EF784EE43930DC4801FC99043C93D789F5ED9A09946EC104C430B5581
+299CB76590919D5538B16837F966CF6B213D6E40238F55B4E0F715DBD2A8B8B8
+80A4B633D128EB01BB783569E827F83AF61665C0510C7EA8E6FC89A30B0BC0EB
+5A53E5E67EF62D8855F6606E421BD351916549C569C7368AAFB714E22A023584
+8B1D6B52FC6F635E44058690002C6BA02CEC21C54CC8875B408A8BB84F445894
+5D6B3E4841CA20AF852A660FE9C832F773691DC6F7197FF3DEAEE97418A5ED2F
+F2AE65300416227CD3BB03C29003C770CD7D2A7A2E4C1DCA193651C2CDDBF93B
+966938788694BFB562AB0010268955FC3555E5984CCAB0A9B7590C77C9BC713E
+A29E5BD7193A4E971D1752DDD0F0AA4648E7E87BBCE66A1E836C715C408B07A5
+9EB56BEFD4596706CF839BA4CFA90CAD4038C1E006B51913279A2C31FBEE5BD4
+A7D74F9103CE6124F5B439CB860987DF44FE17EF88EF1BF62C67060D25696BCD
+94ADF08F04E349CEBDF9D3389D870D94CC05E393B3F4362A13A6A672EE5E8F5A
+DFE7046AFE3EBAEA58FFEBA4A47BF61F92E2003756DA643CCF2C9DFCCAB62669
+E3C2A18D690B64D907F50BCA155A85E47C3A6954C6FF7ACA36D8DFCE777B7929
+5F5D5F787B9C247ABF13D6D7B4A8F06BA25CCB342F8A5071325CDA86AD71BA23
+8A9695C7D1D50D0AAC267AB7CDBA7AAF46A264B7B081B7E79AD937FEE4969FD5
+155A99E652461EFFB4BD010E5885631E2B2497D6B8C43CE77D7D47FE201DD46E
+4482FFDCE150A1183C22C004A0AF0E1F42AA6804E038E1DFC8B0A3CE26B52038
+44D2E7F759DA5C252489E5525963D68BC27C82247BEB18818C7D4CF0BC5CC97D
+8C701034B8DF798DD4CE36C3F8B1FD40B2DA14EA75583852875031AF8C909EE0
+04495FDCD04B05A5EFEBA56A8CAC1F57F1B8AB91FB25C81CD51EE69D6E0F52CC
+A0E12CF7E3187D67DF71A599FFD895FAA7BF80E2E6B96592BE77AE96905BAF0F
+F547355A36C443797DDA7C414AA606CF9153E03450B77D1BA4088D739DF55F07
+111B9E11AF37F45B6EDE6D7AC126E05886A57C83886DA87761BE600DEECD1344
+8A82BD652BE7ABFE6A0F50ED7C6F4EE12CDFD80CA7A5518692F267C51C3FE76C
+567BB8DDBE09A2AF901F79AD02B435287CB8057B3D5EE6655071F67B00438728
+C4C3EBD648BAF650993AFE5E2B29074A99ED0FB725D9B8CE8B0292B08A280214
+C3AF252BEEAD30C88F72E322FAC3E9D78A1038F5DFC41F7BF1AE3744A0677094
+51B77C2D630B67853FE5E975A395C06A4D4DA744040B272C2B88D8B7ED3A2C01
+66F503C9DFD3C7DDAC865900D2A4F2CDF517F449851DB1963468D0266D7A3E58
+9F6B2A1843E6444274F16A9930302DACD8D2BC4588765099A86BCCD8A31DF0E6
+2853114DFF2D19F812F19AE6C2E419D7AC1BC024D1195074FD0C6717BFB389A4
+4D5428E7BB2E4F9E9FDEDED7BDCBDD3460805AEA0B5F6460C2FDF19273CE5BA7
+5D3AAE0DB94C6AFA8339646191C23B0149E7CBF136FC4C844E025A38935DF256
+0A0A6466A45EE8B9B23B6A055856FB084F87C73BA28F1883E3B184CD813C72F9
+233B78CA4E125ABD26F29B92CD9DF39D6FDC2A217E2B6B45D9B0A4D536790A5D
+BC0903069565A442FA7466414D948AC432C6B75D8D0E1DBB217CA3DC38A52DEF
+62E9D5AE9E753956C13819D93148C7683BE4F71B80BC066D8C19FC807FB1C086
+B49215DCF56A91A42089F0D063B9981925691F7DDE3237403AC714F5CC3ACA88
+DB2F1DD205578C00472FD70C8BA4F752E3923ACF3164D442A6B639902ED060D0
+C5777BC20F9A3BDA60FA3BC986C38136FBD2E8F910E32EF36377C9CC187F4AFA
+CCEC423DB925B378522B748BDF12D523804CABA83CB5A7ED69FAB9AAB75EE8FC
+38D9866E3754C4E2F2B9AEFA804044D878DED0E114EA0E9682FCF38F6628E63D
+FE1C1B5615E54FAE8684566EDC4B616F76EEFD6207E0386F06D3BFFA26425F24
+303CC7C8A8D7021E7D09B202616988287838C3DBCE3179B4FB5C726E603A47F2
+8248CB508F327D1291CF3F08F7C88298DC2D0F778D24304EFCF6E074182BF5B1
+8E6551811FD6991971692108E289B61053D6DCBA2925B3903E8916EBD09D97A2
+C6D08E89DE4C0CDF7185E1E00DF456B249F0BFC686E04FDAAD2772DC2C39DD53
+9C23A41471267F53A87E5C2B8CBCDB66CE0B9844BC506428E6150B48D2FA6363
+4FDB2CEDFBAE0B7DBCE4D83E29B2955F8966272CB865EDB360C8A8C19EC62A29
+03066483E4083524A1E8D80FE3867BC1AA91753C26ACBE8489AB0E3330206212
+93E07ED473DBF457EB8489E66FB4B8ED8A9EA8911CF9308CFE3E6D6F36810EE8
+91CCB11BD548617B2C683C354452B9229E7C9E68828BBEC324420DF7C188CCE0
+FBB514547553A7E9B38AC265783891F42DA472388569C8E7594F7E8810895A27
+06E456902A8D9F65CA808F1FD475D011C4572F8A654BA01D67942226A663D179
+95149FFF41A9F55AE84EEB9A6A39C017D7E4FD6EFEEE7FF3CE847CDB064A4954
+9DCD273B810E0F259501BA4003A3EC1ABA6E13D24C0B57FF82D6DF077833B6A2
+7EA54801BA81DB961C261689C0887FAD83771E55D3D137AFBB21779397E11972
+6C6CA922F45AFA5C0526863A5AD8B9C0775CCBA17FFD37A44CED4710884DBC31
+5C9D3F5441595B86CF7CA2EEE42AE87896E9E60EBF5F35C2B7FDBF9A9CDAE262
+3F48396F0F741E9DDF1D4FEF75E68AFB020D06CC29B3A7B2ED819D1AABC12B91
+CA2A65F1AFDDA2F3FB322E0268DBBA024663E49EFF076455338FE31A16B04EC1
+797EAB0B49AFFB906A0690A1E8E2F5314773E1CCFFF43E6FB3875AC907F0C5D0
+DCB9BCC127014D472463560CA0CB1C2CE614D94177C7A52A5B089316689C8112
+CA57E35D716D956DBF9013B1E5B9626456B1433C8C15FA906458F957133B9E19
+8D46DC3AC015F7602538C2AE3927C6DDBACF38E59220C2F5AF36B68DE9117C51
+04CF7DF32B1AF55B87D1D8A5F4BCFEC66F63B32B6548DEDA3AAB06C5310E4757
+78AFF947DA22809B360FE535506A554DDDE5A6F2411246653710ECE5CD3185BE
+730520A766C47E1ED01890059882BE1432586864E1A86A7F586438C8DD35C00F
+021A741ED47E0F16DB6070ED0C50038632CA4AC2975578A8372A080CC0447C79
+CEABDF2BCD5E78564247B0F0025F556DA8FB62125227849EACFB724A4AE3EF57
+90C07A5B27D2E59425F56BF8AD84C5F5310FEB1BC73D536339FC2E6A5BE2DAFD
+97FC835E0D52F680F80ACA37DB498AACF152B9B44626CD89E3302C3EE1623EE0
+F998FA78305960AAB9F483F731F5F67A8C963C23DB8E48FB804EF8B86FAFE7F9
+4C09641915FA7E3930AC922682313408BC1607C76751CEEAFD660206A39CF394
+40ABE2A313AB7D5FD6444E219DC5C26734D322BA268D330AC17959A390D6C8E7
+3A155095BDD66516DAD5D65519A7FB871ECDA77061EFB21F359158B4470EF79B
+362C35C06B85C9A9505C8361939C6AC013F2CFE8EEF46FD8CB4452AAB3EF1FA7
+DC066557BADC2ADDDF7DDC2A0E1DD4A357E27A2073427EACF9B9035DA5272136
+7DF37E26D96ED4B2ACD60596E039BCB15E259C72FEB3344E3EEE3D4F17DF4233
+04C1416BCADE80BD483DD8C9AF979E1C7D50C4CF015870703F88B92C4FE46AB8
+DE6717B55C460C805B391B84333097E116F4A51F631FAFAB34CFC925BEE8B72B
+C9FD5F5A79D8F2295FBFAE649DC6AB47794AC7D73431FFE5BE992F2B5AC67049
+B5208251C0E442385A9FACF25E3A98D7F5D4C2A1ABDC600AABE84769CA83350F
+9B87F71CEAD3600E02FF9AC03C1B5C21C84F911511A0CF0111BAC7605EE31229
+3C526A79D943D92E1CC3C38ABE82D560CFD4172F318030852A5FCC0534B8B3FE
+D7365987C8B48A072907B26CDC2108130A33233E8E0BB5FDF14FB55098A10EA2
+B51AD9EFB119F82B08D256D396D3263FBD9DBF172D43A90ACD1A31F3E89E8571
+74BE98B9560E2CD661A2F93C69FEA3FF26B00772AE2C2C24B98D3D122EA2AA8A
+44652CCDF4EF4F01CA7D62A976E23E8A86291F43BFAF38FD9C325E70F9C36CB5
+A181DAD30156E98339E6A0498D3420B7BB3B4E651A9090D4A17604AE386273A8
+3D4AE8CC18345E6E19DF06BA848F203F74B161D6A8882991CBA7385F308696A1
+BEEB0130D938A764B98A2001A38489B1334025EA848CA44A116D64926D460D64
+01159E77EA7ED9ECE7BA77635BE564A4ED89315BDFF54ACE6AA1A26591D13CD4
+6D6425CA7933769B842192858D10998509396829263290A3A7CFEBBDA3EE6CDD
+DF1E492AECDFF7941B53573F01F623CA0A5ECC9D05A3D0954F7AE8CE94AC3B2A
+CD4E27519B2E16F033EB732AA024BBAF74626DB55DC74B1FDDB07FAE98B4AC5C
+683CFD8744F361838D343B657EBF52DEEE7AEA7565C5BEEFE455DDDBC4DCCA7D
+87D6D769C5ECCF14118A14A85A86865777C8E28F953160D5E82844AE54D541DF
+550D5F1519E183E0C42BE88F0458CE8087F2CD4B1B49A8E9E3D127C4A4CB74A6
+2E73BF4CC317781D03FF04BC36AC0E4AF99E2ACAD20F6F8029DE8A035DAB40DB
+17D237850BCDD05931FF4B0FE2D0B79EC5A88FE0236271CCB075BD194AA25AFB
+3FB93A5206F61A14602E4EB6F1C31C654527CE0C02D04314DF9AFD710D0EBB9E
+F8721B97F5FB18E27507E1F800B5509A58A1A8296C72B7B73F99B6CFE42E9C2F
+B63B3555475E562672645CD374BCDE937A9B05A157FB3E74C8297507253E957B
+1A9DC421946734CEFA3D5EE357DAC7E9DE17A5BDDEF6B2D2A740BC58128FC514
+61154664412BA1C05209EC992A77B7CA45AB7C0EEBF590A5B5652866008CDEF7
+124A3003AE6A7CF9DF3C72750CBD281358CD2FF25B162B78CBB971DB3477F8D2
+ECA3EE9CBC90323B2C236E375337EA0848CD7CB5781A2B0A42DE7E4D99DB2746
+0B26796CEE129D23C76794B7CE21C13C7D4A998B752C8CF43A4821B736EBE246
+D2A2BD7BA3351FBCD1B0A501EC1EAABE60D06DA2FE39BE1F0AD629769FDDC933
+F9D02F9686EC8C2D7455C26AF4DD3F6860B2289E3A30E1C254AD17D731CB73B2
+BF4DFE90CAEECE3ED0CD3FB4C8F4C7BE1C056AB4E9B95781A8968E3CC1010003
+75DFBC4AB9F6B27C5A9AD88D94441A8ADF09EB275E5F0E5E6F3BFEA0FA8C308A
+8593ABA0645ECA8FDC3F0E264B35D4B0DDB86B93CD8A047FC409E18196B501C3
+B003622999C47BAC04FD1ABD8AD359C977766E9643EF3BD6385306B08EE3E13E
+7DA5A06AE33D17A3D574C6390DB6E9429754B210F0C349C359559C7EAA2350BD
+F61D4D8A92B1AF697BC620FA0351E67E0D9F41A95A47EE0BF210C2C48691901F
+F905F65693DCB85BE412F097480F6A7266AE0A928729DA0F691CBFFF3B276EA7
+322BCD2206D96E3DAFDFB992CA8F2955F0E8B882729DFF840569D12E4DA1775E
+523AA734552AAB6F2F16B89B39F1A3FF0E07EA08D13E612F201716C67F327017
+6C041760DA30374434808273062C1FFA2C47B3FB578807BC26537F542040FF77
+66C995EF3E8B08B09FCD3EE89C30F157158A739606D2CEAA26694A4F1CEA6633
+B54933141CB85C60AB262E2D4E824A3B85C2BEF810DD774F296AB37D0BAE7182
+5648CD18556ACB124246A75474B232D712C2358908B5D9A76F82C626BFDE01A1
+093B8FA6AA0B32F2CDEF737B28BC0448FF816DDB5812131DA0DD5979D77C3838
+B978CC3F6778A4BFCE9A7087EFB19749285AE4C92B99A6649DA349A2E0889D72
+6D4FC664522F06C8C4D86D30BA43ED4E42211217D01636A4E17E2A132D26F394
+EC34EA12D84594AED9C6CDBBC0908860F39B240FA7D7B3003DB10322498691CF
+A294C0FC7ACC0BAD1EED3E9D60AAE3F7429695892D1A21CEBF062C6129B33966
+8B2EF6E932F9891DE6028B81C5E9B23278D35B7F0D83989BCBA25E20E9D503DE
+144DC485F09A4EFA1268AC5E4B551C5B2F1D51E9B9B9C0FEE585204F869D0BE0
+7287D7570A12940A47C1F51AC6134F03B415C30E147C49F89228855D093EE55F
+172711F37776E97A99CC4B36E2F10713E36FB279FD3FA5A0EB9F3938F42E2BB9
+254EB8F0C0F30391735019E02BFDA21D9813C6A22279B898EAF01AA892B14DC6
+5912B9275167AB46EBC420836CC1A5F38A4EB47C039A7BCA62BC3FCE4199FC71
+011DD6E5FFA0F3D7F04AC02AF91B9249B9F993AE346572329DA852115BEF8460
+B94690E790003586F473F37EAB5AC2922F5F663EE2C3C0C336A8DB71650631AC
+0A923A389AC911CB215EC2EC7D50CF8AEFD59EBFFA53A9F1FFB7E6215F17093E
+3975F186FE23BB5FA5474C11408FABD223E1E6F62035B5A5C1AEFD8899F00FFB
+E729C2D5FD551E80716CEA4E8281660286A802AAE8D5834F37F2EAC46297E57E
+993B09251DD7789D3467417E393B7DEABD06676B96241B0E43ED1A1A9FC3B12E
+0D34B2B0792B79AA648FE9450C3B209FB6D7D91F50C52A5DAB0BC81A8B698BD9
+18946EFF691912D7348D48FE68CD876FC6F71F81165D0C3272DA1A992308D9E0
+ED6D0A4DAD679AF495F62B78D462B463BD4A40931172290C615B3B3B6B47E45F
+CEBB85E0A6AB6832067CA6D403C239530D07F199788AA4DD52553836851C5228
+1072406F6D7323A334E7A7FCA588897C4FBA6D4F7DEB65525EFB74E539C988C3
+A685A98752F7198E77E456A545F0D23A1BEF81EF58B02D289CF980A3F17BEC8A
+6F83DD90C4A917EB0E5E2B444A608E2E9D2FF80620E16AC1D7775C0A10C1299B
+BEE0E1AB24C50647E5CA1DA65CFF3B2C295F0644CA7826E1DC6FADEA93D66A20
+DE852F20AD224D28DB900519EB1569837139C833F24B799F7EBE3FDC14235323
+1D0BCD4991C861F38DF413A5A5588B73AEC3BBFDB885CE17BB3E97B4E6A79761
+93EC8418C2BC4725CD61B5E30C07352F647C3FD50083878C13CFAC241DDCB082
+E53703D182068727F9EB6FACEC25F6D901D7309ED7370867E34E267519E22D62
+4FC7093448BD0D6B1C43D318A3E14C92032325C132AE0FF7ED707E1FA4A955FB
+F5224BE0045CB14ECC321D0F333FE24EEFCC504F7C756451D7693C3E6CA87526
+4912E1B6DB935BDE76FBFAFCA4ED473F1D2618812CFF25A6859C626A216603C1
+361BE3E071FCFEC2D4BF2FEBDE07DBD56A1BFF8303901168FA06488BA6B76F36
+95B0A90D7724E9ADB567C2ADC65CF3482CF47FD1D16F70AA19A97D0F9EFC611C
+AEA5E1ACCDA7FB2DF05E9480936281484BC329F0B771775E73F7FD72FE3F45F0
+50ADBD03932B38F37A8F0A66B2F739EA3AC8811C8F514E68C5643E4AFF485C81
+88475A523D7FCCA5C8809BD49846C77795A38DC6406082000236A4D2628B5932
+AB7916D44EC2210CB941B1455867E510E9D8A0B83CB645BCABDCDBFCD51A4E12
+60CFFEF0CCA548F654037D01CD631FC4E1F97B4F65DA9AE79D99F13A726E93DC
+BBB027B7D175FD17A704C4668F6F8428262959DACA9F8C687C923CFA053804C9
+9B2005FA7E0F07D81E52A9A37AD5CEBA8EA63929093ED0DAB9F7C99C82A50E6C
+6440387049A0C359218F5268C9A28F581783BB9D29E08772D7252FAFA6739687
+22570150178893C418531769CB3D96F799BF1C6415820F96B6EFAB5344E82796
+38A0DF66609F5EA332C1065274EC93027D264B84B52AA8AD82E13E2A41AED340
+B240D1888CB89FBB748FD10B214773D466A44AA2AF44371CA8B9A4450DA76EDC
+0167B4015A270B9983B89EFFA023A3DFFDE181B90C51D70557B0844362B0652A
+6345C6EC83DFEFE099455232455943718297254186940D6305C96EE2B9E3E7C9
+A622D25E0471AC31A8ED3AF8897BD19E322CFC3BD3860D8A0634081D9AF53A9D
+84F4ED39D8127CBCAF9AD48E9CBD10A67A2CD0CF93D61A5D75A6CE175F267274
+518107BE0ED6EEC098B1DE979EEDCAE669A52158C3CD36EE89D80ADC4F907F1F
+37B37B4F60A8EAB65D657DFEDD87CBA6F4A23318443ED93027964BC327B5D1AE
+2719395124A77EBB2410A97BAAF0B812498AE2C9B18C7002F7615017B2672079
+1E990697B148E31DA869A76DAE831C1EDB349280DC2160C833DB3BA5C5ACA1CF
+CAB1DF362D0026E6AF6D29FC09D862DCDB1BA4B69E0914A7991019208F6736F2
+0ED0AD5EB87DB341A65594255B7B73B9868EBBA57E019B49D6493CED5BE58691
+277AE58E62CA726946CDE196ABD2050D0F7617AF39781684E43FB203E7BDD2E4
+149F8DDCFC9BCDF09448C47FDF587388578AB9802528425BA2BC5F4AAAABE816
+6F0E1839C0D53B5A71BFBB591ADB521BD4619A927C7C2439B577568F0D82B68E
+6C1E341EECEC3EF7EC2DD576911172EB9AA85E4C66E37308CD8960E8D89AADF0
+E5260E443B822A47B5069F752748F8CD0AA360AAD6E65F1488818636096CB526
+9021C22375246E150218C84D032D6214AC83F4183DCA78C67FFD7FB64691FE35
+0243DD0762127C3EAC0F9993418B73756D14BBF8991171DD5E558749242C4951
+9D9BE86C662A5644BA7DD201BFD97E1C8328469226CDB427FC74ED8B7191FB8C
+A297F9F21F89669FCAE16C425C6B97A3C002C7B1D8ACBDD276A6A49126F674EF
+9A66195A8C4078851F1B2A94ADC04CF74FDD53F695FD9A67EF434CE57110373F
+B22B1B2CC2A0BF17F9FB12DD143A32FF6F4F6287636FE1215AC6020D563EECB8
+9129A0AFC39BF075EC71E49D71B2F47109088C973E0B8917DC453CC9D61FC8B2
+861CB6D8A3C680CF7C6220F5C8532D80769EA928E4DC747018D7F94285B2965E
+76EC3EEF7FD75E6D8DD03DDB4E09880CA3BDBDA99E70BE806805D0DFD22FF020
+E7F192F968FF0C36DF271463CABCA0A9B5EDA91B4B06C1A73D186B1B594369E9
+7E015363219BE2DA0AE8E3E08115899D367A5EDD5AE097E79D9645BC849096F7
+FE0868AD5FEDAB9A81C00DB528E699A2FB2CB329FC68E740984B0C3F1D228A95
+9AB66F292326D60127722373BB4A9FA9356E092D462A4EE944AFD1CF700F7870
+8CB2A5532772E04039427165FAE1DDA583F9C852BC199A62297B04ACB45A0980
+C91935E27A67D66630F85923428359B2979EE364DFFF05A5CBAD417C4A1DE05B
+64E3A7D83E7423630B006001EBDF78C4725A9379DA084194C5BEAE8CEBC14619
+57D71D7AD1980899523337EDA1BA949A447B9EBC0537BED02DC638BE8C266C6A
+50C7E306A8F31F94F7C53DE72EBE9CB6BFAE296F15743A97187ADD3E3B1643D0
+484D85DE8C9B8C841B5F5F11E9D52FAAE7ACCB3A4B107D0828F4DA6A2C223DF3
+2FDA8F781AD806FDC412D2D2627C961A3483704A9FF0C2681B0BB17FCFD0B2A0
+BE4DC3D3C4B13E8239C369C586E7F7EABA699FF81E3D9B8F8E26F5B01BF4785C
+FCA7954B37FC7C6834EFAC3FA714F11E8E32511F945E117220ECF50F04DA38FA
+434F945FB07067D5215061D0456415C3A5B61D079F506919AAF44B84A2264538
+F37E3B1DA9E8EE35BE937B19354B94AB63E4D37B9AAEFD6036D83FB7ECC36E34
+3F02DC31372231452FFFCD772269CCB783DB8E06B5C5A094CD9422AE9AA4A6B2
+7E69CC663FEB5247FE9AEE2A56F86D8AB28A3157DFAE1F927A19FA11D4C09FA5
+515B4C75A9C71F3DD607D292912F2291AB2A49263F1328F0784B8E65A4F8A8C1
+D5037989CBA8717BF0DE8567F2813DF72673041379A4C5BD74623B19E6AB7E3B
+A41EB7AD905120A5332E0F6ADA1E252E5C85EC79FF31EFC18D668CC80BB5C1E6
+4CD2973CF6BE85E151C0E48E84EE1A0BE7B5DBB6D9C9B63B9923C351A5CEFF69
+9A52B4797D345560CF865040444913A2E5F8F26F7A6C75F7DC3D72A4A873523A
+FD0F8FFC705D895B3E7BA879011C3B09A9EE88556861F8BE9834E82D5AB844E8
+9701AF0B46B19B594ACD6F5ADFEB997BF4F16621221901B7E1E672867AC9ED16
+C00BB166E84B9A81B3E7F330D34FCAAF1EFE1DFE3E40709AE2CDC28E3FE52ECB
+8899EDE8ACCF05EB29834F8E2C28F87598568BE250241516F8E92D3CD33B9C80
+31F355E315D6B5D86C9D8B535E9F2E2092DFFF39687CE11F32B9D7BB1AE71A13
+C47A2176094AF078F49D1E9CC798B759E5E4E0B96051977A747B38F786D7D512
+4929193826469DCFA0EBD9990773780F26A0E5392BBA495D5E71E68378D41184
+ACC705CDD839B67BC5D3F5EE8EE3293CF4D0B09BE8E985AC2BB19EDFC1328A5E
+3C19D2E33176989ED86098641F1B0D5D01BABC235A09AE8F8111E288CAAD3683
+2BB25487385C4C29E9FB829291296056C4DC7DCA779FC799F06682961A968749
+5DD1A86FA69E04C6BE9ABB3B6FB0FE49DBA05FF2C0107F72E761B066E1681F90
+FD82D0BF8C2F6175B5E75B7ECDE48AB32DC5BC6FD4E335A151D5548CB2834A2F
+E33A9E00328A4120360D91021E025281AC62478A5BA411EDB8CCF015758CAAF9
+0FC69B5DAD6FB9737480476844C7F8B624016552413E76057A9CD3D2591C56CF
+A70DD3209A0BE5302E03CB96E218B9659004D22E7DD05E3637C5830E63381A15
+DA29461514AEED7BD1383725052B5B062DAE3A480D8A5A448EEFB93924130C68
+AFCDE429B1E8A10623F3E67C66545C9AF2C31FEC84AE964033B0EB9ACBC60E04
+B7F228A685F0B466B06934AC0599895426D26E384CFA7F4F32305857F4C36247
+CC592FCA44AA1D091207D57C7B0A00B5608FC7082820035FDFA9BEB0BD0FD03B
+548BC380C5AC95F6B6204CD64441711B1CC8A187C7BAB09E45BC0DFF84E02288
+F2B799A30A0004A9F54125213131B4A2BB7A1AC8C6EA788998917029443A3771
+209CCA27B4B2A328201828E03390AE656222CE2476398CE9A8B38079A124065C
+BFCB8A1D5C5DD43ED28857B6C6345B8D9B81AB948BA6E0F236EFBC386215F4AD
+DBEA92303ABEC5D9551A848C09C97C46778F03F831B1C60721CD0FFF0B2D1C28
+890B5338A19926A5654D7C5D661A998E6EACDEC8B9248D650767E9802877EB31
+8D4E9D7BC290A43DB053F2452AE78AC296138719B432F99573315C190BFAB12D
+E3FFEFE91E20643C2FD6057CD61F65AE2611B62539CA73DFD601EB411C53CCB8
+7FBA0B4D77E46249B445341FC9CE4ECDC079EBD1671A0D2BC018172F46F046F6
+9137EED70FEE7A29D49152E2964F7FD8A24AE8D52D40C26A61D90C5195AEC4A9
+DA381536466509781766F21B2D52EE19877C9A9E54479128A97C60CAEF2C432B
+722282F589CCB5E480BF6A480342E3C095980BBDD863A135DF4827EFE3A17A3D
+2877614C580A0A41AF0F3A67E1E6099C6DA1A42C16877AB084155AA3A2E03318
+F596DCA94225621F1C1E73BDB948A06B17FFB8F698F6777029E2FFCCD81B518E
+69E106041AA0BDDFE910437E6F310573E2D42BE6DD1E62EC1760DDC1E2AA4E3A
+8347B13206F20F7FAD14D12B349A9E9C30503271596A48B7F974C83CBAF4486C
+8945F703387D97016D0F40E3A6624B74A96634607A7DD53214A8DD89FB51A763
+93422516DB7C4C2E944CAA0A5ABB1ACEC9AAF1C8CC732AD293A63D03FA2D09FE
+FECE20CE80D64B76A6CB8FC203C4168C18EBD163162B7D16F15B5617BA4CA837
+253A6183E37940429472BE6A252F3D24A4C0699DDA810A54BF4EF2AF1F05ED10
+ABA4DF51BF0EFB5747D1AA747B84934E1BAD5775B50403046241C706AF831C23
+86A20C96C5720D9941415C038FBC668D2EA0527060DB5E12BFA9E0BCC4499BEF
+78DAE8D352358111B7D26EEB52E86FFC8E0456BA2F6B33C43CD1E7709D087991
+F13B71F527D4804568118B3DB326396278C1F53C0484EDB6D5CA9A38C227F6AA
+BD0FDDA8073EE53ACD4E7EAA9BDE72236B0E58DE510AE4AEAC2313B54FC6E199
+5CC699FA12C8CC1F126608B82E228482344A2D6323F643BB3B53E53238883F00
+0358F81203C5661B24A5569BF6E498EB8FA10018CC4A5CA56CE38C681DF5FD7A
+957C416EE99BD7DDED32B0A0282A7C7AB54367A1D362495C78AE9723C1E66CC6
+777002EE0E290143EF572AD53F477617ADD4EE69D849DF67630044570624C18A
+D0FC24EBD36EF26F0C90167BE5425BEBFCFD0709BB1A1B92CD7B21190E78AA73
+DD79BC55E77BE76B83E304EC7843609381D66A24588B2DA34F26F082E8AD12C1
+8FC611DC96A30F33A9D2825CE04C46CDE63CB084A04C6ECF052871A644DFF238
+6F73702470B7B252EB91EE2FC9DC8F521E3CBC492398EF00F7958EC9273FD9C6
+E0AFD3A8A6A44231F14D5E6C2D7D573F0E8C4A4DAD1D32CC0E35B857F1A12A7F
+F5D2E57F05C53D6F36638581249F33B5383C21031B3FC3C975F95326C60084C6
+01DA86BB781A9DB96D583A16D146AACFFAE34F5C0A97E5EE842153E5BF21CF8D
+E54E134DB7942A1724C1D0BF15EC0570DAE8D96595394A15B93E4111B8EEC96F
+9BA1022DA26B26AAB58E8216185806A302CCF86997363831A69FA2AF27DEBA00
+C8E35F6AFFAC00BD24FEFCC672EA6B042BAC6B1B6EE09F2F2650527AF8C30E62
+1020A29C764B561C74A6CC483D8968102962DC2ABC515487BAE7D3E46CC74415
+D7C24C3605C710E9859456EE0F9932BD5DCDBB7B60D21F0179C61CA5807B0BD7
+994943C1436CF2C8F0DF2C07A5ACF3C8CCBEDEEAC3E2467061A29752BDAE7F58
+7C6B0BF363E8F71CF825878A789DEF0EA91A8DC251D5DC912166F4370DF6E9CD
+E15A81BDBE2334563C17945BD691B1162E2F0DC7A0C14216E2CFEB34D4D74D94
+6B88493A16E5CBF842F6F1E5367C19E0EEB59BB4EB57B7A366FEB7B1DBB23E87
+F670885CA539D6F89910094CBED95EE2928BB2D4323688AD97E4CDB31CEEBB12
+99171E652AB5DA554CAA8B00AEFB68012C31F3A7FCE54793095721CE7A0147C0
+FD1FB417A2E22708292BF2EC9D019F18E79A22EFF4523AD070B108559E5FFAC6
+D01480F85B25A482E2464A2457946654DB1580B28DC0301E7E816EF8698EE258
+9E9643C98B6D127E8FC8007F65CCCC7E6352A31C65D47288A9D52315B13AC7DD
+FEDA7CFB858BC79B9159DD926DED61EB7DAD964C6A2919B29563D7B1E650F2BE
+1AA01284E9E541FA9F5A0B4845DDCCD38A78E4AE70A53974DF507E57A15A9C99
+83CF1EBC170A91F85945FEBEDF2642001DB6E41EE6B3AE4A1A353A62FC70562E
+4E6E293FF671A25279930E1DB7897860271FFB50AEDF729CA23538B241E76302
+1953355EF7901ECAB00C2A087EAF92E23BCDF88E0EBAA8D1FDE1049F878F705F
+938B86B0415E7A3A52F8A98C747CB5BED198E7883535140788E7718E9448F490
+5DD5D5F850AA909B26B742985E29F416A994DF15D85F46F3B1F6DB6142CB08CA
+8068FBEF6C3E1BC787FB1F6F2BD7115732034F1D53AE8926A184114CDEF3554B
+B86F882F9207ED34F28D0736CAF1C042A539F2C9DC401BA31AEBAE3514331635
+C9B610E1893CE5AA5BC47722D4516B921D47B379BC009088A47C9A7EC7587B38
+4D11C7BF489298DC0D3860FC965E42A1757BD66336E737C6C102C0D9FA38483B
+3DD4C5C46D9A898A38FB26C656264BAF0A4E2950604C0B99085EB379BAFB5CA6
+8D261183220C536135CE78D6B38ED0CDF0EBA9DAC6672F1787C2F00A79E694D9
+B2E395090338DE0B4293C38A8EF7BA0B1DE255222D9427F5C3FBC0FDD47797CD
+156458D1A096E244FFFEB0616387ACB1DFDDBD9645E03DCA774E3D400C2104F1
+CAF3BC68E0C5F62BDA81A9ABB76EDE006FC163B5FBD7692B9C0282F7290246F7
+E9E8C45D53942061DD9F193C05075088389E1C67AD220D48C98C351209AD3196
+B05FF25D2954DC9FC4BB31C8DD738D930C509B7F508E9FF533041A847F34FA2B
+01FCDDF8FCFE3E5CF23C7AB317EA64CF410336B52BFE256BA60FF45C44FFB46A
+93CEE3E86F52943BF2960E4F52CBB94407F8B3E0A2107963730497EBE8FE5B0D
+82C2A821F2BBA66BC87696FD42107B0C0325C843183586BD218C83AA5C430FF8
+D128FE72E306E97E14E8C55D1892F42F4827D140D7A9C384AA9856AB0B45AD18
+93B5ADBE8FF79E6253484DFB86E612F11AD630C51081094B9AFFB0206A7F19FE
+4D87FC9C35A82581140E78390495DDA00850F39701D9EE2364E845669C834CE1
+4D4D137CA4C0F253CCDC5398F794F42C44C085EC8C8BC48C0C791E64D09EFD33
+BDD35753513A61989A690DC6E0A19B83B0FD74F7AFE9BF26B0A51293BBA7C7C0
+9989E41C3277C36DE6BD65DA2BF7990C9599BAD5459C2AF8350EF2EB25A41FE9
+5F486DDFD2041EDD44B5DCE518F40021F501027F030ECA4BF2F94F4B4BE4547A
+FB3C43474BB34C5F717D6CEC6A03523AD585418943B99DC0AA3021D4C37A227B
+C0469D210FBB5D6F68367BF0BCB18480881182863DA0BF46BB13C3B2C4559323
+F52C684A25BE57998E5A4C17EBF390D8CCCAD89274E51D621C2E0B050F1BA34F
+561749074CDD7F0476A9FCA21C71490FD367749A3411A5EA69F1415B2F694AC7
+BAD49471B35C349D71601FB5A718B27E8D60B951B48482F07B4967BAE49CC1B3
+3482B03ACCADD4878928D154E13D04E97B7638ADB35910DD2F8C03268C54C501
+9C6F5E435304D5D2AD6BF1066424BFC3EE5F1622F3CB008BEE546DCA7F127246
+1317FA4988C8BB56B0A653CBCA90E1E673338B8AC72283B9C05CD3745A7BF6C6
+7F3C924D5A9CE8FED15562298BD84E40D71C1F3E1698B5EF6371E0E73BF67D14
+4CBCC7401545FC2D8F3665A2DFAF96CA84AF0E2C873D00CF9C3B25C736BCFE9E
+DC0691D30078B22F862B6570F4F05312DFA07DCEF662A5F07A335050696FB528
+223A8CE16D37B9FBC01409650E70010C887DBF8659971FE8AE80BCF7EE8DE253
+9E152307BA29CBDAEEBF41B6FD7179AADD8E3A6E1F280E4A4D706965FE0E17E2
+3877BDC89E1D9390880FD8AC68B84389848B3D9EB1E5F4C890777E548988C697
+16AEDC4DE63869782A3A7719FB3DC875C1F1ABC6AC83201A53FD65B887F286AF
+245A7A3ABDAA76062A22E14B6B6F47FB0A56D45DCE7F02031CF9F6C2EC77621F
+444FA6598A43F75C39CE8E9B1C980DF3F8E5A7DA2F71AC5177E9FF55D5B80633
+9131318664FE513722357D5916F3A71E7784D8538998FAF4591A561926C73FEA
+73D3DAC4F3436A16F1555D753993C4CE9CDFD5766AFEDCD71A2682274F838005
+E1714D23510FF5021804A65D4250F45FEC02C5C77BB96CDA86BA8EA56BC6099D
+7D78115787A7D23F0D56CB6E37FC20BD2DAAD00544065DB6A197B6DDD7694935
+F55BD6D1BF653FAB2102F84EBE3DE4BF408C673896236B14C3019AF3378C31F0
+6EC4AC9ECE82BEBC325B3BD4CE9DE1FED067E7965C7EC6CC59D2535980658F34
+663E319CC48F9449E119C501092C69923CAA551283C97A9610E408F779CF89E8
+521A5B4F737764310D2D706D1E33B047DE7F9EF3249BD867AD4EBAD6D141BFE3
+3C3FC0BA5AC8213E01BC138B5801922F130B947C5055D2F3546C1264FA921956
+2767BA09C4EB296EF96E78A4764FEC6E9D87A93681872452EDAD3AFB61F90688
+54CC4030ECEDE68844E0D8C9D08F1FC2463F538CD9F59B7D1DAA6A5BED3AC138
+FECFC60FA711A080905E1440F9819E6BDFE96DC7A27F5BCCB22AA35F5CF45C29
+B84C97AD2B49490BB98CE34C1F9ACF861669F7ED2FC1C2137CFBD52882B8E660
+81DBDCDB4D17BECA1F14862EE61D3AE3F772B13F0383F2EFCE3B51C10CA20FDD
+3948FA5EC227CE64D4A13383ADEF0FD33FF33CC4DC07C5816BED85900433D0BA
+CB69F2DC68B0F832848D06E8FC48AF9B06A59D0BF9F5D07C3F73A5B0E3A6D4DF
+77A74E5E74AAE5EDA6FD8D5481CBFEAA2DD3C6570193C88B951B8BD7A989C8ED
+DE73A95D65BC97AB55A5D4250C924F6F7A7B94084C24F72F841AA46FE7C3F5C5
+A0D8A504399DFF335EEF06AE1C578588A622ED5EA23C179527B69D3CC9B6EC3E
+3AB568281F1ECB624893A8D42392FADCB06FAB2A8676E805CF08C9D8CC74312B
+53A1108A7BA2527DCA5080D9B2A4403A9F33F389F634EF2A4D50F9A39AEE4FAB
+6E77555EE4241B578BC01B8AD5ECDE9C3FEFF4F46FB16358270A3C55D63B4022
+1320C4EDA034AB6F79F125CD10BF0A57D25005F8445270C5F32FD15A00014373
+B5342B79922DF741724E8D187C5281B57A64E93AE027AA1E6A6E30FEDD89408A
+57019C2DF2789033534F7CB270C7A382E3D9EE4E5996604468E450F9E97C50B9
+B2E02EB6EFFC1851413804F972E2AA795213298A23CD044B69D3AAA6C416A49E
+4933D241493C212FE7314C149225B6EE11D7B4458168D4DA260B4F0E043FDAB3
+CED87E3C10620BCBE7CF2E7466B1BD9F6E620FBFB631DFB4FEEF7636A17AE5E8
+0DC5BC254BAC588F0F83FC132C9E5F876F26705097B4AD1D05A4F52929D1434E
+E123A49753CA9196D1C08322B54DFE3202C7A1C320ADC10A3C140CBD9B5A9DB1
+FB270BF61F5DB27A8AE2D43E271ADD0AFA7BFA1CDE4FFA2E63E61DDC905A064D
+79CF980FBEC055C345C62487B6107ABC365B2860C01AC82420D190A66237D262
+A8DDD039461C88391A27FDCB26C04EB8D6861CA2223BBAF4883A27A7F72D03E2
+4624D15B090344E6E5627D613B05465C632051701FC29CC4B4E50B33847773DA
+8E66DCAB76D3DDE136C3694E42EEB74FF64A65E314EA6149BD3426A13ED87418
+663F7B44A8D1B0BBCC331D5225BF2E59E5DC5E4A4E2667266AE1185C4466EE03
+B64B154E4FD72E1A70A95C03F619E5E847EA810FED21A0CF7FB15009695EA943
+BD3118E50E9CDE7A8E69102F7A4FF2AE3BF3E0ADB0514549A09EF7E53CEC8B9F
+5CFED55323713C580F91A2A5E16114979BF44C4B508C60B175A78DAB998A637C
+A61D43286A02213B73067F2EA38F822F7420C6BAFA5CB3DF83CB7ED5E23AB4F5
+57ED10B7B46E53676AC7146403360B81C020FFD274948F323DB81483808B0A1C
+D48B111C340E14A15EAC6C4DA4AEE1D046E2E6FBF879C195266E7A90FE0ABBEE
+085F31CE8D1BCC06CC8D6F5398501B736BEC24C4642467F6AD53F817B737982B
+CC25798BA05AB460B49064EF106A15DAF3B2ED51717FD3EC49C5D79513FD5F14
+D71A6842F269DC7365757F92682B03D6973214E0BB1D67408FFCF8B27AEAFB28
+263563EAEF546624CB9059E9D960D6FE59E51128FDB6BF2370125D1ECE8D54C2
+55F308A4AAF1A4B4990641483D57E10061C93B8B53C7E178B4F9A270901229C3
+50CEF638CF8361D6FDB5ABD23CD05C101DF31A39DB88172DD7478198D55E8532
+FE3C7937EEF35EE76DBE1996AC52E11D0EE3DA532DCFA4A5DD6B5B0BB8CB1A9C
+605FAA474FCAD651A760311C125BEE60780C26D9753368D3D9F8164B64662081
+84E596C83637ED5E725365F007E6AC708E2FEE2810FECB5DDE0772130F6B1BD3
+9BF5819D36917EDFA4E8DFE9CE6A8FC67BB20291F5E04CB4CB8511F278326D68
+574644D573D0D157FC70614F0E1FF1713F2894D7D683848F01C98AA570C4CD83
+AA41E43F9DD9751234599CA7946A2B15B769348D2C5F5729DCF5CD6E5943E9B7
+605D327DB48842F0FE5F10F2367AF50D52A65CD81336DD9E64961A550FCFBBD8
+01DB2DDF5420C060C887B0D6BC1C3964AA08D283A2B28969D5DB67EF25143522
+9441EE91A787C0370AF1C787FE033735E54656C24C8699E6DFA65592E78C8A9E
+8400FB03F34730B46AD31517884FEC16123869EA135C1F3BE5B087782E8EA356
+785926D5CD3DC14552372D1C8348A0F4DB60789647311A16C7CD803111B990EC
+FF4389AAE753C4EBB688A9B47AD5A34CC2EFD0754A7F22127C67398903DCC82D
+91663A2EEDC68C1F935664765A7E22A6A89443C05FC41CA2E4650256B3FAB63A
+24D02AFE2CAC1A99D63EC38D0AC684EE48225C49B79184D88AC2E54F829319B3
+323F302FDBF47F431061395F1669CC593C7BC8B24ACBFF6DDF9F0148151B12B4
+809D8586F4C2B37BD871B3C83370C310919D8ED713DA9847580A84390CDFA0F7
+3B51BA7E43D5FFB974C9B09C2C5876A13015678C5F0BEA3B39B717D807604F15
+DBB52E1FEADF5884C136CC5C311751FBD6B09026B94D7894A9FFEADDDF097E2F
+D0073026F57457D6BAAD83AF5AF808AB76A300A755C6B672A6537510968BB08D
+4D10FE6E5AB246378DB361276DD60CA40F076F3A843D7999F92D544DA683001F
+8DFE0D622242353E64B944230DD26046D752C2CAF15D3A74858C65E21136F0B5
+0B7D088EA8EBCBF80B61FF104D8785E8C1A087C12320896EBC0C67E8B9712A44
+2B176F03EF12652AC35E975BB17FF9BE61C2AFFAB4E20BC0A9DD1D188BFDDB50
+7B19507C237E75DC3B984F1E901A03FAE2B39BCD2EB8670B1B0395BECD0F4CB9
+57C60FB6628DAC59D8BFDEE0CB13D42BB07D6048B26F66FE23F4EB21C50F71F7
+E43DF2D75A3A4CF66140C80BC5E90F29A865FD4FEFB1F83CA1C3086EC977492B
+4D989B20469185C1BE7B0E0171D80707208D64CB9C849847E5F66B1AC998F387
+CC6290DFF14214056EEF9D1D01CE27F9F3E3DF9C076C751C88EB75345F01714B
+72416BDDC769AAC00AA63F581821C655943F21FEA1E0AF3BC738DC1734D86AAE
+CFF12F5795F9CA55EDB98BFFEA96566A7FB3ED2A012B4E6501CDCB96FC6B3A21
+B90237B17DE670136C411D329BCEFA6AF3E121C4A6B132D6096F4C9EF3F91B07
+1867D351D78E610B7CFFC6F66B0AD78D909667B07397CD6CFB7AC8B1D1E5B60E
+DAA2079DB71D295ED74443B7D0F0771B7BC2DB068E80219633E871354067BCB6
+D4ED193ABDC40E27B3B824A70DA042C6F835910B880A18D879B003C06F62E9E8
+CABB22B768E9401A389D98ECE5B2D4079D106D36E8CF8CB9A6C2300A8642F478
+C2C6A74DABC1AEAABAF8C0F48368FA8A1B2F16EE1CA02DDF0ADBFFF8DD35079A
+FEA6620856E15785D15E48F6F69DD50B61CD25EA7B7254D520EFCBFDBF313E84
+8BE5B09CD20F2387C61D89A2A7E60AD544C7C59E1B772B9D35B3DAAB3BCB7EDF
+12D82FADE756AAE4288966134524F68702E0AAD2A61F08677EB96C95D2A35D7E
+F06DFF454FB5A11E1027E7170DF4E251F155EE76EC403B50CA3920B4539F5A31
+BE3915DD802C1789FD665C1D5A0C5161B0D1476AA168360E35E5005A69C721F0
+226DF8F0B79B1B0B2C048A30A06A0B85BEC10F536821FB91CE1590D774A64232
+95D12D3FC681819619A206203D333D968C6299F06FA4E1380B9AF3DA2D284B75
+BF7565D70568ADD0A0301A469D59E5DF6045C056DD3C08BEE977C43702D7EC40
+2AF6E0A2D91DDCA9B7D92556523E9DC08E80BEDA5BD02841F15FA75973A34E17
+3D623FB195E781871F0828EF8AC184779B5E36A52D018B7CBF4A47F5DD8C0D82
+456A684800A8A6B1E323AB2ED161D2AA81F06348016062EF7A3D7C463EDB23EE
+C191191EEB0706C4EE51CB9AA3036B5037839AADC2A4DEAC772BC5D3191B22F6
+9F3184AA395FF6E1242264FB781DF81005465660A14B20DCD62C5DA8AB18AE74
+68EB116FA0B1E2004B95FAAF4FFCBC89CA1938EDEA1E8226C82BAAA987B1F08D
+DA63799218141E265D5D607CF07E8D147384F6A802C4A458776466C597BD7566
+20AC0E6CEF3FC646DEA2C080C31285C4DB729A25482C036844612B3FDAD18F82
+679F6CBCBE648F07D65F0087FAB090E6A0BDE29907BBFE861DBD3C99E7F82F0A
+EDC8BE776EFB3318E3C565478D98531E5603215625B5575D9188EAEE95AF90CF
+D9ED5822739415DBFAAB82CFFAB04807DB80DAB5C965D71F408915D908EC204C
+B24485B32E2200DD39A71DB6BC3E1F123F3ECD677157FD957692F14FD2C43363
+817C8370907AD6667CCBD9D2F4764D33F7CD1FCCBDEE4560F27179B78472B5BC
+A50282DF88B0CB7BFC80E1F8F8F49085933D670EE8B1B451EAEBE4F0DF5744A5
+E9A8A4038E3D438262F1E7A60EDBC3DCDEE3DD0D2C8D1A36D68C5E1868F9C976
+A217D7849025ED43E219AC16C8F8D23A1D6AC83B1630CC357AE219BE6465B7C7
+81B93A80195AC14673691AAD119111BA51F1EF28F737D807E2CB59BD1D1E0192
+1F28C8EDC198A8DA3119ED57E1F2B7A6F967F2C7BDE230A96D95E040BC58E37F
+4DA3C3444FBB1D6D4D37AD7B1D0B16448E900AD19CF0D41A3B476FD0C16D8093
+5E716D11C46DAD7654BCC3B41760D997BC6FDC0C617B462717892C0221AE8531
+98E2DB2676D925AE29A432B867B2F5F036D568FF241498326422F7B06D153D49
+0178219AE56D8DDB2215D822B788B445B9DC1A7F09768BEEB28E91B052F17B29
+3DE2F1349762766B65584064E2BA0E4336A493A9413CD4E0C1CF342CF6A53D23
+663E4CD6A42DE20B12CF0127382F5A7E668801E2C7CAB3437D75597696158BD6
+BB56D9847F37A9B0012E0CC7D8B7186BBAAC86F195566F47C3351243139F95E9
+C0C5DF236D3472254C85A89A05C09F17EF888E319E0F05C01840149A7C8567F7
+8D916203E835E9FE94D99F74992B042F5E3C10C8A7913106DC4572D46EA15DFF
+A0FA5E8CD87DE13957648B801F7A88A22344D54F8C433F801DBF7B15BA188297
+5C774C499DD1B28E08472B699FE8FFD2F04BEA197B7D00D1A477376F080F92BA
+B722FA4CEF906D122A696C0434571DA152FA241C4C95B5990583FF7E9C0A3FFF
+A1B466AB96F189AB100B209159306A8F7373E3D101C057EA3047129176C11420
+865B1B5B80EE64DBD1F223E80760339907C74639ABFB8719AEF71A192E3B666B
+0249A9AB24A25E9290CF115268DDF13A7E1FA35185F3AC717C1984D0AF26630B
+3A0BE89300012880916CBD34922CB8871C5D1E11C20FCD6EEB1198288F2DC794
+3B9EBD1BE4BDDBC9CFDCFEE715A60A94EA71F69A888A859738FF175E3048054D
+E2AFAB12130E892256246D509EC2F0831F722DA32633ACE9F40190C0817D326D
+B46B8D91ED0DDEF1D245B257BC06E5CF75ABCC23448008C77D2065AD6D09F5DA
+A4C1A314C4C877774EE039FB439CBE8F7421B3D7C2B85E2B4B7208058FA24CD2
+5ACB49DED05D20B6F4E6DC283379E93D1CFA152F2A4FB5
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -1950,25 +3005,41 @@ F2767EEF4968983FB8DFD7F731D2065593488D21D2CE61DD0F106E0CA36C7616
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
+{restore}if
%%EndFont
%%BeginFont: CMTI10
-%!PS-AdobeFont-1.1: CMTI10 1.00B
-%%CreationDate: 1992 Feb 19 19:56:16
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+%!PS-AdobeFont-1.0: CMTI10 003.002
+%%Title: CMTI10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMTI10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMTI10 known{/CMTI10 findfont dup/UniqueID known{dup
+/UniqueID get 5000828 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.00B) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMTI10 def
+/FontBBox {-35 -250 1124 750 }readonly def
+/UniqueID 5000828 def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMTI10.) readonly def
/FullName (CMTI10) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle -14.04 def
/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
end readonly def
-/FontName /CMTI10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 12 /fi put
@@ -1979,92 +3050,262 @@ dup 114 /r put
dup 115 /s put
dup 116 /t put
readonly def
-/FontBBox{-163 -250 1146 969}readonly def
currentdict end
currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
-3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
-532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
-B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
-986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
-D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A319B6B1FD958
-9E3948FFB0B4E70F212EC976D65099D84E0D37A7A771C3101D6AD26A0513378F
-21EC3643079EECE0C9AB54B4772E5DCA82D0D4ACC7F42FB493AA04A3BF4A1BD6
-06ECE186315DBE9CFDCB1A0303E8D3E83027CD3AFA8F0BD466A8E8CA0E7164CF
-55B332FAD43482748DD4A1CB3F40CB1F5E67192B8216A0D8FE30F9F05BF016F5
-B5CC130A4B0796EE065495422FBA55BEE9BFD99D04464D987AC4D237C208FA86
-0B112E55CE7B3782A34BC22E3DE31755D9AFF19E490C8E43B85E17ECE87FA8B9
-1485831624D24F37C39BF9972D74E6EC4784727AC00B9C4A3AD3DA1C22BD6961
-7E0ADAF55422F22ACA5E4DCD4DF9FCD187A566B7FB661D0530454D0DD6C6C50A
-7A3875C6CBF8EC7769F32A1F3F7FC1C072BADEC97794D4E90E0035282A170402
-356E5A9CD9ABD80AC4342A5283E458A7269252F4541CBB6452B39ED54D336D0B
-19928E9CD1AB26AD83EB209E2EC75011A2643813053B5DBB0246097C4821B5F2
-C92554E9140BE35B2DBFCD98809A8EC9FC910FDE9E0D86457C70ACB056EBF90F
-244DC0A5BBD455E15D6E3180311D52CF50B0BF7D0A7F64F3A1821E0AEDBC2E7B
-AEB549FE1D51088C153799C6E089B5D5D65E1C4E2D2B430CDF1FFA23CCB25D95
-5C43C8942435D0AAA3D9055FF808F2C3C887A3C469BBD98F026D0A59E26BA9F9
-C2144CFE49A9AD892D4D31764F0AE3A10644AE3966B0A790684B14D11FA49785
-EC5565D2B2E584CBFD85125F3FAC133338DE35361943DCE9AF05FCF2840CE512
-998D42CBEC52B57B79DD63F00985881E8463396ADA47189A94DDF951A78866F0
-B8A3D9197E39335277EF2294308DA70065D910943A34F7D5F2090FB4AA42ED70
-CBA469A9F64B95A6FBA4BC89DBC93765E3AE4723162DF3F9D6BDE77DD5870ADE
-C8900D6346957B84C3CE88A8F9A12D46B8FCA50DF4433B0B8AED6A63B3DA102B
-6DF94E62408E24154BAAC66B2B249C695BC0FA37A28699D9C0F3EE94AA32E3C5
-8F8D7F803B5D25014D43A353D719B14B247A87898A960DF68C0C0BAF70C83917
-6E9F7B3ACC64DBAEF3FDCD3A80C0AB907EE342E543D607556CBE5A9089B86D1D
-E768F27D74A613F3ABF883222A8596B542EBF54E9DCE327B5682AEE5F6BCC38A
-2A052EC4018AE3189DC1963BA39ACDED8F0C60C83F8873FBBF0302010956C520
-A7F3F8ECD0F177EDF5F4D5522C5984A3678FF32EEEB570B69C142AB89467641F
-917155D646DAF3352E27BF2AA0746E062E48532256AF364EFC0F0AAE376F3017
-C712E89991FE883E0F1E1B613606E9AF74B88F5F6DA73D0D404213E34649F769
-0FD57EE53BA3AB1BE898A36A6C69C105794080673F792207DCCC4A2B4C286FA8
-0312B33A9868E0363A5F747EB5B1BD8C74C4F7409F719383A76416713D1C1CD5
-B6FEE2AC58A9F7C7BC2AB5BDFE432FFFD415BC5E2C87281D5AFB7F305BFB233F
-C94F2976074ADCA686329630F76FE55103638B3E6789D16715124F74E738F65F
-2C20A1BAA10DE8D7999BD71C25D9617996ABAC8D9D236DDFE3EC5BD58C0E23B5
-1718F4ED8FB93B5755B14432B34FBD200C85A27A8D57CA278EE5F2011424ADC2
-5EA98120F3BD3E9A5417343DE3CEAB46CD06753B4DC9748A63A1F81778E50ADD
-4D11D2674990DDBD0FA549B493D2B14A328ED349A294743BBDAA591900502401
-B2EBAB6D10E6DDC915875482CEF1C8D380396CB0C9BADAA9E16AE65B90E451E4
-31164B2EF7D6FE6B01D3F51FD511FF8B0B473A15D1FA6A3F93AAB6693F514FEC
-CD1DC7E680D2A4DC1F68FDC28DAF728260F61351AC7B0A94B0E41FBE9C0656A9
-74DFA32C245062C413EDB11F347A4FB0191947A7822960D1D433551BBD9B80B2
-4C455F4BD466FBEAA5172A9D6BE51BFDC5A00EB941A239DE2FA934B449F57F4D
-B5E8937C4F33FB22BF6D75E896E374F6777083AE87F0AD0B589BCB37B37C77B9
-DF15CB0E26A3A6A30B38B3542CFE21E1D03B98F68FB4991823714A78D1D6C723
-02BABF34BD67A073E70AFC66CC845FF87225510DCD5173F68808C3FF59FA8AE3
-B6379AB7338F1252EA8DECF059B5348BD217A31A5EB825A92DFBC3CBC7B6C092
-08821077F26B161219EC0A31B47079DC1C596A059645E62A8407D40088F7CABE
-A0E295F663A614767FAEB2DC4A54ED4DB9123B5A4038F958302D17CA2122273C
-6874C6B8A0680EB2143DAA63658748D8D6D18FEA07FD9E588DE6B14E329386C8
-A1E6E605044902C17AD8C88AA4B887489AA5817944AA6061CF7AD4177AB24BD8
-D093EE6E729CC62B89B0EBAF8EF9F1E2EA2605151E3F6FFBF26FFEEA24071ADF
-189E34D48D53FF6215F564954D7AECCA4BF90490DF52925650B794F41364DC35
-7E8FBC7318444A3BF37B5712AABF22D65B540EBB1D2558F1CFC742383D7A0235
-290164F4013B700C9BC36E79BFF016BD37CDC719172B808AB2E6635D6397433F
-96B5419A16849E79C090293F392F325F8621595D48A3945A6EB8822FDDB24300
-9C90929A3FEC02EF47788E17C790828418D8113197B771BA8DAA9AF0FBF2E181
-B45318FF2415743DEF5FA61ED8BC3187B1BE5EE1E3A3C57363BE4D70B2A4443C
-2551167A58FD9A6D4748145E7E2BAD9CB5B3862C922A2EFEDB9AFAFA7686C566
-76976BAD66FD5415E432C1E009EB49D7BF70588D598E37C6E35A47363821A9E8
-30CD209E39F5ACFA9B7F61213D7727799D110C0C007E43638DD294534D544B58
-CDDF225AFF4EDD16C38B00B4C7D42A726B855CE25217272EDF4AABC97E17BF2F
-2AD297530683FDCB7FD992200028CB6B8AC77BFDD48DE6F571716DC90CD26169
-F97FB7442E07E31B71F6A20FBC47797F656E598B7F9CB395CC8417A3928C78C8
-D07AB0CFB33225AD19D886B72C9241B46E3E2F7336B4E463EB616C7A37907A56
-6FAA23BB33A5A0CC604ECC307CA975E3EFEDAB1CFA5062D54602F283272DE03E
-6E9553F57CB7AA46306644B260B668BB80BCE0A4AEAD96E351A3588192579DF9
-EFE673F35B8B760FCE15FCA79A8DF1B0DDFE6F909A69B1F66517E5993D160D03
-38F36CDB4A671A4823A1BFD6F1691E09C97946A628144B376B7BC4DB13A214D5
-0C710605C5A51E2959A37E3B458BFCBD8586F9DF414E64EACE1FD2E47D5AB25F
-70927E04146395F6B4F5B68B6852B9D60C8962F9E0C5E4B6954AEA6970FEFC72
-7B4B324BF21A2CB2ABD997CC48B687E529F622AF45E72557157125FC4D1C58D8
-F2E84AB96B15CBC25FDFC63D30CA8679EB0821975FD333DDC43A7B80ED69ABDB
-CE8F667B2F234A12481CDDD18D6E5B468D5A5B87655D8AD2EDB8BCB88FA87E30
-A033421CB1AC2AA7C0FD0DEC85133E760A7178E7C8DC5FD394541B1796E6697B
-E9C692407D0098F2259FA18D136A3E5D4124EE15B2A396D0E24E1C3790FCA795
-FE794744F4349CDF895ACFFA5A4021D582006F2BD77FC69F81640507F7553CC5
-F5
+D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7
+5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99
+8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716
+EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C
+02CE8D8B07183838330C0284BD419CBDAE42B141D3D4BE492473F240CEED931D
+46E9F999C5CB3235E2C6DAAA2C0169E1991BEAEA0D704BF49CEA3E98E8C2361A
+4B60D020D325E4C2450F3BCF59223103D20DB6943DE1B57C5FD29DA32D34C95E
+2AB2ADB3F60EEB0600C8ADE15A2380DE10AC5AAD585FBD13097B1A7E8E210D4A
+EE96785449E07F0C8EBC2EC5EFBFD0897DFDC15E5BFAC9584D8DE95C5AB288CD
+8AD8B9BEF0B8E5F887B3B0B331542FC8184DCCB753DB6ACEEF98B85756B988DF
+CAF1AE0DBE7D37D5F44A2E760AAE3A5197C27B15E32275A64946C3E4D0476FD2
+7FDE148C788DD2106F7C825E270588AC05B57E625AB17BDD02306F9E5FC851DC
+32A5A6EDC43C770A71419B2C0C8074EF3F222C8A2097CD81A91F333A521B3A09
+482A4FE1CB231CE344AD126AA284C3280AAC3AD162CF0EE241BFB4C8F20502FF
+118507F5D1B5FD898571015E73E5CF2281085072E00D401F6F59761EEC3E8381
+1F26F75DB66C504AB6BABA87D121B1E7040A07AA2FE01F80DBC246CC03C4B2DC
+C2A715980C52B7F96BC1A78FCC7F4F52EEED5F705E08FC1E5BBFCAD121FA88AA
+8EBE58172C162AF409DBB0728F14923ED02A65EA24E5D52B6AD07777455A70A4
+61833D3789C719BA92E901232599767E423D5AD9C807670BE0E7B5CFF8256A20
+C7BF7214FFE0342809570F5966A2C43E784F35015D9040BA34FEAB6A6F089504
+3A40A9E9D711A2721D3F4998371430FB3C94BFC619559B97D49627BB630F4B70
+9D0A8FE4E916235335C3962F3CFDB04C4A3CF714DB5E260F4E66FFF2F27CEF2A
+D4AA26BBCAED23B8BDC98F8F453BA27AD7758537561E766B82DC3032E92A9EB0
+125D98A22C5466AF069BF72A9BFA052A8628FEC6A6AD0B711DFFEDE3AA2D7CE8
+34EA487038EF50F953B8B4471CBA6FC3C53877EC1BC94582B1123EDF44B4056A
+30F49394BDE22CDAD7F01951C7013D26979277D18EFA594E8F4F2B5E615187D9
+39E842EC28461B9ABA52020A127D2CB9002A673A435B13C10602EEFDBBA6BD49
+9DDEAB9E68D655443A5C2492BA061C1391A51592BA8C353A6F6A0708E8860184
+2B5D031D2CAB87D618E9F6F7A0BF3F66B3FD5A25BB91F7F1F5F99CFF56EFF4FF
+0A35C55658001ED2E97B26C869292F6274D433A5443179DBB8EE987196306348
+3F9E87C6422AFFDD30080C9AC4EE7FE5E2DCBFEE4974331F4AAE479FD8806D4D
+9C2B85FC69EB0453AD827A1E767E5C484BDFBF5C8D6E2B3C96298B390F22D757
+802643A79D5E29CF3AEDF0E12CFBECA4663444FC87F2027571DBA9ECF688BF28
+FF0DDB3AEDBA0FB28447CB4B5D5205F40C1E7A525FD7373392EEFFD910AC82D0
+98E71660A1B3227C4A2592F3E853CA4CDF64DF19A52582E167234F4036FAAAB9
+5446BE102DE2BF43E82F0112C2A20F15A3F92C6571AC761665A905362C4F8BDF
+AC8705519C99862CD9C0D75113C4AB5FBB83C880E46B82715B5628890D9103AD
+A2329638B95D93C4DECDC5E6C588C9D5183EE6FC28FAF9825F02DCA567306D93
+5440987A81B51EE7291107A08F201C609FEF91A8F0587E8B13D4BAF74A5A6815
+DE9E4441F46AF8E1DDDFA2D611C889614040B144A5EC064DEE4638C04EAB2E37
+4CA8F50FB8C4D65BB296DCCCD39F1F554CFBED96670A91F515CA10EF896874BC
+8EF48C6447752C70FF5A06F928DB55586354076773BFF7E94C4C3A7A1C1F421B
+A9B4E3936EC26E0C19BBBFC90F021E877F54B62108F6DD1C7F6D5B8E64FC9362
+E173F01BF2904B7E5A08B3543611562C2714099DE7D4FA330DB148B560A9601F
+42A84452811CE213DCE782A0D7809CFD954D6BC1EBF2BA4D1B18F50FA8174C96
+3E0120E266AD5DDB40B3F6798AC28CDC5C3C4BC34583528F5B5DC8A222B80B59
+A3A93DC715D061EC6915E6E6E21A25425C25E8747C60F170D61047108826F96F
+7830E220C108B441B6EA3198E33C49BAD8D43086E49F5A2BC7958A1A8CD011C4
+49045193394696EC3DDD0BE084E8F2E9F0B9496F035C0DEC1CE11409DF566428
+D50043CFF5CDD1092F6E0807E660B68163BCA738E8D98FC6EE3F713164CD204C
+0BA84FFF4F33F47BC31750B448603D7ADB9AE92FA91AEBBBEC0DCD66980E6955
+CEB425ED07115B24E40F53B29B9D840842EAC691B4F591F866DF27556474B485
+1C6F53DD72499847109B16C7093984A6B8487D4F3870DD517945CD90E648C1BB
+8A6861E540FCF9D75B984B5009B5CC760CBE297042C240DD624111670B703388
+6FE6FC0E89C6B4C88F51DFF3913D0CC1FB4770C8CBEADD4B86393605C0B6C468
+83CA5594754411B6FC331EF56D7CD6D247FAE42E966583C29239A8F862348D29
+60B177984B6B957E733DB4D275015691D91443BBB13C2DA96097A29733CDB284
+42F89C85A7A743338C9DD3BBC4EE53F695E5163E6E1ABE5791ABF100B198B9B2
+1C21E2FA2FB4AFE7F9BB2D381260CDD3A2CC05BF513AA1E80ED69FA27BC5ED5A
+21445BF00BC2F997B356D94AF13736C6D3B0613EB6F4CD96A685FEB672661DCA
+206105EDC3CA07900676EB2FAB37F48D2E8207BDE1463894DA3C5B1488AC1EE9
+D39DAF691648048F5D7A384B8927F8DA2BE3602669F71D80686E427F395134E7
+7ADCC611BA91AD4B7A0237213C60CF2C905359C90795230344FC3C50A22BD44B
+55B2044792509F50F5C21F53D9F9E9F063ADBED3AB99E2613B23334FE8DF70B4
+6120F2EDF69F50BE793EE145B9FF9C73179DE640FC2ACEB5C6617F918CEEB762
+4CD81E665B2E544864D13230B058717B207D3CC5D6647D5343DB4D0356082392
+871EFFA896631A7E0D6477942B632074A9A4EF7B09D4701B1639BAAB4E03A40E
+9B54A7A4F845CD63F88831EBFA4FB847847CB98F3455CB5957F2E0A0F5623645
+DBB5C5564C7F8B117D6E27E65C0F3EA81AE67B4AE4B201E7C4FB0A8364FE53F5
+41A7CE8F834C2C4B322809B353A5E63BBA7BF3B7DC1A85EA700BD287C2BD3FC8
+2832B0BB4695FC937FF5EF06FCD87DCE6DE793C2B1EE10E6450352C17726155F
+220D550B1759E15AB2C1D5968E52C8080CD280E99D3CCC0E80C2EF8BBFD96001
+A226FEED7311EFB4B67F424B557A877379A15BCA54780F0CD2CCA00400B9B39D
+981C6B552AFD2506D1B23618FA9AE6D8143CD7198A8482CB416CCE62B992347F
+337D505A4078713BBD91E5535BD58EF0351EBDCD749CC24D4AD39F8CECD7D6C8
+139756680A4C03A58B3374CEC658D30160AE4863A3938A891BB59CBE02BB451B
+1BA4B2B6E68AB61DEB85F95E3C909B8B66E220B9F18280161C279F10F7093CDC
+100A53D542F071CC0A5AF834DC1D18738F5DD62A5573E884E1FFD22BD810828A
+1EA47F8218C15A2E97CBC609927DA3CC2B802EA4A0D7EB57627C135E3B065905
+F97597D818A2C5CC6F328AD25AD11FA50F1E4FE637980B7474D6F85A521892FB
+72989AABEBE02A2D0EFE88A6F67AC29F5D8DDFEDAAF465C439983C6B84389FF7
+A6434462BEB7B07DBE4BBA61ACD4A60C55B5C0AAE527DE381DFECA2E6BAFDC8D
+310364ECB42CAFF72BA93C067B2F02D1CA7C34AE7CDC46787A0E234C8BE8A928
+7A6F3DDE0338FAD532A9886E8E3525B85DD39364AB03EC4C0DD25DC179CC1989
+1BE232E387E857C78332D834679195E10F1E7B87B7966DA3B2238F53D1E13FE2
+8F55ED6A92A750C7250C9B91E29796621E7E9520373214D7DA81B2875A986D33
+80382AFF6DE1F829F048E57664D9C4ACE91E4684A51023943A4964AB5657D610
+3A5405EFD4CFD1EBA684243E15093C9667797BB47617B66054EE02C41FFEC45C
+C1BAE8AD56B00D323FCB1D2744F061FA16E161988741A319B1564E04BA210996
+4F9F02A3268CABE450D166A763F5284954564A1C86B76544C5F5ACDFE0D758DB
+865A1CFCF9FE8CD5F9C3B2998C56468FD52DF8EE60C6935A3D221EAEC7714E3B
+301371C7DDA0B03A2416238F2B47BAD3A2C5021C886DF51C695AF9C87A864B48
+3BB3FE0B355EED5454B59B25A0D8A1B8CBD356C24F64D9B55E16C30C011365C9
+1E0380753BA3EDC0868788D5F50B9353D0227BCEE1BE36998B2622C0759BD66B
+E4444250589F9CEDE766D8B940770CB6B89503E925B35C00CBEC2873D2DC4A29
+0823FB7A3717B69A7DEDBAAECC067949932728E89BEECAA91DE3AF9BF070B9C0
+30EEFA8C0A55C8388CAA2F0515915C98E67FA095BB98967D14B0DCAFA9622E4E
+2E0EBFC768D80585ACDF28D8A5C2B6EE2FE7AAF62FFB90F569F84A0903996DF0
+C1D5723366C436E4088F3E2BB9B47F9789052A71CF5C49908CDC1DDA194BFB89
+14D7E3D7D4D72A150FD6FFD8303E9DE5A97A71B808B8BDF2AE466F31BF5D7A4A
+44F81230BBE2B456A221E2F72A8B59F8FEA8D31F8A005A5BD93B9F49CFDC3DCC
+CE2B67090460F632271C7157BDC2F05BC2749FD562FC28682A616A52D1B67654
+DF78B7843A9EC26A7DE2EB168F874904C2915B97534B2D4D9F74A9573A771D34
+9F7BC855E8F794621BF6AD471BCC347E2DF5F620F5C209E33A4CBF1EA85AEA87
+4492A77342DD33EF615FF34037D660B713C908786D9022051B825226545827A3
+2AD1B05D654DB6E6D261B4E8AF0933AD1F0FCFC7201E1A7C1B4199F160C38676
+21ABA2DDF1CEB655B3EC3226E0B122976EEA998F7A5241F062E54AD1DFD6ED26
+47C99A439E0AE95415059179867CDD3F0FF751F3141309F40E00A6C7C28433E4
+F649BCD5DAA64177580E05C495EE7BCBCC5FBF104DAF360CC2711386655B26F9
+D349D887EEB32ADE595241560FD5924A1745A22E6A01DB9C285EF14596EBFF0F
+03F36EB2E0A7C3864F819EF7B0855121292D49482F046A55CD7271FE03F02EA5
+886864D9D8EC22A68C23089EAEFFF03DED6484D8C341861EF8B6FD3C5BDF5AC8
+352DA4E13A1E30D0CB71E090E9CFB9AB2CAFD0CA7C34AE7D8E3B2EB4666834BD
+9CCD1AC2108348AFEF6071796F4BB2FFA4A67ED917E76A109FA2DC2A30D744A0
+9AE653A748C1D18FB52595D84E87F1C1FB6B2F32667FE203262C66627AEFFED3
+92B23861E5EB238BB4EDCE09DAE1C65BAFC198CDD1B45D42CDF93E16BB82D35F
+821E9E49067E966AFAB2AB52928F8DD6359984071FC37AA652FB834A09E5BD93
+3AFAE161140E74C6531E413E8FBBFC42BFE8A464B71EB1D8CAA93B33D7BCC3B0
+47C7EEFCD3E9FCF26FF9441DD9BDE68D77AD7251C06BBB9A2103049E8827CAF0
+F26BEF33F656A690235DEEC623CC519AFA82DE2AE16FB99F780FD7D8290DA40B
+9B604AEF36B529FD184239E7D50561A07428D28E51B55546590A1AEAD4B7F2B1
+AB8C5B9022C1FA03E33F8F409B24911AB8BFCF6EF4A8E415263C789F89063E71
+C0910DC20347469380B7FC1EEB87D4CED7F4A361E58B61C91AFCABA35C03F978
+B9FB5257C31657EE48504C355CE893FE3C553274C641DBC4004F5D5B879CC5ED
+D3F21F867F6DF054127067DE86189F0B59A1B90FDABCDFEE61423609D888EEFD
+F4A1367129962110C651D9481CEDDB8C5C2576A59AED64E95F7ED042AEAE2F7E
+81AC0C408E593DC30DCAC334EDE9EE27D932B98F040DDCD195D6155607DD2038
+970EB78221A94C52BD4F0EAC65F1FC10E5DAA93C17266F351669CAE56F42B68C
+6D01E1EA03AE554D63CE76D800FDD9CFD89F80A241EAEFF7EDFA41794EA25CE7
+97BD5028464D2CD45B53834B4AEF8BF0B9E7C6ECDEACEC887E8790A47A93F668
+A9095E5FA1116A122C0E5B74E2226C654D3187C6CFD8807917820423DA3EC1DE
+AA020EEEF2280C44A15209EE2F3FC1776875308CEAD38571E7BF889F287E4594
+971A83605E0B4169D4A23EE790515223DF8724054EDAD905F57918FC0BC64F96
+514B4BF7DC9BA79E763C22C977FB6146B10D26FEA1BAA7BAF21312F78D1625A7
+8E242D743471DB5821408AB786E4A7EA9D35E30E85533C617689F95758FB2C7C
+392E759C299DCCE36689686DE0C4DCE32649493650BA194A6208C5EAB670B170
+3F2C70BF0EF0E3BE2FB0A79224FF4ECECD6BB3388C6D06867A0E5E3DB93C1B2F
+464C23E44D3132E7D4086E3B59B1D13F49EB4772DEDF8EDC4F603217233FB7BE
+C13C28648E9AA51D53F11FB896839F97AEDD8834BCA53CB0021AE91FD8E95E2E
+F8A094093AF556B9639F508A401542B06821FF9DE1A745FE9AC5CACD5E8E1053
+911442FC15CA5333751ABFE2C617D38FA1DC332BFEF44AE569DC631C93EC54D6
+261583A695F5A392867A57F59B741EFCD2DCFECBC55D1EA5F2317601C9DFE9ED
+D1EA466210FFA905A8F85BD58B98991BEA58DFD1CDED5C9B086D42CCE632DADA
+147941917B879139E016B0DDEB8446BA017FC8EE5A354533D667B0835F5D027D
+C2D580C16B80B3D05CC92C0465CAE077729F0A15B2DAFC89DCD349B3F81D0516
+C65526EB5C10E45A8A85D716EE35FB9AB201FD7C89ADE5AD925A174169DA20FB
+61E96C73A143DF964C20589EF24A0FCFE6195317F2FA0D2249C0D8E649C3D9AD
+FF13332EA2E4C9CD36D8443EC8F027B61CEF92C6A6B72DD4ACBACC16E429A9A3
+F5F29C1631360E32F8C1C93ACB22F810B86D2969A7480F486F62F8488BEEC74C
+2C1AF13BB92BC578E8CD30BEA6BC8CB68ED730F54CED0167605FA76AD7B7E88C
+7AE7688E598F91C471BD65A542E96D64B1EAF19FB4F1234308C48C2DC86E2193
+11ABDB4C6189C6F201627C693691A86DD07FF55C30FDB3F72381E09C6080FD7C
+9182762E5001E30F52A216E0B71E4D2D4E2F3B20F95DF3A11FDB2D2B5B5FAA66
+C46226D5E0C77066349770514E5675550FAC9394FB27CD2C2F974F1FD58C04A3
+1EF53A8AB3B2202CCA1CEFA66228E1480A0709436C44BD3319C40CF888AE4692
+5DBBB52B15CF3A518F627F672135A24D5DB9B2EBEF04C860AECF231EBB5A3BF5
+6DCCD5E72FE4B6DD29E896691868A7DE4120AD06AC573F5608B8449B38E71CA0
+EB5CDA3F942482EA7973661170F81DC88D54DD5B92323F46F833DFA757107E9E
+F62A47CC50FAA1B68ED535C3E0E1073532A05ED339C8D70B3B9864808ABACD23
+AA95E9FDA43D54C66A675FA074E0A5B8777D3C07850A09087F36852B5351F35D
+8BC4DDFCA35CF29CD5E3DE118A741FAC4DED36847F2E2C6CFE08669301722D94
+376F540982958074E7F1383C409652F6C99DA39FE90B38221E75BC1ECB93ABF6
+B00F410A0C5651DB418566AB350FDA1789AFD88286AF3BCB42B98386F7BC144B
+02DEB8940D20A6B3062F0C4244EABC50923390064F1D027A8BACC3DE45156E56
+4A942D1B87F1C4A76B0D4D6801AE792CCAE3009BF25368B31B6AD5476FBD3BFF
+9759EF463EF5E78E10B7BF64005B2ABE0E8813950A08A1808587A98E0021D0DD
+751AD515E8278F1A0759E85D8A084490BBB0F8206484AA36388B1013643D3198
+3509078847BDAE08E76FA5BF3E3A73C323CE093DCC148E3C02C2DE1E26C94D5A
+40EC8308ECB02FF7DD04EC1005A2A0DC74D4E587F10A3EF349E828F69FD38962
+2F0C74D5DAB3ED6CC9F97008ACCE74C086A503948DEF1AAF58FC8BEC703CD360
+D32098A56AC776B1BD08442052A2A4EF6C8798F7CDC102AF1A2009657254762A
+0793F79A39DCD6ADBAA5EC84A7ED6018BBE727E5D477893D84F157074B24C13E
+8D4881C7DF8ADC13EBA0D89745EF93B7616EC5355600BB0D2B630AABA3CF2946
+AFFD0B2B724EF0F28393F3CB6A4DCBBA655E3D6E27F87E6D8BE12A15D35E1E75
+D36532B9C5000C06A58822444593A1038EEB23C7AFC9EEE3907DF8232322B09B
+230015E014F1B4CEB866234266440AD3686E30ABD086CF9C0926E711F0757925
+5DEB3D39C8E6D6F0C05A364A0DBF90F6E32CD28887F7E237E04093E07A94C973
+462254BC1B1586AAC29FC7F15A80FB5993ED22E79A0FB5BF0F7362CFA24BB2F3
+D4EF7D39E1902C53053C27E2AA49C4DE54A05AFB1AA6C7CCFBD9F72150DE259A
+BEBFCA5C7E828BE667E9C72222B84C4C79C2DEB885A69861DDB635B02814BAAD
+9672A14E50D6A2A236AB35C6DCBFA1165F47F8F52B0787EB4B70BFE3CAA8B511
+A630E8148A51C1394C7C321156CF52EE7BFE07B6C354CB65782464D2BE42C0D8
+14EAFBE88DA3D5C90614F22E02626ABD343F3AC0A9698AE84CB97F1CC421D34F
+98B69FF4C335B95F4222A8BAB77662B4A57A4B574265A679334D5EBCB073FF69
+66BD9322B1C2253AE85AB38889B26761BA509C7F638C6CBC4BBCDBBBF4BFE1AE
+855973129978F707C87462B67509FE6EEFB5E0949674C34768F001827F12F1BA
+77AE866711077C30DC0E40C2D8A6EF4D85355E596E26B675E8D223D4E55C3580
+5B79260E90985DA5E5B2F43DE7713D5E67080D2843D44A3585E078615BEA476C
+88233D241D3A427F9B1AD26ECD535E46C137084A835CD816CCA936D0011C53E7
+B33D5B50ED7BF3F41289F48E394BDC963EB1AFD6F14F0C146E0F13B03E76B389
+8AD8E81E41F14D1682A113D8BA1482D9DDFDE71208AFC351B62E028C3D50BE01
+FC9CD5D5F36E28DADB469201F41E9F39098B65E43FD1227A26F6FF812CE452F8
+B5476C28FC1B1B3E5FEF3A3B94CD552E29288AB0A3ABCEAAEACBD2D5E9001579
+738029B0E7F635C6C4962340187558084D9CD408EF7FDCE23F465AFCAA8EAAC4
+8855BF64EC9BC75371A98095CB51BE7FF107E4C6C2107D887716F94563768073
+B8C4238F51C1E63C279B23DE3DF51F656B90880333880515945253BE08582F17
+8888FF4AB1EA0051CC41CDCF6C2D4B2F19C17FDF8A8664754A884EB6A4311C08
+074B3CFC4E20FF71191E3C1648D2C38260315702E80A6425361E89CAE7108A3F
+C7FB9AD79D51427F8FAE45D1B02FA9083F76469C3378D3510246D81F10F3F48F
+9CF6D65D2F32BA1B012BAD2FDD43CE879EBFE2E5DC3BEC2EF496DD2C3848D655
+AAE8EB7970EF9F9A5AC6BF1C30B61659B7E8075DC32A70F10CBCAE6122894309
+5A0250411E81644F995A049EEEB89045B21B7741FE92A75A72C8B0A406275099
+8D134C8CB0CDFFE48353CE37202D9686FD7AF16500245B88C1C5B88E3DBC3B43
+BFDA072390A1D964E90FEA605DC6AEC44AA1D700017FB1F41C13A2C37B83FB64
+E63E895CE647A545FD5CA85463960331495B05929F57DC349736AF84A5687549
+CD60A676FD984F0C50AFC2F783594DE38ADF685F5E2937C95B50D07C6316ABC0
+8495EF319D914D65E08722DCE6A5762EDB87EA4AD820C359201059F56296F608
+395942723FB853CB67F553F689BBFDF60264E90AE6A7FBF7AEF443A3F760B490
+8C3513FCA7ECCA5A363D7F72C62DFB1773CF88D2D7E1F0FD606878C4F274F285
+5A3EF87C541495A067498702A89961BEFC26B229894408B4BAD353FE06295037
+9E55663FC427EAFBF65F616CE7A771421FCB22006B241CDB156035A428CFC241
+C3FB0343C9C040CA92ABC487113E09074631B554366DAD01C246F4E082C64B7A
+E9BE7C172B606786E702BA6D036D10682AD61CD0776567E40D095756D3D02704
+DA8492D994448DA3E66366CF2D712AC596DE587E976936D0B5B0E2F02724414B
+5AA83C1B3F8EFE2C0DB65600DA12E74A4E6D474A985BE62E8B0E6C0AA9E739B7
+D1A6359CB3AC713C743C7CDEE58649C4B6953E5671540BFB5FE80776FDA87A1C
+3B3B342B7AE56D96AA8F18DFD6A8DA83196B9F5DA844E622A6717CBCDB06B0A7
+70C750DE8AB3960E58BAA873F0C21D1157A2909231C41889BA6CFF45FC41F07E
+9F56466016A3C7BB340FD6B6321A5CB19788A886D0B5909DEF40ECE8923E7EC5
+CD3881FA4311C937C0572619DDEB4618EA621867B1B8556E73DB25F5E86C0D27
+913B40450E452906B5528E86B0F08246B595BC6487543AC0B789D555594ED997
+911B9D19F01232F69A42F99FFA56DC7DB66BD6B9158E32511F945E11724CF164
+DAF26FF59D8B728188A609D1D868C2536150F333BDD1DBE091283F1884D320EF
+908F80BBD8AA0C8BDFE625F34B41BDBB60DD9A6AB33298DBAF5224EB27D47B8F
+69588EA13F414A6E6EF3924EB12BD7DFA8F9628C4924BB5C065A6A581B31D314
+6AC33A670CAE923A46883115C5B26E3566D2811EB20634B14B53CF46E0C66F92
+4D5906B71A17C8E38C1EDC9A45C0E3472E4BD49FBC8F8D1226C8A020932DAA0E
+2FADA6A30D305693AB8E3E08897AF9EDCA74EA769AAA7D6824F01C3733E73214
+2D9AA6EF67203CC27E3E7510D09015533CC5CBDF4A4F43761B5019433B615A95
+F5D1FD30B1FF23619141C06772C69C0340C90443F192EFBC342D1ADEFCC125FC
+4BCD134167487DAC3A1C5D18CB454EB3BE7F3DFE59BC6F349395066C17BAD3A9
+94F54B393C29D53A3668370DC085A703FDC91930B0CD6F7FD4EC1F338D7DF701
+E96536126691975CF22A54EB33D276E0F67FCBE601DDBC41BDC763D9EC78D386
+51A7F72FF1338CB14A6F09670E67F472D6F57C6447F5C82305B56BFDEBC0B324
+EA6FD3853C831681645B10C42B9165789D5FB6EE1BCE6B3E908AFC374688E720
+5A3930D9918DB4189CCD63E6F4BD9ED18FC1F0F3E85D51E3615FBFA4F1E9A746
+96B0F85B468281C142E707271350C29703F947292B191990DDC3A13A60A981DD
+FA1F8B9151C8CB3738AEE8FF27E3390404F5C96874BE9290AE811A35E0C4727C
+C7425896985C8324159C8A3A4576BDBC6EE02323CF51ACA4AFEE28A4AFE6344F
+54C5064B9A124AD5E6B2B2CEE087768B97DA1468ABDE4FB32C632E1CC6BBF007
+B8C36E1D3F7696415EF51B3EA956FB3612B12FAF9B511F9D6B29DDD7C89FF065
+1752A6E7826C367ED149527468A9A8F3730DB8E6C7DA1EFD1BB1DD2693BB2421
+52733EE07D56146CD064222CA4D765AE3A1AC8366538BCF0101BD74F7DA3D330
+04575D95799244593ED3EA108FB8FCE3A8BC431416A6D60E27C9096444E8C225
+3B838FD5B8C78ADD9B7DF7EFBA6A6A466CD243EFFDAF90ABFE82CF2B9E06DCF3
+046758EFF0C168001B0AF208160B773913DEEAF4F167B0BCBA1EE3A51766C9B0
+D3440CE0A46DC741B417E21502354EB5DC09B91231A5B79FBE4F80028C01B505
+91866DE115685EA48FFF22ED898D8E64C7A9C9D8CB20451DEF0551610C6D1255
+7DEB229CD4AA2C8F0AA989EE31BB94D940835BA22BBD1607C8944C84226F1F59
+35248C1A4AA7F0AD631CB66B7A149AAC76044376FD050E367D993144111232DA
+DF4650BB5F45B791FB1221B54F88798E8619A3E82EA65C4A3DDD98A3E7D6B296
+EA6739A97A0771E6270528213FC6F372DF4F1FBB80A47FF62FFD5287C9AA4F91
+5064F8D3CE7B4C71156E4D21658D626B97E01711F123719E3DEA49CF8981DEDA
+CBDE3182826A
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -2074,25 +3315,42 @@ F5
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
+{restore}if
%%EndFont
%%BeginFont: CMCSC10
-%!PS-AdobeFont-1.1: CMCSC10 1.0
-%%CreationDate: 1991 Aug 18 17:46:49
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+%!PS-AdobeFont-1.0: CMCSC10 003.002
+%%Title: CMCSC10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMCSC10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMCSC10 known{/CMCSC10 findfont dup/UniqueID known{dup
+/UniqueID get 5087402 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMCSC10 def
+/FontBBox {14 -250 1077 750 }readonly def
+/UniqueID 5087402 def
+/PaintType 0 def
+/FontInfo 10 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMCSC10.) readonly def
/FullName (CMCSC10) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle 0 def
/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+/ascent 750 def
end readonly def
-/FontName /CMCSC10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 97 /a put
@@ -2108,98 +3366,269 @@ dup 115 /s put
dup 117 /u put
dup 120 /x put
readonly def
-/FontBBox{14 -250 1077 750}readonly def
currentdict end
currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
-3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
-532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
-B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
-986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
-D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A30EB76029337
-900ECFB1390CA5C0C3A04528044F266BA17BE487C79B94FAC6D6484684C5BFEA
-87BCCC77D40AD11552035E95E3007126418ED49B68468B38A14E88E68A267B98
-076F1C9769A5AFBC285E5B158EAC9F926F1D6C0B8F1D57D9C31D25AE27123518
-9D2CD92E5689E0213089BD268DA5E47525CB8EABAA4B78A15AEA34705889AB3A
-FFB8953B5B3482E52BFA0940630ADF8C0AC2177D907324299EE980E850F203CD
-B627962F43D5A678C44243CDE97853BDC6AB45FD5C09AD274DAF89929F583CC9
-CCC24BDFC68B92111055ABA5F26D2DC67C70906F71C2957701D65AE746A60C30
-40E6CB24B97FCDAD0487AE38A201FBF0E41BABD2181981A71940F1E707F91E5D
-C8CA50CB16D8702D188E56D014D92F76CE0B52ABDB9110E32438D2BBF3E6A40B
-7B005F10BB437812CAC6ED2996F7606DC962C4FDE207FF322782C343DF44CEC5
-FF06A55C630C20E9AE1B0D1C5673753C43BA0767D65D1B451CC6380D8BB3C4DC
-81E8FD8AA79BE993218686F29D3CD925566DD587F541A0DA1B1CC3BCEA2E6C7D
-5E1016F6917A871F1BBAD96AF9E867735017119A381FCF33EB2D3E1E7093FD90
-CDB0CED4818CFD9E201A03430CEC713620BE0D3254158931FB657C6877C1B3D2
-24030F377820DA58F4B95CFE645109F3F1B80DB5FACFD7D05AE2909EEFCF95AD
-9CB286C8B6C075CA2267C101B736139863186C193E31085E7C9FD88EF8BBECE3
-933542C85309013325B4BBFE9A5B606780C8580ABDA2F5D0064EBFC23939B307
-08568C3B7F5F053BF367DEBA349FABB9F760C44D100BDEEFBB01F27BFC61FCD3
-64512116F2751A1B95D2439E266074DB3B9FC76ED319B2851588B1F38F46C8FE
-040793C860F05E26700B72A766D0BF3F6F2EDEE06A26866BF0207CEF2841BCD2
-84F5873A147D5BAD18FD74DF7B77B8CF1913AD882DC1F4A94020B2A8A73237BB
-222E6B78BD1C4C0975B9B6683B5DFBFA693970DD53FB5D5CA5805B7728C11D6F
-92E6293F82E628C9FDD901010DEC199055B6682D6B2A688E3EE8759F7E592F54
-43E63699F1D60CD915365B85B8713DC4EB3EC4D2860880035348966F004FBE18
-9299E1DD0D491A5D542D450C8945321BFB9E823E18D1F33178BECAADD34378BF
-6FDE26691802F24E43CFA4ED1FB81C824F808A049085FA95CA518D9F4EE91D78
-26A8B8B461486419D598E7E341E9D43CED2402BF225B2C75CEE127D8B8633FC3
-6F4F69DBAF7134D4F3D669B35822FA701A441E5FBA3DC1F02A00B25C583EDB52
-4D4D488C6A810128777654B956C3CCE8FFB0D1985AE2A2735BA415941D1CAD5D
-62D9DBBF01CC979B8E1509F5DDD3BA6E87B14879955F978209CB398825E40199
-2B1C7D2C55251F321BAC0764D40B80D7AE1B787E5690CB5907719044B2AC832C
-C002C181088BA15AEFDA44D2305E6327358D1DC1D9B93AB1802FE9F24CF49739
-9863288D0195F5610441122648F5E38208E1AE5F01D1966DE10B8AAC02EF9F2E
-27D2383BC6D5BF9DA8F9018BABA01B70755FCA281588B85BB705FB7016F6D7D6
-8607BD0739433B54DFB87614A76902A3C122F39A21E80CC1970C5A6932C6046A
-771484EA9BD04CF0963E1D372B456C50625807B3557384F5368C520E757716F0
-16EF17F3A58F2F7EA42C9BFE2A64AE786F49213CC47B496B8F127696EDD017A2
-A07FD72357F4D847CE1EC8103EECDE35AA194F9CE466E733F66515749B3C36DB
-6F7E83B31034687CE18CBD15342723FC21689731B45C72DA278994FF8C5824A0
-EFE9F8D734D75C3C263F9D4BEACDD86406567055B1A8A5EF73ACAB4A09255E39
-BE9AD89DBF4624E686541E2FF03742C99BE71E7CE3B4756A22CA4B0121E1FC6D
-D62BB37F46B6EDA0AC3669802D1DF75B0F9F61976B2FA2DFB5AE2274CF08A000
-AB716CF047D7770A76B6577C75D806D878BC185C4117FD7BBE29E767E028633D
-257C34395F8988DE13F0F9083823F028E05D16BAB6B3E9002F01AD5039CA62BD
-07AE9C5FA71D6F234899382F90EBCC371C5501FE01E38646BC3C734C7E2C1AA2
-11355703BE46724DD85F5DB4051F65E48A3E8DA4CF8845BB4B3F39C47000E871
-AD2FB60C3161437D8C76A10377B98456BC205F3676D02132B174AC046658D059
-5E506F3C4178C400AD4E721AD613199FD1395413EC7AE6960F96849D6A26F695
-B78395941D62A7F7B6E25CD6824E78804A8CFA780E9919BA860C2951EB88DB5B
-C2F9E9AF635BD2C95C7D6AD4BA85E4B85483EEA4EF1908E3D5451AF6EE9176C2
-BA3F1622024250AC2A1F8E66811EE9C1608FDE0E91287AFBEFB43800212C90C1
-6D2D8066C742EAC7D611CB9F0590AB2AA66C17340FC81E55C339FE83B68D060B
-33A10B037B3370E351168E98E9DC4E8AB2B909879566CC28DD053B6EEB04A3EE
-6016A02EBB0E8D0BDB7F0B1B3BEC8C559F48448AFBBFFF5E11051516E9CB5F45
-6F38CEADF429570FB2DEC6E13CFB2A59D5FFBF0A2396FE9F7B3A0836C76B06CF
-9B9D99035BFF40EA918DC4A8CBF4576809F49DF330A9F742AB2FB385C9382076
-6FA8BB32BA81FA3E57E91BB6757C6E98047E9537A0595EC0F2A9BB2D3E093294
-023360099DC1D4EBE77960AB4E26211D1A75ADE1C764E5C2E80EC234F678159E
-3E64331306FB3E2BE3AE0CFEED0FC3F583E875A98694742C3DEDC35CCD9D45B5
-D4200D69F93C5B730AF952EA0DCC88EE1F6D50B9477E249C6274EA0FD849B537
-BA497FBD6617943E7BE06CAF71A0F6B13CFFBB51AEF3E042F28BFCAD6CBA2DBA
-CECBDB7BB399AF5D80487592A820F82A7255B46A0D7C739CCF16B7F60B709651
-0B91A26FF4854483DEF0336B7633C1E053BA889F4306F7398D85C3EBE21A5A41
-B7DB32141ACA892DDD4C0FE0C95328A70F53DD95940017CFA865D15FB0BB281A
-13E2CF735AB238D278FE175EB8B72337218B5F66B62FFD912FCCD0E180AA69D4
-23701D46D44EC2E80D3C4275DC7B5848F50682394C4E67ED98A2E6B41C348263
-EABA9705AA74CD35EC6E1D9DD55634102C6633ED9117DD472DA7F41705DC5772
-72A3C2D8BF6B308567D07153BC750C8CE867E40355C3D50747B757E52F7575DF
-9B5B913AF7FC3FDBEB317DA46DB498C7C044F83E46BAA00321A84DAE2DF14604
-12031AF813C994414F098824C30FC07E9B5307EFD8D01B56481BBD2EF648A69E
-7507FED42C6605B09EA047F09DFA9BE15B59B93395DF192C0FB33F6F31F325E4
-DCC9A5DFAA157D1D5B4E5BF811F6F5B0FD1E69ED7EE1A6FBC2CE14D11D6FA699
-255370376844BFF3C2BE814A1FEDD0B0854647B9B193B4984394C8602820A17C
-62704CEEC824C3C745BC615C54EE5DF86EBD79E874CC3522F8B8954C8E4A6FB4
-F715EE641A3D52C06574E8D7DCFCE83F3F8809D08A3C9C70C962D33F5B3D6128
-16EF2DCD4D6DCF0DD055AEA2293E10C1B7C2399C0DE4928F0A47E0BA652943B1
-004568BBA7CE62F12C7B58966BBF7B0327481DCCFC56218E7C4B9F0761063BA3
-BEA01AD1BC99DB3C1FE550DED79B243A7A554F2B1752F18FEE94120B708FE4DB
-5948387091DF4198859CF49ECAC3AB49CE2E5F0451EA4EDF9BD49633C9826026
-BC9E7E1544A0318C545ED1C37C64176504D175B83CF974B4ACC39F5790E24B11
-85F01604144C0E694DB7206941933B60651A800DF182E19C3BF2862E72F25F2F
-2D9BD71056559C0FE547D0C752640DD4DC6110A849CF9557FCB0643A1EE77855
-512015F57A80140FC06B8CDEABC5580B89F9F30A489696AEF2
+D9D66F633B846AB284BCF8B0411B772DE5CE3C05EF98F858322DCEA45E0874C5
+45D25FE192539D9CDA4BAA46D9C431465E6ABF4E4271F89EDED7F37BE4B31FB4
+7934F62D1F46E8671F6290D6FFF601D4937BF71C22D60FB800A15796421E3AA7
+72C500501D8B10C0093F6467C553250F7C27B2C3D893772614A846374A85BC4E
+BEC0B0A89C4C161C3956ECE25274B962C854E535F418279FE26D8F83E38C5C89
+974E9A224B3CBEF90A9277AF10E0C7CAC8DC11C41DC18B814A7682E5F0248674
+11453BC81C443407AF41AF8A831A85A700CFC65E2181BB89566A9BDEC70EB4F2
+048A6EB631F05C014D372103E37FC3FA317EBC9973565A638403DA02E48B7D31
+CFF6C241DC5CDB470561002FF46437C06EF93BC99352DF04393C661FFFBF4BA2
+0723ABD9B3E9CA9E63BA57EFDBAE684655CBBDBA15ADAE43E1A2C98A3CF060A3
+D16AF8FE3A49B50A24C20EEED716E49AF6013D4D38CD9CC41A91C17E4D04D79D
+567E1EF49110AA9C34464E95D81A730ECEB2C9AF38FBA6B45E253288438B4CB3
+DC75B3A906D4357293BA41E59C35223A6C9CBD6FF5FC90C2D07CBB376C7320FF
+435A6251822BFCBB612CE630EDF826C37E95F541C21B93FCE127591D5E38165E
+2B58A34AAE37712BC58B63FFD70AB80F4F24612CFD2F1466BAAF3CA2BCB45148
+D0DEA0E9B8FBA4C4FF5B8B3CB02E461355051842BD1C94F41066B9B909DB83B1
+DCDCBEF7CD00A43E4C0B8191A29600CA197F0BA227FB8309BB539D2A620BAC70
+8A1AB2DFA51ADC9873B8E5582DCD3ED154E5D727D1665F99BD89883D69E6CC2F
+DB3A57AEB612171A88E22F038461DE03FC357F771675E34E90D4D19B4B36891C
+9D2333960400E97494F4FC4DBCE6A73C34A0409E433BBDC0AAAEBA7D3555066E
+1CFBB4515C8B573C9B9DD12ED5B6ECEBE35AD0DDEA9DB004FC6CB540B5117B49
+59CABE5FD74C6F5B6482B42C20B5FF0467D1DBD7CED2CC651CA57852B6FBB402
+A6764DB342889132C911CAA713A7F2FDD8A5E849345D6C81025E02F5B8B682BA
+90CC9B467FBC37362436EA6BF8EB62D784B01D5430147945BC09D1F49EE89F2E
+3E2B8E6D439248A56F82F2E03EA5C7A922F2813BE6538A3A423BEBC55B345AFB
+3B3C125306749E137C647D78028AE1FBF3E1A82C260132832A9668F454D39C41
+736717DED0A99F6B11F005F0E1D07FE84713AAB4C042FDC166AA146D7B5E9198
+E4F485BE5B135EA281FF1C1E616B5AAF02771F58C5840CB5A427FF9794F93E94
+17FD799C78AED1DC4810BCEF4C6C51D3C1504EA2C6F2B29805B7ECF97B5F637D
+FE92E168CB9029E90404CB54FB312FC7AA8A9F2F524C03E61F03B1E31D4F061E
+1677B39D5D30C9FD4673E1723F4AE3CCF38593AD6D7F61E9DF3C010E51F25085
+35D51105E1464BA146A78D7297D4D310AD91342A0BB942034A3EC0696B467367
+3E39D202D637E6B14D0EBCA6AD3CF22B07D4CA69C0FCBB6C93782B2F0DFC5AC1
+5D8A16CB5EDB671A0C1BA9D10F63CEAFCD0E06E42C730C8EF769CCFD57937245
+658F486036D37E8BDDE5670A212FB488A8753322A5B170C9662750AA958C0BBD
+8E97D8239D2A08B30416504DEEC4E506013E037C91785C674F8A6A44E23FEE6F
+CCC00CC5E4D355B0871FDB8ECD64F70EE32449BB5D6F84F8C8AA2D5B1A489BA9
+D7FF2DBAA8D0B84054E93D64D3E77850A3724824914A0F821EEC3D605DD851A7
+606936B8B9E24D6E932E16C448140FE94DD96C75AECB73850035ED9C04A1D93C
+64B21E7D4657E030483EC5C3554AEF8BE4D0FE5B9743B875340B09E01273DAE8
+F256C50A1A8F2E0417440A8BB0173F59E11523E1CEF2593A4AC5AF2167627B00
+C5EA97D125EB8A4BD4C372877ABF10F5B7B149D73787E0834BFB3084E9508DF7
+072DD71637019599252059738D4D6BC57A9358E4B14F6AF9C4B31DB8E25C29B3
+7A15F9953BD73ACDE5F0445A5DC406BB4635FAE51C1D8202AE31730E6F355317
+1DC197DB0B6177307C60E5D38F4487363EE051B2E609A52BC4D45B14B6558B6B
+5E1618748794B8340752CDBE7756C068975B559615D4CD5A97CE30BAA7B2B1A3
+2FEF2E055232B24FD8A21BECDE1B6A479A28EC80AE2CD16DB50B30B4A6CFCF06
+491C7CD5AC29FB964D4846415233947522676DEABDA0D9535F8507D33693930C
+B4E4240A02B0CE7EA288516B8A6EF908D7F8BAF9012D052C6AC96D9F8F6ADB07
+8984F3559C5E7E3022A957982155FC9CD599C74E18328D3AB46F9DD15D1C4C3F
+9B93ADB4489BA02CFCF57DE6270F3AD2F8597BE71786510EF08142F430EE5568
+4F9DDB792B7C46B6135E341DBBF062FBC50FABA80CD4A384157BAE57CBEA9781
+AA4416323265168AC097DE7E30A0D4750143A4FCE70A863A31876A8FA5327C3E
+36E89589E363AA2B1A6E8B09F5AEB8FFFD0396067173465B6503383DE517A6EA
+88C0FC08578398C2A721E5AEB29F4AC9BC990A50CD87BD35A11F9E81F68E7B85
+5E5B95A4F9A5D30379EF90D78E1E466DEF867BAEFC4F5ED2C762BFF099C1C2B3
+5E0DA1C2FB33BE1379413CDDB1EE6BB3A495331F72F2FAEB8152E8AD5FD334A8
+AAB0082A71D5574B618EA8D487B8FAF1B445F3395B1E21224F5492A0E06F5152
+7726835C900E2E52BE3B7B654183AEDEC68053DD0AF19EF6DBC10B6FC08EC7D0
+CC0E2C8FAF8C9A4C21FB7C34E074BBA4EE64226BEC8C928A784C1BEE35B72EC8
+E9295240B29DDC2539CD118BAC38DB3917D14CD33AB45FE47E827F2A2B193AFF
+53C5396C52CEA4F43F06AC2D08C74CC85D608CBA267175EC31311EE25AB48DD9
+FE811B411AE426C9FC0B6044D1EBF130231623F1566CEA4D1C06D8032FD9808A
+94479C842BC41B675CF6B90113BD681F8D43F51D5016D80EDC11D7640FB950D4
+E709A46184406ED90D0892A4CD9062938A8205697A200DBE1F38EB166EFEA0EC
+4FCB45CDAF82EA103DD6FDD03D146F3E42EDA6496064DB3F4FC1C5280C9E604B
+D5EBCA08BF2AAC90156C11EF68137DC76502EBF216F3AF3EE30DD2676D218428
+F41C655093F8B530FCA378B5769F262A6FDB4B66B83F18F050E77227E28D71F4
+5F4425CB8D51B3DAE872CD86D7804F870BC564A6DA1CA13EDB00D131CE4F6460
+7021661B99612629DCC20C85CF155EDC5111E015A77B0B82A8FC1EBB374B7EF2
+361419BA93B857D5C9944BB5B4AEDD86ABCC261542077FE09701C96370168579
+5F89D5AAA08D700E2643E88C2FB8D1D56D37AAA9744872E7C050B4CE046B47A7
+83F224FA9FD311C955EFBF173042C8FC66524135F579B1397828870D5C9DC71F
+8615FADE2A1CFAEA90F732B6C266E2F3048FC43EDA7A6B6D98E9DB793CF457B3
+F5877E7A055C92B0246FEA8C72B3B3456F93BF36E2651D32CD614C3AECC0B4BC
+F824C8363E593A6458D37408FC5B09883B280005DD24123E2D4B1B85F4113327
+EEDD9186A4AF2CD6439B46C5C168C125CA80F9EE9E68906620EE126CFBF26E15
+B269838A54224EDCFE2A373EB750D4829BFA410DE5F1541E428BB1E024AF496D
+F5F1C151F5A645C8622F2EF9088D57A2811868A8A8BFCDBFCE3ACB8463AC35B4
+8B6F44E1C1232805842F56FA468F81FF37D5D55B81CA56058558544C142EB3BE
+07CFB1F75DECB1E48C14D6AFDD455989AA6FFE8B8DC54F462B3C20E31D270BCE
+8E68E2B43A6625AC7E9792704FAAD6CE8BBE0B341DA7189EBB3E9D5375B27FD4
+12506D5BCA50AEDC6955E6C3C7BAA84BACAF7ABDF3A270C7734EC3C6EC22793B
+E67B0E288F99699D38DA8B79F2D21DD97945FBDDD132A8F0BF947950D3C0B4AA
+EB7B2C435AFE54489E1930610311D718AC610C21A644F34CB2D1959B3066F39B
+EADEAB5CFC6AF4D191D86B02402B00D1C5262707861C5308730579795EB53207
+A291A27A8B5C4DAE0A87A0C6A260026CA3CB620E1002E066A515D7990F3DEA29
+0FAC962E0B82B7A6C86B1EDC54007822BAECED673FAAEF88C8109777EB79A53F
+AF3C58546974F2F56E70E9B5CB59ACB5C27CB01895557B2D82134D7F02029B24
+3331621F38E68717F5CB68A8892D0B9C0A8ED4F8BB56E80505170D44C6856128
+2DED0254ADA4875CF56B4D97372AAE730D4C77A2940DC8C178274DF88A9EE037
+215C6FE7B9D481EE4DE809B124C0270782411ACCCF89906A8B143D0BA8B2CEDE
+E9B90465C3E57A4FD9AD2702323450256ABD09A1F8C26F08480317C08B75B720
+70A161C99715A35A94DD5C9647ED0F8A5337B774C8E54F9653AC859485A1FED5
+37B725A7E4BA58711CBCDA6054E34CBD8E9F9460179DA7DBD243D81A1531FDDE
+BF2BD425BD9DBE75EAA333B1F5793669A215549A774597E6ADA16D323FE5601A
+EDA41092730009A99BF5B5AAE281844A6BF3292D4D4EDE36B4FD8BCAEB6EB72F
+AC5D3CD53D0D621CA9EA8D254FDCB2B5161EE9E80B266563F669805A3A15271A
+0753983004A1ECC7FBADF62AFEA4DAB49A178C231759857DB910668BDB07CB3F
+7E8EC24901863088B3231EE3FA563924032C91CA9D68DB398F9BD9AC0C651EC8
+9051C9F709CD784F3FF5951DECD7E869ACC34B83AECDB011E6594347855EE7F5
+28811F744A4BD70D4E9077EA7EC19FFCF612689F12B34332857AE41F13E6D16A
+962DB9B6AAAC167B9FBDF0068EA13412F318384134B29F3F0C399F1973A3564E
+F9C3C39B5BDD4C98D81A6CB476E565860B50704BD65ABD630A5F1372F2D826F3
+3AD47C08B8AD3176A170C369EF3CEEB190134006D6135C5B8CCDBE1C11FFF1EC
+3F6D8C46E15C4F5EB9ED9F31A129594D542D40DC3815CD075A0DBB648D868AF5
+15A05C4BDB28BF23653A3AD96CF6AFC065DCCCB23D5D9A945F8CBB539DD3BFA8
+DB8F1FBF9B6F25B41EB4309995CA3D5D6ABD70CBB4A2F0C6364E5439AD1045FF
+72F6B45A30BD3A548CFAADDCC6C15D46F6D783D3E520215751DC98335A4ED512
+D7D19235CDF911CC69F3CF4365B678EBF3E87C456A4E77339C74930083445588
+462529C22A96A28C5CE87AFA0C981F26CAED5A1C8DBCDDA612624DBE0373F026
+465185A4D8C73CCD8D71EE97116F8F7D341B87FD78F9CCB9FBDA2A7799711607
+6BBA855AE9D5C505870DC85FDFAAA130A351D56AADBFBD6A7D52055E3200F8B7
+8AE9A00092B55DEA8BDE224B4BA7FD4A191CB1FFC4CB995FEE1AC2883AB69E1A
+AFFC09AB5B9AE311A030A5BA05E2213F9BBF016C8FA80689C069314D91274B20
+53FCC65C7D7B3A7504887525BFFA060304931672A078BCD7F269595686310E34
+E1ECA868899BC402D17EC36CE40D5041D7CEDA77F7764C9D98793F5334F574DF
+E93CB10A5E8ADAE95CE63D2339557091B4B4911A4987CF21B7F1DBADBC2DD605
+8EB72473C1F2EABCC44E0D0339EECB55DA74085606C3F89D57ACFBF5755A5395
+CA8D4BD47E4EE8D8B882D3AB31A1F0C62E74654C7E041E4FF2693A38A9796064
+46526B0A37E6B5BF8E48E80EDEF81E34DA8F6CC9025936A4D0E6D709D61B7B5C
+AB550397117F3F9D2F5A542A64DEA8E1178F7337124D6B56BA92F659AAD694D7
+391028731E01284BFEA635314A8DA8DF7A34EA3B6B2F8803BE6DCB423A9E8015
+55EBD90EBAE8A00298B3B6B1C02BA516AF528122C1F2B07EF69F5466C2C36643
+0D665D6561705509B7582D8301AF3C32E2F3B9433E3E04D62117C7E8A368BDE1
+0D4DAA1C415B2A6573116D2A169AFEF700A83F55D88813585E89C94C07802BA8
+3AE8F9BC3CDBFD9C2E35D062B1FD6E79E1EF104FC70B0AB09D12CA027F33F85A
+22F0ECBB4AD55FE8C616B82C46CE69A600E4F767BD7A9C5F9B37A3196B038384
+5DEF76A8884425FE598A63AEB19FA698C2AF7CAA4983CEC789268E22BA051EE0
+20A40633D22D8F707626ED30E8273EAAD1C065F0B2E1718B5AC853ABE09330C3
+B0082A71D557169BC1559B6D285A3499D41C4CCF1F74884EC3917EB9C574371E
+AFE8578DDCA459B8D22C0188A8D150437B05FB92022C95EB6FBCC954216B5FED
+CBC7C90B9A1F061376A9840FB64390A6BA99CFC8279A86A730C6DBFD14C53C4B
+7277D676BD42203677E9ABEEC8C97E13DAA626474513B06F8734DD784F2FBBB9
+B3B448B8E8221E380AB4A86D3A683B86A54129519D50DD4FE63B30954D805CED
+A9A5D9A39C58B65B08E1C19555E927C6DBF7FD07252B2B57F62B905D6B488201
+213D106A41033B26FFBAC2E616DA6ADA6D560BADF10E68872806CFD6F6E19D7B
+57CF1F7A030A7BAD374F16A977E0ECB8742D034ADAF9C247DA19C8AEA74EF6CE
+DAFD6B1DC562FD3B77E4D008BDE4D8C7FCA9895DA1AC9EAA01C32A0DA712B082
+9438E77230D38FC4153E1711417B918BA6CC03203A5FF082AF880F48518D8271
+C1121E4F1386B30A7F1BC6F10EA98443F8A65C867A109336B808BC9A8E2A75AC
+F950835AA84B56F59DA4C8A18859C3B68F6B6DE09A6675F639EA9107BDB67B0F
+54EBC564BC2D781B61C14363A54956BA78A2BB89C9F966C94EEFC29EE9F4E23E
+C0BF750144DC289F0DEE1F8A25BB52E54F656FAFEE4BD2DA57E1306BBE648051
+1D0CFD6A23A3DF082E3CF13197BF1B7FB22B2CD427BB78F455C9634DF989DC90
+7BB2AE247B1C99AB2062855B2948341B0F857ACD750B59E370A6698C6A1F5287
+72A4A9628A592E313956C242DF8277EDD2F1FDFB07CDC104275FFBF796D7518A
+DF49FF3CDEC3BDFF1D290C382F244DF18005ECDABF0C5C2C64EEC4383E2E07DC
+5C82587C071E59B46B7BEF31D268F39D9B12D534344FBA515E9DE8F166FAD1E2
+7D1558967AAAD3829D3F7EC6938D20E5379F414532976ABA844D97A5E9078901
+EAE4D0ED1F4C7EE7A2D80D891A5013D6409A38ACFA497F5A169EB7F9F4890DC4
+62FA6A89EA48267331F086992B9CA9305E16611E6AEE67DCDD588A25D37F45B1
+0DE75C802EE021E574B64B3969DE2E5061ED9364B646C38D4BBA86802CA6338A
+94E135D2256920EBFB1AA22D9E90C7D16853F0DF9F2D942748EE540E4FCE63C6
+5380D7AB4ADD6CB00FE8F7867E4862D8DB432F28331428CC350CDF7F447A65ED
+D7683ECA35A22ADD06E9FE6BAF060913AEEE7B2B8EE4798E437698CC9EB2428E
+74CE73F84D0D2292DE709D71FFF8901C3505370E6F1D4E28E6B7372492C65A88
+159371B1D60D77CEC93B272B6C5394EE1D2EF9969DB2838B8E128553879A1BA5
+2884B0A596E8FC3D1E648B7E26A4AC57DF09B9CE09B2F91D8CA618CA52AB3DBD
+D005A56A420366069B73146A6F58E88BA49671A1AB7C2070C3D42AA770285143
+40AE7D7868C0E1993506B07C086AD7D4F28CE2D15853FC5FBCBF9425D8012B9E
+DB6E1E5002517659C8DA69DCEACA94F368537668843D281FC11782F1C5F71977
+CA215349EE6F20565DE3D8D8212A40E1227A4B22965FA64A0B02C62BFDE97E6F
+C3C54FED4057EF9D258C42D7440C78C5E0CC58A40DD74ECED4152F70A93CE71A
+1B3A57C46F74A6D27BF98C97CCD31A8EA487260F224A3E40F52C65490AB4098A
+7B9EEB54A5A415C8C88568F7D9EFE74BBB785FA18AA27D9201F28BBC477A20A5
+D1307AA78EB8C7CAD409AB64B29E4115E45F5FADDCC80CA74B296C4265A40614
+37F2ACD8386AC0202D6FDB6711E8CB06442F209D781E940ADDD6D881D4F8E874
+357C533115923B90138FFE31D3577C6AAE60D768970FAAB682CD0DCA3E9A9A68
+6393E4B772691C1013ADFFC90C508D51B02D2518ADCC7E79F7DE5DF9D18B8435
+6129064DD1A3995E5A6F45D78287CC10A0EAFBF47223494C5EA934B1BC2F7C53
+686C5880303F9E3ADC8B100D441D944686E1FD811C646C6DD0224F6CF55FA87F
+D132EF50450879A25242A18683BD6D0266F8F333F3768D1952B0F32AA75106D8
+EC0AB703F287E847CB91FFB88CD9DA174B49171822BDE34621CF41EA772230A6
+3088F8D19CF2364A329162D39E166AC728B267758341630B00398D64538FCC4D
+E3E6CF103794C29AEF7F7E56970F6B1ABA87DC8D23E280EDC77556593D02DFF3
+154883CFE4EF04E07E7539A4750FA1CF1A994E99B656E728D140C83AE1F196AD
+9F049188A4184C84556C0476BE46DDA8ED86888DDA3065C5091D99EEEAC43092
+40B97AE327215024ACC0134CBE91FD761C26A48EDFF9028DA28222985FAED7B6
+A1CC891D07185666E34BEFBBF77C6C32B88FF3F1046E4EB2CD942E70746DDCDE
+002E74BA03A2B15E0529E61DCAC207A71F61C89D81B3C53C5B458EAC70ADFC54
+810310CB04E1A21FFBC5DE2429EC0989A3F2B6AE4290A005FBE736750956765D
+637B7CABF7F9A593D9FF6C322895835C0007A78771D1404671122F9CF898AB24
+1A5648EF8C40B27FD537612C4CBC6E584FBD058DBD4F0A00C63A79077826D3F1
+859589B221F7F82DBE392601B0A89142648EB40BCD943E382FC7758A10F978FF
+6DD9C3C1D284C5642C812DBF29A75A50BF63F788CBEA5883DC1544ABB49289EE
+2C99CB03C1BA72C7320904C7EC94736825A793D5629EABFCEFAB8D28B6F23858
+89A6967942A943FAB5E5B26B8567CC9606DE60329C6D890843F700FC1F60656A
+38164ED7976AD47A8E54940B9E340D61353AAD260C9273D45772AEC8E9F4F045
+9CC576D152757AF3B74DFB9B6962001EA9FF7F62C2E36F71D9B76BB99DA7631F
+774795B8CD1E08480153496DE5E08A1F4BEA681D0C1D6336A49A222B0537ABD9
+75A3A9D27D0B71B8913E9355F8E56C5FB3E14B9D5ACC4F87339FF9D9039ADEEC
+660B5CEF75E7C1772D4A3A4D0C8976A165766D9DBD0CA8132D17E5149AE716A9
+2E255277FB5294A96194C462C74AAB251A36941768EDB3EC6DC2C481393ABA6C
+8BC2F3AB0BF5A6E5619BE16DF43BB099C6CEA5044ABACC419174664232E97B29
+ED32362D219AF109E5D8CA751EB1F9F31BDD08C93AE018E5269AC327FEC67D99
+588CA80F068AEB94A7B943BAD5EC8D89C0B8D153B4345E77A5AD9B4522208A33
+DA92CDF765B44123C6EBAA06D629EB9E8D0FDD29BFD60EB582CB369474767FE4
+C0947F27DCFE0C8BD3CF5131E706E02ED136DBCE6363CB5CA637E08C3D832037
+5AAA88B746B6D915EE72D7B458C55598DA6284F362D2DBF06C51DB50A9FFFB5E
+EBFD69D8D06AB0A6DF2D03F6E14FF290B1A1531109E43892B82B29395910021F
+A6EA74B8420A14FC189741ECF67F81686BD3C5559DAF75DF9FEF3346CCC35AC5
+37A1E30C2602945974A2359EE3183A1AA568978F7732C35BE2B9224C27161748
+515E5899B0387F0640DE1D712F390A8A026FC5C5A893E98F46B418B7B32BEF07
+AD0EEA87737D929180B2BE697D0DFD46CF307E4FF76BC03492E66633F1357848
+AA5A594EB8CC5913E76602C9CF8B7428F67965D5BAAA29BD6C978EF6B22B0BEF
+4203B223443554971EFE558FD2F51D01B35D2194A1F6820293385CF12DC1ED73
+79EA6082A30796D5EB72A67C5DB42A01F18CCBFEBE2F10B091C43C2CBACD8914
+D665B340281C1EBF92249FBDAA577CB7769974B669DA0B74E822EE5DCF3A32D8
+9C6714D8C82CE9BF3F16E6336094BC55381E73A96D45B7A70AE00F9CB8348E08
+2A64E4B40B3BD0A653B423C5D3C1ECB62F5E05393FB8C9B0C44AB26F6BF796BF
+5B51601913014ED708B97731A5642351ECD0F6CA9C06832E0BCD0055E9BA51CB
+7242CD34AF0B75F3594AF9235C42B974074665C5B6C934B08E5C7F55638E7DB5
+312BC541A8000E69A92ED6C63AA6485A50DFAA1DCF9B0DDAD23C43DF22F3000C
+0CBF6F8F64F37BDF8F8DF321FD8F42C3FF774A388F9C033572B177A493814ECC
+BE19595AD285F11763857603EAE0D6AED509225CACBC49351E6BF1457BD11490
+EDA1C3DD6DE8C7036464CF80FE562CDA51ED2EB92BBC79252FA79EAFE5E6BD4F
+DC16AB83B2C902A9027BA4AE30ABADFF6D513BEA850FF35416E76FE62D8E88DC
+69F0C60921B33BA59FA3EDC8F532B47FF2A5E5680BEFCDAEA4474DFA2F8FD68F
+74B5837A22984A7534A5321B83459E436AE4C498702EA14A77D3F78DAEA47BA0
+1BE6CFAD95132683BCE0601F3EDDEFF5207FD5FF3CC9093ABD946CC7C1076DB9
+4DAF08C682269CEE980159541D92FFE484B7440E5AC58D7707BAE579605D1EB6
+42C396807AA13B3ACEDBF3A465CBD56F076FA9319E43907B6522904F92483537
+6102700CEAA52EE916B80AA4C5F8C98C9AC9557F97784F075D37A83649D632F5
+82A519507162012A671F3B4DBAC454D920606E9C87CADCAA1172A04E445A28A7
+0FA9545E5FFD15302664B5C2C4F479C8C760C2A015F5F5CB51EC6C0260154D37
+4A65B01E58B458ED0FEBBE74884C9DF7D50770153FB498E94F65475A5EA6A687
+543DEA3156D3E5CEE23923120DF4D561D2C082F1F3BFC5039A1DFC1C9C3A328E
+6F879AB979F2C177FBA357FD63F8CC21E8AF632D6B01A3AC3EA7DE91C17B8120
+42E78A1AA2E04581B1C434A8147DBE81A87C73782DAF4BD5F309280FEA22DBAF
+586AF386182364E45D7DEAFFA74E338E875B64B13CFC909B30E074D777D347ED
+3A58A82D5F6A6E913054F9FABFDD9ABD8BBF54DC3480F3A90965A0081092714B
+D77604CC7275050DBCCC800BCD8E2BA540B18CB07AF27D66F8887A571685600F
+3FF8C7A4966A8CF8CB25DE0495CD4E048999ECE6579AFA82D1644FE160E2D3F0
+EE7CE89045332B172425D7D1443E8DD9043A12042ADD7EC106CB4DAAEAB310E5
+85F93869A1C519DC0E3CF8F4C05030F0BF7054C5859A74ECE7D6FC5644C5B84A
+F3EDF0C4B2DCDD0D193599CB3CA00464A90AB55674F884001EC896726A9B374B
+3A73AECDCBE06895E87FCE6267091C6CED0E779DEC36D8CC35184E00247AB90C
+37161FFEE7CABFD7499859042093BCAE22D6B811FD16EFBC8AAE6283881C12CA
+98E0792640063169F76B18EF543AFE7951E82EDB1DB9597F2F9C959B69943379
+CC7F5BDBD1BAFF7C77AD8D504D5F17E1B7DFFC515AC237748D33FB6B9D7DD903
+2F3E9768290A90A5FC5EA516A94C1885B17676D33CE4124CED1359E473305B02
+03C28731C0FC52B18FC14360C9494FF2A86AEE929E4022ACB78C02ADD6174FD0
+D35105BB00643F6560A9CCBB3E5CE2F79F0EB9BA774D27DC476867C991598380
+F77CC0444500CF43DAB8D729B31EA5A3184F178F82622A8B711A9CA6A770971C
+521C44969E814B44D8E1927C283E6A38B78D7C258630730EA463FEEEAB263838
+2A517BA176D1C137AAE7430532FFB0FFCA8BF110DECB42B1A7A9457A9ECCABFA
+D6CC11CD925518857AAA8498CEF35377CF92FEA77C09E6AE25DB2D09F1E355BD
+7F7F5C72A76315F3C2B6BEA1AF7BA5D0E8000778A0FB2C60FF677ADBA9156A11
+A5B0B7AE92DB368571C040FD7A29C3DF384CCC29A0E9F40FA385630D23AC1E97
+C15C06848761CC7D19D208BC115A6A2933056BCEB3717CE2488E86D0B0D6D276
+22B2FF1E77FA719372BE62A5B6E10D3DFCA57DE70AE16C57718B86C58B6A7F3D
+C6DD45D7559F9A0ED8889E707FE7622997F2D573F7688621245E0FB3D34A08C6
+40B72F4BDA0394CBF90735B9E6B3928AD56F50FEF9A5DA8B195008164EC03424
+7F5317FB8157C33F6903FD6D4B4728F82F1B02046DA16F4285DF088E08A136FD
+1366494E3F5AEBED4B48B3B9072BC811A700940FF4B2A51C0434ABF225B37BBF
+E4AB11F394332D66393420D4B843CAB6AAD9C32418CFE6A2A1260BF430E61176
+4B1762E3C9F1727BA47AAE4C7589E7099A56F5E1CB6BD64C0C8D026ED60EAFBC
+BAD1476E98F5F12ED94BDB1E4B0D8FE9E36CF40DA6F5B2E1BC41EF5F7CB49825
+EA5058FF7C49C5FA11F9F9F575AB4D8237FFC2573F94B695CBE9BC44A1BB26DD
+C6E55627BA16E5197CADA519CC7302DBE77F1FE4CF68C558D8F6E264
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -2209,63 +3638,233 @@ BC9E7E1544A0318C545ED1C37C64176504D175B83CF974B4ACC39F5790E24B11
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
+{restore}if
%%EndFont
%%BeginFont: CMMI10
-%!PS-AdobeFont-1.1: CMMI10 1.100
-%%CreationDate: 1996 Jul 23 07:53:57
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+%!PS-AdobeFont-1.0: CMMI10 003.002
+%%Title: CMMI10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMMI10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMMI10 known{/CMMI10 findfont dup/UniqueID known{dup
+/UniqueID get 5087385 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.100) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMMI10 def
+/FontBBox {-32 -250 1048 750 }readonly def
+/UniqueID 5087385 def
+/PaintType 0 def
+/FontInfo 10 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMMI10.) readonly def
/FullName (CMMI10) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle -14.04 def
/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+/ascent 750 def
end readonly def
-/FontName /CMMI10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 58 /period put
readonly def
-/FontBBox{-32 -250 1048 750}readonly def
currentdict end
currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
-3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
-532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
-B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
-986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
-D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A319B6B1FD958
-9E394A533A081C36D456A09920001A3D2199583EB9B84B4DEE08E3D12939E321
-990CD249827D9648574955F61BAAA11263A91B6C3D47A5190165B0C25ABF6D3E
-6EC187E4B05182126BB0D0323D943170B795255260F9FD25F2248D04F45DFBFB
-DEF7FF8B19BFEF637B210018AE02572B389B3F76282BEB29CC301905D388C721
-59616893E774413F48DE0B408BC66DCE3FE17CB9F84D205839D58014D6A88823
-D9320AE93AF96D97A02C4D5A2BB2B8C7925C4578003959C46E3CE1A2F0EAC4BF
-8B9B325E46435BDE60BC54D72BC8ACB5C0A34413AC87045DC7B84646A324B808
-6FD8E34217213E131C3B1510415CE45420688ED9C1D27890EC68BD7C1235FAF9
-1DAB3A369DD2FC3BE5CF9655C7B7EDA7361D7E05E5831B6B8E2EEC542A7B38EE
-03BE4BAC6079D038ACB3C7C916279764547C2D51976BABA94BA9866D79F13909
-95AA39B0F03103A07CBDF441B8C5669F729020AF284B7FF52A29C6255FCAACF1
-74109050FBA2602E72593FBCBFC26E726EE4AEF97B7632BC4F5F353B5C67FED2
-3EA752A4A57B8F7FEFF1D7341D895F0A3A0BE1D8E3391970457A967EFF84F6D8
-47750B1145B8CC5BD96EE7AA99DDC9E06939E383BDA41175233D58AD263EBF19
-AFC0E2F840512D321166547B306C592B8A01E1FA2564B9A26DAC14256414E4C8
-42616728D918C74D13C349F4186EC7B9708B86467425A6FDB3A396562F7EE4D8
-40B43621744CF8A23A6E532649B66C2A0002DD04F8F39618E4F572819DD34837
-B5A08E643FDCA1505AF6A1FA3DDFD1FA758013CAED8ACDDBBB334D664DFF5B53
-9560176676ABB71BBD0EE56B4CC492C0652750227CEC6CBEEE374709231B00CD
-0DE83AFDE295B314F6C8B1FFD32251C1925D96A64D739FF1DA4926460B28B3DE
-E949AA0BA3DDB16534FBA30C32092D5F712B5E8C8D5142F35AF2906E6C219D2C
-7FD9A368C193E0EB9C7E25FF03C546B6ED993F964CEDB1B8537C617170787F37
-88D6F2AD02384B01067FE3F98257BAB958BB3BCD1001090A4502DA0638080EC6
-DB784CC8AC37CDC01B29BC481D6A05ADC6188785262358C1BF1D694BBF31C1F1
-AF117C1ACED44AAC6EB4B9A2511A6762DDE8FCCBA5
+D9D66F633B846AB284BCF8B0411B772DE5CE3C05EF98F858322DCEA45E0874C5
+45D25FE192539D9CDA4BAA46D9C431465E6ABF4E4271F89EDED7F37BE4B31FB4
+7934F62D1F46E8671F6290D6FFF601D4937BF71C22D60FB800A15796421E3AA7
+72C500501D8B10C0093F6467C553250F7C27B2C3D893772614A846374A85BC4E
+BEC0B0A89C4C161C3956ECE25274B962C854E535F418279FE26D8F83E38C5C89
+974E9A224B3CBEF90A9277AF10E0C7CAC8DC11C41DC18B814A7682E5F0248674
+11453BC81C443407AF41AF8A831A85A700CFC65E2181BCBFBC7878DFBD546AC2
+1EF6CC527FEEA044B7C8E686367E920F575AD585387358FFF41BCB212922791C
+7B0BD3BED7C6D8F3D9D52D0F181CD4D164E75851D04F64309D810A0DEA1E257B
+0D7633CEFE93FEF9D2FB7901453A46F8ACA007358D904E0189AE7B7221545085
+EDD3D5A3CEACD6023861F13C8A345A68115425E94B8FDCCEC1255454EC3E7A37
+404F6C00A3BCCF851B929D4FE66B6D8FD1C0C80130541609759F18EF07BCD133
+78CBC4A0D8A796A2574260C6A952CA73D9EB5C28356F5C90D1A59DC788762BFF
+A1B6F0614958D09751C0DB2309406F6B4489125B31C5DD365B2F140CB5E42CEE
+88BE11C7176E6BBC90D24E40956279FBDC9D89A6C4A1F4D27EC57F496602FBC4
+C854143903A53EF1188D117C49F8B6F2498B4698C25F2C5E8D8BD833206F88FC
+BD5B495EB993A26B6055BD0BBA2B3DDFD462C39E022D4A1760C845EA448DED88
+98C44BAAB85CD0423E00154C4741240EB3A2290B67144A4C80C88BE3D59AD760
+E553DAC4E8BA00B06398B1D0DFE96FB89449D4AE18CE8B27AFE75D2B84EFDB44
+143FD887F8FB364D000651912E40B0BAEDDA5AD57A3BC0E411E1AD908C77DCE3
+981985F98E258A9BB3A1B845FC4A21BCC54559E51BC0E6C22F0C38540F8C9490
+88A0E23EA504FA79F8960CC9D58611C519D3ACDC63FB2FBCAE6674357D7F2285
+4BCC9F54D3DA421D744D3A341DA3B494BB526C0734E1A8FC71501745399F7683
+FD17EC3044419A88C3979FD2ABA5B0130907B145A8462AAF0A9B511D2C8A7C7F
+347FF6AC057E6512902BFD2918E2CD31DE615F5D643764E900B60287670AE18F
+FDE15545D8BC69591A8CBBB275AFFC9B14BD68DF0AAB32268FB84844D4DBC7BB
+C591C1AC5102C50A9C7BAAA848DA88B0519F0F5F0813BF055CF0E3C86F633A04
+B779D2E8E656DB1E09A66A85FE21CA8BA5523F472A229E83F2C4E91ABA46C733
+F3C7B5775B06C97782BC225C46385BEBDC61572458EFC5CF4190AB7A9C1C92DA
+29F84BAACF552089195966E3AD9E57CC914D20B6962BE80429A16D4DF1ECAA66
+36C4343FADF0B2B48F12E2EB8443C4AA29D00949255F3968617F98B8ABD4CC12
+048B838EE243A21AC808BD295195E4AE9027005F52258BFCA915C8D9AED9A2C0
+80814F79CF943FBE3594C530A22A92E11BE80FCEC1684C4F56712D5846B0749C
+9B54A979B315222F209DEE72583B03093EC38F7C5B9F9BCB21DBE8EDDAE9BE8B
+75ACE6B12A31083AC8348EC84D1D29D2297A266284B7E9734E207DAF59A25F4E
+4AA38509E993C5394FED76E6A2F25462685C4C86C6E8CFC9863338EC1428BDFC
+74616BB1BC8948B0ED4C87C15B4405F3A7796F9DB3798FFFE8BD0A94E834817B
+D5E9812E308D0CC920470A6F2CD088FCB80462BF7CB3F039A7DF3DAF5B2B5355
+E083A385CD2EAF0FC181E40E96DD7E9AB9EF5C7E6866A13B8A54718E950FE097
+EF0951A357114F18CE9933D28B3A77AA71E3CE884661F13284BCED5D5FD1A86D
+543E588FF473DC2CF9A4DC312500135F29C2D0174B32018C8DBD40EF9A232883
+710A1F2AB2CD11312300ACDF789A9B7B93D2035D81D1C84984D92D78A53A00C6
+EDA94B24BBAC1AD17774A4E07E6F74ABD90415965616AD540C8ECD8C3A44EE4F
+7F4F6BB6238C5062D63FA59B7BF08BE93FAEA70A2AB08FBEAAF7DBF56B95FD93
+03CA406543BA6C9527D0DF01F5108D31A51778A5EB1C93F27B72B46146A353A2
+01CACBC829603B9989A87CF64528682CCBA0562A8165B185C58A5C6BB72F5E89
+500ACCAAB8ECEFBB2640E99EAEEC4EA979AA793D013D61D8ACF8784FF8D9398F
+F6A252A709324FB39509F0B3A4E725E82F53543383C6765BE556CC897C758208
+AA3AD37B0406E4A79F8F0A6C1983FC73E71CD858C0DB66ED66D5D992978614EE
+1EA91EBE191E082EBA1FC040AF19A2202575C2EBEB8058833E3520FA03D2F915
+85C1ED337E457B9FEEB0C6EF2735EFDA6E0D05FA641BCF698AC6B97751E8306C
+4DF00A39B8581FF53DB8F8525FDB196D85950906CCB59B8EF171349AA3B567B1
+6A00819947A995FB383C3C1709C9A2C113B2E40BB832B7D4A0FBA0B16A2C455F
+55809CC425C403E9668DC66BE45B71A81C332FD4DB279D22A2959962304A8F18
+085893DAC61317D24A8F198FDAB95F3B86F0AFD35047B868A9A17037A2829A02
+BAB042F75F349E197A7EED41984C2859754CAFD0251439921C248B463B516951
+2E1322C80D73F9CBCAA63A585450275AC2492E4D3FB78E800F788254DB5E610D
+CF788DF5C70FF99892BCDF16133E34B24B77C8F097F546B87C603DDB8998B66E
+BACB68BA27462AF54AA405682EC96D701F0D474DECD5F95CA2102DF639EB169E
+D518162C2BAE45FF698B6DE15FC6E7DE48C336C40A670FD26952A6BAB09115E1
+991F0073419F2CC2A1C08BE91096936AA0C37E4ED3CCCEE235476074B8FF1125
+6BDE3701F85532D8BB64CCC927CC335281C95EA689706F0AC717DC2CF680C754
+E5EFD7FA4BB8880B2B727A964C876D4A223069D4E6001771F0E23EAD2A4BBC80
+E76675297B2EF05F52BF4E71B3EE2BE3048CF088C79540113C66AE98B2FD3CB1
+B0741A215FD070882C52765009D7D711DAA2508F19AE7DDA15229A856AC49BC3
+4DDF40814FF96500E4B9B02D412E94623C5FDCC76C0FB8E42DF56A904FE49D65
+1DA7C53901B2EA71AB658A464D3ABDE27D9DB8D9E0B48F64E61A2495AD5D8DAB
+B5E72424AD017DF37964AF911BD7FA21A5EB4775DC8E95EF0C0EB856B00D89D7
+8172A1DE8530767D317B8256103E53CFB877E10686A04F5A08F8DC58D843DEBA
+FD5F40597588663D103689F6EB3EB14D06E18C8078F2538B43E712DF491FC5C6
+AF639256C8C6134B64D560D8476DEA6329D995E46CC4BC78841C59E73648B47E
+BFA7DE0846422F738454AE77E822A083405289247BD7C478BE4974F742CD6051
+E99FBB1D1B3FBABFEE855174734EE45E87D0AADF32B1283B911162A9955847FD
+38944D70584FAA6B1A7191C5C134B73F98EB632B69E2F0C0F94156787C34C8A3
+7622A029D58F9626B74F8A8A1F3803E0BC20E0EADEB1E99B70F1BD9F980FB751
+2A842843DE42EB142A84D5D3138629AE9EAF6F3479C423E8829C8816FA6EFA27
+DCE5580E65AA9854B1C64163DC318420CD993C15BFD76A8BA1182860A6B03D6D
+22B8CF43CFE6C8AB27C64842E239CAE707D3086BADDE1D7C94E3BC96319470D6
+8D26915C575CFDD03271D6BB9DE86A0EB6EEA6E768B224A626C62A9AB48A6EDB
+44F70BB5AF991CDF9736D65933E81CC57A78F623F33EC9AF535F2F25FA4EEC90
+D50DB7E87F31E971A75A33A301CA6013EEC5A4E179D695B33DADF2C98364434A
+42926776000B610E17524162253F6FA638D6581C18F99EA0BD1D2E24D2424ADF
+C05010D08192485153DD03930C7BF45237593E484F9851E6D464FA10FECA5D9E
+0C8CCC97DE029030900CDBB491C5CF226DBF903CFE7735D939C3FDF3A20B70CE
+66579B28B99313FEE914E295388C7BC8E055A2E54EA3A8206D3C8F4F7C0BA5E6
+E519419FD8CE215F7B8E9BEC604A9E3FE272A0328A24E31997C8A91E0946BCF1
+6943A97CBED2AB9FC636B49828BBB8B89E0BBC2653796431224895ABA5DAC41E
+1854BD9764E86147FD7624F736F40DE3B7582EDDFD15C2BDE3F22B5A54D7DF10
+B87A1301CE85CFC061689A890A321412A13314AE96DCD3EDA75035FDD8F4AB9B
+897A2C68263A68457032C469987970648BA2D88B1C5375DFEAA35A917B8A952E
+EE670427942AEDB3CB599C5746180E392837D371E15D860620ABDB6AA7772C40
+A5E346661673ACA530BE3D8E3FFB895E5DA3DC23B1B43C080C77F7E47847F0F3
+F3AA5CA9E4BF75FC5EBD18D19F21A7DAA3B11CABC6E4070A15F7DBC8B05EB6AA
+A02EF1B078EB66D61D6AFE41DA9B36FE7EC9EF94D1EA26282A9871E2CACB3126
+2AD49C2D9B50A6E47D8F2CCAD50992D1B430979A45FD9E76182A19964BB2A1F6
+51779A2B258DC1DF4C2F3074621286831F3848AC152DDD2BA561E6586ADA88D3
+598A2CE2CD048F027CE0008B828BD915887D7785341E8305DF2346ADB76BE99F
+87B02173BDC334E9221C8DF54114A6B24C1C5340299512FA6C8C51AB4C8778CE
+178CEF531C6D1B5FF0A1BE8EFF767F959BD4C345C52699A29A17B2A230842BF6
+4B011217D6D24EDAC3F6D53482786F1CA33169B90ECD499407D37CE9B70DDF78
+7B7547B32952535BA9ACD1E244447AE3FCED3AF28717083CF9590A09780984D6
+AF0743C82AE4FB3E2BB2856A4153A3967A023FFC35382D6C22D84A924900B6A6
+3DDD400E6D2418DA6C27F2FA34C075C902B89EBAE658B3C9A18EEE449DA5A379
+337DE95CB7AB3F0970CF1A5D8FAD8090E495570FDFB2FBBA79244780D8035547
+C5A55BB21A2270F724BF5D442CDC5BB9F09BE0CAE59B1C2270F0BDACE698F2C5
+DE8F66BFB9634904B161F5BA2B1950048300D69BABD312D58D89C4ED527AF7BA
+7DA2478EDC2CDEE3473DD8A8ED9D891CD1FC21F23013228BB3281B71FCE959BD
+6F8E9059D682A7FCC5265A0620992D4FA8D78377EB34CE3ECA070EE3707239BC
+98907DB0120CE42ABA32CF97127E28382BDDFD685674279F588D4F951216C355
+821361790F64C2CC720DE97E8ECB57326C43EE47367628E05769E106868B54F4
+C33C9951908DF6FC4F5ED2C7787BD8FA591BBB3E9C6C1DA94CC5E38D9B20C886
+7D237572FF46DD896A4D6163408EA6CEFAC398EE041EAE29D577E75326CA17A6
+B072D47A7B13EC441CE6DAA042ECD02134CBFA6809A435050413817193DAEB16
+A5882C8AEA44BCF36E74E9ECCDFE7E19FF5A5DD7A94E5AB4F8702C3DA7F42325
+23C808670A0490F5B373DADE40814FF9650241D3D69C91FBC5ECE728F827D9BF
+C928602E05477903449E079164CA39859C4BCA60C579F490AA455F82B5050BB3
+969AFB478E0D4A257B3356EA3CD62051FCE6C6B1929CFF85BFDF166BEF658E10
+3A55E007F38EBBB248B3F0B8ED1925106B499B762E45113AE1AC9DE09644C84B
+9C08034B297314EE69BC32DB6E7D7FB9913CE5AC17E7335979E9DCCE2BAB3725
+1976155551F9706A576FE0E3ADCCF72C87683291528ECB749CB0ED291966E239
+B5E3630676BD409E08F85BC1AEC9A2D4135376284A96EA24431243BD6FE8B966
+95F11A4BB53F392E0AEFEA623064FF8A7002367B0A515635CB2D2DDFB9B4A8D7
+FE721754E81BBA548848A235B91AD4E4F7DB19CCE2F61D277FC00AB956EB93BE
+44AB4970CA56BF59506C94ED160FB1E25D3DF2988A532BDB787BFB8539D22986
+FDC378AC31444E63C4727FEE121A43751043849E6DCAC5B59D0FC703AAFBBFD4
+E8B7C268F21615AD02CE9DABEFA27B5FE6A6441B619539CAB1F810F1263447AA
+633F5DAF483752EF1A0421740E3A811D2D2898CBF53E7F686C9223FD7235F02D
+6F90D2D48CC20AB87778DE3C6FB335E0F0EC20B5DC5B65223FE117526DE2C72F
+FE839DF93CB2A7D66CD900CB325F891E311BEC932F703FB4FEFA29DB8B9C88DD
+375EC71B3D58C7BC59ADA91971A3BDA1ADEA629CE6CC92BD542CDDFAA7706FB2
+6CDDE2DF07E56D6741916AE8E8744339816F3E6C38062747AA9FDA2A2678A6B7
+EFEA870AA3A4D71B25EE3013EAB1DBA34401B867C7A41AE51E0421D41D3BB83C
+E120C8FEABA6E5DEC53A689C21426D4BBCB68CB37568761C360E6D4E3596FB7D
+F4DEC7918E58C0293D12D6DDA7E9DCDAAD7C939F55CD1BC4A228B31E9A904156
+DA6B40B08E6ACE674618B768DD681C772A3E55FE096CF949CF3B0460ABDCD891
+D17B37B355B29AB5137899C036F31DA026244FA25FB798FBE5105BDA29F46538
+D3D3AC1001A7BCECE64DE94FFE6C354166A0F97256137BDFA07F6E22A3D1D2F4
+9588DBAE95E895BC5E64DDCBBAA8D0A22C229B42CB717FC711E7E9DF793DF80B
+9F14754585A3C7E17F37B32924B9F9870DA8635E3E18BD1DCD81EDF01834D9C6
+B33F23C956C2FCBFA47D84422F583459D827D1E120B97694D12F1F54D02379C0
+D288F7104F3FFCF4F76E3494F4ACBD1BE3A15543CC680924C78A473F8E311ADF
+8FE00A04C6C393DE61AD3EDA5BC031E2353076A2489391B52632387CA28A7B93
+FBB065A6EF3658AE80B1ADA47E9B2539E73A71FA75645F85ED8ECC257FB4CF26
+B6C912DE9D0F9899E70BECCB934AD32CF49A093371A9F73DE6255EBC39DE1E7F
+00D0CBDABD4D0383977E694890E71FBE5C376BE5F3A80C28987417504F515C50
+909F3D31178BB9B1D085BE514F71B910A9085BD6122DDC72A150BFE266920E49
+5661BCB4BAB51D6DEFE32B616963DBD989FCDD1637B294CE4E288655FBEFA1BF
+7F25BBF8CF17C2D5FD161A7C2CC9CC7490D9BF15A1D35B3BFA43ADE256E88BDA
+BD490D92907C57BAC408A575EC84D6AEE070148C7C9A91C03B09FDBD792E8FF0
+C0B886AAD2EDD86541E5E579359D40E3AC312ACD3D8FD49F71BD533DDF8859B1
+BAF17F1884E331DD07CEEF93B71D492AEBAADF7A263450A7A72210CE630A0D37
+BF024BDC09ACC882816B8C22C62AE38A3A8D0F6EBC2B1B2C0B8161A8B076DD5D
+4B779C0788546BB4CF57332230D237856B00D79C28A7C01D11F44B7304F69075
+94B97A745DA43D1BE561372CE611C345A843834E46AD9DDB16CABCD3FA33D6F1
+F6B5C0497F5EE5400B305CDC16A7EC286AA4D45D0EEBB9DA06AC9C5294D68EC9
+E4DC3CA2B92CE8FC0526184A86EDC7AB34D67E60AC12D9CA8FD300235EC968BA
+92C6FBDA47572BC5600F25249F60AD287CBDAE980E747FCBE7EE5CD323E733F0
+63553B494D3DDEB9CC1480B5C3BB79A28E419AA65B18CB297AB383419E890E2A
+CE6F98C9900CCB4675280A10CF060B8D220DDA1BE55DFA65715EABCC1AFAA271
+B1F8732341613E17B231231A0D24D4D7FC198AE04D89A99C4536217769C6FBD9
+5EE24A6302F97438F7C0E311C878F674B4477A5ADA3952CDE4055AC408B8174E
+86F8FB797646DFFFE0ECA25D1BAB9A9F71F3926D3D85AA63E7A8C931D71E79E0
+AF1EAC26FADE468F4FF7F3861D14C10E3BE1F9EAFD6D3A544E8108D5DAB5B180
+3950C74818BC8AF4758A108F462EF1826647A49667F5E482038C54716856D9BC
+35F29922846D2148F92F943E951D7438C73D6A60459A8003174036C64E1629CD
+155D47FD04B03C023AD67CD5A70C98AB556EEAB8C48169706E5B352F6505D580
+AC945171BFE62E81F8F500438AC3B64D857BA5BC54C2C4BBB237F8FA51296255
+E66A92A61FE13FDE781D393557EB72CEBAD86511035F775FAC39A0479CCD400F
+226709118F887F47CC2ECC8F79816D4A945B2845F50AFD62D8C9A9BBF4739496
+9E644BC9F7B04803B7EE75A09EAE94365F6F374B4FCEB0B506C76297564B9B6B
+8B812BC3A33929AA94692572B010E6210AEAA312BDFC88BF302244AB9D587A9B
+919823FD01DE12438D960944D1977800FEB49E638C32E5B188B1CA033E0C37EE
+A142F746367888AA119535F0CCAF7EAA461B790EB089D2D6962E28A398439BB7
+9C9943654D7A2D765B46BC0DD1F915327F369162E1BA1BA83110B93F442905E0
+523BFF5E279508A98568CD5CFD18FABBE9D17265A9081E7BF64155A2CE3C0DF7
+88D00671AD65654709589BAD7EA65BBA811387ABA5CA0BC3F66D3D48597A0D1D
+2C268375DF47CCF62166262AE4840AB03BF49BE67A05EF66328EC729F03CA5FF
+AD3937FC053E223303565DC771ACF32E63DFB96D5030E787961D72D02C195C66
+B48E9AF0309DC169CFE8D16E2818DA94693A18F027DEA0D916672480464F7E22
+CA6E431FE38D3FC019BDD229E064B72C545C61C6EA55984565CCA88ACB01F744
+3B4593CC8944C70F30925FB48A16342CC26D444F54CA15E5A624C4A2DAA2AEF8
+404145BBA339F2A2D6FC2F3ECE54387761CA1213C8D56FF96E37C6147CA44B84
+262EA87E7CC10D931E6B5B80D7F09813498497AA84ACB4AC69BC6C8481ED2953
+084F560D7B1CF90555E69BD2AF7C5D944E8E3506165014652462BE1BC81CA341
+E1B0725159D36DA0FFF3577D1DEBC5D91AE683FB0384
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -2275,63 +3874,233 @@ AF117C1ACED44AAC6EB4B9A2511A6762DDE8FCCBA5
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
+{restore}if
%%EndFont
%%BeginFont: CMMI12
-%!PS-AdobeFont-1.1: CMMI12 1.100
-%%CreationDate: 1996 Jul 27 08:57:55
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+%!PS-AdobeFont-1.0: CMMI12 003.002
+%%Title: CMMI12
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMMI12.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMMI12 known{/CMMI12 findfont dup/UniqueID known{dup
+/UniqueID get 5087386 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.100) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMMI12 def
+/FontBBox {-31 -250 1026 750 }readonly def
+/UniqueID 5087386 def
+/PaintType 0 def
+/FontInfo 10 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMMI12.) readonly def
/FullName (CMMI12) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle -14.04 def
/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
+/ascent 750 def
end readonly def
-/FontName /CMMI12 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 58 /period put
readonly def
-/FontBBox{-30 -250 1026 750}readonly def
currentdict end
currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
-3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
-532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
-B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
-986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
-D919C2DDD26BDC0D99398B9F4D03D6A8F05B47AF95EF28A9C561DBDC98C47CF5
-5250011D19E9366EB6FD153D3A100CAA6212E3D5D93990737F8D326D347B7EDC
-4391C9DF440285B8FC159D0E98D4258FC57892DCC57F7903449E07914FBE9E67
-3C15C2153C061EB541F66C11E7EE77D5D77C0B11E1AC55101DA976CCACAB6993
-EED1406FBB7FF30EAC9E90B90B2AF4EC7C273CA32F11A5C1426FF641B4A2FB2F
-4E68635C93DB835737567FAF8471CBC05078DCD4E40E25A2F4E5AF46C234CF59
-2A1CE8F39E1BA1B2A594355637E474167EAD4D97D51AF0A899B44387E1FD933A
-323AFDA6BA740534A510B4705C0A15647AFBF3E53A82BF320DD96753639BE49C
-2F79A1988863EF977B800C9DB5B42039C23EB86953713F730E03EA22FF7BB2C1
-D97D33FD77B1BDCC2A60B12CF7805CFC90C5B914C0F30A673DF9587F93E47CEA
-5932DD1930560C4F0D97547BCD805D6D854455B13A4D7382A22F562D7C55041F
-0FD294BDAA1834820F894265A667E5C97D95FF152531EF97258F56374502865D
-A1E7C0C5FB7C6FB7D3C43FEB3431095A59FBF6F61CEC6D6DEE09F4EB0FD70D77
-2A8B0A4984C6120293F6B947944BE23259F6EB64303D627353163B6505FC8A60
-00681F7A3968B6CBB49E0420A691258F5E7B07B417157803FCBE9B9FB1F80FD8
-CA0DA1186446DD565542BCCC7D339A1EB34C7F49246E8D72E987EB477C6DB757
-99AF86CEBCD7605C487A00CD2CD093098182DC57B20D78ECE0BECF3A0BF88EBA
-C866DB19F34BBBED6634AFC0F08D2AFB2A92578A6F8B4ADCD6594737FF6EED7D
-5B536DA9E3E2CADB40DB7C600EA4D100D33C3B92B1CF857E012C4EB370BA8295
-55B50047CC8911C98FE1A7BA6CDEA82D34476286E710776823690AD333DD3A49
-335002F4680DBE1C21174BF016B0DF799B01EB9D6988479A8334BBA2F8DC7146
-BC0DAE9DE3A6453B181808E68A89E0C02DAC6264D002B422EBC1CF14F65D9888
-15EE6D514D3457F7F3C6A3D17EE1DA076F73ECC392D349174DA9E4680F29CE10
-0157E42CA35F5DBFF56BFC3AA07E61A78DBE882C5AB388220C19750D3643E7C8
-23D6673027CE568A4ACCE1D12B1D9E5A43507F4AF9BC873237F65A6B95078DD2
-378007CF0F0DE7CCEF760E19D6D1D7B412EC5D4972
+D9D66F633B846AB284BCF8B0411B772DE5CE3C05EF98F858322DCEA45E0874C5
+45D25FE192539D9CDA4BAA46D9C431465E6ABF4E4271F89EDED7F37BE4B31FB4
+7934F62D1F46E8671F6290D6FFF601D4937BF71C22D60FB800A15796421E3AA7
+72C500501D8B10C0093F6467C553250F7C27B2C3D893772614A846374A85BC4E
+BEC0B0A89C4C161C3956ECE25274B962C854E535F418279FE26D8F83E38C5C89
+974E9A224B3CBEF90A9277AF10E0C7CAC8DC11C41DC18B814A7682E5F0248674
+11453BC81C443407AF41AF8A831A85A700CFC65E2181BCBFBFE3573BF464E2BE
+882A715BE109B49A15C32F62CF5C10257E5EA12C24F72137EB63297C28625AC3
+2274038691582D6D75FE8F895A0813982793297E49CC9B54053BA2ABD429156A
+7FFCD7B19DAA44E2107720921B74185AE507AC33141819511A6AC20BC20FB541
+0B5AAEC5743673E9E39C1976D5E6EB4E4D8E2B31BEA302E5AF1B2FBCEC6D9E69
+987970648B9276232093695D55A806D87648B1749CB537E78BB08AA83A5001F7
+609CD1D17FFA1043EB3807AF0B596AF38C91A9675E2A53196FEF45849C95F7DC
+182A5EC0EC4435A8A4B6E1CDBF9A5AF457564EA72BF85228EB6FD244F2511F5A
+CA9B71A65D53CC06EF5F7EC3A85106139A4D312378BC22183C09A229577B793A
+1B7422611C03E84BF809F46C62CE52D3AE29CE01C32B202ACDAA5B72733EB0AE
+C31D7EF7BA88D2D14F85313F7A8B9B7A5B124B03AB923744D336C969E5CE304D
+3AD977A46664479EDEFB69F113024E761C05FA48A54072DF9E12C2F352ACB3E6
+D04F6EEFFDE209E7FA3DA22E5B1D1409461F4286B7F4F8251B44E5CB7805762E
+E129FF4A06A7458F3191926B1CAF70E32C6571AD2DC07C34FF62840896F4D200
+761B1A7FA356526D1E3AB4C542AF13623BAEB9F61B1BEEF79A9205B1FEFDAE24
+8799D516A9ACC30BC0139C63C9A0523E9D5439213B67D490C96F902958779B8F
+68BD8E9FDDCE8A3A2E35877DB6C94B7612382ED8F218EB1157D2ADD090A2448D
+10B99FBC9211C5629ED1C61C74FE93041E5AA03EA4AC3FFDA00C2B6E719CFAA4
+262FE17F66804A6B54D3669836EE4367D2A2991580C5564463C973CA0DA38AC6
+922716E13B4A807B50304B8826CEFEAA47C305FC07EB2AF25FA7945797237B16
+56CDE17AB0834F5C97E0CC5741B061C6FF3A8DD1A79B9A173B66A6A750538E26
+32FBC92E75BA15CFFE22A7302F47908547007402569158F62C29BA2956534FEA
+7DACF1E507AC309DAE8C325F2A6023D2FBD81EF42146BFCE6A16A6310A650460
+7B07BB7647C8760FADDF0DBBCD3DA6CC4645D1732DB3A22D8B76E1D2D48E4D4A
+46F4BEB80CE65F3517283A1AE08391FD1C10ED452133706BC6725AABC80107FD
+754A8BA47B0281D479F052CE26A723EFFACB79B213041A536542AB334769A2BF
+88505D82C498ABDD5A73EB539530F47CAC52825D16A969C8BB56D4A7F2830B8F
+CB63B92B576E7BD922A4B25E634751F8A3B7C4EBAFCB373EDC8B8281B1D1371A
+7844E9AD990CFF09F0D7ED73A5CF873D2D5C9E8A9923CFA31E1A4B4CCCC40760
+8B3AC8FC3C88BC08BD7407725281BB879A1A822D94997826418F1B89D303F2C0
+BE7A0102E6F529630CBF1BC5BF3E4578C164A3DDE45E62A957EF3FB7F0FBBA6B
+CA1E79A1ED195B6A11CFB345B663C5E72FA55D80476F604F6C4257B51686AE25
+8F7D159FE605DDA0AC74BAA5034F29FFFD403070013C6E2D8EF6A0990D91173B
+D5A3AEB98B64E412991505C3CB7C2CDE13C091FEB3DFBCAF30C4C19511102300
+135BD5D444BB55692013F52056908DFAB2ABFACE81A58423ACEC59344CEF7D4A
+C5A3EFFFFF70759BC3E593D878281225060B97D1BEE6B26EED90571FEAFA1812
+1115C0EEC892F5DE6FDD68321A0B3F10A2D771B79BD85476AF6018472A499A86
+07D64CFF4550866AFE590C471C80EB12CB3A989A60BC7BED39097C12D9286E39
+14C7952C4C64820B4DE44A1827B7B0B535244E93FDB80036D6332F90F95B472D
+7031E7E3819E881BD0313CFA112EB3AAE943C99C47635CCA7E34DC0306C04E5D
+2E9F60FF037EB11602BE74E8E6B711392E866E3E55D988F7C856417A2B9C186D
+639819B4786D039B77F8578EF63C088FF28BD08D8353031445C8498A8F445BC3
+D08923D32AC04BF3CAFEFCCC1E77EA894F4E846F47EF62D6841B8D8576FEAE8F
+90044626869D04D61D64D56E8C51AF8C18D6CC3FEF3B6C4F7D56FE3260354948
+10104F69B117FB8269292579A7D52FED688C663B643D8D99F13956612271073E
+1A337AED059B7A93819A28CDF01569CBEB51069D22ADAE25C47355560F402B2E
+8C9900DA82B79C64497C8494F42FABE5AC41791C2010D98FB7E593C744F250DC
+D837DB0EAA4F75D0016970F3AE8359878A08CF9A697A06C5EA945819151265B9
+1A12122B98F79185DF852257BB4798E7DC03712EA6ED34F6E6AE1476788DBC33
+9229FADB8D581BE1A63F596698DBD6DB98A092F67197A4FD4A50B648F2691875
+EE2495D6BB310078F516785A0CEC7EB6E8305FDBAEB1D15690409FE32DD9CFAE
+DBD3866FB63EBCAAB73E3E4BE5D7F3AA44793938AAF3F8341683F0790F1D46A3
+60CE083F9BEDDA22E0639A92393960F86602216FA51E2754BC2F4CD0BDECE3D8
+FFAB7E0E49613DD4956C9A10AEA798BDA1F756C755BEC12147ADECAB0FB73B7D
+203A11D84DD2AB5AA98FD38C1C2573570FD49A4924A94A106D2A7D850E793608
+FB135853E8C4204441CDBE697FD0CB330B1C3596F32D2BCBF263237EAB362D09
+DA6F531B40384DC91F30674760CA7B64BA1968F6A7FC9EBEF431A1AFC5E76D7F
+2D44DCB7F61C7F6B16196B3E8B47343F572DBA8B8B21B43E35BB6B2DD5C7982D
+244FD4304D254D6CCB5E8CF70E77F50812F41A988EEB3B26BF0F6F69BBA18077
+31134B5A5823D10FEF6201D045AEE7A24E0F25376E9FC66340C56C05F6CD810B
+724D85CC4BB8D789834A447CBBA159565D08BA5793D8599035BB5063271518E8
+F6C50E7DCE71B1D186270DDC860C6DC0CD506010EB5B1FDF6BE47A9A18CC15D7
+D657E58BED9EECAD5CE5D49F63139A39BC52C6584BB2C3264D51BD584B40F8EA
+AFCD8B83F548594386EB2B05CE803105E84931DC6E7A1398073D48E130E0D907
+CD0F1ECC3254EDF5D4DDBF44415DC9BA66C673820CDB0FDF033D59BE2B5EFCEF
+01FF9D33EDC88F8D522E07F1689D024DBCD09A16A63519E1764C8630FF36058D
+CFC07027E0ECDA01E0E85B166C613B22F587B4D355EB018BA93E92A36007B4DA
+287FF5A91F7D8A0EDF5554ACCF45AC8066E88865C5692E63EB99CAC81367B605
+8E6C19EB98EBFE0D2D161B447B9A70CDD1122C7B78A413369016E6D8481E2AE9
+9AA97B5DD0ACC9B0820F7742CEB2F46F89F3E2092621969A88DC0156B4F941A1
+6BF1546D4B136657C47B082A8A35FE96016BAF3D9679B8C32EDDD6AE6DF3BFB5
+7854074FA019707FC22BFA82299E72ADF9A980AE29A8E2434277E58B01F6B03C
+192E1E25DADD49F6E3F69799AE62B56E00B60A031BF8721DB8B2CB6D4A4C15CA
+AB1FDE010AB7DC0DDED977389B101B8E53A949222FAA126656E02817DD32B0D4
+A49516CEC2B97EA7C78FD66229B044EB92F502384BCC6CCDFFF995EABE3BB7A9
+50D5D1AED861E7D3BA8D333026C673C5762712E763E59261426044583D789C67
+A606B96F97663F92BF104CE02FBFDFC521EC0D6670B7D4F85A229F51426DE912
+3B729C4A535FB7C88D0A5E78074751B58885DD6BDD2DD9E9C83F105E8CF63DDF
+CA7DB39D0319CA7CC2E73F42747F007574DE25AE1538B4D493D22D0D5F0F80C6
+5F6FA3937C8391DE2F0116F81DB2DB0EF751EC838A7F85F163A6F48804E84B96
+8D715EF25B7E2A5CAECC558D80F421052A1D698F3B8452AC27E30A4E6226E3CE
+084C8A83ADA0818A110923CF7AC7AD4CB92AE4ABBE0A9EC1FF935FD02774C1F7
+92A278E513012AD17722A23C55EF82E18F8847B5CCE47F4FE3EC508BA563F7B2
+AE56C94285A18DED4D432FB0CEFC05A20BC17DDF9FF919C724810A8ED7358A27
+97EC93C1A13C443A91947FE1F6F528EA7B628917FA7E554A1D7B31ED46C5ABCF
+92BA57961C8876DB4041305EBB029B03D8351D5E2819FF87E97ED214D8F1CEF5
+7F7668DDE223721C0B810F4A4AC81CA4EAC86EAE546E1B15D91E626FB9A31824
+5BFF17C4E79FD56ADBF6DBF01BAF6453A81EBDCB38A5FC0FD0FF0646B3B0D199
+13E2E59A1B5CAB6DE5329BE389BA0E2A2AB55CA40B711ED746C24F1E48892E76
+6DACF7DA163CDC90CF076763008E7A899870CDED5A80758E6177BE6B93B07EB1
+5800A3BF7B9AAC3FA825CE594EF5B7546B181375FA8F37608DF17856D2F8EBD5
+6030A9E6F6BEAF224AD2AEF76D03B023E2FCB922CB8E3C6816AABB61FE6E4F83
+F21B4935102C860ECA03DBEFCA461F0E5B93E5A8D18440BCF7D1D6252A24CB6E
+A64FDAC8B67C4888519AA368D9C4A8C08C7155DF5BACD75C5196C571C3C456C4
+7CE8D90215FA6EE8CDD72C48740F7F5930EC3632DB63A9C8D2DA125088C0F05A
+9FC83D16B7F53163F4EB6FF372C6C3115F1E68EB35967D11126EDEDF0BF80817
+E68A698183B3EB0A207DB43786E1B9D289359D75AD5E465328CAA90E712C2962
+AE2A466173F2FF30EB535A6054BB0B875DC8552C16B49DF17CF84D98D35497BD
+F55E273FCBB0C735899529A69990E09149FBD2DDE64B7FA8D50AE83925DF03C8
+0B63EA158FBABB12A028803DA4B9DD6C48C0FEC469C4E730729F4BB420D5B003
+1918B4AE9CF35CFD31E8E62A44C0484E3D00143BF1D330235E821E5CFEAB4D31
+7CB4604DB1F310457FCF9075A3527279644D908DE847CCD00B6F50DBDEF91D3E
+38238CAF550FDCABA2C3A46237218DCC5A09AFAF69997E1EBDA7EFE6FC99ECC8
+5D4AFD5EE35FE2346BE79B499EC8EC436868154A947D13BC02C780EBA4B9E64F
+3026F1BF5DC1F8D64FEA1281EA40B4BC355638A3A59BD9055BCBB232FA45EA0B
+B405131B64F105814019BC55466EE78E9E9ABB62DB30EA452F7EFD7196C76A85
+15B2CFCD89922CADC0F392B0C54A231F3999AEFB53C24EB0C63B0C8A1A1ABB6B
+AAB2F93E5ECC7AB90EADA320E918106BAAFC1F8C425C617639984629018BA674
+6FF4F338AC43E23BC3740542911C058D43A49A11CB3A0CC8E3088BB5BA6048D6
+CC2AD250DE956BFBE83BB24C945C20D9C22E7105983F284EF478F9B68BFB0322
+EEB7D62802CBAAEFF1C2332159DCC7243EA40CE15C734EA905E04C476B178B82
+A08ABCB0B86A7330C75E62EE7844C9E22DDB013ADDF20AFE08122EE1B930A81D
+806A0F8CC584CB7FF5F56F9B35E5FF78FD93E7E4A40C64537464EAA275FE88F4
+461FC6A467C8A69B9A9FBC10D44AC1B753D313A8E7D97F5FAEB60F82855658D1
+4DCEE043C8FCDFD8A29DD091F3BA55874A458B2B8989F35055C72FC411382361
+9AADC717E602B48D7C9521D3971A6F7EB19D539445DDE9EFBC5B58FA9E5E426C
+172C45CDA24985FC4632287FC3B15849DEB56F5A061993AB10A6BC59868534E6
+69888175053108B77E4978D971B4EC57224C0F93EEA4C15AE92254140A94704E
+ED5666FC06C5341F643F779CC88A9E81891565C63B6F7F6286E664F4E0A48690
+356DC96F1B98026C563700772485B83BFA06435D4E0793EF822F423C93FBACA0
+E5D889D2B76771C6F0EE997A5DB43C2F6921132890406E3C33F6F159B14C5D78
+7C151BDFFDD02B697315F191B5490073EB418A4FF2A398C68D44F0CD1B87CF9C
+B52F12728B72F94D752D23151196A256908135C87991E508B8906CE2539DCA8A
+31F86809C8C6C18A09F6129BD7CDC6B37E76B648788056851F22BD3E3B5772FF
+EC01D822B57FFDB3BAE624F05531292641FD6A7E3666152D18F6C653048DD7D7
+98A942C840C4A0FA662F260B21C64214152BB86F03662A330109C5AC0A5EBA30
+C6201F558858130703DF76AF4FBBEE069BDE45C0D9467077D85FFED4F9BA9C61
+AED87D67CDCA453A6528AC5BA153E1039D9CCC556CEA5CBB542265FF54A1B208
+E0E13740E7E7C26AA00AEE909F8F3ADC2726081A744D8EF6BB711BF5F611A900
+76F91C26A338DA13A7160A9F42410CCEB3190000D963D036FDA05A29F598EF40
+8FAE6F8E7E6F50C99C3304A573501C13A00023085F057DF331E3354CBE65D573
+CAE73BF15B3B96B502E0AAF2B4A86237E98A997AAEFFF4227D5A26E8972C48E7
+761F430733E6EF8AB2D903C17FAFBFA21C25F8A0AC157D397BF3CC1AE7598F0A
+2BE4FB46B29443CE57F41FD5F91122E9D86F903E94D5B55E2BB95949C156D138
+89883BEFD634311F9280C7F028DCA6408D3A682DF5B55B9F7ABF08F019190F60
+D39E4F0E80F0594235B09A5320109638B938633A2C196E4ED2B43DCD8643C3CF
+C6123B076B7F73352F906D96FDE0FBF50CCCA432712C574D5857838BAC30B485
+D25024EB254A7EFE57D1DF0892C275CDB3DF77602F0FED0FAEBC644BCACA04B8
+B424DB125E487794CAB36E01B5E1A26F5E1E97A739AA36D77A12F5B45338EB39
+AF36CEBDED55DCBFCF497FD475FC6BAB5530AD6153C6BD982564EE8712185F1F
+D5EA7ADF4104661168A01994C1FD773A50C8AD6A3E4D332E4D59521BB8BBC6C3
+866EB4AC3EA4532477E6CBF6BBF0860031C3B916AA25E3492670EA67F55CF4FD
+207C684A0DDB6F4AD21B2909CBA71BCE2E762012B0927BA72367A6AE0AF87F73
+756C9BC85E4EDE35317E2CCCD138C02C7A8013AFDC1A48C3A4BB8EF257BDEEA7
+60E012F54D12D31D18DC59D5E526F12567B8688B4B67E16B56713870300016BD
+A3B9DA87FDC865246AF8E94316799110D86B1DDADB8A673402D4226C519C058A
+1D1E5A5778584FC28AF12819B1924060BC4F54B1054EA6AB0149E04B8C4302D4
+A56D8A347EB5D3D2A0E12CF7E35059BDB53D9FF6BD25F6D9619BC4669CFC1048
+C6C9978B8751B840F27D82A69075832BE59F55C1737CBB1220FB8FF691FDBDF3
+03BD7D225A9372AC221C38245E48320E1CCF898D9EEDD678E5B8C65B7F588321
+1A3953EEB9B39EA9A8CB72DB08C3E9234DFFF5FDF9DF804C021D57E97DA7622B
+97F4CB6E0EB640E0DC9EA15C5193F92A3A7565F4C7A4C9CC327F7CD2C44900AE
+D9E76FFE62FC37FA376E77131B566AE67C3E09DA80F198BBB995EE8FA47EEDB8
+4B467C6C7DB8AEA745CF8C56B8BE56534E9C56FCB2B7006426DFE93D728FA4CF
+94F131C549814E54ECE7C914C5FE8E4961D3437CE7475D03534B62650F551D97
+201C794AA877445DBEB11C85ADF6119B05360700F8CEDE4766E3A1D7A35CDDC7
+9ABF7C619E3868A39D1852DBE1EEAF5D7898C78323873AC005542B68C43C5000
+CC58F675EB595F87C879694751494676465891E8A897158B481F11A171CCBBD7
+29603F00210CFD7FF31FE3D273933ECC34AFBCC4108D9B76D9ECE63EA06CF939
+4799092A54A749DACB82C1424E9879672C8BC084C360014C9C1B6D5D65C68AED
+66CE329C3AD712C0A36BE7EF03FDF339CAA2E0336D387A693B1DFAB5D5164E31
+14755A158168962C9B399F8F1DF3FF5060D7464D5071058C30C572A2BC7DEE53
+84BD7614A4BEC4C84E18CF7EC81C811724463BD46CECA5FB57B0F55EAE20CC74
+6AD815D1897B037C197D2456797B992C20C70B663BF99FE28C513B4E221C8E12
+49779F8C0AE8517048ADDF7CDF0D698E3EFE60071C4997B7F5EF12B6CB65390C
+224F13FBB99FFC034C0710F05019899689B6D3350BBA65C7CE7C2AB03D81B9A5
+5F3D65E4D462DAB189006669F7390A78A1B8908A4C913B15DB8827DFF15BB9A4
+A6037DDB643103B937257A7DAB025F09D53FBBC2BCB6B0BCD8D56B2B2784E498
+1F6CF8470DCC892AD0CFE11578718948BABF9C1427084643B66BB9181094E29D
+5FBE37708E1D8A6B7518A96876844CB66954227A7A6AF28DD075A462526DD5D6
+40EECC56FA366106E55C7068997B54B7F0D03AC1AD45D28C67C7ECA99DBEDB1C
+E18A79C353113E2E05B837E703278B202112B1C69E42A69D64B62F0E7D8F7E5B
+C1F93F0F99EC20EF312046F4B0CD7DAB31E422070B629A7FA96583CF3F1519CD
+CF08806F40ACD7BB5C960F21E9DA7FB3C72CBA0801ADE83DF738A4EC94F2977D
+2B95A166BA4AE28CAD1E37FBBF49D342CDB4DF615E2C5F3076313AC517C350DE
+710F5D52DE31DF69864D29DABF14234DF13904BA4333B0D714EEA55CDD79DE45
+FF5D64259C877191547076B1C7684CD252C0337BD9DF66CDC5DBAA4F3102F2E8
+FE48385C55727B80D11F3BE0B7568AA9356FB2B180A6B1392D620DED02F0B736
+5F4399FB9D32DFBC8ED942AD311C82250DA8BFE98D65
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -2341,53 +4110,235 @@ BC0DAE9DE3A6453B181808E68A89E0C02DAC6264D002B422EBC1CF14F65D9888
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
+{restore}if
%%EndFont
%%BeginFont: CMSY10
-%!PS-AdobeFont-1.1: CMSY10 1.0
-%%CreationDate: 1991 Aug 15 07:20:57
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+%!PS-AdobeFont-1.0: CMSY10 003.002
+%%Title: CMSY10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMSY10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMSY10 known{/CMSY10 findfont dup/UniqueID known{dup
+/UniqueID get 5096651 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMSY10 def
+/FontBBox {-29 -960 1116 775 }readonly def
+/UniqueID 5096651 def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMSY10.) readonly def
/FullName (CMSY10) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
-/ItalicAngle -14.035 def
+/ItalicAngle -14.04 def
/isFixedPitch false def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
end readonly def
-/FontName /CMSY10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 13 /circlecopyrt put
readonly def
-/FontBBox{-29 -960 1116 775}readonly def
currentdict end
currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052F09F9C8ADE9D907C058B87E9B6964
-7D53359E51216774A4EAA1E2B58EC3176BD1184A633B951372B4198D4E8C5EF4
-A213ACB58AA0A658908035BF2ED8531779838A960DFE2B27EA49C37156989C85
-E21B3ABF72E39A89232CD9F4237FC80C9E64E8425AA3BEF7DED60B122A52922A
-221A37D9A807DD01161779DDE7D31FF2B87F97C73D63EECDDA4C49501773468A
-27D1663E0B62F461F6E40A5D6676D1D12B51E641C1D4E8E2771864FC104F8CBF
-5B78EC1D88228725F1C453A678F58A7E1B7BD7CA700717D288EB8DA1F57C4F09
-0ABF1D42C5DDD0C384C7E22F8F8047BE1D4C1CC8E33368FB1AC82B4E96146730
-DE3302B2E6B819CB6AE455B1AF3187FFE8071AA57EF8A6616B9CB7941D44EC7A
-71A7BB3DF755178D7D2E4BB69859EFA4BBC30BD6BB1531133FD4D9438FF99F09
-4ECC068A324D75B5F696B8688EEB2F17E5ED34CCD6D047A4E3806D000C199D7C
-515DB70A8D4F6146FE068DC1E5DE8BC5703711DA090312BA3FC00A08C453C609
-C627A8BFEF75B4DEFAF34B44B356A516B765AFCDD3F5475B1F928731D09D2170
-B97E40F12CCEDF4F6BB3756C4734F6E98D74B7E942A954B1BAAB83D4AD727FF6
-DF6DC50B2223BCB5568A73A112E4860AD490554E64E780073FF3399CB4688D33
-9E8829667CD6EAEF25E0C7D2D44F2BBFA40E999325F9561514844221B50BC8FC
-4C7AD68CA7220D69125C2AF06849A3E068D18733276F0C0A6A2936D3C2C87CDE
-59CD1AF148C44F85784A5DAD569F5FF53C061056C067CE29AEF1E3BD1FD8B0B8
-71A0A638CDAC6AEEDBD5337D4683C084BB60B1859E600F59CB4E19C5FC5C6327
-EC544A68134496A9BD0B87D83AF6FDA3CB62FBF0B54FACE1F0E6A2D84B467AFF
-0F62DB
+D9D66F633B846AB284BCF8B0411B772DE5CD06DFE1BE899059C588357426D7A0
+7B684C079A47D271426064AD18CB9750D8A986D1D67C1B2AEEF8CE785CC19C81
+DE96489F740045C5E342F02DA1C9F9F3C167651E646F1A67CF379789E311EF91
+511D0F605B045B279357D6FC8537C233E7AEE6A4FDBE73E75A39EB206D20A6F6
+1021961B748D419EBEEB028B592124E174CA595C108E12725B9875544955CFFD
+028B698EF742BC8C19F979E35B8E99CADDDDC89CC6C59733F2A24BC3AF36AD86
+1319147A4A219ECB92D0D9F6228B51A97C29547000FCC8A581BE543D73F1FED4
+3D08C53693138003C01E1D216B185179E1856E2A05AA6C66AABB68B7E4409021
+91AA9D8E4C5FBBDA55F1BB6BC679EABA06BE9795DB920A6343CE934B04D75DF2
+E0C30B8FD2E475FE0D66D4AA65821864C7DD6AC9939A04094EEA832EAD33DB7A
+11EE8D595FB0E543D0E80D31D584B97879B3C7B4A85CC6358A41342D70AD0B97
+C14123421FE8A7D131FB0D03900B392FDA0ABAFC25E946D2251F150EC595E857
+D17AE424DB76B431366086F377B2A0EEFD3909E3FA35E51886FC318989C1EF20
+B6F5990F1D39C22127F0A47BC8461F3AFDF87D9BDA4B6C1D1CFD7513F1E3C3D3
+93BEF764AA832316343F9FE869A720E4AA87AE76FA87A833BBC5892DE05B867F
+10FA225E233BCFA9BB51F46A6DF22ADCEACC01C3CD1F54C9AEFA25E92EFAC00D
+7E2BA427C25483BA42A199F4D2E43DFCE79A7156F7417ACF78E41FCA91E6C9EF
+B933450D851B73A6AB6AEA7EE4C710CB5C14270D1674FA334686653793FCB31B
+491E870D3C2BC654D2C1DE463EC9BA29D7371AA1078800EF93D3F66263A2EBBB
+F5723697BF7448BD0D2E301544BECF497FD475B85DFEF52AF4F8F8BE445CABE6
+019318806D10C5952157FF8F8286C1EE701545C8F60EFA854EAE66835A2046A6
+915D395F1E0366EFE0C0391583FE001FF16D82A2E2DA5F57754A2C6F69306E36
+356ECF8EFC3F1188AD6FCD2427E0580C97A5B69B4E0E09B85EEDE142F5ADD2F0
+5DE51D6DB72B127412A0D57106C19CA493048A4F815129ABE767D51715B1515D
+9C21067CB5BC88741B7298C83EAE36A866DFA87D8981F179B1C31292F56BBB64
+3C430779468AAF07C8A8B4934E1E775FE3F35186BD1FA6EE3689C1C750678AF1
+FBF9B23195A124C5C991FE670AC0C86FD39D2B07B9A319E74EFD498B45820252
+720ECDF7294F7B0B137CEB86D33BFCEB8606985A3260FD669E461C8BE94216C5
+D434FD8854F44EE66E5A289A9F9E32BC36AF645D53F96652602BAED418C8D726
+BD04A1B4617551FE4DEF54083D414F7DCE004E6BB2DC9C2EF7CE232B254BA2C5
+7DCBD36C2072ED46FF711F121A701E2284BF1B718B3164382B8F453D68FA0377
+DFE106503B8401D4DB87F5402A3AC9A442FA060B0610A9524D530C7157C26B56
+AC970FCC1D5655FFFFA39246E6420CF97D08ADFB7B05822679BD40C638DDF0E7
+A97BFE8918B611A145AC965C203F1428812F9D340AF499B3A915B22BE798594E
+0F520109FC81E452180AE45B170FF999C5FC2761C6CECD8742A5A6FC97F16743
+AD4EFCC6572A6D3F3E4E330C5CB2FF6FEA48A5B64DD3DBE943BD9918D4A18E18
+CBCF598AEFBB6AB3CD2CBC9BFD6099272F6543F3E532E0E21E614BD2880B1023
+0AC234CB705827BF016DB84E00E8C255FDEFA0101A842929540B7B4AA8A089BD
+5EFF05B72356B6BC3727817823B5CDBB1B963103000D7F2A4E2A1472FC3E614B
+5CBCB6D6D784023173DEFEBFA8F9ED87EC1A0A9EE98CA59CFC964CF943DC683F
+E9E00DA718C4425A705A69D99988EC6F152525C790912C2E46A2381A569424AB
+54DF4798BC2D7E7A361E7991641D4B756CE2A7FF4A2848927092C59C2C4B8809
+E13AB84FB6B111E680D7FB9F2FFC2C5C66B0B501E4447C2E46C10E2F6124476F
+A140C404CFE2DC9E0199BF61E035CEB481D438139A9630934E541D261FFD2906
+4CAD99E20655FA746AFB81EDBB5601F5FD6B1D6832A01D585E2C55053F6A7378
+4DAACCAC7608DBDADAAE732D66B3E7F87E79756337C1A961E53A4651BE7C77F4
+038B89C87F650C54A2A90EB7F1D525BB353F33318551EE8D84A6A83C718EA5A4
+B2AC0F7306B1E095819B87015A90CA3ED739B09061782C28CDB36BA4BD5E5308
+5CBB70414E4112193DAC4A1FA30996327230D1E021F3CD8115E12D239D93FFDC
+B645910EB29E40D830E7BAF2DB255FD7C4E776557BB38157917D993EAC245837
+A3B515147043574157B8342D829C7228CCEA843ABC89D1785A9672A5923FC4CD
+2F3FF27E6FCACF84E2D3136CA2C0FD3EF1EE7354CD04C38B5FB874553646ED2D
+CEDF7E362EADD04B18051F20A8FB0DE18E152385B9D05F98A3A7EF177824E246
+455ABE69E2F700EB78185CCFC07E3B4C6FA301112528D977367D30D0D5D59EDE
+FAEB706DDC970A9E296236C725B2B55B09B9C336B8E23CBA5FB8692D56F33B03
+16294E5FC7FAA42E96395A57CE51CA8DDD77442F142E2E576B778373FB31C81C
+16840BB422CA827E30A81829648BDF1CA36700EA32AD888D097C1FE0A05B2D9F
+483AEE40269DF09AF0D1AD3DF80C45DDC59C2A03FBB661C79B87853737C6D352
+67626B657321B16198DBD6DB98A092F17878AE4698121E1006E53D6F9B0A3BE2
+3FB68828EF854A0CDBAA68B37ABCA6AD4A3D809AAF0BAB1697A81FE59C98C472
+1E33CD70A75A22C249DD11D76C2575ED3370A25892A16D2FD569CDA70C130770
+93F493C7D47D6F9A5424A7A542BAD726BFC3AB225DCEBBE6AC4BE006F8C7C0EA
+051424B08305BF2D951AB2986AAFEA04E078CA79B399585BFF0F1ADCED02E15B
+8765EB6BF6A8E4D0901EFF2C3AA104924EAD9637A35D877E0C51A3C37DA78CD4
+8643C8CE6DCDDE3F116A6C2390F948E5371BEB5AD2E87B41C5F01FB5C196C436
+6E256A88D082E3F46E4EFFBF605B2EFF1E9D9AD5EE4DDC323A137CD9451EDEE0
+06F7D82898D71FAF2362C0FCF1F726F97F820305B7CE20728CA08C63575083A7
+84BA28B7DE2B916432475510E274C12FFD1660A717F51DACFDF0A102D85224E0
+D6DB607BB72569ABB8A7BC6A10354CBBC01732EFE35B72062DF269CB25EA3DE6
+DC603B04C90C5912D2C38D7A5ACDCDD3F6F116D884F0D8C528F69D5D47BA20DB
+0A9E585C7D8CC3C324FE8A1DF150279F7E8FB43BDB720E624E5E9918032C02CD
+8020636AE5C38DA2484B7F4B34163E0D0A561B43B80E97746DC05C871AB620EC
+C5D47101ECED4A7E25F291184BEF8B80024AA7BB456C1B83A907652B331DEA34
+754226C39C6889EBEEFDAD081E01EF8FE47751987667836FDE4C8BB8A3FD4406
+1E643B4EA37BD370734D1A2DB17C2F4B74B4ED75098B433601F75A88C9A37A05
+CCB157EF6E32023BFA33973F3E655A4D58289136996FCFA61EEABD70791B6523
+1FF5DE71AB8A17038923118A5EED8D59C4C58D246FFA9BB26472346B40C8741F
+153D19CAFF20DD2A86C6DB89154A630FB1761929FC3F0448EE2F089C1C953E02
+905BA8DE75D101A982A611056C4B237596C10951DD98BAB838B742D3CF7DE718
+617DB72E5268583223E37E029D1C8FD3F1D21690151F76B76C52C725CA135CA2
+8666553E863CE188BFC9B99AF56AC2DB5BFEBEB12FB563D00244EB89E478657A
+98AF2E1223C1ABC25A4500E8119B86EB3C26B8A2F3505A3E5610F89B7C34E278
+53FA0A54A7F46D84A35EFEC36AE660A9E3C37EE3864106702DE5AF6C45ABF64B
+888A4A51323138CE77DB935576FE6B4824B6942DF80625098CE1B5B32B234F1D
+052A9D6039697118A9D793793775D8729D8574A2E74D7109C7B7E23BC5E2E87A
+CA8E019203952A4892544E1AD3D4EDD22971611358AB230E9A2ABDF00A288501
+A01B67C42B33F6B78C39562DB50F4663B922D9BE0D8A150311AE44B83C1F129F
+07337323E9A23211EE58E16043E127C6F9574019179F5635648A011266677B56
+B5D0201A4E1470B952A1579B57AB2329CD4C615395023C653F784D36B5EE3672
+10D191F29EA508CE84763CA4CE7C2C5229E38E241255A5CABCD6C7CBAED901A2
+CA53B5E24111921CDDF83578D33D463D70EDACA0E470D8F592303FB6BFD68B4D
+3F3BE2D7C5EC8BBF10C90111A33E205F2649B56E8443F6FAA6C721C66575AE12
+D4C40F1F46CF9E9DA675AB5D5840D938780CD9E4AD6736ECBEB6A4397613586F
+849B51048AC5F9405E03E14540A5E5582F61CDCDB57EDDF95A8C6705F433EE16
+648F098C03DED8A2AD94AE3DE202D629B9422ABB031318D48F2C85F9DBFA17BE
+84708AA3B6C9F81F4508F7A5CB7B6646AB8722ECF817877B77D473F577556DAA
+2BA0ABACFCF5DEA7498C47328E873019A956FBB250FD9D8885D21D368FA70CBD
+2709D2DA44EE7A9869963EAB48789541906DE49FAE785ECE1F18A22C7E7ED204
+9768896B78E9EB7A2BD6EEC1B26083940656ECD689D92942CC8AF05CBF82AED0
+B45A7DF4DD7AA6526FB597322560B9ED3087A65B5EEF1371C328A021411BFE3B
+D9B5088B2F1AAE381FFED52D2D1E02CD0DA78683E3B06171CBE94BE9760005D7
+135893D7CC2DB097F6AC664D9594CF1C650F84DA80D2EDE04802DBA33CE3DAFE
+EB7A37E8AEFA4FDA6252FF21E8673DD98E67124D5DBC7BACF361E57077B71939
+C1D1FB923E4E35C075CD1BCBE0E80DAEA1320D55B43EAB45D9B26C366B278782
+7519FDC482D98839BF0DF2E7C3A56A1C1A3FC0E57A75CA414F6536C1FE8EB7A0
+4ADFEE3BEDA0F53BE8CF5F64230784A797133E8CD46BCCB3BF38BCE38A73CCE2
+9E073ADE792F7128231DDD1F63E6156ADB2609C200837C2E8A2D93D2A7BC9171
+050C709A71E44E32B1B03C92EB5CF1D3BAB1C38E027DC4ED9AED633D98CD7486
+3F773ACF8AE332631CF2ABE6D606607593FE862ADE31803964E3F4DC3CE3A271
+C76BDD95C87CDB3B87BC26FC7A16D567EEC62E6FF0D471B4853DB8A94D4CACF8
+843824F818083F10E88D52FC4253E8203292CB40F1414AE7E51DD7347007C342
+CD70E8E9F2D2A13D71213B841DDEAAB208AD9EA644591C15DEB084165F9DF24B
+B91D3BBEEC2E34E38EF16A0C3F00700A7BDCBBFED2EC0D09601AD6538288DB50
+3478B051B5E16B604A0341FE621A58718D960D699D3FAD284310DCF54EB13175
+19A75A539EE98E804AEA24689D3540F0F12951A3C01FACCE9A7BAF4D0DAFA946
+FF65A4D2A4C39969607272C6886F44E90ABE27CA3A1F12A29D9B32E60E8E34F0
+17C5FE43D0E69A99A922D98909B2BBCD145E59A5E7F5426B3988F73B09A525F6
+8BD4915663C1301323180E760BE81CB874B020FDA3AE63340E4261E4F3E4949B
+CC0966BDC4426190BE9F5D77F76A72AD925662E5FE1CEF9CCAB68F0BD33DA003
+F11EB91AC4502FBD6AE48DA0F9D07C35B96B103E379B8A83A05FE728F1716194
+1F650F75BEBADB2E3810388F3E2DC7B19F1BA9E32925F2FD9F19F4E8701F3E4E
+4069125D7C401144740691E7A460021A47B1E27997FC1DDABEC5BD0EE0B20194
+2D579C7D6727AA124083242BDA46D8E116E2751C5F298851A62B60AEBE82A929
+9B9F2492BA35690D1EFD16215B8EF14E7A3803B93C28FA41D971B05B6AF3B593
+E74AD1E68A5FCE12A86E63B78BFEA87D3949FD164F12277A4688BE96356791CB
+8671C49365608F3EDECC109321AF92B4C29CAF073DA3A7D73E913D0D83FAC5EB
+BD884D4C686056404DAAAD6F82F94F803FA1FB0DD8908D1DF08FB87A8BB83027
+04DE0CBB1C6FEB6B517FBD7CF065120079E608CE41893C2BC96A347826CCDFD5
+C69E161217F2127A59F1A6F22037641613F191F22D5B4CDCBCC2EE5615623404
+ABA7BE6C5FE475481615B2AC1A2412E54688DD21E44CC9AF5F16E634AFCA389C
+4D740B7B51BB141BFAD1080E7C726C1606A28ED492E6BDE9F800EFACD1513909
+84E98CEB6A0B7A2A6F3E1D1DCC3B2552795E0932673E59ECC56DDD37A1D52BA6
+C3F0E905978AB568941A163F4CE3AAB5C5B16F86016EC47BA6F3F7AAAA77C3B6
+09C8C3ABDB6D514A76ECD37C37AA88B5860630B3406B494F7725975596F84777
+D9CF48686EC9C5DBCC1D78513F591C7C10AB9D153B3D41426B7BF668B0D04503
+56BCB686258462C1DC61095724B9F3312316262FD7C1AEC6E54DE7E5A7BD8EFF
+035299B8FD8A4A7B0F51404F4A760F4D8B4C0FB7A32FA4B2383AB6E9C78FDEDB
+FE6A5788D38A6701B123630C2A6D820A684166FBBC83DB17069494FBD411B333
+CB37E2491C5BD035A33867A6D3A3D420CC31ACF43AA07182CAAE67E40EC63663
+B678F71D4C6E0EC3A0AAF904CD3AA66E0DE5E3CDE049E94249B39A1C06E3CE9A
+F974B2484BB2CDA14282B9511E505B3C89F9C802218AE40D1A7541335C5736DD
+CD565D4B9F4CC78F3A393737EDB4FBD0DA299E21CCFEBA5478EEF013F0552A8B
+0BB11FF46CCDB784E8BDCF730A16363E66572049E42C695886EAB42A9AD9094C
+B635DF4B5B9BD9B9AE8455DFA3EEFC77653190F9A8B1E93B7281C2A21EA7DDA9
+33484745BDF7E3DD63C7AC66C286C9A5A698A5E4D7A91710B7FF943FB23609B6
+4B442F83CB795788FAB5E9CF3F75D5487DA26170E4561C7941C910B088C3B86D
+F844B0F340CF82786A3FCF347048463EBD2006281A816627065DDA6CD4D3AC5E
+2024BC96C7D896381BBB567951E7A1F29D4E95351298B000D29E5F3D0448CB5A
+CFDAE1BADE9403B90371C3A07D208948AFA022A69C519434B6813086ADF518D5
+88E0B92072A44BA1B3EBB630A13B7AB90992E85B6D67361C8D96F3E0D826FF37
+17B67E4B1EB7BADFD98D7F4FD17BECE740ADF13C141EBF0A91CB105DABB32FE0
+55086D56A0D358841D15FD349E6B95512E4EDF4C430216FF85C2ABE995E4B40A
+A6044CC8820AD885C07E052B3F91C2E9A1D163BFFD210F7BE95B923E2500DB50
+2075106DB541C267BD450B25B670CE80BCD068D4DBFF2D82634175B61FBD3BC3
+406131F44C7D6F18D375D1F2270829DDF29DC14DBB58A30AC193245D18DE91F8
+AB88AB548D8138605BB5A50073295534E314366E26665AE70482B890E4101D6B
+60E4F3B37ABCA1346DAAE8FDB8DD9C832EFF3E73BA470E2BACE7B8515CB43388
+C27AF99FF9322175CF8D4947E6B3846AFF5163E972156847F58A66660EC8A3A6
+5FB47C9F637B4CBB4C73B6A080B0CF6FD1E9665E92032540570FFCC747C67C50
+822811AADC404BC7ECD1673E8AA6C3A2F1D82F39430B58C29145E2F1B679C46E
+94EDC711883F1E4EA84117A54757E8895A40401A26E1437B39A2F65CAADD6E02
+D71FA8AF7453668DC613F326A3344F74AD7AC67569AF399385500ABDA5EDD3BA
+343CC5EDD4B558467626850E752B9959FEF1454E53E7A3DCBC2255AD8F6AB4FE
+894455118A61C58840CB68A925ACCAD75CEACE863D806916228F0614191A1CD5
+DC9BAE256018615AA3725834519449B0A88B4F396654E74099C007930ADB1327
+DD119BF799FE3B0B223E1EDA04FE2DA7A1C879143E1C33B6C6344F4BA033AD6F
+8E88C33DEF1977796B454BAB2494C930F492A518E8198C708A75FFEF8C49C324
+A718AB59B889DED521229E741FFE53F98EBE88B0405AD523254FD3FA4BBE96DA
+DA1C27C1C979A0DD4E61C3B1F4C4DE01E42F1C4435EECFC02D97994BC8AF5270
+E7CB1458D76ED0229C5FFB4A23B8716018F9050970895D51722CDE8F2EA3D947
+DFF374D84915D5C5D16463A6FFCD079D1ED416C4347BF831FF0C4ADFB61295DC
+4D5785BB0852BF472CFC97EC174491CAF961AB90629F055E75DAA6D9898E8653
+5BCF379816CAE46FEA62E7BE8E9B953466E51828172C4DBD0E1BBAD1CE28B5B1
+02B3E36403BE80B49A47446A6677FCED438F01D60EB10F478C89528FA337D0D8
+88D3FC123C076507ACDAF783A9A6E24ED73BF24B6E0F11C13E532DE5F70EB02A
+60651FC2E263002D3986B7B20CC2AA08330B9FC2E26765CD52266969A86EE30E
+71E0B41B6C1C6DA423D3A7E1553D2FAF26EF40DC183099322D362E4965695C52
+9FC3E5BD7ABD743CDCB717DB10372A722A39CE53FABB454EADE2179C4CBFC016
+A8E893C28EF549CA1692C8D8ADFC471DCCDE266FB4E97A1F3035801F3F034D44
+AE6ADA0192657E8078A1D27420093FEBA111333314658021B90DA4E7A8D4B829
+F1795501020D5FF0AD25584C1D47BE08ED6CE96278050BA67680A3B973613647
+A93FAEC756FC253B3693FA2D6491B276EF45751EFB306961788E7C15297A5822
+AFC5A2DABD0DBBFF0BE135267EA6B9D1B4E4760ED14895FFE1F8C3F564830001
+EFA901B8442BD2D98561BAB9A0FD939E0F856E4D2EB04A9A4496704109B8A84C
+EA06AB0999427B3B1BE776004AE906D0F22159C051D88CF573A0255D99B56781
+CF326CD11919AA40B096769CD6D0ADF3ACEC7957621084ACF21AF1F265416628
+86B67FCBDE9370D4F5C6F5CC67EBB0A2727E074090DBCA459AFA1A4778AED4C9
+AE5400775223E684BFCB
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -2397,25 +4348,41 @@ EC544A68134496A9BD0B87D83AF6FDA3CB62FBF0B54FACE1F0E6A2D84B467AFF
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
+{restore}if
%%EndFont
%%BeginFont: CMTT10
-%!PS-AdobeFont-1.1: CMTT10 1.00B
-%%CreationDate: 1992 Apr 26 10:42:42
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+%!PS-AdobeFont-1.0: CMTT10 003.002
+%%Title: CMTT10
+%Version: 003.002
+%%CreationDate: Mon Jul 13 16:17:00 2009
+%%Creator: David M. Jones
+%Copyright: Copyright (c) 1997, 2009 American Mathematical Society
+%Copyright: (<http://www.ams.org>), with Reserved Font Name CMTT10.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+% This license is in the accompanying file OFL.txt, and is also
+% available with a FAQ at: http://scripts.sil.org/OFL.
+%%EndComments
+FontDirectory/CMTT10 known{/CMTT10 findfont dup/UniqueID known{dup
+/UniqueID get 5000832 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.00B) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /CMTT10 def
+/FontBBox {-4 -233 537 696 }readonly def
+/UniqueID 5000832 def
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+/version (003.002) readonly def
+/Notice (Copyright \050c\051 1997, 2009 American Mathematical Society \050<http://www.ams.org>\051, with Reserved Font Name CMTT10.) readonly def
/FullName (CMTT10) readonly def
/FamilyName (Computer Modern) readonly def
/Weight (Medium) readonly def
/ItalicAngle 0 def
/isFixedPitch true def
+/UnderlinePosition -100 def
+/UnderlineThickness 50 def
end readonly def
-/FontName /CMTT10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 33 /exclam put
@@ -2426,6 +4393,7 @@ dup 39 /quoteright put
dup 40 /parenleft put
dup 41 /parenright put
dup 42 /asterisk put
+dup 43 /plus put
dup 44 /comma put
dup 45 /hyphen put
dup 46 /period put
@@ -2496,406 +4464,592 @@ dup 123 /braceleft put
dup 125 /braceright put
dup 126 /asciitilde put
readonly def
-/FontBBox{-4 -235 731 800}readonly def
currentdict end
currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
-016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
-9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
-D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
-469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
-2BDBF16FBC7512FAA308A093FE5F00F963068B8232429ED8B7CF6A3D879A2D19
-38DD5C4467F9DD8C5D1A2000B3A6BF2F25629BAEC199AE8BD4BA6ED9BBF7DABF
-D0E153BAB1C17900D4FCE209622ACD19E7C74C2807D0397357ED07AB460D5204
-EB3A45B7AC4D106B7303AD8348853032A745F417943F9B4FED652B835AA49727
-A8B4117AFF1D4BCE831EB510B6851796D0BE6982B76620CB3CE0C22CACDD4593
-F244C14EEC0E5A7C4AC42392F81C01BC4257FE12AF33F4BFEA9108FF11CF9714
-4DD6EC70A2C4C1E4F328A1EB25E43525FB1E16C07E28CC359DF61F426B7D41EA
-6A0C84DD63275395A503AAE908E1C82D389FD12A21E86999799E7F24A994472E
-A10EAE77096709BE0D11AAD24A30D96E15A51D720AFB3B10D2E0AC8DC1A1204B
-E8725E00D7E3A96F9978BC19377034D93D080C4391E579C34FF9FC2379CB119F
-1E5BBEA91AE20F343C6420BE1E2BD0636B04FCCC0BEE0DC2D56D66F06DB22438
-452822CBEAF03EE9EAA8398F276EC0D92A7FB978C17805DB2F4A7DFBA56FD6AF
-8670EB364F01DE8FCAFBAF657D68C3A03112915736CEABAA8BA5C0AC25288369
-5D49BD891FABEFE8699A0AE3ED85B48ACB22229E15623399C93DE7D935734ADA
-DA7A1462C111D44AD53EA35B57E5D0B5FC0B481820E43222DB8EFCD5D30E15F9
-BA304FA879392EE0BCC0E1A61E74B3A1FC3A3D170218D7244580C7AA0DC65D19
-741FA5FE6F8CBF60250ACC27454BBF0897CA4B909C83A56672958752ED4B5E79
-E18660764F155E86F09EFA9F7685F2F5027EC85A775287B30E2069DE4E4D5712
-E7D033481A53A2702BA7542C71062173039030CF28D8B9C63B5596A9B42B33E7
-D922944A38713383D3648A4AF160A3B0C8F3379BA4372BE2E7EA49AABA75AEEE
-C5DDE1D8BF68483C3D21271280ABB91D54CC819680322EAB72E1250A760BC8DA
-726405EFE420635B5B7F0B48752C06083E92BDE06401C42A2C528C8A60381227
-CEBEF0C9440DC034DAD9C19FB27A350233112B0A339366B7373CE058456E0E1F
-139936F6CC9B50441C2F5994977426AD7DC8C717E737F8C201EA55AD94908336
-FFE9568C0E6EF3202D8CD7B7A6CC203EC601F9A7E2A4395ABA3406503DECAC56
-B03219CEBD0E465EA0F635F26D984F5942E4FB186AB874F3E74CC2F2E378BD83
-57CD1B63C9DE9963587B7457D56024D95645ADE0D95DEA748A6ECC6809C2A7E8
-6A568F83BFB184B31349A771DD72ED3FFE8D16E3138EC49EC6D7524E611331C6
-DB2E16059C9A12512C7208E3B30F04273E20BAF41EF8C96BA4B17F31572BDD15
-3FB7D15CE31684D721083208D7698A31D07160927C9A7CF8B7EBE81A83C0BD46
-9CA06245FDA37F0F2DF7948A20D121660A73E079F4ABDD8F90367BDBBA323957
-062438FF3B28A3880380CDC76A055096D30FABA4AECAF238ABC2513F089A6C4D
-67EA0050A34F5DBE5FE32D9E75E67F4C87AD8115DBFC00124DB4D3F4CB62CA02
-59BFE46E90DE9ED306D6CDC51005C233BD39F41B264E2892AD23E8F93C8C61A0
-B5C5CC1021411DAB515039DCAC06E1FAEFA259E6AB07135CBB345E90E2BD64AE
-37B9A46934BEB383D3AB1787A2656FCCEA6467ECC2582807E7DED181C53829A7
-1818C3FB17567D81D1A833E0559798D06163781D7895C31B1D81CC439AD51CA0
-5E33E96253064B684F3261EF86AA8452B32E9C5907153BBD692BF8BD4AC45E3D
-7161488C716CEFAA695877B03781F64840D49C9C1BCE9D5E759BF1812712F2EE
-054A34F2153AD6C953E795B6F40AFAB115C5FCDD1864A85C1AEF5DAF40337068
-08730BA7AC580213881F8AF1F76FC830EC76BE4CE6E090A1F91618595AB6D1FB
-A885D04A4E73C9C7A923D813275810DD2B2A3AB4FAE4BDA24FC170A4BCF46E05
-572529A19B09E5ADEAADD071EAC20C5DA884C7D414F5AC5206E87E53989B7378
-BADCEEC6FCDD4B4EA03EA994FDF6A80A2E232B1A007B7554471FC1DA24901896
-9CA84283A02FA1D9176026BC1529147F19D07521A4997B70258FFC03821EED0C
-D44BC9C2E67C3CD9971954C58BF1775D61115B75E26AFCC3B7CE6E5ECB8CCDFB
-640DE440334737D63F539385F83BBF603B631AB2F750DBAE707F5D008591A05E
-9D532C165FA35B580D690138463047F77F10FD4FDC8F724367545C0F5B6AF978
-B6AFA49624EC2AEBCB2D19E9652CC920EEE40ACB479E99C7B615DD7300225276
-D45A24AA2A607E5C90C1835AA562597FBBD42465DB1AF4867E8A1A750F1E462E
-D2615B3A9E2AE194DB25B21527307997F12B45F442817D221773CF53AB0063A0
-4B188C90FC3C03EE095014485F988D8663C0EC7E1C7B99FA1CC791DD44C7CECA
-600806FE76707EB7D9355A1CF21C4325E2C83651A6FD8399C79CEE9816A4BB2F
-FC454A4A800E96D4E964627ECB39A108D418DAA5B57E6C0A3F191BE83A4B4BC7
-48A4B83F4EA66B0E2F6AF0F99FBBC9BD5A53B06967B36222AC42F2F25664E39D
-5BBB794C37EEF11E43949250AF8F207CAF47DC0E02E93F9B41C9C11BBD7146C0
-C8994D6927D054BBE65A85AB565027CC9581619D26BF75C397AA56BE2A8DE89C
-7A0E4B8E05D6A74092C5625E59BA23F65F1404A17A9DC4843A08B58234AD7592
-7BD68D345385E2B005F2B983FFCEDCE78417C904E181F3B6CF8E5CF236F23611
-D9CBE545AA643C7D1B28EBFBD2E1171057A3C8FDB9D7DABF20558C7ADE8A6B3A
-FF9878B26EDA16B0F9DA421281F849A44C76D117F4AB566FE241B0A6CCAFE2BB
-9A6436322D1CC54CFB602C0466B70565F9A7F9370BDB1C70F0C33E529CC280F2
-3C8E23EB2C0D25829496B005E711F5BA8E4680EB3CDF115E4D0F89C4B5DE8842
-12CC80649077D5B844B61BF557D316A59513F58FECE657F2A7EF3B0D320E4C33
-B4877334EFC38A29352B0240EE736EDF805C434ACAA59F32204DE64B85CF3D65
-24F0AEACE2F703252AC9A3FCB2F628928CFAA788221C41B6AC639655E39188D7
-A8118CE6697A20F3FBDA3564355DA3DE10EDDDD22BFF4690630E99A77C663AF1
-5D38A0827E81D805507A1260ABA8374501A2CB4F07E2354B2DB7E77921B6DC57
-926415E85A35379E6A0016993926231AB1DE35178E16839574A97E50DE7C1179
-0946A61E65BE962E7AB2A584F8972A2E3CF319EE4C59B82DFF6CBFDCEE8004C6
-1B7BCD417103A82B34665045DAD49A228E9A3F63F1194B952B67F89C32E68814
-705CA69F88EDEF44916D40C22C16F58BEA7A0082D4A579B7562319750BB14BEF
-0CFB256E9EA333F3AEBEDA8665E67809576D7F1892260E43C764963B70FEEBA4
-1EBAA29B62BC37AFC35AA6BF57E504ED00650B4EC61A82B6A26EE97D71FDA25E
-1358E3BDE969F1B4D04009D55D1B19DB3C8BD1671280394A19D90893347C92D0
-E4D5EABBC0E5ECB168D32491C0CBA1379E12F1E6E160290115C60706AE8C3355
-A88DDB64EC5CC2FA7539E37CCF6941F66C3275273D38DE8C370034D89BB92D1A
-B965CEE8D92E4BC4A2733E61B8C766EE4E8C5F5670DDA0CFBD8D2C76B1F9F174
-23B97C475C8B9CA7EF89A2BE521F8BC3B8C8B3AF782AF6B1EB86EEE7A64C4314
-F1E2801D117BF864C72F04BFBBA8D47535772CFBE2EE0F14D699AA33FA7D3EA2
-8AD0718637E0C3027DA0B4EA7F3CB852811E620836A18C70283DC59D90F28CD1
-C6A8668A33304BA0B01C7AEAAC07DF77EF7D21A60CED0347A0C763572CC62DB8
-6F471ECC67B78D065762D99B540F2B45BDE96D18DD1F21B52EF54C3FA1F59C08
-E919E78EFF5EA634394A90131E66165B2F5657D4650B7B716CEC85F70EF33260
-72789B321F587D277D458B6EED9010B8C29B8FD82BEB1990A0C7EAF5A763FDF0
-F3AF986BDBCB86834412CA0929D98AB3FF21D401E9A6E816587F4F98BBBF78A5
-95DFE08D14A7B4B922A49AF62B6F1852F01A593975A06878D34A3925F1650CFF
-A8232E51F57565371E0D28303F6240D95D3D948C0A2E27DC60EC9159502709E0
-CEAFE520F27409FE135DE680EB730F3F558F36079EB4189E4750B46154AC9B70
-13CA2182E44A20F4CFD8FB7F8E2FB368233040997C0E5659DE1E0619EF05CBDC
-1D2363243BD573BA0A80BCADA2DEEFAE08A83CFADEBEE198C34F76ABE83FA5C2
-F05C1B86A1E1171071975C56CB4C7C0EA35D8449F6D2948F38DE52E67E136311
-51D137A1A58C1098336E57B1FC0A17067CD6689206E12E3AFC15E3577C10CC6A
-82D177CB016609881AB665B0B5F6A1A3A9488F3C01E834D91B38DD6BF1B2B044
-837ECA3D07B8B512B4394E28B24B7477D710C8B0CEBB46F703EE77D5E56BEFDD
-1F19BB594C69802B39DB67169EC082340A20EC63382EA62A93310E58C201ED68
-D805355BA00FB8695160EC7CD16F3208E69C32BD6A0A965D0EBF2C8F4D54B096
-A82C5571064EED0F461F5A6A88F1A81A30CC9F9C8FC6CB464EB348261A5483EE
-1CF21254D894FBED7C83867CA3868DD97A273411FF8BC1DE955FA12BCD72C16B
-B5C7F36967FC770FC35C8B8E8C91C2045B1EABCDB0ADFE148E173503195BA1B2
-435323775EC6E37099C6ED935DD7E3737AD6F112D9890019F9B949C6B20185BA
-75E892A5481CC5F8F63E0ED8ADA4E501B451F6E491FB7326539C369A3A0790F0
-2F32ED0E882AF2D05F786E2F65531DCE206DFDFE1A477C71A97CDA763E33F864
-78CF67C33B0FC431BD601225ED92B2B986832A94362A9AB4D49F3FA46A82DC3A
-58EFEE09DE84EC7B7246160B867A8507A6BB985261A20F4EDD2D764429084294
-C185B5EDF9F60C4C15BB718C2732AD751549006A5B359C03C15CC605591700A2
-603B101F6A6D1F9BE767D7BB0C1454BF78274CD777525C2966A4C396A3598838
-D0C417953CC8B46A560DD721B2938E8FE23ED056DDCD5DC371983BBDDFC76DA7
-FD598F62B0433936305BC861EA69A4E32B417AB2E9049ABCC46C4345F9669741
-8A0357D30D35D3EBD33CD11D021F5BEDDEC8E62ABC7F356E1C6FD7E1AE402AB5
-C0D624F0E5CBA67779F2460E2808F3ACB78164D8C1F23058C7F3E364ACA8BB30
-49F58FE6DA46AD4241D62EDC34099D29DBE9CBC13907D51374F757C907AC9D3E
-113B7DBFF94040600E03D24728D49FBC5E5BFEB7F179C27EA0D6CE7197701703
-44B7A2B3ABAE0EED765B9C57E28612316B9B6D56CEBAECC05D478AB41C685641
-D12AE8A5AF427FA4E4C75E0221B0E2271F3A49BE14C3B97E36E80D8A77D45BEC
-C09D87DEB41CC5C1112410901ADA51B2F0852C5FF9CBADB47946B3DED2B6C3BD
-264BAF27319ED478EB6A3146C0E50E186FD80E7858675481F9DF4A4BC5015AE3
-4E05A1BECAD22851660E20507E7D600AB1CE3C1AA48BFC5F050ECF2AE550856E
-4B99C1D665A6A7FA28A9C329073A478EE162499032FB51E4B3D5830EDAF10623
-DD8D478FA68B06420C29F484BB8DE89763AA12B685462B56D6945401BD0AD7ED
-0590DF4EACB677982F261448D1D35C72A1BD8D2FD85393CF57E33AACAB30A809
-B092DF30CA7F7E7B80E423009DE411182E63A73D6D14BD0E47CF571E5440FF1A
-D8AEA199831A918E485EF589A422BB7A4F6A2CF5EAFC028277F28016693DD955
-D0B2B171C1803C7FF2BEBFB96DF72A4256F40CA88A27B7C174826DF26BE0E9F4
-52742FB8ED72D10EBC3378C3D4F75DD787684AAC74055930E53AA52DB9212C27
-514134DABBD2C488B047460AC2E9E3468671A716D790EDCBCA4158B48D590D69
-6852E057D4CA5116BC532420BC32950BA2900C8E641D63951163C34CC89C644C
-54AD91CDC59660B4AAF0700AC478222387F3DC5E249C62E4433D3C6DC997EEF9
-45784FF75384D73CA044F7A6B1ECC5F1202C2C7DBE5DD4ACD5E8D7CF5A057D58
-0BAD218558F76ECC99251B11D2FB92487FD6D7A3AA8F16FBF489A046487C8001
-64A8FD9C2D0373BB751188335332516C2F999BBED75DC6AD90CE3971706180F9
-55D8D457BF68CAE5F0BCF71EDB20B02A5A2EC92CAD3B971E9F5854BC5ACD0B5F
-DE882EB372814DA4E91EFC31FD0DA662AAAA1A69EED664ABB5E418A19A459625
-E12E85E52FCD8ACE314947162767E89D9F150BAB26CF80123938D8CDD901CC42
-BC72035A3A5EC261111A576106798BCE708FCC8EE214F2946813D955535B65C7
-FF875911B2242E7042AB34CC8A722637D8F324C6FDDB25D9DB2FD2C666244F39
-74541C5C716DCB61CAD8423C8B3402D6C6E003200A4883C213E8580734F41451
-18ECB1AF8FF6505FE28D5DB6BC742BFF13C229813196277DD6499B9D0313EA3C
-2F44DD9CDA19E20898D6B74A93FABC51BFDD49B5F4998A273C31468BB89BE757
-BDAE0DA6BD022AAA2F0584C916F7C837F0E0883F6B94823180F9FF55EDE706D1
-21CDCC806D00BA61D4A4AE33029B4F640E9D8226B8BC0670C5E6DF2EB062DE71
-2C57FFDD35CF8502B07A52B52D6D14886A010B5567185B790207D5214ECAFC0A
-0A55803E08C9BA4B8D002C7310D22F256B8232DE47B30A131720AC4870E4B85B
-6F56F74FC851E5709E914E6E46793748CB758DEBF3ADB83DE06EDD7EE36C7A21
-01A5355221898484015CEF9F9EF6F66803DA073C38CB4406BB738F57D1AA4E8B
-6002E213E26A1F3206E8B10B7AF2FB5CDFA840891CD12C816E7EB41D1A7EF62C
-D92D51C085EDA95874333A1ED73F63386D5A9AF817F7E94DC3BC489A36730800
-8DADACACB5CB2749D8E5F8389F93C1B596242C2B9317E26533414367AE8739FB
-3C7097058371BFA929594E972CD18837C892DCDDB4384DD2133622BD0E48B1F4
-3426A7EC61CF550A6CE1BF747B7FD53DDFC95CBC5F50112B97CFEC1406816763
-B2321D3B3A9168FAA4D888BD4CEEF539B4DE1810F77C0201FD5151270D8FA365
-6D58734CDEFB41A6F0F26BCB78F83A189A91B7982F5C16973E407A50BFEE424B
-AF4F1956EB06FD15BDED6C6A10F7CDEE426FDFA4B03D15BFB1CBB5919EF8DCF3
-FD3D7CA45C2DD173060FCC4AD5EAF86B1966A449B2BD255759B16D0BBDC3EB32
-9B0A9C7CA05D6D5232BB0441D182E52895FB7BFAEA92FA1DB585C78A8EAF1DD0
-13AE43CFBB182EA0ABFAD44FF4EFA5D3BFFB53945A7D36AB480645046F8A032B
-12DD38DAE64C6A6B628BEFE7E3A60FE551E7AB07A65F3C57D4BFCE9A8B5BF8AA
-F754FEA7EB86867029836D9EB89E75E154E34814E86036E279DE57BD2DB024F9
-EAE8E0DB7A36D6E01484AE6A42560189A24269CFC2EFFE3FAD0F200411D75591
-52F7FEECAF445BB88C3989B0E095C6C50A74F66221A16D990C5EABE9C2E979C9
-7A71EF59C049DAA808A09955BB8E5D3F5A266F552A9C97FBB969F87348A87CE0
-79BF91312198EC39246CFB3F30EE757AFE025B54C5880A6DCB85F67A36DE92B0
-8791F5955BEEBA9EAA842005D2A1078016D7ABE4E350553A2777E050E769A7EB
-2E91FDB7BA1D89306D0D0CB2089DC7CB2E6E8587E71A96B8DA4DD6281E20C1B1
-5F09FA228F6B99518815C0CD67795991006DF4EC59C62F083F11513434C0B469
-0F899EE4DE7481E18EDD0FD4808F0E29179EDCE6A85A87081F060AB738A0B834
-CDC1F889127395EBC582D8EB68391D779D4F25AD0E38945D53A836733F9B4B6C
-8874506F34DA3F1BE2999FDCF0D830A01CA0511605EBBA9F5002B2F0065ECC89
-9231086688B187E0742C2745CF291313FE6C95B2A8F09F38686B9CD8F15A3BD9
-683139DCA0CB799A8BBD4DEC071D17119B80C1B15D9AA564187F46DB9DC5C885
-05D4CF7593FEED08AE35852F6F233B8A3888E1029F5F60E39891A7CA92196429
-645CC8545C24A0EF4B71F86266F1C03D578D66662C560B54F219052433C99E20
-C7476D5BB198568B6282908A6B972589FD9DF13B291FAA6BF80AA07EBAE0DADB
-2A5C290163EE73C4F159DB4465797447517183D3016560167789B3FB8DDF3680
-0AD0D46B59B05BD0F8E291A970F856C9797AFE19FE207F124D65A987E6BAA0C3
-9824D499C3A9E0EBFCED03B7E8AC0EEB7EC4B26487A864E8514F91A4B993BF0A
-D2DBAE348926515E92CAAB6950B867701101DA64B59DA1246441399AD08E8926
-D49440109403612C41427CB4C3450CA80EB07D8674AD84F7899AB32A18C3351A
-1645ADBCE41C2B7BF5CFB9376F38F865FB980B94C042AF0D1D8476FC567E7114
-CB300784A257F39D85CC8EA614EA0C48AD378BF4DF1A2767E6842234389AB724
-60AB73BC51F84542B59A5DB53B664D181AC5A1A5CFF2F3971CD910F5E5A5CD38
-D09CEC52616232E8E20C4255EBCAAEF1F9192F10EBFB34AB54C8D5B8D36B579A
-5421CBAE787A0655FFACF05AD8E8E8F689B36064F058BBB26D0E6454C703B39C
-F795FECBA78C88842B44842049E90883A88039633D876ABFE54202F35BD9F9D3
-70A3E0C31AA08CF8A8966D1FCADCB91EBC5FDC24ECC9CAB104828A931F338C4E
-AE87AE252D0F3403E14600B4FA5CD4CEE37DF8C7A901444F70E3EEBB2C4137C6
-9E3EC4FB00D1313C6EC1C2BC5380F3434CF5F2635D424DA21E6316EA75FBA5CF
-7EC2CE9631201BEDF7D7982D476ACCABBC5A452B0C1C76A00B1B6AD23001C1A3
-C494E6B82B98EED261F19255CAB52A09448FDE4E523E89F2B2773863EFDBF526
-F6415FD6DF91BCFC3D93E95EBC6A53D3AB8EED7563939DFD84BF364798E656AE
-FF4D41430D9FCE65BD2F85125E5E42C1193D0235108E6312C7B97C1FEB7FCD6A
-3D79F70BE07093FDE9DC099B282F3B7F2A41C67FE72E86EC7818DD66BCE93E46
-DD9AEB93A25FB47AC96DEEAFD80BBC7114DA109FCAE205B1D08A3AD8641A400F
-F2B471D677402C2B3890EA01F971C511FB4DF6F5AF9C68FA87E44977072A29CD
-4257AB3F7EC5B6804C20D4B127F02832FDD5666AC4FDD2C0005649CC6E4F914A
-9196BE5AC7D85D4767796CB01542EFDFBFD1E51C9C415371E4A5F3D68BE2536F
-F8EDBAE2521FCFC34A4274497638D4B9B39C14CD6E31C95F32A2CDC9F78917F7
-0C004ABA38A32EFF4DA64623A454C9755A43047355D0F187A779275B00FE5764
-30E1208D1E12CF6D908D84758F236BA6185333B56AFCB2C1B4677A7B6642D4FE
-E229F34ECAC2C9DE021B051C5E7D6DECF456D161EF9E3888C38E7F477CDEFC01
-97920D696B2722340A5951953B2BDDF103C6D0C690CD04445F241CD531C81838
-ECA1A02C4ED91032106D142AA4B899ACBB21177D905B42D04A280C0B61A0F8CD
-B510DFC46E922E8FEFFF31EE58AC1BE7AF1C70D2BF11727FF8C66D628695067E
-E6EABBA97AA5A75F955FD9E9A1B21E71A8078418766FC4AF8431B4E7C674A6F8
-4E82447B81F15D6703074BE8A13BF13399722CA91E136A552E9764333F41FD8E
-2DABA04817F8DE361C2E7BC23E9A963DECE999A6CBBEC7DE08652A8888AA1137
-EE0A0E4032A4B400C9A2488A55D8E25166A8E9805CC80E7D6C2D1E7C071C2E9B
-F2E652536A4591576D99BF1DD118244BA09A8255CEBBD18FEE5C0175D4177524
-9309626DE05FF0144BE9F2EB05FB51CE924EDC4A5C6376C758A7138BEFAF9BAD
-C89BC9834A8DF3790256119864AE0652E92FDAAE5A132557910C307C8C0C3FDE
-EE3E0C17D32CB28B6A21B8DC6ED6525F8D25EE0270704828DB9006F514EFB75D
-0671DD3B138DCFB01156B43D5B775B78AA95CF109628F5FC501927741031E60A
-D46466203CFA84D9A8EF065C43101E8FE1BA60E82E01A9CA67D7329B93A11260
-4CE84119FA0CD0E41EA3B645CA3F06059E7895526876F7C2110264C84B7681ED
-0784F82E6A160B7D3A6C520E430452B18DE47224A861D1CD872433844D7BEC16
-514AA67319F17771D796C88C2A928514D4907A1E58FBC561EE444292AB0A4759
-F809BE67A4EA7F152BA841FF3C838B9725F8F89C5EF28802C586A542131F9B93
-DF668AF74A34287FD1914BCCC8B3D2C698A8109D21BFAF245274BA33AA71D9C8
-531695BB46EA91917C40FF37F46A2A69D0AD619CF7EAE936FA1EF33CB85FFF35
-A9E78CEA2C74AC6148E612E880A58DD4FE573D6A10A0EEECA7E5DFC219E89E0D
-90843757F05759785D04F6F3E7DA269888170A90488097B5A3DD1B61CF3B618D
-05C68B2940DE15065AF933A83BB9145629BB3759B49F7C86D70E5282B52D3CC0
-331FE4C8208DA7005C2E44E683E24FD0188655DA87D01C8313FB35AC1EE14448
-B1681BD5ED81F7CA640248552B7A3EFB65ACA6DC132D09BE6B608E439A9DD0AB
-ADF752BAA226A75986D226714DA5F1AD47B8BEAC12E7E32A0992CDC54CC054B5
-4287D8531E25C390CD8293776D82149E60597DAE8B2E6D332D04AD39A8786E38
-6045D1417B3E88BE4467A0BBB146C04632E5C0B7693B0BFA5512101462605402
-E089EEAEBA41666BA74FC026C200A6DCDC7781DD9A3D184C71CABDCF53CDDDBB
-84A4926F982FA96E3A14FC3ECDAD8D9C1851CADE2BB68F88E736B4F6231366E2
-D31364FF60950EE333B36A0F02A35A355B4271C4A6B067C979E440BFF3FC69FB
-CE0998138FBE60ACB07A24261DC334C900BB422328D3EEB99B8D01FBEED832D0
-2D44948433DE5A22F0701447E03E7E6280273B87BC477C8C90AABA2883C2155E
-F130A10ABB57C94E43AEE5D9D65DA7D816C3289A2FC470215F4F9C42699E52E4
-D3FAD53FE861435C255B887D7AA50176BD2E93418BD0D53BB0F86D267207282C
-41E2AD75BF872A2FA4C39A9DF160244E592FD344BDB3BA471DD7A8EF658605D5
-51223D007026DB71F97D9AC1AB7955015C9A4C4317E9F9E219B77E2C46F97741
-78ADE503EFEAD4243473D329B84C60BB96ED07D171C49D2801762C40EA7BD7C3
-B216A1401727CB6E7E7233B23CFCDE2C3D62462FF15AB69568A0BAA15E10FC2C
-C33EC5E22A4FFE258E73B59D28BE7AC90A9DE63D329353B165087D8B58194815
-9BD0A3A335E7DAC0C49B880C7D85A242D5D562F2AB1087E1A46DD94F895B074B
-F632CC49C3765B417D6CA0DC7A355C672EA4F91DFB751B468FED48090BEB0232
-0959CE3E6E40C197DF33C03DE81999F0435D46E6225EAD2226438A0E19458BE5
-579699FBEA9BE41F3D997DC4CFF1C7591289617BC2F2AA7B3A895F025E2137EF
-B9FA6565C04E516228C59DE70340C275670404E519409BC8BAA33B2802992DA3
-A721FE0B5717181621A0161811DEAB802897A06B807B2035297A7A419D3D0998
-B30D68F6B4D586FF370A0EDED183A45ECF4C517B786A67E15FFE4B6A83CA0C8B
-6F9A740281F668009D1918BB427D1B34C7355EC2D4833778CF284A21A753EEED
-664A4F84173CEA11870081F1628850457EB8AD54823C01DF2D15A1CF4B33E0A7
-4B3F3310011E6625CBBBB8E775A650F0E0631F8897988BC2EFEECB8876B48DAB
-156CFD14BBD7BDF14489A025703DACEE33A25C9D9E552FC10EB121BD990A093A
-D9BDB0334A8396E6B58E9C9285F88FB9E4E990E347F532AF0827D9F0970FCC93
-6D17A43BF518CDE57DDDC9FA18381304AC09C7E255F76D26447A1217C70258DE
-6D3078E3128216FFC5EC01A82BE8D3958300065A227F77D236B6067222E8CFD6
-208EE7ED58446D94989279689241038F67A891614078D312E5F90783906578A2
-C818ACE8990471741AD58A7CF126C552AB44027B6AADC2501AFA286B5D65C7A5
-B6463E73BC9E888A0B231351F9A90E5991C4F0E2920107B3D966ECDE01763FFD
-DF9D0635327242732B6AE089A3D7FDE1742A7D74BD0749684602447B490BE0EF
-E01BBA07497B817CF0F73D4D2F14A1B29505311D52ED90F0812EEE440D815B14
-CE44F3BCD5EA5B822073A775C137A59DEED383F80C16CF859D8187335220FB73
-217A045C39B0C3C6661A4D536880DDE06366F403F27DD632BF659435E2411A08
-C30016C471B4206531776F98DCCDF313E62F08E93EEC8FADA4C6B5EB22D5D832
-FBB0DE8BCE851FE3D6D70504242B2E720F74AE49F0DE3CFF787E9CCD3D1502FE
-1622E86CBF9088F3B65E844145C879B2CE74AE24FDE843B657F9B8876DAF23DF
-81F133F5AB4652331126F0ABF1C2CA21127CC1062C06D1C430A12740DE92A00C
-B95A50696164F5AE380C643BBC7E4982881F17BCC8F9A8E3B5E38E6F4E32419B
-19CD0D69F986F5D80B7620E42509FF0A3E4EF0D7826E543D0D8D80F3D3C0A699
-4B5CDD02272D224A0B02CBADB71524EBBA68FB57FE024A54B9DD7A74BB6BA892
-EC5241A5C20D5BDA591AFE863BFD64B63F02C77B74EC2AD5D39589AAE2245F0C
-90AB09FB11A832F0791FB9FD8F892ADAAFB519BD8EE3756E6A5E1FE67735C694
-08E7996275F52F4AFDB24FD73E8F5C1B34296D4F41CF111FF08E88E3AF691122
-F196D4DEC545F68C76A68E4DE57C2CC706D0EB631367F288A4077044979D9E5F
-9EEE710C2130FA491D114A742D3C0EA68D50AA44B88C66EFC1F281AB320F2C8C
-800B1A4A4708B96CCFBC1B4726787096D3018AA87B2DC422E563BC4751D30E2E
-63554771794D0F4F055C20F20ED3CC9E20ADF726A6C5E84D7743B5F0FA99A0EE
-4958B8D53948E195ADDB8B8E4F40E387B36C14806025A5D96DB4F6B9ECAF177A
-1A0492B360759EF671DD4616E25746919511057F40FE14F69E4F4BD67BF11EAE
-E89026AC1DED805FF27846D642EAFC51E37C8E94C6B4141170988E314D8988F2
-00D56A9D1A89D3EAE006C604060B43F328A08DCA73991776A314C20441FAA4FE
-077CA7F6ED2FE421E90E83ECEBBEB42187DB5D3EB5003A27D69DE33C56AFCB9B
-25BAFF5F4F03E8CE5AB1A619B5973FF9FA4F0AC0DD867F7C0682609FFD7F10F3
-B7E6ADF7A62368DDC8E4CA4CEE3DDD15F02281672E41FD6C2FBB00E08EB201D3
-233E7AF3718BB51996C5EAA6B848E1076A825D8C5B0CCA4A2852A6C9352137B7
-D40F18FAFD9085155798496DE75F33E972B040B6197692E3E6D43CBFBE9FE71B
-700B062083A2099E74D90F3E05D60AC091D0EA1B4C17F383ECEF98D6A50B1D91
-A82741FD6D9AFEE053B38B7CE59DD5F2782B5B360CFF78A09DC6C2093FF58127
-CD74355F7FB083746618FF6B61ED1E12E07582FEE7C78195C625BC7E90262C52
-8FC10144B4B6F99303ADDD66CCC93ABB0387E1E61C90CEFFCE16DD8CE4F6B6B4
-4F7ADBB0111456B7C2DAA99C5FF8B04FFA77DBC0D8063796296D8B8700544437
-0897BA71750E947209330045EC9DFAA919E64BCB8F1B56985D15DBA491E8E2EA
-14FC8B31CD552DC96FA440AE98D04954D3E7E5BDA0681FA27F32F9BFD5D4C365
-128BBC8AF47FAE2039F90D0F30D3DCC141B99DDA8151E0DB243E6210A1835CF1
-7154C96DBC2C723A7576580747AA18452EC87ECC2F55F41935C8FEB80A690351
-5D3F3E67970FA93DBBD626A519EFFF4756B33641F56F7D16B7712FD09C726572
-0932166A7BAADA3B47E725D74564A155E0BC1CF8E5BC05F2D4970ADF60BFF161
-01F6E31EF577F8FB7560B2CDF775834A2DEB6B337D096EC2BDF113ACF27E2A79
-6E670C2F1739206DF052D43619D20461E52DFEEFD7A7A7F31690B71EF062EF31
-C9FF3205FDBD1A2A3DEA550BD3B6373C59F4CE5CB845F9C6297FE5641EB90231
-D4F6A2F919164779CD527F1C142AD7E47A63ABC26DACAC5C278EF4AB6B4121CF
-793443E1E171870E95A2ABE098CE0A147CD373660BB20BF4ADADEFF4642FA1C7
-398796EA9FF642270D6176ABF5DFF5BB002C2C01A9C42DC3FBA1453B6632AD67
-A7EAC9074CD11D2CD46675DA0F910CB13BF42A155DFA30FE582D4FB19C6D45B1
-2F3C92947A8A2B26B81CC97421A1F5946C42171675F0A19464758E0D64A9D324
-3E3C45CE9E556FC942572D4508485E9543239F26C084D0D659D5B301928F014D
-D8574A69D9046A2A4FBA6C993341C118E0AA7366CBC7C45EF717D6233B9D3F19
-C46ED705D06962E80383E102896587999E2A9F04F020348A0EE5EE61054810C0
-26C53DFD608E885B6F2F2E2AB9E8FD67E6057D42440102D5CE2AA06982B16A3A
-6A9284F59E13EFD3EA8A5B1679864E055A8783FE74E4B2A28C5B968401836C83
-0B94AD89084B0A31B577E1CCF157851885E41FE7FF0D5D218EAECEE2D2130A32
-2FEDEDEC8B9F9223CA33A47B8CE042DD7BD35B5B24BB9F115F5D5204BCC0857F
-CE329655D72CAE8C8E15F53740727441F8B2855126BBE70F144E989C327173AB
-6996AEDAC678F5BDD16A92C2837C4EFCDCF43804BD2A145DD54170B0941BCE81
-A17771E520388AC4D0E22D6084BAA83F1F4EB1D8B2E0CB84954EDDC8E9B3A616
-ED3A91CEDDB972848E83E3AC3ECE3BA865BEC7C96A4586955682E4680B4C2364
-8054ED58647C18A3CDB8AF5C736C1E5036CB7A09CAEBBC6FA47B698DDF0AC81B
-2407B47FE67EB74B7DDAEC1AA8F0327BB005D4E375150D8FC69444FDB6D7B68C
-39CABE4C7A0FC3CD161843EEFB1A3003F109C7F187781E19CB060054FEFA21D4
-C9778A937812E8F06DD70C56424D57B4441A8D118769587B1E49F090CD179081
-3C33AA3309F3CBC69108104C7F68BA89C8C1D503507DE3A2FD2C81491DB1D511
-9876EB1AD7E66FCCC675DA4BF25F150BD3D0F622AD73C6C805F3DA6B265CBAE1
-83AEDFF42461D63EA338502AE6261988068E1C52E5EFC5BE1D0E017C2AB7FF2F
-B27E42A4A7D8CE86CB6F36F7C218CB880230EA737CC971E8D70825C7520E5E33
-C2110E3E26F51D30B8F058228E5D2C45966D9107725141908E74BBB213339E7D
-7437EECEAEBAC39BAD6A5595EF66E6B4BCE2C565596B0FC5069CFC1CF8B39600
-EF3B2BA9222991BEE9C55D4434AD761684DA2B61EA399A2B53A2D2E89CEFB6B9
-D3606854873444F53CE1A2230E3836B1DD652464551AB8ECB94CDD297C2AC906
-35B980680E12A891D6F39DBB7DCADF853394CF46FECCF0C80D8FD0A82009256B
-22926139A5CF6A06FFE6F4EF6D1843436DA4F3F2ECB504D3C91961DCB8F78ADF
-6A8D05D40225E125F7ACE0530B28BD86BEE2499AA4B62FB53329AEF6D66B1428
-6731C3E6A5AF5926F9D407E9999FCBF9580627F25AAE06DD34BDA8CBA179634C
-8558B9E23E3CDE30053F8763BC64CF595B25E8CDCEBE15915E791E7387A2F979
-20A0EACC18A38055AAF917E6C768981BFD94380D7C33EB04086236ED74FB3B50
-56B9892412BCA67DCDD27CC508CC94AD51F7FEE2D6133BB310293BA9E36DEC27
-E014283EBB9A46DA887CAEC8B98E64F9A4441D254DFB203D7897FEA54E8B6A95
-2F2D00B75E4AB45881DC1361C37AC1031AB89F280929DFB9FA92BCD87E065F50
-7D0FFF1309AD49D259D59AFA825F892EE7FB303DE51AED493436B5B0BADC8941
-D5AF414E47B3D949C5411A47E5872731E797B385AA807D2D6651A78E45A998DC
-21DD8B1F94370ED46CF165915E884537DD1B64489BDE456028592EF0C6041E59
-DC634B564B96B3A5861497DBEA1F6F06EBC125E74C94BB85022343A2BBB7B725
-C2AE27BA791FA69EEFF1B0DD3BC5B80B7CF56B52729BAE6E54810AC9D00C29B9
-C9455F039CB5EDAABA887F8598EB390D5D28AD387F429321A8D5FAF61BD8DCA8
-A25ACC7130C80D9EFEF633D47BA80022AA9CF477EC073D2FC3CBC4D685CBD238
-28E9E89BE648DEA20B1467FCFC4838141BC6ABFC046C5A80C250663637CB356A
-B58080178FCF7B78E552415D071D11625081AF4708E78D843737B7357E638DA9
-501BCEF113EE961C84339E91202E5E2AC57BE8C636141F03A9CE8E97C7C8F374
-6AFA335DCE0B6B68C7D94C1B6D0C73DFF832580B2D1B1193427578DDC1895DC7
-1A9D8B9CE3157FFD118CF111BA33F1FBD445DBEBC1D7CDA5713858CF4CDA224F
-38201BE52F2947D08F028378E787A2837AAFB1EB738EBEF4EBF2B34BCA1F0526
-8295CBC517E30CE49B86F196C26D982FFE650BC2B276583D716D1DCAF24267E7
-A551006687684174D71D920D7C1E2FA12A7C8F6B5CD4E77942D6A96A112070A8
-BCB56BCBEF93A1CE255984B93E92AA8854690A8AE7D416450869534787FDCC5C
-23AAE383E05AA31581E3F2F31531A41F516DFFCCA33BD147F100CE8C11D3D3C4
-CAB8E10DF7425F2FB07B105F60BBCB8F7429201180B4ADBBF92B992038394E5F
-346A7D4B3C12CD9A2A50884D1A465BCC81EDA8D081108DFF1D8BE67BC9C39812
-12B65A712D3ACD7527976CFE1276BEFF410D08043FA52A3EB2C6E363D5E86D24
-3D464A688F9482A7937D9F6F468B2ACAD117378FC99D98238AE59DBC628C2EDD
-04B9D0A1199A8979BDC68D0B820C22E65937CE89170483FDF9C4B3BD8B17DA90
-377561E6D1F40ADC6549A5FD336DB23AB4852E4B696DD1DF77D9C0F70F61335A
-811EC0B0D8D9C3C37CD98A906F5A2B4489C29DF8F47FD4D3E8961458135F6AA6
-77EDB4F176F23CC16D18FEC0B3911F6C75AC0909D42974887641F376E5B3EBE3
-B20B18FF22225F0C21F795D202B5F942547F427617618993AAA2B32A817F6572
-69B1FE76FACD292337F7F1432236C168A0F0D51CC6507CA9D7C8F77C784C50DE
-BD2DB783C82D68EBA9943D389E442D231DDB44F37C185B7957B623E2196CDE38
-7BBE1072868E5D91D6EF1F06BCAC2469686B7155FA86710AF9513641E0F8E260
-464C85B44E51A7C3FB93F99465D4668F996643EB238E3E550610246E00216666
-A49A3FDD0CAA12DAD03A3F6222E97CF41FAD4AC3687CE9311C742E1E7B4988E6
-F6CD130CC8187873CD106317C2217E590710FEE707DA5F2DCA5D913344E2E499
-74D0D0C519DFB8B734EE6CBDA83B09AAD538CCECFB665FF3187EF0F649EFF80C
-4498A585716BCB9EEB79CE45FC74A25D59F9F254C0F1901A655FF43F72BEE91B
-123E2CC86388FAE4E2B00C53B6137C649650D097763816B60ABD8ED1DE810EF4
-F1A080341F88874B09C1B0693653566681BB35553CD0BF07EC5322228555D459
-AC9C0E77D320C0AFB57FAC1525347AE502D6862897B7CBB9C35B7799D18EFF32
-6DE271A2C8D8B7C0929E69477A77F37858ABC14BCE690230AF617BF8AB621689
-D2C9676B355C672EA4FF369617DD0D36845DB212AB7E35FA521F8F2309228F8A
-A8C47A01259D8E4B7AC730D853357689F0654969C4FF6E8CB5331710735672AB
-CFE17A87DC58953C778736AE0CC5DB0D7CFE41AF06EF6DE0CF11B025D85999C1
-AF52A405F3081103D5A219ED332444BAB77D418B6080A7A4A932000009A60745
-AF4239B9E19485FF61A1FF624621718A798C370AE385F6F30CB522ABD981278D
-A771E952399ABFA74DB1E7505ED748DF4A794333C135AEEA368AE4FB80280565
-09BCEBC737FA30D660117415EBF6D883CCE0B9B52562424D2B874B1B70787222
-BD13ED345A6CB186F1B3686561D4E757758DE9E3A0B3287635BDDC69A3A33F27
-5BD1C166309961307C4C3FDA4D8BDE6E08D03B941FDC40105FFF53226742613F
-A43AF882FD2D142187D698B81571374A3EA501F6E6750261D2AF3C737532FA87
-7988FFAFA6A95706BB79E6D01A8114E48DC93BE207CA1037D83881F29591DE1C
-AF9098347780DC77F393469C7012C42D31A1D9CE4AE2FAD4E3948E2A50AAAE30
-292BAFA6F980DFA687FFBF8F72B4A0DA16671AD2CFD65DC351D3FE3AF51D666D
-3E0D56B5DE2A0AF4C432243E37BCA75428F6DDF078ED501F9190D1B13085EE00
-C65067368012314DD1CFC7BC946F626F8C1339A7922FE1FE7A69ECB6DD695FDD
-1D988652EE8707D2909C5D8E0CE9B4998CDD755044450F314D760CE3128CB512
-F852E26DF056F7B5E3A2A54DDAAF6351193DD4BA2923EF40D6388324AA7913A8
-49B4EAB2E6E552DE7829C0CC6FD60C0F9109411B9EDCC8ECE40E96422F0A871A
-8B2EBC60F3D77F9F25802CCEBA7418E8C1B9D9B9D64503F96CAC529082AAE772
-2B0A0A7E
+D9D66F633B846AB284BCF8B0411B772DE5CE3DD325E55798292D7BD972BD75FA
+0E079529AF9C82DF72F64195C9C210DCE34528F540DA1FFD7BEBB9B40787BA93
+51BBFB7CFC5F9152D1E5BB0AD8D016C6CFA4EB41B3C51D091C2D5440E67CFD71
+7C56816B03B901BF4A25A07175380E50A213F877C44778B3C5AADBCC86D6E551
+E6AF364B0BFCAAD22D8D558C5C81A7D425A1629DD5182206742D1D082A12F078
+0FD4F5F6D3129FCFFF1F4A912B0A7DEC8D33A57B5AE0328EF9D57ADDAC543273
+C01924195A181D03F5054A93B71E5065F8D92FE23794DDF2E5ECEBA191DB82B3
+7A69521B0C4D40495B5D9CE7A3AF33D17EE69979B82B715BAD8A5904C5DE0260
+6C15950CCF6E188A0CDF841EB68E5A2F88253E382140F87C87E55C9EA93B8C89
+14A36CDF630D6BE7CD36DBDCE22B21778E8648B97B7EC6742EB5114BDF0454B0
+0EA7B1FE236C84C0E5308C871F67B973892890557AA12E00B2C20C71F516C397
+3F3BBD14A1D0149CA064391056E45E9470FC7F6F556ABC82653B3C8049AB5CF4
+BA83C8F2158C236B2FFD4208846013BAF4165E8BB8D334C8FF2E8D74AF5DAB2F
+D44788869B08399421AAA900ECC6A2D594641C121660D4B5F512938994C18DD0
+FCD9B008F68F0351D21ED735B2740CB1E0C1CCD25EB548C35B844601D98828DB
+556F71D07E081A593FF12DAF83676492A0FFE16E95717A07082B43A966C1EE8F
+8A59E1255E1705C43A23CF29A5E4A6547C93F1680A870EE7BAD8CF74D838CD5E
+F806911D8FE4262ED8E7F5BC58B92C9C6D74F8AD45FBB021EC7E97393018B9DB
+B1B84E7B243ADB05ADD3F1DB3692ADC5D47FEC7DF93080669E63281F1576B673
+125EDF08016664BE73364F65389F7C3B66623AD1754ECBEF9E5CE6948D933787
+A5674279ACB2EBECD3B4E6361419AB32028A27670C9F3E18B746A10B00AF6D77
+4EC00E3BE521C02A99AE5BAA98F793EB1228952BE67934B91472E01AF7B816BC
+56D7F19F631A1927846D800C107B1E9CBFF9D2DD513B4A8CE2E0DFD77B1ED178
+E43FA7052765E9FAF89989D490D8FEF6C536EC0D4AE27A74F474B98DA9E6B92F
+15E063DB260571979A5DE2423920CE1F59F56EB11E00E3BB9D466A8263E1E385
+2014BEFDA8D1EA3EDA04BE32AEE6CD15C5C010A1DF7F705A2C0C18E87C8DCCE9
+05D9163181CBA56C0FAC8C06A2990554C8E759D076B01BBEADE3B5FB8B551390
+6C8E4A2A1C6E7D9C708614626F3770C0AB7DD2027469C77975C27576065862AD
+04E5E50CEBE907E3E991FA0C627302C0E207B4D5992BEBAB5853AD1C0D271728
+C76F40A79392ACCA7358F948AC65DC823CFDA59E1FF69CEBB6B7EC3CF21669E4
+70D999508F9C49E2D9F8818CA53C977D93E15FBBBAF75B1E84F0BA62BCC4BAFA
+4EEC82D804C8A8C0210F3E5E258BB1F6921AF02BA9861BAD5C3D5FC8CEFABA8A
+A607E547B802096F7AEB09FBA99C83C9A494B94408DD607CA6561A6E6660C473
+62CF8D35F31D052F6C6C8138A8E1430CBA7EA6973D6D510C1A06B3FBD79D9364
+240C1A00272DA44B89A9FE8D5BF36DC1B5EBB4A78ADBE9C5EDB485F093D9517D
+69E1AC9A8E6C9D7C324E3797CFEAD9A18E82E03F69B2CED7D5DDCD1A218BF2E2
+ED2293AE999FE2A4B5213A10083EE0407BCF8007670B8C737EAB30311C868D84
+121149ACB4A27F3ED6C0C181C98AAAF51B105F264B5672D7F745131ABAB5BEA4
+0C9B43C0DD9116D6DC61F90BE72018F290D26D5E9D341055CAF09C9F45333CDB
+D45B7954271767F638EEC499F7B53C2CC5774EA7A7F024C4CABFB93D9CB1856A
+0C671A4ECA7C62EA5242648A84E7F3AFB9547A0AFC29593CFCE6D8B873A78157
+D337CABD291431C0A2CE1F37E0CD7340567AC206FF98E4B5A6410F70F750451C
+550EFB54AA259A1B236CA9CB730D2CEF125EC65D959441F7CC9768F777B44844
+CC9842A307C72B740680ACBBF6AA35FA7A94825069BF7696ED81A371A9E5475A
+9D997F2DFAD339AADF797F7E03E654234455AC3D17702A420EE0A597BA31BDE4
+FEB8DBA7C61D311CC90441A620164DC22DC2D373973EF84CC553453AB1B3337F
+7B39983B8DFFB3A9425F119B45C1CD37A76F905777B3154CA6200792F1759D06
+E017890F4041A385F2238E3C48B6C8EE6F5258463FDBFF7AC762F6C4363926D6
+50F004D473B7B7F73CA686B559C2885F1AA761653C727A77D73431E9D110E76A
+2E55C68CD50F43997C9B2FC4710F8C8540909829E215678E63BB8363C4B8AF05
+9986102BB36580D9CA95CD216B7C321822CB41B2E0422CD077F3B55E0246FDB2
+44D5976F67296B5B0BE4B06F6E43535C21164E6C5089C3E9BA2D6B30888C57DE
+49DC8D9D46C0D5EDC47ACF2C03B72DE3B69512508539019B759280BABEA12BC9
+385308A0395C4CD33182A10A5A229743379C2075D82D8BFCE4A66E1AA087A091
+8F5372684FA5037D1B92D50CD9CB4F50AD4F8EE7D51F1C9E63C721CB5B9BD011
+6F0A8DD4FDCD2B008F223A1036D90F0F3B252487DE7898F9AFBB3A9D9CD49E0C
+EF4ADAD5155A98D2125ED5A3D3907F67301649519419F33CD942E8DDEAC1BDA0
+E90C431B198F646766A8FA9F8D1561B57E126EF604838C0C1966655CF31FB7EB
+C8CCC434FC1C96046D38203E1791EC824A3D7AED85C029288D4608CA7668A2BE
+484C99639F121845B22EEFCE0A3B808261921AA042AE19E641769E91277BEC29
+4594082CCB3058F90FAC4A700A8A827ACA00FCF574ABC8EB7DBCECD97F2B22C0
+0AA19E8739B81AF8C6F621D69B8E6F29BAE233FBA655A0AF5BDFD7F5C6B9167C
+6BC7AB693D45EF2AD999F5DA3CEFA39BA48A17EE6D9F2C4DAB91AE3F0044DC3F
+5D5506CE4675AA928B0092D6F173644F91295216D8BBB14CDDE0AD524A4D545C
+1B5E284A3BF0396664081CFB4F186A84A0D24D61E82F4767C1E55A0642720CF3
+909FA1AB8EAB78030B59BEA067DEDBD2F1D0340E790AB2777DB18248521934A8
+BB38A58B7F633DEA4291B0D5D13E9A882C974697CC6D3B49E030C94EA29B5506
+CC29C44D01B4751B453A46A9F6BF3BF135AE87A4CE232AF57B66578310DE41E0
+2A6AC422117F1963C4D7CC306BD25A6E724E51921779F22F029733122E23E2F0
+CB340008813ABB104380C80A492B3FC6D0BB07CB8D8409E9576891EF6E5C9D08
+EB8320DFA31BAFFBD336D0C2BBC3D3B2D30368B9860768FC080D30569C7F7811
+0EBEDA2962476113625EEB555490B8CE4C5F99D74ED10F738C61854CFF8B41C6
+9402E56BE8856144A1A05D0B05F4CB7EF728B2F4F5A439F18C3B68CEFA41E59A
+D8308ADC92EC1289DC84CF48D2CDEFF509A145BF945E1E00D552D329EBD2A7C4
+21D58082CC8FA790E981F4AC8EAB99950678FD3A7DA3DF13778681B208DD71A0
+7C3CBD0664B37C9EDC6B601D79A2C51FB54DAEE849F93209793849104E722D3F
+52DFAF7047EEEDDFE744787A5801E4AC2C3D58EC5DDC15FCEE03990C53B0C57A
+FC54F125A04C8E4A0ADAA725808C587E7DAFB9F784FA2875689979D316DC22BD
+AA36B306A1ABCF907B63C6476737B746099973CAEA8C1E2C5C41F27E0F7DE8D7
+F0D942E34E92F43FE902653D4D2EBB6F3B9F7928B1550A82AF234D45D028F429
+067652BD3D391BF423AE72B9CB1E8D91E898161BE3A7849D456A861A2046711E
+E934DC59442AE7D81661CE8EF727D8D7DDC0270E937E40F896AEAE6171661431
+C1025C53172F9D366834BA0054FBFD84503FBAE328B6FDEA180F8EA35B1DA937
+5CC3B8F00C206908C2FFFFA6A7AC6915D15EA44BDCF29E2BFCFD4A849535F19B
+0D307C696BE8205C7D84B9C77F02EF27D911056EDBB4080E4D3ED72788666CAD
+CD91B0ECE27A177DB23320A7FA9C31408B4D02D2A4B1CC6DDE1A6CAC3D8EC1EC
+2226EC98E51046D1EC26FA20EE62D24747D83CF4941DCE5CCEEC0DBE387149CD
+E05B19FFCAFC0D117F9A3E60DCD4C815228D98EF95EB559AD0ACC0D50FFDF714
+56C3C812EA5ADBB013BBD956A7C4CC0ED7D3E25D5C9AF5E626F18297F75D4957
+F5B0B33379114B903FE98BCF35C3FF76FEE1D9AEB711F2962276531F7380EE3F
+E368720E0292A170A15C5539B1FC7BB954EE2624B504CB8C805B8D31AC38307F
+0513606F09211AE64DAC447693B2A0AD15E9A64C34F5A911ECD0ABCA90E9791D
+67C6BD202B0858EF96E7722305B8AC02B01AB1706CC6AE875A8DDD15EE349046
+EAA65005E7866B506EDFB7A5A2AFD5C9E9DCC821A79EE9C1EA2C7BBA32A40BC7
+CEC26DB1AC473C8C3960ACEC581B37D6569E8C8C42950BAB7930B65E1570E3F8
+9A7FA719F1DCFDA45A3BF2AAB32C9A93BA3552608A61C623DE59BCB346E87EF5
+9CF025A87803161221C5C1C6F6B3403712C76E9D755C7BD68D7F2DC03C14CDF0
+C1BBED1D648B905B4B17037B7263C1EA7A7F06FAAC4E09E08483A8D714C19861
+327CD9C32DDF850302DD6DDE24912D00C22ECDF3CDFB18FA831A41A7488EC203
+F564CFE30D506F0829A96D35A7E09C3DCD107D589B627A15B55C5D6649126BEC
+60B88C55ECCBB4E680265D9EAB4CE22965D3B1AF759B01ACB0D0E6C92B6B4EFD
+A81E6A648708979487FC591CF09631310D46891423F4EC159A73E30D8DD147A4
+B0EACF6D45D18CD16CEB8176F03ABCB41F2234747B9733C8FAF34AE5D43D3BA5
+0CE0FACFC9B087F84FB6C68678BC6E76022B1526D6E5B3A48EC1A110BD75F45F
+1C4DC6D39F254976453F57DF873B7D635C80C42026DE020E5BAFE0DA0D54D1E1
+DC634D2621BA184347E5252F645A6A1DB7657C48124186F0E4C644077457C24D
+55753C651A9A7B6349867641464B515B821349C795A645420508673B93750D0C
+7A3B33EB1F09782033742AE8F3A23FC02284E6C03818FADD1731361542E3FA3E
+75B8D52B668C3E18A4AE967D0FC3157083D952AFB8144D549E69EAAC51C279C5
+E5D88A0D9D53013DFFB4352A1598FF84DCDE6FA32FC377306B9B92C0F96EE149
+8CD55E7B2445B86CCA7A547FA732D52D59025129FD8C6333AC0DF4F0CFF6287E
+F2036D5DBBB3B91B92F12FEBE0B61A313A4DB5A9CF0BB3DDB781A56FEBFFACCB
+8CB9D1D3DBDBC4CB6AAE6769E470582403CB920630221B68BCB625CD4605FA8F
+D3D5B7A1A28D15E44B38E92E906C138E72C15B86F64C38E23BF0440052A8C914
+54397F49DBED99D0AF7CEA3B0A05FF37C2D7EAE1412567E6776333237C31E3C0
+49949EC8BFD6E0F6446CE2D4DCD2C1524A288818CC5D159BF8463A847AE4A2B9
+CC8C58F822804B81B13BF4F2DEB6229C4F51F093075581791D02C36A13B855A0
+34900AA7CD4F1A797652656FE3A8425A38F421C4CC0ACA1CDD44FA6B31219276
+1CDE1CD63D6A58CE705CB56CCA1260F9B86E989019071563A9B4C274A87558CA
+6EF1660D574EDA276801F0057740E2C3B80D253D697736484D892CE1AB128B8A
+DECD69712F5E70E895FBAA927E8194D792A04AB6CE205E04E38A433BBB793FB4
+E8BBC4279D58A223C6673D909D6AFECD246E66A52F4CB35E5931D24C828489BD
+4ECAF621A220D8ECF702BEB01C4FC7510197D3F6D15321EC87175ADBA6434ECD
+2B5A306E91375CAD22CD94301763E4A8B981472890422C5488FCD523C9CB17DC
+ED22FBF12D5F7525D0D6BCFE8CE85B0DFB1D6F989C267FFBA0A996D309E4A934
+3DB54A9D29C88B9D55D7300DA3D46419256C5A07A2A529A8DE8BD1727281F5FE
+97033D861E0531B14E811378EC1AF1CC7EE9BA2B07D935843D3053F673979F8C
+FAFD59D555B56CE338F606747238B22BD62C42BB7238FEA335678D474A643570
+A9E7B4970E8C541CE9DBC7BF70ED7BA33639D6744A18379455029E934C95E2EF
+639C4848CE9A0879B51649FAB023A71782444B451F92A34CB8A124270CCF86D4
+D18EEF5C1D2B2A29012613851C49F50702D63BACF95EE2AB4D72B375E0A62615
+E0991E130A67ECBA9E05329B740708F1CB148724C3A6E5E3AEC1F88EBCA398D2
+1CA8827C977D72734310233176D1AE26C55CF2CEACA62223315C28FCF6305C7E
+A22414D4739A059F552F1F9372CCCA5FED4F9AC987942848EB498900269511F3
+F408CBEA0659B954F5F1B18AE4FB270213646F9B28AE4439D2BA2D3E0AAAA780
+5E530E4EFC8A060EB979E12191044509DA0C14397AFF949E12DC970658D5EAF5
+4EA963F5BC1407A32F3837CA6A24B7F3D60EB8E6222B702E25ED903F9D21AE50
+664A095009BDEAF4B78DAF94E5A55D48366CABF07791A1684B2F54EA69070844
+4F031AF8DF416C2D3679F8BA038B0DC9DD0400CA6B34667BCBBC07E62C1668A8
+35A8C57C9048A7227E672E89681B54D662079A189A9E96A3CA96D8DD10189B04
+1DA49BA2729F1CA585B1BD5C467295285D52E47CA904235A1A3E48EFAE9EB6F6
+01374125CE89D53C276858668CF45D2F092DDCAA52418E0BB94C2B8266B4D88A
+5D911507BB1DDA3D8F6E7C14A91CA11AE799EC42E993098E18CADA70BD2A1D82
+2C39326C6E3F9E84CD9758B9AE43D79BF99E6A0CD713E95B3D9B7DB90D127DE0
+DAFEBF850CAAACBD860B5DEF2082F1ADA64B44B193C4A1417BE221FDCA36456C
+BE5934C8CE3ED55AE3A11697C2D682B7D0F72D48976451D205783BE25DBD2507
+39C14FFB4BB828DFD187104F38A7F11D5F0698C11E8C1D4F107CACE573FDC4B1
+C56FDAE47024D6FD16A2FEABB434CA320300FC4B6C1B6CA08F76C60B7C08A665
+99F404DBA8A2A1EB18EF6750E4EC186E31561A3F080BA6562967546715859481
+7BA782940F5C5D06626D6F6A412CA7C13820EC7C1DF23E15E5829F698CF617BE
+D940523E4EE4ADECEC48C24297DBAD528BA1DCE7AC335A1D15D55415B108EFC8
+6D45030D27B3EA63B2B4CD771DBE66AE0218ABB1153D4B7482289D1313CEF184
+5C960B1E3C3C953912CC6F4521D1E15636C1545EEE457EFB87B88C9E43CC2F38
+6BC4BC96969F4FF28ABB06F4454C01CEF1B6DC538F1E832FC1666D977E5A881B
+F72F1B4C7DD4BE167A5535F1163A0706F9A0B26400178DF8A128FB5EBE6A7B81
+E478AD183EC06622B591337B9F1872AAEA356F4FC67EE767B34CB5A4D90702D9
+39FB846947F4096FB3DCF16EC81455164783BA0B5D723060DAFF411B68307E81
+7BEA1D9A47A5AA3D648E618C83C60F060029E6EC4D46B045FA7415BAB2AD0AA5
+ED9C729C24136F6AF61E6409C0B5CA760B16225641E268A68CFB8260BBEAFC77
+6626EBD97195E77CAB425CFB0096D805D9EE699E41680D095AE9FA10122A7882
+2F00F495C9EB2102DF0D3E61833BC0A2E468C5CF7AB430FDB7C0BE3DF2C0D230
+1580BAA25D65F599378D873165482A1FBB224AEA89C6BCCFBDBA42AE1C5DCF41
+06969F585CD3B737D1388D6359F5468D88FCD2279BDB270F6A858FB7D2ABDEFE
+5EE8FB79FA437F8F50237B92C307B73B0DCB808D07A9C3255CB9B3B17039CE5A
+288103D05D132863FB522A02CEE3839EF9AF7F07D99732F0B8B384745369FB3E
+7901166478F4A16076A1504C5E98D17408494E270BBF4470ED12B4332422679F
+759F1D93984D7E506D16950DB6C2682FE1379EFFA6F6C95DD71F6E55BE3EF6AF
+E0CB25388EEB436E6527806FC75484133F6E561DEB979D5C1FFEFDAF2A6D964E
+03BAE0BD593C2992AD84569C81050F7A793C5263E50C2F50B98C4CC703EAE17A
+6AEDAACE312DAFAF5278D125B6EFC5587484F61DAFF46B87B7C9B1EEDECA4859
+314A9A9E2248467DE1E54D90DD671660B9040B3E0DD982260822177EFD757266
+74A16C83A7FB168016A320D3DF3BD7726F1F4EC90EE5DFE810C96B099FD4368D
+906AE4699049EFD37E8EF058D4B97BF71106445AADD4FC6E90615A0066823A36
+673B8DE32322BBE861AE251226B4385AB28702831270DBD25D666FBB0AD7B96E
+A44E891EA1EAF0F87013AFC982E33D67A28E96E0C9CB99B9E4192536830D9901
+931A8CAFA41289633B20BA3BD7AA3414B6DA8D57CCF2FBE39920CC06361F075B
+CC40335DB9A0071CFF77F6B7BB47F3100DBDC9C4A58C2B81EC99E8E966AF3390
+E3FBCC28BA1D79961C8A1584266454DF772FBA99664D74D4A89FC82FFEDFCFE1
+4C9E4A04291E803D142E37E7ACA66AB279378F2F192FFB2B5BBAD18B95F03136
+2CB594A3D6D3F8576B90A6C4DAD6D6C8EE07AF682F925F01D0B26CBA347C03BE
+F3B0585CF4539FDC66915E22117078CC94D621F31DCB3E021998A5D6EE94CA4B
+E214D07517283D56973D8E4367392BF6C1150DEBF459D141AE0941C1C8C5CFBE
+E735D796E365A1B0F60BB4CF2801EAFE4889EE5F338D3C4885368281B3C95CCE
+251C28A90D318A8A0384439B38D63B94757252062EA44E88509FDD2E75FAAB71
+7329622828B2785C1A8B26351BC74237A6BF99216652ACBD4CCF54CFC8AC72A6
+46342F1E32D4318E7E27C7B2DAC943B3E72C472FC6F1DDA8684AA922516A672C
+E969C047E318B5E3B1270C1BEB1C4071A15BC81B29B268C679B41FC5E381BE33
+DD95F0D68118CBB60C521E5CB2BA46A10E50E9238163713290DF6DD8A27D3813
+F871C07E725D4518013D9A84CEC96782541E5580E33C2EBCDB18F08EB4655A46
+507A8526DB26C854928B81FD502B0CCE4A68943C12078F57C10F4E85FBEE1025
+46D925B8B3B447D4920410FEEB9844FABE985F9228FDD9F58392F2F3BD650E49
+2E3AD5A14984874DF4572816931885CE8A448EC95BBF40DDF4F85653AD90A88C
+C3ECC63492962B685F789DE4E796D1EE2F23B7C9F9A1656B85982FFAD6E2889C
+7A667DB07ADDE075297F9E5808A98A05DA37D8F23C62115D1C08A331532770B1
+E0C7B867A3C0DB7557FC8207C80F6E3717180E7D4F3D6B66C7406275A3206C80
+4CAB4DA1D6EABF67CB1B8D2E34F25900927BABC9BB12685D7D153D0960692BF6
+93BFCD7FD07158CECA1F10A5D75C8B02FB448147838490E80AFCBB1340C523C7
+E247273704AF5EFBC8FE5526AE4159CCFE773D9AD5893EAFABB4C4259D5A5BE2
+1B50B7377C8D45B3D39C45726F023EA52AFCD5C7FC6577880BEFBFF509D61A27
+A58C80AAFD09CBB71E088D7C414275F6256511CF4FE9B3F3E74D8B491F2E775A
+0495EC4C7C74092A337AF57451EC45DD1BE65EBB4F6F2AC454F58EDCC6B7AB68
+0728EBB958A1D5AED112BD7193A3047D23C8AEEAC26C7FFC1E78386C0FA6BA73
+DBD43E42A5C77201D4CD352EC3E9C496D2EA2BF7995852A50B29D3E2B16F9DE4
+A769ECC02C227A8487D22BE8EBA57308B5992B9433D88982233FA0C895FEDFB9
+10B63714A2FC8B9396F9D625DEC3240EB2AD54E3F08238AD01C665529018529F
+D078C2C287675D7315CA64E907C3D428ECF2F3283C5CCE860EC461D403251DC1
+75E7ACB31F8958132F3D57AB5E34F05EA9F5042786C108E51B07635DC743D063
+11AC9348380109216561C53A74F4C3D595426A1A86E9150D3A9EE3B09D7670CD
+D4F33FE94D92E8981FEAE708E978EBCE5A6D17B4A1D1D9161156127EC0AB5B6E
+22B801EF92649437D89CE344D6E4C92F942AC811710D83589A03AA83B229D3CE
+861D48CFA69CFB61BF3A6176FCE2E406CFB30ECBA8F9595CA3405C8F0FE23DAB
+A06D1300C586F8DBD775F22F2368B6714FAAE85868C9EB6F7548E63D6E08EAB8
+B6764FEA41156D3FAF9BCFDC75113B8E73AA4F31F475BE491B45FAC197ADA3E1
+57E0DFC05232D2596F7B69CBD593181849FCAD6FC6CE7217D6C6CAA328BF57F4
+FBEE4E16CE5035383201CDE43EF601624AA1E9061821345302A49C06AF6B003F
+14B42E6CE14F978F194F0502B7E610DC069791E52CE628CB5452BD6080C37F1B
+0A7E8F6FB6C40329A70AA824616CE893FFECD2EDD9F8EFABC788BD415FF70F0B
+F584471FC7DFFCDB8B5653DCBE2D191E1BCDCB83FAEDE288C9FC34C6D35E6738
+64F02C8A76BD7CAD08F318050E711C1687BB8C208C8ACA101470AB06D4975F82
+65EC88DFB0CE26289E3840E8D3E7146C9A03F3CE9D6434B04B0310308C221E7B
+8D8709D363DED43CA5FF1C8CE6CD13B5906236DDC75FF76DAB5A38765CADE270
+3BB52ECACFCEDB884D1453E01A9653816ED352AAED96DE3D2894D64D1FE67656
+57E1E7E51CC85CCA202965C0AB8DE87E729BE4D7F1C631B6DB9F0C901E83D397
+791E4DAAE3B96B8C7AE44F70AAFEFA1E8FE0EE6A8E811652DBB48F2336AED844
+3BFC598A713C268C171BA0331D042C38001800A4C8C647055A0B064DB18A9D3A
+AC9798AA8208FB2862002C164D0FCF6FC38B33F2AD7E48C29D349583E02248FD
+61E03C71E686B96B4D4E0124EE78FA97082369335AAAD3429F5A961BF05A228F
+11A453C158B731A5805EDA613947AE9FB40782C1077A71E5C95228916E337821
+DCE43615341DA9FA362007D0ADDAF128E4E336E0DC8190C5CE43B13C27519FD6
+8638AABF83D71DBA3B68D64A5E62CD663F9D79E56AABAB474EEBD3B4BC812DC5
+165D4777602F732DCC2A342BBDBD3215CC7360DE6902096DADAC86D9C2D17F9C
+23C68E22931E91FF5DB218AE2CA8EEF4F3FBE930FC47141078B466AB2C564FAB
+EA33AE882A540B806AB69CBD2A8E55D3C26BDF7A0FF87FB47A2839A2A7896502
+47F1C68F882E38CA6994D57D8EBC8F15FF8E091E3F1C87CB83A65571ABC8BC42
+F2D2E63D7D777AF0C2DD7E5BAF96F20E29D2F08BB1290FD43DCCB7C0C7F7B5FB
+BF67E1289014DA74C35B6734D3618489DB97DCDE55F701A63A70E3F59A3DDB7F
+C6A25976EC99019C6680BEB374214E92BB04498556D84BFE289BF1E02E07486E
+91F9E5E5FAD11E65FA0356054F352E3489ED93DF3A241CA4A354EDF0C5858517
+4C7B889D256FF8721CCC80D14C7B40B6CE001EB5EEFA0E2C991EFA6B80D1E6AB
+19B86AEEDEAEA08876BE071C01D801489F0775E46460F6DBAAB3F2C2C7F95394
+4CB70205A4CF5DF4CBCC45E8FCA893CCF96BFB8D08F2E439DD00EB511CA34AFE
+22AE0ED77D48EA49EAC1E2EA81594EBEBD0539801393C118CA227A95968FCB1C
+0AC1B08AC36A6CAC79E033E4283A38BAA3F3081D9AF5108E5185175C2D1CF1FA
+CCCBB612308A6A8ED21199759C04CCCCD3BEF1631AF6EBE4437900A3A581ADAA
+3DEF3F55C84532F7A083D553E91A965A732388B1440116903A65EB8D151C7135
+AB91DDBF69A6386B15C104868DB82ADB1FAAD169531A04FF73D89C8ED2356F8D
+6E6EC6D1476B8345D340D8B6827760CEF6C191E8843F12F3772EED191E596728
+80651E10D1B307DF76A84028EA7E64321F59B4EB9149B347248517A513750E53
+E61A74BE0CAF41F18C7AA88EEEDE0ED3D5CD84754657A92669CC9BFDEFAB9CE8
+11355329988AF84EF116B0E2F68451E799EDBA2007CDF555637E247F5E01D3EB
+CE40A4264D275863AB55D61C0533A4F49D64EEA8E05B2EB93366C64FCFF33D6B
+718706490AE470C0F297A27F4C1A269A3E9B75E9EE8CBEFCC44FE045B62B66FD
+47A2CDF0F19DC5210B65EECDA51DA371BE25DBABB2D13AB45F3B7BCAE838E26D
+B5319199372E44FD4BBE1C09AA6DB28CBA5D2EA7B9486B36BC7613A0F0246543
+B3824B039C624E2A05E4D3E10656D67DB6D7E5B4C2EF7D50C3A6F64CB2F35563
+43366F65963EA1EA05FDFEEF8A833B17DE2F15F77E8D1545EA1AF87EE6F50A85
+ABF31B62E3BE1DD013BFB96A574738360B1A6C9F649FD44176F5D4FC98A44707
+DCF14B274F902BC4580FF1E61176AAA10879A94A8BE4B7B8F191B2E624482DCA
+F73DBE465958ECE3902EB75059E17F3DCA96CB235B22332CB80FA23DC537231E
+02A005794EE621B1814B612EA22ED5710DDBE8F6616F1D67F8909018DF3377FA
+D66C42BD2C15D185C7B9CE30E8B27E6A142E89E6EA90FC9A02A52F5615394448
+923B60EE0CDB61683D6D6F786A20316B992FA8D6BA3738BB66CD55C1988F572E
+627FB1ADE7B5D74A54A8AF5A621AEA30899A3B1D45D75252AC88A7933ED97847
+B972F944716D8664A2E2E4BC4C28358583BD960AD45261866136E0A626C36842
+93F9D95A23EC5721F7783BCEBCFF7433D1FB87E6FCE3F16FDEAE6A34EC296E4E
+BE5A6B30FBB47562B4D2E8A1B3FB5F2AB273CCA2B4F32353A51541FD44E76060
+8889B4A454C42A159A0239B1E451987846DC2B5A1795DF53458AE0995EEA0521
+867422FD27F7DE1F177F9DDE065C882EB1AE2ECCDD5646D93B7FC13379451C78
+DA50030751DAE5776B8CB90DC02512BFA79391BF8B8BD3B7E893FDC359A36822
+536F79289BA4D82FAF112AC06A4EE34C8499CC7AE22F3F5DF7E096FC1748D1F1
+CEF00A20701BF1E476E19B8C904B4302D80D18F49E30DAAE2548EA21BCD8519D
+F1EF0D99125463A8E9B5E6943D1C18E1FD1DEA5073B6DDF91CC8D4FABDB5446D
+73F0A0CFB4BF1C4C74BD32FC0E299E355F3FBDF6E0A75285E2EEEA66E4EB2513
+995F1117FC751D55BB5B66CF37573A8A932A34AC29581D46D5AB5ED21A5C6AF7
+938C400AB449B328285B211E54FB22F2620E1908DB3F3396F91C5A87C4C4726C
+C8A54D630E9F3D878592520AE5E5B53668BE3FC3D1E4D263FF5C6A84BB5D55C5
+467BF67904172EF0CE6772759EB0F75D2403F8A0B40D6DB9F5D74C3A5FB6C30D
+D04B316A8B11B9611743BEA5CE92D8730E577B13B84283BBD970DF44BBB87A80
+959D4303F25033127E48173120E3C3595D095843F2467A3473C498CEB9075A20
+5DBB9F82DB7125B631139286D6C5633F94C4D5097EC8B7A8D096DFADDBC89C22
+135440B7929C0724EB1FB9D8C9D5480E97BB4606EE6976418A96B42FB0556928
+ECC51275CFA1D0ACBFFF46FC0B04CC70CF302406767C7FA493DF1EB10A5F9CEE
+B3AED9CD32F93D862FA2FFCADB986F443F088DAFA906D950D3257F24C64DFEEE
+C48CE69284FABA482D68FF726EB83685DD48052F130E18132954B3E44FD3E22F
+B39515841BEB0A79DAD72984C39DD4FB8C4FC508AFF5B45ECB4B23789F0EE906
+9EABEB099EBC24D1393866FD9F4CC79BC57C87D5F027501DA894F237A87BB9FB
+B09039B4E9CA8E767319630FA2CE444EB878069DA89D36AE4D9CE4E7F8ECC5B0
+06D85CF8ED33138F3F7D664E275D9041BA70C6CB4F9BF26EC2B9C5EF2BB9AA2A
+B5FF38657170B736D0A06F148970A385895F4C2F524A582CE0E224E778585652
+7C186BA249BEE06DFC457D728C6226027B8F92A0DF24E7F9E3A7AAE93FDF6F87
+E694DD95CCD0BC2504F3D9087210CE220862D34139D33EB505D90D39E7DEE3D9
+4DAF699231D57B5AC3DC301B2DD84F6B64D3EACF5D0B690D0BB7007693A72DD7
+949C98D8EB9035A0ECECD035CDC6E7B8A007BFD3EB3D8DFCD130158E473E636A
+3D00F8A2183766C422991EA3FB1A6F5DC967EF9C8736FB190191154216B7AC75
+F5E269CC1AB5FD8B1B8F1632E9496BF02CECAA66532357A0DB3AE03D98351FF7
+0A2AC142089A891607B075019E60BBC5CDB1AB6E31DFECD6500C7D2BF2FC30DC
+F01AB50F30D846DE8324B6906A7B803B4B68E8D223CFE37DF3B7AF8134CC4F47
+7A7480F7D15CF7C3325A323FE82020CC0612109A3CC42B711A2424CE5BE9D9A3
+8580D6E18003D481215067B85309D01CF552CEE8A4CE229F1DF34AA051CD265C
+844AEA21EA62B9D32B100F3E3D0356C7D6AB6BE4CC0DE6B38D60E53DE4B6DC74
+FF8F6B829082ACC5F05107AA165879BC7B65A6AC4FD1469B1DBA07B8179A8715
+B0A8876D79FC5BD11F18A5694141E1E1B253334550C08C45922AE297F392377E
+D572BC910D908FB5C9A82B081A615DA1A945373C5708913DF1350EC8CD823FB2
+CFF9459187061FA975B9DE40B505BBA694E969B8FB91D5D70F7780CFC82E6EE2
+6FC3728BF89897655750871CA945D71EC75327BEDECACFC93D54A83B5AFE42DF
+8D4C73D376210A519E5D6809C8DCA265EFD1B78A4F79C2D5DE44DA2F941CB57B
+710A1DF1383E15E19F75A6EA4E8160D3443AB76B043FFA545EDE8EAE35F9210F
+04954B40EB0E8266080E03ADD276015A8266B3ABF13CE2DDD71C256E4A9FDEC8
+CB6266083EE0FEECD91DB9871D482C74D78329E64F6A5DC107C0D5EB12F1FD94
+A39B06987319791CEFAAFCE7FD20DCFB93040394103B6484BBF3EC67BEA74B35
+4C0769F378A159CF556F099B2CB8812562182E131DB04E222FA8EFF0356F4053
+A620904FB48262680E469F55C63DA2AA370AC91947714A4C395EB7AE43F1429D
+E65A7DF7D025289B9697360FD086AF88289EEEDA7037BACD1195FAD825935648
+8026D3EA9A8482B40266A67066A5883C45E0A59D86E6B5E85EC5E9AAFA5AFECD
+2A17591593AAC5E8194110F5C5105E6DBA0ACB7BC4A2D699D5C1A06B6995CD1E
+80E988FFB362671B46BDD7015EF0A7448235B7735157147B765F5DDB701B597A
+875F3521A1C8086B51866A7619F336ED12351862DD20FDE12FAF404E7BE5C680
+DE0F61E7B727C4D74E1F2746456EB22A7BC3F87F3BC1CD528B80D9EE933F8774
+34B5340FAA4B5AB5DBAE5CF08E93FA62070DF7E62E25CEBC9E71978280C67530
+45741E8029ABC5986BA0FFD9C93F6E292EEC0FCA3BCFF7BBB72A4E359CE8ADCC
+8DB71DB3DFC28F40040BA616190B7CB188DEA75CFCC51A29C0FA1370A2073C37
+967546F898FA085A321699921AFA3C62EB4AECD5E1A38F798C7D2A298859A4DC
+6254850B9DFDFBE4B3FACB7EF18D3665B519CDB7E237338C270A101519F5CF54
+AFBCEC5FB113A76F513512EB30F9FF153DE81E6054E339E8B6882AE01DF6A152
+BC35124ABC160369DD987E35A8FF34BED266BA5F47F457F7597C89B880956C65
+4F2D85887702B5D844D95DAA978BC08F87039AA1C41FC2971BFD4A2E99618909
+B14E3D8FAEA37D137898FC9E61132515E70E88333B66DCE1B50D7E73B29419F7
+31DCB71CFACDCA26125EC8C31F5DA690E001122B94186395717CB3B6C205CC68
+D73B036E086DB2150CEC23229BFACA0785AA219F4D0D01DB2C2C5508C7E004D1
+DB633B1D96270004E5C61CCA0AF777054BD11CD3D2585BA67F788193052E3656
+A6A0AF2BCB038543035A4136139CFCB07FEC241417AA42EFB8D8709FBB42E5B1
+943CE84B1B236F2616E294978B7998DC56BFAE5849E49325AECB45F2E433CF98
+79B1CDC7560D57DFD4EA193F7ED84F78C8A17FEBF46CBD2BCA1AB0740BF90733
+1D2372D1B5C98385229072D5977275D827199BA3A1B4EF26D68C306A75C72A26
+03EA819822023917473295767AA2CFEDE5E047943ED3E32879A84DCC81E275BC
+94ECEB7B99B5C34C05A9FDF7D5808376163975DB899F48E8A8CF84740D67BA73
+8993AAA68F6071992F0380CA8B863A24977BAF2D7088538E17489A2DF9F9A32C
+565ED05120BB512E5D9128B121FB499064A45A2E0A28D80AD3B4551608D0BA1E
+4AC96A2C30BBC76DFF9FD079311CA301EE8BF7F102D65DE54761D48A0897776D
+82A8B3FB58A4519FAF442DD383E874D0AF2E6847624E01848846901A907295CC
+BDB23983E9FF6A9F07D1B465A551B952F2937A7907719CA93A5A656AC9458C15
+F76588BA96987E6FC21269D171AA2515C26F5C55037EFE995669A6B83D729DF9
+AA281A0531A677099EFE0C9232665F5E35D8BD361D524FF1197608D9F989E9D8
+E3D8E8C7E1480CE21039CA03E0F9052C86240F4C90AB6DD6D171AAC77ED7292D
+8F879A1B79E9D1552AB3E19DA983D1D5A950572612E4E6FDE9E69C71980463E3
+C722C595B2A86827FC4C909590B584CBD7D3E24CDE36207E1AAFFE33B7860B61
+CEE9FCA44D8524929D01E5AB1943E5750B1DD99E9AEB25C52853002EAE192A11
+5F27FE0A63FB2FA3E73A0D9730F779027FA425EE4F235A48648EA4E0F5D19628
+1F356E43716DF1A220B571D2A90AEC085DD46E2A5DF1AF183CF3E92E6461B270
+D8DEEA934E4EEB8A64CB2C20D8F2EA26EE35348FCE5D39BC04067BA121BDC7BB
+48191B0BBD4A202329F20B96C6679501E078B368328C1100C3082BE82353C0D6
+306B1DCD86266BEF5A71D66781FC901B2527CA8DA8F76263C2C622FF2CC6ED9A
+1EBAACEE27AA9D25D259B5891F92369E9379CEECA6BD66E2FA21A9BCF44DDE4A
+AE60DB1F2D197B01B7879DB5C9269011DE3B16C87FE72BA7DAB6D80304862FDD
+FDEB38D10ACB5A9D7B25F38E9954D25BFB12A2B8418168DF7636FF117FB35D21
+C1F55FB01FC6110A9FD772EB2B8E1C2C35BD8563EA1649417136F66FFB4842CE
+4D21A92A7B64A5FE1A318CE6318116ADF9D192C20CC096A492130ECBCF4FABC7
+50C1E68562D86572A90D9E057F70E8B709998897D91C7EEBF937FA2AE51FC70F
+A05103BDF452897DCDFE1EDA5557C660840F432E24C14C7449FE02AC59174207
+1F6223B96572D7AEE53DD4E360296622292CF73FEF83499155DF434D48B5C5A7
+A4FD10323821591C2712E1C7058C22C9F80540023D18819409F08B2F01DE39BE
+36C5AFB090097100D50B38254D60DAB4AD09809403283C234D2433BD523074F9
+989D577E3C4BEABB44BEFBB16D501C8EDF23BC29C90C4C66EAD79DA27446F808
+BA1FA9A0711D04EE3667923F05A70FA3D6C514581271D03250347E7C64A82DF0
+47BFF057939397176F69447F3224620468948FD17D8E01ADFC71C5F898C40809
+639725A04D51FD74E2CE327E7BBE8413269A4845ECA1B2ECEDEF15EFF612F89F
+AB02ED248DA47A6CFB73291ECDE8EB8F21B09934621109B5FB12A0004A664776
+F0A7D13F8FA4AE3549FBA43E3D116ACD78EF378DA5AD57AA1ECF3865D6896A36
+E6B323FD31D98395035F2B21BD1263CE8963DB0E66581716C489BEAC1EEC747A
+38D54FF19BDD64FB6D29C60BA9FED7274F4338B9FD9497A7A5C990800BB19F85
+C43BA6F4DD2934935F5AF4D0D467F5AE425DB20FA8C62661FEBF77CB8B1039F0
+9DB57000EDB0ACCFCED5E10C27CE898F93F4789C7300A8431736B32B8B327BEE
+5CFB1DC3305C8C5FAB9F301FE6900069D4802D7B20AEBF979C3FAFB222838B42
+0789CED59803CEA24CB8E40B432A72BDDFBED38C1F5AF6B53E120BED34DB66E8
+6CEB33AD20F76CA376DDB0CFCB41DEE81C8E5DDAAEED06216C71E988D3BDD49D
+5A3A7A1C5A70E0EA117766451F27437C79193DAC7547FCA3234F8311768F3829
+85767D0A573CCC48325704A30F55B21548209D89438187316067A1F6BF1CE0AC
+85E725133837507C3BF78290140C2D51EA3444E6ACE981BE4D9B3923810E1417
+E9668B180E5F843D71976F9F5ECEDEDD9C0D2DCDD416CC167C3F48165EC004B6
+CE1113D64B375A59B41BA38FA35AFB458D467ADFED5E72F41A386540A3B68C99
+F29836F918332BF171BE5DDD0C9EBF34A14DB5E4DAAB65F7EA0D2EA8E82B7AC8
+01411A2E6F1F7620F2BE468EE935F5BFA9598A101EA265260A394B6948DB87B0
+6CBD5DA5FF81E7034A0B0332C4F7A1A9332A26AF80978F0545C3CF847324A38E
+B9938E305C484BE9DBA023039DB4A5D1AFB139B3B7493A492B8A8511EB2A762E
+95734FDF9B759B29A3224534034775C03C1100D8EBF3CE1B55748FEBC613E11E
+5D418E4C9F1ABBC812450C808EABC5CEE95B59086CDF27A81583EB5E999831F2
+1E6909788D689599D14A0D075785E50BA7174A30BFA0E4370A4EB59C3CE9BE46
+A238ABFBB5E951A82881292CDD4362F2D1959C306EC4A4BE51FD2D4604C08E4B
+E4CA91C5B1E8FE430EBE9D981CD0066E8294201589C4989E5262A6867EEC3153
+405A49080CD60053FCE99A84958209C94A0B36776BE153C72216C9AD3CFE3ECD
+4B0409369DB51A7636D48243B526027043ADC287EE39662564D609A179A9F203
+10C9E244E9150D3003F919A36807EE190D488F9D1B6B0FF9B2347F642697C669
+DCEDFCD72AE48A6828A6875B5F629482BEBCECC17774EEA93BD31F6F11C6F5DE
+EE483B14BAE3D73F933C3629A894BD5080BBA757B24E3E9092B65764B2A8B614
+8DBBBE9AF190EDBCF631C733A5FF8DB69B1C7EE0B2B7BF76BB921A85B40A07DA
+65F1250C1D2F5F4873CD80AA44A68BA601F416F91701A3410AE272E7087B04ED
+7A7A6159AF6067593BA6C8C2DB390FA2BF1C1BF264674B9D3248E0B6DB496E27
+6E5CA50B01D847967C31AB3309731E77A3062F8872578CF37B8D0596B708384F
+FA3EA8D9EE4A73F696D9BAF8351E46D2E9C413EF5937C7297EE9E20E68F86C00
+C35FF23DA9E343E1B86F324D4A95B1412ABA88EBC765EABAB90264973989A3AE
+787268BF358DABBB74F04385ED7F430D88BD45A958763473C203893CB0F46774
+01504F6ED812AFF4E35844791413A2380D1BBBCB6932BAC282643C7A18BF414E
+5013111E69889FFD8BB711AF2172FBB317DCBB1C1FF12E5BFED589627F976891
+9F53E7915C9B9FABA2B8D2D442B3EAF14BB73ACD5674EF76F03700437603C802
+354E32C5B2CD02FC470533EE8CB6EBB5A83CFA3F1565C3F6341134EDAF4C7F8F
+2D8FB57630AA264665D154CEBEFE4FAAF88AF6BA659EA31A4CA4FD688B2A51E5
+D24E96A55373328287CF954F8727BD760E57EE2E8BDBACC29E5CAB8DA1B58A5E
+FD8416398145A5F0E50DF18C110B518BEF42E6954C3CCB1E18BBDE1E2B6FDC4E
+D7339D7326B8EC9A1D979367B1A9CDFFCD34029404A018A1E42BE7347DC05D93
+15BDF40ECE8318EB9D25DA7216C4CA8994D091A0DE6E5F189B05E4AE951C6526
+AC9113A0A25EAB299108C3A2487187FB78DA98338CA7B9A3F74AE32D61C73533
+2C4E1233495DA9C0D3471C14E2AB780128DE8CC99D14E2C4000403766DCA344E
+E09A4D796BE9085E4DC06838BA17481E0ED70B5DD973C64B7311E47420E3F750
+DA46A3E7FF1B2300F2E78AE703B83C14213EBEA42AD7DCE3F0523883383D6E04
+5C2E597138AFB94098EE8621B2E5EE5315C3163A5EAD6278B65B88C497D2A2ED
+71660428739FB1E9A3E2DC11FD250E6EF346AA43309480AD7F3777EE5AC41042
+1C395F67D61726B397120C859923FCFD36BD4A86C589AC3A9E125C8CCFBEF7C9
+A49C3319D069844B2F2BAF76E916805C5EA06B90B3382701200A0CB279BB4693
+57922CBE713140AAA954CA7AAAB76AEC2E33A9A0048C9EDC101A8CBDC342CA04
+449DF8AA026885F767D45CDEA73F405AE7ECD1E118CBDE17B7F9F109F36E410C
+E4486A1C7FE40C214B4AD7A715A003FA496686BAA306AA3F97BD49B512DE1EFB
+3D5A9A8DD33FB117121B04D8DF25F8634499B54510D394310A5117666DACC963
+2DD41B688F2CFC87750A45BE221979075AAD06FDCFF45044FC09DFE41F3DED63
+42D2F296D337C1DFF439FED0659652CA4500815C7172686E0B4D1C410E9C451E
+1DDD94BE8BD441D09C6D8E898A0DD102135C854816E66C6E79FE476744CCE245
+8CABDD95A91D03EFF4FB5CBA2D8D0D97313E5EB3B923730E72C6E1B04E976DE3
+F76B5DB805E9B9FACB88A7F175A33A517C2C2183DD53F4D15F2192ADB4E524EA
+DB1CBB45CBB0A40A36D1D685B16735C90EE914BEC1CBFC2683532F1D3B44E0B2
+F98725D89F233AC99AB45891D383C3D7276C8239494EADAF676900F089E37101
+7D3F958A07A74CC7455B55C0310CE104700F674AC222B9E5E4351D4F0510E2E2
+720AB917341BF9FF91D095F22EEB64AABE29367300AD0EC3F7BC12A385824380
+AAF5D2A4DD4026324E41D8299DE8A5A905A621DACB611ED1CC9E855039EBA0C9
+CCE46F79F36F97D3E15667B12611AADCB2CE1BACD56248E3CAA720DE09045AEB
+5F70674EADD8442734E302C0CDAD357F02A0813DA689E031C3B04CC545D3128E
+FEAB24F2A30813BFF909511E0F8A221633943E4AEEE93D62D653AC0290B8B6EA
+C086BD0C97F800C3522C59E39AFFEF43EA20C8E833E842B85804B94C8DDAF027
+727337A4AAC37B089F196142317C4215C533A6E5D42CAB2CD22FB9C4719D03DA
+599B6DD3F11C6C94EDC46EFF4E5D0531D63BD97EEEFA8ADE254E23002D4D034D
+64DE4FBAE45CC5CDE42BE8E8F17E585B3C0D5C65D4BA1AA413171A02F4115D2D
+7FDA0098104AEEE3FC1EA2C2AADDEA317AF0D73C74147DA6115B6D91ECD8E66F
+8107525A506B277AFCE3023040BF2D69585927081BC5306B4829FE4BFF531793
+9336A51846CD02E346BFB7334D2DE477C13087E110FF8B168E8EB510CB6DC834
+7630BFFFB5557F43071144661DADF55FCA0C106164D208FBA2FD762FBD606E6A
+7835A82103FA89231484FA9C9E4AE0F426D3EB2D3E519E79E39FA70871E3D329
+ACBD432BE3D4BB05813C5F7350AE1712FEAF9937B76AC683D52F702A6D2B578E
+B1CDA48A37F09083C2B38C0AD334DA683ED3CA881B626B0611B68BC5F42F4BD2
+FA1213AA8B75FA3002DE7E87D6C091891D6494838F533970BD62AEED67CF2C7F
+39466438C53CF548D7D86563500E7D8D0C0CEE994A2C1A992E31F6A8D32F1D96
+F4F69E28C3F7A4B92A9F7E5467EE2B115AF8F3E8539203926A84F09DB1AA1E5F
+ACE1A907CB2C6C89B65BE9DACA624CD10442B189FE49331E87B1714C1F8BCF57
+7C1656D7EBA4D8CD8568CD948FE85A7ED797796256818A2963D37AACD082E405
+7BE8562CE78A54FA6C08755DFA26DDCC4669DE91AFDD1073542EF1FB04813BB9
+42334FD59AC8167F05B1B963F4DDDDBF7CF177C7B1E181E28348AB12E083AE0A
+7DF434EBE4960070AF2655C63B1F9114D3EA51B7BFF6F70F756406002FA2421F
+56BD35B9F0F399CA89102FC688FE8690ECE6FE9078920726F5325740F9F15591
+B27312E42881D173ACD0E6752574F135F7DE5CE5CD376E6E1EBC98468DDA9FBF
+65A0A0F24E1157BDCB90A0F00F5DF9FE167B83D7460558BDB3E6B51A9EA1AEDE
+83E7C462522236BFD2EB75E0A1743B59C5CD781130C3450908BB9309C790B81A
+726A5DFFA753589C05AE88E5B0AAB069FDB597ED006DF7499DD73689205A7B06
+0D00CD4285C9254C4671F6746BD385AB76E376D2C8F9CA89523E0FCCAC1AFE2F
+D21D3541474D46EE3756FE9846C6D27BEFF024487A0B68895E14BDD5EC5838C3
+B18276B88DE43E949FD14C65AED312B831B120FFB0D11816CD1B11F285496F47
+C4F06AB615C651F3B0CEC80D098A58D3D6903A243F1B64E2C1DE434676948F2E
+F120F94DFEC20C1E028CB0DEA2F9B856F73BA9F92E7907BF360D288262CD8D21
+0DF5C898EFD5115C486ED15F346BECF6AA2BA4E59DC3F860F5DB383E235E0AD3
+8A656A2311770ED4B902642BD30E97BD60DB26102E2895ACD22F67AD22C6F0E7
+912DD49F6FAEDFA568702D57D86BC176907D08B53280D1BD1093FE696EFFC553
+D8E20CB6C5871A3BF7F93125CFC5084250C3EFA20150F9AFAEDDC014EAF973DA
+1C934EF9A0E2146448F922FC2FEFC8D893C90547E076767ED9428B0D96DEC3E6
+82B678E9F5B7F7FC77D419705DF05CF6F17E8F3636E0E51CB00CFACE3DDB1173
+1BFC5B5D81EEF8C28D59DE074A7A63F45EE061106B837B3933F36C44BFAB49FB
+A61C1C6F5EC9CEDC870D226DD47D576D51446E61E0A9A9E1CAA5E94B08560766
+DC3248AB4B788D13F495C6A7EE9DF3ED79EA1EF6B1BA6E3B3F00CCDF619F06EF
+502C07F28171F5F93E65144504AE40EF7451662297926F87F1859DB516931484
+BD3D7DB2BE1F192678681FB18F22B6544E9B51928848F4E635FD79F309FCA94C
+C4FB2E04AE984EE0AA48C54F4A79F7180D2B158F31ADAC46B6827509DA86ECF6
+5872099655FA5A7C9DFA06C4FCD33CC12384D0EE1F646FA74D14DDEF8F2321AE
+966D7EFED0DF0FADDC8762BB671761CB643D32393CB2E201537C5D87D9E44BB3
+AE88232BB580669A5EB79669FBF2B116F9845CB9AFA54A8C852F572FDE1176E4
+56F650BB69AA195F6315D0EAF88ED671B5B26EAF84F4A59A573D0F649948253E
+C51D3B4CB623B63D0A4B513DA7188BC08865DFBD7C78BB0DA0A5FC8D7910D07B
+07A4737B05E41FE3FF9CFE5BD35A9CA84E2107A0C47FABAC9DBE051F0C9CDB8F
+2C98B80C7A945743B0A87CC75C7E211D33F68FBA841D97D5D25433B14211FDEF
+005D470B1E5C29A8B3110C0ECAE381BC8CFE5C52D59454871B0411166EFDB76D
+09C3C6F54A0FED793E0B19DB23A48B99A5583A172987685243EEBD56E31C5E77
+1623F16CE8F1D822221276B5210AECC885E83167E1E66446A2681A88BB40EF6E
+82073899AD81700F9230ED476E90B38AB6815083C254E657ABD8761ECD173870
+98417DA59075CE7788E3B279D89DC565746F120208E593CEA999E6F40370231A
+644738834021ABB4DD630B523FD969A5D79D8034D70C5625C14B8B70F26447EA
+7EADEB97E2294414560FE2359B8C0F3E8E2BE47E0D79AB32837AD9155F2E4A1A
+27129BD9CC0E2F6E72EE7E43BDBC49F44388434096CE46A8367850BB70059308
+CDDB676CA17E963F6073B19AAEE7E12C76D6165564DEDFEB517102655293A942
+DD67998256EEC2D21A844181ECC8DFD7A9FF26C64854B1AF3F304D09E264B18A
+8F26004866D01BCB4A823FDC800C45740A543A036EE4785ED09CDE35F7C6E579
+9FD4C16E2089FA7C22C7C7A5296B165689D2C26B4D64DCEC325FB1ED3BDF3F90
+9B90E84072EE1F2AFA0D61E7043C22749CC71E561BFB0D20E7135EEF7B2DE8FC
+2C2AEE15F8A17E739E489F9001A063F452B899EA26734F78ACA3964077BBD523
+538660F290A2656966B6BB9036E3E63674847E35E02E54E8ABF1CA3C31807CCB
+16A349CFF5DC7CB54934F12890E3CA0B9D76B692E7714035F3A64A6A877DE24F
+A42D526B7D32C480D44215610EB46E17C295C70D6D105EC0240D36E0B3C29DBE
+76269CD8A66DE579C88353547EDCAD1FFF1F95D76E0923A24FC3A9F9C2A7D910
+B8FB62163DE7A02B3A919C06FC23F1AEA27E338BEE68D0297E8281EC47320D01
+CD201378228D6860C71EAEE0900BF462B701E57909F02824D1424C444B9D6F50
+0229794506BCC56B503293BC69B3C6F28CA4C816A8F2AA2992253A408A822D1A
+952079FD015DD41F3C93D9F0FF6EEEDF50C1629A76B0D03BA0037845ED1DC89E
+53335C804C71AB80D025E49F4313E797ECB16C7F39B963476A5C57256F083CE7
+FA22C560B68DC95691724A56632484BE7F0DCC403E915EC2B115EEAF3F8B7F1D
+D1460DA180355E3BD2DF1D459A179317B5781D0C86D9245B62B159F1EF46D3A2
+94AE78E79A69302C17520FED89AC397304BE804CC2D620523FE203B4935E0A08
+F843C562D352CBE1202538E0BC63CD3CDECD197989CE794BAE7E0FD9EB5A8333
+827FDA2233058977663741CED6E55E4E5A5AE4F4E6CB57F07E1D4579D18C178A
+49428C7CECAFA604C8C64F6A00FC9D6CC34AEF674672329279FA7F3DE0BF959E
+8B8B4E9EEC0F406A91C51E62C583FA54F391F5177FE1E29F6A81FD3E98B4D80C
+9F1289FF4B55FB319FDED440F59F421F062E6554ADCD00600C4DCCCA97F32890
+49CA92115DD0C894F37FBDE59FBC8510F2D6901CECB70268982D49A47C7B037B
+F55446CA03BD401B4826BFCE26D55C80337D3F2B10DE20AE6B7563D61778992E
+CEEFC6515DD496AC6209BFD515FAF56B42D331C0981F4FDA4A033B407008A4C5
+034E4BAB5F833148164F563A9FE8D8F7B6E9D6CCF780FA857149E2E610497C37
+5997969165907BBA244FF5679BFC346A2DEA84F66C046D613192C06D35A5A372
+9C281B8696DFEAFA164E0F2C86FCC43783AB3CF735F013488F40CB1EBCED4DB5
+1B892E6FEB72A60CB79A529528E20DCE7AD6C983B1E0AD8482581C10C5923466
+485B25BD384555BE05AA2A1C9A449A651357564CE0D8293CACA18C8B520DB97D
+EDC0BC13AE0A5C709B4523CD32CE0B6C3A43A684384E98CD042AA39CE119983C
+08B789000E3D887B76048AFFE58FC01E50359EDA5D579B4A99BE63E027FAA499
+FD3637CD7EE3DB8FAC7A7B49EAF466A258786257FA59E9DAB9DECBEAC369D7BE
+C0D40B594D973B17885248C445426905AB12B617FD88E09E80AD8E3A6EDD5AD7
+4F184B6929B879463ADA22B7E42DB8801B842D433575B03DDD0FAF179EE4683B
+D1080F2C9A08FA1DCEC4862D18ABB3204E84754B44E7CAD9831A67235DE21FFC
+6AB91313F29574062015729C03204D895014DD676BD2BF94292F3C1A79841C08
+92D804BDE4740AC1388896E0C83F3BB8E93DE19E9E2088140B3EFF9AB00799AA
+BEF0D6208DC9435106F4E160E2C172A39670EE21C887B82AE4E0B5E8F3C556C2
+C01353F5BD0D6E7D1B675C5C15841895863217F32476B02EC0E8909FE1D5E443
+78DD61A1DB513FFF4997F22F3A9B03F0A645A152F00DE39BAFFE9F338CA87E8D
+0ADB94F94532A807C65B095001A83E03780C61F8C6D175F9405987E7431636E1
+9BC9CEA79500EB0AFD5292A50C34B7ED0C6FEE3E395A9EC246CA7851E979F086
+EAE04235C25605B4ED0286C746FC0099CCC04961C0B7D8A1ADD5A50E48EAC5EF
+0E1000C77ED1BFAA3210AB496B2B9C1AD5A197B2EB435F2FD01DD5FD39111CD1
+D496210BB93C418A64B3476D7FD53900AC2F689CB16BEF3D60A93A171B216403
+1D611A41408881AA571B936726E7D703A0D8F2D0BE3E32882EB78150A9BA761A
+6C7F1212FD52512C56C42865D910423EFF3EEDE621466A59E0104BF420847F6B
+B927BB31090FFCDEEC85E729B99D78BF42906A2986129A933C2493BB216EF00F
+60EF04214F0B5118DA3A2738B9A55FE06DB2AE5A2F535D095CD138545B7A0A4F
+A1F80FA197317253879321A5E78D3C6BCF487B6B242F1C6F1FBBDDE5D9BCB191
+9DDBC945E0A5AB2F752AC425F421A92B26E87C6945ED317B36173EFBCDF0B67C
+89345B03640A2E59CECFB8F351948121BCA6D196FDE5601C7D545EEF9A0B8B91
+590F8712FBB88A87EBA115C565D6B3B9EFD53545F079B60D9E833F41DA40D176
+5328B8891A5CB1AB952FC77A93BB871EF8A17C79045BEDD65A9B7893FBAE62B2
+90EEC774E889C7A02496FBA6C1FD8E42A35E37DF49A2B914CCF4726C985A306F
+D8C83FCC6BB9EA66A193E350458C52592C2B16AA812628DD8FB16A4AC9897BD9
+CF1BFBFAC5BDEFA1E856FB2B130794F44C039C01DBECB2086F2B6B367603EEDC
+2025844C5F492CE76052B2B6D69F805BEB62C5539DDB1CD5D861CE15E1200B25
+ED83F8D7CB26C3401BC30CBD2AE8CF0221FAE4B1884FC4CBC1F0ED39ABB25593
+957FE70694E6AF2FD8748AA4396DF453B587C6A31522A6F52F1E9DC1953EA4E0
+A2D0689DE808E32BD30D1D7DDEE920D1F5B859B8381F7AC8C543DE6C0A477F6C
+7D27AA483A9ECF4EB9BB2A455C664538B9D7B6D7EB3BCBC7825BE1C0B3541572
+429E73EE263BBAD84659F47EA900CE69F8F5174AAA951A8B710B86F7D1648CC4
+D16587DC76196A5391062DC4EDEA970590722EF6C40E1BDB1282A7B6BF4FEBD0
+313257B86A5573E362D0BF6480703F27613B787B0A939737252B558E22FB3F07
+E3D41D0DE9FE12B2FB8E38F9968C3A542579CA6C36943A162164EA3B27748D75
+354223F4AA01E2FED87A70C8C2A099B1EB1601AD93A025B58658CCC3C5E1E104
+CB33771CC91BFCBDE5F90BEC75BBAABBF5FAB63FD631086FE97CD3654A5415D5
+13B9EF1C38B243EB96B27146EEA7CDC8E17C74676F43BCA3D0FA31A576581C2C
+1F232E73DF1544DA33AB3D45654D54C890025CC17E33989E875FAABE340CE6FF
+F5F5C5844D37F5B38BE18F29ECC4E390AD9BD270F9B6368FB038D9A9D9168BB0
+0BC3D6156AD8D4099EE878A762B7D725093DBA56C9D6B88152BEADFD7D0AB6E1
+D14B487A609D37BB815280A5F5EBD105E6AD2773D00CF996BC39C4965E08791E
+CDF69FB205A8EE0CEAD9145DAFA7A2B028395D938AFDFFEF2EE37FCA8A948216
+B85AC1B885D4AA9A6AC8203CAAA7716573D061407DD2B1DDF1CD6026EFDBC1D3
+61B5C61371A248DBE267CDAAD1F0CF3E66BA16CC47A41CB5C49DDBEE015CA0B1
+7B2D0201374A35EB3EE70EAEEE44078DC8CE4F516DDEF10A61F500DFFC8C02C1
+337E2DA9EDD7F3FF4937D0999572E6BFFF9FA3F2FDB01308DE7D6FB8D0A67E00
+F4284882F2043063C03DE5CA05F97A36260FEB8C4BE95DE9F2DF7D2CA572DB0D
+478BCA15D32BD8A95109DB5F92B318AB831168A4150A437679076D7CFE5EACCC
+14E866A65FEB2EBCBE51E792F5A644BDC6AB9F1F576077F718D29BB7DE82B829
+B0DCE337CA18225E470E412E1FDB18CE8BEF93F26AEFC1C6073E0A1173CD5E83
+89A72C279856E4FD31837BA43B603A28D71D427BBCA52207220EC3E14234E7E7
+F3F1172B3998887BBF98C4E3D3B1B01A33387340CDDAD0CBB223B58BE51B027F
+9795CA7142F703264069FCE544AAD50B2F2E8EB5A1B7330B31409A873FE3A1EB
+8C22C80BB164AD35EB68A1B20DB47DC61B0AA72694B10904C9FF8B890B096EA1
+7DFA7B09D784BF68D70DBFBE84568B4A62FAB8BA46748420CA6CE88FAB584A40
+D0A153513AE867F772284B966D4BC5FB7128184F55BEF9AAE0D61402AF14E1FA
+F59D22F240C60AAD06BE5E1C77D29A072AC5C0AE669053AB5B1C5A2A45A624D9
+0AF27A204DB9269F9D1FBDAD38C66EEFFA2D1F2C773754A8C47A5665F0D8D020
+05E6AEF66E79A14E5850D79DD6A0E46F1115D8E2842698BC
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
@@ -2905,6 +5059,7 @@ F852E26DF056F7B5E3A2A54DDAAF6351193DD4BA2923EF40D6388324AA7913A8
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
+{restore}if
%%EndFont
TeXDict begin 40258431 52099146 1000 600 600 (rluserman.dvi)
@start /Fa 134[39 3[39 39 39 39 2[39 39 39 39 2[39 39
@@ -2939,7 +5094,7 @@ rf /Fh 135[56 2[56 1[42 2[51 58 56 4[27 1[58 49 51 1[54
48 48 48 48 48 48 48 48 48 48 48 48 48 48 1[48 1[48 48
48 1[48 3[48 48 48 48 48 48 48 48 48 48 48 1[48 48 48
48 48 48 48 48 48 48 48 48 48 48 1[48 1[48 48 1[48 3[48
-48 48 48 48 48 1[48 48 48 48 2[48 48 48 48 33[{}77 90.9091
+48 48 48 48 48 48 48 48 48 48 2[48 48 48 48 33[{}78 90.9091
/CMTT10 rf /Fo 131[91 45 40 48 48 66 48 51 35 36 36 48
51 45 51 76 25 48 28 25 51 45 28 40 51 40 51 45 25 2[25
45 25 56 68 68 93 68 68 66 51 67 71 62 71 68 83 57 71
@@ -2953,54 +5108,43 @@ rf /Fh 135[56 2[56 1[42 2[51 58 56 4[27 1[58 49 51 1[54
%%Feature: *Resolution 600dpi
TeXDict begin
%%BeginPaperSize: Letter
-letter
+/setpagedevice where
+{ pop << /PageSize [612 792] >> setpagedevice }
+{ /letter where { pop letter } if }
+ifelse
%%EndPaperSize
end
%%EndSetup
%%Page: 1 1
TeXDict begin 1 0 bop 150 1318 a Fp(GNU)65 b(Readline)g(Library)g(User)
g(In)-5 b(terface)p 150 1418 3600 34 v 1873 1515 a Fo(Edition)30
-b(6.2,)i(for)e Fn(Readline)e(Library)h Fo(V)-8 b(ersion)31
-b(6.2.)3118 1623 y(Septem)m(b)s(er)f(2010)150 4935 y
-Fm(Chet)45 b(Ramey)-11 b(,)46 b(Case)g(W)-11 b(estern)46
-b(Reserv)l(e)g(Univ)l(ersit)l(y)150 5068 y(Brian)f(F)-11
-b(o)l(x,)45 b(F)-11 b(ree)45 b(Soft)l(w)l(are)h(F)-11
-b(oundation)p 150 5141 3600 17 v eop end
+b(6.3,)i(for)e Fn(Readline)e(Library)h Fo(V)-8 b(ersion)31
+b(6.3.)3218 1623 y(Jan)m(uary)f(2014)150 4935 y Fm(Chet)45
+b(Ramey)-11 b(,)46 b(Case)g(W)-11 b(estern)46 b(Reserv)l(e)g(Univ)l
+(ersit)l(y)150 5068 y(Brian)f(F)-11 b(o)l(x,)45 b(F)-11
+b(ree)45 b(Soft)l(w)l(are)h(F)-11 b(oundation)p 150 5141
+3600 17 v eop end
%%Page: 2 2
-TeXDict begin 2 1 bop 150 3024 a Fo(This)38 b(man)m(ual)h(describ)s(es)
+TeXDict begin 2 1 bop 150 4413 a Fo(This)38 b(man)m(ual)h(describ)s(es)
f(the)h(end)f(user)g(in)m(terface)i(of)f(the)g(GNU)g(Readline)g
-(Library)f(\(v)m(ersion)i(6.2,)150 3133 y(Septem)m(b)s(er)30
-b(6)h(2010\),)i(a)e(library)f(whic)m(h)h(aids)f(in)h(the)g(consistency)
-g(of)g(user)f(in)m(terface)i(across)f(discrete)150 3243
-y(programs)f(whic)m(h)g(pro)m(vide)h(a)f(command)g(line)h(in)m
-(terface.)150 3377 y(Cop)m(yrigh)m(t)602 3374 y(c)577
-3377 y Fl(\015)f Fo(1988{2011)35 b(F)-8 b(ree)31 b(Soft)m(w)m(are)h(F)
--8 b(oundation,)31 b(Inc.)150 3512 y(P)m(ermission)h(is)h(gran)m(ted)g
-(to)f(mak)m(e)i(and)d(distribute)h(v)m(erbatim)h(copies)g(of)f(this)g
-(man)m(ual)h(pro)m(vided)f(the)150 3621 y(cop)m(yrigh)m(t)g(notice)f
-(and)f(this)g(p)s(ermission)g(notice)h(are)g(preserv)m(ed)f(on)h(all)g
-(copies.)390 3756 y(P)m(ermission)k(is)h(gran)m(ted)f(to)h(cop)m(y)-8
-b(,)38 b(distribute)d(and/or)g(mo)s(dify)f(this)h(do)s(cumen)m(t)g
-(under)390 3866 y(the)j(terms)g(of)g(the)g(GNU)h(F)-8
-b(ree)39 b(Do)s(cumen)m(tation)h(License,)g(V)-8 b(ersion)39
-b(1.3)g(or)f(an)m(y)g(later)390 3975 y(v)m(ersion)28
-b(published)d(b)m(y)j(the)f(F)-8 b(ree)29 b(Soft)m(w)m(are)f(F)-8
-b(oundation;)30 b(with)d(no)g(In)m(v)-5 b(arian)m(t)28
-b(Sections,)390 4085 y(with)i(the)h(F)-8 b(ron)m(t-Co)m(v)m(er)33
-b(texts)e(b)s(eing)g(\\A)g(GNU)g(Man)m(ual",)h(and)e(with)g(the)h(Bac)m
-(k-Co)m(v)m(er)390 4194 y(T)-8 b(exts)33 b(as)g(in)f(\(a\))h(b)s(elo)m
-(w.)47 b(A)33 b(cop)m(y)g(of)f(the)h(license)g(is)g(included)e(in)h
-(the)h(section)g(en)m(titled)390 4304 y(\\GNU)e(F)-8
-b(ree)32 b(Do)s(cumen)m(tation)g(License".)390 4438 y(\(a\))f(The)f
-(FSF's)g(Bac)m(k-Co)m(v)m(er)j(T)-8 b(ext)31 b(is:)41
-b(Y)-8 b(ou)31 b(are)f(free)h(to)f(cop)m(y)h(and)f(mo)s(dify)f(this)h
-(GNU)390 4548 y(man)m(ual.)41 b(Buying)30 b(copies)h(from)e(GNU)i
-(Press)f(supp)s(orts)e(the)i(FSF)g(in)g(dev)m(eloping)h(GNU)390
-4658 y(and)f(promoting)g(soft)m(w)m(are)i(freedom.")150
-4902 y(Published)d(b)m(y)h(the)h(F)-8 b(ree)31 b(Soft)m(w)m(are)h(F)-8
-b(oundation)150 5011 y(59)31 b(T)-8 b(emple)31 b(Place,)h(Suite)e(330,)
-150 5121 y(Boston,)i(MA)e(02111-1307)150 5230 y(USA)p
-eop end
+(Library)f(\(v)m(ersion)i(6.3,)150 4523 y(6)e(Jan)m(uary)f(2014\),)42
+b(a)c(library)f(whic)m(h)h(aids)f(in)h(the)g(consistency)g(of)g(user)f
+(in)m(terface)i(across)f(discrete)150 4633 y(programs)30
+b(whic)m(h)g(pro)m(vide)h(a)f(command)g(line)h(in)m(terface.)150
+4767 y(Cop)m(yrigh)m(t)602 4764 y(c)577 4767 y Fl(\015)f
+Fo(1988{2014)35 b(F)-8 b(ree)31 b(Soft)m(w)m(are)h(F)-8
+b(oundation,)31 b(Inc.)390 4902 y(P)m(ermission)21 b(is)f(gran)m(ted)h
+(to)g(cop)m(y)-8 b(,)24 b(distribute)c(and/or)h(mo)s(dify)e(this)i(do)s
+(cumen)m(t)f(under)f(the)390 5011 y(terms)25 b(of)h(the)f(GNU)h(F)-8
+b(ree)27 b(Do)s(cumen)m(tation)g(License,)g(V)-8 b(ersion)26
+b(1.3)g(or)f(an)m(y)h(later)g(v)m(ersion)390 5121 y(published)43
+b(b)m(y)h(the)h(F)-8 b(ree)46 b(Soft)m(w)m(are)g(F)-8
+b(oundation;)53 b(with)44 b(no)g(In)m(v)-5 b(arian)m(t)46
+b(Sections,)j(no)390 5230 y(F)-8 b(ron)m(t-Co)m(v)m(er)31
+b(T)-8 b(exts,)30 b(and)f(no)f(Bac)m(k-Co)m(v)m(er)k(T)-8
+b(exts.)41 b(A)29 b(cop)m(y)h(of)f(the)g(license)h(is)f(included)390
+5340 y(in)h(the)h(section)g(en)m(titled)h(\\GNU)f(F)-8
+b(ree)32 b(Do)s(cumen)m(tation)g(License".)p eop end
%%Page: -1 3
TeXDict begin -1 2 bop 3725 -116 a Fo(i)150 299 y Fk(T)-13
b(able)53 b(of)h(Con)l(ten)l(ts)150 641 y Fm(1)135 b(Command)45
@@ -3038,7 +5182,7 @@ f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)47
b Fo(4)399 1764 y(1.3.2)93 b(Conditional)31 b(Init)f(Constructs)e
Fi(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)58
-b Fo(10)399 1874 y(1.3.3)93 b(Sample)30 b(Init)g(File)14
+b Fo(11)399 1874 y(1.3.3)93 b(Sample)30 b(Init)g(File)14
b Fi(:)j(:)e(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)44 b Fo(11)275 1983 y(1.4)92
@@ -3356,13 +5500,13 @@ g Fe(inputrc)49 b Fo(\014le,)g(con)m(v)m(en)m(tionally)e(in)d(his)g
(home)150 1924 y(directory)-8 b(.)39 b(The)23 b(name)h(of)f(this)h
(\014le)f(is)g(tak)m(en)i(from)e(the)g(v)-5 b(alue)24
b(of)g(the)f(en)m(vironmen)m(t)h(v)-5 b(ariable)25 b
-Fn(INPUTRC)p Fo(.)150 2033 y(If)34 b(that)g(v)-5 b(ariable)35
-b(is)g(unset,)g(the)f(default)g(is)g(`)p Fn(~/.inputrc)p
-Fo('.)50 b(If)34 b(that)h(\014le)f(do)s(es)g(not)g(exist)h(or)f(cannot)
-150 2143 y(b)s(e)c(read,)g(the)h(ultimate)g(default)g(is)f(`)p
-Fn(/etc/inputrc)p Fo('.)275 2272 y(When)f(a)h(program)f(whic)m(h)h
-(uses)f(the)h(Readline)g(library)f(starts)h(up,)f(the)h(init)g(\014le)f
-(is)h(read,)g(and)f(the)150 2381 y(k)m(ey)i(bindings)e(are)i(set.)275
+Fn(INPUTRC)p Fo(.)150 2033 y(If)30 b(that)g(v)-5 b(ariable)31
+b(is)f(unset,)g(the)h(default)f(is)g Fn(~/.inputrc)p
+Fo(.)38 b(If)30 b(that)g(\014le)h(do)s(es)e(not)i(exist)g(or)f(cannot)h
+(b)s(e)150 2143 y(read,)g(the)f(ultimate)i(default)e(is)h
+Fn(/etc/inputrc)p Fo(.)275 2272 y(When)e(a)h(program)f(whic)m(h)h(uses)
+f(the)h(Readline)g(library)f(starts)h(up,)f(the)h(init)g(\014le)f(is)h
+(read,)g(and)f(the)150 2381 y(k)m(ey)i(bindings)e(are)i(set.)275
2510 y(In)26 b(addition,)i(the)f Fn(C-x)i(C-r)d Fo(command)h(re-reads)g
(this)f(init)h(\014le,)h(th)m(us)f(incorp)s(orating)g(an)m(y)g(c)m
(hanges)150 2620 y(that)k(y)m(ou)g(migh)m(t)g(ha)m(v)m(e)g(made)g(to)g
@@ -3373,7 +5517,7 @@ b(lines)h(are)150 3065 y(ignored.)72 b(Lines)41 b(b)s(eginning)f(with)h
(a)g(`)p Fn(#)p Fo(')g(are)h(commen)m(ts.)73 b(Lines)41
b(b)s(eginning)f(with)g(a)i(`)p Fn($)p Fo(')f(indicate)150
3174 y(conditional)i(constructs)e(\(see)i(Section)f(1.3.2)h
-([Conditional)f(Init)f(Constructs],)j(page)f(10\).)74
+([Conditional)f(Init)f(Constructs],)j(page)f(11\).)74
b(Other)150 3284 y(lines)31 b(denote)g(v)-5 b(ariable)31
b(settings)g(and)f(k)m(ey)h(bindings.)150 3432 y(V)-8
b(ariable)32 b(Settings)630 3542 y(Y)-8 b(ou)41 b(can)g(mo)s(dify)e
@@ -3381,17 +5525,17 @@ b(ariable)32 b(Settings)630 3542 y(Y)-8 b(ou)41 b(can)g(mo)s(dify)e
(the)g(v)-5 b(alues)41 b(of)630 3651 y(v)-5 b(ariables)34
b(in)f(Readline)i(using)e(the)g Fn(set)g Fo(command)g(within)g(the)h
(init)g(\014le.)50 b(The)33 b(syn)m(tax)630 3761 y(is)d(simple:)870
-3890 y Fn(set)47 b Fg(variable)56 b(value)630 4019 y
-Fo(Here,)29 b(for)e(example,)h(is)g(ho)m(w)f(to)h(c)m(hange)g(from)f
-(the)g(default)h(Emacs-lik)m(e)h(k)m(ey)f(binding)e(to)630
-4128 y(use)k Fn(vi)g Fo(line)h(editing)g(commands:)870
-4257 y Fn(set)47 b(editing-mode)d(vi)630 4386 y Fo(V)-8
-b(ariable)36 b(names)f(and)g(v)-5 b(alues,)36 b(where)f(appropriate,)h
-(are)g(recognized)g(without)f(regard)630 4496 y(to)c(case.)42
-b(Unrecognized)31 b(v)-5 b(ariable)31 b(names)g(are)f(ignored.)630
-4624 y(Bo)s(olean)c(v)-5 b(ariables)26 b(\(those)g(that)g(can)f(b)s(e)f
-(set)i(to)g(on)f(or)g(o\013)7 b(\))25 b(are)h(set)f(to)h(on)f(if)g(the)
-g(v)-5 b(alue)26 b(is)630 4734 y(n)m(ull)e(or)g(empt)m(y)-8
+3890 y Fn(set)47 b Fg(variable)e(value)630 4019 y Fo(Here,)29
+b(for)e(example,)h(is)g(ho)m(w)f(to)h(c)m(hange)g(from)f(the)g(default)
+h(Emacs-lik)m(e)h(k)m(ey)f(binding)e(to)630 4128 y(use)k
+Fn(vi)g Fo(line)h(editing)g(commands:)870 4257 y Fn(set)47
+b(editing-mode)d(vi)630 4386 y Fo(V)-8 b(ariable)36 b(names)f(and)g(v)
+-5 b(alues,)36 b(where)f(appropriate,)h(are)g(recognized)g(without)f
+(regard)630 4496 y(to)c(case.)42 b(Unrecognized)31 b(v)-5
+b(ariable)31 b(names)g(are)f(ignored.)630 4624 y(Bo)s(olean)c(v)-5
+b(ariables)26 b(\(those)g(that)g(can)f(b)s(e)f(set)i(to)g(on)f(or)g
+(o\013)7 b(\))25 b(are)h(set)f(to)h(on)f(if)g(the)g(v)-5
+b(alue)26 b(is)630 4734 y(n)m(ull)e(or)g(empt)m(y)-8
b(,)27 b Fe(on)d Fo(\(case-insensitiv)m(e\),)29 b(or)24
b(1.)39 b(An)m(y)25 b(other)f(v)-5 b(alue)25 b(results)f(in)g(the)g(v)
-5 b(ariable)630 4844 y(b)s(eing)30 b(set)h(to)g(o\013.)630
@@ -3409,415 +5553,458 @@ Fn(visible)p Fo(',)32 b(Readline)i(uses)f(a)g(visible)g(b)s(ell)g(if)g
(one)g(is)g(a)m(v)-5 b(ailable.)51 b(If)33 b(set)g(to)1110
408 y(`)p Fn(audible)p Fo(')j(\(the)i(default\),)i(Readline)e(attempts)
g(to)h(ring)e(the)g(terminal's)1110 518 y(b)s(ell.)630
-664 y Fn(bind-tty-special-chars)1110 774 y Fo(If)45 b(set)h(to)f(`)p
+676 y Fn(bind-tty-special-chars)1110 786 y Fo(If)45 b(set)h(to)f(`)p
Fn(on)p Fo(',)50 b(Readline)45 b(attempts)i(to)f(bind)d(the)j(con)m
-(trol)g(c)m(haracters)1110 883 y(treated)36 b(sp)s(ecially)h(b)m(y)e
+(trol)g(c)m(haracters)1110 896 y(treated)36 b(sp)s(ecially)h(b)m(y)e
(the)h(k)m(ernel's)g(terminal)g(driv)m(er)f(to)h(their)f(Readline)1110
-993 y(equiv)-5 b(alen)m(ts.)630 1139 y Fn(comment-begin)1110
-1249 y Fo(The)29 b(string)g(to)h(insert)f(at)h(the)f(b)s(eginning)g(of)
-g(the)h(line)f(when)f(the)i Fn(insert-)1110 1358 y(comment)e
-Fo(command)j(is)f(executed.)42 b(The)29 b(default)i(v)-5
-b(alue)31 b(is)f Fn("#")p Fo(.)630 1504 y Fn(completion-display-width)
-1110 1614 y Fo(The)41 b(n)m(um)m(b)s(er)f(of)i(screen)g(columns)f(used)
-g(to)h(displa)m(y)g(p)s(ossible)f(matc)m(hes)1110 1724
+1005 y(equiv)-5 b(alen)m(ts.)630 1163 y Fn(colored-stats)1110
+1273 y Fo(If)26 b(set)h(to)g(`)p Fn(on)p Fo(',)h(Readline)f(displa)m
+(ys)g(p)s(ossible)f(completions)h(using)f(di\013eren)m(t)1110
+1383 y(colors)40 b(to)g(indicate)g(their)f(\014le)h(t)m(yp)s(e.)67
+b(The)38 b(color)j(de\014nitions)d(are)i(tak)m(en)1110
+1492 y(from)24 b(the)h(v)-5 b(alue)25 b(of)g(the)g Fn(LS_COLORS)d
+Fo(en)m(vironmen)m(t)j(v)-5 b(ariable.)40 b(The)24 b(default)1110
+1602 y(is)30 b(`)p Fn(off)p Fo('.)630 1760 y Fn(comment-begin)1110
+1870 y Fo(The)62 b(string)g(to)h(insert)f(at)h(the)g(b)s(eginning)e(of)
+h(the)h(line)f(when)g(the)1110 1979 y Fn(insert-comment)26
+b Fo(command)31 b(is)f(executed.)42 b(The)30 b(default)g(v)-5
+b(alue)31 b(is)f Fn("#")p Fo(.)630 2138 y Fn(completion-display-width)
+1110 2247 y Fo(The)41 b(n)m(um)m(b)s(er)f(of)i(screen)g(columns)f(used)
+g(to)h(displa)m(y)g(p)s(ossible)f(matc)m(hes)1110 2357
y(when)28 b(p)s(erforming)g(completion.)41 b(The)29 b(v)-5
b(alue)29 b(is)g(ignored)g(if)g(it)h(is)f(less)g(than)1110
-1833 y(0)e(or)f(greater)h(than)f(the)g(terminal)h(screen)f(width.)39
+2466 y(0)e(or)f(greater)h(than)f(the)g(terminal)h(screen)f(width.)39
b(A)26 b(v)-5 b(alue)27 b(of)f(0)h(will)f(cause)1110
-1943 y(matc)m(hes)32 b(to)f(b)s(e)e(displa)m(y)m(ed)i(one)g(p)s(er)e
+2576 y(matc)m(hes)32 b(to)f(b)s(e)e(displa)m(y)m(ed)i(one)g(p)s(er)e
(line.)41 b(The)30 b(default)h(v)-5 b(alue)31 b(is)f(-1.)630
-2089 y Fn(completion-ignore-case)1110 2198 y Fo(If)d(set)h(to)g(`)p
+2734 y Fn(completion-ignore-case)1110 2844 y Fo(If)d(set)h(to)g(`)p
Fn(on)p Fo(',)g(Readline)g(p)s(erforms)e(\014lename)h(matc)m(hing)i
-(and)e(completion)1110 2308 y(in)j(a)h(case-insensitiv)m(e)i(fashion.)
+(and)e(completion)1110 2953 y(in)j(a)h(case-insensitiv)m(e)i(fashion.)
40 b(The)30 b(default)h(v)-5 b(alue)30 b(is)h(`)p Fn(off)p
-Fo('.)630 2454 y Fn(completion-map-case)1110 2564 y Fo(If)22
+Fo('.)630 3112 y Fn(completion-map-case)1110 3221 y Fo(If)22
b(set)g(to)h(`)p Fn(on)p Fo(',)h(and)e Fe(completion-ignore-case)31
-b Fo(is)22 b(enabled,)i(Readline)f(treats)1110 2673 y(h)m(yphens)29
+b Fo(is)22 b(enabled,)i(Readline)f(treats)1110 3331 y(h)m(yphens)29
b(\(`)p Fn(-)p Fo('\))j(and)e(underscores)g(\(`)p Fn(_)p
Fo('\))i(as)f(equiv)-5 b(alen)m(t)32 b(when)e(p)s(erforming)1110
-2783 y(case-insensitiv)m(e)j(\014lename)d(matc)m(hing)i(and)e
-(completion.)630 2929 y Fn(completion-prefix-displa)o(y-le)o(ngth)1110
-3039 y Fo(The)h(length)g(in)g(c)m(haracters)i(of)f(the)f(common)h
-(pre\014x)e(of)h(a)h(list)g(of)f(p)s(ossible)1110 3148
+3440 y(case-insensitiv)m(e)j(\014lename)d(matc)m(hing)i(and)e
+(completion.)630 3599 y Fn(completion-prefix-displa)o(y-le)o(ngth)1110
+3708 y Fo(The)h(length)g(in)g(c)m(haracters)i(of)f(the)f(common)h
+(pre\014x)e(of)h(a)h(list)g(of)f(p)s(ossible)1110 3818
y(completions)g(that)f(is)g(displa)m(y)m(ed)g(without)g(mo)s
-(di\014cation.)41 b(When)29 b(set)h(to)h(a)1110 3258
+(di\014cation.)41 b(When)29 b(set)h(to)h(a)1110 3927
y(v)-5 b(alue)26 b(greater)h(than)e(zero,)j(common)e(pre\014xes)e
-(longer)j(than)e(this)g(v)-5 b(alue)27 b(are)1110 3367
+(longer)j(than)e(this)g(v)-5 b(alue)27 b(are)1110 4037
y(replaced)k(with)f(an)g(ellipsis)h(when)e(displa)m(ying)i(p)s(ossible)
-f(completions.)630 3513 y Fn(completion-query-items)1110
-3623 y Fo(The)c(n)m(um)m(b)s(er)f(of)h(p)s(ossible)g(completions)h
-(that)g(determines)f(when)f(the)i(user)1110 3733 y(is)i(ask)m(ed)h
+f(completions.)630 4195 y Fn(completion-query-items)1110
+4305 y Fo(The)c(n)m(um)m(b)s(er)f(of)h(p)s(ossible)g(completions)h
+(that)g(determines)f(when)f(the)i(user)1110 4415 y(is)i(ask)m(ed)h
(whether)f(the)h(list)g(of)f(p)s(ossibilities)h(should)e(b)s(e)h
-(displa)m(y)m(ed.)41 b(If)29 b(the)1110 3842 y(n)m(um)m(b)s(er)d(of)h
+(displa)m(y)m(ed.)41 b(If)29 b(the)1110 4524 y(n)m(um)m(b)s(er)d(of)h
(p)s(ossible)f(completions)i(is)f(greater)h(than)e(this)h(v)-5
-b(alue,)28 b(Readline)1110 3952 y(will)f(ask)g(the)f(user)g(whether)g
+b(alue,)28 b(Readline)1110 4634 y(will)f(ask)g(the)f(user)g(whether)g
(or)g(not)h(he)f(wishes)g(to)i(view)e(them;)i(otherwise,)1110
-4061 y(they)d(are)f(simply)g(listed.)40 b(This)23 b(v)-5
+4743 y(they)d(are)f(simply)g(listed.)40 b(This)23 b(v)-5
b(ariable)25 b(m)m(ust)g(b)s(e)e(set)i(to)g(an)g(in)m(teger)g(v)-5
-b(alue)1110 4171 y(greater)26 b(than)f(or)f(equal)i(to)f(0.)40
+b(alue)1110 4853 y(greater)26 b(than)f(or)f(equal)i(to)f(0.)40
b(A)24 b(negativ)m(e)j(v)-5 b(alue)26 b(means)e(Readline)i(should)1110
-4281 y(nev)m(er)31 b(ask.)41 b(The)29 b(default)i(limit)g(is)g
-Fn(100)p Fo(.)630 4427 y Fn(convert-meta)1110 4536 y
+4963 y(nev)m(er)31 b(ask.)41 b(The)29 b(default)i(limit)g(is)g
+Fn(100)p Fo(.)630 5121 y Fn(convert-meta)1110 5230 y
Fo(If)22 b(set)g(to)h(`)p Fn(on)p Fo(',)h(Readline)f(will)f(con)m(v)m
(ert)i(c)m(haracters)f(with)f(the)g(eigh)m(th)h(bit)f(set)1110
-4646 y(to)33 b(an)e Fh(asci)r(i)h Fo(k)m(ey)h(sequence)f(b)m(y)g
-(stripping)f(the)h(eigh)m(th)h(bit)f(and)f(pre\014xing)1110
-4756 y(an)24 b Fn(ESC)g Fo(c)m(haracter,)j(con)m(v)m(erting)f(them)f
-(to)g(a)g(meta-pre\014xed)f(k)m(ey)h(sequence.)1110 4865
-y(The)30 b(default)g(v)-5 b(alue)31 b(is)g(`)p Fn(on)p
-Fo('.)630 5011 y Fn(disable-completion)1110 5121 y Fo(If)36
-b(set)h(to)h(`)p Fn(On)p Fo(',)g(Readline)f(will)g(inhibit)f(w)m(ord)h
-(completion.)60 b(Completion)1110 5230 y(c)m(haracters)28
-b(will)e(b)s(e)f(inserted)h(in)m(to)h(the)g(line)f(as)g(if)g(they)h
-(had)e(b)s(een)g(mapp)s(ed)1110 5340 y(to)31 b Fn(self-insert)p
-Fo(.)38 b(The)30 b(default)g(is)h(`)p Fn(off)p Fo('.)p
+5340 y(to)33 b(an)e Fh(asci)r(i)h Fo(k)m(ey)h(sequence)f(b)m(y)g
+(stripping)f(the)h(eigh)m(th)h(bit)f(and)f(pre\014xing)p
eop end
%%Page: 6 9
TeXDict begin 6 8 bop 150 -116 a Fo(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2153 b(6)630 299 y Fn(editing-mode)1110
-408 y Fo(The)28 b Fn(editing-mode)e Fo(v)-5 b(ariable)29
-b(con)m(trols)h(whic)m(h)e(default)h(set)h(of)e(k)m(ey)i(bind-)1110
-518 y(ings)25 b(is)g(used.)38 b(By)26 b(default,)g(Readline)g(starts)f
-(up)f(in)h(Emacs)g(editing)h(mo)s(de,)1110 628 y(where)j(the)g(k)m
-(eystrok)m(es)i(are)e(most)h(similar)f(to)h(Emacs.)40
-b(This)29 b(v)-5 b(ariable)30 b(can)1110 737 y(b)s(e)g(set)h(to)g
-(either)g(`)p Fn(emacs)p Fo(')e(or)h(`)p Fn(vi)p Fo('.)630
-883 y Fn(echo-control-characters)1110 993 y Fo(When)g(set)h(to)g(`)p
+b(Command)29 b(Line)i(Editing)2153 b(6)1110 299 y(an)24
+b Fn(ESC)g Fo(c)m(haracter,)j(con)m(v)m(erting)f(them)f(to)g(a)g
+(meta-pre\014xed)f(k)m(ey)h(sequence.)1110 408 y(The)30
+b(default)g(v)-5 b(alue)31 b(is)g(`)p Fn(on)p Fo('.)630
+555 y Fn(disable-completion)1110 664 y Fo(If)36 b(set)h(to)h(`)p
+Fn(On)p Fo(',)g(Readline)f(will)g(inhibit)f(w)m(ord)h(completion.)60
+b(Completion)1110 774 y(c)m(haracters)28 b(will)e(b)s(e)f(inserted)h
+(in)m(to)h(the)g(line)f(as)g(if)g(they)h(had)e(b)s(een)g(mapp)s(ed)1110
+883 y(to)31 b Fn(self-insert)p Fo(.)38 b(The)30 b(default)g(is)h(`)p
+Fn(off)p Fo('.)630 1029 y Fn(editing-mode)1110 1139 y
+Fo(The)d Fn(editing-mode)e Fo(v)-5 b(ariable)29 b(con)m(trols)h(whic)m
+(h)e(default)h(set)h(of)e(k)m(ey)i(bind-)1110 1249 y(ings)25
+b(is)g(used.)38 b(By)26 b(default,)g(Readline)g(starts)f(up)f(in)h
+(Emacs)g(editing)h(mo)s(de,)1110 1358 y(where)j(the)g(k)m(eystrok)m(es)
+i(are)e(most)h(similar)f(to)h(Emacs.)40 b(This)29 b(v)-5
+b(ariable)30 b(can)1110 1468 y(b)s(e)g(set)h(to)g(either)g(`)p
+Fn(emacs)p Fo(')e(or)h(`)p Fn(vi)p Fo('.)630 1614 y Fn
+(echo-control-characters)1110 1724 y Fo(When)g(set)h(to)g(`)p
Fn(on)p Fo(',)f(on)g(op)s(erating)h(systems)f(that)h(indicate)g(they)g
-(supp)s(ort)1110 1103 y(it,)i(readline)e(ec)m(ho)s(es)i(a)f(c)m
+(supp)s(ort)1110 1833 y(it,)i(readline)e(ec)m(ho)s(es)i(a)f(c)m
(haracter)h(corresp)s(onding)d(to)j(a)f(signal)g(generated)1110
-1212 y(from)e(the)g(k)m(eyb)s(oard.)41 b(The)30 b(default)g(is)h(`)p
-Fn(on)p Fo('.)630 1358 y Fn(enable-keypad)1110 1468 y
+1943 y(from)e(the)g(k)m(eyb)s(oard.)41 b(The)30 b(default)g(is)h(`)p
+Fn(on)p Fo('.)630 2089 y Fn(enable-keypad)1110 2198 y
Fo(When)23 b(set)h(to)g(`)p Fn(on)p Fo(',)h(Readline)f(will)g(try)f(to)
-h(enable)g(the)f(application)i(k)m(eypad)1110 1577 y(when)h(it)h(is)f
+h(enable)g(the)f(application)i(k)m(eypad)1110 2308 y(when)h(it)h(is)f
(called.)41 b(Some)27 b(systems)f(need)h(this)f(to)h(enable)g(the)g
-(arro)m(w)g(k)m(eys.)1110 1687 y(The)j(default)g(is)h(`)p
-Fn(off)p Fo('.)630 1833 y Fn(enable-meta-key)1110 1943
+(arro)m(w)g(k)m(eys.)1110 2418 y(The)j(default)g(is)h(`)p
+Fn(off)p Fo('.)630 2564 y Fn(enable-meta-key)1110 2673
y Fo(When)40 b(set)g(to)g(`)p Fn(on)p Fo(',)j(Readline)d(will)g(try)g
-(to)g(enable)g(an)m(y)g(meta)h(mo)s(di\014er)1110 2052
+(to)g(enable)g(an)m(y)g(meta)h(mo)s(di\014er)1110 2783
y(k)m(ey)i(the)e(terminal)i(claims)f(to)h(supp)s(ort)d(when)h(it)h(is)g
-(called.)76 b(On)41 b(man)m(y)1110 2162 y(terminals,)c(the)e(meta)h(k)m
+(called.)76 b(On)41 b(man)m(y)1110 2892 y(terminals,)c(the)e(meta)h(k)m
(ey)g(is)f(used)g(to)h(send)e(eigh)m(t-bit)j(c)m(haracters.)56
-b(The)1110 2271 y(default)31 b(is)f(`)p Fn(on)p Fo('.)630
-2418 y Fn(expand-tilde)1110 2527 y Fo(If)d(set)h(to)h(`)p
+b(The)1110 3002 y(default)31 b(is)f(`)p Fn(on)p Fo('.)630
+3148 y Fn(expand-tilde)1110 3258 y Fo(If)d(set)h(to)h(`)p
Fn(on)p Fo(',)f(tilde)g(expansion)g(is)f(p)s(erformed)f(when)h
-(Readline)h(attempts)1110 2637 y(w)m(ord)i(completion.)42
-b(The)30 b(default)g(is)h(`)p Fn(off)p Fo('.)630 2783
-y Fn(history-preserve-point)1110 2892 y Fo(If)41 b(set)h(to)h(`)p
+(Readline)h(attempts)1110 3367 y(w)m(ord)i(completion.)42
+b(The)30 b(default)g(is)h(`)p Fn(off)p Fo('.)630 3513
+y Fn(history-preserve-point)1110 3623 y Fo(If)41 b(set)h(to)h(`)p
Fn(on)p Fo(',)i(the)c(history)h(co)s(de)g(attempts)h(to)f(place)h(the)f
-(p)s(oin)m(t)f(\(the)1110 3002 y(curren)m(t)35 b(cursor)g(p)s
+(p)s(oin)m(t)f(\(the)1110 3733 y(curren)m(t)35 b(cursor)g(p)s
(osition\))g(at)h(the)g(same)f(lo)s(cation)i(on)e(eac)m(h)h(history)g
-(line)1110 3112 y(retriev)m(ed)h(with)f Fn(previous-history)c
+(line)1110 3842 y(retriev)m(ed)h(with)f Fn(previous-history)c
Fo(or)37 b Fn(next-history)p Fo(.)55 b(The)36 b(default)1110
-3221 y(is)30 b(`)p Fn(off)p Fo('.)630 3367 y Fn(history-size)1110
-3477 y Fo(Set)39 b(the)g(maxim)m(um)g(n)m(um)m(b)s(er)f(of)h(history)g
-(en)m(tries)h(sa)m(v)m(ed)g(in)f(the)g(history)1110 3587
-y(list.)53 b(If)34 b(set)h(to)g(zero,)i(the)d(n)m(um)m(b)s(er)g(of)g
-(en)m(tries)h(in)f(the)h(history)f(list)h(is)g(not)1110
-3696 y(limited.)630 3842 y Fn(horizontal-scroll-mode)1110
-3952 y Fo(This)g(v)-5 b(ariable)37 b(can)f(b)s(e)f(set)h(to)h(either)f
-(`)p Fn(on)p Fo(')g(or)g(`)p Fn(off)p Fo('.)57 b(Setting)36
-b(it)g(to)h(`)p Fn(on)p Fo(')1110 4061 y(means)26 b(that)h(the)f(text)h
+3952 y(is)30 b(`)p Fn(off)p Fo('.)630 4098 y Fn(history-size)1110
+4208 y Fo(Set)39 b(the)g(maxim)m(um)g(n)m(um)m(b)s(er)f(of)h(history)g
+(en)m(tries)h(sa)m(v)m(ed)g(in)f(the)g(history)1110 4317
+y(list.)51 b(If)34 b(set)g(to)h(zero,)g(an)m(y)f(existing)h(history)f
+(en)m(tries)g(are)g(deleted)h(and)e(no)1110 4427 y(new)e(en)m(tries)i
+(are)f(sa)m(v)m(ed.)46 b(If)31 b(set)h(to)h(a)f(v)-5
+b(alue)32 b(less)g(than)f(zero,)i(the)f(n)m(um)m(b)s(er)1110
+4536 y(of)f(history)f(en)m(tries)h(is)g(not)g(limited.)42
+b(By)30 b(default,)h(the)g(n)m(um)m(b)s(er)e(of)i(history)1110
+4646 y(en)m(tries)g(is)g(not)f(limited.)630 4792 y Fn
+(horizontal-scroll-mode)1110 4902 y Fo(This)35 b(v)-5
+b(ariable)37 b(can)f(b)s(e)f(set)h(to)h(either)f(`)p
+Fn(on)p Fo(')g(or)g(`)p Fn(off)p Fo('.)57 b(Setting)36
+b(it)g(to)h(`)p Fn(on)p Fo(')1110 5011 y(means)26 b(that)h(the)f(text)h
(of)g(the)f(lines)g(b)s(eing)g(edited)h(will)f(scroll)h(horizon)m
-(tally)1110 4171 y(on)32 b(a)g(single)g(screen)g(line)g(when)e(they)i
-(are)g(longer)h(than)e(the)h(width)f(of)h(the)1110 4281
+(tally)1110 5121 y(on)32 b(a)g(single)g(screen)g(line)g(when)e(they)i
+(are)g(longer)h(than)e(the)h(width)f(of)h(the)1110 5230
y(screen,)27 b(instead)g(of)f(wrapping)f(on)m(to)i(a)f(new)g(screen)g
-(line.)39 b(By)27 b(default,)g(this)1110 4390 y(v)-5
-b(ariable)31 b(is)g(set)f(to)i(`)p Fn(off)p Fo('.)630
-4536 y Fn(input-meta)1110 4646 y Fo(If)f(set)g(to)h(`)p
-Fn(on)p Fo(',)g(Readline)g(will)f(enable)h(eigh)m(t-bit)h(input)d(\(it)
-i(will)f(not)h(clear)1110 4756 y(the)40 b(eigh)m(th)g(bit)g(in)f(the)h
-(c)m(haracters)h(it)f(reads\),)j(regardless)c(of)h(what)g(the)1110
-4865 y(terminal)g(claims)h(it)g(can)f(supp)s(ort.)68
-b(The)39 b(default)h(v)-5 b(alue)40 b(is)g(`)p Fn(off)p
-Fo('.)69 b(The)1110 4975 y(name)30 b Fn(meta-flag)e Fo(is)j(a)f(synon)m
-(ym)g(for)g(this)h(v)-5 b(ariable.)630 5121 y Fn(isearch-terminators)
-1110 5230 y Fo(The)51 b(string)h(of)g(c)m(haracters)h(that)f(should)e
-(terminate)j(an)f(incremen)m(tal)1110 5340 y(searc)m(h)25
-b(without)g(subsequen)m(tly)g(executing)h(the)f(c)m(haracter)h(as)f(a)g
-(command)p eop end
+(line.)39 b(By)27 b(default,)g(this)1110 5340 y(v)-5
+b(ariable)31 b(is)g(set)f(to)i(`)p Fn(off)p Fo('.)p eop
+end
%%Page: 7 10
TeXDict begin 7 9 bop 150 -116 a Fo(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2153 b(7)1110 299 y(\(see)45
-b(Section)h(1.2.5)g([Searc)m(hing],)j(page)d(3\).)84
-b(If)44 b(this)g(v)-5 b(ariable)45 b(has)g(not)1110 408
+b(Command)29 b(Line)i(Editing)2153 b(7)630 299 y Fn(input-meta)1110
+408 y Fo(If)31 b(set)g(to)h(`)p Fn(on)p Fo(',)g(Readline)g(will)f
+(enable)h(eigh)m(t-bit)h(input)d(\(it)i(will)f(not)h(clear)1110
+518 y(the)40 b(eigh)m(th)g(bit)g(in)f(the)h(c)m(haracters)h(it)f
+(reads\),)j(regardless)c(of)h(what)g(the)1110 628 y(terminal)g(claims)h
+(it)g(can)f(supp)s(ort.)68 b(The)39 b(default)h(v)-5
+b(alue)40 b(is)g(`)p Fn(off)p Fo('.)69 b(The)1110 737
+y(name)30 b Fn(meta-flag)e Fo(is)j(a)f(synon)m(ym)g(for)g(this)h(v)-5
+b(ariable.)630 894 y Fn(isearch-terminators)1110 1003
+y Fo(The)51 b(string)h(of)g(c)m(haracters)h(that)f(should)e(terminate)j
+(an)f(incremen)m(tal)1110 1113 y(searc)m(h)25 b(without)g(subsequen)m
+(tly)g(executing)h(the)f(c)m(haracter)h(as)f(a)g(command)1110
+1223 y(\(see)45 b(Section)h(1.2.5)g([Searc)m(hing],)j(page)d(3\).)84
+b(If)44 b(this)g(v)-5 b(ariable)45 b(has)g(not)1110 1332
y(b)s(een)35 b(giv)m(en)h(a)g(v)-5 b(alue,)37 b(the)f(c)m(haracters)h
Fn(ESC)d Fo(and)h Fg(C-J)g Fo(will)h(terminate)g(an)1110
-518 y(incremen)m(tal)c(searc)m(h.)630 689 y Fn(keymap)192
+1442 y(incremen)m(tal)c(searc)m(h.)630 1598 y Fn(keymap)192
b Fo(Sets)39 b(Readline's)g(idea)h(of)f(the)g(curren)m(t)f(k)m(eymap)h
-(for)g(k)m(ey)g(binding)f(com-)1110 798 y(mands.)81 b(Acceptable)47
-b Fn(keymap)42 b Fo(names)i(are)h Fn(emacs)p Fo(,)i Fn(emacs-standard)p
-Fo(,)1110 908 y Fn(emacs-meta)p Fo(,)99 b Fn(emacs-ctlx)p
-Fo(,)f Fn(vi)p Fo(,)j Fn(vi-move)p Fo(,)f Fn(vi-command)p
-Fo(,)f(and)1110 1017 y Fn(vi-insert)p Fo(.)64 b Fn(vi)38
-b Fo(is)h(equiv)-5 b(alen)m(t)41 b(to)e Fn(vi-command)p
-Fo(;)i Fn(emacs)c Fo(is)i(equiv)-5 b(alen)m(t)1110 1127
-y(to)33 b Fn(emacs-standard)p Fo(.)41 b(The)31 b(default)h(v)-5
+(for)g(k)m(ey)g(binding)f(com-)1110 1708 y(mands.)81
+b(Acceptable)47 b Fn(keymap)42 b Fo(names)i(are)h Fn(emacs)p
+Fo(,)i Fn(emacs-standard)p Fo(,)1110 1817 y Fn(emacs-meta)p
+Fo(,)99 b Fn(emacs-ctlx)p Fo(,)f Fn(vi)p Fo(,)j Fn(vi-move)p
+Fo(,)f Fn(vi-command)p Fo(,)f(and)1110 1927 y Fn(vi-insert)p
+Fo(.)64 b Fn(vi)38 b Fo(is)h(equiv)-5 b(alen)m(t)41 b(to)e
+Fn(vi-command)p Fo(;)i Fn(emacs)c Fo(is)i(equiv)-5 b(alen)m(t)1110
+2037 y(to)33 b Fn(emacs-standard)p Fo(.)41 b(The)31 b(default)h(v)-5
b(alue)32 b(is)g Fn(emacs)p Fo(.)44 b(The)31 b(v)-5 b(alue)33
-b(of)f(the)1110 1236 y Fn(editing-mode)27 b Fo(v)-5 b(ariable)31
-b(also)h(a\013ects)f(the)g(default)f(k)m(eymap.)630 1407
-y Fn(mark-directories)1110 1517 y Fo(If)38 b(set)g(to)h(`)p
-Fn(on)p Fo(',)i(completed)e(directory)f(names)g(ha)m(v)m(e)i(a)e(slash)
-g(app)s(ended.)1110 1626 y(The)30 b(default)g(is)h(`)p
-Fn(on)p Fo('.)630 1797 y Fn(mark-modified-lines)1110
-1906 y Fo(This)k(v)-5 b(ariable,)38 b(when)d(set)h(to)h(`)p
-Fn(on)p Fo(',)g(causes)g(Readline)f(to)h(displa)m(y)f(an)f(as-)1110
-2016 y(terisk)f(\(`)p Fn(*)p Fo('\))h(at)f(the)g(start)g(of)g(history)g
-(lines)g(whic)m(h)f(ha)m(v)m(e)i(b)s(een)e(mo)s(di\014ed.)1110
-2125 y(This)d(v)-5 b(ariable)31 b(is)f(`)p Fn(off)p Fo(')g(b)m(y)g
-(default.)630 2296 y Fn(mark-symlinked-directori)o(es)1110
-2405 y Fo(If)44 b(set)h(to)h(`)p Fn(on)p Fo(',)i(completed)e(names)f
-(whic)m(h)f(are)h(sym)m(b)s(olic)g(links)g(to)g(di-)1110
-2515 y(rectories)j(ha)m(v)m(e)f(a)g(slash)f(app)s(ended)e(\(sub)5
-b(ject)47 b(to)g(the)f(v)-5 b(alue)47 b(of)f Fn(mark-)1110
-2625 y(directories)p Fo(\).)38 b(The)30 b(default)g(is)h(`)p
-Fn(off)p Fo('.)630 2795 y Fn(match-hidden-files)1110
-2905 y Fo(This)21 b(v)-5 b(ariable,)25 b(when)d(set)g(to)h(`)p
-Fn(on)p Fo(',)h(causes)f(Readline)g(to)g(matc)m(h)g(\014les)f(whose)
-1110 3014 y(names)44 b(b)s(egin)g(with)g(a)g(`)p Fn(.)p
-Fo(')g(\(hidden)f(\014les\))i(when)e(p)s(erforming)g(\014lename)1110
-3124 y(completion.)75 b(If)41 b(set)g(to)h(`)p Fn(off)p
-Fo(',)i(the)e(leading)g(`)p Fn(.)p Fo(')f(m)m(ust)g(b)s(e)g(supplied)f
-(b)m(y)1110 3233 y(the)34 b(user)g(in)g(the)g(\014lename)g(to)h(b)s(e)f
-(completed.)53 b(This)33 b(v)-5 b(ariable)35 b(is)f(`)p
-Fn(on)p Fo(')g(b)m(y)1110 3343 y(default.)630 3513 y
-Fn(menu-complete-display-pr)o(efix)1110 3623 y Fo(If)f(set)h(to)g(`)p
-Fn(on)p Fo(',)h(men)m(u)e(completion)i(displa)m(ys)e(the)h(common)g
-(pre\014x)e(of)i(the)1110 3733 y(list)k(of)g(p)s(ossible)f(completions)
-i(\(whic)m(h)e(ma)m(y)h(b)s(e)f(empt)m(y\))i(b)s(efore)e(cycling)1110
-3842 y(through)30 b(the)g(list.)42 b(The)29 b(default)i(is)f(`)p
-Fn(off)p Fo('.)630 4013 y Fn(output-meta)1110 4122 y
-Fo(If)35 b(set)h(to)g(`)p Fn(on)p Fo(',)h(Readline)f(will)g(displa)m(y)
-f(c)m(haracters)i(with)e(the)h(eigh)m(th)g(bit)1110 4232
-y(set)h(directly)g(rather)f(than)g(as)h(a)g(meta-pre\014xed)f(escap)s
-(e)h(sequence.)59 b(The)1110 4341 y(default)31 b(is)f(`)p
-Fn(off)p Fo('.)630 4512 y Fn(page-completions)1110 4622
-y Fo(If)j(set)i(to)f(`)p Fn(on)p Fo(',)h(Readline)g(uses)e(an)h(in)m
-(ternal)h Fn(more)p Fo(-lik)m(e)f(pager)g(to)h(displa)m(y)1110
-4731 y(a)e(screenful)f(of)g(p)s(ossible)g(completions)i(at)f(a)g(time.)
-47 b(This)31 b(v)-5 b(ariable)34 b(is)e(`)p Fn(on)p Fo(')1110
-4841 y(b)m(y)e(default.)630 5011 y Fn(print-completions-horizo)o(ntal)o
-(ly)1110 5121 y Fo(If)23 b(set)i(to)g(`)p Fn(on)p Fo(',)g(Readline)g
-(will)f(displa)m(y)g(completions)h(with)f(matc)m(hes)h(sorted)1110
-5230 y(horizon)m(tally)45 b(in)e(alphab)s(etical)i(order,)i(rather)c
-(than)g(do)m(wn)g(the)h(screen.)1110 5340 y(The)30 b(default)g(is)h(`)p
-Fn(off)p Fo('.)p eop end
+b(of)f(the)1110 2146 y Fn(editing-mode)27 b Fo(v)-5 b(ariable)31
+b(also)h(a\013ects)f(the)g(default)f(k)m(eymap.)630 2303
+y Fn(keyseq-timeout)1110 2412 y Fo(Sp)s(eci\014es)25
+b(the)g(duration)g(Readline)h(will)g(w)m(ait)g(for)g(a)f(c)m(haracter)i
+(when)e(read-)1110 2522 y(ing)30 b(an)g(am)m(biguous)g(k)m(ey)h
+(sequence)f(\(one)g(that)h(can)f(form)g(a)g(complete)h(k)m(ey)1110
+2632 y(sequence)j(using)e(the)i(input)e(read)h(so)g(far,)h(or)g(can)f
+(tak)m(e)i(additional)f(input)1110 2741 y(to)g(complete)g(a)f(longer)h
+(k)m(ey)f(sequence\).)49 b(If)33 b(no)f(input)g(is)h(receiv)m(ed)h
+(within)1110 2851 y(the)43 b(timeout,)48 b(Readline)43
+b(will)g(use)g(the)g(shorter)g(but)f(complete)j(k)m(ey)e(se-)1110
+2960 y(quence.)c(Readline)26 b(uses)f(this)h(v)-5 b(alue)26
+b(to)g(determine)g(whether)f(or)g(not)h(input)1110 3070
+y(is)31 b(a)m(v)-5 b(ailable)33 b(on)d(the)h(curren)m(t)f(input)g
+(source)h(\()p Fn(rl_instream)d Fo(b)m(y)i(default\).)1110
+3180 y(The)25 b(v)-5 b(alue)26 b(is)f(sp)s(eci\014ed)f(in)h
+(milliseconds,)j(so)d(a)h(v)-5 b(alue)26 b(of)f(1000)i(means)e(that)
+1110 3289 y(Readline)e(will)g(w)m(ait)g(one)g(second)f(for)g
+(additional)i(input.)37 b(If)22 b(this)g(v)-5 b(ariable)23
+b(is)1110 3399 y(set)28 b(to)h(a)f(v)-5 b(alue)29 b(less)f(than)g(or)f
+(equal)i(to)f(zero,)i(or)e(to)g(a)h(non-n)m(umeric)e(v)-5
+b(alue,)1110 3508 y(Readline)30 b(will)f(w)m(ait)i(un)m(til)e(another)h
+(k)m(ey)g(is)f(pressed)g(to)h(decide)f(whic)m(h)g(k)m(ey)1110
+3618 y(sequence)i(to)g(complete.)42 b(The)30 b(default)g(v)-5
+b(alue)31 b(is)g Fn(500)p Fo(.)630 3774 y Fn(mark-directories)1110
+3884 y Fo(If)38 b(set)g(to)h(`)p Fn(on)p Fo(',)i(completed)e(directory)
+f(names)g(ha)m(v)m(e)i(a)e(slash)g(app)s(ended.)1110
+3994 y(The)30 b(default)g(is)h(`)p Fn(on)p Fo('.)630
+4150 y Fn(mark-modified-lines)1110 4260 y Fo(This)k(v)-5
+b(ariable,)38 b(when)d(set)h(to)h(`)p Fn(on)p Fo(',)g(causes)g
+(Readline)f(to)h(displa)m(y)f(an)f(as-)1110 4369 y(terisk)f(\(`)p
+Fn(*)p Fo('\))h(at)f(the)g(start)g(of)g(history)g(lines)g(whic)m(h)f
+(ha)m(v)m(e)i(b)s(een)e(mo)s(di\014ed.)1110 4479 y(This)d(v)-5
+b(ariable)31 b(is)f(`)p Fn(off)p Fo(')g(b)m(y)g(default.)630
+4635 y Fn(mark-symlinked-directori)o(es)1110 4745 y Fo(If)59
+b(set)h(to)g(`)p Fn(on)p Fo(',)67 b(completed)60 b(names)f(whic)m(h)g
+(are)h(sym)m(b)s(olic)g(links)f(to)1110 4855 y(directories)71
+b(ha)m(v)m(e)f(a)g(slash)f(app)s(ended)f(\(sub)5 b(ject)70
+b(to)g(the)g(v)-5 b(alue)70 b(of)1110 4964 y Fn(mark-directories)p
+Fo(\).)37 b(The)30 b(default)g(is)g(`)p Fn(off)p Fo('.)630
+5121 y Fn(match-hidden-files)1110 5230 y Fo(This)21 b(v)-5
+b(ariable,)25 b(when)d(set)g(to)h(`)p Fn(on)p Fo(',)h(causes)f
+(Readline)g(to)g(matc)m(h)g(\014les)f(whose)1110 5340
+y(names)44 b(b)s(egin)g(with)g(a)g(`)p Fn(.)p Fo(')g(\(hidden)f
+(\014les\))i(when)e(p)s(erforming)g(\014lename)p eop
+end
%%Page: 8 11
TeXDict begin 8 10 bop 150 -116 a Fo(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2153 b(8)630 299 y Fn
-(revert-all-at-newline)1110 408 y Fo(If)29 b(set)h(to)g(`)p
-Fn(on)p Fo(',)g(Readline)g(will)g(undo)f(all)h(c)m(hanges)h(to)f
-(history)g(lines)f(b)s(efore)1110 518 y(returning)f(when)f
-Fn(accept-line)f Fo(is)j(executed.)41 b(By)29 b(default,)g(history)g
-(lines)1110 628 y(ma)m(y)42 b(b)s(e)g(mo)s(di\014ed)e(and)h(retain)i
-(individual)e(undo)g(lists)h(across)g(calls)h(to)1110
-737 y Fn(readline)p Fo(.)38 b(The)30 b(default)h(is)f(`)p
-Fn(off)p Fo('.)630 902 y Fn(show-all-if-ambiguous)1110
-1011 y Fo(This)f(alters)i(the)f(default)g(b)s(eha)m(vior)g(of)g(the)h
-(completion)g(functions.)40 b(If)29 b(set)1110 1121 y(to)f(`)p
-Fn(on)p Fo(',)g(w)m(ords)f(whic)m(h)g(ha)m(v)m(e)i(more)f(than)f(one)h
-(p)s(ossible)f(completion)h(cause)1110 1230 y(the)39
-b(matc)m(hes)h(to)g(b)s(e)e(listed)h(immediately)i(instead)e(of)g
-(ringing)g(the)g(b)s(ell.)1110 1340 y(The)30 b(default)g(v)-5
-b(alue)31 b(is)g(`)p Fn(off)p Fo('.)630 1504 y Fn
-(show-all-if-unmodified)1110 1614 y Fo(This)38 b(alters)h(the)g
-(default)g(b)s(eha)m(vior)g(of)f(the)h(completion)h(functions)e(in)h(a)
-1110 1724 y(fashion)25 b(similar)g(to)h Fe(sho)m(w-all-if-am)m(biguous)
-t Fo(.)41 b(If)24 b(set)i(to)f(`)p Fn(on)p Fo(',)i(w)m(ords)d(whic)m(h)
-1110 1833 y(ha)m(v)m(e)32 b(more)f(than)f(one)i(p)s(ossible)e
-(completion)i(without)f(an)m(y)g(p)s(ossible)f(par-)1110
-1943 y(tial)43 b(completion)h(\(the)f(p)s(ossible)f(completions)h
-(don't)f(share)g(a)h(common)1110 2052 y(pre\014x\))30
-b(cause)g(the)h(matc)m(hes)g(to)g(b)s(e)f(listed)g(immediately)i
-(instead)e(of)h(ring-)1110 2162 y(ing)g(the)f(b)s(ell.)41
+b(Command)29 b(Line)i(Editing)2153 b(8)1110 299 y(completion.)75
+b(If)41 b(set)g(to)h(`)p Fn(off)p Fo(',)i(the)e(leading)g(`)p
+Fn(.)p Fo(')f(m)m(ust)g(b)s(e)g(supplied)f(b)m(y)1110
+408 y(the)34 b(user)g(in)g(the)g(\014lename)g(to)h(b)s(e)f(completed.)
+53 b(This)33 b(v)-5 b(ariable)35 b(is)f(`)p Fn(on)p Fo(')g(b)m(y)1110
+518 y(default.)630 664 y Fn(menu-complete-display-pr)o(efix)1110
+774 y Fo(If)f(set)h(to)g(`)p Fn(on)p Fo(',)h(men)m(u)e(completion)i
+(displa)m(ys)e(the)h(common)g(pre\014x)e(of)i(the)1110
+883 y(list)k(of)g(p)s(ossible)f(completions)i(\(whic)m(h)e(ma)m(y)h(b)s
+(e)f(empt)m(y\))i(b)s(efore)e(cycling)1110 993 y(through)30
+b(the)g(list.)42 b(The)29 b(default)i(is)f(`)p Fn(off)p
+Fo('.)630 1139 y Fn(output-meta)1110 1249 y Fo(If)35
+b(set)h(to)g(`)p Fn(on)p Fo(',)h(Readline)f(will)g(displa)m(y)f(c)m
+(haracters)i(with)e(the)h(eigh)m(th)g(bit)1110 1358 y(set)h(directly)g
+(rather)f(than)g(as)h(a)g(meta-pre\014xed)f(escap)s(e)h(sequence.)59
+b(The)1110 1468 y(default)31 b(is)f(`)p Fn(off)p Fo('.)630
+1614 y Fn(page-completions)1110 1724 y Fo(If)j(set)i(to)f(`)p
+Fn(on)p Fo(',)h(Readline)g(uses)e(an)h(in)m(ternal)h
+Fn(more)p Fo(-lik)m(e)f(pager)g(to)h(displa)m(y)1110
+1833 y(a)e(screenful)f(of)g(p)s(ossible)g(completions)i(at)f(a)g(time.)
+47 b(This)31 b(v)-5 b(ariable)34 b(is)e(`)p Fn(on)p Fo(')1110
+1943 y(b)m(y)e(default.)630 2089 y Fn(print-completions-horizo)o(ntal)o
+(ly)1110 2198 y Fo(If)23 b(set)i(to)g(`)p Fn(on)p Fo(',)g(Readline)g
+(will)f(displa)m(y)g(completions)h(with)f(matc)m(hes)h(sorted)1110
+2308 y(horizon)m(tally)45 b(in)e(alphab)s(etical)i(order,)i(rather)c
+(than)g(do)m(wn)g(the)h(screen.)1110 2418 y(The)30 b(default)g(is)h(`)p
+Fn(off)p Fo('.)630 2564 y Fn(revert-all-at-newline)1110
+2673 y Fo(If)e(set)h(to)g(`)p Fn(on)p Fo(',)g(Readline)g(will)g(undo)f
+(all)h(c)m(hanges)h(to)f(history)g(lines)f(b)s(efore)1110
+2783 y(returning)f(when)f Fn(accept-line)f Fo(is)j(executed.)41
+b(By)29 b(default,)g(history)g(lines)1110 2892 y(ma)m(y)42
+b(b)s(e)g(mo)s(di\014ed)e(and)h(retain)i(individual)e(undo)g(lists)h
+(across)g(calls)h(to)1110 3002 y Fn(readline)p Fo(.)38
+b(The)30 b(default)h(is)f(`)p Fn(off)p Fo('.)630 3148
+y Fn(show-all-if-ambiguous)1110 3258 y Fo(This)f(alters)i(the)f
+(default)g(b)s(eha)m(vior)g(of)g(the)h(completion)g(functions.)40
+b(If)29 b(set)1110 3367 y(to)f(`)p Fn(on)p Fo(',)g(w)m(ords)f(whic)m(h)
+g(ha)m(v)m(e)i(more)f(than)f(one)h(p)s(ossible)f(completion)h(cause)
+1110 3477 y(the)39 b(matc)m(hes)h(to)g(b)s(e)e(listed)h(immediately)i
+(instead)e(of)g(ringing)g(the)g(b)s(ell.)1110 3587 y(The)30
+b(default)g(v)-5 b(alue)31 b(is)g(`)p Fn(off)p Fo('.)630
+3733 y Fn(show-all-if-unmodified)1110 3842 y Fo(This)38
+b(alters)h(the)g(default)g(b)s(eha)m(vior)g(of)f(the)h(completion)h
+(functions)e(in)h(a)1110 3952 y(fashion)25 b(similar)h(to)g
+Fe(sho)m(w-all-if-am)m(biguous)p Fo(.)41 b(If)25 b(set)h(to)h(`)p
+Fn(on)p Fo(',)f(w)m(ords)f(whic)m(h)1110 4061 y(ha)m(v)m(e)32
+b(more)f(than)f(one)i(p)s(ossible)e(completion)i(without)f(an)m(y)g(p)s
+(ossible)f(par-)1110 4171 y(tial)43 b(completion)h(\(the)f(p)s(ossible)
+f(completions)h(don't)f(share)g(a)h(common)1110 4281
+y(pre\014x\))30 b(cause)g(the)h(matc)m(hes)g(to)g(b)s(e)f(listed)g
+(immediately)i(instead)e(of)h(ring-)1110 4390 y(ing)g(the)f(b)s(ell.)41
b(The)30 b(default)g(v)-5 b(alue)31 b(is)f(`)p Fn(off)p
-Fo('.)630 2326 y Fn(skip-completed-text)1110 2436 y Fo(If)i(set)i(to)f
-(`)p Fn(on)p Fo(',)h(this)f(alters)g(the)g(default)g(completion)h(b)s
-(eha)m(vior)f(when)f(in-)1110 2545 y(serting)d(a)h(single)g(matc)m(h)f
-(in)m(to)h(the)g(line.)40 b(It's)30 b(only)f(activ)m(e)i(when)d(p)s
-(erform-)1110 2655 y(ing)35 b(completion)h(in)e(the)h(middle)f(of)h(a)f
-(w)m(ord.)53 b(If)35 b(enabled,)g(readline)g(do)s(es)1110
-2765 y(not)41 b(insert)f(c)m(haracters)i(from)e(the)h(completion)h
-(that)f(matc)m(h)g(c)m(haracters)1110 2874 y(after)c(p)s(oin)m(t)g(in)g
-(the)g(w)m(ord)f(b)s(eing)g(completed,)k(so)d(p)s(ortions)f(of)h(the)g
-(w)m(ord)1110 2984 y(follo)m(wing)c(the)f(cursor)f(are)h(not)g
-(duplicated.)45 b(F)-8 b(or)32 b(instance,)h(if)f(this)f(is)h(en-)1110
-3093 y(abled,)43 b(attempting)f(completion)g(when)d(the)i(cursor)f(is)g
-(after)h(the)g(`)p Fn(e)p Fo(')f(in)1110 3203 y(`)p Fn(Makefile)p
+Fo('.)630 4536 y Fn(show-mode-in-prompt)1110 4646 y Fo(If)35
+b(set)i(to)f(`)p Fn(on)p Fo(',)h(add)e(a)h(c)m(haracter)i(to)e(the)g(b)
+s(eginning)f(of)h(the)g(prompt)f(in-)1110 4756 y(dicating)43
+b(the)f(editing)h(mo)s(de:)63 b(emacs)43 b(\(`)p Fn(@)p
+Fo('\),)i(vi)d(command)g(\(`)p Fn(:)p Fo('\),)k(or)c(vi)1110
+4865 y(insertion)30 b(\(`)p Fn(+)p Fo('\).)42 b(The)30
+b(default)h(v)-5 b(alue)30 b(is)h(`)p Fn(off)p Fo('.)630
+5011 y Fn(skip-completed-text)1110 5121 y Fo(If)h(set)i(to)f(`)p
+Fn(on)p Fo(',)h(this)f(alters)g(the)g(default)g(completion)h(b)s(eha)m
+(vior)f(when)f(in-)1110 5230 y(serting)d(a)h(single)g(matc)m(h)f(in)m
+(to)h(the)g(line.)40 b(It's)30 b(only)f(activ)m(e)i(when)d(p)s(erform-)
+1110 5340 y(ing)35 b(completion)h(in)e(the)h(middle)f(of)h(a)f(w)m
+(ord.)53 b(If)35 b(enabled,)g(readline)g(do)s(es)p eop
+end
+%%Page: 9 12
+TeXDict begin 9 11 bop 150 -116 a Fo(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2153 b(9)1110 299 y(not)41
+b(insert)f(c)m(haracters)i(from)e(the)h(completion)h(that)f(matc)m(h)g
+(c)m(haracters)1110 408 y(after)c(p)s(oin)m(t)g(in)g(the)g(w)m(ord)f(b)
+s(eing)g(completed,)k(so)d(p)s(ortions)f(of)h(the)g(w)m(ord)1110
+518 y(follo)m(wing)c(the)f(cursor)f(are)h(not)g(duplicated.)45
+b(F)-8 b(or)32 b(instance,)h(if)f(this)f(is)h(en-)1110
+628 y(abled,)43 b(attempting)f(completion)g(when)d(the)i(cursor)f(is)g
+(after)h(the)g(`)p Fn(e)p Fo(')f(in)1110 737 y(`)p Fn(Makefile)p
Fo(')c(will)i(result)f(in)g(`)p Fn(Makefile)p Fo(')f(rather)h(than)h(`)
-p Fn(Makefilefile)p Fo(',)1110 3313 y(assuming)d(there)g(is)h(a)f
+p Fn(Makefilefile)p Fo(',)1110 847 y(assuming)d(there)g(is)h(a)f
(single)h(p)s(ossible)f(completion.)56 b(The)35 b(default)g(v)-5
-b(alue)1110 3422 y(is)30 b(`)p Fn(off)p Fo('.)630 3587
-y Fn(visible-stats)1110 3696 y Fo(If)h(set)i(to)f(`)p
+b(alue)1110 956 y(is)30 b(`)p Fn(off)p Fo('.)630 1113
+y Fn(visible-stats)1110 1223 y Fo(If)h(set)i(to)f(`)p
Fn(on)p Fo(',)h(a)f(c)m(haracter)i(denoting)e(a)g(\014le's)g(t)m(yp)s
-(e)g(is)g(app)s(ended)e(to)j(the)1110 3806 y(\014lename)e(when)e
+(e)g(is)g(app)s(ended)e(to)j(the)1110 1332 y(\014lename)e(when)e
(listing)i(p)s(ossible)f(completions.)42 b(The)30 b(default)g(is)h(`)p
-Fn(off)p Fo('.)150 3970 y(Key)f(Bindings)630 4080 y(The)41
+Fn(off)p Fo('.)150 1489 y(Key)f(Bindings)630 1598 y(The)41
b(syn)m(tax)i(for)f(con)m(trolling)h(k)m(ey)g(bindings)e(in)h(the)g
(init)g(\014le)g(is)g(simple.)75 b(First)43 b(y)m(ou)630
-4189 y(need)27 b(to)i(\014nd)d(the)i(name)f(of)h(the)g(command)f(that)i
+1708 y(need)27 b(to)i(\014nd)d(the)i(name)f(of)h(the)g(command)f(that)i
(y)m(ou)f(w)m(an)m(t)g(to)g(c)m(hange.)41 b(The)27 b(follo)m(wing)630
-4299 y(sections)37 b(con)m(tain)g(tables)g(of)f(the)g(command)f(name,)j
+1817 y(sections)37 b(con)m(tain)g(tables)g(of)f(the)g(command)f(name,)j
(the)e(default)g(k)m(eybinding,)h(if)f(an)m(y)-8 b(,)630
-4408 y(and)30 b(a)h(short)f(description)g(of)h(what)f(the)g(command)h
-(do)s(es.)630 4545 y(Once)36 b(y)m(ou)g(kno)m(w)g(the)g(name)g(of)g
+1927 y(and)30 b(a)h(short)f(description)g(of)h(what)f(the)g(command)h
+(do)s(es.)630 2060 y(Once)36 b(y)m(ou)g(kno)m(w)g(the)g(name)g(of)g
(the)g(command,)h(simply)f(place)h(on)e(a)i(line)f(in)g(the)g(init)630
-4655 y(\014le)e(the)g(name)f(of)h(the)g(k)m(ey)g(y)m(ou)g(wish)f(to)h
+2170 y(\014le)e(the)g(name)f(of)h(the)g(k)m(ey)g(y)m(ou)g(wish)f(to)h
(bind)f(the)h(command)f(to,)i(a)f(colon,)i(and)d(then)630
-4765 y(the)f(name)h(of)f(the)g(command.)46 b(There)32
+2279 y(the)f(name)h(of)f(the)g(command.)46 b(There)32
b(can)g(b)s(e)g(no)g(space)g(b)s(et)m(w)m(een)h(the)f(k)m(ey)h(name)g
-(and)630 4874 y(the)41 b(colon)h({)f(that)g(will)g(b)s(e)g(in)m
+(and)630 2389 y(the)41 b(colon)h({)f(that)g(will)g(b)s(e)g(in)m
(terpreted)g(as)g(part)f(of)h(the)g(k)m(ey)h(name.)72
-b(The)40 b(name)h(of)630 4984 y(the)35 b(k)m(ey)g(can)g(b)s(e)f
+b(The)40 b(name)h(of)630 2498 y(the)35 b(k)m(ey)g(can)g(b)s(e)f
(expressed)f(in)i(di\013eren)m(t)g(w)m(a)m(ys,)h(dep)s(ending)d(on)h
-(what)h(y)m(ou)g(\014nd)e(most)630 5093 y(comfortable.)630
-5230 y(In)i(addition)h(to)h(command)f(names,)i(readline)e(allo)m(ws)h
+(what)h(y)m(ou)g(\014nd)e(most)630 2608 y(comfortable.)630
+2741 y(In)i(addition)h(to)h(command)f(names,)i(readline)e(allo)m(ws)h
(k)m(eys)g(to)g(b)s(e)e(b)s(ound)f(to)j(a)f(string)630
-5340 y(that)31 b(is)f(inserted)h(when)e(the)i(k)m(ey)g(is)f(pressed)g
-(\(a)h Fe(macro)5 b Fo(\).)p eop end
-%%Page: 9 12
-TeXDict begin 9 11 bop 150 -116 a Fo(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2153 b(9)630 299 y Fe(k)m(eyname)5
-b Fo(:)42 b Fe(function-name)35 b Fo(or)c Fe(macro)1110
-408 y(k)m(eyname)k Fo(is)29 b(the)f(name)h(of)g(a)g(k)m(ey)h(sp)s
+2851 y(that)31 b(is)f(inserted)h(when)e(the)i(k)m(ey)g(is)f(pressed)g
+(\(a)h Fe(macro)5 b Fo(\).)630 3007 y Fe(k)m(eyname)g
+Fo(:)42 b Fe(function-name)35 b Fo(or)c Fe(macro)1110
+3117 y(k)m(eyname)k Fo(is)29 b(the)f(name)h(of)g(a)g(k)m(ey)h(sp)s
(elled)e(out)h(in)g(English.)39 b(F)-8 b(or)30 b(example:)1350
-541 y Fn(Control-u:)45 b(universal-argument)1350 651
-y(Meta-Rubout:)f(backward-kill-word)1350 760 y(Control-o:)h(">)i
-(output")1110 893 y Fo(In)38 b(the)h(ab)s(o)m(v)m(e)h(example,)h
-Fg(C-u)d Fo(is)h(b)s(ound)d(to)k(the)e(function)h Fn(universal-)1110
-1003 y(argument)p Fo(,)f Fg(M-DEL)e Fo(is)i(b)s(ound)e(to)i(the)g
-(function)g Fn(backward-kill-word)p Fo(,)1110 1112 y(and)g
-Fg(C-o)g Fo(is)h(b)s(ound)e(to)j(run)d(the)j(macro)f(expressed)g(on)f
-(the)i(righ)m(t)f(hand)1110 1222 y(side)30 b(\(that)i(is,)e(to)h
-(insert)g(the)f(text)i(`)p Fn(>)e(output)p Fo(')f(in)m(to)i(the)g
-(line\).)1110 1355 y(A)37 b(n)m(um)m(b)s(er)f(of)h(sym)m(b)s(olic)g(c)m
-(haracter)i(names)e(are)g(recognized)h(while)f(pro-)1110
-1465 y(cessing)22 b(this)g(k)m(ey)g(binding)e(syn)m(tax:)37
-b Fe(DEL)p Fo(,)22 b Fe(ESC)8 b Fo(,)20 b Fe(ESCAPE)5
-b Fo(,)21 b Fe(LFD)5 b Fo(,)22 b Fe(NEW-)1110 1574 y(LINE)5
-b Fo(,)31 b Fe(RET)7 b Fo(,)29 b Fe(RETURN)10 b Fo(,)30
-b Fe(R)m(UBOUT)7 b Fo(,)31 b Fe(SP)-8 b(A)m(CE)5 b Fo(,)31
-b Fe(SPC)8 b Fo(,)29 b(and)h Fe(T)-8 b(AB)5 b Fo(.)630
-1730 y Fn(")p Fe(k)m(eyseq)r Fn(")p Fo(:)41 b Fe(function-name)36
-b Fo(or)30 b Fe(macro)1110 1840 y(k)m(eyseq)k Fo(di\013ers)d(from)f
+3250 y Fn(Control-u:)45 b(universal-argument)1350 3360
+y(Meta-Rubout:)f(backward-kill-word)1350 3469 y(Control-o:)h(">)i
+(output")1110 3602 y Fo(In)94 b(the)g(ab)s(o)m(v)m(e)i(example,)111
+b Fg(C-u)94 b Fo(is)g(b)s(ound)f(to)i(the)f(function)1110
+3712 y Fn(universal-argument)p Fo(,)124 b Fg(M-DEL)107
+b Fo(is)i(b)s(ound)e(to)j(the)f(function)1110 3821 y
+Fn(backward-kill-word)p Fo(,)75 b(and)69 b Fg(C-o)g Fo(is)h(b)s(ound)e
+(to)j(run)d(the)i(macro)1110 3931 y(expressed)45 b(on)h(the)g(righ)m(t)
+g(hand)e(side)i(\(that)h(is,)i(to)e(insert)e(the)h(text)h(`)p
+Fn(>)1110 4041 y(output)p Fo(')29 b(in)m(to)i(the)g(line\).)1110
+4174 y(A)62 b(n)m(um)m(b)s(er)e(of)i(sym)m(b)s(olic)h(c)m(haracter)g
+(names)f(are)g(recognized)h(while)1110 4283 y(pro)s(cessing)40
+b(this)f(k)m(ey)i(binding)e(syn)m(tax:)60 b Fe(DEL)p
+Fo(,)42 b Fe(ESC)p Fo(,)g Fe(ESCAPE)p Fo(,)f Fe(LFD)p
+Fo(,)1110 4393 y Fe(NEWLINE)p Fo(,)31 b Fe(RET)p Fo(,)f
+Fe(RETURN)p Fo(,)g Fe(R)m(UBOUT)p Fo(,)h Fe(SP)-8 b(A)m(CE)p
+Fo(,)31 b Fe(SPC)p Fo(,)e(and)h Fe(T)-8 b(AB)p Fo(.)630
+4549 y Fn(")p Fe(k)m(eyseq)r Fn(")p Fo(:)41 b Fe(function-name)36
+b Fo(or)30 b Fe(macro)1110 4659 y(k)m(eyseq)k Fo(di\013ers)d(from)f
Fe(k)m(eyname)37 b Fo(ab)s(o)m(v)m(e)32 b(in)f(that)h(strings)f
-(denoting)g(an)g(en-)1110 1949 y(tire)j(k)m(ey)h(sequence)f(can)g(b)s
+(denoting)g(an)g(en-)1110 4769 y(tire)j(k)m(ey)h(sequence)f(can)g(b)s
(e)f(sp)s(eci\014ed,)h(b)m(y)f(placing)i(the)f(k)m(ey)g(sequence)g(in)
-1110 2059 y(double)29 b(quotes.)41 b(Some)29 b Fh(gnu)h
+1110 4878 y(double)29 b(quotes.)41 b(Some)29 b Fh(gnu)h
Fo(Emacs)f(st)m(yle)i(k)m(ey)f(escap)s(es)g(can)g(b)s(e)f(used,)g(as)
-1110 2169 y(in)k(the)h(follo)m(wing)i(example,)f(but)e(the)h(sp)s
-(ecial)h(c)m(haracter)g(names)f(are)g(not)1110 2278 y(recognized.)1350
-2411 y Fn("\\C-u":)46 b(universal-argument)1350 2521
-y("\\C-x\\C-r":)f(re-read-init-file)1350 2630 y("\\e[11~":)g("Function)
-h(Key)g(1")1110 2763 y Fo(In)64 b(the)g(ab)s(o)m(v)m(e)i(example,)74
-b Fg(C-u)64 b Fo(is)g(again)i(b)s(ound)c(to)k(the)e(function)1110
-2873 y Fn(universal-argument)39 b Fo(\(just)k(as)h(it)g(w)m(as)g(in)g
-(the)f(\014rst)g(example\),)49 b(`)p Fg(C-x)1110 2982
-y(C-r)p Fo(')30 b(is)g(b)s(ound)e(to)j(the)g(function)f
+1110 4988 y(in)k(the)h(follo)m(wing)i(example,)f(but)e(the)h(sp)s
+(ecial)h(c)m(haracter)g(names)f(are)g(not)1110 5097 y(recognized.)1350
+5230 y Fn("\\C-u":)46 b(universal-argument)1350 5340
+y("\\C-x\\C-r":)f(re-read-init-file)p eop end
+%%Page: 10 13
+TeXDict begin 10 12 bop 150 -116 a Fo(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(10)1350 299 y Fn("\\e[11~":)45
+b("Function)h(Key)g(1")1110 447 y Fo(In)64 b(the)g(ab)s(o)m(v)m(e)i
+(example,)74 b Fg(C-u)64 b Fo(is)g(again)i(b)s(ound)c(to)k(the)e
+(function)1110 556 y Fn(universal-argument)39 b Fo(\(just)k(as)h(it)g
+(w)m(as)g(in)g(the)f(\014rst)g(example\),)49 b(`)p Fg(C-x)1110
+666 y(C-r)p Fo(')30 b(is)g(b)s(ound)e(to)j(the)g(function)f
Fn(re-read-init-file)p Fo(,)c(and)j(`)p Fn(ESC)h([)g(1)g(1)1110
-3092 y(~)p Fo(')g(is)h(b)s(ound)d(to)j(insert)f(the)h(text)g(`)p
-Fn(Function)e(Key)g(1)p Fo('.)630 3248 y(The)g(follo)m(wing)i
+775 y(~)p Fo(')g(is)h(b)s(ound)d(to)j(insert)f(the)h(text)g(`)p
+Fn(Function)e(Key)g(1)p Fo('.)630 961 y(The)g(follo)m(wing)i
Fh(gnu)f Fo(Emacs)g(st)m(yle)h(escap)s(e)f(sequences)g(are)g(a)m(v)-5
-b(ailable)32 b(when)d(sp)s(ecifying)630 3357 y(k)m(ey)i(sequences:)630
-3513 y Fg(\\C-)336 b Fo(con)m(trol)32 b(pre\014x)630
-3670 y Fg(\\M-)336 b Fo(meta)31 b(pre\014x)630 3826 y
+b(ailable)32 b(when)d(sp)s(ecifying)630 1071 y(k)m(ey)i(sequences:)630
+1257 y Fg(\\C-)336 b Fo(con)m(trol)32 b(pre\014x)630
+1443 y Fg(\\M-)336 b Fo(meta)31 b(pre\014x)630 1629 y
Fg(\\e)384 b Fo(an)30 b(escap)s(e)h(c)m(haracter)630
-3982 y Fg(\\\\)384 b Fo(bac)m(kslash)630 4138 y Fg(\\)p
+1815 y Fg(\\\\)384 b Fo(bac)m(kslash)630 2001 y Fg(\\)p
Fn(")g(")p Fo(,)30 b(a)h(double)f(quotation)i(mark)630
-4294 y Fg(\\')384 b Fn(')p Fo(,)30 b(a)h(single)g(quote)g(or)f(ap)s
-(ostrophe)630 4450 y(In)d(addition)h(to)g(the)g Fh(gnu)f
+2186 y Fg(\\')384 b Fn(')p Fo(,)30 b(a)h(single)g(quote)g(or)f(ap)s
+(ostrophe)630 2372 y(In)d(addition)h(to)g(the)g Fh(gnu)f
Fo(Emacs)h(st)m(yle)h(escap)s(e)f(sequences,)h(a)f(second)f(set)h(of)g
-(bac)m(kslash)630 4560 y(escap)s(es)j(is)f(a)m(v)-5 b(ailable:)630
-4716 y Fn(\\a)384 b Fo(alert)31 b(\(b)s(ell\))630 4872
-y Fn(\\b)384 b Fo(bac)m(kspace)630 5028 y Fn(\\d)g Fo(delete)630
-5184 y Fn(\\f)g Fo(form)30 b(feed)630 5340 y Fn(\\n)384
-b Fo(newline)p eop end
-%%Page: 10 13
-TeXDict begin 10 12 bop 150 -116 a Fo(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(10)630 299 y Fn(\\r)384
-b Fo(carriage)32 b(return)630 451 y Fn(\\t)384 b Fo(horizon)m(tal)32
-b(tab)630 604 y Fn(\\v)384 b Fo(v)m(ertical)32 b(tab)630
-756 y Fn(\\)p Fg(nnn)288 b Fo(the)35 b(eigh)m(t-bit)h(c)m(haracter)g
-(whose)e(v)-5 b(alue)35 b(is)g(the)f(o)s(ctal)i(v)-5
-b(alue)35 b Fe(nnn)e Fo(\(one)i(to)1110 866 y(three)c(digits\))630
-1018 y Fn(\\x)p Fg(HH)288 b Fo(the)40 b(eigh)m(t-bit)h(c)m(haracter)g
-(whose)e(v)-5 b(alue)39 b(is)h(the)f(hexadecimal)i(v)-5
-b(alue)40 b Fe(HH)1110 1128 y Fo(\(one)31 b(or)f(t)m(w)m(o)i(hex)e
-(digits\))630 1280 y(When)37 b(en)m(tering)h(the)g(text)g(of)g(a)g
-(macro,)i(single)e(or)f(double)g(quotes)h(m)m(ust)f(b)s(e)g(used)f(to)
-630 1390 y(indicate)23 b(a)e(macro)h(de\014nition.)38
-b(Unquoted)21 b(text)i(is)e(assumed)g(to)h(b)s(e)f(a)h(function)f
-(name.)38 b(In)630 1499 y(the)22 b(macro)f(b)s(o)s(dy)-8
-b(,)23 b(the)e(bac)m(kslash)h(escap)s(es)g(describ)s(ed)e(ab)s(o)m(v)m
-(e)j(are)e(expanded.)37 b(Bac)m(kslash)630 1609 y(will)j(quote)h(an)m
-(y)f(other)g(c)m(haracter)i(in)d(the)i(macro)f(text,)k(including)39
+(bac)m(kslash)630 2482 y(escap)s(es)j(is)f(a)m(v)-5 b(ailable:)630
+2668 y Fn(\\a)384 b Fo(alert)31 b(\(b)s(ell\))630 2854
+y Fn(\\b)384 b Fo(bac)m(kspace)630 3040 y Fn(\\d)g Fo(delete)630
+3226 y Fn(\\f)g Fo(form)30 b(feed)630 3412 y Fn(\\n)384
+b Fo(newline)630 3597 y Fn(\\r)g Fo(carriage)32 b(return)630
+3783 y Fn(\\t)384 b Fo(horizon)m(tal)32 b(tab)630 3969
+y Fn(\\v)384 b Fo(v)m(ertical)32 b(tab)630 4155 y Fn(\\)p
+Fg(nnn)288 b Fo(the)35 b(eigh)m(t-bit)h(c)m(haracter)g(whose)e(v)-5
+b(alue)35 b(is)g(the)f(o)s(ctal)i(v)-5 b(alue)35 b Fe(nnn)e
+Fo(\(one)i(to)1110 4265 y(three)c(digits\))630 4451 y
+Fn(\\x)p Fg(HH)288 b Fo(the)38 b(eigh)m(t-bit)i(c)m(haracter)g(whose)e
+(v)-5 b(alue)39 b(is)f(the)h(hexadecimal)g(v)-5 b(alue)39
+b Fe(HH)1110 4560 y Fo(\(one)31 b(or)f(t)m(w)m(o)i(hex)e(digits\))630
+4746 y(When)37 b(en)m(tering)h(the)g(text)g(of)g(a)g(macro,)i(single)e
+(or)f(double)g(quotes)h(m)m(ust)f(b)s(e)g(used)f(to)630
+4856 y(indicate)23 b(a)e(macro)h(de\014nition.)38 b(Unquoted)21
+b(text)i(is)e(assumed)g(to)h(b)s(e)f(a)h(function)f(name.)38
+b(In)630 4965 y(the)22 b(macro)f(b)s(o)s(dy)-8 b(,)23
+b(the)e(bac)m(kslash)h(escap)s(es)g(describ)s(ed)e(ab)s(o)m(v)m(e)j
+(are)e(expanded.)37 b(Bac)m(kslash)630 5075 y(will)j(quote)h(an)m(y)f
+(other)g(c)m(haracter)i(in)d(the)i(macro)f(text,)k(including)39
b(`)p Fn(")p Fo(')h(and)g(`)p Fn(')p Fo('.)69 b(F)-8
-b(or)630 1718 y(example,)28 b(the)e(follo)m(wing)h(binding)d(will)i
+b(or)630 5185 y(example,)28 b(the)e(follo)m(wing)h(binding)d(will)i
(mak)m(e)h(`)p Fg(C-x)j Fn(\\)p Fo(')c(insert)f(a)h(single)h(`)p
-Fn(\\)p Fo(')f(in)m(to)g(the)g(line:)870 1849 y Fn("\\C-x\\\\":)45
-b("\\\\")150 2042 y Fd(1.3.2)63 b(Conditional)41 b(Init)g(Constructs)
-150 2188 y Fo(Readline)c(implemen)m(ts)g(a)h(facilit)m(y)g(similar)f
-(in)g(spirit)f(to)i(the)f(conditional)h(compilation)g(features)f(of)150
-2298 y(the)31 b(C)f(prepro)s(cessor)g(whic)m(h)g(allo)m(ws)i(k)m(ey)g
-(bindings)d(and)h(v)-5 b(ariable)32 b(settings)f(to)h(b)s(e)e(p)s
-(erformed)f(as)i(the)150 2408 y(result)f(of)h(tests.)41
-b(There)30 b(are)h(four)f(parser)f(directiv)m(es)j(used.)150
-2560 y Fn($if)336 b Fo(The)31 b Fn($if)f Fo(construct)i(allo)m(ws)h
-(bindings)d(to)i(b)s(e)e(made)i(based)f(on)g(the)g(editing)h(mo)s(de,)g
-(the)630 2670 y(terminal)39 b(b)s(eing)e(used,)j(or)e(the)g
-(application)h(using)f(Readline.)64 b(The)38 b(text)h(of)f(the)g(test)
-630 2779 y(extends)30 b(to)h(the)g(end)f(of)g(the)h(line;)g(no)f(c)m
-(haracters)i(are)f(required)e(to)i(isolate)i(it.)630
-2932 y Fn(mode)288 b Fo(The)20 b Fn(mode=)g Fo(form)g(of)h(the)g
-Fn($if)f Fo(directiv)m(e)j(is)e(used)f(to)h(test)h(whether)e(Readline)
-1110 3041 y(is)29 b(in)h Fn(emacs)e Fo(or)h Fn(vi)g Fo(mo)s(de.)40
-b(This)29 b(ma)m(y)h(b)s(e)e(used)h(in)g(conjunction)h(with)f(the)1110
-3151 y(`)p Fn(set)h(keymap)p Fo(')c(command,)i(for)f(instance,)i(to)f
-(set)g(bindings)f(in)g(the)h Fn(emacs-)1110 3260 y(standard)23
-b Fo(and)h Fn(emacs-ctlx)f Fo(k)m(eymaps)i(only)g(if)g(Readline)h(is)f
-(starting)h(out)1110 3370 y(in)k Fn(emacs)f Fo(mo)s(de.)630
-3522 y Fn(term)288 b Fo(The)26 b Fn(term=)g Fo(form)g(ma)m(y)i(b)s(e)e
-(used)g(to)i(include)f(terminal-sp)s(eci\014c)g(k)m(ey)h(bind-)1110
-3632 y(ings,)38 b(p)s(erhaps)c(to)j(bind)e(the)h(k)m(ey)h(sequences)f
-(output)g(b)m(y)g(the)g(terminal's)1110 3742 y(function)24
-b(k)m(eys.)39 b(The)23 b(w)m(ord)h(on)f(the)i(righ)m(t)f(side)g(of)g
-(the)g(`)p Fn(=)p Fo(')g(is)g(tested)h(against)1110 3851
-y(b)s(oth)k(the)h(full)g(name)g(of)g(the)g(terminal)h(and)e(the)i(p)s
-(ortion)e(of)h(the)g(terminal)1110 3961 y(name)k(b)s(efore)f(the)g
-(\014rst)g(`)p Fn(-)p Fo('.)50 b(This)33 b(allo)m(ws)i
-Fn(sun)e Fo(to)h(matc)m(h)g(b)s(oth)f Fn(sun)g Fo(and)1110
-4070 y Fn(sun-cmd)p Fo(,)c(for)h(instance.)630 4223 y
-Fn(application)1110 4332 y Fo(The)21 b Fe(application)j
-Fo(construct)e(is)g(used)f(to)i(include)f(application-sp)s(eci\014c)h
-(set-)1110 4442 y(tings.)39 b(Eac)m(h)26 b(program)e(using)g(the)h
-(Readline)g(library)g(sets)g(the)g Fe(application)1110
-4551 y(name)5 b Fo(,)25 b(and)d(y)m(ou)h(can)g(test)h(for)e(a)h
-(particular)h(v)-5 b(alue.)38 b(This)22 b(could)h(b)s(e)f(used)g(to)
-1110 4661 y(bind)32 b(k)m(ey)h(sequences)g(to)h(functions)e(useful)g
-(for)h(a)g(sp)s(eci\014c)f(program.)48 b(F)-8 b(or)1110
-4771 y(instance,)35 b(the)e(follo)m(wing)h(command)f(adds)f(a)i(k)m(ey)
-f(sequence)h(that)f(quotes)1110 4880 y(the)e(curren)m(t)f(or)g
-(previous)g(w)m(ord)g(in)g(Bash:)1350 5011 y Fn($if)47
-b(Bash)1350 5121 y(#)g(Quote)g(the)g(current)f(or)h(previous)e(word)
-1350 5230 y("\\C-xq":)h("\\eb\\"\\ef\\"")1350 5340 y($endif)p
-eop end
+Fn(\\)p Fo(')f(in)m(to)g(the)g(line:)870 5332 y Fn("\\C-x\\\\":)45
+b("\\\\")p eop end
%%Page: 11 14
TeXDict begin 11 13 bop 150 -116 a Fo(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(11)150 299 y Fn($endif)192
-b Fo(This)29 b(command,)i(as)f(seen)h(in)f(the)g(previous)g(example,)h
-(terminates)g(an)g Fn($if)e Fo(command.)150 458 y Fn($else)240
-b Fo(Commands)29 b(in)h(this)h(branc)m(h)e(of)i(the)f
-Fn($if)g Fo(directiv)m(e)i(are)f(executed)g(if)f(the)h(test)g(fails.)
-150 618 y Fn($include)96 b Fo(This)43 b(directiv)m(e)i(tak)m(es)g(a)e
-(single)i(\014lename)e(as)h(an)f(argumen)m(t)h(and)f(reads)g(commands)
-630 727 y(and)38 b(bindings)f(from)h(that)i(\014le.)65
+b(Command)29 b(Line)i(Editing)2107 b(11)150 299 y Fd(1.3.2)63
+b(Conditional)41 b(Init)g(Constructs)150 446 y Fo(Readline)c(implemen)m
+(ts)g(a)h(facilit)m(y)g(similar)f(in)g(spirit)f(to)i(the)f(conditional)
+h(compilation)g(features)f(of)150 555 y(the)31 b(C)f(prepro)s(cessor)g
+(whic)m(h)g(allo)m(ws)i(k)m(ey)g(bindings)d(and)h(v)-5
+b(ariable)32 b(settings)f(to)h(b)s(e)e(p)s(erformed)f(as)i(the)150
+665 y(result)f(of)h(tests.)41 b(There)30 b(are)h(four)f(parser)f
+(directiv)m(es)j(used.)150 824 y Fn($if)336 b Fo(The)31
+b Fn($if)f Fo(construct)i(allo)m(ws)h(bindings)d(to)i(b)s(e)e(made)i
+(based)f(on)g(the)g(editing)h(mo)s(de,)g(the)630 934
+y(terminal)39 b(b)s(eing)e(used,)j(or)e(the)g(application)h(using)f
+(Readline.)64 b(The)38 b(text)h(of)f(the)g(test)630 1044
+y(extends)30 b(to)h(the)g(end)f(of)g(the)h(line;)g(no)f(c)m(haracters)i
+(are)f(required)e(to)i(isolate)i(it.)630 1203 y Fn(mode)288
+b Fo(The)30 b Fn(mode=)e Fo(form)i(of)g(the)h Fn($if)e
+Fo(directiv)m(e)j(is)e(used)f(to)i(test)g(whether)e(Read-)1110
+1313 y(line)44 b(is)f(in)g Fn(emacs)f Fo(or)h Fn(vi)g
+Fo(mo)s(de.)79 b(This)42 b(ma)m(y)i(b)s(e)e(used)h(in)g(conjunction)
+1110 1422 y(with)c(the)h(`)p Fn(set)29 b(keymap)p Fo(')38
+b(command,)k(for)d(instance,)j(to)e(set)g(bindings)e(in)1110
+1532 y(the)32 b Fn(emacs-standard)c Fo(and)j Fn(emacs-ctlx)d
+Fo(k)m(eymaps)k(only)g(if)g(Readline)g(is)1110 1641 y(starting)f(out)g
+(in)f Fn(emacs)f Fo(mo)s(de.)630 1801 y Fn(term)288 b
+Fo(The)26 b Fn(term=)g Fo(form)g(ma)m(y)i(b)s(e)e(used)g(to)i(include)f
+(terminal-sp)s(eci\014c)g(k)m(ey)h(bind-)1110 1910 y(ings,)38
+b(p)s(erhaps)c(to)j(bind)e(the)h(k)m(ey)h(sequences)f(output)g(b)m(y)g
+(the)g(terminal's)1110 2020 y(function)24 b(k)m(eys.)39
+b(The)23 b(w)m(ord)h(on)f(the)i(righ)m(t)f(side)g(of)g(the)g(`)p
+Fn(=)p Fo(')g(is)g(tested)h(against)1110 2130 y(b)s(oth)k(the)h(full)g
+(name)g(of)g(the)g(terminal)h(and)e(the)i(p)s(ortion)e(of)h(the)g
+(terminal)1110 2239 y(name)k(b)s(efore)f(the)g(\014rst)g(`)p
+Fn(-)p Fo('.)50 b(This)33 b(allo)m(ws)i Fn(sun)e Fo(to)h(matc)m(h)g(b)s
+(oth)f Fn(sun)g Fo(and)1110 2349 y Fn(sun-cmd)p Fo(,)c(for)h(instance.)
+630 2508 y Fn(application)1110 2618 y Fo(The)21 b Fe(application)j
+Fo(construct)e(is)g(used)f(to)i(include)f(application-sp)s(eci\014c)h
+(set-)1110 2727 y(tings.)39 b(Eac)m(h)26 b(program)e(using)g(the)h
+(Readline)g(library)g(sets)g(the)g Fe(application)1110
+2837 y(name)p Fo(,)g(and)e(y)m(ou)g(can)h(test)g(for)f(a)g(particular)h
+(v)-5 b(alue.)39 b(This)22 b(could)h(b)s(e)g(used)f(to)1110
+2946 y(bind)32 b(k)m(ey)h(sequences)g(to)h(functions)e(useful)g(for)h
+(a)g(sp)s(eci\014c)f(program.)48 b(F)-8 b(or)1110 3056
+y(instance,)35 b(the)e(follo)m(wing)h(command)f(adds)f(a)i(k)m(ey)f
+(sequence)h(that)f(quotes)1110 3166 y(the)e(curren)m(t)f(or)g(previous)
+g(w)m(ord)g(in)g(Bash:)1350 3300 y Fn($if)47 b(Bash)1350
+3410 y(#)g(Quote)g(the)g(current)f(or)h(previous)e(word)1350
+3519 y("\\C-xq":)h("\\eb\\"\\ef\\"")1350 3629 y($endif)150
+3788 y($endif)192 b Fo(This)29 b(command,)i(as)f(seen)h(in)f(the)g
+(previous)g(example,)h(terminates)g(an)g Fn($if)e Fo(command.)150
+3948 y Fn($else)240 b Fo(Commands)29 b(in)h(this)h(branc)m(h)e(of)i
+(the)f Fn($if)g Fo(directiv)m(e)i(are)f(executed)g(if)f(the)h(test)g
+(fails.)150 4107 y Fn($include)96 b Fo(This)43 b(directiv)m(e)i(tak)m
+(es)g(a)e(single)i(\014lename)e(as)h(an)f(argumen)m(t)h(and)f(reads)g
+(commands)630 4217 y(and)38 b(bindings)f(from)h(that)i(\014le.)65
b(F)-8 b(or)39 b(example,)j(the)d(follo)m(wing)h(directiv)m(e)g(reads)e
-(from)630 837 y(`)p Fn(/etc/inputrc)p Fo(':)870 971 y
-Fn($include)46 b(/etc/inputrc)150 1171 y Fd(1.3.3)63
-b(Sample)41 b(Init)g(File)150 1318 y Fo(Here)27 b(is)f(an)h(example)g
-(of)f(an)h Fe(inputrc)k Fo(\014le.)39 b(This)26 b(illustrates)h(k)m(ey)
-h(binding,)e(v)-5 b(ariable)27 b(assignmen)m(t,)i(and)150
-1427 y(conditional)j(syn)m(tax.)p eop end
+(from)630 4326 y Fn(/etc/inputrc)p Fo(:)870 4461 y Fn($include)46
+b(/etc/inputrc)150 4660 y Fd(1.3.3)63 b(Sample)41 b(Init)g(File)150
+4807 y Fo(Here)27 b(is)f(an)h(example)g(of)f(an)h Fe(inputrc)k
+Fo(\014le.)39 b(This)26 b(illustrates)h(k)m(ey)h(binding,)e(v)-5
+b(ariable)27 b(assignmen)m(t,)i(and)150 4917 y(conditional)j(syn)m
+(tax.)p eop end
%%Page: 12 15
TeXDict begin 12 14 bop 150 -116 a Fo(Chapter)30 b(1:)41
b(Command)29 b(Line)i(Editing)2107 b(12)390 408 y Fn(#)47
@@ -3827,13 +6014,13 @@ b(This)g(file)g(controls)e(the)i(behaviour)e(of)j(line)e(input)h
g(FTP,)g(Bash,)h(and)g(GDB.)390 737 y(#)390 847 y(#)g(You)g(can)g
(re-read)f(the)h(inputrc)f(file)g(with)h(C-x)g(C-r.)390
956 y(#)g(Lines)g(beginning)e(with)i('#')g(are)g(comments.)390
-1066 y(#)390 1176 y(#)g(First,)g(include)e(any)i(systemwide)e(bindings)
-h(and)h(variable)390 1285 y(#)g(assignments)e(from)i(/etc/Inputrc)390
-1395 y($include)f(/etc/Inputrc)390 1614 y(#)390 1724
-y(#)h(Set)g(various)f(bindings)g(for)h(emacs)f(mode.)390
-1943 y(set)h(editing-mode)d(emacs)390 2162 y($if)j(mode=emacs)390
+1066 y(#)390 1176 y(#)g(First,)g(include)e(any)i(system-wide)e
+(bindings)h(and)g(variable)390 1285 y(#)h(assignments)e(from)i
+(/etc/Inputrc)390 1395 y($include)f(/etc/Inputrc)390
+1614 y(#)390 1724 y(#)h(Set)g(various)f(bindings)g(for)h(emacs)f(mode.)
+390 1943 y(set)h(editing-mode)d(emacs)390 2162 y($if)j(mode=emacs)390
2381 y(Meta-Control-h:)91 b(backward-kill-word)43 b(Text)k(after)f(the)
-h(function)f(name)g(is)h(ignored)p 3971 2401 42 76 v
+h(function)f(name)g(is)h(ignored)p 3970 2401 42 76 v
390 2600 a(#)390 2710 y(#)g(Arrow)g(keys)f(in)i(keypad)e(mode)390
2819 y(#)390 2929 y(#"\\M-OD":)379 b(backward-char)390
3039 y(#"\\M-OC":)g(forward-char)390 3148 y(#"\\M-OA":)g
@@ -3937,404 +6124,436 @@ TeXDict begin 15 17 bop 150 -116 a Fo(Chapter)30 b(1:)41
b(Command)29 b(Line)i(Editing)2107 b(15)150 299 y Fn(next-history)27
b(\(C-n\))630 408 y Fo(Mo)m(v)m(e)32 b(`forw)m(ard')f(through)e(the)i
(history)f(list,)i(fetc)m(hing)f(the)g(next)f(command.)150
-573 y Fn(beginning-of-history)25 b(\(M-<\))630 682 y
+558 y Fn(beginning-of-history)25 b(\(M-<\))630 667 y
Fo(Mo)m(v)m(e)32 b(to)g(the)e(\014rst)g(line)g(in)h(the)f(history)-8
-b(.)150 847 y Fn(end-of-history)26 b(\(M->\))630 956
+b(.)150 817 y Fn(end-of-history)26 b(\(M->\))630 927
y Fo(Mo)m(v)m(e)32 b(to)g(the)e(end)g(of)g(the)h(input)e(history)-8
b(,)31 b(i.e.,)h(the)f(line)f(curren)m(tly)h(b)s(eing)f(en)m(tered.)150
-1121 y Fn(reverse-search-history)24 b(\(C-r\))630 1230
+1076 y Fn(reverse-search-history)24 b(\(C-r\))630 1186
y Fo(Searc)m(h)31 b(bac)m(kw)m(ard)h(starting)g(at)g(the)f(curren)m(t)g
(line)g(and)g(mo)m(ving)h(`up')e(through)h(the)g(his-)630
-1340 y(tory)g(as)f(necessary)-8 b(.)42 b(This)29 b(is)i(an)f(incremen)m
-(tal)i(searc)m(h.)150 1504 y Fn(forward-search-history)24
-b(\(C-s\))630 1614 y Fo(Searc)m(h)30 b(forw)m(ard)f(starting)h(at)g
+1295 y(tory)g(as)f(necessary)-8 b(.)42 b(This)29 b(is)i(an)f(incremen)m
+(tal)i(searc)m(h.)150 1445 y Fn(forward-search-history)24
+b(\(C-s\))630 1554 y Fo(Searc)m(h)30 b(forw)m(ard)f(starting)h(at)g
(the)g(curren)m(t)f(line)h(and)f(mo)m(ving)h(`do)m(wn')f(through)g(the)
-h(the)630 1724 y(history)g(as)h(necessary)-8 b(.)41 b(This)30
-b(is)g(an)h(incremen)m(tal)g(searc)m(h.)150 1888 y Fn
+h(the)630 1664 y(history)g(as)h(necessary)-8 b(.)41 b(This)30
+b(is)g(an)h(incremen)m(tal)g(searc)m(h.)150 1813 y Fn
(non-incremental-reverse-)o(sear)o(ch-h)o(ist)o(ory)24
-b(\(M-p\))630 1998 y Fo(Searc)m(h)31 b(bac)m(kw)m(ard)h(starting)g(at)g
+b(\(M-p\))630 1923 y Fo(Searc)m(h)31 b(bac)m(kw)m(ard)h(starting)g(at)g
(the)f(curren)m(t)g(line)g(and)g(mo)m(ving)h(`up')e(through)h(the)g
-(his-)630 2107 y(tory)36 b(as)g(necessary)h(using)e(a)i(non-incremen)m
+(his-)630 2032 y(tory)36 b(as)g(necessary)h(using)e(a)i(non-incremen)m
(tal)g(searc)m(h)f(for)g(a)g(string)g(supplied)f(b)m(y)h(the)630
-2217 y(user.)150 2381 y Fn(non-incremental-forward-)o(sear)o(ch-h)o
-(ist)o(ory)24 b(\(M-n\))630 2491 y Fo(Searc)m(h)30 b(forw)m(ard)f
+2142 y(user.)150 2291 y Fn(non-incremental-forward-)o(sear)o(ch-h)o
+(ist)o(ory)24 b(\(M-n\))630 2401 y Fo(Searc)m(h)30 b(forw)m(ard)f
(starting)h(at)g(the)g(curren)m(t)f(line)h(and)f(mo)m(ving)h(`do)m(wn')
-f(through)g(the)h(the)630 2600 y(history)d(as)f(necessary)i(using)e(a)h
+f(through)g(the)h(the)630 2511 y(history)d(as)f(necessary)i(using)e(a)h
(non-incremen)m(tal)g(searc)m(h)h(for)e(a)h(string)g(supplied)e(b)m(y)i
-(the)630 2710 y(user.)150 2874 y Fn(history-search-forward)d(\(\))630
-2984 y Fo(Searc)m(h)42 b(forw)m(ard)f(through)f(the)i(history)f(for)g
+(the)630 2620 y(user.)150 2770 y Fn(history-search-forward)d(\(\))630
+2879 y Fo(Searc)m(h)42 b(forw)m(ard)f(through)f(the)i(history)f(for)g
+(the)h(string)f(of)h(c)m(haracters)h(b)s(et)m(w)m(een)f(the)630
+2989 y(start)36 b(of)h(the)f(curren)m(t)f(line)i(and)e(the)h(p)s(oin)m
+(t.)58 b(The)35 b(searc)m(h)i(string)e(m)m(ust)h(matc)m(h)h(at)g(the)
+630 3098 y(b)s(eginning)32 b(of)g(a)h(history)g(line.)47
+b(This)32 b(is)h(a)f(non-incremen)m(tal)i(searc)m(h.)48
+b(By)33 b(default,)g(this)630 3208 y(command)d(is)h(un)m(b)s(ound.)150
+3357 y Fn(history-search-backward)24 b(\(\))630 3467
+y Fo(Searc)m(h)35 b(bac)m(kw)m(ard)g(through)f(the)h(history)g(for)g
+(the)f(string)h(of)g(c)m(haracters)h(b)s(et)m(w)m(een)g(the)630
+3577 y(start)g(of)h(the)f(curren)m(t)f(line)i(and)e(the)h(p)s(oin)m(t.)
+58 b(The)35 b(searc)m(h)i(string)e(m)m(ust)h(matc)m(h)h(at)g(the)630
+3686 y(b)s(eginning)32 b(of)g(a)h(history)g(line.)47
+b(This)32 b(is)h(a)f(non-incremen)m(tal)i(searc)m(h.)48
+b(By)33 b(default,)g(this)630 3796 y(command)d(is)h(un)m(b)s(ound.)150
+3945 y Fn(history-substr-search-fo)o(rwar)o(d)24 b(\(\))630
+4055 y Fo(Searc)m(h)42 b(forw)m(ard)f(through)f(the)i(history)f(for)g
(the)h(string)f(of)h(c)m(haracters)h(b)s(et)m(w)m(een)f(the)630
-3093 y(start)36 b(of)f(the)g(curren)m(t)g(line)g(and)g(the)g(p)s(oin)m
-(t.)55 b(This)34 b(is)i(a)f(non-incremen)m(tal)h(searc)m(h.)56
-b(By)630 3203 y(default,)31 b(this)f(command)g(is)h(un)m(b)s(ound.)150
-3367 y Fn(history-search-backward)24 b(\(\))630 3477
+4164 y(start)29 b(of)g(the)g(curren)m(t)g(line)g(and)f(the)h(p)s(oin)m
+(t.)40 b(The)29 b(searc)m(h)g(string)g(ma)m(y)g(matc)m(h)h(an)m(ywhere)
+630 4274 y(in)i(a)h(history)g(line.)47 b(This)32 b(is)g(a)h
+(non-incremen)m(tal)h(searc)m(h.)47 b(By)33 b(default,)h(this)e
+(command)630 4384 y(is)e(un)m(b)s(ound.)150 4533 y Fn
+(history-substr-search-ba)o(ckwa)o(rd)24 b(\(\))630 4643
y Fo(Searc)m(h)35 b(bac)m(kw)m(ard)g(through)f(the)h(history)g(for)g
(the)f(string)h(of)g(c)m(haracters)h(b)s(et)m(w)m(een)g(the)630
-3587 y(start)g(of)f(the)g(curren)m(t)g(line)g(and)g(the)g(p)s(oin)m(t.)
-55 b(This)34 b(is)i(a)f(non-incremen)m(tal)h(searc)m(h.)56
-b(By)630 3696 y(default,)31 b(this)f(command)g(is)h(un)m(b)s(ound.)150
-3861 y Fn(yank-nth-arg)c(\(M-C-y\))630 3970 y Fo(Insert)37
-b(the)g(\014rst)f(argumen)m(t)i(to)f(the)h(previous)e(command)h
-(\(usually)g(the)g(second)g(w)m(ord)630 4080 y(on)32
-b(the)g(previous)f(line\))i(at)f(p)s(oin)m(t.)46 b(With)32
-b(an)g(argumen)m(t)g Fe(n)p Fo(,)g(insert)g(the)g Fe(n)p
-Fo(th)f(w)m(ord)g(from)630 4189 y(the)k(previous)f(command)h(\(the)g(w)
-m(ords)g(in)f(the)h(previous)g(command)f(b)s(egin)h(with)f(w)m(ord)630
-4299 y(0\).)69 b(A)40 b(negativ)m(e)h(argumen)m(t)f(inserts)g(the)f
+4752 y(start)29 b(of)g(the)g(curren)m(t)g(line)g(and)f(the)h(p)s(oin)m
+(t.)40 b(The)29 b(searc)m(h)g(string)g(ma)m(y)g(matc)m(h)h(an)m(ywhere)
+630 4862 y(in)i(a)h(history)g(line.)47 b(This)32 b(is)g(a)h
+(non-incremen)m(tal)h(searc)m(h.)47 b(By)33 b(default,)h(this)e
+(command)630 4971 y(is)e(un)m(b)s(ound.)150 5121 y Fn(yank-nth-arg)d
+(\(M-C-y\))630 5230 y Fo(Insert)37 b(the)g(\014rst)f(argumen)m(t)i(to)f
+(the)h(previous)e(command)h(\(usually)g(the)g(second)g(w)m(ord)630
+5340 y(on)32 b(the)g(previous)f(line\))i(at)f(p)s(oin)m(t.)46
+b(With)32 b(an)g(argumen)m(t)g Fe(n)p Fo(,)g(insert)g(the)g
+Fe(n)p Fo(th)f(w)m(ord)g(from)p eop end
+%%Page: 16 19
+TeXDict begin 16 18 bop 150 -116 a Fo(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(16)630 299 y(the)35
+b(previous)f(command)h(\(the)g(w)m(ords)g(in)f(the)h(previous)g
+(command)f(b)s(egin)h(with)f(w)m(ord)630 408 y(0\).)69
+b(A)40 b(negativ)m(e)h(argumen)m(t)f(inserts)g(the)f
Fe(n)p Fo(th)g(w)m(ord)g(from)g(the)h(end)f(of)h(the)f(previous)630
-4408 y(command.)48 b(Once)33 b(the)g(argumen)m(t)h Fe(n)e
+518 y(command.)48 b(Once)33 b(the)g(argumen)m(t)h Fe(n)e
Fo(is)h(computed,)h(the)f(argumen)m(t)g(is)g(extracted)i(as)e(if)630
-4518 y(the)e(`)p Fn(!)p Fg(n)11 b Fo(')29 b(history)i(expansion)f(had)g
-(b)s(een)f(sp)s(eci\014ed.)150 4682 y Fn(yank-last-arg)e(\(M-.)i(or)h
-(M-_\))630 4792 y Fo(Insert)k(last)i(argumen)m(t)g(to)g(the)f(previous)
-f(command)h(\(the)h(last)f(w)m(ord)g(of)g(the)g(previous)630
-4902 y(history)e(en)m(try\).)51 b(With)34 b(a)g(n)m(umeric)g(argumen)m
+628 y(the)e(`)p Fn(!)p Fg(n)p Fo(')f(history)g(expansion)g(had)g(b)s
+(een)g(sp)s(eci\014ed.)150 798 y Fn(yank-last-arg)d(\(M-.)i(or)h(M-_\))
+630 908 y Fo(Insert)k(last)i(argumen)m(t)g(to)g(the)f(previous)f
+(command)h(\(the)h(last)f(w)m(ord)g(of)g(the)g(previous)630
+1018 y(history)e(en)m(try\).)51 b(With)34 b(a)g(n)m(umeric)g(argumen)m
(t,)h(b)s(eha)m(v)m(e)f(exactly)h(lik)m(e)g Fn(yank-nth-arg)p
-Fo(.)630 5011 y(Successiv)m(e)26 b(calls)g(to)f Fn(yank-last-arg)c
+Fo(.)630 1127 y(Successiv)m(e)26 b(calls)g(to)f Fn(yank-last-arg)c
Fo(mo)m(v)m(e)27 b(bac)m(k)e(through)f(the)h(history)g(list,)i
-(inserting)630 5121 y(the)c(last)g(w)m(ord)f(\(or)h(the)g(w)m(ord)f(sp)
+(inserting)630 1237 y(the)c(last)g(w)m(ord)f(\(or)h(the)g(w)m(ord)f(sp)
s(eci\014ed)g(b)m(y)g(the)h(argumen)m(t)g(to)g(the)g(\014rst)f(call\))i
-(of)f(eac)m(h)h(line)630 5230 y(in)36 b(turn.)58 b(An)m(y)36
+(of)f(eac)m(h)h(line)630 1346 y(in)36 b(turn.)58 b(An)m(y)36
b(n)m(umeric)h(argumen)m(t)f(supplied)g(to)h(these)g(successiv)m(e)g
-(calls)h(determines)630 5340 y(the)d(direction)g(to)h(mo)m(v)m(e)g
+(calls)h(determines)630 1456 y(the)d(direction)g(to)h(mo)m(v)m(e)g
(through)e(the)h(history)-8 b(.)54 b(A)35 b(negativ)m(e)i(argumen)m(t)e
-(switc)m(hes)h(the)p eop end
-%%Page: 16 19
-TeXDict begin 16 18 bop 150 -116 a Fo(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(16)630 299 y(direction)23
-b(through)g(the)g(history)f(\(bac)m(k)i(or)f(forw)m(ard\).)38
-b(The)22 b(history)h(expansion)g(facilities)630 408 y(are)28
-b(used)f(to)h(extract)h(the)f(last)g(argumen)m(t,)h(as)e(if)h(the)g(`)p
-Fn(!$)p Fo(')f(history)g(expansion)h(had)f(b)s(een)630
-518 y(sp)s(eci\014ed.)150 727 y Fd(1.4.3)63 b(Commands)42
-b(F)-10 b(or)41 b(Changing)g(T)-10 b(ext)150 904 y Fn(delete-char)27
-b(\(C-d\))630 1014 y Fo(Delete)41 b(the)e(c)m(haracter)i(at)e(p)s(oin)m
-(t.)66 b(If)39 b(p)s(oin)m(t)f(is)h(at)h(the)f(b)s(eginning)f(of)h(the)
-g(line,)j(there)630 1124 y(are)37 b(no)g(c)m(haracters)i(in)d(the)i
-(line,)h(and)d(the)h(last)h(c)m(haracter)h(t)m(yp)s(ed)e(w)m(as)g(not)g
-(b)s(ound)e(to)630 1233 y Fn(delete-char)p Fo(,)28 b(then)i(return)f
-Fh(eof)p Fo(.)150 1403 y Fn(backward-delete-char)c(\(Rubout\))630
-1512 y Fo(Delete)32 b(the)f(c)m(haracter)g(b)s(ehind)e(the)h(cursor.)40
+(switc)m(hes)h(the)630 1565 y(direction)23 b(through)g(the)g(history)f
+(\(bac)m(k)i(or)f(forw)m(ard\).)38 b(The)22 b(history)h(expansion)g
+(facilities)630 1675 y(are)28 b(used)f(to)h(extract)h(the)f(last)g
+(argumen)m(t,)h(as)e(if)h(the)g(`)p Fn(!$)p Fo(')f(history)g(expansion)
+h(had)f(b)s(een)630 1785 y(sp)s(eci\014ed.)150 1995 y
+Fd(1.4.3)63 b(Commands)42 b(F)-10 b(or)41 b(Changing)g(T)-10
+b(ext)150 2173 y Fg(end-of-file)27 b Fn(\(usually)h(C-d\))630
+2282 y Fo(The)e(c)m(haracter)h(indicating)h(end-of-\014le)e(as)h(set,)g
+(for)f(example,)i(b)m(y)e Fn(stty)p Fo(.)39 b(If)25 b(this)h(c)m
+(harac-)630 2392 y(ter)c(is)g(read)g(when)e(there)i(are)h(no)e(c)m
+(haracters)j(on)d(the)h(line,)i(and)d(p)s(oin)m(t)h(is)g(at)h(the)f(b)s
+(eginning)630 2501 y(of)31 b(the)f(line,)h(Readline)g(in)m(terprets)g
+(it)g(as)f(the)h(end)f(of)g(input)f(and)h(returns)f Fh(eof)p
+Fo(.)150 2672 y Fn(delete-char)e(\(C-d\))630 2782 y Fo(Delete)35
+b(the)f(c)m(haracter)h(at)f(p)s(oin)m(t.)49 b(If)33 b(this)g(function)g
+(is)g(b)s(ound)e(to)j(the)g(same)f(c)m(haracter)630 2891
+y(as)e(the)f(tt)m(y)i Fh(eof)d Fo(c)m(haracter,)j(as)f
+Fg(C-d)e Fo(commonly)i(is,)g(see)g(ab)s(o)m(v)m(e)h(for)e(the)g
+(e\013ects.)150 3062 y Fn(backward-delete-char)25 b(\(Rubout\))630
+3172 y Fo(Delete)32 b(the)f(c)m(haracter)g(b)s(ehind)e(the)h(cursor.)40
b(A)30 b(n)m(umeric)g(argumen)m(t)h(means)f(to)h(kill)g(the)630
-1622 y(c)m(haracters)h(instead)e(of)h(deleting)g(them.)150
-1792 y Fn(forward-backward-delete-)o(char)24 b(\(\))630
-1901 y Fo(Delete)40 b(the)f(c)m(haracter)h(under)c(the)j(cursor,)h
+3281 y(c)m(haracters)h(instead)e(of)h(deleting)g(them.)150
+3452 y Fn(forward-backward-delete-)o(char)24 b(\(\))630
+3561 y Fo(Delete)40 b(the)f(c)m(haracter)h(under)c(the)j(cursor,)h
(unless)d(the)i(cursor)e(is)h(at)h(the)g(end)e(of)i(the)630
-2011 y(line,)33 b(in)e(whic)m(h)g(case)i(the)f(c)m(haracter)h(b)s
+3671 y(line,)33 b(in)e(whic)m(h)g(case)i(the)f(c)m(haracter)h(b)s
(ehind)d(the)i(cursor)f(is)g(deleted.)46 b(By)32 b(default,)g(this)630
-2120 y(is)e(not)h(b)s(ound)d(to)j(a)g(k)m(ey)-8 b(.)150
-2290 y Fn(quoted-insert)27 b(\(C-q)i(or)h(C-v\))630 2399
+3781 y(is)e(not)h(b)s(ound)d(to)j(a)g(k)m(ey)-8 b(.)150
+3951 y Fn(quoted-insert)27 b(\(C-q)i(or)h(C-v\))630 4061
y Fo(Add)j(the)i(next)f(c)m(haracter)i(t)m(yp)s(ed)e(to)h(the)f(line)h
(v)m(erbatim.)53 b(This)33 b(is)i(ho)m(w)f(to)h(insert)f(k)m(ey)630
-2509 y(sequences)d(lik)m(e)g Fg(C-q)p Fo(,)f(for)g(example.)150
-2679 y Fn(tab-insert)e(\(M-TAB\))630 2788 y Fo(Insert)i(a)h(tab)f(c)m
-(haracter.)150 2958 y Fn(self-insert)d(\(a,)j(b,)g(A,)f(1,)h(!,)g(...)o
-(\))630 3067 y Fo(Insert)g(y)m(ourself.)150 3237 y Fn(transpose-chars)c
-(\(C-t\))630 3347 y Fo(Drag)33 b(the)f(c)m(haracter)h(b)s(efore)f(the)g
+4170 y(sequences)d(lik)m(e)g Fg(C-q)p Fo(,)f(for)g(example.)150
+4341 y Fn(tab-insert)e(\(M-TAB\))630 4451 y Fo(Insert)i(a)h(tab)f(c)m
+(haracter.)150 4621 y Fn(self-insert)d(\(a,)j(b,)g(A,)f(1,)h(!,)g(...)o
+(\))630 4731 y Fo(Insert)g(y)m(ourself.)150 4902 y Fn(transpose-chars)c
+(\(C-t\))630 5011 y Fo(Drag)33 b(the)f(c)m(haracter)h(b)s(efore)f(the)g
(cursor)f(forw)m(ard)h(o)m(v)m(er)h(the)f(c)m(haracter)i(at)e(the)g
-(cursor,)630 3456 y(mo)m(ving)k(the)g(cursor)f(forw)m(ard)g(as)g(w)m
+(cursor,)630 5121 y(mo)m(ving)k(the)g(cursor)f(forw)m(ard)g(as)g(w)m
(ell.)57 b(If)35 b(the)h(insertion)g(p)s(oin)m(t)f(is)g(at)i(the)e(end)
-g(of)h(the)630 3566 y(line,)24 b(then)e(this)g(transp)s(oses)f(the)h
+g(of)h(the)630 5230 y(line,)24 b(then)e(this)g(transp)s(oses)f(the)h
(last)h(t)m(w)m(o)g(c)m(haracters)g(of)f(the)h(line.)38
-b(Negativ)m(e)25 b(argumen)m(ts)630 3675 y(ha)m(v)m(e)32
-b(no)e(e\013ect.)150 3845 y Fn(transpose-words)c(\(M-t\))630
-3955 y Fo(Drag)33 b(the)g(w)m(ord)f(b)s(efore)g(p)s(oin)m(t)g(past)g
-(the)h(w)m(ord)f(after)g(p)s(oin)m(t,)i(mo)m(ving)f(p)s(oin)m(t)f(past)
-g(that)630 4064 y(w)m(ord)c(as)h(w)m(ell.)41 b(If)27
-b(the)i(insertion)f(p)s(oin)m(t)h(is)f(at)h(the)g(end)e(of)i(the)f
-(line,)i(this)e(transp)s(oses)g(the)630 4174 y(last)j(t)m(w)m(o)h(w)m
-(ords)e(on)g(the)h(line.)150 4343 y Fn(upcase-word)c(\(M-u\))630
-4453 y Fo(Upp)s(ercase)32 b(the)g(curren)m(t)g(\(or)g(follo)m(wing\))i
+b(Negativ)m(e)25 b(argumen)m(ts)630 5340 y(ha)m(v)m(e)32
+b(no)e(e\013ect.)p eop end
+%%Page: 17 20
+TeXDict begin 17 19 bop 150 -116 a Fo(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(17)150 299 y Fn(transpose-words)26
+b(\(M-t\))630 408 y Fo(Drag)33 b(the)g(w)m(ord)f(b)s(efore)g(p)s(oin)m
+(t)g(past)g(the)h(w)m(ord)f(after)g(p)s(oin)m(t,)i(mo)m(ving)f(p)s(oin)
+m(t)f(past)g(that)630 518 y(w)m(ord)c(as)h(w)m(ell.)41
+b(If)27 b(the)i(insertion)f(p)s(oin)m(t)h(is)f(at)h(the)g(end)e(of)i
+(the)f(line,)i(this)e(transp)s(oses)g(the)630 628 y(last)j(t)m(w)m(o)h
+(w)m(ords)e(on)g(the)h(line.)150 792 y Fn(upcase-word)c(\(M-u\))630
+902 y Fo(Upp)s(ercase)32 b(the)g(curren)m(t)g(\(or)g(follo)m(wing\))i
(w)m(ord.)45 b(With)32 b(a)g(negativ)m(e)j(argumen)m(t,)e(upp)s(er-)630
-4562 y(case)e(the)g(previous)f(w)m(ord,)g(but)g(do)g(not)h(mo)m(v)m(e)h
-(the)e(cursor.)150 4732 y Fn(downcase-word)d(\(M-l\))630
-4842 y Fo(Lo)m(w)m(ercase)c(the)f(curren)m(t)f(\(or)h(follo)m(wing\))i
+1012 y(case)e(the)g(previous)f(w)m(ord,)g(but)g(do)g(not)h(mo)m(v)m(e)h
+(the)e(cursor.)150 1176 y Fn(downcase-word)d(\(M-l\))630
+1286 y Fo(Lo)m(w)m(ercase)c(the)f(curren)m(t)f(\(or)h(follo)m(wing\))i
(w)m(ord.)37 b(With)22 b(a)g(negativ)m(e)i(argumen)m(t,)g(lo)m(w)m
-(ercase)630 4951 y(the)31 b(previous)e(w)m(ord,)i(but)e(do)i(not)f(mo)m
-(v)m(e)i(the)f(cursor.)150 5121 y Fn(capitalize-word)26
-b(\(M-c\))630 5230 y Fo(Capitalize)d(the)f(curren)m(t)f(\(or)g(follo)m
+(ercase)630 1396 y(the)31 b(previous)e(w)m(ord,)i(but)e(do)i(not)f(mo)m
+(v)m(e)i(the)f(cursor.)150 1560 y Fn(capitalize-word)26
+b(\(M-c\))630 1670 y Fo(Capitalize)d(the)f(curren)m(t)f(\(or)g(follo)m
(wing\))i(w)m(ord.)38 b(With)21 b(a)h(negativ)m(e)h(argumen)m(t,)h
-(capitalize)630 5340 y(the)31 b(previous)e(w)m(ord,)i(but)e(do)i(not)f
-(mo)m(v)m(e)i(the)f(cursor.)p eop end
-%%Page: 17 20
-TeXDict begin 17 19 bop 150 -116 a Fo(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(17)150 299 y Fn(overwrite-mode)26
-b(\(\))630 408 y Fo(T)-8 b(oggle)35 b(o)m(v)m(erwrite)g(mo)s(de.)48
+(capitalize)630 1780 y(the)31 b(previous)e(w)m(ord,)i(but)e(do)i(not)f
+(mo)m(v)m(e)i(the)f(cursor.)150 1944 y Fn(overwrite-mode)26
+b(\(\))630 2054 y Fo(T)-8 b(oggle)35 b(o)m(v)m(erwrite)g(mo)s(de.)48
b(With)33 b(an)g(explicit)h(p)s(ositiv)m(e)g(n)m(umeric)f(argumen)m(t,)
-h(switc)m(hes)630 518 y(to)22 b(o)m(v)m(erwrite)i(mo)s(de.)37
+h(switc)m(hes)630 2163 y(to)22 b(o)m(v)m(erwrite)i(mo)s(de.)37
b(With)22 b(an)g(explicit)h(non-p)s(ositiv)m(e)f(n)m(umeric)g(argumen)m
-(t,)i(switc)m(hes)e(to)630 628 y(insert)30 b(mo)s(de.)41
+(t,)i(switc)m(hes)e(to)630 2273 y(insert)30 b(mo)s(de.)41
b(This)30 b(command)h(a\013ects)h(only)e Fn(emacs)f Fo(mo)s(de;)i
-Fn(vi)f Fo(mo)s(de)g(do)s(es)g(o)m(v)m(erwrite)630 737
+Fn(vi)f Fo(mo)s(de)g(do)s(es)g(o)m(v)m(erwrite)630 2383
y(di\013eren)m(tly)-8 b(.)42 b(Eac)m(h)31 b(call)h(to)f
Fn(readline\(\))c Fo(starts)k(in)f(insert)g(mo)s(de.)630
-872 y(In)e(o)m(v)m(erwrite)j(mo)s(de,)e(c)m(haracters)i(b)s(ound)c(to)j
-Fn(self-insert)c Fo(replace)k(the)g(text)g(at)g(p)s(oin)m(t)630
-982 y(rather)41 b(than)h(pushing)e(the)i(text)g(to)g(the)g(righ)m(t.)75
-b(Characters)42 b(b)s(ound)d(to)j Fn(backward-)630 1092
-y(delete-char)27 b Fo(replace)32 b(the)e(c)m(haracter)i(b)s(efore)e(p)s
-(oin)m(t)h(with)f(a)g(space.)630 1227 y(By)h(default,)f(this)h(command)
-f(is)g(un)m(b)s(ound.)150 1427 y Fd(1.4.4)63 b(Killing)42
-b(And)e(Y)-10 b(anking)150 1600 y Fn(kill-line)28 b(\(C-k\))630
-1709 y Fo(Kill)j(the)f(text)i(from)e(p)s(oin)m(t)g(to)h(the)g(end)e(of)
-i(the)f(line.)150 1870 y Fn(backward-kill-line)25 b(\(C-x)30
-b(Rubout\))630 1980 y Fo(Kill)h(bac)m(kw)m(ard)g(to)g(the)f(b)s
-(eginning)g(of)g(the)h(line.)150 2140 y Fn(unix-line-discard)26
-b(\(C-u\))630 2250 y Fo(Kill)31 b(bac)m(kw)m(ard)g(from)e(the)i(cursor)
-f(to)h(the)f(b)s(eginning)g(of)h(the)f(curren)m(t)g(line.)150
-2411 y Fn(kill-whole-line)c(\(\))630 2520 y Fo(Kill)37
-b(all)g(c)m(haracters)h(on)f(the)f(curren)m(t)h(line,)h(no)f(matter)g
-(where)f(p)s(oin)m(t)h(is.)59 b(By)36 b(default,)630
-2630 y(this)30 b(is)h(un)m(b)s(ound.)150 2790 y Fn(kill-word)d(\(M-d\))
-630 2900 y Fo(Kill)i(from)f(p)s(oin)m(t)g(to)h(the)g(end)e(of)i(the)f
+2520 y(In)52 b(o)m(v)m(erwrite)h(mo)s(de,)58 b(c)m(haracters)c(b)s
+(ound)c(to)j Fn(self-insert)c Fo(replace)k(the)g(text)g(at)630
+2629 y(p)s(oin)m(t)59 b(rather)f(than)h(pushing)e(the)i(text)g(to)h
+(the)f(righ)m(t.)126 b(Characters)59 b(b)s(ound)d(to)630
+2739 y Fn(backward-delete-char)25 b Fo(replace)31 b(the)g(c)m(haracter)
+h(b)s(efore)e(p)s(oin)m(t)g(with)g(a)h(space.)630 2876
+y(By)g(default,)f(this)h(command)f(is)g(un)m(b)s(ound.)150
+3081 y Fd(1.4.4)63 b(Killing)42 b(And)e(Y)-10 b(anking)150
+3255 y Fn(kill-line)28 b(\(C-k\))630 3365 y Fo(Kill)j(the)f(text)i
+(from)e(p)s(oin)m(t)g(to)h(the)g(end)e(of)i(the)f(line.)150
+3530 y Fn(backward-kill-line)25 b(\(C-x)30 b(Rubout\))630
+3639 y Fo(Kill)h(bac)m(kw)m(ard)g(to)g(the)f(b)s(eginning)g(of)g(the)h
+(line.)150 3804 y Fn(unix-line-discard)26 b(\(C-u\))630
+3914 y Fo(Kill)31 b(bac)m(kw)m(ard)g(from)e(the)i(cursor)f(to)h(the)f
+(b)s(eginning)g(of)h(the)f(curren)m(t)g(line.)150 4079
+y Fn(kill-whole-line)c(\(\))630 4188 y Fo(Kill)37 b(all)g(c)m
+(haracters)h(on)f(the)f(curren)m(t)h(line,)h(no)f(matter)g(where)f(p)s
+(oin)m(t)h(is.)59 b(By)36 b(default,)630 4298 y(this)30
+b(is)h(un)m(b)s(ound.)150 4462 y Fn(kill-word)d(\(M-d\))630
+4572 y Fo(Kill)i(from)f(p)s(oin)m(t)g(to)h(the)g(end)e(of)i(the)f
(curren)m(t)h(w)m(ord,)f(or)g(if)h(b)s(et)m(w)m(een)g(w)m(ords,)f(to)h
-(the)g(end)630 3010 y(of)h(the)f(next)h(w)m(ord.)40 b(W)-8
+(the)g(end)630 4682 y(of)h(the)f(next)h(w)m(ord.)40 b(W)-8
b(ord)31 b(b)s(oundaries)e(are)h(the)h(same)g(as)f Fn(forward-word)p
-Fo(.)150 3170 y Fn(backward-kill-word)25 b(\(M-DEL\))630
-3280 y Fo(Kill)k(the)g(w)m(ord)g(b)s(ehind)e(p)s(oin)m(t.)40
+Fo(.)150 4846 y Fn(backward-kill-word)25 b(\(M-DEL\))630
+4956 y Fo(Kill)k(the)g(w)m(ord)g(b)s(ehind)e(p)s(oin)m(t.)40
b(W)-8 b(ord)29 b(b)s(oundaries)f(are)h(the)g(same)g(as)g
-Fn(backward-word)p Fo(.)150 3441 y Fn(unix-word-rubout)d(\(C-w\))630
-3550 y Fo(Kill)32 b(the)g(w)m(ord)f(b)s(ehind)f(p)s(oin)m(t,)i(using)f
+Fn(backward-word)p Fo(.)150 5121 y Fn(unix-word-rubout)d(\(C-w\))630
+5230 y Fo(Kill)32 b(the)g(w)m(ord)f(b)s(ehind)f(p)s(oin)m(t,)i(using)f
(white)h(space)g(as)g(a)g(w)m(ord)f(b)s(oundary)-8 b(.)43
-b(The)31 b(killed)630 3660 y(text)g(is)g(sa)m(v)m(ed)g(on)g(the)f
-(kill-ring.)150 3820 y Fn(unix-filename-rubout)25 b(\(\))630
-3930 y Fo(Kill)37 b(the)f(w)m(ord)g(b)s(ehind)f(p)s(oin)m(t,)j(using)e
-(white)g(space)h(and)f(the)g(slash)g(c)m(haracter)i(as)f(the)630
-4040 y(w)m(ord)30 b(b)s(oundaries.)39 b(The)30 b(killed)h(text)g(is)g
-(sa)m(v)m(ed)g(on)g(the)f(kill-ring.)150 4200 y Fn
-(delete-horizontal-space)24 b(\(\))630 4310 y Fo(Delete)33
-b(all)e(spaces)g(and)e(tabs)i(around)e(p)s(oin)m(t.)41
-b(By)31 b(default,)f(this)h(is)f(un)m(b)s(ound.)150 4471
-y Fn(kill-region)d(\(\))630 4580 y Fo(Kill)k(the)f(text)i(in)e(the)g
-(curren)m(t)h(region.)41 b(By)31 b(default,)f(this)h(command)f(is)g(un)
-m(b)s(ound.)150 4741 y Fn(copy-region-as-kill)25 b(\(\))630
-4851 y Fo(Cop)m(y)34 b(the)g(text)h(in)f(the)g(region)g(to)h(the)f
-(kill)h(bu\013er,)f(so)g(it)h(can)f(b)s(e)f(y)m(ank)m(ed)i(righ)m(t)f
-(a)m(w)m(a)m(y)-8 b(.)630 4960 y(By)31 b(default,)f(this)h(command)f
-(is)g(un)m(b)s(ound.)150 5121 y Fn(copy-backward-word)25
-b(\(\))630 5230 y Fo(Cop)m(y)38 b(the)h(w)m(ord)f(b)s(efore)g(p)s(oin)m
-(t)g(to)i(the)e(kill)h(bu\013er.)64 b(The)38 b(w)m(ord)g(b)s(oundaries)
-f(are)i(the)630 5340 y(same)31 b(as)f Fn(backward-word)p
-Fo(.)38 b(By)30 b(default,)h(this)f(command)g(is)h(un)m(b)s(ound.)p
-eop end
+b(The)31 b(killed)630 5340 y(text)g(is)g(sa)m(v)m(ed)g(on)g(the)f
+(kill-ring.)p eop end
%%Page: 18 21
TeXDict begin 18 20 bop 150 -116 a Fo(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(18)150 299 y Fn(copy-forward-word)
-26 b(\(\))630 408 y Fo(Cop)m(y)31 b(the)g(w)m(ord)g(follo)m(wing)h(p)s
-(oin)m(t)f(to)h(the)f(kill)h(bu\013er.)42 b(The)30 b(w)m(ord)h(b)s
-(oundaries)e(are)j(the)630 518 y(same)f(as)f Fn(forward-word)p
-Fo(.)38 b(By)30 b(default,)h(this)g(command)f(is)g(un)m(b)s(ound.)150
-684 y Fn(yank)f(\(C-y\))630 793 y Fo(Y)-8 b(ank)31 b(the)f(top)h(of)g
-(the)f(kill)h(ring)f(in)m(to)i(the)e(bu\013er)g(at)h(p)s(oin)m(t.)150
-959 y Fn(yank-pop)d(\(M-y\))630 1068 y Fo(Rotate)36 b(the)f(kill-ring,)
-i(and)d(y)m(ank)h(the)f(new)g(top.)54 b(Y)-8 b(ou)35
-b(can)g(only)f(do)h(this)f(if)h(the)g(prior)630 1178
-y(command)30 b(is)h Fn(yank)e Fo(or)h Fn(yank-pop)p Fo(.)150
-1383 y Fd(1.4.5)63 b(Sp)s(ecifying)42 b(Numeric)f(Argumen)m(ts)150
-1558 y Fn(digit-argument)26 b(\()p Fg(M-0)p Fn(,)j Fg(M-1)p
-Fn(,)h(...)f Fg(M--)p Fn(\))630 1668 y Fo(Add)d(this)h(digit)g(to)h
-(the)f(argumen)m(t)g(already)h(accum)m(ulating,)h(or)e(start)h(a)f(new)
-f(argumen)m(t.)630 1777 y Fg(M--)j Fo(starts)i(a)g(negativ)m(e)i
-(argumen)m(t.)150 1943 y Fn(universal-argument)25 b(\(\))630
-2052 y Fo(This)g(is)g(another)h(w)m(a)m(y)g(to)h(sp)s(ecify)e(an)g
+b(Command)29 b(Line)i(Editing)2107 b(18)150 299 y Fn
+(unix-filename-rubout)25 b(\(\))630 408 y Fo(Kill)37
+b(the)f(w)m(ord)g(b)s(ehind)f(p)s(oin)m(t,)j(using)e(white)g(space)h
+(and)f(the)g(slash)g(c)m(haracter)i(as)f(the)630 518
+y(w)m(ord)30 b(b)s(oundaries.)39 b(The)30 b(killed)h(text)g(is)g(sa)m
+(v)m(ed)g(on)g(the)f(kill-ring.)150 693 y Fn(delete-horizontal-space)24
+b(\(\))630 803 y Fo(Delete)33 b(all)e(spaces)g(and)e(tabs)i(around)e(p)
+s(oin)m(t.)41 b(By)31 b(default,)f(this)h(is)f(un)m(b)s(ound.)150
+978 y Fn(kill-region)d(\(\))630 1088 y Fo(Kill)k(the)f(text)i(in)e(the)
+g(curren)m(t)h(region.)41 b(By)31 b(default,)f(this)h(command)f(is)g
+(un)m(b)s(ound.)150 1263 y Fn(copy-region-as-kill)25
+b(\(\))630 1373 y Fo(Cop)m(y)34 b(the)g(text)h(in)f(the)g(region)g(to)h
+(the)f(kill)h(bu\013er,)f(so)g(it)h(can)f(b)s(e)f(y)m(ank)m(ed)i(righ)m
+(t)f(a)m(w)m(a)m(y)-8 b(.)630 1482 y(By)31 b(default,)f(this)h(command)
+f(is)g(un)m(b)s(ound.)150 1657 y Fn(copy-backward-word)25
+b(\(\))630 1767 y Fo(Cop)m(y)38 b(the)h(w)m(ord)f(b)s(efore)g(p)s(oin)m
+(t)g(to)i(the)e(kill)h(bu\013er.)64 b(The)38 b(w)m(ord)g(b)s(oundaries)
+f(are)i(the)630 1877 y(same)31 b(as)f Fn(backward-word)p
+Fo(.)38 b(By)30 b(default,)h(this)f(command)g(is)h(un)m(b)s(ound.)150
+2052 y Fn(copy-forward-word)26 b(\(\))630 2161 y Fo(Cop)m(y)31
+b(the)g(w)m(ord)g(follo)m(wing)h(p)s(oin)m(t)f(to)h(the)f(kill)h
+(bu\013er.)42 b(The)30 b(w)m(ord)h(b)s(oundaries)e(are)j(the)630
+2271 y(same)f(as)f Fn(forward-word)p Fo(.)38 b(By)30
+b(default,)h(this)g(command)f(is)g(un)m(b)s(ound.)150
+2446 y Fn(yank)f(\(C-y\))630 2556 y Fo(Y)-8 b(ank)31
+b(the)f(top)h(of)g(the)f(kill)h(ring)f(in)m(to)i(the)e(bu\013er)g(at)h
+(p)s(oin)m(t.)150 2731 y Fn(yank-pop)d(\(M-y\))630 2841
+y Fo(Rotate)36 b(the)f(kill-ring,)i(and)d(y)m(ank)h(the)f(new)g(top.)54
+b(Y)-8 b(ou)35 b(can)g(only)f(do)h(this)f(if)h(the)g(prior)630
+2950 y(command)30 b(is)h Fn(yank)e Fo(or)h Fn(yank-pop)p
+Fo(.)150 3165 y Fd(1.4.5)63 b(Sp)s(ecifying)42 b(Numeric)f(Argumen)m
+(ts)150 3345 y Fn(digit-argument)26 b(\()p Fg(M-0)p Fn(,)j
+Fg(M-1)p Fn(,)h(...)f Fg(M--)p Fn(\))630 3455 y Fo(Add)d(this)h(digit)g
+(to)h(the)f(argumen)m(t)g(already)h(accum)m(ulating,)h(or)e(start)h(a)f
+(new)f(argumen)m(t.)630 3564 y Fg(M--)j Fo(starts)i(a)g(negativ)m(e)i
+(argumen)m(t.)150 3740 y Fn(universal-argument)25 b(\(\))630
+3849 y Fo(This)g(is)g(another)h(w)m(a)m(y)g(to)h(sp)s(ecify)e(an)g
(argumen)m(t.)40 b(If)25 b(this)g(command)h(is)f(follo)m(w)m(ed)i(b)m
-(y)f(one)630 2162 y(or)k(more)f(digits,)i(optionally)g(with)e(a)h
+(y)f(one)630 3959 y(or)k(more)f(digits,)i(optionally)g(with)e(a)h
(leading)h(min)m(us)e(sign,)h(those)g(digits)g(de\014ne)f(the)h(ar-)630
-2271 y(gumen)m(t.)41 b(If)28 b(the)i(command)f(is)g(follo)m(w)m(ed)h(b)
+4068 y(gumen)m(t.)41 b(If)28 b(the)i(command)f(is)g(follo)m(w)m(ed)h(b)
m(y)f(digits,)i(executing)f Fn(universal-argument)630
-2381 y Fo(again)j(ends)e(the)h(n)m(umeric)f(argumen)m(t,)i(but)e(is)h
+4178 y Fo(again)j(ends)e(the)h(n)m(umeric)f(argumen)m(t,)i(but)e(is)h
(otherwise)g(ignored.)45 b(As)32 b(a)g(sp)s(ecial)h(case,)630
-2491 y(if)g(this)g(command)f(is)h(immediately)h(follo)m(w)m(ed)h(b)m(y)
+4288 y(if)g(this)g(command)f(is)h(immediately)h(follo)m(w)m(ed)h(b)m(y)
d(a)h(c)m(haracter)i(that)e(is)g(neither)g(a)g(digit)630
-2600 y(or)28 b(min)m(us)f(sign,)i(the)f(argumen)m(t)g(coun)m(t)h(for)e
+4397 y(or)28 b(min)m(us)f(sign,)i(the)f(argumen)m(t)g(coun)m(t)h(for)e
(the)i(next)f(command)f(is)h(m)m(ultiplied)h(b)m(y)e(four.)630
-2710 y(The)37 b(argumen)m(t)h(coun)m(t)f(is)h(initially)h(one,)g(so)f
+4507 y(The)37 b(argumen)m(t)h(coun)m(t)f(is)h(initially)h(one,)g(so)f
(executing)g(this)f(function)g(the)h(\014rst)e(time)630
-2819 y(mak)m(es)d(the)e(argumen)m(t)i(coun)m(t)f(four,)f(a)i(second)e
+4616 y(mak)m(es)d(the)e(argumen)m(t)i(coun)m(t)f(four,)f(a)i(second)e
(time)i(mak)m(es)f(the)g(argumen)m(t)g(coun)m(t)h(six-)630
-2929 y(teen,)e(and)f(so)h(on.)40 b(By)31 b(default,)g(this)f(is)g(not)h
-(b)s(ound)d(to)j(a)g(k)m(ey)-8 b(.)150 3134 y Fd(1.4.6)63
+4726 y(teen,)e(and)f(so)h(on.)40 b(By)31 b(default,)g(this)f(is)g(not)h
+(b)s(ound)d(to)j(a)g(k)m(ey)-8 b(.)150 4941 y Fd(1.4.6)63
b(Letting)40 b(Readline)h(T)m(yp)s(e)g(F)-10 b(or)42
-b(Y)-10 b(ou)150 3309 y Fn(complete)28 b(\(TAB\))630
-3419 y Fo(A)m(ttempt)c(to)f(p)s(erform)e(completion)j(on)f(the)g(text)g
+b(Y)-10 b(ou)150 5121 y Fn(complete)28 b(\(TAB\))630
+5230 y Fo(A)m(ttempt)c(to)f(p)s(erform)e(completion)j(on)f(the)g(text)g
(b)s(efore)f(p)s(oin)m(t.)39 b(The)22 b(actual)i(completion)630
-3528 y(p)s(erformed)29 b(is)h(application-sp)s(eci\014c.)42
-b(The)30 b(default)h(is)f(\014lename)h(completion.)150
-3694 y Fn(possible-completions)25 b(\(M-?\))630 3804
-y Fo(List)35 b(the)g(p)s(ossible)f(completions)i(of)e(the)h(text)h(b)s
-(efore)e(p)s(oin)m(t.)54 b(When)34 b(displa)m(ying)h(com-)630
-3913 y(pletions,)f(Readline)f(sets)f(the)h(n)m(um)m(b)s(er)e(of)i
-(columns)f(used)f(for)i(displa)m(y)f(to)h(the)g(v)-5
-b(alue)33 b(of)630 4023 y Fn(completion-display-width)o
-Fo(,)g(the)j(v)-5 b(alue)37 b(of)g(the)f(en)m(vironmen)m(t)h(v)-5
-b(ariable)38 b Fn(COLUMNS)p Fo(,)630 4132 y(or)30 b(the)h(screen)f
-(width,)g(in)g(that)h(order.)150 4298 y Fn(insert-completions)25
-b(\(M-*\))630 4407 y Fo(Insert)30 b(all)h(completions)h(of)f(the)g
-(text)g(b)s(efore)f(p)s(oin)m(t)h(that)g(w)m(ould)f(ha)m(v)m(e)i(b)s
-(een)e(generated)630 4517 y(b)m(y)g Fn(possible-completions)p
-Fo(.)150 4682 y Fn(menu-complete)d(\(\))630 4792 y Fo(Similar)d(to)g
+5340 y(p)s(erformed)29 b(is)h(application-sp)s(eci\014c.)42
+b(The)30 b(default)h(is)f(\014lename)h(completion.)p
+eop end
+%%Page: 19 22
+TeXDict begin 19 21 bop 150 -116 a Fo(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(19)150 299 y Fn
+(possible-completions)25 b(\(M-?\))630 408 y Fo(List)35
+b(the)g(p)s(ossible)f(completions)i(of)e(the)h(text)h(b)s(efore)e(p)s
+(oin)m(t.)54 b(When)34 b(displa)m(ying)h(com-)630 518
+y(pletions,)f(Readline)f(sets)f(the)h(n)m(um)m(b)s(er)e(of)i(columns)f
+(used)f(for)i(displa)m(y)f(to)h(the)g(v)-5 b(alue)33
+b(of)630 628 y Fn(completion-display-width)o Fo(,)g(the)j(v)-5
+b(alue)37 b(of)g(the)f(en)m(vironmen)m(t)h(v)-5 b(ariable)38
+b Fn(COLUMNS)p Fo(,)630 737 y(or)30 b(the)h(screen)f(width,)g(in)g
+(that)h(order.)150 883 y Fn(insert-completions)25 b(\(M-*\))630
+992 y Fo(Insert)30 b(all)h(completions)h(of)f(the)g(text)g(b)s(efore)f
+(p)s(oin)m(t)h(that)g(w)m(ould)f(ha)m(v)m(e)i(b)s(een)e(generated)630
+1102 y(b)m(y)g Fn(possible-completions)p Fo(.)150 1247
+y Fn(menu-complete)d(\(\))630 1357 y Fo(Similar)d(to)g
Fn(complete)p Fo(,)f(but)h(replaces)g(the)g(w)m(ord)g(to)g(b)s(e)f
-(completed)i(with)e(a)i(single)f(matc)m(h)630 4902 y(from)37
+(completed)i(with)e(a)i(single)f(matc)m(h)630 1466 y(from)37
b(the)h(list)h(of)f(p)s(ossible)f(completions.)64 b(Rep)s(eated)39
-b(execution)g(of)f Fn(menu-complete)630 5011 y Fo(steps)i(through)g
+b(execution)g(of)f Fn(menu-complete)630 1576 y Fo(steps)i(through)g
(the)g(list)h(of)f(p)s(ossible)g(completions,)k(inserting)c(eac)m(h)i
-(matc)m(h)f(in)f(turn.)630 5121 y(A)m(t)e(the)f(end)f(of)h(the)g(list)g
+(matc)m(h)f(in)f(turn.)630 1685 y(A)m(t)e(the)f(end)f(of)h(the)g(list)g
(of)g(completions,)i(the)e(b)s(ell)g(is)g(rung)f(\(sub)5
-b(ject)36 b(to)i(the)f(setting)630 5230 y(of)f Fn(bell-style)p
+b(ject)36 b(to)i(the)f(setting)630 1795 y(of)f Fn(bell-style)p
Fo(\))e(and)h(the)h(original)i(text)f(is)f(restored.)57
b(An)36 b(argumen)m(t)h(of)f Fe(n)f Fo(mo)m(v)m(es)i
-Fe(n)630 5340 y Fo(p)s(ositions)e(forw)m(ard)f(in)g(the)h(list)h(of)e
+Fe(n)630 1905 y Fo(p)s(ositions)e(forw)m(ard)f(in)g(the)h(list)h(of)e
(matc)m(hes;)39 b(a)c(negativ)m(e)i(argumen)m(t)e(ma)m(y)g(b)s(e)f
-(used)g(to)p eop end
-%%Page: 19 22
-TeXDict begin 19 21 bop 150 -116 a Fo(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(19)630 299 y(mo)m(v)m(e)40
-b(bac)m(kw)m(ard)e(through)g(the)g(list.)65 b(This)38
-b(command)g(is)g(in)m(tended)g(to)h(b)s(e)f(b)s(ound)e(to)630
-408 y Fn(TAB)p Fo(,)30 b(but)f(is)i(un)m(b)s(ound)d(b)m(y)i(default.)
-150 554 y Fn(menu-complete-backward)24 b(\(\))630 664
-y Fo(Iden)m(tical)36 b(to)g Fn(menu-complete)p Fo(,)d(but)h(mo)m(v)m
-(es)j(bac)m(kw)m(ard)e(through)f(the)i(list)f(of)g(p)s(ossible)630
-773 y(completions,)d(as)e(if)h Fn(menu-complete)26 b
-Fo(had)k(b)s(een)g(giv)m(en)h(a)g(negativ)m(e)i(argumen)m(t.)150
-919 y Fn(delete-char-or-list)25 b(\(\))630 1028 y Fo(Deletes)k(the)e(c)
-m(haracter)h(under)e(the)h(cursor)f(if)h(not)g(at)g(the)g(b)s(eginning)
-g(or)f(end)h(of)g(the)g(line)630 1138 y(\(lik)m(e)k Fn(delete-char)p
-Fo(\).)37 b(If)29 b(at)h(the)f(end)f(of)i(the)f(line,)h(b)s(eha)m(v)m
-(es)g(iden)m(tically)h(to)e Fn(possible-)630 1247 y(completions)p
-Fo(.)38 b(This)29 b(command)h(is)h(un)m(b)s(ound)d(b)m(y)i(default.)150
-1433 y Fd(1.4.7)63 b(Keyb)s(oard)41 b(Macros)150 1598
-y Fn(start-kbd-macro)26 b(\(C-x)j(\(\))630 1707 y Fo(Begin)i(sa)m(ving)
-h(the)e(c)m(haracters)i(t)m(yp)s(ed)e(in)m(to)h(the)g(curren)m(t)f(k)m
-(eyb)s(oard)g(macro.)150 1853 y Fn(end-kbd-macro)d(\(C-x)i(\)\))630
-1962 y Fo(Stop)e(sa)m(ving)h(the)g(c)m(haracters)g(t)m(yp)s(ed)f(in)m
-(to)i(the)e(curren)m(t)g(k)m(eyb)s(oard)g(macro)h(and)f(sa)m(v)m(e)i
-(the)630 2072 y(de\014nition.)150 2218 y Fn(call-last-kbd-macro)c
-(\(C-x)k(e\))630 2327 y Fo(Re-execute)37 b(the)e(last)h(k)m(eyb)s(oard)
-f(macro)h(de\014ned,)f(b)m(y)h(making)f(the)g(c)m(haracters)i(in)e(the)
-630 2437 y(macro)c(app)s(ear)f(as)g(if)h(t)m(yp)s(ed)f(at)h(the)f(k)m
-(eyb)s(oard.)150 2622 y Fd(1.4.8)63 b(Some)41 b(Miscellaneous)i
-(Commands)150 2787 y Fn(re-read-init-file)26 b(\(C-x)j(C-r\))630
-2897 y Fo(Read)22 b(in)g(the)g(con)m(ten)m(ts)h(of)f(the)g
+(used)g(to)630 2014 y(mo)m(v)m(e)40 b(bac)m(kw)m(ard)e(through)g(the)g
+(list.)65 b(This)38 b(command)g(is)g(in)m(tended)g(to)h(b)s(e)f(b)s
+(ound)e(to)630 2124 y Fn(TAB)p Fo(,)30 b(but)f(is)i(un)m(b)s(ound)d(b)m
+(y)i(default.)150 2269 y Fn(menu-complete-backward)24
+b(\(\))630 2379 y Fo(Iden)m(tical)36 b(to)g Fn(menu-complete)p
+Fo(,)d(but)h(mo)m(v)m(es)j(bac)m(kw)m(ard)e(through)f(the)i(list)f(of)g
+(p)s(ossible)630 2488 y(completions,)d(as)e(if)h Fn(menu-complete)26
+b Fo(had)k(b)s(een)g(giv)m(en)h(a)g(negativ)m(e)i(argumen)m(t.)150
+2634 y Fn(delete-char-or-list)25 b(\(\))630 2743 y Fo(Deletes)41
+b(the)e(c)m(haracter)h(under)e(the)h(cursor)f(if)h(not)g(at)g(the)h(b)s
+(eginning)e(or)h(end)f(of)h(the)630 2853 y(line)50 b(\(lik)m(e)h
+Fn(delete-char)p Fo(\).)96 b(If)49 b(at)h(the)g(end)f(of)h(the)f(line,)
+55 b(b)s(eha)m(v)m(es)c(iden)m(tically)g(to)630 2963
+y Fn(possible-completions)p Fo(.)35 b(This)30 b(command)g(is)g(un)m(b)s
+(ound)e(b)m(y)i(default.)150 3148 y Fd(1.4.7)63 b(Keyb)s(oard)41
+b(Macros)150 3313 y Fn(start-kbd-macro)26 b(\(C-x)j(\(\))630
+3422 y Fo(Begin)i(sa)m(ving)h(the)e(c)m(haracters)i(t)m(yp)s(ed)e(in)m
+(to)h(the)g(curren)m(t)f(k)m(eyb)s(oard)g(macro.)150
+3568 y Fn(end-kbd-macro)d(\(C-x)i(\)\))630 3677 y Fo(Stop)e(sa)m(ving)h
+(the)g(c)m(haracters)g(t)m(yp)s(ed)f(in)m(to)i(the)e(curren)m(t)g(k)m
+(eyb)s(oard)g(macro)h(and)f(sa)m(v)m(e)i(the)630 3787
+y(de\014nition.)150 3932 y Fn(call-last-kbd-macro)c(\(C-x)k(e\))630
+4042 y Fo(Re-execute)37 b(the)e(last)h(k)m(eyb)s(oard)f(macro)h
+(de\014ned,)f(b)m(y)h(making)f(the)g(c)m(haracters)i(in)e(the)630
+4151 y(macro)c(app)s(ear)f(as)g(if)h(t)m(yp)s(ed)f(at)h(the)f(k)m(eyb)s
+(oard.)150 4297 y Fn(print-last-kbd-macro)25 b(\(\))630
+4406 y Fo(Prin)m(t)30 b(the)h(last)g(k)m(eb)s(oard)f(macro)h(de\014ned)
+e(in)i(a)f(format)h(suitable)g(for)f(the)h Fe(inputrc)k
+Fo(\014le.)150 4591 y Fd(1.4.8)63 b(Some)41 b(Miscellaneous)i(Commands)
+150 4756 y Fn(re-read-init-file)26 b(\(C-x)j(C-r\))630
+4866 y Fo(Read)22 b(in)g(the)g(con)m(ten)m(ts)h(of)f(the)g
Fe(inputrc)27 b Fo(\014le,)d(and)d(incorp)s(orate)h(an)m(y)h(bindings)d
-(or)i(v)-5 b(ariable)630 3006 y(assignmen)m(ts)31 b(found)e(there.)150
-3152 y Fn(abort)g(\(C-g\))630 3261 y Fo(Ab)s(ort)d(the)h(curren)m(t)f
+(or)i(v)-5 b(ariable)630 4975 y(assignmen)m(ts)31 b(found)e(there.)150
+5121 y Fn(abort)g(\(C-g\))630 5230 y Fo(Ab)s(ort)d(the)h(curren)m(t)f
(editing)h(command)f(and)g(ring)h(the)f(terminal's)h(b)s(ell)g(\(sub)5
-b(ject)26 b(to)i(the)630 3371 y(setting)j(of)g Fn(bell-style)p
-Fo(\).)150 3516 y Fn(do-uppercase-version)25 b(\(M-a,)k(M-b,)g(M-)p
-Fg(x)11 b Fn(,)29 b(...)o(\))630 3626 y Fo(If)e(the)h(meta\014ed)g(c)m
-(haracter)h Fe(x)34 b Fo(is)28 b(lo)m(w)m(ercase,)i(run)d(the)g
-(command)h(that)g(is)g(b)s(ound)d(to)k(the)630 3736 y(corresp)s(onding)
-g(upp)s(ercase)h(c)m(haracter.)150 3881 y Fn(prefix-meta)d(\(ESC\))630
-3991 y Fo(Metafy)39 b(the)e(next)h(c)m(haracter)h(t)m(yp)s(ed.)62
+b(ject)26 b(to)i(the)630 5340 y(setting)j(of)g Fn(bell-style)p
+Fo(\).)p eop end
+%%Page: 20 23
+TeXDict begin 20 22 bop 150 -116 a Fo(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(20)150 299 y Fn
+(do-uppercase-version)25 b(\(M-a,)k(M-b,)g(M-)p Fg(x)p
+Fn(,)g(...)o(\))630 408 y Fo(If)e(the)h(meta\014ed)g(c)m(haracter)h
+Fe(x)34 b Fo(is)28 b(lo)m(w)m(ercase,)i(run)d(the)g(command)h(that)g
+(is)g(b)s(ound)d(to)k(the)630 518 y(corresp)s(onding)g(upp)s(ercase)h
+(c)m(haracter.)150 667 y Fn(prefix-meta)d(\(ESC\))630
+777 y Fo(Metafy)39 b(the)e(next)h(c)m(haracter)h(t)m(yp)s(ed.)62
b(This)37 b(is)g(for)h(k)m(eyb)s(oards)f(without)g(a)h(meta)g(k)m(ey)-8
-b(.)630 4100 y(T)m(yping)30 b(`)p Fn(ESC)g(f)p Fo(')g(is)h(equiv)-5
-b(alen)m(t)31 b(to)g(t)m(yping)g Fg(M-f)p Fo(.)150 4246
-y Fn(undo)e(\(C-_)g(or)h(C-x)g(C-u\))630 4355 y Fo(Incremen)m(tal)h
+b(.)630 887 y(T)m(yping)30 b(`)p Fn(ESC)g(f)p Fo(')g(is)h(equiv)-5
+b(alen)m(t)31 b(to)g(t)m(yping)g Fg(M-f)p Fo(.)150 1036
+y Fn(undo)e(\(C-_)g(or)h(C-x)g(C-u\))630 1146 y Fo(Incremen)m(tal)h
(undo,)f(separately)h(remem)m(b)s(ered)f(for)g(eac)m(h)i(line.)150
-4501 y Fn(revert-line)27 b(\(M-r\))630 4611 y Fo(Undo)33
+1295 y Fn(revert-line)27 b(\(M-r\))630 1405 y Fo(Undo)33
b(all)h(c)m(hanges)g(made)f(to)h(this)f(line.)49 b(This)32
b(is)h(lik)m(e)i(executing)f(the)f Fn(undo)f Fo(command)630
-4720 y(enough)e(times)h(to)g(get)h(bac)m(k)f(to)g(the)f(b)s(eginning.)
-150 4866 y Fn(tilde-expand)d(\(M-~\))630 4975 y Fo(P)m(erform)j(tilde)h
-(expansion)g(on)f(the)g(curren)m(t)h(w)m(ord.)150 5121
-y Fn(set-mark)d(\(C-@\))630 5230 y Fo(Set)33 b(the)g(mark)f(to)i(the)f
+1514 y(enough)e(times)h(to)g(get)h(bac)m(k)f(to)g(the)f(b)s(eginning.)
+150 1664 y Fn(tilde-expand)d(\(M-~\))630 1773 y Fo(P)m(erform)j(tilde)h
+(expansion)g(on)f(the)g(curren)m(t)h(w)m(ord.)150 1923
+y Fn(set-mark)d(\(C-@\))630 2032 y Fo(Set)33 b(the)g(mark)f(to)i(the)f
(p)s(oin)m(t.)48 b(If)32 b(a)h(n)m(umeric)g(argumen)m(t)g(is)g
-(supplied,)f(the)h(mark)g(is)f(set)630 5340 y(to)f(that)g(p)s(osition.)
-p eop end
-%%Page: 20 23
-TeXDict begin 20 22 bop 150 -116 a Fo(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(20)150 299 y Fn
-(exchange-point-and-mark)24 b(\(C-x)29 b(C-x\))630 408
-y Fo(Sw)m(ap)i(the)g(p)s(oin)m(t)g(with)g(the)g(mark.)43
+(supplied,)f(the)h(mark)g(is)f(set)630 2142 y(to)f(that)g(p)s(osition.)
+150 2291 y Fn(exchange-point-and-mark)24 b(\(C-x)29 b(C-x\))630
+2401 y Fo(Sw)m(ap)i(the)g(p)s(oin)m(t)g(with)g(the)g(mark.)43
b(The)31 b(curren)m(t)g(cursor)f(p)s(osition)i(is)f(set)h(to)f(the)h
-(sa)m(v)m(ed)630 518 y(p)s(osition,)f(and)e(the)i(old)g(cursor)e(p)s
-(osition)i(is)f(sa)m(v)m(ed)i(as)e(the)h(mark.)150 711
-y Fn(character-search)26 b(\(C-]\))630 821 y Fo(A)f(c)m(haracter)h(is)f
-(read)g(and)f(p)s(oin)m(t)h(is)g(mo)m(v)m(ed)h(to)g(the)f(next)g(o)s
-(ccurrence)g(of)g(that)g(c)m(haracter.)630 930 y(A)30
+(sa)m(v)m(ed)630 2511 y(p)s(osition,)f(and)e(the)i(old)g(cursor)e(p)s
+(osition)i(is)f(sa)m(v)m(ed)i(as)e(the)h(mark.)150 2660
+y Fn(character-search)26 b(\(C-]\))630 2770 y Fo(A)f(c)m(haracter)h(is)
+f(read)g(and)f(p)s(oin)m(t)h(is)g(mo)m(v)m(ed)h(to)g(the)f(next)g(o)s
+(ccurrence)g(of)g(that)g(c)m(haracter.)630 2879 y(A)30
b(negativ)m(e)j(coun)m(t)e(searc)m(hes)g(for)f(previous)g(o)s
-(ccurrences.)150 1123 y Fn(character-search-backwar)o(d)24
-b(\(M-C-]\))630 1233 y Fo(A)45 b(c)m(haracter)h(is)f(read)g(and)f(p)s
+(ccurrences.)150 3029 y Fn(character-search-backwar)o(d)24
+b(\(M-C-]\))630 3138 y Fo(A)45 b(c)m(haracter)h(is)f(read)g(and)f(p)s
(oin)m(t)h(is)g(mo)m(v)m(ed)h(to)f(the)g(previous)f(o)s(ccurrence)h(of)
-g(that)630 1342 y(c)m(haracter.)d(A)31 b(negativ)m(e)h(coun)m(t)f
+g(that)630 3248 y(c)m(haracter.)d(A)31 b(negativ)m(e)h(coun)m(t)f
(searc)m(hes)h(for)e(subsequen)m(t)f(o)s(ccurrences.)150
-1535 y Fn(skip-csi-sequence)d(\(\))630 1645 y Fo(Read)i(enough)f(c)m
+3397 y Fn(skip-csi-sequence)d(\(\))630 3507 y Fo(Read)i(enough)f(c)m
(haracters)h(to)g(consume)f(a)h(m)m(ulti-k)m(ey)h(sequence)f(suc)m(h)f
-(as)g(those)h(de\014ned)630 1754 y(for)37 b(k)m(eys)h(lik)m(e)g(Home)g
+(as)g(those)h(de\014ned)630 3616 y(for)37 b(k)m(eys)h(lik)m(e)g(Home)g
(and)f(End.)60 b(Suc)m(h)37 b(sequences)g(b)s(egin)g(with)g(a)h(Con)m
-(trol)g(Sequence)630 1864 y(Indicator)f(\(CSI\),)f(usually)h(ESC-[.)59
+(trol)g(Sequence)630 3726 y(Indicator)f(\(CSI\),)f(usually)h(ESC-[.)59
b(If)36 b(this)g(sequence)h(is)g(b)s(ound)d(to)k Fn("\\)p
-Fo(e[)p Fn(")p Fo(,)g(k)m(eys)f(pro-)630 1973 y(ducing)31
+Fo(e[)p Fn(")p Fo(,)g(k)m(eys)f(pro-)630 3836 y(ducing)31
b(suc)m(h)h(sequences)g(will)h(ha)m(v)m(e)g(no)f(e\013ect)h(unless)e
-(explicitly)j(b)s(ound)c(to)i(a)h(readline)630 2083 y(command,)f
+(explicitly)j(b)s(ound)c(to)i(a)h(readline)630 3945 y(command,)f
(instead)g(of)g(inserting)g(stra)m(y)h(c)m(haracters)g(in)m(to)g(the)f
-(editing)h(bu\013er.)44 b(This)31 b(is)630 2193 y(un)m(b)s(ound)d(b)m
+(editing)h(bu\013er.)44 b(This)31 b(is)630 4055 y(un)m(b)s(ound)d(b)m
(y)i(default,)h(but)f(usually)g(b)s(ound)e(to)j(ESC-[.)150
-2385 y Fn(insert-comment)26 b(\(M-#\))630 2495 y Fo(Without)36
+4204 y Fn(insert-comment)26 b(\(M-#\))630 4314 y Fo(Without)36
b(a)g(n)m(umeric)g(argumen)m(t,)h(the)f(v)-5 b(alue)36
b(of)g(the)g Fn(comment-begin)c Fo(v)-5 b(ariable)36
-b(is)g(in-)630 2605 y(serted)c(at)g(the)g(b)s(eginning)f(of)h(the)f
+b(is)g(in-)630 4423 y(serted)c(at)g(the)g(b)s(eginning)f(of)h(the)f
(curren)m(t)h(line.)45 b(If)31 b(a)h(n)m(umeric)f(argumen)m(t)h(is)g
-(supplied,)630 2714 y(this)k(command)h(acts)g(as)g(a)g(toggle:)55
+(supplied,)630 4533 y(this)k(command)h(acts)g(as)g(a)g(toggle:)55
b(if)37 b(the)f(c)m(haracters)i(at)g(the)e(b)s(eginning)g(of)h(the)g
-(line)630 2824 y(do)30 b(not)h(matc)m(h)h(the)f(v)-5
+(line)630 4643 y(do)30 b(not)h(matc)m(h)h(the)f(v)-5
b(alue)31 b(of)f Fn(comment-begin)p Fo(,)e(the)i(v)-5
-b(alue)31 b(is)g(inserted,)g(otherwise)g(the)630 2933
+b(alue)31 b(is)g(inserted,)g(otherwise)g(the)630 4752
y(c)m(haracters)42 b(in)d Fn(comment-begin)e Fo(are)j(deleted)h(from)f
-(the)g(b)s(eginning)g(of)g(the)g(line.)71 b(In)630 3043
+(the)g(b)s(eginning)g(of)g(the)g(line.)71 b(In)630 4862
y(either)31 b(case,)h(the)e(line)h(is)f(accepted)i(as)f(if)f(a)h
-(newline)f(had)g(b)s(een)f(t)m(yp)s(ed.)150 3236 y Fn(dump-functions)d
-(\(\))630 3345 y Fo(Prin)m(t)g(all)i(of)e(the)h(functions)f(and)g
+(newline)f(had)g(b)s(een)f(t)m(yp)s(ed.)150 5011 y Fn(dump-functions)d
+(\(\))630 5121 y Fo(Prin)m(t)g(all)i(of)e(the)h(functions)f(and)g
(their)g(k)m(ey)h(bindings)e(to)j(the)e(Readline)h(output)f(stream.)630
-3455 y(If)31 b(a)h(n)m(umeric)g(argumen)m(t)g(is)g(supplied,)f(the)h
+5230 y(If)31 b(a)h(n)m(umeric)g(argumen)m(t)g(is)g(supplied,)f(the)h
(output)f(is)h(formatted)g(in)f(suc)m(h)h(a)g(w)m(a)m(y)g(that)630
-3565 y(it)f(can)g(b)s(e)e(made)i(part)f(of)g(an)h Fe(inputrc)k
+5340 y(it)f(can)g(b)s(e)e(made)i(part)f(of)g(an)h Fe(inputrc)k
Fo(\014le.)41 b(This)29 b(command)h(is)h(un)m(b)s(ound)c(b)m(y)k
-(default.)150 3757 y Fn(dump-variables)26 b(\(\))630
-3867 y Fo(Prin)m(t)21 b(all)h(of)g(the)f(settable)i(v)-5
+(default.)p eop end
+%%Page: 21 24
+TeXDict begin 21 23 bop 150 -116 a Fo(Chapter)30 b(1:)41
+b(Command)29 b(Line)i(Editing)2107 b(21)150 299 y Fn(dump-variables)26
+b(\(\))630 408 y Fo(Prin)m(t)21 b(all)h(of)g(the)f(settable)i(v)-5
b(ariables)22 b(and)f(their)g(v)-5 b(alues)22 b(to)g(the)f(Readline)h
-(output)f(stream.)630 3977 y(If)31 b(a)h(n)m(umeric)g(argumen)m(t)g(is)
-g(supplied,)f(the)h(output)f(is)h(formatted)g(in)f(suc)m(h)h(a)g(w)m(a)
-m(y)g(that)630 4086 y(it)f(can)g(b)s(e)e(made)i(part)f(of)g(an)h
+(output)f(stream.)630 518 y(If)31 b(a)h(n)m(umeric)g(argumen)m(t)g(is)g
+(supplied,)f(the)h(output)f(is)h(formatted)g(in)f(suc)m(h)h(a)g(w)m(a)m
+(y)g(that)630 628 y(it)f(can)g(b)s(e)e(made)i(part)f(of)g(an)h
Fe(inputrc)k Fo(\014le.)41 b(This)29 b(command)h(is)h(un)m(b)s(ound)c
-(b)m(y)k(default.)150 4279 y Fn(dump-macros)c(\(\))630
-4389 y Fo(Prin)m(t)34 b(all)g(of)g(the)g(Readline)g(k)m(ey)h(sequences)
-f(b)s(ound)e(to)i(macros)g(and)f(the)h(strings)g(they)630
-4498 y(output.)53 b(If)35 b(a)g(n)m(umeric)f(argumen)m(t)i(is)e
+(b)m(y)k(default.)150 787 y Fn(dump-macros)c(\(\))630
+897 y Fo(Prin)m(t)34 b(all)g(of)g(the)g(Readline)g(k)m(ey)h(sequences)f
+(b)s(ound)e(to)i(macros)g(and)f(the)h(strings)g(they)630
+1006 y(output.)53 b(If)35 b(a)g(n)m(umeric)f(argumen)m(t)i(is)e
(supplied,)h(the)g(output)g(is)f(formatted)i(in)e(suc)m(h)h(a)630
-4608 y(w)m(a)m(y)c(that)g(it)f(can)g(b)s(e)g(made)g(part)f(of)i(an)e
+1116 y(w)m(a)m(y)c(that)g(it)f(can)g(b)s(e)g(made)g(part)f(of)i(an)e
Fe(inputrc)35 b Fo(\014le.)41 b(This)29 b(command)h(is)g(un)m(b)s(ound)
-d(b)m(y)630 4717 y(default.)150 4910 y Fn(emacs-editing-mode)e(\(C-e\))
-630 5020 y Fo(When)30 b(in)g Fn(vi)g Fo(command)g(mo)s(de,)g(this)h
+d(b)m(y)630 1225 y(default.)150 1385 y Fn(emacs-editing-mode)e(\(C-e\))
+630 1494 y Fo(When)30 b(in)g Fn(vi)g Fo(command)g(mo)s(de,)g(this)h
(causes)f(a)h(switc)m(h)g(to)g Fn(emacs)e Fo(editing)i(mo)s(de.)150
-5213 y Fn(vi-editing-mode)26 b(\(M-C-j\))630 5322 y Fo(When)k(in)g
+1654 y Fn(vi-editing-mode)26 b(\(M-C-j\))630 1763 y Fo(When)k(in)g
Fn(emacs)f Fo(editing)i(mo)s(de,)f(this)h(causes)f(a)h(switc)m(h)g(to)g
-Fn(vi)f Fo(editing)h(mo)s(de.)p eop end
-%%Page: 21 24
-TeXDict begin 21 23 bop 150 -116 a Fo(Chapter)30 b(1:)41
-b(Command)29 b(Line)i(Editing)2107 b(21)150 299 y Fm(1.5)68
-b(Readline)47 b(vi)e(Mo)t(de)150 458 y Fo(While)32 b(the)g(Readline)g
-(library)f(do)s(es)g(not)h(ha)m(v)m(e)h(a)f(full)f(set)h(of)g
-Fn(vi)f Fo(editing)h(functions,)f(it)h(do)s(es)g(con)m(tain)150
-568 y(enough)i(to)h(allo)m(w)g(simple)f(editing)h(of)f(the)g(line.)52
+Fn(vi)f Fo(editing)h(mo)s(de.)150 1996 y Fm(1.5)68 b(Readline)47
+b(vi)e(Mo)t(de)150 2155 y Fo(While)32 b(the)g(Readline)g(library)f(do)s
+(es)g(not)h(ha)m(v)m(e)h(a)f(full)f(set)h(of)g Fn(vi)f
+Fo(editing)h(functions,)f(it)h(do)s(es)g(con)m(tain)150
+2265 y(enough)i(to)h(allo)m(w)g(simple)f(editing)h(of)f(the)g(line.)52
b(The)34 b(Readline)g Fn(vi)g Fo(mo)s(de)f(b)s(eha)m(v)m(es)i(as)f(sp)s
-(eci\014ed)f(in)150 677 y(the)e Fh(posix)e Fo(standard.)275
-812 y(In)f(order)g(to)i(switc)m(h)g(in)m(teractiv)m(ely)i(b)s(et)m(w)m
+(eci\014ed)f(in)150 2374 y(the)e Fh(posix)e Fo(standard.)275
+2509 y(In)f(order)g(to)i(switc)m(h)g(in)m(teractiv)m(ely)i(b)s(et)m(w)m
(een)d Fn(emacs)f Fo(and)g Fn(vi)h Fo(editing)g(mo)s(des,)g(use)g(the)g
-(command)150 922 y Fg(M-C-j)36 b Fo(\(b)s(ound)h(to)h(emacs-editing-mo)
-s(de)i(when)d(in)g Fn(vi)h Fo(mo)s(de)f(and)g(to)i(vi-editing-mo)s(de)g
-(in)e Fn(emacs)150 1031 y Fo(mo)s(de\).)k(The)30 b(Readline)h(default)f
-(is)g Fn(emacs)f Fo(mo)s(de.)275 1166 y(When)g(y)m(ou)i(en)m(ter)f(a)h
-(line)f(in)g Fn(vi)f Fo(mo)s(de,)h(y)m(ou)h(are)f(already)h(placed)f
-(in)g(`insertion')g(mo)s(de,)g(as)h(if)f(y)m(ou)150 1275
-y(had)f(t)m(yp)s(ed)g(an)g(`)p Fn(i)p Fo('.)41 b(Pressing)29
-b Fn(ESC)f Fo(switc)m(hes)i(y)m(ou)g(in)m(to)h(`command')e(mo)s(de,)h
-(where)e(y)m(ou)i(can)g(edit)g(the)150 1385 y(text)35
-b(of)f(the)g(line)g(with)f(the)h(standard)f Fn(vi)g Fo(mo)m(v)m(emen)m
-(t)j(k)m(eys,)g(mo)m(v)m(e)f(to)f(previous)g(history)f(lines)h(with)150
-1494 y(`)p Fn(k)p Fo(')d(and)e(subsequen)m(t)h(lines)h(with)f(`)p
-Fn(j)p Fo(',)g(and)g(so)h(forth.)p eop end
+(command)150 2619 y Fg(M-C-j)36 b Fo(\(b)s(ound)h(to)h
+(emacs-editing-mo)s(de)i(when)d(in)g Fn(vi)h Fo(mo)s(de)f(and)g(to)i
+(vi-editing-mo)s(de)g(in)e Fn(emacs)150 2728 y Fo(mo)s(de\).)k(The)30
+b(Readline)h(default)f(is)g Fn(emacs)f Fo(mo)s(de.)275
+2863 y(When)g(y)m(ou)i(en)m(ter)f(a)h(line)f(in)g Fn(vi)f
+Fo(mo)s(de,)h(y)m(ou)h(are)f(already)h(placed)f(in)g(`insertion')g(mo)s
+(de,)g(as)h(if)f(y)m(ou)150 2972 y(had)f(t)m(yp)s(ed)g(an)g(`)p
+Fn(i)p Fo('.)41 b(Pressing)29 b Fn(ESC)f Fo(switc)m(hes)i(y)m(ou)g(in)m
+(to)h(`command')e(mo)s(de,)h(where)e(y)m(ou)i(can)g(edit)g(the)150
+3082 y(text)35 b(of)f(the)g(line)g(with)f(the)h(standard)f
+Fn(vi)g Fo(mo)m(v)m(emen)m(t)j(k)m(eys,)g(mo)m(v)m(e)f(to)f(previous)g
+(history)f(lines)h(with)150 3191 y(`)p Fn(k)p Fo(')d(and)e(subsequen)m
+(t)h(lines)h(with)f(`)p Fn(j)p Fo(',)g(and)g(so)h(forth.)p
+eop end
%%Page: 22 25
TeXDict begin 22 24 bop 150 -116 a Fo(App)s(endix)29
b(A:)h(GNU)h(F)-8 b(ree)32 b(Do)s(cumen)m(tation)g(License)1603
@@ -4464,55 +6683,55 @@ b(is)f(not)h(T)-8 b(ransparen)m(t)34 b(if)g(used)g(for)g(an)m(y)g
Fo(without)330 2395 y(markup,)37 b(T)-8 b(exinfo)36 b(input)f(format,)j
(LaT)1759 2414 y(E)1810 2395 y(X)e(input)f(format,)j
Fc(SGML)f Fo(or)f Fc(XML)g Fo(using)g(a)g(publicly)330
-2504 y(a)m(v)-5 b(ailable)42 b Fc(DTD)p Fo(,)g(and)d
-(standard-conforming)h(simple)g Fc(HTML)p Fo(,)g(P)m(ostScript)h(or)f
-Fc(PDF)g Fo(designed)330 2614 y(for)e(h)m(uman)g(mo)s(di\014cation.)65
-b(Examples)38 b(of)h(transparen)m(t)f(image)i(formats)e(include)g
-Fc(PNG)p Fo(,)h Fc(X)n(CF)330 2724 y Fo(and)h Fc(JPG)p
-Fo(.)g(Opaque)h(formats)g(include)f(proprietary)g(formats)h(that)h(can)
-f(b)s(e)f(read)g(and)h(edited)330 2833 y(only)54 b(b)m(y)f(proprietary)
-h(w)m(ord)f(pro)s(cessors,)59 b Fc(SGML)54 b Fo(or)f
-Fc(XML)h Fo(for)g(whic)m(h)f(the)h Fc(DTD)g Fo(and/or)330
-2943 y(pro)s(cessing)61 b(to)s(ols)h(are)f(not)g(generally)i(a)m(v)-5
-b(ailable,)71 b(and)60 b(the)h(mac)m(hine-generated)j
-Fc(HTML)p Fo(,)330 3052 y(P)m(ostScript)31 b(or)f Fc(PDF)h
-Fo(pro)s(duced)d(b)m(y)j(some)f(w)m(ord)g(pro)s(cessors)g(for)g(output)
-g(purp)s(oses)f(only)-8 b(.)330 3203 y(The)34 b(\\Title)h(P)m(age")i
-(means,)e(for)f(a)h(prin)m(ted)f(b)s(o)s(ok,)h(the)f(title)i(page)f
-(itself,)h(plus)e(suc)m(h)f(follo)m(wing)330 3313 y(pages)28
-b(as)g(are)g(needed)g(to)g(hold,)g(legibly)-8 b(,)30
-b(the)e(material)h(this)e(License)i(requires)e(to)h(app)s(ear)f(in)h
-(the)330 3422 y(title)g(page.)40 b(F)-8 b(or)28 b(w)m(orks)e(in)g
-(formats)h(whic)m(h)g(do)f(not)h(ha)m(v)m(e)h(an)m(y)e(title)j(page)e
-(as)g(suc)m(h,)g(\\Title)h(P)m(age")330 3532 y(means)j(the)f(text)i
-(near)e(the)h(most)g(prominen)m(t)g(app)s(earance)f(of)h(the)g(w)m
-(ork's)g(title,)h(preceding)f(the)330 3641 y(b)s(eginning)f(of)g(the)h
-(b)s(o)s(dy)e(of)h(the)h(text.)330 3792 y(The)j(\\publisher")g(means)h
-(an)m(y)f(p)s(erson)g(or)h(en)m(tit)m(y)h(that)f(distributes)f(copies)i
-(of)e(the)h(Do)s(cumen)m(t)330 3902 y(to)c(the)g(public.)330
-4052 y(A)f(section)h(\\En)m(titled)g(XYZ")f(means)f(a)h(named)g
-(subunit)e(of)h(the)h(Do)s(cumen)m(t)h(whose)e(title)i(either)330
-4162 y(is)d(precisely)g(XYZ)g(or)f(con)m(tains)i(XYZ)f(in)f(paren)m
-(theses)i(follo)m(wing)g(text)g(that)f(translates)h(XYZ)e(in)330
-4271 y(another)e(language.)40 b(\(Here)26 b(XYZ)f(stands)f(for)h(a)g
-(sp)s(eci\014c)g(section)h(name)f(men)m(tioned)h(b)s(elo)m(w,)g(suc)m
-(h)330 4381 y(as)i(\\Ac)m(kno)m(wledgemen)m(ts",)33 b(\\Dedications",)e
-(\\Endorsemen)m(ts",)e(or)f(\\History".\))42 b(T)-8 b(o)29
-b(\\Preserv)m(e)330 4491 y(the)34 b(Title")h(of)e(suc)m(h)h(a)g
-(section)g(when)f(y)m(ou)h(mo)s(dify)e(the)i(Do)s(cumen)m(t)h(means)e
-(that)h(it)g(remains)g(a)330 4600 y(section)e(\\En)m(titled)f(XYZ")g
-(according)g(to)g(this)g(de\014nition.)330 4751 y(The)c(Do)s(cumen)m(t)
-i(ma)m(y)f(include)f(W)-8 b(arran)m(t)m(y)30 b(Disclaimers)f(next)f(to)
-g(the)g(notice)h(whic)m(h)e(states)i(that)330 4861 y(this)34
-b(License)g(applies)g(to)h(the)f(Do)s(cumen)m(t.)52 b(These)33
-b(W)-8 b(arran)m(t)m(y)36 b(Disclaimers)f(are)g(considered)e(to)330
-4970 y(b)s(e)k(included)g(b)m(y)g(reference)h(in)g(this)f(License,)j
-(but)d(only)h(as)g(regards)f(disclaiming)i(w)m(arran)m(ties:)330
-5080 y(an)m(y)e(other)g(implication)i(that)e(these)g(W)-8
-b(arran)m(t)m(y)39 b(Disclaimers)f(ma)m(y)g(ha)m(v)m(e)g(is)f(v)m(oid)g
-(and)f(has)h(no)330 5189 y(e\013ect)32 b(on)e(the)h(meaning)f(of)h
-(this)f(License.)199 5340 y(2.)61 b(VERBA)-8 b(TIM)31
-b(COPYING)p eop end
+2504 y(a)m(v)-5 b(ailable)42 b Fc(DTD)p Fo(,)h(and)c
+(standard-conforming)g(simple)h Fc(HTML)p Fo(,)i(P)m(ostScript)e(or)f
+Fc(PDF)h Fo(designed)330 2614 y(for)e(h)m(uman)f(mo)s(di\014cation.)65
+b(Examples)38 b(of)h(transparen)m(t)f(image)h(formats)g(include)f
+Fc(PNG)p Fo(,)i Fc(X)n(CF)330 2724 y Fo(and)e Fc(JPG)p
+Fo(.)64 b(Opaque)38 b(formats)h(include)f(proprietary)h(formats)f(that)
+h(can)g(b)s(e)f(read)h(and)f(edited)330 2833 y(only)54
+b(b)m(y)f(proprietary)h(w)m(ord)f(pro)s(cessors,)59 b
+Fc(SGML)54 b Fo(or)f Fc(XML)h Fo(for)g(whic)m(h)f(the)h
+Fc(DTD)g Fo(and/or)330 2943 y(pro)s(cessing)61 b(to)s(ols)h(are)f(not)g
+(generally)i(a)m(v)-5 b(ailable,)71 b(and)60 b(the)h(mac)m
+(hine-generated)j Fc(HTML)p Fo(,)330 3052 y(P)m(ostScript)31
+b(or)f Fc(PDF)h Fo(pro)s(duced)d(b)m(y)j(some)f(w)m(ord)g(pro)s
+(cessors)g(for)g(output)g(purp)s(oses)f(only)-8 b(.)330
+3203 y(The)34 b(\\Title)h(P)m(age")i(means,)e(for)f(a)h(prin)m(ted)f(b)
+s(o)s(ok,)h(the)f(title)i(page)f(itself,)h(plus)e(suc)m(h)f(follo)m
+(wing)330 3313 y(pages)28 b(as)g(are)g(needed)g(to)g(hold,)g(legibly)-8
+b(,)30 b(the)e(material)h(this)e(License)i(requires)e(to)h(app)s(ear)f
+(in)h(the)330 3422 y(title)g(page.)40 b(F)-8 b(or)28
+b(w)m(orks)e(in)g(formats)h(whic)m(h)g(do)f(not)h(ha)m(v)m(e)h(an)m(y)e
+(title)j(page)e(as)g(suc)m(h,)g(\\Title)h(P)m(age")330
+3532 y(means)j(the)f(text)i(near)e(the)h(most)g(prominen)m(t)g(app)s
+(earance)f(of)h(the)g(w)m(ork's)g(title,)h(preceding)f(the)330
+3641 y(b)s(eginning)f(of)g(the)h(b)s(o)s(dy)e(of)h(the)h(text.)330
+3792 y(The)j(\\publisher")g(means)h(an)m(y)f(p)s(erson)g(or)h(en)m(tit)
+m(y)h(that)f(distributes)f(copies)i(of)e(the)h(Do)s(cumen)m(t)330
+3902 y(to)c(the)g(public.)330 4052 y(A)f(section)h(\\En)m(titled)g
+(XYZ")f(means)f(a)h(named)g(subunit)e(of)h(the)h(Do)s(cumen)m(t)h
+(whose)e(title)i(either)330 4162 y(is)d(precisely)g(XYZ)g(or)f(con)m
+(tains)i(XYZ)f(in)f(paren)m(theses)i(follo)m(wing)g(text)g(that)f
+(translates)h(XYZ)e(in)330 4271 y(another)e(language.)40
+b(\(Here)26 b(XYZ)f(stands)f(for)h(a)g(sp)s(eci\014c)g(section)h(name)f
+(men)m(tioned)h(b)s(elo)m(w,)g(suc)m(h)330 4381 y(as)i(\\Ac)m(kno)m
+(wledgemen)m(ts",)33 b(\\Dedications",)e(\\Endorsemen)m(ts",)e(or)f
+(\\History".\))42 b(T)-8 b(o)29 b(\\Preserv)m(e)330 4491
+y(the)34 b(Title")h(of)e(suc)m(h)h(a)g(section)g(when)f(y)m(ou)h(mo)s
+(dify)e(the)i(Do)s(cumen)m(t)h(means)e(that)h(it)g(remains)g(a)330
+4600 y(section)e(\\En)m(titled)f(XYZ")g(according)g(to)g(this)g
+(de\014nition.)330 4751 y(The)c(Do)s(cumen)m(t)i(ma)m(y)f(include)f(W)
+-8 b(arran)m(t)m(y)30 b(Disclaimers)f(next)f(to)g(the)g(notice)h(whic)m
+(h)e(states)i(that)330 4861 y(this)34 b(License)g(applies)g(to)h(the)f
+(Do)s(cumen)m(t.)52 b(These)33 b(W)-8 b(arran)m(t)m(y)36
+b(Disclaimers)f(are)g(considered)e(to)330 4970 y(b)s(e)k(included)g(b)m
+(y)g(reference)h(in)g(this)f(License,)j(but)d(only)h(as)g(regards)f
+(disclaiming)i(w)m(arran)m(ties:)330 5080 y(an)m(y)e(other)g
+(implication)i(that)e(these)g(W)-8 b(arran)m(t)m(y)39
+b(Disclaimers)f(ma)m(y)g(ha)m(v)m(e)g(is)f(v)m(oid)g(and)f(has)h(no)330
+5189 y(e\013ect)32 b(on)e(the)h(meaning)f(of)h(this)f(License.)199
+5340 y(2.)61 b(VERBA)-8 b(TIM)31 b(COPYING)p eop end
%%Page: 24 27
TeXDict begin 24 26 bop 150 -116 a Fo(App)s(endix)29
b(A:)h(GNU)h(F)-8 b(ree)32 b(Do)s(cumen)m(tation)g(License)1603
@@ -4940,8 +7159,8 @@ b(use)f(this)h(License)g(in)f(a)h(do)s(cumen)m(t)g(y)m(ou)f(ha)m(v)m(e)
i(written,)g(include)f(a)f(cop)m(y)i(of)f(the)f(License)h(in)g(the)150
568 y(do)s(cumen)m(t)30 b(and)g(put)g(the)g(follo)m(wing)i(cop)m(yrigh)
m(t)g(and)e(license)h(notices)g(just)f(after)h(the)g(title)h(page:)468
-680 y Fb(Copyright)42 b(\(C\))79 b Fa(year)88 b(your)40
-b(name)9 b Fb(.)468 767 y(Permission)42 b(is)e(granted)g(to)g(copy,)h
+680 y Fb(Copyright)42 b(\(C\))79 b Fa(year)g(your)40
+b(name)p Fb(.)468 767 y(Permission)i(is)e(granted)g(to)g(copy,)h
(distribute)g(and/or)g(modify)f(this)g(document)468 854
y(under)h(the)f(terms)g(of)g(the)g(GNU)g(Free)g(Documentation)i
(License,)f(Version)g(1.3)468 941 y(or)f(any)g(later)g(version)h
@@ -4955,20 +7174,20 @@ b(ron)m(t-Co)m(v)m(er)42 b(T)-8 b(exts)41 b(and)e(Bac)m(k-Co)m(v)m(er)k
(T)-8 b(exts,)43 b(replace)e(the)150 1447 y(\\with)6
b(.)22 b(.)g(.)12 b(T)-8 b(exts.")41 b(line)31 b(with)f(this:)547
1559 y Fb(with)40 b(the)g(Invariant)h(Sections)g(being)g
-Fa(list)f(their)g(titles)9 b Fb(,)41 b(with)547 1646
-y(the)f(Front-Cover)i(Texts)e(being)g Fa(list)9 b Fb(,)40
-b(and)g(with)g(the)g(Back-Cover)i(Texts)547 1733 y(being)e
-Fa(list)9 b Fb(.)275 1868 y Fo(If)34 b(y)m(ou)i(ha)m(v)m(e)g(In)m(v)-5
-b(arian)m(t)36 b(Sections)g(without)f(Co)m(v)m(er)h(T)-8
-b(exts,)38 b(or)d(some)g(other)h(com)m(bination)g(of)g(the)150
-1978 y(three,)31 b(merge)g(those)g(t)m(w)m(o)g(alternativ)m(es)i(to)e
-(suit)f(the)h(situation.)275 2112 y(If)23 b(y)m(our)h(do)s(cumen)m(t)f
-(con)m(tains)i(non)m(trivial)g(examples)g(of)f(program)f(co)s(de,)j(w)m
-(e)e(recommend)g(releasing)150 2222 y(these)44 b(examples)f(in)g
-(parallel)h(under)e(y)m(our)h(c)m(hoice)i(of)e(free)g(soft)m(w)m(are)h
-(license,)k(suc)m(h)43 b(as)g(the)g(GNU)150 2331 y(General)31
-b(Public)f(License,)i(to)f(p)s(ermit)e(their)i(use)f(in)g(free)g(soft)m
-(w)m(are.)p eop end
+Fa(list)f(their)g(titles)p Fb(,)h(with)547 1646 y(the)f(Front-Cover)i
+(Texts)e(being)g Fa(list)p Fb(,)h(and)f(with)g(the)g(Back-Cover)h
+(Texts)547 1733 y(being)f Fa(list)p Fb(.)275 1868 y Fo(If)34
+b(y)m(ou)i(ha)m(v)m(e)g(In)m(v)-5 b(arian)m(t)36 b(Sections)g(without)f
+(Co)m(v)m(er)h(T)-8 b(exts,)38 b(or)d(some)g(other)h(com)m(bination)g
+(of)g(the)150 1978 y(three,)31 b(merge)g(those)g(t)m(w)m(o)g
+(alternativ)m(es)i(to)e(suit)f(the)h(situation.)275 2112
+y(If)23 b(y)m(our)h(do)s(cumen)m(t)f(con)m(tains)i(non)m(trivial)g
+(examples)g(of)f(program)f(co)s(de,)j(w)m(e)e(recommend)g(releasing)150
+2222 y(these)44 b(examples)f(in)g(parallel)h(under)e(y)m(our)h(c)m
+(hoice)i(of)e(free)g(soft)m(w)m(are)h(license,)k(suc)m(h)43
+b(as)g(the)g(GNU)150 2331 y(General)31 b(Public)f(License,)i(to)f(p)s
+(ermit)e(their)i(use)f(in)g(free)g(soft)m(w)m(are.)p
+eop end
%%Trailer
userdict /end-hook known{end-hook}if
diff --git a/doc/rluserman.texi b/doc/rluserman.texi
index 3d54520..ba6b0ad 100644
--- a/doc/rluserman.texi
+++ b/doc/rluserman.texi
@@ -2,33 +2,25 @@
@comment %**start of header (This is for running Texinfo on a region.)
@setfilename rluserman.info
@settitle GNU Readline Library
-@comment %**end of header (This is for running Texinfo on a region.)
-
@include version.texi
+@comment %**end of header (This is for running Texinfo on a region.)
+
@copying
This manual describes the end user interface of the GNU Readline Library
(version @value{VERSION}, @value{UPDATED}), a library which aids in the
consistency of user interface across discrete programs which provide
a command line interface.
-Copyright @copyright{} 1988--2011 Free Software Foundation, Inc.
-
-Permission is granted to make and distribute verbatim copies of
-this manual provided the copyright notice and this permission notice
-are preserved on all copies.
+Copyright @copyright{} 1988--2014 Free Software Foundation, Inc.
@quotation
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with no
-Invariant Sections, with the Front-Cover texts being ``A GNU Manual'',
-and with the Back-Cover Texts as in (a) below. A copy of the license is
-included in the section entitled ``GNU Free Documentation License''.
-
-(a) The FSF's Back-Cover Text is: You are free to copy and modify
-this GNU manual. Buying copies from GNU Press supports the FSF in
-developing GNU and promoting software freedom.''
+Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
+A copy of the license is included in the section entitled
+``GNU Free Documentation License''.
@end quotation
@end copying
@@ -49,12 +41,6 @@ developing GNU and promoting software freedom.''
@vskip 0pt plus 1filll
@insertcopying
-@sp 1
-Published by the Free Software Foundation @*
-59 Temple Place, Suite 330, @*
-Boston, MA 02111-1307 @*
-USA @*
-
@end titlepage
@contents
@@ -66,6 +52,7 @@ USA @*
This document describes the end user interface of the GNU Readline Library,
a utility which aids in the consistency of user interface across discrete
programs which provide a command line interface.
+The Readline home page is @url{http://www.gnu.org/software/readline/}.
@menu
* Command Line Editing:: GNU Readline User's Manual.
diff --git a/doc/texinfo.tex b/doc/texinfo.tex
index 03c2998..bfd765d 100644
--- a/doc/texinfo.tex
+++ b/doc/texinfo.tex
@@ -1,13 +1,13 @@
% texinfo.tex -- TeX macros to handle Texinfo files.
-%
+%
% Load plain if necessary, i.e., if running under initex.
\expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi
%
-\def\texinfoversion{2009-01-18.17}
+\def\texinfoversion{2013-09-11.11}
%
% Copyright 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995,
% 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
-% 2007, 2008, 2009 Free Software Foundation, Inc.
+% 2007, 2008, 2009, 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
%
% This texinfo.tex file is free software: you can redistribute it and/or
% modify it under the terms of the GNU General Public License as
@@ -24,13 +24,14 @@
%
% As a special exception, when this file is read by TeX when processing
% a Texinfo source document, you may use the result without
-% restriction. (This has been our intent since Texinfo was invented.)
+% restriction. This Exception is an additional permission under section 7
+% of the GNU General Public License, version 3 ("GPLv3").
%
% Please try the latest version of texinfo.tex before submitting bug
% reports; you can get the latest version from:
-% http://www.gnu.org/software/texinfo/ (the Texinfo home page), or
-% ftp://tug.org/tex/texinfo.tex
-% (and all CTAN mirrors, see http://www.ctan.org).
+% http://ftp.gnu.org/gnu/texinfo/ (the Texinfo release area), or
+% http://ftpmirror.gnu.org/texinfo/ (same, via a mirror), or
+% http://www.gnu.org/software/texinfo/ (the Texinfo home page)
% The texinfo.tex in any given distribution could well be out
% of date, so if that's what you're using, please check.
%
@@ -65,7 +66,6 @@
\everyjob{\message{[Texinfo version \texinfoversion]}%
\catcode`+=\active \catcode`\_=\active}
-
\chardef\other=12
% We never want plain's \outer definition of \+ in Texinfo.
@@ -93,14 +93,13 @@
\let\ptexnewwrite\newwrite
\let\ptexnoindent=\noindent
\let\ptexplus=+
+\let\ptexraggedright=\raggedright
\let\ptexrbrace=\}
\let\ptexslash=\/
\let\ptexstar=\*
\let\ptext=\t
\let\ptextop=\top
-{\catcode`\'=\active
-\global\let\ptexquoteright'}% Math-mode def from plain.tex.
-\let\ptexraggedright=\raggedright
+{\catcode`\'=\active \global\let\ptexquoteright'}% active in plain's math mode
% If this character appears in an error message or help string, it
% starts a new line in the output.
@@ -118,10 +117,11 @@
% Set up fixed words for English if not already set.
\ifx\putwordAppendix\undefined \gdef\putwordAppendix{Appendix}\fi
\ifx\putwordChapter\undefined \gdef\putwordChapter{Chapter}\fi
+\ifx\putworderror\undefined \gdef\putworderror{error}\fi
\ifx\putwordfile\undefined \gdef\putwordfile{file}\fi
\ifx\putwordin\undefined \gdef\putwordin{in}\fi
-\ifx\putwordIndexIsEmpty\undefined \gdef\putwordIndexIsEmpty{(Index is empty)}\fi
-\ifx\putwordIndexNonexistent\undefined \gdef\putwordIndexNonexistent{(Index is nonexistent)}\fi
+\ifx\putwordIndexIsEmpty\undefined \gdef\putwordIndexIsEmpty{(Index is empty)}\fi
+\ifx\putwordIndexNonexistent\undefined \gdef\putwordIndexNonexistent{(Index is nonexistent)}\fi
\ifx\putwordInfo\undefined \gdef\putwordInfo{Info}\fi
\ifx\putwordInstanceVariableof\undefined \gdef\putwordInstanceVariableof{Instance Variable of}\fi
\ifx\putwordMethodon\undefined \gdef\putwordMethodon{Method on}\fi
@@ -160,15 +160,18 @@
\def\spaceisspace{\catcode`\ =\spacecat}
% sometimes characters are active, so we need control sequences.
+\chardef\ampChar = `\&
\chardef\colonChar = `\:
\chardef\commaChar = `\,
\chardef\dashChar = `\-
\chardef\dotChar = `\.
\chardef\exclamChar= `\!
+\chardef\hashChar = `\#
\chardef\lquoteChar= `\`
\chardef\questChar = `\?
\chardef\rquoteChar= `\'
\chardef\semiChar = `\;
+\chardef\slashChar = `\/
\chardef\underChar = `\_
% Ignore a token.
@@ -199,36 +202,7 @@
% that mark overfull boxes (in case you have decided
% that the text looks ok even though it passes the margin).
%
-\def\finalout{\overfullrule=0pt}
-
-% @| inserts a changebar to the left of the current line. It should
-% surround any changed text. This approach does *not* work if the
-% change spans more than two lines of output. To handle that, we would
-% have adopt a much more difficult approach (putting marks into the main
-% vertical list for the beginning and end of each change).
-%
-\def\|{%
- % \vadjust can only be used in horizontal mode.
- \leavevmode
- %
- % Append this vertical mode material after the current line in the output.
- \vadjust{%
- % We want to insert a rule with the height and depth of the current
- % leading; that is exactly what \strutbox is supposed to record.
- \vskip-\baselineskip
- %
- % \vadjust-items are inserted at the left edge of the type. So
- % the \llap here moves out into the left-hand margin.
- \llap{%
- %
- % For a thicker or thinner bar, change the `1pt'.
- \vrule height\baselineskip width1pt
- %
- % This is the space between the bar and the text.
- \hskip 12pt
- }%
- }%
-}
+\def\finalout{\overfullrule=0pt }
% Sometimes it is convenient to have everything in the transcript file
% and nothing on the terminal. We don't just call \tracingall here,
@@ -246,7 +220,7 @@
\tracingmacros2
\tracingrestores1
\showboxbreadth\maxdimen \showboxdepth\maxdimen
- \ifx\eTeXversion\undefined\else % etex gives us more logging
+ \ifx\eTeXversion\thisisundefined\else % etex gives us more logging
\tracingscantokens1
\tracingifs1
\tracinggroups1
@@ -257,6 +231,13 @@
\errorcontextlines16
}%
+% @errormsg{MSG}. Do the index-like expansions on MSG, but if things
+% aren't perfect, it's not the end of the world, being an error message,
+% after all.
+%
+\def\errormsg{\begingroup \indexnofonts \doerrormsg}
+\def\doerrormsg#1{\errmessage{#1}}
+
% add check for \lastpenalty to plain's definitions. If the last thing
% we did was a \nobreak, we don't want to insert more space.
%
@@ -267,7 +248,6 @@
\def\bigbreak{\ifnum\lastpenalty<10000\par\ifdim\lastskip<\bigskipamount
\removelastskip\penalty-200\bigskip\fi\fi}
-% For @cropmarks command.
% Do @cropmarks to get crop marks.
%
\newif\ifcropmarks
@@ -301,9 +281,9 @@
\toks6=\expandafter{\prevsectiondefs}%
\toks8=\expandafter{\lastcolordefs}%
\mark{%
- \the\toks0 \the\toks2
- \noexpand\or \the\toks4 \the\toks6
- \noexpand\else \the\toks8
+ \the\toks0 \the\toks2 % 0: top marks (\last...)
+ \noexpand\or \the\toks4 \the\toks6 % 1: bottom marks (default, \prev...)
+ \noexpand\else \the\toks8 % 2: color marks
}%
}
% \topmark doesn't work for the very first chapter (after the title
@@ -342,10 +322,13 @@
%
% Do this outside of the \shipout so @code etc. will be expanded in
% the headline as they should be, not taken literally (outputting ''code).
+ \def\commmonheadfootline{\let\hsize=\pagewidth \texinfochars}
+ %
\ifodd\pageno \getoddheadingmarks \else \getevenheadingmarks \fi
- \setbox\headlinebox = \vbox{\let\hsize=\pagewidth \makeheadline}%
+ \global\setbox\headlinebox = \vbox{\commmonheadfootline \makeheadline}%
+ %
\ifodd\pageno \getoddfootingmarks \else \getevenfootingmarks \fi
- \setbox\footlinebox = \vbox{\let\hsize=\pagewidth \makefootline}%
+ \global\setbox\footlinebox = \vbox{\commmonheadfootline \makefootline}%
%
{%
% Have to do this stuff outside the \shipout because we want it to
@@ -358,7 +341,7 @@
% We don't want .vr (or whatever) entries like this:
% \entry{{\tt \indexbackslash }acronym}{32}{\code {\acronym}}
% "\acronym" won't work when it's read back in;
- % it needs to be
+ % it needs to be
% {\code {{\tt \backslashcurfont }acronym}
\shipout\vbox{%
% Do this early so pdf references go to the beginning of the page.
@@ -577,7 +560,7 @@
}
\def\inenvironment#1{%
\ifx#1\empty
- out of any environment%
+ outside of any environment%
\else
in environment \expandafter\string#1%
\fi
@@ -589,7 +572,7 @@
\parseargdef\end{%
\if 1\csname iscond.#1\endcsname
\else
- % The general wording of \badenverr may not be ideal, but... --kasal, 06nov03
+ % The general wording of \badenverr may not be ideal.
\expandafter\checkenv\csname#1\endcsname
\csname E#1\endcsname
\endgroup
@@ -599,85 +582,6 @@
\newhelp\EMsimple{Press RETURN to continue.}
-%% Simple single-character @ commands
-
-% @@ prints an @
-% Kludge this until the fonts are right (grr).
-\def\@{{\tt\char64}}
-
-% This is turned off because it was never documented
-% and you can use @w{...} around a quote to suppress ligatures.
-%% Define @` and @' to be the same as ` and '
-%% but suppressing ligatures.
-%\def\`{{`}}
-%\def\'{{'}}
-
-% Used to generate quoted braces.
-\def\mylbrace {{\tt\char123}}
-\def\myrbrace {{\tt\char125}}
-\let\{=\mylbrace
-\let\}=\myrbrace
-\begingroup
- % Definitions to produce \{ and \} commands for indices,
- % and @{ and @} for the aux/toc files.
- \catcode`\{ = \other \catcode`\} = \other
- \catcode`\[ = 1 \catcode`\] = 2
- \catcode`\! = 0 \catcode`\\ = \other
- !gdef!lbracecmd[\{]%
- !gdef!rbracecmd[\}]%
- !gdef!lbraceatcmd[@{]%
- !gdef!rbraceatcmd[@}]%
-!endgroup
-
-% @comma{} to avoid , parsing problems.
-\let\comma = ,
-
-% Accents: @, @dotaccent @ringaccent @ubaraccent @udotaccent
-% Others are defined by plain TeX: @` @' @" @^ @~ @= @u @v @H.
-\let\, = \c
-\let\dotaccent = \.
-\def\ringaccent#1{{\accent23 #1}}
-\let\tieaccent = \t
-\let\ubaraccent = \b
-\let\udotaccent = \d
-
-% Other special characters: @questiondown @exclamdown @ordf @ordm
-% Plain TeX defines: @AA @AE @O @OE @L (plus lowercase versions) @ss.
-\def\questiondown{?`}
-\def\exclamdown{!`}
-\def\ordf{\leavevmode\raise1ex\hbox{\selectfonts\lllsize \underbar{a}}}
-\def\ordm{\leavevmode\raise1ex\hbox{\selectfonts\lllsize \underbar{o}}}
-
-% Dotless i and dotless j, used for accents.
-\def\imacro{i}
-\def\jmacro{j}
-\def\dotless#1{%
- \def\temp{#1}%
- \ifx\temp\imacro \ifmmode\imath \else\ptexi \fi
- \else\ifx\temp\jmacro \ifmmode\jmath \else\j \fi
- \else \errmessage{@dotless can be used only with i or j}%
- \fi\fi
-}
-
-% The \TeX{} logo, as in plain, but resetting the spacing so that a
-% period following counts as ending a sentence. (Idea found in latex.)
-%
-\edef\TeX{\TeX \spacefactor=1000 }
-
-% @LaTeX{} logo. Not quite the same results as the definition in
-% latex.ltx, since we use a different font for the raised A; it's most
-% convenient for us to use an explicitly smaller font, rather than using
-% the \scriptstyle font (since we don't reset \scriptstyle and
-% \scriptscriptstyle).
-%
-\def\LaTeX{%
- L\kern-.36em
- {\setbox0=\hbox{T}%
- \vbox to \ht0{\hbox{\selectfonts\lllsize A}\vss}}%
- \kern-.15em
- \TeX
-}
-
% Be sure we're in horizontal mode when doing a tie, since we make space
% equivalent to this in @example-like environments. Otherwise, a space
% at the beginning of a line will start with \penalty -- and
@@ -694,7 +598,7 @@
\def\:{\spacefactor=1000 }
% @* forces a line break.
-\def\*{\hfil\break\hbox{}\ignorespaces}
+\def\*{\unskip\hfil\break\hbox{}\ignorespaces}
% @/ allows a line break.
\let\/=\allowbreak
@@ -709,7 +613,7 @@
\def\?{?\spacefactor=\endofsentencespacefactor\space}
% @frenchspacing on|off says whether to put extra space after punctuation.
-%
+%
\def\onword{on}
\def\offword{off}
%
@@ -719,7 +623,7 @@
\else\ifx\temp\offword \plainnonfrenchspacing
\else
\errhelp = \EMsimple
- \errmessage{Unknown @frenchspacing option `\temp', must be on/off}%
+ \errmessage{Unknown @frenchspacing option `\temp', must be on|off}%
\fi\fi
}
@@ -801,15 +705,6 @@ where each line of input produces a line of output.}
\newdimen\mil \mil=0.001in
-% Old definition--didn't work.
-%\parseargdef\need{\par %
-%% This method tries to make TeX break the page naturally
-%% if the depth of the box does not fit.
-%{\baselineskip=0pt%
-%\vtop to #1\mil{\vfil}\kern -#1\mil\nobreak
-%\prevdepth=-1000pt
-%}}
-
\parseargdef\need{%
% Ensure vertical mode, so we don't make a big box in the middle of a
% paragraph.
@@ -873,7 +768,7 @@ where each line of input produces a line of output.}
% @inmargin{WHICH}{TEXT} puts TEXT in the WHICH margin next to the current
% paragraph. For more general purposes, use the \margin insertion
-% class. WHICH is `l' or `r'.
+% class. WHICH is `l' or `r'. Not documented, written for gawk manual.
%
\newskip\inmarginspacing \inmarginspacing=1cm
\def\strutdepth{\dp\strutbox}
@@ -920,6 +815,36 @@ where each line of input produces a line of output.}
\temp
}
+% @| inserts a changebar to the left of the current line. It should
+% surround any changed text. This approach does *not* work if the
+% change spans more than two lines of output. To handle that, we would
+% have adopt a much more difficult approach (putting marks into the main
+% vertical list for the beginning and end of each change). This command
+% is not documented, not supported, and doesn't work.
+%
+\def\|{%
+ % \vadjust can only be used in horizontal mode.
+ \leavevmode
+ %
+ % Append this vertical mode material after the current line in the output.
+ \vadjust{%
+ % We want to insert a rule with the height and depth of the current
+ % leading; that is exactly what \strutbox is supposed to record.
+ \vskip-\baselineskip
+ %
+ % \vadjust-items are inserted at the left edge of the type. So
+ % the \llap here moves out into the left-hand margin.
+ \llap{%
+ %
+ % For a thicker or thinner bar, change the `1pt'.
+ \vrule height\baselineskip width1pt
+ %
+ % This is the space between the bar and the text.
+ \hskip 12pt
+ }%
+ }%
+}
+
% @include FILE -- \input text of FILE.
%
\def\include{\parseargusing\filenamecatcodes\includezzz}
@@ -930,6 +855,7 @@ where each line of input produces a line of output.}
\makevalueexpandable % we want to expand any @value in FILE.
\turnoffactive % and allow special characters in the expansion
\indexnofonts % Allow `@@' and other weird things in file names.
+ \wlog{texinfo.tex: doing @include of #1^^J}%
\edef\temp{\noexpand\input #1 }%
%
% This trickery is to read FILE outside of a group, in case it makes
@@ -965,7 +891,7 @@ where each line of input produces a line of output.}
\def\popthisfilestack{\errthisfilestackempty}
\def\errthisfilestackempty{\errmessage{Internal error:
the stack of filenames is empty.}}
-
+%
\def\thisfile{}
% @center line
@@ -973,36 +899,46 @@ where each line of input produces a line of output.}
%
\parseargdef\center{%
\ifhmode
- \let\next\centerH
+ \let\centersub\centerH
\else
- \let\next\centerV
+ \let\centersub\centerV
\fi
- \next{\hfil \ignorespaces#1\unskip \hfil}%
+ \centersub{\hfil \ignorespaces#1\unskip \hfil}%
+ \let\centersub\relax % don't let the definition persist, just in case
}
-\def\centerH#1{%
- {%
- \hfil\break
- \advance\hsize by -\leftskip
- \advance\hsize by -\rightskip
- \line{#1}%
- \break
- }%
+\def\centerH#1{{%
+ \hfil\break
+ \advance\hsize by -\leftskip
+ \advance\hsize by -\rightskip
+ \line{#1}%
+ \break
+}}
+%
+\newcount\centerpenalty
+\def\centerV#1{%
+ % The idea here is the same as in \startdefun, \cartouche, etc.: if
+ % @center is the first thing after a section heading, we need to wipe
+ % out the negative parskip inserted by \sectionheading, but still
+ % prevent a page break here.
+ \centerpenalty = \lastpenalty
+ \ifnum\centerpenalty>10000 \vskip\parskip \fi
+ \ifnum\centerpenalty>9999 \penalty\centerpenalty \fi
+ \line{\kern\leftskip #1\kern\rightskip}%
}
-\def\centerV#1{\line{\kern\leftskip #1\kern\rightskip}}
% @sp n outputs n lines of vertical space
-
+%
\parseargdef\sp{\vskip #1\baselineskip}
% @comment ...line which is ignored...
% @c is the same as @comment
% @ignore ... @end ignore is another way to write a comment
-
+%
\def\comment{\begingroup \catcode`\^^M=\other%
\catcode`\@=\other \catcode`\{=\other \catcode`\}=\other%
\commentxxx}
{\catcode`\^^M=\other \gdef\commentxxx#1^^M{\endgroup}}
-
+%
\let\c=\comment
% @paragraphindent NCHARS
@@ -1095,109 +1031,6 @@ where each line of input produces a line of output.}
}
-% @asis just yields its argument. Used with @table, for example.
-%
-\def\asis#1{#1}
-
-% @math outputs its argument in math mode.
-%
-% One complication: _ usually means subscripts, but it could also mean
-% an actual _ character, as in @math{@var{some_variable} + 1}. So make
-% _ active, and distinguish by seeing if the current family is \slfam,
-% which is what @var uses.
-{
- \catcode`\_ = \active
- \gdef\mathunderscore{%
- \catcode`\_=\active
- \def_{\ifnum\fam=\slfam \_\else\sb\fi}%
- }
-}
-% Another complication: we want \\ (and @\) to output a \ character.
-% FYI, plain.tex uses \\ as a temporary control sequence (why?), but
-% this is not advertised and we don't care. Texinfo does not
-% otherwise define @\.
-%
-% The \mathchar is class=0=ordinary, family=7=ttfam, position=5C=\.
-\def\mathbackslash{\ifnum\fam=\ttfam \mathchar"075C \else\backslash \fi}
-%
-\def\math{%
- \tex
- \mathunderscore
- \let\\ = \mathbackslash
- \mathactive
- % make the texinfo accent commands work in math mode
- \let\"=\ddot
- \let\'=\acute
- \let\==\bar
- \let\^=\hat
- \let\`=\grave
- \let\u=\breve
- \let\v=\check
- \let\~=\tilde
- \let\dotaccent=\dot
- $\finishmath
-}
-\def\finishmath#1{#1$\endgroup} % Close the group opened by \tex.
-
-% Some active characters (such as <) are spaced differently in math.
-% We have to reset their definitions in case the @math was an argument
-% to a command which sets the catcodes (such as @item or @section).
-%
-{
- \catcode`^ = \active
- \catcode`< = \active
- \catcode`> = \active
- \catcode`+ = \active
- \catcode`' = \active
- \gdef\mathactive{%
- \let^ = \ptexhat
- \let< = \ptexless
- \let> = \ptexgtr
- \let+ = \ptexplus
- \let' = \ptexquoteright
- }
-}
-
-% Some math mode symbols.
-\def\bullet{$\ptexbullet$}
-\def\geq{\ifmmode \ge\else $\ge$\fi}
-\def\leq{\ifmmode \le\else $\le$\fi}
-\def\minus{\ifmmode -\else $-$\fi}
-
-% @dots{} outputs an ellipsis using the current font.
-% We do .5em per period so that it has the same spacing in the cm
-% typewriter fonts as three actual period characters; on the other hand,
-% in other typewriter fonts three periods are wider than 1.5em. So do
-% whichever is larger.
-%
-\def\dots{%
- \leavevmode
- \setbox0=\hbox{...}% get width of three periods
- \ifdim\wd0 > 1.5em
- \dimen0 = \wd0
- \else
- \dimen0 = 1.5em
- \fi
- \hbox to \dimen0{%
- \hskip 0pt plus.25fil
- .\hskip 0pt plus1fil
- .\hskip 0pt plus1fil
- .\hskip 0pt plus.5fil
- }%
-}
-
-% @enddots{} is an end-of-sentence ellipsis.
-%
-\def\enddots{%
- \dots
- \spacefactor=\endofsentencespacefactor
-}
-
-% @comma{} is so commas can be inserted into text without messing up
-% Texinfo's parsing.
-%
-\let\comma = ,
-
% @refill is a no-op.
\let\refill=\relax
@@ -1262,9 +1095,8 @@ where each line of input produces a line of output.}
\newif\ifpdfmakepagedest
% when pdftex is run in dvi mode, \pdfoutput is defined (so \pdfoutput=1
-% can be set). So we test for \relax and 0 as well as \undefined,
-% borrowed from ifpdf.sty.
-\ifx\pdfoutput\undefined
+% can be set). So we test for \relax and 0 as well as being undefined.
+\ifx\pdfoutput\thisisundefined
\else
\ifx\pdfoutput\relax
\else
@@ -1279,50 +1111,24 @@ where each line of input produces a line of output.}
% for display in the outlines, and in other places. Thus, we have to
% double any backslashes. Otherwise, a name like "\node" will be
% interpreted as a newline (\n), followed by o, d, e. Not good.
-% http://www.ntg.nl/pipermail/ntg-pdftex/2004-July/000654.html
-% (and related messages, the final outcome is that it is up to the TeX
-% user to double the backslashes and otherwise make the string valid, so
-% that's what we do).
-
-% double active backslashes.
-%
-{\catcode`\@=0 \catcode`\\=\active
- @gdef@activebackslashdouble{%
- @catcode`@\=@active
- @let\=@doublebackslash}
-}
-
-% To handle parens, we must adopt a different approach, since parens are
-% not active characters. hyperref.dtx (which has the same problem as
-% us) handles it with this amazing macro to replace tokens, with minor
-% changes for Texinfo. It is included here under the GPL by permission
-% from the author, Heiko Oberdiek.
-%
-% #1 is the tokens to replace.
-% #2 is the replacement.
-% #3 is the control sequence with the string.
%
-\def\HyPsdSubst#1#2#3{%
- \def\HyPsdReplace##1#1##2\END{%
- ##1%
- \ifx\\##2\\%
- \else
- #2%
- \HyReturnAfterFi{%
- \HyPsdReplace##2\END
- }%
- \fi
- }%
- \xdef#3{\expandafter\HyPsdReplace#3#1\END}%
-}
-\long\def\HyReturnAfterFi#1\fi{\fi#1}
-
-% #1 is a control sequence in which to do the replacements.
-\def\backslashparens#1{%
- \xdef#1{#1}% redefine it as its expansion; the definition is simply
- % \lastnode when called from \setref -> \pdfmkdest.
- \HyPsdSubst{(}{\realbackslash(}{#1}%
- \HyPsdSubst{)}{\realbackslash)}{#1}%
+% See http://www.ntg.nl/pipermail/ntg-pdftex/2004-July/000654.html and
+% related messages. The final outcome is that it is up to the TeX user
+% to double the backslashes and otherwise make the string valid, so
+% that's what we do. pdftex 1.30.0 (ca.2005) introduced a primitive to
+% do this reliably, so we use it.
+
+% #1 is a control sequence in which to do the replacements,
+% which we \xdef.
+\def\txiescapepdf#1{%
+ \ifx\pdfescapestring\thisisundefined
+ % No primitive available; should we give a warning or log?
+ % Many times it won't matter.
+ \else
+ % The expandable \pdfescapestring primitive escapes parentheses,
+ % backslashes, and other special chars.
+ \xdef#1{\pdfescapestring{#1}}%
+ \fi
}
\newhelp\nopdfimagehelp{Texinfo supports .png, .jpg, .jpeg, and .pdf images
@@ -1332,13 +1138,16 @@ output) for that.)}
\ifpdf
%
- % Color manipulation macros based on pdfcolor.tex.
- \def\cmykDarkRed{0.28 1 1 0.35}
- \def\cmykBlack{0 0 0 1}
+ % Color manipulation macros based on pdfcolor.tex,
+ % except using rgb instead of cmyk; the latter is said to render as a
+ % very dark gray on-screen and a very dark halftone in print, instead
+ % of actual black.
+ \def\rgbDarkRed{0.50 0.09 0.12}
+ \def\rgbBlack{0 0 0}
%
% k sets the color for filling (usual text, etc.);
% K sets the color for stroking (thin rules, e.g., normal _'s).
- \def\pdfsetcolor#1{\pdfliteral{#1 k #1 K}}
+ \def\pdfsetcolor#1{\pdfliteral{#1 rg #1 RG}}
%
% Set color, and create a mark which defines \thiscolor accordingly,
% so that \makeheadline knows which color to restore.
@@ -1348,7 +1157,7 @@ output) for that.)}
\pdfsetcolor{#1}%
}
%
- \def\maincolor{\cmykBlack}
+ \def\maincolor{\rgbBlack}
\pdfsetcolor{\maincolor}
\edef\thiscolor{\maincolor}
\def\lastcolordefs{}
@@ -1378,32 +1187,34 @@ output) for that.)}
%
% #1 is image name, #2 width (might be empty/whitespace), #3 height (ditto).
\def\dopdfimage#1#2#3{%
- \def\imagewidth{#2}\setbox0 = \hbox{\ignorespaces #2}%
- \def\imageheight{#3}\setbox2 = \hbox{\ignorespaces #3}%
+ \def\pdfimagewidth{#2}\setbox0 = \hbox{\ignorespaces #2}%
+ \def\pdfimageheight{#3}\setbox2 = \hbox{\ignorespaces #3}%
%
- % pdftex (and the PDF format) support .png, .jpg, .pdf (among
- % others). Let's try in that order.
+ % pdftex (and the PDF format) support .pdf, .png, .jpg (among
+ % others). Let's try in that order, PDF first since if
+ % someone has a scalable image, presumably better to use that than a
+ % bitmap.
\let\pdfimgext=\empty
\begingroup
- \openin 1 #1.png \ifeof 1
- \openin 1 #1.jpg \ifeof 1
- \openin 1 #1.jpeg \ifeof 1
- \openin 1 #1.JPG \ifeof 1
- \openin 1 #1.pdf \ifeof 1
- \openin 1 #1.PDF \ifeof 1
+ \openin 1 #1.pdf \ifeof 1
+ \openin 1 #1.PDF \ifeof 1
+ \openin 1 #1.png \ifeof 1
+ \openin 1 #1.jpg \ifeof 1
+ \openin 1 #1.jpeg \ifeof 1
+ \openin 1 #1.JPG \ifeof 1
\errhelp = \nopdfimagehelp
\errmessage{Could not find image file #1 for pdf}%
- \else \gdef\pdfimgext{PDF}%
+ \else \gdef\pdfimgext{JPG}%
\fi
- \else \gdef\pdfimgext{pdf}%
+ \else \gdef\pdfimgext{jpeg}%
\fi
- \else \gdef\pdfimgext{JPG}%
+ \else \gdef\pdfimgext{jpg}%
\fi
- \else \gdef\pdfimgext{jpeg}%
+ \else \gdef\pdfimgext{png}%
\fi
- \else \gdef\pdfimgext{jpg}%
+ \else \gdef\pdfimgext{PDF}%
\fi
- \else \gdef\pdfimgext{png}%
+ \else \gdef\pdfimgext{pdf}%
\fi
\closein 1
\endgroup
@@ -1415,8 +1226,8 @@ output) for that.)}
\else
\immediate\pdfximage
\fi
- \ifdim \wd0 >0pt width \imagewidth \fi
- \ifdim \wd2 >0pt height \imageheight \fi
+ \ifdim \wd0 >0pt width \pdfimagewidth \fi
+ \ifdim \wd2 >0pt height \pdfimageheight \fi
\ifnum\pdftexversion<13
#1.\pdfimgext
\else
@@ -1431,10 +1242,9 @@ output) for that.)}
% such as \, aren't expanded when present in a section title.
\indexnofonts
\turnoffactive
- \activebackslashdouble
\makevalueexpandable
\def\pdfdestname{#1}%
- \backslashparens\pdfdestname
+ \txiescapepdf\pdfdestname
\safewhatsit{\pdfdest name{\pdfdestname} xyz}%
}}
%
@@ -1443,8 +1253,8 @@ output) for that.)}
%
% by default, use a color that is dark enough to print on paper as
% nearly black, but still distinguishable for online viewing.
- \def\urlcolor{\cmykDarkRed}
- \def\linkcolor{\cmykDarkRed}
+ \def\urlcolor{\rgbDarkRed}
+ \def\linkcolor{\rgbDarkRed}
\def\endlink{\setcolor{\maincolor}\pdfendlink}
%
% Adding outlines to PDF; macros for calculating structure of outlines
@@ -1466,29 +1276,24 @@ output) for that.)}
% page number. We could generate a destination for the section
% text in the case where a section has no node, but it doesn't
% seem worth the trouble, since most documents are normally structured.
- \def\pdfoutlinedest{#3}%
+ \edef\pdfoutlinedest{#3}%
\ifx\pdfoutlinedest\empty
\def\pdfoutlinedest{#4}%
\else
- % Doubled backslashes in the name.
- {\activebackslashdouble \xdef\pdfoutlinedest{#3}%
- \backslashparens\pdfoutlinedest}%
+ \txiescapepdf\pdfoutlinedest
\fi
%
- % Also double the backslashes in the display string.
- {\activebackslashdouble \xdef\pdfoutlinetext{#1}%
- \backslashparens\pdfoutlinetext}%
+ % Also escape PDF chars in the display string.
+ \edef\pdfoutlinetext{#1}%
+ \txiescapepdf\pdfoutlinetext
%
\pdfoutline goto name{\pdfmkpgn{\pdfoutlinedest}}#2{\pdfoutlinetext}%
}
%
\def\pdfmakeoutlines{%
\begingroup
- % Thanh's hack / proper braces in bookmarks
- \edef\mylbrace{\iftrue \string{\else}\fi}\let\{=\mylbrace
- \edef\myrbrace{\iffalse{\else\string}\fi}\let\}=\myrbrace
- %
% Read toc silently, to get counts of subentries for \pdfoutline.
+ \def\partentry##1##2##3##4{}% ignore parts in the outlines
\def\numchapentry##1##2##3##4{%
\def\thischapnum{##2}%
\def\thissecnum{0}%
@@ -1542,25 +1347,41 @@ output) for that.)}
% Latin 2 (0xea) gets translated to a | character. Info from
% Staszek Wawrykiewicz, 19 Jan 2004 04:09:24 +0100.
%
- % xx to do this right, we have to translate 8-bit characters to
- % their "best" equivalent, based on the @documentencoding. Right
- % now, I guess we'll just let the pdf reader have its way.
+ % TODO this right, we have to translate 8-bit characters to
+ % their "best" equivalent, based on the @documentencoding. Too
+ % much work for too little return. Just use the ASCII equivalents
+ % we use for the index sort strings.
+ %
\indexnofonts
\setupdatafile
+ % We can have normal brace characters in the PDF outlines, unlike
+ % Texinfo index files. So set that up.
+ \def\{{\lbracecharliteral}%
+ \def\}{\rbracecharliteral}%
\catcode`\\=\active \otherbackslash
\input \tocreadfilename
\endgroup
}
+ {\catcode`[=1 \catcode`]=2
+ \catcode`{=\other \catcode`}=\other
+ \gdef\lbracecharliteral[{]%
+ \gdef\rbracecharliteral[}]%
+ ]
%
\def\skipspaces#1{\def\PP{#1}\def\D{|}%
\ifx\PP\D\let\nextsp\relax
\else\let\nextsp\skipspaces
- \ifx\p\space\else\addtokens{\filename}{\PP}%
- \advance\filenamelength by 1
- \fi
+ \addtokens{\filename}{\PP}%
+ \advance\filenamelength by 1
\fi
\nextsp}
- \def\getfilename#1{\filenamelength=0\expandafter\skipspaces#1|\relax}
+ \def\getfilename#1{%
+ \filenamelength=0
+ % If we don't expand the argument now, \skipspaces will get
+ % snagged on things like "@value{foo}".
+ \edef\temp{#1}%
+ \expandafter\skipspaces\temp|\relax
+ }
\ifnum\pdftexversion < 14
\let \startlink \pdfannotlink
\else
@@ -1573,7 +1394,7 @@ output) for that.)}
% tried to figure out what each command should do in the context
% of @url. for now, just make @/ a no-op, that's the only one
% people have actually reported a problem with.
- %
+ %
\normalturnoffactive
\def\@{@}%
\let\/=\empty
@@ -1657,9 +1478,6 @@ output) for that.)}
\def\ttsl{\setfontstyle{ttsl}}
-% Default leading.
-\newdimen\textleading \textleading = 13.2pt
-
% Set the baselineskip to #1, and the lineskip and strut size
% correspondingly. There is no deep meaning behind these magic numbers
% used as factors; they just match (closely enough) what Knuth defined.
@@ -1671,6 +1489,7 @@ output) for that.)}
% can get a sort of poor man's double spacing by redefining this.
\def\baselinefactor{1}
%
+\newdimen\textleading
\def\setleading#1{%
\dimen0 = #1\relax
\normalbaselineskip = \baselinefactor\dimen0
@@ -1692,7 +1511,7 @@ output) for that.)}
% if we are producing pdf, and we have \pdffontattr, then define cmaps.
% (\pdffontattr was introduced many years ago, but people still run
% older pdftex's; it's easy to conditionalize, so we do.)
-\ifpdf \ifx\pdffontattr\undefined \else
+\ifpdf \ifx\pdffontattr\thisisundefined \else
\begingroup
\catcode`\^^M=\active \def^^M{^^J}% Output line endings as the ^^J char.
\catcode`\%=12 \immediate\pdfobj stream {%!PS-Adobe-3.0 Resource-CMap
@@ -1943,28 +1762,34 @@ end
\fi\fi
-% Set the font macro #1 to the font named #2, adding on the
-% specified font prefix (normally `cm').
+% Set the font macro #1 to the font named \fontprefix#2.
% #3 is the font's design size, #4 is a scale factor, #5 is the CMap
-% encoding (currently only OT1, OT1IT and OT1TT are allowed, pass
-% empty to omit).
+% encoding (only OT1, OT1IT and OT1TT are allowed, or empty to omit).
+% Example:
+% #1 = \textrm
+% #2 = \rmshape
+% #3 = 10
+% #4 = \mainmagstep
+% #5 = OT1
+%
\def\setfont#1#2#3#4#5{%
\font#1=\fontprefix#2#3 scaled #4
\csname cmap#5\endcsname#1%
}
% This is what gets called when #5 of \setfont is empty.
\let\cmap\gobble
-% emacs-page end of cmaps
+%
+% (end of cmaps)
% Use cm as the default font prefix.
% To specify the font prefix, you must define \fontprefix
% before you read in texinfo.tex.
-\ifx\fontprefix\undefined
+\ifx\fontprefix\thisisundefined
\def\fontprefix{cm}
\fi
% Support font families that don't use the same naming scheme as CM.
\def\rmshape{r}
-\def\rmbshape{bx} %where the normal face is bold
+\def\rmbshape{bx} % where the normal face is bold
\def\bfshape{b}
\def\bxshape{bx}
\def\ttshape{tt}
@@ -1979,9 +1804,8 @@ end
\def\scshape{csc}
\def\scbshape{csc}
-% Definitions for a main text size of 11pt. This is the default in
-% Texinfo.
-%
+% Definitions for a main text size of 11pt. (The default in Texinfo.)
+%
\def\definetextfontsizexi{%
% Text fonts (11.2pt, magstep1).
\def\textnominalsize{11pt}
@@ -2102,17 +1926,17 @@ end
\font\reducedsy=cmsy10
\def\reducedecsize{1000}
-% reset the current fonts
-\textfonts
+\textleading = 13.2pt % line spacing for 11pt CM
+\textfonts % reset the current fonts
\rm
-} % end of 11pt text font size definitions
+} % end of 11pt text font size definitions, \definetextfontsizexi
% Definitions to make the main text be 10pt Computer Modern, with
% section, chapter, etc., sizes following suit. This is for the GNU
% Press printing of the Emacs 22 manual. Maybe other manuals in the
% future. Used with @smallbook, which sets the leading to 12pt.
-%
+%
\def\definetextfontsizex{%
% Text fonts (10pt).
\def\textnominalsize{10pt}
@@ -2201,7 +2025,7 @@ end
\setfont\secsf\sfbshape{12}{1000}{OT1}
\let\secbf\secrm
\setfont\secsc\scbshape{10}{\magstep1}{OT1}
-\font\seci=cmmi12
+\font\seci=cmmi12
\font\secsy=cmsy10 scaled \magstep1
\def\sececsize{1200}
@@ -2233,29 +2057,28 @@ end
\font\reducedsy=cmsy9
\def\reducedecsize{0900}
-% reduce space between paragraphs
-\divide\parskip by 2
-
-% reset the current fonts
-\textfonts
+\divide\parskip by 2 % reduce space between paragraphs
+\textleading = 12pt % line spacing for 10pt CM
+\textfonts % reset the current fonts
\rm
-} % end of 10pt text font size definitions
+} % end of 10pt text font size definitions, \definetextfontsizex
% We provide the user-level command
% @fonttextsize 10
% (or 11) to redefine the text font size. pt is assumed.
-%
-\def\xword{10}
+%
\def\xiword{11}
+\def\xword{10}
+\def\xwordpt{10pt}
%
\parseargdef\fonttextsize{%
\def\textsizearg{#1}%
- \wlog{doing @fonttextsize \textsizearg}%
+ %\wlog{doing @fonttextsize \textsizearg}%
%
% Set \globaldefs so that documents can use this inside @tex, since
% makeinfo 4.8 does not support it, but we need it nonetheless.
- %
+ %
\begingroup \globaldefs=1
\ifx\textsizearg\xword \definetextfontsizex
\else \ifx\textsizearg\xiword \definetextfontsizexi
@@ -2305,7 +2128,7 @@ end
\let\tenttsl=\titlettsl
\def\curfontsize{title}%
\def\lsize{chap}\def\lllsize{subsec}%
- \resetmathfonts \setleading{25pt}}
+ \resetmathfonts \setleading{27pt}}
\def\titlefont#1{{\titlefonts\rmisbold #1}}
\def\chapfonts{%
\let\tenrm=\chaprm \let\tenit=\chapit \let\tensl=\chapsl
@@ -2433,12 +2256,14 @@ end
% Markup style setup for left and right quotes.
\defmarkupstylesetup\markupsetuplq{%
- \expandafter\let\expandafter \temp \csname markupsetuplq\currentmarkupstyle\endcsname
+ \expandafter\let\expandafter \temp
+ \csname markupsetuplq\currentmarkupstyle\endcsname
\ifx\temp\relax \markupsetuplqdefault \else \temp \fi
}
\defmarkupstylesetup\markupsetuprq{%
- \expandafter\let\expandafter \temp \csname markupsetuprq\currentmarkupstyle\endcsname
+ \expandafter\let\expandafter \temp
+ \csname markupsetuprq\currentmarkupstyle\endcsname
\ifx\temp\relax \markupsetuprqdefault \else \temp \fi
}
@@ -2451,29 +2276,32 @@ end
\gdef\markupsetcodequoteleft{\let`\codequoteleft}
\gdef\markupsetcodequoteright{\let'\codequoteright}
-
-\gdef\markupsetnoligaturesquoteleft{\let`\noligaturesquoteleft}
}
\let\markupsetuplqcode \markupsetcodequoteleft
\let\markupsetuprqcode \markupsetcodequoteright
+%
\let\markupsetuplqexample \markupsetcodequoteleft
\let\markupsetuprqexample \markupsetcodequoteright
+%
+\let\markupsetuplqkbd \markupsetcodequoteleft
+\let\markupsetuprqkbd \markupsetcodequoteright
+%
+\let\markupsetuplqsamp \markupsetcodequoteleft
+\let\markupsetuprqsamp \markupsetcodequoteright
+%
\let\markupsetuplqverb \markupsetcodequoteleft
\let\markupsetuprqverb \markupsetcodequoteright
+%
\let\markupsetuplqverbatim \markupsetcodequoteleft
\let\markupsetuprqverbatim \markupsetcodequoteright
-\let\markupsetuplqsamp \markupsetnoligaturesquoteleft
-\let\markupsetuplqkbd \markupsetnoligaturesquoteleft
-
-% Allow an option to not replace quotes with a regular directed right
-% quote/apostrophe (char 0x27), but instead use the undirected quote
-% from cmtt (char 0x0d). The undirected quote is ugly, so don't make it
-% the default, but it works for pasting with more pdf viewers (at least
-% evince), the lilypond developers report. xpdf does work with the
-% regular 0x27.
-%
+% Allow an option to not use regular directed right quote/apostrophe
+% (char 0x27), but instead the undirected quote from cmtt (char 0x0d).
+% The undirected quote is ugly, so don't make it the default, but it
+% works for pasting with more pdf viewers (at least evince), the
+% lilypond developers report. xpdf does work with the regular 0x27.
+%
\def\codequoteright{%
\expandafter\ifx\csname SETtxicodequoteundirected\endcsname\relax
\expandafter\ifx\csname SETcodequoteundirected\endcsname\relax
@@ -2485,7 +2313,7 @@ end
% and a similar option for the left quote char vs. a grave accent.
% Modern fonts display ASCII 0x60 as a grave accent, so some people like
% the code environments to do likewise.
-%
+%
\def\codequoteleft{%
\expandafter\ifx\csname SETtxicodequotebacktick\endcsname\relax
\expandafter\ifx\csname SETcodequotebacktick\endcsname\relax
@@ -2496,33 +2324,85 @@ end
\else \char'22 \fi
}
+% Commands to set the quote options.
+%
+\parseargdef\codequoteundirected{%
+ \def\temp{#1}%
+ \ifx\temp\onword
+ \expandafter\let\csname SETtxicodequoteundirected\endcsname
+ = t%
+ \else\ifx\temp\offword
+ \expandafter\let\csname SETtxicodequoteundirected\endcsname
+ = \relax
+ \else
+ \errhelp = \EMsimple
+ \errmessage{Unknown @codequoteundirected value `\temp', must be on|off}%
+ \fi\fi
+}
+%
+\parseargdef\codequotebacktick{%
+ \def\temp{#1}%
+ \ifx\temp\onword
+ \expandafter\let\csname SETtxicodequotebacktick\endcsname
+ = t%
+ \else\ifx\temp\offword
+ \expandafter\let\csname SETtxicodequotebacktick\endcsname
+ = \relax
+ \else
+ \errhelp = \EMsimple
+ \errmessage{Unknown @codequotebacktick value `\temp', must be on|off}%
+ \fi\fi
+}
+
% [Knuth] pp. 380,381,391, disable Spanish ligatures ?` and !` of \tt font.
\def\noligaturesquoteleft{\relax\lq}
% Count depth in font-changes, for error checks
\newcount\fontdepth \fontdepth=0
-%% Add scribe-like font environments, plus @l for inline lisp (usually sans
-%% serif) and @ii for TeX italic
+% Font commands.
-% \smartitalic{ARG} outputs arg in italics, followed by an italic correction
-% unless the following character is such as not to need one.
-\def\smartitalicx{\ifx\next,\else\ifx\next-\else\ifx\next.\else
- \ptexslash\fi\fi\fi}
-\def\smartslanted#1{{\ifusingtt\ttsl\sl #1}\futurelet\next\smartitalicx}
-\def\smartitalic#1{{\ifusingtt\ttsl\it #1}\futurelet\next\smartitalicx}
+% #1 is the font command (\sl or \it), #2 is the text to slant.
+% If we are in a monospaced environment, however, 1) always use \ttsl,
+% and 2) do not add an italic correction.
+\def\dosmartslant#1#2{%
+ \ifusingtt
+ {{\ttsl #2}\let\next=\relax}%
+ {\def\next{{#1#2}\futurelet\next\smartitaliccorrection}}%
+ \next
+}
+\def\smartslanted{\dosmartslant\sl}
+\def\smartitalic{\dosmartslant\it}
-% like \smartslanted except unconditionally uses \ttsl.
-% @var is set to this for defun arguments.
-\def\ttslanted#1{{\ttsl #1}\futurelet\next\smartitalicx}
+% Output an italic correction unless \next (presumed to be the following
+% character) is such as not to need one.
+\def\smartitaliccorrection{%
+ \ifx\next,%
+ \else\ifx\next-%
+ \else\ifx\next.%
+ \else\ifx\next\.%
+ \else\ifx\next\comma%
+ \else\ptexslash
+ \fi\fi\fi\fi\fi
+ \aftersmartic
+}
+
+% Unconditional use \ttsl, and no ic. @var is set to this for defuns.
+\def\ttslanted#1{{\ttsl #1}}
% @cite is like \smartslanted except unconditionally use \sl. We never want
% ttsl for book titles, do we?
-\def\cite#1{{\sl #1}\futurelet\next\smartitalicx}
+\def\cite#1{{\sl #1}\futurelet\next\smartitaliccorrection}
+
+\def\aftersmartic{}
+\def\var#1{%
+ \let\saveaftersmartic = \aftersmartic
+ \def\aftersmartic{\null\let\aftersmartic=\saveaftersmartic}%
+ \smartslanted{#1}%
+}
\let\i=\smartitalic
\let\slanted=\smartslanted
-\def\var#1{{\setupmarkupstyle{var}\smartslanted{#1}}}
\let\dfn=\smartslanted
\let\emph=\smartitalic
@@ -2572,34 +2452,12 @@ end
% @samp.
\def\samp#1{{\setupmarkupstyle{samp}\lq\tclose{#1}\rq\null}}
-% definition of @key that produces a lozenge. Doesn't adjust to text size.
-%\setfont\keyrm\rmshape{8}{1000}{OT1}
-%\font\keysy=cmsy9
-%\def\key#1{{\keyrm\textfont2=\keysy \leavevmode\hbox{%
-% \raise0.4pt\hbox{\angleleft}\kern-.08em\vtop{%
-% \vbox{\hrule\kern-0.4pt
-% \hbox{\raise0.4pt\hbox{\vphantom{\angleleft}}#1}}%
-% \kern-0.4pt\hrule}%
-% \kern-.06em\raise0.4pt\hbox{\angleright}}}}
-
-% definition of @key with no lozenge. If the current font is already
-% monospace, don't change it; that way, we respect @kbdinputstyle. But
-% if it isn't monospace, then use \tt.
-%
-\def\key#1{{\setupmarkupstyle{key}%
- \nohyphenation
- \ifmonospace\else\tt\fi
- #1}\null}
-
-% ctrl is no longer a Texinfo command.
-\def\ctrl #1{{\tt \rawbackslash \hat}#1}
-
-% @file, @option are the same as @samp.
-\let\file=\samp
-\let\option=\samp
+% @indicateurl is \samp, that is, with quotes.
+\let\indicateurl=\samp
-% @code is a modification of @t,
-% which makes spaces the same size as normal in the surrounding text.
+% @code (and similar) prints in typewriter, but with spaces the same
+% size as normal in the surrounding text, without hyphenation, etc.
+% This is a subroutine for that.
\def\tclose#1{%
{%
% Change normal interword space to be same as for the current font.
@@ -2618,18 +2476,18 @@ end
\plainfrenchspacing
#1%
}%
- \null
+ \null % reset spacefactor to 1000
}
% We *must* turn on hyphenation at `-' and `_' in @code.
+% (But see \codedashfinish below.)
% Otherwise, it is too hard to avoid overfull hboxes
% in the Emacs manual, the Library manual, etc.
-
+%
% Unfortunately, TeX uses one parameter (\hyphenchar) to control
% both hyphenation at - and hyphenation within words.
% We must therefore turn them both off (\tclose does that)
-% and arrange explicitly to hyphenate at a dash.
-% -- rms.
+% and arrange explicitly to hyphenate at a dash. -- rms.
{
\catcode`\-=\active \catcode`\_=\active
\catcode`\'=\active \catcode`\`=\active
@@ -2643,15 +2501,38 @@ end
\let-\codedash
\let_\codeunder
\else
- \let-\realdash
+ \let-\normaldash
\let_\realunder
\fi
+ % Given -foo (with a single dash), we do not want to allow a break
+ % after the hyphen.
+ \global\let\codedashprev=\codedash
+ %
\codex
}
+ %
+ \gdef\codedash{\futurelet\next\codedashfinish}
+ \gdef\codedashfinish{%
+ \normaldash % always output the dash character itself.
+ %
+ % Now, output a discretionary to allow a line break, unless
+ % (a) the next character is a -, or
+ % (b) the preceding character is a -.
+ % E.g., given --posix, we do not want to allow a break after either -.
+ % Given --foo-bar, we do want to allow a break between the - and the b.
+ \ifx\next\codedash \else
+ \ifx\codedashprev\codedash
+ \else \discretionary{}{}{}\fi
+ \fi
+ % we need the space after the = for the case when \next itself is a
+ % space token; it would get swallowed otherwise. As in @code{- a}.
+ \global\let\codedashprev= \next
+ }
}
+\def\normaldash{-}
+%
+\def\codex #1{\tclose{#1}\endgroup}
-\def\realdash{-}
-\def\codedash{-\discretionary{}{}{}}
\def\codeunder{%
% this is all so @math{@code{var_name}+1} can work. In math mode, _
% is "active" (mathcode"8000) and \normalunderscore (or \char95, etc.)
@@ -2663,13 +2544,12 @@ end
\discretionary{}{}{}}%
{\_}%
}
-\def\codex #1{\tclose{#1}\endgroup}
% An additional complication: the above will allow breaks after, e.g.,
-% each of the four underscores in __typeof__. This is undesirable in
-% some manuals, especially if they don't have long identifiers in
-% general. @allowcodebreaks provides a way to control this.
-%
+% each of the four underscores in __typeof__. This is bad.
+% @allowcodebreaks provides a document-level way to turn breaking at -
+% and _ on and off.
+%
\newif\ifallowcodebreaks \allowcodebreakstrue
\def\keywordtrue{true}
@@ -2683,63 +2563,25 @@ end
\allowcodebreaksfalse
\else
\errhelp = \EMsimple
- \errmessage{Unknown @allowcodebreaks option `\txiarg'}%
+ \errmessage{Unknown @allowcodebreaks option `\txiarg', must be true|false}%
\fi\fi
}
-% @kbd is like @code, except that if the argument is just one @key command,
-% then @kbd has no effect.
-\def\kbd#1{{\setupmarkupstyle{kbd}\def\look{#1}\expandafter\kbdfoo\look??\par}}
-
-% @kbdinputstyle -- arg is `distinct' (@kbd uses slanted tty font always),
-% `example' (@kbd uses ttsl only inside of @example and friends),
-% or `code' (@kbd uses normal tty font always).
-\parseargdef\kbdinputstyle{%
- \def\txiarg{#1}%
- \ifx\txiarg\worddistinct
- \gdef\kbdexamplefont{\ttsl}\gdef\kbdfont{\ttsl}%
- \else\ifx\txiarg\wordexample
- \gdef\kbdexamplefont{\ttsl}\gdef\kbdfont{\tt}%
- \else\ifx\txiarg\wordcode
- \gdef\kbdexamplefont{\tt}\gdef\kbdfont{\tt}%
- \else
- \errhelp = \EMsimple
- \errmessage{Unknown @kbdinputstyle option `\txiarg'}%
- \fi\fi\fi
-}
-\def\worddistinct{distinct}
-\def\wordexample{example}
-\def\wordcode{code}
-
-% Default is `distinct'.
-\kbdinputstyle distinct
-
-\def\xkey{\key}
-\def\kbdfoo#1#2#3\par{\def\one{#1}\def\three{#3}\def\threex{??}%
-\ifx\one\xkey\ifx\threex\three \key{#2}%
-\else{\tclose{\kbdfont\setupmarkupstyle{kbd}\look}}\fi
-\else{\tclose{\kbdfont\setupmarkupstyle{kbd}\look}}\fi}
-
-% For @indicateurl, @env, @command quotes seem unnecessary, so use \code.
-\let\indicateurl=\code
-\let\env=\code
+% For @command, @env, @file, @option quotes seem unnecessary,
+% so use \code rather than \samp.
\let\command=\code
-
-% @clicksequence{File @click{} Open ...}
-\def\clicksequence#1{\begingroup #1\endgroup}
-
-% @clickstyle @arrow (by default)
-\parseargdef\clickstyle{\def\click{#1}}
-\def\click{\arrow}
+\let\env=\code
+\let\file=\code
+\let\option=\code
% @uref (abbreviation for `urlref') takes an optional (comma-separated)
% second argument specifying the text to display and an optional third
% arg as text to display instead of (rather than in addition to) the url
-% itself. First (mandatory) arg is the url. Perhaps eventually put in
-% a hypertex \special here.
-%
-\def\uref#1{\douref #1,,,\finish}
-\def\douref#1,#2,#3,#4\finish{\begingroup
+% itself. First (mandatory) arg is the url.
+% (This \urefnobreak definition isn't used now, leaving it for a while
+% for comparison.)
+\def\urefnobreak#1{\dourefnobreak #1,,,\finish}
+\def\dourefnobreak#1,#2,#3,#4\finish{\begingroup
\unsepspaces
\pdfurl{#1}%
\setbox0 = \hbox{\ignorespaces #3}%
@@ -2760,6 +2602,103 @@ end
\endlink
\endgroup}
+% This \urefbreak definition is the active one.
+\def\urefbreak{\begingroup \urefcatcodes \dourefbreak}
+\let\uref=\urefbreak
+\def\dourefbreak#1{\urefbreakfinish #1,,,\finish}
+\def\urefbreakfinish#1,#2,#3,#4\finish{% doesn't work in @example
+ \unsepspaces
+ \pdfurl{#1}%
+ \setbox0 = \hbox{\ignorespaces #3}%
+ \ifdim\wd0 > 0pt
+ \unhbox0 % third arg given, show only that
+ \else
+ \setbox0 = \hbox{\ignorespaces #2}%
+ \ifdim\wd0 > 0pt
+ \ifpdf
+ \unhbox0 % PDF: 2nd arg given, show only it
+ \else
+ \unhbox0\ (\urefcode{#1})% DVI: 2nd arg given, show both it and url
+ \fi
+ \else
+ \urefcode{#1}% only url given, so show it
+ \fi
+ \fi
+ \endlink
+\endgroup}
+
+% Allow line breaks around only a few characters (only).
+\def\urefcatcodes{%
+ \catcode\ampChar=\active \catcode\dotChar=\active
+ \catcode\hashChar=\active \catcode\questChar=\active
+ \catcode\slashChar=\active
+}
+{
+ \urefcatcodes
+ %
+ \global\def\urefcode{\begingroup
+ \setupmarkupstyle{code}%
+ \urefcatcodes
+ \let&\urefcodeamp
+ \let.\urefcodedot
+ \let#\urefcodehash
+ \let?\urefcodequest
+ \let/\urefcodeslash
+ \codex
+ }
+ %
+ % By default, they are just regular characters.
+ \global\def&{\normalamp}
+ \global\def.{\normaldot}
+ \global\def#{\normalhash}
+ \global\def?{\normalquest}
+ \global\def/{\normalslash}
+}
+
+% we put a little stretch before and after the breakable chars, to help
+% line breaking of long url's. The unequal skips make look better in
+% cmtt at least, especially for dots.
+\def\urefprestretch{\urefprebreak \hskip0pt plus.13em }
+\def\urefpoststretch{\urefpostbreak \hskip0pt plus.1em }
+%
+\def\urefcodeamp{\urefprestretch \&\urefpoststretch}
+\def\urefcodedot{\urefprestretch .\urefpoststretch}
+\def\urefcodehash{\urefprestretch \#\urefpoststretch}
+\def\urefcodequest{\urefprestretch ?\urefpoststretch}
+\def\urefcodeslash{\futurelet\next\urefcodeslashfinish}
+{
+ \catcode`\/=\active
+ \global\def\urefcodeslashfinish{%
+ \urefprestretch \slashChar
+ % Allow line break only after the final / in a sequence of
+ % slashes, to avoid line break between the slashes in http://.
+ \ifx\next/\else \urefpoststretch \fi
+ }
+}
+
+% One more complication: by default we'll break after the special
+% characters, but some people like to break before the special chars, so
+% allow that. Also allow no breaking at all, for manual control.
+%
+\parseargdef\urefbreakstyle{%
+ \def\txiarg{#1}%
+ \ifx\txiarg\wordnone
+ \def\urefprebreak{\nobreak}\def\urefpostbreak{\nobreak}
+ \else\ifx\txiarg\wordbefore
+ \def\urefprebreak{\allowbreak}\def\urefpostbreak{\nobreak}
+ \else\ifx\txiarg\wordafter
+ \def\urefprebreak{\nobreak}\def\urefpostbreak{\allowbreak}
+ \else
+ \errhelp = \EMsimple
+ \errmessage{Unknown @urefbreakstyle setting `\txiarg'}%
+ \fi\fi\fi
+}
+\def\wordafter{after}
+\def\wordbefore{before}
+\def\wordnone{none}
+
+\urefbreakstyle after
+
% @url synonym for @uref, since that's how everyone uses it.
%
\let\url=\uref
@@ -2781,6 +2720,67 @@ end
\let\email=\uref
\fi
+% @kbdinputstyle -- arg is `distinct' (@kbd uses slanted tty font always),
+% `example' (@kbd uses ttsl only inside of @example and friends),
+% or `code' (@kbd uses normal tty font always).
+\parseargdef\kbdinputstyle{%
+ \def\txiarg{#1}%
+ \ifx\txiarg\worddistinct
+ \gdef\kbdexamplefont{\ttsl}\gdef\kbdfont{\ttsl}%
+ \else\ifx\txiarg\wordexample
+ \gdef\kbdexamplefont{\ttsl}\gdef\kbdfont{\tt}%
+ \else\ifx\txiarg\wordcode
+ \gdef\kbdexamplefont{\tt}\gdef\kbdfont{\tt}%
+ \else
+ \errhelp = \EMsimple
+ \errmessage{Unknown @kbdinputstyle setting `\txiarg'}%
+ \fi\fi\fi
+}
+\def\worddistinct{distinct}
+\def\wordexample{example}
+\def\wordcode{code}
+
+% Default is `distinct'.
+\kbdinputstyle distinct
+
+% @kbd is like @code, except that if the argument is just one @key command,
+% then @kbd has no effect.
+\def\kbd#1{{\def\look{#1}\expandafter\kbdsub\look??\par}}
+
+\def\xkey{\key}
+\def\kbdsub#1#2#3\par{%
+ \def\one{#1}\def\three{#3}\def\threex{??}%
+ \ifx\one\xkey\ifx\threex\three \key{#2}%
+ \else{\tclose{\kbdfont\setupmarkupstyle{kbd}\look}}\fi
+ \else{\tclose{\kbdfont\setupmarkupstyle{kbd}\look}}\fi
+}
+
+% definition of @key that produces a lozenge. Doesn't adjust to text size.
+%\setfont\keyrm\rmshape{8}{1000}{OT1}
+%\font\keysy=cmsy9
+%\def\key#1{{\keyrm\textfont2=\keysy \leavevmode\hbox{%
+% \raise0.4pt\hbox{\angleleft}\kern-.08em\vtop{%
+% \vbox{\hrule\kern-0.4pt
+% \hbox{\raise0.4pt\hbox{\vphantom{\angleleft}}#1}}%
+% \kern-0.4pt\hrule}%
+% \kern-.06em\raise0.4pt\hbox{\angleright}}}}
+
+% definition of @key with no lozenge. If the current font is already
+% monospace, don't change it; that way, we respect @kbdinputstyle. But
+% if it isn't monospace, then use \tt.
+%
+\def\key#1{{\setupmarkupstyle{key}%
+ \nohyphenation
+ \ifmonospace\else\tt\fi
+ #1}\null}
+
+% @clicksequence{File @click{} Open ...}
+\def\clicksequence#1{\begingroup #1\endgroup}
+
+% @clickstyle @arrow (by default)
+\parseargdef\clickstyle{\def\click{#1}}
+\def\click{\arrow}
+
% Typeset a dimension, e.g., `in' or `pt'. The only reason for the
% argument is to make the input look right: @dmn{pt} instead of @dmn{}pt.
%
@@ -2794,7 +2794,7 @@ end
% @acronym for "FBI", "NATO", and the like.
% We print this one point size smaller, since it's intended for
% all-uppercase.
-%
+%
\def\acronym#1{\doacronym #1,,\finish}
\def\doacronym#1,#2,#3\finish{%
{\selectfonts\lsize #1}%
@@ -2802,11 +2802,12 @@ end
\ifx\temp\empty \else
\space ({\unsepspaces \ignorespaces \temp \unskip})%
\fi
+ \null % reset \spacefactor=1000
}
% @abbr for "Comput. J." and the like.
% No font change, but don't do end-of-sentence spacing.
-%
+%
\def\abbr#1{\doabbr #1,,\finish}
\def\doabbr#1,#2,#3\finish{%
{\plainfrenchspacing #1}%
@@ -2814,10 +2815,248 @@ end
\ifx\temp\empty \else
\space ({\unsepspaces \ignorespaces \temp \unskip})%
\fi
+ \null % reset \spacefactor=1000
+}
+
+% @asis just yields its argument. Used with @table, for example.
+%
+\def\asis#1{#1}
+
+% @math outputs its argument in math mode.
+%
+% One complication: _ usually means subscripts, but it could also mean
+% an actual _ character, as in @math{@var{some_variable} + 1}. So make
+% _ active, and distinguish by seeing if the current family is \slfam,
+% which is what @var uses.
+{
+ \catcode`\_ = \active
+ \gdef\mathunderscore{%
+ \catcode`\_=\active
+ \def_{\ifnum\fam=\slfam \_\else\sb\fi}%
+ }
+}
+% Another complication: we want \\ (and @\) to output a math (or tt) \.
+% FYI, plain.tex uses \\ as a temporary control sequence (for no
+% particular reason), but this is not advertised and we don't care.
+%
+% The \mathchar is class=0=ordinary, family=7=ttfam, position=5C=\.
+\def\mathbackslash{\ifnum\fam=\ttfam \mathchar"075C \else\backslash \fi}
+%
+\def\math{%
+ \tex
+ \mathunderscore
+ \let\\ = \mathbackslash
+ \mathactive
+ % make the texinfo accent commands work in math mode
+ \let\"=\ddot
+ \let\'=\acute
+ \let\==\bar
+ \let\^=\hat
+ \let\`=\grave
+ \let\u=\breve
+ \let\v=\check
+ \let\~=\tilde
+ \let\dotaccent=\dot
+ $\finishmath
+}
+\def\finishmath#1{#1$\endgroup} % Close the group opened by \tex.
+
+% Some active characters (such as <) are spaced differently in math.
+% We have to reset their definitions in case the @math was an argument
+% to a command which sets the catcodes (such as @item or @section).
+%
+{
+ \catcode`^ = \active
+ \catcode`< = \active
+ \catcode`> = \active
+ \catcode`+ = \active
+ \catcode`' = \active
+ \gdef\mathactive{%
+ \let^ = \ptexhat
+ \let< = \ptexless
+ \let> = \ptexgtr
+ \let+ = \ptexplus
+ \let' = \ptexquoteright
+ }
+}
+
+% ctrl is no longer a Texinfo command, but leave this definition for fun.
+\def\ctrl #1{{\tt \rawbackslash \hat}#1}
+
+% @inlinefmt{FMTNAME,PROCESSED-TEXT} and @inlineraw{FMTNAME,RAW-TEXT}.
+% Ignore unless FMTNAME == tex; then it is like @iftex and @tex,
+% except specified as a normal braced arg, so no newlines to worry about.
+%
+\def\outfmtnametex{tex}
+%
+\long\def\inlinefmt#1{\doinlinefmt #1,\finish}
+\long\def\doinlinefmt#1,#2,\finish{%
+ \def\inlinefmtname{#1}%
+ \ifx\inlinefmtname\outfmtnametex \ignorespaces #2\fi
+}
+%
+% @inlinefmtifelse{FMTNAME,THEN-TEXT,ELSE-TEXT} expands THEN-TEXT if
+% FMTNAME is tex, else ELSE-TEXT.
+\long\def\inlinefmtifelse#1{\doinlinefmtifelse #1,,,\finish}
+\long\def\doinlinefmtifelse#1,#2,#3,#4,\finish{%
+ \def\inlinefmtname{#1}%
+ \ifx\inlinefmtname\outfmtnametex \ignorespaces #2\else \ignorespaces #3\fi
+}
+%
+% For raw, must switch into @tex before parsing the argument, to avoid
+% setting catcodes prematurely. Doing it this way means that, for
+% example, @inlineraw{html, foo{bar} gets a parse error instead of being
+% ignored. But this isn't important because if people want a literal
+% *right* brace they would have to use a command anyway, so they may as
+% well use a command to get a left brace too. We could re-use the
+% delimiter character idea from \verb, but it seems like overkill.
+%
+\long\def\inlineraw{\tex \doinlineraw}
+\long\def\doinlineraw#1{\doinlinerawtwo #1,\finish}
+\def\doinlinerawtwo#1,#2,\finish{%
+ \def\inlinerawname{#1}%
+ \ifx\inlinerawname\outfmtnametex \ignorespaces #2\fi
+ \endgroup % close group opened by \tex.
+}
+
+% @inlineifset{VAR, TEXT} expands TEXT if VAR is @set.
+%
+\long\def\inlineifset#1{\doinlineifset #1,\finish}
+\long\def\doinlineifset#1,#2,\finish{%
+ \def\inlinevarname{#1}%
+ \expandafter\ifx\csname SET\inlinevarname\endcsname\relax
+ \else\ignorespaces#2\fi
+}
+
+% @inlineifclear{VAR, TEXT} expands TEXT if VAR is not @set.
+%
+\long\def\inlineifclear#1{\doinlineifclear #1,\finish}
+\long\def\doinlineifclear#1,#2,\finish{%
+ \def\inlinevarname{#1}%
+ \expandafter\ifx\csname SET\inlinevarname\endcsname\relax \ignorespaces#2\fi
}
\message{glyphs,}
+% and logos.
+
+% @@ prints an @, as does @atchar{}.
+\def\@{\char64 }
+\let\atchar=\@
+
+% @{ @} @lbracechar{} @rbracechar{} all generate brace characters.
+% Unless we're in typewriter, use \ecfont because the CM text fonts do
+% not have braces, and we don't want to switch into math.
+\def\mylbrace{{\ifmonospace\else\ecfont\fi \char123}}
+\def\myrbrace{{\ifmonospace\else\ecfont\fi \char125}}
+\let\{=\mylbrace \let\lbracechar=\{
+\let\}=\myrbrace \let\rbracechar=\}
+\begingroup
+ % Definitions to produce \{ and \} commands for indices,
+ % and @{ and @} for the aux/toc files.
+ \catcode`\{ = \other \catcode`\} = \other
+ \catcode`\[ = 1 \catcode`\] = 2
+ \catcode`\! = 0 \catcode`\\ = \other
+ !gdef!lbracecmd[\{]%
+ !gdef!rbracecmd[\}]%
+ !gdef!lbraceatcmd[@{]%
+ !gdef!rbraceatcmd[@}]%
+!endgroup
+
+% @comma{} to avoid , parsing problems.
+\let\comma = ,
+
+% Accents: @, @dotaccent @ringaccent @ubaraccent @udotaccent
+% Others are defined by plain TeX: @` @' @" @^ @~ @= @u @v @H.
+\let\, = \ptexc
+\let\dotaccent = \ptexdot
+\def\ringaccent#1{{\accent23 #1}}
+\let\tieaccent = \ptext
+\let\ubaraccent = \ptexb
+\let\udotaccent = \d
+
+% Other special characters: @questiondown @exclamdown @ordf @ordm
+% Plain TeX defines: @AA @AE @O @OE @L (plus lowercase versions) @ss.
+\def\questiondown{?`}
+\def\exclamdown{!`}
+\def\ordf{\leavevmode\raise1ex\hbox{\selectfonts\lllsize \underbar{a}}}
+\def\ordm{\leavevmode\raise1ex\hbox{\selectfonts\lllsize \underbar{o}}}
+
+% Dotless i and dotless j, used for accents.
+\def\imacro{i}
+\def\jmacro{j}
+\def\dotless#1{%
+ \def\temp{#1}%
+ \ifx\temp\imacro \ifmmode\imath \else\ptexi \fi
+ \else\ifx\temp\jmacro \ifmmode\jmath \else\j \fi
+ \else \errmessage{@dotless can be used only with i or j}%
+ \fi\fi
+}
+
+% The \TeX{} logo, as in plain, but resetting the spacing so that a
+% period following counts as ending a sentence. (Idea found in latex.)
+%
+\edef\TeX{\TeX \spacefactor=1000 }
+
+% @LaTeX{} logo. Not quite the same results as the definition in
+% latex.ltx, since we use a different font for the raised A; it's most
+% convenient for us to use an explicitly smaller font, rather than using
+% the \scriptstyle font (since we don't reset \scriptstyle and
+% \scriptscriptstyle).
+%
+\def\LaTeX{%
+ L\kern-.36em
+ {\setbox0=\hbox{T}%
+ \vbox to \ht0{\hbox{%
+ \ifx\textnominalsize\xwordpt
+ % for 10pt running text, \lllsize (8pt) is too small for the A in LaTeX.
+ % Revert to plain's \scriptsize, which is 7pt.
+ \count255=\the\fam $\fam\count255 \scriptstyle A$%
+ \else
+ % For 11pt, we can use our lllsize.
+ \selectfonts\lllsize A%
+ \fi
+ }%
+ \vss
+ }}%
+ \kern-.15em
+ \TeX
+}
+
+% Some math mode symbols.
+\def\bullet{$\ptexbullet$}
+\def\geq{\ifmmode \ge\else $\ge$\fi}
+\def\leq{\ifmmode \le\else $\le$\fi}
+\def\minus{\ifmmode -\else $-$\fi}
+
+% @dots{} outputs an ellipsis using the current font.
+% We do .5em per period so that it has the same spacing in the cm
+% typewriter fonts as three actual period characters; on the other hand,
+% in other typewriter fonts three periods are wider than 1.5em. So do
+% whichever is larger.
+%
+\def\dots{%
+ \leavevmode
+ \setbox0=\hbox{...}% get width of three periods
+ \ifdim\wd0 > 1.5em
+ \dimen0 = \wd0
+ \else
+ \dimen0 = 1.5em
+ \fi
+ \hbox to \dimen0{%
+ \hskip 0pt plus.25fil
+ .\hskip 0pt plus1fil
+ .\hskip 0pt plus1fil
+ .\hskip 0pt plus.5fil
+ }%
+}
+
+% @enddots{} is an end-of-sentence ellipsis.
+%
+\def\enddots{%
+ \dots
+ \spacefactor=\endofsentencespacefactor
+}
% @point{}, @result{}, @expansion{}, @print{}, @equiv{}.
%
@@ -2839,7 +3078,7 @@ end
{\tentt \global\dimen0 = 3em}% Width of the box.
\dimen2 = .55pt % Thickness of rules
% The text. (`r' is open on the right, `e' somewhat less so on the left.)
-\setbox0 = \hbox{\kern-.75pt \reducedsf error\kern-1.5pt}
+\setbox0 = \hbox{\kern-.75pt \reducedsf \putworderror\kern-1.5pt}
%
\setbox\errorbox=\hbox to \dimen0{\hfil
\hsize = \dimen0 \advance\hsize by -5.8pt % Space to left+right.
@@ -2863,52 +3102,59 @@ end
% Theiling, which support regular, slanted, bold and bold slanted (and
% "outlined" (blackboard board, sort of) versions, which we don't need).
% It is available from http://www.ctan.org/tex-archive/fonts/eurosym.
-%
+%
% Although only regular is the truly official Euro symbol, we ignore
% that. The Euro is designed to be slightly taller than the regular
% font height.
-%
+%
% feymr - regular
% feymo - slanted
% feybr - bold
% feybo - bold slanted
-%
+%
% There is no good (free) typewriter version, to my knowledge.
% A feymr10 euro is ~7.3pt wide, while a normal cmtt10 char is ~5.25pt wide.
% Hmm.
-%
+%
% Also doesn't work in math. Do we need to do math with euro symbols?
% Hope not.
-%
-%
+%
+%
\def\euro{{\eurofont e}}
\def\eurofont{%
% We set the font at each command, rather than predefining it in
% \textfonts and the other font-switching commands, so that
% installations which never need the symbol don't have to have the
% font installed.
- %
+ %
% There is only one designed size (nominal 10pt), so we always scale
% that to the current nominal size.
- %
+ %
% By the way, simply using "at 1em" works for cmr10 and the like, but
% does not work for cmbx10 and other extended/shrunken fonts.
- %
+ %
\def\eurosize{\csname\curfontsize nominalsize\endcsname}%
%
- \ifx\curfontstyle\bfstylename
+ \ifx\curfontstyle\bfstylename
% bold:
\font\thiseurofont = \ifusingit{feybo10}{feybr10} at \eurosize
- \else
+ \else
% regular:
\font\thiseurofont = \ifusingit{feymo10}{feymr10} at \eurosize
\fi
\thiseurofont
}
-% Hacks for glyphs from the EC fonts similar to \euro. We don't
-% use \let for the aliases, because sometimes we redefine the original
-% macro, and the alias should reflect the redefinition.
+% Glyphs from the EC fonts. We don't use \let for the aliases, because
+% sometimes we redefine the original macro, and the alias should reflect
+% the redefinition.
+%
+% Use LaTeX names for the Icelandic letters.
+\def\DH{{\ecfont \char"D0}} % Eth
+\def\dh{{\ecfont \char"F0}} % eth
+\def\TH{{\ecfont \char"DE}} % Thorn
+\def\th{{\ecfont \char"FE}} % thorn
+%
\def\guillemetleft{{\ecfont \char"13}}
\def\guillemotleft{\guillemetleft}
\def\guillemetright{{\ecfont \char"14}}
@@ -2922,7 +3168,7 @@ end
% we have the precomposed glyphs for the most common cases. We put the
% tests to use those glyphs in the single \ogonek macro so we have fewer
% dummy definitions to worry about for index entries, etc.
-%
+%
% ogonek is also used with other letters in Lithuanian (IOU), but using
% the precomposed glyphs for those is not so easy since they aren't in
% the same EC font.
@@ -2945,6 +3191,7 @@ end
\def\Eogonek{{\ecfont \char"86}}\def\macrocharE{E}
\def\eogonek{{\ecfont \char"A6}}\def\macrochare{e}
%
+% Use the ec* fonts (cm-super in outline format) for non-CM glyphs.
\def\ecfont{%
% We can't distinguish serif/sans and italic/slanted, but this
% is used for crude hacks anyway (like adding French and German
@@ -2952,12 +3199,17 @@ end
% hopefully nobody will notice/care.
\edef\ecsize{\csname\curfontsize ecsize\endcsname}%
\edef\nominalsize{\csname\curfontsize nominalsize\endcsname}%
- \ifx\curfontstyle\bfstylename
- % bold:
- \font\thisecfont = ecb\ifusingit{i}{x}\ecsize \space at \nominalsize
+ \ifmonospace
+ % typewriter:
+ \font\thisecfont = ectt\ecsize \space at \nominalsize
\else
- % regular:
- \font\thisecfont = ec\ifusingit{ti}{rm}\ecsize \space at \nominalsize
+ \ifx\curfontstyle\bfstylename
+ % bold:
+ \font\thisecfont = ecb\ifusingit{i}{x}\ecsize \space at \nominalsize
+ \else
+ % regular:
+ \font\thisecfont = ec\ifusingit{ti}{rm}\ecsize \space at \nominalsize
+ \fi
\fi
\thisecfont
}
@@ -2979,8 +3231,8 @@ end
% Laurent Siebenmann reports \Orb undefined with:
% Textures 1.7.7 (preloaded format=plain 93.10.14) (68K) 16 APR 2004 02:38
% so we'll define it if necessary.
-%
-\ifx\Orb\undefined
+%
+\ifx\Orb\thisisundefined
\def\Orb{\mathhexbox20D}
\fi
@@ -3008,8 +3260,9 @@ end
\newif\ifsetshortcontentsaftertitlepage
\let\setshortcontentsaftertitlepage = \setshortcontentsaftertitlepagetrue
-\parseargdef\shorttitlepage{\begingroup\hbox{}\vskip 1.5in \chaprm \centerline{#1}%
- \endgroup\page\hbox{}\page}
+\parseargdef\shorttitlepage{%
+ \begingroup \hbox{}\vskip 1.5in \chaprm \centerline{#1}%
+ \endgroup\page\hbox{}\page}
\envdef\titlepage{%
% Open one extra group, as we want to close it in the middle of \Etitlepage.
@@ -3069,14 +3322,28 @@ end
\finishedtitlepagetrue
}
-%%% Macros to be used within @titlepage:
+% Settings used for typesetting titles: no hyphenation, no indentation,
+% don't worry much about spacing, ragged right. This should be used
+% inside a \vbox, and fonts need to be set appropriately first. Because
+% it is always used for titles, nothing else, we call \rmisbold. \par
+% should be specified before the end of the \vbox, since a vbox is a group.
+%
+\def\raggedtitlesettings{%
+ \rmisbold
+ \hyphenpenalty=10000
+ \parindent=0pt
+ \tolerance=5000
+ \ptexraggedright
+}
+
+% Macros to be used within @titlepage:
\let\subtitlerm=\tenrm
\def\subtitlefont{\subtitlerm \normalbaselineskip = 13pt \normalbaselines}
\parseargdef\title{%
\checkenv\titlepage
- \leftline{\titlefonts\rmisbold #1}
+ \vbox{\titlefonts \raggedtitlesettings #1\par}%
% print a rule at the page bottom also.
\finishedtitlepagefalse
\vskip4pt \hrule height 4pt width \hsize \vskip4pt
@@ -3102,7 +3369,7 @@ end
}
-%%% Set up page headings and footings.
+% Set up page headings and footings.
\let\thispage=\folio
@@ -3196,10 +3463,14 @@ end
\def\headings #1 {\csname HEADINGS#1\endcsname}
-\def\HEADINGSoff{%
-\global\evenheadline={\hfil} \global\evenfootline={\hfil}
-\global\oddheadline={\hfil} \global\oddfootline={\hfil}}
-\HEADINGSoff
+\def\headingsoff{% non-global headings elimination
+ \evenheadline={\hfil}\evenfootline={\hfil}%
+ \oddheadline={\hfil}\oddfootline={\hfil}%
+}
+
+\def\HEADINGSoff{{\globaldefs=1 \headingsoff}} % global setting
+\HEADINGSoff % it's the default
+
% When we turn headings on, set the page number to 1.
% For double-sided printing, put current file name in lower left corner,
% chapter name on inside top of right hand pages, document
@@ -3250,7 +3521,7 @@ end
% This produces Day Month Year style of output.
% Only define if not already defined, in case a txi-??.tex file has set
% up a different format (e.g., txi-cs.tex does this).
-\ifx\today\undefined
+\ifx\today\thisisundefined
\def\today{%
\number\day\space
\ifcase\month
@@ -3311,7 +3582,7 @@ end
\begingroup
\advance\leftskip by-\tableindent
\advance\hsize by\tableindent
- \advance\rightskip by0pt plus1fil
+ \advance\rightskip by0pt plus1fil\relax
\leavevmode\unhbox0\par
\endgroup
%
@@ -3325,7 +3596,7 @@ end
% cause the example and the item to crash together. So we use this
% bizarre value of 10001 as a signal to \aboveenvbreak to insert
% \parskip glue after all. Section titles are handled this way also.
- %
+ %
\penalty 10001
\endgroup
\itemxneedsnegativevskipfalse
@@ -3797,18 +4068,18 @@ end
\setbox0=\vbox{X}\global\multitablelinespace=\the\baselineskip
\global\advance\multitablelinespace by-\ht0
\fi
-%% Test to see if parskip is larger than space between lines of
-%% table. If not, do nothing.
-%% If so, set to same dimension as multitablelinespace.
+% Test to see if parskip is larger than space between lines of
+% table. If not, do nothing.
+% If so, set to same dimension as multitablelinespace.
\ifdim\multitableparskip>\multitablelinespace
\global\multitableparskip=\multitablelinespace
-\global\advance\multitableparskip-7pt %% to keep parskip somewhat smaller
- %% than skip between lines in the table.
+\global\advance\multitableparskip-7pt % to keep parskip somewhat smaller
+ % than skip between lines in the table.
\fi%
\ifdim\multitableparskip=0pt
\global\multitableparskip=\multitablelinespace
-\global\advance\multitableparskip-7pt %% to keep parskip somewhat smaller
- %% than skip between lines in the table.
+\global\advance\multitableparskip-7pt % to keep parskip somewhat smaller
+ % than skip between lines in the table.
\fi}
@@ -3960,7 +4231,7 @@ end
\def\value{\begingroup\makevalueexpandable\valuexxx}
\def\valuexxx#1{\expandablevalue{#1}\endgroup}
{
- \catcode`\- = \active \catcode`\_ = \active
+ \catcode`\-=\active \catcode`\_=\active
%
\gdef\makevalueexpandable{%
\let\value = \expandablevalue
@@ -3969,7 +4240,7 @@ end
% ..., but we might end up with active ones in the argument if
% we're called from @code, as @code{@value{foo-bar_}}, though.
% So \let them to their normal equivalents.
- \let-\realdash \let_\normalunderscore
+ \let-\normaldash \let_\normalunderscore
}
}
@@ -3980,7 +4251,12 @@ end
% variable's value contains other Texinfo commands, it's almost certain
% it will fail (although perhaps we could fix that with sufficient work
% to do a one-level expansion on the result, instead of complete).
-%
+%
+% Unfortunately, this has the consequence that when _ is in the *value*
+% of an @set, it does not print properly in the roman fonts (get the cmr
+% dot accent at position 126 instead). No fix comes to mind, and it's
+% been this way since 2003 or earlier, so just ignore it.
+%
\def\expandablevalue#1{%
\expandafter\ifx\csname SET#1\endcsname\relax
{[No value for ``#1'']}%
@@ -3992,8 +4268,9 @@ end
% @ifset VAR ... @end ifset reads the `...' iff VAR has been defined
% with @set.
-%
-% To get special treatment of `@end ifset,' call \makeond and the redefine.
+%
+% To get the special treatment we need for `@end ifset,' we call
+% \makecond and then redefine.
%
\makecond{ifset}
\def\ifset{\parsearg{\doifset{\let\next=\ifsetfail}}}
@@ -4009,7 +4286,7 @@ end
}
\def\ifsetfail{\doignore{ifset}}
-% @ifclear VAR ... @end ifclear reads the `...' iff VAR has never been
+% @ifclear VAR ... @end executes the `...' iff VAR has never been
% defined with @set, or has been undefined with @clear.
%
% The `\else' inside the `\doifset' parameter is a trick to reuse the
@@ -4020,6 +4297,35 @@ end
\def\ifclear{\parsearg{\doifset{\else \let\next=\ifclearfail}}}
\def\ifclearfail{\doignore{ifclear}}
+% @ifcommandisdefined CMD ... @end executes the `...' if CMD (written
+% without the @) is in fact defined. We can only feasibly check at the
+% TeX level, so something like `mathcode' is going to considered
+% defined even though it is not a Texinfo command.
+%
+\makecond{ifcommanddefined}
+\def\ifcommanddefined{\parsearg{\doifcmddefined{\let\next=\ifcmddefinedfail}}}
+%
+\def\doifcmddefined#1#2{{%
+ \makevalueexpandable
+ \let\next=\empty
+ \expandafter\ifx\csname #2\endcsname\relax
+ #1% If not defined, \let\next as above.
+ \fi
+ \expandafter
+ }\next
+}
+\def\ifcmddefinedfail{\doignore{ifcommanddefined}}
+
+% @ifcommandnotdefined CMD ... handled similar to @ifclear above.
+\makecond{ifcommandnotdefined}
+\def\ifcommandnotdefined{%
+ \parsearg{\doifcmddefined{\else \let\next=\ifcmdnotdefinedfail}}}
+\def\ifcmdnotdefinedfail{\doignore{ifcommandnotdefined}}
+
+% Set the `txicommandconditionals' variable, so documents have a way to
+% test if the @ifcommand...defined conditionals are available.
+\set txicommandconditionals
+
% @dircategory CATEGORY -- specify a category of the dir file
% which this file should belong to. Ignore this in TeX.
\let\dircategory=\comment
@@ -4123,11 +4429,14 @@ end
\def\@{@}% change to @@ when we switch to @ as escape char in index files.
\def\ {\realbackslash\space }%
%
- % Need these in case \tex is in effect and \{ is a \delimiter again.
- % But can't use \lbracecmd and \rbracecmd because texindex assumes
- % braces and backslashes are used only as delimiters.
- \let\{ = \mylbrace
- \let\} = \myrbrace
+ % Need these unexpandable (because we define \tt as a dummy)
+ % definitions when @{ or @} appear in index entry text. Also, more
+ % complicated, when \tex is in effect and \{ is a \delimiter again.
+ % We can't use \lbracecmd and \rbracecmd because texindex assumes
+ % braces and backslashes are used only as delimiters. Perhaps we
+ % should define @lbrace and @rbrace commands a la @comma.
+ \def\{{{\tt\char123}}%
+ \def\}{{\tt\char125}}%
%
% I don't entirely understand this, but when an index entry is
% generated from a macro call, the \endinput which \scanmacro inserts
@@ -4138,7 +4447,7 @@ end
% processing continues to some further point. On the other hand, it
% seems \endinput does not hurt in the printed index arg, since that
% is still getting written without apparent harm.
- %
+ %
% Sample source (mac-idx3.tex, reported by Graham Percival to
% help-texinfo, 22may06):
% @macro funindex {WORD}
@@ -4146,12 +4455,12 @@ end
% @end macro
% ...
% @funindex commtest
- %
+ %
% The above is not enough to reproduce the bug, but it gives the flavor.
- %
+ %
% Sample whatsit resulting:
% .@write3{\entry{xyz}{@folio }{@code {xyz@endinput }}}
- %
+ %
% So:
\let\endinput = \empty
%
@@ -4180,7 +4489,7 @@ end
\def\commondummies{%
%
% \definedummyword defines \#1 as \string\#1\space, thus effectively
- % preventing its expansion. This is used only for control% words,
+ % preventing its expansion. This is used only for control words,
% not control letters, because the \space would be incorrect for
% control characters, but is needed to separate the control word
% from whatever follows.
@@ -4199,23 +4508,28 @@ end
\commondummiesnofonts
%
\definedummyletter\_%
+ \definedummyletter\-%
%
% Non-English letters.
\definedummyword\AA
\definedummyword\AE
+ \definedummyword\DH
\definedummyword\L
- \definedummyword\OE
\definedummyword\O
+ \definedummyword\OE
+ \definedummyword\TH
\definedummyword\aa
\definedummyword\ae
+ \definedummyword\dh
+ \definedummyword\exclamdown
\definedummyword\l
- \definedummyword\oe
\definedummyword\o
- \definedummyword\ss
- \definedummyword\exclamdown
- \definedummyword\questiondown
+ \definedummyword\oe
\definedummyword\ordf
\definedummyword\ordm
+ \definedummyword\questiondown
+ \definedummyword\ss
+ \definedummyword\th
%
% Although these internal commands shouldn't show up, sometimes they do.
\definedummyword\bf
@@ -4231,20 +4545,25 @@ end
\definedummyword\TeX
%
% Assorted special characters.
+ \definedummyword\arrow
\definedummyword\bullet
\definedummyword\comma
\definedummyword\copyright
\definedummyword\registeredsymbol
\definedummyword\dots
\definedummyword\enddots
+ \definedummyword\entrybreak
\definedummyword\equiv
\definedummyword\error
\definedummyword\euro
+ \definedummyword\expansion
+ \definedummyword\geq
\definedummyword\guillemetleft
\definedummyword\guillemetright
\definedummyword\guilsinglleft
\definedummyword\guilsinglright
- \definedummyword\expansion
+ \definedummyword\lbracechar
+ \definedummyword\leq
\definedummyword\minus
\definedummyword\ogonek
\definedummyword\pounds
@@ -4256,6 +4575,7 @@ end
\definedummyword\quoteleft
\definedummyword\quoteright
\definedummyword\quotesinglbase
+ \definedummyword\rbracechar
\definedummyword\result
\definedummyword\textdegree
%
@@ -4301,18 +4621,27 @@ end
\definedummyword\b
\definedummyword\i
\definedummyword\r
+ \definedummyword\sansserif
\definedummyword\sc
+ \definedummyword\slanted
\definedummyword\t
%
% Commands that take arguments.
+ \definedummyword\abbr
\definedummyword\acronym
+ \definedummyword\anchor
\definedummyword\cite
\definedummyword\code
\definedummyword\command
\definedummyword\dfn
+ \definedummyword\dmn
+ \definedummyword\email
\definedummyword\emph
\definedummyword\env
\definedummyword\file
+ \definedummyword\image
+ \definedummyword\indicateurl
+ \definedummyword\inforef
\definedummyword\kbd
\definedummyword\key
\definedummyword\math
@@ -4340,7 +4669,7 @@ end
\def\definedummyaccent##1{\let##1\asis}%
% We can just ignore other control letters.
\def\definedummyletter##1{\let##1\empty}%
- % Hopefully, all control words can become @asis.
+ % All control words become @asis by default; overrides below.
\let\definedummyword\definedummyaccent
%
\commondummiesnofonts
@@ -4352,48 +4681,63 @@ end
%
\def\ { }%
\def\@{@}%
- % how to handle braces?
\def\_{\normalunderscore}%
+ \def\-{}% @- shouldn't affect sorting
+ %
+ % Unfortunately, texindex is not prepared to handle braces in the
+ % content at all. So for index sorting, we map @{ and @} to strings
+ % starting with |, since that ASCII character is between ASCII { and }.
+ \def\{{|a}%
+ \def\lbracechar{|a}%
+ %
+ \def\}{|b}%
+ \def\rbracechar{|b}%
%
% Non-English letters.
\def\AA{AA}%
\def\AE{AE}%
+ \def\DH{DZZ}%
\def\L{L}%
\def\OE{OE}%
\def\O{O}%
+ \def\TH{ZZZ}%
\def\aa{aa}%
\def\ae{ae}%
+ \def\dh{dzz}%
+ \def\exclamdown{!}%
\def\l{l}%
\def\oe{oe}%
- \def\o{o}%
- \def\ss{ss}%
- \def\exclamdown{!}%
- \def\questiondown{?}%
\def\ordf{a}%
\def\ordm{o}%
+ \def\o{o}%
+ \def\questiondown{?}%
+ \def\ss{ss}%
+ \def\th{zzz}%
%
\def\LaTeX{LaTeX}%
\def\TeX{TeX}%
%
% Assorted special characters.
% (The following {} will end up in the sort string, but that's ok.)
+ \def\arrow{->}%
\def\bullet{bullet}%
\def\comma{,}%
\def\copyright{copyright}%
- \def\registeredsymbol{R}%
\def\dots{...}%
\def\enddots{...}%
\def\equiv{==}%
\def\error{error}%
\def\euro{euro}%
+ \def\expansion{==>}%
+ \def\geq{>=}%
\def\guillemetleft{<<}%
\def\guillemetright{>>}%
\def\guilsinglleft{<}%
\def\guilsinglright{>}%
- \def\expansion{==>}%
+ \def\leq{<=}%
\def\minus{-}%
- \def\pounds{pounds}%
\def\point{.}%
+ \def\pounds{pounds}%
\def\print{-|}%
\def\quotedblbase{"}%
\def\quotedblleft{"}%
@@ -4401,22 +4745,31 @@ end
\def\quoteleft{`}%
\def\quoteright{'}%
\def\quotesinglbase{,}%
+ \def\registeredsymbol{R}%
\def\result{=>}%
- \def\textdegree{degrees}%
+ \def\textdegree{o}%
+ %
+ \expandafter\ifx\csname SETtxiindexlquoteignore\endcsname\relax
+ \else \indexlquoteignore \fi
%
% We need to get rid of all macros, leaving only the arguments (if present).
% Of course this is not nearly correct, but it is the best we can do for now.
% makeinfo does not expand macros in the argument to @deffn, which ends up
% writing an index entry, and texindex isn't prepared for an index sort entry
% that starts with \.
- %
+ %
% Since macro invocations are followed by braces, we can just redefine them
% to take a single TeX argument. The case of a macro invocation that
% goes to end-of-line is not handled.
- %
+ %
\macrolist
}
+% Undocumented (for FSFS 2nd ed.): @set txiindexlquoteignore makes us
+% ignore left quotes in the sort term.
+{\catcode`\`=\active
+ \gdef\indexlquoteignore{\let`=\empty}}
+
\let\indexbackslash=0 %overridden during \printindex.
\let\SETmarginindex=\relax % put index entries in margin (undocumented)?
@@ -4514,10 +4867,9 @@ end
%
% ..., ready, GO:
%
-\def\safewhatsit#1{%
-\ifhmode
+\def\safewhatsit#1{\ifhmode
#1%
-\else
+ \else
% \lastskip and \lastpenalty cannot both be nonzero simultaneously.
\whatsitskip = \lastskip
\edef\lastskipmacro{\the\lastskip}%
@@ -4541,7 +4893,6 @@ end
% to re-insert the same penalty (values >10000 are used for various
% signals); since we just inserted a non-discardable item, any
% following glue (such as a \parskip) would be a breakpoint. For example:
- %
% @deffn deffn-whatever
% @vindex index-whatever
% Description.
@@ -4554,8 +4905,7 @@ end
% (the whatsit from the \write), so we must insert a \nobreak.
\nobreak\vskip\whatsitskip
\fi
-\fi
-}
+\fi}
% The index entry written in the file actually looks like
% \entry {sortstring}{page}{topic}
@@ -4674,7 +5024,6 @@ end
% But this freezes the catcodes in the argument, and can cause problems to
% @code, which sets - active. This problem was fixed by a kludge---
% ``-'' was active throughout whole index, but this isn't really right.
-%
% The right solution is to prevent \entry from swallowing the whole text.
% --kasal, 21nov03
\def\entry{%
@@ -4711,10 +5060,17 @@ end
% columns.
\vskip 0pt plus1pt
%
+ % When reading the text of entry, convert explicit line breaks
+ % from @* into spaces. The user might give these in long section
+ % titles, for instance.
+ \def\*{\unskip\space\ignorespaces}%
+ \def\entrybreak{\hfil\break}%
+ %
% Swallow the left brace of the text (first parameter):
\afterassignment\doentry
\let\temp =
}
+\def\entrybreak{\unskip\space\ignorespaces}%
\def\doentry{%
\bgroup % Instead of the swallowed brace.
\noindent
@@ -4947,7 +5303,22 @@ end
\message{sectioning,}
% Chapters, sections, etc.
-% \unnumberedno is an oxymoron, of course. But we count the unnumbered
+% Let's start with @part.
+\outer\parseargdef\part{\partzzz{#1}}
+\def\partzzz#1{%
+ \chapoddpage
+ \null
+ \vskip.3\vsize % move it down on the page a bit
+ \begingroup
+ \noindent \titlefonts\rmisbold #1\par % the text
+ \let\lastnode=\empty % no node to associate with
+ \writetocentry{part}{#1}{}% but put it in the toc
+ \headingsoff % no headline or footline on the part page
+ \chapoddpage
+ \endgroup
+}
+
+% \unnumberedno is an oxymoron. But we count the unnumbered
% sections so that we can refer to them unambiguously in the pdf
% outlines by their "section number". We avoid collisions with chapter
% numbers by starting them at 10000. (If a document ever has 10000
@@ -5026,8 +5397,8 @@ end
\chardef\maxseclevel = 3
%
% A numbered section within an unnumbered changes to unnumbered too.
-% To achive this, remember the "biggest" unnum. sec. we are currently in:
-\chardef\unmlevel = \maxseclevel
+% To achieve this, remember the "biggest" unnum. sec. we are currently in:
+\chardef\unnlevel = \maxseclevel
%
% Trace whether the current chapter is an appendix or not:
% \chapheadtype is "N" or "A", unnumbered chapters are ignored.
@@ -5052,8 +5423,8 @@ end
% The heading type:
\def\headtype{#1}%
\if \headtype U%
- \ifnum \absseclevel < \unmlevel
- \chardef\unmlevel = \absseclevel
+ \ifnum \absseclevel < \unnlevel
+ \chardef\unnlevel = \absseclevel
\fi
\else
% Check for appendix sections:
@@ -5065,10 +5436,10 @@ end
\fi\fi
\fi
% Check for numbered within unnumbered:
- \ifnum \absseclevel > \unmlevel
+ \ifnum \absseclevel > \unnlevel
\def\headtype{U}%
\else
- \chardef\unmlevel = 3
+ \chardef\unnlevel = 3
\fi
\fi
% Now print the heading:
@@ -5122,7 +5493,9 @@ end
\gdef\chaplevelprefix{\the\chapno.}%
\resetallfloatnos
%
- \message{\putwordChapter\space \the\chapno}%
+ % \putwordChapter can contain complex things in translations.
+ \toks0=\expandafter{\putwordChapter}%
+ \message{\the\toks0 \space \the\chapno}%
%
% Write the actual heading.
\chapmacro{#1}{Ynumbered}{\the\chapno}%
@@ -5133,15 +5506,17 @@ end
\global\let\subsubsection = \numberedsubsubsec
}
-\outer\parseargdef\appendix{\apphead0{#1}} % normally apphead0 calls appendixzzz
+\outer\parseargdef\appendix{\apphead0{#1}} % normally calls appendixzzz
+%
\def\appendixzzz#1{%
\global\secno=0 \global\subsecno=0 \global\subsubsecno=0
\global\advance\appendixno by 1
\gdef\chaplevelprefix{\appendixletter.}%
\resetallfloatnos
%
- \def\appendixnum{\putwordAppendix\space \appendixletter}%
- \message{\appendixnum}%
+ % \putwordAppendix can contain complex things in translations.
+ \toks0=\expandafter{\putwordAppendix}%
+ \message{\the\toks0 \space \appendixletter}%
%
\chapmacro{#1}{Yappendix}{\appendixletter}%
%
@@ -5150,7 +5525,8 @@ end
\global\let\subsubsection = \appendixsubsubsec
}
-\outer\parseargdef\unnumbered{\unnmhead0{#1}} % normally unnmhead0 calls unnumberedzzz
+% normally unnmhead0 calls unnumberedzzz:
+\outer\parseargdef\unnumbered{\unnmhead0{#1}}
\def\unnumberedzzz#1{%
\global\secno=0 \global\subsecno=0 \global\subsubsecno=0
\global\advance\unnumberedno by 1
@@ -5194,40 +5570,47 @@ end
\let\top\unnumbered
% Sections.
+%
\outer\parseargdef\numberedsec{\numhead1{#1}} % normally calls seczzz
\def\seczzz#1{%
\global\subsecno=0 \global\subsubsecno=0 \global\advance\secno by 1
\sectionheading{#1}{sec}{Ynumbered}{\the\chapno.\the\secno}%
}
-\outer\parseargdef\appendixsection{\apphead1{#1}} % normally calls appendixsectionzzz
+% normally calls appendixsectionzzz:
+\outer\parseargdef\appendixsection{\apphead1{#1}}
\def\appendixsectionzzz#1{%
\global\subsecno=0 \global\subsubsecno=0 \global\advance\secno by 1
\sectionheading{#1}{sec}{Yappendix}{\appendixletter.\the\secno}%
}
\let\appendixsec\appendixsection
-\outer\parseargdef\unnumberedsec{\unnmhead1{#1}} % normally calls unnumberedseczzz
+% normally calls unnumberedseczzz:
+\outer\parseargdef\unnumberedsec{\unnmhead1{#1}}
\def\unnumberedseczzz#1{%
\global\subsecno=0 \global\subsubsecno=0 \global\advance\secno by 1
\sectionheading{#1}{sec}{Ynothing}{\the\unnumberedno.\the\secno}%
}
% Subsections.
-\outer\parseargdef\numberedsubsec{\numhead2{#1}} % normally calls numberedsubseczzz
+%
+% normally calls numberedsubseczzz:
+\outer\parseargdef\numberedsubsec{\numhead2{#1}}
\def\numberedsubseczzz#1{%
\global\subsubsecno=0 \global\advance\subsecno by 1
\sectionheading{#1}{subsec}{Ynumbered}{\the\chapno.\the\secno.\the\subsecno}%
}
-\outer\parseargdef\appendixsubsec{\apphead2{#1}} % normally calls appendixsubseczzz
+% normally calls appendixsubseczzz:
+\outer\parseargdef\appendixsubsec{\apphead2{#1}}
\def\appendixsubseczzz#1{%
\global\subsubsecno=0 \global\advance\subsecno by 1
\sectionheading{#1}{subsec}{Yappendix}%
{\appendixletter.\the\secno.\the\subsecno}%
}
-\outer\parseargdef\unnumberedsubsec{\unnmhead2{#1}} %normally calls unnumberedsubseczzz
+% normally calls unnumberedsubseczzz:
+\outer\parseargdef\unnumberedsubsec{\unnmhead2{#1}}
\def\unnumberedsubseczzz#1{%
\global\subsubsecno=0 \global\advance\subsecno by 1
\sectionheading{#1}{subsec}{Ynothing}%
@@ -5235,21 +5618,25 @@ end
}
% Subsubsections.
-\outer\parseargdef\numberedsubsubsec{\numhead3{#1}} % normally numberedsubsubseczzz
+%
+% normally numberedsubsubseczzz:
+\outer\parseargdef\numberedsubsubsec{\numhead3{#1}}
\def\numberedsubsubseczzz#1{%
\global\advance\subsubsecno by 1
\sectionheading{#1}{subsubsec}{Ynumbered}%
{\the\chapno.\the\secno.\the\subsecno.\the\subsubsecno}%
}
-\outer\parseargdef\appendixsubsubsec{\apphead3{#1}} % normally appendixsubsubseczzz
+% normally appendixsubsubseczzz:
+\outer\parseargdef\appendixsubsubsec{\apphead3{#1}}
\def\appendixsubsubseczzz#1{%
\global\advance\subsubsecno by 1
\sectionheading{#1}{subsubsec}{Yappendix}%
{\appendixletter.\the\secno.\the\subsecno.\the\subsubsecno}%
}
-\outer\parseargdef\unnumberedsubsubsec{\unnmhead3{#1}} %normally unnumberedsubsubseczzz
+% normally unnumberedsubsubseczzz:
+\outer\parseargdef\unnumberedsubsubsec{\unnmhead3{#1}}
\def\unnumberedsubsubseczzz#1{%
\global\advance\subsubsecno by 1
\sectionheading{#1}{subsubsec}{Ynothing}%
@@ -5265,14 +5652,6 @@ end
% Define @majorheading, @heading and @subheading
-% NOTE on use of \vbox for chapter headings, section headings, and such:
-% 1) We use \vbox rather than the earlier \line to permit
-% overlong headings to fold.
-% 2) \hyphenpenalty is set to 10000 because hyphenation in a
-% heading is obnoxious; this forbids it.
-% 3) Likewise, headings look best if no \parindent is used, and
-% if justification is not attempted. Hence \raggedright.
-
\def\majorheading{%
{\advance\chapheadingskip by 10pt \chapbreak }%
\parsearg\chapheadingzzz
@@ -5280,10 +5659,8 @@ end
\def\chapheading{\chapbreak \parsearg\chapheadingzzz}
\def\chapheadingzzz#1{%
- {\chapfonts \vbox{\hyphenpenalty=10000\tolerance=5000
- \parindent=0pt\ptexraggedright
- \rmisbold #1\hfill}}%
- \bigskip \par\penalty 200\relax
+ \vbox{\chapfonts \raggedtitlesettings #1\par}%
+ \nobreak\bigskip \nobreak
\suppressfirstparagraphindent
}
@@ -5299,14 +5676,13 @@ end
% (including whitespace, linebreaking, etc. around it),
% given all the information in convenient, parsed form.
-%%% Args are the skip and penalty (usually negative)
+% Args are the skip and penalty (usually negative)
\def\dobreak#1#2{\par\ifdim\lastskip<#1\removelastskip\penalty#2\vskip#1\fi}
-%%% Define plain chapter starts, and page on/off switching for it
% Parameter controlling skip before chapter headings (if needed)
-
\newskip\chapheadingskip
+% Define plain chapter starts, and page on/off switching for it.
\def\chapbreak{\dobreak \chapheadingskip {-4000}}
\def\chappager{\par\vfill\supereject}
% Because \domark is called before \chapoddpage, the filler page will
@@ -5316,9 +5692,8 @@ end
\chappager
\ifodd\pageno \else
\begingroup
- \evenheadline={\hfil}\evenfootline={\hfil}%
- \oddheadline={\hfil}\oddfootline={\hfil}%
- \hbox to 0pt{}%
+ \headingsoff
+ \null
\chappager
\endgroup
\fi
@@ -5374,7 +5749,10 @@ end
\xdef\lastchapterdefs{%
\gdef\noexpand\thischaptername{\the\toks0}%
\gdef\noexpand\thischapternum{\appendixletter}%
- \gdef\noexpand\thischapter{\putwordAppendix{} \noexpand\thischapternum:
+ % \noexpand\putwordAppendix avoids expanding indigestible
+ % commands in some of the translations.
+ \gdef\noexpand\thischapter{\noexpand\putwordAppendix{}
+ \noexpand\thischapternum:
\noexpand\thischaptername}%
}%
\else
@@ -5382,7 +5760,10 @@ end
\xdef\lastchapterdefs{%
\gdef\noexpand\thischaptername{\the\toks0}%
\gdef\noexpand\thischapternum{\the\chapno}%
- \gdef\noexpand\thischapter{\putwordChapter{} \noexpand\thischapternum:
+ % \noexpand\putwordChapter avoids expanding indigestible
+ % commands in some of the translations.
+ \gdef\noexpand\thischapter{\noexpand\putwordChapter{}
+ \noexpand\thischapternum:
\noexpand\thischaptername}%
}%
\fi\fi\fi
@@ -5438,8 +5819,7 @@ end
%
% Typeset the actual heading.
\nobreak % Avoid page breaks at the interline glue.
- \vbox{\hyphenpenalty=10000 \tolerance=5000 \parindent=0pt \ptexraggedright
- \hangindent=\wd0 \centerparametersmaybe
+ \vbox{\raggedtitlesettings \hangindent=\wd0 \centerparametersmaybe
\unhbox0 #1\par}%
}%
\nobreak\bigskip % no page break after a chapter title
@@ -5461,18 +5841,18 @@ end
\def\setchapterstyle #1 {\csname CHAPF#1\endcsname}
%
\def\unnchfopen #1{%
-\chapoddpage {\chapfonts \vbox{\hyphenpenalty=10000\tolerance=5000
- \parindent=0pt\ptexraggedright
- \rmisbold #1\hfill}}\bigskip \par\nobreak
+ \chapoddpage
+ \vbox{\chapfonts \raggedtitlesettings #1\par}%
+ \nobreak\bigskip\nobreak
}
\def\chfopen #1#2{\chapoddpage {\chapfonts
\vbox to 3in{\vfil \hbox to\hsize{\hfil #2} \hbox to\hsize{\hfil #1} \vfil}}%
\par\penalty 5000 %
}
\def\centerchfopen #1{%
-\chapoddpage {\chapfonts \vbox{\hyphenpenalty=10000\tolerance=5000
- \parindent=0pt
- \hfill {\rmisbold #1}\hfill}}\bigskip \par\nobreak
+ \chapoddpage
+ \vbox{\chapfonts \raggedtitlesettings \hfill #1\hfill}%
+ \nobreak\bigskip \nobreak
}
\def\CHAPFopen{%
\global\let\chapmacro=\chfopen
@@ -5504,6 +5884,8 @@ end
%
\def\sectionheading#1#2#3#4{%
{%
+ \checkenv{}% should not be in an environment.
+ %
% Switch to the right set of fonts.
\csname #2fonts\endcsname \rmisbold
%
@@ -5525,7 +5907,10 @@ end
\xdef\lastsectiondefs{%
\gdef\noexpand\thissectionname{\the\toks0}%
\gdef\noexpand\thissectionnum{#4}%
- \gdef\noexpand\thissection{\putwordSection{} \noexpand\thissectionnum:
+ % \noexpand\putwordSection avoids expanding indigestible
+ % commands in some of the translations.
+ \gdef\noexpand\thissection{\noexpand\putwordSection{}
+ \noexpand\thissectionnum:
\noexpand\thissectionname}%
}%
\fi
@@ -5535,7 +5920,10 @@ end
\xdef\lastsectiondefs{%
\gdef\noexpand\thissectionname{\the\toks0}%
\gdef\noexpand\thissectionnum{#4}%
- \gdef\noexpand\thissection{\putwordSection{} \noexpand\thissectionnum:
+ % \noexpand\putwordSection avoids expanding indigestible
+ % commands in some of the translations.
+ \gdef\noexpand\thissection{\noexpand\putwordSection{}
+ \noexpand\thissectionnum:
\noexpand\thissectionname}%
}%
\fi
@@ -5555,7 +5943,7 @@ end
%
% Now the second mark, after the heading break. No break points
% between here and the heading.
- \let\prevsectiondefs=\lastsectiondefs
+ \global\let\prevsectiondefs=\lastsectiondefs
\domark
%
% Only insert the space after the number if we have a section number.
@@ -5609,15 +5997,15 @@ end
%
% We'll almost certainly start a paragraph next, so don't let that
% glue accumulate. (Not a breakpoint because it's preceded by a
- % discardable item.)
+ % discardable item.) However, when a paragraph is not started next
+ % (\startdefun, \cartouche, \center, etc.), this needs to be wiped out
+ % or the negative glue will cause weirdly wrong output, typically
+ % obscuring the section heading with something else.
\vskip-\parskip
- %
- % This is purely so the last item on the list is a known \penalty >
- % 10000. This is so \startdefun can avoid allowing breakpoints after
- % section headings. Otherwise, it would insert a valid breakpoint between:
- %
- % @section sec-whatever
- % @deffn def-whatever
+ %
+ % This is so the last item on the main vertical list is a known
+ % \penalty > 10000, so \startdefun, etc., can recognize the situation
+ % and do the needful.
\penalty 10001
}
@@ -5673,7 +6061,7 @@ end
% These characters do not print properly in the Computer Modern roman
% fonts, so we must take special care. This is more or less redundant
% with the Texinfo input format setup at the end of this file.
-%
+%
\def\activecatcodes{%
\catcode`\"=\active
\catcode`\$=\active
@@ -5723,7 +6111,7 @@ end
% redefined for the two-volume lispref. We always output on
% \jobname.toc even if this is redefined.
-%
+%
\def\tocreadfilename{\jobname.toc}
% Normal (long) toc.
@@ -5749,6 +6137,7 @@ end
\def\summarycontents{%
\startcontents{\putwordShortTOC}%
%
+ \let\partentry = \shortpartentry
\let\numchapentry = \shortchapentry
\let\appentry = \shortchapentry
\let\unnchapentry = \shortunnchapentry
@@ -5804,6 +6193,19 @@ end
% The last argument is the page number.
% The arguments in between are the chapter number, section number, ...
+% Parts, in the main contents. Replace the part number, which doesn't
+% exist, with an empty box. Let's hope all the numbers have the same width.
+% Also ignore the page number, which is conventionally not printed.
+\def\numeralbox{\setbox0=\hbox{8}\hbox to \wd0{\hfil}}
+\def\partentry#1#2#3#4{\dochapentry{\numeralbox\labelspace#1}{}}
+%
+% Parts, in the short toc.
+\def\shortpartentry#1#2#3#4{%
+ \penalty-300
+ \vskip.5\baselineskip plus.15\baselineskip minus.1\baselineskip
+ \shortchapentry{{\bf #1}}{\numeralbox}{}{}%
+}
+
% Chapters, in the main contents.
\def\numchapentry#1#2#3#4{\dochapentry{#2\labelspace#1}{#4}}
%
@@ -5893,9 +6295,9 @@ end
\message{environments,}
% @foo ... @end foo.
-% @tex ... @end tex escapes into raw Tex temporarily.
+% @tex ... @end tex escapes into raw TeX temporarily.
% One exception: @ is still an escape character, so that @end tex works.
-% But \@ or @@ will get a plain tex @ character.
+% But \@ or @@ will get a plain @ character.
\envdef\tex{%
\setupmarkupstyle{tex}%
@@ -5908,10 +6310,14 @@ end
\catcode `\|=\other
\catcode `\<=\other
\catcode `\>=\other
- \catcode`\`=\other
- \catcode`\'=\other
+ \catcode `\`=\other
+ \catcode `\'=\other
\escapechar=`\\
%
+ % ' is active in math mode (mathcode"8000). So reset it, and all our
+ % other math active characters (just in case), to plain's definitions.
+ \mathactive
+ %
\let\b=\ptexb
\let\bullet=\ptexbullet
\let\c=\ptexc
@@ -5929,7 +6335,7 @@ end
\let\/=\ptexslash
\let\*=\ptexstar
\let\t=\ptext
- \expandafter \let\csname top\endcsname=\ptextop % outer
+ \expandafter \let\csname top\endcsname=\ptextop % we've made it outer
\let\frenchspacing=\plainfrenchspacing
%
\def\endldots{\mathinner{\ldots\ldots\ldots\ldots}}%
@@ -6015,6 +6421,12 @@ end
\normbskip=\baselineskip \normpskip=\parskip \normlskip=\lineskip
% Flag to tell @lisp, etc., not to narrow margin.
\let\nonarrowing = t%
+ %
+ % If this cartouche directly follows a sectioning command, we need the
+ % \parskip glue (backspaced over by default) or the cartouche can
+ % collide with the section heading.
+ \ifnum\lastpenalty>10000 \vskip\parskip \penalty\lastpenalty \fi
+ %
\vbox\bgroup
\baselineskip=0pt\parskip=0pt\lineskip=0pt
\carttop
@@ -6028,7 +6440,7 @@ end
\lineskip=\normlskip
\parskip=\normpskip
\vskip -\parskip
- \comment % For explanation, see the end of \def\group.
+ \comment % For explanation, see the end of def\group.
}
\def\Ecartouche{%
\ifhmode\par\fi
@@ -6048,7 +6460,7 @@ end
\newdimen\nonfillparindent
\def\nonfillstart{%
\aboveenvbreak
- \hfuzz = 12pt % Don't be fussy
+ \ifdim\hfuzz < 12pt \hfuzz = 12pt \fi % Don't be fussy
\sepspaces % Make spaces be word-separators rather than space tokens.
\let\par = \lisppar % don't ignore blank lines
\obeylines % each line of input is a line of output
@@ -6114,41 +6526,42 @@ end
}
% We often define two environments, @foo and @smallfoo.
-% Let's do it by one command:
-\def\makedispenv #1#2{
- \expandafter\envdef\csname#1\endcsname {\setnormaldispenv #2}
- \expandafter\envdef\csname small#1\endcsname {\setsmalldispenv #2}
+% Let's do it in one command. #1 is the env name, #2 the definition.
+\def\makedispenvdef#1#2{%
+ \expandafter\envdef\csname#1\endcsname {\setnormaldispenv #2}%
+ \expandafter\envdef\csname small#1\endcsname {\setsmalldispenv #2}%
\expandafter\let\csname E#1\endcsname \afterenvbreak
\expandafter\let\csname Esmall#1\endcsname \afterenvbreak
}
-% Define two synonyms:
-\def\maketwodispenvs #1#2#3{
- \makedispenv{#1}{#3}
- \makedispenv{#2}{#3}
+% Define two environment synonyms (#1 and #2) for an environment.
+\def\maketwodispenvdef#1#2#3{%
+ \makedispenvdef{#1}{#3}%
+ \makedispenvdef{#2}{#3}%
}
-
-% @lisp: indented, narrowed, typewriter font; @example: same as @lisp.
+%
+% @lisp: indented, narrowed, typewriter font;
+% @example: same as @lisp.
%
% @smallexample and @smalllisp: use smaller fonts.
% Originally contributed by Pavel@xerox.
%
-\maketwodispenvs {lisp}{example}{%
+\maketwodispenvdef{lisp}{example}{%
\nonfillstart
\tt\setupmarkupstyle{example}%
\let\kbdfont = \kbdexamplefont % Allow @kbd to do something special.
- \gobble % eat return
+ \gobble % eat return
}
% @display/@smalldisplay: same as @lisp except keep current font.
%
-\makedispenv {display}{%
+\makedispenvdef{display}{%
\nonfillstart
\gobble
}
% @format/@smallformat: same as @display except don't narrow margins.
%
-\makedispenv{format}{%
+\makedispenvdef{format}{%
\let\nonarrowing = t%
\nonfillstart
\gobble
@@ -6167,7 +6580,7 @@ end
\envdef\flushright{%
\let\nonarrowing = t%
\nonfillstart
- \advance\leftskip by 0pt plus 1fill
+ \advance\leftskip by 0pt plus 1fill\relax
\gobble
}
\let\Eflushright = \afterenvbreak
@@ -6202,43 +6615,28 @@ end
% we're doing normal filling. So, when using \aboveenvbreak and
% \afterenvbreak, temporarily make \parskip 0.
%
+\makedispenvdef{quotation}{\quotationstart}
+%
\def\quotationstart{%
- {\parskip=0pt \aboveenvbreak}% because \aboveenvbreak inserts \parskip
- \parindent=0pt
- %
- % @cartouche defines \nonarrowing to inhibit narrowing at next level down.
+ \indentedblockstart % same as \indentedblock, but increase right margin too.
\ifx\nonarrowing\relax
- \advance\leftskip by \lispnarrowing
\advance\rightskip by \lispnarrowing
- \exdentamount = \lispnarrowing
- \else
- \let\nonarrowing = \relax
\fi
\parsearg\quotationlabel
}
-\envdef\quotation{%
- \setnormaldispenv
- \quotationstart
-}
-
-\envdef\smallquotation{%
- \setsmalldispenv
- \quotationstart
-}
-\let\Esmallquotation = \Equotation
-
% We have retained a nonzero parskip for the environment, since we're
% doing normal filling.
%
\def\Equotation{%
\par
- \ifx\quotationauthor\undefined\else
+ \ifx\quotationauthor\thisisundefined\else
% indent a bit.
\leftline{\kern 2\leftskip \sl ---\quotationauthor}%
\fi
{\parskip=0pt \afterenvbreak}%
}
+\def\Esmallquotation{\Equotation}
% If we're given an argument, typeset it in bold with a colon after.
\def\quotationlabel#1{%
@@ -6248,6 +6646,32 @@ end
\fi
}
+% @indentedblock is like @quotation, but indents only on the left and
+% has no optional argument.
+%
+\makedispenvdef{indentedblock}{\indentedblockstart}
+%
+\def\indentedblockstart{%
+ {\parskip=0pt \aboveenvbreak}% because \aboveenvbreak inserts \parskip
+ \parindent=0pt
+ %
+ % @cartouche defines \nonarrowing to inhibit narrowing at next level down.
+ \ifx\nonarrowing\relax
+ \advance\leftskip by \lispnarrowing
+ \exdentamount = \lispnarrowing
+ \else
+ \let\nonarrowing = \relax
+ \fi
+}
+
+% Keep a nonzero parskip for the environment, since we're doing normal filling.
+%
+\def\Eindentedblock{%
+ \par
+ {\parskip=0pt \afterenvbreak}%
+}
+\def\Esmallindentedblock{\Eindentedblock}
+
% LaTeX-like @verbatim...@end verbatim and @verb{<char>...<char>}
% If we want to allow any <char> as delimiter,
@@ -6295,21 +6719,28 @@ end
% Setup for the @verbatim environment
%
-% Real tab expansion
+% Real tab expansion.
\newdimen\tabw \setbox0=\hbox{\tt\space} \tabw=8\wd0 % tab amount
%
-\def\starttabbox{\setbox0=\hbox\bgroup}
+% We typeset each line of the verbatim in an \hbox, so we can handle
+% tabs. The \global is in case the verbatim line starts with an accent,
+% or some other command that starts with a begin-group. Otherwise, the
+% entire \verbbox would disappear at the corresponding end-group, before
+% it is typeset. Meanwhile, we can't have nested verbatim commands
+% (can we?), so the \global won't be overwriting itself.
+\newbox\verbbox
+\def\starttabbox{\global\setbox\verbbox=\hbox\bgroup}
%
\begingroup
\catcode`\^^I=\active
\gdef\tabexpand{%
\catcode`\^^I=\active
\def^^I{\leavevmode\egroup
- \dimen0=\wd0 % the width so far, or since the previous tab
- \divide\dimen0 by\tabw
- \multiply\dimen0 by\tabw % compute previous multiple of \tabw
- \advance\dimen0 by\tabw % advance to next multiple of \tabw
- \wd0=\dimen0 \box0 \starttabbox
+ \dimen\verbbox=\wd\verbbox % the width so far, or since the previous tab
+ \divide\dimen\verbbox by\tabw
+ \multiply\dimen\verbbox by\tabw % compute previous multiple of \tabw
+ \advance\dimen\verbbox by\tabw % advance to next multiple of \tabw
+ \wd\verbbox=\dimen\verbbox \box\verbbox \starttabbox
}%
}
\endgroup
@@ -6318,15 +6749,16 @@ end
\def\setupverbatim{%
\let\nonarrowing = t%
\nonfillstart
- % Easiest (and conventionally used) font for verbatim
- \tt
- \def\par{\leavevmode\egroup\box0\endgraf}%
+ \tt % easiest (and conventionally used) font for verbatim
+ % The \leavevmode here is for blank lines. Otherwise, we would
+ % never \starttabox and the \egroup would end verbatim mode.
+ \def\par{\leavevmode\egroup\box\verbbox\endgraf}%
\tabexpand
\setupmarkupstyle{verbatim}%
% Respect line breaks,
% print special symbols as themselves, and
- % make each space count
- % must do in this order:
+ % make each space count.
+ % Must do in this order:
\obeylines \uncatcodespecials \sepspaces
\everypar{\starttabbox}%
}
@@ -6383,6 +6815,7 @@ end
\makevalueexpandable
\setupverbatim
\indexnofonts % Allow `@@' and other weird things in file names.
+ \wlog{texinfo.tex: doing @verbatiminclude of #1^^J}%
\input #1
\afterenvbreak
}%
@@ -6432,7 +6865,7 @@ end
% commands also insert a nobreak penalty, and we don't want to allow
% a break between a section heading and a defun.
%
- % As a minor refinement, we avoid "club" headers by signalling
+ % As a further refinement, we avoid "club" headers by signalling
% with penalty of 10003 after the very first @deffn in the
% sequence (see above), and penalty of 10002 after any following
% @def command.
@@ -6469,7 +6902,7 @@ end
#1#2 \endheader
% common ending:
\interlinepenalty = 10000
- \advance\rightskip by 0pt plus 1fil
+ \advance\rightskip by 0pt plus 1fil\relax
\endgraf
\nobreak\vskip -\parskip
\penalty\defunpenalty % signal to \startdefun and \dodefunx
@@ -6499,13 +6932,36 @@ end
\def\domakedefun#1#2#3{%
\envdef#1{%
\startdefun
+ \doingtypefnfalse % distinguish typed functions from all else
\parseargusing\activeparens{\printdefunline#3}%
}%
\def#2{\dodefunx#1}%
\def#3%
}
-%%% Untyped functions:
+\newif\ifdoingtypefn % doing typed function?
+\newif\ifrettypeownline % typeset return type on its own line?
+
+% @deftypefnnewline on|off says whether the return type of typed functions
+% are printed on their own line. This affects @deftypefn, @deftypefun,
+% @deftypeop, and @deftypemethod.
+%
+\parseargdef\deftypefnnewline{%
+ \def\temp{#1}%
+ \ifx\temp\onword
+ \expandafter\let\csname SETtxideftypefnnl\endcsname
+ = \empty
+ \else\ifx\temp\offword
+ \expandafter\let\csname SETtxideftypefnnl\endcsname
+ = \relax
+ \else
+ \errhelp = \EMsimple
+ \errmessage{Unknown @txideftypefnnl value `\temp',
+ must be on|off}%
+ \fi\fi
+}
+
+% Untyped functions:
% @deffn category name args
\makedefun{deffn}{\deffngeneral{}}
@@ -6524,7 +6980,7 @@ end
\defname{#2}{}{#3}\magicamp\defunargs{#4\unskip}%
}
-%%% Typed functions:
+% Typed functions:
% @deftypefn category type name args
\makedefun{deftypefn}{\deftypefngeneral{}}
@@ -6539,10 +6995,11 @@ end
%
\def\deftypefngeneral#1#2 #3 #4 #5\endheader{%
\dosubind{fn}{\code{#4}}{#1}%
+ \doingtypefntrue
\defname{#2}{#3}{#4}\defunargs{#5\unskip}%
}
-%%% Typed variables:
+% Typed variables:
% @deftypevr category type var args
\makedefun{deftypevr}{\deftypecvgeneral{}}
@@ -6560,7 +7017,7 @@ end
\defname{#2}{#3}{#4}\defunargs{#5\unskip}%
}
-%%% Untyped variables:
+% Untyped variables:
% @defvr category var args
\makedefun{defvr}#1 {\deftypevrheader{#1} {} }
@@ -6571,7 +7028,8 @@ end
% \defcvof {category of}class var args
\def\defcvof#1#2 {\deftypecvof{#1}#2 {} }
-%%% Type:
+% Types:
+
% @deftp category name args
\makedefun{deftp}#1 #2 #3\endheader{%
\doind{tp}{\code{#2}}%
@@ -6599,25 +7057,49 @@ end
% We are followed by (but not passed) the arguments, if any.
%
\def\defname#1#2#3{%
+ \par
% Get the values of \leftskip and \rightskip as they were outside the @def...
\advance\leftskip by -\defbodyindent
%
- % How we'll format the type name. Putting it in brackets helps
+ % Determine if we are typesetting the return type of a typed function
+ % on a line by itself.
+ \rettypeownlinefalse
+ \ifdoingtypefn % doing a typed function specifically?
+ % then check user option for putting return type on its own line:
+ \expandafter\ifx\csname SETtxideftypefnnl\endcsname\relax \else
+ \rettypeownlinetrue
+ \fi
+ \fi
+ %
+ % How we'll format the category name. Putting it in brackets helps
% distinguish it from the body text that may end up on the next line
% just below it.
\def\temp{#1}%
\setbox0=\hbox{\kern\deflastargmargin \ifx\temp\empty\else [\rm\temp]\fi}
%
- % Figure out line sizes for the paragraph shape.
+ % Figure out line sizes for the paragraph shape. We'll always have at
+ % least two.
+ \tempnum = 2
+ %
% The first line needs space for \box0; but if \rightskip is nonzero,
% we need only space for the part of \box0 which exceeds it:
\dimen0=\hsize \advance\dimen0 by -\wd0 \advance\dimen0 by \rightskip
+ %
+ % If doing a return type on its own line, we'll have another line.
+ \ifrettypeownline
+ \advance\tempnum by 1
+ \def\maybeshapeline{0in \hsize}%
+ \else
+ \def\maybeshapeline{}%
+ \fi
+ %
% The continuations:
\dimen2=\hsize \advance\dimen2 by -\defargsindent
- % (plain.tex says that \dimen1 should be used only as global.)
- \parshape 2 0in \dimen0 \defargsindent \dimen2
%
- % Put the type name to the right margin.
+ % The final paragraph shape:
+ \parshape \tempnum 0in \dimen0 \maybeshapeline \defargsindent \dimen2
+ %
+ % Put the category name at the right margin.
\noindent
\hbox to 0pt{%
\hfil\box0 \kern-\hsize
@@ -6639,8 +7121,16 @@ end
% . this still does not fix the ?` and !` ligatures, but so far no
% one has made identifiers using them :).
\df \tt
- \def\temp{#2}% return value type
- \ifx\temp\empty\else \tclose{\temp} \fi
+ \def\temp{#2}% text of the return type
+ \ifx\temp\empty\else
+ \tclose{\temp}% typeset the return type
+ \ifrettypeownline
+ % put return type on its own line; prohibit line break following:
+ \hfil\vadjust{\nobreak}\break
+ \else
+ \space % type on same line, so just followed by a space
+ \fi
+ \fi % no return type
#3% output function name
}%
{\rm\enskip}% hskip 0.5 em of \tenrm
@@ -6660,7 +7150,10 @@ end
\df \sl \hyphenchar\font=0
%
% On the other hand, if an argument has two dashes (for instance), we
- % want a way to get ttsl. Let's try @var for that.
+ % want a way to get ttsl. We used to recommend @var for that, so
+ % leave the code in, but it's strange for @var to lead to typewriter.
+ % Nowadays we recommend @code, since the difference between a ttsl hyphen
+ % and a tt hyphen is pretty tiny. @code also disables ?` !`.
\def\var##1{{\setupmarkupstyle{var}\ttslanted{##1}}}%
#1%
\sl\hyphenchar\font=45
@@ -6758,7 +7251,7 @@ end
% To do this right we need a feature of e-TeX, \scantokens,
% which we arrange to emulate with a temporary file in ordinary TeX.
-\ifx\eTeXversion\undefined
+\ifx\eTeXversion\thisisundefined
\newwrite\macscribble
\def\scantokens#1{%
\toks0={#1}%
@@ -6769,25 +7262,30 @@ end
}
\fi
-\def\scanmacro#1{%
- \begingroup
- \newlinechar`\^^M
- \let\xeatspaces\eatspaces
- % Undo catcode changes of \startcontents and \doprintindex
- % When called from @insertcopying or (short)caption, we need active
- % backslash to get it printed correctly. Previously, we had
- % \catcode`\\=\other instead. We'll see whether a problem appears
- % with macro expansion. --kasal, 19aug04
- \catcode`\@=0 \catcode`\\=\active \escapechar=`\@
- % ... and \example
- \spaceisspace
- %
- % Append \endinput to make sure that TeX does not see the ending newline.
- % I've verified that it is necessary both for e-TeX and for ordinary TeX
- % --kasal, 29nov03
- \scantokens{#1\endinput}%
- \endgroup
-}
+\def\scanmacro#1{\begingroup
+ \newlinechar`\^^M
+ \let\xeatspaces\eatspaces
+ %
+ % Undo catcode changes of \startcontents and \doprintindex
+ % When called from @insertcopying or (short)caption, we need active
+ % backslash to get it printed correctly. Previously, we had
+ % \catcode`\\=\other instead. We'll see whether a problem appears
+ % with macro expansion. --kasal, 19aug04
+ \catcode`\@=0 \catcode`\\=\active \escapechar=`\@
+ %
+ % ... and for \example:
+ \spaceisspace
+ %
+ % The \empty here causes a following catcode 5 newline to be eaten as
+ % part of reading whitespace after a control sequence. It does not
+ % eat a catcode 13 newline. There's no good way to handle the two
+ % cases (untried: maybe e-TeX's \everyeof could help, though plain TeX
+ % would then have different behavior). See the Macro Details node in
+ % the manual for the workaround we recommend for macros and
+ % line-oriented commands.
+ %
+ \scantokens{#1\empty}%
+\endgroup}
\def\scanexp#1{%
\edef\temp{\noexpand\scanmacro{#1}}%
@@ -6815,7 +7313,7 @@ end
% This does \let #1 = #2, with \csnames; that is,
% \let \csname#1\endcsname = \csname#2\endcsname
% (except of course we have to play expansion games).
-%
+%
\def\cslet#1#2{%
\expandafter\let
\csname#1\expandafter\endcsname
@@ -6841,17 +7339,18 @@ end
% Macro bodies are absorbed as an argument in a context where
% all characters are catcode 10, 11 or 12, except \ which is active
-% (as in normal texinfo). It is necessary to change the definition of \.
-
+% (as in normal texinfo). It is necessary to change the definition of \
+% to recognize macro arguments; this is the job of \mbodybackslash.
+%
% Non-ASCII encodings make 8-bit characters active, so un-activate
% them to avoid their expansion. Must do this non-globally, to
% confine the change to the current group.
-
+%
% It's necessary to have hard CRs when the macro is executed. This is
-% done by making ^^M (\endlinechar) catcode 12 when reading the macro
+% done by making ^^M (\endlinechar) catcode 12 when reading the macro
% body, and then making it the \newlinechar in \scanmacro.
-
-\def\scanctxt{%
+%
+\def\scanctxt{% used as subroutine
\catcode`\"=\other
\catcode`\+=\other
\catcode`\<=\other
@@ -6864,13 +7363,13 @@ end
\ifx\declaredencoding\ascii \else \setnonasciicharscatcodenonglobal\other \fi
}
-\def\scanargctxt{%
+\def\scanargctxt{% used for copying and captions, not macros.
\scanctxt
\catcode`\\=\other
\catcode`\^^M=\other
}
-\def\macrobodyctxt{%
+\def\macrobodyctxt{% used for @macro definitions
\scanctxt
\catcode`\{=\other
\catcode`\}=\other
@@ -6878,32 +7377,56 @@ end
\usembodybackslash
}
-\def\macroargctxt{%
+\def\macroargctxt{% used when scanning invocations
\scanctxt
- \catcode`\\=\other
+ \catcode`\\=0
}
+% why catcode 0 for \ in the above? To recognize \\ \{ \} as "escapes"
+% for the single characters \ { }. Thus, we end up with the "commands"
+% that would be written @\ @{ @} in a Texinfo document.
+%
+% We already have @{ and @}. For @\, we define it here, and only for
+% this purpose, to produce a typewriter backslash (so, the @\ that we
+% define for @math can't be used with @macro calls):
+%
+\def\\{\normalbackslash}%
+%
+% We would like to do this for \, too, since that is what makeinfo does.
+% But it is not possible, because Texinfo already has a command @, for a
+% cedilla accent. Documents must use @comma{} instead.
+%
+% \anythingelse will almost certainly be an error of some kind.
+
% \mbodybackslash is the definition of \ in @macro bodies.
% It maps \foo\ => \csname macarg.foo\endcsname => #N
% where N is the macro parameter number.
% We define \csname macarg.\endcsname to be \realbackslash, so
% \\ in macro replacement text gets you a backslash.
-
+%
{\catcode`@=0 @catcode`@\=@active
@gdef@usembodybackslash{@let\=@mbodybackslash}
@gdef@mbodybackslash#1\{@csname macarg.#1@endcsname}
}
\expandafter\def\csname macarg.\endcsname{\realbackslash}
+\def\margbackslash#1{\char`\#1 }
+
\def\macro{\recursivefalse\parsearg\macroxxx}
\def\rmacro{\recursivetrue\parsearg\macroxxx}
\def\macroxxx#1{%
- \getargs{#1}% now \macname is the macname and \argl the arglist
+ \getargs{#1}% now \macname is the macname and \argl the arglist
\ifx\argl\empty % no arguments
- \paramno=0%
+ \paramno=0\relax
\else
\expandafter\parsemargdef \argl;%
+ \if\paramno>256\relax
+ \ifx\eTeXversion\thisisundefined
+ \errhelp = \EMsimple
+ \errmessage{You need eTeX to compile a file with macros with more than 256 arguments}
+ \fi
+ \fi
\fi
\if1\csname ismacro.\the\macname\endcsname
\message{Warning: redefining \the\macname}%
@@ -6950,46 +7473,269 @@ end
% an opening brace, and that opening brace is not consumed.
\def\getargs#1{\getargsxxx#1{}}
\def\getargsxxx#1#{\getmacname #1 \relax\getmacargs}
-\def\getmacname #1 #2\relax{\macname={#1}}
+\def\getmacname#1 #2\relax{\macname={#1}}
\def\getmacargs#1{\def\argl{#1}}
+% For macro processing make @ a letter so that we can make Texinfo private macro names.
+\edef\texiatcatcode{\the\catcode`\@}
+\catcode `@=11\relax
+
% Parse the optional {params} list. Set up \paramno and \paramlist
-% so \defmacro knows what to do. Define \macarg.blah for each blah
-% in the params list, to be ##N where N is the position in that list.
+% so \defmacro knows what to do. Define \macarg.BLAH for each BLAH
+% in the params list to some hook where the argument si to be expanded. If
+% there are less than 10 arguments that hook is to be replaced by ##N where N
+% is the position in that list, that is to say the macro arguments are to be
+% defined `a la TeX in the macro body.
+%
% That gets used by \mbodybackslash (above).
-
+%
% We need to get `macro parameter char #' into several definitions.
-% The technique used is stolen from LaTeX: let \hash be something
+% The technique used is stolen from LaTeX: let \hash be something
% unexpandable, insert that wherever you need a #, and then redefine
% it to # just before using the token list produced.
%
% The same technique is used to protect \eatspaces till just before
% the macro is used.
-
-\def\parsemargdef#1;{\paramno=0\def\paramlist{}%
- \let\hash\relax\let\xeatspaces\relax\parsemargdefxxx#1,;,}
+%
+% If there are 10 or more arguments, a different technique is used, where the
+% hook remains in the body, and when macro is to be expanded the body is
+% processed again to replace the arguments.
+%
+% In that case, the hook is \the\toks N-1, and we simply set \toks N-1 to the
+% argument N value and then \edef the body (nothing else will expand because of
+% the catcode regime underwhich the body was input).
+%
+% If you compile with TeX (not eTeX), and you have macros with 10 or more
+% arguments, you need that no macro has more than 256 arguments, otherwise an
+% error is produced.
+\def\parsemargdef#1;{%
+ \paramno=0\def\paramlist{}%
+ \let\hash\relax
+ \let\xeatspaces\relax
+ \parsemargdefxxx#1,;,%
+ % In case that there are 10 or more arguments we parse again the arguments
+ % list to set new definitions for the \macarg.BLAH macros corresponding to
+ % each BLAH argument. It was anyhow needed to parse already once this list
+ % in order to count the arguments, and as macros with at most 9 arguments
+ % are by far more frequent than macro with 10 or more arguments, defining
+ % twice the \macarg.BLAH macros does not cost too much processing power.
+ \ifnum\paramno<10\relax\else
+ \paramno0\relax
+ \parsemmanyargdef@@#1,;,% 10 or more arguments
+ \fi
+}
\def\parsemargdefxxx#1,{%
\if#1;\let\next=\relax
\else \let\next=\parsemargdefxxx
- \advance\paramno by 1%
+ \advance\paramno by 1
\expandafter\edef\csname macarg.\eatspaces{#1}\endcsname
{\xeatspaces{\hash\the\paramno}}%
\edef\paramlist{\paramlist\hash\the\paramno,}%
\fi\next}
+\def\parsemmanyargdef@@#1,{%
+ \if#1;\let\next=\relax
+ \else
+ \let\next=\parsemmanyargdef@@
+ \edef\tempb{\eatspaces{#1}}%
+ \expandafter\def\expandafter\tempa
+ \expandafter{\csname macarg.\tempb\endcsname}%
+ % Note that we need some extra \noexpand\noexpand, this is because we
+ % don't want \the to be expanded in the \parsermacbody as it uses an
+ % \xdef .
+ \expandafter\edef\tempa
+ {\noexpand\noexpand\noexpand\the\toks\the\paramno}%
+ \advance\paramno by 1\relax
+ \fi\next}
+
% These two commands read recursive and nonrecursive macro bodies.
% (They're different since rec and nonrec macros end differently.)
+%
+\catcode `\@\texiatcatcode
\long\def\parsemacbody#1@end macro%
{\xdef\temp{\eatcr{#1}}\endgroup\defmacro}%
\long\def\parsermacbody#1@end rmacro%
{\xdef\temp{\eatcr{#1}}\endgroup\defmacro}%
+\catcode `\@=11\relax
+
+\let\endargs@\relax
+\let\nil@\relax
+\def\nilm@{\nil@}%
+\long\def\nillm@{\nil@}%
+
+% This macro is expanded during the Texinfo macro expansion, not during its
+% definition. It gets all the arguments values and assigns them to macros
+% macarg.ARGNAME
+%
+% #1 is the macro name
+% #2 is the list of argument names
+% #3 is the list of argument values
+\def\getargvals@#1#2#3{%
+ \def\macargdeflist@{}%
+ \def\saveparamlist@{#2}% Need to keep a copy for parameter expansion.
+ \def\paramlist{#2,\nil@}%
+ \def\macroname{#1}%
+ \begingroup
+ \macroargctxt
+ \def\argvaluelist{#3,\nil@}%
+ \def\@tempa{#3}%
+ \ifx\@tempa\empty
+ \setemptyargvalues@
+ \else
+ \getargvals@@
+ \fi
+}
+
+%
+\def\getargvals@@{%
+ \ifx\paramlist\nilm@
+ % Some sanity check needed here that \argvaluelist is also empty.
+ \ifx\argvaluelist\nillm@
+ \else
+ \errhelp = \EMsimple
+ \errmessage{Too many arguments in macro `\macroname'!}%
+ \fi
+ \let\next\macargexpandinbody@
+ \else
+ \ifx\argvaluelist\nillm@
+ % No more arguments values passed to macro. Set remaining named-arg
+ % macros to empty.
+ \let\next\setemptyargvalues@
+ \else
+ % pop current arg name into \@tempb
+ \def\@tempa##1{\pop@{\@tempb}{\paramlist}##1\endargs@}%
+ \expandafter\@tempa\expandafter{\paramlist}%
+ % pop current argument value into \@tempc
+ \def\@tempa##1{\longpop@{\@tempc}{\argvaluelist}##1\endargs@}%
+ \expandafter\@tempa\expandafter{\argvaluelist}%
+ % Here \@tempb is the current arg name and \@tempc is the current arg value.
+ % First place the new argument macro definition into \@tempd
+ \expandafter\macname\expandafter{\@tempc}%
+ \expandafter\let\csname macarg.\@tempb\endcsname\relax
+ \expandafter\def\expandafter\@tempe\expandafter{%
+ \csname macarg.\@tempb\endcsname}%
+ \edef\@tempd{\long\def\@tempe{\the\macname}}%
+ \push@\@tempd\macargdeflist@
+ \let\next\getargvals@@
+ \fi
+ \fi
+ \next
+}
+
+\def\push@#1#2{%
+ \expandafter\expandafter\expandafter\def
+ \expandafter\expandafter\expandafter#2%
+ \expandafter\expandafter\expandafter{%
+ \expandafter#1#2}%
+}
+
+% Replace arguments by their values in the macro body, and place the result
+% in macro \@tempa
+\def\macvalstoargs@{%
+ % To do this we use the property that token registers that are \the'ed
+ % within an \edef expand only once. So we are going to place all argument
+ % values into respective token registers.
+ %
+ % First we save the token context, and initialize argument numbering.
+ \begingroup
+ \paramno0\relax
+ % Then, for each argument number #N, we place the corresponding argument
+ % value into a new token list register \toks#N
+ \expandafter\putargsintokens@\saveparamlist@,;,%
+ % Then, we expand the body so that argument are replaced by their
+ % values. The trick for values not to be expanded themselves is that they
+ % are within tokens and that tokens expand only once in an \edef .
+ \edef\@tempc{\csname mac.\macroname .body\endcsname}%
+ % Now we restore the token stack pointer to free the token list registers
+ % which we have used, but we make sure that expanded body is saved after
+ % group.
+ \expandafter
+ \endgroup
+ \expandafter\def\expandafter\@tempa\expandafter{\@tempc}%
+ }
+
+\def\macargexpandinbody@{%
+ %% Define the named-macro outside of this group and then close this group.
+ \expandafter
+ \endgroup
+ \macargdeflist@
+ % First the replace in body the macro arguments by their values, the result
+ % is in \@tempa .
+ \macvalstoargs@
+ % Then we point at the \norecurse or \gobble (for recursive) macro value
+ % with \@tempb .
+ \expandafter\let\expandafter\@tempb\csname mac.\macroname .recurse\endcsname
+ % Depending on whether it is recursive or not, we need some tailing
+ % \egroup .
+ \ifx\@tempb\gobble
+ \let\@tempc\relax
+ \else
+ \let\@tempc\egroup
+ \fi
+ % And now we do the real job:
+ \edef\@tempd{\noexpand\@tempb{\macroname}\noexpand\scanmacro{\@tempa}\@tempc}%
+ \@tempd
+}
+
+\def\putargsintokens@#1,{%
+ \if#1;\let\next\relax
+ \else
+ \let\next\putargsintokens@
+ % First we allocate the new token list register, and give it a temporary
+ % alias \@tempb .
+ \toksdef\@tempb\the\paramno
+ % Then we place the argument value into that token list register.
+ \expandafter\let\expandafter\@tempa\csname macarg.#1\endcsname
+ \expandafter\@tempb\expandafter{\@tempa}%
+ \advance\paramno by 1\relax
+ \fi
+ \next
+}
+
+% Save the token stack pointer into macro #1
+\def\texisavetoksstackpoint#1{\edef#1{\the\@cclvi}}
+% Restore the token stack pointer from number in macro #1
+\def\texirestoretoksstackpoint#1{\expandafter\mathchardef\expandafter\@cclvi#1\relax}
+% newtoks that can be used non \outer .
+\def\texinonouternewtoks{\alloc@ 5\toks \toksdef \@cclvi}
+
+% Tailing missing arguments are set to empty
+\def\setemptyargvalues@{%
+ \ifx\paramlist\nilm@
+ \let\next\macargexpandinbody@
+ \else
+ \expandafter\setemptyargvaluesparser@\paramlist\endargs@
+ \let\next\setemptyargvalues@
+ \fi
+ \next
+}
-% This defines the macro itself. There are six cases: recursive and
-% nonrecursive macros of zero, one, and many arguments.
+\def\setemptyargvaluesparser@#1,#2\endargs@{%
+ \expandafter\def\expandafter\@tempa\expandafter{%
+ \expandafter\def\csname macarg.#1\endcsname{}}%
+ \push@\@tempa\macargdeflist@
+ \def\paramlist{#2}%
+}
+
+% #1 is the element target macro
+% #2 is the list macro
+% #3,#4\endargs@ is the list value
+\def\pop@#1#2#3,#4\endargs@{%
+ \def#1{#3}%
+ \def#2{#4}%
+}
+\long\def\longpop@#1#2#3,#4\endargs@{%
+ \long\def#1{#3}%
+ \long\def#2{#4}%
+}
+
+% This defines a Texinfo @macro. There are eight cases: recursive and
+% nonrecursive macros of zero, one, up to nine, and many arguments.
% Much magic with \expandafter here.
% \xdef is used so that macro definitions will survive the file
% they're defined in; @include reads the file inside a group.
+%
\def\defmacro{%
\let\hash=##% convert placeholders to macro parameter chars
\ifrecursive
@@ -7004,17 +7750,25 @@ end
\expandafter\noexpand\csname\the\macname xxx\endcsname}%
\expandafter\xdef\csname\the\macname xxx\endcsname##1{%
\egroup\noexpand\scanmacro{\temp}}%
- \else % many
- \expandafter\xdef\csname\the\macname\endcsname{%
- \bgroup\noexpand\macroargctxt
- \noexpand\csname\the\macname xx\endcsname}%
- \expandafter\xdef\csname\the\macname xx\endcsname##1{%
- \expandafter\noexpand\csname\the\macname xxx\endcsname ##1,}%
- \expandafter\expandafter
- \expandafter\xdef
- \expandafter\expandafter
- \csname\the\macname xxx\endcsname
- \paramlist{\egroup\noexpand\scanmacro{\temp}}%
+ \else
+ \ifnum\paramno<10\relax % at most 9
+ \expandafter\xdef\csname\the\macname\endcsname{%
+ \bgroup\noexpand\macroargctxt
+ \noexpand\csname\the\macname xx\endcsname}%
+ \expandafter\xdef\csname\the\macname xx\endcsname##1{%
+ \expandafter\noexpand\csname\the\macname xxx\endcsname ##1,}%
+ \expandafter\expandafter
+ \expandafter\xdef
+ \expandafter\expandafter
+ \csname\the\macname xxx\endcsname
+ \paramlist{\egroup\noexpand\scanmacro{\temp}}%
+ \else % 10 or more
+ \expandafter\xdef\csname\the\macname\endcsname{%
+ \noexpand\getargvals@{\the\macname}{\argl}%
+ }%
+ \global\expandafter\let\csname mac.\the\macname .body\endcsname\temp
+ \global\expandafter\let\csname mac.\the\macname .recurse\endcsname\gobble
+ \fi
\fi
\else
\ifcase\paramno
@@ -7031,29 +7785,40 @@ end
\egroup
\noexpand\norecurse{\the\macname}%
\noexpand\scanmacro{\temp}\egroup}%
- \else % many
- \expandafter\xdef\csname\the\macname\endcsname{%
- \bgroup\noexpand\macroargctxt
- \expandafter\noexpand\csname\the\macname xx\endcsname}%
- \expandafter\xdef\csname\the\macname xx\endcsname##1{%
- \expandafter\noexpand\csname\the\macname xxx\endcsname ##1,}%
- \expandafter\expandafter
- \expandafter\xdef
- \expandafter\expandafter
- \csname\the\macname xxx\endcsname
- \paramlist{%
- \egroup
- \noexpand\norecurse{\the\macname}%
- \noexpand\scanmacro{\temp}\egroup}%
+ \else % at most 9
+ \ifnum\paramno<10\relax
+ \expandafter\xdef\csname\the\macname\endcsname{%
+ \bgroup\noexpand\macroargctxt
+ \expandafter\noexpand\csname\the\macname xx\endcsname}%
+ \expandafter\xdef\csname\the\macname xx\endcsname##1{%
+ \expandafter\noexpand\csname\the\macname xxx\endcsname ##1,}%
+ \expandafter\expandafter
+ \expandafter\xdef
+ \expandafter\expandafter
+ \csname\the\macname xxx\endcsname
+ \paramlist{%
+ \egroup
+ \noexpand\norecurse{\the\macname}%
+ \noexpand\scanmacro{\temp}\egroup}%
+ \else % 10 or more:
+ \expandafter\xdef\csname\the\macname\endcsname{%
+ \noexpand\getargvals@{\the\macname}{\argl}%
+ }%
+ \global\expandafter\let\csname mac.\the\macname .body\endcsname\temp
+ \global\expandafter\let\csname mac.\the\macname .recurse\endcsname\norecurse
+ \fi
\fi
\fi}
+\catcode `\@\texiatcatcode\relax
+
\def\norecurse#1{\bgroup\cslet{#1}{macsave.#1}}
% \braceorline decides whether the next nonwhitespace character is a
% {. If so it reads up to the closing }, if not, it reads the whole
% line. Whatever was read is then fed to the next control sequence
-% as an argument (by \parsebrace or \parsearg)
+% as an argument (by \parsebrace or \parsearg).
+%
\def\braceorline#1{\let\macnamexxx=#1\futurelet\nchar\braceorlinexxx}
\def\braceorlinexxx{%
\ifx\nchar\bgroup\else
@@ -7063,7 +7828,8 @@ end
% @alias.
% We need some trickery to remove the optional spaces around the equal
-% sign. Just make them active and then expand them all to nothing.
+% sign. Make them active and then expand them all to nothing.
+%
\def\alias{\parseargusing\obeyspaces\aliasxxx}
\def\aliasxxx #1{\aliasyyy#1\relax}
\def\aliasyyy #1=#2\relax{%
@@ -7084,7 +7850,8 @@ end
% @inforef is relatively simple.
\def\inforef #1{\inforefzzz #1,,,,**}
-\def\inforefzzz #1,#2,#3,#4**{\putwordSee{} \putwordInfo{} \putwordfile{} \file{\ignorespaces #3{}},
+\def\inforefzzz #1,#2,#3,#4**{%
+ \putwordSee{} \putwordInfo{} \putwordfile{} \file{\ignorespaces #3{}},
node \samp{\ignorespaces#1{}}}
% @node's only job in TeX is to define \lastnode, which is used in
@@ -7145,11 +7912,32 @@ end
\toks0 = \expandafter{\lastsection}%
\immediate \writexrdef{title}{\the\toks0 }%
\immediate \writexrdef{snt}{\csname #2\endcsname}% \Ynumbered etc.
- \safewhatsit{\writexrdef{pg}{\folio}}% will be written later, during \shipout
+ \safewhatsit{\writexrdef{pg}{\folio}}% will be written later, at \shipout
}%
\fi
}
+% @xrefautosectiontitle on|off says whether @section(ing) names are used
+% automatically in xrefs, if the third arg is not explicitly specified.
+% This was provided as a "secret" @set xref-automatic-section-title
+% variable, now it's official.
+%
+\parseargdef\xrefautomaticsectiontitle{%
+ \def\temp{#1}%
+ \ifx\temp\onword
+ \expandafter\let\csname SETxref-automatic-section-title\endcsname
+ = \empty
+ \else\ifx\temp\offword
+ \expandafter\let\csname SETxref-automatic-section-title\endcsname
+ = \relax
+ \else
+ \errhelp = \EMsimple
+ \errmessage{Unknown @xrefautomaticsectiontitle value `\temp',
+ must be on|off}%
+ \fi\fi
+}
+
+%
% @xref, @pxref, and @ref generate cross-references. For \xrefX, #1 is
% the node name, #2 the name of the Info cross-reference, #3 the printed
% node name, #4 the name of the Info file, #5 the name of the printed
@@ -7158,26 +7946,41 @@ end
\def\pxref#1{\putwordsee{} \xrefX[#1,,,,,,,]}
\def\xref#1{\putwordSee{} \xrefX[#1,,,,,,,]}
\def\ref#1{\xrefX[#1,,,,,,,]}
+%
+\newbox\toprefbox
+\newbox\printedrefnamebox
+\newbox\infofilenamebox
+\newbox\printedmanualbox
+%
\def\xrefX[#1,#2,#3,#4,#5,#6]{\begingroup
\unsepspaces
- \def\printedmanual{\ignorespaces #5}%
+ %
+ % Get args without leading/trailing spaces.
\def\printedrefname{\ignorespaces #3}%
- \setbox1=\hbox{\printedmanual\unskip}%
- \setbox0=\hbox{\printedrefname\unskip}%
- \ifdim \wd0 = 0pt
+ \setbox\printedrefnamebox = \hbox{\printedrefname\unskip}%
+ %
+ \def\infofilename{\ignorespaces #4}%
+ \setbox\infofilenamebox = \hbox{\infofilename\unskip}%
+ %
+ \def\printedmanual{\ignorespaces #5}%
+ \setbox\printedmanualbox = \hbox{\printedmanual\unskip}%
+ %
+ % If the printed reference name (arg #3) was not explicitly given in
+ % the @xref, figure out what we want to use.
+ \ifdim \wd\printedrefnamebox = 0pt
% No printed node name was explicitly given.
- \expandafter\ifx\csname SETxref-automatic-section-title\endcsname\relax
- % Use the node name inside the square brackets.
+ \expandafter\ifx\csname SETxref-automatic-section-title\endcsname \relax
+ % Not auto section-title: use node name inside the square brackets.
\def\printedrefname{\ignorespaces #1}%
\else
- % Use the actual chapter/section title appear inside
- % the square brackets. Use the real section title if we have it.
- \ifdim \wd1 > 0pt
- % It is in another manual, so we don't have it.
+ % Auto section-title: use chapter/section title inside
+ % the square brackets if we have it.
+ \ifdim \wd\printedmanualbox > 0pt
+ % It is in another manual, so we don't have it; use node name.
\def\printedrefname{\ignorespaces #1}%
\else
\ifhavexrefs
- % We know the real title if we have the xref values.
+ % We (should) know the real title if we have the xref values.
\def\printedrefname{\refx{#1-title}{}}%
\else
% Otherwise just copy the Info node name.
@@ -7191,13 +7994,20 @@ end
\ifpdf
{\indexnofonts
\turnoffactive
+ \makevalueexpandable
% This expands tokens, so do it after making catcode changes, so _
- % etc. don't get their TeX definitions.
+ % etc. don't get their TeX definitions. This ignores all spaces in
+ % #4, including (wrongly) those in the middle of the filename.
\getfilename{#4}%
%
- % See comments at \activebackslashdouble.
- {\activebackslashdouble \xdef\pdfxrefdest{#1}%
- \backslashparens\pdfxrefdest}%
+ % This (wrongly) does not take account of leading or trailing
+ % spaces in #1, which should be ignored.
+ \edef\pdfxrefdest{#1}%
+ \ifx\pdfxrefdest\empty
+ \def\pdfxrefdest{Top}% no empty targets
+ \else
+ \txiescapepdf\pdfxrefdest % escape PDF special chars
+ \fi
%
\leavevmode
\startlink attr{/Border [0 0 0]}%
@@ -7224,29 +8034,42 @@ end
\iffloat\Xthisreftitle
% If the user specified the print name (third arg) to the ref,
% print it instead of our usual "Figure 1.2".
- \ifdim\wd0 = 0pt
+ \ifdim\wd\printedrefnamebox = 0pt
\refx{#1-snt}{}%
\else
\printedrefname
\fi
%
- % if the user also gave the printed manual name (fifth arg), append
+ % If the user also gave the printed manual name (fifth arg), append
% "in MANUALNAME".
- \ifdim \wd1 > 0pt
+ \ifdim \wd\printedmanualbox > 0pt
\space \putwordin{} \cite{\printedmanual}%
\fi
\else
% node/anchor (non-float) references.
+ %
+ % If we use \unhbox to print the node names, TeX does not insert
+ % empty discretionaries after hyphens, which means that it will not
+ % find a line break at a hyphen in a node names. Since some manuals
+ % are best written with fairly long node names, containing hyphens,
+ % this is a loss. Therefore, we give the text of the node name
+ % again, so it is as if TeX is seeing it for the first time.
+ %
+ \ifdim \wd\printedmanualbox > 0pt
+ % Cross-manual reference with a printed manual name.
+ %
+ \crossmanualxref{\cite{\printedmanual\unskip}}%
+ %
+ \else\ifdim \wd\infofilenamebox > 0pt
+ % Cross-manual reference with only an info filename (arg 4), no
+ % printed manual name (arg 5). This is essentially the same as
+ % the case above; we output the filename, since we have nothing else.
+ %
+ \crossmanualxref{\code{\infofilename\unskip}}%
%
- % If we use \unhbox0 and \unhbox1 to print the node names, TeX does not
- % insert empty discretionaries after hyphens, which means that it will
- % not find a line break at a hyphen in a node names. Since some manuals
- % are best written with fairly long node names, containing hyphens, this
- % is a loss. Therefore, we give the text of the node name again, so it
- % is as if TeX is seeing it for the first time.
- \ifdim \wd1 > 0pt
- \putwordSection{} ``\printedrefname'' \putwordin{} \cite{\printedmanual}%
\else
+ % Reference within this manual.
+ %
% _ (for example) has to be the character _ for the purposes of the
% control sequence corresponding to the node, but it has to expand
% into the usual \leavevmode...\vrule stuff for purposes of
@@ -7258,7 +8081,7 @@ end
\setbox2 = \hbox{\ignorespaces \refx{#1-snt}{}}%
\ifdim \wd2 > 0pt \refx{#1-snt}\space\fi
}%
- % output the `[mynode]' via a macro so it can be overridden.
+ % output the `[mynode]' via the macro below so it can be overridden.
\xrefprintnodename\printedrefname
%
% But we always want a comma and a space:
@@ -7266,11 +8089,37 @@ end
%
% output the `page 3'.
\turnoffactive \putwordpage\tie\refx{#1-pg}{}%
- \fi
+ \fi\fi
\fi
\endlink
\endgroup}
+% Output a cross-manual xref to #1. Used just above (twice).
+%
+% Only include the text "Section ``foo'' in" if the foo is neither
+% missing or Top. Thus, @xref{,,,foo,The Foo Manual} outputs simply
+% "see The Foo Manual", the idea being to refer to the whole manual.
+%
+% But, this being TeX, we can't easily compare our node name against the
+% string "Top" while ignoring the possible spaces before and after in
+% the input. By adding the arbitrary 7sp below, we make it much less
+% likely that a real node name would have the same width as "Top" (e.g.,
+% in a monospaced font). Hopefully it will never happen in practice.
+%
+% For the same basic reason, we retypeset the "Top" at every
+% reference, since the current font is indeterminate.
+%
+\def\crossmanualxref#1{%
+ \setbox\toprefbox = \hbox{Top\kern7sp}%
+ \setbox2 = \hbox{\ignorespaces \printedrefname \unskip \kern7sp}%
+ \ifdim \wd2 > 7sp % nonempty?
+ \ifdim \wd2 = \wd\toprefbox \else % same as Top?
+ \putwordSection{} ``\printedrefname'' \putwordin{}\space
+ \fi
+ \fi
+ #1%
+}
+
% This macro is called from \xrefX for the `[nodename]' part of xref
% output. It's a separate macro only so it can be changed more easily,
% since square brackets don't work well in some documents. Particularly
@@ -7321,7 +8170,8 @@ end
\angleleft un\-de\-fined\angleright
\iflinks
\ifhavexrefs
- \message{\linenumber Undefined cross reference `#1'.}%
+ {\toks0 = {#1}% avoid expansion of possibly-complex value
+ \message{\linenumber Undefined cross reference `\the\toks0'.}}%
\else
\ifwarnedxrefs\else
\global\warnedxrefstrue
@@ -7485,7 +8335,7 @@ end
% space to prevent strange expansion errors.)
\def\supereject{\par\penalty -20000\footnoteno =0 }
-% @footnotestyle is meaningful for info output only.
+% @footnotestyle is meaningful for Info output only.
\let\footnotestyle=\comment
{\catcode `\@=11
@@ -7548,6 +8398,8 @@ end
% expands into a box, it must come within the paragraph, lest it
% provide a place where TeX can split the footnote.
\footstrut
+ %
+ % Invoke rest of plain TeX footnote routine.
\futurelet\next\fo@t
}
}%end \catcode `\@=11
@@ -7635,7 +8487,7 @@ end
it from ftp://tug.org/tex/epsf.tex.}
%
\def\image#1{%
- \ifx\epsfbox\undefined
+ \ifx\epsfbox\thisisundefined
\ifwarnednoepsf \else
\errhelp = \noepsfhelp
\errmessage{epsf.tex not found, images will be ignored}%
@@ -7651,7 +8503,7 @@ end
% #2 is (optional) width, #3 is (optional) height.
% #4 is (ignored optional) html alt text.
% #5 is (ignored optional) extension.
-% #6 is just the usual extra ignored arg for parsing this stuff.
+% #6 is just the usual extra ignored arg for parsing stuff.
\newif\ifimagevmode
\def\imagexxx#1,#2,#3,#4,#5,#6\finish{\begingroup
\catcode`\^^M = 5 % in case we're inside an example
@@ -7659,6 +8511,13 @@ end
% If the image is by itself, center it.
\ifvmode
\imagevmodetrue
+ \else \ifx\centersub\centerV
+ % for @center @image, we need a vbox so we can have our vertical space
+ \imagevmodetrue
+ \vbox\bgroup % vbox has better behavior than vtop herev
+ \fi\fi
+ %
+ \ifimagevmode
\nobreak\medskip
% Usually we'll have text after the image which will insert
% \parskip glue, so insert it here too to equalize the space
@@ -7668,9 +8527,13 @@ end
\fi
%
% Leave vertical mode so that indentation from an enclosing
- % environment such as @quotation is respected. On the other hand, if
- % it's at the top level, we don't want the normal paragraph indentation.
- \noindent
+ % environment such as @quotation is respected.
+ % However, if we're at the top level, we don't want the
+ % normal paragraph indentation.
+ % On the other hand, if we are in the case of @center @image, we don't
+ % want to start a paragraph, which will create a hsize-width box and
+ % eradicate the centering.
+ \ifx\centersub\centerV\else \noindent \fi
%
% Output the image.
\ifpdf
@@ -7682,7 +8545,10 @@ end
\epsfbox{#1.eps}%
\fi
%
- \ifimagevmode \medskip \fi % space after the standalone image
+ \ifimagevmode
+ \medskip % space after a standalone image
+ \fi
+ \ifx\centersub\centerV \egroup \fi
\endgroup}
@@ -7975,21 +8841,22 @@ end
\closein 1
\endgroup % end raw TeX
\endgroup}
-}
%
% If they passed de_DE, and txi-de_DE.tex doesn't exist,
% try txi-de.tex.
-%
-\def\documentlanguagetrywithoutunderscore#1_#2\finish{%
+%
+\gdef\documentlanguagetrywithoutunderscore#1_#2\finish{%
\openin 1 txi-#1.tex
\ifeof 1
\errhelp = \nolanghelp
\errmessage{Cannot read language file txi-#1.tex}%
\else
+ \globaldefs = 1 % everything in the txi-LL files needs to persist
\input txi-#1.tex
\fi
\closein 1
}
+}% end of special _ catcode
%
\newhelp\nolanghelp{The given language definition file cannot be found or
is empty. Maybe you need to install it? Putting it in the current
@@ -7998,16 +8865,16 @@ directory should work if nowhere else does.}
% This macro is called from txi-??.tex files; the first argument is the
% \language name to set (without the "\lang@" prefix), the second and
% third args are \{left,right}hyphenmin.
-%
+%
% The language names to pass are determined when the format is built.
% See the etex.log file created at that time, e.g.,
% /usr/local/texlive/2008/texmf-var/web2c/pdftex/etex.log.
-%
+%
% With TeX Live 2008, etex now includes hyphenation patterns for all
% available languages. This means we can support hyphenation in
% Texinfo, at least to some extent. (This still doesn't solve the
% accented characters problem.)
-%
+%
\catcode`@=11
\def\txisetlanguage#1#2#3{%
% do not set the language if the name is undefined in the current TeX.
@@ -8062,7 +8929,7 @@ directory should work if nowhere else does.}
\setnonasciicharscatcode\active
\lattwochardefs
%
- \else \ifx \declaredencoding \latone
+ \else \ifx \declaredencoding \latone
\setnonasciicharscatcode\active
\latonechardefs
%
@@ -8074,7 +8941,7 @@ directory should work if nowhere else does.}
\setnonasciicharscatcode\active
\utfeightchardefs
%
- \else
+ \else
\message{Unknown document encoding #1, ignoring.}%
%
\fi % utfeight
@@ -8086,7 +8953,7 @@ directory should work if nowhere else does.}
% A message to be logged when using a character that isn't available
% the default font encoding (OT1).
-%
+%
\def\missingcharmsg#1{\message{Character missing in OT1 encoding: #1.}}
% Take account of \c (plain) vs. \, (Texinfo) difference.
@@ -8099,21 +8966,21 @@ directory should work if nowhere else does.}
%
% Latin1 (ISO-8859-1) character definitions.
\def\latonechardefs{%
- \gdef^^a0{~}
+ \gdef^^a0{\tie}
\gdef^^a1{\exclamdown}
- \gdef^^a2{\missingcharmsg{CENT SIGN}}
+ \gdef^^a2{\missingcharmsg{CENT SIGN}}
\gdef^^a3{{\pounds}}
\gdef^^a4{\missingcharmsg{CURRENCY SIGN}}
\gdef^^a5{\missingcharmsg{YEN SIGN}}
- \gdef^^a6{\missingcharmsg{BROKEN BAR}}
+ \gdef^^a6{\missingcharmsg{BROKEN BAR}}
\gdef^^a7{\S}
- \gdef^^a8{\"{}}
- \gdef^^a9{\copyright}
+ \gdef^^a8{\"{}}
+ \gdef^^a9{\copyright}
\gdef^^aa{\ordf}
\gdef^^ab{\guillemetleft}
\gdef^^ac{$\lnot$}
- \gdef^^ad{\-}
- \gdef^^ae{\registeredsymbol}
+ \gdef^^ad{\-}
+ \gdef^^ae{\registeredsymbol}
\gdef^^af{\={}}
%
\gdef^^b0{\textdegree}
@@ -8129,7 +8996,7 @@ directory should work if nowhere else does.}
\gdef^^b9{$^1$}
\gdef^^ba{\ordm}
%
- \gdef^^bb{\guilletright}
+ \gdef^^bb{\guillemetright}
\gdef^^bc{$1\over4$}
\gdef^^bd{$1\over2$}
\gdef^^be{$3\over4$}
@@ -8140,7 +9007,7 @@ directory should work if nowhere else does.}
\gdef^^c2{\^A}
\gdef^^c3{\~A}
\gdef^^c4{\"A}
- \gdef^^c5{\ringaccent A}
+ \gdef^^c5{\ringaccent A}
\gdef^^c6{\AE}
\gdef^^c7{\cedilla C}
\gdef^^c8{\`E}
@@ -8152,7 +9019,7 @@ directory should work if nowhere else does.}
\gdef^^ce{\^I}
\gdef^^cf{\"I}
%
- \gdef^^d0{\missingcharmsg{LATIN CAPITAL LETTER ETH}}
+ \gdef^^d0{\DH}
\gdef^^d1{\~N}
\gdef^^d2{\`O}
\gdef^^d3{\'O}
@@ -8166,7 +9033,7 @@ directory should work if nowhere else does.}
\gdef^^db{\^U}
\gdef^^dc{\"U}
\gdef^^dd{\'Y}
- \gdef^^de{\missingcharmsg{LATIN CAPITAL LETTER THORN}}
+ \gdef^^de{\TH}
\gdef^^df{\ss}
%
\gdef^^e0{\`a}
@@ -8186,7 +9053,7 @@ directory should work if nowhere else does.}
\gdef^^ee{\^{\dotless i}}
\gdef^^ef{\"{\dotless i}}
%
- \gdef^^f0{\missingcharmsg{LATIN SMALL LETTER ETH}}
+ \gdef^^f0{\dh}
\gdef^^f1{\~n}
\gdef^^f2{\`o}
\gdef^^f3{\'o}
@@ -8200,7 +9067,7 @@ directory should work if nowhere else does.}
\gdef^^fb{\^u}
\gdef^^fc{\"u}
\gdef^^fd{\'y}
- \gdef^^fe{\missingcharmsg{LATIN SMALL LETTER THORN}}
+ \gdef^^fe{\th}
\gdef^^ff{\"y}
}
@@ -8221,7 +9088,7 @@ directory should work if nowhere else does.}
% Latin2 (ISO-8859-2) character definitions.
\def\lattwochardefs{%
- \gdef^^a0{~}
+ \gdef^^a0{\tie}
\gdef^^a1{\ogonek{A}}
\gdef^^a2{\u{}}
\gdef^^a3{\L}
@@ -8272,7 +9139,7 @@ directory should work if nowhere else does.}
\gdef^^ce{\^I}
\gdef^^cf{\v D}
%
- \gdef^^d0{\missingcharmsg{LATIN CAPITAL LETTER D WITH STROKE}}
+ \gdef^^d0{\DH}
\gdef^^d1{\'N}
\gdef^^d2{\v N}
\gdef^^d3{\'O}
@@ -8281,7 +9148,7 @@ directory should work if nowhere else does.}
\gdef^^d6{\"O}
\gdef^^d7{$\times$}
\gdef^^d8{\v R}
- \gdef^^d9{\ringaccent U}
+ \gdef^^d9{\ringaccent U}
\gdef^^da{\'U}
\gdef^^db{\H U}
\gdef^^dc{\"U}
@@ -8302,11 +9169,11 @@ directory should work if nowhere else does.}
\gdef^^ea{\ogonek{e}}
\gdef^^eb{\"e}
\gdef^^ec{\v e}
- \gdef^^ed{\'\i}
- \gdef^^ee{\^\i}
+ \gdef^^ed{\'{\dotless{i}}}
+ \gdef^^ee{\^{\dotless{i}}}
\gdef^^ef{\v d}
%
- \gdef^^f0{\missingcharmsg{LATIN SMALL LETTER D WITH STROKE}}
+ \gdef^^f0{\dh}
\gdef^^f1{\'n}
\gdef^^f2{\v n}
\gdef^^f3{\'o}
@@ -8325,11 +9192,11 @@ directory should work if nowhere else does.}
}
% UTF-8 character definitions.
-%
+%
% This code to support UTF-8 is based on LaTeX's utf8.def, with some
% changes for Texinfo conventions. It is included here under the GPL by
% permission from Frank Mittelbach and the LaTeX team.
-%
+%
\newcount\countUTFx
\newcount\countUTFy
\newcount\countUTFz
@@ -8394,7 +9261,7 @@ directory should work if nowhere else does.}
\gdef\DeclareUnicodeCharacter#1#2{%
\countUTFz = "#1\relax
- \wlog{\space\space defining Unicode char U+#1 (decimal \the\countUTFz)}%
+ %\wlog{\space\space defining Unicode char U+#1 (decimal \the\countUTFz)}%
\begingroup
\parseXMLCharref
\def\UTFviiiTwoOctets##1##2{%
@@ -8479,6 +9346,7 @@ directory should work if nowhere else does.}
\DeclareUnicodeCharacter{00CE}{\^I}
\DeclareUnicodeCharacter{00CF}{\"I}
+ \DeclareUnicodeCharacter{00D0}{\DH}
\DeclareUnicodeCharacter{00D1}{\~N}
\DeclareUnicodeCharacter{00D2}{\`O}
\DeclareUnicodeCharacter{00D3}{\'O}
@@ -8491,6 +9359,7 @@ directory should work if nowhere else does.}
\DeclareUnicodeCharacter{00DB}{\^U}
\DeclareUnicodeCharacter{00DC}{\"U}
\DeclareUnicodeCharacter{00DD}{\'Y}
+ \DeclareUnicodeCharacter{00DE}{\TH}
\DeclareUnicodeCharacter{00DF}{\ss}
\DeclareUnicodeCharacter{00E0}{\`a}
@@ -8510,6 +9379,7 @@ directory should work if nowhere else does.}
\DeclareUnicodeCharacter{00EE}{\^{\dotless{i}}}
\DeclareUnicodeCharacter{00EF}{\"{\dotless{i}}}
+ \DeclareUnicodeCharacter{00F0}{\dh}
\DeclareUnicodeCharacter{00F1}{\~n}
\DeclareUnicodeCharacter{00F2}{\`o}
\DeclareUnicodeCharacter{00F3}{\'o}
@@ -8522,6 +9392,7 @@ directory should work if nowhere else does.}
\DeclareUnicodeCharacter{00FB}{\^u}
\DeclareUnicodeCharacter{00FC}{\"u}
\DeclareUnicodeCharacter{00FD}{\'y}
+ \DeclareUnicodeCharacter{00FE}{\th}
\DeclareUnicodeCharacter{00FF}{\"y}
\DeclareUnicodeCharacter{0100}{\=A}
@@ -8858,8 +9729,8 @@ directory should work if nowhere else does.}
% Prevent underfull vbox error messages.
\vbadness = 10000
-% Don't be so finicky about underfull hboxes, either.
-\hbadness = 2000
+% Don't be very finicky about underfull hboxes, either.
+\hbadness = 6666
% Following George Bush, get rid of widows and orphans.
\widowpenalty=10000
@@ -9066,28 +9937,21 @@ directory should work if nowhere else does.}
\message{and turning on texinfo input format.}
+\def^^L{\par} % remove \outer, so ^L can appear in an @comment
+
% DEL is a comment character, in case @c does not suffice.
\catcode`\^^? = 14
% Define macros to output various characters with catcode for normal text.
-\catcode`\"=\other
-\catcode`\~=\other
-\catcode`\^=\other
-\catcode`\_=\other
-\catcode`\|=\other
-\catcode`\<=\other
-\catcode`\>=\other
-\catcode`\+=\other
-\catcode`\$=\other
-\def\normaldoublequote{"}
-\def\normaltilde{~}
-\def\normalcaret{^}
-\def\normalunderscore{_}
-\def\normalverticalbar{|}
-\def\normalless{<}
-\def\normalgreater{>}
-\def\normalplus{+}
-\def\normaldollar{$}%$ font-lock fix
+\catcode`\"=\other \def\normaldoublequote{"}
+\catcode`\$=\other \def\normaldollar{$}%$ font-lock fix
+\catcode`\+=\other \def\normalplus{+}
+\catcode`\<=\other \def\normalless{<}
+\catcode`\>=\other \def\normalgreater{>}
+\catcode`\^=\other \def\normalcaret{^}
+\catcode`\_=\other \def\normalunderscore{_}
+\catcode`\|=\other \def\normalverticalbar{|}
+\catcode`\~=\other \def\normaltilde{~}
% This macro is used to make a character print one way in \tt
% (where it can probably be output as-is), and another way in other fonts,
@@ -9114,11 +9978,9 @@ directory should work if nowhere else does.}
\catcode`\"=\active
\def\activedoublequote{{\tt\char34}}
\let"=\activedoublequote
-\catcode`\~=\active
-\def~{{\tt\char126}}
+\catcode`\~=\active \def\activetilde{{\tt\char126}} \let~ = \activetilde
\chardef\hat=`\^
-\catcode`\^=\active
-\def^{{\tt \hat}}
+\catcode`\^=\active \def\activehat{{\tt \hat}} \let^ = \activehat
\catcode`\_=\active
\def_{\ifusingtt\normalunderscore\_}
@@ -9128,16 +9990,26 @@ directory should work if nowhere else does.}
\catcode`\|=\active
\def|{{\tt\char124}}
+
\chardef \less=`\<
-\catcode`\<=\active
-\def<{{\tt \less}}
+\catcode`\<=\active \def\activeless{{\tt \less}}\let< = \activeless
\chardef \gtr=`\>
-\catcode`\>=\active
-\def>{{\tt \gtr}}
-\catcode`\+=\active
-\def+{{\tt \char 43}}
-\catcode`\$=\active
-\def${\ifusingit{{\sl\$}}\normaldollar}%$ font-lock fix
+\catcode`\>=\active \def\activegtr{{\tt \gtr}}\let> = \activegtr
+\catcode`\+=\active \def+{{\tt \char 43}}
+\catcode`\$=\active \def${\ifusingit{{\sl\$}}\normaldollar}%$ font-lock fix
+
+% used for headline/footline in the output routine, in case the page
+% breaks in the middle of an @tex block.
+\def\texinfochars{%
+ \let< = \activeless
+ \let> = \activegtr
+ \let~ = \activetilde
+ \let^ = \activehat
+ \markupsetuplqdefault \markupsetuprqdefault
+ \let\b = \strong
+ \let\i = \smartitalic
+ % in principle, all other definitions in \tex have to be undone too.
+}
% If a .fmt file is being used, characters that might appear in a file
% name cannot be active until we have parsed the command line.
@@ -9165,34 +10037,48 @@ directory should work if nowhere else does.}
% In texinfo, backslash is an active character; it prints the backslash
% in fixed width font.
-\catcode`\\=\active
-@def@normalbackslash{{@tt@backslashcurfont}}
+\catcode`\\=\active % @ for escape char from now on.
+
+% The story here is that in math mode, the \char of \backslashcurfont
+% ends up printing the roman \ from the math symbol font (because \char
+% in math mode uses the \mathcode, and plain.tex sets
+% \mathcode`\\="026E). It seems better for @backslashchar{} to always
+% print a typewriter backslash, hence we use an explicit \mathchar,
+% which is the decimal equivalent of "715c (class 7, e.g., use \fam;
+% ignored family value; char position "5C). We can't use " for the
+% usual hex value because it has already been made active.
+@def@normalbackslash{{@tt @ifmmode @mathchar29020 @else @backslashcurfont @fi}}
+@let@backslashchar = @normalbackslash % @backslashchar{} is for user documents.
+
% On startup, @fixbackslash assigns:
% @let \ = @normalbackslash
-
% \rawbackslash defines an active \ to do \backslashcurfont.
% \otherbackslash defines an active \ to be a literal `\' character with
-% catcode other.
+% catcode other. We switch back and forth between these.
@gdef@rawbackslash{@let\=@backslashcurfont}
@gdef@otherbackslash{@let\=@realbackslash}
% Same as @turnoffactive except outputs \ as {\tt\char`\\} instead of
-% the literal character `\'.
-%
-@def@normalturnoffactive{%
- @let\=@normalbackslash
- @let"=@normaldoublequote
- @let~=@normaltilde
- @let^=@normalcaret
- @let_=@normalunderscore
- @let|=@normalverticalbar
- @let<=@normalless
- @let>=@normalgreater
- @let+=@normalplus
- @let$=@normaldollar %$ font-lock fix
- @markupsetuplqdefault
- @markupsetuprqdefault
- @unsepspaces
+% the literal character `\'. Also revert - to its normal character, in
+% case the active - from code has slipped in.
+%
+{@catcode`- = @active
+ @gdef@normalturnoffactive{%
+ @let-=@normaldash
+ @let"=@normaldoublequote
+ @let$=@normaldollar %$ font-lock fix
+ @let+=@normalplus
+ @let<=@normalless
+ @let>=@normalgreater
+ @let\=@normalbackslash
+ @let^=@normalcaret
+ @let_=@normalunderscore
+ @let|=@normalverticalbar
+ @let~=@normaltilde
+ @markupsetuplqdefault
+ @markupsetuprqdefault
+ @unsepspaces
+ }
}
% Make _ and + \other characters, temporarily.
@@ -9221,10 +10107,19 @@ directory should work if nowhere else does.}
% Say @foo, not \foo, in error messages.
@escapechar = `@@
+% These (along with & and #) are made active for url-breaking, so need
+% active definitions as the normal characters.
+@def@normaldot{.}
+@def@normalquest{?}
+@def@normalslash{/}
+
% These look ok in all fonts, so just make them not special.
-@catcode`@& = @other
-@catcode`@# = @other
-@catcode`@% = @other
+% @hashchar{} gets its own user-level command, because of #line.
+@catcode`@& = @other @def@normalamp{&}
+@catcode`@# = @other @def@normalhash{#}
+@catcode`@% = @other @def@normalpercent{%}
+
+@let @hashchar = @normalhash
@c Finally, make ` and ' active, so that txicodequoteundirected and
@c txicodequotebacktick work right in, e.g., @w{@code{`foo'}}. If we
@@ -9234,7 +10129,7 @@ directory should work if nowhere else does.}
@catcode`@`=@active
@markupsetuplqdefault
@markupsetuprqdefault
-
+
@c Local variables:
@c eval: (add-hook 'write-file-hooks 'time-stamp)
@c page-delimiter: "^\\\\message"
diff --git a/doc/version.texi b/doc/version.texi
index 3ee1c10..70b6658 100644
--- a/doc/version.texi
+++ b/doc/version.texi
@@ -1,10 +1,10 @@
@ignore
-Copyright (C) 1988-2011 Free Software Foundation, Inc.
+Copyright (C) 1988-2014 Free Software Foundation, Inc.
@end ignore
-@set EDITION 6.2
-@set VERSION 6.2
-@set UPDATED September 6 2010
-@set UPDATED-MONTH September 2010
+@set EDITION 6.3
+@set VERSION 6.3
+@set UPDATED 6 January 2014
+@set UPDATED-MONTH January 2014
-@set LASTCHANGE Mon Sep 6 22:07:10 EDT 2010
+@set LASTCHANGE Mon Jan 6 16:26:51 EST 2014
diff --git a/examples/Makefile.in b/examples/Makefile.in
index 617c796..04399ce 100644
--- a/examples/Makefile.in
+++ b/examples/Makefile.in
@@ -29,7 +29,7 @@ datarootdir = @datarootdir@
bindir = @bindir@
srcdir = @srcdir@
datadir = @datadir@
-VPATH = .:@srcdir@
+VPATH = @srcdir@
top_srcdir = @top_srcdir@
#BUILD_DIR = .
BUILD_DIR = @BUILD_DIR@
@@ -68,11 +68,19 @@ TERMCAP_LIB = @TERMCAP_LIB@
$(CC) $(CCFLAGS) -c $<
SOURCES = excallback.c fileman.c histexamp.c manexamp.c rl-fgets.c rl.c \
- rlcat.c rlevent.c rlptytest.c rltest.c rlversion.c
+ rlcat.c rlevent.c rlptytest.c rltest.c rlversion.c \
+ rl-callbacktest.c hist_erasedups.c hist_purgecmd.c
EXECUTABLES = fileman$(EXEEXT) rltest$(EXEEXT) rl$(EXEEXT) rlcat$(EXEEXT) \
- rlevent$(EXEEXT) rlversion$(EXEEXT) histexamp$(EXEEXT)
-OBJECTS = fileman.o rltest.o rl.o rlevent.o rlcat.o rlversion.o histexamp.o
+ rlevent$(EXEEXT) rlversion$(EXEEXT) histexamp$(EXEEXT) \
+ rl-callbacktest$(EXEEXT) \
+ hist_erasedups$(EXEEXT) hist_purgecmd$(EXEEXT)
+
+OBJECTS = fileman.o rltest.o rl.o rlevent.o rlcat.o rlversion.o histexamp.o \
+ rl-callbacktest.o hist_erasedups.o hist_purgecmd.o
+
+OTHEREXE = rlptytest$(EXEEXT)
+OTHEROBJ = rlptytest.o
all: $(EXECUTABLES)
everything: all
@@ -110,6 +118,9 @@ fileman$(EXEEXT): fileman.o $(READLINE_LIB)
rltest$(EXEEXT): rltest.o $(READLINE_LIB)
$(PURIFY) $(CC) $(LDFLAGS) -o $@ rltest.o $(READLINE_LIB) $(TERMCAP_LIB)
+rl-callbacktest$(EXEEXT): rl-callbacktest.o $(READLINE_LIB)
+ $(PURIFY) $(CC) $(LDFLAGS) -o $@ rl-callbacktest.o $(READLINE_LIB) $(TERMCAP_LIB)
+
rlptytest$(EXEEXT): rlptytest.o $(READLINE_LIB)
$(PURIFY) $(CC) $(LDFLAGS) -o $@ rlptytest.o $(READLINE_LIB) $(TERMCAP_LIB)
@@ -119,9 +130,15 @@ rlversion$(EXEEXT): rlversion.o $(READLINE_LIB)
histexamp$(EXEEXT): histexamp.o $(HISTORY_LIB)
$(PURIFY) $(CC) $(LDFLAGS) -o $@ histexamp.o -lhistory $(TERMCAP_LIB)
+hist_erasedups$(EXEEXT): hist_erasedups.o $(HISTORY_LIB)
+ $(PURIFY) $(CC) $(LDFLAGS) -o $@ hist_erasedups.o -lhistory $(TERMCAP_LIB)
+
+hist_purgecmd$(EXEEXT): hist_purgecmd.o $(HISTORY_LIB)
+ $(PURIFY) $(CC) $(LDFLAGS) -o $@ hist_purgecmd.o -lhistory $(TERMCAP_LIB)
+
clean mostlyclean:
- $(RM) $(OBJECTS)
- $(RM) $(EXECUTABLES) *.exe
+ $(RM) $(OBJECTS) $(OTHEROBJ)
+ $(RM) $(EXECUTABLES) $(OTHEREXE) *.exe
distclean maintainer-clean: clean
$(RM) Makefile
@@ -131,13 +148,19 @@ rltest.o: rltest.c
rl.o: rl.c
rlversion.o: rlversion.c
histexamp.o: histexamp.c
+hist_erasedups.o: hist_erasedups.c
+hist_purgecmd.o: hist_purgecmd.c
rlcat.o: rlcat.c
rlptytest.o: rlptytest.c
+rl-callbacktest.o: rl-callbacktest.c
fileman.o: $(top_srcdir)/readline.h
rltest.o: $(top_srcdir)/readline.h
rl.o: $(top_srcdir)/readline.h
rlversion.o: $(top_srcdir)/readline.h
histexamp.o: $(top_srcdir)/history.h
+hist_erasedups.o: $(top_srcdir)/history.h
+hist_purgecmd.o: $(top_srcdir)/history.h
rlcat.o: $(top_srcdir)/readline.h $(top_srcdir)/history.h
rlptytest.o: $(top_srcdir)/readline.h $(top_srcdir)/history.h
+rl-callbacktest.o: $(top_srcdir)/readline.h $(top_srcdir)/history.h
diff --git a/examples/excallback.c b/examples/excallback.c
index 385492b..4206acf 100644
--- a/examples/excallback.c
+++ b/examples/excallback.c
@@ -40,13 +40,14 @@ Copyright (C) 1999 Jeff Solomon
#include <config.h>
#endif
-#include <stdio.h>
#include <sys/types.h>
#ifdef HAVE_UNISTD_H
#include <unistd.h>
#endif
+#include <stdlib.h>
+#include <stdio.h>
#include <termios.h> /* xxx - should make this more general */
#ifdef READLINE_LIBRARY
@@ -55,6 +56,10 @@ Copyright (C) 1999 Jeff Solomon
# include <readline/readline.h>
#endif
+#ifndef STDIN_FILENO
+# define STDIN_FILENO 0
+#endif
+
/* This little examples demonstrates the alternate interface to using readline.
* In the alternate interface, the user maintains control over program flow and
* only calls readline when STDIN is readable. Using the alternate interface,
diff --git a/examples/hist_erasedups.c b/examples/hist_erasedups.c
new file mode 100644
index 0000000..02d617e
--- /dev/null
+++ b/examples/hist_erasedups.c
@@ -0,0 +1,121 @@
+/* hist_erasedups -- remove all duplicate entries from history file */
+
+/* Copyright (C) 2011 Free Software Foundation, Inc.
+
+ This file is part of the GNU Readline Library (Readline), a library for
+ reading lines of text with interactive input and history editing.
+
+ Readline is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ Readline is distributed in the hope that 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 Readline. If not, see <http://www.gnu.org/licenses/>.
+*/
+#ifndef READLINE_LIBRARY
+#define READLINE_LIBRARY 1
+#endif
+
+#include <unistd.h>
+#include <stdlib.h>
+#include <stdio.h>
+
+#ifdef READLINE_LIBRARY
+# include "history.h"
+#else
+# include <readline/history.h>
+#endif
+
+#include <string.h>
+
+#define STREQ(a, b) ((a)[0] == (b)[0] && strcmp(a, b) == 0)
+#define STREQN(a, b, n) ((n == 0) ? (1) \
+ : ((a)[0] == (b)[0] && strncmp(a, b, n) == 0))
+
+extern int history_offset;
+
+static void
+usage()
+{
+ fprintf (stderr, "hist_erasedups: usage: hist_erasedups [-t] [filename]\n");
+ exit (2);
+}
+
+int
+main (argc, argv)
+ int argc;
+ char **argv;
+{
+ char *fn;
+ int r;
+
+ while ((r = getopt (argc, argv, "t")) != -1)
+ {
+ switch (r)
+ {
+ case 't':
+ history_write_timestamps = 1;
+ break;
+ default:
+ usage ();
+ }
+ }
+ argv += optind;
+ argc -= optind;
+
+ fn = argc ? argv[0] : getenv ("HISTFILE");
+ if (fn == 0)
+ {
+ fprintf (stderr, "hist_erasedups: no history file\n");
+ usage ();
+ }
+
+ if ((r = read_history (fn)) != 0)
+ {
+ fprintf (stderr, "hist_erasedups: read_history: %s: %s\n", fn, strerror (r));
+ exit (1);
+ }
+
+ hist_erasedups ();
+
+ if ((r = write_history (fn)) != 0)
+ {
+ fprintf (stderr, "hist_erasedups: write_history: %s: %s\n", fn, strerror (r));
+ exit (1);
+ }
+
+ exit (0);
+}
+
+int
+hist_erasedups ()
+{
+ int r, n;
+ HIST_ENTRY *h, *temp;
+
+ using_history ();
+ while (h = previous_history ())
+ {
+ r = where_history ();
+ for (n = 0; n < r; n++)
+ {
+ temp = history_get (n+history_base);
+ if (STREQ (h->line, temp->line))
+ {
+ remove_history (n);
+ r--; /* have to get one fewer now */
+ n--; /* compensate for above increment */
+ history_offset--; /* moving backwards in history list */
+ }
+ }
+ }
+ using_history ();
+
+ return r;
+}
diff --git a/examples/hist_purgecmd.c b/examples/hist_purgecmd.c
new file mode 100644
index 0000000..94becd8
--- /dev/null
+++ b/examples/hist_purgecmd.c
@@ -0,0 +1,151 @@
+/* hist_purgecmd -- remove all instances of command or pattern from history
+ file */
+
+/* Copyright (C) 2011 Free Software Foundation, Inc.
+
+ This file is part of the GNU Readline Library (Readline), a library for
+ reading lines of text with interactive input and history editing.
+
+ Readline is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ Readline is distributed in the hope that 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 Readline. If not, see <http://www.gnu.org/licenses/>.
+*/
+#ifndef READLINE_LIBRARY
+#define READLINE_LIBRARY 1
+#endif
+
+#include <unistd.h>
+#include <stdlib.h>
+#include <stdio.h>
+
+#include <regex.h>
+
+#ifdef READLINE_LIBRARY
+# include "history.h"
+#else
+# include <readline/history.h>
+#endif
+
+#include <string.h>
+
+#define STREQ(a, b) ((a)[0] == (b)[0] && strcmp(a, b) == 0)
+#define STREQN(a, b, n) ((n == 0) ? (1) \
+ : ((a)[0] == (b)[0] && strncmp(a, b, n) == 0))
+
+extern int history_offset;
+
+#define PURGE_REGEXP 0x01
+
+static void
+usage()
+{
+ fprintf (stderr, "hist_purgecmd: usage: hist_purgecmd [-r] [-t] [-f filename] command-spec\n");
+ exit (2);
+}
+
+int
+main (argc, argv)
+ int argc;
+ char **argv;
+{
+ char *fn;
+ int r, flags;
+
+ flags = 0;
+ fn = 0;
+ while ((r = getopt (argc, argv, "f:rt")) != -1)
+ {
+ switch (r)
+ {
+ case 'f':
+ fn = optarg;
+ break;
+ case 'r':
+ flags |= PURGE_REGEXP;
+ break;
+ case 't':
+ history_write_timestamps = 1;
+ break;
+ default:
+ usage ();
+ }
+ }
+ argv += optind;
+ argc -= optind;
+
+ if (fn == 0)
+ fn = getenv ("HISTFILE");
+ if (fn == 0)
+ {
+ fprintf (stderr, "hist_purgecmd: no history file\n");
+ usage ();
+ }
+
+ if ((r = read_history (fn)) != 0)
+ {
+ fprintf (stderr, "hist_purgecmd: read_history: %s: %s\n", fn, strerror (r));
+ exit (1);
+ }
+
+ for (r = 0; r < argc; r++)
+ hist_purgecmd (argv[r], flags);
+
+ if ((r = write_history (fn)) != 0)
+ {
+ fprintf (stderr, "hist_purgecmd: write_history: %s: %s\n", fn, strerror (r));
+ exit (1);
+ }
+
+ exit (0);
+}
+
+int
+hist_purgecmd (cmd, flags)
+ char *cmd;
+ int flags;
+{
+ int r, n, rflags;
+ HIST_ENTRY *temp;
+ regex_t regex = { 0 };
+
+ if (flags & PURGE_REGEXP)
+ {
+ rflags = REG_EXTENDED|REG_NOSUB;
+ if (regcomp (&regex, cmd, rflags))
+ {
+ fprintf (stderr, "hist_purgecmd: %s: invalid regular expression\n", cmd);
+ return -1;
+ }
+ }
+
+ r = 0;
+ using_history ();
+ r = where_history ();
+ for (n = 0; n < r; n++)
+ {
+ temp = history_get (n+history_base);
+ if (((flags & PURGE_REGEXP) && (regexec (&regex, temp->line, 0, 0, 0) == 0)) ||
+ ((flags & PURGE_REGEXP) == 0 && STREQ (temp->line, cmd)))
+ {
+ remove_history (n);
+ r--; /* have to get one fewer now */
+ n--; /* compensate for above increment */
+ history_offset--; /* moving backwards in history list */
+ }
+ }
+ using_history ();
+
+ if (flags & PURGE_REGEXP)
+ regfree (&regex);
+
+ return r;
+}
diff --git a/examples/rl-callbacktest.c b/examples/rl-callbacktest.c
new file mode 100644
index 0000000..87a781d
--- /dev/null
+++ b/examples/rl-callbacktest.c
@@ -0,0 +1,87 @@
+/* Standard include files. stdio.h is required. */
+#include <stdlib.h>
+#include <unistd.h>
+#include <string.h>
+
+/* Used for select(2) */
+#include <sys/types.h>
+#include <sys/select.h>
+
+#include <stdio.h>
+
+/* Standard readline include files. */
+#if defined (READLINE_LIBRARY)
+# include "readline.h"
+# include "history.h"
+#else
+# include <readline/readline.h>
+# include <readline/history.h>
+#endif
+
+static void cb_linehandler (char *);
+
+int running;
+const char *prompt = "rltest$ ";
+
+/* Callback function called for each line when accept-line executed, EOF
+ seen, or EOF character read. This sets a flag and returns; it could
+ also call exit(3). */
+static void
+cb_linehandler (char *line)
+{
+ /* Can use ^D (stty eof) or `exit' to exit. */
+ if (line == NULL || strcmp (line, "exit") == 0)
+ {
+ if (line == 0)
+ printf ("\n");
+ printf ("exit\n");
+ /* This function needs to be called to reset the terminal settings,
+ and calling it from the line handler keeps one extra prompt from
+ being displayed. */
+ rl_callback_handler_remove ();
+
+ running = 0;
+ }
+ else
+ {
+ if (*line)
+ add_history (line);
+ printf ("input line: %s\n", line);
+ free (line);
+ }
+}
+
+int
+main (int c, char **v)
+{
+ fd_set fds;
+ int r;
+
+ /* Install the line handler. */
+ rl_callback_handler_install (prompt, cb_linehandler);
+
+ /* Enter a simple event loop. This waits until something is available
+ to read on readline's input stream (defaults to standard input) and
+ calls the builtin character read callback to read it. It does not
+ have to modify the user's terminal settings. */
+ running = 1;
+ while (running)
+ {
+ FD_ZERO (&fds);
+ FD_SET (fileno (rl_instream), &fds);
+
+ r = select (FD_SETSIZE, &fds, NULL, NULL, NULL);
+ if (r < 0)
+ {
+ perror ("rltest: select");
+ rl_callback_handler_remove ();
+ break;
+ }
+
+ if (FD_ISSET (fileno (rl_instream), &fds))
+ rl_callback_read_char ();
+ }
+
+ printf ("rltest: Event loop has exited\n");
+ return 0;
+}
diff --git a/examples/rlfe/config.h.in b/examples/rlfe/config.h.in
index ad546b8..a843fec 100644
--- a/examples/rlfe/config.h.in
+++ b/examples/rlfe/config.h.in
@@ -377,3 +377,7 @@
#undef HAVE_SYS_STROPTS_H
#undef HAVE_SYS_WAIT_H
+
+#undef HAVE_SGTTY_H
+
+#undef HAVE_SYS_SELECT_H
diff --git a/examples/rlfe/configure b/examples/rlfe/configure
index 17e902c..3928331 100755
--- a/examples/rlfe/configure
+++ b/examples/rlfe/configure
@@ -1,18 +1,22 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.63.
+# Generated by GNU Autoconf 2.68.
+#
#
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
-# 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software
+# Foundation, Inc.
+#
+#
# This configure script is free software; the Free Software Foundation
# gives unlimited permission to copy, distribute and modify it.
-## --------------------- ##
-## M4sh Initialization. ##
-## --------------------- ##
+## -------------------- ##
+## M4sh Initialization. ##
+## -------------------- ##
# Be more Bourne compatible
DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
emulate sh
NULLCMD=:
# Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
@@ -20,23 +24,15 @@ if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
alias -g '${1+"$@"}'='"$@"'
setopt NO_GLOB_SUBST
else
- case `(set -o) 2>/dev/null` in
- *posix*) set -o posix ;;
+ case `(set -o) 2>/dev/null` in #(
+ *posix*) :
+ set -o posix ;; #(
+ *) :
+ ;;
esac
-
fi
-
-
-# PATH needs CR
-# Avoid depending upon Character Ranges.
-as_cr_letters='abcdefghijklmnopqrstuvwxyz'
-as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
-as_cr_Letters=$as_cr_letters$as_cr_LETTERS
-as_cr_digits='0123456789'
-as_cr_alnum=$as_cr_Letters$as_cr_digits
-
as_nl='
'
export as_nl
@@ -44,7 +40,13 @@ export as_nl
as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
-if (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
+# Prefer a ksh shell builtin over an external printf program on Solaris,
+# but without wasting forks for bash or zsh.
+if test -z "$BASH_VERSION$ZSH_VERSION" \
+ && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
+ as_echo='print -r --'
+ as_echo_n='print -rn --'
+elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
as_echo='printf %s\n'
as_echo_n='printf %s'
else
@@ -55,7 +57,7 @@ else
as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
as_echo_n_body='eval
arg=$1;
- case $arg in
+ case $arg in #(
*"$as_nl"*)
expr "X$arg" : "X\\(.*\\)$as_nl";
arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
@@ -78,13 +80,6 @@ if test "${PATH_SEPARATOR+set}" != set; then
}
fi
-# Support unset when possible.
-if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
- as_unset=unset
-else
- as_unset=false
-fi
-
# IFS
# We need space, tab and new line, in precisely that order. Quoting is
@@ -94,15 +89,16 @@ fi
IFS=" "" $as_nl"
# Find who we are. Look in the path if we contain no directory separator.
-case $0 in
+as_myself=
+case $0 in #((
*[\\/]* ) as_myself=$0 ;;
*) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
-done
+ test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
+ done
IFS=$as_save_IFS
;;
@@ -114,12 +110,16 @@ if test "x$as_myself" = x; then
fi
if test ! -f "$as_myself"; then
$as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
- { (exit 1); exit 1; }
+ exit 1
fi
-# Work around bugs in pre-3.0 UWIN ksh.
-for as_var in ENV MAIL MAILPATH
-do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
+# Unset variables that we do not need and which cause bugs (e.g. in
+# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1"
+# suppresses any "Segmentation fault" message there. '((' could
+# trigger a bug in pdksh 5.2.14.
+for as_var in BASH_ENV ENV MAIL MAILPATH
+do eval test x\${$as_var+set} = xset \
+ && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
done
PS1='$ '
PS2='> '
@@ -131,330 +131,306 @@ export LC_ALL
LANGUAGE=C
export LANGUAGE
-# Required to use basename.
-if expr a : '\(a\)' >/dev/null 2>&1 &&
- test "X`expr 00001 : '.*\(...\)'`" = X001; then
- as_expr=expr
-else
- as_expr=false
-fi
-
-if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
- as_basename=basename
-else
- as_basename=false
-fi
-
-
-# Name of the executable.
-as_me=`$as_basename -- "$0" ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
- X"$0" : 'X\(//\)$' \| \
- X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X/"$0" |
- sed '/^.*\/\([^/][^/]*\)\/*$/{
- s//\1/
- q
- }
- /^X\/\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\/\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
-
# CDPATH.
-$as_unset CDPATH
-
+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
if test "x$CONFIG_SHELL" = x; then
- if (eval ":") 2>/dev/null; then
- as_have_required=yes
+ as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
+ emulate sh
+ NULLCMD=:
+ # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which
+ # is contrary to our usage. Disable this feature.
+ alias -g '\${1+\"\$@\"}'='\"\$@\"'
+ setopt NO_GLOB_SUBST
else
- as_have_required=no
+ case \`(set -o) 2>/dev/null\` in #(
+ *posix*) :
+ set -o posix ;; #(
+ *) :
+ ;;
+esac
fi
-
- if test $as_have_required = yes && (eval ":
-(as_func_return () {
- (exit \$1)
-}
-as_func_success () {
- as_func_return 0
-}
-as_func_failure () {
- as_func_return 1
-}
-as_func_ret_success () {
- return 0
-}
-as_func_ret_failure () {
- return 1
-}
+"
+ as_required="as_fn_return () { (exit \$1); }
+as_fn_success () { as_fn_return 0; }
+as_fn_failure () { as_fn_return 1; }
+as_fn_ret_success () { return 0; }
+as_fn_ret_failure () { return 1; }
exitcode=0
-if as_func_success; then
- :
-else
- exitcode=1
- echo as_func_success failed.
-fi
-
-if as_func_failure; then
- exitcode=1
- echo as_func_failure succeeded.
-fi
-
-if as_func_ret_success; then
- :
-else
- exitcode=1
- echo as_func_ret_success failed.
-fi
-
-if as_func_ret_failure; then
- exitcode=1
- echo as_func_ret_failure succeeded.
-fi
-
-if ( set x; as_func_ret_success y && test x = \"\$1\" ); then
- :
+as_fn_success || { exitcode=1; echo as_fn_success failed.; }
+as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; }
+as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; }
+as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; }
+if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
+
+else
+ exitcode=1; echo positional parameters were not saved.
+fi
+test x\$exitcode = x0 || exit 1"
+ as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
+ as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
+ eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
+ test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1
+test \$(( 1 + 1 )) = 2 || exit 1"
+ if (eval "$as_required") 2>/dev/null; then :
+ as_have_required=yes
else
- exitcode=1
- echo positional parameters were not saved.
+ as_have_required=no
fi
+ if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then :
-test \$exitcode = 0) || { (exit 1); exit 1; }
-
-(
- as_lineno_1=\$LINENO
- as_lineno_2=\$LINENO
- test \"x\$as_lineno_1\" != \"x\$as_lineno_2\" &&
- test \"x\`expr \$as_lineno_1 + 1\`\" = \"x\$as_lineno_2\") || { (exit 1); exit 1; }
-") 2> /dev/null; then
- :
else
- as_candidate_shells=
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+as_found=false
for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- case $as_dir in
+ as_found=:
+ case $as_dir in #(
/*)
for as_base in sh bash ksh sh5; do
- as_candidate_shells="$as_candidate_shells $as_dir/$as_base"
+ # Try only shells that exist, to save several forks.
+ as_shell=$as_dir/$as_base
+ if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
+ { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then :
+ CONFIG_SHELL=$as_shell as_have_required=yes
+ if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then :
+ break 2
+fi
+fi
done;;
esac
+ as_found=false
done
+$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } &&
+ { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then :
+ CONFIG_SHELL=$SHELL as_have_required=yes
+fi; }
IFS=$as_save_IFS
- for as_shell in $as_candidate_shells $SHELL; do
- # Try only shells that exist, to save several forks.
- if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
- { ("$as_shell") 2> /dev/null <<\_ASEOF
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
- emulate sh
- NULLCMD=:
- # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
- # is contrary to our usage. Disable this feature.
- alias -g '${1+"$@"}'='"$@"'
- setopt NO_GLOB_SUBST
-else
- case `(set -o) 2>/dev/null` in
- *posix*) set -o posix ;;
-esac
-
+ if test "x$CONFIG_SHELL" != x; then :
+ # We cannot yet assume a decent shell, so we have to provide a
+ # neutralization value for shells without unset; and this also
+ # works around shells that cannot unset nonexistent variables.
+ # Preserve -v and -x to the replacement shell.
+ BASH_ENV=/dev/null
+ ENV=/dev/null
+ (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
+ export CONFIG_SHELL
+ case $- in # ((((
+ *v*x* | *x*v* ) as_opts=-vx ;;
+ *v* ) as_opts=-v ;;
+ *x* ) as_opts=-x ;;
+ * ) as_opts= ;;
+ esac
+ exec "$CONFIG_SHELL" $as_opts "$as_myself" ${1+"$@"}
fi
-
-:
-_ASEOF
-}; then
- CONFIG_SHELL=$as_shell
- as_have_required=yes
- if { "$as_shell" 2> /dev/null <<\_ASEOF
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
- emulate sh
- NULLCMD=:
- # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
- # is contrary to our usage. Disable this feature.
- alias -g '${1+"$@"}'='"$@"'
- setopt NO_GLOB_SUBST
-else
- case `(set -o) 2>/dev/null` in
- *posix*) set -o posix ;;
-esac
-
+ if test x$as_have_required = xno; then :
+ $as_echo "$0: This script requires a shell more modern than all"
+ $as_echo "$0: the shells that I found on your system."
+ if test x${ZSH_VERSION+set} = xset ; then
+ $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should"
+ $as_echo "$0: be upgraded to zsh 4.3.4 or later."
+ else
+ $as_echo "$0: Please tell bug-autoconf@gnu.org about your system,
+$0: including any error possibly output before this
+$0: message. Then install a modern shell, or manually run
+$0: the script under such a shell if you do have one."
+ fi
+ exit 1
fi
+fi
+fi
+SHELL=${CONFIG_SHELL-/bin/sh}
+export SHELL
+# Unset more variables known to interfere with behavior of common tools.
+CLICOLOR_FORCE= GREP_OPTIONS=
+unset CLICOLOR_FORCE GREP_OPTIONS
-
-:
-(as_func_return () {
- (exit $1)
-}
-as_func_success () {
- as_func_return 0
-}
-as_func_failure () {
- as_func_return 1
-}
-as_func_ret_success () {
- return 0
-}
-as_func_ret_failure () {
- return 1
+## --------------------- ##
+## M4sh Shell Functions. ##
+## --------------------- ##
+# as_fn_unset VAR
+# ---------------
+# Portably unset VAR.
+as_fn_unset ()
+{
+ { eval $1=; unset $1;}
}
+as_unset=as_fn_unset
-exitcode=0
-if as_func_success; then
- :
-else
- exitcode=1
- echo as_func_success failed.
-fi
+# as_fn_set_status STATUS
+# -----------------------
+# Set $? to STATUS, without forking.
+as_fn_set_status ()
+{
+ return $1
+} # as_fn_set_status
-if as_func_failure; then
- exitcode=1
- echo as_func_failure succeeded.
-fi
+# as_fn_exit STATUS
+# -----------------
+# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
+as_fn_exit ()
+{
+ set +e
+ as_fn_set_status $1
+ exit $1
+} # as_fn_exit
+
+# as_fn_mkdir_p
+# -------------
+# Create "$as_dir" as a directory, including parents if necessary.
+as_fn_mkdir_p ()
+{
-if as_func_ret_success; then
- :
+ case $as_dir in #(
+ -*) as_dir=./$as_dir;;
+ esac
+ test -d "$as_dir" || eval $as_mkdir_p || {
+ as_dirs=
+ while :; do
+ case $as_dir in #(
+ *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
+ *) as_qdir=$as_dir;;
+ esac
+ as_dirs="'$as_qdir' $as_dirs"
+ as_dir=`$as_dirname -- "$as_dir" ||
+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$as_dir" : 'X\(//\)[^/]' \| \
+ X"$as_dir" : 'X\(//\)$' \| \
+ X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X"$as_dir" |
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)[^/].*/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\).*/{
+ s//\1/
+ q
+ }
+ s/.*/./; q'`
+ test -d "$as_dir" && break
+ done
+ test -z "$as_dirs" || eval "mkdir $as_dirs"
+ } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
+
+
+} # as_fn_mkdir_p
+# as_fn_append VAR VALUE
+# ----------------------
+# Append the text in VALUE to the end of the definition contained in VAR. Take
+# advantage of any shell optimizations that allow amortized linear growth over
+# repeated appends, instead of the typical quadratic growth present in naive
+# implementations.
+if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
+ eval 'as_fn_append ()
+ {
+ eval $1+=\$2
+ }'
else
- exitcode=1
- echo as_func_ret_success failed.
-fi
-
-if as_func_ret_failure; then
- exitcode=1
- echo as_func_ret_failure succeeded.
-fi
-
-if ( set x; as_func_ret_success y && test x = "$1" ); then
- :
+ as_fn_append ()
+ {
+ eval $1=\$$1\$2
+ }
+fi # as_fn_append
+
+# as_fn_arith ARG...
+# ------------------
+# Perform arithmetic evaluation on the ARGs, and store the result in the
+# global $as_val. Take advantage of shells that can avoid forks. The arguments
+# must be portable across $(()) and expr.
+if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
+ eval 'as_fn_arith ()
+ {
+ as_val=$(( $* ))
+ }'
else
- exitcode=1
- echo positional parameters were not saved.
-fi
-
-test $exitcode = 0) || { (exit 1); exit 1; }
-
-(
- as_lineno_1=$LINENO
- as_lineno_2=$LINENO
- test "x$as_lineno_1" != "x$as_lineno_2" &&
- test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2") || { (exit 1); exit 1; }
-
-_ASEOF
-}; then
- break
-fi
-
-fi
-
- done
-
- if test "x$CONFIG_SHELL" != x; then
- for as_var in BASH_ENV ENV
- do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
- done
- export CONFIG_SHELL
- exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"}
-fi
-
-
- if test $as_have_required = no; then
- echo This script requires a shell more modern than all the
- echo shells that I found on your system. Please install a
- echo modern shell, or manually run the script under such a
- echo shell if you do have one.
- { (exit 1); exit 1; }
-fi
-
-
-fi
-
-fi
-
+ as_fn_arith ()
+ {
+ as_val=`expr "$@" || test $? -eq 1`
+ }
+fi # as_fn_arith
-(eval "as_func_return () {
- (exit \$1)
-}
-as_func_success () {
- as_func_return 0
-}
-as_func_failure () {
- as_func_return 1
-}
-as_func_ret_success () {
- return 0
-}
-as_func_ret_failure () {
- return 1
-}
+# as_fn_error STATUS ERROR [LINENO LOG_FD]
+# ----------------------------------------
+# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are
+# provided, also output the error to LOG_FD, referencing LINENO. Then exit the
+# script with STATUS, using 1 if that was 0.
+as_fn_error ()
+{
+ as_status=$1; test $as_status -eq 0 && as_status=1
+ if test "$4"; then
+ as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
+ fi
+ $as_echo "$as_me: error: $2" >&2
+ as_fn_exit $as_status
+} # as_fn_error
-exitcode=0
-if as_func_success; then
- :
+if expr a : '\(a\)' >/dev/null 2>&1 &&
+ test "X`expr 00001 : '.*\(...\)'`" = X001; then
+ as_expr=expr
else
- exitcode=1
- echo as_func_success failed.
-fi
-
-if as_func_failure; then
- exitcode=1
- echo as_func_failure succeeded.
+ as_expr=false
fi
-if as_func_ret_success; then
- :
+if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
+ as_basename=basename
else
- exitcode=1
- echo as_func_ret_success failed.
-fi
-
-if as_func_ret_failure; then
- exitcode=1
- echo as_func_ret_failure succeeded.
+ as_basename=false
fi
-if ( set x; as_func_ret_success y && test x = \"\$1\" ); then
- :
+if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
+ as_dirname=dirname
else
- exitcode=1
- echo positional parameters were not saved.
+ as_dirname=false
fi
-test \$exitcode = 0") || {
- echo No shell found that supports shell functions.
- echo Please tell bug-autoconf@gnu.org about your system,
- echo including any error possibly output before this message.
- echo This can help us improve future autoconf versions.
- echo Configuration will now proceed without shell functions.
-}
-
+as_me=`$as_basename -- "$0" ||
+$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
+ X"$0" : 'X\(//\)$' \| \
+ X"$0" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X/"$0" |
+ sed '/^.*\/\([^/][^/]*\)\/*$/{
+ s//\1/
+ q
+ }
+ /^X\/\(\/\/\)$/{
+ s//\1/
+ q
+ }
+ /^X\/\(\/\).*/{
+ s//\1/
+ q
+ }
+ s/.*/./; q'`
+# Avoid depending upon Character Ranges.
+as_cr_letters='abcdefghijklmnopqrstuvwxyz'
+as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
+as_cr_Letters=$as_cr_letters$as_cr_LETTERS
+as_cr_digits='0123456789'
+as_cr_alnum=$as_cr_Letters$as_cr_digits
- as_lineno_1=$LINENO
- as_lineno_2=$LINENO
- test "x$as_lineno_1" != "x$as_lineno_2" &&
- test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || {
- # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
- # uniformly replaced by the line number. The first 'sed' inserts a
- # line-number line after each line using $LINENO; the second 'sed'
- # does the real work. The second script uses 'N' to pair each
- # line-number line with the line containing $LINENO, and appends
- # trailing '-' during substitution so that $LINENO is not a special
- # case at line end.
- # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
- # scripts with optimization help from Paolo Bonzini. Blame Lee
- # E. McMahon (1931-1989) for sed's syntax. :-)
+ as_lineno_1=$LINENO as_lineno_1a=$LINENO
+ as_lineno_2=$LINENO as_lineno_2a=$LINENO
+ eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" &&
+ test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || {
+ # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-)
sed -n '
p
/[$]LINENO/=
@@ -471,8 +447,7 @@ test \$exitcode = 0") || {
s/-\n.*//
' >$as_me.lineno &&
chmod +x "$as_me.lineno" ||
- { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2
- { (exit 1); exit 1; }; }
+ { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
# Don't try to exec as it changes $[0], causing all sort of problems
# (the dirname of $[0] is not the place where we might find the
@@ -482,29 +457,18 @@ test \$exitcode = 0") || {
exit
}
-
-if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
- as_dirname=dirname
-else
- as_dirname=false
-fi
-
ECHO_C= ECHO_N= ECHO_T=
-case `echo -n x` in
+case `echo -n x` in #(((((
-n*)
- case `echo 'x\c'` in
+ case `echo 'xy\c'` in
*c*) ECHO_T=' ';; # ECHO_T is single tab character.
- *) ECHO_C='\c';;
+ xy) ECHO_C='\c';;
+ *) echo `echo ksh88 bug on AIX 6.1` > /dev/null
+ ECHO_T=' ';;
esac;;
*)
ECHO_N='-n';;
esac
-if expr a : '\(a\)' >/dev/null 2>&1 &&
- test "X`expr 00001 : '.*\(...\)'`" = X001; then
- as_expr=expr
-else
- as_expr=false
-fi
rm -f conf$$ conf$$.exe conf$$.file
if test -d conf$$.dir; then
@@ -534,7 +498,7 @@ rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
rmdir conf$$.dir 2>/dev/null
if mkdir -p . 2>/dev/null; then
- as_mkdir_p=:
+ as_mkdir_p='mkdir -p "$as_dir"'
else
test -d ./-p && rmdir ./-p
as_mkdir_p=false
@@ -553,10 +517,10 @@ else
if test -d "$1"; then
test -d "$1/.";
else
- case $1 in
+ case $1 in #(
-*)set "./$1";;
esac;
- case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in
+ case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
???[sx]*):;;*)false;;esac;fi
'\'' sh
'
@@ -570,11 +534,11 @@ as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
-
-exec 7<&0 </dev/null 6>&1
+test -n "$DJDIR" || exec 7<&0 </dev/null
+exec 6>&1
# Name of the host.
-# hostname on some systems (SVR3.2, Linux) returns a bogus exit status,
+# hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status,
# so uname gets run too.
ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
@@ -589,7 +553,6 @@ cross_compiling=no
subdirs=
MFLAGS=
MAKEFLAGS=
-SHELL=${CONFIG_SHELL-/bin/sh}
# Identity of this package.
PACKAGE_NAME=
@@ -597,6 +560,7 @@ PACKAGE_TARNAME=
PACKAGE_VERSION=
PACKAGE_STRING=
PACKAGE_BUGREPORT=
+PACKAGE_URL=
ac_unique_file="rlfe.c"
# Factoring default headers for most tests.
@@ -681,6 +645,7 @@ bindir
program_transform_name
prefix
exec_prefix
+PACKAGE_URL
PACKAGE_BUGREPORT
PACKAGE_STRING
PACKAGE_VERSION
@@ -765,8 +730,9 @@ do
fi
case $ac_option in
- *=*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;
- *) ac_optarg=yes ;;
+ *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;
+ *=) ac_optarg= ;;
+ *) ac_optarg=yes ;;
esac
# Accept the important Cygnus configure options, so we can diagnose typos.
@@ -811,8 +777,7 @@ do
ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
# Reject names that are not valid shell variable names.
expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
- { $as_echo "$as_me: error: invalid feature name: $ac_useropt" >&2
- { (exit 1); exit 1; }; }
+ as_fn_error $? "invalid feature name: $ac_useropt"
ac_useropt_orig=$ac_useropt
ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
case $ac_user_opts in
@@ -838,8 +803,7 @@ do
ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
# Reject names that are not valid shell variable names.
expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
- { $as_echo "$as_me: error: invalid feature name: $ac_useropt" >&2
- { (exit 1); exit 1; }; }
+ as_fn_error $? "invalid feature name: $ac_useropt"
ac_useropt_orig=$ac_useropt
ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
case $ac_user_opts in
@@ -1043,8 +1007,7 @@ do
ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
# Reject names that are not valid shell variable names.
expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
- { $as_echo "$as_me: error: invalid package name: $ac_useropt" >&2
- { (exit 1); exit 1; }; }
+ as_fn_error $? "invalid package name: $ac_useropt"
ac_useropt_orig=$ac_useropt
ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
case $ac_user_opts in
@@ -1060,8 +1023,7 @@ do
ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'`
# Reject names that are not valid shell variable names.
expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
- { $as_echo "$as_me: error: invalid package name: $ac_useropt" >&2
- { (exit 1); exit 1; }; }
+ as_fn_error $? "invalid package name: $ac_useropt"
ac_useropt_orig=$ac_useropt
ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
case $ac_user_opts in
@@ -1091,17 +1053,17 @@ do
| --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
x_libraries=$ac_optarg ;;
- -*) { $as_echo "$as_me: error: unrecognized option: $ac_option
-Try \`$0 --help' for more information." >&2
- { (exit 1); exit 1; }; }
+ -*) as_fn_error $? "unrecognized option: \`$ac_option'
+Try \`$0 --help' for more information"
;;
*=*)
ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
# Reject names that are not valid shell variable names.
- expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null &&
- { $as_echo "$as_me: error: invalid variable name: $ac_envvar" >&2
- { (exit 1); exit 1; }; }
+ case $ac_envvar in #(
+ '' | [0-9]* | *[!_$as_cr_alnum]* )
+ as_fn_error $? "invalid variable name: \`$ac_envvar'" ;;
+ esac
eval $ac_envvar=\$ac_optarg
export $ac_envvar ;;
@@ -1110,7 +1072,7 @@ Try \`$0 --help' for more information." >&2
$as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2
expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
$as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2
- : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
+ : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}"
;;
esac
@@ -1118,15 +1080,13 @@ done
if test -n "$ac_prev"; then
ac_option=--`echo $ac_prev | sed 's/_/-/g'`
- { $as_echo "$as_me: error: missing argument to $ac_option" >&2
- { (exit 1); exit 1; }; }
+ as_fn_error $? "missing argument to $ac_option"
fi
if test -n "$ac_unrecognized_opts"; then
case $enable_option_checking in
no) ;;
- fatal) { $as_echo "$as_me: error: unrecognized options: $ac_unrecognized_opts" >&2
- { (exit 1); exit 1; }; } ;;
+ fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;;
*) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;;
esac
fi
@@ -1149,8 +1109,7 @@ do
[\\/$]* | ?:[\\/]* ) continue;;
NONE | '' ) case $ac_var in *prefix ) continue;; esac;;
esac
- { $as_echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2
- { (exit 1); exit 1; }; }
+ as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val"
done
# There might be people who depend on the old broken behavior: `$host'
@@ -1164,8 +1123,8 @@ target=$target_alias
if test "x$host_alias" != x; then
if test "x$build_alias" = x; then
cross_compiling=maybe
- $as_echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host.
- If a cross compiler is detected then cross compile mode will be used." >&2
+ $as_echo "$as_me: WARNING: if you wanted to set the --build type, don't use --host.
+ If a cross compiler is detected then cross compile mode will be used" >&2
elif test "x$build_alias" != "x$host_alias"; then
cross_compiling=yes
fi
@@ -1180,11 +1139,9 @@ test "$silent" = yes && exec 6>/dev/null
ac_pwd=`pwd` && test -n "$ac_pwd" &&
ac_ls_di=`ls -di .` &&
ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` ||
- { $as_echo "$as_me: error: working directory cannot be determined" >&2
- { (exit 1); exit 1; }; }
+ as_fn_error $? "working directory cannot be determined"
test "X$ac_ls_di" = "X$ac_pwd_ls_di" ||
- { $as_echo "$as_me: error: pwd does not report name of working directory" >&2
- { (exit 1); exit 1; }; }
+ as_fn_error $? "pwd does not report name of working directory"
# Find the source files, if location was not specified.
@@ -1223,13 +1180,11 @@ else
fi
if test ! -r "$srcdir/$ac_unique_file"; then
test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .."
- { $as_echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2
- { (exit 1); exit 1; }; }
+ as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir"
fi
ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work"
ac_abs_confdir=`(
- cd "$srcdir" && test -r "./$ac_unique_file" || { $as_echo "$as_me: error: $ac_msg" >&2
- { (exit 1); exit 1; }; }
+ cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg"
pwd)`
# When building in place, set srcdir=.
if test "$ac_abs_confdir" = "$ac_pwd"; then
@@ -1269,7 +1224,7 @@ Configuration:
--help=short display options specific to this package
--help=recursive display the short help of all the included packages
-V, --version display version information and exit
- -q, --quiet, --silent do not print \`checking...' messages
+ -q, --quiet, --silent do not print \`checking ...' messages
--cache-file=FILE cache test results in FILE [disabled]
-C, --config-cache alias for \`--cache-file=config.cache'
-n, --no-create do not create output files
@@ -1330,13 +1285,14 @@ Some influential environment variables:
LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a
nonstandard directory <lib dir>
LIBS libraries to pass to the linker, e.g. -l<library>
- CPPFLAGS C/C++/Objective C preprocessor flags, e.g. -I<include dir> if
+ CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if
you have headers in a nonstandard directory <include dir>
CPP C preprocessor
Use these variables to override the choices made by `configure' or to help
it to find libraries and programs with nonstandard names/locations.
+Report bugs to the package provider.
_ACEOF
ac_status=$?
fi
@@ -1400,21 +1356,372 @@ test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
configure
-generated by GNU Autoconf 2.63
+generated by GNU Autoconf 2.68
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
-2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+Copyright (C) 2010 Free Software Foundation, Inc.
This configure script is free software; the Free Software Foundation
gives unlimited permission to copy, distribute and modify it.
_ACEOF
exit
fi
+
+## ------------------------ ##
+## Autoconf initialization. ##
+## ------------------------ ##
+
+# ac_fn_c_try_compile LINENO
+# --------------------------
+# Try to compile conftest.$ac_ext, and return whether this succeeded.
+ac_fn_c_try_compile ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ rm -f conftest.$ac_objext
+ if { { ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_compile") 2>conftest.err
+ ac_status=$?
+ if test -s conftest.err; then
+ grep -v '^ *+' conftest.err >conftest.er1
+ cat conftest.er1 >&5
+ mv -f conftest.er1 conftest.err
+ fi
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then :
+ ac_retval=0
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_retval=1
+fi
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+ as_fn_set_status $ac_retval
+
+} # ac_fn_c_try_compile
+
+# ac_fn_c_try_cpp LINENO
+# ----------------------
+# Try to preprocess conftest.$ac_ext, and return whether this succeeded.
+ac_fn_c_try_cpp ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ if { { ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err
+ ac_status=$?
+ if test -s conftest.err; then
+ grep -v '^ *+' conftest.err >conftest.er1
+ cat conftest.er1 >&5
+ mv -f conftest.er1 conftest.err
+ fi
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; } > conftest.i && {
+ test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ }; then :
+ ac_retval=0
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_retval=1
+fi
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+ as_fn_set_status $ac_retval
+
+} # ac_fn_c_try_cpp
+
+# ac_fn_c_try_link LINENO
+# -----------------------
+# Try to link conftest.$ac_ext, and return whether this succeeded.
+ac_fn_c_try_link ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ rm -f conftest.$ac_objext conftest$ac_exeext
+ if { { ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_link") 2>conftest.err
+ ac_status=$?
+ if test -s conftest.err; then
+ grep -v '^ *+' conftest.err >conftest.er1
+ cat conftest.er1 >&5
+ mv -f conftest.er1 conftest.err
+ fi
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then :
+ ac_retval=0
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_retval=1
+fi
+ # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information
+ # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would
+ # interfere with the next link command; also delete a directory that is
+ # left behind by Apple's compiler. We do this before executing the actions.
+ rm -rf conftest.dSYM conftest_ipa8_conftest.oo
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+ as_fn_set_status $ac_retval
+
+} # ac_fn_c_try_link
+
+# ac_fn_c_try_run LINENO
+# ----------------------
+# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes
+# that executables *can* be run.
+ac_fn_c_try_run ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ if { { ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
+ { { case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; }; then :
+ ac_retval=0
+else
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_retval=$ac_status
+fi
+ rm -rf conftest.dSYM conftest_ipa8_conftest.oo
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+ as_fn_set_status $ac_retval
+
+} # ac_fn_c_try_run
+
+# ac_fn_c_check_func LINENO FUNC VAR
+# ----------------------------------
+# Tests whether FUNC exists, setting the cache variable VAR accordingly
+ac_fn_c_check_func ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+$as_echo_n "checking for $2... " >&6; }
+if eval \${$3+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+/* Define $2 to an innocuous variant, in case <limits.h> declares $2.
+ For example, HP-UX 11i <limits.h> declares gettimeofday. */
+#define $2 innocuous_$2
+
+/* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char $2 (); below.
+ Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+ <limits.h> exists even on freestanding compilers. */
+
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+
+#undef $2
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char $2 ();
+/* The GNU C library defines this for functions which it implements
+ to always fail with ENOSYS. Some functions are actually named
+ something starting with __ and the normal name is an alias. */
+#if defined __stub_$2 || defined __stub___$2
+choke me
+#endif
+
+int
+main ()
+{
+return $2 ();
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+ eval "$3=yes"
+else
+ eval "$3=no"
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+fi
+eval ac_res=\$$3
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+
+} # ac_fn_c_check_func
+
+# ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES
+# -------------------------------------------------------
+# Tests whether HEADER exists, giving a warning if it cannot be compiled using
+# the include files in INCLUDES and setting the cache variable VAR
+# accordingly.
+ac_fn_c_check_header_mongrel ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ if eval \${$3+:} false; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+$as_echo_n "checking for $2... " >&6; }
+if eval \${$3+:} false; then :
+ $as_echo_n "(cached) " >&6
+fi
+eval ac_res=\$$3
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+else
+ # Is the header compilable?
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5
+$as_echo_n "checking $2 usability... " >&6; }
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+$4
+#include <$2>
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ ac_header_compiler=yes
+else
+ ac_header_compiler=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5
+$as_echo "$ac_header_compiler" >&6; }
+
+# Is the header present?
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5
+$as_echo_n "checking $2 presence... " >&6; }
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <$2>
+_ACEOF
+if ac_fn_c_try_cpp "$LINENO"; then :
+ ac_header_preproc=yes
+else
+ ac_header_preproc=no
+fi
+rm -f conftest.err conftest.i conftest.$ac_ext
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5
+$as_echo "$ac_header_preproc" >&6; }
+
+# So? What about this header?
+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #((
+ yes:no: )
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5
+$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
+$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
+ ;;
+ no:yes:* )
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5
+$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5
+$as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5
+$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5
+$as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
+$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
+ ;;
+esac
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+$as_echo_n "checking for $2... " >&6; }
+if eval \${$3+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ eval "$3=\$ac_header_compiler"
+fi
+eval ac_res=\$$3
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+fi
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+
+} # ac_fn_c_check_header_mongrel
+
+# ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES
+# -------------------------------------------------------
+# Tests whether HEADER exists and can be compiled using the include files in
+# INCLUDES, setting the cache variable VAR accordingly.
+ac_fn_c_check_header_compile ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+$as_echo_n "checking for $2... " >&6; }
+if eval \${$3+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+$4
+#include <$2>
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ eval "$3=yes"
+else
+ eval "$3=no"
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+eval ac_res=\$$3
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+
+} # ac_fn_c_check_header_compile
cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
It was created by $as_me, which was
-generated by GNU Autoconf 2.63. Invocation command line was
+generated by GNU Autoconf 2.68. Invocation command line was
$ $0 $@
@@ -1450,8 +1757,8 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- $as_echo "PATH: $as_dir"
-done
+ $as_echo "PATH: $as_dir"
+ done
IFS=$as_save_IFS
} >&5
@@ -1488,9 +1795,9 @@ do
ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
esac
case $ac_pass in
- 1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;;
+ 1) as_fn_append ac_configure_args0 " '$ac_arg'" ;;
2)
- ac_configure_args1="$ac_configure_args1 '$ac_arg'"
+ as_fn_append ac_configure_args1 " '$ac_arg'"
if test $ac_must_keep_next = true; then
ac_must_keep_next=false # Got value, back to normal.
else
@@ -1506,13 +1813,13 @@ do
-* ) ac_must_keep_next=true ;;
esac
fi
- ac_configure_args="$ac_configure_args '$ac_arg'"
+ as_fn_append ac_configure_args " '$ac_arg'"
;;
esac
done
done
-$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; }
-$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; }
+{ ac_configure_args0=; unset ac_configure_args0;}
+{ ac_configure_args1=; unset ac_configure_args1;}
# When interrupted or exit'd, cleanup temporary files, and complete
# config.log. We remove comments because anyway the quotes in there
@@ -1524,11 +1831,9 @@ trap 'exit_status=$?
{
echo
- cat <<\_ASBOX
-## ---------------- ##
+ $as_echo "## ---------------- ##
## Cache variables. ##
-## ---------------- ##
-_ASBOX
+## ---------------- ##"
echo
# The following way of writing the cache mishandles newlines in values,
(
@@ -1537,13 +1842,13 @@ _ASBOX
case $ac_val in #(
*${as_nl}*)
case $ac_var in #(
- *_cv_*) { $as_echo "$as_me:$LINENO: WARNING: cache variable $ac_var contains a newline" >&5
+ *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
esac
case $ac_var in #(
_ | IFS | as_nl) ;; #(
BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
- *) $as_unset $ac_var ;;
+ *) { eval $ac_var=; unset $ac_var;} ;;
esac ;;
esac
done
@@ -1562,11 +1867,9 @@ $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
)
echo
- cat <<\_ASBOX
-## ----------------- ##
+ $as_echo "## ----------------- ##
## Output variables. ##
-## ----------------- ##
-_ASBOX
+## ----------------- ##"
echo
for ac_var in $ac_subst_vars
do
@@ -1579,11 +1882,9 @@ _ASBOX
echo
if test -n "$ac_subst_files"; then
- cat <<\_ASBOX
-## ------------------- ##
+ $as_echo "## ------------------- ##
## File substitutions. ##
-## ------------------- ##
-_ASBOX
+## ------------------- ##"
echo
for ac_var in $ac_subst_files
do
@@ -1597,11 +1898,9 @@ _ASBOX
fi
if test -s confdefs.h; then
- cat <<\_ASBOX
-## ----------- ##
+ $as_echo "## ----------- ##
## confdefs.h. ##
-## ----------- ##
-_ASBOX
+## ----------- ##"
echo
cat confdefs.h
echo
@@ -1615,46 +1914,53 @@ _ASBOX
exit $exit_status
' 0
for ac_signal in 1 2 13 15; do
- trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal
+ trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal
done
ac_signal=0
# confdefs.h avoids OS command line length limits that DEFS can exceed.
rm -f -r conftest* confdefs.h
+$as_echo "/* confdefs.h */" > confdefs.h
+
# Predefined preprocessor variables.
cat >>confdefs.h <<_ACEOF
#define PACKAGE_NAME "$PACKAGE_NAME"
_ACEOF
-
cat >>confdefs.h <<_ACEOF
#define PACKAGE_TARNAME "$PACKAGE_TARNAME"
_ACEOF
-
cat >>confdefs.h <<_ACEOF
#define PACKAGE_VERSION "$PACKAGE_VERSION"
_ACEOF
-
cat >>confdefs.h <<_ACEOF
#define PACKAGE_STRING "$PACKAGE_STRING"
_ACEOF
-
cat >>confdefs.h <<_ACEOF
#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
_ACEOF
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE_URL "$PACKAGE_URL"
+_ACEOF
+
# Let the site file select an alternate cache file if it wants to.
# Prefer an explicitly selected file to automatically selected ones.
ac_site_file1=NONE
ac_site_file2=NONE
if test -n "$CONFIG_SITE"; then
- ac_site_file1=$CONFIG_SITE
+ # We do not want a PATH search for config.site.
+ case $CONFIG_SITE in #((
+ -*) ac_site_file1=./$CONFIG_SITE;;
+ */*) ac_site_file1=$CONFIG_SITE;;
+ *) ac_site_file1=./$CONFIG_SITE;;
+ esac
elif test "x$prefix" != xNONE; then
ac_site_file1=$prefix/share/config.site
ac_site_file2=$prefix/etc/config.site
@@ -1665,19 +1971,23 @@ fi
for ac_site_file in "$ac_site_file1" "$ac_site_file2"
do
test "x$ac_site_file" = xNONE && continue
- if test -r "$ac_site_file"; then
- { $as_echo "$as_me:$LINENO: loading site script $ac_site_file" >&5
+ if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5
$as_echo "$as_me: loading site script $ac_site_file" >&6;}
sed 's/^/| /' "$ac_site_file" >&5
- . "$ac_site_file"
+ . "$ac_site_file" \
+ || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error $? "failed to load site script $ac_site_file
+See \`config.log' for more details" "$LINENO" 5; }
fi
done
if test -r "$cache_file"; then
- # Some versions of bash will fail to source /dev/null (special
- # files actually), so we avoid doing that.
- if test -f "$cache_file"; then
- { $as_echo "$as_me:$LINENO: loading cache $cache_file" >&5
+ # Some versions of bash will fail to source /dev/null (special files
+ # actually), so we avoid doing that. DJGPP emulates it as a regular file.
+ if test /dev/null != "$cache_file" && test -f "$cache_file"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5
$as_echo "$as_me: loading cache $cache_file" >&6;}
case $cache_file in
[\\/]* | ?:[\\/]* ) . "$cache_file";;
@@ -1685,7 +1995,7 @@ $as_echo "$as_me: loading cache $cache_file" >&6;}
esac
fi
else
- { $as_echo "$as_me:$LINENO: creating cache $cache_file" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5
$as_echo "$as_me: creating cache $cache_file" >&6;}
>$cache_file
fi
@@ -1700,11 +2010,11 @@ for ac_var in $ac_precious_vars; do
eval ac_new_val=\$ac_env_${ac_var}_value
case $ac_old_set,$ac_new_set in
set,)
- { $as_echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
ac_cache_corrupted=: ;;
,set)
- { $as_echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5
$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
ac_cache_corrupted=: ;;
,);;
@@ -1714,17 +2024,17 @@ $as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
ac_old_val_w=`echo x $ac_old_val`
ac_new_val_w=`echo x $ac_new_val`
if test "$ac_old_val_w" != "$ac_new_val_w"; then
- { $as_echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5
$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
ac_cache_corrupted=:
else
- { $as_echo "$as_me:$LINENO: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5
$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;}
eval $ac_var=\$ac_old_val
fi
- { $as_echo "$as_me:$LINENO: former value: \`$ac_old_val'" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5
$as_echo "$as_me: former value: \`$ac_old_val'" >&2;}
- { $as_echo "$as_me:$LINENO: current value: \`$ac_new_val'" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5
$as_echo "$as_me: current value: \`$ac_new_val'" >&2;}
fi;;
esac
@@ -1736,35 +2046,20 @@ $as_echo "$as_me: current value: \`$ac_new_val'" >&2;}
esac
case " $ac_configure_args " in
*" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy.
- *) ac_configure_args="$ac_configure_args '$ac_arg'" ;;
+ *) as_fn_append ac_configure_args " '$ac_arg'" ;;
esac
fi
done
if $ac_cache_corrupted; then
- { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
- { $as_echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5
$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;}
- { { $as_echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5
-$as_echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;}
- { (exit 1); exit 1; }; }
+ as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5
fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+## -------------------- ##
+## Main body of script. ##
+## -------------------- ##
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
@@ -1788,9 +2083,9 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
set dummy ${ac_tool_prefix}gcc; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then
+if ${ac_cv_prog_CC+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$CC"; then
@@ -1801,24 +2096,24 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_CC="${ac_tool_prefix}gcc"
- $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
IFS=$as_save_IFS
fi
fi
CC=$ac_cv_prog_CC
if test -n "$CC"; then
- { $as_echo "$as_me:$LINENO: result: $CC" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
$as_echo "$CC" >&6; }
else
- { $as_echo "$as_me:$LINENO: result: no" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
fi
@@ -1828,9 +2123,9 @@ if test -z "$ac_cv_prog_CC"; then
ac_ct_CC=$CC
# Extract the first word of "gcc", so it can be a program name with args.
set dummy gcc; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+if ${ac_cv_prog_ac_ct_CC+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$ac_ct_CC"; then
@@ -1841,24 +2136,24 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_ac_ct_CC="gcc"
- $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
IFS=$as_save_IFS
fi
fi
ac_ct_CC=$ac_cv_prog_ac_ct_CC
if test -n "$ac_ct_CC"; then
- { $as_echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
$as_echo "$ac_ct_CC" >&6; }
else
- { $as_echo "$as_me:$LINENO: result: no" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
fi
@@ -1867,7 +2162,7 @@ fi
else
case $cross_compiling:$ac_tool_warned in
yes:)
-{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
ac_tool_warned=yes ;;
esac
@@ -1881,9 +2176,9 @@ if test -z "$CC"; then
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
set dummy ${ac_tool_prefix}cc; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then
+if ${ac_cv_prog_CC+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$CC"; then
@@ -1894,24 +2189,24 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_CC="${ac_tool_prefix}cc"
- $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
IFS=$as_save_IFS
fi
fi
CC=$ac_cv_prog_CC
if test -n "$CC"; then
- { $as_echo "$as_me:$LINENO: result: $CC" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
$as_echo "$CC" >&6; }
else
- { $as_echo "$as_me:$LINENO: result: no" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
fi
@@ -1921,9 +2216,9 @@ fi
if test -z "$CC"; then
# Extract the first word of "cc", so it can be a program name with args.
set dummy cc; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then
+if ${ac_cv_prog_CC+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$CC"; then
@@ -1935,18 +2230,18 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
ac_prog_rejected=yes
continue
fi
ac_cv_prog_CC="cc"
- $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
IFS=$as_save_IFS
if test $ac_prog_rejected = yes; then
@@ -1965,10 +2260,10 @@ fi
fi
CC=$ac_cv_prog_CC
if test -n "$CC"; then
- { $as_echo "$as_me:$LINENO: result: $CC" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
$as_echo "$CC" >&6; }
else
- { $as_echo "$as_me:$LINENO: result: no" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
fi
@@ -1980,9 +2275,9 @@ if test -z "$CC"; then
do
# Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_CC+set}" = set; then
+if ${ac_cv_prog_CC+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$CC"; then
@@ -1993,24 +2288,24 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
- $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
IFS=$as_save_IFS
fi
fi
CC=$ac_cv_prog_CC
if test -n "$CC"; then
- { $as_echo "$as_me:$LINENO: result: $CC" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
$as_echo "$CC" >&6; }
else
- { $as_echo "$as_me:$LINENO: result: no" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
fi
@@ -2024,9 +2319,9 @@ if test -z "$CC"; then
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+if ${ac_cv_prog_ac_ct_CC+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$ac_ct_CC"; then
@@ -2037,24 +2332,24 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_ac_ct_CC="$ac_prog"
- $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
IFS=$as_save_IFS
fi
fi
ac_ct_CC=$ac_cv_prog_ac_ct_CC
if test -n "$ac_ct_CC"; then
- { $as_echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
$as_echo "$ac_ct_CC" >&6; }
else
- { $as_echo "$as_me:$LINENO: result: no" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
fi
@@ -2067,7 +2362,7 @@ done
else
case $cross_compiling:$ac_tool_warned in
yes:)
-{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
ac_tool_warned=yes ;;
esac
@@ -2078,57 +2373,37 @@ fi
fi
-test -z "$CC" && { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: no acceptable C compiler found in \$PATH
-See \`config.log' for more details." >&2;}
- { (exit 1); exit 1; }; }; }
+as_fn_error $? "no acceptable C compiler found in \$PATH
+See \`config.log' for more details" "$LINENO" 5; }
# Provide some information about the compiler.
-$as_echo "$as_me:$LINENO: checking for C compiler version" >&5
+$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
set X $ac_compile
ac_compiler=$2
-{ (ac_try="$ac_compiler --version >&5"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compiler --version >&5") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }
-{ (ac_try="$ac_compiler -v >&5"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compiler -v >&5") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }
-{ (ac_try="$ac_compiler -V >&5"
+for ac_option in --version -v -V -qversion; do
+ { { ac_try="$ac_compiler $ac_option >&5"
case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compiler -V >&5") 2>&5
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_compiler $ac_option >&5") 2>conftest.err
ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }
+ if test -s conftest.err; then
+ sed '10a\
+... rest of stderr output deleted ...
+ 10q' conftest.err >conftest.er1
+ cat conftest.er1 >&5
+ fi
+ rm -f conftest.er1 conftest.err
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }
+done
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
@@ -2144,8 +2419,8 @@ ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out"
# Try to create an executable without -o first, disregard a.out.
# It will help us diagnose broken compilers, and finding out an intuition
# of exeext.
-{ $as_echo "$as_me:$LINENO: checking for C compiler default output file name" >&5
-$as_echo_n "checking for C compiler default output file name... " >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5
+$as_echo_n "checking whether the C compiler works... " >&6; }
ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
# The possible output files:
@@ -2161,17 +2436,17 @@ do
done
rm -f $ac_rmfiles
-if { (ac_try="$ac_link_default"
+if { { ac_try="$ac_link_default"
case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
(eval "$ac_link_default") 2>&5
ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; then
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; then :
# Autoconf-2.13 could set the ac_cv_exeext variable to `no'.
# So ignore a value of `no', otherwise this would lead to `EXEEXT = no'
# in a Makefile. We should not override ac_cv_exeext if it was cached,
@@ -2188,7 +2463,7 @@ do
# certainly right.
break;;
*.* )
- if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no;
+ if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no;
then :; else
ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
fi
@@ -2207,84 +2482,41 @@ test "$ac_cv_exeext" = no && ac_cv_exeext=
else
ac_file=''
fi
-
-{ $as_echo "$as_me:$LINENO: result: $ac_file" >&5
-$as_echo "$ac_file" >&6; }
-if test -z "$ac_file"; then
- $as_echo "$as_me: failed program was:" >&5
+if test -z "$ac_file"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+$as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
-{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: C compiler cannot create executables
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: C compiler cannot create executables
-See \`config.log' for more details." >&2;}
- { (exit 77); exit 77; }; }; }
+as_fn_error 77 "C compiler cannot create executables
+See \`config.log' for more details" "$LINENO" 5; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
fi
-
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5
+$as_echo_n "checking for C compiler default output file name... " >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5
+$as_echo "$ac_file" >&6; }
ac_exeext=$ac_cv_exeext
-# Check that the compiler produces executables we can run. If not, either
-# the compiler is broken, or we cross compile.
-{ $as_echo "$as_me:$LINENO: checking whether the C compiler works" >&5
-$as_echo_n "checking whether the C compiler works... " >&6; }
-# FIXME: These cross compiler hacks should be removed for Autoconf 3.0
-# If not cross compiling, check that we can run a simple program.
-if test "$cross_compiling" != yes; then
- if { ac_try='./$ac_file'
- { (case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_try") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cross_compiling=no
- else
- if test "$cross_compiling" = maybe; then
- cross_compiling=yes
- else
- { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: cannot run C compiled programs.
-If you meant to cross compile, use \`--host'.
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: cannot run C compiled programs.
-If you meant to cross compile, use \`--host'.
-See \`config.log' for more details." >&2;}
- { (exit 1); exit 1; }; }; }
- fi
- fi
-fi
-{ $as_echo "$as_me:$LINENO: result: yes" >&5
-$as_echo "yes" >&6; }
-
rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out
ac_clean_files=$ac_clean_files_save
-# Check that the compiler produces executables we can run. If not, either
-# the compiler is broken, or we cross compile.
-{ $as_echo "$as_me:$LINENO: checking whether we are cross compiling" >&5
-$as_echo_n "checking whether we are cross compiling... " >&6; }
-{ $as_echo "$as_me:$LINENO: result: $cross_compiling" >&5
-$as_echo "$cross_compiling" >&6; }
-
-{ $as_echo "$as_me:$LINENO: checking for suffix of executables" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5
$as_echo_n "checking for suffix of executables... " >&6; }
-if { (ac_try="$ac_link"
+if { { ac_try="$ac_link"
case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
(eval "$ac_link") 2>&5
ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; then
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; then :
# If both `conftest.exe' and `conftest' are `present' (well, observable)
# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will
# work properly (i.e., refer to `conftest.exe'), while it won't with
@@ -2299,32 +2531,83 @@ for ac_file in conftest.exe conftest conftest.*; do
esac
done
else
- { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: cannot compute suffix of executables: cannot compile and link
-See \`config.log' for more details." >&2;}
- { (exit 1); exit 1; }; }; }
+as_fn_error $? "cannot compute suffix of executables: cannot compile and link
+See \`config.log' for more details" "$LINENO" 5; }
fi
-
-rm -f conftest$ac_cv_exeext
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5
+rm -f conftest conftest$ac_cv_exeext
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5
$as_echo "$ac_cv_exeext" >&6; }
rm -f conftest.$ac_ext
EXEEXT=$ac_cv_exeext
ac_exeext=$EXEEXT
-{ $as_echo "$as_me:$LINENO: checking for suffix of object files" >&5
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <stdio.h>
+int
+main ()
+{
+FILE *f = fopen ("conftest.out", "w");
+ return ferror (f) || fclose (f) != 0;
+
+ ;
+ return 0;
+}
+_ACEOF
+ac_clean_files="$ac_clean_files conftest.out"
+# Check that the compiler produces executables we can run. If not, either
+# the compiler is broken, or we cross compile.
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5
+$as_echo_n "checking whether we are cross compiling... " >&6; }
+if test "$cross_compiling" != yes; then
+ { { ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }
+ if { ac_try='./conftest$ac_cv_exeext'
+ { { case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; }; then
+ cross_compiling=no
+ else
+ if test "$cross_compiling" = maybe; then
+ cross_compiling=yes
+ else
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error $? "cannot run C compiled programs.
+If you meant to cross compile, use \`--host'.
+See \`config.log' for more details" "$LINENO" 5; }
+ fi
+ fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5
+$as_echo "$cross_compiling" >&6; }
+
+rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out
+ac_clean_files=$ac_clean_files_save
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5
$as_echo_n "checking for suffix of object files... " >&6; }
-if test "${ac_cv_objext+set}" = set; then
+if ${ac_cv_objext+:} false; then :
$as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
@@ -2336,17 +2619,17 @@ main ()
}
_ACEOF
rm -f conftest.o conftest.obj
-if { (ac_try="$ac_compile"
+if { { ac_try="$ac_compile"
case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
(eval "$ac_compile") 2>&5
ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; then
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; then :
for ac_file in conftest.o conftest.obj conftest.*; do
test -f "$ac_file" || continue;
case $ac_file in
@@ -2359,31 +2642,23 @@ else
$as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
-{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: cannot compute suffix of object files: cannot compile
-See \`config.log' for more details." >&2;}
- { (exit 1); exit 1; }; }; }
+as_fn_error $? "cannot compute suffix of object files: cannot compile
+See \`config.log' for more details" "$LINENO" 5; }
fi
-
rm -f conftest.$ac_cv_objext conftest.$ac_ext
fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_objext" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5
$as_echo "$ac_cv_objext" >&6; }
OBJEXT=$ac_cv_objext
ac_objext=$OBJEXT
-{ $as_echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5
$as_echo_n "checking whether we are using the GNU C compiler... " >&6; }
-if test "${ac_cv_c_compiler_gnu+set}" = set; then
+if ${ac_cv_c_compiler_gnu+:} false; then :
$as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
@@ -2397,37 +2672,16 @@ main ()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
ac_compiler_gnu=yes
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_compiler_gnu=no
+ ac_compiler_gnu=no
fi
-
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
ac_cv_c_compiler_gnu=$ac_compiler_gnu
fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5
$as_echo "$ac_cv_c_compiler_gnu" >&6; }
if test $ac_compiler_gnu = yes; then
GCC=yes
@@ -2436,20 +2690,16 @@ else
fi
ac_test_CFLAGS=${CFLAGS+set}
ac_save_CFLAGS=$CFLAGS
-{ $as_echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
$as_echo_n "checking whether $CC accepts -g... " >&6; }
-if test "${ac_cv_prog_cc_g+set}" = set; then
+if ${ac_cv_prog_cc_g+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_save_c_werror_flag=$ac_c_werror_flag
ac_c_werror_flag=yes
ac_cv_prog_cc_g=no
CFLAGS="-g"
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
@@ -2460,35 +2710,11 @@ main ()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
ac_cv_prog_cc_g=yes
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- CFLAGS=""
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ CFLAGS=""
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
@@ -2499,36 +2725,12 @@ main ()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
- :
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+if ac_fn_c_try_compile "$LINENO"; then :
- ac_c_werror_flag=$ac_save_c_werror_flag
+else
+ ac_c_werror_flag=$ac_save_c_werror_flag
CFLAGS="-g"
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
@@ -2539,42 +2741,17 @@ main ()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
ac_cv_prog_cc_g=yes
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-
fi
-
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
ac_c_werror_flag=$ac_save_c_werror_flag
fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5
$as_echo "$ac_cv_prog_cc_g" >&6; }
if test "$ac_test_CFLAGS" = set; then
CFLAGS=$ac_save_CFLAGS
@@ -2591,18 +2768,14 @@ else
CFLAGS=
fi
fi
-{ $as_echo "$as_me:$LINENO: checking for $CC option to accept ISO C89" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5
$as_echo_n "checking for $CC option to accept ISO C89... " >&6; }
-if test "${ac_cv_prog_cc_c89+set}" = set; then
+if ${ac_cv_prog_cc_c89+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_cv_prog_cc_c89=no
ac_save_CC=$CC
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <stdarg.h>
#include <stdio.h>
@@ -2659,32 +2832,9 @@ for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \
-Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
do
CC="$ac_save_CC $ac_arg"
- rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
+ if ac_fn_c_try_compile "$LINENO"; then :
ac_cv_prog_cc_c89=$ac_arg
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-
fi
-
rm -f core conftest.err conftest.$ac_objext
test "x$ac_cv_prog_cc_c89" != "xno" && break
done
@@ -2695,17 +2845,19 @@ fi
# AC_CACHE_VAL
case "x$ac_cv_prog_cc_c89" in
x)
- { $as_echo "$as_me:$LINENO: result: none needed" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
$as_echo "none needed" >&6; } ;;
xno)
- { $as_echo "$as_me:$LINENO: result: unsupported" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
$as_echo "unsupported" >&6; } ;;
*)
CC="$CC $ac_cv_prog_cc_c89"
- { $as_echo "$as_me:$LINENO: result: $ac_cv_prog_cc_c89" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5
$as_echo "$ac_cv_prog_cc_c89" >&6; } ;;
esac
+if test "x$ac_cv_prog_cc_c89" != xno; then :
+fi
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
@@ -2718,14 +2870,14 @@ ac_cpp='$CPP $CPPFLAGS'
ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
-{ $as_echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5
$as_echo_n "checking how to run the C preprocessor... " >&6; }
# On Suns, sometimes $CPP names a directory.
if test -n "$CPP" && test -d "$CPP"; then
CPP=
fi
if test -z "$CPP"; then
- if test "${ac_cv_prog_CPP+set}" = set; then
+ if ${ac_cv_prog_CPP+:} false; then :
$as_echo_n "(cached) " >&6
else
# Double quotes because CPP needs to be expanded
@@ -2740,11 +2892,7 @@ do
# <limits.h> exists even on freestanding compilers.
# On the NeXT, cc -E runs the code through the compiler's parser,
# not just through cpp. "Syntax error" is here to catch this case.
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#ifdef __STDC__
# include <limits.h>
@@ -2753,78 +2901,34 @@ cat >>conftest.$ac_ext <<_ACEOF
#endif
Syntax error
_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null && {
- test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
- test ! -s conftest.err
- }; then
- :
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+if ac_fn_c_try_cpp "$LINENO"; then :
+else
# Broken: fails on valid input.
continue
fi
-
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err conftest.i conftest.$ac_ext
# OK, works on sane cases. Now check whether nonexistent headers
# can be detected and how.
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <ac_nonexistent.h>
_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null && {
- test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
- test ! -s conftest.err
- }; then
+if ac_fn_c_try_cpp "$LINENO"; then :
# Broken: success on invalid input.
continue
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
# Passes both tests.
ac_preproc_ok=:
break
fi
-
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err conftest.i conftest.$ac_ext
done
# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then
+rm -f conftest.i conftest.err conftest.$ac_ext
+if $ac_preproc_ok; then :
break
fi
@@ -2836,7 +2940,7 @@ fi
else
ac_cv_prog_CPP=$CPP
fi
-{ $as_echo "$as_me:$LINENO: result: $CPP" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5
$as_echo "$CPP" >&6; }
ac_preproc_ok=false
for ac_c_preproc_warn_flag in '' yes
@@ -2847,11 +2951,7 @@ do
# <limits.h> exists even on freestanding compilers.
# On the NeXT, cc -E runs the code through the compiler's parser,
# not just through cpp. "Syntax error" is here to catch this case.
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#ifdef __STDC__
# include <limits.h>
@@ -2860,87 +2960,40 @@ cat >>conftest.$ac_ext <<_ACEOF
#endif
Syntax error
_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null && {
- test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
- test ! -s conftest.err
- }; then
- :
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+if ac_fn_c_try_cpp "$LINENO"; then :
+else
# Broken: fails on valid input.
continue
fi
-
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err conftest.i conftest.$ac_ext
# OK, works on sane cases. Now check whether nonexistent headers
# can be detected and how.
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <ac_nonexistent.h>
_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null && {
- test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
- test ! -s conftest.err
- }; then
+if ac_fn_c_try_cpp "$LINENO"; then :
# Broken: success on invalid input.
continue
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
# Passes both tests.
ac_preproc_ok=:
break
fi
-
-rm -f conftest.err conftest.$ac_ext
+rm -f conftest.err conftest.i conftest.$ac_ext
done
# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then
- :
+rm -f conftest.i conftest.err conftest.$ac_ext
+if $ac_preproc_ok; then :
+
else
- { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check
-See \`config.log' for more details." >&2;}
- { (exit 1); exit 1; }; }; }
+as_fn_error $? "C preprocessor \"$CPP\" fails sanity check
+See \`config.log' for more details" "$LINENO" 5; }
fi
ac_ext=c
@@ -2951,9 +3004,9 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
-{ $as_echo "$as_me:$LINENO: checking for grep that handles long lines and -e" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5
$as_echo_n "checking for grep that handles long lines and -e... " >&6; }
-if test "${ac_cv_path_GREP+set}" = set; then
+if ${ac_cv_path_GREP+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -z "$GREP"; then
@@ -2964,7 +3017,7 @@ for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_prog in grep ggrep; do
+ for ac_prog in grep ggrep; do
for ac_exec_ext in '' $ac_executable_extensions; do
ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
{ test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue
@@ -2984,7 +3037,7 @@ case `"$ac_path_GREP" --version 2>&1` in
$as_echo 'GREP' >> "conftest.nl"
"$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break
diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
- ac_count=`expr $ac_count + 1`
+ as_fn_arith $ac_count + 1 && ac_count=$as_val
if test $ac_count -gt ${ac_path_GREP_max-0}; then
# Best one so far, save it but keep looking for a better one
ac_cv_path_GREP="$ac_path_GREP"
@@ -2999,26 +3052,24 @@ esac
$ac_path_GREP_found && break 3
done
done
-done
+ done
IFS=$as_save_IFS
if test -z "$ac_cv_path_GREP"; then
- { { $as_echo "$as_me:$LINENO: error: no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5
-$as_echo "$as_me: error: no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;}
- { (exit 1); exit 1; }; }
+ as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
fi
else
ac_cv_path_GREP=$GREP
fi
fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_path_GREP" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5
$as_echo "$ac_cv_path_GREP" >&6; }
GREP="$ac_cv_path_GREP"
-{ $as_echo "$as_me:$LINENO: checking for egrep" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
$as_echo_n "checking for egrep... " >&6; }
-if test "${ac_cv_path_EGREP+set}" = set; then
+if ${ac_cv_path_EGREP+:} false; then :
$as_echo_n "(cached) " >&6
else
if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
@@ -3032,7 +3083,7 @@ for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_prog in egrep; do
+ for ac_prog in egrep; do
for ac_exec_ext in '' $ac_executable_extensions; do
ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
{ test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue
@@ -3052,7 +3103,7 @@ case `"$ac_path_EGREP" --version 2>&1` in
$as_echo 'EGREP' >> "conftest.nl"
"$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
- ac_count=`expr $ac_count + 1`
+ as_fn_arith $ac_count + 1 && ac_count=$as_val
if test $ac_count -gt ${ac_path_EGREP_max-0}; then
# Best one so far, save it but keep looking for a better one
ac_cv_path_EGREP="$ac_path_EGREP"
@@ -3067,12 +3118,10 @@ esac
$ac_path_EGREP_found && break 3
done
done
-done
+ done
IFS=$as_save_IFS
if test -z "$ac_cv_path_EGREP"; then
- { { $as_echo "$as_me:$LINENO: error: no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5
-$as_echo "$as_me: error: no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;}
- { (exit 1); exit 1; }; }
+ as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
fi
else
ac_cv_path_EGREP=$EGREP
@@ -3080,29 +3129,25 @@ fi
fi
fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_path_EGREP" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5
$as_echo "$ac_cv_path_EGREP" >&6; }
EGREP="$ac_cv_path_EGREP"
if test $ac_cv_c_compiler_gnu = yes; then
- { $as_echo "$as_me:$LINENO: checking whether $CC needs -traditional" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC needs -traditional" >&5
$as_echo_n "checking whether $CC needs -traditional... " >&6; }
-if test "${ac_cv_prog_gcc_traditional+set}" = set; then
+if ${ac_cv_prog_gcc_traditional+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_pattern="Autoconf.*'x'"
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <sgtty.h>
Autoconf TIOCGETP
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "$ac_pattern" >/dev/null 2>&1; then
+ $EGREP "$ac_pattern" >/dev/null 2>&1; then :
ac_cv_prog_gcc_traditional=yes
else
ac_cv_prog_gcc_traditional=no
@@ -3111,41 +3156,33 @@ rm -f conftest*
if test $ac_cv_prog_gcc_traditional = no; then
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <termio.h>
Autoconf TCGETA
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "$ac_pattern" >/dev/null 2>&1; then
+ $EGREP "$ac_pattern" >/dev/null 2>&1; then :
ac_cv_prog_gcc_traditional=yes
fi
rm -f conftest*
fi
fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_prog_gcc_traditional" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_gcc_traditional" >&5
$as_echo "$ac_cv_prog_gcc_traditional" >&6; }
if test $ac_cv_prog_gcc_traditional = yes; then
CC="$CC -traditional"
fi
fi
-{ $as_echo "$as_me:$LINENO: checking for library containing strerror" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing strerror" >&5
$as_echo_n "checking for library containing strerror... " >&6; }
-if test "${ac_cv_search_strerror+set}" = set; then
+if ${ac_cv_search_strerror+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
/* Override any GCC internal prototype to avoid an error.
@@ -3170,105 +3207,45 @@ for ac_lib in '' cposix; do
ac_res=-l$ac_lib
LIBS="-l$ac_lib $ac_func_search_save_LIBS"
fi
- rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
+ if ac_fn_c_try_link "$LINENO"; then :
ac_cv_search_strerror=$ac_res
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-
fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext
- if test "${ac_cv_search_strerror+set}" = set; then
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if ${ac_cv_search_strerror+:} false; then :
break
fi
done
-if test "${ac_cv_search_strerror+set}" = set; then
- :
+if ${ac_cv_search_strerror+:} false; then :
+
else
ac_cv_search_strerror=no
fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_search_strerror" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_strerror" >&5
$as_echo "$ac_cv_search_strerror" >&6; }
ac_res=$ac_cv_search_strerror
-if test "$ac_res" != no; then
+if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
fi
-if test "$cross_compiling" = yes; then
- { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+if test "$cross_compiling" = yes; then :
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: cannot run test program while cross compiling
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: cannot run test program while cross compiling
-See \`config.log' for more details." >&2;}
- { (exit 1); exit 1; }; }; }
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+as_fn_error $? "cannot run test program while cross compiling
+See \`config.log' for more details" "$LINENO" 5; }
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
main(){exit(0);}
_ACEOF
-rm -f conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_try") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- :
-else
- $as_echo "$as_me: program exited with status $ac_status" >&5
-$as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+if ac_fn_c_try_run "$LINENO"; then :
-( exit $ac_status )
+else
if test $CC != cc ; then
echo "Your $CC failed - restarting with CC=cc" 1>&6
@@ -3281,88 +3258,44 @@ exec $0 $configure_args
fi
fi
-rm -rf conftest.dSYM
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
-
-if test "$cross_compiling" = yes; then
- { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+if test "$cross_compiling" = yes; then :
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: cannot run test program while cross compiling
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: cannot run test program while cross compiling
-See \`config.log' for more details." >&2;}
- { (exit 1); exit 1; }; }; }
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+as_fn_error $? "cannot run test program while cross compiling
+See \`config.log' for more details" "$LINENO" 5; }
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
main(){exit(0);}
_ACEOF
-rm -f conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_try") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- :
-else
- $as_echo "$as_me: program exited with status $ac_status" >&5
-$as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+if ac_fn_c_try_run "$LINENO"; then :
-( exit $ac_status )
-exec 5>&2
+else
+ exec 5>&2
eval $ac_link
echo "CC=$CC; CFLAGS=$CFLAGS; LIBS=$LIBS;" 1>&6
echo "$ac_compile" 1>&6
-{ { $as_echo "$as_me:$LINENO: error: Can't run the compiler - sorry" >&5
-$as_echo "$as_me: error: Can't run the compiler - sorry" >&2;}
- { (exit 1); exit 1; }; }
+as_fn_error $? "Can't run the compiler - sorry" "$LINENO" 5
fi
-rm -rf conftest.dSYM
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
-
-if test "$cross_compiling" = yes; then
- { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+if test "$cross_compiling" = yes; then :
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: cannot run test program while cross compiling
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: cannot run test program while cross compiling
-See \`config.log' for more details." >&2;}
- { (exit 1); exit 1; }; }; }
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+as_fn_error $? "cannot run test program while cross compiling
+See \`config.log' for more details" "$LINENO" 5; }
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
main()
@@ -3372,50 +3305,21 @@ main()
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_try") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- { { $as_echo "$as_me:$LINENO: error: Your compiler does not set the exit status - sorry" >&5
-$as_echo "$as_me: error: Your compiler does not set the exit status - sorry" >&2;}
- { (exit 1); exit 1; }; }
-else
- $as_echo "$as_me: program exited with status $ac_status" >&5
-$as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
+if ac_fn_c_try_run "$LINENO"; then :
+ as_fn_error $? "Your compiler does not set the exit status - sorry" "$LINENO" 5
fi
-rm -rf conftest.dSYM
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
-
for ac_prog in gawk mawk nawk awk
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_AWK+set}" = set; then
+if ${ac_cv_prog_AWK+:} false; then :
$as_echo_n "(cached) " >&6
else
if test -n "$AWK"; then
@@ -3426,24 +3330,24 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_AWK="$ac_prog"
- $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
IFS=$as_save_IFS
fi
fi
AWK=$ac_cv_prog_AWK
if test -n "$AWK"; then
- { $as_echo "$as_me:$LINENO: result: $AWK" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5
$as_echo "$AWK" >&6; }
else
- { $as_echo "$as_me:$LINENO: result: no" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
fi
@@ -3453,19 +3357,15 @@ done
if test -f etc/toolcheck; then
-{ $as_echo "$as_me:$LINENO: checking for buggy tools..." >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for buggy tools..." >&5
$as_echo "$as_me: checking for buggy tools..." >&6;}
sh etc/toolcheck 1>&6
fi
-{ $as_echo "$as_me:$LINENO: checking for System V..." >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for System V..." >&5
$as_echo "$as_me: checking for System V..." >&6;}
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <sys/types.h>
#include <signal.h>
@@ -3478,44 +3378,17 @@ int x = SIGCHLD | FNDELAY;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
- :
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+if ac_fn_c_try_compile "$LINENO"; then :
- cat >>confdefs.h <<\_ACEOF
-#define SYSV 1
-_ACEOF
+else
+ $as_echo "#define SYSV 1" >>confdefs.h
fi
-
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ $as_echo "$as_me:$LINENO: checking for Solaris 2.x..." >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for Solaris 2.x..." >&5
$as_echo "$as_me: checking for Solaris 2.x..." >&6;}
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#if defined(SVR4) && defined(sun)
yes
@@ -3523,20 +3396,16 @@ cat >>conftest.$ac_ext <<_ACEOF
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "yes" >/dev/null 2>&1; then
+ $EGREP "yes" >/dev/null 2>&1; then :
LIBS="$LIBS -lsocket -lnsl -lkstat"
fi
rm -f conftest*
-{ $as_echo "$as_me:$LINENO: checking select..." >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking select..." >&5
$as_echo "$as_me: checking select..." >&6;}
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
@@ -3547,40 +3416,13 @@ select(0, 0, 0, 0, 0);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
- :
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+if ac_fn_c_try_link "$LINENO"; then :
- LIBS="$LIBS -lnet -lnsl"
-{ $as_echo "$as_me:$LINENO: checking select with $LIBS..." >&5
+else
+ LIBS="$LIBS -lnet -lnsl"
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking select with $LIBS..." >&5
$as_echo "$as_me: checking select with $LIBS..." >&6;}
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
@@ -3591,63 +3433,27 @@ select(0, 0, 0, 0, 0);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
- :
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+if ac_fn_c_try_link "$LINENO"; then :
- { { $as_echo "$as_me:$LINENO: error: !!! no select - no screen" >&5
-$as_echo "$as_me: error: !!! no select - no screen" >&2;}
- { (exit 1); exit 1; }; }
+else
+ as_fn_error $? "!!! no select - no screen" "$LINENO" 5
fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
-
-{ $as_echo "$as_me:$LINENO: checking select return value..." >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking select return value..." >&5
$as_echo "$as_me: checking select return value..." >&6;}
-if test "$cross_compiling" = yes; then
- { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+if test "$cross_compiling" = yes; then :
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: cannot run test program while cross compiling
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: cannot run test program while cross compiling
-See \`config.log' for more details." >&2;}
- { (exit 1); exit 1; }; }; }
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+as_fn_error $? "cannot run test program while cross compiling
+See \`config.log' for more details" "$LINENO" 5; }
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <sys/types.h>
@@ -3749,55 +3555,22 @@ main()
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_try") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+if ac_fn_c_try_run "$LINENO"; then :
echo "- select is ok" 1>&6
else
- $as_echo "$as_me: program exited with status $ac_status" >&5
-$as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-echo "- select can't count" 1>&6
- cat >>confdefs.h <<\_ACEOF
-#define SELECT_BROKEN 1
-_ACEOF
+ echo "- select can't count" 1>&6
+ $as_echo "#define SELECT_BROKEN 1" >>confdefs.h
fi
-rm -rf conftest.dSYM
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
-
-{ $as_echo "$as_me:$LINENO: checking for tgetent..." >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for tgetent..." >&5
$as_echo "$as_me: checking for tgetent..." >&6;}
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
@@ -3808,41 +3581,14 @@ tgetent((char *)0, (char *)0);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
- :
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+if ac_fn_c_try_link "$LINENO"; then :
- olibs="$LIBS"
+else
+ olibs="$LIBS"
LIBS="-lcurses $olibs"
-{ $as_echo "$as_me:$LINENO: checking libcurses..." >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking libcurses..." >&5
$as_echo "$as_me: checking libcurses..." >&6;}
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
@@ -3859,40 +3605,13 @@ tgetent((char *)0, (char *)0);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
- :
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+if ac_fn_c_try_link "$LINENO"; then :
- LIBS="-ltermcap $olibs"
-{ $as_echo "$as_me:$LINENO: checking libtermcap..." >&5
+else
+ LIBS="-ltermcap $olibs"
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking libtermcap..." >&5
$as_echo "$as_me: checking libtermcap..." >&6;}
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
@@ -3903,40 +3622,13 @@ tgetent((char *)0, (char *)0);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
- :
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+if ac_fn_c_try_link "$LINENO"; then :
- LIBS="-ltermlib $olibs"
-{ $as_echo "$as_me:$LINENO: checking libtermlib..." >&5
+else
+ LIBS="-ltermlib $olibs"
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking libtermlib..." >&5
$as_echo "$as_me: checking libtermlib..." >&6;}
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
@@ -3947,40 +3639,13 @@ tgetent((char *)0, (char *)0);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
- :
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+if ac_fn_c_try_link "$LINENO"; then :
- LIBS="-lncurses $olibs"
-{ $as_echo "$as_me:$LINENO: checking libncurses..." >&5
+else
+ LIBS="-lncurses $olibs"
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking libncurses..." >&5
$as_echo "$as_me: checking libncurses..." >&6;}
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
@@ -3991,130 +3656,56 @@ tgetent((char *)0, (char *)0);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
- :
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+if ac_fn_c_try_link "$LINENO"; then :
- { { $as_echo "$as_me:$LINENO: error: !!! no tgetent - no screen" >&5
-$as_echo "$as_me: error: !!! no tgetent - no screen" >&2;}
- { (exit 1); exit 1; }; }
+else
+ as_fn_error $? "!!! no tgetent - no screen" "$LINENO" 5
fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
-
-if test "$cross_compiling" = yes; then
- { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+if test "$cross_compiling" = yes; then :
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: cannot run test program while cross compiling
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: cannot run test program while cross compiling
-See \`config.log' for more details." >&2;}
- { (exit 1); exit 1; }; }; }
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+as_fn_error $? "cannot run test program while cross compiling
+See \`config.log' for more details" "$LINENO" 5; }
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
+extern char *tgoto();
main()
{
exit(strcmp(tgoto("%p1%d", 0, 1), "1") ? 0 : 1);
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_try") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+if ac_fn_c_try_run "$LINENO"; then :
echo "- you use the termcap database" 1>&6
else
- $as_echo "$as_me: program exited with status $ac_status" >&5
-$as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-echo "- you use the terminfo database" 1>&6
- cat >>confdefs.h <<\_ACEOF
-#define TERMINFO 1
-_ACEOF
+ echo "- you use the terminfo database" 1>&6
+ $as_echo "#define TERMINFO 1" >>confdefs.h
fi
-rm -rf conftest.dSYM
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
-
-{ $as_echo "$as_me:$LINENO: checking ospeed..." >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking ospeed..." >&5
$as_echo "$as_me: checking ospeed..." >&6;}
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
extern short ospeed;
int
@@ -4125,60 +3716,27 @@ ospeed=5;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
- :
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+if ac_fn_c_try_link "$LINENO"; then :
- cat >>confdefs.h <<\_ACEOF
-#define NEED_OSPEED 1
-_ACEOF
+else
+ $as_echo "#define NEED_OSPEED 1" >>confdefs.h
fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
-
-{ $as_echo "$as_me:$LINENO: checking for /dev/ptc..." >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for /dev/ptc..." >&5
$as_echo "$as_me: checking for /dev/ptc..." >&6;}
if test -r /dev/ptc; then
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_DEV_PTC 1
-_ACEOF
+$as_echo "#define HAVE_DEV_PTC 1" >>confdefs.h
fi
-{ $as_echo "$as_me:$LINENO: checking for SVR4 ptys..." >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for SVR4 ptys..." >&5
$as_echo "$as_me: checking for SVR4 ptys..." >&6;}
sysvr4ptys=
if test -c /dev/ptmx ; then
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
@@ -4189,140 +3747,21 @@ ptsname(0);grantpt(0);unlockpt(0);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
- cat >>confdefs.h <<\_ACEOF
-#define HAVE_SVR4_PTYS 1
-_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+ $as_echo "#define HAVE_SVR4_PTYS 1" >>confdefs.h
sysvr4ptys=1
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-
fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
fi
-
for ac_func in getpt
-do
-as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5
-$as_echo_n "checking for $ac_func... " >&6; }
-if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then
- $as_echo_n "(cached) " >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
- For example, HP-UX 11i <limits.h> declares gettimeofday. */
-#define $ac_func innocuous_$ac_func
-
-/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $ac_func (); below.
- Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- <limits.h> exists even on freestanding compilers. */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
- to always fail with ENOSYS. Some functions are actually named
- something starting with __ and the normal name is an alias. */
-#if defined __stub_$ac_func || defined __stub___$ac_func
-choke me
-#endif
-
-int
-main ()
-{
-return $ac_func ();
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
- eval "$as_ac_var=yes"
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- eval "$as_ac_var=no"
-fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
-fi
-ac_res=`eval 'as_val=${'$as_ac_var'}
- $as_echo "$as_val"'`
- { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-as_val=`eval 'as_val=${'$as_ac_var'}
- $as_echo "$as_val"'`
- if test "x$as_val" = x""yes; then
+do :
+ ac_fn_c_check_func "$LINENO" "getpt" "ac_cv_func_getpt"
+if test "x$ac_cv_func_getpt" = xyes; then :
cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
+#define HAVE_GETPT 1
_ACEOF
fi
@@ -4330,117 +3769,23 @@ done
if test -z "$sysvr4ptys"; then
-
for ac_func in openpty
-do
-as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5
-$as_echo_n "checking for $ac_func... " >&6; }
-if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then
- $as_echo_n "(cached) " >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
- For example, HP-UX 11i <limits.h> declares gettimeofday. */
-#define $ac_func innocuous_$ac_func
-
-/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $ac_func (); below.
- Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- <limits.h> exists even on freestanding compilers. */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
- to always fail with ENOSYS. Some functions are actually named
- something starting with __ and the normal name is an alias. */
-#if defined __stub_$ac_func || defined __stub___$ac_func
-choke me
-#endif
-
-int
-main ()
-{
-return $ac_func ();
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
- eval "$as_ac_var=yes"
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- eval "$as_ac_var=no"
-fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
-fi
-ac_res=`eval 'as_val=${'$as_ac_var'}
- $as_echo "$as_val"'`
- { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-as_val=`eval 'as_val=${'$as_ac_var'}
- $as_echo "$as_val"'`
- if test "x$as_val" = x""yes; then
+do :
+ ac_fn_c_check_func "$LINENO" "openpty" "ac_cv_func_openpty"
+if test "x$ac_cv_func_openpty" = xyes; then :
cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
+#define HAVE_OPENPTY 1
_ACEOF
else
- { $as_echo "$as_me:$LINENO: checking for openpty in -lutil" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for openpty in -lutil" >&5
$as_echo_n "checking for openpty in -lutil... " >&6; }
-if test "${ac_cv_lib_util_openpty+set}" = set; then
+if ${ac_cv_lib_util_openpty+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lutil $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
/* Override any GCC internal prototype to avoid an error.
@@ -4458,46 +3803,19 @@ return openpty ();
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
+if ac_fn_c_try_link "$LINENO"; then :
ac_cv_lib_util_openpty=yes
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_cv_lib_util_openpty=no
+ ac_cv_lib_util_openpty=no
fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_util_openpty" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_util_openpty" >&5
$as_echo "$ac_cv_lib_util_openpty" >&6; }
-if test "x$ac_cv_lib_util_openpty" = x""yes; then
- cat >>confdefs.h <<\_ACEOF
-#define HAVE_OPENPTY 1
-_ACEOF
+if test "x$ac_cv_lib_util_openpty" = xyes; then :
+ $as_echo "#define HAVE_OPENPTY 1" >>confdefs.h
LIBS="$LIBS -lutil"
fi
@@ -4506,18 +3824,14 @@ done
fi
-{ $as_echo "$as_me:$LINENO: checking for ptyranges..." >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ptyranges..." >&5
$as_echo "$as_me: checking for ptyranges..." >&6;}
if test -d /dev/ptym ; then
pdir='/dev/ptym'
else
pdir='/dev'
fi
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#ifdef M_UNIX
yes;
@@ -4525,7 +3839,7 @@ cat >>conftest.$ac_ext <<_ACEOF
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "yes" >/dev/null 2>&1; then
+ $EGREP "yes" >/dev/null 2>&1; then :
ptys=`echo /dev/ptyp??`
else
ptys=`echo $pdir/pty??`
@@ -4547,13 +3861,13 @@ fi
# Check whether --with-pty-mode was given.
-if test "${with_pty_mode+set}" = set; then
+if test "${with_pty_mode+set}" = set; then :
withval=$with_pty_mode; ptymode="${withval}"
fi
# Check whether --with-pty-group was given.
-if test "${with_pty_group+set}" = set; then
+if test "${with_pty_group+set}" = set; then :
withval=$with_pty_group; ptygrp="${withval}"
fi
@@ -4569,23 +3883,16 @@ _ACEOF
else
-{ $as_echo "$as_me:$LINENO: checking default tty permissions/group..." >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking default tty permissions/group..." >&5
$as_echo "$as_me: checking default tty permissions/group..." >&6;}
rm -f conftest_grp
-if test "$cross_compiling" = yes; then
- { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+if test "$cross_compiling" = yes; then :
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: cannot run test program while cross compiling
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: cannot run test program while cross compiling
-See \`config.log' for more details." >&2;}
- { (exit 1); exit 1; }; }; }
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+as_fn_error $? "cannot run test program while cross compiling
+See \`config.log' for more details" "$LINENO" 5; }
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <sys/types.h>
@@ -4617,28 +3924,7 @@ main()
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_try") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+if ac_fn_c_try_run "$LINENO"; then :
if test -f conftest_grp; then
ptygrp=`cat conftest_grp`
@@ -4658,19 +3944,14 @@ _ACEOF
fi
else
- $as_echo "$as_me: program exited with status $ac_status" >&5
-$as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
WRITEPATH=''
XTERMPATH=''
# Extract the first word of "write", so it can be a program name with args.
set dummy write; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_WRITEPATH+set}" = set; then
+if ${ac_cv_path_WRITEPATH+:} false; then :
$as_echo_n "(cached) " >&6
else
case $WRITEPATH in
@@ -4683,14 +3964,14 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_path_WRITEPATH="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
IFS=$as_save_IFS
;;
@@ -4698,19 +3979,19 @@ esac
fi
WRITEPATH=$ac_cv_path_WRITEPATH
if test -n "$WRITEPATH"; then
- { $as_echo "$as_me:$LINENO: result: $WRITEPATH" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $WRITEPATH" >&5
$as_echo "$WRITEPATH" >&6; }
else
- { $as_echo "$as_me:$LINENO: result: no" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
fi
# Extract the first word of "xterm", so it can be a program name with args.
set dummy xterm; ac_word=$2
-{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_path_XTERMPATH+set}" = set; then
+if ${ac_cv_path_XTERMPATH+:} false; then :
$as_echo_n "(cached) " >&6
else
case $XTERMPATH in
@@ -4723,14 +4004,14 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_path_XTERMPATH="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
IFS=$as_save_IFS
;;
@@ -4738,10 +4019,10 @@ esac
fi
XTERMPATH=$ac_cv_path_XTERMPATH
if test -n "$XTERMPATH"; then
- { $as_echo "$as_me:$LINENO: result: $XTERMPATH" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $XTERMPATH" >&5
$as_echo "$XTERMPATH" >&6; }
else
- { $as_echo "$as_me:$LINENO: result: no" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
fi
@@ -4787,11 +4068,10 @@ _ACEOF
fi
-rm -rf conftest.dSYM
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
-
rm -f conftest_grp
fi
@@ -4799,20 +4079,14 @@ if test -n "$posix" ; then
echo "assuming posix signal definition" 1>&6
-cat >>confdefs.h <<\_ACEOF
-#define SIGVOID 1
-_ACEOF
+$as_echo "#define SIGVOID 1" >>confdefs.h
else
-{ $as_echo "$as_me:$LINENO: checking return type of signal handlers..." >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking return type of signal handlers..." >&5
$as_echo "$as_me: checking return type of signal handlers..." >&6;}
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <sys/types.h>
#include <signal.h>
@@ -4828,43 +4102,14 @@ int i;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
- cat >>confdefs.h <<\_ACEOF
-#define SIGVOID 1
-_ACEOF
-
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
+if ac_fn_c_try_compile "$LINENO"; then :
+ $as_echo "#define SIGVOID 1" >>confdefs.h
fi
-
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ $as_echo "$as_me:$LINENO: checking sigset..." >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking sigset..." >&5
$as_echo "$as_me: checking sigset..." >&6;}
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <sys/types.h>
@@ -4884,57 +4129,21 @@ sigset(0, (int (*)())0);
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- $as_test_x conftest$ac_exeext
- }; then
- cat >>confdefs.h <<\_ACEOF
-#define USESIGSET 1
-_ACEOF
-
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
+if ac_fn_c_try_link "$LINENO"; then :
+ $as_echo "#define USESIGSET 1" >>confdefs.h
fi
-
-rm -rf conftest.dSYM
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
- conftest$ac_exeext conftest.$ac_ext
-{ $as_echo "$as_me:$LINENO: checking signal implementation..." >&5
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking signal implementation..." >&5
$as_echo "$as_me: checking signal implementation..." >&6;}
-if test "$cross_compiling" = yes; then
- { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5
+if test "$cross_compiling" = yes; then :
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-{ { $as_echo "$as_me:$LINENO: error: cannot run test program while cross compiling
-See \`config.log' for more details." >&5
-$as_echo "$as_me: error: cannot run test program while cross compiling
-See \`config.log' for more details." >&2;}
- { (exit 1); exit 1; }; }; }
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+as_fn_error $? "cannot run test program while cross compiling
+See \`config.log' for more details" "$LINENO" 5; }
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <sys/types.h>
@@ -4971,58 +4180,25 @@ main()
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_try") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- :
-else
- $as_echo "$as_me: program exited with status $ac_status" >&5
-$as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+if ac_fn_c_try_run "$LINENO"; then :
-( exit $ac_status )
-cat >>confdefs.h <<\_ACEOF
-#define SYSVSIGS 1
-_ACEOF
+else
+ $as_echo "#define SYSVSIGS 1" >>confdefs.h
fi
-rm -rf conftest.dSYM
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
-
fi
-{ $as_echo "$as_me:$LINENO: checking for ANSI C header files" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5
$as_echo_n "checking for ANSI C header files... " >&6; }
-if test "${ac_cv_header_stdc+set}" = set; then
+if ${ac_cv_header_stdc+:} false; then :
$as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <stdlib.h>
#include <stdarg.h>
@@ -5037,48 +4213,23 @@ main ()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
ac_cv_header_stdc=yes
else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_cv_header_stdc=no
+ ac_cv_header_stdc=no
fi
-
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
if test $ac_cv_header_stdc = yes; then
# SunOS 4.x string.h does not declare mem*, contrary to ANSI.
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <string.h>
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "memchr" >/dev/null 2>&1; then
- :
+ $EGREP "memchr" >/dev/null 2>&1; then :
+
else
ac_cv_header_stdc=no
fi
@@ -5088,18 +4239,14 @@ fi
if test $ac_cv_header_stdc = yes; then
# ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <stdlib.h>
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "free" >/dev/null 2>&1; then
- :
+ $EGREP "free" >/dev/null 2>&1; then :
+
else
ac_cv_header_stdc=no
fi
@@ -5109,14 +4256,10 @@ fi
if test $ac_cv_header_stdc = yes; then
# /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
- if test "$cross_compiling" = yes; then
+ if test "$cross_compiling" = yes; then :
:
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <ctype.h>
#include <stdlib.h>
@@ -5143,118 +4286,33 @@ main ()
return 0;
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_link") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_try") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- :
-else
- $as_echo "$as_me: program exited with status $ac_status" >&5
-$as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+if ac_fn_c_try_run "$LINENO"; then :
-( exit $ac_status )
-ac_cv_header_stdc=no
+else
+ ac_cv_header_stdc=no
fi
-rm -rf conftest.dSYM
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
-
fi
fi
-{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5
$as_echo "$ac_cv_header_stdc" >&6; }
if test $ac_cv_header_stdc = yes; then
-cat >>confdefs.h <<\_ACEOF
-#define STDC_HEADERS 1
-_ACEOF
+$as_echo "#define STDC_HEADERS 1" >>confdefs.h
fi
# On IRIX 5.3, sys/types and inttypes.h are conflicting.
-
-
-
-
-
-
-
-
-
for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
inttypes.h stdint.h unistd.h
-do
-as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
-$as_echo_n "checking for $ac_header... " >&6; }
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
- $as_echo_n "(cached) " >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-$ac_includes_default
-
-#include <$ac_header>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
- eval "$as_ac_Header=yes"
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- eval "$as_ac_Header=no"
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-ac_res=`eval 'as_val=${'$as_ac_Header'}
- $as_echo "$as_val"'`
- { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-as_val=`eval 'as_val=${'$as_ac_Header'}
- $as_echo "$as_val"'`
- if test "x$as_val" = x""yes; then
+do :
+ as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
+ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default
+"
+if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
cat >>confdefs.h <<_ACEOF
#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
_ACEOF
@@ -5264,147 +4322,25 @@ fi
done
-
-
-for ac_header in sys/stropts.h sys/wait.h
-do
-as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
- { $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
-$as_echo_n "checking for $ac_header... " >&6; }
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
- $as_echo_n "(cached) " >&6
-fi
-ac_res=`eval 'as_val=${'$as_ac_Header'}
- $as_echo "$as_val"'`
- { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-else
- # Is the header compilable?
-{ $as_echo "$as_me:$LINENO: checking $ac_header usability" >&5
-$as_echo_n "checking $ac_header usability... " >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-$ac_includes_default
-#include <$ac_header>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
- ac_header_compiler=yes
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_header_compiler=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-$as_echo "$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ $as_echo "$as_me:$LINENO: checking $ac_header presence" >&5
-$as_echo_n "checking $ac_header presence... " >&6; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-#include <$ac_header>
+for ac_header in sys/stropts.h sys/wait.h sgtty.h sys/select.h
+do :
+ as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
+ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
+if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
+ cat >>confdefs.h <<_ACEOF
+#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
_ACEOF
-if { (ac_try="$ac_cpp conftest.$ac_ext"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
-$as_echo "$ac_try_echo") >&5
- (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null && {
- test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
- test ! -s conftest.err
- }; then
- ac_header_preproc=yes
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
- ac_header_preproc=no
fi
-rm -f conftest.err conftest.$ac_ext
-{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-$as_echo "$ac_header_preproc" >&6; }
-
-# So? What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
- yes:no: )
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-$as_echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-$as_echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
- ac_header_preproc=yes
- ;;
- no:yes:* )
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-$as_echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
-$as_echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-$as_echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
-$as_echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-$as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
- { $as_echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-$as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
-
- ;;
-esac
-{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5
-$as_echo_n "checking for $ac_header... " >&6; }
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
- $as_echo_n "(cached) " >&6
-else
- eval "$as_ac_Header=\$ac_header_preproc"
-fi
-ac_res=`eval 'as_val=${'$as_ac_Header'}
- $as_echo "$as_val"'`
- { $as_echo "$as_me:$LINENO: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
+done
-fi
-as_val=`eval 'as_val=${'$as_ac_Header'}
- $as_echo "$as_val"'`
- if test "x$as_val" = x""yes; then
+for ac_header in term.h
+do :
+ ac_fn_c_check_header_mongrel "$LINENO" "term.h" "ac_cv_header_term_h" "$ac_includes_default"
+if test "x$ac_cv_header_term_h" = xyes; then :
cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
+#define HAVE_TERM_H 1
_ACEOF
fi
@@ -5441,13 +4377,13 @@ _ACEOF
case $ac_val in #(
*${as_nl}*)
case $ac_var in #(
- *_cv_*) { $as_echo "$as_me:$LINENO: WARNING: cache variable $ac_var contains a newline" >&5
+ *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
esac
case $ac_var in #(
_ | IFS | as_nl) ;; #(
BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
- *) $as_unset $ac_var ;;
+ *) { eval $ac_var=; unset $ac_var;} ;;
esac ;;
esac
done
@@ -5455,8 +4391,8 @@ $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
(set) 2>&1 |
case $as_nl`(ac_space=' '; set) 2>&1` in #(
*${as_nl}ac_space=\ *)
- # `set' does not quote correctly, so add quotes (double-quote
- # substitution turns \\\\ into \\, and sed turns \\ into \).
+ # `set' does not quote correctly, so add quotes: double-quote
+ # substitution turns \\\\ into \\, and sed turns \\ into \.
sed -n \
"s/'/'\\\\''/g;
s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
@@ -5478,12 +4414,23 @@ $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
:end' >>confcache
if diff "$cache_file" confcache >/dev/null 2>&1; then :; else
if test -w "$cache_file"; then
- test "x$cache_file" != "x/dev/null" &&
- { $as_echo "$as_me:$LINENO: updating cache $cache_file" >&5
+ if test "x$cache_file" != "x/dev/null"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5
$as_echo "$as_me: updating cache $cache_file" >&6;}
- cat confcache >$cache_file
+ if test ! -f "$cache_file" || test -h "$cache_file"; then
+ cat confcache >"$cache_file"
+ else
+ case $cache_file in #(
+ */* | ?:*)
+ mv -f confcache "$cache_file"$$ &&
+ mv -f "$cache_file"$$ "$cache_file" ;; #(
+ *)
+ mv -f confcache "$cache_file" ;;
+ esac
+ fi
+ fi
else
- { $as_echo "$as_me:$LINENO: not updating unwritable cache $cache_file" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5
$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;}
fi
fi
@@ -5497,14 +4444,15 @@ DEFS=-DHAVE_CONFIG_H
ac_libobjs=
ac_ltlibobjs=
+U=
for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
# 1. Remove the extension, and $U if already installed.
ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'
ac_i=`$as_echo "$ac_i" | sed "$ac_script"`
# 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR
# will be set to the directory where LIBOBJS objects are built.
- ac_libobjs="$ac_libobjs \${LIBOBJDIR}$ac_i\$U.$ac_objext"
- ac_ltlibobjs="$ac_ltlibobjs \${LIBOBJDIR}$ac_i"'$U.lo'
+ as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext"
+ as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo'
done
LIBOBJS=$ac_libobjs
@@ -5512,13 +4460,14 @@ LTLIBOBJS=$ac_ltlibobjs
-: ${CONFIG_STATUS=./config.status}
+: "${CONFIG_STATUS=./config.status}"
ac_write_fail=0
ac_clean_files_save=$ac_clean_files
ac_clean_files="$ac_clean_files $CONFIG_STATUS"
-{ $as_echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5
$as_echo "$as_me: creating $CONFIG_STATUS" >&6;}
-cat >$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+as_write_fail=0
+cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1
#! $SHELL
# Generated by $as_me.
# Run this file to recreate the current configuration.
@@ -5528,17 +4477,18 @@ cat >$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
debug=false
ac_cs_recheck=false
ac_cs_silent=false
-SHELL=\${CONFIG_SHELL-$SHELL}
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-## --------------------- ##
-## M4sh Initialization. ##
-## --------------------- ##
+SHELL=\${CONFIG_SHELL-$SHELL}
+export SHELL
+_ASEOF
+cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1
+## -------------------- ##
+## M4sh Initialization. ##
+## -------------------- ##
# Be more Bourne compatible
DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
emulate sh
NULLCMD=:
# Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
@@ -5546,23 +4496,15 @@ if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
alias -g '${1+"$@"}'='"$@"'
setopt NO_GLOB_SUBST
else
- case `(set -o) 2>/dev/null` in
- *posix*) set -o posix ;;
+ case `(set -o) 2>/dev/null` in #(
+ *posix*) :
+ set -o posix ;; #(
+ *) :
+ ;;
esac
-
fi
-
-
-# PATH needs CR
-# Avoid depending upon Character Ranges.
-as_cr_letters='abcdefghijklmnopqrstuvwxyz'
-as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
-as_cr_Letters=$as_cr_letters$as_cr_LETTERS
-as_cr_digits='0123456789'
-as_cr_alnum=$as_cr_Letters$as_cr_digits
-
as_nl='
'
export as_nl
@@ -5570,7 +4512,13 @@ export as_nl
as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
-if (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
+# Prefer a ksh shell builtin over an external printf program on Solaris,
+# but without wasting forks for bash or zsh.
+if test -z "$BASH_VERSION$ZSH_VERSION" \
+ && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
+ as_echo='print -r --'
+ as_echo_n='print -rn --'
+elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
as_echo='printf %s\n'
as_echo_n='printf %s'
else
@@ -5581,7 +4529,7 @@ else
as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
as_echo_n_body='eval
arg=$1;
- case $arg in
+ case $arg in #(
*"$as_nl"*)
expr "X$arg" : "X\\(.*\\)$as_nl";
arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
@@ -5604,13 +4552,6 @@ if test "${PATH_SEPARATOR+set}" != set; then
}
fi
-# Support unset when possible.
-if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
- as_unset=unset
-else
- as_unset=false
-fi
-
# IFS
# We need space, tab and new line, in precisely that order. Quoting is
@@ -5620,15 +4561,16 @@ fi
IFS=" "" $as_nl"
# Find who we are. Look in the path if we contain no directory separator.
-case $0 in
+as_myself=
+case $0 in #((
*[\\/]* ) as_myself=$0 ;;
*) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
-done
+ test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
+ done
IFS=$as_save_IFS
;;
@@ -5640,12 +4582,16 @@ if test "x$as_myself" = x; then
fi
if test ! -f "$as_myself"; then
$as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
- { (exit 1); exit 1; }
+ exit 1
fi
-# Work around bugs in pre-3.0 UWIN ksh.
-for as_var in ENV MAIL MAILPATH
-do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
+# Unset variables that we do not need and which cause bugs (e.g. in
+# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1"
+# suppresses any "Segmentation fault" message there. '((' could
+# trigger a bug in pdksh 5.2.14.
+for as_var in BASH_ENV ENV MAIL MAILPATH
+do eval test x\${$as_var+set} = xset \
+ && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
done
PS1='$ '
PS2='> '
@@ -5657,7 +4603,89 @@ export LC_ALL
LANGUAGE=C
export LANGUAGE
-# Required to use basename.
+# CDPATH.
+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
+
+
+# as_fn_error STATUS ERROR [LINENO LOG_FD]
+# ----------------------------------------
+# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are
+# provided, also output the error to LOG_FD, referencing LINENO. Then exit the
+# script with STATUS, using 1 if that was 0.
+as_fn_error ()
+{
+ as_status=$1; test $as_status -eq 0 && as_status=1
+ if test "$4"; then
+ as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
+ fi
+ $as_echo "$as_me: error: $2" >&2
+ as_fn_exit $as_status
+} # as_fn_error
+
+
+# as_fn_set_status STATUS
+# -----------------------
+# Set $? to STATUS, without forking.
+as_fn_set_status ()
+{
+ return $1
+} # as_fn_set_status
+
+# as_fn_exit STATUS
+# -----------------
+# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
+as_fn_exit ()
+{
+ set +e
+ as_fn_set_status $1
+ exit $1
+} # as_fn_exit
+
+# as_fn_unset VAR
+# ---------------
+# Portably unset VAR.
+as_fn_unset ()
+{
+ { eval $1=; unset $1;}
+}
+as_unset=as_fn_unset
+# as_fn_append VAR VALUE
+# ----------------------
+# Append the text in VALUE to the end of the definition contained in VAR. Take
+# advantage of any shell optimizations that allow amortized linear growth over
+# repeated appends, instead of the typical quadratic growth present in naive
+# implementations.
+if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
+ eval 'as_fn_append ()
+ {
+ eval $1+=\$2
+ }'
+else
+ as_fn_append ()
+ {
+ eval $1=\$$1\$2
+ }
+fi # as_fn_append
+
+# as_fn_arith ARG...
+# ------------------
+# Perform arithmetic evaluation on the ARGs, and store the result in the
+# global $as_val. Take advantage of shells that can avoid forks. The arguments
+# must be portable across $(()) and expr.
+if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
+ eval 'as_fn_arith ()
+ {
+ as_val=$(( $* ))
+ }'
+else
+ as_fn_arith ()
+ {
+ as_val=`expr "$@" || test $? -eq 1`
+ }
+fi # as_fn_arith
+
+
if expr a : '\(a\)' >/dev/null 2>&1 &&
test "X`expr 00001 : '.*\(...\)'`" = X001; then
as_expr=expr
@@ -5671,8 +4699,12 @@ else
as_basename=false
fi
+if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
+ as_dirname=dirname
+else
+ as_dirname=false
+fi
-# Name of the executable.
as_me=`$as_basename -- "$0" ||
$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
X"$0" : 'X\(//\)$' \| \
@@ -5692,76 +4724,25 @@ $as_echo X/"$0" |
}
s/.*/./; q'`
-# CDPATH.
-$as_unset CDPATH
-
-
-
- as_lineno_1=$LINENO
- as_lineno_2=$LINENO
- test "x$as_lineno_1" != "x$as_lineno_2" &&
- test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || {
-
- # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
- # uniformly replaced by the line number. The first 'sed' inserts a
- # line-number line after each line using $LINENO; the second 'sed'
- # does the real work. The second script uses 'N' to pair each
- # line-number line with the line containing $LINENO, and appends
- # trailing '-' during substitution so that $LINENO is not a special
- # case at line end.
- # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
- # scripts with optimization help from Paolo Bonzini. Blame Lee
- # E. McMahon (1931-1989) for sed's syntax. :-)
- sed -n '
- p
- /[$]LINENO/=
- ' <$as_myself |
- sed '
- s/[$]LINENO.*/&-/
- t lineno
- b
- :lineno
- N
- :loop
- s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
- t loop
- s/-\n.*//
- ' >$as_me.lineno &&
- chmod +x "$as_me.lineno" ||
- { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2
- { (exit 1); exit 1; }; }
-
- # Don't try to exec as it changes $[0], causing all sort of problems
- # (the dirname of $[0] is not the place where we might find the
- # original and so on. Autoconf is especially sensitive to this).
- . "./$as_me.lineno"
- # Exit status is that of the last command.
- exit
-}
-
-
-if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
- as_dirname=dirname
-else
- as_dirname=false
-fi
+# Avoid depending upon Character Ranges.
+as_cr_letters='abcdefghijklmnopqrstuvwxyz'
+as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
+as_cr_Letters=$as_cr_letters$as_cr_LETTERS
+as_cr_digits='0123456789'
+as_cr_alnum=$as_cr_Letters$as_cr_digits
ECHO_C= ECHO_N= ECHO_T=
-case `echo -n x` in
+case `echo -n x` in #(((((
-n*)
- case `echo 'x\c'` in
+ case `echo 'xy\c'` in
*c*) ECHO_T=' ';; # ECHO_T is single tab character.
- *) ECHO_C='\c';;
+ xy) ECHO_C='\c';;
+ *) echo `echo ksh88 bug on AIX 6.1` > /dev/null
+ ECHO_T=' ';;
esac;;
*)
ECHO_N='-n';;
esac
-if expr a : '\(a\)' >/dev/null 2>&1 &&
- test "X`expr 00001 : '.*\(...\)'`" = X001; then
- as_expr=expr
-else
- as_expr=false
-fi
rm -f conf$$ conf$$.exe conf$$.file
if test -d conf$$.dir; then
@@ -5790,8 +4771,56 @@ fi
rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
rmdir conf$$.dir 2>/dev/null
+
+# as_fn_mkdir_p
+# -------------
+# Create "$as_dir" as a directory, including parents if necessary.
+as_fn_mkdir_p ()
+{
+
+ case $as_dir in #(
+ -*) as_dir=./$as_dir;;
+ esac
+ test -d "$as_dir" || eval $as_mkdir_p || {
+ as_dirs=
+ while :; do
+ case $as_dir in #(
+ *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
+ *) as_qdir=$as_dir;;
+ esac
+ as_dirs="'$as_qdir' $as_dirs"
+ as_dir=`$as_dirname -- "$as_dir" ||
+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$as_dir" : 'X\(//\)[^/]' \| \
+ X"$as_dir" : 'X\(//\)$' \| \
+ X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X"$as_dir" |
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)[^/].*/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\).*/{
+ s//\1/
+ q
+ }
+ s/.*/./; q'`
+ test -d "$as_dir" && break
+ done
+ test -z "$as_dirs" || eval "mkdir $as_dirs"
+ } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
+
+
+} # as_fn_mkdir_p
if mkdir -p . 2>/dev/null; then
- as_mkdir_p=:
+ as_mkdir_p='mkdir -p "$as_dir"'
else
test -d ./-p && rmdir ./-p
as_mkdir_p=false
@@ -5810,10 +4839,10 @@ else
if test -d "$1"; then
test -d "$1/.";
else
- case $1 in
+ case $1 in #(
-*)set "./$1";;
esac;
- case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in
+ case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
???[sx]*):;;*)false;;esac;fi
'\'' sh
'
@@ -5828,13 +4857,19 @@ as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
exec 6>&1
+## ----------------------------------- ##
+## Main body of $CONFIG_STATUS script. ##
+## ----------------------------------- ##
+_ASEOF
+test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1
-# Save the log message, to keep $[0] and so on meaningful, and to
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
+# Save the log message, to keep $0 and so on meaningful, and to
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
This file was extended by $as_me, which was
-generated by GNU Autoconf 2.63. Invocation command line was
+generated by GNU Autoconf 2.68. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
CONFIG_HEADERS = $CONFIG_HEADERS
@@ -5865,13 +4900,15 @@ _ACEOF
cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
ac_cs_usage="\
-\`$as_me' instantiates files from templates according to the
-current configuration.
+\`$as_me' instantiates files and other configuration actions
+from templates according to the current configuration. Unless the files
+and actions are specified as TAGs, all are instantiated by default.
-Usage: $0 [OPTION]... [FILE]...
+Usage: $0 [OPTION]... [TAG]...
-h, --help print this help, then exit
-V, --version print version number and configuration settings, then exit
+ --config print configuration, then exit
-q, --quiet, --silent
do not print progress messages
-d, --debug don't remove temporary files
@@ -5887,16 +4924,17 @@ $config_files
Configuration headers:
$config_headers
-Report bugs to <bug-autoconf@gnu.org>."
+Report bugs to the package provider."
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
config.status
-configured by $0, generated by GNU Autoconf 2.63,
- with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
+configured by $0, generated by GNU Autoconf 2.68,
+ with options \\"\$ac_cs_config\\"
-Copyright (C) 2008 Free Software Foundation, Inc.
+Copyright (C) 2010 Free Software Foundation, Inc.
This config.status script is free software; the Free Software Foundation
gives unlimited permission to copy, distribute and modify it."
@@ -5912,11 +4950,16 @@ ac_need_defaults=:
while test $# != 0
do
case $1 in
- --*=*)
+ --*=?*)
ac_option=`expr "X$1" : 'X\([^=]*\)='`
ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'`
ac_shift=:
;;
+ --*=)
+ ac_option=`expr "X$1" : 'X\([^=]*\)='`
+ ac_optarg=
+ ac_shift=:
+ ;;
*)
ac_option=$1
ac_optarg=$2
@@ -5930,27 +4973,29 @@ do
ac_cs_recheck=: ;;
--version | --versio | --versi | --vers | --ver | --ve | --v | -V )
$as_echo "$ac_cs_version"; exit ;;
+ --config | --confi | --conf | --con | --co | --c )
+ $as_echo "$ac_cs_config"; exit ;;
--debug | --debu | --deb | --de | --d | -d )
debug=: ;;
--file | --fil | --fi | --f )
$ac_shift
case $ac_optarg in
*\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
+ '') as_fn_error $? "missing file argument" ;;
esac
- CONFIG_FILES="$CONFIG_FILES '$ac_optarg'"
+ as_fn_append CONFIG_FILES " '$ac_optarg'"
ac_need_defaults=false;;
--header | --heade | --head | --hea )
$ac_shift
case $ac_optarg in
*\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
esac
- CONFIG_HEADERS="$CONFIG_HEADERS '$ac_optarg'"
+ as_fn_append CONFIG_HEADERS " '$ac_optarg'"
ac_need_defaults=false;;
--he | --h)
# Conflict between --help and --header
- { $as_echo "$as_me: error: ambiguous option: $1
-Try \`$0 --help' for more information." >&2
- { (exit 1); exit 1; }; };;
+ as_fn_error $? "ambiguous option: \`$1'
+Try \`$0 --help' for more information.";;
--help | --hel | -h )
$as_echo "$ac_cs_usage"; exit ;;
-q | -quiet | --quiet | --quie | --qui | --qu | --q \
@@ -5958,11 +5003,10 @@ Try \`$0 --help' for more information." >&2
ac_cs_silent=: ;;
# This is an error.
- -*) { $as_echo "$as_me: error: unrecognized option: $1
-Try \`$0 --help' for more information." >&2
- { (exit 1); exit 1; }; } ;;
+ -*) as_fn_error $? "unrecognized option: \`$1'
+Try \`$0 --help' for more information." ;;
- *) ac_config_targets="$ac_config_targets $1"
+ *) as_fn_append ac_config_targets " $1"
ac_need_defaults=false ;;
esac
@@ -6011,9 +5055,7 @@ do
"config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;;
"Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
- *) { { $as_echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5
-$as_echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
- { (exit 1); exit 1; }; };;
+ *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;;
esac
done
@@ -6035,26 +5077,24 @@ fi
# after its creation but before its name has been assigned to `$tmp'.
$debug ||
{
- tmp=
+ tmp= ac_tmp=
trap 'exit_status=$?
- { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status
+ : "${ac_tmp:=$tmp}"
+ { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status
' 0
- trap '{ (exit 1); exit 1; }' 1 2 13 15
+ trap 'as_fn_exit 1' 1 2 13 15
}
# Create a (secure) tmp directory for tmp files.
{
tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` &&
- test -n "$tmp" && test -d "$tmp"
+ test -d "$tmp"
} ||
{
tmp=./conf$$-$RANDOM
(umask 077 && mkdir "$tmp")
-} ||
-{
- $as_echo "$as_me: cannot create a temporary directory in ." >&2
- { (exit 1); exit 1; }
-}
+} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5
+ac_tmp=$tmp
# Set up the scripts for CONFIG_FILES section.
# No need to generate them if there are no CONFIG_FILES.
@@ -6062,7 +5102,13 @@ $debug ||
if test -n "$CONFIG_FILES"; then
-ac_cr=' '
+ac_cr=`echo X | tr X '\015'`
+# On cygwin, bash can eat \r inside `` if the user requested igncr.
+# But we know of no other shell where ac_cr would be empty at this
+# point, so we can use a bashism as a fallback.
+if test "x$ac_cr" = x; then
+ eval ac_cr=\$\'\\r\'
+fi
ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' </dev/null 2>/dev/null`
if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then
ac_cs_awk_cr='\\r'
@@ -6070,7 +5116,7 @@ else
ac_cs_awk_cr=$ac_cr
fi
-echo 'BEGIN {' >"$tmp/subs1.awk" &&
+echo 'BEGIN {' >"$ac_tmp/subs1.awk" &&
_ACEOF
@@ -6079,24 +5125,18 @@ _ACEOF
echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' &&
echo "_ACEOF"
} >conf$$subs.sh ||
- { { $as_echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
-$as_echo "$as_me: error: could not make $CONFIG_STATUS" >&2;}
- { (exit 1); exit 1; }; }
-ac_delim_num=`echo "$ac_subst_vars" | grep -c '$'`
+ as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
+ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'`
ac_delim='%!_!# '
for ac_last_try in false false false false false :; do
. ./conf$$subs.sh ||
- { { $as_echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
-$as_echo "$as_me: error: could not make $CONFIG_STATUS" >&2;}
- { (exit 1); exit 1; }; }
+ as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X`
if test $ac_delim_n = $ac_delim_num; then
break
elif $ac_last_try; then
- { { $as_echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
-$as_echo "$as_me: error: could not make $CONFIG_STATUS" >&2;}
- { (exit 1); exit 1; }; }
+ as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
else
ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
fi
@@ -6104,7 +5144,7 @@ done
rm -f conf$$subs.sh
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-cat >>"\$tmp/subs1.awk" <<\\_ACAWK &&
+cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK &&
_ACEOF
sed -n '
h
@@ -6118,7 +5158,7 @@ s/'"$ac_delim"'$//
t delim
:nl
h
-s/\(.\{148\}\).*/\1/
+s/\(.\{148\}\)..*/\1/
t more1
s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/
p
@@ -6132,7 +5172,7 @@ s/.\{148\}//
t nl
:delim
h
-s/\(.\{148\}\).*/\1/
+s/\(.\{148\}\)..*/\1/
t more2
s/["\\]/\\&/g; s/^/"/; s/$/"/
p
@@ -6152,7 +5192,7 @@ t delim
rm -f conf$$subs.awk
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
_ACAWK
-cat >>"\$tmp/subs1.awk" <<_ACAWK &&
+cat >>"\$ac_tmp/subs1.awk" <<_ACAWK &&
for (key in S) S_is_set[key] = 1
FS = ""
@@ -6184,23 +5224,29 @@ if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then
sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g"
else
cat
-fi < "$tmp/subs1.awk" > "$tmp/subs.awk" \
- || { { $as_echo "$as_me:$LINENO: error: could not setup config files machinery" >&5
-$as_echo "$as_me: error: could not setup config files machinery" >&2;}
- { (exit 1); exit 1; }; }
+fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \
+ || as_fn_error $? "could not setup config files machinery" "$LINENO" 5
_ACEOF
-# VPATH may cause trouble with some makes, so we remove $(srcdir),
-# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and
+# VPATH may cause trouble with some makes, so we remove sole $(srcdir),
+# ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and
# trailing colons and then remove the whole line if VPATH becomes empty
# (actually we leave an empty line to preserve line numbers).
if test "x$srcdir" = x.; then
- ac_vpsub='/^[ ]*VPATH[ ]*=/{
-s/:*\$(srcdir):*/:/
-s/:*\${srcdir}:*/:/
-s/:*@srcdir@:*/:/
-s/^\([^=]*=[ ]*\):*/\1/
+ ac_vpsub='/^[ ]*VPATH[ ]*=[ ]*/{
+h
+s///
+s/^/:/
+s/[ ]*$/:/
+s/:\$(srcdir):/:/g
+s/:\${srcdir}:/:/g
+s/:@srcdir@:/:/g
+s/^:*//
s/:*$//
+x
+s/\(=[ ]*\).*/\1/
+G
+s/\n//
s/^[^=]*=[ ]*$//
}'
fi
@@ -6212,7 +5258,7 @@ fi # test -n "$CONFIG_FILES"
# No need to generate them if there are no CONFIG_HEADERS.
# This happens for instance with `./config.status Makefile'.
if test -n "$CONFIG_HEADERS"; then
-cat >"$tmp/defines.awk" <<\_ACAWK ||
+cat >"$ac_tmp/defines.awk" <<\_ACAWK ||
BEGIN {
_ACEOF
@@ -6224,13 +5270,11 @@ _ACEOF
# handling of long lines.
ac_delim='%!_!# '
for ac_last_try in false false :; do
- ac_t=`sed -n "/$ac_delim/p" confdefs.h`
- if test -z "$ac_t"; then
+ ac_tt=`sed -n "/$ac_delim/p" confdefs.h`
+ if test -z "$ac_tt"; then
break
elif $ac_last_try; then
- { { $as_echo "$as_me:$LINENO: error: could not make $CONFIG_HEADERS" >&5
-$as_echo "$as_me: error: could not make $CONFIG_HEADERS" >&2;}
- { (exit 1); exit 1; }; }
+ as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5
else
ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
fi
@@ -6315,9 +5359,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
_ACAWK
_ACEOF
cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
- { { $as_echo "$as_me:$LINENO: error: could not setup config headers machinery" >&5
-$as_echo "$as_me: error: could not setup config headers machinery" >&2;}
- { (exit 1); exit 1; }; }
+ as_fn_error $? "could not setup config headers machinery" "$LINENO" 5
fi # test -n "$CONFIG_HEADERS"
@@ -6330,9 +5372,7 @@ do
esac
case $ac_mode$ac_tag in
:[FHL]*:*);;
- :L* | :C*:*) { { $as_echo "$as_me:$LINENO: error: invalid tag $ac_tag" >&5
-$as_echo "$as_me: error: invalid tag $ac_tag" >&2;}
- { (exit 1); exit 1; }; };;
+ :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;;
:[FH]-) ac_tag=-:-;;
:[FH]*) ac_tag=$ac_tag:$ac_tag.in;;
esac
@@ -6351,7 +5391,7 @@ $as_echo "$as_me: error: invalid tag $ac_tag" >&2;}
for ac_f
do
case $ac_f in
- -) ac_f="$tmp/stdin";;
+ -) ac_f="$ac_tmp/stdin";;
*) # Look for the file first in the build tree, then in the source tree
# (if the path is not absolute). The absolute path cannot be DOS-style,
# because $ac_f cannot contain `:'.
@@ -6360,12 +5400,10 @@ $as_echo "$as_me: error: invalid tag $ac_tag" >&2;}
[\\/$]*) false;;
*) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";;
esac ||
- { { $as_echo "$as_me:$LINENO: error: cannot find input file: $ac_f" >&5
-$as_echo "$as_me: error: cannot find input file: $ac_f" >&2;}
- { (exit 1); exit 1; }; };;
+ as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;;
esac
case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac
- ac_file_inputs="$ac_file_inputs '$ac_f'"
+ as_fn_append ac_file_inputs " '$ac_f'"
done
# Let's still pretend it is `configure' which instantiates (i.e., don't
@@ -6376,7 +5414,7 @@ $as_echo "$as_me: error: cannot find input file: $ac_f" >&2;}
`' by configure.'
if test x"$ac_file" != x-; then
configure_input="$ac_file. $configure_input"
- { $as_echo "$as_me:$LINENO: creating $ac_file" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5
$as_echo "$as_me: creating $ac_file" >&6;}
fi
# Neutralize special characters interpreted by sed in replacement strings.
@@ -6388,10 +5426,8 @@ $as_echo "$as_me: creating $ac_file" >&6;}
esac
case $ac_tag in
- *:-:* | *:-) cat >"$tmp/stdin" \
- || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5
-$as_echo "$as_me: error: could not create $ac_file" >&2;}
- { (exit 1); exit 1; }; } ;;
+ *:-:* | *:-) cat >"$ac_tmp/stdin" \
+ || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;;
esac
;;
esac
@@ -6419,47 +5455,7 @@ $as_echo X"$ac_file" |
q
}
s/.*/./; q'`
- { as_dir="$ac_dir"
- case $as_dir in #(
- -*) as_dir=./$as_dir;;
- esac
- test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || {
- as_dirs=
- while :; do
- case $as_dir in #(
- *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
- *) as_qdir=$as_dir;;
- esac
- as_dirs="'$as_qdir' $as_dirs"
- as_dir=`$as_dirname -- "$as_dir" ||
-$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$as_dir" : 'X\(//\)[^/]' \| \
- X"$as_dir" : 'X\(//\)$' \| \
- X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_dir" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
- test -d "$as_dir" && break
- done
- test -z "$as_dirs" || eval "mkdir $as_dirs"
- } || test -d "$as_dir" || { { $as_echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5
-$as_echo "$as_me: error: cannot create directory $as_dir" >&2;}
- { (exit 1); exit 1; }; }; }
+ as_dir="$ac_dir"; as_fn_mkdir_p
ac_builddir=.
case "$ac_dir" in
@@ -6507,7 +5503,6 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# If the template does not know about datarootdir, expand it.
# FIXME: This hack should be removed a few years after 2.60.
ac_datarootdir_hack=; ac_datarootdir_seen=
-
ac_sed_dataroot='
/datarootdir/ {
p
@@ -6517,12 +5512,11 @@ ac_sed_dataroot='
/@docdir@/p
/@infodir@/p
/@localedir@/p
-/@mandir@/p
-'
+/@mandir@/p'
case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in
*datarootdir*) ac_datarootdir_seen=yes;;
*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*)
- { $as_echo "$as_me:$LINENO: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
@@ -6532,7 +5526,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
s&@infodir@&$infodir&g
s&@localedir@&$localedir&g
s&@mandir@&$mandir&g
- s&\\\${datarootdir}&$datarootdir&g' ;;
+ s&\\\${datarootdir}&$datarootdir&g' ;;
esac
_ACEOF
@@ -6558,27 +5552,24 @@ s&@abs_builddir@&$ac_abs_builddir&;t t
s&@abs_top_builddir@&$ac_abs_top_builddir&;t t
$ac_datarootdir_hack
"
-eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$tmp/subs.awk" >$tmp/out \
- || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5
-$as_echo "$as_me: error: could not create $ac_file" >&2;}
- { (exit 1); exit 1; }; }
+eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \
+ >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5
test -z "$ac_datarootdir_hack$ac_datarootdir_seen" &&
- { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } &&
- { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } &&
- { $as_echo "$as_me:$LINENO: WARNING: $ac_file contains a reference to the variable \`datarootdir'
-which seems to be undefined. Please make sure it is defined." >&5
+ { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } &&
+ { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \
+ "$ac_tmp/out"`; test -z "$ac_out"; } &&
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir'
+which seems to be undefined. Please make sure it is defined" >&5
$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
-which seems to be undefined. Please make sure it is defined." >&2;}
+which seems to be undefined. Please make sure it is defined" >&2;}
- rm -f "$tmp/stdin"
+ rm -f "$ac_tmp/stdin"
case $ac_file in
- -) cat "$tmp/out" && rm -f "$tmp/out";;
- *) rm -f "$ac_file" && mv "$tmp/out" "$ac_file";;
+ -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";;
+ *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";;
esac \
- || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5
-$as_echo "$as_me: error: could not create $ac_file" >&2;}
- { (exit 1); exit 1; }; }
+ || as_fn_error $? "could not create $ac_file" "$LINENO" 5
;;
:H)
#
@@ -6587,27 +5578,21 @@ $as_echo "$as_me: error: could not create $ac_file" >&2;}
if test x"$ac_file" != x-; then
{
$as_echo "/* $configure_input */" \
- && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs"
- } >"$tmp/config.h" \
- || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5
-$as_echo "$as_me: error: could not create $ac_file" >&2;}
- { (exit 1); exit 1; }; }
- if diff "$ac_file" "$tmp/config.h" >/dev/null 2>&1; then
- { $as_echo "$as_me:$LINENO: $ac_file is unchanged" >&5
+ && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs"
+ } >"$ac_tmp/config.h" \
+ || as_fn_error $? "could not create $ac_file" "$LINENO" 5
+ if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5
$as_echo "$as_me: $ac_file is unchanged" >&6;}
else
rm -f "$ac_file"
- mv "$tmp/config.h" "$ac_file" \
- || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5
-$as_echo "$as_me: error: could not create $ac_file" >&2;}
- { (exit 1); exit 1; }; }
+ mv "$ac_tmp/config.h" "$ac_file" \
+ || as_fn_error $? "could not create $ac_file" "$LINENO" 5
fi
else
$as_echo "/* $configure_input */" \
- && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" \
- || { { $as_echo "$as_me:$LINENO: error: could not create -" >&5
-$as_echo "$as_me: error: could not create -" >&2;}
- { (exit 1); exit 1; }; }
+ && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \
+ || as_fn_error $? "could not create -" "$LINENO" 5
fi
;;
@@ -6617,15 +5602,12 @@ $as_echo "$as_me: error: could not create -" >&2;}
done # for ac_tag
-{ (exit 0); exit 0; }
+as_fn_exit 0
_ACEOF
-chmod +x $CONFIG_STATUS
ac_clean_files=$ac_clean_files_save
test $ac_write_fail = 0 ||
- { { $as_echo "$as_me:$LINENO: error: write failure creating $CONFIG_STATUS" >&5
-$as_echo "$as_me: error: write failure creating $CONFIG_STATUS" >&2;}
- { (exit 1); exit 1; }; }
+ as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5
# configure is writing to config.log, and then calls config.status.
@@ -6646,10 +5628,10 @@ if test "$no_create" != yes; then
exec 5>>config.log
# Use ||, not &&, to avoid exiting from the if with $? = 1, which
# would make configure fail if this is the last instruction.
- $ac_cs_success || { (exit 1); exit 1; }
+ $ac_cs_success || as_fn_exit 1
fi
if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then
- { $as_echo "$as_me:$LINENO: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
fi
diff --git a/examples/rlfe/configure.in b/examples/rlfe/configure.in
index 533f9dc..ad7ce65 100644
--- a/examples/rlfe/configure.in
+++ b/examples/rlfe/configure.in
@@ -8,7 +8,7 @@ AC_SUBST(VERSION)
dnl
dnl Define some useful macros
dnl
-AC_DEFUN(AC_PROGRAM_SOURCE,
+AC_DEFUN([AC_PROGRAM_SOURCE],
[AC_REQUIRE([AC_PROG_CPP])AC_PROVIDE([$0])cat > conftest.c <<EOF
#include "confdefs.h"
[$1]
@@ -223,6 +223,7 @@ AC_TRY_LINK(,tgetent((char *)0, (char *)0);,,
AC_MSG_ERROR(!!! no tgetent - no screen))))))
AC_TRY_RUN([
+extern char *tgoto();
main()
{
exit(strcmp(tgoto("%p1%d", 0, 1), "1") ? 0 : 1);
@@ -435,6 +436,7 @@ main()
fi
-AC_CHECK_HEADERS(sys/stropts.h sys/wait.h)
+AC_CHECK_HEADERS(sys/stropts.h sys/wait.h sgtty.h sys/select.h)
+AC_CHECK_HEADERS(term.h)
AC_OUTPUT(Makefile)
diff --git a/examples/rlfe/os.h b/examples/rlfe/os.h
index 1c88df6..df06c75 100644
--- a/examples/rlfe/os.h
+++ b/examples/rlfe/os.h
@@ -208,7 +208,9 @@ extern int errno;
# include <cytermio.h>
# endif
# else /* TERMIO */
-# include <sgtty.h>
+# if defined (HAVE_SGTTY_H)
+# include <sgtty.h>
+# endif
# endif /* TERMIO */
#endif /* POSIX */
@@ -490,7 +492,7 @@ extern int errno;
* select stuff
*/
-#if defined(M_XENIX) || defined(M_UNIX) || defined(_SEQUENT_)
+#if defined(M_XENIX) || defined(M_UNIX) || defined(_SEQUENT_) || defined (__INTERIX)
#include <sys/select.h> /* for timeval + FD... */
#endif
diff --git a/examples/rlfe/rlfe.c b/examples/rlfe/rlfe.c
index eacd5ab..f40b2dd 100644
--- a/examples/rlfe/rlfe.c
+++ b/examples/rlfe/rlfe.c
@@ -547,7 +547,14 @@ main(int argc, char** argv)
#endif
t.c_lflag &= ~(ICANON | ISIG | ECHO | ECHOCTL | ECHOE | \
- ECHOK | ECHOKE | ECHONL | ECHOPRT );
+ ECHOK | ECHONL
+#if defined (ECHOKE)
+ | ECHOKE
+#endif
+#if defined (ECHOPRT)
+ | ECHOPRT
+#endif
+ );
t.c_iflag &= ~ICRNL;
t.c_iflag |= IGNBRK;
t.c_cc[VMIN] = 1;
diff --git a/examples/rlptytest.c b/examples/rlptytest.c
index 79257db..0699e86 100644
--- a/examples/rlptytest.c
+++ b/examples/rlptytest.c
@@ -19,7 +19,7 @@
#include <signal.h>
-#if 0 /* LINUX */
+#if 1 /* LINUX */
#include <pty.h>
#else
#include <util.h>
@@ -316,6 +316,8 @@ main()
if (val == -1)
return -1;
+ signal (SIGINT, sigint);
+
val = init_readline (slavefd, slavefd);
if (val == -1)
return -1;
@@ -324,8 +326,6 @@ main()
if (val == -1)
return -1;
- signal (SIGINT, sigint);
-
val = main_loop ();
tty_reset (STDIN_FILENO);
diff --git a/funmap.c b/funmap.c
index 86e375f..363507b 100644
--- a/funmap.c
+++ b/funmap.c
@@ -98,6 +98,8 @@ static const FUNMAP default_funmap[] = {
{ "forward-word", rl_forward_word },
{ "history-search-backward", rl_history_search_backward },
{ "history-search-forward", rl_history_search_forward },
+ { "history-substring-search-backward", rl_history_substr_search_backward },
+ { "history-substring-search-forward", rl_history_substr_search_forward },
{ "insert-comment", rl_insert_comment },
{ "insert-completions", rl_insert_completions },
{ "kill-whole-line", rl_kill_full_line },
@@ -118,6 +120,7 @@ static const FUNMAP default_funmap[] = {
#endif
{ "possible-completions", rl_possible_completions },
{ "previous-history", rl_get_previous_history },
+ { "print-last-kbd-macro", rl_print_last_kbd_macro },
{ "quoted-insert", rl_quoted_insert },
{ "re-read-init-file", rl_re_read_init_file },
{ "redraw-current-line", rl_refresh_line},
@@ -236,7 +239,7 @@ rl_initialize_funmap ()
/* Produce a NULL terminated array of known function names. The array
is sorted. The array itself is allocated, but not the strings inside.
- You should free () the array when you done, but not the pointrs. */
+ You should free () the array when you done, but not the pointers. */
const char **
rl_funmap_names ()
{
diff --git a/histexpand.c b/histexpand.c
index 8fb3798..4899b9d 100644
--- a/histexpand.c
+++ b/histexpand.c
@@ -1,6 +1,6 @@
/* histexpand.c -- history expansion. */
-/* Copyright (C) 1989-2010 Free Software Foundation, Inc.
+/* Copyright (C) 1989-2012 Free Software Foundation, Inc.
This file contains the GNU History Library (History), a set of
routines for managing the text of previously typed lines.
@@ -272,6 +272,8 @@ get_history_event (string, caller_index, delimiting_quote)
if (local_index == 0 || substring_okay)
{
entry = current_history ();
+ if (entry == 0)
+ FAIL_SEARCH ();
history_offset = history_length;
/* If this was a substring search, then remember the
@@ -519,9 +521,9 @@ postproc_subst_rhs ()
the returned string. Returns the new index into string in
*END_INDEX_PTR, and the expanded specifier in *RET_STRING. */
static int
-history_expand_internal (string, start, end_index_ptr, ret_string, current_line)
+history_expand_internal (string, start, qc, end_index_ptr, ret_string, current_line)
char *string;
- int start, *end_index_ptr;
+ int start, qc, *end_index_ptr;
char **ret_string;
char *current_line; /* for !# */
{
@@ -557,30 +559,7 @@ history_expand_internal (string, start, end_index_ptr, ret_string, current_line)
event = current_line;
}
else
- {
- int quoted_search_delimiter = 0;
-
- /* If the character before this `!' is a double or single
- quote, then this expansion takes place inside of the
- quoted string. If we have to search for some text ("!foo"),
- allow the delimiter to end the search string. */
-#if defined (HANDLE_MULTIBYTE)
- if (MB_CUR_MAX > 1 && rl_byte_oriented == 0)
- {
- int ch, l;
- l = _rl_find_prev_mbchar (string, i, MB_FIND_ANY);
- ch = string[l];
- /* XXX - original patch had i - 1 ??? If i == 0 it would fail. */
- if (i && (ch == '\'' || ch == '"'))
- quoted_search_delimiter = ch;
- }
- else
-#endif /* HANDLE_MULTIBYTE */
- if (i && (string[i - 1] == '\'' || string[i - 1] == '"'))
- quoted_search_delimiter = string[i - 1];
-
- event = get_history_event (string, &i, quoted_search_delimiter);
- }
+ event = get_history_event (string, &i, qc);
if (event == 0)
{
@@ -854,7 +833,7 @@ history_expand_internal (string, start, end_index_ptr, ret_string, current_line)
}
i += 2;
}
- /* Done with modfiers. */
+ /* Done with modifiers. */
/* Believe it or not, we have to back the pointer up by one. */
--i;
@@ -928,7 +907,7 @@ history_expand (hstring, output)
char **output;
{
register int j;
- int i, r, l, passc, cc, modified, eindex, only_printing, dquote, flag;
+ int i, r, l, passc, cc, modified, eindex, only_printing, dquote, squote, flag;
char *string;
/* The output string, and its length. */
@@ -991,7 +970,7 @@ history_expand (hstring, output)
/* `!' followed by one of the characters in history_no_expand_chars
is NOT an expansion. */
- for (i = dquote = 0; string[i]; i++)
+ for (i = dquote = squote = 0; string[i]; i++)
{
#if defined (HANDLE_MULTIBYTE)
if (MB_CUR_MAX > 1 && rl_byte_oriented == 0)
@@ -1022,6 +1001,13 @@ history_expand (hstring, output)
{
if (cc == 0 || member (cc, history_no_expand_chars))
continue;
+ /* DQUOTE won't be set unless history_quotes_inhibit_expansion
+ is set. The idea here is to treat double-quoted strings the
+ same as the word outside double quotes; in effect making the
+ double quote part of history_no_expand_chars when DQUOTE is
+ set. */
+ else if (dquote && cc == '"')
+ continue;
/* If the calling application has set
history_inhibit_expansion_function to a function that checks
for special cases that should not be history expanded,
@@ -1071,9 +1057,9 @@ history_expand (hstring, output)
}
/* Extract and perform the substitution. */
- for (passc = dquote = i = j = 0; i < l; i++)
+ for (passc = dquote = squote = i = j = 0; i < l; i++)
{
- int tchar = string[i];
+ int qc, tchar = string[i];
if (passc)
{
@@ -1130,8 +1116,14 @@ history_expand (hstring, output)
case '\'':
{
/* If history_quotes_inhibit_expansion is set, single quotes
- inhibit history expansion. */
- if (dquote == 0 && history_quotes_inhibit_expansion)
+ inhibit history expansion, otherwise they are treated like
+ double quotes. */
+ if (squote)
+ {
+ squote = 0;
+ ADD_CHAR (tchar);
+ }
+ else if (dquote == 0 && history_quotes_inhibit_expansion)
{
int quote, slen;
@@ -1146,6 +1138,11 @@ history_expand (hstring, output)
ADD_STRING (temp);
xfree (temp);
}
+ else if (dquote == 0 && squote == 0 && history_quotes_inhibit_expansion == 0)
+ {
+ squote = 1;
+ ADD_CHAR (string[i]);
+ }
else
ADD_CHAR (string[i]);
break;
@@ -1171,6 +1168,7 @@ history_expand (hstring, output)
characters in history_no_expand_chars, then it is not a
candidate for expansion of any kind. */
if (cc == 0 || member (cc, history_no_expand_chars) ||
+ (dquote && cc == '"') ||
(history_inhibit_expansion_function && (*history_inhibit_expansion_function) (string, i)))
{
ADD_CHAR (string[i]);
@@ -1196,8 +1194,8 @@ history_expand (hstring, output)
break;
}
#endif
-
- r = history_expand_internal (string, i, &eindex, &temp, result);
+ qc = squote ? '\'' : (dquote ? '"' : 0);
+ r = history_expand_internal (string, i, qc, &eindex, &temp, result);
if (r < 0)
{
*output = temp;
diff --git a/histfile.c b/histfile.c
index 30a6182..bb74315 100644
--- a/histfile.c
+++ b/histfile.c
@@ -125,14 +125,7 @@ history_filename (filename)
home = sh_get_env_value ("HOME");
if (home == 0)
- {
-#if 0
- home = ".";
- home_len = 1;
-#else
- return (NULL);
-#endif
- }
+ return (NULL);
else
home_len = strlen (home);
@@ -148,6 +141,21 @@ history_filename (filename)
return (return_val);
}
+static char *
+history_backupfile (filename)
+ const char *filename;
+{
+ char *ret;
+ size_t len;
+
+ len = strlen (filename);
+ ret = xmalloc (len + 2);
+ strcpy (ret, filename);
+ ret[len] = '-';
+ ret[len+1] = '\0';
+ return ret;
+}
+
/* Add the contents of FILENAME to the history list, a line at a time.
If FILENAME is NULL, then read from ~/.history. Returns 0 if
successful, or errno if not. */
@@ -403,14 +411,16 @@ history_truncate_file (fname, lines)
truncate to. */
if (bp > buffer && ((file = open (filename, O_WRONLY|O_TRUNC|O_BINARY, 0600)) != -1))
{
- write (file, bp, chars_read - (bp - buffer));
+ if (write (file, bp, chars_read - (bp - buffer)) < 0)
+ rv = errno;
#if defined (__BEOS__)
/* BeOS ignores O_TRUNC. */
ftruncate (file, chars_read - (bp - buffer));
#endif
- close (file);
+ if (close (file) < 0 && rv == 0)
+ rv = errno;
}
truncate_exit:
@@ -430,7 +440,7 @@ history_do_write (filename, nelements, overwrite)
int nelements, overwrite;
{
register int i;
- char *output;
+ char *output, *bakname;
int file, mode, rv;
#ifdef HISTORY_USE_MMAP
size_t cursize;
@@ -440,13 +450,22 @@ history_do_write (filename, nelements, overwrite)
mode = overwrite ? O_WRONLY|O_CREAT|O_TRUNC|O_BINARY : O_WRONLY|O_APPEND|O_BINARY;
#endif
output = history_filename (filename);
+ bakname = (overwrite && output) ? history_backupfile (output) : 0;
+
+ if (output && bakname)
+ rename (output, bakname);
+
file = output ? open (output, mode, 0600) : -1;
rv = 0;
if (file == -1)
{
+ rv = errno;
+ if (output && bakname)
+ rename (bakname, output);
FREE (output);
- return (errno);
+ FREE (bakname);
+ return (rv);
}
#ifdef HISTORY_USE_MMAP
@@ -486,8 +505,11 @@ history_do_write (filename, nelements, overwrite)
{
mmap_error:
rv = errno;
- FREE (output);
close (file);
+ if (output && bakname)
+ rename (bakname, output);
+ FREE (output);
+ FREE (bakname);
return rv;
}
#else
@@ -495,8 +517,11 @@ mmap_error:
if (buffer == 0)
{
rv = errno;
- FREE (output);
close (file);
+ if (output && bakname)
+ rename (bakname, output);
+ FREE (output);
+ FREE (bakname);
return rv;
}
#endif
@@ -524,9 +549,16 @@ mmap_error:
#endif
}
- close (file);
+ if (close (file) < 0 && rv == 0)
+ rv = errno;
+
+ if (rv != 0 && output && bakname)
+ rename (bakname, output);
+ else if (rv == 0 && bakname)
+ unlink (bakname);
FREE (output);
+ FREE (bakname);
return (rv);
}
diff --git a/history.c b/history.c
index d7894cf..1181e7c 100644
--- a/history.c
+++ b/history.c
@@ -1,6 +1,6 @@
/* history.c -- standalone history library */
-/* Copyright (C) 1989-2009 Free Software Foundation, Inc.
+/* Copyright (C) 1989-2011 Free Software Foundation, Inc.
This file contains the GNU History Library (History), a set of
routines for managing the text of previously typed lines.
@@ -236,7 +236,7 @@ history_get_time (hist)
ts = hist->timestamp;
if (ts[0] != history_comment_char)
return 0;
- t = (time_t) atol (ts + 1); /* XXX - should use strtol() here */
+ t = (time_t) strtol (ts + 1, (char **)NULL, 10); /* XXX - should use strtol() here */
return t;
}
@@ -318,7 +318,7 @@ add_history_time (string)
{
HIST_ENTRY *hs;
- if (string == 0)
+ if (string == 0 || history_length < 1)
return;
hs = the_history[history_length - 1];
FREE (hs->timestamp);
@@ -394,7 +394,7 @@ replace_history_entry (which, line, data)
WHICH >= 0 means to replace that particular history entry's data, as
long as it matches OLD. */
void
-replace_history_data (which,old, new)
+replace_history_data (which, old, new)
int which;
histdata_t *old, *new;
{
diff --git a/history.h b/history.h
index 1257e66..c8af47e 100644
--- a/history.h
+++ b/history.h
@@ -216,7 +216,7 @@ extern int history_truncate_file PARAMS((const char *, int));
-1) If there was an error in expansion.
2) If the returned line should just be printed.
- If an error ocurred in expansion, then OUTPUT contains a descriptive
+ If an error occurred in expansion, then OUTPUT contains a descriptive
error message. */
extern int history_expand PARAMS((char *, char **));
diff --git a/input.c b/input.c
index b49af88..117dfe8 100644
--- a/input.c
+++ b/input.c
@@ -1,6 +1,6 @@
/* input.c -- character input functions for readline. */
-/* Copyright (C) 1994-2010 Free Software Foundation, Inc.
+/* Copyright (C) 1994-2013 Free Software Foundation, Inc.
This file is part of the GNU Readline Library (Readline), a library
for reading lines of text with interactive input and history editing.
@@ -45,6 +45,8 @@
# include "ansi_stdlib.h"
#endif /* HAVE_STDLIB_H */
+#include <signal.h>
+
#include "posixselect.h"
#if defined (FIONREAD_IN_SYS_IOCTL)
@@ -78,6 +80,13 @@ extern int errno;
character input. */
rl_hook_func_t *rl_event_hook = (rl_hook_func_t *)NULL;
+/* A function to call if a read(2) is interrupted by a signal. */
+rl_hook_func_t *rl_signal_event_hook = (rl_hook_func_t *)NULL;
+
+/* A function to replace _rl_input_available for applications using the
+ callback interface. */
+rl_hook_func_t *rl_input_available_hook = (rl_hook_func_t *)NULL;
+
rl_getc_func_t *rl_getc_function = rl_getc;
static int _keyboard_input_timeout = 100000; /* 0.1 seconds; it's in usec */
@@ -104,6 +113,12 @@ _rl_any_typein ()
return any_typein;
}
+int
+_rl_pushed_input_available ()
+{
+ return (push_index != pop_index);
+}
+
/* Return the amount of space available in the buffer for stuffing
characters. */
static int
@@ -117,7 +132,7 @@ ibuffer_space ()
/* Get a key from the buffer of characters to be read.
Return the key in KEY.
- Result is KEY if there was a key, or 0 if there wasn't. */
+ Result is non-zero if there was a key, or 0 if there wasn't. */
static int
rl_get_char (key)
int *key;
@@ -154,12 +169,6 @@ _rl_unget_char (key)
return (0);
}
-int
-_rl_pushed_input_available ()
-{
- return (push_index != pop_index);
-}
-
/* If a character is available to be read, then read it and stuff it into
IBUFFER. Otherwise, just return. Returns number of characters read
(0 if none available) and -1 on error (EIO). */
@@ -291,6 +300,9 @@ _rl_input_available ()
#endif
int tty;
+ if (rl_input_available_hook)
+ return (*rl_input_available_hook) ();
+
tty = fileno (rl_instream);
#if defined (HAVE_SELECT)
@@ -411,8 +423,6 @@ rl_read_key ()
{
int c, r;
- rl_key_sequence_length++;
-
if (rl_pending_input)
{
c = rl_pending_input;
@@ -437,7 +447,7 @@ rl_read_key ()
rl_done = 1;
return ('\n');
}
- else if (r == 1) /* read something */
+ else if (r > 0) /* read something */
continue;
RL_CHECK_SIGNALS ();
@@ -450,6 +460,7 @@ rl_read_key ()
{
if (rl_get_char (&c) == 0)
c = (*rl_getc_function) (rl_instream);
+/* fprintf(stderr, "rl_read_key: calling RL_CHECK_SIGNALS: _rl_caught_signal = %d", _rl_caught_signal); */
RL_CHECK_SIGNALS ();
}
}
@@ -468,6 +479,8 @@ rl_getc (stream)
{
RL_CHECK_SIGNALS ();
+ /* We know at this point that _rl_caught_signal == 0 */
+
#if defined (__MINGW32__)
if (isatty (fileno (stream)))
return (getch ());
@@ -509,11 +522,23 @@ rl_getc (stream)
#undef X_EWOULDBLOCK
#undef X_EAGAIN
- /* If the error that we received was SIGINT, then try again,
- this is simply an interrupted system call to read ().
- Otherwise, some error ocurred, also signifying EOF. */
+/* fprintf(stderr, "rl_getc: result = %d errno = %d\n", result, errno); */
+
+ /* If the error that we received was EINTR, then try again,
+ this is simply an interrupted system call to read (). We allow
+ the read to be interrupted if we caught SIGHUP or SIGTERM (but
+ not SIGINT; let the signal handler deal with that), but if the
+ application sets an event hook, call it for other signals.
+ Otherwise (not EINTR), some error occurred, also signifying EOF. */
if (errno != EINTR)
return (RL_ISSTATE (RL_STATE_READCMD) ? READERR : EOF);
+ else if (_rl_caught_signal == SIGHUP || _rl_caught_signal == SIGTERM)
+ return (RL_ISSTATE (RL_STATE_READCMD) ? READERR : EOF);
+ else if (_rl_caught_signal == SIGINT || _rl_caught_signal == SIGQUIT)
+ RL_CHECK_SIGNALS ();
+
+ if (rl_signal_event_hook)
+ (*rl_signal_event_hook) ();
}
}
diff --git a/isearch.c b/isearch.c
index 712b9ea..6f6a7a6 100644
--- a/isearch.c
+++ b/isearch.c
@@ -6,7 +6,7 @@
/* */
/* **************************************************************** */
-/* Copyright (C) 1987-2009 Free Software Foundation, Inc.
+/* Copyright (C) 1987-2012 Free Software Foundation, Inc.
This file is part of the GNU Readline Library (Readline), a library
for reading lines of text with interactive input and history editing.
@@ -110,7 +110,7 @@ _rl_scxt_alloc (type, flags)
cxt->history_pos = 0;
cxt->direction = 0;
- cxt->lastc = 0;
+ cxt->prevc = cxt->lastc = 0;
cxt->sline = 0;
cxt->sline_len = cxt->sline_index = 0;
@@ -156,16 +156,16 @@ rl_forward_search_history (sign, key)
WHERE is the history list number of the current line. If it is
-1, then this line is the starting one. */
static void
-rl_display_search (search_string, reverse_p, where)
+rl_display_search (search_string, flags, where)
char *search_string;
- int reverse_p, where;
+ int flags, where;
{
char *message;
int msglen, searchlen;
searchlen = (search_string && *search_string) ? strlen (search_string) : 0;
- message = (char *)xmalloc (searchlen + 33);
+ message = (char *)xmalloc (searchlen + 64);
msglen = 0;
#if defined (NOTDEF)
@@ -178,7 +178,13 @@ rl_display_search (search_string, reverse_p, where)
message[msglen++] = '(';
- if (reverse_p)
+ if (flags & SF_FAILED)
+ {
+ strcpy (message + msglen, "failed ");
+ msglen += 7;
+ }
+
+ if (flags & SF_REVERSE)
{
strcpy (message + msglen, "reverse-");
msglen += 8;
@@ -215,7 +221,7 @@ _rl_isearch_init (direction)
cxt->search_terminators = _rl_isearch_terminators ? _rl_isearch_terminators
: default_isearch_terminators;
- /* Create an arrary of pointers to the lines that we want to search. */
+ /* Create an array of pointers to the lines that we want to search. */
hlist = history_list ();
rl_maybe_replace_line ();
i = 0;
@@ -312,13 +318,19 @@ _rl_search_getchar (cxt)
RL_UNSETSTATE(RL_STATE_MOREINPUT);
#if defined (HANDLE_MULTIBYTE)
+ /* This ends up with C (and LASTC) being set to the last byte of the
+ multibyte character. In most cases c == lastc == mb[0] */
if (MB_CUR_MAX > 1 && rl_byte_oriented == 0)
c = cxt->lastc = _rl_read_mbstring (cxt->lastc, cxt->mb, MB_LEN_MAX);
#endif
+ RL_CHECK_SIGNALS ();
return c;
}
+#define ENDSRCH_CHAR(c) \
+ ((CTRL_CHAR (c) || META_CHAR (c) || (c) == RUBOUT) && ((c) != CTRL ('G')))
+
/* Process just-read character C according to isearch context CXT. Return
-1 if the caller should just free the context and return, 0 if we should
break out of the loop, and 1 if we should continue to read characters. */
@@ -344,13 +356,43 @@ _rl_isearch_dispatch (cxt, c)
incremental search, so we check */
if (c >= 0 && cxt->keymap[c].type == ISKMAP && strchr (cxt->search_terminators, cxt->lastc) == 0)
{
+ /* _rl_keyseq_timeout specified in milliseconds; _rl_input_queued
+ takes microseconds, so multiply by 1000. If we don't get any
+ additional input and this keymap shadows another function, process
+ that key as if it was all we read. */
+ if (_rl_keyseq_timeout > 0 &&
+ RL_ISSTATE (RL_STATE_CALLBACK) == 0 &&
+ RL_ISSTATE (RL_STATE_INPUTPENDING) == 0 &&
+ _rl_pushed_input_available () == 0 &&
+ ((Keymap)(cxt->keymap[c].function))[ANYOTHERKEY].function &&
+ _rl_input_queued (_rl_keyseq_timeout*1000) == 0)
+ goto add_character;
+
+ cxt->okeymap = cxt->keymap;
cxt->keymap = FUNCTION_TO_KEYMAP (cxt->keymap, c);
cxt->sflags |= SF_CHGKMAP;
/* XXX - we should probably save this sequence, so we can do
- something useful if this doesn't end up mapping to a command. */
+ something useful if this doesn't end up mapping to a command we
+ interpret here. Right now we just save the most recent character
+ that caused the index into a new keymap. */
+ cxt->prevc = c;
+#if defined (HANDLE_MULTIBYTE)
+ if (MB_CUR_MAX > 1 && rl_byte_oriented == 0)
+ {
+ if (cxt->mb[1] == 0)
+ {
+ cxt->pmb[0] = c; /* XXX should be == cxt->mb[0] */
+ cxt->pmb[1] = '\0';
+ }
+ else
+ memcpy (cxt->pmb, cxt->mb, sizeof (cxt->pmb));
+ }
+#endif
return 1;
}
+add_character:
+
/* Translate the keys we do something with to opcodes. */
if (c >= 0 && cxt->keymap[c].type == ISFUNC)
{
@@ -376,6 +418,54 @@ _rl_isearch_dispatch (cxt, c)
{
cxt->keymap = cxt->okeymap;
cxt->sflags &= ~SF_CHGKMAP;
+ /* If we indexed into a new keymap, but didn't map to a command that
+ affects the search (lastc > 0), and the character that mapped to a
+ new keymap would have ended the search (ENDSRCH_CHAR(cxt->prevc)),
+ handle that now as if the previous char would have ended the search
+ and we would have read the current character. */
+ /* XXX - should we check cxt->mb? */
+ if (cxt->lastc > 0 && ENDSRCH_CHAR (cxt->prevc))
+ {
+ rl_stuff_char (cxt->lastc);
+ rl_execute_next (cxt->prevc);
+ /* XXX - do we insert everything in cxt->pmb? */
+ return (0);
+ }
+ /* Otherwise, if the current character is mapped to self-insert or
+ nothing (i.e., not an editing command), and the previous character
+ was a keymap index, then we need to insert both the previous
+ character and the current character into the search string. */
+ else if (cxt->lastc > 0 && cxt->prevc > 0 &&
+ cxt->keymap[cxt->prevc].type == ISKMAP &&
+ (f == 0 || f == rl_insert))
+ {
+ /* Make lastc be the next character read */
+ /* XXX - do we insert everything in cxt->mb? */
+ rl_execute_next (cxt->lastc);
+ /* Dispatch on the previous character (insert into search string) */
+ cxt->lastc = cxt->prevc;
+#if defined (HANDLE_MULTIBYTE)
+ /* Have to overwrite cxt->mb here because dispatch uses it below */
+ if (MB_CUR_MAX > 1 && rl_byte_oriented == 0)
+ {
+ if (cxt->pmb[1] == 0)
+ {
+ cxt->mb[0] = cxt->lastc; /* == cxt->prevc */
+ cxt->mb[1] = '\0';
+ }
+ else
+ memcpy (cxt->mb, cxt->pmb, sizeof (cxt->mb));
+ }
+#endif
+ cxt->prevc = 0;
+ }
+ else if (cxt->lastc > 0 && cxt->prevc > 0 && f && f != rl_insert)
+ {
+ rl_stuff_char (cxt->lastc);
+ rl_execute_next (cxt->prevc);
+ /* XXX - do we insert everything in cxt->pmb? */
+ return (0);
+ }
}
/* The characters in isearch_terminators (set from the user-settable
@@ -393,14 +483,11 @@ _rl_isearch_dispatch (cxt, c)
XXX - since _rl_input_available depends on the application-
settable keyboard timeout value, this could alternatively
use _rl_input_queued(100000) */
- if (cxt->lastc == ESC && _rl_input_available ())
+ if (cxt->lastc == ESC && (_rl_pushed_input_available () || _rl_input_available ()))
rl_execute_next (ESC);
return (0);
}
-#define ENDSRCH_CHAR(c) \
- ((CTRL_CHAR (c) || META_CHAR (c) || (c) == RUBOUT) && ((c) != CTRL ('G')))
-
#if defined (HANDLE_MULTIBYTE)
if (MB_CUR_MAX > 1 && rl_byte_oriented == 0)
{
@@ -436,7 +523,7 @@ _rl_isearch_dispatch (cxt, c)
cxt->search_string = (char *)xrealloc (cxt->search_string, cxt->search_string_size);
strcpy (cxt->search_string, last_isearch_string);
cxt->search_string_index = last_isearch_string_len;
- rl_display_search (cxt->search_string, (cxt->sflags & SF_REVERSE), -1);
+ rl_display_search (cxt->search_string, cxt->sflags, -1);
break;
}
return (1);
@@ -544,12 +631,16 @@ _rl_isearch_dispatch (cxt, c)
if (MB_CUR_MAX > 1 && rl_byte_oriented == 0)
{
int j, l;
- for (j = 0, l = strlen (cxt->mb); j < l; )
- cxt->search_string[cxt->search_string_index++] = cxt->mb[j++];
+
+ if (cxt->mb[0] == 0 || cxt->mb[1] == 0)
+ cxt->search_string[cxt->search_string_index++] = cxt->mb[0];
+ else
+ for (j = 0, l = RL_STRLEN (cxt->mb); j < l; )
+ cxt->search_string[cxt->search_string_index++] = cxt->mb[j++];
}
else
#endif
- cxt->search_string[cxt->search_string_index++] = c;
+ cxt->search_string[cxt->search_string_index++] = cxt->lastc; /* XXX - was c instead of lastc */
cxt->search_string[cxt->search_string_index] = '\0';
break;
}
@@ -606,6 +697,7 @@ _rl_isearch_dispatch (cxt, c)
/* We cannot find the search string. Ding the bell. */
rl_ding ();
cxt->history_pos = cxt->last_found_line;
+ rl_display_search (cxt->search_string, cxt->sflags, (cxt->history_pos == cxt->save_line) ? -1 : cxt->history_pos);
return 1;
}
@@ -618,7 +710,7 @@ _rl_isearch_dispatch (cxt, c)
rl_replace_line (cxt->lines[cxt->history_pos], 0);
rl_point = cxt->sline_index;
cxt->last_found_line = cxt->history_pos;
- rl_display_search (cxt->search_string, (cxt->sflags & SF_REVERSE), (cxt->history_pos == cxt->save_line) ? -1 : cxt->history_pos);
+ rl_display_search (cxt->search_string, cxt->sflags, (cxt->history_pos == cxt->save_line) ? -1 : cxt->history_pos);
}
return 1;
@@ -653,7 +745,7 @@ rl_search_history (direction, invoking_key)
RL_SETSTATE(RL_STATE_ISEARCH);
cxt = _rl_isearch_init (direction);
- rl_display_search (cxt->search_string, (cxt->sflags & SF_REVERSE), -1);
+ rl_display_search (cxt->search_string, cxt->sflags, -1);
/* If we are using the callback interface, all we do is set up here and
return. The key is that we leave RL_STATE_ISEARCH set. */
diff --git a/macro.c b/macro.c
index c2fac8a..b99a1a6 100644
--- a/macro.c
+++ b/macro.c
@@ -121,6 +121,19 @@ _rl_next_macro_key ()
#endif
}
+int
+_rl_prev_macro_key ()
+{
+ if (rl_executing_macro == 0)
+ return (0);
+
+ if (executing_macro_index == 0)
+ return (0);
+
+ executing_macro_index--;
+ return (rl_executing_macro[executing_macro_index]);
+}
+
/* Save the currently executing macro on a stack of saved macros. */
void
_rl_push_executing_macro ()
@@ -234,7 +247,7 @@ rl_end_kbd_macro (count, ignore)
return -1;
}
- current_macro_index -= rl_key_sequence_length - 1;
+ current_macro_index -= rl_key_sequence_length;
current_macro[current_macro_index] = '\0';
RL_UNSETSTATE(RL_STATE_MACRODEF);
@@ -263,6 +276,29 @@ rl_call_last_kbd_macro (count, ignore)
return 0;
}
+int
+rl_print_last_kbd_macro (count, ignore)
+ int count, ignore;
+{
+ char *m;
+
+ if (current_macro == 0)
+ {
+ rl_ding ();
+ return 0;
+ }
+ m = _rl_untranslate_macro_value (current_macro, 1);
+ rl_crlf ();
+ printf ("%s", m);
+ fflush (stdout);
+ rl_crlf ();
+ FREE (m);
+ rl_forced_update_display ();
+ rl_display_fixed = 1;
+
+ return 0;
+}
+
void
rl_push_macro_input (macro)
char *macro;
diff --git a/mbutil.c b/mbutil.c
index eeb7e55..b036e0c 100644
--- a/mbutil.c
+++ b/mbutil.c
@@ -64,6 +64,9 @@ int rl_byte_oriented = 0;
int rl_byte_oriented = 1;
#endif
+/* Ditto */
+int _rl_utf8locale = 0;
+
/* **************************************************************** */
/* */
/* Multibyte Character Utility Functions */
@@ -119,7 +122,7 @@ _rl_find_next_mbchar_internal (string, seed, count, find_non_zero)
point += tmp;
if (find_non_zero)
{
- if (wcwidth (wc) == 0)
+ if (WCWIDTH (wc) == 0)
continue;
else
count--;
@@ -132,7 +135,7 @@ _rl_find_next_mbchar_internal (string, seed, count, find_non_zero)
if (find_non_zero)
{
tmp = mbrtowc (&wc, string + point, strlen (string + point), &ps);
- while (MB_NULLWCH (tmp) == 0 && MB_INVALIDCH (tmp) == 0 && wcwidth (wc) == 0)
+ while (MB_NULLWCH (tmp) == 0 && MB_INVALIDCH (tmp) == 0 && WCWIDTH (wc) == 0)
{
point += tmp;
tmp = mbrtowc (&wc, string + point, strlen (string + point), &ps);
@@ -184,7 +187,7 @@ _rl_find_prev_mbchar_internal (string, seed, find_non_zero)
{
if (find_non_zero)
{
- if (wcwidth (wc) != 0)
+ if (WCWIDTH (wc) != 0)
prev = point;
}
else
@@ -263,7 +266,7 @@ _rl_compare_chars (buf1, pos1, ps1, buf2, pos2, ps2)
if point is invalied (point < 0 || more than string length),
it returns -1 */
int
-_rl_adjust_point(string, point, ps)
+_rl_adjust_point (string, point, ps)
char *string;
int point;
mbstate_t *ps;
diff --git a/misc.c b/misc.c
index 9f45773..da5c696 100644
--- a/misc.c
+++ b/misc.c
@@ -1,6 +1,6 @@
/* misc.c -- miscellaneous bindable readline functions. */
-/* Copyright (C) 1987-2009 Free Software Foundation, Inc.
+/* Copyright (C) 1987-2012 Free Software Foundation, Inc.
This file is part of the GNU Readline Library (Readline), a library
for reading lines of text with interactive input and history editing.
@@ -56,6 +56,8 @@
static int rl_digit_loop PARAMS((void));
static void _rl_history_set_point PARAMS((void));
+extern int history_offset;
+
/* Forward declarations used in this file */
void _rl_free_history_entry PARAMS((HIST_ENTRY *));
@@ -483,6 +485,37 @@ _rl_revert_all_lines ()
xfree (lbuf);
}
+/* Free the history list, including private readline data and take care
+ of pointer aliases to history data. Resets rl_undo_list if it points
+ to an UNDO_LIST * saved as some history entry's data member. This
+ should not be called while editing is active. */
+void
+rl_clear_history ()
+{
+ HIST_ENTRY **hlist, *hent;
+ register int i;
+ UNDO_LIST *ul, *saved_undo_list;
+
+ saved_undo_list = rl_undo_list;
+ hlist = history_list (); /* direct pointer, not copy */
+
+ for (i = 0; i < history_length; i++)
+ {
+ hent = hlist[i];
+ if (ul = (UNDO_LIST *)hent->data)
+ {
+ if (ul == saved_undo_list)
+ saved_undo_list = 0;
+ _rl_free_undo_list (ul);
+ hent->data = 0;
+ }
+ _rl_free_history_entry (hent);
+ }
+
+ history_offset = history_length = 0;
+ rl_undo_list = saved_undo_list; /* should be NULL */
+}
+
/* **************************************************************** */
/* */
/* History Commands */
@@ -623,6 +656,10 @@ rl_emacs_editing_mode (count, key)
rl_editing_mode = emacs_mode;
_rl_set_insert_mode (RL_IM_INSERT, 1); /* emacs mode default is insert mode */
_rl_keymap = emacs_standard_keymap;
+
+ if (_rl_show_mode_in_prompt)
+ _rl_reset_prompt ();
+
return 0;
}
diff --git a/nls.c b/nls.c
index e3599eb..d3b3634 100644
--- a/nls.c
+++ b/nls.c
@@ -43,6 +43,10 @@
# include <locale.h>
#endif
+#if defined (HAVE_LANGINFO_CODESET)
+# include <langinfo.h>
+#endif
+
#include <ctype.h>
#include "rldefs.h"
@@ -50,6 +54,8 @@
#include "rlshell.h"
#include "rlprivate.h"
+static int utf8locale PARAMS((char *));
+
#if !defined (HAVE_SETLOCALE)
/* A list of legal values for the LANG or LC_CTYPE environment variables.
If a locale name in this list is the value for the LC_ALL, LC_CTYPE,
@@ -72,9 +78,10 @@ static char *legal_lang_values[] =
};
static char *normalize_codeset PARAMS((char *));
-static char *find_codeset PARAMS((char *, size_t *));
#endif /* !HAVE_SETLOCALE */
+static char *find_codeset PARAMS((char *, size_t *));
+
static char *_rl_get_locale_var PARAMS((const char *));
static char *
@@ -91,7 +98,26 @@ _rl_get_locale_var (v)
return lspec;
}
-
+
+static int
+utf8locale (lspec)
+ char *lspec;
+{
+ char *cp;
+ size_t len;
+
+#if HAVE_LANGINFO_CODESET
+ cp = nl_langinfo (CODESET);
+ return (STREQ (cp, "UTF-8") || STREQ (cp, "utf8"));
+#else
+ cp = find_codeset (lspec, &len);
+
+ if (cp == 0 || len < 4 || len > 5)
+ return 0;
+ return ((len == 5) ? strncmp (cp, "UTF-8", len) == 0 : strncmp (cp, "utf8", 4) == 0);
+#endif
+}
+
/* Check for LC_ALL, LC_CTYPE, and LANG and use the first with a value
to decide the defaults for 8-bit character input and output. Returns
1 if we set eight-bit mode. */
@@ -116,6 +142,9 @@ _rl_init_eightbit ()
lspec = "";
t = setlocale (LC_CTYPE, lspec);
+ if (t && *t)
+ _rl_utf8locale = utf8locale (t);
+
if (t && *t && (t[0] != 'C' || t[1]) && (STREQ (t, "POSIX") == 0))
{
_rl_meta_flag = 1;
@@ -197,6 +226,7 @@ normalize_codeset (codeset)
return retval;
}
+#endif /* !HAVE_SETLOCALE */
/* Isolate codeset portion of locale specification. */
static char *
@@ -249,4 +279,3 @@ find_codeset (name, lenp)
return result;
}
-#endif /* !HAVE_SETLOCALE */
diff --git a/parse-colors.c b/parse-colors.c
new file mode 100644
index 0000000..98b2e9d
--- /dev/null
+++ b/parse-colors.c
@@ -0,0 +1,440 @@
+/* `dir', `vdir' and `ls' directory listing programs for GNU.
+
+ Modified by Chet Ramey for Readline.
+
+ Copyright (C) 1985, 1988, 1990-1991, 1995-2010, 2012 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 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>. */
+
+/* Written by Richard Stallman and David MacKenzie. */
+
+/* Color support by Peter Anvin <Peter.Anvin@linux.org> and Dennis
+ Flaherty <dennisf@denix.elk.miles.com> based on original patches by
+ Greg Lee <lee@uhunix.uhcc.hawaii.edu>. */
+
+#define READLINE_LIBRARY
+
+#if defined (HAVE_CONFIG_H)
+# include <config.h>
+#endif
+
+#include <stdio.h>
+
+// strdup() / strcpy()
+#if defined (HAVE_STRING_H)
+# include <string.h>
+#else /* !HAVE_STRING_H */
+# include <strings.h>
+#endif /* !HAVE_STRING_H */
+
+// abort()
+#if defined (HAVE_STDLIB_H)
+# include <stdlib.h>
+#else
+# include "ansi_stdlib.h"
+#endif /* HAVE_STDLIB_H */
+
+#include "rldefs.h" // STREQ, savestring
+#include "readline.h"
+#include "rlprivate.h"
+#include "rlshell.h"
+#include "xmalloc.h"
+
+#include "colors.h"
+#include "parse-colors.h"
+
+#if defined (COLOR_SUPPORT)
+
+static bool get_funky_string (char **dest, const char **src, bool equals_end, size_t *output_count);
+
+struct bin_str _rl_color_indicator[] =
+ {
+ { LEN_STR_PAIR ("\033[") }, // lc: Left of color sequence
+ { LEN_STR_PAIR ("m") }, // rc: Right of color sequence
+ { 0, NULL }, // ec: End color (replaces lc+no+rc)
+ { LEN_STR_PAIR ("0") }, // rs: Reset to ordinary colors
+ { 0, NULL }, // no: Normal
+ { 0, NULL }, // fi: File: default
+ { LEN_STR_PAIR ("01;34") }, // di: Directory: bright blue
+ { LEN_STR_PAIR ("01;36") }, // ln: Symlink: bright cyan
+ { LEN_STR_PAIR ("33") }, // pi: Pipe: yellow/brown
+ { LEN_STR_PAIR ("01;35") }, // so: Socket: bright magenta
+ { LEN_STR_PAIR ("01;33") }, // bd: Block device: bright yellow
+ { LEN_STR_PAIR ("01;33") }, // cd: Char device: bright yellow
+ { 0, NULL }, // mi: Missing file: undefined
+ { 0, NULL }, // or: Orphaned symlink: undefined
+ { LEN_STR_PAIR ("01;32") }, // ex: Executable: bright green
+ { LEN_STR_PAIR ("01;35") }, // do: Door: bright magenta
+ { LEN_STR_PAIR ("37;41") }, // su: setuid: white on red
+ { LEN_STR_PAIR ("30;43") }, // sg: setgid: black on yellow
+ { LEN_STR_PAIR ("37;44") }, // st: sticky: black on blue
+ { LEN_STR_PAIR ("34;42") }, // ow: other-writable: blue on green
+ { LEN_STR_PAIR ("30;42") }, // tw: ow w/ sticky: black on green
+ { LEN_STR_PAIR ("30;41") }, // ca: black on red
+ { 0, NULL }, // mh: disabled by default
+ { LEN_STR_PAIR ("\033[K") }, // cl: clear to end of line
+ };
+
+/* Parse a string as part of the LS_COLORS variable; this may involve
+ decoding all kinds of escape characters. If equals_end is set an
+ unescaped equal sign ends the string, otherwise only a : or \0
+ does. Set *OUTPUT_COUNT to the number of bytes output. Return
+ true if successful.
+
+ The resulting string is *not* null-terminated, but may contain
+ embedded nulls.
+
+ Note that both dest and src are char **; on return they point to
+ the first free byte after the array and the character that ended
+ the input string, respectively. */
+
+static bool
+get_funky_string (char **dest, const char **src, bool equals_end, size_t *output_count) {
+ char num; /* For numerical codes */
+ size_t count; /* Something to count with */
+ enum {
+ ST_GND, ST_BACKSLASH, ST_OCTAL, ST_HEX, ST_CARET, ST_END, ST_ERROR
+ } state;
+ const char *p;
+ char *q;
+
+ p = *src; /* We don't want to double-indirect */
+ q = *dest; /* the whole darn time. */
+
+ count = 0; /* No characters counted in yet. */
+ num = 0;
+
+ state = ST_GND; /* Start in ground state. */
+ while (state < ST_END)
+ {
+ switch (state)
+ {
+ case ST_GND: /* Ground state (no escapes) */
+ switch (*p)
+ {
+ case ':':
+ case '\0':
+ state = ST_END; /* End of string */
+ break;
+ case '\\':
+ state = ST_BACKSLASH; /* Backslash scape sequence */
+ ++p;
+ break;
+ case '^':
+ state = ST_CARET; /* Caret escape */
+ ++p;
+ break;
+ case '=':
+ if (equals_end)
+ {
+ state = ST_END; /* End */
+ break;
+ }
+ /* else fall through */
+ default:
+ *(q++) = *(p++);
+ ++count;
+ break;
+ }
+ break;
+
+ case ST_BACKSLASH: /* Backslash escaped character */
+ switch (*p)
+ {
+ case '0':
+ case '1':
+ case '2':
+ case '3':
+ case '4':
+ case '5':
+ case '6':
+ case '7':
+ state = ST_OCTAL; /* Octal sequence */
+ num = *p - '0';
+ break;
+ case 'x':
+ case 'X':
+ state = ST_HEX; /* Hex sequence */
+ num = 0;
+ break;
+ case 'a': /* Bell */
+ num = '\a';
+ break;
+ case 'b': /* Backspace */
+ num = '\b';
+ break;
+ case 'e': /* Escape */
+ num = 27;
+ break;
+ case 'f': /* Form feed */
+ num = '\f';
+ break;
+ case 'n': /* Newline */
+ num = '\n';
+ break;
+ case 'r': /* Carriage return */
+ num = '\r';
+ break;
+ case 't': /* Tab */
+ num = '\t';
+ break;
+ case 'v': /* Vtab */
+ num = '\v';
+ break;
+ case '?': /* Delete */
+ num = 127;
+ break;
+ case '_': /* Space */
+ num = ' ';
+ break;
+ case '\0': /* End of string */
+ state = ST_ERROR; /* Error! */
+ break;
+ default: /* Escaped character like \ ^ : = */
+ num = *p;
+ break;
+ }
+ if (state == ST_BACKSLASH)
+ {
+ *(q++) = num;
+ ++count;
+ state = ST_GND;
+ }
+ ++p;
+ break;
+
+ case ST_OCTAL: /* Octal sequence */
+ if (*p < '0' || *p > '7')
+ {
+ *(q++) = num;
+ ++count;
+ state = ST_GND;
+ }
+ else
+ num = (num << 3) + (*(p++) - '0');
+ break;
+
+ case ST_HEX: /* Hex sequence */
+ switch (*p)
+ {
+ case '0':
+ case '1':
+ case '2':
+ case '3':
+ case '4':
+ case '5':
+ case '6':
+ case '7':
+ case '8':
+ case '9':
+ num = (num << 4) + (*(p++) - '0');
+ break;
+ case 'a':
+ case 'b':
+ case 'c':
+ case 'd':
+ case 'e':
+ case 'f':
+ num = (num << 4) + (*(p++) - 'a') + 10;
+ break;
+ case 'A':
+ case 'B':
+ case 'C':
+ case 'D':
+ case 'E':
+ case 'F':
+ num = (num << 4) + (*(p++) - 'A') + 10;
+ break;
+ default:
+ *(q++) = num;
+ ++count;
+ state = ST_GND;
+ break;
+ }
+ break;
+
+ case ST_CARET: /* Caret escape */
+ state = ST_GND; /* Should be the next state... */
+ if (*p >= '@' && *p <= '~')
+ {
+ *(q++) = *(p++) & 037;
+ ++count;
+ }
+ else if (*p == '?')
+ {
+ *(q++) = 127;
+ ++count;
+ }
+ else
+ state = ST_ERROR;
+ break;
+
+ default:
+ /* should we ? */
+ /* abort (); no, we should not */
+ state = ST_ERROR;
+ break;
+ }
+ }
+
+ *dest = q;
+ *src = p;
+ *output_count = count;
+
+ return state != ST_ERROR;
+}
+#endif /* COLOR_SUPPORT */
+
+void _rl_parse_colors()
+{
+#if defined (COLOR_SUPPORT)
+ const char *p; /* Pointer to character being parsed */
+ char *buf; /* color_buf buffer pointer */
+ int state; /* State of parser */
+ int ind_no; /* Indicator number */
+ char label[3]; /* Indicator label */
+ COLOR_EXT_TYPE *ext; /* Extension we are working on */
+
+ p = sh_get_env_value ("LS_COLORS");
+ if (p == 0 || *p == '\0')
+ {
+ _rl_color_ext_list = NULL;
+ return;
+ }
+
+ ext = NULL;
+ strcpy (label, "??");
+
+ /* This is an overly conservative estimate, but any possible
+ LS_COLORS string will *not* generate a color_buf longer than
+ itself, so it is a safe way of allocating a buffer in
+ advance. */
+ buf = color_buf = savestring (p);
+
+ state = 1;
+ while (state > 0)
+ {
+ switch (state)
+ {
+ case 1: /* First label character */
+ switch (*p)
+ {
+ case ':':
+ ++p;
+ break;
+
+ case '*':
+ /* Allocate new extension block and add to head of
+ linked list (this way a later definition will
+ override an earlier one, which can be useful for
+ having terminal-specific defs override global). */
+
+ ext = (COLOR_EXT_TYPE *)xmalloc (sizeof *ext);
+ ext->next = _rl_color_ext_list;
+ _rl_color_ext_list = ext;
+
+ ++p;
+ ext->ext.string = buf;
+
+ state = (get_funky_string (&buf, &p, true, &ext->ext.len)
+ ? 4 : -1);
+ break;
+
+ case '\0':
+ state = 0; /* Done! */
+ break;
+
+ default: /* Assume it is file type label */
+ label[0] = *(p++);
+ state = 2;
+ break;
+ }
+ break;
+
+ case 2: /* Second label character */
+ if (*p)
+ {
+ label[1] = *(p++);
+ state = 3;
+ }
+ else
+ state = -1; /* Error */
+ break;
+
+ case 3: /* Equal sign after indicator label */
+ state = -1; /* Assume failure... */
+ if (*(p++) == '=')/* It *should* be... */
+ {
+ for (ind_no = 0; indicator_name[ind_no] != NULL; ++ind_no)
+ {
+ if (STREQ (label, indicator_name[ind_no]))
+ {
+ _rl_color_indicator[ind_no].string = buf;
+ state = (get_funky_string (&buf, &p, false,
+ &_rl_color_indicator[ind_no].len)
+ ? 1 : -1);
+ break;
+ }
+ }
+ if (state == -1)
+ {
+ _rl_errmsg ("LS_COLORS: unrecognized prefix: %s", label);
+ /* recover from an unrecognized prefix */
+ while (p && *p && *p != ':')
+ p++;
+ if (p && *p == ':')
+ state = 1;
+ else if (p && *p == 0)
+ state = 0;
+ }
+ }
+ break;
+
+ case 4: /* Equal sign after *.ext */
+ if (*(p++) == '=')
+ {
+ ext->seq.string = buf;
+ state = (get_funky_string (&buf, &p, false, &ext->seq.len)
+ ? 1 : -1);
+ }
+ else
+ state = -1;
+ /* XXX - recover here as with an unrecognized prefix? */
+ if (state == -1 && ext->ext.string)
+ _rl_errmsg ("LS_COLORS: syntax error: %s", ext->ext.string);
+ break;
+ }
+ }
+
+ if (state < 0)
+ {
+ COLOR_EXT_TYPE *e;
+ COLOR_EXT_TYPE *e2;
+
+ _rl_errmsg ("unparsable value for LS_COLORS environment variable");
+ free (color_buf);
+ for (e = _rl_color_ext_list; e != NULL; /* empty */)
+ {
+ e2 = e;
+ e = e->next;
+ free (e2);
+ }
+ _rl_color_ext_list = NULL;
+ _rl_colored_stats = 0; /* can't have colored stats without colors */
+ }
+#else /* !COLOR_SUPPORT */
+ ;
+#endif /* !COLOR_SUPPORT */
+}
diff --git a/parse-colors.h b/parse-colors.h
new file mode 100644
index 0000000..aef86f7
--- /dev/null
+++ b/parse-colors.h
@@ -0,0 +1,46 @@
+/* `dir', `vdir' and `ls' directory listing programs for GNU.
+
+ Modified by Chet Ramey for Readline.
+
+ Copyright (C) 1985, 1988, 1990-1991, 1995-2010, 2012 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 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>. */
+
+/* Written by Richard Stallman and David MacKenzie. */
+
+/* Color support by Peter Anvin <Peter.Anvin@linux.org> and Dennis
+ Flaherty <dennisf@denix.elk.miles.com> based on original patches by
+ Greg Lee <lee@uhunix.uhcc.hawaii.edu>. */
+
+#ifndef _PARSE_COLORS_H_
+#define _PARSE_COLORS_H_
+
+#include "readline.h"
+
+#define LEN_STR_PAIR(s) sizeof (s) - 1, s
+
+void _rl_parse_colors (void);
+
+static const char *const indicator_name[]=
+ {
+ "lc", "rc", "ec", "rs", "no", "fi", "di", "ln", "pi", "so",
+ "bd", "cd", "mi", "or", "ex", "do", "su", "sg", "st",
+ "ow", "tw", "ca", "mh", "cl", NULL
+ };
+
+/* Buffer for color sequences */
+static char *color_buf;
+
+#endif /* !_PARSE_COLORS_H_ */
diff --git a/posixdir.h b/posixdir.h
index bd33694..0921c5d 100644
--- a/posixdir.h
+++ b/posixdir.h
@@ -1,6 +1,6 @@
/* posixdir.h -- Posix directory reading includes and defines. */
-/* Copyright (C) 1987,1991 Free Software Foundation, Inc.
+/* Copyright (C) 1987,1991,2012 Free Software Foundation, Inc.
This file is part of GNU Bash, the Bourne Again SHell.
@@ -46,16 +46,26 @@
# define D_NAMLEN(d) ((d)->d_namlen)
#endif /* !HAVE_DIRENT_H */
+/* The bash code fairly consistenly uses d_fileno; make sure it's available */
#if defined (HAVE_STRUCT_DIRENT_D_INO) && !defined (HAVE_STRUCT_DIRENT_D_FILENO)
# define d_fileno d_ino
#endif
-#if defined (_POSIX_SOURCE) && (!defined (HAVE_STRUCT_DIRENT_D_INO) || defined (BROKEN_DIRENT_D_INO))
/* Posix does not require that the d_ino field be present, and some
systems do not provide it. */
+#if !defined (HAVE_STRUCT_DIRENT_D_INO) || defined (BROKEN_DIRENT_D_INO)
# define REAL_DIR_ENTRY(dp) 1
#else
# define REAL_DIR_ENTRY(dp) (dp->d_ino != 0)
#endif /* _POSIX_SOURCE */
+#if defined (HAVE_STRUCT_DIRENT_D_INO) && !defined (BROKEN_DIRENT_D_INO)
+# define D_INO_AVAILABLE
+#endif
+
+/* Signal the rest of the code that it can safely use dirent.d_fileno */
+#if defined (D_INO_AVAILABLE) || defined (HAVE_STRUCT_DIRENT_D_FILENO)
+# define D_FILENO_AVAILABLE 1
+#endif
+
#endif /* !_POSIXDIR_H_ */
diff --git a/posixjmp.h b/posixjmp.h
index 49bfecf..98cf718 100644
--- a/posixjmp.h
+++ b/posixjmp.h
@@ -30,11 +30,13 @@
# if !defined (__OPENNT)
# undef setjmp
# define setjmp(x) sigsetjmp((x), 1)
+# define setjmp_nosigs(x) sigsetjmp((x), 0)
# undef longjmp
# define longjmp(x, n) siglongjmp((x), (n))
# endif /* !__OPENNT */
#else
# define procenv_t jmp_buf
+# define setjmp_nosigs setjmp
#endif
#endif /* _POSIXJMP_H_ */
diff --git a/readline.c b/readline.c
index f2e4d93..03eefa6 100644
--- a/readline.c
+++ b/readline.c
@@ -1,7 +1,7 @@
/* readline.c -- a general facility for reading lines of input
with emacs style editing and completion. */
-/* Copyright (C) 1987-2009 Free Software Foundation, Inc.
+/* Copyright (C) 1987-2013 Free Software Foundation, Inc.
This file is part of the GNU Readline Library (Readline), a library
for reading lines of text with interactive input and history editing.
@@ -82,6 +82,11 @@ extern int errno;
extern void _rl_free_history_entry PARAMS((HIST_ENTRY *));
+#if defined (COLOR_SUPPORT)
+extern void _rl_parse_colors PARAMS((void)); /* XXX */
+#endif
+
+
/* Forward declarations used in this file. */
static char *readline_internal PARAMS((void));
static void readline_initialize_everything PARAMS((void));
@@ -112,7 +117,6 @@ int rl_gnu_readline_p = 1;
By default, it is the standard emacs keymap. */
Keymap _rl_keymap = emacs_standard_keymap;
-
/* The current style of editing. */
int rl_editing_mode = emacs_mode;
@@ -238,13 +242,32 @@ int rl_erase_empty_line = 0;
character bound to accept-line. */
int rl_num_chars_to_read;
-/* Line buffer and maintenence. */
+/* Line buffer and maintenance. */
char *rl_line_buffer = (char *)NULL;
int rl_line_buffer_len = 0;
/* Key sequence `contexts' */
_rl_keyseq_cxt *_rl_kscxt = 0;
+int rl_executing_key;
+char *rl_executing_keyseq = 0;
+int _rl_executing_keyseq_size = 0;
+
+/* Timeout (specified in milliseconds) when reading characters making up an
+ ambiguous multiple-key sequence */
+int _rl_keyseq_timeout = 500;
+
+#define RESIZE_KEYSEQ_BUFFER() \
+ do \
+ { \
+ if (rl_key_sequence_length + 2 >= _rl_executing_keyseq_size) \
+ { \
+ _rl_executing_keyseq_size += 16; \
+ rl_executing_keyseq = xrealloc (rl_executing_keyseq, _rl_executing_keyseq_size); \
+ } \
+ } \
+ while (0);
+
/* Forward declarations used by the display, termcap, and history code. */
/* **************************************************************** */
@@ -279,6 +302,10 @@ int _rl_revert_all_at_newline = 0;
characters corresponding to keyboard-generated signals. */
int _rl_echo_control_chars = 1;
+/* Non-zero means to prefix the displayed prompt with a character indicating
+ the editing mode: @ for emacs, : for vi-command, + for vi-insert. */
+int _rl_show_mode_in_prompt = 0;
+
/* **************************************************************** */
/* */
/* Top Level Functions */
@@ -352,6 +379,11 @@ readline (prompt)
RL_SETSTATE (RL_STATE_CALLBACK);
#endif
+#if HAVE_DECL_AUDIT_TTY && defined (ENABLE_TTY_AUDIT_SUPPORT)
+ if (value)
+ _rl_audit_tty (value);
+#endif
+
return (value);
}
@@ -369,9 +401,19 @@ readline_internal_setup ()
_rl_in_stream = rl_instream;
_rl_out_stream = rl_outstream;
+ /* Enable the meta key only for the duration of readline(), if this
+ terminal has one and the terminal has been initialized */
+ if (_rl_enable_meta & RL_ISSTATE (RL_STATE_TERMPREPPED))
+ _rl_enable_meta_key ();
+
if (rl_startup_hook)
(*rl_startup_hook) ();
+#if defined (VI_MODE)
+ if (rl_editing_mode == vi_mode)
+ rl_vi_insertion_mode (1, 'i'); /* don't want to reset last */
+#endif /* VI_MODE */
+
/* If we're not echoing, we still want to at least print a prompt, because
rl_redisplay will not do it for us. If the calling application has a
custom redisplay function, though, let that function handle it. */
@@ -394,11 +436,6 @@ readline_internal_setup ()
(*rl_redisplay_function) ();
}
-#if defined (VI_MODE)
- if (rl_editing_mode == vi_mode)
- rl_vi_insert_mode (1, 'i');
-#endif /* VI_MODE */
-
if (rl_pre_input_hook)
(*rl_pre_input_hook) ();
@@ -437,6 +474,11 @@ readline_internal_teardown (eof)
if (rl_undo_list)
rl_free_undo_list ();
+ /* Disable the meta key, if this terminal has one and we were told to use it.
+ The check whether or not we sent the enable string is in
+ _rl_disable_meta_key(); the flag is set in _rl_enable_meta_key */
+ _rl_disable_meta_key ();
+
/* Restore normal cursor, if available. */
_rl_set_insert_mode (RL_IM_INSERT, 0);
@@ -492,7 +534,11 @@ readline_internal_charloop ()
#endif
lk = _rl_last_command_was_kill;
+#if defined (HAVE_POSIX_SIGSETJMP)
+ code = sigsetjmp (_rl_top_level, 0);
+#else
code = setjmp (_rl_top_level);
+#endif
if (code)
{
@@ -511,6 +557,7 @@ readline_internal_charloop ()
/* Then initialize the argument and number of keys read. */
_rl_reset_argument ();
rl_key_sequence_length = 0;
+ rl_executing_keyseq[0] = 0;
}
RL_SETSTATE(RL_STATE_READCMD);
@@ -519,7 +566,8 @@ readline_internal_charloop ()
/* look at input.c:rl_getc() for the circumstances under which this will
be returned; punt immediately on read error without converting it to
- a newline. */
+ a newline; assume that rl_read_key has already called the signal
+ handler. */
if (c == READERR)
{
#if defined (READLINE_CALLBACKS)
@@ -531,7 +579,9 @@ readline_internal_charloop ()
#endif
}
- /* EOF typed to a non-blank line is a <NL>. */
+ /* EOF typed to a non-blank line is a <NL>. If we want to change this,
+ to force any existing line to be ignored when read(2) reads EOF,
+ for example, this is the place to change. */
if (c == EOF && rl_end)
c = NEWLINE;
@@ -743,9 +793,10 @@ _rl_dispatch_subseq (key, map, got_subseq)
{
if (RL_ISSTATE (RL_STATE_MACRODEF))
_rl_add_macro_char (ESC);
+ RESIZE_KEYSEQ_BUFFER ();
+ rl_executing_keyseq[rl_key_sequence_length++] = ESC;
map = FUNCTION_TO_KEYMAP (map, ESC);
key = UNMETA (key);
- rl_key_sequence_length += 2;
return (_rl_dispatch (key, map));
}
else
@@ -765,13 +816,19 @@ _rl_dispatch_subseq (key, map, got_subseq)
{
/* Special case rl_do_lowercase_version (). */
if (func == rl_do_lowercase_version)
+ /* Should we do anything special if key == ANYOTHERKEY? */
return (_rl_dispatch (_rl_to_lower (key), map));
rl_executing_keymap = map;
+ rl_executing_key = key;
+
+ RESIZE_KEYSEQ_BUFFER();
+ rl_executing_keyseq[rl_key_sequence_length++] = key;
+ rl_executing_keyseq[rl_key_sequence_length] = '\0';
rl_dispatching = 1;
RL_SETSTATE(RL_STATE_DISPATCHING);
- (*map[key].function)(rl_numeric_arg * rl_arg_sign, key);
+ r = (*func) (rl_numeric_arg * rl_arg_sign, key);
RL_UNSETSTATE(RL_STATE_DISPATCHING);
rl_dispatching = 0;
@@ -788,7 +845,10 @@ _rl_dispatch_subseq (key, map, got_subseq)
/* OK, there's no function bound in this map, but there is a
shadow function that was overridden when the current keymap
was created. Return -2 to note that. */
- _rl_unget_char (key);
+ if (RL_ISSTATE (RL_STATE_MACROINPUT))
+ _rl_prev_macro_key ();
+ else
+ _rl_unget_char (key);
return -2;
}
else if (got_subseq)
@@ -797,7 +857,10 @@ _rl_dispatch_subseq (key, map, got_subseq)
have a matching key, nor was one overridden. This means
we need to back up the recursion chain and find the last
subsequence that is bound to a function. */
- _rl_unget_char (key);
+ if (RL_ISSTATE (RL_STATE_MACROINPUT))
+ _rl_prev_macro_key ();
+ else
+ _rl_unget_char (key);
return -1;
}
else
@@ -820,13 +883,17 @@ _rl_dispatch_subseq (key, map, got_subseq)
check whether there's input in the queue, which there generally
will be if an arrow key has been pressed, and, if there's not,
just dispatch to (what we assume is) rl_vi_movement_mode right
- away. This is essentially an input test with a zero timeout. */
+ away. This is essentially an input test with a zero timeout (by
+ default) or a timeout determined by the value of `keyseq-timeout' */
+ /* _rl_keyseq_timeout specified in milliseconds; _rl_input_queued
+ takes microseconds, so multiply by 1000 */
if (rl_editing_mode == vi_mode && key == ESC && map == vi_insertion_keymap
- && _rl_input_queued (0) == 0)
+ && _rl_input_queued ((_rl_keyseq_timeout > 0) ? _rl_keyseq_timeout*1000 : 0) == 0)
return (_rl_dispatch (ANYOTHERKEY, FUNCTION_TO_KEYMAP (map, key)));
#endif
- rl_key_sequence_length++;
+ RESIZE_KEYSEQ_BUFFER ();
+ rl_executing_keyseq[rl_key_sequence_length++] = key;
_rl_dispatching_keymap = FUNCTION_TO_KEYMAP (map, key);
/* Allocate new context here. Use linked contexts (linked through
@@ -855,6 +922,18 @@ _rl_dispatch_subseq (key, map, got_subseq)
}
#endif
+ /* Tentative inter-character timeout for potential multi-key
+ sequences? If no input within timeout, abort sequence and
+ act as if we got non-matching input. */
+ /* _rl_keyseq_timeout specified in milliseconds; _rl_input_queued
+ takes microseconds, so multiply by 1000 */
+ if (_rl_keyseq_timeout > 0 &&
+ (RL_ISSTATE (RL_STATE_INPUTPENDING|RL_STATE_MACROINPUT) == 0) &&
+ _rl_pushed_input_available () == 0 &&
+ _rl_dispatching_keymap[ANYOTHERKEY].function &&
+ _rl_input_queued (_rl_keyseq_timeout*1000) == 0)
+ return (_rl_subseq_result (-2, map, key, got_subseq));
+
newkey = _rl_subseq_getchar (key);
if (newkey < 0)
{
@@ -875,6 +954,7 @@ _rl_dispatch_subseq (key, map, got_subseq)
case ISMACR:
if (map[key].function != 0)
{
+ rl_executing_keyseq[rl_key_sequence_length] = '\0';
macro = savestring ((char *)map[key].function);
_rl_with_macro_input (macro);
return 0;
@@ -884,6 +964,7 @@ _rl_dispatch_subseq (key, map, got_subseq)
#if defined (VI_MODE)
if (rl_editing_mode == vi_mode && _rl_keymap == vi_movement_keymap &&
key != ANYOTHERKEY &&
+ rl_key_sequence_length == 1 && /* XXX */
_rl_vi_textmod_command (key))
_rl_vi_set_last (key, rl_numeric_arg, rl_arg_sign);
#endif
@@ -935,14 +1016,20 @@ _rl_subseq_result (r, map, key, got_subseq)
/* We didn't match (r is probably -1), so return something to
tell the caller that it should try ANYOTHERKEY for an
overridden function. */
- _rl_unget_char (key);
+ if (RL_ISSTATE (RL_STATE_MACROINPUT))
+ _rl_prev_macro_key ();
+ else
+ _rl_unget_char (key);
_rl_dispatching_keymap = map;
return -2;
}
else if (r && got_subseq)
{
/* OK, back up the chain. */
- _rl_unget_char (key);
+ if (RL_ISSTATE (RL_STATE_MACROINPUT))
+ _rl_prev_macro_key ();
+ else
+ _rl_unget_char (key);
_rl_dispatching_keymap = map;
return -1;
}
@@ -971,7 +1058,7 @@ rl_initialize ()
RL_SETSTATE(RL_STATE_INITIALIZED);
}
- /* Initalize the current line information. */
+ /* Initialize the current line information. */
_rl_init_line_state ();
/* We aren't done yet. We haven't even gotten started yet! */
@@ -1091,14 +1178,19 @@ readline_initialize_everything ()
/* Try to bind a common arrow key prefix, if not already bound. */
bind_arrow_keys ();
- /* Enable the meta key, if this terminal has one. */
- if (_rl_enable_meta)
- _rl_enable_meta_key ();
-
/* If the completion parser's default word break characters haven't
been set yet, then do so now. */
if (rl_completer_word_break_characters == (char *)NULL)
rl_completer_word_break_characters = (char *)rl_basic_word_break_characters;
+
+#if defined (COLOR_SUPPORT)
+ if (_rl_colored_stats)
+ _rl_parse_colors ();
+#endif
+
+ rl_executing_keyseq = malloc (_rl_executing_keyseq_size = 16);
+ if (rl_executing_keyseq)
+ rl_executing_keyseq[0] = '\0';
}
/* If this system allows us to look at the values of the regular
@@ -1159,6 +1251,20 @@ bind_arrow_keys_internal (map)
rl_bind_keyseq_if_unbound ("\340P", rl_get_next_history);
rl_bind_keyseq_if_unbound ("\340M", rl_forward_char);
rl_bind_keyseq_if_unbound ("\340K", rl_backward_char);
+ rl_bind_keyseq_if_unbound ("\340G", rl_beg_of_line);
+ rl_bind_keyseq_if_unbound ("\340O", rl_end_of_line);
+ rl_bind_keyseq_if_unbound ("\340S", rl_delete);
+ rl_bind_keyseq_if_unbound ("\340R", rl_overwrite_mode);
+
+ /* These may or may not work because of the embedded NUL. */
+ rl_bind_keyseq_if_unbound ("\\000H", rl_get_previous_history);
+ rl_bind_keyseq_if_unbound ("\\000P", rl_get_next_history);
+ rl_bind_keyseq_if_unbound ("\\000M", rl_forward_char);
+ rl_bind_keyseq_if_unbound ("\\000K", rl_backward_char);
+ rl_bind_keyseq_if_unbound ("\\000G", rl_beg_of_line);
+ rl_bind_keyseq_if_unbound ("\\000O", rl_end_of_line);
+ rl_bind_keyseq_if_unbound ("\\000S", rl_delete);
+ rl_bind_keyseq_if_unbound ("\\000R", rl_overwrite_mode);
#endif
_rl_keymap = xkeymap;
diff --git a/readline.h b/readline.h
index 0de168c..08dcd2b 100644
--- a/readline.h
+++ b/readline.h
@@ -1,6 +1,6 @@
/* Readline.h -- the names of functions callable from within readline. */
-/* Copyright (C) 1987-2011 Free Software Foundation, Inc.
+/* Copyright (C) 1987-2013 Free Software Foundation, Inc.
This file is part of the GNU Readline Library (Readline), a library
for reading lines of text with interactive input and history editing.
@@ -39,9 +39,9 @@ extern "C" {
#endif
/* Hex-encoded Readline version number. */
-#define RL_READLINE_VERSION 0x0602 /* Readline 6.2 */
+#define RL_READLINE_VERSION 0x0603 /* Readline 6.3 */
#define RL_VERSION_MAJOR 6
-#define RL_VERSION_MINOR 2
+#define RL_VERSION_MINOR 3
/* Readline data structures. */
@@ -185,6 +185,7 @@ extern int rl_forward_search_history PARAMS((int, int));
extern int rl_start_kbd_macro PARAMS((int, int));
extern int rl_end_kbd_macro PARAMS((int, int));
extern int rl_call_last_kbd_macro PARAMS((int, int));
+extern int rl_print_last_kbd_macro PARAMS((int, int));
/* Bindable undo commands. */
extern int rl_revert_line PARAMS((int, int));
@@ -204,6 +205,8 @@ extern int rl_tty_status PARAMS((int, int));
/* Bindable commands for incremental and non-incremental history searching. */
extern int rl_history_search_forward PARAMS((int, int));
extern int rl_history_search_backward PARAMS((int, int));
+extern int rl_history_substr_search_forward PARAMS((int, int));
+extern int rl_history_substr_search_backward PARAMS((int, int));
extern int rl_noninc_forward_search PARAMS((int, int));
extern int rl_noninc_reverse_search PARAMS((int, int));
extern int rl_noninc_forward_search_again PARAMS((int, int));
@@ -339,6 +342,7 @@ extern Keymap rl_make_bare_keymap PARAMS((void));
extern Keymap rl_copy_keymap PARAMS((Keymap));
extern Keymap rl_make_keymap PARAMS((void));
extern void rl_discard_keymap PARAMS((Keymap));
+extern void rl_free_keymap PARAMS((Keymap));
extern Keymap rl_get_keymap_by_name PARAMS((const char *));
extern char *rl_get_keymap_name PARAMS((Keymap));
@@ -436,6 +440,10 @@ extern void rl_echo_signal_char PARAMS((int));
extern int rl_set_paren_blink_timeout PARAMS((int));
+/* History management functions. */
+
+extern void rl_clear_history PARAMS((void));
+
/* Undocumented. */
extern int rl_maybe_save_line PARAMS((void));
extern int rl_maybe_unsave_line PARAMS((void));
@@ -560,6 +568,13 @@ extern rl_hook_func_t *rl_pre_input_hook;
awaiting character input, or NULL, for no event handling. */
extern rl_hook_func_t *rl_event_hook;
+/* The address of a function to call if a read is interrupted by a signal. */
+extern rl_hook_func_t *rl_signal_event_hook;
+
+/* The address of a function to call if Readline needs to know whether or not
+ there is data available from the current input source. */
+extern rl_hook_func_t *rl_input_available_hook;
+
/* The address of the function to call to fetch a character from the current
Readline input stream */
extern rl_getc_func_t *rl_getc_function;
@@ -573,6 +588,10 @@ extern rl_voidfunc_t *rl_deprep_term_function;
extern Keymap rl_executing_keymap;
extern Keymap rl_binding_keymap;
+extern int rl_executing_key;
+extern char *rl_executing_keyseq;
+extern int rl_key_sequence_length;
+
/* Display variables. */
/* If non-zero, readline will erase the entire line, including any prompt,
if the only thing typed on an otherwise-blank line is something bound to
@@ -603,6 +622,10 @@ extern int rl_catch_signals;
to do that. */
extern int rl_catch_sigwinch;
+/* If non-zero, the readline SIGWINCH handler will modify LINES and
+ COLUMNS in the environment. */
+extern int rl_change_environment;
+
/* Completion variables. */
/* Pointer to the generator function for completion_matches ().
NULL means to use rl_filename_completion_function (), the default
@@ -686,6 +709,13 @@ extern rl_icppfunc_t *rl_directory_completion_hook;
it in bash to see how well it goes. */
extern rl_icppfunc_t *rl_directory_rewrite_hook;
+/* If non-zero, this is the address of a function for the completer to call
+ before deciding which character to append to a completed name. It should
+ modify the directory name passed as an argument if appropriate, and return
+ non-zero if it modifies the name. This should not worry about dequoting
+ the filename; that has already happened by the time it gets here. */
+extern rl_icppfunc_t *rl_filename_stat_hook;
+
/* If non-zero, this is the address of a function to call when reading
directory entries from the filesystem for completion and comparing
them to the partial word to be completed. The function should
diff --git a/rlconf.h b/rlconf.h
index 39f94db..1a40afc 100644
--- a/rlconf.h
+++ b/rlconf.h
@@ -1,6 +1,6 @@
/* rlconf.h -- readline configuration definitions */
-/* Copyright (C) 1992-2009 Free Software Foundation, Inc.
+/* Copyright (C) 1992-2012 Free Software Foundation, Inc.
This file is part of the GNU Readline Library (Readline), a library
for reading lines of text with interactive input and history editing.
@@ -28,8 +28,12 @@
/* Define this to get an indication of file type when listing completions. */
#define VISIBLE_STATS
+/* Define this to get support for colors when listing completions and in
+ other places. */
+#define COLOR_SUPPORT
+
/* This definition is needed by readline.c, rltty.c, and signals.c. */
-/* If on, then readline handles signals in a way that doesn't screw. */
+/* If on, then readline handles signals in a way that doesn't suck. */
#define HANDLE_SIGNALS
/* Ugly but working hack for binding prefix meta. */
@@ -58,4 +62,8 @@
/* Define this if you want the cursor to indicate insert or overwrite mode. */
/* #define CURSOR_MODE */
+/* Define this if you want to enable code that talks to the Linux kernel
+ tty auditing system. */
+#define ENABLE_TTY_AUDIT_SUPPORT
+
#endif /* _RLCONF_H_ */
diff --git a/rldefs.h b/rldefs.h
index 0257754..dab1beb 100644
--- a/rldefs.h
+++ b/rldefs.h
@@ -2,7 +2,7 @@
for readline. This should be included after any files that define
system-specific constants like _POSIX_VERSION or USG. */
-/* Copyright (C) 1987-2009 Free Software Foundation, Inc.
+/* Copyright (C) 1987-2011 Free Software Foundation, Inc.
This file is part of the GNU Readline Library (Readline), a library
for reading lines of text with interactive input and history editing.
@@ -79,8 +79,8 @@ extern char *strchr (), *strrchr ();
#define _rl_stricmp strcasecmp
#define _rl_strnicmp strncasecmp
#else
-extern int _rl_stricmp PARAMS((char *, char *));
-extern int _rl_strnicmp PARAMS((char *, char *, int));
+extern int _rl_stricmp PARAMS((const char *, const char *));
+extern int _rl_strnicmp PARAMS((const char *, const char *, int));
#endif
#if defined (HAVE_STRPBRK) && !defined (HAVE_MULTIBYTE)
@@ -148,6 +148,10 @@ extern char *_rl_strpbrk PARAMS((const char *, const char *));
: ((a)[0] == (b)[0]) && (strncmp ((a), (b), (n)) == 0))
#endif
+#if !defined (RL_STRLEN)
+# define RL_STRLEN(s) (((s) && (s)[0]) ? ((s)[1] ? ((s)[2] ? strlen(s) : 2) : 1) : 0)
+#endif
+
#if !defined (FREE)
# define FREE(x) if (x) free (x)
#endif
diff --git a/rlmbutil.h b/rlmbutil.h
index 7716a70..06d85ab 100644
--- a/rlmbutil.h
+++ b/rlmbutil.h
@@ -123,6 +123,15 @@ extern int _rl_walphabetic PARAMS((wchar_t));
#define MB_INVALIDCH(x) ((x) == (size_t)-1 || (x) == (size_t)-2)
#define MB_NULLWCH(x) ((x) == 0)
+/* Unicode combining characters range from U+0300 to U+036F */
+#define UNICODE_COMBINING_CHAR(x) ((x) >= 768 && (x) <= 879)
+
+#if defined (WCWIDTH_BROKEN)
+# define WCWIDTH(wc) ((_rl_utf8locale && UNICODE_COMBINING_CHAR(wc)) ? 0 : wcwidth(wc))
+#else
+# define WCWIDTH(wc) wcwidth(wc)
+#endif
+
#else /* !HANDLE_MULTIBYTE */
#undef MB_LEN_MAX
diff --git a/rlprivate.h b/rlprivate.h
index 384ff67..14a370d 100644
--- a/rlprivate.h
+++ b/rlprivate.h
@@ -1,7 +1,7 @@
/* rlprivate.h -- functions and variables global to the readline library,
but not intended for use by applications. */
-/* Copyright (C) 1999-2010 Free Software Foundation, Inc.
+/* Copyright (C) 1999-2012 Free Software Foundation, Inc.
This file is part of the GNU Readline Library (Readline), a library
for reading lines of text with interactive input and history editing.
@@ -42,6 +42,12 @@
if (_rl_caught_signal) _rl_signal_handler (_rl_caught_signal); \
} while (0)
+#define RL_SIG_RECEIVED() (_rl_caught_signal != 0)
+#define RL_SIGINT_RECEIVED() (_rl_caught_signal == SIGINT)
+
+#define CUSTOM_REDISPLAY_FUNC() (rl_redisplay_function != rl_redisplay)
+#define CUSTOM_INPUT_FUNC() (rl_getc_function != rl_getc)
+
/*************************************************************************
* *
* Global structs undocumented in texinfo manual and not in readline.h *
@@ -86,9 +92,11 @@ typedef struct __rl_search_context
int history_pos;
int direction;
+ int prevc;
int lastc;
#if defined (HANDLE_MULTIBYTE)
char mb[MB_LEN_MAX];
+ char pmb[MB_LEN_MAX];
#endif
char *sline;
@@ -156,6 +164,8 @@ typedef struct __rl_callback_generic_arg
typedef int _rl_callback_func_t PARAMS((_rl_callback_generic_arg *));
+typedef void _rl_sigcleanup_func_t PARAMS((int, void *));
+
/*************************************************************************
* *
* Global functions undocumented in texinfo manual and not in readline.h *
@@ -173,12 +183,14 @@ extern int rl_complete_with_tilde_expansion;
#if defined (VISIBLE_STATS)
extern int rl_visible_stats;
#endif /* VISIBLE_STATS */
+#if defined (COLOR_SUPPORT)
+extern int _rl_colored_stats;
+#endif
/* readline.c */
extern int rl_line_buffer_len;
extern int rl_arg_sign;
extern int rl_visible_prompt_length;
-extern int rl_key_sequence_length;
extern int rl_byte_oriented;
/* display.c */
@@ -189,7 +201,7 @@ extern int rl_blink_matching_paren;
/*************************************************************************
* *
- * Global functions and variables unsed and undocumented *
+ * Global functions and variables unused and undocumented *
* *
*************************************************************************/
@@ -240,6 +252,7 @@ extern void _rl_callback_data_dispose PARAMS((_rl_callback_generic_arg *));
#endif /* READLINE_CALLBACKS */
/* bind.c */
+extern char *_rl_untranslate_macro_value PARAMS((char *, int));
/* complete.c */
extern void _rl_reset_completion_state PARAMS((void));
@@ -248,6 +261,7 @@ extern void _rl_free_match_list PARAMS((char **));
/* display.c */
extern char *_rl_strip_prompt PARAMS((char *));
+extern void _rl_reset_prompt PARAMS((void));
extern void _rl_move_cursor_relative PARAMS((int, const char *));
extern void _rl_move_vert PARAMS((int));
extern void _rl_save_prompt PARAMS((void));
@@ -282,6 +296,7 @@ extern int _rl_search_getchar PARAMS((_rl_search_cxt *));
/* macro.c */
extern void _rl_with_macro_input PARAMS((char *));
extern int _rl_next_macro_key PARAMS((void));
+extern int _rl_prev_macro_key PARAMS((void));
extern void _rl_push_executing_macro PARAMS((void));
extern void _rl_pop_executing_macro PARAMS((void));
extern void _rl_add_macro_char PARAMS((int));
@@ -330,6 +345,7 @@ extern void _rl_release_sigwinch PARAMS((void));
/* terminal.c */
extern void _rl_get_screen_size PARAMS((int, int));
+extern void _rl_sigwinch_resize_terminal PARAMS((void));
extern int _rl_init_terminal_io PARAMS((const char *));
#ifdef _MINIX
extern void _rl_output_character_function PARAMS((int));
@@ -339,6 +355,7 @@ extern int _rl_output_character_function PARAMS((int));
extern void _rl_output_some_chars PARAMS((const char *, int));
extern int _rl_backspace PARAMS((int));
extern void _rl_enable_meta_key PARAMS((void));
+extern void _rl_disable_meta_key PARAMS((void));
extern void _rl_control_keypad PARAMS((int));
extern void _rl_set_cursor PARAMS((int, int));
@@ -360,6 +377,7 @@ extern int _rl_set_mark_at_pos PARAMS((int));
/* undo.c */
extern UNDO_LIST *_rl_copy_undo_entry PARAMS((UNDO_LIST *));
extern UNDO_LIST *_rl_copy_undo_list PARAMS((UNDO_LIST *));
+extern void _rl_free_undo_list PARAMS((UNDO_LIST *));
/* util.c */
#if defined (USE_VARARGS) && defined (PREFER_STDARG)
@@ -371,6 +389,7 @@ extern void _rl_ttymsg ();
extern void _rl_errmsg ();
extern void _rl_trace ();
#endif
+extern void _rl_audit_tty PARAMS((char *));
extern int _rl_tropen PARAMS((void));
@@ -441,6 +460,9 @@ extern int _rl_history_saved_point;
extern _rl_arg_cxt _rl_argcxt;
+/* nls.c */
+extern int _rl_utf8locale;
+
/* readline.c */
extern int _rl_echoing_p;
extern int _rl_horizontal_scroll_mode;
@@ -452,6 +474,7 @@ extern int _rl_output_meta_chars;
extern int _rl_bind_stty_chars;
extern int _rl_revert_all_at_newline;
extern int _rl_echo_control_chars;
+extern int _rl_show_mode_in_prompt;
extern char *_rl_comment_begin;
extern unsigned char _rl_parsing_conditionalized_out;
extern Keymap _rl_keymap;
@@ -461,6 +484,9 @@ extern int _rl_last_command_was_kill;
extern int _rl_eof_char;
extern procenv_t _rl_top_level;
extern _rl_keyseq_cxt *_rl_kscxt;
+extern int _rl_keyseq_timeout;
+
+extern int _rl_executing_keyseq_size;
/* search.c */
extern _rl_search_cxt *_rl_nscxt;
@@ -469,6 +495,9 @@ extern _rl_search_cxt *_rl_nscxt;
extern int _rl_interrupt_immediately;
extern int volatile _rl_caught_signal;
+extern _rl_sigcleanup_func_t *_rl_sigcleanup;
+extern void *_rl_sigcleanarg;
+
extern int _rl_echoctl;
extern int _rl_intr_char;
diff --git a/rlstdc.h b/rlstdc.h
index a6d2394..2aaa30b 100644
--- a/rlstdc.h
+++ b/rlstdc.h
@@ -42,4 +42,16 @@
# endif
#endif
+/* Moved from config.h.in because readline.h:rl_message depends on these
+ defines. */
+#if defined (__STDC__) && defined (HAVE_STDARG_H)
+# define PREFER_STDARG
+# define USE_VARARGS
+#else
+# if defined (HAVE_VARARGS_H)
+# define PREFER_VARARGS
+# define USE_VARARGS
+# endif
+#endif
+
#endif /* !_RL_STDC_H_ */
diff --git a/rltty.c b/rltty.c
index d237b1c..908bae1 100644
--- a/rltty.c
+++ b/rltty.c
@@ -121,7 +121,7 @@ static int set_tty_settings PARAMS((int, TIOTYPE *));
static void prepare_terminal_settings PARAMS((int, TIOTYPE, TIOTYPE *));
-static void set_special_char PARAMS((Keymap, TIOTYPE *, int, rl_command_func_t));
+static void set_special_char PARAMS((Keymap, TIOTYPE *, int, rl_command_func_t *));
static void
save_tty_chars (tiop)
@@ -341,7 +341,7 @@ static int set_tty_settings PARAMS((int, TIOTYPE *));
static void prepare_terminal_settings PARAMS((int, TIOTYPE, TIOTYPE *));
-static void set_special_char PARAMS((Keymap, TIOTYPE *, int, rl_command_func_t));
+static void set_special_char PARAMS((Keymap, TIOTYPE *, int, rl_command_func_t *));
static void _rl_bind_tty_special_chars PARAMS((Keymap, TIOTYPE));
#if defined (FLUSHO)
@@ -528,10 +528,10 @@ prepare_terminal_settings (meta_flag, oldtio, tiop)
#if defined (USE_XON_XOFF)
#if defined (IXANY)
- tiop->c_iflag &= ~(IXON | IXOFF | IXANY);
+ tiop->c_iflag &= ~(IXON | IXANY);
#else
/* `strict' Posix systems do not define IXANY. */
- tiop->c_iflag &= ~(IXON | IXOFF);
+ tiop->c_iflag &= ~IXON;
#endif /* IXANY */
#endif /* USE_XON_XOFF */
@@ -678,7 +678,7 @@ rl_deprep_terminal ()
/* Try to keep this function from being interrupted. */
_rl_block_sigint ();
- tty = rl_instream ? fileno (rl_instream) : fileno (stdout);
+ tty = rl_instream ? fileno (rl_instream) : fileno (stdin);
if (_rl_enable_keypad)
_rl_control_keypad (0);
diff --git a/rltypedefs.h b/rltypedefs.h
index 60f29a1..b113ee6 100644
--- a/rltypedefs.h
+++ b/rltypedefs.h
@@ -1,6 +1,6 @@
/* rltypedefs.h -- Type declarations for readline functions. */
-/* Copyright (C) 2000-2009 Free Software Foundation, Inc.
+/* Copyright (C) 2000-2011 Free Software Foundation, Inc.
This file is part of the GNU Readline Library (Readline), a library
for reading lines of text with interactive input and history editing.
@@ -26,18 +26,6 @@
extern "C" {
#endif
-/* Old-style */
-
-#if !defined (_FUNCTION_DEF)
-# define _FUNCTION_DEF
-
-typedef int Function ();
-typedef void VFunction ();
-typedef char *CPFunction ();
-typedef char **CPPFunction ();
-
-#endif /* _FUNCTION_DEF */
-
/* New style. */
#if !defined (_RL_FUNCTION_TYPEDEF)
diff --git a/search.c b/search.c
index 04468fc..028c250 100644
--- a/search.c
+++ b/search.c
@@ -1,6 +1,6 @@
/* search.c - code for non-incremental searching in emacs and vi modes. */
-/* Copyright (C) 1992-2009 Free Software Foundation, Inc.
+/* Copyright (C) 1992-2013 Free Software Foundation, Inc.
This file is part of the GNU Readline Library (Readline), a library
for reading lines of text with interactive input and history editing.
@@ -43,6 +43,7 @@
#include "readline.h"
#include "history.h"
+#include "histlib.h"
#include "rlprivate.h"
#include "xmalloc.h"
@@ -66,6 +67,8 @@ static char *prev_line_found = (char *) NULL;
static int rl_history_search_len;
static int rl_history_search_pos;
+static int rl_history_search_flags;
+
static char *history_search_string;
static int history_string_size;
@@ -74,7 +77,7 @@ static int noninc_search_from_pos PARAMS((char *, int, int));
static int noninc_dosearch PARAMS((char *, int));
static int noninc_search PARAMS((int, int));
static int rl_history_search_internal PARAMS((int, int));
-static void rl_history_search_reinit PARAMS((void));
+static void rl_history_search_reinit PARAMS((int));
static _rl_search_cxt *_rl_nsearch_init PARAMS((int, int));
static int _rl_nsearch_cleanup PARAMS((_rl_search_cxt *, int));
@@ -169,7 +172,8 @@ noninc_dosearch (string, dir)
oldpos = where_history ();
history_set_pos (noninc_history_pos);
- entry = current_history ();
+ entry = current_history (); /* will never be NULL after successful search */
+
#if defined (VI_MODE)
if (rl_editing_mode != vi_mode)
#endif
@@ -210,7 +214,7 @@ _rl_nsearch_init (dir, pchar)
rl_end = rl_point = 0;
p = _rl_make_prompt_for_search (pchar ? pchar : ':');
- rl_message ("%s", p, 0);
+ rl_message ("%s", p);
xfree (p);
RL_SETSTATE(RL_STATE_NSEARCH);
@@ -453,15 +457,19 @@ rl_history_search_internal (count, dir)
{
HIST_ENTRY *temp;
int ret, oldpos;
+ char *t;
rl_maybe_save_line ();
temp = (HIST_ENTRY *)NULL;
- /* Search COUNT times through the history for a line whose prefix
- matches history_search_string. When this loop finishes, TEMP,
- if non-null, is the history line to copy into the line buffer. */
+ /* Search COUNT times through the history for a line matching
+ history_search_string. If history_search_string[0] == '^', the
+ line must match from the start; otherwise any substring can match.
+ When this loop finishes, TEMP, if non-null, is the history line to
+ copy into the line buffer. */
while (count)
{
+ RL_CHECK_SIGNALS ();
ret = noninc_search_from_pos (history_search_string, rl_history_search_pos + dir, dir);
if (ret == -1)
break;
@@ -470,7 +478,7 @@ rl_history_search_internal (count, dir)
rl_history_search_pos = ret;
oldpos = where_history ();
history_set_pos (rl_history_search_pos);
- temp = current_history ();
+ temp = current_history (); /* will never be NULL after successful search */
history_set_pos (oldpos);
/* Don't find multiple instances of the same line. */
@@ -505,35 +513,49 @@ rl_history_search_internal (count, dir)
/* Copy the line we found into the current line buffer. */
make_history_line_current (temp);
- rl_point = rl_history_search_len;
+ if (rl_history_search_flags & ANCHORED_SEARCH)
+ rl_point = rl_history_search_len; /* easy case */
+ else
+ {
+ t = strstr (rl_line_buffer, history_search_string);
+ rl_point = t ? (int)(t - rl_line_buffer) + rl_history_search_len : rl_end;
+ }
rl_mark = rl_end;
return 0;
}
static void
-rl_history_search_reinit ()
+rl_history_search_reinit (flags)
+ int flags;
{
+ int sind;
+
rl_history_search_pos = where_history ();
rl_history_search_len = rl_point;
+ rl_history_search_flags = flags;
+
prev_line_found = (char *)NULL;
if (rl_point)
{
+ /* Allocate enough space for anchored and non-anchored searches */
if (rl_history_search_len >= history_string_size - 2)
{
history_string_size = rl_history_search_len + 2;
history_search_string = (char *)xrealloc (history_search_string, history_string_size);
}
- history_search_string[0] = '^';
- strncpy (history_search_string + 1, rl_line_buffer, rl_point);
- history_search_string[rl_point + 1] = '\0';
+ sind = 0;
+ if (flags & ANCHORED_SEARCH)
+ history_search_string[sind++] = '^';
+ strncpy (history_search_string + sind, rl_line_buffer, rl_point);
+ history_search_string[rl_point + sind] = '\0';
}
_rl_free_saved_history_line ();
}
/* Search forward in the history for the string of characters
from the start of the line to rl_point. This is a non-incremental
- search. */
+ search. The search is anchored to the beginning of the history line. */
int
rl_history_search_forward (count, ignore)
int count, ignore;
@@ -543,7 +565,7 @@ rl_history_search_forward (count, ignore)
if (rl_last_func != rl_history_search_forward &&
rl_last_func != rl_history_search_backward)
- rl_history_search_reinit ();
+ rl_history_search_reinit (ANCHORED_SEARCH);
if (rl_history_search_len == 0)
return (rl_get_next_history (count, ignore));
@@ -562,7 +584,46 @@ rl_history_search_backward (count, ignore)
if (rl_last_func != rl_history_search_forward &&
rl_last_func != rl_history_search_backward)
- rl_history_search_reinit ();
+ rl_history_search_reinit (ANCHORED_SEARCH);
+
+ if (rl_history_search_len == 0)
+ return (rl_get_previous_history (count, ignore));
+ return (rl_history_search_internal (abs (count), (count > 0) ? -1 : 1));
+}
+
+/* Search forward in the history for the string of characters
+ from the start of the line to rl_point. This is a non-incremental
+ search. The search succeeds if the search string is present anywhere
+ in the history line. */
+int
+rl_history_substr_search_forward (count, ignore)
+ int count, ignore;
+{
+ if (count == 0)
+ return (0);
+
+ if (rl_last_func != rl_history_substr_search_forward &&
+ rl_last_func != rl_history_substr_search_backward)
+ rl_history_search_reinit (NON_ANCHORED_SEARCH);
+
+ if (rl_history_search_len == 0)
+ return (rl_get_next_history (count, ignore));
+ return (rl_history_search_internal (abs (count), (count > 0) ? 1 : -1));
+}
+
+/* Search backward through the history for the string of characters
+ from the start of the line to rl_point. This is a non-incremental
+ search. */
+int
+rl_history_substr_search_backward (count, ignore)
+ int count, ignore;
+{
+ if (count == 0)
+ return (0);
+
+ if (rl_last_func != rl_history_substr_search_forward &&
+ rl_last_func != rl_history_substr_search_backward)
+ rl_history_search_reinit (NON_ANCHORED_SEARCH);
if (rl_history_search_len == 0)
return (rl_get_previous_history (count, ignore));
diff --git a/shell.c b/shell.c
index ac0fb36..6947295 100644
--- a/shell.c
+++ b/shell.c
@@ -59,6 +59,8 @@
#include "rlstdc.h"
#include "rlshell.h"
+#include "rldefs.h"
+
#include "xmalloc.h"
#if defined (HAVE_GETPWUID) && !defined (HAVE_GETPW_DECLS)
@@ -120,31 +122,27 @@ sh_single_quote (string)
/* Set the environment variables LINES and COLUMNS to lines and cols,
respectively. */
+static char setenv_buf[INT_STRLEN_BOUND (int) + 1];
+static char putenv_buf1[INT_STRLEN_BOUND (int) + 6 + 1]; /* sizeof("LINES=") == 6 */
+static char putenv_buf2[INT_STRLEN_BOUND (int) + 8 + 1]; /* sizeof("COLUMNS=") == 8 */
+
void
sh_set_lines_and_columns (lines, cols)
int lines, cols;
{
- char *b;
-
#if defined (HAVE_SETENV)
- b = (char *)xmalloc (INT_STRLEN_BOUND (int) + 1);
- sprintf (b, "%d", lines);
- setenv ("LINES", b, 1);
- xfree (b);
-
- b = (char *)xmalloc (INT_STRLEN_BOUND (int) + 1);
- sprintf (b, "%d", cols);
- setenv ("COLUMNS", b, 1);
- xfree (b);
+ sprintf (setenv_buf, "%d", lines);
+ setenv ("LINES", setenv_buf, 1);
+
+ sprintf (setenv_buf, "%d", cols);
+ setenv ("COLUMNS", setenv_buf, 1);
#else /* !HAVE_SETENV */
# if defined (HAVE_PUTENV)
- b = (char *)xmalloc (INT_STRLEN_BOUND (int) + sizeof ("LINES=") + 1);
- sprintf (b, "LINES=%d", lines);
- putenv (b);
+ sprintf (putenv_buf1, "LINES=%d", lines);
+ putenv (putenv_buf1);
- b = (char *)xmalloc (INT_STRLEN_BOUND (int) + sizeof ("COLUMNS=") + 1);
- sprintf (b, "COLUMNS=%d", cols);
- putenv (b);
+ sprintf (putenv_buf2, "COLUMNS=%d", cols);
+ putenv (putenv_buf2);
# endif /* HAVE_PUTENV */
#endif /* !HAVE_SETENV */
}
@@ -159,15 +157,27 @@ sh_get_env_value (varname)
char *
sh_get_home_dir ()
{
- char *home_dir;
+ static char *home_dir = (char *)NULL;
struct passwd *entry;
+ if (home_dir)
+ return (home_dir);
+
home_dir = (char *)NULL;
#if defined (HAVE_GETPWUID)
+# if defined (__TANDEM)
+ entry = getpwnam (getlogin ());
+# else
entry = getpwuid (getuid ());
+# endif
if (entry)
- home_dir = entry->pw_dir;
+ home_dir = savestring (entry->pw_dir);
+#endif
+
+#if defined (HAVE_GETPWENT)
+ endpwent (); /* some systems need this */
#endif
+
return (home_dir);
}
diff --git a/shlib/Makefile.in b/shlib/Makefile.in
index 902a5ab..eb16211 100644
--- a/shlib/Makefile.in
+++ b/shlib/Makefile.in
@@ -30,7 +30,7 @@ RL_LIBRARY_NAME = readline
datarootdir = @datarootdir@
srcdir = @srcdir@
-VPATH = .:@top_srcdir@
+VPATH = @top_srcdir@
topdir = @top_srcdir@
BUILD_DIR = @BUILD_DIR@
@@ -134,21 +134,29 @@ CSOURCES = $(topdir)/readline.c $(topdir)/funmap.c $(topdir)/keymaps.c \
$(topdir)/histfile.c $(topdir)/nls.c $(topdir)/search.c \
$(topdir)/shell.c $(topdir)/savestring.c $(topdir)/tilde.c \
$(topdir)/text.c $(topdir)/misc.c $(topdir)/compat.c \
- $(topdir)/mbutil.c
+ $(topdir)/colors.c $(topdir)/parse-colors.c \
+ $(topdir)/mbutil.c $(topdir)/xfree.c
# The header files for this library.
-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 xmalloc.h rlprivate.h rlshell.h rlmbutil.h
+HSOURCES = $(topdir)/readline.h $(topdir)/rldefs.h $(topdir)/chardefs.h \
+ $(topdir)/keymaps.h $(topdir)/history.h $(topdir)/histlib.h \
+ $(topdir)/posixstat.h $(topdir)/posixdir.h $(topdir)/posixjmp.h \
+ $(topdir)/tilde.h $(topdir)/rlconf.h $(topdir)/rltty.h \
+ $(topdir)/ansi_stdlib.h $(topdir)/tcap.h $(topdir)/rlstdc.h \
+ $(topdir)/xmalloc.h $(topdir)/rlprivate.h $(topdir)/rlshell.h \
+ $(topdir)/rltypedefs.h $(topdir)/rlmbutil.h \
+ $(topdir)/colors.h $(topdir)/parse-colors.h
SHARED_HISTOBJ = history.so histexpand.so histfile.so histsearch.so shell.so \
mbutil.so
SHARED_TILDEOBJ = tilde.so
+SHARED_COLORSOBJ = colors.so parse-colors.so
SHARED_OBJ = readline.so vi_mode.so funmap.so keymaps.so parens.so search.so \
rltty.so complete.so bind.so isearch.so display.so signals.so \
util.so kill.so undo.so macro.so input.so callback.so terminal.so \
- text.so nls.so misc.so xmalloc.so xfree.so $(SHARED_HISTOBJ) $(SHARED_TILDEOBJ) \
- compat.so
+ text.so nls.so misc.so \
+ $(SHARED_HISTOBJ) $(SHARED_TILDEOBJ) $(SHARED_COLORSOBJ) \
+ xmalloc.so xfree.so compat.so
##########################################################################
@@ -183,16 +191,26 @@ installdirs: $(topdir)/support/mkdirs
-$(SHELL) $(topdir)/support/mkdirs $(DESTDIR)$(libdir)
-$(SHELL) $(topdir)/support/mkdirs $(DESTDIR)$(bindir)
-install: installdirs $(SHLIB_STATUS)
+install-supported: installdirs $(SHLIB_STATUS)
$(SHELL) $(topdir)/support/shlib-install -O $(host_os) -V $(host_vendor) -d $(DESTDIR)$(libdir) -b $(DESTDIR)$(bindir) -i "$(INSTALL_DATA)" $(SHARED_HISTORY)
$(SHELL) $(topdir)/support/shlib-install -O $(host_os) -V $(host_vendor) -d $(DESTDIR)$(libdir) -b $(DESTDIR)$(bindir) -i "$(INSTALL_DATA)" $(SHARED_READLINE)
@echo install: you may need to run ldconfig
-uninstall:
+install-unsupported:
+ @echo install: shared libraries not supported
+
+install: install-$(SHLIB_STATUS)
+
+uninstall-supported:
$(SHELL) $(topdir)/support/shlib-install -O $(host_os) -V $(host_vendor) -d $(DESTDIR)$(libdir) -b $(DESTDIR)$(bindir) -U $(SHARED_HISTORY)
$(SHELL) $(topdir)/support/shlib-install -O $(host_os) -V $(host_vendor) -d $(DESTDIR)$(libdir) -b $(DESTDIR)$(bindir) -U $(SHARED_READLINE)
@echo uninstall: you may need to run ldconfig
+uninstall-unsupported:
+ @echo uninstall: shared libraries not supported
+
+uninstall: uninstall-$(SHLIB_STATUS)
+
clean mostlyclean: force
$(RM) $(SHARED_OBJ) $(SHARED_LIBS)
@@ -217,7 +235,7 @@ callback.so: $(topdir)/rldefs.h ${BUILD_DIR}/config.h
callback.so: $(topdir)/readline.h $(topdir)/keymaps.h $(topdir)/chardefs.h
callback.so: $(topdir)/rltypedefs.h
callback.so: $(topdir)/tilde.h
-complete.so: $(topdir)/ansi_stdlib.h posixdir.h $(topdir)/posixstat.h
+complete.so: $(topdir)/ansi_stdlib.h $(topdir)/posixdir.h $(topdir)/posixstat.h
complete.so: $(topdir)/rldefs.h ${BUILD_DIR}/config.h $(topdir)/rlconf.h
complete.so: $(topdir)/readline.h $(topdir)/keymaps.h $(topdir)/chardefs.h
complete.so: $(topdir)/rltypedefs.h
@@ -253,7 +271,6 @@ isearch.so: $(topdir)/rldefs.h ${BUILD_DIR}/config.h $(topdir)/rlconf.h
isearch.so: $(topdir)/readline.h $(topdir)/keymaps.h $(topdir)/chardefs.h
isearch.so: $(topdir)/rltypedefs.h
isearch.so: $(topdir)/ansi_stdlib.h $(topdir)/history.h $(topdir)/tilde.h
-keymaps.so: emacs_keymap.c vi_keymap.c
keymaps.so: $(topdir)/keymaps.h $(topdir)/chardefs.h $(topdir)/rlconf.h
keymaps.so: $(topdir)/readline.h $(topdir)/keymaps.h $(topdir)/chardefs.h
keymaps.so: $(topdir)/rltypedefs.h
@@ -330,6 +347,16 @@ shell.so: $(topdir)/rlshell.h
terminal.so: $(topdir)/rlshell.h
histexpand.so: $(topdir)/rlshell.h
+colors.so: $(BUILD_DIR)/config.h $(topdir)/colors.h
+colors.so: $(topdir)/rlconf.h
+colors.so: $(topdir)/readline.h $(topdir)/keymaps.h $(topdir)/rltypedefs.h
+colors.so: $(topdir)/chardefs.h $(topdir)/tilde.h $(topdir)/rlstdc.h
+colors.so: $(topdir)/ansi_stdlib.h $(topdir)/posixstat.h
+parse-colors.so: $(BUILD_DIR)/config.h $(topdir)/colors.h $(topdir)/parse-colors.h
+parse-colors.so: $(topdir)/rldefs.h $(topdir)/rlconf.h
+parse-colors.so: $(topdir)/readline.h $(topdir)/keymaps.h $(topdir)/rltypedefs.h
+parse-colors.so: $(topdir)/chardefs.h $(topdir)/tilde.h $(topdir)/rlstdc.h
+
bind.so: $(topdir)/rlprivate.h
callback.so: $(topdir)/rlprivate.h
complete.so: $(topdir)/rlprivate.h
@@ -350,9 +377,12 @@ terminal.so: $(topdir)/rlprivate.h
text.so: $(topdir)/rlprivate.h
undo.so: $(topdir)/rlprivate.h
util.so: $(topdir)/rlprivate.h
-vi_mode.so: $(topdir)/rlprivate.h
+vi_mode.so: $(topdir)/
+colors.so: $(topdir)/rlprivate.h
+parse-colors.so: $(topdir)/rlprivate.h
bind.so: $(topdir)/xmalloc.h
+callback.so: $(topdir)/xmalloc.h
complete.so: $(topdir)/xmalloc.h
display.so: $(topdir)/xmalloc.h
funmap.so: $(topdir)/xmalloc.h
@@ -378,18 +408,22 @@ util.so: $(topdir)/xmalloc.h
vi_mode.so: $(topdir)/xmalloc.h
xfree.so: $(topdir)/xmalloc.h
xmalloc.so: $(topdir)/xmalloc.h
-
-complete.o: $(topdir)/rlmbutil.h
-display.o: $(topdir)/rlmbutil.h
-histexpand.o: $(topdir)/rlmbutil.h
-input.o: $(topdir)/rlmbutil.h
-isearch.o: $(topdir)/rlmbutil.h
-mbutil.o: $(topdir)/rlmbutil.h
-misc.o: $(topdir)/rlmbutil.h
-readline.o: $(topdir)/rlmbutil.h
-search.o: $(topdir)/rlmbutil.h
-text.o: $(topdir)/rlmbutil.h
-vi_mode.o: $(topdir)/rlmbutil.h
+colors.so: $(topdir)/xmalloc.h
+parse-colors.so: $(topdir)/xmalloc.h
+
+complete.so: $(topdir)/rlmbutil.h
+display.so: $(topdir)/rlmbutil.h
+histexpand.so: $(topdir)/rlmbutil.h
+input.so: $(topdir)/rlmbutil.h
+isearch.so: $(topdir)/rlmbutil.h
+mbutil.so: $(topdir)/rlmbutil.h
+misc.so: $(topdir)/rlmbutil.h
+readline.so: $(topdir)/rlmbutil.h
+search.so: $(topdir)/rlmbutil.h
+text.so: $(topdir)/rlmbutil.h
+vi_mode.so: $(topdir)/rlmbutil.h
+colors.so: $(topdir)/rlmbutil.h
+parse-colors.so: $(topdir)/rlmbutil.h
bind.so: $(topdir)/bind.c
callback.so: $(topdir)/callback.c
@@ -456,6 +490,9 @@ vi_mode.so: vi_mode.c
xfree.so: xfree.c
xmalloc.so: xmalloc.c
+colors.so: colors.c
+parse-colors.so: parse-colors.c
+
histexpand.so: histexpand.c
histfile.so: histfile.c
history.so: history.c
diff --git a/signals.c b/signals.c
index 6a68d78..61f02f9 100644
--- a/signals.c
+++ b/signals.c
@@ -1,6 +1,6 @@
/* signals.c -- signal handling support for readline. */
-/* Copyright (C) 1987-2009 Free Software Foundation, Inc.
+/* Copyright (C) 1987-2011 Free Software Foundation, Inc.
This file is part of the GNU Readline Library (Readline), a library
for reading lines of text with interactive input and history editing.
@@ -80,6 +80,7 @@ typedef struct { SigHandler *sa_handler; int sa_mask, sa_flags; } sighandler_cxt
static SigHandler *rl_set_sighandler PARAMS((int, SigHandler *, sighandler_cxt *));
static void rl_maybe_set_sighandler PARAMS((int, SigHandler *, sighandler_cxt *));
+static void rl_maybe_restore_sighandler PARAMS((int, sighandler_cxt *));
static RETSIGTYPE rl_signal_handler PARAMS((int));
static RETSIGTYPE _rl_handle_signal PARAMS((int));
@@ -87,7 +88,7 @@ static RETSIGTYPE _rl_handle_signal PARAMS((int));
/* Exported variables for use by applications. */
/* If non-zero, readline will install its own signal handlers for
- SIGINT, SIGTERM, SIGQUIT, SIGALRM, SIGTSTP, SIGTTIN, and SIGTTOU. */
+ SIGINT, SIGTERM, SIGHUP, SIGQUIT, SIGALRM, SIGTSTP, SIGTTIN, and SIGTTOU. */
int rl_catch_signals = 1;
/* If non-zero, readline will install a signal handler for SIGWINCH. */
@@ -118,7 +119,7 @@ static int sigwinch_set_flag;
/* */
/* **************************************************************** */
-static sighandler_cxt old_int, old_term, old_alrm, old_quit;
+static sighandler_cxt old_int, old_term, old_hup, old_alrm, old_quit;
#if defined (SIGTSTP)
static sighandler_cxt old_tstp, old_ttou, old_ttin;
#endif
@@ -126,6 +127,9 @@ static sighandler_cxt old_tstp, old_ttou, old_ttin;
static sighandler_cxt old_winch;
#endif
+_rl_sigcleanup_func_t *_rl_sigcleanup;
+void *_rl_sigcleanarg;
+
/* Readline signal handler functions. */
/* Called from RL_CHECK_SIGNALS() macro */
@@ -135,7 +139,21 @@ _rl_signal_handler (sig)
{
_rl_caught_signal = 0; /* XXX */
- _rl_handle_signal (sig);
+#if defined (SIGWINCH)
+ if (sig == SIGWINCH)
+ {
+ rl_resize_terminal ();
+ /* XXX - experimental for now */
+ /* Call a signal hook because though we called the original signal handler
+ in rl_sigwinch_handler below, we will not resend the signal to
+ ourselves. */
+ if (rl_signal_event_hook)
+ (*rl_signal_event_hook) ();
+ }
+ else
+#endif
+ _rl_handle_signal (sig);
+
SIGHANDLER_RETURN;
}
@@ -143,7 +161,7 @@ static RETSIGTYPE
rl_signal_handler (sig)
int sig;
{
- if (_rl_interrupt_immediately || RL_ISSTATE(RL_STATE_CALLBACK))
+ if (_rl_interrupt_immediately)
{
_rl_interrupt_immediately = 0;
_rl_handle_signal (sig);
@@ -181,6 +199,15 @@ _rl_handle_signal (sig)
rl_set_sighandler (sig, SIG_IGN, &dummy_cxt);
#endif /* !HAVE_BSD_SIGNALS && !HAVE_POSIX_SIGNALS */
+ /* If there's a sig cleanup function registered, call it and `deregister'
+ the cleanup function to avoid multiple calls */
+ if (_rl_sigcleanup)
+ {
+ (*_rl_sigcleanup) (sig, _rl_sigcleanarg);
+ _rl_sigcleanup = 0;
+ _rl_sigcleanarg = 0;
+ }
+
switch (sig)
{
case SIGINT:
@@ -189,6 +216,7 @@ _rl_handle_signal (sig)
/* FALLTHROUGH */
case SIGTERM:
+ case SIGHUP:
#if defined (SIGTSTP)
case SIGTSTP:
case SIGTTOU:
@@ -232,7 +260,7 @@ _rl_handle_signal (sig)
# endif /* HAVE_BSD_SIGNALS */
#endif /* !HAVE_POSIX_SIGNALS */
- rl_reset_after_signal ();
+ rl_reset_after_signal ();
}
RL_UNSETSTATE(RL_STATE_SIGHANDLER);
@@ -257,7 +285,7 @@ rl_sigwinch_handler (sig)
#endif
RL_SETSTATE(RL_STATE_SIGHANDLER);
- rl_resize_terminal ();
+ _rl_caught_signal = sig;
/* If another sigwinch handler has been installed, call it. */
oh = (SigHandler *)old_winch.sa_handler;
@@ -317,6 +345,8 @@ rl_set_sighandler (sig, handler, ohandler)
return (ohandler->sa_handler);
}
+/* Set disposition of SIG to HANDLER, returning old state in OHANDLER. Don't
+ change disposition if OHANDLER indicates the signal was ignored. */
static void
rl_maybe_set_sighandler (sig, handler, ohandler)
int sig;
@@ -327,11 +357,29 @@ rl_maybe_set_sighandler (sig, handler, ohandler)
SigHandler *oh;
sigemptyset (&dummy.sa_mask);
+ dummy.sa_flags = 0;
oh = rl_set_sighandler (sig, handler, ohandler);
if (oh == (SigHandler *)SIG_IGN)
rl_sigaction (sig, ohandler, &dummy);
}
+/* Set the disposition of SIG to HANDLER, if HANDLER->sa_handler indicates the
+ signal was not being ignored. MUST only be called for signals whose
+ disposition was changed using rl_maybe_set_sighandler or for which the
+ SIG_IGN check was performed inline (e.g., SIGALRM below). */
+static void
+rl_maybe_restore_sighandler (sig, handler)
+ int sig;
+ sighandler_cxt *handler;
+{
+ sighandler_cxt dummy;
+
+ sigemptyset (&dummy.sa_mask);
+ dummy.sa_flags = 0;
+ if (handler->sa_handler != SIG_IGN)
+ rl_sigaction (sig, handler, &dummy);
+}
+
int
rl_set_signals ()
{
@@ -349,6 +397,7 @@ rl_set_signals ()
sigaddset (&bset, SIGINT);
sigaddset (&bset, SIGTERM);
+ sigaddset (&bset, SIGHUP);
#if defined (SIGQUIT)
sigaddset (&bset, SIGQUIT);
#endif
@@ -377,6 +426,7 @@ rl_set_signals ()
rl_maybe_set_sighandler (SIGINT, rl_signal_handler, &old_int);
rl_maybe_set_sighandler (SIGTERM, rl_signal_handler, &old_term);
+ rl_maybe_set_sighandler (SIGHUP, rl_signal_handler, &old_hup);
#if defined (SIGQUIT)
rl_maybe_set_sighandler (SIGQUIT, rl_signal_handler, &old_quit);
#endif
@@ -434,25 +484,31 @@ rl_clear_signals ()
{
sigemptyset (&dummy.sa_mask);
- rl_sigaction (SIGINT, &old_int, &dummy);
- rl_sigaction (SIGTERM, &old_term, &dummy);
+ /* Since rl_maybe_set_sighandler doesn't override a SIG_IGN handler,
+ we should in theory not have to restore a handler where
+ old_xxx.sa_handler == SIG_IGN. That's what rl_maybe_restore_sighandler
+ does. Fewer system calls should reduce readline's per-line
+ overhead */
+ rl_maybe_restore_sighandler (SIGINT, &old_int);
+ rl_maybe_restore_sighandler (SIGTERM, &old_term);
+ rl_maybe_restore_sighandler (SIGHUP, &old_hup);
#if defined (SIGQUIT)
- rl_sigaction (SIGQUIT, &old_quit, &dummy);
+ rl_maybe_restore_sighandler (SIGQUIT, &old_quit);
#endif
#if defined (SIGALRM)
- rl_sigaction (SIGALRM, &old_alrm, &dummy);
+ rl_maybe_restore_sighandler (SIGALRM, &old_alrm);
#endif
#if defined (SIGTSTP)
- rl_sigaction (SIGTSTP, &old_tstp, &dummy);
+ rl_maybe_restore_sighandler (SIGTSTP, &old_tstp);
#endif /* SIGTSTP */
#if defined (SIGTTOU)
- rl_sigaction (SIGTTOU, &old_ttou, &dummy);
+ rl_maybe_restore_sighandler (SIGTTOU, &old_ttou);
#endif /* SIGTTOU */
#if defined (SIGTTIN)
- rl_sigaction (SIGTTIN, &old_ttin, &dummy);
+ rl_maybe_restore_sighandler (SIGTTIN, &old_ttin);
#endif /* SIGTTIN */
signals_set_flag = 0;
@@ -540,21 +596,6 @@ _rl_block_sigint ()
if (sigint_blocked)
return;
-#if defined (HAVE_POSIX_SIGNALS)
- sigemptyset (&sigint_set);
- sigemptyset (&sigint_oset);
- sigaddset (&sigint_set, SIGINT);
- sigprocmask (SIG_BLOCK, &sigint_set, &sigint_oset);
-#else /* !HAVE_POSIX_SIGNALS */
-# if defined (HAVE_BSD_SIGNALS)
- sigint_oldmask = sigblock (sigmask (SIGINT));
-# else /* !HAVE_BSD_SIGNALS */
-# if defined (HAVE_USG_SIGHOLD)
- sighold (SIGINT);
-# endif /* HAVE_USG_SIGHOLD */
-# endif /* !HAVE_BSD_SIGNALS */
-#endif /* !HAVE_POSIX_SIGNALS */
-
sigint_blocked = 1;
}
@@ -565,19 +606,8 @@ _rl_release_sigint ()
if (sigint_blocked == 0)
return;
-#if defined (HAVE_POSIX_SIGNALS)
- sigprocmask (SIG_SETMASK, &sigint_oset, (sigset_t *)NULL);
-#else
-# if defined (HAVE_BSD_SIGNALS)
- sigsetmask (sigint_oldmask);
-# else /* !HAVE_BSD_SIGNALS */
-# if defined (HAVE_USG_SIGHOLD)
- sigrelse (SIGINT);
-# endif /* HAVE_USG_SIGHOLD */
-# endif /* !HAVE_BSD_SIGNALS */
-#endif /* !HAVE_POSIX_SIGNALS */
-
sigint_blocked = 0;
+ RL_CHECK_SIGNALS ();
}
/* Cause SIGWINCH to not be delivered until the corresponding call to
@@ -588,6 +618,8 @@ _rl_block_sigwinch ()
if (sigwinch_blocked)
return;
+#if defined (SIGWINCH)
+
#if defined (HAVE_POSIX_SIGNALS)
sigemptyset (&sigwinch_set);
sigemptyset (&sigwinch_oset);
@@ -603,6 +635,8 @@ _rl_block_sigwinch ()
# endif /* !HAVE_BSD_SIGNALS */
#endif /* !HAVE_POSIX_SIGNALS */
+#endif /* SIGWINCH */
+
sigwinch_blocked = 1;
}
@@ -613,6 +647,8 @@ _rl_release_sigwinch ()
if (sigwinch_blocked == 0)
return;
+#if defined (SIGWINCH)
+
#if defined (HAVE_POSIX_SIGNALS)
sigprocmask (SIG_SETMASK, &sigwinch_oset, (sigset_t *)NULL);
#else
@@ -625,6 +661,8 @@ _rl_release_sigwinch ()
# endif /* !HAVE_BSD_SIGNALS */
#endif /* !HAVE_POSIX_SIGNALS */
+#endif /* SIGWINCH */
+
sigwinch_blocked = 0;
}
diff --git a/support/config.guess b/support/config.guess
index 994d98a..9afd676 100644
--- a/support/config.guess
+++ b/support/config.guess
@@ -1,14 +1,12 @@
#! /bin/sh
# Attempt to guess a canonical system name.
-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
-# Free Software Foundation, Inc.
+# Copyright 1992-2013 Free Software Foundation, Inc.
-timestamp='2008-03-12'
+timestamp='2013-11-29'
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
+# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful, but
@@ -17,26 +15,22 @@ timestamp='2008-03-12'
# General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
-# 02110-1301, USA.
+# along with this program; if not, see <http://www.gnu.org/licenses/>.
#
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-
-# Originally written by Per Bothner <per@bothner.com>.
-# Please send patches to <config-patches@gnu.org>. Submit a context
-# diff and a properly formatted ChangeLog entry.
+# the same distribution terms that you use for the rest of that
+# program. This Exception is an additional permission under section 7
+# of the GNU General Public License, version 3 ("GPLv3").
+#
+# Originally written by Per Bothner.
#
-# This script attempts to guess a canonical system name similar to
-# config.sub. If it succeeds, it prints the system name on stdout, and
-# exits with 0. Otherwise, it exits with 1.
+# You can get the latest version of this script from:
+# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
#
-# The plan is that this can be called by configure scripts if you
-# don't specify an explicit build system type.
+# Please send patches with a ChangeLog entry to config-patches@gnu.org.
+
me=`echo "$0" | sed -e 's,.*/,,'`
@@ -56,8 +50,7 @@ version="\
GNU config.guess ($timestamp)
Originally written by Per Bothner.
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
-2002, 2003, 2004, 2005, 2006, 2007, 2008,2009 Free Software Foundation, Inc.
+Copyright 1992-2013 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -139,12 +132,33 @@ UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
+case "${UNAME_SYSTEM}" in
+Linux|GNU|GNU/*)
+ # If the system lacks a compiler, then just pick glibc.
+ # We could probably try harder.
+ LIBC=gnu
+
+ eval $set_cc_for_build
+ cat <<-EOF > $dummy.c
+ #include <features.h>
+ #if defined(__UCLIBC__)
+ LIBC=uclibc
+ #elif defined(__dietlibc__)
+ LIBC=dietlibc
+ #else
+ LIBC=gnu
+ #endif
+ EOF
+ eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
+ ;;
+esac
+
# Note: order is significant - the case branches are not exclusive.
case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
*:NetBSD:*:*)
# NetBSD (nbsd) targets should (where applicable) match one or
- # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
+ # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*,
# *-*-netbsdecoff* and *-*-netbsd*. For targets that recently
# switched to ELF, *-*-netbsd* would select the old
# object file format. This provides both forward
@@ -170,7 +184,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
arm*|i386|m68k|ns32k|sh3*|sparc|vax)
eval $set_cc_for_build
if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
- | grep __ELF__ >/dev/null
+ | grep -q __ELF__
then
# Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
# Return netbsd for either. FIX?
@@ -180,7 +194,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
fi
;;
*)
- os=netbsd
+ os=netbsd
;;
esac
# The OS release
@@ -201,6 +215,10 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
echo "${machine}-${os}${release}"
exit ;;
+ *:Bitrig:*:*)
+ UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
+ echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE}
+ exit ;;
*:OpenBSD:*:*)
UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
@@ -223,7 +241,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
;;
*5.*)
- UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
+ UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
;;
esac
# According to Compaq, /usr/sbin/psrinfo has been available on
@@ -269,7 +287,10 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
# A Xn.n version is an unreleased experimental baselevel.
# 1.2 uses "1.2" for uname -r.
echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
- exit ;;
+ # Reset EXIT trap before exiting to avoid spurious non-zero exit code.
+ exitcode=$?
+ trap '' 0
+ exit $exitcode ;;
Alpha\ *:Windows_NT*:*)
# How do we know it's Interix rather than the generic POSIX subsystem?
# Should we change UNAME_MACHINE based on the output of uname instead
@@ -295,12 +316,12 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
echo s390-ibm-zvmoe
exit ;;
*:OS400:*:*)
- echo powerpc-ibm-os400
+ echo powerpc-ibm-os400
exit ;;
arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
echo arm-acorn-riscix${UNAME_RELEASE}
exit ;;
- arm:riscos:*:*|arm:RISCOS:*:*)
+ arm*:riscos:*:*|arm*:RISCOS:*:*)
echo arm-unknown-riscos
exit ;;
SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
@@ -324,14 +345,33 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
case `/usr/bin/uname -p` in
sparc) echo sparc-icl-nx7; exit ;;
esac ;;
+ s390x:SunOS:*:*)
+ echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+ exit ;;
sun4H:SunOS:5.*:*)
echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
exit ;;
sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
exit ;;
+ i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
+ echo i386-pc-auroraux${UNAME_RELEASE}
+ exit ;;
i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
- echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+ eval $set_cc_for_build
+ SUN_ARCH="i386"
+ # If there is a compiler, see if it is configured for 64-bit objects.
+ # Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
+ # This test works for both compilers.
+ if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
+ if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
+ (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
+ grep IS_64BIT_ARCH >/dev/null
+ then
+ SUN_ARCH="x86_64"
+ fi
+ fi
+ echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
exit ;;
sun4*:SunOS:6*:*)
# According to config.sub, this is the proper way to canonicalize
@@ -375,23 +415,23 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
# MiNT. But MiNT is downward compatible to TOS, so this should
# be no problem.
atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
- echo m68k-atari-mint${UNAME_RELEASE}
+ echo m68k-atari-mint${UNAME_RELEASE}
exit ;;
atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
echo m68k-atari-mint${UNAME_RELEASE}
- exit ;;
+ exit ;;
*falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
- echo m68k-atari-mint${UNAME_RELEASE}
+ echo m68k-atari-mint${UNAME_RELEASE}
exit ;;
milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
- echo m68k-milan-mint${UNAME_RELEASE}
- exit ;;
+ echo m68k-milan-mint${UNAME_RELEASE}
+ exit ;;
hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
- echo m68k-hades-mint${UNAME_RELEASE}
- exit ;;
+ echo m68k-hades-mint${UNAME_RELEASE}
+ exit ;;
*:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
- echo m68k-unknown-mint${UNAME_RELEASE}
- exit ;;
+ echo m68k-unknown-mint${UNAME_RELEASE}
+ exit ;;
m68k:machten:*:*)
echo m68k-apple-machten${UNAME_RELEASE}
exit ;;
@@ -461,8 +501,8 @@ EOF
echo m88k-motorola-sysv3
exit ;;
AViiON:dgux:*:*)
- # DG/UX returns AViiON for all architectures
- UNAME_PROCESSOR=`/usr/bin/uname -p`
+ # DG/UX returns AViiON for all architectures
+ UNAME_PROCESSOR=`/usr/bin/uname -p`
if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
then
if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
@@ -475,7 +515,7 @@ EOF
else
echo i586-dg-dgux${UNAME_RELEASE}
fi
- exit ;;
+ exit ;;
M88*:DolphinOS:*:*) # DolphinOS (SVR3)
echo m88k-dolphin-sysv3
exit ;;
@@ -532,7 +572,7 @@ EOF
echo rs6000-ibm-aix3.2
fi
exit ;;
- *:AIX:*:[456])
+ *:AIX:*:[4567])
IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
IBM_ARCH=rs6000
@@ -575,52 +615,52 @@ EOF
9000/[678][0-9][0-9])
if [ -x /usr/bin/getconf ]; then
sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
- sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
- case "${sc_cpu_version}" in
- 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
- 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
- 532) # CPU_PA_RISC2_0
- case "${sc_kernel_bits}" in
- 32) HP_ARCH="hppa2.0n" ;;
- 64) HP_ARCH="hppa2.0w" ;;
+ sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
+ case "${sc_cpu_version}" in
+ 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
+ 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
+ 532) # CPU_PA_RISC2_0
+ case "${sc_kernel_bits}" in
+ 32) HP_ARCH="hppa2.0n" ;;
+ 64) HP_ARCH="hppa2.0w" ;;
'') HP_ARCH="hppa2.0" ;; # HP-UX 10.20
- esac ;;
- esac
+ esac ;;
+ esac
fi
if [ "${HP_ARCH}" = "" ]; then
eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
+ sed 's/^ //' << EOF >$dummy.c
- #define _HPUX_SOURCE
- #include <stdlib.h>
- #include <unistd.h>
+ #define _HPUX_SOURCE
+ #include <stdlib.h>
+ #include <unistd.h>
- int main ()
- {
- #if defined(_SC_KERNEL_BITS)
- long bits = sysconf(_SC_KERNEL_BITS);
- #endif
- long cpu = sysconf (_SC_CPU_VERSION);
+ int main ()
+ {
+ #if defined(_SC_KERNEL_BITS)
+ long bits = sysconf(_SC_KERNEL_BITS);
+ #endif
+ long cpu = sysconf (_SC_CPU_VERSION);
- switch (cpu)
- {
- case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
- case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
- case CPU_PA_RISC2_0:
- #if defined(_SC_KERNEL_BITS)
- switch (bits)
- {
- case 64: puts ("hppa2.0w"); break;
- case 32: puts ("hppa2.0n"); break;
- default: puts ("hppa2.0"); break;
- } break;
- #else /* !defined(_SC_KERNEL_BITS) */
- puts ("hppa2.0"); break;
- #endif
- default: puts ("hppa1.0"); break;
- }
- exit (0);
- }
+ switch (cpu)
+ {
+ case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
+ case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
+ case CPU_PA_RISC2_0:
+ #if defined(_SC_KERNEL_BITS)
+ switch (bits)
+ {
+ case 64: puts ("hppa2.0w"); break;
+ case 32: puts ("hppa2.0n"); break;
+ default: puts ("hppa2.0"); break;
+ } break;
+ #else /* !defined(_SC_KERNEL_BITS) */
+ puts ("hppa2.0"); break;
+ #endif
+ default: puts ("hppa1.0"); break;
+ }
+ exit (0);
+ }
EOF
(CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
test -z "$HP_ARCH" && HP_ARCH=hppa
@@ -640,7 +680,7 @@ EOF
# => hppa64-hp-hpux11.23
if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
- grep __LP64__ >/dev/null
+ grep -q __LP64__
then
HP_ARCH="hppa2.0w"
else
@@ -711,22 +751,22 @@ EOF
exit ;;
C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
echo c1-convex-bsd
- exit ;;
+ exit ;;
C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
if getsysinfo -f scalar_acc
then echo c32-convex-bsd
else echo c2-convex-bsd
fi
- exit ;;
+ exit ;;
C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
echo c34-convex-bsd
- exit ;;
+ exit ;;
C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
echo c38-convex-bsd
- exit ;;
+ exit ;;
C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
echo c4-convex-bsd
- exit ;;
+ exit ;;
CRAY*Y-MP:*:*:*)
echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
exit ;;
@@ -750,14 +790,14 @@ EOF
exit ;;
F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
- FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
- FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
- echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
- exit ;;
+ FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
+ FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
+ echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
+ exit ;;
5000:UNIX_System_V:4.*:*)
- FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
- FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
- echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
+ FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
+ FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
+ echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
exit ;;
i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
@@ -769,34 +809,39 @@ EOF
echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
exit ;;
*:FreeBSD:*:*)
- case ${UNAME_MACHINE} in
- pc98)
- echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
+ UNAME_PROCESSOR=`/usr/bin/uname -p`
+ case ${UNAME_PROCESSOR} in
amd64)
echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
*)
- echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
+ echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
esac
exit ;;
i*:CYGWIN*:*)
echo ${UNAME_MACHINE}-pc-cygwin
exit ;;
+ *:MINGW64*:*)
+ echo ${UNAME_MACHINE}-pc-mingw64
+ exit ;;
*:MINGW*:*)
echo ${UNAME_MACHINE}-pc-mingw32
exit ;;
+ i*:MSYS*:*)
+ echo ${UNAME_MACHINE}-pc-msys
+ exit ;;
i*:windows32*:*)
- # uname -m includes "-pc" on this system.
- echo ${UNAME_MACHINE}-mingw32
+ # uname -m includes "-pc" on this system.
+ echo ${UNAME_MACHINE}-mingw32
exit ;;
i*:PW*:*)
echo ${UNAME_MACHINE}-pc-pw32
exit ;;
- *:Interix*:[3456]*)
- case ${UNAME_MACHINE} in
+ *:Interix*:*)
+ case ${UNAME_MACHINE} in
x86)
echo i586-pc-interix${UNAME_RELEASE}
exit ;;
- EM64T | authenticamd)
+ authenticamd | genuineintel | EM64T)
echo x86_64-unknown-interix${UNAME_RELEASE}
exit ;;
IA64)
@@ -806,6 +851,9 @@ EOF
[345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
echo i${UNAME_MACHINE}-pc-mks
exit ;;
+ 8664:Windows_NT:*)
+ echo x86_64-pc-mks
+ exit ;;
i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
# How do we know it's Interix rather than the generic POSIX subsystem?
# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
@@ -826,210 +874,157 @@ EOF
exit ;;
*:GNU:*:*)
# the GNU system
- echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
+ echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-${LIBC}`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
exit ;;
*:GNU/*:*:*)
# other systems with GNU libc and userland
- echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
+ echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC}
exit ;;
i*86:Minix:*:*)
echo ${UNAME_MACHINE}-pc-minix
exit ;;
+ aarch64:Linux:*:*)
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ exit ;;
+ aarch64_be:Linux:*:*)
+ UNAME_MACHINE=aarch64_be
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ exit ;;
+ alpha:Linux:*:*)
+ case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
+ EV5) UNAME_MACHINE=alphaev5 ;;
+ EV56) UNAME_MACHINE=alphaev56 ;;
+ PCA56) UNAME_MACHINE=alphapca56 ;;
+ PCA57) UNAME_MACHINE=alphapca56 ;;
+ EV6) UNAME_MACHINE=alphaev6 ;;
+ EV67) UNAME_MACHINE=alphaev67 ;;
+ EV68*) UNAME_MACHINE=alphaev68 ;;
+ esac
+ objdump --private-headers /bin/sh | grep -q ld.so.1
+ if test "$?" = 0 ; then LIBC="gnulibc1" ; fi
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ exit ;;
+ arc:Linux:*:* | arceb:Linux:*:*)
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ exit ;;
arm*:Linux:*:*)
eval $set_cc_for_build
if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
| grep -q __ARM_EABI__
then
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
else
- echo ${UNAME_MACHINE}-unknown-linux-gnueabi
+ if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
+ | grep -q __ARM_PCS_VFP
+ then
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi
+ else
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf
+ fi
fi
exit ;;
avr32*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
cris:Linux:*:*)
- echo cris-axis-linux-gnu
+ echo ${UNAME_MACHINE}-axis-linux-${LIBC}
exit ;;
crisv32:Linux:*:*)
- echo crisv32-axis-linux-gnu
+ echo ${UNAME_MACHINE}-axis-linux-${LIBC}
exit ;;
frv:Linux:*:*)
- echo frv-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ exit ;;
+ hexagon:Linux:*:*)
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ exit ;;
+ i*86:Linux:*:*)
+ echo ${UNAME_MACHINE}-pc-linux-${LIBC}
exit ;;
ia64:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
m32r*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
m68*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
- mips:Linux:*:*)
+ mips:Linux:*:* | mips64:Linux:*:*)
eval $set_cc_for_build
sed 's/^ //' << EOF >$dummy.c
#undef CPU
- #undef mips
- #undef mipsel
+ #undef ${UNAME_MACHINE}
+ #undef ${UNAME_MACHINE}el
#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
- CPU=mipsel
+ CPU=${UNAME_MACHINE}el
#else
#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
- CPU=mips
+ CPU=${UNAME_MACHINE}
#else
CPU=
#endif
#endif
EOF
- eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
- /^CPU/{
- s: ::g
- p
- }'`"
- test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
+ eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
+ test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; }
;;
- mips64:Linux:*:*)
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
- #undef CPU
- #undef mips64
- #undef mips64el
- #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
- CPU=mips64el
- #else
- #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
- CPU=mips64
- #else
- CPU=
- #endif
- #endif
-EOF
- eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
- /^CPU/{
- s: ::g
- p
- }'`"
- test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
- ;;
- or32:Linux:*:*)
- echo or32-unknown-linux-gnu
+ or1k:Linux:*:*)
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
- ppc:Linux:*:*)
- echo powerpc-unknown-linux-gnu
+ or32:Linux:*:*)
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
- ppc64:Linux:*:*)
- echo powerpc64-unknown-linux-gnu
+ padre:Linux:*:*)
+ echo sparc-unknown-linux-${LIBC}
exit ;;
- alpha:Linux:*:*)
- case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
- EV5) UNAME_MACHINE=alphaev5 ;;
- EV56) UNAME_MACHINE=alphaev56 ;;
- PCA56) UNAME_MACHINE=alphapca56 ;;
- PCA57) UNAME_MACHINE=alphapca56 ;;
- EV6) UNAME_MACHINE=alphaev6 ;;
- EV67) UNAME_MACHINE=alphaev67 ;;
- EV68*) UNAME_MACHINE=alphaev68 ;;
- esac
- objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
- if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
- echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
+ parisc64:Linux:*:* | hppa64:Linux:*:*)
+ echo hppa64-unknown-linux-${LIBC}
exit ;;
parisc:Linux:*:* | hppa:Linux:*:*)
# Look for CPU level
case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
- PA7*) echo hppa1.1-unknown-linux-gnu ;;
- PA8*) echo hppa2.0-unknown-linux-gnu ;;
- *) echo hppa-unknown-linux-gnu ;;
+ PA7*) echo hppa1.1-unknown-linux-${LIBC} ;;
+ PA8*) echo hppa2.0-unknown-linux-${LIBC} ;;
+ *) echo hppa-unknown-linux-${LIBC} ;;
esac
exit ;;
- parisc64:Linux:*:* | hppa64:Linux:*:*)
- echo hppa64-unknown-linux-gnu
+ ppc64:Linux:*:*)
+ echo powerpc64-unknown-linux-${LIBC}
+ exit ;;
+ ppc:Linux:*:*)
+ echo powerpc-unknown-linux-${LIBC}
+ exit ;;
+ ppc64le:Linux:*:*)
+ echo powerpc64le-unknown-linux-${LIBC}
+ exit ;;
+ ppcle:Linux:*:*)
+ echo powerpcle-unknown-linux-${LIBC}
exit ;;
s390:Linux:*:* | s390x:Linux:*:*)
- echo ${UNAME_MACHINE}-ibm-linux
+ echo ${UNAME_MACHINE}-ibm-linux-${LIBC}
exit ;;
sh64*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
sh*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
sparc:Linux:*:* | sparc64:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ exit ;;
+ tile*:Linux:*:*)
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
vax:Linux:*:*)
- echo ${UNAME_MACHINE}-dec-linux-gnu
+ echo ${UNAME_MACHINE}-dec-linux-${LIBC}
exit ;;
x86_64:Linux:*:*)
- echo x86_64-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
xtensa*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
- i*86:Linux:*:*)
- # The BFD linker knows what the default object file format is, so
- # first see if it will tell us. cd to the root directory to prevent
- # problems with other programs or directories called `ld' in the path.
- # Set LC_ALL=C to ensure ld outputs messages in English.
- ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
- | sed -ne '/supported targets:/!d
- s/[ ][ ]*/ /g
- s/.*supported targets: *//
- s/ .*//
- p'`
- case "$ld_supported_targets" in
- elf32-i386)
- TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
- ;;
- a.out-i386-linux)
- echo "${UNAME_MACHINE}-pc-linux-gnuaout"
- exit ;;
- coff-i386)
- echo "${UNAME_MACHINE}-pc-linux-gnucoff"
- exit ;;
- "")
- # Either a pre-BFD a.out linker (linux-gnuoldld) or
- # one that does not give us useful --help.
- echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
- exit ;;
- esac
- # Determine whether the default compiler is a.out or elf
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
- #include <features.h>
- #ifdef __ELF__
- # ifdef __GLIBC__
- # if __GLIBC__ >= 2
- LIBC=gnu
- # else
- LIBC=gnulibc1
- # endif
- # else
- LIBC=gnulibc1
- # endif
- #else
- #if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC)
- LIBC=gnu
- #else
- LIBC=gnuaout
- #endif
- #endif
- #ifdef __dietlibc__
- LIBC=dietlibc
- #endif
-EOF
- eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
- /^LIBC/{
- s: ::g
- p
- }'`"
- test x"${LIBC}" != x && {
- echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
- exit
- }
- test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; }
- ;;
i*86:DYNIX/ptx:4*:*)
# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
# earlier versions are messed up and put the nodename in both
@@ -1037,11 +1032,11 @@ EOF
echo i386-sequent-sysv4
exit ;;
i*86:UNIX_SV:4.2MP:2.*)
- # Unixware is an offshoot of SVR4, but it has its own version
- # number series starting with 2...
- # I am not positive that other SVR4 systems won't match this,
+ # Unixware is an offshoot of SVR4, but it has its own version
+ # number series starting with 2...
+ # I am not positive that other SVR4 systems won't match this,
# I just have to hope. -- rms.
- # Use sysv4.2uw... so that sysv4* matches it.
+ # Use sysv4.2uw... so that sysv4* matches it.
echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
exit ;;
i*86:OS/2:*:*)
@@ -1058,7 +1053,7 @@ EOF
i*86:syllable:*:*)
echo ${UNAME_MACHINE}-pc-syllable
exit ;;
- i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
+ i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
echo i386-unknown-lynxos${UNAME_RELEASE}
exit ;;
i*86:*DOS:*:*)
@@ -1073,7 +1068,7 @@ EOF
fi
exit ;;
i*86:*:5:[678]*)
- # UnixWare 7.x, OpenUNIX and OpenServer 6.
+ # UnixWare 7.x, OpenUNIX and OpenServer 6.
case `/bin/uname -X | grep "^Machine"` in
*486*) UNAME_MACHINE=i486 ;;
*Pentium) UNAME_MACHINE=i586 ;;
@@ -1101,10 +1096,13 @@ EOF
exit ;;
pc:*:*:*)
# Left here for compatibility:
- # uname -m prints for DJGPP always 'pc', but it prints nothing about
- # the processor, so we play safe by assuming i386.
- echo i386-pc-msdosdjgpp
- exit ;;
+ # uname -m prints for DJGPP always 'pc', but it prints nothing about
+ # the processor, so we play safe by assuming i586.
+ # Note: whatever this is, it MUST be the same as what config.sub
+ # prints for the "djgpp" host, or else GDB configury will decide that
+ # this is a cross-build.
+ echo i586-pc-msdosdjgpp
+ exit ;;
Intel:Mach:3*:*)
echo i386-pc-mach3
exit ;;
@@ -1139,8 +1137,18 @@ EOF
/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
&& { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
- /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
- && { echo i486-ncr-sysv4; exit; } ;;
+ /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
+ && { echo i486-ncr-sysv4; exit; } ;;
+ NCR*:*:4.2:* | MPRAS*:*:4.2:*)
+ OS_REL='.3'
+ test -r /etc/.relid \
+ && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
+ /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
+ && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
+ /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
+ && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
+ /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
+ && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
echo m68k-unknown-lynxos${UNAME_RELEASE}
exit ;;
@@ -1153,7 +1161,7 @@ EOF
rs6000:LynxOS:2.*:*)
echo rs6000-unknown-lynxos${UNAME_RELEASE}
exit ;;
- PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
+ PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
echo powerpc-unknown-lynxos${UNAME_RELEASE}
exit ;;
SM[BE]S:UNIX_SV:*:*)
@@ -1173,10 +1181,10 @@ EOF
echo ns32k-sni-sysv
fi
exit ;;
- PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
- # says <Richard.M.Bartel@ccMail.Census.GOV>
- echo i586-unisys-sysv4
- exit ;;
+ PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
+ # says <Richard.M.Bartel@ccMail.Census.GOV>
+ echo i586-unisys-sysv4
+ exit ;;
*:UNIX_System_V:4*:FTX*)
# From Gerald Hewes <hewes@openmarket.com>.
# How about differentiating between stratus architectures? -djm
@@ -1202,11 +1210,11 @@ EOF
exit ;;
R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
if [ -d /usr/nec ]; then
- echo mips-nec-sysv${UNAME_RELEASE}
+ echo mips-nec-sysv${UNAME_RELEASE}
else
- echo mips-unknown-sysv${UNAME_RELEASE}
+ echo mips-unknown-sysv${UNAME_RELEASE}
fi
- exit ;;
+ exit ;;
BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only.
echo powerpc-be-beos
exit ;;
@@ -1219,6 +1227,9 @@ EOF
BePC:Haiku:*:*) # Haiku running on Intel PC compatible.
echo i586-pc-haiku
exit ;;
+ x86_64:Haiku:*:*)
+ echo x86_64-unknown-haiku
+ exit ;;
SX-4:SUPER-UX:*:*)
echo sx4-nec-superux${UNAME_RELEASE}
exit ;;
@@ -1245,9 +1256,31 @@ EOF
exit ;;
*:Darwin:*:*)
UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
- case $UNAME_PROCESSOR in
- unknown) UNAME_PROCESSOR=powerpc ;;
- esac
+ eval $set_cc_for_build
+ if test "$UNAME_PROCESSOR" = unknown ; then
+ UNAME_PROCESSOR=powerpc
+ fi
+ if test `echo "$UNAME_RELEASE" | sed -e 's/\..*//'` -le 10 ; then
+ if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
+ if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
+ (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
+ grep IS_64BIT_ARCH >/dev/null
+ then
+ case $UNAME_PROCESSOR in
+ i386) UNAME_PROCESSOR=x86_64 ;;
+ powerpc) UNAME_PROCESSOR=powerpc64 ;;
+ esac
+ fi
+ fi
+ elif test "$UNAME_PROCESSOR" = i386 ; then
+ # Avoid executing cc on OS X 10.9, as it ships with a stub
+ # that puts up a graphical alert prompting to install
+ # developer tools. Any system running Mac OS X 10.7 or
+ # later (Darwin 11 and later) is required to have a 64-bit
+ # processor. This is not true of the ARM version of Darwin
+ # that Apple uses in portable devices.
+ UNAME_PROCESSOR=x86_64
+ fi
echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
exit ;;
*:procnto*:*:* | *:QNX:[0123456789]*:*)
@@ -1261,7 +1294,10 @@ EOF
*:QNX:*:4*)
echo i386-pc-qnx
exit ;;
- NSE-?:NONSTOP_KERNEL:*:*)
+ NEO-?:NONSTOP_KERNEL:*:*)
+ echo neo-tandem-nsk${UNAME_RELEASE}
+ exit ;;
+ NSE-*:NONSTOP_KERNEL:*:*)
echo nse-tandem-nsk${UNAME_RELEASE}
exit ;;
NSR-?:NONSTOP_KERNEL:*:*)
@@ -1306,13 +1342,13 @@ EOF
echo pdp10-unknown-its
exit ;;
SEI:*:*:SEIUX)
- echo mips-sei-seiux${UNAME_RELEASE}
+ echo mips-sei-seiux${UNAME_RELEASE}
exit ;;
*:DragonFly:*:*)
echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
exit ;;
*:*VMS:*:*)
- UNAME_MACHINE=`(uname -p) 2>/dev/null`
+ UNAME_MACHINE=`(uname -p) 2>/dev/null`
case "${UNAME_MACHINE}" in
A*) echo alpha-dec-vms ; exit ;;
I*) echo ia64-dec-vms ; exit ;;
@@ -1327,11 +1363,14 @@ EOF
i*86:rdos:*:*)
echo ${UNAME_MACHINE}-pc-rdos
exit ;;
+ i*86:AROS:*:*)
+ echo ${UNAME_MACHINE}-pc-aros
+ exit ;;
+ x86_64:VMkernel:*:*)
+ echo ${UNAME_MACHINE}-unknown-esx
+ exit ;;
esac
-#echo '(No uname command or uname output not recognized.)' 1>&2
-#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
-
eval $set_cc_for_build
cat >$dummy.c <<EOF
#ifdef _SEQUENT_
@@ -1349,11 +1388,11 @@ main ()
#include <sys/param.h>
printf ("m68k-sony-newsos%s\n",
#ifdef NEWSOS4
- "4"
+ "4"
#else
- ""
+ ""
#endif
- ); exit (0);
+ ); exit (0);
#endif
#endif
diff --git a/support/config.sub b/support/config.sub
index d07267e..61cb4bc 100644
--- a/support/config.sub
+++ b/support/config.sub
@@ -1,44 +1,40 @@
#! /bin/sh
# Configuration validation subroutine script.
-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 20098
-# Free Software Foundation, Inc.
+# Copyright 1992-2013 Free Software Foundation, Inc.
-timestamp='2008-03-26'
+timestamp='2013-10-01'
-# This file is (in principle) common to ALL GNU software.
-# The presence of a machine in this file suggests that SOME GNU software
-# can handle that machine. It does not imply ALL GNU software can.
-#
-# This file is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
+# This file is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
-# This program is distributed in the hope that 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.
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
-# 02110-1301, USA.
+# along with this program; if not, see <http://www.gnu.org/licenses/>.
#
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
+# the same distribution terms that you use for the rest of that
+# program. This Exception is an additional permission under section 7
+# of the GNU General Public License, version 3 ("GPLv3").
-# Please send patches to <config-patches@gnu.org>. Submit a context
-# diff and a properly formatted ChangeLog entry.
+# Please send patches with a ChangeLog entry to config-patches@gnu.org.
#
# Configuration subroutine to validate and canonicalize a configuration type.
# Supply the specified configuration type as an argument.
# If it is invalid, we print an error message on stderr and exit with code 1.
# Otherwise, we print the canonical config type on stdout and succeed.
+# You can get the latest version of this script from:
+# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
+
# This file is supposed to be the same for all GNU packages
# and recognize all the CPU types, system types and aliases
# that are meaningful with *any* GNU software.
@@ -72,8 +68,7 @@ Report bugs and patches to <config-patches@gnu.org>."
version="\
GNU config.sub ($timestamp)
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
-2002, 2003, 2004, 2005, 2006, 2007, 2008,2009 Free Software Foundation, Inc.
+Copyright 1992-2013 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -120,12 +115,18 @@ esac
# Here we must recognize all the valid KERNEL-OS combinations.
maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
case $maybe_os in
- nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \
- uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \
+ nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
+ linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
+ knetbsd*-gnu* | netbsd*-gnu* | \
+ kopensolaris*-gnu* | \
storm-chaos* | os2-emx* | rtmk-nova*)
os=-$maybe_os
basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
;;
+ android-linux)
+ os=-linux-android
+ basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown
+ ;;
*)
basic_machine=`echo $1 | sed 's/-[^-]*$//'`
if [ $basic_machine != $1 ]
@@ -148,10 +149,13 @@ case $os in
-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
- -apple | -axis | -knuth | -cray)
+ -apple | -axis | -knuth | -cray | -microblaze*)
os=
basic_machine=$1
;;
+ -bluegene*)
+ os=-cnk
+ ;;
-sim | -cisco | -oki | -wec | -winbond)
os=
basic_machine=$1
@@ -166,10 +170,10 @@ case $os in
os=-chorusos
basic_machine=$1
;;
- -chorusrdb)
- os=-chorusrdb
+ -chorusrdb)
+ os=-chorusrdb
basic_machine=$1
- ;;
+ ;;
-hiux*)
os=-hiuxwe2
;;
@@ -214,6 +218,12 @@ case $os in
-isc*)
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
;;
+ -lynx*178)
+ os=-lynxos178
+ ;;
+ -lynx*5)
+ os=-lynxos5
+ ;;
-lynx*)
os=-lynxos
;;
@@ -238,19 +248,28 @@ case $basic_machine in
# Some are omitted here because they have special meanings below.
1750a | 580 \
| a29k \
+ | aarch64 | aarch64_be \
| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
| am33_2.0 \
- | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
+ | arc | arceb \
+ | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \
+ | avr | avr32 \
+ | be32 | be64 \
| bfin \
- | c4x | clipper \
+ | c4x | c8051 | clipper \
| d10v | d30v | dlx | dsp16xx \
+ | epiphany \
| fido | fr30 | frv \
| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
+ | hexagon \
| i370 | i860 | i960 | ia64 \
| ip2k | iq2000 \
+ | k1om \
+ | le32 | le64 \
+ | lm32 \
| m32c | m32r | m32rle | m68000 | m68k | m88k \
- | maxq | mb | microblaze | mcore | mep | metag \
+ | maxq | mb | microblaze | microblazeel | mcore | mep | metag \
| mips | mipsbe | mipseb | mipsel | mipsle \
| mips16 \
| mips64 | mips64el \
@@ -268,31 +287,45 @@ case $basic_machine in
| mipsisa64r2 | mipsisa64r2el \
| mipsisa64sb1 | mipsisa64sb1el \
| mipsisa64sr71k | mipsisa64sr71kel \
+ | mipsr5900 | mipsr5900el \
| mipstx39 | mipstx39el \
| mn10200 | mn10300 \
+ | moxie \
| mt \
| msp430 \
- | nios | nios2 \
+ | nds32 | nds32le | nds32be \
+ | nios | nios2 | nios2eb | nios2el \
| ns16k | ns32k \
- | or32 \
+ | open8 \
+ | or1k | or32 \
| pdp10 | pdp11 | pj | pjl \
- | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
+ | powerpc | powerpc64 | powerpc64le | powerpcle \
| pyramid \
+ | rl78 | rx \
| score \
- | sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
+ | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
| sh64 | sh64le \
| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
| sparcv8 | sparcv9 | sparcv9b | sparcv9v \
- | spu | strongarm \
- | tahoe | thumb | tic4x | tic80 | tron \
- | v850 | v850e \
+ | spu \
+ | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
+ | ubicom32 \
+ | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
| we32k \
- | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \
- | z8k)
+ | x86 | xc16x | xstormy16 | xtensa \
+ | z8k | z80)
basic_machine=$basic_machine-unknown
;;
- m6811 | m68hc11 | m6812 | m68hc12)
- # Motorola 68HC11/12.
+ c54x)
+ basic_machine=tic54x-unknown
+ ;;
+ c55x)
+ basic_machine=tic55x-unknown
+ ;;
+ c6x)
+ basic_machine=tic6x-unknown
+ ;;
+ m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip)
basic_machine=$basic_machine-unknown
os=-none
;;
@@ -302,6 +335,21 @@ case $basic_machine in
basic_machine=mt-unknown
;;
+ strongarm | thumb | xscale)
+ basic_machine=arm-unknown
+ ;;
+ xgate)
+ basic_machine=$basic_machine-unknown
+ os=-none
+ ;;
+ xscaleeb)
+ basic_machine=armeb-unknown
+ ;;
+
+ xscaleel)
+ basic_machine=armel-unknown
+ ;;
+
# We use `pc' rather than `unknown'
# because (1) that's what they normally are, and
# (2) the word "unknown" tends to confuse beginning users.
@@ -316,24 +364,31 @@ case $basic_machine in
# Recognize the basic CPU types with company name.
580-* \
| a29k-* \
+ | aarch64-* | aarch64_be-* \
| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
- | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
+ | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \
| arm-* | armbe-* | armle-* | armeb-* | armv*-* \
| avr-* | avr32-* \
+ | be32-* | be64-* \
| bfin-* | bs2000-* \
- | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
- | clipper-* | craynv-* | cydra-* \
+ | c[123]* | c30-* | [cjt]90-* | c4x-* \
+ | c8051-* | clipper-* | craynv-* | cydra-* \
| d10v-* | d30v-* | dlx-* \
| elxsi-* \
| f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
| h8300-* | h8500-* \
| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
+ | hexagon-* \
| i*86-* | i860-* | i960-* | ia64-* \
| ip2k-* | iq2000-* \
+ | k1om-* \
+ | le32-* | le64-* \
+ | lm32-* \
| m32c-* | m32r-* | m32rle-* \
| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
| m88110-* | m88k-* | maxq-* | mcore-* | metag-* \
+ | microblaze-* | microblazeel-* \
| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
| mips16-* \
| mips64-* | mips64el-* \
@@ -351,31 +406,37 @@ case $basic_machine in
| mipsisa64r2-* | mipsisa64r2el-* \
| mipsisa64sb1-* | mipsisa64sb1el-* \
| mipsisa64sr71k-* | mipsisa64sr71kel-* \
+ | mipsr5900-* | mipsr5900el-* \
| mipstx39-* | mipstx39el-* \
| mmix-* \
| mt-* \
| msp430-* \
- | nios-* | nios2-* \
+ | nds32-* | nds32le-* | nds32be-* \
+ | nios-* | nios2-* | nios2eb-* | nios2el-* \
| none-* | np1-* | ns16k-* | ns32k-* \
+ | open8-* \
| orion-* \
| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
- | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
+ | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
| pyramid-* \
- | romp-* | rs6000-* \
- | sh-* | sh[1234]-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
+ | rl78-* | romp-* | rs6000-* | rx-* \
+ | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
| sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
| sparclite-* \
- | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \
- | tahoe-* | thumb-* \
- | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* | tile-* \
+ | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \
+ | tahoe-* \
+ | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
+ | tile*-* \
| tron-* \
- | v850-* | v850e-* | vax-* \
+ | ubicom32-* \
+ | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \
+ | vax-* \
| we32k-* \
- | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \
+ | x86-* | x86_64-* | xc16x-* | xps100-* \
| xstormy16-* | xtensa*-* \
| ymp-* \
- | z8k-*)
+ | z8k-* | z80-*)
;;
# Recognize the basic CPU types without company name, with glob match.
xtensa*)
@@ -397,7 +458,7 @@ case $basic_machine in
basic_machine=a29k-amd
os=-udi
;;
- abacus)
+ abacus)
basic_machine=abacus-unknown
;;
adobe68k)
@@ -443,6 +504,10 @@ case $basic_machine in
basic_machine=m68k-apollo
os=-bsd
;;
+ aros)
+ basic_machine=i386-pc
+ os=-aros
+ ;;
aux)
basic_machine=m68k-apple
os=-aux
@@ -459,10 +524,27 @@ case $basic_machine in
basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
os=-linux
;;
+ bluegene*)
+ basic_machine=powerpc-ibm
+ os=-cnk
+ ;;
+ c54x-*)
+ basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'`
+ ;;
+ c55x-*)
+ basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'`
+ ;;
+ c6x-*)
+ basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'`
+ ;;
c90)
basic_machine=c90-cray
os=-unicos
;;
+ cegcc)
+ basic_machine=arm-unknown
+ os=-cegcc
+ ;;
convex-c1)
basic_machine=c1-convex
os=-bsd
@@ -491,7 +573,7 @@ case $basic_machine in
basic_machine=craynv-cray
os=-unicosmp
;;
- cr16)
+ cr16 | cr16-*)
basic_machine=cr16-unknown
os=-elf
;;
@@ -530,6 +612,10 @@ case $basic_machine in
basic_machine=m88k-motorola
os=-sysv3
;;
+ dicos)
+ basic_machine=i686-pc
+ os=-dicos
+ ;;
djgpp)
basic_machine=i586-pc
os=-msdosdjgpp
@@ -645,7 +731,6 @@ case $basic_machine in
i370-ibm* | ibm*)
basic_machine=i370-ibm
;;
-# I'm not sure what "Sysv32" means. Should this be sysv3.2?
i*86v32)
basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
os=-sysv32
@@ -703,8 +788,15 @@ case $basic_machine in
basic_machine=ns32k-utek
os=-sysv
;;
+ microblaze*)
+ basic_machine=microblaze-xilinx
+ ;;
+ mingw64)
+ basic_machine=x86_64-pc
+ os=-mingw64
+ ;;
mingw32)
- basic_machine=i386-pc
+ basic_machine=i686-pc
os=-mingw32
;;
mingw32ce)
@@ -739,10 +831,18 @@ case $basic_machine in
ms1-*)
basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
;;
+ msys)
+ basic_machine=i686-pc
+ os=-msys
+ ;;
mvs)
basic_machine=i370-ibm
os=-mvs
;;
+ nacl)
+ basic_machine=le32-unknown
+ os=-nacl
+ ;;
ncr3000)
basic_machine=i486-ncr
os=-sysv4
@@ -807,6 +907,9 @@ case $basic_machine in
np1)
basic_machine=np1-gould
;;
+ neo-tandem)
+ basic_machine=neo-tandem
+ ;;
nse-tandem)
basic_machine=nse-tandem
;;
@@ -892,9 +995,10 @@ case $basic_machine in
;;
power) basic_machine=power-ibm
;;
- ppc) basic_machine=powerpc-unknown
+ ppc | ppcbe) basic_machine=powerpc-unknown
;;
- ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
+ ppc-* | ppcbe-*)
+ basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
ppcle | powerpclittle | ppc-le | powerpc-little)
basic_machine=powerpcle-unknown
@@ -919,7 +1023,11 @@ case $basic_machine in
basic_machine=i586-unknown
os=-pw32
;;
- rdos)
+ rdos | rdos64)
+ basic_machine=x86_64-pc
+ os=-rdos
+ ;;
+ rdos32)
basic_machine=i386-pc
os=-rdos
;;
@@ -988,6 +1096,9 @@ case $basic_machine in
basic_machine=i860-stratus
os=-sysv4
;;
+ strongarm-* | thumb-*)
+ basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'`
+ ;;
sun2)
basic_machine=m68000-sun
;;
@@ -1044,20 +1155,8 @@ case $basic_machine in
basic_machine=t90-cray
os=-unicos
;;
- tic54x | c54x*)
- basic_machine=tic54x-unknown
- os=-coff
- ;;
- tic55x | c55x*)
- basic_machine=tic55x-unknown
- os=-coff
- ;;
- tic6x | c6x*)
- basic_machine=tic6x-unknown
- os=-coff
- ;;
tile*)
- basic_machine=tile-unknown
+ basic_machine=$basic_machine-unknown
os=-linux-gnu
;;
tx39)
@@ -1127,6 +1226,9 @@ case $basic_machine in
xps | xps100)
basic_machine=xps100-honeywell
;;
+ xscale-* | xscalee[bl]-*)
+ basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'`
+ ;;
ymp)
basic_machine=ymp-cray
os=-unicos
@@ -1135,6 +1237,10 @@ case $basic_machine in
basic_machine=z8k-unknown
os=-sim
;;
+ z80-*-coff)
+ basic_machine=z80-unknown
+ os=-sim
+ ;;
none)
basic_machine=none-none
os=-none
@@ -1173,7 +1279,7 @@ case $basic_machine in
we32k)
basic_machine=we32k-att
;;
- sh[1234] | sh[24]a | sh[34]eb | sh[1234]le | sh[23]ele)
+ sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
basic_machine=sh-unknown
;;
sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
@@ -1220,9 +1326,12 @@ esac
if [ x"$os" != x"" ]
then
case $os in
- # First match some system type aliases
- # that might get confused with valid system types.
+ # First match some system type aliases
+ # that might get confused with valid system types.
# -solaris* is a basic system type, with this one exception.
+ -auroraux)
+ os=-auroraux
+ ;;
-solaris1 | -solaris1.*)
os=`echo $os | sed -e 's|solaris1|sunos4|'`
;;
@@ -1243,21 +1352,23 @@ case $os in
# Each alternative MUST END IN A *, to match a version number.
# -sysv* is not here because it comes later, after sysvr4.
-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
- | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
- | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
+ | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
+ | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
+ | -sym* | -kopensolaris* | -plan9* \
| -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
- | -aos* \
+ | -aos* | -aros* \
| -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
| -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
| -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
- | -openbsd* | -solidbsd* \
+ | -bitrig* | -openbsd* | -solidbsd* \
| -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
| -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
| -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
| -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
- | -chorusos* | -chorusrdb* \
- | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
- | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \
+ | -chorusos* | -chorusrdb* | -cegcc* \
+ | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
+ | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
+ | -linux-newlib* | -linux-musl* | -linux-uclibc* \
| -uxpv* | -beos* | -mpeix* | -udk* \
| -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
| -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
@@ -1265,7 +1376,7 @@ case $os in
| -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
| -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
| -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
- | -skyos* | -haiku* | -rdos* | -toppers* | -drops*)
+ | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
# Remember, each alternative MUST END IN *, to match a version number.
;;
-qnx*)
@@ -1304,7 +1415,7 @@ case $os in
-opened*)
os=-openedition
;;
- -os400*)
+ -os400*)
os=-os400
;;
-wince*)
@@ -1353,7 +1464,7 @@ case $os in
-sinix*)
os=-sysv4
;;
- -tpf*)
+ -tpf*)
os=-tpf
;;
-triton*)
@@ -1389,12 +1500,14 @@ case $os in
-aros*)
os=-aros
;;
- -kaos*)
- os=-kaos
- ;;
-zvmoe)
os=-zvmoe
;;
+ -dicos*)
+ os=-dicos
+ ;;
+ -nacl*)
+ ;;
-none)
;;
*)
@@ -1417,10 +1530,10 @@ else
# system, and we'll never get to this point.
case $basic_machine in
- score-*)
+ score-*)
os=-elf
;;
- spu-*)
+ spu-*)
os=-elf
;;
*-acorn)
@@ -1432,8 +1545,23 @@ case $basic_machine in
arm*-semi)
os=-aout
;;
- c4x-* | tic4x-*)
- os=-coff
+ c4x-* | tic4x-*)
+ os=-coff
+ ;;
+ c8051-*)
+ os=-elf
+ ;;
+ hexagon-*)
+ os=-elf
+ ;;
+ tic54x-*)
+ os=-coff
+ ;;
+ tic55x-*)
+ os=-coff
+ ;;
+ tic6x-*)
+ os=-coff
;;
# This must come before the *-dec entry.
pdp10-*)
@@ -1453,14 +1581,11 @@ case $basic_machine in
;;
m68000-sun)
os=-sunos3
- # This also exists in the configure program, but was not the
- # default.
- # os=-sunos4
;;
m68*-cisco)
os=-aout
;;
- mep-*)
+ mep-*)
os=-elf
;;
mips*-cisco)
@@ -1469,6 +1594,9 @@ case $basic_machine in
mips*-*)
os=-elf
;;
+ or1k-*)
+ os=-elf
+ ;;
or32-*)
os=-coff
;;
@@ -1487,7 +1615,7 @@ case $basic_machine in
*-ibm)
os=-aix
;;
- *-knuth)
+ *-knuth)
os=-mmixware
;;
*-wec)
@@ -1592,7 +1720,7 @@ case $basic_machine in
-sunos*)
vendor=sun
;;
- -aix*)
+ -cnk*|-aix*)
vendor=ibm
;;
-beos*)
diff --git a/support/mkdist b/support/mkdist
index ff38764..282431d 100755
--- a/support/mkdist
+++ b/support/mkdist
@@ -2,7 +2,7 @@
#
# mkdist - make a distribution directory from a master manifest file
#
-# usage: mkdist [-m manifest] [-s srcdir] [-r rootname] [-v] version
+# usage: mkdist [-m manifest] [-s srcdir] [-r rootname] [-t] [-v] version
#
# SRCDIR defaults to src
# MANIFEST defaults to $SRCDIR/MANIFEST
@@ -31,7 +31,7 @@ ROOTNAME=bash
usage()
{
- echo usage: mkdist [-m manifest] [-s srcdir] [-r rootname] [-v] version 1>&2
+ echo usage: mkdist [-m manifest] [-s srcdir] [-r rootname] [-t] [-v] version 1>&2
exit 2
}
@@ -42,12 +42,13 @@ vmsg()
fi
}
-while getopts m:s:r:v name
+while getopts m:s:r:tv name
do
case $name in
m) MANIFEST=$OPTARG ;;
s) SRCDIR=$OPTARG ;;
r) ROOTNAME=$OPTARG ;;
+ t) maketar=yes ;;
v) verbose=yes ;;
?) usage ;;
esac
@@ -66,6 +67,8 @@ fi
version=$1
newdir=${ROOTNAME}-$version
+tarfile=${newdir}.tar
+
vmsg creating distribution for $ROOTNAME version $version in $newdir
if [ ! -d $newdir ]; then
@@ -117,4 +120,10 @@ done < $MANIFEST
vmsg $newdir created
+if [ -n "$maketar" ]; then
+ tar cf ${tarfile} $newdir
+ gzip $tarfile
+ vmsg ${tarfile}.gz created
+fi
+
exit 0
diff --git a/support/shlib-install b/support/shlib-install
index 3d0fb3c..cfec3bd 100755
--- a/support/shlib-install
+++ b/support/shlib-install
@@ -66,11 +66,12 @@ fi
# post-install/uninstall
# HP-UX and Darwin/MacOS X require that a shared library have execute permission
-# Linux does, too, and ldd warns about it
+# Linux does, too, and ldd warns about it. Solaris doesn't seem to mind,
+# but ldd still warns about it.
# Cygwin installs both a dll (which must go in $BINDIR) and an implicit
# link library (in $libdir)
case "$host_os" in
-hpux*|darwin*|macosx*|linux*)
+hpux*|darwin*|macosx*|linux*|solaris2*)
if [ -z "$uninstall" ]; then
chmod 555 ${INSTALLDIR}/${LIBNAME}
fi ;;
@@ -131,7 +132,7 @@ case "$host_os-$host_vendor" in
fi
;;
-bsdi4*|*gnu*|darwin*|macosx*|netbsd*)
+bsdi4*|*gnu*|darwin*|macosx*|netbsd*|mirbsd*)
# libname.so.M -> libname.so.M.N
${echo} ${RM} ${INSTALLDIR}/$LINK2
if [ -z "$uninstall" ]; then
@@ -177,7 +178,7 @@ freebsd3*|freebsdaout*)
fi
;;
-freebsd[4-9]*|freebsdelf*|dragonfly*)
+freebsd[4-9]*|freebsd1[0-9]*|freebsdelf*|dragonfly*)
# libname.so -> libname.so.M
${echo} ${RM} ${INSTALLDIR}/$LINK1
if [ -z "$uninstall" ]; then
diff --git a/support/shobj-conf b/support/shobj-conf
index cb3095c..1f64433 100644
--- a/support/shobj-conf
+++ b/support/shobj-conf
@@ -10,7 +10,7 @@
# Chet Ramey
# chet@po.cwru.edu
-# Copyright (C) 1996-2009 Free Software Foundation, Inc.
+# Copyright (C) 1996-2014 Free Software Foundation, Inc.
#
# This file is part of GNU Bash, the Bourne Again SHell.
#
@@ -65,6 +65,20 @@ while [ $# -gt 0 ]; do
done
case "${host_os}-${SHOBJ_CC}-${host_vendor}" in
+nsk-cc-tandem)
+ SHOBJ_CFLAGS=-Wglobalized
+ case `uname -m` in
+ NSR*)
+ SHOBJ_CFLAGS="${SHOBJ_CFLAGS} -Wcall_shared" # default on TNS/E, needed on TNS/R
+ SHOBJ_LD=/usr/bin/ld # for TNS/R
+ ;;
+ NSE*|NEO*)
+ SHOBJ_LD=/usr/bin/eld
+ ;;
+ esac
+ SHOBJ_LDFLAGS='-shared -bglobalized -unres_symbols ignore'
+ ;;
+
sunos4*-*gcc*)
SHOBJ_CFLAGS=-fpic
SHOBJ_LD=/usr/bin/ld
@@ -146,7 +160,7 @@ freebsd3*|freebsdaout*)
;;
# FreeBSD-4.x and later have only ELF
-freebsd[4-9]*|freebsdelf*|dragonfly*)
+freebsd[4-9]*|freebsd1[0-9]*|freebsdelf*|dragonfly*)
SHOBJ_CFLAGS=-fPIC
SHOBJ_LD='${CC}'
@@ -157,49 +171,48 @@ freebsd[4-9]*|freebsdelf*|dragonfly*)
;;
# Darwin/MacOS X
-darwin[89]*|darwin1[0123]*)
- SHOBJ_STATUS=supported
- SHLIB_STATUS=supported
-
+darwin*)
+ # Common definitions for all darwin/mac os x versions
SHOBJ_CFLAGS='-fno-common'
-# SHOBJ_LD='MACOSX_DEPLOYMENT_TARGET=10.3 ${CC}'
- # we can finally kill Mac OS X 10.3
SHOBJ_LD='${CC}'
SHLIB_LIBVERSION='$(SHLIB_MAJOR)$(SHLIB_MINOR).$(SHLIB_LIBSUFF)'
SHLIB_LIBSUFF='dylib'
- SHOBJ_LDFLAGS='-dynamiclib -dynamic -undefined dynamic_lookup -arch_only `/usr/bin/arch`'
- SHLIB_XLDFLAGS='-dynamiclib -arch_only `/usr/bin/arch` -install_name $(libdir)/$@ -current_version $(SHLIB_MAJOR)$(SHLIB_MINOR) -compatibility_version $(SHLIB_MAJOR) -v'
-
- SHLIB_LIBS='-lncurses' # see if -lcurses works on MacOS X 10.1
- ;;
-
-darwin*|macosx*)
- SHOBJ_STATUS=unsupported
- SHLIB_STATUS=supported
-
- SHOBJ_CFLAGS='-fno-common'
-
- SHOBJ_LD='${CC}'
-
- SHLIB_LIBVERSION='$(SHLIB_MAJOR)$(SHLIB_MINOR).$(SHLIB_LIBSUFF)'
- SHLIB_LIBSUFF='dylib'
+ # unused at this time
+ SHLIB_SONAME='$(libdir)/`echo $@ | sed "s:\\..*::"`.$(SHLIB_MAJOR).$(SHLIB_LIBSUFF)'
case "${host_os}" in
- darwin[789]*|darwin1[0123]*) SHOBJ_LDFLAGS=''
- SHLIB_XLDFLAGS='-dynamiclib -arch_only `/usr/bin/arch` -install_name $(libdir)/$@ -current_version $(SHLIB_MAJOR)$(SHLIB_MINOR) -compatibility_version $(SHLIB_MAJOR) -v'
+ # Darwin versions 1, 5, 6, 7 correspond to Mac OS X 10.0, 10.1, 10.2,
+ # and 10.3, respectively.
+ darwin[1-7].*)
+ SHOBJ_STATUS=unsupported
+ SHOBJ_LDFLAGS='-dynamic'
+ SHLIB_XLDFLAGS='-arch_only `/usr/bin/arch` -install_name $(libdir)/`echo $@ | sed "s:\\..*::"`.$(SHLIB_MAJOR).$(SHLIB_LIBSUFF) -current_version $(SHLIB_MAJOR)$(SHLIB_MINOR) -compatibility_version $(SHLIB_MAJOR) -v'
+ ;;
+ # Darwin 8 == Mac OS X 10.4; Mac OS X 10.N == Darwin N+4
+ *)
+ case "${host_os}" in
+ darwin[89]*|darwin1[012]*)
+ SHOBJ_ARCHFLAGS='-arch_only `/usr/bin/arch`'
;;
- *) SHOBJ_LDFLAGS='-dynamic'
- SHLIB_XLDFLAGS='-arch_only `/usr/bin/arch` -install_name $(libdir)/$@ -current_version $(SHLIB_MAJOR)$(SHLIB_MINOR) -compatibility_version $(SHLIB_MAJOR) -v'
+ *) # Mac OS X 10.9 (Mavericks) and later
+ SHOBJ_ARCHFLAGS=
+ # for 32 and 64bit universal library
+ #SHOBJ_ARCHFLAGS='-arch i386 -arch x86_64'
+ #SHOBJ_CFLAGS=${SHOBJ_CFLAGS}' -arch i386 -arch x86_64'
;;
+ esac
+ SHOBJ_LDFLAGS="-dynamiclib -dynamic -undefined dynamic_lookup ${SHOBJ_ARCHFLAGS}"
+ SHLIB_XLDFLAGS="-dynamiclib ${SHOBJ_ARCHFLAGS}"' -install_name $(libdir)/`echo $@ | sed "s:\\..*::"`.$(SHLIB_MAJOR).$(SHLIB_LIBSUFF) -current_version $(SHLIB_MAJOR)$(SHLIB_MINOR) -compatibility_version $(SHLIB_MAJOR) -v'
+ ;;
esac
SHLIB_LIBS='-lncurses' # see if -lcurses works on MacOS X 10.1
;;
-openbsd*|netbsd*)
+openbsd*|netbsd*|mirbsd*)
SHOBJ_CFLAGS=-fPIC
SHOBJ_LD='${CC}'
SHOBJ_LDFLAGS='-shared'
diff --git a/terminal.c b/terminal.c
index f8c2f6e..1212ec4 100644
--- a/terminal.c
+++ b/terminal.c
@@ -55,6 +55,10 @@
# include <sys/ioctl.h>
#endif /* GWINSZ_IN_SYS_IOCTL && !TIOCGWINSZ */
+#ifdef __MSDOS__
+# include <pc.h>
+#endif
+
#include "rltty.h"
#include "tcap.h"
@@ -77,22 +81,25 @@ static void _win_get_screensize PARAMS((int *, int *));
static void _emx_get_screensize PARAMS((int *, int *));
#endif
-#define CUSTOM_REDISPLAY_FUNC() (rl_redisplay_function != rl_redisplay)
-#define CUSTOM_INPUT_FUNC() (rl_getc_function != rl_getc)
-
-/* If the calling application sets this to a non-zero value, readline will
- use the $LINES and $COLUMNS environment variables to set its idea of the
- window size before interrogating the kernel. */
+/* If the calling application sets this to a non-zero value, readline will
+ use the $LINES and $COLUMNS environment variables to set its idea of the
+ window size before interrogating the kernel. */
int rl_prefer_env_winsize = 0;
+/* If this is non-zero, readline will set LINES and COLUMNS in the
+ environment when it handles SIGWINCH. */
+int rl_change_environment = 1;
+
/* **************************************************************** */
/* */
/* Terminal and Termcap */
/* */
/* **************************************************************** */
+#ifndef __MSDOS__
static char *term_buffer = (char *)NULL;
static char *term_string_buffer = (char *)NULL;
+#endif
static int tcap_initialized;
@@ -264,7 +271,10 @@ _rl_get_screen_size (tty, ignore_env)
if (_rl_screenwidth <= 0)
_rl_screenwidth = wc;
-#if !defined (__DJGPP__)
+#if defined (__DJGPP__)
+ if (_rl_screenwidth <= 0)
+ _rl_screenwidth = ScreenCols ();
+#else
if (_rl_screenwidth <= 0 && term_string_buffer)
_rl_screenwidth = tgetnum ("co");
#endif
@@ -280,7 +290,10 @@ _rl_get_screen_size (tty, ignore_env)
if (_rl_screenheight <= 0)
_rl_screenheight = wr;
-#if !defined (__DJGPP__)
+#if defined (__DJGPP__)
+ if (_rl_screenheight <= 0)
+ _rl_screenheight = ScreenRows ();
+#else
if (_rl_screenheight <= 0 && term_string_buffer)
_rl_screenheight = tgetnum ("li");
#endif
@@ -296,7 +309,8 @@ _rl_get_screen_size (tty, ignore_env)
/* If we're being compiled as part of bash, set the environment
variables $LINES and $COLUMNS to new values. Otherwise, just
do a pair of putenv () or setenv () calls. */
- sh_set_lines_and_columns (_rl_screenheight, _rl_screenwidth);
+ if (rl_change_environment)
+ sh_set_lines_and_columns (_rl_screenheight, _rl_screenwidth);
if (_rl_term_autowrap == 0)
_rl_screenwidth--;
@@ -346,7 +360,13 @@ rl_reset_screen_size ()
{
_rl_get_screen_size (fileno (rl_instream), 0);
}
-
+
+void
+_rl_sigwinch_resize_terminal ()
+{
+ _rl_get_screen_size (fileno (rl_instream), 1);
+}
+
void
rl_resize_terminal ()
{
@@ -432,6 +452,23 @@ _rl_init_terminal_io (terminal_name)
if (term == 0)
term = "dumb";
+#ifdef __MSDOS__
+ _rl_term_im = _rl_term_ei = _rl_term_ic = _rl_term_IC = (char *)NULL;
+ _rl_term_up = _rl_term_dc = _rl_term_DC = _rl_visible_bell = (char *)NULL;
+ _rl_term_ku = _rl_term_kd = _rl_term_kl = _rl_term_kr = (char *)NULL;
+ _rl_term_mm = _rl_term_mo = (char *)NULL;
+ _rl_terminal_can_insert = term_has_meta = _rl_term_autowrap = 0;
+ _rl_term_cr = "\r";
+ _rl_term_clreol = _rl_term_clrpag = _rl_term_backspace = (char *)NULL;
+ _rl_term_goto = _rl_term_pc = _rl_term_ip = (char *)NULL;
+ _rl_term_ks = _rl_term_ke =_rl_term_vs = _rl_term_ve = (char *)NULL;
+ _rl_term_kh = _rl_term_kH = _rl_term_at7 = _rl_term_kI = (char *)NULL;
+#if defined(HACK_TERMCAP_MOTION)
+ _rl_term_forward_char = (char *)NULL;
+#endif
+
+ _rl_get_screen_size (tty, 0);
+#else /* !__MSDOS__ */
/* I've separated this out for later work on not calling tgetent at all
if the calling application has supplied a custom redisplay function,
(and possibly if the application has supplied a custom input function). */
@@ -531,6 +568,7 @@ _rl_init_terminal_io (terminal_name)
term_has_meta = tgetflag ("km") != 0;
if (term_has_meta == 0)
_rl_term_mm = _rl_term_mo = (char *)NULL;
+#endif /* !__MSDOS__ */
/* Attempt to find and bind the arrow keys. Do not override already
bound keys in an overzealous attempt, however. */
@@ -628,10 +666,12 @@ _rl_backspace (count)
{
register int i;
+#ifndef __MSDOS__
if (_rl_term_backspace)
for (i = 0; i < count; i++)
tputs (_rl_term_backspace, 1, _rl_output_character_function);
else
+#endif
for (i = 0; i < count; i++)
putc ('\b', _rl_out_stream);
return 0;
@@ -663,7 +703,11 @@ rl_ding ()
case VISIBLE_BELL:
if (_rl_visible_bell)
{
+#ifdef __DJGPP__
+ ScreenVisualBell ();
+#else
tputs (_rl_visible_bell, 1, _rl_output_character_function);
+#endif
break;
}
/* FALLTHROUGH */
@@ -683,12 +727,29 @@ rl_ding ()
/* */
/* **************************************************************** */
+static int enabled_meta = 0; /* flag indicating we enabled meta mode */
+
void
_rl_enable_meta_key ()
{
#if !defined (__DJGPP__)
if (term_has_meta && _rl_term_mm)
- tputs (_rl_term_mm, 1, _rl_output_character_function);
+ {
+ tputs (_rl_term_mm, 1, _rl_output_character_function);
+ enabled_meta = 1;
+ }
+#endif
+}
+
+void
+_rl_disable_meta_key ()
+{
+#if !defined (__DJGPP__)
+ if (term_has_meta && _rl_term_mo && enabled_meta)
+ {
+ tputs (_rl_term_mo, 1, _rl_output_character_function);
+ enabled_meta = 0;
+ }
#endif
}
@@ -718,6 +779,7 @@ void
_rl_set_cursor (im, force)
int im, force;
{
+#ifndef __MSDOS__
if (_rl_term_ve && _rl_term_vs)
{
if (force || im != rl_insert_mode)
@@ -728,4 +790,5 @@ _rl_set_cursor (im, force)
tputs (_rl_term_ve, 1, _rl_output_character_function);
}
}
+#endif
}
diff --git a/text.c b/text.c
index 536e31a..f29adf8 100644
--- a/text.c
+++ b/text.c
@@ -240,7 +240,7 @@ rl_replace_line (text, clear_undo)
this is the same as rl_end.
Any command that is called interactively receives two arguments.
- The first is a count: the numeric arg pased to this command.
+ The first is a count: the numeric arg passed to this command.
The second is the key which invoked this command.
*/
@@ -826,7 +826,7 @@ _rl_insert_char (count, c)
pending characters that are bound to rl_insert, and insert
them all. Don't do this if we're current reading input from
a macro. */
- if ((RL_ISSTATE (RL_STATE_MACROINPUT) == 0) && _rl_any_typein ())
+ if ((RL_ISSTATE (RL_STATE_MACROINPUT) == 0) && _rl_pushed_input_available ())
_rl_insert_typein (c);
else
{
@@ -908,6 +908,9 @@ _rl_insert_next (count)
if (c < 0)
return -1;
+ if (RL_ISSTATE (RL_STATE_MACRODEF))
+ _rl_add_macro_char (c);
+
#if defined (HANDLE_SIGNALS)
if (RL_ISSTATE (RL_STATE_CALLBACK) == 0)
_rl_restore_tty_signals ();
diff --git a/undo.c b/undo.c
index eb042b2..e9369b1 100644
--- a/undo.c
+++ b/undo.c
@@ -1,7 +1,7 @@
/* readline.c -- a general facility for reading lines of input
with emacs style editing and completion. */
-/* Copyright (C) 1987-2009 Free Software Foundation, Inc.
+/* Copyright (C) 1987-2012 Free Software Foundation, Inc.
This file is part of the GNU Readline Library (Readline), a library
for reading lines of text with interactive input and history editing.
@@ -101,23 +101,33 @@ rl_add_undo (what, start, end, text)
rl_undo_list = temp;
}
-/* Free the existing undo list. */
+/* Free an UNDO_LIST */
void
-rl_free_undo_list ()
+_rl_free_undo_list (ul)
+ UNDO_LIST *ul;
{
- UNDO_LIST *release, *orig_list;
+ UNDO_LIST *release;
- orig_list = rl_undo_list;
- while (rl_undo_list)
+ while (ul)
{
- release = rl_undo_list;
- rl_undo_list = rl_undo_list->next;
+ release = ul;
+ ul = ul->next;
if (release->what == UNDO_DELETE)
xfree (release->text);
xfree (release);
}
+}
+
+/* Free the existing undo list. */
+void
+rl_free_undo_list ()
+{
+ UNDO_LIST *release, *orig_list;
+
+ orig_list = rl_undo_list;
+ _rl_free_undo_list (rl_undo_list);
rl_undo_list = (UNDO_LIST *)NULL;
replace_history_data (-1, (histdata_t *)orig_list, (histdata_t *)NULL);
}
@@ -168,6 +178,7 @@ rl_do_undo ()
{
UNDO_LIST *release;
int waiting_for_begin, start, end;
+ HIST_ENTRY *cur, *temp;
#define TRANS(i) ((i) == -1 ? rl_point : ((i) == -2 ? rl_end : (i)))
@@ -222,6 +233,18 @@ rl_do_undo ()
release = rl_undo_list;
rl_undo_list = rl_undo_list->next;
+
+ /* If we are editing a history entry, make sure the change is replicated
+ in the history entry's line */
+ cur = current_history ();
+ if (cur && cur->data && (UNDO_LIST *)cur->data == release)
+ {
+ temp = replace_history_entry (where_history (), rl_line_buffer, (histdata_t)rl_undo_list);
+ xfree (temp->line);
+ FREE (temp->timestamp);
+ xfree (temp);
+ }
+
replace_history_data (-1, (histdata_t *)release, (histdata_t *)rl_undo_list);
xfree (release);
diff --git a/util.c b/util.c
index 6c68ad8..fa3a667 100644
--- a/util.c
+++ b/util.c
@@ -1,6 +1,6 @@
/* util.c -- readline utility functions */
-/* Copyright (C) 1987-2010 Free Software Foundation, Inc.
+/* Copyright (C) 1987-2012 Free Software Foundation, Inc.
This file is part of the GNU Readline Library (Readline), a library
for reading lines of text with interactive input and history editing.
@@ -108,7 +108,11 @@ _rl_abort_internal ()
_rl_pop_executing_macro ();
rl_last_func = (rl_command_func_t *)NULL;
+#if defined (HAVE_POSIX_SIGSETJMP)
+ siglongjmp (_rl_top_level, 1);
+#else
longjmp (_rl_top_level, 1);
+#endif
return (0);
}
@@ -369,11 +373,13 @@ _rl_strpbrk (string1, string2)
doesn't matter (strncasecmp). */
int
_rl_strnicmp (string1, string2, count)
- char *string1, *string2;
+ const char *string1;
+ const char *string2;
int count;
{
- register char *s1, *s2;
- int d;
+ register const char *s1;
+ register const char *s2;
+ register int d;
if (count <= 0 || (string1 == string2))
return 0;
@@ -389,7 +395,7 @@ _rl_strnicmp (string1, string2, count)
break;
s2++;
}
- while (--count != 0)
+ while (--count != 0);
return (0);
}
@@ -397,10 +403,12 @@ _rl_strnicmp (string1, string2, count)
/* strcmp (), but caseless (strcasecmp). */
int
_rl_stricmp (string1, string2)
- char *string1, *string2;
+ const char *string1;
+ const char *string2;
{
- register char *s1, *s2;
- int d;
+ register const char *s1;
+ register const char *s2;
+ register int d;
s1 = string1;
s2 = string2;
@@ -507,7 +515,7 @@ _rl_tropen ()
if (_rl_tracefp)
fclose (_rl_tracefp);
- sprintf (fnbuf, "/var/tmp/rltrace.%ld", getpid());
+ sprintf (fnbuf, "/var/tmp/rltrace.%ld", (long)getpid());
unlink(fnbuf);
_rl_tracefp = fopen (fnbuf, "w+");
return _rl_tracefp != 0;
@@ -523,4 +531,61 @@ _rl_trclose ()
return r;
}
+void
+_rl_settracefp (fp)
+ FILE *fp;
+{
+ _rl_tracefp = fp;
+}
+#endif
+
+
+#if HAVE_DECL_AUDIT_USER_TTY && defined (ENABLE_TTY_AUDIT_SUPPORT)
+#include <sys/socket.h>
+#include <linux/audit.h>
+#include <linux/netlink.h>
+
+/* Report STRING to the audit system. */
+void
+_rl_audit_tty (string)
+ char *string;
+{
+ struct sockaddr_nl addr;
+ struct msghdr msg;
+ struct nlmsghdr nlm;
+ struct iovec iov[2];
+ size_t size;
+ int fd;
+
+ fd = socket (AF_NETLINK, SOCK_RAW, NETLINK_AUDIT);
+ if (fd < 0)
+ return;
+ size = strlen (string) + 1;
+
+ nlm.nlmsg_len = NLMSG_LENGTH (size);
+ nlm.nlmsg_type = AUDIT_USER_TTY;
+ nlm.nlmsg_flags = NLM_F_REQUEST;
+ nlm.nlmsg_seq = 0;
+ nlm.nlmsg_pid = 0;
+
+ iov[0].iov_base = &nlm;
+ iov[0].iov_len = sizeof (nlm);
+ iov[1].iov_base = string;
+ iov[1].iov_len = size;
+
+ addr.nl_family = AF_NETLINK;
+ addr.nl_pid = 0;
+ addr.nl_groups = 0;
+
+ msg.msg_name = &addr;
+ msg.msg_namelen = sizeof (addr);
+ msg.msg_iov = iov;
+ msg.msg_iovlen = 2;
+ msg.msg_control = NULL;
+ msg.msg_controllen = 0;
+ msg.msg_flags = 0;
+
+ (void)sendmsg (fd, &msg, 0);
+ close (fd);
+}
#endif
diff --git a/vi_keymap.c b/vi_keymap.c
index ba5a27b..60c925d 100644
--- a/vi_keymap.c
+++ b/vi_keymap.c
@@ -309,7 +309,6 @@ KEYMAP_ENTRY_ARRAY vi_movement_keymap = {
#endif /* KEYMAP_SIZE > 128 */
};
-
KEYMAP_ENTRY_ARRAY vi_insertion_keymap = {
/* The regular control keys come first. */
{ ISFUNC, (rl_command_func_t *)0x0 }, /* Control-@ */
diff --git a/vi_mode.c b/vi_mode.c
index 4408053..0864192 100644
--- a/vi_mode.c
+++ b/vi_mode.c
@@ -1,7 +1,7 @@
/* vi_mode.c -- A vi emulation mode for Bash.
Derived from code written by Jeff Sparkes (jsparkes@bnr.ca). */
-/* Copyright (C) 1987-2010 Free Software Foundation, Inc.
+/* Copyright (C) 1987-2012 Free Software Foundation, Inc.
This file is part of the GNU Readline Library (Readline), a library
for reading lines of text with interactive input and history editing.
@@ -108,9 +108,13 @@ static const char * const vi_textmod = "_*\\AaIiCcDdPpYyRrSsXx~";
/* Arrays for the saved marks. */
static int vi_mark_chars['z' - 'a' + 1];
+static void _rl_vi_replace_insert PARAMS((int));
+static void _rl_vi_save_replace PARAMS((void));
static void _rl_vi_stuff_insert PARAMS((int));
static void _rl_vi_save_insert PARAMS((UNDO_LIST *));
+static void vi_save_insert_buffer PARAMS ((int, int));
+
static void _rl_vi_backup PARAMS((void));
static int _rl_vi_arg_dispatch PARAMS((int));
@@ -189,6 +193,22 @@ _rl_vi_textmod_command (c)
}
static void
+_rl_vi_replace_insert (count)
+ int count;
+{
+ int nchars;
+
+ nchars = strlen (vi_insert_buffer);
+
+ rl_begin_undo_group ();
+ while (count--)
+ /* nchars-1 to compensate for _rl_replace_text using `end+1' in call
+ to rl_delete_text */
+ _rl_replace_text (vi_insert_buffer, rl_point, rl_point+nchars-1);
+ rl_end_undo_group ();
+}
+
+static void
_rl_vi_stuff_insert (count)
int count;
{
@@ -207,7 +227,7 @@ rl_vi_redo (count, c)
{
int r;
- if (!rl_explicit_arg)
+ if (rl_explicit_arg == 0)
{
rl_numeric_arg = _rl_vi_last_repeat;
rl_arg_sign = _rl_vi_last_arg_sign;
@@ -224,6 +244,13 @@ rl_vi_redo (count, c)
if (rl_point > 0)
_rl_vi_backup ();
}
+ else if (_rl_vi_last_command == 'R' && vi_insert_buffer && *vi_insert_buffer)
+ {
+ _rl_vi_replace_insert (count);
+ /* And back up point over the last character inserted. */
+ if (rl_point > 0)
+ _rl_vi_backup ();
+ }
/* Ditto for redoing an insert with `I', but move to the beginning of the
line like the `I' command does. */
else if (_rl_vi_last_command == 'I' && vi_insert_buffer && *vi_insert_buffer)
@@ -679,6 +706,8 @@ rl_vi_insertion_mode (count, key)
{
_rl_keymap = vi_insertion_keymap;
_rl_vi_last_key_before_insert = key;
+ if (_rl_show_mode_in_prompt)
+ _rl_reset_prompt ();
return (0);
}
@@ -691,6 +720,43 @@ rl_vi_insert_mode (count, key)
}
static void
+vi_save_insert_buffer (start, len)
+ int start, len;
+{
+ /* Same code as _rl_vi_save_insert below */
+ if (len >= vi_insert_buffer_size)
+ {
+ vi_insert_buffer_size += (len + 32) - (len % 32);
+ vi_insert_buffer = (char *)xrealloc (vi_insert_buffer, vi_insert_buffer_size);
+ }
+ strncpy (vi_insert_buffer, rl_line_buffer + start, len - 1);
+ vi_insert_buffer[len-1] = '\0';
+}
+
+static void
+_rl_vi_save_replace ()
+{
+ int len, start, end;
+ UNDO_LIST *up;
+
+ up = rl_undo_list;
+ if (up == 0 || up->what != UNDO_END || vi_replace_count <= 0)
+ {
+ if (vi_insert_buffer_size >= 1)
+ vi_insert_buffer[0] = '\0';
+ return;
+ }
+ /* Let's try it the quick and easy way for now. This should essentially
+ accommodate every UNDO_INSERT and save the inserted text to
+ vi_insert_buffer */
+ end = rl_point;
+ start = end - vi_replace_count + 1;
+ len = vi_replace_count + 1;
+
+ vi_save_insert_buffer (start, len);
+}
+
+static void
_rl_vi_save_insert (up)
UNDO_LIST *up;
{
@@ -706,13 +772,8 @@ _rl_vi_save_insert (up)
start = up->start;
end = up->end;
len = end - start + 1;
- if (len >= vi_insert_buffer_size)
- {
- vi_insert_buffer_size += (len + 32) - (len % 32);
- vi_insert_buffer = (char *)xrealloc (vi_insert_buffer, vi_insert_buffer_size);
- }
- strncpy (vi_insert_buffer, rl_line_buffer + start, len - 1);
- vi_insert_buffer[len-1] = '\0';
+
+ vi_save_insert_buffer (start, len);
}
void
@@ -728,7 +789,10 @@ _rl_vi_done_inserting ()
on absolute indices into the line which may change (though they
probably will not). */
_rl_vi_doing_insert = 0;
- _rl_vi_save_insert (rl_undo_list->next);
+ if (_rl_vi_last_key_before_insert == 'R')
+ _rl_vi_save_replace (); /* Half the battle */
+ else
+ _rl_vi_save_insert (rl_undo_list->next);
vi_continued_command = 1;
}
else
@@ -762,6 +826,9 @@ rl_vi_movement_mode (count, key)
if (RL_ISSTATE (RL_STATE_VICMDONCE) == 0)
rl_free_undo_list ();
+ if (_rl_show_mode_in_prompt)
+ _rl_reset_prompt ();
+
RL_SETSTATE (RL_STATE_VICMDONCE);
return (0);
}
@@ -1940,14 +2007,20 @@ rl_vi_replace (count, key)
vi_replace_count = 0;
- if (!vi_replace_map)
+ if (vi_replace_map == 0)
{
vi_replace_map = rl_make_bare_keymap ();
+ for (i = 0; i < ' '; i++)
+ if (vi_insertion_keymap[i].type == ISFUNC)
+ vi_replace_map[i].function = vi_insertion_keymap[i].function;
+
for (i = ' '; i < KEYMAP_SIZE; i++)
vi_replace_map[i].function = rl_vi_overstrike;
vi_replace_map[RUBOUT].function = rl_vi_overstrike_delete;
+
+ /* Make sure these are what we want. */
vi_replace_map[ESC].function = rl_vi_movement_mode;
vi_replace_map[RETURN].function = rl_newline;
vi_replace_map[NEWLINE].function = rl_newline;
@@ -1960,7 +2033,12 @@ rl_vi_replace (count, key)
vi_replace_map[CTRL ('H')].function = rl_vi_overstrike_delete;
}
+
+ rl_vi_start_inserting (key, 1, rl_arg_sign);
+
+ _rl_vi_last_key_before_insert = key;
_rl_keymap = vi_replace_map;
+
return (0);
}