changeset 90843:d7172f202ab8

Merge from emacs--devo--0 Patches applied: * emacs--devo--0 (patch 726-750) - Update from CVS - Merge from emacs--rel--22 - Merge from gnus--rel--5.10 * emacs--rel--22 (patch 6-17) - Update from CVS - Update from CVS: src/xterm.c (XTread_socket): Revert last change. * gnus--rel--5.10 (patch 218-221) - Merge from emacs--devo--0, emacs--rel--22 - Update from CVS Revision: emacs@sv.gnu.org/emacs--unicode--0--patch-205
author Miles Bader <miles@gnu.org>
date Tue, 15 May 2007 07:17:13 +0000
parents e8254e8eb079 (current diff) 6518bb67d7fa (diff)
children 40ee36df92d8
files ChangeLog MAINTAINERS admin/FOR-RELEASE admin/notes/copyright configure etc/ChangeLog etc/DEBUG etc/Makefile etc/NEWS etc/TODO etc/fr-refcard.tex etc/refcard.tex lisp/ChangeLog lisp/ChangeLog.8 lisp/dabbrev.el lisp/diff-mode.el lisp/diff.el lisp/emacs-lisp/advice.el lisp/emacs-lisp/easy-mmode.el lisp/emacs-lisp/eldoc.el lisp/files.el lisp/gnus/ChangeLog lisp/gnus/gnus-art.el lisp/international/iso-cvt.el lisp/mail/mailabbrev.el lisp/mail/rmail.el lisp/man.el lisp/net/rcirc.el lisp/newcomment.el lisp/progmodes/compile.el lisp/progmodes/python.el lisp/startup.el lisp/term/mac-win.el lisp/textmodes/sgml-mode.el lisp/textmodes/tex-mode.el lisp/vc-hooks.el lisp/vc.el lisp/xt-mouse.el lispref/ChangeLog lispref/control.texi lispref/elisp.texi lispref/files.texi lispref/help.texi lispref/hooks.texi lispref/keymaps.texi lispref/modes.texi lispref/processes.texi lispref/text.texi lispref/tips.texi man/ChangeLog man/cmdargs.texi man/emacs.texi man/gnus.texi man/maintaining.texi man/texinfo.tex nt/INSTALL nt/configure.bat src/ChangeLog src/editfns.c src/image.c src/keymap.c
diffstat 67 files changed, 5501 insertions(+), 4387 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Mon May 14 11:56:47 2007 +0000
+++ b/ChangeLog	Tue May 15 07:17:13 2007 +0000
@@ -1,3 +1,7 @@
+2007-05-03  Glenn Morris  <rgm@gnu.org>
+
+	* configure: Tweak message about the absence of shell functions.
+
 2007-04-27  Andreas Schwab  <schwab@suse.de>
 
 	* Makefile.in (config.status): Depend on
--- a/MAINTAINERS	Mon May 14 11:56:47 2007 +0000
+++ b/MAINTAINERS	Tue May 15 07:17:13 2007 +0000
@@ -112,6 +112,12 @@
 Thien-Thi Nguyen
 	VMS
 
+Juanma Barranquero
+       lisp/bs.el
+       lisp/server.el
+       lib-src/emacsclient.c
+       lib-src/grep-changelog
+
 ==============================================================================
 3.
 ==============================================================================
@@ -149,13 +155,16 @@
 src/filemode.c
 src/firstfile.c
 src/floatfns.c
+src/fringe.c
 src/fns.c
 src/fontset.c
 src/getloadavg.c
 src/gmalloc.c
+src/gtkutil.c
 src/hftctl.c
 src/indent.c
 src/insdel.c
+src/image.c
 src/lastfile.c
 src/lread.c
 src/m/
--- a/admin/FOR-RELEASE	Mon May 14 11:56:47 2007 +0000
+++ b/admin/FOR-RELEASE	Tue May 15 07:17:13 2007 +0000
@@ -22,6 +22,10 @@
 
 Reminders sent out on 2006-06-08.
 
+** Remove temporary +++/--- lines in NEWS.
+
+** Try to reorder NEWS: most important things first, related items together.
+
 * WINDOWS SUPPORT BUGS.
 
 These don't need to be fixed before a release, but we call the
@@ -49,12 +53,12 @@
 ** michael.ewe@arcor.de, Apr 24: 22.0.98  not starting on Solaris 10/I386
 http://lists.gnu.org/archive/html/emacs-devel/2007-04/msg01113.html
 
-** rgm@gnu.org, Apr 24: [Stephen.Berman@gmx.net: Re: redisplay]
-  Gives test case for problem that a dialog box blocks redisplay.
-http://lists.gnu.org/archive/html/emacs-devel/2007-04/msg00951.html
+** Takaaki.Ota@am.sony.com, May 2: table cell menu does not appear at the menubar
+   Bug is intermittent.
 
-** C mode fontification took 50 seconds
-http://lists.gnu.org/archive/html/emacs-devel/2007-04/msg01460.html
+** Install vc-hooks.el patch from trunk.
+
+** Move some items from magic-mode-alist to file-start-mode-alist.
 
 * DOCUMENTATION
 
--- a/admin/notes/copyright	Mon May 14 11:56:47 2007 +0000
+++ b/admin/notes/copyright	Tue May 15 07:17:13 2007 +0000
@@ -228,6 +228,7 @@
   the concept.
   rms: "My understanding is that game rules as such are not copyrightable."
   <http://lists.gnu.org/archive/html/emacs-devel/2007-01/msg00960.html>
+  rms: Legal advice is that we are ok and need not worry about this.
 
 lispref/doclicense.texi
 man/doclicense.texi
@@ -405,6 +406,7 @@
   Accordingly, FSF copyright was added.
 
 src/unexhp9k800.c  (and dependent src/m/sr2k.h)
+  http://lists.gnu.org/archive/html/emacs-devel/2007-02/msg00138.html
   - briefly removed due to legal uncertainly Jan-Mar 2007. The
   relevant assignment is under "hp9k800" in copyright.list. File was
   written by John V. Morris at HP, and disclaimed by the author and
@@ -425,6 +427,14 @@
 http://lists.gnu.org/archive/html/emacs-devel/2007-04/msg01427.html
 
 
+lisp/progmodes/python.el
+Dave Love alerted us to a potential legal problem:
+http://lists.gnu.org/archive/html/emacs-pretest-bug/2007-04/msg00459.html
+
+On consultation with a lawyer, we found there was no problem:
+http://lists.gnu.org/archive/html/emacs-devel/2007-05/msg00466.html
+
+
 ** Issues that are "fixed" for the release of Emacs 22, but we may
    wish to revisit later in more detail
 
@@ -549,9 +559,6 @@
     Emacs 22 is released (though if they can be fixed before, that is
     obviously good):
 
-Maybe some relevant comments here?
-<http://groups.google.com/group/linux.debian.legal/browse_thread/thread/123547ea95437a1f>
-
 
 Is it OK to just `cvs remove' a file for legal reasons, or is
 something more drastic needed? A removed file is still available from
@@ -586,16 +593,9 @@
 Done: TUTORIAL.eo
 
 
-REMOVED src/unexhp9k800.c
-  - we would like to re-add this file if possible. Please let us know
-  if you can clarify its legal status.
-  http://lists.gnu.org/archive/html/emacs-devel/2007-02/msg00138.html
-
-
 *** These are copyright issues still to be addressed:
 
-python.el potential legal problem
-http://lists.gnu.org/archive/html/emacs-pretest-bug/2007-04/msg00459.html
+None known.
 
 
 
--- a/configure	Mon May 14 11:56:47 2007 +0000
+++ b/configure	Tue May 15 07:17:13 2007 +0000
@@ -412,10 +412,10 @@
 fi
 
 test \$exitcode = 0") || {
-  echo No shell found that supports shell functions.
-  echo Please tell autoconf@gnu.org about your system,
-  echo including any error possibly output before this
-  echo message
+  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.
 }
 
 
--- a/etc/ChangeLog	Mon May 14 11:56:47 2007 +0000
+++ b/etc/ChangeLog	Tue May 15 07:17:13 2007 +0000
@@ -1,3 +1,24 @@
+2007-05-15  Micha,Ak(Bl Cadilhac  <michael@cadilhac.name>
+
+	* fr-refcard.tex: Rewrite using German layout.
+
+	* fr-refcard.ps: Regenerate.
+
+2007-05-12  Richard Stallman  <rms@gnu.org>
+
+	* refcard.tex (section{Incremental Search}): Minor corrections.
+
+2007-05-12  Micha,Ak(Bl Cadilhac  <michael@cadilhac.name>
+
+	* Makefile (viperCard.ps, calccard.ps refcard.ps)
+	(sk-dired-ref.ps sk-refcard.ps sk-survival.ps)
+	(de-refcard.ps fr-refcard.ps pt-br-refcard.ps orgcard.ps): Use an
+	explicit output argument for `dvips'.
+
+2007-05-05  Glenn Morris  <rgm@gnu.org>
+
+	* NEWS: Re-order.
+
 2007-04-28  Glenn Morris  <rgm@gnu.org>
 
 	* emacs.py: Restore file pending consideration of python.el legal
--- a/etc/DEBUG	Mon May 14 11:56:47 2007 +0000
+++ b/etc/DEBUG	Tue May 15 07:17:13 2007 +0000
@@ -64,10 +64,10 @@
 Put a breakpoint early in `main', or suspend the Emacs,
 to get an opportunity to do the set command.
 
-When Emacs is running in a terminal, it is useful to use a separate terminal
-for the debug session.  This can be done by starting Emacs as usual, then
-attaching to it from gdb with the `attach' command which is explained in the
-node "Attach" of the GDB manual.
+When Emacs is running in a terminal, it is sometimes useful to use a separate
+terminal for the debug session.  This can be done by starting Emacs as usual,
+then attaching to it from gdb with the `attach' command which is explained in
+the node "Attach" of the GDB manual.
 
 ** Examining Lisp object values.
 
--- a/etc/Makefile	Mon May 14 11:56:47 2007 +0000
+++ b/etc/Makefile	Tue May 15 07:17:13 2007 +0000
@@ -75,22 +75,22 @@
 
 ## A4, landscape.
 de-refcard.ps fr-refcard.ps pt-br-refcard.ps orgcard.ps: %.ps: %.dvi
-	dvips -t a4 -t landscape $<
+	dvips -t a4 -t landscape $< -o $@
 
 ## A4, portrait.
 cs-dired-ref.ps cs-refcard.ps cs-survival.ps fr-drdref.ps \
 pl-refcard.ps ru-refcard.ps \
 sk-dired-ref.ps sk-refcard.ps sk-survival.ps: %.ps: %.dvi
-	dvips -t a4 $<
+	dvips -t a4 $< -o $@
 
 ## letter, landscape.
 calccard.ps refcard.ps: %.ps: %.dvi
-	dvips -t letter -t landscape $<
+	dvips -t letter -t landscape $< -o $@
 
 ## letter, portrait.
 dired-ref.ps gnus-booklet.ps gnus-refcard.ps survival.ps vipcard.ps \
 viperCard.ps: %.ps: %.dvi
-	dvips -t letter $<
+	dvips -t letter $< -o $@
 
 
 .PHONY: mostlyclean clean distclean maintainer-clean unlock relock
--- a/etc/NEWS	Mon May 14 11:56:47 2007 +0000
+++ b/etc/NEWS	Tue May 15 07:17:13 2007 +0000
@@ -123,14 +123,6 @@
 when you run configure.  This requires Gtk+ 2.4 or newer.  This port
 provides a way to display multilingual text in menus (with some caveats).
 
-** Emacs comes with a new set of icons.
-These icons are displayed on the taskbar and/or titlebar when Emacs
-runs in a graphical environment.  Source files for these icons can be
-found in etc/images/icons.  (You can't change the icons displayed by
-Emacs by changing these files directly.  On X, the icon is compiled
-into the Emacs executable; see gnu.h in the source tree.  On MS
-Windows, see nt/icons/emacs.ico.)
-
 ** The Emacs Lisp Reference Manual is now part of the distribution.
 
 The Emacs Lisp Reference Manual in Info format is built as part of the
@@ -150,6 +142,23 @@
 You no longer need to download a separate tarball in order to build
 Emacs with Leim.
 
+** Support for MacOS X was added.
+See the files mac/README and mac/INSTALL for build instructions.
+
+** Mac OS 9 port now uses the Carbon API by default.  You can also
+create a non-Carbon build by specifying `NonCarbon' as a target.  See
+the files mac/README and mac/INSTALL for build instructions.
+
+** Support for a Cygwin build of Emacs was added.
+
+** Support for GNU/Linux systems on X86-64 machines was added.
+
+** Support for GNU/Linux systems on S390 machines was added.
+
+** Support for GNU/Linux systems on Tensilica Xtensa machines was added.
+
+** Support for FreeBSD/Alpha has been added.
+
 ** New translations of the Emacs Tutorial are available in the
 following languages: Brasilian Portuguese, Bulgarian, Chinese (both
 with simplified and traditional characters), French, Russian, and
@@ -162,33 +171,6 @@
 
 ** A French translation of the `Emacs Survival Guide' is available.
 
-** Emacs now includes support for loading image libraries on demand.
-(Currently this feature is only used on MS Windows.)  You can configure
-the supported image types and their associated dynamic libraries by
-setting the variable `image-library-alist'.
-
-** Support for GNU/Linux systems on X86-64 machines was added.
-
-** Support for GNU/Linux systems on S390 machines was added.
-
-** Support for GNU/Linux systems on Tensilica Xtensa machines was added.
-
-** Support for FreeBSD/Alpha has been added.
-
-** Support for a Cygwin build of Emacs was added.
-
-** Support for MacOS X was added.
-See the files mac/README and mac/INSTALL for build instructions.
-
-** Mac OS 9 port now uses the Carbon API by default.  You can also
-create a non-Carbon build by specifying `NonCarbon' as a target.  See
-the files mac/README and mac/INSTALL for build instructions.
-
-** The `emacsserver' program has been removed, replaced with Lisp code.
-
-** The `yow' program has been removed.
-Use the corresponding Emacs feature instead.
-
 ** Emacs now supports new configure options `--program-prefix',
 `--program-suffix' and `--program-transform-name' that affect the names of
 installed programs.
@@ -201,75 +183,52 @@
 to a game user is not available, then scores will be stored separately
 in each user's home directory.
 
+** Emacs now includes support for loading image libraries on demand.
+(Currently this feature is only used on MS Windows.)  You can configure
+the supported image types and their associated dynamic libraries by
+setting the variable `image-library-alist'.
+
 ** Emacs can now be built without sound support.
 
+** Emacs Lisp source files are compressed by default if `gzip' is available.
+
+** All images used in Emacs have been consolidated in etc/images and subdirs.
+See also the changes to `find-image', documented below.
+
+** Emacs comes with a new set of icons.
+These icons are displayed on the taskbar and/or titlebar when Emacs
+runs in a graphical environment.  Source files for these icons can be
+found in etc/images/icons.  (You can't change the icons displayed by
+Emacs by changing these files directly.  On X, the icon is compiled
+into the Emacs executable; see gnu.h in the source tree.  On MS
+Windows, see nt/icons/emacs.ico.)
+
+** The `emacsserver' program has been removed, replaced with Lisp code.
+
+** The `yow' program has been removed.
+Use the corresponding Emacs feature instead.
+
+** The Emacs terminal emulation in term.el uses a different terminfo name.
+The Emacs terminal emulation in term.el now uses "eterm-color" as its
+terminfo name, since term.el now supports color.
+
+** The script etc/emacs-buffer.gdb can be used with gdb to retrieve the
+contents of buffers from a core dump and save them to files easily, should
+Emacs crash.
+
 ** Building with -DENABLE_CHECKING does not automatically build with union
 types any more.  Add -DUSE_LISP_UNION_TYPE if you want union types.
 
 ** When pure storage overflows while dumping, Emacs now prints how
 much pure storage it will approximately need.
 
-** The script etc/emacs-buffer.gdb can be used with gdb to retrieve the
-contents of buffers from a core dump and save them to files easily, should
-Emacs crash.
-
-** The Emacs terminal emulation in term.el uses a different terminfo name.
-The Emacs terminal emulation in term.el now uses "eterm-color" as its
-terminfo name, since term.el now supports color.
-
-** Emacs Lisp source files are compressed by default if `gzip' is available.
-
-** All images used in Emacs have been consolidated in etc/images and subdirs.
-See also the changes to `find-image', documented below.
-
 
 * Startup Changes in Emacs 22.1
 
-** New command line option -Q or --quick.
-This is like using -q --no-site-file, but in addition it also disables
-the fancy startup screen.
-
-** New command line option -D or --basic-display.
-Disables the menu-bar, the tool-bar, the scroll-bars, tool tips, and
-the blinking cursor.
-
-** New command line option -nbc or --no-blinking-cursor disables
-the blinking cursor on graphical terminals.
-
-** The option --script FILE runs Emacs in batch mode and loads FILE.
-It is useful for writing Emacs Lisp shell script files, because they
-can start with this line:
-
-   #!/usr/bin/emacs --script
-
-** The option --directory DIR now modifies `load-path' immediately.
-Directories are added to the front of `load-path' in the order they
-appear on the command line.  For example, with this command line:
-
-  emacs -batch -L .. -L /tmp --eval "(require 'foo)"
-
-Emacs looks for library `foo' in the parent directory, then in /tmp, then
-in the other directories in `load-path'.  (-L is short for --directory.)
-
-** The command line option --no-windows has been changed to
---no-window-system.  The old one still works, but is deprecated.
-
-** If the environment variable DISPLAY specifies an unreachable X display,
-Emacs will now startup as if invoked with the --no-window-system option.
-
-** The -f option, used from the command line to call a function,
-now reads arguments for the function interactively if it is
-an interactively callable function.
-
-** When you specify a frame size with --geometry, the size applies to
-all frames you create.  A position specified with --geometry only
-affects the initial frame.
-
-** Emacs built for MS-Windows now behaves like Emacs on X does,
-with respect to its frame position: if you don't specify a position
-(in your .emacs init file, in the Registry, or with the --geometry
-command-line option), Emacs leaves the frame position to the Windows'
-window manager.
+** Init file changes
+If the init file ~/.emacs does not exist, Emacs will try
+~/.emacs.d/init.el or ~/.emacs.d/init.elc.  Likewise, if the shell init file
+~/.emacs_SHELL is not found, Emacs will try ~/.emacs.d/init_SHELL.sh.
 
 ** Emacs can now be invoked in full-screen mode on a windowed display.
 When Emacs is invoked on a window system, the new command-line options
@@ -283,18 +242,47 @@
 `inhibit-splash-screen' (which is also aliased as
 `inhibit-startup-message').
 
-** The default is now to use a bitmap as the icon.
-The command-line options --icon-type, -i have been replaced with
-options --no-bitmap-icon, -nbi to turn the bitmap icon off.
-
 ** New user option `inhibit-startup-buffer-menu'.
 When loading many files, for instance with `emacs *', Emacs normally
 displays a buffer menu.  This option turns the buffer menu off.
 
-** Init file changes
-If the init file ~/.emacs does not exist, Emacs will try
-~/.emacs.d/init.el or ~/.emacs.d/init.elc.  Likewise, if the shell init file
-~/.emacs_SHELL is not found, Emacs will try ~/.emacs.d/init_SHELL.sh.
+** New command line option -nbc or --no-blinking-cursor disables
+the blinking cursor on graphical terminals.
+
+** The option --script FILE runs Emacs in batch mode and loads FILE.
+It is useful for writing Emacs Lisp shell script files, because they
+can start with this line:
+
+   #!/usr/bin/emacs --script
+
+** The -f option, used from the command line to call a function,
+now reads arguments for the function interactively if it is
+an interactively callable function.
+
+** The option --directory DIR now modifies `load-path' immediately.
+Directories are added to the front of `load-path' in the order they
+appear on the command line.  For example, with this command line:
+
+  emacs -batch -L .. -L /tmp --eval "(require 'foo)"
+
+Emacs looks for library `foo' in the parent directory, then in /tmp, then
+in the other directories in `load-path'.  (-L is short for --directory.)
+
+** When you specify a frame size with --geometry, the size applies to
+all frames you create.  A position specified with --geometry only
+affects the initial frame.
+
+** Emacs built for MS-Windows now behaves like Emacs on X does,
+with respect to its frame position: if you don't specify a position
+(in your .emacs init file, in the Registry, or with the --geometry
+command-line option), Emacs leaves the frame position to the Windows'
+window manager.
+
+** The command line option --no-windows has been changed to
+--no-window-system.  The old one still works, but is deprecated.
+
+** If the environment variable DISPLAY specifies an unreachable X display,
+Emacs will now startup as if invoked with the --no-window-system option.
 
 ** Emacs now reads the standard abbrevs file ~/.abbrev_defs
 automatically at startup, if it exists.  When Emacs offers to save
@@ -302,6 +290,18 @@
 can do this either silently or asking for confirmation first,
 according to the value of `save-abbrevs'.
 
+** New command line option -Q or --quick.
+This is like using -q --no-site-file, but in addition it also disables
+the fancy startup screen.
+
+** New command line option -D or --basic-display.
+Disables the menu-bar, the tool-bar, the scroll-bars, tool tips, and
+the blinking cursor.
+
+** The default is now to use a bitmap as the icon.
+The command-line options --icon-type, -i have been replaced with
+options --no-bitmap-icon, -nbi to turn the bitmap icon off.
+
 ** If the environment variable EMAIL is defined, Emacs now uses its value
 to compute the default value of `user-mail-address', in preference to
 concatenation of `user-login-name' with the name of your host machine.
@@ -313,6 +313,24 @@
 
 See below for more details.
 
+** When the undo information of the current command gets really large
+(beyond the value of `undo-outer-limit'), Emacs discards it and warns
+you about it.
+
+** When Emacs prompts for file names, SPC no longer completes the file name.
+This is so filenames with embedded spaces could be input without the
+need to quote the space with a C-q.  The underlying changes in the
+keymaps that are active in the minibuffer are described below under
+"New keymaps for typing file names".
+
+** The completion commands TAB, SPC and ? in the minibuffer apply only
+to the text before point.  If there is text in the buffer after point,
+it remains unchanged.
+
+** In incremental search, C-w is changed.  M-%, C-M-w and C-M-y are special.
+
+See below under "incremental search changes".
+
 ** M-g is now a prefix key.
 M-g g and M-g M-g run goto-line.
 M-g n and M-g M-n run next-error (like C-x `).
@@ -327,24 +345,6 @@
 ** M-o now is the prefix key for setting text properties;
 M-o M-o requests refontification.
 
-** The old bindings C-M-delete and C-M-backspace have been deleted,
-since there are situations where one or the other will shut down
-the operating system or your X server.
-
-** When the undo information of the current command gets really large
-(beyond the value of `undo-outer-limit'), Emacs discards it and warns
-you about it.
-
-** In incremental search, C-w is changed.  M-%, C-M-w and C-M-y are special.
-
-See below under "incremental search changes".
-
-** When Emacs prompts for file names, SPC no longer completes the file name.
-This is so filenames with embedded spaces could be input without the
-need to quote the space with a C-q.  The underlying changes in the
-keymaps that are active in the minibuffer are described below under
-"New keymaps for typing file names".
-
 ** C-x C-f RET (find-file), typing nothing in the minibuffer, is no longer
 a special case.
 
@@ -355,10 +355,6 @@
 You can get the old behavior by typing C-x C-f M-n RET, which fetches
 the actual file name into the minibuffer.
 
-** The completion commands TAB, SPC and ? in the minibuffer apply only
-to the text before point.  If there is text in the buffer after point,
-it remains unchanged.
-
 ** In Dired's ! command (dired-do-shell-command), `*' and `?' now
 control substitution of the file names only when they are surrounded
 by whitespace.  This means you can now use them as shell wildcards
@@ -382,6 +378,10 @@
 ** Adaptive filling misfeature removed.
 It no longer treats `NNN.' or `(NNN)' as a prefix.
 
+** The old bindings C-M-delete and C-M-backspace have been deleted,
+since there are situations where one or the other will shut down
+the operating system or your X server.
+
 ** The register compatibility key bindings (deprecated since Emacs 19)
 have been removed:
   C-x /   point-to-register (Use: C-x r SPC)
@@ -392,6 +392,9 @@
 
 * Editing Changes in Emacs 22.1
 
+** The max size of buffers and integers has been doubled.
+On 32bit machines, it is now 256M (i.e. 268435455).
+
 ** !MEM FULL! at the start of the mode line indicates that Emacs
 cannot get any more memory for Lisp data.  This often means it could
 crash soon if you do things that use more memory.  On most systems,
@@ -399,34 +402,31 @@
 not make !MEM FULL! disappear, you should save your work and start
 a new Emacs.
 
-** The max size of buffers and integers has been doubled.
-On 32bit machines, it is now 256M (i.e. 268435455).
+** `undo-only' does an undo which does not redo any previous undo.
+
+** Yanking text now discards certain text properties that can
+be inconvenient when you did not expect them.  The variable
+`yank-excluded-properties' specifies which ones.  Insertion
+of register contents and rectangles also discards these properties.
+
+** New command `kill-whole-line' kills an entire line at once.
+By default, it is bound to C-S-<backspace>.
+
+** M-SPC (just-one-space) when given a numeric argument N
+converts whitespace around point to N spaces.
 
 ** You can now switch buffers in a cyclic order with C-x C-left
 (previous-buffer) and C-x C-right (next-buffer).  C-x left and
 C-x right can be used as well.  The functions keep a different buffer
 cycle for each frame, using the frame-local buffer list.
 
-** `undo-only' does an undo which does not redo any previous undo.
-
-** M-SPC (just-one-space) when given a numeric argument N
-converts whitespace around point to N spaces.
-
 ** C-x 5 C-o displays a specified buffer in another frame
 but does not switch to that frame.  It's the multi-frame
 analogue of C-x 4 C-o.
 
-** New command `kill-whole-line' kills an entire line at once.
-By default, it is bound to C-S-<backspace>.
-
-** Yanking text now discards certain text properties that can
-be inconvenient when you did not expect them.  The variable
-`yank-excluded-properties' specifies which ones.  Insertion
-of register contents and rectangles also discards these properties.
-
-** The default values of paragraph-start and indent-line-function have
-been changed to reflect those used in Text mode rather than those used
-in Indented-Text mode.
+** `special-display-buffer-names' and `special-display-regexps' now
+understand two new boolean pseudo-frame-parameters `same-frame' and
+`same-window'.
 
 ** New commands to operate on pairs of open and close characters:
 `insert-pair', `delete-pair', `raise-sexp'.
@@ -437,58 +437,13 @@
 now refer to the value of environment variable foo.  To include a `$'
 in the value, use `$$'.
 
-** `special-display-buffer-names' and `special-display-regexps' now
-understand two new boolean pseudo-frame-parameters `same-frame' and
-`same-window'.
+** The default values of paragraph-start and indent-line-function have
+been changed to reflect those used in Text mode rather than those used
+in Paragraph-Indent Text mode.
 
 ** The default for the paper size (variable ps-paper-type) is taken
 from the locale.
 
-** Mark command changes:
-
-*** A prefix argument is no longer required to repeat a jump to a
-previous mark, i.e. C-u C-SPC C-SPC C-SPC ... cycles through the
-mark ring.  Use C-u C-u C-SPC to set the mark immediately after a jump.
-
-*** Marking commands extend the region when invoked multiple times.
-
-If you type C-M-SPC (mark-sexp), M-@ (mark-word), M-h
-(mark-paragraph), or C-M-h (mark-defun) repeatedly, the marked region
-extends each time, so you can mark the next two sexps with M-C-SPC
-M-C-SPC, for example.  This feature also works for
-mark-end-of-sentence, if you bind that to a key.  It also extends the
-region when the mark is active in Transient Mark mode, regardless of
-the last command.  To start a new region with one of marking commands
-in Transient Mark mode, you can deactivate the active region with C-g,
-or set the new mark with C-SPC.
-
-*** M-h (mark-paragraph) now accepts a prefix arg.
-
-With positive arg, M-h marks the current and the following paragraphs;
-if the arg is negative, it marks the current and the preceding
-paragraphs.
-
-*** Some commands do something special in Transient Mark mode when the
-mark is active--for instance, they limit their operation to the
-region.  Even if you don't normally use Transient Mark mode, you might
-want to get this behavior from a particular command.  There are two
-ways you can enable Transient Mark mode and activate the mark, for one
-command only.
-
-One method is to type C-SPC C-SPC; this enables Transient Mark mode
-and sets the mark at point.  The other method is to type C-u C-x C-x.
-This enables Transient Mark mode temporarily but does not alter the
-mark or the region.
-
-After these commands, Transient Mark mode remains enabled until you
-deactivate the mark.  That typically happens when you type a command
-that alters the buffer, but you can also deactivate the mark by typing
-C-g.
-
-*** Movement commands `beginning-of-buffer', `end-of-buffer',
-`beginning-of-defun', `end-of-defun' do not set the mark if the mark
-is already active in Transient Mark mode.
-
 ** Help command changes:
 
 *** Changes in C-h bindings:
@@ -524,6 +479,18 @@
 - C-h w and C-h f new-kill-line reports:
   new-kill-line is on C-k
 
+*** The apropos commands now accept a list of words to match.
+When more than one word is specified, at least two of those words must
+be present for an item to match.  Regular expression matching is still
+available.
+
+*** The new option `apropos-sort-by-scores' causes the matching items
+to be sorted according to their score.  The score for an item is a
+number calculated to indicate how well the item matches the words or
+regular expression that you entered to the apropos command.  The best
+match is listed first, and the calculated score is shown for each
+matching item.
+
 *** Help commands `describe-function' and `describe-key' now show function
 arguments in lowercase italics on displays that support it.  To change the
 default, customize face `help-argument-name' or redefine the function
@@ -563,25 +530,56 @@
 determined by the user option `help-at-pt-timer-delay' and defaults
 to one second.  This feature is turned off by default.
 
-*** The apropos commands now accept a list of words to match.
-When more than one word is specified, at least two of those words must
-be present for an item to match.  Regular expression matching is still
-available.
-
-*** The new option `apropos-sort-by-scores' causes the matching items
-to be sorted according to their score.  The score for an item is a
-number calculated to indicate how well the item matches the words or
-regular expression that you entered to the apropos command.  The best
-match is listed first, and the calculated score is shown for each
-matching item.
+** Mark command changes:
+
+*** A prefix argument is no longer required to repeat a jump to a
+previous mark, i.e. C-u C-SPC C-SPC C-SPC ... cycles through the
+mark ring.  Use C-u C-u C-SPC to set the mark immediately after a jump.
+
+*** Marking commands extend the region when invoked multiple times.
+
+If you type C-M-SPC (mark-sexp), M-@ (mark-word), M-h
+(mark-paragraph), or C-M-h (mark-defun) repeatedly, the marked region
+extends each time, so you can mark the next two sexps with M-C-SPC
+M-C-SPC, for example.  This feature also works for
+mark-end-of-sentence, if you bind that to a key.  It also extends the
+region when the mark is active in Transient Mark mode, regardless of
+the last command.  To start a new region with one of marking commands
+in Transient Mark mode, you can deactivate the active region with C-g,
+or set the new mark with C-SPC.
+
+*** Some commands do something special in Transient Mark mode when the
+mark is active--for instance, they limit their operation to the
+region.  Even if you don't normally use Transient Mark mode, you might
+want to get this behavior from a particular command.  There are two
+ways you can enable Transient Mark mode and activate the mark, for one
+command only.
+
+One method is to type C-SPC C-SPC; this enables Transient Mark mode
+and sets the mark at point.  The other method is to type C-u C-x C-x.
+This enables Transient Mark mode temporarily but does not alter the
+mark or the region.
+
+After these commands, Transient Mark mode remains enabled until you
+deactivate the mark.  That typically happens when you type a command
+that alters the buffer, but you can also deactivate the mark by typing
+C-g.
+
+*** Movement commands `beginning-of-buffer', `end-of-buffer',
+`beginning-of-defun', `end-of-defun' do not set the mark if the mark
+is already active in Transient Mark mode.
+
+*** M-h (mark-paragraph) now accepts a prefix arg.
+
+With positive arg, M-h marks the current and the following paragraphs;
+if the arg is negative, it marks the current and the preceding
+paragraphs.
 
 ** Incremental Search changes:
 
-*** Vertical scrolling is now possible within incremental search.
-To enable this feature, customize the new user option
-`isearch-allow-scroll'.  User written commands which satisfy stringent
-constraints can be marked as "scrolling commands".  See the Emacs manual
-for details.
+*** M-% typed in isearch mode invokes `query-replace' or
+`query-replace-regexp' (depending on search mode) with the current
+search string used as the string to replace.
 
 *** C-w in incremental search now grabs either a character or a word,
 making the decision in a heuristic way.  This new job is done by the
@@ -595,9 +593,11 @@
 Another method to grab a character is to enter the minibuffer by `M-e'
 and to type `C-f' at the end of the search string in the minibuffer.
 
-*** M-% typed in isearch mode invokes `query-replace' or
-`query-replace-regexp' (depending on search mode) with the current
-search string used as the string to replace.
+*** Vertical scrolling is now possible within incremental search.
+To enable this feature, customize the new user option
+`isearch-allow-scroll'.  User written commands which satisfy stringent
+constraints can be marked as "scrolling commands".  See the Emacs manual
+for details.
 
 *** Isearch no longer adds `isearch-resume' commands to the command
 history by default.  To enable this feature, customize the new
@@ -605,10 +605,6 @@
 
 ** Replace command changes:
 
-*** New user option `query-replace-skip-read-only': when non-nil,
-`query-replace' and related functions simply ignore
-a match if part of it has a read-only property.
-
 *** When used interactively, the commands `query-replace-regexp' and
 `replace-regexp' allow \,expr to be used in a replacement string,
 where expr is an arbitrary Lisp expression evaluated at replacement
@@ -625,16 +621,12 @@
 *** The current match in query-replace is highlighted in new face
 `query-replace' which by default inherits from isearch face.
 
+*** New user option `query-replace-skip-read-only': when non-nil,
+`query-replace' and related functions simply ignore
+a match if part of it has a read-only property.
+
 ** Local variables lists:
 
-*** In processing a local variables list, Emacs strips the prefix and
-suffix from every line before processing all the lines.
-
-*** Text properties in local variables.
-
-A file local variables list cannot specify a string with text
-properties--any specified text properties are discarded.
-
 *** If the local variables list contains any variable-value pairs that
 are not known to be safe, Emacs shows a prompt asking whether to apply
 the local variables list as a whole.  In earlier versions, a prompt
@@ -671,6 +663,14 @@
 If the form is not "ok to call", that means Emacs asks for
 confirmation as before.
 
+*** In processing a local variables list, Emacs strips the prefix and
+suffix from every line before processing all the lines.
+
+*** Text properties in local variables.
+
+A file local variables list cannot specify a string with text
+properties--any specified text properties are discarded.
+
 ** File operation changes:
 
 *** Unquoted `$' in file names do not signal an error any more when
@@ -678,29 +678,20 @@
 Instead, the `$ENVVAR' text is left as is, so that `$$' quoting
 is only rarely needed.
 
-*** find-file-read-only visits multiple files in read-only mode,
-when the file name contains wildcard characters.
-
-*** find-alternate-file replaces the current file with multiple files,
-when the file name contains wildcard characters.  It now asks if you
-wish save your changes and not just offer to kill the buffer.
-
-*** Auto Compression mode is now enabled by default.
-
 *** C-x C-f RET, typing nothing in the minibuffer, is no longer a special case.
 
 Since the default input is the current directory, this has the effect
 of specifying the current directory.  Normally that means to visit the
 directory with Dired.
 
-*** When you are root, and you visit a file whose modes specify
-read-only, the Emacs buffer is now read-only too.  Type C-x C-q if you
-want to make the buffer writable.  (As root, you can in fact alter the
-file.)
-
 *** C-x s (save-some-buffers) now offers an option `d' to diff a buffer
 against its file, so you can see what changes you would be saving.
 
+*** Auto Compression mode is now enabled by default.
+
+*** If the user visits a file larger than `large-file-warning-threshold',
+Emacs asks for confirmation.
+
 *** The commands copy-file, rename-file, make-symbolic-link and
 add-name-to-file, when given a directory as the "new name" argument,
 convert it to a file name by merging in the within-directory part of
@@ -708,22 +699,6 @@
 commands cp, mv, and ln follow.)  Thus, M-x copy-file RET ~/foo RET
 /tmp RET copies ~/foo to /tmp/foo.
 
-*** When used interactively, `format-write-file' now asks for confirmation
-before overwriting an existing file, unless a prefix argument is
-supplied.  This behavior is analogous to `write-file'.
-
-*** The variable `auto-save-file-name-transforms' now has a third element that
-controls whether or not the function `make-auto-save-file-name' will
-attempt to construct a unique auto-save name (e.g. for remote files).
-
-*** The new option `write-region-inhibit-fsync' disables calls to fsync
-in `write-region'.  This can be useful on laptops to avoid spinning up
-the hard drive upon each file save.  Enabling this variable may result
-in data loss, use with care.
-
-*** If the user visits a file larger than `large-file-warning-threshold',
-Emacs asks for confirmation.
-
 *** require-final-newline now has two new possible values:
 
 `visit' means add a newline (as an undoable change) if it's needed
@@ -740,8 +715,37 @@
 So you can customize mode-require-final-newline to control what these
 modes do.
 
+*** When you are root, and you visit a file whose modes specify
+read-only, the Emacs buffer is now read-only too.  Type C-x C-q if you
+want to make the buffer writable.  (As root, you can in fact alter the
+file.)
+
+*** find-file-read-only visits multiple files in read-only mode,
+when the file name contains wildcard characters.
+
+*** find-alternate-file replaces the current file with multiple files,
+when the file name contains wildcard characters.  It now asks if you
+wish save your changes and not just offer to kill the buffer.
+
+*** When used interactively, `format-write-file' now asks for confirmation
+before overwriting an existing file, unless a prefix argument is
+supplied.  This behavior is analogous to `write-file'.
+
+*** The variable `auto-save-file-name-transforms' now has a third element that
+controls whether or not the function `make-auto-save-file-name' will
+attempt to construct a unique auto-save name (e.g. for remote files).
+
+*** The new option `write-region-inhibit-fsync' disables calls to fsync
+in `write-region'.  This can be useful on laptops to avoid spinning up
+the hard drive upon each file save.  Enabling this variable may result
+in data loss, use with care.
+
 ** Minibuffer changes:
 
+*** The completion commands TAB, SPC and ? in the minibuffer apply only
+to the text before point.  If there is text in the buffer after point,
+it remains unchanged.
+
 *** The new file-name-shadow-mode is turned ON by default, so that when
 entering a file name, any prefix which Emacs will ignore is dimmed.
 
@@ -777,59 +781,12 @@
 which do not end in a slash are never considered when a completion
 candidate is a directory.
 
-*** The completion commands TAB, SPC and ? in the minibuffer apply only
-to the text before point.  If there is text in the buffer after point,
-it remains unchanged.
-
 *** New user option `history-delete-duplicates'.
 If set to t when adding a new history element, all previous identical
 elements are deleted from the history list.
 
 ** Redisplay changes:
 
-*** Preemptive redisplay now adapts to current load and bandwidth.
-
-To avoid preempting redisplay on fast computers, networks, and displays,
-the arrival of new input is now performed at regular intervals during
-redisplay.  The new variable `redisplay-preemption-period' specifies
-the period; the default is to check for input every 0.1 seconds.
-
-*** The mode line position information now comes before the major mode.
-When the file is maintained under version control, that information
-appears between the position information and the major mode.
-
-*** New face `escape-glyph' highlights control characters and escape glyphs.
-
-*** Non-breaking space and hyphens are now displayed with a special
-face, either nobreak-space or escape-glyph.  You can turn this off or
-specify a different mode by setting the variable `nobreak-char-display'.
-
-*** The parameters of automatic hscrolling can now be customized.
-The variable `hscroll-margin' determines how many columns away from
-the window edge point is allowed to get before automatic hscrolling
-will horizontally scroll the window.  The default value is 5.
-
-The variable `hscroll-step' determines how many columns automatic
-hscrolling scrolls the window when point gets too close to the
-window edge.  If its value is zero, the default, Emacs scrolls the
-window so as to center point.  If its value is an integer, it says how
-many columns to scroll.  If the value is a floating-point number, it
-gives the fraction of the window's width to scroll the window.
-
-The variable `automatic-hscrolling' was renamed to
-`auto-hscroll-mode'.  The old name is still available as an alias.
-
-*** Moving or scrolling through images (and other lines) taller than
-the window now works sensibly, by automatically adjusting the window's
-vscroll property.
-
-*** New customize option `overline-margin' controls the space between
-overline and text.
-
-*** New variable `x-underline-at-descent-line' controls the relative
-position of the underline.  When set, it overrides the
-`x-use-underline-position-properties' variables.
-
 *** The new face `mode-line-inactive' is used to display the mode line
 of non-selected windows.  The `mode-line' face is now used to display
 the mode line of the currently selected window.
@@ -837,6 +794,10 @@
 The new variable `mode-line-in-non-selected-windows' controls whether
 the `mode-line-inactive' face is used.
 
+*** The mode line position information now comes before the major mode.
+When the file is maintained under version control, that information
+appears between the position information and the major mode.
+
 *** You can now customize the use of window fringes.  To control this
 for all frames, use M-x fringe-mode or the Show/Hide submenu of the
 top-level Options menu, or customize the `fringe-mode' variable.  To
@@ -871,10 +832,6 @@
 The new user option 'overflow-newline-into-fringe' can be set to nil to
 revert to the old behavior of continuing such lines.
 
-*** When a window has display margin areas, the fringes are now
-displayed between the margins and the buffer's text area, rather than
-outside those margins.
-
 *** A window can now have individual fringe and scroll-bar settings,
 in addition to the individual display margin settings.
 
@@ -882,6 +839,42 @@
 horizontally or vertically, a saved window configuration is restored,
 or when the frame is resized.
 
+*** When a window has display margin areas, the fringes are now
+displayed between the margins and the buffer's text area, rather than
+outside those margins.
+
+*** New face `escape-glyph' highlights control characters and escape glyphs.
+
+*** Non-breaking space and hyphens are now displayed with a special
+face, either nobreak-space or escape-glyph.  You can turn this off or
+specify a different mode by setting the variable `nobreak-char-display'.
+
+*** The parameters of automatic hscrolling can now be customized.
+The variable `hscroll-margin' determines how many columns away from
+the window edge point is allowed to get before automatic hscrolling
+will horizontally scroll the window.  The default value is 5.
+
+The variable `hscroll-step' determines how many columns automatic
+hscrolling scrolls the window when point gets too close to the
+window edge.  If its value is zero, the default, Emacs scrolls the
+window so as to center point.  If its value is an integer, it says how
+many columns to scroll.  If the value is a floating-point number, it
+gives the fraction of the window's width to scroll the window.
+
+The variable `automatic-hscrolling' was renamed to
+`auto-hscroll-mode'.  The old name is still available as an alias.
+
+*** Moving or scrolling through images (and other lines) taller than
+the window now works sensibly, by automatically adjusting the window's
+vscroll property.
+
+*** Preemptive redisplay now adapts to current load and bandwidth.
+
+To avoid preempting redisplay on fast computers, networks, and displays,
+the arrival of new input is now performed at regular intervals during
+redisplay.  The new variable `redisplay-preemption-period' specifies
+the period; the default is to check for input every 0.1 seconds.
+
 *** The %c and %l constructs are now ignored in frame-title-format.
 Due to technical limitations in how Emacs interacts with windowing
 systems, these constructs often failed to render properly, and could
@@ -891,27 +884,12 @@
 will expand as needed, but not contract automatically.  To contract
 the tool bar, you must type C-l.
 
-** Cursor display changes:
-
-*** On X, MS Windows, and Mac OS, the blinking cursor's "off" state is
-now controlled by the variable `blink-cursor-alist'.
-
-*** The X resource cursorBlink can be used to turn off cursor blinking.
-
-*** Emacs can produce an underscore-like (horizontal bar) cursor.
-The underscore cursor is set by putting `(cursor-type . hbar)' in
-default-frame-alist.  It supports variable heights, like the `bar'
-cursor does.
-
-*** Display of hollow cursors now obeys the buffer-local value (if any)
-of `cursor-in-non-selected-windows' in the buffer that the cursor
-appears in.
-
-*** The variable `cursor-in-non-selected-windows' can now be set to any
-of the recognized cursor types.
-
-*** On text terminals, the variable `visible-cursor' controls whether Emacs
-uses the "very visible" cursor (the default) or the normal cursor.
+*** New customize option `overline-margin' controls the space between
+overline and text.
+
+*** New variable `x-underline-at-descent-line' controls the relative
+position of the underline.  When set, it overrides the
+`x-use-underline-position-properties' variables.
 
 ** New faces:
 
@@ -933,9 +911,6 @@
 
 ** Font-Lock (syntax highlighting) changes:
 
-*** M-o now is the prefix key for setting text properties;
-M-o M-o requests refontification.
-
 *** All modes now support using M-x font-lock-mode to toggle
 fontification, even those such as Occur, Info, and comint-derived
 modes that do their own fontification in a special way.
@@ -944,6 +919,15 @@
 fontification in Info, remove `turn-on-font-lock' from
 `Info-mode-hook'.
 
+*** New standard font-lock face `font-lock-comment-delimiter-face'.
+
+*** New standard font-lock face `font-lock-preprocessor-face'.
+
+*** Easy to overlook single character negation can now be font-locked.
+You can use the new variable `font-lock-negation-char-face' and the face of
+the same name to customize this.  Currently the cc-modes, sh-script-mode,
+cperl-mode and make-mode support this.
+
 *** Font-Lock mode: in major modes such as Lisp mode, where some Emacs
 features assume that an open-paren in column 0 is always outside of
 any string or comment, Font-Lock now highlights any such open-paren in
@@ -951,14 +935,8 @@
 can cause trouble.  You should rewrite the string or comment so that
 the open-paren is not in column 0.
 
-*** New standard font-lock face `font-lock-preprocessor-face'.
-
-*** New standard font-lock face `font-lock-comment-delimiter-face'.
-
-*** Easy to overlook single character negation can now be font-locked.
-You can use the new variable `font-lock-negation-char-face' and the face of
-the same name to customize this.  Currently the cc-modes, sh-script-mode,
-cperl-mode and make-mode support this.
+*** M-o now is the prefix key for setting text properties;
+M-o M-o requests refontification.
 
 *** The default settings for JIT stealth lock parameters are changed.
 The default value for the user option jit-lock-stealth-time is now nil
@@ -1007,8 +985,6 @@
 
 *** Speedbar has moved from the "Tools" top level menu to "Show/Hide".
 
-*** You can exit dialog windows and menus by typing C-g.
-
 *** The menu item "Open File..." has been split into two items, "New File..."
 and "Open File...".  "Open File..." now opens only existing files.  This is
 to support existing GUI file selection dialogs better.
@@ -1034,6 +1010,35 @@
 by setting the variable `x-gtk-use-old-file-dialog' to t.  Default is to use
 the new dialog.
 
+*** You can exit dialog windows and menus by typing C-g.
+
+** Buffer Menu changes:
+
+*** The new options `buffers-menu-show-directories' and
+`buffers-menu-show-status' let you control how buffers are displayed
+in the menu dropped down when you click "Buffers" from the menu bar.
+
+`buffers-menu-show-directories' controls whether the menu displays
+leading directories as part of the file name visited by the buffer.
+If its value is `unless-uniquify', the default, directories are
+shown unless uniquify-buffer-name-style' is non-nil.  The value of nil
+and t turn the display of directories off and on, respectively.
+
+`buffers-menu-show-status' controls whether the Buffers menu includes
+the modified and read-only status of the buffers.  By default it is
+t, and the status is shown.
+
+Setting these variables directly does not take effect until next time
+the Buffers menu is regenerated.
+
+*** New command `Buffer-menu-toggle-files-only' toggles display of file
+buffers only in the Buffer Menu.  It is bound to T in Buffer Menu
+mode.
+
+*** `buffer-menu' and `list-buffers' now list buffers whose names begin
+with a space, when those buffers are visiting files.  Normally buffers
+whose names begin with space are omitted.
+
 ** Mouse changes:
 
 *** You can now follow links by clicking Mouse-1 on the link.
@@ -1088,8 +1093,7 @@
 shall not copy the selected text to the kill-ring by setting the new
 variable mouse-drag-copy-region to nil.
 
-*** mouse-wheels can now scroll a specific fraction of the window
-(rather than a fixed number of lines) and the scrolling is `progressive'.
+*** Under X, mouse-wheel-mode is turned on by default.
 
 *** Emacs ignores mouse-2 clicks while the mouse wheel is being moved.
 
@@ -1098,7 +1102,8 @@
 ignored.  You can customize this with the mouse-wheel-click-event and
 mouse-wheel-inhibit-click-time variables.
 
-*** Under X, mouse-wheel-mode is turned on by default.
+*** mouse-wheels can now scroll a specific fraction of the window
+(rather than a fixed number of lines) and the scrolling is `progressive'.
 
 ** Multilingual Environment (Mule) changes:
 
@@ -1129,6 +1134,11 @@
 or if the locale doesn't describe the character set actually generated
 by the keyboard.  See Info node `Unibyte Mode'.
 
+*** The new command `set-file-name-coding-system' (C-x RET F) sets
+coding system for encoding and decoding file names.  A new menu item
+(Options->Mule->Set Coding Systems->For File Name) invokes this
+command.
+
 *** The new command `revert-buffer-with-coding-system' (C-x RET r)
 revisits the current file using a coding system that you specify.
 
@@ -1141,11 +1151,6 @@
 *** New command `ucs-insert' inserts a character specified by its
 unicode.
 
-*** The new command `set-file-name-coding-system' (C-x RET F) sets
-coding system for encoding and decoding file names.  A new menu item
-(Options->Mule->Set Coding Systems->For File Name) invokes this
-command.
-
 *** New command quail-show-key shows what key (or key sequence) to type
 in the current input method to input a character at point.
 
@@ -1259,35 +1264,18 @@
 You can go back to that backup value by selecting "Use Backup Value"
 under the "[State]" button.
 
-** Buffer Menu changes:
-
-*** New command `Buffer-menu-toggle-files-only' toggles display of file
-buffers only in the Buffer Menu.  It is bound to T in Buffer Menu
-mode.
-
-*** `buffer-menu' and `list-buffers' now list buffers whose names begin
-with a space, when those buffers are visiting files.  Normally buffers
-whose names begin with space are omitted.
-
-*** The new options `buffers-menu-show-directories' and
-`buffers-menu-show-status' let you control how buffers are displayed
-in the menu dropped down when you click "Buffers" from the menu bar.
-
-`buffers-menu-show-directories' controls whether the menu displays
-leading directories as part of the file name visited by the buffer.
-If its value is `unless-uniquify', the default, directories are
-shown unless uniquify-buffer-name-style' is non-nil.  The value of nil
-and t turn the display of directories off and on, respectively.
-
-`buffers-menu-show-status' controls whether the Buffers menu includes
-the modified and read-only status of the buffers.  By default it is
-t, and the status is shown.
-
-Setting these variables directly does not take effect until next time
-the Buffers menu is regenerated.
-
 ** Dired mode:
 
+*** In Dired's ! command (dired-do-shell-command), `*' and `?' now
+control substitution of the file names only when they are surrounded
+by whitespace.  This means you can now use them as shell wildcards
+too.  If you want to use just plain `*' as a wildcard, type `*""'; the
+double quotes make no difference in the shell, but they prevent
+special treatment in `dired-do-shell-command'.
+
+*** The Dired command `dired-goto-file' is now bound to j, not M-g.
+This is to avoid hiding the global key binding of M-g.
+
 *** New faces dired-header, dired-mark, dired-marked, dired-flagged,
 dired-ignored, dired-directory, dired-symlink, dired-warning
 introduced for Dired mode instead of font-lock faces.
@@ -1298,16 +1286,6 @@
 *** New Dired command `dired-do-touch' (bound to T) changes timestamps
 of marked files with the value entered in the minibuffer.
 
-*** The Dired command `dired-goto-file' is now bound to j, not M-g.
-This is to avoid hiding the global key binding of M-g.
-
-*** In Dired's ! command (dired-do-shell-command), `*' and `?' now
-control substitution of the file names only when they are surrounded
-by whitespace.  This means you can now use them as shell wildcards
-too.  If you want to use just plain `*' as a wildcard, type `*""'; the
-double quotes make no difference in the shell, but they prevent
-special treatment in `dired-do-shell-command'.
-
 *** In Dired, the w command now stores the current line's file name
 into the kill ring.  With a zero prefix arg, it stores the absolute file name.
 
@@ -1325,6 +1303,12 @@
 
 ** Comint changes:
 
+*** The new INSIDE_EMACS environment variable is set to "t" in subshells
+running inside Emacs.  This supersedes the EMACS environment variable,
+which will be removed in a future Emacs release.  Programs that need
+to know whether they are started inside Emacs should check INSIDE_EMACS
+instead of EMACS.
+
 *** The comint prompt can now be made read-only, using the new user
 option `comint-prompt-read-only'.  This is not enabled by default,
 except in IELM buffers.  The read-only status of IELM prompts can be
@@ -1355,12 +1339,6 @@
 `comint-use-prompt-regexp'.  The old name has been kept as an alias,
 but declared obsolete.
 
-*** The new INSIDE_EMACS environment variable is set to "t" in subshells
-running inside Emacs.  This supersedes the EMACS environment variable,
-which will be removed in a future Emacs release.  Programs that need
-to know whether they are started inside Emacs should check INSIDE_EMACS
-instead of EMACS.
-
 ** M-x Compile changes:
 
 *** M-x compile has become more robust and reliable
@@ -1412,13 +1390,6 @@
 
 ** Occur mode changes:
 
-*** In the *Occur* buffer, `o' switches to it in another window, and
-C-o displays the current line's occurrence in another window without
-switching to it.
-
-*** You can now use next-error (C-x `) and previous-error to advance to
-the next/previous matching line found by M-x occur.
-
 *** The new command `multi-occur' is just like `occur', except it can
 search multiple buffers.  There is also a new command
 `multi-occur-in-matching-buffers' which allows you to specify the
@@ -1426,6 +1397,13 @@
 Occur mode has been rewritten, and now uses font-lock, among other
 changes.
 
+*** You can now use next-error (C-x `) and previous-error to advance to
+the next/previous matching line found by M-x occur.
+
+*** In the *Occur* buffer, `o' switches to it in another window, and
+C-o displays the current line's occurrence in another window without
+switching to it.
+
 ** Grep changes:
 
 *** Grep has been decoupled from compilation mode setup.
@@ -1456,9 +1434,6 @@
 Hits are fontified in green, and hits in binary files in orange.  Grep buffers
 can be saved and automatically revisited.
 
-*** The new variables `grep-window-height' and `grep-scroll-output' override
-the corresponding compilation mode settings, for grep commands only.
-
 *** New option `grep-highlight-matches' highlights matches in *grep*
 buffer.  It uses a special feature of some grep programs which accept
 --color option to output markers around matches.  When going to the next
@@ -1481,11 +1456,36 @@
 unchanged to the system to execute, which allows more complicated
 command lines to be used than was possible before.
 
+*** The new variables `grep-window-height' and `grep-scroll-output' override
+the corresponding compilation mode settings, for grep commands only.
+
+** Cursor display changes:
+
+*** Emacs can produce an underscore-like (horizontal bar) cursor.
+The underscore cursor is set by putting `(cursor-type . hbar)' in
+default-frame-alist.  It supports variable heights, like the `bar'
+cursor does.
+
+*** The variable `cursor-in-non-selected-windows' can now be set to any
+of the recognized cursor types.
+
+*** Display of hollow cursors now obeys the buffer-local value (if any)
+of `cursor-in-non-selected-windows' in the buffer that the cursor
+appears in.
+
+*** On text terminals, the variable `visible-cursor' controls whether Emacs
+uses the "very visible" cursor (the default) or the normal cursor.
+
+*** The X resource cursorBlink can be used to turn off cursor blinking.
+
+*** On X, MS Windows, and Mac OS, the blinking cursor's "off" state is
+now controlled by the variable `blink-cursor-alist'.
+
 ** X Windows Support:
 
 *** Emacs now supports drag and drop for X.  Dropping a file on a window
-   opens it, dropping text inserts the text.  Dropping a file on a dired
-   buffer copies or moves the file to that directory.
+opens it, dropping text inserts the text.  Dropping a file on a dired
+buffer copies or moves the file to that directory.
 
 *** Under X11, it is possible to swap Alt and Meta (and Super and Hyper).
 The new variables `x-alt-keysym', `x-hyper-keysym', `x-meta-keysym',
@@ -1564,69 +1564,6 @@
 
 * New Modes and Packages in Emacs 22.1
 
-** ERC is now part of the Emacs distribution.
-
-ERC is a powerful, modular, and extensible IRC client for Emacs.
-
-To see what modules are available, type
-M-x customize-option erc-modules RET.
-
-To start an IRC session with ERC, type M-x erc, and follow the prompts
-for server, port, and nick.
-
-** Rcirc is now part of the Emacs distribution.
-
-Rcirc is an Internet relay chat (IRC) client.  It supports
-simultaneous connections to multiple IRC servers.  Each discussion
-takes place in its own buffer.  For each connection you can join
-several channels (many-to-many) and participate in private
-(one-to-one) chats.  Both channel and private chats are contained in
-separate buffers.
-
-To start an IRC session using the default parameters, type M-x irc.
-If you type C-u M-x irc, it prompts you for the server, nick, port and
-startup channel parameters before connecting.
-
-** Newsticker is now part of the Emacs distribution.
-
-Newsticker asynchronously retrieves headlines (RSS) from a list of news
-sites, prepares these headlines for reading, and allows for loading the
-corresponding articles in a web browser.  Its documentation is in a
-separate manual.
-
-** savehist saves minibuffer histories between sessions.
-To use this feature, turn on savehist-mode in your `.emacs' file.
-
-** Filesets are collections of files.  You can define a fileset in
-various ways, such as based on a directory tree or based on
-program files that include other program files.
-
-Once you have defined a fileset, you can perform various operations on
-all the files in it, such as visiting them or searching and replacing
-in them.
-
-** Calc is now part of the Emacs distribution.
-
-Calc is an advanced desk calculator and mathematical tool written in
-Emacs Lisp.  The prefix for Calc has been changed to `C-x *' and Calc
-can be started with `C-x * *'.  The Calc manual is separate from the
-Emacs manual; within Emacs, type "C-h i m calc RET" to read the
-manual.  A reference card is available in `etc/calccard.tex' and
-`etc/calccard.ps'.
-
-** The new package ibuffer provides a powerful, completely
-customizable replacement for buff-menu.el.
-
-** Ido mode is now part of the Emacs distribution.
-
-The ido (interactively do) package is an extension of the iswitchb
-package to do interactive opening of files and directories in addition
-to interactive buffer switching.  Ido is a superset of iswitchb (with
-a few exceptions), so don't enable both packages.
-
-** Image files are normally visited in Image mode, which lets you toggle
-between viewing the image and viewing the text using C-c C-c.
-
 ** CUA mode is now part of the Emacs distribution.
 
 The new cua package provides CUA-like keybindings using C-x for
@@ -1675,6 +1612,49 @@
 must remove older versions of cua.el or cua-mode.el as well as the
 loading and customization of those packages from the .emacs file.
 
+** Tramp is now part of the distribution.
+
+This package is similar to Ange-FTP: it allows you to edit remote
+files.  But whereas Ange-FTP uses FTP to access the remote host,
+Tramp uses a shell connection.  The shell connection is always used
+for filename completion and directory listings and suchlike, but for
+the actual file transfer, you can choose between the so-called
+`inline' methods (which transfer the files through the shell
+connection using base64 or uu encoding) and the `out-of-band' methods
+(which invoke an external copying program such as `rcp' or `scp' or
+`rsync' to do the copying).
+
+Shell connections can be acquired via `rsh', `ssh', `telnet' and also
+`su' and `sudo'.  Ange-FTP is still supported via the `ftp' method.
+
+If you want to disable Tramp you should set
+
+  (setq tramp-default-method "ftp")
+
+Removing Tramp, and re-enabling Ange-FTP, can be achieved by M-x
+tramp-unload-tramp.
+
+** The image-dired.el package allows you to easily view, tag and in
+other ways manipulate image files and their thumbnails, using dired as
+the main interface.  Image-Dired provides functionality to generate
+simple image galleries.
+
+** Image files are normally visited in Image mode, which lets you toggle
+between viewing the image and viewing the text using C-c C-c.
+
+** The new python.el package is used to edit Python and Jython programs.
+
+** The URL package (which had been part of W3) is now part of Emacs.
+
+** Calc is now part of the Emacs distribution.
+
+Calc is an advanced desk calculator and mathematical tool written in
+Emacs Lisp.  The prefix for Calc has been changed to `C-x *' and Calc
+can be started with `C-x * *'.  The Calc manual is separate from the
+Emacs manual; within Emacs, type "C-h i m calc RET" to read the
+manual.  A reference card is available in `etc/calccard.tex' and
+`etc/calccard.ps'.
+
 ** Org mode is now part of the Emacs distribution
 
 Org mode is a mode for keeping notes, maintaining ToDo lists, and
@@ -1689,8 +1669,48 @@
 type "C-h i m org RET" to read that manual.  A reference card is
 available in `etc/orgcard.tex' and `etc/orgcard.ps'.
 
-** The new package dns-mode.el adds syntax highlighting of DNS master files.
-It is a modern replacement for zone-mode.el, which is now obsolete.
+** ERC is now part of the Emacs distribution.
+
+ERC is a powerful, modular, and extensible IRC client for Emacs.
+
+To see what modules are available, type
+M-x customize-option erc-modules RET.
+
+To start an IRC session with ERC, type M-x erc, and follow the prompts
+for server, port, and nick.
+
+** Rcirc is now part of the Emacs distribution.
+
+Rcirc is an Internet relay chat (IRC) client.  It supports
+simultaneous connections to multiple IRC servers.  Each discussion
+takes place in its own buffer.  For each connection you can join
+several channels (many-to-many) and participate in private
+(one-to-one) chats.  Both channel and private chats are contained in
+separate buffers.
+
+To start an IRC session using the default parameters, type M-x irc.
+If you type C-u M-x irc, it prompts you for the server, nick, port and
+startup channel parameters before connecting.
+
+** The new package ibuffer provides a powerful, completely
+customizable replacement for buff-menu.el.
+
+** Newsticker is now part of the Emacs distribution.
+
+Newsticker asynchronously retrieves headlines (RSS) from a list of news
+sites, prepares these headlines for reading, and allows for loading the
+corresponding articles in a web browser.  Its documentation is in a
+separate manual.
+
+** The wdired.el package allows you to use normal editing commands on Dired
+buffers to change filenames, permissions, etc...
+
+** Ido mode is now part of the Emacs distribution.
+
+The ido (interactively do) package is an extension of the iswitchb
+package to do interactive opening of files and directories in addition
+to interactive buffer switching.  Ido is a superset of iswitchb (with
+a few exceptions), so don't enable both packages.
 
 ** The new global minor mode `file-name-shadow-mode' modifies the way
 filenames being entered by the user in the minibuffer are displayed, so
@@ -1699,33 +1719,6 @@
 invisible, or otherwise less visually noticeable.  The display method can
 be displayed by customizing the variable `file-name-shadow-properties'.
 
-** The new package flymake.el does on-the-fly syntax checking of program
-source files.  See the Flymake's Info manual for more details.
-
-** The new keypad setup package provides several common bindings for
-the numeric keypad which is available on most keyboards.  The numeric
-keypad typically has the digits 0 to 9, a decimal point, keys marked
-+, -, /, and *, an Enter key, and a NumLock toggle key.  The keypad
-package only controls the use of the digit and decimal keys.
-
-By customizing the variables `keypad-setup', `keypad-shifted-setup',
-`keypad-numlock-setup', and `keypad-numlock-shifted-setup', or by
-using the function `keypad-setup', you can rebind all digit keys and
-the decimal key of the keypad in one step for each of the four
-possible combinations of the Shift key state (not pressed/pressed) and
-the NumLock toggle state (off/on).
-
-The choices for the keypad keys in each of the above states are:
-`Plain numeric keypad' where the keys generates plain digits,
-`Numeric keypad with decimal key' where the character produced by the
-decimal key can be customized individually (for internationalization),
-`Numeric Prefix Arg' where the keypad keys produce numeric prefix args
-for Emacs editing commands, `Cursor keys' and `Shifted Cursor keys'
-where the keys work like (shifted) arrow keys, home/end, etc., and
-`Unspecified/User-defined' where the keypad keys (kp-0, kp-1, etc.)
-are left unspecified and can be bound individually through the global
-or local keymaps.
-
 ** Emacs' keyboard macro facilities have been enhanced by the new
 kmacro package.
 
@@ -1759,12 +1752,38 @@
 C-x C-k SPC steps through the last keyboard macro one key sequence
 at a time, prompting for the actions to take.
 
-** New minor mode, Visible mode, toggles invisibility in the current buffer.
-When enabled, it makes all invisible text visible.  When disabled, it
-restores the previous value of `buffer-invisibility-spec'.
-
-** The wdired.el package allows you to use normal editing commands on Dired
-buffers to change filenames, permissions, etc...
+** The new keypad setup package provides several common bindings for
+the numeric keypad which is available on most keyboards.  The numeric
+keypad typically has the digits 0 to 9, a decimal point, keys marked
++, -, /, and *, an Enter key, and a NumLock toggle key.  The keypad
+package only controls the use of the digit and decimal keys.
+
+By customizing the variables `keypad-setup', `keypad-shifted-setup',
+`keypad-numlock-setup', and `keypad-numlock-shifted-setup', or by
+using the function `keypad-setup', you can rebind all digit keys and
+the decimal key of the keypad in one step for each of the four
+possible combinations of the Shift key state (not pressed/pressed) and
+the NumLock toggle state (off/on).
+
+The choices for the keypad keys in each of the above states are:
+`Plain numeric keypad' where the keys generates plain digits,
+`Numeric keypad with decimal key' where the character produced by the
+decimal key can be customized individually (for internationalization),
+`Numeric Prefix Arg' where the keypad keys produce numeric prefix args
+for Emacs editing commands, `Cursor keys' and `Shifted Cursor keys'
+where the keys work like (shifted) arrow keys, home/end, etc., and
+`Unspecified/User-defined' where the keypad keys (kp-0, kp-1, etc.)
+are left unspecified and can be bound individually through the global
+or local keymaps.
+
+** The printing package is now part of the Emacs distribution.
+
+If you enable the printing package by including (require 'printing) in
+the .emacs file, the normal Print item on the File menu is replaced
+with a Print sub-menu which allows you to preview output through
+ghostview, use ghostscript to print (if you don't have a PostScript
+printer) or send directly to printer a PostScript code generated by
+`ps-print' package.  Use M-x pr-help for more information.
 
 ** The new package longlines.el provides a minor mode for editing text
 files composed of long lines, based on the `use-hard-newlines'
@@ -1776,14 +1795,25 @@
 similar to Refill mode, but more reliable.  To turn the word wrap
 feature off, set `longlines-auto-wrap' to nil.
 
-** The printing package is now part of the Emacs distribution.
-
-If you enable the printing package by including (require 'printing) in
-the .emacs file, the normal Print item on the File menu is replaced
-with a Print sub-menu which allows you to preview output through
-ghostview, use ghostscript to print (if you don't have a PostScript
-printer) or send directly to printer a PostScript code generated by
-`ps-print' package.  Use M-x pr-help for more information.
+** SES mode (ses-mode) is a new major mode for creating and editing
+spreadsheet files.  Besides the usual Emacs features (intuitive command
+letters, undo, cell formulas in Lisp, plaintext files, etc.) it also offers
+viral immunity and import/export of tab-separated values.
+
+** The new package table.el implements editable, WYSIWYG, embedded
+`text tables' in Emacs buffers.  It simulates the effect of putting
+these tables in a special major mode.  The package emulates WYSIWYG
+table editing available in modern word processors.  The package also
+can generate a table source in typesetting and markup languages such
+as latex and html from the visually laid out text table.
+
+** Filesets are collections of files.  You can define a fileset in
+various ways, such as based on a directory tree or based on
+program files that include other program files.
+
+Once you have defined a fileset, you can perform various operations on
+all the files in it, such as visiting them or searching and replacing
+in them.
 
 ** The minor mode Reveal mode makes text visible on the fly as you
 move your cursor into hidden regions of the buffer.
@@ -1792,58 +1822,34 @@
 
 There is also Global Reveal mode which affects all buffers.
 
+** New minor mode, Visible mode, toggles invisibility in the current buffer.
+When enabled, it makes all invisible text visible.  When disabled, it
+restores the previous value of `buffer-invisibility-spec'.
+
+** The new package flymake.el does on-the-fly syntax checking of program
+source files.  See the Flymake's Info manual for more details.
+
+** savehist saves minibuffer histories between sessions.
+To use this feature, turn on savehist-mode in your `.emacs' file.
+
 ** The ruler-mode.el library provides a minor mode for displaying an
 "active" ruler in the header line.  You can use the mouse to visually
 change the `fill-column', `window-margins' and `tab-stop-list'
 settings.
 
-** SES mode (ses-mode) is a new major mode for creating and editing
-spreadsheet files.  Besides the usual Emacs features (intuitive command
-letters, undo, cell formulas in Lisp, plaintext files, etc.) it also offers
-viral immunity and import/export of tab-separated values.
+** The file t-mouse.el is now part of Emacs and provides access to mouse
+events from the console.  It still requires gpm to work but has been updated
+for Emacs 22.  In particular, the mode-line is now position sensitive.
+
+** The new package scroll-lock.el provides the Scroll Lock minor mode
+for pager-like scrolling.  Keys which normally move point by line or
+paragraph will scroll the buffer by the respective amount of lines
+instead and point will be kept vertically fixed relative to window
+boundaries during scrolling.
 
 ** The new global minor mode `size-indication-mode' (off by default)
 shows the size of accessible part of the buffer on the mode line.
 
-** The new package table.el implements editable, WYSIWYG, embedded
-`text tables' in Emacs buffers.  It simulates the effect of putting
-these tables in a special major mode.  The package emulates WYSIWYG
-table editing available in modern word processors.  The package also
-can generate a table source in typesetting and markup languages such
-as latex and html from the visually laid out text table.
-
-** The image-dired.el package allows you to easily view, tag and in
-other ways manipulate image files and their thumbnails, using dired as
-the main interface.  Image-Dired provides functionality to generate
-simple image galleries.
-
-** Tramp is now part of the distribution.
-
-This package is similar to Ange-FTP: it allows you to edit remote
-files.  But whereas Ange-FTP uses FTP to access the remote host,
-Tramp uses a shell connection.  The shell connection is always used
-for filename completion and directory listings and suchlike, but for
-the actual file transfer, you can choose between the so-called
-`inline' methods (which transfer the files through the shell
-connection using base64 or uu encoding) and the `out-of-band' methods
-(which invoke an external copying program such as `rcp' or `scp' or
-`rsync' to do the copying).
-
-Shell connections can be acquired via `rsh', `ssh', `telnet' and also
-`su' and `sudo'.  Ange-FTP is still supported via the `ftp' method.
-
-If you want to disable Tramp you should set
-
-  (setq tramp-default-method "ftp")
-
-Removing Tramp, and re-enabling Ange-FTP, can be achieved by M-x
-tramp-unload-tramp.
-
-** The URL package (which had been part of W3) is now part of Emacs.
-
-** `cfengine-mode' is a major mode for editing GNU Cfengine
-configuration files.
-
 ** The new package conf-mode.el handles thousands of configuration files, with
 varying syntaxes for comments (;, #, //, /* */ or !), assignment (var = value,
 var : value, var value or keyword var value) and sections ([section] or
@@ -1853,37 +1859,211 @@
 
 ** GDB-Script-mode is used for files like .gdbinit.
 
-** The new python.el package is used to edit Python and Jython programs.
+** The new package dns-mode.el adds syntax highlighting of DNS master files.
+It is a modern replacement for zone-mode.el, which is now obsolete.
+
+** `cfengine-mode' is a major mode for editing GNU Cfengine
+configuration files.
 
 ** The TCL package tcl-mode.el was replaced by tcl.el.
 This was actually done in Emacs-21.1, and was not documented.
-
-** The new package scroll-lock.el provides the Scroll Lock minor mode
-for pager-like scrolling.  Keys which normally move point by line or
-paragraph will scroll the buffer by the respective amount of lines
-instead and point will be kept vertically fixed relative to window
-boundaries during scrolling.
-
-** The file t-mouse.el is now part of Emacs and provides access to mouse
-events from the console.  It still requires gpm to work but has been updated
-for Emacs 22.  In particular, the mode-line is now position sensitive.
 
 * Changes in Specialized Modes and Packages in Emacs 22.1:
 
+** Changes in Dired
+
+*** Bindings for Image-Dired added.
+Several new keybindings, all starting with the C-t prefix, have been
+added to Dired.  They are all bound to commands in Image-Dired.  As a
+starting point, mark some image files in a dired buffer and do C-t d
+to display thumbnails of them in a separate buffer.
+
+** Info mode changes
+
+*** Images in Info pages are supported.
+
+Info pages show embedded images, in Emacs frames with image support.
+Info documentation that includes images, processed with makeinfo
+version 4.7 or newer, compiles to Info pages with embedded images.
+
+*** `Info-index' offers completion.
+
+*** http and ftp links in Info are now operational: they look like cross
+references and following them calls `browse-url'.
+
+*** isearch in Info uses Info-search and searches through multiple nodes.
+
+Before leaving the initial Info node isearch fails once with the error
+message [initial node], and with subsequent C-s/C-r continues through
+other nodes.  When isearch fails for the rest of the manual, it wraps
+around the whole manual to the top/final node.  The user option
+`Info-isearch-search' controls whether to use Info-search for isearch,
+or the default isearch search function that wraps around the current
+Info node.
+
+*** New search commands: `Info-search-case-sensitively' (bound to S),
+`Info-search-backward', and `Info-search-next' which repeats the last
+search without prompting for a new search string.
+
+*** New command `info-apropos' searches the indices of the known
+Info files on your system for a string, and builds a menu of the
+possible matches.
+
+*** New command `Info-history-forward' (bound to r and new toolbar icon)
+moves forward in history to the node you returned from after using
+`Info-history-back' (renamed from `Info-last').
+
+*** New command `Info-history' (bound to L) displays a menu of visited nodes.
+
+*** New command `Info-toc' (bound to T) creates a node with table of contents
+from the tree structure of menus of the current Info file.
+
+*** New command `Info-copy-current-node-name' (bound to w) copies
+the current Info node name into the kill ring.  With a zero prefix
+arg, puts the node name inside the `info' function call.
+
+*** New face `info-xref-visited' distinguishes visited nodes from unvisited
+and a new option `Info-fontify-visited-nodes' to control this.
+
+*** A numeric prefix argument of `info' selects an Info buffer
+with the number appended to the `*info*' buffer name (e.g. "*info*<2>").
+
+*** Info now hides node names in menus and cross references by default.
+
+If you prefer the old behavior, you can set the new user option
+`Info-hide-note-references' to nil.
+
+*** The default value for `Info-scroll-prefer-subnodes' is now nil.
+
+** Emacs server changes
+
+*** You can have several Emacs servers on the same machine.
+
+	% emacs --eval '(setq server-name "foo")' -f server-start &
+	% emacs --eval '(setq server-name "bar")' -f server-start &
+	% emacsclient -s foo file1
+	% emacsclient -s bar file2
+
+*** The `emacsclient' command understands the options `--eval' and
+`--display' which tell Emacs respectively to evaluate the given Lisp
+expression and to use the given display when visiting files.
+
+*** User option `server-mode' can be used to start a server process.
+
+** Locate changes
+
+*** By default, reverting the *Locate* buffer now just runs the last
+`locate' command back over again without offering to update the locate
+database (which normally only works if you have root privileges).  If
+you prefer the old behavior, set the new customizable option
+`locate-update-when-revert' to t.
+
+** Desktop package
+
+*** Desktop saving is now a minor mode, `desktop-save-mode'.
+
+*** The variable `desktop-enable' is obsolete.
+
+Customize `desktop-save-mode' to enable desktop saving.
+
+*** Buffers are saved in the desktop file in the same order as that in the
+buffer list.
+
+*** The desktop package can be customized to restore only some buffers
+immediately, remaining buffers are restored lazily (when Emacs is
+idle).
+
+*** New command line option --no-desktop
+
+*** New commands:
+  - desktop-revert reverts to the last loaded desktop.
+  - desktop-change-dir kills current desktop and loads a new.
+  - desktop-save-in-desktop-dir saves desktop in the directory from which
+    it was loaded.
+  - desktop-lazy-complete runs the desktop load to completion.
+  - desktop-lazy-abort aborts lazy loading of the desktop.
+
+*** New customizable variables:
+  - desktop-save. Determines whether the desktop should be saved when it is
+    killed.
+  - desktop-file-name-format. Format in which desktop file names should be saved.
+  - desktop-path. List of directories in which to lookup the desktop file.
+  - desktop-locals-to-save. List of local variables to save.
+  - desktop-globals-to-clear. List of global variables that `desktop-clear' will clear.
+  - desktop-clear-preserve-buffers-regexp. Regexp identifying buffers that `desktop-clear'
+    should not delete.
+  - desktop-restore-eager. Number of buffers to restore immediately. Remaining buffers are
+    restored lazily (when Emacs is idle).
+  - desktop-lazy-verbose. Verbose reporting of lazily created buffers.
+  - desktop-lazy-idle-delay. Idle delay before starting to create buffers.
+
+*** New hooks:
+  - desktop-after-read-hook run after a desktop is loaded.
+  - desktop-no-desktop-file-hook run when no desktop file is found.
+
+** Recentf changes
+
+The recent file list is now automatically cleaned up when recentf mode is
+enabled.  The new option `recentf-auto-cleanup' controls when to do
+automatic cleanup.
+
+The ten most recent files can be quickly opened by using the shortcut
+keys 1 to 9, and 0, when the recent list is displayed in a buffer via
+the `recentf-open-files', or `recentf-open-more-files' commands.
+
+The `recentf-keep' option replaces `recentf-keep-non-readable-files-p'
+and provides a more general mechanism to customize which file names to
+keep in the recent list.
+
+With the more advanced option `recentf-filename-handlers', you can
+specify functions that successively transform recent file names.  For
+example, if set to `file-truename' plus `abbreviate-file-name', the
+same file will not be in the recent list with different symbolic
+links, and the file name will be abbreviated.
+
+To follow naming convention, `recentf-menu-append-commands-flag'
+replaces the misnamed option `recentf-menu-append-commands-p'.  The
+old name remains available as alias, but has been marked obsolete.
+
+** Auto-Revert changes
+
+*** You can now use Auto Revert mode to `tail' a file.
+
+If point is at the end of a file buffer before reverting, Auto Revert
+mode keeps it at the end after reverting.  Similarly if point is
+displayed at the end of a file buffer in any window, it stays at
+the end of the buffer in that window.  This allows to tail a file:
+just put point at the end of the buffer and it stays there.  This
+rule applies to file buffers.  For non-file buffers, the behavior can
+be mode dependent.
+
+If you are sure that the file will only change by growing at the end,
+then you can tail the file more efficiently by using the new minor
+mode Auto Revert Tail mode.  The function `auto-revert-tail-mode'
+toggles this mode.
+
+*** Auto Revert mode is now more careful to avoid excessive reverts and
+other potential problems when deciding which non-file buffers to
+revert.  This matters especially if Global Auto Revert mode is enabled
+and `global-auto-revert-non-file-buffers' is non-nil.  Auto Revert
+mode only reverts a non-file buffer if the buffer has a non-nil
+`revert-buffer-function' and a non-nil `buffer-stale-function', which
+decides whether the buffer should be reverted.  Currently, this means
+that auto reverting works for Dired buffers (although this may not
+work properly on all operating systems) and for the Buffer Menu.
+
+*** If the new user option `auto-revert-check-vc-info' is non-nil, Auto
+Revert mode reliably updates version control info (such as the version
+control number in the mode line), in all version controlled buffers in
+which it is active.  If the option is nil, the default, then this info
+only gets updated whenever the buffer gets reverted.
+
 ** Changes in Shell Mode
 
 *** Shell output normally scrolls so that the input line is at the
 bottom of the window -- thus showing the maximum possible text.  (This
 is similar to the way sequential output to a terminal works.)
 
-** Changes in Dired
-
-*** Bindings for Image-Dired added
-Several new keybindings, all starting with the C-t prefix, have been
-added to Dired.  They are all bound to commands in Image-Dired.  As a
-starting point, mark some image files in a dired buffer and do C-t d
-to display thumbnails of them in a separate buffer.
-
 ** Changes in Hi Lock
 
 *** hi-lock-mode now only affects a single buffer, and a new function
@@ -1897,6 +2077,19 @@
 
 ** Changes in Allout
 
+*** Topic cryptography added, enabling easy gpg topic encryption and
+decryption.  Per-topic basis enables interspersing encrypted-text and
+clear-text within a single file to your heart's content, using symmetric
+and/or public key modes.  Time-limited key caching, user-provided
+symmetric key hinting and consistency verification, auto-encryption of
+pending topics on save, and more, make it easy to use encryption in
+powerful ways.  Encryption behavior customization is collected in the
+allout-encryption customization group.
+
+*** Default command prefix was changed to "\C-c " (control-c space), to
+avoid intruding on user's keybinding space.  Customize the
+`allout-command-prefix' variable to your preference.
+
 *** Some previously rough topic-header format edge cases are reconciled.
 Level 1 topics use the mode's comment format, and lines starting with the
 asterisk - for instance, the comment close of some languages (eg, c's "*/"
@@ -1925,15 +2118,6 @@
 discontinuities, revealing excessively contained topics rather than either
 leaving them hidden or raising an error.
 
-*** Topic cryptography added, enabling easy gpg topic encryption and
-decryption.  Per-topic basis enables interspersing encrypted-text and
-clear-text within a single file to your heart's content, using symmetric
-and/or public key modes.  Time-limited key caching, user-provided
-symmetric key hinting and consistency verification, auto-encryption of
-pending topics on save, and more, make it easy to use encryption in
-powerful ways.  Encryption behavior customization is collected in the
-allout-encryption customization group.
-
 *** Navigation within an item is easier.  Repeated beginning-of-line and
 end-of-line key commands (usually, ^A and ^E) cycle through the
 beginning/end-of-line and then beginning/end of topic, etc.  See new
@@ -1959,10 +2143,6 @@
 activation hook, `allout-mode-hook' are now run after the `allout-mode'
 variable is changed, rather than before.
 
-*** Default command prefix was changed to "\C-c " (control-c space), to
-avoid intruding on user's keybinding space.  Customize the
-`allout-command-prefix' variable to your preference.
-
 *** Allout now uses text overlay's `invisible' property for concealed text,
 instead of selective-display.  This simplifies the code, in particular
 avoiding the need for kludges for isearch dynamic-display, discretionary
@@ -1993,11 +2173,289 @@
    - many, many other, more minor tweaks, fixes, and refinements.
    - version number incremented to 2.2
 
-** The variable `woman-topic-at-point' is renamed
-to `woman-use-topic-at-point' and behaves differently: if this
-variable is non-nil, the `woman' command uses the word at point
-automatically, without asking for a confirmation.  Otherwise, the word
-at point is suggested as default, but not inserted at the prompt.
+** Hideshow mode changes
+
+*** New variable `hs-set-up-overlay' allows customization of the overlay
+used to effect hiding for hideshow minor mode.  Integration with isearch
+handles the overlay property `display' specially, preserving it during
+temporary overlay showing in the course of an isearch operation.
+
+*** New variable `hs-allow-nesting' non-nil means that hiding a block does
+not discard the hidden state of any "internal" blocks; when the parent
+block is later shown, the internal blocks remain hidden.  Default is nil.
+
+** FFAP changes
+
+*** New ffap commands and keybindings:
+
+C-x C-r (`ffap-read-only'),
+C-x C-v (`ffap-alternate-file'), C-x C-d (`ffap-list-directory'),
+C-x 4 r (`ffap-read-only-other-window'), C-x 4 d (`ffap-dired-other-window'),
+C-x 5 r (`ffap-read-only-other-frame'), C-x 5 d (`ffap-dired-other-frame').
+
+*** FFAP accepts wildcards in a file name by default.
+
+C-x C-f passes the file name to `find-file' with non-nil WILDCARDS
+argument, which visits multiple files, and C-x d passes it to `dired'.
+
+** Changes in Skeleton
+
+*** In skeleton.el, `-' marks the `skeleton-point' without interregion interaction.
+
+`@' has reverted to only setting `skeleton-positions' and no longer
+sets `skeleton-point'.  Skeletons which used @ to mark
+`skeleton-point' independent of `_' should now use `-' instead.  The
+updated `skeleton-insert' docstring explains these new features along
+with other details of skeleton construction.
+
+*** The variables `skeleton-transformation', `skeleton-filter', and
+`skeleton-pair-filter' have been renamed to
+`skeleton-transformation-function', `skeleton-filter-function', and
+`skeleton-pair-filter-function'.  The old names are still available
+as aliases.
+
+** HTML/SGML changes
+
+*** Emacs now tries to set up buffer coding systems for HTML/XML files
+automatically.
+
+*** SGML mode has indentation and supports XML syntax.
+The new variable `sgml-xml-mode' tells SGML mode to use XML syntax.
+When this option is enabled, SGML tags are inserted in XML style,
+i.e., there is always a closing tag.
+By default, its setting is inferred on a buffer-by-buffer basis
+from the file name or buffer contents.
+
+*** The variable `sgml-transformation' has been renamed to
+`sgml-transformation-function'.  The old name is still available as
+alias.
+
+*** `xml-mode' is now an alias for `sgml-mode', which has XML support.
+
+** TeX modes
+
+*** New major mode Doctex mode, for *.dtx files.
+
+*** C-c C-c prompts for a command to run, and tries to offer a good default.
+
+*** The user option `tex-start-options-string' has been replaced
+by two new user options: `tex-start-options', which should hold
+command-line options to feed to TeX, and `tex-start-commands' which should hold
+TeX commands to use at startup.
+
+*** verbatim environments are now highlighted in courier by font-lock
+and super/sub-scripts are made into super/sub-scripts.
+
+** RefTeX mode changes
+
+*** Changes to RefTeX's table of contents
+
+The new command keys "<" and ">" in the TOC buffer promote/demote the
+section at point or all sections in the current region, with full
+support for multifile documents.
+
+The new command `reftex-toc-recenter' (`C-c -') shows the current
+section in the TOC buffer without selecting the TOC window.
+Recentering can happen automatically in idle time when the option
+`reftex-auto-recenter-toc' is turned on.  The highlight in the TOC
+buffer stays when the focus moves to a different window.  A dedicated
+frame can show the TOC with the current section always automatically
+highlighted.  The frame is created and deleted from the toc buffer
+with the `d' key.
+
+The toc window can be split off horizontally instead of vertically.
+See new option `reftex-toc-split-windows-horizontally'.
+
+Labels can be renamed globally from the table of contents using the
+key `M-%'.
+
+The new command `reftex-goto-label' jumps directly to a label
+location.
+
+*** Changes related to citations and BibTeX database files
+
+Commands that insert a citation now prompt for optional arguments when
+called with a prefix argument.  Related new options are
+`reftex-cite-prompt-optional-args' and `reftex-cite-cleanup-optional-args'.
+
+The new command `reftex-create-bibtex-file' creates a BibTeX database
+with all entries referenced in the current document.  The keys "e" and
+"E" allow to produce a BibTeX database file from entries marked in a
+citation selection buffer.
+
+The command `reftex-citation' uses the word in the buffer before the
+cursor as a default search string.
+
+The support for chapterbib has been improved.  Different chapters can
+now use BibTeX or an explicit `thebibliography' environment.
+
+The macros which specify the bibliography file (like \bibliography)
+can be configured with the new option `reftex-bibliography-commands'.
+
+Support for jurabib has been added.
+
+*** Global index matched may be verified with a user function.
+
+During global indexing, a user function can verify an index match.
+See new option `reftex-index-verify-function'.
+
+*** Parsing documents with many labels can be sped up.
+
+Operating in a document with thousands of labels can be sped up
+considerably by allowing RefTeX to derive the type of a label directly
+from the label prefix like `eq:' or `fig:'.  The option
+`reftex-trust-label-prefix' needs to be configured in order to enable
+this feature.  While the speed-up is significant, this may reduce the
+quality of the context offered by RefTeX to describe a label.
+
+*** Miscellaneous changes
+
+The macros which input a file in LaTeX (like \input, \include) can be
+configured in the new option `reftex-include-file-commands'.
+
+RefTeX supports global incremental search.
+
+** BibTeX mode
+
+*** The new command `bibtex-url' browses a URL for the BibTeX entry at
+point (bound to C-c C-l and mouse-2, RET on clickable fields).
+
+*** The new command `bibtex-entry-update' (bound to C-c C-u) updates
+an existing BibTeX entry by inserting fields that may occur but are not
+present.
+
+*** New `bibtex-entry-format' option `required-fields', enabled by default.
+
+*** `bibtex-maintain-sorted-entries' can take values `plain',
+`crossref', and `entry-class' which control the sorting scheme used
+for BibTeX entries.  `bibtex-sort-entry-class' controls the sorting
+scheme `entry-class'.  TAB completion for reference keys and
+automatic detection of duplicates does not require anymore that
+`bibtex-maintain-sorted-entries' is non-nil.
+
+*** The new command `bibtex-complete' completes word fragment before
+point according to context (bound to M-tab).
+
+*** In BibTeX mode the command `fill-paragraph' (M-q) fills
+individual fields of a BibTeX entry.
+
+*** The new variable `bibtex-autofill-types' contains a list of entry
+types for which fields are filled automatically (if possible).
+
+*** The new commands `bibtex-find-entry' and `bibtex-find-crossref'
+locate entries and crossref'd entries (bound to C-c C-s and C-c C-x).
+Crossref fields are clickable (bound to mouse-2, RET).
+
+*** The new variables `bibtex-files' and `bibtex-file-path' define a set
+of BibTeX files that are searched for entry keys.
+
+*** The new command `bibtex-validate-globally' checks for duplicate keys
+in multiple BibTeX files.
+
+*** If the new variable `bibtex-autoadd-commas' is non-nil,
+automatically add missing commas at end of BibTeX fields.
+
+*** The new command `bibtex-copy-summary-as-kill' pushes summary
+of BibTeX entry to kill ring (bound to C-c C-t).
+
+*** If the new variable `bibtex-parse-keys-fast' is non-nil,
+use fast but simplified algorithm for parsing BibTeX keys.
+
+*** The new variables bibtex-expand-strings and
+bibtex-autokey-expand-strings control the expansion of strings when
+extracting the content of a BibTeX field.
+
+*** The variables `bibtex-autokey-name-case-convert' and
+`bibtex-autokey-titleword-case-convert' have been renamed to
+`bibtex-autokey-name-case-convert-function' and
+`bibtex-autokey-titleword-case-convert-function'.  The old names are
+still available as aliases.
+
+** GUD changes
+
+*** The new package gdb-ui.el provides an enhanced graphical interface to
+GDB.  You can interact with GDB through the GUD buffer in the usual way, but
+there are also further buffers which control the execution and describe the
+state of your program.  It can separate the input/output of your program from
+that of GDB and watches expressions in the speedbar.  It also uses features of
+Emacs 21/22 such as the toolbar, and bitmaps in the fringe to indicate
+breakpoints.
+
+To use this package just type M-x gdb.  See the Emacs manual if you want the
+old behaviour.
+
+*** GUD mode has its own tool bar for controlling execution of the inferior
+and other common debugger commands.
+
+*** In GUD mode, when talking to GDB, C-x C-a C-j "jumps" the program
+counter to the specified source line (the one where point is).
+
+*** The variable tooltip-gud-tips-p has been removed.  GUD tooltips can now be
+toggled independently of normal tooltips with the minor mode
+`gud-tooltip-mode'.
+
+*** In graphical mode, with a C program, GUD Tooltips have been extended to
+display the #define directive associated with an identifier when program is
+not executing.
+
+*** GUD mode improvements for jdb:
+
+**** Search for source files using jdb classpath and class information.
+Fast startup since there is no need to scan all source files up front.
+There is also no need to create and maintain lists of source
+directories to scan.  Look at `gud-jdb-use-classpath' and
+`gud-jdb-classpath' customization variables documentation.
+
+**** The previous method of searching for source files has been
+preserved in case someone still wants/needs to use it.
+Set `gud-jdb-use-classpath' to nil.
+
+**** Supports the standard breakpoint (gud-break, gud-clear)
+set/clear operations from Java source files under the classpath, stack
+traversal (gud-up, gud-down), and run until current stack finish
+(gud-finish).
+
+**** Supports new jdb (Java 1.2 and later) in addition to oldjdb
+(Java 1.1 jdb).
+
+*** Added jdb Customization Variables
+
+**** `gud-jdb-command-name'.  What command line to use to invoke jdb.
+
+**** `gud-jdb-use-classpath'.  Allows selection of java source file searching
+method: set to t for new method, nil to scan `gud-jdb-directories' for
+java sources (previous method).
+
+**** `gud-jdb-directories'.  List of directories to scan and search for Java
+classes using the original gud-jdb method (if `gud-jdb-use-classpath'
+is nil).
+
+*** Minor Improvements
+
+**** The STARTTLS wrapper (starttls.el) can now use GNUTLS
+instead of the OpenSSL based `starttls' tool.  For backwards
+compatibility, it prefers `starttls', but you can toggle
+`starttls-use-gnutls' to switch to GNUTLS (or simply remove the
+`starttls' tool).
+
+**** Do not allow debugger output history variable to grow without bounds.
+
+** Lisp mode changes
+
+*** Lisp mode now uses `font-lock-doc-face' for doc strings.
+
+*** C-u C-M-q in Emacs Lisp mode pretty-prints the list after point.
+
+*** New features in evaluation commands
+
+**** The function `eval-defun' (C-M-x) called on defface reinitializes
+the face to the value specified in the defface expression.
+
+**** Typing C-x C-e twice prints the value of the integer result
+in additional formats (octal, hexadecimal, character) specified
+by the new function `eval-expression-print-format'.  The same
+function also defines the result format for `eval-expression' (M-:),
+`eval-print-last-sexp' (C-j) and some edebug evaluation functions.
 
 ** Changes to cmuscheme
 
@@ -2014,172 +2472,32 @@
 subprocess are controlled by the user options `scheme-trace-command',
 `scheme-untrace-command' and `scheme-expand-current-form'.
 
-** Changes in Makefile mode
-
-*** Makefile mode has submodes for automake, gmake, makepp, BSD make and imake.
-
-The former two couldn't be differentiated before, and the latter three
-are new.  Font-locking is robust now and offers new customizable
-faces.
-
-*** The variable `makefile-query-one-target-method' has been renamed
-to `makefile-query-one-target-method-function'.  The old name is still
-available as alias.
-
-** In Outline mode, `hide-body' no longer hides lines at the top
-of the file that precede the first header line.
-
-** Telnet now prompts you for a port number with C-u M-x telnet.
-
-** The terminal emulation code in term.el has been improved; it can
-run most curses applications now.
-
-** M-x diff uses Diff mode instead of Compilation mode.
-
-** Diff mode key bindings changed.
-
-These are the new bindings:
-
-C-c C-e   diff-ediff-patch  (old M-A)
-C-c C-n   diff-restrict-view   (old M-r)
-C-c C-r   diff-reverse-direction  (old M-R)
-C-c C-u   diff-context->unified   (old M-U)
-C-c C-w   diff-refine-hunk  (old C-c C-r)
-
-To convert unified to context format, use C-u C-c C-u.
-In addition, C-c C-u now operates on the region
-in Transient Mark mode when the mark is active.
-
-** You can now customize `fill-nobreak-predicate' to control where
-filling can break lines.  The value is now normally a list of
-functions, but it can also be a single function, for compatibility.
-
-Emacs provide two predicates, `fill-single-word-nobreak-p' and
-`fill-french-nobreak-p', for use as the value of
-`fill-nobreak-predicate'.
-
-** M-x view-file and commands that use it now avoid interfering
-with special modes such as Tar mode.
-
-** Commands `winner-redo' and `winner-undo', from winner.el, are now
-bound to C-c <left> and C-c <right>, respectively.  This is an
-incompatible change.
-
-** `global-whitespace-mode' is a new alias for `whitespace-global-mode'.
-
-** M-x compare-windows now can automatically skip non-matching text to
-resync points in both windows.
-
-** New user option `add-log-always-start-new-record'.
-
-When this option is enabled, M-x add-change-log-entry always
-starts a new record regardless of when the last record is.
-
-** PO translation files are decoded according to their MIME headers
-when Emacs visits them.
-
-** Info mode changes:
-
-*** A numeric prefix argument of `info' selects an Info buffer
-with the number appended to the `*info*' buffer name (e.g. "*info*<2>").
-
-*** isearch in Info uses Info-search and searches through multiple nodes.
-
-Before leaving the initial Info node isearch fails once with the error
-message [initial node], and with subsequent C-s/C-r continues through
-other nodes.  When isearch fails for the rest of the manual, it wraps
-around the whole manual to the top/final node.  The user option
-`Info-isearch-search' controls whether to use Info-search for isearch,
-or the default isearch search function that wraps around the current
-Info node.
-
-*** New search commands: `Info-search-case-sensitively' (bound to S),
-`Info-search-backward', and `Info-search-next' which repeats the last
-search without prompting for a new search string.
-
-*** New command `Info-history-forward' (bound to r and new toolbar icon)
-moves forward in history to the node you returned from after using
-`Info-history-back' (renamed from `Info-last').
-
-*** New command `Info-history' (bound to L) displays a menu of visited nodes.
-
-*** New command `Info-toc' (bound to T) creates a node with table of contents
-from the tree structure of menus of the current Info file.
-
-*** New command `info-apropos' searches the indices of the known
-Info files on your system for a string, and builds a menu of the
-possible matches.
-
-*** New command `Info-copy-current-node-name' (bound to w) copies
-the current Info node name into the kill ring.  With a zero prefix
-arg, puts the node name inside the `info' function call.
-
-*** New face `info-xref-visited' distinguishes visited nodes from unvisited
-and a new option `Info-fontify-visited-nodes' to control this.
-
-*** http and ftp links in Info are now operational: they look like cross
-references and following them calls `browse-url'.
-
-*** Info now hides node names in menus and cross references by default.
-
-If you prefer the old behavior, you can set the new user option
-`Info-hide-note-references' to nil.
-
-*** Images in Info pages are supported.
-
-Info pages show embedded images, in Emacs frames with image support.
-Info documentation that includes images, processed with makeinfo
-version 4.7 or newer, compiles to Info pages with embedded images.
-
-*** The default value for `Info-scroll-prefer-subnodes' is now nil.
-
-*** `Info-index' offers completion.
-
-** Lisp mode changes:
-
-*** Lisp mode now uses `font-lock-doc-face' for doc strings.
-
-*** C-u C-M-q in Emacs Lisp mode pretty-prints the list after point.
-
-*** New features in evaluation commands
-
-**** The function `eval-defun' (C-M-x) called on defface reinitializes
-the face to the value specified in the defface expression.
-
-**** Typing C-x C-e twice prints the value of the integer result
-in additional formats (octal, hexadecimal, character) specified
-by the new function `eval-expression-print-format'.  The same
-function also defines the result format for `eval-expression' (M-:),
-`eval-print-last-sexp' (C-j) and some edebug evaluation functions.
-
-** CC mode changes.
+** Ewoc changes
+
+*** The new function `ewoc-delete' deletes specified nodes.
+
+*** `ewoc-create' now takes optional arg NOSEP, which inhibits insertion of
+a newline after each pretty-printed entry and after the header and footer.
+This allows you to create multiple-entry ewocs on a single line and to
+effect "invisible" nodes by arranging for the pretty-printer to not print
+anything for those nodes.
+
+For example, these two sequences of expressions behave identically:
+
+;; NOSEP nil
+(defun PP (data) (insert (format "%S" data)))
+(ewoc-create 'PP "start\n")
+
+;; NOSEP t
+(defun PP (data) (insert (format "%S\n" data)))
+(ewoc-create 'PP "start\n\n" "\n" t)
+
+** CC mode changes
 
 *** The CC Mode manual has been extensively revised.
 The information about using CC Mode has been separated from the larger
 and more difficult chapters about configuration.
 
-*** Changes in Key Sequences
-**** c-toggle-auto-hungry-state is no longer bound to C-c C-t.
-
-**** c-toggle-hungry-state is no longer bound to C-c C-d.
-This binding has been taken over by c-hungry-delete-forwards.
-
-**** c-toggle-auto-state (C-c C-t) has been renamed to c-toggle-auto-newline.
-c-toggle-auto-state remains as an alias.
-
-**** The new commands c-hungry-backspace and c-hungry-delete-forwards
-have key bindings C-c C-DEL (or C-c DEL, for the benefit of TTYs) and
-C-c C-d (or C-c C-<delete> or C-c <delete>) respectively.  These
-commands delete entire blocks of whitespace with a single
-key-sequence.  [N.B. "DEL" is the <backspace> key.]
-
-**** The new command c-toggle-electric-mode is bound to C-c C-l.
-
-**** The new command c-subword-mode is bound to C-c C-w.
-
-*** C-c C-s (`c-show-syntactic-information') now highlights the anchor
-position(s).
-
 *** New Minor Modes
 **** Electric Minor Mode toggles the electric action of non-alphabetic keys.
 The new command c-toggle-electric-mode is bound to C-c C-l.  Turning the
@@ -2192,15 +2510,41 @@
 letters in StudlyCapsIdentifiers.  You enable this feature by C-c C-w.  It can
 also be used in non-CC Mode buffers.  :-) Contributed by Masatake YAMATO.
 
-*** New clean-ups
-
-**** `comment-close-slash'.
-With this clean-up, a block (i.e. c-style) comment can be terminated by
-typing a slash at the start of a line.
-
-**** `c-one-liner-defun'
-This clean-up compresses a short enough defun (for example, an AWK
-pattern/action pair) onto a single line.  "Short enough" is configurable.
+*** Support for the AWK language.
+Support for the AWK language has been introduced.  The implementation is
+based around GNU AWK version 3.1, but it should work pretty well with
+any AWK.  As yet, not all features of CC Mode have been adapted for AWK.
+Here is a summary:
+
+**** Indentation Engine
+The CC Mode indentation engine fully supports AWK mode.
+
+AWK mode handles code formatted in the conventional AWK fashion: `{'s
+which start actions, user-defined functions, or compound statements are
+placed on the same line as the associated construct; the matching `}'s
+are normally placed under the start of the respective pattern, function
+definition, or structured statement.
+
+The predefined line-up functions haven't yet been adapted for AWK
+mode, though some of them may work serendipitously.  There shouldn't
+be any problems writing custom indentation functions for AWK mode.
+
+**** Font Locking
+There is a single level of font locking in AWK mode, rather than the
+three distinct levels the other modes have.  There are several
+idiosyncrasies in AWK mode's font-locking due to the peculiarities of
+the AWK language itself.
+
+**** Comment and Movement Commands
+These commands all work for AWK buffers.  The notion of "defun" has
+been augmented to include AWK pattern-action pairs - the standard
+"defun" commands on key sequences C-M-a, C-M-e, and C-M-h use this
+extended definition.
+
+**** "awk" style, Auto-newline Insertion and Clean-ups
+A new style, "awk" has been introduced, and this is now the default
+style for AWK code.  With auto-newline enabled, the clean-up
+c-one-liner-defun (see above) is useful.
 
 *** Font lock support.
 CC Mode now provides font lock support for all its languages.  This
@@ -2263,41 +2607,27 @@
 All the keywords used in CORBA IDL, PSDL, and CIDL are recognized and
 handled correctly, also wrt indentation.
 
-*** Support for the AWK language.
-Support for the AWK language has been introduced.  The implementation is
-based around GNU AWK version 3.1, but it should work pretty well with
-any AWK.  As yet, not all features of CC Mode have been adapted for AWK.
-Here is a summary:
-
-**** Indentation Engine
-The CC Mode indentation engine fully supports AWK mode.
-
-AWK mode handles code formatted in the conventional AWK fashion: `{'s
-which start actions, user-defined functions, or compound statements are
-placed on the same line as the associated construct; the matching `}'s
-are normally placed under the start of the respective pattern, function
-definition, or structured statement.
-
-The predefined line-up functions haven't yet been adapted for AWK
-mode, though some of them may work serendipitously.  There shouldn't
-be any problems writing custom indentation functions for AWK mode.
-
-**** Font Locking
-There is a single level of font locking in AWK mode, rather than the
-three distinct levels the other modes have.  There are several
-idiosyncrasies in AWK mode's font-locking due to the peculiarities of
-the AWK language itself.
-
-**** Comment and Movement Commands
-These commands all work for AWK buffers.  The notion of "defun" has
-been augmented to include AWK pattern-action pairs - the standard
-"defun" commands on key sequences C-M-a, C-M-e, and C-M-h use this
-extended definition.
-
-**** "awk" style, Auto-newline Insertion and Clean-ups
-A new style, "awk" has been introduced, and this is now the default
-style for AWK code.  With auto-newline enabled, the clean-up
-c-one-liner-defun (see above) is useful.
+*** Changes in Key Sequences
+**** c-toggle-auto-hungry-state is no longer bound to C-c C-t.
+
+**** c-toggle-hungry-state is no longer bound to C-c C-d.
+This binding has been taken over by c-hungry-delete-forwards.
+
+**** c-toggle-auto-state (C-c C-t) has been renamed to c-toggle-auto-newline.
+c-toggle-auto-state remains as an alias.
+
+**** The new commands c-hungry-backspace and c-hungry-delete-forwards
+have key bindings C-c C-DEL (or C-c DEL, for the benefit of TTYs) and
+C-c C-d (or C-c C-<delete> or C-c <delete>) respectively.  These
+commands delete entire blocks of whitespace with a single
+key-sequence.  [N.B. "DEL" is the <backspace> key.]
+
+**** The new command c-toggle-electric-mode is bound to C-c C-l.
+
+**** The new command c-subword-mode is bound to C-c C-w.
+
+*** C-c C-s (`c-show-syntactic-information') now highlights the anchor
+position(s).
 
 *** New syntactic symbols in IDL mode.
 The top level constructs "module" and "composition" (from CIDL) are
@@ -2428,6 +2758,16 @@
 *** New function `c-context-open-line'.
 It's the open-line equivalent of `c-context-line-break'.
 
+*** New clean-ups
+
+**** `comment-close-slash'.
+With this clean-up, a block (i.e. c-style) comment can be terminated by
+typing a slash at the start of a line.
+
+**** `c-one-liner-defun'
+This clean-up compresses a short enough defun (for example, an AWK
+pattern/action pair) onto a single line.  "Short enough" is configurable.
+
 *** New lineup functions
 
 **** `c-lineup-string-cont'
@@ -2450,6 +2790,10 @@
 **** `c-lineup-argcont'
 Lines up continued function arguments after the preceding comma.
 
+*** Added toggle for syntactic indentation.
+The function `c-toggle-syntactic-indentation' can be used to toggle
+syntactic indentation.
+
 *** Better caching of the syntactic context.
 CC Mode caches the positions of the opening parentheses (of any kind)
 of the lists surrounding the point.  Those positions are used in many
@@ -2475,692 +2819,19 @@
 Also, only the block and the closing line is indented; the current
 line is left untouched.
 
-*** Added toggle for syntactic indentation.
-The function `c-toggle-syntactic-indentation' can be used to toggle
-syntactic indentation.
-
-** In sh-script, a continuation line is only indented if the backslash was
-preceded by a SPC or a TAB.
-
-** Perl mode has a new variable `perl-indent-continued-arguments'.
-
-** The old Octave mode bindings C-c f and C-c i have been changed
-to C-c C-f and C-c C-i.  The C-c C-i subcommands now have duplicate
-bindings on control characters--thus, C-c C-i C-b is the same as
-C-c C-i b, and so on.
-
-** Fortran mode changes:
-
-*** Fortran mode does more font-locking by default.  Use level 3
-highlighting for the old default.
-
-*** Fortran mode has a new variable `fortran-directive-re'.
-Adapt this to match the format of any compiler directives you use.
-Lines that match are never indented, and are given distinctive font-locking.
-
-*** F90 mode and Fortran mode have new navigation commands
-`f90-end-of-block', `f90-beginning-of-block', `f90-next-block',
-`f90-previous-block', `fortran-end-of-block',
-`fortran-beginning-of-block'.
-
-*** F90 mode and Fortran mode have support for `hs-minor-mode' (hideshow).
-It cannot deal with every code format, but ought to handle a sizeable
-majority.
-
-*** The new function `f90-backslash-not-special' can be used to change
-the syntax of backslashes in F90 buffers.
-
-** Reftex mode changes
-
-*** Changes to RefTeX's table of contents
-
-The new command keys "<" and ">" in the TOC buffer promote/demote the
-section at point or all sections in the current region, with full
-support for multifile documents.
-
-The new command `reftex-toc-recenter' (`C-c -') shows the current
-section in the TOC buffer without selecting the TOC window.
-Recentering can happen automatically in idle time when the option
-`reftex-auto-recenter-toc' is turned on.  The highlight in the TOC
-buffer stays when the focus moves to a different window.  A dedicated
-frame can show the TOC with the current section always automatically
-highlighted.  The frame is created and deleted from the toc buffer
-with the `d' key.
-
-The toc window can be split off horizontally instead of vertically.
-See new option `reftex-toc-split-windows-horizontally'.
-
-Labels can be renamed globally from the table of contents using the
-key `M-%'.
-
-The new command `reftex-goto-label' jumps directly to a label
-location.
-
-*** Changes related to citations and BibTeX database files
-
-Commands that insert a citation now prompt for optional arguments when
-called with a prefix argument.  Related new options are
-`reftex-cite-prompt-optional-args' and `reftex-cite-cleanup-optional-args'.
-
-The new command `reftex-create-bibtex-file' creates a BibTeX database
-with all entries referenced in the current document.  The keys "e" and
-"E" allow to produce a BibTeX database file from entries marked in a
-citation selection buffer.
-
-The command `reftex-citation' uses the word in the buffer before the
-cursor as a default search string.
-
-The support for chapterbib has been improved.  Different chapters can
-now use BibTeX or an explicit `thebibliography' environment.
-
-The macros which specify the bibliography file (like \bibliography)
-can be configured with the new option `reftex-bibliography-commands'.
-
-Support for jurabib has been added.
-
-*** Global index matched may be verified with a user function
-
-During global indexing, a user function can verify an index match.
-See new option `reftex-index-verify-function'.
-
-*** Parsing documents with many labels can be sped up.
-
-Operating in a document with thousands of labels can be sped up
-considerably by allowing RefTeX to derive the type of a label directly
-from the label prefix like `eq:' or `fig:'.  The option
-`reftex-trust-label-prefix' needs to be configured in order to enable
-this feature.  While the speed-up is significant, this may reduce the
-quality of the context offered by RefTeX to describe a label.
-
-*** Miscellaneous changes
-
-The macros which input a file in LaTeX (like \input, \include) can be
-configured in the new option `reftex-include-file-commands'.
-
-RefTeX supports global incremental search.
-
-** Prolog mode has a new variable `prolog-font-lock-keywords'
-to support use of font-lock.
-
-** HTML/SGML changes:
-
-*** Emacs now tries to set up buffer coding systems for HTML/XML files
-automatically.
-
-*** SGML mode has indentation and supports XML syntax.
-The new variable `sgml-xml-mode' tells SGML mode to use XML syntax.
-When this option is enabled, SGML tags are inserted in XML style,
-i.e., there is always a closing tag.
-By default, its setting is inferred on a buffer-by-buffer basis
-from the file name or buffer contents.
-
-*** The variable `sgml-transformation' has been renamed to
-`sgml-transformation-function'.  The old name is still available as
-alias.
-
-*** `xml-mode' is now an alias for `sgml-mode', which has XML support.
-
-** TeX modes:
-
-*** C-c C-c prompts for a command to run, and tries to offer a good default.
-
-*** The user option `tex-start-options-string' has been replaced
-by two new user options: `tex-start-options', which should hold
-command-line options to feed to TeX, and `tex-start-commands' which should hold
-TeX commands to use at startup.
-
-*** verbatim environments are now highlighted in courier by font-lock
-and super/sub-scripts are made into super/sub-scripts.
-
-*** New major mode Doctex mode, for *.dtx files.
-
-** BibTeX mode:
-
-*** The new command `bibtex-url' browses a URL for the BibTeX entry at
-point (bound to C-c C-l and mouse-2, RET on clickable fields).
-
-*** The new command `bibtex-entry-update' (bound to C-c C-u) updates
-an existing BibTeX entry by inserting fields that may occur but are not
-present.
-
-*** New `bibtex-entry-format' option `required-fields', enabled by default.
-
-*** `bibtex-maintain-sorted-entries' can take values `plain',
-`crossref', and `entry-class' which control the sorting scheme used
-for BibTeX entries.  `bibtex-sort-entry-class' controls the sorting
-scheme `entry-class'.  TAB completion for reference keys and
-automatic detection of duplicates does not require anymore that
-`bibtex-maintain-sorted-entries' is non-nil.
-
-*** If the new variable `bibtex-parse-keys-fast' is non-nil,
-use fast but simplified algorithm for parsing BibTeX keys.
-
-*** If the new variable `bibtex-autoadd-commas' is non-nil,
-automatically add missing commas at end of BibTeX fields.
-
-*** The new variable `bibtex-autofill-types' contains a list of entry
-types for which fields are filled automatically (if possible).
-
-*** The new command `bibtex-complete' completes word fragment before
-point according to context (bound to M-tab).
-
-*** The new commands `bibtex-find-entry' and `bibtex-find-crossref'
-locate entries and crossref'd entries (bound to C-c C-s and C-c C-x).
-Crossref fields are clickable (bound to mouse-2, RET).
-
-*** In BibTeX mode the command `fill-paragraph' (M-q) fills
-individual fields of a BibTeX entry.
-
-*** The new variables `bibtex-files' and `bibtex-file-path' define a set
-of BibTeX files that are searched for entry keys.
-
-*** The new command `bibtex-validate-globally' checks for duplicate keys
-in multiple BibTeX files.
-
-*** The new command `bibtex-copy-summary-as-kill' pushes summary
-of BibTeX entry to kill ring (bound to C-c C-t).
-
-*** The new variables bibtex-expand-strings and
-bibtex-autokey-expand-strings control the expansion of strings when
-extracting the content of a BibTeX field.
-
-*** The variables `bibtex-autokey-name-case-convert' and
-`bibtex-autokey-titleword-case-convert' have been renamed to
-`bibtex-autokey-name-case-convert-function' and
-`bibtex-autokey-titleword-case-convert-function'.  The old names are
-still available as aliases.
-
-** In Artist mode the variable `artist-text-renderer' has been
-renamed to `artist-text-renderer-function'.  The old name is still
+** Changes in Makefile mode
+
+*** Makefile mode has submodes for automake, gmake, makepp, BSD make and imake.
+
+The former two couldn't be differentiated before, and the latter three
+are new.  Font-locking is robust now and offers new customizable
+faces.
+
+*** The variable `makefile-query-one-target-method' has been renamed
+to `makefile-query-one-target-method-function'.  The old name is still
 available as alias.
 
-** In Enriched mode, `set-left-margin' and `set-right-margin' are now
-by default bound to `C-c [' and `C-c ]' instead of the former `C-c C-l'
-and `C-c C-r'.
-
-** GUD changes:
-
-*** In GUD mode, when talking to GDB, C-x C-a C-j "jumps" the program
-counter to the specified source line (the one where point is).
-
-*** GUD mode has its own tool bar for controlling execution of the inferior
-and other common debugger commands.
-
-*** The new package gdb-ui.el provides an enhanced graphical interface to
-GDB.  You can interact with GDB through the GUD buffer in the usual way, but
-there are also further buffers which control the execution and describe the
-state of your program.  It can separate the input/output of your program from
-that of GDB and watches expressions in the speedbar.  It also uses features of
-Emacs 21/22 such as the toolbar, and bitmaps in the fringe to indicate
-breakpoints.
-
-To use this package just type M-x gdb.  See the Emacs manual if you want the
-old behaviour.
-
-*** The variable tooltip-gud-tips-p has been removed.  GUD tooltips can now be
-toggled independently of normal tooltips with the minor mode
-`gud-tooltip-mode'.
-
-*** In graphical mode, with a C program, GUD Tooltips have been extended to
-display the #define directive associated with an identifier when program is
-not executing.
-
-** GUD mode improvements for jdb:
-
-*** Search for source files using jdb classpath and class information.
-Fast startup since there is no need to scan all source files up front.
-There is also no need to create and maintain lists of source
-directories to scan.  Look at `gud-jdb-use-classpath' and
-`gud-jdb-classpath' customization variables documentation.
-
-*** Supports the standard breakpoint (gud-break, gud-clear)
-set/clear operations from Java source files under the classpath, stack
-traversal (gud-up, gud-down), and run until current stack finish
-(gud-finish).
-
-*** Supports new jdb (Java 1.2 and later) in addition to oldjdb
-(Java 1.1 jdb).
-
-*** The previous method of searching for source files has been
-preserved in case someone still wants/needs to use it.
-Set `gud-jdb-use-classpath' to nil.
-
-*** Added Customization Variables
-
-**** `gud-jdb-command-name'.   What command line to use to invoke jdb.
-
-**** `gud-jdb-use-classpath'.  Allows selection of java source file searching
-method: set to t for new method, nil to scan `gud-jdb-directories' for
-java sources (previous method).
-
-**** `gud-jdb-directories'.  List of directories to scan and search for Java
-classes using the original gud-jdb method (if `gud-jdb-use-classpath'
-is nil).
-
-*** Minor Improvements
-
-**** The STARTTLS wrapper (starttls.el) can now use GNUTLS
-instead of the OpenSSL based `starttls' tool.  For backwards
-compatibility, it prefers `starttls', but you can toggle
-`starttls-use-gnutls' to switch to GNUTLS (or simply remove the
-`starttls' tool).
-
-**** Do not allow debugger output history variable to grow without bounds.
-
-** Auto-Revert changes:
-
-*** You can now use Auto Revert mode to `tail' a file.
-
-If point is at the end of a file buffer before reverting, Auto Revert
-mode keeps it at the end after reverting.  Similarly if point is
-displayed at the end of a file buffer in any window, it stays at
-the end of the buffer in that window.  This allows to tail a file:
-just put point at the end of the buffer and it stays there.  This
-rule applies to file buffers.  For non-file buffers, the behavior can
-be mode dependent.
-
-If you are sure that the file will only change by growing at the end,
-then you can tail the file more efficiently by using the new minor
-mode Auto Revert Tail mode.  The function `auto-revert-tail-mode'
-toggles this mode.
-
-*** Auto Revert mode is now more careful to avoid excessive reverts and
-other potential problems when deciding which non-file buffers to
-revert.  This matters especially if Global Auto Revert mode is enabled
-and `global-auto-revert-non-file-buffers' is non-nil.  Auto Revert
-mode only reverts a non-file buffer if the buffer has a non-nil
-`revert-buffer-function' and a non-nil `buffer-stale-function', which
-decides whether the buffer should be reverted.  Currently, this means
-that auto reverting works for Dired buffers (although this may not
-work properly on all operating systems) and for the Buffer Menu.
-
-*** If the new user option `auto-revert-check-vc-info' is non-nil, Auto
-Revert mode reliably updates version control info (such as the version
-control number in the mode line), in all version controlled buffers in
-which it is active.  If the option is nil, the default, then this info
-only gets updated whenever the buffer gets reverted.
-
-** recentf changes.
-
-The recent file list is now automatically cleaned up when recentf mode is
-enabled.  The new option `recentf-auto-cleanup' controls when to do
-automatic cleanup.
-
-The ten most recent files can be quickly opened by using the shortcut
-keys 1 to 9, and 0, when the recent list is displayed in a buffer via
-the `recentf-open-files', or `recentf-open-more-files' commands.
-
-The `recentf-keep' option replaces `recentf-keep-non-readable-files-p'
-and provides a more general mechanism to customize which file names to
-keep in the recent list.
-
-With the more advanced option `recentf-filename-handlers', you can
-specify functions that successively transform recent file names.  For
-example, if set to `file-truename' plus `abbreviate-file-name', the
-same file will not be in the recent list with different symbolic
-links, and the file name will be abbreviated.
-
-To follow naming convention, `recentf-menu-append-commands-flag'
-replaces the misnamed option `recentf-menu-append-commands-p'.  The
-old name remains available as alias, but has been marked obsolete.
-
-** Desktop package
-
-*** Desktop saving is now a minor mode, `desktop-save-mode'.
-
-*** The variable `desktop-enable' is obsolete.
-
-Customize `desktop-save-mode' to enable desktop saving.
-
-*** Buffers are saved in the desktop file in the same order as that in the
-buffer list.
-
-*** The desktop package can be customized to restore only some buffers
-immediately, remaining buffers are restored lazily (when Emacs is
-idle).
-
-*** New commands:
-  - desktop-revert reverts to the last loaded desktop.
-  - desktop-change-dir kills current desktop and loads a new.
-  - desktop-save-in-desktop-dir saves desktop in the directory from which
-    it was loaded.
-  - desktop-lazy-complete runs the desktop load to completion.
-  - desktop-lazy-abort aborts lazy loading of the desktop.
-
-*** New customizable variables:
-  - desktop-save. Determines whether the desktop should be saved when it is
-    killed.
-  - desktop-file-name-format. Format in which desktop file names should be saved.
-  - desktop-path. List of directories in which to lookup the desktop file.
-  - desktop-locals-to-save. List of local variables to save.
-  - desktop-globals-to-clear. List of global variables that `desktop-clear' will clear.
-  - desktop-clear-preserve-buffers-regexp. Regexp identifying buffers that `desktop-clear'
-    should not delete.
-  - desktop-restore-eager. Number of buffers to restore immediately. Remaining buffers are
-    restored lazily (when Emacs is idle).
-  - desktop-lazy-verbose. Verbose reporting of lazily created buffers.
-  - desktop-lazy-idle-delay. Idle delay before starting to create buffers.
-
-*** New command line option --no-desktop
-
-*** New hooks:
-  - desktop-after-read-hook run after a desktop is loaded.
-  - desktop-no-desktop-file-hook run when no desktop file is found.
-
-** The saveplace.el package now filters out unreadable files.
-
-When you exit Emacs, the saved positions in visited files no longer
-include files that aren't readable, e.g. files that don't exist.
-Customize the new option `save-place-forget-unreadable-files' to nil
-to get the old behavior.  The new options `save-place-save-skipped'
-and `save-place-skip-check-regexp' allow further fine-tuning of this
-feature.
-
-** EDiff changes.
-
-***  When comparing directories.
-Typing D brings up a buffer that lists the differences between the contents of
-directories.  Now it is possible to use this buffer to copy the missing files
-from one directory to another.
-
-*** When comparing files or buffers.
-Typing the = key now offers to perform the word-by-word comparison of the
-currently highlighted regions in an inferior Ediff session.  If you answer 'n'
-then it reverts to the old behavior and asks the user to select regions for
-comparison.
-
-*** The new command `ediff-backup' compares a file with its most recent
-backup using `ediff'.  If you specify the name of a backup file,
-`ediff-backup' compares it with the file of which it is a backup.
-
-** Etags changes.
-
-*** New regular expressions features
-
-**** New syntax for regular expressions, multi-line regular expressions.
-
-The syntax --ignore-case-regexp=/regex/ is now undocumented and retained
-only for backward compatibility.  The new equivalent syntax is
---regex=/regex/i.  More generally, it is --regex=/TAGREGEX/TAGNAME/MODS,
-where `/TAGNAME' is optional, as usual, and MODS is a string of 0 or
-more characters among `i' (ignore case), `m' (multi-line) and `s'
-(single-line).  The `m' and `s' modifiers behave as in Perl regular
-expressions: `m' allows regexps to match more than one line, while `s'
-(which implies `m') means that `.' matches newlines.  The ability to
-span newlines allows writing of much more powerful regular expressions
-and rapid prototyping for tagging new languages.
-
-**** Regular expressions can use char escape sequences as in GCC.
-
-The escaped character sequence \a, \b, \d, \e, \f, \n, \r, \t, \v,
-respectively, stand for the ASCII characters BEL, BS, DEL, ESC, FF, NL,
-CR, TAB, VT.
-
-**** Regular expressions can be bound to a given language.
-
-The syntax --regex={LANGUAGE}REGEX means that REGEX is used to make tags
-only for files of language LANGUAGE, and ignored otherwise.  This is
-particularly useful when storing regexps in a file.
-
-**** Regular expressions can be read from a file.
-
-The --regex=@regexfile option means read the regexps from a file, one
-per line.  Lines beginning with space or tab are ignored.
-
-*** New language parsing features
-
-**** The `::' qualifier triggers C++ parsing in C file.
-
-Previously, only the `template' and `class' keywords had this effect.
-
-**** The GCC __attribute__ keyword is now recognized and ignored.
-
-**** New language HTML.
-
-Tags are generated for `title' as well as `h1', `h2', and `h3'.  Also,
-when `name=' is used inside an anchor and whenever `id=' is used.
-
-**** In Makefiles, constants are tagged.
-
-If you want the old behavior instead, thus avoiding to increase the
-size of the tags file, use the --no-globals option.
-
-**** New language Lua.
-
-All functions are tagged.
-
-**** In Perl, packages are tags.
-
-Subroutine tags are named from their package.  You can jump to sub tags
-as you did before, by the sub name, or additionally by looking for
-package::sub.
-
-**** In Prolog, etags creates tags for rules in addition to predicates.
-
-**** New language PHP.
-
-Functions, classes and defines are tags.  If the --members option is
-specified to etags, variables are tags also.
-
-**** New default keywords for TeX.
-
-The new keywords are def, newcommand, renewcommand, newenvironment and
-renewenvironment.
-
-**** In C and derived languages, etags creates tags for #undef
-
-*** Honor #line directives.
-
-When Etags parses an input file that contains C preprocessor's #line
-directives, it creates tags using the file name and line number
-specified in those directives.  This is useful when dealing with code
-created from Cweb source files.  When Etags tags the generated file, it
-writes tags pointing to the source file.
-
-*** New option --parse-stdin=FILE.
-
-This option is mostly useful when calling etags from programs.  It can
-be used (only once) in place of a file name on the command line.  Etags
-reads from standard input and marks the produced tags as belonging to
-the file FILE.
-
-*** The --members option is now the default.
-
-Use --no-members if you want the old default behaviour of not tagging
-struct members in C, members variables in C++ and variables in PHP.
-
-** Ctags changes.
-
-*** Ctags now allows duplicate tags
-
-** VC Changes
-
-*** The key C-x C-q only changes the read-only state of the buffer
-(toggle-read-only).  It no longer checks files in or out.
-
-We made this change because we held a poll and found that many users
-were unhappy with the previous behavior.  If you do prefer this
-behavior, you can bind `vc-toggle-read-only' to C-x C-q in your
-`.emacs' file:
-
-    (global-set-key "\C-x\C-q" 'vc-toggle-read-only)
-
-The function `vc-toggle-read-only' will continue to exist.
-
-*** The new variable `vc-cvs-global-switches' specifies switches that
-are passed to any CVS command invoked by VC.
-
-These switches are used as "global options" for CVS, which means they
-are inserted before the command name.  For example, this allows you to
-specify a compression level using the `-z#' option for CVS.
-
-*** New backends for Subversion and Meta-CVS.
-
-*** VC-Annotate mode enhancements
-
-In VC-Annotate mode, you can now use the following key bindings for
-enhanced functionality to browse the annotations of past revisions, or
-to view diffs or log entries directly from vc-annotate-mode:
-
-    P:  annotates the previous revision
-    N:  annotates the next revision
-    J:  annotates the revision at line
-    A:  annotates the revision previous to line
-    D:  shows the diff of the revision at line with its previous revision
-    L:  shows the log of the revision at line
-    W:  annotates the workfile (most up to date) version
-
-** pcl-cvs changes:
-
-*** In pcl-cvs mode, there is a new `d y' command to view the diffs
-between the local version of the file and yesterday's head revision
-in the repository.
-
-*** In pcl-cvs mode, there is a new `d r' command to view the changes
-anyone has committed to the repository since you last executed
-`checkout', `update' or `commit'.  That means using cvs diff options
--rBASE -rHEAD.
-
-** The new variable `mail-default-directory' specifies
-`default-directory' for mail buffers.  This directory is used for
-auto-save files of mail buffers.  It defaults to "~/".
-
-** The mode line can indicate new mail in a directory or file.
-
-See the documentation of the user option
-`display-time-mail-directory'.
-
-** Rmail changes:
-
-*** Rmail now displays 5-digit message ids in its summary buffer.
-
-*** The new commands rmail-end-of-message and rmail-summary end-of-message,
-by default bound to `/', go to the end of the current mail message in
-Rmail and Rmail summary buffers.
-
-*** Support for `movemail' from GNU mailutils was added to Rmail.
-
-This version of `movemail' allows to read mail from a wide range of
-mailbox formats, including remote POP3 and IMAP4 mailboxes with or
-without TLS encryption.  If GNU mailutils is installed on the system
-and its version of `movemail' can be found in exec-path, it will be
-used instead of the native one.
-
-** Gnus package
-
-*** Gnus now includes Sieve and PGG
-
-Sieve is a library for managing Sieve scripts.  PGG is a library to handle
-PGP/MIME.
-
-*** There are many news features, bug fixes and improvements.
-
-See the file GNUS-NEWS or the node "Oort Gnus" in the Gnus manual for details.
-
-** MH-E changes.
-
-Upgraded to MH-E version 8.0.3.  There have been major changes since
-version 5.0.2; see MH-E-NEWS for details.
-
-** Calendar changes:
-
-*** The meanings of C-x < and C-x > have been interchanged.
-< means to scroll backward in time, and > means to scroll forward.
-
-*** You can now use < and >, instead of C-x < and C-x >, to scroll
-the calendar left or right.
-
-*** There is a new calendar package, icalendar.el, that can be used to
-convert Emacs diary entries to/from the iCalendar format.
-
-*** The new package cal-html.el writes HTML files with calendar and
-diary entries.
-
-*** Diary sexp entries can have custom marking in the calendar.
-Diary sexp functions which only apply to certain days (such as
-`diary-block' or `diary-cyclic') now take an optional parameter MARK,
-which is the name of a face or a single-character string indicating
-how to highlight the day in the calendar display.  Specifying a
-single-character string as @var{mark} places the character next to the
-day in the calendar.  Specifying a face highlights the day with that
-face.  This lets you have different colors or markings for vacations,
-appointments, paydays or anything else using a sexp.
-
-*** The new function `calendar-goto-day-of-year' (g D) prompts for a
-year and day number, and moves to that date.  Negative day numbers
-count backward from the end of the year.
-
-*** The new Calendar function `calendar-goto-iso-week' (g w)
-prompts for a year and a week number, and moves to the first
-day of that ISO week.
-
-*** The new variable `calendar-minimum-window-height' affects the
-window generated by the function `generate-calendar-window'.
-
-*** The functions `holiday-easter-etc' and `holiday-advent' now take
-optional arguments, in order to only report on the specified holiday
-rather than all.  This makes customization of variables such as
-`christian-holidays' simpler.
-
-*** The function `simple-diary-display' now by default sets a header line.
-This can be controlled through the variables `diary-header-line-flag'
-and `diary-header-line-format'.
-
-*** The procedure for activating appointment reminders has changed:
-use the new function `appt-activate'.  The new variable
-`appt-display-format' controls how reminders are displayed, replacing
-`appt-issue-message', `appt-visible', and `appt-msg-window'.
-
-*** The new functions `diary-from-outlook', `diary-from-outlook-gnus',
-and `diary-from-outlook-rmail' can be used to import diary entries
-from Outlook-format appointments in mail messages.  The variable
-`diary-outlook-formats' can be customized to recognize additional
-formats.
-
-** Speedbar changes:
-
-*** Speedbar items can now be selected by clicking mouse-1, based on
-the `mouse-1-click-follows-link' mechanism.
-
-*** SPC and DEL are no longer bound to scroll up/down in the speedbar
-keymap.
-
-*** The new command `speedbar-toggle-line-expansion', bound to SPC,
-contracts or expands the line under the cursor.
-
-*** New command `speedbar-create-directory', bound to `M'.
-
-*** The new commands `speedbar-expand-line-descendants' and
-`speedbar-contract-line-descendants', bound to `[' and `]'
-respectively, expand and contract the line under cursor with all of
-its descendents.
-
-*** The new user option `speedbar-query-confirmation-method' controls
-how querying is performed for file operations.  A value of 'always
-means to always query before file operations; 'none-but-delete means
-to not query before any file operations, except before a file
-deletion.
-
-*** The new user option `speedbar-select-frame-method' specifies how
-to select a frame for displaying a file opened with the speedbar.  A
-value of 'attached means to use the attached frame (the frame that
-speedbar was started from.)  A number such as 1 or -1 means to pass
-that number to `other-frame'.
-
-*** The new user option `speedbar-use-tool-tips-flag', if non-nil,
-means to display tool-tips for speedbar items.
-
-*** The frame management code in speedbar.el has been split into a new
-`dframe' library.  Emacs Lisp code that makes use of the speedbar
-should use `dframe-attached-frame' instead of
-`speedbar-attached-frame', `dframe-timer' instead of `speedbar-timer',
-`dframe-close-frame' instead of `speedbar-close-frame', and
-`dframe-activity-change-focus-flag' instead of
-`speedbar-activity-change-focus-flag'.  The variables
-`speedbar-update-speed' and `speedbar-navigating-speed' are also
-obsolete; use `dframe-update-speed' instead.
-
-** sql changes.
+** Sql changes
 
 *** The variable `sql-product' controls the highlighting of different
 SQL dialects.  This variable can be set globally via Customize, on a
@@ -3235,155 +2906,495 @@
 
 *** sql.el supports the SQLite interpreter--call 'sql-sqlite'.
 
-** FFAP changes:
-
-*** New ffap commands and keybindings:
-
-C-x C-r (`ffap-read-only'),
-C-x C-v (`ffap-alternate-file'), C-x C-d (`ffap-list-directory'),
-C-x 4 r (`ffap-read-only-other-window'), C-x 4 d (`ffap-dired-other-window'),
-C-x 5 r (`ffap-read-only-other-frame'), C-x 5 d (`ffap-dired-other-frame').
-
-*** FFAP accepts wildcards in a file name by default.
-
-C-x C-f passes the file name to `find-file' with non-nil WILDCARDS
-argument, which visits multiple files, and C-x d passes it to `dired'.
-
-** Changes in Skeleton
-
-*** In skeleton.el, `-' marks the `skeleton-point' without interregion interaction.
-
-`@' has reverted to only setting `skeleton-positions' and no longer
-sets `skeleton-point'.  Skeletons which used @ to mark
-`skeleton-point' independent of `_' should now use `-' instead.  The
-updated `skeleton-insert' docstring explains these new features along
-with other details of skeleton construction.
-
-*** The variables `skeleton-transformation', `skeleton-filter', and
-`skeleton-pair-filter' have been renamed to
-`skeleton-transformation-function', `skeleton-filter-function', and
-`skeleton-pair-filter-function'.  The old names are still available
-as aliases.
-
-** Hideshow mode changes
-
-*** New variable `hs-set-up-overlay' allows customization of the overlay
-used to effect hiding for hideshow minor mode.  Integration with isearch
-handles the overlay property `display' specially, preserving it during
-temporary overlay showing in the course of an isearch operation.
-
-*** New variable `hs-allow-nesting' non-nil means that hiding a block does
-not discard the hidden state of any "internal" blocks; when the parent
-block is later shown, the internal blocks remain hidden.  Default is nil.
-
-** `hide-ifdef-mode' now uses overlays rather than selective-display
-to hide its text.  This should be mostly transparent but slightly
-changes the behavior of motion commands like C-e and C-p.
-
-** `partial-completion-mode' now handles partial completion on directory names.
-
-** The type-break package now allows `type-break-file-name' to be nil
+** Fortran mode changes
+
+*** F90 mode and Fortran mode have support for `hs-minor-mode' (hideshow).
+It cannot deal with every code format, but ought to handle a sizeable
+majority.
+
+*** F90 mode and Fortran mode have new navigation commands
+`f90-end-of-block', `f90-beginning-of-block', `f90-next-block',
+`f90-previous-block', `fortran-end-of-block',
+`fortran-beginning-of-block'.
+
+*** Fortran mode does more font-locking by default.  Use level 3
+highlighting for the old default.
+
+*** Fortran mode has a new variable `fortran-directive-re'.
+Adapt this to match the format of any compiler directives you use.
+Lines that match are never indented, and are given distinctive font-locking.
+
+*** The new function `f90-backslash-not-special' can be used to change
+the syntax of backslashes in F90 buffers.
+
+** Miscellaneous programming mode changes
+
+*** In sh-script, a continuation line is only indented if the backslash was
+preceded by a SPC or a TAB.
+
+*** Perl mode has a new variable `perl-indent-continued-arguments'.
+
+*** The old Octave mode bindings C-c f and C-c i have been changed
+to C-c C-f and C-c C-i.  The C-c C-i subcommands now have duplicate
+bindings on control characters--thus, C-c C-i C-b is the same as
+C-c C-i b, and so on.
+
+*** Prolog mode has a new variable `prolog-font-lock-keywords'
+to support use of font-lock.
+
+** VC Changes
+
+*** New backends for Subversion and Meta-CVS.
+
+*** The new variable `vc-cvs-global-switches' specifies switches that
+are passed to any CVS command invoked by VC.
+
+These switches are used as "global options" for CVS, which means they
+are inserted before the command name.  For example, this allows you to
+specify a compression level using the `-z#' option for CVS.
+
+*** The key C-x C-q only changes the read-only state of the buffer
+(toggle-read-only).  It no longer checks files in or out.
+
+We made this change because we held a poll and found that many users
+were unhappy with the previous behavior.  If you do prefer this
+behavior, you can bind `vc-toggle-read-only' to C-x C-q in your
+`.emacs' file:
+
+    (global-set-key "\C-x\C-q" 'vc-toggle-read-only)
+
+The function `vc-toggle-read-only' will continue to exist.
+
+*** VC-Annotate mode enhancements
+
+In VC-Annotate mode, you can now use the following key bindings for
+enhanced functionality to browse the annotations of past revisions, or
+to view diffs or log entries directly from vc-annotate-mode:
+
+    P:  annotates the previous revision
+    N:  annotates the next revision
+    J:  annotates the revision at line
+    A:  annotates the revision previous to line
+    D:  shows the diff of the revision at line with its previous revision
+    L:  shows the log of the revision at line
+    W:  annotates the workfile (most up to date) version
+
+** pcl-cvs changes
+
+*** In pcl-cvs mode, there is a new `d y' command to view the diffs
+between the local version of the file and yesterday's head revision
+in the repository.
+
+*** In pcl-cvs mode, there is a new `d r' command to view the changes
+anyone has committed to the repository since you last executed
+`checkout', `update' or `commit'.  That means using cvs diff options
+-rBASE -rHEAD.
+
+** Diff changes
+
+*** M-x diff uses Diff mode instead of Compilation mode.
+
+*** Diff mode key bindings changed.
+
+These are the new bindings:
+
+C-c C-e   diff-ediff-patch  (old M-A)
+C-c C-n   diff-restrict-view   (old M-r)
+C-c C-r   diff-reverse-direction  (old M-R)
+C-c C-u   diff-context->unified   (old M-U)
+C-c C-w   diff-refine-hunk  (old C-c C-r)
+
+To convert unified to context format, use C-u C-c C-u.
+In addition, C-c C-u now operates on the region
+in Transient Mark mode when the mark is active.
+
+** EDiff changes.
+
+***  When comparing directories.
+Typing D brings up a buffer that lists the differences between the contents of
+directories.  Now it is possible to use this buffer to copy the missing files
+from one directory to another.
+
+*** When comparing files or buffers.
+Typing the = key now offers to perform the word-by-word comparison of the
+currently highlighted regions in an inferior Ediff session.  If you answer 'n'
+then it reverts to the old behavior and asks the user to select regions for
+comparison.
+
+*** The new command `ediff-backup' compares a file with its most recent
+backup using `ediff'.  If you specify the name of a backup file,
+`ediff-backup' compares it with the file of which it is a backup.
+
+** Etags changes.
+
+*** New regular expressions features
+
+**** New syntax for regular expressions, multi-line regular expressions.
+
+The syntax --ignore-case-regexp=/regex/ is now undocumented and retained
+only for backward compatibility.  The new equivalent syntax is
+--regex=/regex/i.  More generally, it is --regex=/TAGREGEX/TAGNAME/MODS,
+where `/TAGNAME' is optional, as usual, and MODS is a string of 0 or
+more characters among `i' (ignore case), `m' (multi-line) and `s'
+(single-line).  The `m' and `s' modifiers behave as in Perl regular
+expressions: `m' allows regexps to match more than one line, while `s'
+(which implies `m') means that `.' matches newlines.  The ability to
+span newlines allows writing of much more powerful regular expressions
+and rapid prototyping for tagging new languages.
+
+**** Regular expressions can use char escape sequences as in GCC.
+
+The escaped character sequence \a, \b, \d, \e, \f, \n, \r, \t, \v,
+respectively, stand for the ASCII characters BEL, BS, DEL, ESC, FF, NL,
+CR, TAB, VT.
+
+**** Regular expressions can be bound to a given language.
+
+The syntax --regex={LANGUAGE}REGEX means that REGEX is used to make tags
+only for files of language LANGUAGE, and ignored otherwise.  This is
+particularly useful when storing regexps in a file.
+
+**** Regular expressions can be read from a file.
+
+The --regex=@regexfile option means read the regexps from a file, one
+per line.  Lines beginning with space or tab are ignored.
+
+*** New language parsing features
+
+**** New language HTML.
+
+Tags are generated for `title' as well as `h1', `h2', and `h3'.  Also,
+when `name=' is used inside an anchor and whenever `id=' is used.
+
+**** New language PHP.
+
+Functions, classes and defines are tags.  If the --members option is
+specified to etags, variables are tags also.
+
+**** New language Lua.
+
+All functions are tagged.
+
+**** The `::' qualifier triggers C++ parsing in C file.
+
+Previously, only the `template' and `class' keywords had this effect.
+
+**** The GCC __attribute__ keyword is now recognized and ignored.
+
+**** In C and derived languages, etags creates tags for #undef
+
+**** In Makefiles, constants are tagged.
+
+If you want the old behavior instead, thus avoiding to increase the
+size of the tags file, use the --no-globals option.
+
+**** In Perl, packages are tags.
+
+Subroutine tags are named from their package.  You can jump to sub tags
+as you did before, by the sub name, or additionally by looking for
+package::sub.
+
+**** In Prolog, etags creates tags for rules in addition to predicates.
+
+**** New default keywords for TeX.
+
+The new keywords are def, newcommand, renewcommand, newenvironment and
+renewenvironment.
+
+*** Honor #line directives.
+
+When Etags parses an input file that contains C preprocessor's #line
+directives, it creates tags using the file name and line number
+specified in those directives.  This is useful when dealing with code
+created from Cweb source files.  When Etags tags the generated file, it
+writes tags pointing to the source file.
+
+*** New option --parse-stdin=FILE.
+
+This option is mostly useful when calling etags from programs.  It can
+be used (only once) in place of a file name on the command line.  Etags
+reads from standard input and marks the produced tags as belonging to
+the file FILE.
+
+*** The --members option is now the default.
+
+Use --no-members if you want the old default behaviour of not tagging
+struct members in C, members variables in C++ and variables in PHP.
+
+** Ctags changes.
+
+*** Ctags now allows duplicate tags
+
+** Rmail changes
+
+*** Support for `movemail' from GNU mailutils was added to Rmail.
+
+This version of `movemail' allows to read mail from a wide range of
+mailbox formats, including remote POP3 and IMAP4 mailboxes with or
+without TLS encryption.  If GNU mailutils is installed on the system
+and its version of `movemail' can be found in exec-path, it will be
+used instead of the native one.
+
+*** The new commands rmail-end-of-message and rmail-summary end-of-message,
+by default bound to `/', go to the end of the current mail message in
+Rmail and Rmail summary buffers.
+
+*** Rmail now displays 5-digit message ids in its summary buffer.
+
+** Gnus package
+
+*** Gnus now includes Sieve and PGG
+
+Sieve is a library for managing Sieve scripts.  PGG is a library to handle
+PGP/MIME.
+
+*** There are many news features, bug fixes and improvements.
+
+See the file GNUS-NEWS or the node "Oort Gnus" in the Gnus manual for details.
+
+** MH-E changes.
+
+Upgraded to MH-E version 8.0.3.  There have been major changes since
+version 5.0.2; see MH-E-NEWS for details.
+
+** Miscellaneous mail changes
+
+*** The new variable `mail-default-directory' specifies
+`default-directory' for mail buffers.  This directory is used for
+auto-save files of mail buffers.  It defaults to "~/".
+
+*** The mode line can indicate new mail in a directory or file.
+
+See the documentation of the user option `display-time-mail-directory'.
+
+** Calendar changes
+
+*** There is a new calendar package, icalendar.el, that can be used to
+convert Emacs diary entries to/from the iCalendar format.
+
+*** The new package cal-html.el writes HTML files with calendar and
+diary entries.
+
+*** The new functions `diary-from-outlook', `diary-from-outlook-gnus',
+and `diary-from-outlook-rmail' can be used to import diary entries
+from Outlook-format appointments in mail messages.  The variable
+`diary-outlook-formats' can be customized to recognize additional
+formats.
+
+*** The procedure for activating appointment reminders has changed:
+use the new function `appt-activate'.  The new variable
+`appt-display-format' controls how reminders are displayed, replacing
+`appt-issue-message', `appt-visible', and `appt-msg-window'.
+
+*** The function `simple-diary-display' now by default sets a header line.
+This can be controlled through the variables `diary-header-line-flag'
+and `diary-header-line-format'.
+
+*** Diary sexp entries can have custom marking in the calendar.
+Diary sexp functions which only apply to certain days (such as
+`diary-block' or `diary-cyclic') now take an optional parameter MARK,
+which is the name of a face or a single-character string indicating
+how to highlight the day in the calendar display.  Specifying a
+single-character string as @var{mark} places the character next to the
+day in the calendar.  Specifying a face highlights the day with that
+face.  This lets you have different colors or markings for vacations,
+appointments, paydays or anything else using a sexp.
+
+*** The meanings of C-x < and C-x > have been interchanged.
+< means to scroll backward in time, and > means to scroll forward.
+
+*** You can now use < and >, instead of C-x < and C-x >, to scroll
+the calendar left or right.
+
+*** The new function `calendar-goto-day-of-year' (g D) prompts for a
+year and day number, and moves to that date.  Negative day numbers
+count backward from the end of the year.
+
+*** The new Calendar function `calendar-goto-iso-week' (g w)
+prompts for a year and a week number, and moves to the first
+day of that ISO week.
+
+*** The functions `holiday-easter-etc' and `holiday-advent' now take
+optional arguments, in order to only report on the specified holiday
+rather than all.  This makes customization of variables such as
+`christian-holidays' simpler.
+
+*** The new variable `calendar-minimum-window-height' affects the
+window generated by the function `generate-calendar-window'.
+
+** Speedbar changes
+
+*** Speedbar items can now be selected by clicking mouse-1, based on
+the `mouse-1-click-follows-link' mechanism.
+
+*** The new command `speedbar-toggle-line-expansion', bound to SPC,
+contracts or expands the line under the cursor.
+
+*** New command `speedbar-create-directory', bound to `M'.
+
+*** The new commands `speedbar-expand-line-descendants' and
+`speedbar-contract-line-descendants', bound to `[' and `]'
+respectively, expand and contract the line under cursor with all of
+its descendents.
+
+*** The new user option `speedbar-use-tool-tips-flag', if non-nil,
+means to display tool-tips for speedbar items.
+
+*** The new user option `speedbar-query-confirmation-method' controls
+how querying is performed for file operations.  A value of 'always
+means to always query before file operations; 'none-but-delete means
+to not query before any file operations, except before a file
+deletion.
+
+*** The new user option `speedbar-select-frame-method' specifies how
+to select a frame for displaying a file opened with the speedbar.  A
+value of 'attached means to use the attached frame (the frame that
+speedbar was started from.)  A number such as 1 or -1 means to pass
+that number to `other-frame'.
+
+*** SPC and DEL are no longer bound to scroll up/down in the speedbar
+keymap.
+
+*** The frame management code in speedbar.el has been split into a new
+`dframe' library.  Emacs Lisp code that makes use of the speedbar
+should use `dframe-attached-frame' instead of
+`speedbar-attached-frame', `dframe-timer' instead of `speedbar-timer',
+`dframe-close-frame' instead of `speedbar-close-frame', and
+`dframe-activity-change-focus-flag' instead of
+`speedbar-activity-change-focus-flag'.  The variables
+`speedbar-update-speed' and `speedbar-navigating-speed' are also
+obsolete; use `dframe-update-speed' instead.
+
+** battery.el changes
+
+*** display-battery-mode replaces display-battery.
+
+*** battery.el now works on recent versions of OS X.
+
+** Games
+
+*** The game `mpuz' is enhanced.
+
+`mpuz' now allows the 2nd factor not to have two identical digits.  By
+default, all trivial operations involving whole lines are performed
+automatically.  The game uses faces for better visual feedback.
+
+** Obsolete and deleted packages
+
+*** fast-lock.el and lazy-lock.el are obsolete.  Use jit-lock.el instead.
+
+*** iso-acc.el is now obsolete.  Use one of the latin input methods instead.
+
+*** zone-mode.el is now obsolete.  Use dns-mode.el instead.
+
+*** cplus-md.el has been deleted.
+
+** Miscellaneous
+
+*** The variable `woman-topic-at-point' is renamed
+to `woman-use-topic-at-point' and behaves differently: if this
+variable is non-nil, the `woman' command uses the word at point
+automatically, without asking for a confirmation.  Otherwise, the word
+at point is suggested as default, but not inserted at the prompt.
+
+*** You can now customize `fill-nobreak-predicate' to control where
+filling can break lines.  The value is now normally a list of
+functions, but it can also be a single function, for compatibility.
+
+Emacs provide two predicates, `fill-single-word-nobreak-p' and
+`fill-french-nobreak-p', for use as the value of
+`fill-nobreak-predicate'.
+
+*** M-x view-file and commands that use it now avoid interfering
+with special modes such as Tar mode.
+
+*** `global-whitespace-mode' is a new alias for `whitespace-global-mode'.
+
+*** The saveplace.el package now filters out unreadable files.
+
+When you exit Emacs, the saved positions in visited files no longer
+include files that aren't readable, e.g. files that don't exist.
+Customize the new option `save-place-forget-unreadable-files' to nil
+to get the old behavior.  The new options `save-place-save-skipped'
+and `save-place-skip-check-regexp' allow further fine-tuning of this
+feature.
+
+*** Commands `winner-redo' and `winner-undo', from winner.el, are now
+bound to C-c <left> and C-c <right>, respectively.  This is an
+incompatible change.
+
+*** The type-break package now allows `type-break-file-name' to be nil
 and if so, doesn't store any data across sessions.  This is handy if
 you don't want the `.type-break' file in your home directory or are
 annoyed by the need for interaction when you kill Emacs.
 
-** `ps-print' can now print characters from the mule-unicode charsets.
+*** `ps-print' can now print characters from the mule-unicode charsets.
 
 Printing text with characters from the mule-unicode-* sets works with
 `ps-print', provided that you have installed the appropriate BDF
 fonts.  See the file INSTALL for URLs where you can find these fonts.
 
-** New command `strokes-global-set-stroke-string'.
+*** New command `strokes-global-set-stroke-string'.
 This is like `strokes-global-set-stroke', but it allows you to bind
 the stroke directly to a string to insert.  This is convenient for
 using strokes as an input method.
 
-** Emacs server changes:
-
-*** You can have several Emacs servers on the same machine.
-
-	% emacs --eval '(setq server-name "foo")' -f server-start &
-	% emacs --eval '(setq server-name "bar")' -f server-start &
-	% emacsclient -s foo file1
-	% emacsclient -s bar file2
-
-*** The `emacsclient' command understands the options `--eval' and
-`--display' which tell Emacs respectively to evaluate the given Lisp
-expression and to use the given display when visiting files.
-
-*** User option `server-mode' can be used to start a server process.
-
-** LDAP support now defaults to ldapsearch from OpenLDAP version 2.
-
-** You can now disable pc-selection-mode after enabling it.
+*** In Outline mode, `hide-body' no longer hides lines at the top
+of the file that precede the first header line.
+
+*** `hide-ifdef-mode' now uses overlays rather than selective-display
+to hide its text.  This should be mostly transparent but slightly
+changes the behavior of motion commands like C-e and C-p.
+
+*** In Artist mode the variable `artist-text-renderer' has been
+renamed to `artist-text-renderer-function'.  The old name is still
+available as alias.
+
+*** In Enriched mode, `set-left-margin' and `set-right-margin' are now
+by default bound to `C-c [' and `C-c ]' instead of the former `C-c C-l'
+and `C-c C-r'.
+
+*** `partial-completion-mode' now handles partial completion on directory names.
+
+*** You can now disable pc-selection-mode after enabling it.
 
 M-x pc-selection-mode behaves like a proper minor mode, and with no
 argument it toggles the mode.  Turning off PC-Selection mode restores
 the global key bindings that were replaced by turning on the mode.
 
-** `uniquify-strip-common-suffix' tells uniquify to prefer
+*** `uniquify-strip-common-suffix' tells uniquify to prefer
 `file|dir1' and `file|dir2' to `file|dir1/subdir' and `file|dir2/subdir'.
 
-** Support for `magic cookie' standout modes has been removed.
-
-Emacs still works on terminals that require magic cookies in order to
-use standout mode, but they can no longer display mode-lines in
-inverse-video.
-
-** The game `mpuz' is enhanced.
-
-`mpuz' now allows the 2nd factor not to have two identical digits.  By
-default, all trivial operations involving whole lines are performed
-automatically.  The game uses faces for better visual feedback.
-
-** battery.el changes:
-
-*** display-battery-mode replaces display-battery.
-
-*** battery.el now works on recent versions of OS X.
-
-** calculator.el now has radix grouping mode.
+*** New user option `add-log-always-start-new-record'.
+
+When this option is enabled, M-x add-change-log-entry always
+starts a new record regardless of when the last record is.
+
+*** M-x compare-windows now can automatically skip non-matching text to
+resync points in both windows.
+
+*** PO translation files are decoded according to their MIME headers
+when Emacs visits them.
+
+*** Telnet now prompts you for a port number with C-u M-x telnet.
+
+*** calculator.el now has radix grouping mode.
 
 To enable this, set `calculator-output-radix' non-nil.  In this mode a
 separator character is used every few digits, making it easier to see
 byte boundaries etc.  For more info, see the documentation of the
 variable `calculator-radix-grouping-mode'.
 
-** fast-lock.el and lazy-lock.el are obsolete.  Use jit-lock.el instead.
-
-** iso-acc.el is now obsolete.  Use one of the latin input methods instead.
-
-** zone-mode.el is now obsolete.  Use dns-mode.el instead.
-
-** cplus-md.el has been deleted.
-
-** Ewoc changes
-
-*** The new function `ewoc-delete' deletes specified nodes.
-
-*** `ewoc-create' now takes optional arg NOSEP, which inhibits insertion of
-a newline after each pretty-printed entry and after the header and footer.
-This allows you to create multiple-entry ewocs on a single line and to
-effect "invisible" nodes by arranging for the pretty-printer to not print
-anything for those nodes.
-
-For example, these two sequences of expressions behave identically:
-
-;; NOSEP nil
-(defun PP (data) (insert (format "%S" data)))
-(ewoc-create 'PP "start\n")
-
-;; NOSEP t
-(defun PP (data) (insert (format "%S\n" data)))
-(ewoc-create 'PP "start\n\n" "\n" t)
-
-** Locate changes
-
-*** By default, reverting the *Locate* buffer now just runs the last
-`locate' command back over again without offering to update the locate
-database (which normally only works if you have root privileges).  If
-you prefer the old behavior, set the new customizable option
-`locate-update-when-revert' to t.
+*** LDAP support now defaults to ldapsearch from OpenLDAP version 2.
+
+*** The terminal emulation code in term.el has been improved; it can
+run most curses applications now.
+
+*** Support for `magic cookie' standout modes has been removed.
+
+Emacs still works on terminals that require magic cookies in order to
+use standout mode, but they can no longer display mode-lines in
+inverse-video.
 
 
 * Changes in Emacs 22.1 on non-free operating systems
@@ -3402,29 +3413,6 @@
 shared computers, and the default HOME directory is less likely to be
 read-only on computers that are administered by someone else.
 
-** Passing resources on the command line now works on MS Windows.
-
-You can use --xrm to pass resource settings to Emacs, overriding any
-existing values.  For example:
-
-  emacs --xrm "Emacs.Background:red" --xrm "Emacs.Geometry:100x20"
-
-will start up Emacs on an initial frame of 100x20 with red background,
-irrespective of geometry or background setting on the Windows registry.
-
-** On MS Windows, the "system caret" now follows the cursor.
-
-This enables Emacs to work better with programs that need to track the
-cursor, for example screen magnifiers and text to speech programs.
-When such a program is in use, the system caret is made visible
-instead of Emacs drawing its own cursor. This seems to be required by
-some programs. The new variable w32-use-visible-system-caret allows
-the caret visibility to be manually toggled.
-
-** Tooltips now work on MS Windows.
-
-See the Emacs 21.1 NEWS entry for tooltips for details.
-
 ** Images are now supported on MS Windows.
 
 PBM and XBM images are supported out of the box.  Other image formats
@@ -3441,9 +3429,9 @@
 Windows, or when other software provides hooks into the system level
 sound support for those formats.
 
-** Different shaped mouse pointers are supported on MS Windows.
-
-The mouse pointer changes shape depending on what is under the pointer.
+** Tooltips now work on MS Windows.
+
+See the Emacs 21.1 NEWS entry for tooltips for details.
 
 ** Pointing devices with more than 3 buttons are now supported on MS Windows.
 
@@ -3451,6 +3439,16 @@
 whether Emacs should handle the extra buttons itself (the default), or
 pass them to Windows to be handled with system-wide functions.
 
+** Passing resources on the command line now works on MS Windows.
+
+You can use --xrm to pass resource settings to Emacs, overriding any
+existing values.  For example:
+
+  emacs --xrm "Emacs.Background:red" --xrm "Emacs.Geometry:100x20"
+
+will start up Emacs on an initial frame of 100x20 with red background,
+irrespective of geometry or background setting on the Windows registry.
+
 ** Emacs takes note of colors defined in Control Panel on MS-Windows.
 
 The Control Panel defines some default colors for applications in much
@@ -3461,14 +3459,6 @@
 `list-colors-display' shows the list of System color names, in case
 you wish to use them in other faces.
 
-** On MS Windows NT/W2K/XP, Emacs uses Unicode for clipboard operations.
-
-Those systems use Unicode internally, so this allows Emacs to share
-multilingual text with other applications.  On other versions of
-MS Windows, Emacs now uses the appropriate locale coding-system, so
-the clipboard should work correctly for your local language without
-any customizations.
-
 ** Running in a console window in Windows now uses the console size.
 
 Previous versions of Emacs erred on the side of having a usable Emacs
@@ -3482,6 +3472,27 @@
 other than 80x25, you can still manually set
 w32-use-full-screen-buffer to t.
 
+** Different shaped mouse pointers are supported on MS Windows.
+
+The mouse pointer changes shape depending on what is under the pointer.
+
+** On MS Windows, the "system caret" now follows the cursor.
+
+This enables Emacs to work better with programs that need to track the
+cursor, for example screen magnifiers and text to speech programs.
+When such a program is in use, the system caret is made visible
+instead of Emacs drawing its own cursor. This seems to be required by
+some programs. The new variable w32-use-visible-system-caret allows
+the caret visibility to be manually toggled.
+
+** On MS Windows NT/W2K/XP, Emacs uses Unicode for clipboard operations.
+
+Those systems use Unicode internally, so this allows Emacs to share
+multilingual text with other applications.  On other versions of
+MS Windows, Emacs now uses the appropriate locale coding-system, so
+the clipboard should work correctly for your local language without
+any customizations.
+
 ** On Mac OS, `keyboard-coding-system' changes based on the keyboard script.
 
 ** The variable `mac-keyboard-text-encoding' and the constants
@@ -3493,22 +3504,6 @@
 
 * Incompatible Lisp Changes in Emacs 22.1
 
-** The `read-file-name' function now returns a null string if the
-user just types RET.
-
-** The function find-operation-coding-system may be called with a cons
-(FILENAME . BUFFER) in the second argument if the first argument
-OPERATION is `insert-file-contents', and thus a function registered in
-`file-coding-system-alist' is also called with such an argument.
-
-** The variables post-command-idle-hook and post-command-idle-delay have
-been removed.  Use run-with-idle-timer instead.
-
-** `suppress-keymap' now works by remapping `self-insert-command' to
-the command `undefined'.  (In earlier Emacs versions, it used
-`substitute-key-definition' to rebind self inserting characters to
-`undefined'.)
-
 ** Mode line display ignores text properties as well as the
 :propertize and :eval forms in the value of a variable whose
 `risky-local-variable' property is nil.
@@ -3521,14 +3516,11 @@
 argument `artificial' to a non-nil value, to prevent Emacs from
 deleting the part of subprocess output that matches the input.
 
-** Support for Mocklisp has been removed.
-
-** The variable `memory-full' now remains t until
-there is no longer a shortage of memory.
-
-** When Emacs receives a USR1 or USR2 signal, this generates
-input events: sigusr1 or sigusr2.  Use special-event-map to
-handle these events.
+** The `read-file-name' function now returns a null string if the
+user just types RET.
+
+** The variables post-command-idle-hook and post-command-idle-delay have
+been removed.  Use run-with-idle-timer instead.
 
 ** A hex or octal escape in a string constant forces the string to
 be multibyte or unibyte, respectively.
@@ -3541,6 +3533,28 @@
 `glyph-face' must be used to create and decode glyph codes in
 display tables.
 
+** `suppress-keymap' now works by remapping `self-insert-command' to
+the command `undefined'.  (In earlier Emacs versions, it used
+`substitute-key-definition' to rebind self inserting characters to
+`undefined'.)
+
+** The third argument of `accept-process-output' is now milliseconds.
+It used to be microseconds.
+
+** The function find-operation-coding-system may be called with a cons
+(FILENAME . BUFFER) in the second argument if the first argument
+OPERATION is `insert-file-contents', and thus a function registered in
+`file-coding-system-alist' is also called with such an argument.
+
+** When Emacs receives a USR1 or USR2 signal, this generates
+input events: sigusr1 or sigusr2.  Use special-event-map to
+handle these events.
+
+** The variable `memory-full' now remains t until
+there is no longer a shortage of memory.
+
+** Support for Mocklisp has been removed.
+
 
 * Lisp Changes in Emacs 22.1
 
@@ -3566,17 +3580,29 @@
 
 This syntax works for both character constants and strings.
 
-*** The function `expt' handles negative exponents differently.
-The value for `(expt A B)', if both A and B are integers and B is
-negative, is now a float.  For example: (expt 2 -2) => 0.25.
+*** New function `unsafep' determines whether a Lisp form is safe.
+
+It returns nil if the given Lisp form can't possibly do anything
+dangerous; otherwise it returns a reason why the form might be unsafe
+(calls unknown function, alters global variable, etc.).
 
 *** The function `eql' is now available without requiring the CL package.
 
 *** The new function `memql' is like `memq', but uses `eql' for comparison,
 that is, floats are compared by value and other elements with `eq'.
 
+*** New functions `string-or-null-p' and `booleanp'.
+
+`string-or-null-p' returns non-nil iff OBJECT is a string or nil.
+`booleanp' returns non-nil iff OBJECT is t or nil.
+
 *** `makehash' is now obsolete.  Use `make-hash-table' instead.
 
+*** Minor change in the function `format'.
+
+Some flags that were accepted but not implemented (such as "*") are no
+longer accepted.
+
 *** `add-to-list' takes an optional third argument, APPEND.
 
 If APPEND is non-nil, the new element gets added at the end of the
@@ -3586,6 +3612,14 @@
 *** New function `add-to-ordered-list' is like `add-to-list' but
 associates a numeric ordering of each element added to the list.
 
+*** New function `add-to-history' adds an element to a history list.
+
+Lisp packages should use this function to add elements to their
+history lists.
+
+If `history-delete-duplicates' is non-nil, it removes duplicates of
+the new element from the history list it updates.
+
 *** New function `copy-tree' makes a copy of a tree.
 
 It recursively copies through both CARs and CDRs.
@@ -3596,19 +3630,21 @@
 occurrences of an element in the list, the one that's kept is the
 first one.
 
-*** New function `add-to-history' adds an element to a history list.
-
-Lisp packages should use this function to add elements to their
-history lists.
-
-If `history-delete-duplicates' is non-nil, it removes duplicates of
-the new element from the history list it updates.
-
 *** New function `rassq-delete-all'.
 
 (rassq-delete-all VALUE ALIST) deletes, from ALIST, each element whose
 CDR is `eq' to the specified value.
 
+*** Functions `get' and `plist-get' no longer give errors for bad plists.
+
+They return nil for a malformed property list or if the list is
+cyclic.
+
+*** New functions `lax-plist-get' and `lax-plist-put'.
+
+They are like `plist-get' and `plist-put', except that they compare
+the property name using `equal' rather than `eq'.
+
 *** The function `number-sequence' makes a list of equally-separated numbers.
 
 For instance, (number-sequence 4 9) returns (4 5 6 7 8 9).  By
@@ -3620,35 +3656,9 @@
 
 They hold the largest and smallest possible integer values.
 
-*** Minor change in the function `format'.
-
-Some flags that were accepted but not implemented (such as "*") are no
-longer accepted.
-
-*** Functions `get' and `plist-get' no longer give errors for bad plists.
-
-They return nil for a malformed property list or if the list is
-cyclic.
-
-*** New functions `lax-plist-get' and `lax-plist-put'.
-
-They are like `plist-get' and `plist-put', except that they compare
-the property name using `equal' rather than `eq'.
-
-*** New variable `print-continuous-numbering'.
-
-When this is non-nil, successive calls to print functions use a single
-numbering scheme for circular structure references.  This is only
-relevant when `print-circle' is non-nil.
-
-When you bind `print-continuous-numbering' to t, you should
-also bind `print-number-table' to nil.
-
-*** New function `macroexpand-all' expands all macros in a form.
-
-It is similar to the Common-Lisp function of the same name.
-One difference is that it guarantees to return the original argument
-if no expansion is done, which can be tested using `eq'.
+*** The function `expt' handles negative exponents differently.
+The value for `(expt A B)', if both A and B are integers and B is
+negative, is now a float.  For example: (expt 2 -2) => 0.25.
 
 *** The function `atan' now accepts an optional second argument.
 
@@ -3656,12 +3666,10 @@
 angle in radians between the vector [X, Y] and the X axis.  (This is
 equivalent to the standard C library function `atan2'.)
 
-*** A function or macro's doc string can now specify the calling pattern.
-
-You put this info in the doc string's last line.  It should be
-formatted so as to match the regexp "\n\n(fn .*)\\'".  If you don't
-specify this explicitly, Emacs determines it from the actual argument
-names.  Usually that default is right, but not always.
+*** New macro `with-case-table'
+
+This executes the body with the case table temporarily set to a given
+case table.
 
 *** New macro `with-local-quit' temporarily allows quitting.
 
@@ -3676,32 +3684,38 @@
 
 This combines `defalias' and `make-obsolete'.
 
-*** New macro `with-case-table'
-
-This executes the body with the case table temporarily set to a given
-case table.
-
-*** New function `unsafep' determines whether a Lisp form is safe.
-
-It returns nil if the given Lisp form can't possibly do anything
-dangerous; otherwise it returns a reason why the form might be unsafe
-(calls unknown function, alters global variable, etc.).
-
 *** New macro `eval-at-startup' specifies expressions to
 evaluate when Emacs starts up.  If this is done after startup,
 it evaluates those expressions immediately.
 
 This is useful in packages that can be preloaded.
 
+*** New function `macroexpand-all' expands all macros in a form.
+
+It is similar to the Common-Lisp function of the same name.
+One difference is that it guarantees to return the original argument
+if no expansion is done, which can be tested using `eq'.
+
+*** A function or macro's doc string can now specify the calling pattern.
+
+You put this info in the doc string's last line.  It should be
+formatted so as to match the regexp "\n\n(fn .*)\\'".  If you don't
+specify this explicitly, Emacs determines it from the actual argument
+names.  Usually that default is right, but not always.
+
+*** New variable `print-continuous-numbering'.
+
+When this is non-nil, successive calls to print functions use a single
+numbering scheme for circular structure references.  This is only
+relevant when `print-circle' is non-nil.
+
+When you bind `print-continuous-numbering' to t, you should
+also bind `print-number-table' to nil.
+
 *** `list-faces-display' takes an optional argument, REGEXP.
 
 If it is non-nil, the function lists only faces matching this regexp.
 
-*** New functions `string-or-null-p' and `booleanp'.
-
-`string-or-null-p' returns non-nil iff OBJECT is a string or nil.
-`booleanp' returns non-nil iff OBJECT is t or nil.
-
 *** New hook `command-error-function'.
 
 By setting this variable to a function, you can control
@@ -3752,6 +3766,9 @@
 DOCSTRING, if present, is the documentation for ALIAS-VAR; else it has
 the same documentation as BASE-VAR.
 
+*** The macro `define-obsolete-variable-alias' combines `defvaralias' and
+`make-obsolete-variable'.
+
 *** New function: indirect-variable VARIABLE
 
 This function returns the variable at the end of the chain of aliases
@@ -3761,9 +3778,6 @@
 It might be noteworthy that variables aliases work for all kinds of
 variables, including buffer-local and frame-local variables.
 
-*** The macro `define-obsolete-variable-alias' combines `defvaralias' and
-`make-obsolete-variable'.
-
 ** defcustom changes:
 
 *** The package-version keyword has been added to provide
@@ -3779,22 +3793,22 @@
 
 *** An octal escape in a string constant forces the string to be unibyte.
 
+*** New function `string-to-multibyte' converts a unibyte string to a
+multibyte string with the same individual character codes.
+
 *** `split-string' now includes null substrings in the returned list if
 the optional argument SEPARATORS is non-nil and there are matches for
 SEPARATORS at the beginning or end of the string.  If SEPARATORS is
 nil, or if the new optional third argument OMIT-NULLS is non-nil, all
 empty matches are omitted from the returned list.
 
-*** New function `string-to-multibyte' converts a unibyte string to a
-multibyte string with the same individual character codes.
+*** The new function `assoc-string' replaces `assoc-ignore-case' and
+`assoc-ignore-representation', which are still available, but have
+been declared obsolete.
 
 *** New function `substring-no-properties' returns a substring without
 text properties.
 
-*** The new function `assoc-string' replaces `assoc-ignore-case' and
-`assoc-ignore-representation', which are still available, but have
-been declared obsolete.
-
 ** Displaying warnings to the user.
 
 See the functions `warn' and `display-warning', or the Lisp Manual.
@@ -3831,32 +3845,32 @@
 
 It defaults to 1.
 
-*** New function `mouse-on-link-p' tests if a position is in a clickable link.
-
-This is the function used by the new `mouse-1-click-follows-link'
-functionality.
-
-*** New function `line-number-at-pos' returns the line number of a position.
-
-It an optional buffer position argument that defaults to point.
-
 *** `field-beginning' and `field-end' take new optional argument, LIMIT.
 
 This argument tells them not to search beyond LIMIT.  Instead they
 give up and return LIMIT.
 
+*** New function `window-line-height' is an efficient way to get
+information about a specific text line in a window provided that the
+window's display is up-to-date.
+
+*** New function `line-number-at-pos' returns the line number of a position.
+
+It an optional buffer position argument that defaults to point.
+
 *** Function `pos-visible-in-window-p' now returns the pixel coordinates
 and partial visibility state of the corresponding row, if the PARTIALLY
 arg is non-nil.
 
-*** New function `window-line-height' is an efficient way to get
-information about a specific text line in a window provided that the
-window's display is up-to-date.
-
 *** New functions `posn-at-point' and `posn-at-x-y' return
 click-event-style position information for a given visible buffer
 position or for a given window pixel coordinate.
 
+*** New function `mouse-on-link-p' tests if a position is in a clickable link.
+
+This is the function used by the new `mouse-1-click-follows-link'
+functionality.
+
 ** Text modification:
 
 *** The new function `buffer-chars-modified-tick' returns a buffer's
@@ -3968,17 +3982,17 @@
 
 ** Buffer-related changes:
 
+*** The new function `buffer-local-value' returns the buffer-local
+binding of VARIABLE (a symbol) in buffer BUFFER.  If VARIABLE does not
+have a buffer-local binding in buffer BUFFER, it returns the default
+value of VARIABLE instead.
+
 *** `list-buffers-noselect' now takes an additional argument, BUFFER-LIST.
 
 If it is non-nil, it specifies which buffers to list.
 
 *** `kill-buffer-hook' is now a permanent local.
 
-*** The new function `buffer-local-value' returns the buffer-local
-binding of VARIABLE (a symbol) in buffer BUFFER.  If VARIABLE does not
-have a buffer-local binding in buffer BUFFER, it returns the default
-value of VARIABLE instead.
-
 *** The function `frame-or-buffer-changed-p' now lets you maintain
 various status records in parallel.
 
@@ -4023,8 +4037,6 @@
 non-empty sequence of either word or symbol constituent characters, as
 specified by the syntax table.
 
-*** rx.el has new corresponding `symbol-start' and `symbol-end' elements.
-
 *** `skip-chars-forward' and `skip-chars-backward' now handle
 character classes such as `[:alpha:]', along with individual
 characters and ranges.
@@ -4040,6 +4052,8 @@
 argument `reseat'.  When non-nil, all markers in the match data list
 passed to these functions will be reseated to point to nowhere.
 
+*** rx.el has new corresponding `symbol-start' and `symbol-end' elements.
+
 *** The default value of `sentence-end' is now defined using the new
 variable `sentence-end-without-space', which contains such characters
 that end a sentence without following spaces.
@@ -4066,7 +4080,9 @@
 `undo-outer-limit', garbage collection empties it.  This is to prevent
 it from using up the available memory and choking Emacs.
 
-** New `yank-handler' text property can be used to control how
+** Killing and yanking changes:
+
+*** New `yank-handler' text property can be used to control how
 previously killed text on the kill ring is reinserted.
 
 The value of the `yank-handler' property must be a list with one to four
@@ -4110,7 +4126,8 @@
 
 ** Syntax table changes:
 
-*** The macro `with-syntax-table' no longer copies the syntax table.
+*** The new function `syntax-ppss' provides an efficient way to find the
+current syntactic context at point.
 
 *** The new function `syntax-after' returns the syntax code
 of the character after a specified buffer position, taking account
@@ -4119,47 +4136,13 @@
 *** `syntax-class' extracts the class of a syntax code (as returned
 by `syntax-after').
 
-*** The new function `syntax-ppss' provides an efficient way to find the
-current syntactic context at point.
+*** The macro `with-syntax-table' no longer copies the syntax table.
 
 ** File operation changes:
 
 *** New vars `exec-suffixes' and `load-suffixes' used when
 searching for an executable or an Emacs Lisp file.
 
-*** The new primitive `set-file-times' sets a file's access and
-modification times.  Magic file name handlers can handle this
-operation.
-
-*** The new function `file-remote-p' tests a file name and returns
-non-nil if it specifies a remote file (one that Emacs accesses using
-its own special methods and not directly through the file system).
-The value in that case is an identifier for the remote file system.
-
-*** `buffer-auto-save-file-format' is the new name for what was
-formerly called `auto-save-file-format'.  It is now a permanent local.
-
-*** Functions `file-name-sans-extension' and `file-name-extension' now
-ignore the leading dots in file names, so that file names such as
-`.emacs' are treated as extensionless.
-
-*** `visited-file-modtime' and `calendar-time-from-absolute' now return
-a list of two integers, instead of a cons.
-
-*** `file-chase-links' now takes an optional second argument LIMIT which
-specifies the maximum number of links to chase through.  If after that
-many iterations the file name obtained is still a symbolic link,
-`file-chase-links' returns it anyway.
-
-*** The new hook `before-save-hook' is invoked by `basic-save-buffer'
-before saving buffers.  This allows packages to perform various final
-tasks.  For example, it can be used by the copyright package to make
-sure saved files have the current year in any copyright headers.
-
-*** If `buffer-save-without-query' is non-nil in some buffer,
-`save-some-buffers' will always save that buffer without asking (if
-it's modified).
-
 *** New function `locate-file' searches for a file in a list of directories.
 `locate-file' accepts a name of a file to search (a string), and two
 lists: a list of directories to search in and a list of suffixes to
@@ -4172,6 +4155,35 @@
 `exec-suffixes' is OS-dependant, so this function will find
 executables without polluting Lisp code with OS dependencies.
 
+*** The new function `file-remote-p' tests a file name and returns
+non-nil if it specifies a remote file (one that Emacs accesses using
+its own special methods and not directly through the file system).
+The value in that case is an identifier for the remote file system.
+
+*** The new hook `before-save-hook' is invoked by `basic-save-buffer'
+before saving buffers.  This allows packages to perform various final
+tasks.  For example, it can be used by the copyright package to make
+sure saved files have the current year in any copyright headers.
+
+*** `file-chase-links' now takes an optional second argument LIMIT which
+specifies the maximum number of links to chase through.  If after that
+many iterations the file name obtained is still a symbolic link,
+`file-chase-links' returns it anyway.
+
+*** Functions `file-name-sans-extension' and `file-name-extension' now
+ignore the leading dots in file names, so that file names such as
+`.emacs' are treated as extensionless.
+
+*** If `buffer-save-without-query' is non-nil in some buffer,
+`save-some-buffers' will always save that buffer without asking (if
+it's modified).
+
+*** `buffer-auto-save-file-format' is the new name for what was
+formerly called `auto-save-file-format'.  It is now a permanent local.
+
+*** `visited-file-modtime' and `calendar-time-from-absolute' now return
+a list of two integers, instead of a cons.
+
 *** The precedence of file name handlers has been changed.
 
 Instead of choosing the first handler that matches,
@@ -4196,8 +4208,16 @@
 *** The function `file-name-completion' accepts an optional argument
 PREDICATE, and rejects completion candidates that don't satisfy PREDICATE.
 
+*** The new primitive `set-file-times' sets a file's access and
+modification times.  Magic file name handlers can handle this
+operation.
+
 ** Input changes:
 
+*** Functions `y-or-n-p', `read-char', `read-key-sequence' and the like, that
+display a prompt but don't use the minibuffer, now display the prompt
+using the text properties (esp. the face) of the prompt string.
+
 *** The functions `read-event', `read-char', and `read-char-exclusive'
 have a new optional argument SECONDS.  If non-nil, this specifies a
 maximum time to wait for input, in seconds.  If no input arrives after
@@ -4211,10 +4231,6 @@
 much like `F', but if the input is a directory name (even defaulted),
 it returns just the directory name.
 
-*** Functions `y-or-n-p', `read-char', `read-key-sequence' and the like, that
-display a prompt but don't use the minibuffer, now display the prompt
-using the text properties (esp. the face) of the prompt string.
-
 *** (while-no-input BODY...) runs BODY, but only so long as no input
 arrives.  If the user types or clicks anything, BODY stops as if a
 quit had occurred.  `while-no-input' returns the value of BODY, if BODY
@@ -4291,17 +4307,21 @@
 from which the minibuffer was entered.  The return value of
 `lazy-completion-table' must be used to initialize the value of VAR.
 
+** Abbrev changes:
+
+*** `define-abbrev' now accepts an optional argument SYSTEM-FLAG.
+
+If non-nil, this marks the abbrev as a "system" abbrev, which means
+that it won't be stored in the user's abbrevs file if he saves the
+abbrevs.  Major modes that predefine some abbrevs should always
+specify this flag.
+
+*** The new function `copy-abbrev-table' copies an abbrev table.
+
+It returns a new abbrev table that is a copy of a given abbrev table.
+
 ** Enhancements to keymaps.
 
-*** New keymaps for typing file names
-
-Two new keymaps, `minibuffer-local-filename-completion-map'  and
-`minibuffer-local-must-match-filename-map', apply whenever
-Emacs reads a file name in the minibuffer.  These key maps override
-the usual binding of SPC to `minibuffer-complete-word' (so that file
-names with embedded spaces could be typed without the need to quote
-the spaces).
-
 *** Cleaner way to enter key sequences.
 
 You can enter a constant key sequence in a more natural format, the
@@ -4367,6 +4387,26 @@
   command before remapping.  It is equal to `this-command' when the
   command was not remapped.
 
+*** The definition of a key-binding passed to define-key can use XEmacs-style
+key-sequences, such as [(control a)].
+
+*** New keymaps for typing file names
+
+Two new keymaps, `minibuffer-local-filename-completion-map'  and
+`minibuffer-local-must-match-filename-map', apply whenever
+Emacs reads a file name in the minibuffer.  These key maps override
+the usual binding of SPC to `minibuffer-complete-word' (so that file
+names with embedded spaces could be typed without the need to quote
+the spaces).
+
+*** New function `current-active-maps' returns a list of currently
+active keymaps.
+
+*** New function `describe-buffer-bindings' inserts the list of all
+defined keys and their definitions.
+
+*** New function `keymap-prompt' returns the prompt string of a keymap.
+
 *** If text has a `keymap' property, that keymap takes precedence
 over minor mode keymaps.
 
@@ -4380,21 +4420,8 @@
 position be determined from the key sequence itself, it is also
 possible to specify it with an optional argument explicitly.
 
-*** Dense keymaps now handle inheritance correctly.
-
-Previously a dense keymap would hide all of the simple-char key
-bindings of the parent keymap.
-
 *** `define-key-after' now accepts keys longer than 1.
 
-*** New function `current-active-maps' returns a list of currently
-active keymaps.
-
-*** New function `describe-buffer-bindings' inserts the list of all
-defined keys and their definitions.
-
-*** New function `keymap-prompt' returns the prompt string of a keymap.
-
 *** (map-keymap FUNCTION KEYMAP) applies the function to each binding
 in the keymap.
 
@@ -4404,51 +4431,13 @@
 keymap alist separate from `minor-mode-map-alist' by adding their
 keymap alist to this list.
 
-*** The definition of a key-binding passed to define-key can use XEmacs-style
-key-sequences, such as [(control a)].
-
-** Abbrev changes:
-
-*** The new function `copy-abbrev-table' copies an abbrev table.
-
-It returns a new abbrev table that is a copy of a given abbrev table.
-
-*** `define-abbrev' now accepts an optional argument SYSTEM-FLAG.
-
-If non-nil, this marks the abbrev as a "system" abbrev, which means
-that it won't be stored in the user's abbrevs file if he saves the
-abbrevs.  Major modes that predefine some abbrevs should always
-specify this flag.
+*** Dense keymaps now handle inheritance correctly.
+
+Previously a dense keymap would hide all of the simple-char key
+bindings of the parent keymap.
 
 ** Enhancements to process support
 
-*** Function `list-processes' now has an optional argument; if non-nil,
-it lists only the processes whose query-on-exit flag is set.
-
-*** New fns `set-process-query-on-exit-flag' and `process-query-on-exit-flag'.
-
-These replace the old function `process-kill-without-query'.  That
-function is still supported, but new code should use the new
-functions.
-
-*** Function `signal-process' now accepts a process object or process
-name in addition to a process id to identify the signaled process.
-
-*** Processes now have an associated property list where programs can
-maintain process state and other per-process related information.
-
-Use the new functions `process-get' and `process-put' to access, add,
-and modify elements on this property list.  Use the new functions
-`process-plist' and `set-process-plist' to access and replace the
-entire property list of a process.
-
-*** Function `accept-process-output' has a new optional fourth arg
-JUST-THIS-ONE.  If non-nil, only output from the specified process
-is handled, suspending output from other processes.  If value is an
-integer, also inhibit running timers.  This feature is generally not
-recommended, but may be necessary for specific applications, such as
-speech synthesis.
-
 *** Adaptive read buffering of subprocess output.
 
 On some systems, when Emacs reads the output from a subprocess, the
@@ -4459,6 +4448,23 @@
 from such processes, allowing them to produce more output before
 Emacs tries to read it.
 
+*** Processes now have an associated property list where programs can
+maintain process state and other per-process related information.
+
+Use the new functions `process-get' and `process-put' to access, add,
+and modify elements on this property list.  Use the new functions
+`process-plist' and `set-process-plist' to access and replace the
+entire property list of a process.
+
+*** Function `list-processes' now has an optional argument; if non-nil,
+it lists only the processes whose query-on-exit flag is set.
+
+*** New fns `set-process-query-on-exit-flag' and `process-query-on-exit-flag'.
+
+These replace the old function `process-kill-without-query'.  That
+function is still supported, but new code should use the new
+functions.
+
 *** The new function `call-process-shell-command'.
 
 This executes a shell command synchronously in a separate process.
@@ -4467,6 +4473,16 @@
 obeys file handlers.  The file handler is chosen based on
 `default-directory'.
 
+*** Function `signal-process' now accepts a process object or process
+name in addition to a process id to identify the signaled process.
+
+*** Function `accept-process-output' has a new optional fourth arg
+JUST-THIS-ONE.  If non-nil, only output from the specified process
+is handled, suspending output from other processes.  If value is an
+integer, also inhibit running timers.  This feature is generally not
+recommended, but may be necessary for specific applications, such as
+speech synthesis.
+
 *** A process filter function gets the output as multibyte string
 if the process specifies t for its filter's multibyteness.
 
@@ -4509,19 +4525,6 @@
 
 *** The old `open-network-stream' now uses `make-network-process'.
 
-*** New functions `process-datagram-address', `set-process-datagram-address'.
-
-These functions are used with datagram-based network processes to get
-and set the current address of the remote partner.
-
-*** New function `format-network-address'.
-
-This function reformats the Lisp representation of a network address
-to a printable string.  For example, an IP address A.B.C.D and port
-number P is represented as a five element vector [A B C D P], and the
-printable string returned for this vector is "A.B.C.D:P".  See the doc
-string for other formatting options.
-
 *** `process-contact' has an optional KEY argument.
 
 Depending on this argument, you can get the complete list of network
@@ -4538,6 +4541,14 @@
 stopped state.  For a client process, no input is received in the
 stopped state.
 
+*** New function `format-network-address'.
+
+This function reformats the Lisp representation of a network address
+to a printable string.  For example, an IP address A.B.C.D and port
+number P is represented as a five element vector [A B C D P], and the
+printable string returned for this vector is "A.B.C.D:P".  See the doc
+string for other formatting options.
+
 *** New function `network-interface-list'.
 
 This function returns a list of network interface names and their
@@ -4548,6 +4559,11 @@
 This function returns the network address, hardware address, current
 status, and other information about a specific network interface.
 
+*** New functions `process-datagram-address', `set-process-datagram-address'.
+
+These functions are used with datagram-based network processes to get
+and set the current address of the remote partner.
+
 *** Deleting a network process with `delete-process' calls the sentinel.
 
 The status message passed to the sentinel for a deleted network
@@ -4557,11 +4573,6 @@
 
 ** Using window objects:
 
-*** New function `window-body-height'.
-
-This is like `window-height' but does not count the mode line or the
-header line.
-
 *** You can now make a window as short as one line.
 
 A window that is just one line tall does not display either a mode
@@ -4578,6 +4589,14 @@
 *** The new functions `window-pixel-edges' and `window-inside-pixel-edges'
 return window edges in units of pixels, rather than columns and lines.
 
+*** New function `window-body-height'.
+
+This is like `window-height' but does not count the mode line or the
+header line.
+
+*** The new function `adjust-window-trailing-edge' moves the right
+or bottom edge of a window.  It does not move other window edges.
+
 *** The new macro `with-selected-window' temporarily switches the
 selected window without impacting the order of `buffer-list'.
 It saves and restores the current buffer, too.
@@ -4602,11 +4621,18 @@
 argument `dedicated'.  If non-nil, those functions do not ignore
 dedicated windows.
 
-*** The new function `adjust-window-trailing-edge' moves the right
-or bottom edge of a window.  It does not move other window edges.
-
 ** Customizable fringe bitmaps
 
+*** There are new display properties, `left-fringe' and `right-fringe',
+that can be used to show a specific bitmap in the left or right fringe
+bitmap of the display line.
+
+Format is `display (left-fringe BITMAP [FACE])', where BITMAP is a
+symbol identifying a fringe bitmap, either built-in or defined with
+`define-fringe-bitmap', and FACE is an optional face name to be used
+for displaying the bitmap instead of the default `fringe' face.
+When specified, FACE is automatically merged with the `fringe' face.
+
 *** New buffer-local variables `fringe-indicator-alist' and
 `fringe-cursor-alist' maps between logical (internal) fringe indicator
 and cursor symbols and the actual fringe bitmaps to be displayed.
@@ -4625,16 +4651,6 @@
 with the `fringe' face, so normally, the face should only specify the
 foreground color of the bitmap.
 
-*** There are new display properties, `left-fringe' and `right-fringe',
-that can be used to show a specific bitmap in the left or right fringe
-bitmap of the display line.
-
-Format is `display (left-fringe BITMAP [FACE])', where BITMAP is a
-symbol identifying a fringe bitmap, either built-in or defined with
-`define-fringe-bitmap', and FACE is an optional face name to be used
-for displaying the bitmap instead of the default `fringe' face.
-When specified, FACE is automatically merged with the `fringe' face.
-
 *** New function `fringe-bitmaps-at-pos' returns the current fringe
 bitmaps in the display line at a given buffer position.
 
@@ -4907,26 +4923,16 @@
 
 ** Mouse event enhancements:
 
-*** Mouse events for clicks on window fringes now specify `left-fringe'
-or `right-fringe' as the area.
-
 *** All mouse events now include a buffer position regardless of where
 you clicked.  For mouse clicks in window margins and fringes, this is
 a sensible buffer position corresponding to the surrounding text.
 
-*** `posn-point' now returns buffer position for non-text area events.
-
-*** Function `mouse-set-point' now works for events outside text area.
-
-*** New function `posn-area' returns window area clicked on (nil means
-text area).
+*** Mouse events for clicks on window fringes now specify `left-fringe'
+or `right-fringe' as the area.
 
 *** Mouse events include actual glyph column and row for all event types
 and all areas.
 
-*** New function `posn-actual-col-row' returns the actual glyph coordinates
-of the mouse event position.
-
 *** Mouse events can now indicate an image object clicked on.
 
 *** Mouse events include relative X and Y pixel coordinates relative to
@@ -4935,6 +4941,16 @@
 *** Mouse events include the pixel width and height of the object
 (image or character) clicked on.
 
+*** Function `mouse-set-point' now works for events outside text area.
+
+*** `posn-point' now returns buffer position for non-text area events.
+
+*** New function `posn-area' returns window area clicked on (nil means
+text area).
+
+*** New function `posn-actual-col-row' returns the actual glyph coordinates
+of the mouse event position.
+
 *** New functions 'posn-object', 'posn-object-x-y', 'posn-object-width-height'.
 
 These return the image or string object of a mouse click, the X and Y
@@ -4996,12 +5012,6 @@
 defaults that apply to all the subsequent cases (and can be overridden
 by them).
 
-*** The variable `face-font-rescale-alist' specifies how much larger
-(or smaller) font we should use.  For instance, if the value is
-'((SOME-FONTNAME-PATTERN . 1.3)) and a face requests a font of 10
-point, we actually use a font of 13 point if the font matches
-SOME-FONTNAME-PATTERN.
-
 *** The function `face-differs-from-default-p' now truly checks
 whether the given face displays differently from the default face or
 not (previously it did only a very cursory check).
@@ -5023,6 +5033,12 @@
 so that :inherit face lists operate identically to face lists in text
 `face' properties.
 
+*** The variable `face-font-rescale-alist' specifies how much larger
+(or smaller) font we should use.  For instance, if the value is
+'((SOME-FONTNAME-PATTERN . 1.3)) and a face requests a font of 10
+point, we actually use a font of 13 point if the font matches
+SOME-FONTNAME-PATTERN.
+
 *** On terminals, faces with the :inverse-video attribute are displayed
 with swapped foreground and background colors even when one of them is
 not specified.  In previous releases of Emacs, if either foreground
@@ -5076,6 +5092,19 @@
 
 ** Major mode mechanism changes:
 
+*** New variable `magic-mode-alist' determines major mode for a file by
+looking at the file contents.  It takes precedence over `auto-mode-alist'.
+
+*** New variable `file-start-mode-alist' determines major mode for a file by
+looking at the file contents.  It is handled after `auto-mode-alist',
+only if `auto-mode-alist' (and `magic-mode-alist') says nothing about the file.
+
+*** XML or SGML major mode is selected when file starts with an `<?xml'
+or `<!DOCTYPE' declaration.
+
+*** An interpreter magic line (if present) takes precedence over the
+file name when setting the major mode.
+
 *** If new variable `auto-mode-case-fold' is set to a non-nil value,
 Emacs will perform a second case-insensitive search through
 `auto-mode-alist' if the first case-sensitive search fails.  This
@@ -5084,48 +5113,39 @@
 this setting, *.C files are usually recognized as C++ files.  It also
 has no effect on systems with case-insensitive file names.
 
-*** New variable `magic-mode-alist' determines major mode for a file by
-looking at the file contents.  It takes precedence over `auto-mode-alist'.
-
-*** An interpreter magic line (if present) takes precedence over the
-file name when setting the major mode.
-
-*** XML or SGML major mode is selected when file starts with an `<?xml'
-or `<!DOCTYPE' declaration.
-
-*** Use the new function `run-mode-hooks' to run the major mode's mode hook.
-
 *** All major mode functions should now run the new normal hook
 `after-change-major-mode-hook', at their very end, after the mode
 hooks.  `run-mode-hooks' does this automatically.
 
+*** Major modes can define `eldoc-documentation-function'
+locally to provide Eldoc functionality by some method appropriate to
+the language.
+
+*** Use the new function `run-mode-hooks' to run the major mode's mode hook.
+
+*** The new function `run-mode-hooks' and the new macro `delay-mode-hooks'
+are used by `define-derived-mode' to make sure the mode hook for the
+parent mode is run at the end of the child mode.
+
+*** `define-derived-mode' by default creates a new empty abbrev table.
+It does not copy abbrevs from the parent mode's abbrev table.
+
 *** If a major mode function has a non-nil `no-clone-indirect'
 property, `clone-indirect-buffer' signals an error if you use
 it in that buffer.
 
-*** Major modes can define `eldoc-documentation-function'
-locally to provide Eldoc functionality by some method appropriate to
-the language.
-
-*** `define-derived-mode' by default creates a new empty abbrev table.
-It does not copy abbrevs from the parent mode's abbrev table.
-
-*** The new function `run-mode-hooks' and the new macro `delay-mode-hooks'
-are used by `define-derived-mode' to make sure the mode hook for the
-parent mode is run at the end of the child mode.
-
 ** Minor mode changes:
 
 *** `define-minor-mode' now accepts arbitrary additional keyword arguments
 and simply passes them to `defcustom', if applicable.
 
-*** `minor-mode-list' now holds a list of minor mode commands.
-
 *** `define-globalized-minor-mode'.
 
 This is a new name for what was formerly called
 `easy-mmode-define-global-mode'.  The old name remains as an alias.
 
+*** `minor-mode-list' now holds a list of minor mode commands.
+
 ** Command loop changes:
 
 *** The new function `called-interactively-p' does what many people
@@ -5244,52 +5264,6 @@
 *** When using non-toolkit scroll bars with the default width,
 the `scroll-bar-width' frame parameter value is nil.
 
-** Mule changes:
-
-*** Already true in Emacs 21.1, but not emphasized clearly enough:
-
-Multibyte buffers can now faithfully record all 256 character codes
-from 0 to 255.  As a result, most of the past reasons to use unibyte
-buffers no longer exist.  We only know of three reasons to use them
-now:
-
-1. If you prefer to use unibyte text all of the time.
-
-2. For reading files into temporary buffers, when you want to avoid
-the time it takes to convert the format.
-
-3. For binary files where format conversion would be pointless and
-wasteful.
-
-*** `set-buffer-file-coding-system' now takes an additional argument,
-NOMODIFY.  If it is non-nil, it means don't mark the buffer modified.
-
-*** The new variable `auto-coding-functions' lets you specify functions
-to examine a file being visited and deduce the proper coding system
-for it.  (If the coding system is detected incorrectly for a specific
-file, you can put a `coding:' tags to override it.)
-
-*** The new variable `ascii-case-table' stores the case table for the
-ascii character set.  Language environments (such as Turkish) may
-alter the case correspondences of ASCII characters.  This variable
-saves the original ASCII case table before any such changes.
-
-*** The new function `merge-coding-systems' fills in unspecified aspects
-of one coding system from another coding system.
-
-*** New coding system property `mime-text-unsuitable' indicates that
-the coding system's `mime-charset' is not suitable for MIME text
-parts, e.g. utf-16.
-
-*** New function `decode-coding-inserted-region' decodes a region as if
-it is read from a file without decoding.
-
-*** New CCL functions `lookup-character' and `lookup-integer' access
-hash tables defined by the Lisp function `define-translation-hash-table'.
-
-*** New function `quail-find-key' returns a list of keys to type in the
-current input method to input a character.
-
 ** Mode line changes:
 
 *** New function `format-mode-line'.
@@ -5325,6 +5299,52 @@
 into other keymaps right away (MAPS is non-nil), it usually doesn't
 need to have a name.
 
+** Mule changes:
+
+*** Already true in Emacs 21.1, but not emphasized clearly enough:
+
+Multibyte buffers can now faithfully record all 256 character codes
+from 0 to 255.  As a result, most of the past reasons to use unibyte
+buffers no longer exist.  We only know of three reasons to use them
+now:
+
+1. If you prefer to use unibyte text all of the time.
+
+2. For reading files into temporary buffers, when you want to avoid
+the time it takes to convert the format.
+
+3. For binary files where format conversion would be pointless and
+wasteful.
+
+*** The new variable `auto-coding-functions' lets you specify functions
+to examine a file being visited and deduce the proper coding system
+for it.  (If the coding system is detected incorrectly for a specific
+file, you can put a `coding:' tags to override it.)
+
+*** The new variable `ascii-case-table' stores the case table for the
+ascii character set.  Language environments (such as Turkish) may
+alter the case correspondences of ASCII characters.  This variable
+saves the original ASCII case table before any such changes.
+
+*** The new function `merge-coding-systems' fills in unspecified aspects
+of one coding system from another coding system.
+
+*** New coding system property `mime-text-unsuitable' indicates that
+the coding system's `mime-charset' is not suitable for MIME text
+parts, e.g. utf-16.
+
+*** New function `decode-coding-inserted-region' decodes a region as if
+it is read from a file without decoding.
+
+*** New CCL functions `lookup-character' and `lookup-integer' access
+hash tables defined by the Lisp function `define-translation-hash-table'.
+
+*** New function `quail-find-key' returns a list of keys to type in the
+current input method to input a character.
+
+*** `set-buffer-file-coding-system' now takes an additional argument,
+NOMODIFY.  If it is non-nil, it means don't mark the buffer modified.
+
 ** Operating system access:
 
 *** The new primitive `get-internal-run-time' returns the processor
@@ -5343,6 +5363,18 @@
 *** New function `redirect-debugging-output' can be used to redirect
 debugging output on the stderr file handle to a file.
 
+** GC changes:
+
+*** New variable `gc-cons-percentage' automatically grows the GC cons threshold
+as the heap size increases.
+
+*** New variables `gc-elapsed' and `gcs-done' provide extra information
+on garbage collection.
+
+*** The normal hook `post-gc-hook' is run at the end of garbage collection.
+
+The hook is run with GC inhibited, so use it with care.
+
 ** Miscellaneous:
 
 *** A number of hooks have been renamed to better follow the conventions:
@@ -5363,18 +5395,6 @@
 
 *** New function `x-send-client-message' sends a client message when
 running under X.
-
-** GC changes:
-
-*** New variable `gc-cons-percentage' automatically grows the GC cons threshold
-as the heap size increases.
-
-*** New variables `gc-elapsed' and `gcs-done' provide extra information
-on garbage collection.
-
-*** The normal hook `post-gc-hook' is run at the end of garbage collection.
-
-The hook is run with GC inhibited, so use it with care.
 
 * New Packages for Lisp Programming in Emacs 22.1
 
--- a/etc/TODO	Mon May 14 11:56:47 2007 +0000
+++ b/etc/TODO	Tue May 15 07:17:13 2007 +0000
@@ -594,6 +594,33 @@
 
 * Other known bugs:
 
+** The \\{...} keymap dump output does not correctly remove shadowed entries:
+From: "Drew Adams" <drew.adams@oracle.com>
+
+(define-key minibuffer-local-map [(control ?=)] 'foo)
+(define-key minibuffer-local-completion-map [(control ?=)] 'foo)
+
+(defun toto () "\\{minibuffer-local-completion-map}"  4)
+
+C-h f toto shows a duplicate entry for C-=:
+
+toto is a Lisp function.
+(toto)
+
+key             binding
+- ---             -------
+
+C-g		abort-recursive-edit
+TAB		minibuffer-complete
+C-j		exit-minibuffer
+RET		exit-minibuffer
+ESC		Prefix Command
+SPC		minibuffer-complete-word
+?		minibuffer-completion-help
+C-=		foo
+C-=		foo
+...
+
 ** a two-char comment-starter whose two chars are symbol constituents will
 not be noticed if it appears within a word.
 
--- a/etc/fr-refcard.ps	Mon May 14 11:56:47 2007 +0000
+++ b/etc/fr-refcard.ps	Tue May 15 07:17:13 2007 +0000
@@ -1,7 +1,7 @@
 %!PS-Adobe-2.0
-%%Creator: dvips(k) 5.95a Copyright 2005 Radical Eye Software
+%%Creator: dvips(k) 5.95b Copyright 2005 Radical Eye Software
 %%Title: fr-refcard.dvi
-%%Pages: 3
+%%Pages: 2
 %%PageOrder: Ascend
 %%Orientation: Landscape
 %%BoundingBox: 0 0 595 842
@@ -9,9 +9,10 @@
 %%DocumentPaperSizes: a4
 %%EndComments
 %DVIPSWebPage: (www.radicaleye.com)
-%DVIPSCommandLine: dvips -t a4 -t landscape fr-refcard.dvi
+%DVIPSCommandLine: dvips -t a4 -t landscape fr-refcard.dvi -o
+%+ fr-refcard.ps
 %DVIPSParameters: dpi=600
-%DVIPSSource:  TeX output 2007.03.22:0018
+%DVIPSSource:  TeX output 2007.05.15:0314
 %%BeginProcSet: tex.pro 0 0
 %!
 /TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
@@ -169,6 +170,7 @@
 dup 101 /e put
 dup 103 /g put
 dup 105 /i put
+dup 107 /k put
 dup 108 /l put
 dup 109 /m put
 dup 110 /n put
@@ -207,114 +209,123 @@
 BB33455799E8120D2A4862424AA4A382972E2845E042506FC8F6E201D11DD0F2
 09FAD8DC29C3E12B66293ACBFB13FA0F26238981F2CD52B47A8CDE6DF5CDFAAF
 3113E1A6366B806EABA9C34E5D41167CD10D7B639021FB4CFDAE28CE72A93F3C
-E8929A4BB6D48613A88F926E0EB1BE5F6E29CA5350841244E1718987727B7245
-E7DDE2528073015C64AEE3BF18734A0C48AFF16A354C14E1A6D9D5DC96C06E02
-3A1FE4AF93E8349C3293F62C3466B67D25A9533C6DAA4514EA201B79042CB220
-43B3B60E13200B4F47011F95BA2EF1D6548218DCDBC1B00CCAE375F91EB60E32
-9F1198D74BC3768101AB5F2E7BDEA9FE5C1379341C604D835B50B671793DD7EF
-605F60048FC9761FE50647C15C2424EABDC9AF4257F915282EFF1CF447EA3F0B
-EE81FB67B04703215DB6AB3E47B7EE06435234C834DF84A3E0F99D753D596305
-85DD514BA3C5ACCD8BF6BC804AEA170A32B2080B694CF7FE994228ECCAD86C4B
-CB8B963E84D46ED86B2D43DADB277A79DD100777CB0F2022C8AC9DA77D500C73
-D6E15540121B6D82457096083526C7E2697F776239E02C3E64D25AFBFB58474E
-E82672F2FBEA78ED5DCA1BB4FCD627BAAB6AB50232EDBE99D6CC51A287F80DCF
-14CC7DE3DCFF47A1DFA130CF7F502193C6C00B1A7A1515FF7374351238158B97
-AA26F0F2773E81CD03F4A398BEFBDCB450F0FA6450FD48B5A69E37B036BE5F85
-0F0B1AAAB2CF3098AEF32B0902398A6A9E1DB5A0C42DD39E3208C4F8BBEC0A98
-35FC84FF5EB2293644F7E6EF28FAF5F6E5205029CCFF7342BC276958EFFD7817
-5D9F367C6FF151B12353BE9DDCF75196F2C8C8C889BB097A3D9D8FF5D77A7184
-D9F3EAC4493E94DC73886AFD7652ADBF562189B0B85FA5AEA4CA44558D70A408
-4A276D6B0BCF6ED2F5E42E97933AEC978D286B3D0A99C6C7AB10AC6D1C36B07D
-EA2F47489D4C2A55A6902C665B7321DD5324C6CE172349E5C6561B5F1CBBFD6E
-B5FBBB914307020B218D68C45BB2E9A0BE81C9E8D5D71BC7851CD2922656337A
-9659E8E0A8F240903FC34DA589EC6D1FE6CF17D238576472C0CD1E0EB21A46B5
-5B9DACB6CA3B094E51386E45C506D55EE3AC95AF333EBD0305084697383F054D
-61680900B82CB80D030270CA9C614A373B0B5B26F8465AE581967C6A336D8C44
-21CED60606DF99F05AFC4C37F53D2D97450B78F1211A2682414780DFF7F6AC6E
-750071385D6DC87B58D3D13E286F70B11A692F4BF57BC828C6AA98C44EFE13F8
-44535F79F5458B03AAE3ECEBF2EFD4AA83316E839EF7EBADEA22C17FF039FA85
-498379D857AE78AC68CCC7D1EB2FE84D465AA452F43EC1AFEFE568E42F13E0BC
-1CDF5C873F8E3952713BD9A472E6FC9CDE8DDD9281EE3554C22A0D591C91D3E4
-0B3162930BB6F0AC229EE1C847EC39BF81DDDE1A0B0EC7BC51A05AE93B3A891A
-3FEB85C68C88AADD29FD39F9DB30FB250D41EBB1124ED0069CDC49B3359D8689
-05DCE2A27EFF35751E51E2C4AEA7DC8B2AF546AB58D6BE81DDD38A3A0833AB62
-E54F54ABC2BB67EF06678D0AA3AB0B240FDFD510404D87A1EA75D5005984B7D0
-DE9EE818E8F99BA9FD646FEAB795E5048E0710CEB0CBD8CA39754BCF7957C646
-532525C2B94D55B1AF534778D653BD50DCECF8DFA4CFD08092AA4DD3D8BB43E9
-6F40CE1B0B25287C46AA961061A0AE3714A465E39694B6E62410ECB1F409F939
-51CE57A12C3CB5B4332A3BDEF4C13917982A0A4527440CAD427F1284E6534D68
-201DA7E10B4DC25CCD025DB0D7E0906C59E235CBF747ED10C3300C1BA42BF434
-1A3C9605F0D568CD938B0DEB5C5E8390309BDFA89EFA3E5F226A24910EAB3791
-0361A08FE539B158072E96BC988AB061736F7DD19DEB61DB5738F2B43682C3E7
-12D709F9E149DA4602201AD24F42BBBEDA49118A93A7F26B703AECDE574441EE
-DAF7C634669C0D907B18BF4EAE198E9F3DD8F743FDBDBB2FF8C6650F17115FFF
-890F0FA7B873022FABADAD05C42B65FE98E870568D2CF828CDFF7C1EEEB5BF4B
-5E695EA05518191A5E8D34EB22091935E0816F8B49AFDCC44811D12D3CA85A57
-8C67D67D400ECEBADAABDC5F7D4E1DE4E330FD1A954B925E2A5B1D0CFF2D80D5
-F668367C28480C7EC3359C781279E8928DB03E274855F7001ABCCE243ED7C259
-67D4705EE2211FEF30D8E82F9EA0838B905A9FB986D1DD200524B74EC4B1AF8B
-A0216BBCE594588D8C28A527BC85306960D73D85D96B652B88462881EA065E0C
-84485D21B22E71768A81037FA08C48EA83AEC7118DA808CC62783E7DFB121A87
-0A8DA5BC6AD5B8C8ABD057D94DCD627E2CF3D6AACC031BCD50FF49C658EABCF1
-E6ED48E7B3A550782F077CCE21EFB7368B0D12EDF21BDA1DCD30D523A8B94729
-1E339B18677721963F0F9FF961CA6B065A881546683125114FB8BFBF996BA299
-9CA4E3F5BD5C0D614E2515BB6AAFD9D16E1F0C0409A524D91DAD55BB9630C810
-B1DF32BC5820AA059559A5095BF09750F21E3AECAD39CDB3277D06B78E2A0A08
-533EF557F6815F1C361B2417D27F7D9EFA5C2DB0B2655938C8E9E1E36C411E70
-7D57FD9EAFA6FD2C4D3A40D2F35C176E0522C6D0969A2DB598553D9C0A1940D2
-F3D8241AB8DB63E8426BF19B093D99DECC9E2633FE5C77EE55951036A7E19CC6
-27A2DDA74A95F870306ACF9945AA4FE9E10F1FBC43830B2D817016290E50F988
-7283F8E409B5BD2048CF8E8465DC3EC57EE47A7BB678093183B453FC60A8CD67
-6CE6E21A859B1EEACCB9E0A3DC1AEF41C74FE0E0245587A5E1F107BBA11C2B86
-91690DB7158BDAA3F2D82A820A36B3684CC11CCC4802C5F8135FAABDDD50091E
-97AE58FE38F088A7348D08F1B9A14BFEB8E97D81066D5C244DBDD9ABECECE72C
-6A91E31A815E2B22652F7813BDF07DEF9CBD0E8BB6E7999511289A0CE3CCF502
-14D9A77E29615479657F8BE9AA3EBAC9DD08A04EE7A160A1C528BD6C2CE79E67
-8913543117C32977841E710DCE7C0DAE68888C8EBEBD9883B9F9AF86B1C5790E
-E520337D14F18FB14686356E4F1248B3E884634480E683DDDFE4B0221AF0825C
-AF3B27DC3156F1E0B5E8D75063A10A81A78698BE4E1A4C2F49D2E530AF1ED966
-8EF252D3CBEACAD0394B9546D51768C195A23A041EC1E3F21AC91C498515EDCF
-5A9977F9D72ADBBED88D5E3FFEC64A087FAB9DBDB268608247B977E435E4CE34
-F0C543383384541FF88669E53446065864769D5D3957C64011D7C93FC147B093
-9FA961A60BDDF97F1A3BF53CC18D306DFCFE04DF980F026428E84140542171F0
-F706A48EDEC416DC58F006761686EBA99598962F6E1BEC8E78AEA474CF0AD890
-A72B9906BC891564ECD5440FE6047DB452171AF35C33C24D8A23E41C112D93B5
-F1B422386DFBE80ABBF7BD43F152F0451B7B0DB2D71B75575CB5256C94F40AE2
-E8DB4CABF990502BD74BE028E14C1972E666932E04E79B743B3357737F31D08B
-EB9755DF6C89C185A7F13DA21A6E6E526A9089B11C6BB1F5247E31685B028F52
-555F98CAB929558BA7BCDEAE76F93E7B00B214543EBEA0FA375B624B4553C133
-16D6E2B846FAA862F9DCBD8FCB2A59EADE462BC8FDF8DC56B888C6C5ECF9BBB2
-4197F4DDA197A9405F639643A4334545A8004F05963A05747B4905A319411086
-9A691FF410F400E7E569CF8EA99102A57A569C223B8CF8A4B285ADAEDB238FB4
-5FCCC3A9EB063BFB1F9263D8B31D8AE580B6B8F1F311388B509E224F7E600A98
-DE394C80D1CC6391D45160FC7CE92B0CD7E74B0844DD0F3562B14833A563FE6A
-E5942191AA6BAE176278E9EC30533FE310F0694745C024929A65E4C411DAAF0C
-F3539203284EDADDC1E27FF0EC2FED41AAD7A3CDCBF2B4177647CAEFA2FDD380
-F6483BB02F87E1B66F1F5F8B23DE0ED2EAF4C540A5D392D6B49B0BDF15DEDC09
-13DF0F14E0E49389A82445230CB58704CDF21591EC4E721119F4786523A16BA1
-95F9288C0704DE543FD38496FC59B15143CA8BA06584BE7E6C9F09DD4F207C09
-F2086D39D48B652E45BD2FC4E2C4BC1FE534CC1109E177C7494E0914CD0E45BB
-C8461B6A6FEAC2A2742CB9B3441DB0340DA91F6C6BA5EF79D6363F68A52F3300
-7CF46E9F6D5A7E33762852D4BA13A1825AFCF10B00CF175EB0059D272DBAB911
-30D027A1C1AAF745E0D69B71FB455C1363AF42B7A00B142D9C8ADDF4CE9801AF
-71C666C1A6773BF48F35076FED27423E1CD18139F3D8B0A3E1AE44C55382FC66
-942021B7C1E3451D679218810F816DA083A644A378D6ADEECCC212169B96FEBF
-744AD8C249E092F87CE696C926ED9E61B728674F39DFB645FF5AA6D742B73CF3
-37536ABDB80094DD7CB7D0FC30B6370F8CF9B145F65F4220FA592AF67383108C
-3739E4FD2E0878AF00DDEE092CCD14B1E749941F342701F07097A4DF0EE5AB3A
-B3D9BFE0B1060ADAFA7D4E3392218E5A7AEFE4CC01827ACD6903C2412270367B
-FC75D8C1E290C5489BF2ADE1B3FA6E11B5BCF37FFBC42D0B3E7A7435D6AA7E8F
-62B96A05C15CF7025EE1B0D9CC2580A11A1F187DE686E6F8ABBE658382B212CC
-D9BAB099DD7ED5EC269FF8CAC8C16E101B7AFE3BF9854884FF0746A1B0423FFC
-468342D5D31CEA0EDD7EB5FEEDDB129B7C55DDA20291A18592079BD75D8DCFA1
-2182EB1AB128A319FFB027164B5F9505754A4B1C8DFAD7FF0C892D97FEA8F506
-C65585142BB9F986886117C7CFC66EE962D1609DC1DD36930A6525D1ED03AA93
-282605FCC5C7C651D657EB8ED0A55EE348994C18FF6AEF1D8D669273B6EE450E
-709E6F60358F225E209AD70E96778E8375F41BCEFF74D46D595C0819C85E60DC
-DB702C6AB7E90FEA2EB9EC299FDA15BE8A807EEBEB1BAFD628BB94B1E28EBD60
-B6DAFF828C2C80821C8ECE963DC90E750EB00E3418BD0858AC6595012D32C308
-DDF9F30191779BFD58D93AF0DFEDE67AD6902FCF8C953CF52188311EDD0D005C
-BD31ADEE0825CE1C25725EA2D6C9E5D8D9034C
+E8929A4813956AAB24BE7C20FCF9196E8E2F30816FE2279CE3E6067667A39E44
+488D58BFD17606AE885FA06F478D359A6ECF5564C095FE0E5038425D8B152750
+F72F41B3D1E7420EE91CF4A9ED5BBE8C2275624AE257D2BDF5752E803B426F40
+924CB5C29460BC09EC84F3F3A95F6900836F0ECCF6A7BB85A3F8D650017E5FE0
+503A73644EC6C6B0254F0259F8DD4AB3945950974CEB34521881A2506E76EBB3
+7DBA7812E0186DE2C0AD3E6D42BCA320014368DD738408C54AE2CAAA9C05612B
+E7F33218F2FECCE8DB2E4B3A3BCD9D8D0BAD7EDDCCAE45F6A15FD2B8ED263E45
+14AF0CC7B58EF52D5FE73023EE9DAB8249D1EB3B795C7B42BFD2A2852D2D16BF
+CD71056F412571F41CF7EE80AA916EA4FF1630B1E226F474CC3195006043B1AB
+915DA8A9484B930F1F00028287EA3802DA3C3F99961952E04B736CDEC7768307
+879B4D2D553518FBBA727266F94C3A607FFD5D85CD0FB802CA51E6A3792C80F9
+A637D47C13A787F5D9C5BAC24E843DA198B7CC898AD786DEAC0BA9B6EF955ECC
+72DA3A8CCCF7F3B69597A2F868AE359737A9714AE6D81989B4152DA33095DAB8
+5759080AA156DF1F3767120018CE81D296D813DC52786586CF3F38EE3CE181D3
+9D79439EE13D4E5799E03338E93315C3F6BA8ADC731A0D8282637E524C1E9736
+29C594C6F19B49C859D7CCA98148215F7E6943637797641D44DC9FB8FA403FCA
+BD581E477C7BBDBC84048141760B4EE0D181D585C519D02DEB7D1C650BB49874
+A75E95E6A17D8024346AF3288A32A7EDFFAE15BACD436CC76850F2EAC7EFF565
+C4273160FC5DC7434DB94BFA01D1648421FCFEF66D786CFF60F0031B649B6F14
+E9139B27185E6E9A70E439AA8D68C6535A42634FFDA55DE86BDEDDF3D6B73015
+37C7437A96CDAC620A29942E834F714D82774AED0A83771A152EAC0CC043CB09
+02574AFC4CA006FC0D24C3DAAF4D681CC1D2D7870F273773171A4977AD05A082
+0DF3F50C8A36D7D8AA96E82387AAFB48D048CFAE2CBAA88F1865B84CFBBC1731
+A212A44EB98265A8D4A8C118E038A0C3503B27D8B58846C4F3E8112C8B05A41A
+9F8B0E1513528F5D7E509EE847F7224AA06819954974F8065AF49F21840E972D
+C1B028B541BA1364045E814A9F8FB299B6B62CA150245D92588056992FE6D71B
+FB16F2B42A3DE425B302051FCC4A2AA76F6146BAA385614913D2B11191CA6A09
+BAE8567DCAC342D013C7830A0F03D848397110F021C63C9D6AFA90ABBC2DE4C9
+69EDFEE42C028640F9784E8CA11B83B4E7AB58F8335FA294DD68BA87FFFCC743
+67239D7FF1C54B725D53581832F5307FF1995D8273EBA54372AC82B7D5EC5773
+8F52B55255502008E0EDA0646D4D71137D822A57C0E9E05F3D61B91436B5FFE5
+CD90CABEA89420F4ADD844733B9B0F0C72688B9184A2EF69966411DF2B23A25A
+11F009C6F23E452854B77AA33129C531C2C7A8666D550A83CBA6F251CB016F0C
+940EC74FF62C721F3D854404F431DB39548F0785C5140A9D406C06306CBB0C99
+B7AA0E4680D8DE074B369A7481F0C12BCEDB787A1A9E4C71C869F5022447E317
+E6B851B8D89144BEE028D2352745CB0C081A7E806482F74E7EDDB5F1601A58D9
+EC5B92F7DAD1B462B0EB9DF227D20E2FD7963B11044F6699AEA42D8B6FCE78DF
+F13DF7917F8E9056EF57ABEE9A83EEBD2630452EF3A88FD64BF58135FFDFC5EC
+3C57C10AC6684044FBE557F1435152410707AA671D2B04E6D4C6BF928F876423
+072DCCBED74DB014BF98D66AFF1F2A0C4A725264A36724DE08EE18EB4FCD8451
+2815A6B0CA80C03444039CCA3F6713F0BCD3595E3D6E7F1EAF936C99E445677D
+B96724B2FDB0D2050094229CD7A239C0C72D19914AF99B2985BCFC38A6DCD1D5
+B79A09FC85A955742D9B5C023AD0D53AB5C3EF9853CD74A590441471DE86E170
+E854AA8E23F0F45734B10A87B00F671686D9ADAA574AE633DB6016479D81C5E8
+AE030B680944F4A4D0354BE27192D5B186AC4741E30F887C1FB12D744F3CAB55
+AA891F739CC87B8C9422335D6431CA3598CFAD661AD1C89A5126D0A29707BC2D
+DEF9DA9B5D0AC8BE4425B2BE0C0ED4EA2EFDA1D1C2D4176BF980DC11A7114BB0
+E3F4DA2275D60ADE37E9DF1FF70177368D6DC78065A734EA20E06C8878AABF67
+51BD3758E592B1E389D8266FA4F6BCA64FBCB2487194FEF05914180E879DFEE3
+5EA35A67FCDAFF1887A0F78A9880F2B3304446195CFBDE1399CDC39831D9AEFA
+3C432923BBCA48940019A61AB0464494D29FAC5E6183F9A849D9BAC4296162E5
+A44E1717330C117A402403BEEB31C9BA07C3331BD8FB4BC71AC31EFF81087E72
+A9D75816DF6FD9AAB57C23A46F6DF8415F281F5C39348E8EC540F2AB4BE0CEF8
+87DA88360D12F38130769D0758175FFB61ED8F20C7A17963C4F3F5287D360A72
+4175C45B318A0360CC569F0D47644507FDB4A3699A40662BAD1C65306D652C44
+5C774850560A42157D5507FAC1C7AF431888A5D9BE185AF7772FE57B1F14CA9C
+E13826E6E0531510FA1C8139A365B1641F6EF77F32C5B44AC42BD47DAC9C2FFD
+B99B10700968A44C063B45B96C380C9865667CEAFD8FEC20499966E1960361AA
+0F1D7B9038B27A0BEAD2E4847ECB6787C2F4811EFB5CF7DB92D995E3039C141E
+F17C1BFABE1CF58757675C45FEFF4F7E4B63F10B64AD4586C5AE9219D465BFC5
+DEC3F90DE72189503777D1E382F0F0732DD815B0313B0D0AD6E03A73D0981493
+07F1E96604BE2B3F2B227C038863667E9C58218AEBDD794F2D2DE1AB7CCB8854
+9BB56990DEEF6F7E32D5931102BF059120759EEA11522ECFD8AA20D9E136CB84
+CF6654CF3839C66326D4C926D15254DBB11F9D59A59494B1B794D79E167E9116
+CE9F16C91F297DA655422B05853A72F5E2932725A365B385DF32984364CBAADE
+0A65E573EE13339A505F7B1EA8379B15B0AA01CDDCE32226D33D8D957ECFFA95
+A70BFF143B5ECC595AE58174728DAADEC99801EE8ECC7EB0AF18A056E5B279AD
+B7337916675D3A20A1A45E46FA55F29EE05D38EEC228EC6834F38AC0C5BDBF53
+883BDDE80182B4E8B4606548CECE724AC6BB986761C7618095D4C6B83E72381A
+3E8997C31B659E585708AE8653E011EB837948B7B09E980832BF09A03D244DCB
+A5C89C3B6369C83788E1351F198BEA1F98C36B17A40CF2A6809C8CC43C18DEE5
+CD29DDB52BA4530CFCE4711059B88DC0D16C0F9D6DEEB058A108CE5E861A66B3
+BC088345B3B0816FA6CDB44BD4696E4D80C73EA34DD795A79C700E36AF4E8256
+76D001C35751B85A17E7BE6985D2FF8D697947CAE32D033EBD5F53D059AAD1B0
+D36391A8C6B85E4D2F08D151711CA356BD738888AD8FA88DF2DE7F8031EBDFAF
+CC40496AF010278B4AD4921FCE02A732A26700EDBA79ACAC0DD69E4BC0E553F0
+0357F59B6DE1B76C9E5FA97A51F69BCA3182F2CE60D0A6C3EE3C917237CFAC83
+1787DCFDEDF7851B02EDC8F14D5B40DC05136BA95C9B9EB2BC5091F332C77386
+1D7EC7AFA6BCCB87E8AFC067F45589667E52AB0D469832D209E445CBE57400FD
+1CA88231B2772B22AF30B5958F8703C3A238B4CFF00171D30C939D9500637966
+19F43DFEC9BD39D516365DB22DC53DD20AFD9511F7B1DC92E0E2191558C97633
+C71730A9E91B3E5639CFCDB7FC7C0B07F81AB1B6FB42C9C27C41B6B5B36287F6
+A80CB722E8795D88AA29DE0BC1275CCC2ABC39E0AE1C15BF0E24C94D231C38DE
+B3D706BF3124B31FD10B6D7A39976D01F21447D41E39048655A44FBADE0B5DB7
+708EB8A877B3F9200F0C43CA35D9A51D258CFD34BC1AF9760B1F1824D65C0DF1
+37781D7A4EFDBB1D6BC8C7303054FEFE34AE8545AEF43FAD7EAC8077B8F23583
+7F793569199A57BD8D1891102768BFA56EF238E990F437060C8772324AD54A91
+7BB72EC46725D3684DD41C25A779C6D6FCCF404399A3FD5658CCDCE608EA9AA0
+BAEE911972BC77AD27C54A9805AD0C041F532FE4F387CC8A4BD24FCECF05B843
+87824C8F540396D1AA94ACB3337DF1E135263EB28C18018F019D6A406A506C72
+59B80CDBF79C51B22A5A70F3E1019AF79ACD67DAC7E343A9773092F4539C5066
+2C82E3442CD513CD8B922204F1FE98D95E48C9A165EA3FE44957A8BED940258C
+977EC33FA627584D4AA5016F9F53D5E6C71FEACE09C91CA0FC92EE825D8DAFB6
+EE671B072833CC1D8FCA04874A6F6081D6413874F0008E7DBC9DD88AD374F6FD
+F4083B759031C5D76A11D30A4B99C33E9A5A75317C1EE0E154780A9D3F235284
+467919B60F44685B760EE3062164A04C304B7CED681C7FE0764C4A19CC14828F
+B65BAA2176F3B3232C62F2DD26C145DF814D37056830B08B0FA9BE0245BFA82A
+994A7341CD152783100917C4DE1EC36AA31FCD73F3914BED2A0393599E9A6572
+202925C9C7E55000672235AE2F557416E1032AB1C287BF53989EA541018192F3
+74060BCC8F46E073F7CC001F03547D229B1C53185147FA4DDC2B99A5DAAA041C
+6E8CD64B9BB3AC5DEA2641858D02A79FEEA73F537FF5571A20D8FCC7F18FB20B
+35AD024FEAAF8C2AF17A8A04DCE887681AE02D6184A8A20275E3731026C34E59
+2E17E820BE88FCBECF72CF061B5110C16D36DDB19DFE009F22642AF7D0A42C29
+FA410E4D4F58A3F7ACAB152480BA58CA3415C3C8BF76F9A976FA5DE2111A2344
+D581D2F73DEA5EACA5DD1C4E9BD0D77DAC82C6B407B1726E018D26081D87B94D
+B6B536CE84BDE6B73189411CBBEB50C43E64E3FC2D24D7979A408F568D900EC5
+438FE7EF78116A98E2F6D117A6D9B12D27A96FE28E9B25DB946A3852E21200E1
+2C258483657D525746A678DC4D3726E890485A742BAF318BDF08CAC98BD1C9A3
+FF818252D2F1141185DBF6D84D7C393C50BF90C1D76A8052CEC8FECC7E196C61
+30F23DF9BDC028919D694759967789FA88907AC476B02C9B5E925A5143B1AEDD
+134DEFDB26DA3B3F646FE596690296681FC17F0D22F5A0B1375DDD5ED741219F
+A6A2B2F6D20ED4C031861357C2CA7D86DF95E82B1579D26936BD9A13C59FB004
+33088EDE3435BE982D6AE595BA825F64A82F0D6E84379A67556584DD0F415047
+33B6462EF72860D1A9FBDAB44CE06981D17E0C0712D86FF158C9A7CAED4C4331
+5E4118D8AA718FA6A8D371EC1E8421AB116E893E905F5E352F7AC4057D4C546F
+068E508D21B6561AF9F5651995A9FA9DE2F8F6276722949488E53BD5169F1868
+
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
@@ -404,7 +415,6 @@
 dup 18 /grave put
 dup 19 /acute put
 dup 24 /cedilla put
-dup 39 /quoteright put
 dup 44 /comma put
 dup 45 /hyphen put
 dup 46 /period put
@@ -413,7 +423,6 @@
 dup 50 /two put
 dup 51 /three put
 dup 53 /five put
-dup 54 /six put
 dup 55 /seven put
 dup 65 /A put
 dup 66 /B put
@@ -422,7 +431,6 @@
 dup 70 /F put
 dup 71 /G put
 dup 73 /I put
-dup 74 /J put
 dup 77 /M put
 dup 78 /N put
 dup 80 /P put
@@ -453,6 +461,7 @@
 dup 119 /w put
 dup 121 /y put
 dup 122 /z put
+dup 127 /dieresis put
 readonly def
 /FontBBox{-20 -250 1193 750}readonly def
 currentdict end
@@ -481,253 +490,243 @@
 99B797CE549B5C45238DD0FADD6B99D233AC69282DF0D91EA2DBD08CE0083904
 A6D968D5AE3BD159D01BDFF42D16111BC0A517C66B43972080D9DD4F3B9AE7FB
 11B035CE715C1218B2D779761D8D7E9DEBE277531BD58F313EBD27E33BEF9DC5
-50C7821A8BBC3B9FDF899D7EAA0B94493B97AFEAC503EB5ED7A7AB613EAA9394
-D530C44C3FE66EA8FFB60C9AB182FD0F3F939F2633EE5CC31283CF157B4B8D4D
-F4885866C66360340649649BAA36FFEF7EF359D2E3276F855D5F47A63BA8EBE2
-DFC83528B60BE793381B89398CC5F00F8A63BA929BE36FA5327BDBE8B68119F5
-219D0925E7706B4E90BA28D2F6630A56FB0C73B717A4175EE4484E030A0B56B9
-D0A6E4244E9C27EA03F3F041F5F6138FE0A10CE95492F8505D02C395B5466BB9
-71F42E9AA34E61896DE1837B6647BD578A66320A79C6CFC75CF4234AC6745610
-E8EA4A80A08C87FF834A997C73AED3711458D395DC0509FC4A0AD8C02BAD0A82
-1C4CBA3AAF2CA5FCFC79CC0B2755CB1BD58F3DAE3B802A3ACA5E3E04E5B6C577
-C7CE3C88844C19114758B2E07CC5A3AA2932221EA2794E875E7CAEF35828B992
-66C970DD5FB13C21C787452BA5B3421C9BA6FE12900ACDE16088734FD017F221
-0D4748A96970790A94DB9EECFFF0940746ECC399A614C8B91FD2A46BFE7FC0B4
-FC3716DEB3C23475D8051C37033A8F4AA09F24190BFF65C44767929374C30691
-CC99832736045D3FDC8D62875BFC0371FF64613AE62E07F6CCB07990D44CF2FC
-15584D20F6FD2FFD9390E7C4E04DE67093A7FB7ED9DF317FCEB909B9E3910CBC
-34F3C7870FC8200DCB0EF4F0BCB8BB88DAF95FC2C5BD4ECAB0AB0DD5AFE65881
-8EA6E45ED985DB9EC02ED4873C8A61A6ECAC723835822AC111821826F894EB97
-B24CC14F23899C6308B46D439228ADEE575D8573B75262FD39778711F255514E
-B0089950B2D5E4511A505BE441AA0B6343986C5D47893B9F2EA8E2B0985F25BB
-F101BD6DF9A1C8F911AEB5C80476F116888D759C7F69C2CD17A6B6E13E2047A4
-97D50D6C7F064682B6062F51CCAF91AEB28C3D1A27D00F1506A5C5E424B7F9B9
-F61C5490109EF8A1024272CE56DD5D628366E66338F9F41C1F7374F3C45D1702
-C4B76468B7343E2A999C0C3D8E7C98F7EB90C9496DC1D929CBE7FB546E9E4BE6
-2EC6F77921A2359C9E61F3CE84BBD3B17B223FC3A0CA8DD41536CA5BAD70823C
-C215305F6E9500FC9650C26BB876966288E3BFC6BE74A284D71D7E573FEB891B
-932E310DF30B91BB20473670AE22D21BC21DDB40AA887112D92B04160329B176
-A5948E6B84594FDE8242BE92EE065CC3DDBB00A58009C649B5BAEEE130BCDD1D
-B9410289F7E4B477F52CE4E97C552F9A8DB5D573FC8AA35EBC7FA4A3EED00540
-F81650DE47117E01F41B7DFBE4945ADED1AD195D4E39F91D63E824100428CB42
-C7A4919B154D1EB79274C476D89553434CC1236E64D2070D24432B4AE25F346A
-C36BA7FD43EB7D4C826C4DC20C384BD67829CBD4696DD17040AC41F8E941DB0A
-95F10349E343067E14F3CAD6C2602D3761D445F6FC94BC2725C8183A7B9B63E3
-44ACFC71131CBB44D872AA9DD609402A03394F9164044005575EB84CFE261812
-70467860A055806E848E01E0245E35EFE12505F425055C32790D2CF475613683
-8B22770A58F3CC356ED3367990FAB109806A5F37A4706DF098EE353F1A626074
-84295A5E4D070E690891DD216B55702FC9A222B5C6000648DE1FD15CD00F50F4
-EB0F28CE7E4DF26A9F5AEA01CDEBFEEB7EAC3BE1A8D2DD9CDBC9216D9CF56C48
-634858C1013AE01F60A19D3CF9D33F02515E1B1A0AE0CE5F49EA2355783E4A03
-3C84920E68355C206FCAB59A91B45DFD25A3D965D2853230579E16526715588C
-1007CD787D72F52C3683DFC7D755AA5820947DCE4D401302DDE4CC46767992D4
-27C9F753D3AA4E52A7DDA0928F2C5A805DDD8D0A8C14254836EE24909DBFDAE8
-20DCADC2931C7AAA089697F00A3F25413FB841AF905C8FF3116BAD21913E3EB2
-9CF58D0FC5AFFE0F08BCF2FDD13684310B586532BA479346607D025C7AC53721
-48751595A910CF11AF8AFACB10D7EF7B8A3B80E4A1782108BB24E1279022F59F
-24828A6B5EE73140A9D1A74AD774C3F4C181179A012B726A922E5D54AB79D5C5
-958344AA47437635790F7B2CB59B9191BFE0F6FBAB28CB78F506DA2A1D601F44
-98BEE1179546E2FD11591B5D50C0B1101AD8B33D4E54AF2C15DBB0570B88AF7E
-43944C5D8D05D817B18E6F41C7E900B56A9CD196D5AFA1D715CEB73C07DF6EC3
-3BF7C9411140B544A6866AE691F55E94A72E4FFD922A2E08FD4C183A5693C355
-AA485656735C842D353687887D59EE375080A61954F5388D52739A3248543220
-1555FCE8956CEACDE634684FC3292089B1008290797B6DCF9F8C7B89E22430C1
-F2C6DA1BF663C05B3BD7DDD2DFF7B6092E377517890C24F08507C9EF29B11F39
-C9A989EE270AAC39C4C12B1F8F749D6C67EF7A0E39EF5D7ABD889F4579CD6DF6
-6EEFB8C099A9087B79A66C3F27C01A12B6692AF19029C257B4C5788BAD3901DC
-58BE54AF112DF564E16E05E3E1A5ADAFC713DEFC4DFCA8203866D95B7A3A7CA5
-0D094D713759132E3069907BCDCC1E411F7C5566D25789F8ED8858FE86705556
-9DC7AD84C8A5F71C7BA386E8E3159927E70616ECE077D72DA51082B08BD36FC2
-25E0678828BAEA91D699871778D34AE22BF05F59FD8A7B7B00D2984AFA884DE2
-EC201E75E02425AE70B432BC1A13A611675A858EFF58E3E10BC679A9AF72912F
-7A3368F44BABC0FC75D32F52E10DE61446C058C83499133AE468281F5609B217
-8008A521909151B53A0802E8C0AC992C7C3BD31E86C9AA2368AEC7964AC23E27
-F5136D4EF3059E332D19121CC95B77E4A40235AB5C3753C4012D62CFCE894094
-EB5D7D7F576CC725A6474C96263384B9B33AEB121A9E40A76937DDE710DC0760
-414F2167C378C01B0124E9A907427EB4A13B8E41CF82BDF4B16E030598B06120
-8F8ED0DEE7E7541B0B5AF6FCE95C20FB7179EF0DA411401E4BBA678F132F60C4
-CCCD0CC45A6B3A3DBADA100D3D24ECB57E3209DFF35ABD022627249C2C9C3971
-86154EE0189583C45C14A3DC8DECDBE168FE2AB8DB78B0C7F5971D670A51B76F
-48B5418F89383F1E7CEF08BAA7DF462E573145E3CF27B28841304DD743C82AB7
-CF134DB64624B7638A86BC077AA3089500749720531713E97F69AE7C908E0387
-890C06F7F621CE571E4367C83EE44A1A7A306DF62B5B1F0F08D4F682507A339C
-C36B50F2A0C9AFC456A09AB0953A983827CC570C3FB08317859A9BBE8167F876
-A744DB4EBB7746FA16ECE4610055A35A08696A78B27B9198366FA2A6206332CE
-C0CAAFEE4614B533A9D3BEEC9B8F8C13B475657AEF597FCE507704675EA219DC
-B350AF6BA3666F18CAE2531D78786DDCF57A4F4F12D372C9506B8944DC003A45
-A1149BE50F318CFEB619CF277A387623DE238A4A856BC707D19599FFDD1DE0B1
-D5062FF6DC6C279E117DD53F8C642B7E0461D36403A86206442410EC08AC6BEB
-9EF318CFC9B16DC39BC254AB31C3D9516187AF81B5A2588A8362D982D50785DC
-BE4EE2CC4E331EEC9110FCE8D18D262AED1E603825B546027D8895A4184AB49B
-6A1471592A7D7982F88CB3729D88FE543A460B3D22A466CC890007379E4010C9
-9B44A45868C1515C3F83983B9EA396A0A3079DB7F3760F5FC65F20391BDCDD25
-6FCDD09C0201E57DDA12C152561D3B6D8D467A15B9B82D58554164E661591D7F
-604ABDF37F1860FC2E08521391DA3BB2CE14AC808E18C9679B6F71D2C39F9F61
-906FDE8114D1B7651743336ECE541C9D98E83BD48C9A42720625562E371D89E2
-ABF50E925BF879BC95D5831C5420B1732FC1329CA5508F7517D819510E7D75F7
-9ADFAEC110ADF216B532B7C2F3EEF1C79C664E3919B693A8B88B2C4079A3E222
-5A8AA36205B087734FFEAB10D1FBAFA1FB04CF10A269C36B114EE2325E173207
-103312B15D3FC60CF8B4D42F46FD36A4CDFBC6CEA9E1967C19060CE817338867
-C7C27BFF13901E44329B80EEE4524C4C306C7B8AC2E572C5002C2EC691CE79BF
-DCE16EBB1992B0AC8AF106000DE0657EF6833EC910AEA5C7E6A5961650420BDB
-407F15C8800EBD140C5A10A94E10926FCD387A35DF2640F8228164FEF3598989
-640DF5ABD9A6ABC6A502887CF943E7FF255B43C2E4B1528FE6D9A70B57BA1F8A
-FBB59E079991468A8DFEEC37A4E57B943696439307D026D7866EBF4720893FB3
-4077A9783B054DF4213189BD10FAF1A41203634D083D7B2C10880E6DBEA9F551
-00976D8A89A480B3B69C021AB12E357708162ED89FA44DC514FF9FDD08C783FD
-D2E2B302F26DABA2B9B0CA6CBEDE960AAB60482BD150A4A8C536F9A274F2F317
-288E371D40745D9B37E0BF1EFC4E4387A161032EFAA51AACB236CC0F72A15203
-5570ED165D3B5664BD7E22985F53A9120826F1B6B32AB78B4D58AAFD958B3C9B
-0CE52F477A86A6C1B342D1CC12CD6A8657DAD2DE07FD60C756B0DB678BA8627B
-718C459399C34391C94326407BD44549F6E6BEA3097E796F9D5567A74CD3DD06
-CD66C78C171434C4D8D071E6680047206AB5B0700B8958D9990102E6F4201FFF
-7AA8A4F9F268F2E563E0A84E3447C5E7AAFDC681BB3ABACF428B39F4DEC69E87
-709E1E587A9291818C94A400AF2CBD3BDFE018FEC68FB52E8AB97384EE700D45
-AEDBE0A79875084452956D3E8D08695D5CF33DC65A08A2E0CE49846F8D658B1D
-290B6590590744C3BAA07B6ADD4495F84CA5EF2068564BBD28EF31E99B3EF96B
-D4DA128EBF30B5E71287EF4BE6F11F3968A6AA9FB8E039024BECD94783DEDDDF
-3E502CA25E421DF43503147F5C40EA9F64B43EF05371D7D02CAAE4BF9C3068C1
-0E4C121DB30233561855CC115A2F1C71205E13044BFDEB88A9A26FA7DA776760
-6F6232121EC7A05E952E3EFEA5C9BDF95544F47FCA6F9D49216BC1E6357FFD14
-FE08D4C9F858511333BB1391778D5F8EF4262236A3121E7CFDCE346A11585A0C
-ED8179AD3523C567A694592DCF7A738AB11BC911513A9B429070B632A5AEED18
-912DD44E8A951515C25DFEC549FA08C16DBE0C080A0741BB722083EC4D728B63
-51EF23AEA4D15015E4803F8B38EF5D7A4DA5887959AC0E1EBEBFEF3E7103D66C
-0D1C944094B48153CBECA0CC877300D97CFC241FF4C5BE3BFAE5D9DA8BF64E3E
-8F8A7124BC2A8F690503275CFD9754298D6401ECA1CEF653EB7A8BD1E8C27E63
-09797587800F513BB09F4962EFD8A548938343FEF44114E632D7D9F305FF7D9B
-B043B271955E971EAE369CBC1A569B673C636E1F3E8BCCC9A7EE73745BB4F6DF
-63E80317AE5FDBBEAE0AB05C5707910CD183CBAE9443A82D9C622DDD8C77E236
-4337FA68FEEFA8D6ECF883DC485FCA75F79579D2C3C40CFE131BE8A25BFE360E
-9BF74B6F008041D1DC288BFDC72E7554B9C35A05C802FCF91842CE6D16B35A17
-E4486E436A0C04F7D291CD06E87C7D581D4FA8D93C12F5FB46901264DF9A8491
-065D87BA1A715E107954E99896F46315CF212205CB224C91E8E67963D36AD1E6
-1A400BBB3FC39A1B94A577FB13B3EC5D1DD8D069FD2B946E6740D21D7FAA834C
-6CA596D24CF483EEED47AB8C11BF7BE8C186C112964DC28327C204F27B5242B0
-A62860BA758A6F57287D2F8FAFBB95BA694434C5E712A61AC48AA10792B51530
-7B90E890483101DEF6EFF5D6307CC24DB5D29CFFD204D43CBC41F30BD1940C80
-6BABE56764FE8FB6D14DA7B521255BA7A7FB773FA937D0A862892EFAA8713541
-4C18EE80297873AF7194C73C4AF15EDC9E394C7BD1E6840009CD40D880287C33
-D21082789DAB3E97A9A1CEB69139DA7B1195286914CDE1568CA47BB86F33DC32
-AA54AA2A59002F8E71E6592674DA1699E70D1B47932F068278B7B27D91703059
-7D85FFB3B8A554577E1C6DAE72F6DEF4757F62B9C49B070FCF09209BF8768C44
-D9C410F015DFD1E06ADAC5D886A2C887F83AB992FABAD38EABFC4169369BAE6B
-0B2D01785F129E1774EAE997A399F025C8C4CF4922AD2DFC9ACEFDB302791EAF
-D49F3B69B612A2B62EFB321E9A19406F021A514E6F503A8D0D9E349916C2C170
-F000C0F5C933396F8083413D5B5AC0F92E2FE4D552107D2DCADE18148C5CF45D
-05CAA1F51E0E00AE0C0C947E62A4BBB46A1797E3D734CD825156C60DC85E23D7
-902D68CC9C70611B37BB0EEFCE4940640D53599237EB0553F689791A736B37FF
-2F80A46C8724829E24975EC26AF48B3B1635BA37FB93B11B5B1663FDBC3E57AA
-1A741DC449EF31C1FB3809AEBA79424C2A96FF0E7D8772FEF6DC790177CFF682
-8F3825E325A61C9FA69E48BE691EA1D0CAEC56005764DFFFA6BD28BF4CEBA8BA
-9937703BA66A82F00AD51ABCAE57A0889179E5A8C4567ECAB71CDA45D2F466BC
-2BB9BE3DC301AD04C989EC67B9167136E38EB9B7BDEB8FDF84BF10AD349FF6D8
-ED5464AD98824105280822B9284F2AD285E05CADD239F64E32777275DCA340A6
-9DE9E99C12B97B9FAA8CC225419661542EC0D6D9AA8DDE52172233EE8498075C
-1F2DB1CA96A8B97209B24CA18F8D65D9D0AC7281EED9CA9035FC8DFD1B956772
-5DD851936729D332D4CE9951F7CEDF50FC5D08C56F4FA5EA38FF38C447C01ACD
-A462C73A1C726563AEBD55E9801B32586958C727C260A5549BDC25CE2B98FB38
-BC38110F20411E2B572E79552C396BEDE7230E9F677477682DD5721FA789C4AD
-A524A520DF586772C6406685C5FAC5F8C090357F38B8139DE9D4233A28574BB0
-B20E85EF2405FC38C69378EAC55C8C2A18E7CCD2DE3F6A2E884CA35AC561F9E5
-4055C29334DA2A5F4486150C1AF0B131DFFD78F67F4F286E796E82C723E6186A
-6256A59680A162BAF502C3D06BE15B567A9FE32D3DBA21B4F074A3EC20969D9B
-102E64B8A37A238025DDD2147731924ACDD2E7F2985DAE32BB8C6639B64CDC8B
-1B3B847B7E0BA43022F9212F6B80A6C1E0F00C4FA97E37F3BC26B7CFA0D4A511
-9330625B616C314F926A18D5AA3B37DFBAB3F1571CB4906FAB3293C24BDEE506
-07A5695CC3904127E4291E2F19815D7F9C53F5CB1A02019257E68F150513B75F
-188CDD36AD1AB18823951F5237A599B0CD3ABE320D2C2797520CF4F51AAAEDC4
-1169B1AED761B16A25C1A9423277FDEBC3373497004367ABEBA3AD233FC8787F
-92A4A4965BF5FD4F5F4EEDA82EEA3BED70B0E5A9B0998042E30AB0425216BFE5
-8AD806CA26F1DA26B41445FD9690E6E04A86D45E1E2CE22E3229614F9C07F585
-F57C2CF04E830EA2C8ADD6E126C124F459D66A1E575E7ADF7C5963FC3FE74643
-F6F60133CBA6ABAFD3539AB858BCEEA803D5260F0DB6E23D7D1F0EC2FB47A98F
-2A9E327B415BEED3D0CEAB1A2737D36C2E3A3DFDFBC0D75A9A2D251930FDFD5F
-7B9170FDEA176AF97EB70523673A39C1676D113EC7F0A760FABD6D939ECD02A2
-8609EFDCDAFE070D0526AF58883B9205E11BB726259FD97E6AA93FB05B296080
-DEC8CC8655EBDCCAFB6BD42F20225EB34A8CE6F881C0600B63AE58CD3E91927B
-705262B48498E76901EF7CD8A4607FD7A8BFA4EB14A3A4E78439E074A3CD1B6C
-56C63FDC56C2A29E1790A354EF0595657A022E686C0BCB106A432A242794C869
-3B468E7DBC9DD8974EEFFDBEB21AB1FC4963E9D70B7F69B62F6847628CAA171C
-E86C0D589BC6F584C5A6035D375D215FCE2DE7E03640BA7F2983C1FE2EFDA675
-44996DDE255EDE2E0EA1EA461B178B764066F0738084D1DC0A717ED3C5E002BC
-18FC3C6AFC5F415A25AFAFBCDD5E4E304EEB56EAB5448BAA447EA9B912B725B4
-CB0E3DCCBC333C7F0944545CD7C06C7927F2715F2C32EA4861FF7EAD682D63AD
-6FE869229940972740C078A9B14D5DD30263F690ED7C4AA1BCD48546467EAAEF
-53F205D24EC5A8185B965725E433E6B1F9D829D09D3E32186D7F069B05ED3536
-AE371CCF2A86F507D775CBBEB073703530EB9C13ADB6625AE485F47FC5842D64
-79074FEBB50E803F77809076725FEED43D4107B01B31341D32414FE87CA93A23
-2621F7264FFD3EF958CE17087C76C8EA88C1D8CD651090F9579C11584B59FBC3
-4339692A52ACFAFB71F8F9AC7445AAB7D6EBF9CE4E6D5847F1348B84DC01EC9E
-14659686F6C1F9C4DDEFE3FECC758F22B62DE54BD2CE3199E7B73BB7FB00D673
-5E6CE00B063FA54833E574320107613502A20B188A7649BEE66022EF48F02370
-659D37403C1D2BC66235B01BBD898C085F7BA962240C83ACA240289A57D14FC5
-E1126951E7D4B3585A3BD1F5CA63F63861F203F4893B95ED75102449DBCB8C9E
-26092452809C6C55B1960CCE65C5806D5B1A3CD8AD1209B7ECBD45B2E663C318
-4F47A682A200A866D62D909D4A25F4B1E4EC07DB0EF30AA950563BB52B201080
-BB6F6CC7BFF7BD8D5AB947E975CDFF7EEA4C234CEB57ECFD51F712AB681C51C1
-CD440E61A48A339F7BEDA750C7986A870C53E1A42B2EB9575FE127A4344B2F3A
-2925721FB1C840973D28C3E490DC2DFCC50E7D5B333C486E8DEF33A08902AC1D
-1AD15691AE5C308DAC6E9E4C6DBC8E91A0E62CE7553F7EE677C236D5FC2AD64B
-93C61D22E39B21A94A5FAB0D1159644B5895C7AB28D67F04158CEBAADFE921F8
-708DF7780BBB53353BBC356C5A30B1311DEBF3032667E6F58F3140B500BC1389
-2E268107E7A2DD447287EFB49812AA97253A993E155A0A03F8C59ADCDFD8E677
-568B69CEA669882833B1E74B658F756CBB2F8CBE47F5EC60BD15E198A3C3F600
-3CFFF12E11F7C18A38FEA39D14D2B2044702AD28B4841B7CC4DD5FF15A2EFE00
-B7977EBC290A82EBE2382DEBED2021151A954B2416BFFC75CF127BF2A4AFA2F9
-94CD77EA8F7918AB471D33AF1EF480C7C067FDC4CB8122C6F55C1E92E7AA0197
-82C1DE1C0610903A9C8A4A6B4217AD559DC4E33A0E8A3801CF31B0195AAB7D77
-751B357EB2ACAD4A52B06A0DBED89A2FC0428CF99FD570B4E36575A35AED7F28
-27C14CE9DCF1497EF8E0D0A7C58C00B1BD12F76B50FA3FF98774F0EC9CF92717
-02E79D948D45BF5A2FDB5B5956AB31C2833C381931C002741B669ABC0A20DD35
-30F4CF3D0307D145E90DEDB9275E6B892BCBD22BCC95DEBCECA270823233BDCB
-85E12C13C7EAC5590AF06926CBF83EE4E37B98D1105F04C1BCFAB78848BCECCB
-CEC7067C7809F30ABD4AFECB1B88AC31C769BCC3FEF5F1F503A1EB3DE899E58D
-368B0A1E545C50DBF0427A9CE238285870A5BE619BB212EF6EC7E417CE1A0FEA
-DB00A94FDAE477DE1F39C91160292620A5A6FA48594FFAA1DE64121864295E14
-C4D5096386C52F99094C2002476C5BF383BC0C55FA377DF0023BBF3F52D27620
-2F22A07F251551E3A31E53ADE4F5D5C9C1EA12720D95C6A0896D87FE2E703B46
-3004D91E86F41559987DC5763EAB5155DB1F8320266A405A39D6E274A3D18C11
-40D21954A786789F673BCD0FF0938DC68421A2BE201DEBE3570BE1DA4911BCB4
-9B219582E3628E1C4FF88262898D160C58E9D0D5A86571CE87A0269977745E6F
-49652DAB033108692C9B1C220EE07F72CC52BAA36BB1D7209B1A11B2CAD3CE67
-4F14B87DA489C2EFFE0E2DC1A2B6B05A8660D5DDE1089C7E7C899F2A528A6CE5
-A025BF973D8959EF4434D2C70F77D826F85009E5F909B88233A8CE812A5960C5
-05243F44B5355AF815A5AABA6511F5F3FA2B29F37A4E29EE575845F7F05BF087
-5B3AAE4637D0A6908A5086756B3BEDE605A718F5E5B47520885F283C0AB28B0D
-9F277CE965E22195CA1DD4A75E4DE0597C374FC9A0343BB87D675D94EF9D87FE
-89ADF37F61B9168047EF1A2234811CAAC507F27235E4634CA4C2B2999A575C69
-3FE19422C170F8142F3DB38AEE76D1BC4A8C2328E987CEB840CAF69CD0F0007B
-D3516F7228013D79C891BEEF835235CD6920FCC6A604648570277F104287D6AD
-75511E5D835319E1933FF896CBCC559A5ABF2572C430B8EA62ED314DED16C2EB
-A5D66CA97EC43FAC0520A3295650C1739D91539C99169A3592BF84E8BB378883
-8B3DB2BA623F01524B180118CAFDCBEBBBA3A760BBBDF2F7AC62024B298166BC
-534E7EA23642DCC4A800A0D605D88909C1840DFF31E8E9A20EAE691E07010C0B
-7C4386507038CA310ADF5A715B1525F796BE864DA5E0B8CDCCBD595D7E31F9CA
-2E85E80D313BC9DBB3EC41C8FA1632F0E75F63F137FD5BA01BE67A440F81A72B
-94A1E913CD4474E1C77A3E6B81E5F058BF583C6668A65082F60CDFE05691ABE2
-4D10B4D0CD546BA8638574A24841BD606BABFA018FAFECFA2F5D4293373315C4
-83E6D6B36B15D2CCE993C19AF2847C459A9FBA9AE47BAFF41CC6D3ECCB692860
-7C1EAE7B393C5690B72B5D4C6B2FAADBFC702E026ADEC06710E7592CD05E3D72
-022A7E117856F8D4644122045C1478728A48CE386D9A22F2C653C6462D833ED3
-DB934E4327E69C9A625200E215FD9A399779DCA7584ECBCD0C4C30E0A7DE7EE7
-941B838664EC4DF49B1C70D36BEA5FA0C08EC780AABFE652EE05C088B4B59BF9
-D794D627FE660D813FBA76A9B13A216965C8D4ECC31F9CC72FF1DB04F55BE4C5
-9312C84EAEDE62E6C9BDD074D38EB7147FE6645597413E8AC10340AE96D4E84D
-14FBEDBB96EC767268B7F0D7F17FA69A395E7B088C43CEDE2DD934B96072AB36
-BCCA43FBB6596791FE9EA006FFA4DC3E28384A124D5C5E1C1640164559FB44E4
-DE5B1CCE7962008275C41EF90DA2FF73BC92D37295DA4B47EE7663AD3FA3081E
-C6541F337A35F616F831B5BAF3289B2E6DA16960DF72F1F03F19BAEA35F8400B
-A1ACE52D96A11FE3A368E476C5BF7B5466929251A08ADAD3E2034DDE0B9CDF8C
-24B1B614C42EBAEB492ABE6667249F53C35D655D4536CD086258538A407C6394
-BFF608509B387040144662A2C510522CDB60B1C44C826FEBCA5ED65FC5B9992F
-7053C423D8E9FB4B2A92AE3E373AF9F979080C4C40F2B581A83FFA750C5835F4
-17F6630E3D98EB28A37EB425F1DCFA27F4995605A82BD9F4C3FD26A2C6692B6E
-C7C3F47741E0C8427FA2511D5FDB08F03555E7D4B2CFE592EF027D7FF58199A6
-3C8759C332C66EAF33156A1C3276053BA1F5052857F1F01F5147EAA70C126912
-9D54B91270EE22DEACBFC154D028F612E7D729ECD5D4811B3B648E4A13112FE2
-3ACE506353F913D55845453B85747DB452F0CC59FDF5220B5EDE973D34537180
-753DDF320DCE92FB09449F685AF03D72F9964F
+50C7821A8BBC3B9FDF899D7EAA0B94493B97AFEAC503EB5ED7A7AB613CCEAE69
+BDDBDABC60BF16B61C044A68AA41968B22CEC6F3EA7B0C02C44ED2BF3957ABF8
+B03474ED11BDB07B69BB517CC6A6953FC1732CEB1D4BF5B6C27F30889B4DA0BE
+B48781C7C224795CB655BE03CC246E4366C918F4A1B8FCB49E85E299B923E95D
+5711E49455770726136CC449420520807FEA21FAA658A4076ECAF1B065107CDC
+ED0BE922F22A283E1AA2A900CE4D5F55259C475F1868A7889D46DE0D8E0F17E9
+14175EBB20E16D9E5B3E1CF776F28CE5BD16940334685862F9A6EE0B828CBEB6
+EED4F34ABCB56E7B1D6F65C94D74F286416836E5B4C1CBE19ADFBEEEC3FE7CB7
+21CDB89A4FA18C33B7E215591250EE5F5FB888624010C7832CB7AA7E088C7B61
+8AB01AE7963B2C511344B963A60C59542AF7D88096DEE782C9EA80C670966208
+020786A1C0D0C845E08ACEA8F075F85394D3D923F49FCF38639C1FB1CA0BADA8
+FDDFB7121B0E367353D6F95BC523C08C8DAFDBDD2B0FC9230A6B7DCE6CFD27D5
+DEDBD0380CB1F8B0C0852336BD5698367C6F8A32088299443570141E0E09C31C
+BFB95FF1D599611E27A00328566920B4C2006BDA2CE24FFBDA8613B2C5AA62B5
+BCED045B3BB89C5468213D249D7B287EAC7A04C5A0F14FB9CC9ECD8A62083EFD
+D9BE224860BC3044FA07E1E2FAD367C545DC5B73E1BA876520313A3A5D193EE9
+1B5B27FEFCB04D406B3212105841A1339ABAB9B0B0767608DEB2ED7048256DC5
+B98878CA93CAD7990F658A2DBA54048E4509D27BFD48032D93AB3765955F6D55
+4639275D229FEADA618AEC2239BB1DCE56D1A456EA658FF3D7B322F8266ADD38
+41B08B80904F650229709FE189C98071097143B9E532C3DA6BE556856CDE900B
+7583AF6C10CA85699B2447C2EF6591D0FA0074D810AA328170305E1F3562F2A3
+4538F0D0C56245C11ED240E316DFEF64FA1AF9C0E64BC86782F59DEECA197B4B
+EE38625921D4693B38B343466F10E4C9E0FB3DBB8CC417FA7696AF9603F732DD
+7E719B6A6BBE64F4FD78C4873890D867236D82E35ABF102129C9C9DCBF9715C6
+0E969DEAFBF9BB650B321CEBE6253183C2EFEF6B6BC28EBB6F28AFC57B22F83F
+AA928A5CA96DE41EB9B33C6297BC0BE1F63472AF7CC02721C31C314C704EEED7
+9ABEA57556FFD2B367D262950D0BC885F1FCC203C5833022484B72F5C59FEA3E
+8D2738B923349F0E44828DFBF4B9068C9DA80B141EA7C9506595B0A27A2DEF90
+EE785F8AC6F0629824F2F2585D22E6928304DB7A5CC8B3F5126D3EF00FED1C0F
+1AEE437ABA4200200849E5FB8A1B370B0092F0124E30A1086EFE05D0E03D3905
+A058FF054D2F6454D784BE414301CDCBF4FBE6E340A7AE8ADF3063E978C31686
+242E19A023BF5B0F5744E09CC2E855007C264E6CB13C9924E523301D7FD51D3D
+7CBEE8C1C4095007221DFA728507A079B62986817369E9A91D0221160A3F452A
+9B827DB0B0D5CA1C626CC7844BFD97C90F80C84AAD4D34A0AE7C75DC019A0E4A
+33ECC7E9F6B1F1678B1F0F3AC52DC46B8AFCD6C5FA88045F932CACDA8FF33598
+EC8066C6E997CDBB4613917C0B4043F8A481C62E18822B5C77A2911A8FBAB2BB
+3FD35514119214174C4DDB4CC6CE20BBE8B077A797F123B28EC55FAF52F65FFD
+B147280D82F362F1AC431DE0AF87E8A0C307D7B5E978340B606689EE5C3C8911
+CE65B607F02778A4BD54984EB3924420B0FC9D624B7B7166B455AABB0AB8A7C4
+EEB2F66A95DD2E72B249D83C84C3075FF365B26DDFB7AEACCF2A048BD8C80C41
+88E415BE80BD89F313F72C3BA490A720158607A71BF92A3885116A8A303B2121
+293946B1EC5A085F034E66B1BEAD4B859B733282192393C6E3D4CBD194153520
+FD429BFEF266BFDCEDF8762BED7B9F1E6A11F41FDE053DE22AC9F664DF870C30
+2E0089EDBFABF28CAB55B4F7B92C22F0DF152397107C2AAC18C9F4827AF0D2F1
+A1B1F8626AA8E6C52C612914E092E8C3002D25771522A1B37152CDDA553C1F2A
+44EF83429495A940A14DDA3E42B5CBC5AC55E652A7CD43195DE8803413A6E11C
+16342B090004266C7126B9576F68E071EB211BE824A154889F4FE2DED93896D6
+1C818FC3F9ACBC28D3D2CD47D94F685AFFBE83C045799F4A99C242A449A33CB1
+1BFFEE26334ADD624111FBBD9A4DA9049555FC1D05D3759F1C83E7BAB71467A1
+057064C94135C618CA08D98EB11A42EF8E4EEEE6BF436663D6C2173667B3BAFA
+77318803FA93C51971978661B06AE62F5A9C30C35F2E6D05334F0AFD94B9C84C
+9176E7DA1FAE09CD214EFB1DB44649474E3EC965F29ED5709CB721A1A17290B6
+B2FE92E7DA02FECA17A70382FB1970FF678BC4EB254638D9D60314C524AE5A74
+22AE09222246FC45237EFEC7D8E151CEFC63F734A626D896A47828940E76621B
+C4D734BBE10C116774A7C2E748AC2A893B34782F3CD9EB0C34079B72A170DE68
+8C56D67458FF6932BC6796BF521668136EDC5A4623B55F833E963D9AF91C697C
+85AC71E7DAECA138E9471C8535A8409122C466B7CF6F5BED3B154D055B79AB5A
+E8D5A6D4B11BF71B011265E411C2FA0162AEA0BDF7FF68FB60DFFD0E0A194E19
+B89E8CACEC175F92DEB8F634EBCC667CFB7FE47FFACF66990EFEFFBCCFABCD6F
+B675D4F8D6F870A595CB4F95EEDEF12BE1220BB16D798EE58A06F7AFAC00300C
+29CBDDED9CCC72972E4ECC095D5F2E0EC1890065F34A848491B128EB73F86204
+D5078938337EA05B8008CA3E57139408FB0B39C057C1939B78108F4C75322107
+79BD61078C393A7DB042F0DF344D6B0A8C914BF8829A156D1CDDE51EC65F6B7F
+A54828C7A71029343EC88D8CE8AF98DFB1B640CB1A2AB22C7721F72508D2179E
+667C8A5CC87E57E07BCF5BEADF7A8B836B536A83BA41D3D4AB541312D45613EF
+A083BE7926DD8BD006EC08FEC6D53DF6A281C79B82E3C5336B165511BD6AC6CF
+0621414F9F61863B5D147934BA875488FED09F1FD9867E35EEF0DC61776B0491
+B7838300390E43B8C7144EE6999D1EC1EC9188A9AAA33E5B67A1DE83552980A2
+359137C6A689F5C0601FAA09EF47C9BCC57DC2A72C2838762C1FD23D43434354
+6973357CD871FDC39C4D77C267DEA96BF9A9AE78A70CB709C4B928D77DB05C03
+FC8B0F504D948003DC9146762C510D21C144680F0A0A5203996CAF2936753AE4
+079E0CFDA5E03E6A482F11D663FC27D5E8B6A73B8EAABC3069C9B5D0B1E01909
+119B2560B70ADB2546F622D5596AF276B6003BDF456A3B4883648A1114191BC8
+585D0C2A712CC95CF5191413A5D3C4A4ABCD40F33ADC187997898C93AD946103
+862A8E8F7509BDF130BCD9696619181C19995A570EF3AC61827123212F96552F
+285D492510CE4C260F73B741EB8A881B139CF97922D2BEAA6EDB151343CB6DCE
+74FD202ED919C816AA6AECA20D31BA94A49FBF66AA299FE67806C51C7D4DC88E
+A0DF9311445C92AEEED1A21C264901D5F53A3259691E300A5E434F3B8F60763D
+CB45B35EAA8E3AD00C82E0AE79F6E59ED544D31EA5112EE1B256111832E3D780
+B222DCC2EAECC748CFD53413E7B7BF60EDD4558D17338F5DA099B2179B5E4859
+404C296C3FA92BD458D4A18894F15FBF42B1986E2A7BCF8C1D7C25C6F17DF170
+6DF76813852BA3CC16A0F9C54A836C75F392DAE45AFA57640BAABD459903ECB5
+1457F1E1AB898BF51FF34A578B13BF2C2192B3DA8C74197D10ECB0792E7FC57C
+688D13CD1D2B8FC04CC896E0F9CAB7C73F0B178B2B9B6069AE5D61581D6E4630
+342941000C556FA766664C9E4DF8ACD970A4E13498BD359F1F62CD7B59D6CF7D
+C5AB39CF1FEF04990E1B34C2B13C3073865999AAEC9931ECC6FD7E4505C2D0EE
+672A193FAB459F8051367C67C2F121CBE051CA9E9ECB45A31C41B5CBF7C83685
+B85C76EE1067EA62E6D77816601C4A936A4D5E1B3D966AE2307CB739F234DB7B
+AF00AF3B357EDBD5EC79D97688310803B58FDB85D85C669C4ACC6705BF1B8F52
+76B0D709DAA03610AD25727639EDB403278178D96C663569EF75642E0D89DAC8
+F3475DAF48C05E8475A010522D1DCAF78BD5E366CFD461524C5AEB0C6F8CF0B8
+BC08592C46ED2F6264988662330C62AF843EC740AFFDAB40567D85DD31B2D107
+C726AE7B36821421DE1559DFBBA7D8C11D537E944121EB2ABC28910FC4307084
+2321866C9EFBCA1A7EF9D77346E620B74FAFB3449AD4A31ADD0E6D7192FFF6A8
+44DC537CAB0EB595708290D7C91E3805EC664E3D0AA3152906A9EC957F2A57CB
+6EDDF1185D8EDA5D631A32EF2A7F2ADCE4F8FB15C3F8170EAD24B97803DFF358
+165D5C03528B1B92B9687DD0FF8E299A306D693C0220EC63C5AD9F515D0CFC78
+03DF3D714B670CE2C09020286E6C7F09A582FBDEA7F153CF37A748133F61283B
+537FE1BE8ADE8B468D8B68CBED4D2552F2C7A19B0E069A79F9FA5627FB57D024
+752893CFA39FF3ECAEC0F622908E683BBB50C76BC2815A46B5023C25120589BA
+00CE9F1E81EE2F0A448C235AA68A962789AF11E87F85FC6FE285079329D254AD
+DCDC4563BF6F82C76A27A512BACE3DFEC586ECD83D464ECF5499B1027BB3E71E
+60C31C77766B05B00B1833ADD7F9A83EE544A1EF42E4EBF7F5A7B82D0E318A8A
+03EB2D4DB9F9905D4B9A52BA9C5D1D2821821C57C8500866343A819380253D1B
+EE92F96EB2CCA3782DE6B16825ADF42B716154BCCE1106C1201C00360DBA1F8D
+01FCB2B57137491C17A17A7B1D3D1AB4F70BD5CC4572FE37E2E2CB4EA578CC8F
+69892616306B8598456B8F345FD49F58223C8D1B00752F6CE0D278277B3DABBA
+97977264D53A95A034E3BF891ACC165E0898D569E9DD9EB9A21F5ACE628FE6CB
+115DC17AE728337C4A184151A954B7C5F6D0A872CE9929A13040CD1D8DD92560
+B8D58CC3EB8E025AC7A9400FB7D8A827F7BE4C56EA930029ADF44078BC5EA389
+5782B7A3B04256B66CA866B65A2BD0A4300481ED9EF898A4881189C55FBB2B0D
+C371EAB5DC9294E2BE1F68DC70CEE16B7B4427AFEDEAA8C420B63AC524E5AAAB
+1C0504A2E9C5E601831FD84DA7C7A78FAE4660D1AADC38578A2929E6C00F611B
+FA966D3490191EB437C2042B2EF87A493D1D184AD79550D817830C0C680B75A4
+5946ED1B46E5D26946AEE0057BDB4BE9B23884B839890E8ACD3F55608B7B68E2
+27B57A662DE621F1CF6AD89EF74D8FE1FBF42A95D2EF01ED6DEC83E659A36106
+8320126AE91C2A2051FCA141BDD3FFF477E674916E058BBC0428879C81ED9914
+E83B9C47920BABC636ECDD8C59A1ADAD12C384EFE8860DC8DE04DD8F7ADE8942
+CA3CF4CCB9EC7A0372A5FA7364026286086B463383C07AEC413D6A0415E6FCD2
+7A96973CA85B116134B41C8F120B557E43F38D21432885394F0C83602276BDCD
+7A2AF8A16D0CA4FAC497CE0FE1D19CA1D40F314CC872FCDDE3F330D5C6342C8D
+4CB634ED156D7D5B0468DC981706E775E5D5D23F1F0EB7B1CAC12833B8CF7D15
+A8CC34E07DE0CBFB425A50E22B79BA064C25A31596B95132D0B597561B2986FF
+2DDAC35CA3FB7F46659D721EA243793EC3BFF6BE5074DFCBC0B68FBCCB456D73
+47FECB042B1A1D7E1C290CBE8EC065E43B0C2805E225CA2F9967FEE8AB286D34
+02ECBD45D4A1EF6760EAB45362D09D245BB24249FAF120B797AD8A0173C6238C
+BE9824BFCEEE1DB6F05C8930819DE5F4CE87A8AF60DA79F5E53F18F51EA056C7
+D27B63845393F348A36B76859AA36C506EC5FC1419AB11CC41CD53D11360B23B
+8D520B860742104EB334F0D4BD01C94E654ACD4E7D88479D225530353FB67F64
+9865A97A10BEF98CB97CA3A3C9353F23F939FF98032E1AA6277536193A94739E
+35419AEC8D6CB44E85999A042E19EB1E6E4048323224760F610C8BF0E376F341
+2AC4CE2A52ED4551695F949FCB3C618E90FEF1392141B57A7B19CCFB57208A61
+C0F6940C9757BAA58102DBABC4780BCFCFCE8EA3CD9722FBF6BA55A4A6993A30
+325B2B9A0AD91CF8DF367CB979FFD4631634371853E3A5921069D464ED85E350
+6FBD46403428E74FAD68A324FAF8D13E896F336901795D71E5D2DB89E889C1BE
+C522FEB36C61D7E0E4B1B0EC693A0CFE4107647615051CCBB7DC16E97AD1BA35
+CE9A096DFF39786C33DA44E00552A2804A59841C5C22B18AC531BB9C0115F96A
+6956067574A462E428A5B43947EACB821D5215D5BFFFEA5279ACB6C5A31AE4E5
+0C02FB488E26606B36F1EEE1438372B7316154F65894F5C5E822C5631EB39AF5
+4651F131149F16F47567F97BD833D5BF3A8286814A8D73CDDEFA00A0EE22B5CF
+83499201F787F87DC5173DB57C12CAFDDFA8FE2953A4C336F13B2CEDB2315BD0
+0D4D63BF1818958DE6CE23B8ADDC55BAB29E1FD39DE94E047807FF791E40C68C
+573EDF6D22A0C6975AABC854543627201D22D817121BBDCD9F5BB0288F04940D
+C663CE143603B41392303A955A90CDA082899ECB1BA3591EF47E6AD1B5DCCB3E
+E6E68CD54310D21A0E809E957E6957D0004DCC386BC45526051094D82A2ECC32
+BE893DD5D32981AC1C3E5078EBF8CF2A0828B5B1719CF3120A6C767FAFFE68A3
+B57B6B5E1DF30B714EF791BB3C9B3D5D4BA21D33B3A81EB77757A3BCF842E15F
+1648EEC4655E10DBD61F2FAC6E96B96271B33B5E58E7CD380564822CD380BB52
+2E63097B912F140205926D11424378B8F134A85731B897747B128B7770B65A98
+1D8A8F2582E83F2E7BC0140074E1BDF96D5D8B16872ACA21BBCE43C52C68A331
+D491CA8AF687AA57BE80FF6F040335299E86BF7CFB26715E822384C7D2014281
+960A0C79CC7E77E4D6CFF0F5B2475E529BBE3464729B6A33DDFE36D26FABD8AD
+BF09C5599E1E33170C6AF8367342360E73681AAF946D42A3B661B0BABC9A3874
+BBDCBF3AA7C134D0ED3CADCCDCA0260E0213C3CD82173B8F544073B535E2C2D3
+D837416D51BE7FACE789B72BB3520FA7C8C80F52BF42C1862B309775540F6957
+1FDD0D5D6E4CCA987FF11577F6EDF7B3F044D3995BCE794CCCC129CF0BE7195F
+0F831289C1BB3C5C796F190138F0079F50C894021C27FA48D1FF4D1472DEE1BA
+EFAE61AEFDFE4F8C28528A32EB41B392E09BE386988BB4E92A83B1D833AA9A52
+2D2768D56EA0066017954EB9FCB2766BC8EA0F5A1BBDE25D548DF19CBA4A3A36
+28592831BDBFF6A7BC98AB965375A1316672FBD75D5D524B5283DBAD1084BC8D
+795EA03214D8F931BF336CB1520E3009C231734688AEEC98BBDF173C8FFA7DC5
+5F23ECE810811B1385BE7E7AF5B2974E7D80A1C86FC88BD6CC6A815B773EDBE2
+48BA5C3D8918C8F5E53F65605A574CDF99C7B29E72AA548C07EE3B1748D74F39
+0E201ABE1B36F9B7F11CA7B2869B7428C05BAB0E61D8CCCC3BBB497A5AAA2A72
+817CE375C1E68799649C6D6BF1E0CEE7974CB24DB8BFA82B786C87090347DF43
+A10532DFB6115038479591C3891293C22B33275976D269F5FC003984E815600A
+52940610447150D5BBDBBEFE6EFFB653C8A1DFE1115FBFD129FFE94825F247A1
+9F4307B13CEBE73596960D611B9E6D50B6ADE781FA381C48A73B47E2528B7D78
+2336BDA5F55CFBD3DEAECCEC9282C72D4BD3FEC0B6BEB5FADEE8D3126F7E8017
+38324C6C61677676006D66782B3D0E707126C40F8EED0180F527608176E29EED
+28E61C15BAE9D007C88B309530C5CE5753A568E0C94C1A4869D5457C9D043C2B
+157ED1C5EC2739A93755DD6FB02B92A5473FAD0F0B0C3341CAEDAE18E54EC140
+7A5B7A00721E495AB860EBA8DC36F25DEAC79B8DB57A7831B0542022315F34B4
+AD4A237617A221B09D92F934CE82405FB48564BAD05C3009AFA4D011161474D6
+2265A735E34607D45E6ED94D94FB1C901D6B4D6F4977B9BDAF1CECE6C8B65193
+C4743502A005ABF094249DEEDBD34B49810D69AD90CA0D950760E6D6AD8124BA
+A4DB0FA3394C7A6F9435B324C119D9AB4FF2A41E9C619F31DFF1FC22387D42E4
+3FA8DA47519DC003870486A139AC7CE1DA52B927679BD382975CEC601F1B01E6
+5ACFF335B326D80C6E6586C7677C4B148CDB3609248B3437CA43106C863C98F5
+0713644D81BAF67F2F1F3B3D67BE586B693F93609BE34A9CE769FD2FAC80A0FC
+68C5B10E148D1616939CE8D1AFDE025F8238C81963A5203128755DC399CFBC49
+AD4A8F08BBD20578151349A9FFE1D422DD1FACDD93466F228BEFAEA33E973A1F
+511028CAE3137DC36E99FED6C3719F5B0A8960AB6911000B18B0888226B76C02
+B77027A97C15D7553C3B71BDB62B5A78178C2F02276873B49438B3E854BAAA5E
+EF0A1B9D12B7E206E369F9E33EBB6A9F863101E72CC2832DF567A87F7452D5A0
+61F2177BD31C6D731AF564D1C0F058BF75E0B6C0AC24202B56AE2F100FB9D469
+4391D5B16874F1A5E4F0EE8FDA0E36B339D2D42D270F63EED284617670E01324
+D38D4EF3E92180A4F8DC2604B9189504D0FCC1F8394425810DD1BC4D233E89C8
+8284BCF502AFFF66A54E738F3BEFA7B4F51AF9C35575B1DC1EE6D922F0A09E82
+EE454ADBBD1DC0992470B0764332E312E2A3764217B502A9497274C5E2F13316
+46ACECBF93952AF579854CE0AAEDFE42584E216A93181861B66BC49D81FDD7D8
+3FA8FB05503F861A69254A5E21EB6CFF8855E7D08AF2B2D161A2328244F285D0
+E7876EC603CE837EDE0971AAA9BCAFB86329955E5F1F78A00E521CBEB22363A4
+142BDF69D408358C7C4D4E2E1ACF9CA11B72481B97F9231644988EFE3CA45659
+2655999007B7F4DA9EDDB47352519333815A28A5A53BEB5379D699CE73A0F6ED
+31156A41750753C3EB3EA6CB382BDC17702086C6C750286610CC7B0ED2009AF8
+BFA6460E643F88AF1A71744E2F42F92A6D5D0BD7FB2EEDE8EC854FCAB94242C1
+65634B2D10117CAAC9DB5CDEE681EFFE140810F7C9182162479C257972AA398A
+9B8B40286F9ECE6863CFAA33EEE37A20EBFB28403448D0019B99CE76655AE359
+E97D1B26861C4F8E0E17D5836D4AACF4F05AEC01EB12F45EA2964C6614FBD903
+FE930D67C83FA691F8F8241725F61356093B99C1E3F61BD69D63B13F748603F3
+BA9ACAE25A5820FC771547F1FC8EDAC3CBDA4D27C2E76F6A567B297081C51274
+29CDF072F62DE0B06096C7891F8A13542F44561DBF4E6179BFF1414A4919679E
+35E819B8655DC254C734B0471F61702D79E7D8D79861331A12CBDC0D1DF4472B
+0972AF27F184126C5CC24B5991549CCD9569C5E6A2536031E1BAD8D74DFB26F9
+F1B239267E44799A41C516D9949B03C76D2E4FF02B4018035C5DE91E7376452E
+D0A29D4E590CD69E3795AABF23DFB3B4A1C392F181CE6AE333C7DDF355307A12
+9FF9A1E357E5A8F0FBFB70406B2113BD7D404E6D7BABE8AB8D027A217E907C0B
+9D322F2B50F27AAA7E6DE95A14F16E61762ABADD2B2DB1BCE1A45AEBB423A63B
+2B64F2FA0B96FE37835F73A03358C755D55A86FA70E67E9CEB034F770E89FD48
+C41CE3D76FEB3EE18935DDF3A9251901FE9DA8F937F891EE181648F5A09E6AC2
+9317F5572856F1C8F1D90D6DC4E9CAB3869B6C30CCC58FE4F385FA5D01E5A1FF
+DA826AB7DF0D3EFEA10DB987D44DBC2E21E1F2FE3521CC3C1AC942FA5359B66D
+866CE1B7FE969A6F6C4F6E231DD9878D4EF3A166AE196F3A624E3E840DF4C948
+BFB315FC68F1F395278E6C3422930BC8D7AA293071B9F5ACCF3477FD797B2113
+A6605074CEC01253A75BF1E582D72E1766F72CE250AA62EFE25AB512C662ED23
+EB6FB19FDFC936D65668D143E7B63947FC50DCFFE5E3D825D15C0142FD17A550
+E6CE5DE77C765DC44866C8C85D0979F754B79C7C1BA57A45B2138B5A0D8722B3
+FCE9EC0915226AC5FA06C8DEAFCF132112010716D00BAA9EC84FAB149A86457F
+DAD83AD440A6D8802C2EC016E04E12BF6EE9B27AE6DCA0E047BD0767696D652A
+99F49C6E9472846023B7464E28B040FBC493BFFB443773A4DFF73A6464CCC43E
+3F3974DDE181F162A1E0F7C28D1EDB267E52F007212A82FD71432249749CEEC7
+F7027492F0C4AABCB20E217F76EB7F3F16B92875438271C88149B62961A97467
+9019EEA80E7B91AA608A9699BBED43FE5A937AFE62613BB7FFD4D55B123AEDBF
+A8C4FF6F88BB1DD3E42C16116CD63B6D4B47C6669233686B24DE774DE4E5567D
+AE75B64D89EF449AAAF1DC34CC9B5F6A1B380F2B65F8E4481956C911B241C439
+3CFF801B0BECC2F742E3F8DBFA7657B6BCA33A739913620843C97F94510AE3EE
+69DCADEE2775FECDA97B4AA73003413EB63971C06A435F6022D8DB74370D8AAB
+AAAA704DE82D50093BF6633F2649898ED33AF613B3BF7574C8BB76621A902E21
+7BF8AC2158FEFC7BC768F60084F4C3BBA86ACEAE575029EA1935F85B2E4E2B33
+3A176338F92F5CD578B1B90F2045B2104F62E845349B82784075F00A82085666
+014F7E804AB0718397CCCFA9328348FE44020223C6B9E4E1B8E688837A7DFA5F
+97ADA785FF999836256593D27B46075E90C58222CF1C22E4478004E1924F66F1
+EAF37DF7C9EEA1248EA56DC46DD0D126939A26F6B772340D6DA5F167BD75F994
+CA180309B1FCEDE0476F73C130A78A568E37B714B3B6A76BEB0C2E750F2B51D5
+295291010DC84842BDB34B1F969382FC41980ED8CFDD2ADD0202C7305C9EA4D0
+0E35D71C82B359B23A2F05
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
@@ -758,11 +757,23 @@
 /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
 dup 18 /grave put
 dup 19 /acute put
-dup 39 /quoteright put
 dup 45 /hyphen put
+dup 46 /period put
+dup 65 /A put
+dup 67 /C put
+dup 68 /D put
+dup 69 /E put
+dup 70 /F put
+dup 73 /I put
+dup 76 /L put
+dup 79 /O put
+dup 80 /P put
+dup 81 /Q put
+dup 82 /R put
+dup 83 /S put
+dup 84 /T put
 dup 97 /a put
 dup 98 /b put
 dup 99 /c put
@@ -772,6 +783,7 @@
 dup 103 /g put
 dup 104 /h put
 dup 105 /i put
+dup 106 /j put
 dup 108 /l put
 dup 109 /m put
 dup 110 /n put
@@ -808,129 +820,190 @@
 ADCDA19D5CC68A7BC7108EC9236C64205B23CE68B9BC38EF3E5BF9E0E6ADF404
 7365C8D0436609438C82EEB2F356F79186DDF6C1C797D3C278108B1767D15178
 C4C3E8ADC2482BAB9536AE8419E5CF3EE1B6E53BDCE2A83E2E485F496A562C10
-B3F5A131BB19D1E5414C86C5F995521076340536E10613E42779FA15EFDB451F
-53495CE8EFF239E4EC442E1439594549D45F5276F93D496C9AC712D762D0B702
-E894290BA028837304AFDDD8BAA6564E9DC307A14A7A206550FADDC7784DE3BF
-3390188BBCDDD929C82B1D7B529553BA75ACF5B385D31EE3902D96B2B5DDFFF1
-9F0F90FD791E54128C1717F313486896868A34FAFF22E23CEF046D02C1419BA3
-4389DED48DFDE7F78F8ABE3DA17968B0F16B18FE6B2EBCD7AD10CFEE23F4FD29
-8A41D3A84F49D6E0FE4A09C10E3BCFE4F1A53382F091A731F635DD00B2BAED74
-7091CDEEBF7C3B0C788EF6655601AF98D99CD87AB81537AF653AA1FB224DBCDA
-DCD99CCC347394C8A7146C0B6569E9C29445CDF0496D40D131862E66385569F1
-CCEC1D679D7D953BFD1172269492334C2E6F7AD2BB25D7875C848C4B712A6052
-465591F6EFFDF950BE484A6AF5D9F494135CFE0EFD1C7EA1C547135B7D12B9A6
-901F5B83A629DD6EB776B471D17FE8CAF7D7771D6CFC5C6E363B2B587D84884C
-35F40A0849067A7301255601CCC91F5E6AD802A556B64BE5196D6E49187E2D31
-5CFA0C960323B525F540281C33DC25A2B35103E58126D0A94B0B082C0644DD51
-6E248FB659F3F64E23C70187AA9B105C83A2E1C75FAA7B662398E31E261E409F
-DD3F844F2E3934CB26B79325ED4BA70C1B83B46E7EE9E9A5EC5E4858DB79FB93
-31BEC9C8842BFD56A981DD5C91D20A1C18A3B405098B7191F24E27BE212FAE84
-B755CE91CBFBBD5FE26B94C62565DA0C491F1EDD77F677D8F88943E77EEBA9BD
-3F7D4FCA7141CAE4509375D97E22E336426D347AB3C81C92D2FFACF867EAFB4F
-4D4FD4C9902B18C705A5A910906B813E3B8DA20E13436DB8FEA194C9BF6FF0A5
-79F215F8A325BB7C71B2B3C64DF8AFF3B99539618847240A1EEA99B1CAB2E869
-5D82993A88B36729258072E7636BA88877AC34AD86278760EAC5CFC573B851D2
-DA420D86CF6A178DB28BA30EAEE41C16E360F24AB5177775314DE2752078E256
-3B5ED507F043BC332BF738175950EF89524D104A05844CC7313E12F53148F536
-B912D04FBCDC093E8D3031EA91DBFD55FCB7AD49C4106039CA8324B46664EE2D
-AF927B27CB0064E7279335EE3B7A06E3FF4DD40BC5ECCE94526CE4E5824EF067
-8F1BA68D41F64355123DBE4587F9580B90EAF8889916255DBC1859EBA7DFBE08
-A79EF5063A85144AB250DEFDC13BAACBCBDA771FD5180495A27C118705AEB569
-EB317643A1CEE5BD68582FC77B776018AA68F3B49921F2D4F2A9306AFD8254CF
-DED8E8C338D73A92559BA064F446348FDC70CBBE12C19AF9993AD81E2BF60EC9
-D2BA72038862AA2CA5BD3CA0A4DEE85A7ADE4DF9ACE0AE57401C1C5711E7ADFD
-6EF5865DD053EE4DD7070F2C15E58331928581D26E08FEB08F9F0F4E45CB6552
-BC8FE3AA01BCD8166A7ED3785DA0D892AC25CC0493E6865E067D700AC8D7FF71
-E85743C6BD1A28FC0BEA869D6E1294BE31636B10D44EBA9A20041B5B38A91781
-A7BFD8C63D5484628F63A10E3549680F1556174B464AFF2BD948B3F9F0BCC6A0
-6D32B6256E3CBEC23B0E711C77CE83BA6776B3A88079BD445220FCCC063DF188
-666FDDD6E5B29CCBD94E6F91930B823F0E2EEB7CECAED29E49367BC10ED266B5
-FEC76C56C015325F38A9E81A02F0B622F419B6F1B8DD26EF8A79E5AF1566A6F5
-047DA4C8018B6B4F85099257E396D7A7DDB0B5658B30DEE6F7275E96A74A834F
-FF7635C53CD29598D31878807D9B45AFCDA4DE957F7625264F9726F0338A5EB0
-C4E20F06FD63C955A76B9C29D132CE9329B3E9DDC296F181FFB9A3F0E0FF5AC7
-50B3FD0CE1DEAC78BBE0F7FF36C077073733C172A9D69630550C3867EA1513EC
-E86F3570EA3F2CFF00F062A5C43CA182FD8338A84725CFD6A8EA43535A117147
-8313EFFFE803E979588EF489B57D208263A2659DDAB9B10517E8960098C55CB3
-FC75BD9087C2D216EAE0AE6146EC8D46B2004A91475C479FD547EE6361D54C69
-151C27346F8762EFD9D7C9970FE5F95CB91FB1DF6D51BDA86E20A97BBDD50456
-45A8EDB16CABD82E799FF6615B9D253A759CF40C128228C91F76766B639C39FB
-51584440E2B4B244507F6E5C1463C51C0EE65F43D8D70EC70B5A35D72F27CDA1
-917A4140B001E09753821E6E21A1AA9B79217738D46B1674C8B5785F4C2DFD25
-F0E4217731E193689141A6717A9B082A286F5B4CDF69A9CD4C1B11A5458F950E
-EC98E7CA3A7CD47433E7FC3498BC87569B77D2F7F1B0CC8B2D89C8F8F1A61210
-2571FECEE954C25E8648A1846B7AB78BB480C4335B4909F7E4714D7FBE685819
-9D553693EF13B078A52DB3BD35ED2271E5192C8655E2234C5EECE3B2F3C88D93
-5C76E91D41142207C159D436BDC85CD92B8FE60C70B6548344B86CC0111B9240
-11264BA8840DAA7F9C8E4F9854483EF2E5427CB33238662072DCB5066C35BD50
-277D1C70D40C5E9193D1648ECA0BB14C97A8ECD307D4784172F01AB199B6C063
-18E1C3D0D6C9244FBF4CEE66F61927A4665328AAB04B54B8F72E32802F7A7AFE
-B3315F861EB792631311EF7BE4C6A51304A64A18EBB6FD5F91C7D03ACA610A42
-4BAF1B226A832260EC3F01BFFCC5A298F6C97627A53671DB6EFFB49887CB52C7
-77FE04A8D8D5D3FB29CF07DD5D4546F99976A094332DE0D32CD2B0D44CD3E08A
-34051768EE542AE3270EE41E90A43BA8472D3A885EF092F27FEDD89F7035A71E
-74A96DE0F2FBD2E0FEE9EEB3ECE80A34C82E5A0DF1EE927F770BB060EB0227B2
-96DB5C72B9A7F4B53E0EAE8B9969D01A7CE1BD52E7BF71A51ACC22652D0918C7
-D6B79652005A265DAD3064E6305B670697C2961ED5C100B0DA023EDB53A878F4
-A9EECE828BE0A7E85D77694AFC91B7A825A3A5C25814600E29E1CD989D40AC09
-62049BB173DE969AF70CF08439D5F840CC9F0149F161E859DE30DF86295EB75B
-DB6F7B93F0CB2A2F8DF8FB708A29FD40F540638643128CF96E53C598CE78E124
-30CBE72FD0D2CC6FE7296E0B47FBE0236691C94283825E5880DD1877F706BE86
-887C210212C135B2242B2A62C030C5619D69A898703926F5043A4B65E22599D2
-1D483EDE6B124C4A7007758E5737F73477A737FB8B6D79566CCA600FFE07EC87
-E9AACE05613BCD96D6ED09754507A215543A64A0060D7A1EC5A062A7BE402B42
-7DA16E0A8D9A0C3D4709AD82BF4E6D7E765E0B7A11975F93B4C2299974700AFC
-37F6AF965B5F032A18ED2F380A1C729FB93473A790BD2847C539D5216A48B5AB
-CA6BECB511A9B3627E0589BB14B4C59A34B92D33C36F841A31418EBC3CD9097F
-4AADBC0B100EDB7C0882011FC4E5BF076A276E9BD73AF9AF03E0FD1571B67619
-41F083C1B635E7ABE2ED2D16E2A2B4BF136573EDB22CC84C3BEEF12A909DFE87
-6B31DB8CEDA2C56BD4BED3396C2414AF33443AEDE115B8B534BA437C706A1102
-367F7C8A24BB17DEB45637DA133D471ECA61A811828B1056035BB030D76693A6
-E57916EE9558B54F30BF79DBBDBB5B687CE6837001D7C79F2293E9DCDE4E02BE
-D9229D53F9710BE6247844285B8CF784A2DD33E1B0EB55A609E8969629939431
-14A2923ED9F6F0BFC0ACA17F1B84D71C101F8C8CC567BE97AB624AAA595624EF
-291EE9D09635175A210E5D2304EC26003D4D3734B80C513A3954195B4DDAF78B
-9D6B057C4D9975E499FEBCD2BE7AB15A7A3BE374B0EF6B2F4A4CBA22C12E1A5B
-6152F372610BFF631879CE5C46B901C5DE1ACD01E95A6003CBCFCEFC8E2B1732
-B928061BCBF980C94D0526028B345D1884934E20101B94BE6DB4AB24ED2584EF
-716B8C89CE23037A03B20407E6915E3F2045666C502B0EA31088C0E98C07BB06
-74A43F4C9F42B266F034AC47DDEC907CB418AEA343A269ED16B20CC413F6D54A
-DA073AFB184F38E75A591EF20F3A44E0CB7EB72B743DE3F68499FB8FBDF113DD
-A37F3B293BD769160E25EF9F865D4E3A09BDE492969976400D8678B2327E53FF
-7288305E48C52019AE3E10AB8C39B733709D252071DE1B31A0EC52388BD7A7E0
-139BD484E918CA0E7F84677E0BF5CCCE41DAB8D1915AE5ABF459512FEBA6E812
-9E0236E0B3C297EE0F8D9C1880D3A025C644E57587DCC946259572A56D677C74
-692B22FB760450EF1613BAE42ECEE1895D5F0A7E093411E32D94043D80E9BF74
-E593D6903A90E0783A9D3D0629EE09C57249AC15C6328A794DB90F101690975C
-1B71BB7373CDD9490929A0134123F2F2C7BC3E5CFC2630CF750B431F79E169F0
-51368B6D9DA46C51A1F58D23C0BEC423A5B22D2BCDE8DBED4AE8F4CA140366EB
-326DE1D323A00C972CAC9082DFC1371B734A4F9D7A1511E3F358AFEFC0B706C7
-EA097CFB7B75132254B71679529736E924634665AF1D59E715F5213B85FB9F21
-AB464B075A6B21D38D7A30C8CE6FB42EA5027D797AB624FF5C030E4E573C3850
-1576440177AB823975FA4E7717A83A6C8CF505EB87D600CDF2C244C2A7099B76
-F7395B17B11BA42FE59D21F536D610013B6442B763BD4E6A0E4EDFD85ACE222C
-316A72B96397D1677685D05A8182924CD1A5F62AFFC96CD48EA13C681BA30C3F
-7A8FFF741660E5282509FBB27F458474DBC8ED61532639FDE02F09551A528477
-67F835B60970E3CDB8BFD2C7CA6C40766EB970B8727EA4E84F155719D72522D6
-F65ECA369A4DE5D2901D917A8366A8FAC729832F9EF2C366A081BB8949195659
-5D8DA8C6C500A586CEAE897838B70FA4AD8A2EFB853F0F152300BEC2817DE405
-DAE424D033AD5474833B7E2AEEE111945B3509682CB43181C700B9B8614C89AE
-092F35DA753FC1958D33B502D79642102FE39CA8E49E2FC41B42C9E59ED30A51
-2E4ED2BA8314B0BEE4038F502F1426583764F1D76EEB8FCFABFC3CB1FB9AA7F3
-3B4C0CAB83BD6BEA40A571983106BB5C45DC01FFC7476374F490F532F4A23902
-984074FDDA5999D514349A0CAE401D217CB409E0EA162092B994A13BB9BF71E3
-F6D31948FD15659A2D41E539459A0859E493E4A056047C2B12F815A139B9167F
-35BBA840C7A8BC855D540975079E36D6416728E3A35B0E44EA0F1591E2C87923
-E7FBFF2BAF159995983DD2A4B2FB442E65EAE256A32519AB2979A26A4A1DA2DB
-07920A95715CE7F596EFC8B87BE04C219B81D226C53AE2881B59FD4B707D87A4
-19E6BB5074C6CC349F8403F4E1C476B3A0C2E9337305884E4D25B1B57C2759F5
-389E3BDD519400E15C42B354B2EB179F2AB56AD88E5A018418C96BA0E5A3329D
-11725544AE1E0A22385B8EAE9E97CD5C8F117E4AD6155CC8562E524C72EB1CC0
-0D1C3CB2D24F3923E4BAA25EDC460E352F6D0AEE708BF39CE2D49A002B0D2314
-0787BBBA0427C9A1C799F4626793548E3175DD94B21BCEFD89A3E835F6240C82
-5AAC975B09B07CE13E37650A059F6F1B946E110A1AB1F05AD53CB0A8D522B439
-0B289DBBAAD637EA95ADC68A7E893F0186B66234486C718684D2E72D56FDDDC6
-A387F296CEBC
+B3F5A131BB19D1E5414C86C5F995521076340536E10613E427782B91F1098562
+3E22288F48ADE6EFA58CAEBE7C070A920C3A85F4327940DBD99179C26E3ABF17
+64E9CC6A45F17F19F3EC1C53B17485B813CB01915D55CA2034552666D5E44A96
+A0FAE064F599AEF095CA1816F7066EF0AFB220FE1DF11FAFD503505C5E6793A2
+6475E95FB467E2F3B5E7C6663A70B15698A1D158E23D3ABE3B6942B24832AC3C
+13F258038DDF209525C4124806A369ADB0423C2FD0F823AE3056F380B7128089
+689FD64442104C476657434FCEB87CF0F30CF5789B430398617359FFD974BFFA
+C9C55ACD601AC6CB8E97FA11DF303EA517BA2CFC359C6D59FF2B72CBB5ED34B9
+122E5487989CAB13A4F8B1CA24C5CB7D889EB8988CD8DD846275F32B2ECD3DE0
+C8B47765B1346D707BDC6F26F1465D16591D53D578D0D5F512A03AF4A269C1BF
+7F1E3A4BFDE928BB48E512AB8DA01383475C57E9DFCC800FCD9FD4960D8ED405
+5C52D648C91432144AAF7FFB4EA13AA3AD6C5FAC5EEBDA0A6C801AF3BF21C422
+1B53FD169F2029E4552DFEF4D27C08A8EDFDCCB4BCD1226A4CBDF6D50996DE87
+31E1D72A3BB7A51CBB36FC6EFDB1C50DBBB498DBE73AB31C9992D92A2A863068
+CEBDDE3A09A6367EC9FDAE330A18646B4745A247B1586BF2FDC18B5346053661
+142830C0AC11CEE134CA6BE6B115E4BFD14E2F323F421CFBD6DABBC49C10C62A
+5DC30DC5627FD5A938F4D92C0BC873AC16368841B1C0F060FE56E10C506F32B7
+C784DD1EB21A0C8A7A08C672B98FCB3C2491C16AFBE620BA1E860438C0E0C934
+630CB619FCECC748C516B2490F38A29FED7CB7C505EBD7134C800CD1A45983A7
+D4345E6D2E6498E11CA3AE5EBB3E579C9B78A771CEED32F8BA3946551C7A15AB
+B578BCAF25BC80D9A0169B6A547D08D677678EB3D287AA32683135802A365CB2
+E4A9CCF44EB215EB95140325F1ED1B4951503D94E933B2B4A6C015DC84D12D33
+0FC7F804048C1362A91CD1367234E78DE55E08F6284F5EA65AD6A7ECF7CDA406
+02E530FE9CA3FD79BDE8FA2BDE763BBAA80F9835A4C9B14CD83BA6FD1F9D7E41
+6C5EFF4AEB41E179FBC4910D123E188AC24C26FE3C2D0065362A87A85CAFA1BF
+15B1A3284F52CD24A5039FA47A73D5B194E13190C94B9FBD18ACD58615666B11
+A686542019874F1E962D034326FEDE4AAF12E30E6CC751E9662FB53CA195627F
+B5C5BA1ED33AA3B2A684CB5452F0143DC25FA2EE16F9C68F5FD204693634E0EC
+AAF0DCBC8799BE01436AE26C7A918C7BD57B2589DF0CB21D0857799D50173D86
+BE3F59E3EA5CDDCB394A25860968093C6FCDF1D9E38DBD1033741204581983EE
+84604B3E0B9C882BDF8C6AB648B1D7617D2181EFDFD8AB7EF075220132E2C411
+439C3D2076D357609E0457FAB333BC289FA0D62088918A9C4867C9CD0C8AB332
+D8FC119FFB5D3531F1A6514C26A77B874DA7B98BEB6AC6C6BDBCECEDBA06C64F
+0E435FA63F2995E724E64128C6783E90300471E3D2C73EB4BD9EFE28866783BB
+93EC0A04D79338D479472669D86AE46792645D807F3FE4AA131CF93B3A3694E2
+FEDE40F4D77EC29732DC4F180BA4ACB87B17423970F9762FFA065F92C6FC7F03
+1D344E46F85BB06AD98A0A9B5F22B801D20400A3D03557679D9983CACF51BA79
+23A12B9C7A67D67CAF0D66A5B92C3A29B3A108C0FD4505BA363D5D7E4AC391B0
+61CD6882B16229BB5F5DA3CC73797C26444581E5D86C54D074457B19AF1E128C
+CEA50A2C106880FFAE35EF7D569F605340B5A3C8F5B78EC715C16AD8959FF4DE
+414856AE8759D93F24D1E654E5573D3089AEEAA55543E1CC25EDEC8D9AA0A47D
+271898ECE2DAD982E6258E9F8B141FB24DAB69B81D4094448713E7C80E4CFAD5
+2D6916759C7C3A017EF5489E59F7EC5976624F323D3454A245ED85A524DF97F4
+54BDA55F8EFD5F4FA9E8E44B36AEB06683C833AAA8C389C01F16A858E08344E3
+F28EE5B7E3F4EF408A0ECBA488586625D5CB1E0D24A15F7681E36A9A3EB9B9F3
+DA6CCC03AAEDDFD1DE8791C4E02D761A512E8AAD6D1E242A08311F9DAD1D5F6E
+8A06222B37D6CCC39C933999CABF6B869D435B4AA756C1656CE6423656687802
+5B1DE7605BFB98CC7EC1EE979755D03D03B6C9474D5805AF57700CFFA0B9B11E
+2D2D8D3A1AA58B8CF1F46490DD73EEA13BDCEB20B5C77D1873603D6D58E33767
+DC96E98E630B2DBA7E950AD83A079712C83BE73CBD713B00EBDD425B239E2502
+9E740ED172EE1FF63233FE13E39BB7EC8E02CCBBBAF6A25DE4F3425FA6BB44B4
+C624457A474E11C05CDBC95F9850969D70FE4A84B7A096A405EB3E5EE73DD3BD
+503919AD5C3B172B51C3949FF98A0FA529F1626D3F2B43CCC04E25B16511AFA2
+E89B2E9B0ED36B5DC6DD312D5B484346900F13FCB9F3C2EAC4C431354198A9C2
+0D1D2C1B4AB8287924F7DF929AF1E48EAC6680502FBCA923EAB6CC8E23A72C19
+695F0BB856501390E2821240F33387EB1D6147D16FEC72FEE6576CA2D507E373
+986BE6DD8782A3F5257A73BEDA19539FD32F04418AE9F4AE280DB489C5D5BA6C
+5DAD0C27E45ED27A560661B46A0ECEBBB3BBAD32D4A2E0E24366FA4ACBB3C279
+1006F6DE15EBEC7456CEDD9ACDAD1987708D2C2EFB33A301AA3AC385CA9089D0
+7D4967C96DB76DDBF88DE16D584F39DEE45DF11FFABF92FA43E92094BA6FB14D
+45C80C976B3E6879AE21B193C3D3398C93895EFB1A943927448042BED0A8E0E4
+64E308D01C9A7B2CAF8867F330894A5ACC8D6A53A5CD1D662934A8568D1987E4
+45A973B0F6096FDFFDFEF6CA327C158C3B4F403184C401CEB9F21B98A037EEF6
+73F0426639A2247BC855A1BF95241A0F002B6DA615060DA8136AF02A07F85FA2
+A8C3418F306B5EEF8E10FCE51AFBF9AF2913D44A88567A6C7DD8E094F317DBFB
+8A2E014C2B5E0CB5632E598B5F5E05322C33C6FC4BB38DCB53D2F05C36B470B5
+21491F0FB127730D42662DDFC9ADF12AFACA3050FCBB5D4B2D632910ED76316D
+4DD15B50524AD795981EC4EA9FED7A8359A0656C8CC97CF8B6C93B31FAC0AD89
+4B2B6426C44BA13CCBC90D945DF35373DBB98239B0996E74A27E1D0A03DD6DE2
+13899C0EBB143F47C81AD18747E491E831DC5F400B2B15AA148B73E7A60E562B
+0862AE054ED5DB070E4511BEA08C4A45A0A4E45F254922C3AC8A60F749CF3199
+2B54F58C6D1219515ADF3BA353A8864F2379EE2DD75D1D6D4F23D4DFCBE916E0
+BC6BA439068866934B51C4B3D323F493A155D734D14629E717859F79651E7FFB
+AAB7DC7D5AB2C817A2D53B695B76DAAE59C130DE5BB0250B6FC71D428E51C638
+50A12028F5AE208554638D56354EED671044FD120AF994A382CAC7BEFCFB3787
+14C635679E0A83918F4734385B06C0D2430ABCFB9790FB6B0C35B1DEC75147FD
+93FE15B6768651E4A86BC7D4ECCF3929004CC1D83BB96FCB66239DB04EFF505C
+699270F60BD85C459DC560ABC6AEFA21A14EBA379ED68A0D0458B084692FD3BC
+82662FBA17BA478BD4CBD0581486B3879C29EA67987049811D3D7924BD567652
+08CF2D76D019BACAB684E75CC17D43752ACD5912B77B2598077912DD9FF9B7F7
+9D45CE8BA008826E3B3453FB33960AF037C524F9EEE1E5D162856D7C61E60FCF
+C47C65CF4144FA651D6C1018CBE382976D63357457B65A210C0A91DB08EDD237
+74E2A1074ACDA59FBBDE07EA3A7D35301D77C9B3B32523283EB031CF918F2D70
+A37B7830270965B7DF23026280175DA18783BEEFDF77E594DDD0577604B6AFAA
+04CE83C72F51D43F560A8A637C9109AE23A2A8E70547B90796194AAD05A71F55
+EC2AAA6E6F6195599A64D0B6881E6B6C7E388B998A6EFF16FB50CC4FD6BE9731
+CF4CAC7689A908305C5D10B452D99F241DCF8A9322D5A3D1675CCC5886A72669
+968784DF64DE454E24DBDCF35D8447142C74E39AEBF975415EC667EF4ADB470B
+7B064A2EB41BC9C748CC2C87B34119AF8D90B787A1746C5B0EA0A596087FD328
+921369872040912DCBE8D61CF5173B518AD912412EC6E1E1A62F98F94CC692C9
+F8E1FA3524839F59184D6222EAB2DDEFF9C5AEB52E18D8632F45879F720905CD
+7E228DE6808C4DD45E73C1962DB596000C951E0C7CEAD68907C4B6A71A304DB2
+EFF52E1E4C518C16239A1BCA98F5B2B31DDEB4645891C2BDA55FA36BEFD60A97
+49F18006E4745FFDE55AA8857BAF4447E6DA000E39680FC39D1EBA90D4B1B590
+84EB9E16F9520ABC79050E8D65BBC6D89D1435CAC07B3EC707390E5B4E6EC3AF
+6080323D4CD284A90839D3E64662DD475658BA23B5C830052E8BA64B289ED4F9
+0F1B7CF455230D4D287B1825EA428C5307B8A6E634870CD3F4039B0319DE21B9
+86CC6BB783423D6AABDF9116BF65F434E2E884DE5745FCDD9425A2D24B3F281B
+972543253492F3F23A814F9EA0D1E2FF5858900F0FF61423408417EB345DC41F
+4CA225A39F4C7A4B71E1BEFD86749274999343B0A062C11599F83F0CFC8CAF49
+C9139888C443C2D882C91856601086BDBAA9C35371DFCF1E964CFD71AC2A0B69
+C30FF89044D0755AB03CEC10AAD0435CA3F1F86B42FA70655179FA9BFA41E7FE
+1346EFB0034A18C228A8B0ADA76814F18E56671EE6528288B511D30A03F994C3
+26785306EBDB08A11C09662261692F98F385E61F9497F36F43C627B6A3FAEDDE
+3BAE58153A3B740E956FC41E29923D13888A50032597B9CAB299C1BF884A5001
+0B52622F7622A50EDFF74D97BEFD798E183725BB276A6E33E250709781F1887D
+53FC854F7F07F156D509EF432DFA317CEF0793012CB2F097E07C66BDEF5EAB7F
+CE0EFF17285F31298BB81C1CC50CB0EC984C1311B66CD24E0602F166F5014185
+4E38CAD17A62BEAD92CD2AA25DB0D4061F503E2E2ED4D0EEAAA6C97D2B253D96
+1AAB5F4D40EBD363EEE76A01378BD8636BABD43B9A8B18A1A514B27F0C88110E
+1DE3254D37261145430CD39A8F2685E611FF9C14E1427EFC121FF812EA60955C
+C77B58708FBF6BA301A7E909B1D166D002D8C4B8CB66C51CD52C07C9010D5359
+82A217CC8DA97CFD5FD99E12D205F61473401D3C43AFF0448437D316694747A9
+ACE4E9BEC72026B1E83C037FAC43460F62B1FD771A9C5F03AA347D888ABCE3FF
+4B7B7B69F5E49EF462CAEB299555156892014ABD2CA18C7189242D5219ABD178
+C5819CC1F509EC0CF0E1E3E249E871C1ADDD06E18644AB897D9DCFF9B9E971BE
+D2F8125247A2ED412AF5DB80CDBC588AE4E195DB17C4437B6FDC5CCE091F88AB
+C92128DFDA17D7326AE1446DC91BBBA989D94045A782D1530B81F551972B9A46
+EE407EB010DFCD3830F8DB622984C62F7F4C3FFE6DD106B634FB5318CF450F3B
+FBB998B70D84EBC210BA829F5EB76BED17F1BE3F2537BB2804A1F4813E381DFD
+C54F6F392B00A82B7EEE6AFE4976FD7235BA0B8D339FC41AFF776E611275D72D
+34AF70C85D54B33AFF4B6C141C1215358DC5670D4F9D7B5C636C766184E6863C
+E7A8DB1FC60C093CC5B20C1454748DBF05EE2FAA71F87632C61E80DD10FDED0E
+A7046335C29754D27BE6B5F39AD7554586382ABB3355E367E94646B2FC85DEEE
+14E5831172B5668B27671D5005B0EEDC0244628F6746F43DB0E9F4919957BDC1
+769C1A5970EDEB74EC7F49F63F8367F554BBDF04C8A18A3C9740476243CDE6D4
+A03FE56BDC1F148538D07C29EA1295CB4E4BEBC05A3765B8BDE8D46EBB0206DF
+B6FB82412BA37109FF0518745227AC234AAF169ACFF2776E820B425953498AD5
+DFDD5AF4DF661531598F1548FAB29F8E28C4AA67B987D33B084BE2937591EB1A
+427945B36DBF80CDA83D02D2C1C808CFD8D1D8476F78E42F295166C591EA545C
+7AF53D0AE4BCD3C39987A06B5556A9C63FB411C99D4AC57B79FF912BA5987575
+0504A87B3304B4E6FFEB865872807DFC8EADCEC909D8D6D839F923FEC10424DE
+50C16112505B363FE32D5EF407FE2B8BD8FC10799C3CEF5DC2DA9EE7DBC774C8
+F68680F98DB7AB84D79565E84B0063B2F466C82AD817C744BD72605DA743E612
+3DA12819A2C5357BCA207A756FA1DB40682AD3031B75BF37B17F671C92CCA035
+CD188B5184F2A8C01DEC7D75062D0E14A1218F2CF8A3EF5079FEC3F95F73A9ED
+5F1C2D108A03B9435D2A8E875224C0ADF0E03E558D29EE705D44E2763558471C
+9BAE805428A2F10527A1CCF09EBC44C70CAE43768ACA19628D801AB11345FF6B
+A46D23DEE958A992D3111953C82903B0788FD52BD491B78352F3C9133FC180E8
+3F1B98CF4CB038124B9E2A9699EB5424A97726621ED51DFFA1CAC9F1BE906B7E
+B8806A9E5DF8BD74252E67ECB24879B253BC02E505B7A32468594D70A7356F57
+932C5EE332F698F5F66ACA1D4B81A9B521D184EE6EC52BC97CBFECF8FD95E27D
+F03AD4B97E300E3F36DBA88A40D9F72936410CA2B511C42F4C2EBFEB20BC3A72
+440B22FDEB2F46175F64C60FA82F7C9AFFDCFF96640CACE4C211D773F03C7BF3
+2A322AE5B263132C6DD178EF04E62E1265EBF8F4B306C8E5C2AAF7C882DCF8CC
+4153A3D63CADA7F1EEC6902D48DAFF08DC3A17E9AE7732649A971FF6671B5EB3
+D741E6507F6CD7BF69BCF6617A86E689EFC7A3C7D43F85930791FC3E0A49AE12
+563490AEA59ED993D11E0510F64FE31FEE70C92DADB323E36212F3F5C15125B5
+37A480B4E46E5CD42C32E68D7A574153A2EBECFC3A8872C4D7DCF45311AAEAB2
+03564F6F595FEE224F75B4F4438627C878098114674EE482BEAC4941A87F7EBA
+AF803681BABA0890874FFB6D01D3D3CF0FE8682C46D9737E95C913F64E55C300
+FA0ED70D5C604F90C1D764CBB0C49C34EB7B76E3BBA02F1154C0E20B7D8EE5CB
+B21BCA91E4BB5DB62938FFA6361AEB2E49BFD61C053FB73ABD422C09749179D7
+B7513314D5DCB5525E72018245E4CA624EF10E913C0A811C76902B2FE6C74EF3
+EA839539EF27B31FC7F828C272B72685D23A1967D4BC903A990DA7004DF42914
+C4B512E1B3EC50DF510BD51EFC31B7D5C4DBAD3F24B0B0ADC745E263BAC4A6B6
+0DFA8496FD4812E0C51AB09598400C474F02742C010CEB834B84B466882221F8
+99CB8E30D38836B43B2361F29C1BC3F35AE96D084E2780BFEAE0809AF6CF9E7B
+2738E0774629C43E63B90A31F89A6ADB29D2724520766A76FF186D6657204789
+ADA458DB0DEBA76579EF9B21510F15A98EC00F9B17D5E2F927477B9E97DD7C21
+4F248F07773F16AF916B2BD31E6D6631CFEC133D9BCA1EDC8EF6C5D788A93D88
+7FF7E671869ACF1442A14997A01B85F642FFA89AE27D60B53CEC9418F772E59C
+D3BAAFAAC25730AC6B7168D9E78B974A09637302D404E64A11482BEF20A94A9A
+8C9EEB1E48D758FFE7E5236888175F802C23CEBA580637D975A979D284EEF29A
+FF3E83D39EA8DC40207A1C91F021C7FE9128400E79E1D1C88BB4BCD8369A9AA8
+58D0592A3AC18FA116DFA9DD297075C9C6243CB28262539EF1C48D850F66546C
+B8EFB06C0F339A2DE454B91B129FBB3CD3F319FDD5FB7DEB07827FFF722C95A8
+ADD385E9605E4C5E4B467455FAB8E054CDC085C9F3CE905DD5194049D1657839
+73C465D4348000A687FECE3C916F00960EBC7A245F67A63A15291A0F62261D3B
+D0DBD831D091F9FE88BF29526B7316E33B229F44DCE193EC459F4A5C0C0E719A
+33DA6124BA1D2AA3D93440FCE000C42942242A9E356E5CB10560CAC62FCD0DF1
+ADE8154DF592776882EC3A77D6202DBC204E3DFB97E05ED1128DF9A2EF0C8C3A
+5974CC0B523286147A938EDEF90923DEE8C1758FA8B6A0B689CCB1D8C365EC1A
+1F6292F3D4A8BA49B6BBDB1D92E338BBA96E00568A57C27C64F2AB8159DBD21C
+69A49DA9DA4521F6C8CABF809988F886780DC60413C46CC8512E2A3396754FCB
+6FC515E242BDC9BD32DDDFC1A4456B837C21176DD534A41583966518135D00ED
+4E4A7A6A639F464A354674CC1803A81CB9BFC1262815A4DD95229F05956B97F1
+ADFF3996303BCE98E36BC076A0A3A9C731162957B56762F8A8B5EBCD716A6804
+1954278A0EDCBC6C1719B9D3F8FCAC515A814601D6FCEED0BEB1797BE69C6404
+DDD598E08571444E08EA827BAED5D2366182480FAAA91A37C9D7EC7460A614E9
+D4D5EA6C425D9B9131C3769012FD66896BC1D0086DF016310DA3C56AB53CC840
+872F3E759A3F867E6D1D42B611C9C781BBC9AF55279547766D0351FF2B48FD49
+CE58CC05FD7297BC11F59DFA9F1C57F465FCA6FA213591A65282AD2E4A92ADAF
+
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
@@ -1806,24 +1879,33 @@
 dup 44 /comma put
 dup 45 /hyphen put
 dup 46 /period put
+dup 47 /slash put
 dup 49 /one put
 dup 50 /two put
 dup 57 /nine put
 dup 58 /colon put
 dup 65 /A put
+dup 66 /B put
 dup 67 /C put
 dup 68 /D put
 dup 69 /E put
 dup 70 /F put
 dup 71 /G put
 dup 73 /I put
+dup 74 /J put
 dup 76 /L put
+dup 77 /M put
 dup 78 /N put
+dup 79 /O put
 dup 80 /P put
+dup 81 /Q put
 dup 82 /R put
 dup 83 /S put
+dup 84 /T put
 dup 85 /U put
+dup 86 /V put
 dup 88 /X put
+dup 90 /Z put
 dup 92 /quotedblleft put
 dup 94 /circumflex put
 dup 97 /a put
@@ -1836,7 +1918,6 @@
 dup 104 /h put
 dup 105 /i put
 dup 106 /j put
-dup 107 /k put
 dup 108 /l put
 dup 109 /m put
 dup 110 /n put
@@ -1848,7 +1929,6 @@
 dup 116 /t put
 dup 117 /u put
 dup 118 /v put
-dup 119 /w put
 dup 120 /x put
 dup 121 /y put
 dup 122 /z put
@@ -1883,300 +1963,328 @@
 23DE9D803FD6E8D846B3F729BD36137E834E016242CD2F7BF048959DD45AD413
 19B985D05E5D422F3D0968375EA6A90FBEBF8B42B15F15280469D69629C08A42
 1C298CC027CC288B9C984239ABB96B6A891C1360D08F9ECC22202861E4CE9B39
-8BF27C074DB8546B9EC033E07EDF1EF79EE58A49CCFC9051741BC88C67B12A17
-43FC5E1AD7790F954892998DAD5D8DA5D9B1A80E07BB44A32B8315062C315D4F
-94F2FAA0968D92A22E99D18B93C895573FB4BC545226572941DD010D3162FDA7
-95F95773385C241AACC7764F554780290CD9439210C93F720A3E4D4CFA995EDC
-00A253BEDCCB5945EDAC6B2756ECF03B9361DF03C9C7FDD8E893B4C0C163A891
-FA088A893BFC59DA23243078664D326574DB10164697F6EFEAAA5E0CADB8980A
-711021172DF31D38852A5BAB66CF62DF570C4FA23B4D2A3129EEC899FC70552D
-28A53763C84056DA456E2DB42115A46892BB0D1890EDE69266A1C4B20757B3D6
-C2949AFC284E0968F6A45E36FB8A1D0D449D9E7B5CB2FD98335D710C4D49C0B0
-7BE55769E70DAC13E5545217A121ED7CD68B7C9FC12B72934AB29CF487059F73
-085E8251F695FED98AF3D68B808D95B1E29296A9DB121B69CC5441FAE417871E
-C20B9519C92E31B9DA047A7220B0EC09C8A47576114D85D51B4636BBF3AE7730
-83A37813FE291DC15EAE8167E62923168FDF9B9D865CD9203119668052F2B11C
-36C8BB63921CA49A44C6CEAE69C995BDEC5A097E8F1325B4EF007577FF011F45
-E3C0883EB7E6AC75AB7A69DF35A9A4900218B560FBB14660141594E8B4835E97
-EB0A4F16BEF6AF6AA26E7B601F6E49DF5338291D7012D513492C35AFD99474FD
-A4BEBE572CAE0831BA340DED3B1B10EDCD5CF8AC84DA4DEB012B9EBC87321FAD
-B411B3A3BA30EE2817CAEDADC8A4182DB35C6FF3B8961B26822CFA082F0A1CF6
-301DC800F1609F1095BD60C322C1A3EADED26963C565D3E690412E8260F2AFCE
-9AEB97329794DE537559865A14BFC1CD4F18A3DDD3BA831E7A272FAD4056FB8A
-E8469AE2965A7DF3D09491DC84C64B38355044741B32BBEF1F424907487F5191
-23A61C352620EDC72A376C7774EAE6BA078CEEF6F0ECBB2D0FB83B74F6FEEB7F
-B92DE4198EA244F6B37B4D78058B7F5CAEEE181786C328A1E30609A9058F4356
-9BE4B5DBEAD2363FE6ECCF1BB00592AC8F1DB87E892152E43683251EBDCF0A90
-719D250C673CFABAB1CF5AC4F73096F5F4FE0F6B09C51B56AE2A0B975E3DF939
-53F1D3CDDEECF80797A84F559695168D7EF0F4D191B914EE66973645B5A8F8BA
-630053293AD47AAA29890FD5771E9748122B826C0630E516AE1BF92D69EBD0A1
-5115290D1FB5924436D43754C10B88C19C886287B65D5F523D334E1AA5408C61
-C7AB1B64CFC61E3B9125472F997505F1B96A83F1FA9D7FA1ACE9B14922FC6F4B
-CB29BCACE55E5BE4FC60DF427DB44188891AE8EDACAE010CCBCF919DF7FDD464
-FCB381CB7814BC353663447A9CAA4BAF69316A614DAE7C04C27EC3A1CC70A8FB
-2FACD35753531EA3D8AE0DA9A3B7C82903B0788F904F7DDC1D3AEC9EE2EF1E2A
-3459B15A380B9A5D123A70D76D3C783A86F5EB91D5C6CCB823DD6B6B60E59CB1
-DA8324E97AC28F401CC62296690BA9AFD19E865776794DF1B4177339A470ABA9
-3197F8866787DB360902D9745BCC0E08DA6961FC2895E565200D90BFAD3F2F37
-E284301A346CADE87447C0B40C3FA1F18963B31AE3ED9BDDC6515ABD45C83AB0
-C86BD0AC11B4D482E28D14E23E7F6C2EB72E135237956B461A2A36A13D09DF99
-E4D424779BEF2957B04B349648FB88C83F9377F221C47839FA010844D7D862B0
-EBD7A39BD892C54D5FA5169889F0842333FCF45F1375B9F754841D5BE3305E65
-FA81960B0AB79EBA54E7E2CF963E75974091341D7CD2E496872C2347BD2DFF30
-B68B56B480921D8BC12545FBB10DF826595BE9EA3D93CF1771B2DF6450F795D5
-938F09DE2DB2881C0BEC916A1F3DF380B0031AC05F75E10E5A0D6BEE4A3F6210
-F7E6D72D4D3E775E6C5173F69E654084FEF9DEF26ADB0404A2150AAE50D93B5F
-4CF9C92FE57FA35DCFE5B15AC34A5718A5A48C5715156CC2A2E67C04116ACE8C
-16A8EAB5B440A00BED2B0BDC155FB888B706B0344B4976B9D65602B3AD9E9DB2
-DD35632C225B382464DD698FF8550881EDFE874E9C31F82500A83F9AD5BCEE5D
-94812BAA3E07C287966134637DCC85228C14FFDDEE4D1E76D2EA16ED148346ED
-DA487ECC9B66E218DCFF7011ACFAA313B1C544839FB58D943104A904D08A1D1A
-C681C84DCECE9C2B827E27C59314E4D11041A10CBC7818A7B23778324BD4C446
-A57EDBEBE4EF700E1B5D01CE05FE7A8EE76737DE60E15C0B14B4D8BC7F28C7A0
-46CE0292F978508E2E27D58648078E858A858D1B152B9E298FAC6460612E8A5C
-1C429659CB6A87E9A030F428D5681FA21B555B502B2195A6E961458C136B83C4
-C4AFC6D1C10F374B9598CDEC3053EA938DA72E8A78B43A4955B6C38515593809
-B6A9B549BC2F066A49E7AC0D73B53F2C04840D447984EC3EE137EA24D2E85F4D
-225650214B06205747766E1FBC1311F1CBAADD919B8729735943029091861B01
-DEEEEA8F1D8241DC7AE98545E701B4FF01F5FD23B7E5CB7FA7EFA1C41667D140
-6A80CB026B4CF677EC709331CB9A659A56D1513E3AD1A46F2629277B16DC276E
-02FC1208B0F4908AA2FA9E8C856401C5072480B41BF4083131D9F8C88C90AB95
-F108FF455C55AC92AE9E27942F8C366BB068C06F5F8E8C3C5952B63497768188
-D76ACB57961A483078FFC1107301C89F857C66016BB384B350099094E3413EBB
-C16818A0C1831684C503F93BE09EA59D74465E72400C3BF46EA7543FD8E41588
-22C32CBCF716844C6F77389D7A8C228E1A77CE46FF04CFC5080EE3AF10AA533A
-D1F56C5D1CD2465A928DAADE746FDADA0E421CC17124B4209FDF1CA9711D1548
-10A8FE928FEBB8718149BDDCFA5F3C139ECA3A2F0DCCA5AECBEC13E9EDD7D893
-1A7523B02ADC4FD3CB1E149C4F5D230827E102AF0D33128D7E88A3C66988D217
-1FFB28AB7FA2FEEFF8FFE1A84A3607B362B1BF4F531FB947C4BFA91E6C77D584
-1ED8CBB30D37059DD43271CEC02278AFBDD0E427A967E590E157653A2C0D148E
-E46E12013F686B90746EB1CD680BE1D9184066E01FE7BB5792561B7A22328312
-472D82D3A46D31568B4C790CA867EAA5B16833EC8C7404AAE9F623AA6AC17AE7
-5A7AF1D862CD1CB1F25A32DA697434EFF3849C422F8171D9A29D797C36A09537
-F37077FFC5E001FD85199C5B3D9B7FF7249B80BA8C62AD965788591CD238C3B6
-026DEBB4A60EEB2A3B62292F8F3D82C94BC629E96FEFE6EE97074F108F7080BD
-EE3540D49A94A19F4B1EB7311E9D77CB1D26D033423CD61DC4291A508AA2FD4C
-304B6C5184CBB5CFF8A3BF842B682E2CD0F7A54AF2C2D215C8B1FBCD77FB13E6
-C2254AE23E129B430AA46AB4E6B35258D470594718209777C57959C60BE17FFD
-788A7243B7110A2090501BF0C5F143017826A7B298CEA06C3B4D8D6214A2A745
-239BC0D20F1000367BAE0E9542A8FF777417E2A7B1613868DACE247D8482FAB1
-C0304AEF41233EF9A51497D224FABEF970ECD22DEF65DE46E08A1E83F367CCFE
-9E5139944B34A25624C4500A8E7FEBBD2E27A19C3279AB588C5354F19003A5F8
-287EA605919B91E86F1BD865B54EA864000ED555B5CAE90DAAD0CDAB0B7410E7
-17D283D03E0A19ED9AC3301B9888DA02DBAA7E3EC611E118B3DD32510F96BE6C
-6910FA31847F962D56209DD046AD60679F5CEA7B2EB9E8D110DCC460B01BDF1F
-9C3F7DEBEA202D6C7F0BE3A67735C4F0B542E4CB02FD9EB8FE744AD244A22DEC
-36EDE0A6181C7F092855741ABB71AD047765F9A45737F922A995BC6A8B6150D7
-F5A3D6A0DE3B4210373BDD009B22BC35436592B668F06BF1C87935D525AB43FE
-AEDDD07D65B72CCB2193C4E53DA274754140DEB1A273C13385FD877127728F68
-BEEBFBC38C893FED43CB4DEB99894FD0A3FD4405638DDD35340246C6C7307772
-A70B9C9EAB60A1C20D4D6CE62B49FD80007C657C855E10998146A6A1CF1E02CF
-51DAD4A2B65C2F2D57B62F5D79B65F0BFC8479681B23116041369D539FF1DF35
-DA9F13A50226B93529BBBB9A906C70C43E284AB297BFB47D1B1FFEF909CA3146
-FF2E87CB75530EF5D636CE3E5AF311EFA5024CEF3CB6B01632BBEF81597BD237
-EE1B2817F70980A898A43E31A802A42FB32016678F7209681F541C38A83B489B
-DE7FEB97315CF292C301215DE73EF478D912CEC84534D107F5DDD03E9AF64DD3
-8D8033AA8AE386636E01FD4200F66C51DB0BF91CB84D4EE768B9D621E60B4185
-B0EE87D2136C1CEAB8E330C5DB9FE55A14C64BEB1B1BC63841EB4C8D6AEFE495
-4E74EE83EADDF8C543B1AC74C814AF090702F32E573E5DE4CF7141ED3135EA0E
-264536181C8F59F0EA0C4E8680C26B994C6182FF91E213CFB2065C857C55B3AD
-1C4726017B887BD4DFBB46FF7EDDFCF48C4421C4F26B048581C560D9AF847DE7
-B3A0FE52DBAC291CEF0A313F17F8FE9D322559EFF979FD2E552D1F1EBEFB7AC6
-EE88B7761E0CFC97AF57F08CB88470F2DA754F09D6F128FE965B20BB2525FC98
-249C1B540C9D2D073233F8792F6F265AEC3EEEDD369052723A2C266457FD93FB
-07525B72760F160D7C2164F09B021F4F5EF58E378B3A2E9DFAD28D16CC8FEF43
-C6C99CF31F77A2DBA3DA73EAB7494222DD30C0EAEC602B7E253BA8A2462EDB42
-A4C49F987866C5424ABEC38A303D7FA64F5A343A071BDBAE02E3477E697ACA94
-1A41FA4D319F7BB630CB8F02E7644EA8D12CF3D497F4F59FD719C43AC95DB400
-015058B5130DB231CE4086E046A78788CEC68F86C9C37BB32158CCE2167141A9
-76D647E47023ADB1CE07DD63E20BBC26BE152AF945872C200486CB1EC387D4EC
-297FED25D2D2FA1B9595FED7DF8707792102AC66071BE7BD2C1E369F2F18E654
-2C1F03558B6043D11A1E28D49F7B0E45A836AE4F82F324DF072E012C67663669
-D9EF28304533AE7B282F4CB0B3F89202E04E88675A6FE03AB57BE0A02C68385E
-0AE9E3563375A2EB3C72BB2E26C0681AF73EFEBECE1B981AE6A7570D96C646DA
-75CCBE19428D8C28BACDBB5D88EC454B86818CD8AA09084003C2ABE99A1BCB5B
-1D324C9CE7A50632860C0669E9B69CC5270CC18AF2A2CF6202F50C273A5EA3EE
-9EDA893EB8629199AD7927BD9D0D1D3833FF6D741AE5D3BB3C068063285C0EC8
-6C96672CB3BFF6132F7C3A0F9E786023F00BA5D0D1EA25AD724EE01B3CCFEAB8
-655725691A3227EF4A0406CECB7AE7EB3445A4567F88C3C0E3DF7C1C9D4FCB88
-318E8086048244B2DFA9D26034B8E3D5A426E5000FB564CD26FD11BE4B0F77BC
-2AA916F915E2B0BC5D13123544313F8EEBE417CF38B694277DA68F7A6D3805A9
-4CB1BB9905C7042B5B9481EEB02E2F83C4BA2DE1F69C0ED478CAAD51B1F16207
-BD105239AC1575688AEF9CECF797BD0D500BFFBCBE9FD950A5B77744E72B3A35
-2062510F78E3DB1367ABCE1FCE968D1B370D4FD7109BA3A828B27DC8CD23D6AE
-440543FC93FFFA292EC7D997F2CE8D463A527A55B549885A5340A802CD217DFF
-38F03DDCEDF502968E8D9DD437305385ADC964EBB0ABAE75D8FC028F6B0D6D57
-CC0AC2691C0E304F3D0DC2BB38AC3BDA20580AEF0BE959D0CB5F142AA76BAB3E
-CB2061FA46F208EF10EDA17D40917E8107C7CB8F30DBDAE15BB6680E75254606
-A8B523C7C2FC96EABFA2BA6C6C0AACD8D7BAC994B696CB53D7BEE1F220D47F79
-3A68B04A705C1CC6CCB2F771A11534100ECD8FA4A84EBA138FC46105AA86C7EC
-611122CADFE8B5EA81D852B5DED241587616978FA3B76F8334A961997F2040EF
-D3C214D230636ACDC18242FA4860DECA7AC39A884D73FF37F8DAC93CF09703EF
-A36DC822458D028F849A5C7268E5AB88278E28E5F517CE724D47F0ECF0E8690C
-9313B361BD056DDB0880F43791636C4D40D18A9F46D945CAAA035EB7E0A7F570
-FE4013193C331556B369ADDF007686B7EC08F844C1C88BF1D9BB27DFA579BBDA
-492F89AD3913CBB7BD27B484BFE398CDD06D2F1A128F7BFA78C0FC3607FD68BE
-1A84E848850619BF7A0E545635AA857CAAF88D9EDCF50F668DE044456D4EE431
-2F87676407D4AC6F55330FBBAC38D3285C7DE696C517ECC358E7A064A6B03CAB
-2AA9431C4E3414F783D959D492B3BEAF1E73F57C2B0005B23872181F244DD164
-5D51E7EBAF9D75003E61AE6CCD92CC885CD9767B0B7B358F35C5201311B2F19F
-CC351286CA466E5084F6276599CD9941A9284BF962FD738ADAA3E27D51D0FC9C
-EA531A758E2B73AB87E1A57ED9458663426408B196E541FFF8BE5374D76D0746
-C44296870BF94FA77437E5D3124661A0574252D85BF62F0E9829911FEE953A1C
-C14694D8B4CD34846042271E01ACA1145D8835BB17EE09CF56F47EE0A2854580
-C3910B6673525F99D9932CBAE85DE93DF2B0CF892E6AF3E568275230DA9408E7
-C918F74F101CFFC1F4F7E49596A100DB9146E5F53E1FF87359C27E8DFE3E8AF1
-7731036EEF9E8CCD909BD3BE82392D55ABC50A90A89EC845ABB750CD138E0C33
-5E8847C34758F45CD07F3BD674C76DAF0FCF70B18C4BED29F7E1550D797B6A44
-93DD8F6BDD80EFE7720E59174B08023F013949457EDF6A2F0BA9F4DE8E626F40
-FA05A492E0EF4D8C68AA8C4B4FBF00AF3F6CD11CE75FA71EEF0AB91C96DF37BB
-CD82049F8C20C8F3524A150F4E39E5D21081A507E7CE1EF3EB3FFCC6AFDA7603
-0EAC4B07E297A96AD2069194A61BE8B113C4D20D325822C85B8CFCFA3F40C758
-47BBDBC0769B9FBED494A1BA0D4E61922B8C0E417357C3561FC56A901F175DD3
-281651EA8529914F2E4837A2DA0CA3B46004D5552107907934364F7DEE939826
-7D06196829F660151737416FB20ECB8F36E3D8D7BFD6712959139B5AC5919FD7
-C0E216C3BDD875B322BE612D818E1E32D6ABCF1B2555406BDCA36868302A9E3B
-4FA13AF128F2E59C33038FC4DE675C431C4D52FD0BDE232C3DF031747D4C86FD
-871493731C2208DF1541873443DD5ED8E03CC0DB539B46E130B60B01C552B698
-200BC9B7A54D6F10C95814221FB27498D2446FFDAFB61478AA47467531E25B9D
-4D06740D92DE79093B23D38C36E5055B380538FC7A8EAEBB47F60EE2435F2843
-55714BE5961428A15B7A86E6230748FB48D9DA30ECC5A386E4DA32C0F69EDCAB
-81248034D037C66FE305777D1D0577BDDE3B984E9C807F49FBF7CF363742D5CE
-FAD614C86256BBDBC6A09803B8273BADF9F12861F5D221492E686293A41EA097
-6313B2F776A927345CFE6FA20A12764DFC36154B87180EE143F0C4A1A52C0BDE
-B1B499D4B882242F96A5DA4B7BDE3C4E46EB2117078CF24236BE617C9B27E852
-D88BA1AF41A0FDE6EF7FA39983C3F92010146194E454E8DCCB8BBE45069632B8
-90B5224FC5E789ED902B688C2348907B9B43CDCF0E91D683F28187D0280BC535
-5B1DC2F60309299589D1FE956DEC7D41542612F7A144524C905D2A85FBEC56C2
-E277A10A0A7DB950650ADFBD892F6AEDA7A6C656FDC8385BBEA11132843BF8B2
-AE328AC118813A49902F0A6B82266CD00E44C0C82F9F5E9900209910E44D3A77
-2E6B344E9A4F293134BDDF84FC2C84EF0C683D57317B83AB1B330E2EF0021B4F
-43CD405BF85B734605302C324EDED59C7E7C677B9F2C2B1F483F7D80428CCC10
-49A94151FA23949E63E02FAFE36496DBDB68CC2A22878ED902A15CE90D4435C6
-4D46DA5DC2058936196CC461ED2EE73C0AE0B56BFE5BBB01F478F7C314CF6764
-00DAAFBE44C85C1134D24BDD597E0A81030B6E2A4927D5D5D6ADA216A43D12F7
-0945779E613582D17221720C2783074A6A1094D749C281F70BA0C3FDF100CFC2
-3F0F532AB5DFE9042C01F98887CC49D0A977317D75E8D59BDC200D14FCF510DD
-CA3D11CF61C1F61EA16078B90ECBD382B5605832659FDBA78D7C6C608948DC07
-0D5B9C44FD2930EEFFC22620F3AEF09EFA314D19EF05961EF46324C98CDD9EA9
-A3F47610D6B44E4FB344493B3C2DBFBBACDF9FE7F07812A0D313180DAF366106
-AD062285D32B024F49595D2674B5171A589EBEAE22EAAFF40BEC96357E60E345
-103BDD9EEEE21F9F84DED65A2E2AD59F758199FC083B514132A6930C8CBF7B2D
-B67F96555A5A4C4E6130C5BC91747088AD9FE4CB9D0B27CB9F96E8BFD9032BC2
-27A1805AFC34397DF1FD3B91E788AB1FC646CC9FC4DD20B1CF4B0F22A49D6989
-30770EE4C4C94855AC800D32BE207039C30AB0C371ECAC040378EF60072F4D68
-4CB1C03F8ED7945BFE08EB333C0C39C869F38BADC8D2AA1B9F57B22764D739DE
-2D51FCD79BBBEBAC09BCA917B7B3A0CD6240DDB93D6FC5C9D64A7D031CEF2481
-A05484F1D774F6D0F08D794C856F2655A6B32827AB2638EECC3F5AA1954B8DE9
-1868413014B763F69550B9D9652DCED1484A0B29CDF42C89A4AFA274BD3BABC3
-6B360049344D5ACF2FC7005A58A6C6C558111C0D03E979799A523D2A2B6AB19A
-B20B4DB1D7A1F7A8B02C1CC80B467BB5CF48BBE83440DAE2538A8E98E9588E86
-FD288D912C9545B06D76B6BF85D9E65B015C973CB5FFEF88534165C577DE2939
-059FFB0074F8F990FAC7C93164DB9D34679847F10B565D4EFAB25B35C2F344D9
-DD4FE332F13965F3F9141CFAEA3A77DB7AEBDB37DDFA94BC8BDD9526BE3B164A
-264B9FC25D35AD5971CE33F4BDB6C88366E631FE6D95D1D120C1C795DDEB9FE2
-85AC2411A1A6E8DBC2AD15025E99722C34C60EAA8F6AFDBED517E913FB9F9BBC
-4CC1518EA5C025ACAE47F5BF85C32033441F063DB1E4D86345A90FAF8ABF117B
-F4955D9E290983A345D2AEB9E814D3409F81B25CE379A83666C97F2155BF043C
-A94E67CBFFD74C5AC64B0B37308F164FF6E504849A6D0EC31F164CA448B41715
-2984901A91C838220A9FE10B63FABBEFC8242DE104EDF1A481BEF5983FB24125
-DEB311F86A7617E51BC2F7F42DBE58B6C07BF172FDAA453C3F5FC86203FB25DC
-0A46FA2FB67938CB23F4BEF64358799FF977B27BB867ABA03D3B513145D05CFC
-D7A787D0FD9D13AEC24A41F3FC2764F5425ACBAB0DAB6B589C25189B8553A533
-54ED84484D06846ED7B466388AB564A7F7A18BFD286785994D5ED90971F0AE2B
-76C62774DFB83A270195FE2DC572DFE7CF77501BB73DB6B5469117580B42F2DA
-AFEE4ED1EBD79DF8C166C0290C2925398FF3570454C7D8894D8D2B1120CF908B
-CC3E3D692140693A5A90C36004E81AF301299582314E83FF048E9EF457B58667
-D34497CCED4B48C9EAE754DA35053B55AB9D6E3C4B6721624D1824A117AA5A8A
-48B30A1161E5D314119F6EBB7493EBCA149CF67E34EECCE22EEB46FA1E73836F
-9A96551285A7BDDB10101F7AB5954ADB15DA7294441E44EE8F751B3856E729FC
-79BB96554A08D58B74C3C0F238DF2B099AE3562A743220121CD424227E4DB032
-63B417A3E39670B4BEC408EC7FDFAD0380F5963380C3231975F0D8D2ADACF133
-54BFA59CE5A37AD55FEAF9A49D646D328524D6FD826C985DDC80E935CE1C1F8F
-8F9166D2F4274A39D780DF4EDBD508888F20C71F4A0C99765CFE51943790027D
-AD6FE248FD285B872A39991A880B910DB1B4BD5A5A0E6905963C55F0C534A347
-E53C77CE22393C2B181952BDB53234CAE8E46D252941ADE07E6E3A22440A9A7F
-F4F937912590297DAE0FF52B18DFA9C8E5F8B950DD41A7C8AD57204A0CF4E004
-6566B642334410FFC60C53A4CD6238CB9815D8D536FBFBD3220DD77F5C0EB04E
-6E28C5871A39743F9EE9FC507552C9B01F33E9AD9C1A8C23E584E75D9F3DD82E
-32722D372F3677E9AFAEECFEA2A66CD6C23DC23EA834DBAA0B80B494028624CB
-E51F885CD7BD4E14988F28D3D09791AC198A3BEA3886B6FC502A3B83A10DC2ED
-33FB4DF58BC57C74A9E72457232614FA03C1BBCA6FC4C06D06ECCD800C7E9813
-C380642552723243D2A13287D137A7149FDA264591232E5039571EF3FD551A13
-758145C95D61367A3C5DBEE88E2E433EDBD7E1C56CBE8C53E7877F4F9F57CF07
-34D9B4E1A186B89D6058F5E84290525B4F1721A3DCA513C8C61651BAB76A06EF
-84A87E307D72DF079777AFFDB66638E4141C16A819EED46C6EF68C5A70B003E7
-E4A2FD7ECBDBE22A85F078CD559FE8126E2338F4490E2CFB8FF4A3E99EC95610
-B95847013C2A74CA195D55F58C06A8EB34396943C1EC86A7089680D3264D6239
-B5A340380252F9AE87F031023E6B4A6895700EBED6E0C03C05B61EB538F2E16A
-DE9CFA6725FDABE88CA7F47BEF17ABA44A1402D1926ED28A716BDFDA75EEC4ED
-11A61D3FBDF2E20BEC4CA0E11EE2C6B34BA06D530441D37CAE630FFDC7A2EF75
-42BE0F10DFF82D0608C288C95FBCDAE8C5187F8B6B5FA8812D91A4A27E463F45
-0D8F99E45B61EB51DBBC2DDCE17050E1A571C833E143AEDE146E7AD8985D1E05
-38313A5EA7CDF113D32EBE8112F33997210AC269351DF254D5FD4C9802119D65
-E90C561FE0925B4B70DE46FDE1982CAC66932755A47C38A3BAD813D3006E21FB
-462D92B522C177FD6BF59C87F430641FAE6411DD968F6E16DB67F0A0D0F0BF3B
-4B174A4F358773C77FAB0FA43F247BF5A34885278A90A66C51D23CAC568798D1
-BAAE3A53794AD4B859B55A9725B8C6CFCE39EB33173AA0FA208024B7B4573D86
-FA0A36D7FF4D0BFE4F5B0AD61F8787F882B3FC66B5A338A3D98F9F4C6F582876
-FA572C8BBD0A596BCE26840E3248B360D85A20B4D7D15AF021B2AAFD7E65046C
-4D6D6403C3295AD2B7EF7E0A723CC2FEA7C7775034144931CDFBF03F3A0CA545
-AFCEFC2B3B81D262653634F1D28C4D8F0144C37ABFEB5990CDC39BE0808F6303
-84D66FC73B287560F6C8A19302CA0EF7C010CE25825E1CCDA0D4425E127FC9DA
-1770932B876F1250069FCC28DA68A6A1FE0F2ABCFE2432AD27C15255DA933C59
-D2419C06E059CBC2E9BA15BC480FCD1225EB7CE405130673D6BEADC930857770
-8E06FCA9E032F1CC2D5BB453C37A734E79BE7114C887B70450DC34C25A976A3E
-9E3192C11C72A21FAA62E993DEEB6203C731E5438D9BE24AEEC67840B6B34EC1
-A6F90F98E7FF79C2E49BB408D76823F2F18DE1BAC9CBE2A1D10A91899FFD90A4
-144ADB599B30CD7D6E010C14BBE4E8A20D0FC730966570B1684E3DF2C388F148
-CF9000D23A07F02524016FF7E7B4A22CFC99B8BB0476225F1A6AF16CF277C492
-414B9691138458704F585F2FB7EAE7F0CCAE1309FD8812AE6AD8D6114F89B823
-7EAB65A43C4835DFFBFBB3B9C73060BE5A840F85CAB2C13951CECC33BD2C2EA1
-774DB4B04F016F7645EE70DFC934FE567697139C1D6A6A70C136B88109452FBE
-0FDC9DC0B4CD83E819B007A11DA13693F07B7D67678248E54A353782E10A88FD
-8AE2472F6DEFED860D2716511F5FE259DCC217F98FB50B8DD7870CF25FC15D2E
-DE8EDC50B0F4233A74B59885CF3B7F54B913998C670A1072F0AA4931AE538A31
-44404A57E0C47280B7CD731056B1AEC399BC44E2461A9A1585CBDB08070DDE4F
-8B484DB21A931A8B8E96DF7DD720DF83563A04A9C2D114F367121D9F6D6205B9
-1DF91E59D5B176E28855A63CDFF6B890E3DF12C3FF79C0999B7077EDEC6F15E7
-BE5113ADB76F7AE1A9FAF5AD5013A8C7E4090B6F2049FE5E246AA70E707CB830
-59EDEF6CB93FBF9CAF277D55A7B8C4A32A1F665F3333AE795FC502C76E1904FF
-026650982495FC9F0E49DD84A2351157B3CD43623A95813C73CB1DF430E8DF8C
-5724B588D5C66F6BA66CC2D879B30DC09C1804A05B0C7C5D5362931E88D167F9
-8E249AEB644AE2B2C81ACA102820AE78E8D0A345D1342986F1AF422654FE61E9
-775E8ABD63D69ED50BC9FAEFD95A3B6BD1364112C24963FC12CB26B923F65098
-10C052FF431B3A699623C54C5BEF10EFD0615AA4B233D31E12D2ADD101A82EB2
-95957EBC9DBAB709610FE16BD5977DA98CC5282F4CBFDE9E6CA374E5F2EAE844
-2A4EE60B3CA1BD66111C1D442546ACD24AE2FE5191B809E42B33E61084069939
-D0459AC03F5A87F980AAE2957DF9FC66F0B0F82942D196BD9C1E09F377B26BB8
-9D5290B521B4EB324B0CD2B4E90E693B4BBA3ED26CD6166AECEE3DA064BA070F
-25C1527F08DFF170E157C093CF03B5AA33EC4B6D821D36F82310D12773994B97
-1EFF03BA2EEB6A575089CE26E7FDF5AAE940A95556917E66988B020A5B2FEA93
-2C8A3A6A7D2B5161BE2E23D97D8DCD7B910994E5390B2B0547A947CA9AD1844E
-25DD17D053B16E9E906F105B22FD49F098DED6C01F6DBCF1596A231977BF0515
-1E403A20CE2AA91CD305F829E2C53B3193D63205A5CF28EB010B3E73EA3CD54E
-3091DCF5FCDABCF9248BF695160405391E2F16393217DBAA0EA3EB26EF2539D7
-5A2AA11A797507B8674F18CC5E51268EE1812002D953A996A2FA2F58B21791DF
-5C7DD053983B05AC2D189C79B14CE62E7A13F831538800B37255A1B0E47C40D9
-073057E9810A0D776444555192114CEA8A93988A5E7C991D7B849D2DC3B6F080
-A831B347244E3B13EC832606041FB873CDC4627101B786139CBB1230195B6762
-0F4C83A90CBF82C201E5D8E4706138FB7D2C8CF897B1A2C6EE95932D2EFDB721
-4D48C1FB6F3DB3BCCBC707C0838AEBB401F85E6C57C6A44C62F1211B8E6F47DA
-9F18FE08E4BF7FC649F69DE56BD8F7F208D423467CC1F12AD35EED103C0A52E3
-6610B9E516BCF6F87AAA901B72F3CE26391412F5B36518C9FB78CDAADD47440D
-583AE8DEB9848648D1C9791FDBC99BB0C0661743104D589CB1C7274BE7EB7A6E
-07C360BFE998E52E6F902BBFEAEA95144ADA9A4EEF9B6FB073C5BBC27E2E8C11
-7EE0BD58224E024DC4A39A68D60CC69A9461C70007BB84EFBCED896D4B6656DA
-22E33D9AEC5D1B1AC9B06BCEC5E6AAA35B16250DC29E3C75E33E9C0144910160
-3B685EBE422EE091E35CDBA3AEA8B712160425C794C6D11A9B8353014C0D613A
-267AC941E3D5F051B76B68D7EFE77E6B060436ACBD54C185212D3201D4D5C5E8
-62BDD6401446A8F6D5F5757A95FE5B0F667CCE473779A386E1E80BCA1C38257A
-782335B9DC94BAE09538F63F95C2B95DCAEC6783E47986F969ECEFD656A6CAFA
-E1A74AC8024558EE17551D308B1593F1E2A4D23FD570BC70E035B232D946FB9C
-18C26F3A11D6CBD6A0C38B6B3E6E0C30A894D9CFEE3E02864A10762A1D197212
-567DA355E1C3C5DEC8E5F45917D925454973888FC27F8477B2E5088EDA336481
-4CDD5C2DA4430506603114B1A74398C3C80CD1ACD298F09ADA220BF855C1E8B0
-
+8BF2773F290801174DF1E106976E76D30DD26B2EAE14AEB46D9A6D5AE5DF24A8
+B1E70BF48388EB19A7C8B29C32060E48BD7F76511BDBCE65E842AC959C5046A1
+6E86BE1D71E78FA3D60420BDDE4B7AB23451F5A87CE169C24F59690D2FD61D9C
+81E29D0D3038876B09C9D5EF38006216080B644EEF27E9180DD485331A7F1C68
+2C324524CF7004B8EC76AB44560990C477AD1D11313545C7FEF3229FD8E1FB81
+C0CB794C23C0492563BF15952C1731D2613402854B0F0F69167C361E716AD247
+9A1599DB7CC277C2B15C4A8E7BC15BBF09B9FEC12962ACA3A21689E52D2F5D86
+14E14A8BA91C2502D8FBC950C4E9EE94406CC23EEF8656A3A19D820BA6A0CBD2
+04862E9B4F5C07062AD949972F8D5EF41C6B2386F26387FB0AD1D38345FCBD22
+D893B36A46C1BF3A2E79ED3864918BE7E859942A81D782517C61BCB8B71C22E3
+C83771B414724B5F477B2E7D2A4A3B31A7ED7D5CBEE58DC728E3912E8BF5D43E
+426CB9B73743CC9EC1C01E4D16B76D7D9D03EAB503168D6E8ECCE7C8264C16FA
+1CDDEE973D998C8D288BBB744E9A173CD45A9137FBC7428BEC36B98BA93A795A
+5B0363C503A49AE6FC8B77A7552E9486FD3885A69DD3DEEF00BA80712ED3AC18
+9C2AFD2ED50D78082BDB7EF77A828569EBD177ED828131936E925A60892F8972
+4216E46BEBC69A036BC915EAFBDDE504597BEE45A71B1F3EF8A725E9F8E12724
+7DAAD1B0F6F4CAFD0F9B7D6331490DE84B995192A4A74052D9D77FB87863251A
+E735E9146686F8B94AFC8E844D93FE36C9B2A7F9759AAEB94C00C174FE87A68B
+AF6304021C16F70D6DE0AC4D41B061493F1541E9660B85CC9D144BF7CC74C600
+BC3B4852D3EF21C96272DB7951CD7C99E089A12B950A64ACCD27E2A60CFFCA6C
+9A1C2FE056038CFFE667E4ED31A009DCC1897A82B113351866778927659DE5F0
+34A5A0C423EC636B8AA500F111EE3582B44E84422C745EFDF79A5567CD08FD30
+A7C3D4F4FDAA6C0443ECD80C37A6B8C79DC8777BEE2A29D9A8F886C32D9C1A27
+E36A1E1679D9397499222A00057B19DA30FA8D467AF6E39C3B144D465EBDE9D2
+A29B9D1004347E6B3ADB1988705E880F893733C09C3872092D4F57ABD8799AE3
+D93B799874C6C244E29F265101E561DA0E1A55CCA8FE7CCF33853BC63DA0BB30
+7D10C87A53F259CC17B04B24702C7011352ED6708BA178E3EFD64B9771EBBF29
+858F659D242316B0D8235FCFD5753482C30273258D25D76795C043962D6277FC
+5F11266D677AEB3FEF1C78CFCE463D8F5754DEF529F858FB63BB189AF6AC5DFD
+8CDA9EA75BCE010CC6442F7C3A2A4E82445C09F945099242F9150BF0FF432F5E
+0FBA3531493740A37ACFD827D615B51E8B31C2D04C1BADF631BCD0D88C69C3ED
+522FADE93F486BFCA28E7784C4F18D5C0810B61F1623EFC75A01A2D4CC5A6EEE
+4F1833AE27D66790747A55B544443A5A4F760D4D32658226B02AB823B50F0C27
+5AB96B1EBAB4BD292FB398E68E347D08BF931684A4B040F4080F6029ECCFD3E4
+1634F11963FB3696D7CE5BD792719D225DAD34C0FEFD258005B6D17E7AB2A3F1
+2CE99485B7EA798A0A4C82F4C62682E8DD71A8AE2DC06215E2FCAE9FCD0299ED
+71D9E2076938618EB24DDD70ABBEFE881F5C7E53A35F53E14D3A0A384F5C1887
+F3271B35DF22D585A6DBC6FD9EC887FED3FEE171B9D26D7A6D5F2D2E95B614D0
+A3A183FD19976EE569CA71BB04F0EE0B4004DD920F0E06E5EEFD7C534DC26F93
+5D089A83940C5CA041311B0C260BBDC4E507FB1EAE6E6611D92368581EEC40C6
+25456404194F3B39CCBC7B598690A63160D48E65DCEB2DBCC71838A43FE3E706
+866189E14D38E1F3F8665FD22DBA0C6632C39FE499645BEB569C27A55656EC16
+343CF42D90F6075FFCECE177E5D8AAA1AEBE69C54A5E6EE9FD63D163AB088835
+07C41D1B87E3A69D94AC3EA01203A90869FB78181265CD6FEFF5104A715B304F
+17BB57519044AF0ED113C35ED50EC5D1DDC9F64C49C54F5BE09DB5A55A15C2B8
+530CCDA044B3348279ACE2DB78B933F785D630DC5A50B5FD8B59F66CDCD5F144
+57E006AAD9C8E46F8449FE10A4FAD67399FEAD2BF4C84786999A0A202E6DE102
+4DE5A1C1AA193CCE7DDED11E061448729C2DFD77779D6137B8F16CBA1F542CAB
+DEF8D0F43E978C091F81C3E1880760E0DF6A803AD22FB18FAC19FFFCA27545C1
+A95CE57F49DC14C45042D668F486AFB17D2BC068ED6DEE387D8C1D79F6B604E1
+6B93DFFB4F740FBB246A77A20B259E0CAD2A041E49F5E8B7621BD7949C639A83
+2E22360FF4568EED8D7E5878F0ECEAD16D0C0FCEF5C60182067F65E780A85C8D
+13024A83741CEF3A0A5C7EC9AF17CC3B6A7E8E9F5CE1D9030D2B8A149870F5AE
+A6F8837E098623F4DEAFC72ABA66C2A8C451850FC4A445F7F9A5180F3A507B76
+1864229D203C2BC502FF4FAA942280C7A41AB3DCD6D6F17BC8BEE1B2778A3EDB
+7B774D000264DCE3CB4C0578637E1E5A73AFA25A514757B1E78A25B53F3A0B72
+F1C46520887103EFEEA0C8B74E03E0B2ADCF05060649B9C4AC1A38584D99482F
+3829548F3E8F8C84ABFF1FEBE6724E2B993B663B2611FDB5CEA8DB995C4841F2
+4370304BEA5FF2C7E1924DFE092F0962E2C21699BB0743B12714E9224F9AA72F
+EBB381ABCF5FCCEB0ECBFE24CFE859CE16A37A97843153B282E9EC4A7981512E
+9F6297E022C86BB50AB022EABFB2EDACB1768A07A6D6F93A37184AFAF9895B42
+F57FBB2BC89CD2CE89401AE756BEF39C9EABF986F68228A1FA92397B2AD65A9B
+4A9620866FB7935F2AFB353AAC7BD2212F03BF3CD7A675B97FD8F2E76D9AD388
+77401035D70C39FEA2D06096EC8B91B7105EB70683D6F086B4FF1B9CDD2B9ACF
+A69E0A056845E0634240DC2EAC13C086461954A90713F71FAA11F764137B9D20
+EA17D85B0B8690FB5DB9ED6DE8A59B857120401A43FF7C681B196DC34FE6DF80
+ADFF9F8044B5A73A46FD3730BDA083410904202ACFAF9B7AC9D6E1FEA68642DC
+89A8C69B8007693EA58059139C89D82376838FF3666D715F119DCCE6125BC239
+132B8F8B1910987E0431B226C86A3E75184DEF8F81D6AC4C6965CB7F609F24BB
+ACD268891727A67844B3DA9E65040DD4E6CE9EBEE720C70D419046A066A8A241
+FC17DD94FD4971A21D4B1ED809AE4E5BDF0CD2FD2C8D0E2B09162CB222B1A8F7
+E3384E2CB9B8ACD63763B11EE9FC647D74CD76F27D396285C319EC7BB85B7771
+E9984F7ABF4C7F84D1D3C458468BC86810370B8160C19EF5CECDD8B37A374ACB
+8C933C06270F2BCFCC8BC87246B7B0D83A85ECE239A435E7A46AC9E3A938A558
+603E8183620B7AED5B367F153F77F2741C21DE1C931FBB736D558191F7708DC7
+F5B5BC9291E9E283B6239E3D83B7B880DB26BD8375CD85FBB6C68800F56E65DB
+4E5D7E3DB87086C516188127FA6C9D9C874FD38DC3595CB55FFCF7A21D21E09A
+C0B8BBDDBD0412CB3C74FE85135E92AD2A74D7AFE61081BE8417446ECBB23574
+47F6A7F98BB95FED5ED34CBB36FA755A9BBE6EA87413A7F15CD0AB74E1C28731
+286FB50A23E012E26CA483CEE2835968CC6CAF6586C854E8F7786890763ABE99
+2822C1EE910AE51B0A69F39899406E993766034ABEDB8D955282B84D7194E204
+6410401868B4391890655E0B68108F8A714F41D9B0DA6CAF880E63EB84164E36
+78EAE9E37185D70D3FE3EF8600E351D9D55598327FB15BC01E49689147D5D0B8
+DF3B15523463C24329D251AB7F8B1322C6A426AFC978AA27FD1C4C2C3C0432FD
+173ED14F342C657F0A9165D09B33CB22BF9B10D7AD6FF075E0A7D00575CA6ACA
+4FC24DD249B472B0F7D812F37CD3311C63FF0ED922C287EBE368AAFC6289ECE6
+E52A0F23CC722EA14E492E475D9EAD2897BE707A3213F6442AE3974A33C69A1B
+DF8578075D47C61424B72E873752B6DB765A534007417560C8690CA7126748D5
+024FB3E9132E26267F4BEFE045B0A50265C3A6ADC2D9AC8A36C58E04C7257CA7
+82B3025A1D7D69B7833208BCC30B47F7B9DB1C15F8AFDCCC69CB42949530E38E
+8B98A151AA6BEAB2C9380560BDC236E660B9DD4B2C1A486E0E0D54039C9B7E99
+7EFF71AC4E07A863D36A09374AA63B12B671F334C32A0099EFEB2DE50697F5E4
+C2FB06A421D633CB7531826DE3FC00D9C051992C005A45B9EB4F0003EE294875
+B6EC2143C49D07E51AC0BF62CDCD56A94445116BBC872C61DE454596B0E23263
+4294F72B7AC189A3F6C9F1B726A8F422F4114D8835019867791531ED34767605
+305DB7CD7ABE8290DCBDF9C219F9EB6EF7EFECFAC3FF3B5DDA13B91D0B3CEE3E
+FE1E85E6028542067D149F727BE995B1028D451D8DF9BA109F5A01887DF4F0AE
+B786B4CB6F37AA98884083D055051D9371638591C3AC62BCCC474326986A21D0
+711D1642D457A30E49038645E6BF5ACB3B46D0A0E60FF2BCA7088ACE271E7376
+E2CC365A3180DA33977DBC15FB5C0AEEE6877ED6020267F65EFCA736EC2D6E6E
+7C57BEF4DEF28B5FCD8A33F5E634F421297006149536ADF669F9FAE0465697CE
+3B9B67A0651D21794FFFD966FD833BDE89DBFAB72465DFCDAC76038AB62E6599
+7310F1492CC4E3136AB7A06E6130690FAF1168EDB7123DABFC8180E7ACB21D1E
+A68AB0CC8765F61E087C11272DD62B1181530A819FCC15AA8ADB82E7B60C7F9E
+5D3C7EF78A61A0BBA9FE436211C4273976B53297ADA19E6B34E185F4E24C4090
+71AE1F9515C3D032CCD29EC1411780D4C90AEB08C67BCE1DCC6D45A6505ADA9A
+68EB5CB00173B5A6CF5B45856560798A9C6EDC1F43064FD6C54FECC27333B588
+9A35E1FEF53933AED516921E768FCE1C25DF66F45CC3854C9D82D4AAAAE9F1FC
+D5A0684596C00E4B48F40FD246CB91DA53A99E96BF7D72BE7E8A1F80777449D1
+2AF02ECB23EC42ACB06EF6E3F16FDECB75101CFE4C1C7EE92E942F4C6602A98E
+BC4FCB57DBB6E5F7DA3BC5501F371B6014187833547EB0D0C57AC9AAA7E27355
+CD3525C516D5E279E509BA54726DD9A3F7176552F808F6D3E73A484872E3135A
+BF56934C6AEC8008CD97EF53893871F0F8647677F33D586BF675D723A96BD6B0
+A0EFB8C5D93C9EF29509BE2398BFF3094F639E18CF7D27DA441DB5664D6B5E60
+BE9FADD4FAC3914B88871758CBCCBB38E8C4E72A4B53744A22D9894BCABB0144
+667F9E22DBAAD7934394469626CCD133AC2800882449FE082BDE41CDCDD4AC44
+7E20F083020EB46E59D9DBC744A4C7C11D5286C640DF888BE17A15E11C603435
+247B8D3892A888D88AEC22776E94861B98277FAC0F147CB0DC13CC7ED2E92C43
+CF845A58FEB59A570DA559C2A6084B1A44E2E6AE6BBA8A23512CB6AEBFA8A8A4
+5E9A5DE1BA9F175B77138469A90503D61DB62C2EBFB3B3E2D6522FF4F28B371D
+9E4A18C6195F3EC4FBFE0C9C1F1FF37FF0E1F8FC58EB7A58DBBEC681973EF716
+44ACB1C9DE4D2E82548A149E3D829DD3D5652F8A2AFD10A75DF0EB3FE4187063
+C88C7CFC0B3456AE1DBFF4D448FE2CBD205EEE3B727C76D2C7DED8926CCC1D40
+B566DF075326821926D92FF7B9F31B63F4DBE1A59B246E11FD06F0D2CA106895
+89F3259D6A9CC4611425ED3F494A3314E9A8FEDB74681B7F8E50FC2E04826A59
+9D1F6C6ECADF0B237872BE71F13D001E56CDE77D2DC8AEDD4471F56CFA9BC03B
+00B943B3C5D65B9F2FB053AC9A8930F46702B466C7D30AA7602FE1646D7EB045
+4CE04C8C9A68E9209812CAC5274DA6B5BA9431773AFE05B16AD6F07598337E93
+ED5B324AB15FC9BC52357B16A988C2D1447500534EB8A44CF6A03EB9CB247239
+A5C942951721E762A014D340858BDC57D1EAC94CB32881740C23995BFA3D91CC
+03CC1DD258A1097A29B0D0DD534D38B4BA0FB7B364BB9CDEE55569833B8900B1
+15F5B6B08FBD59C9DA5FC3E6C6CB7EA0486DB1EAF8C10177881AF188AE360C0F
+84F439766F7334A1F71F43FFEE23D0D7A545A426A95402D4FAD95354C6F79E9C
+688756C872C539E3FD53D92F12FAAC12569BAE2D75741D8FE2BAE684C61C0465
+48EA4A909FFE97239007815CC1976424C06A9D0CCA6CEE35574506604DD41A05
+3D84872C8F4D6C8653F2E3C1F90D66896EF1EDBBB78FF3FE86F92829BBC6FAA1
+6E327EBA28D0C623EF62928696D810CBFA72E12BA47AF369301489C4D7D70173
+4A71D089B71577E5338C3BCF637A1E262B187152CB5BA800E4B135690FAAF1AE
+E9464FCCEB38B1FDDCDE15060F51881EED476CD29FC0348A14EB5C48CED2D412
+B1F332B6BFE818D276C4D86E879B7B3B24FC3BA11FC22A44648B84DD304FA21C
+5A8A4CF56D1A4676A2C6C053E136A186D358DF383B9683234BA3CE3B4F2DFD58
+E78EA633572C9F03959E2B43BFA210E500B7178C23DC1E1FE9C10A693A79A29D
+E05DB8FDB7ADE08F2CE99E7B7A5A22C5EBA78D061ADC32122622B618AD22002F
+A04CC36F7D4AAAAFED1EC490CB1772D7B10E2E67A51FA830584DBE97BC0F2E20
+986B18B80DAEBEF08F5D145D8AC82AFBD8AEA7543E2FFC7623BF96D0AB99E1B5
+95245616F416A23D13B28361AB00753BA62C0609FC8FAEF12A4F5ADF11F58CE0
+C13CB24D3FB26E2D1DFF42E41BEDB3F0AB6F6970A76AB635B962C6B91D062D66
+15B1376E0E327EB4AB469A0663C86BED1C24607FE4CE5D6E09D6214B15628CB3
+BDE6A6BDF80206A25A5B07D1B55116C8858CD6E06AB272FA5104A3D852F04B2F
+D1A57F428859533DE8E5B7D61E53ECC5B85A807A680280A393CE9AF335A7BD0A
+C0568444439B3A0558D5F94FFF4DF4644F8B1FC6397D7F8A656A61394B631AF2
+77D43C8D06CB9CB020802578A1BF512353E632648FEA9400DD75E6803248D748
+7C84DE95977E95512723219029C03964441B2B96256A5B2B386A034A2D2B6586
+F0B73A5049FD96D5A54DA035F72FCE3F722584AF90452DD3B57DF93978A29FAE
+07CCE8872FD1C1F6B60886713FAC54D7493DC4391773C6B4F93F4AB4AFAD28FB
+2798AB8258448819FE0F3214C28227E080C7379F3B1F307B726EEAD0324790BA
+EE5A942DDE3E672DDCE377E0CC813A49E59465A91890E4CC6263A346B491A824
+C0355F1C2CFDB4724CABA263DA2DF1D9CD67779BA725C0FE7EFA2962541AC1AD
+CF100A8C0DBA44D54996387A7003DF1E72C32085A6F5EFC231EE1197F1F585EF
+F06BF997B2E11A2024F5628BE445B7F422697F27E267C8ED1CAB42F65BC88B7E
+6ED0C8D72C445691FBBC02D15455E9905C54B90646D3C2D3B741EBE943E31CCF
+63315D8FD762DDA3362C8CB30406E38FB38144E026E353C36B0459C65E66B79C
+AB289755A9BB7588E4C30ED78AA5EDAEEF32A81D040A60BB612E75FE23DDCBB5
+CD7F63FB545A0DBE2C9284CF11C34CC05C0291CDD3B94F2313A209A6E9778194
+7D20D65D69CCA1291694143193BF1D9E54FE17C49AAF74B94A321F2B33B3D38E
+DC8B6C10AF802C7950FFF1279728BA0E65EAABE0590EC9A41C68416A4450CEC5
+344E7C920E35BD047E87B27B019BD08550083D9ADFD3692FBFA17CDE56F7383B
+BC8FA281C6B5BDBF7F8515E60C4849E568335D06BF31025BD27D5A0747C85424
+3FFABCD15B690BD43FFAF11BF4ED7DACD462F36D50CE750399EA7AF7EB833D35
+0849EBA735755A0580DAE1FA3B8266FD53E313A9174CB4A1946013F812F63EAA
+980F4CF357F8BEAB360CE726E19D0EA211E21B7579453156E339AD3D2C251038
+57621F427D0B859BC44E2803256C5B5234DC3DB6D49DCA330AB7D71B23F05E2C
+BA6232C747B2654974E5C1A880E406DE54B95253AB8D7D2797C528C72FE124DD
+C5AABEB7E4C590C37D87D3DE9B1A0AF2B0E6305020295273E491C980CE55126E
+EC0A95B374A7308FDC9512CE9FE37C3774958EC2FDF9D77C21164FB19ED8D8C4
+B059093B6117B84502447975C4FFEF6B807EAA1252B84CFDFA006D97DE63960C
+4C3C08FF13F4B2D89AA214B170FCCFE509859C9288FF5802DA62D635AD28D72B
+2ED94065B7DBCC04677BADD74AF75CE546FB6CD31F44D7F4CC551571FF7B8A57
+873199143E332CCFBE78155F8481C6F13F973D611178766E1AFBC062C948327E
+7A7C7BBF4344960610D80EB280C58766E57928A35530F1401799A1FC18B09EEE
+24F2D584C779509D9B0A8566902158F8F0B9938951479277BE50C213E84D5DED
+FDB0FE395C41B51E3138F21BA90CFD8E68CD5364DF8FE270544D9650971689A4
+85419DDB9137CB3C1E39EBECEBE48F72EF1FD9E234CF31A9D9A20DACD5BAD570
+951EEDFF24ECA8A2D8ABCE3AED7DFA164DB03E964C964EEB02F699ACFF7DE100
+6287DA70A8D7A0E132AD534B693AC4E72F4845582A1A62FEBA4932F491A07C74
+63DD166FB3FE239B5A960DEB87EE0A2A9D542B6C1CD6F577FD573C1774A726FB
+FCF35A4A9A85F515D07454F43DB197EF8EBDC99BE2284324926A2481C770CEFE
+9408DACC976B24C46997B43F486A85FE5858A45D4C0764EE421021F5894586AF
+F04F827A024C043AD3662399D7B798972767E4300BE2018E948C6F7BE1F584A8
+30766A63B84F26CB7C1C1DFCBA6CD67654D7321DDC18C2DBFE9775E1E42A7C74
+6062387972E2C516D5C149FB94AE548CB6422B6D7ED1D68E5A972C37B974A65C
+18775FD907ED6B4F4CF83368785AA5E9F7BFFEC94C51A6754589B16DD61987D7
+C571AF11E56B7DB027F10A46110DDA458455B97CDD391E06D17D886E316401CD
+62D8E386EB0237426546FD64979566480D822D9180EDBF1FBDC1144E85ECA3C1
+954C6F95C78FC9CC567FE82FE08809C5A566D34F6DB51A83C998BCE23BA856E5
+38ABB64E22D8DC48F1E1C37C9AAE9271579E42C8B271D8B70C0600B2E660917A
+740A24C5CFFF44F5E750162F365EBD2A29C0AE993CEA7FDFDD78AA39ED3C965B
+B041691A4A57EB41622C8F2982C3C17D7FA9DFFBFCD296CF936BDB6E2904510C
+908FF6195971455E12298F861BDBD2ECE6D5D47E008CDA769ED08800B7E47CFB
+1F0767B2BDE7D437AA6938C3FA18C07EED739AD2A2EA28B4E597DD9F2C1EAD48
+7CC0661ABFCDE974A717145628406973EC6459F83335E0852982F390A0139495
+55599C104EF0F1339D25984A348982957B9267D81C446B5E09E56C70429AB895
+D0BF1A2734C0899D473418AA47D60E778980B69300B6DFF51A26FED4AA00D148
+37AC24F509CC5FACD0EAE0572E7CED539823FC1599FA6AD0FA7FAB6B0C4B1B94
+B10632EAAD840E7CEF7A35545AB6DB81F04959EE4A1DFD2996B47CF193139BB2
+C1CB75B8BD817256C67B7B8B8D6F41B42A385A2E660C5A41EC479158730C98AC
+EAC2E410226D59A948D219556CF98B755066BFF040E6A6D2286174CD87C116C9
+646F1CAF525C4392874EAD4DF0415E9B4638E6EC126F2D856447B142269FA169
+5D7C4222C422FC4728C7A05F88D0EAE70150B49731CCE7A85A81557567DC0FDC
+187D0E87739CB93AA581C3AD024ECD6E12BC2A3344665F7E596DFDE6FFFF04F1
+58CB836544FC7495A8DBC8BBBD3EA02E1A1A14D22698E9BB1AB17D43F1E33642
+5FF511C6C8A84814619C482AC70F5262B4297ADC53FEA762E58D1BF7E3515A25
+1C0316A26FA9141FB4907454E619A4D3B89E7490CF91E05C42C22CF7DAA45103
+885A3656C5C1170886F789A7237A3FF0981DB0512244A81843C755D3E81D0C31
+C79E914FD17226C7A7CB98DD5B899927FA012141DF2ACA0F5CFA9C4038CE5493
+F533DCB65E6A49AB04181566D30DA4CFD9A1DD854530BEC561A439F6B1354B66
+67CCFF1644E172CA43D6349D90A0979579B0D3DB32D9A08C0A919456922F4BFC
+CD0A493136014F530B9D8582A1EE24B0906C4D2287E897B32DD9D510009691D4
+E93A68CDA75DE51DFC4EB8BD55045E7583C91178DEE65AFD00A114A09F43A16C
+5901094FFA27F00246842E76BA2B33163172514346F4520733F0F343358DCF68
+29B5A3820C637FC639A028C80F961C302F527A2A00A5DAEFEF204832EF6C1E70
+2550F1EC5B5AF3A05826FE50656922A7AF604FB997BE8C622F0671A58AA1E698
+6DBBFF24C774D5BCC98DD2436105AE4DA658EC3AA377F905D54627D41EEAD912
+FD7E28A719B09A4BE9DBD75C065131186E1D64FBCAA4C8B70DCF6C4DB22D2EB2
+09A392658C3A23AF99A2DBB4A623E958E0F597697215A048F278241D497CC448
+F5193459E1AA66309AD7CA0897F6909037016BC3976E24443D09AA9511AF9B7E
+66BA33028C53EDB2003C11720DA394BBCA6318C13E1C11F10B7A9A52AF7A05D0
+D11844405EE6F1216FABEF4DE0845759864676DEDD8CDD81A08EFE4B8267675D
+4B971016C305D7AD7E2C2CB15E81AD0709F4D57BB534331627459156A9E79FE0
+E51169F4B0D977CDBC81139C18DC709AFCFF255BB05AAAEA7D539CF0E9E2B60F
+10E0C96116E566840FC99DB00CF7EEAE0577371861809784F5E810E5B4501383
+F4B04E3F92956DDDEA43FF563DF653899729A52A4E7133D2EB55FDE74C72745B
+667DA8CF4DDE4E15E0540A31C08D00B8F5F711330C289C5E741AB6D72313272B
+3053B23B3F78ABB23B8F82E81179A648E8676BDE7041D9EFEB6B2D4B1C5B851A
+A08F9BAEE095D2CB1992F8C9667688FB76489B60C4D3C94927779357E51DE5B8
+E0293CF92AFB6EDDD744A5EFEDC08CB52F3F11DBFDDA95A16857601D15F44A4B
+12A60E1681376ED56FBB021C6C6ABFAA9274AF78FA6FA156434E5B8F59573591
+0D03406B63704816DEB1CB7BD286330530E20E9DEE564244243CE1C35B86C63E
+C210C4591A159C27403196AACB5FAB1DAF3567B07F72113A84DDA71EF57A25E5
+696F32C68616C1209624A3B6BC8E3E762644960BC25ACE895DC6E981E60B45BF
+D7C0250F830C41C1EC111F9473CE3813E7D704375BE16D4C38D83A9FC70F198E
+1D68E23FB4BEB00EB5B6A7D4835580FCD30818BF46655D03722CEA391720E4D3
+C80FF26295CAC376B910A0E43F6A9FC856666F2F611AC40470A0BBD9CC6E22A7
+F79982D399C005815F88DE91EEFFF99A410E1AC7114063609477DC7599307DA4
+2DB6B6A6F274FC46794D70B190E267696B4A1E8BD0BC2EE5F06A7CC77844363C
+F0BE07A59DDAF0E32A3CA83FE6404179B01E7C5BFF2B76E1C7F555D5935CD7DA
+7F385A4FBCCE8BC043C868F6938FAF9CA163814E1E2BBEAB55E694E7428CD9B6
+D73569152E8C595E256590B39EE7A99627A860DC377B6EC71750A6FA64A72EE4
+F6489A1A5A234322D8DFDA02C8704419E0EF17493F9E3CDEFFC445736CDE71B9
+DCFBFF4A357C570E899C966858754C105F2908816ADB1858A0656C964F547CEE
+002C11BEBEA2A30E55A43120838E94994E390F298F7E4E6236EA30DE6CABBE0F
+03C8F3EA89130D3AF01E33E03AB649C3A731A5855601966BD09ED6F87BA768FB
+D68389A74DBCD7619FEC31503CC846099A571A35491AFD63097531DDC702CEDA
+BE9BD9E20303C0A6FE8E30B4EB2E27048A9415971E802C025D166324F4F30D25
+DE855A69D97437615DC3C1750FE021BD113C9767AA28AD16DF037D191928BE48
+0606FBB6663E07428BD2DC19EDD1D08D641DDDD8EC140AE69B31276CE7013DD4
+15EA07913F9B432735B196C137191C9C1CBEE5581732E91D1782A47913E42952
+45A9B0225D5D99514AC26E10FC7AE33BF096F2EC4E446CE08F5BB4E4F2872D9F
+56722077561BC7DAAFFBECCBF5C45DE8BC29939376EC700F52B43518C05B1002
+BD343941DE35187C54A4EC5C875F50C195471273171E4024805F0A02CDAA0158
+33891C3E50E179214D53D2EB466BB82A90516F4276E30067815FEB0585EB101D
+FA5B58A8AA860D2BAA73D94BC34D3F5CC328490F35B04B5D4D560A224AAF0EF0
+D666F1DC0750C17CDD109C63641DD41B8EF84A4247E4070C73295AE4EFCE3B66
+D2E291F745358407AF7C1FBBFC52677B33286965CAB5BE21ED85E63DB84986FE
+166515BDB9331E27C25D42D4444297A8AC93E3E5DCEC65AD75B121C80A94FC0F
+E206B5A4B6283544414FD3FE2FDC5BDAC0B3031EFC6D871E9A3D41278972C0F2
+F37FA49535AD6EA1ED801F4D00397EA06E4AC3D5D867D1F63067E74A6061615E
+C6E370D063CFADEE4EC16DA3BA0840D5F2C791A9A5DC469F519B87F6E2FB225D
+D1EB189C932D11758BC0710B1E1C4C33D9E5A17F65DECC6E920E61E53F596C8A
+9F32392078ABACA3C60E884770CF4004C5E0771C2629CFFD11F06431A57B267D
+423B07425D7C6154F4A6E2F018080C07A78672EAB2929B5A07422FA8BD1EF535
+94B4FDB61C836EF9E9642B7FCF22584B189DEEA061C3FDA4A6409274595B1AEB
+A04E3F1144B6D0F6648B4E2E8374BCFCF3235B610588292A4674488AF8498CA6
+F389E5D372C6C678F3AA03ECA699ED4D839B2BE8AA5B43E516A2850EB6532DDA
+757D3B3675AD7A37F79927DA46E1A03861F5ACC36BC19E2184AF0CB5346F9F9E
+12FA2BBB209944F4CDD5C6D255117743E7F23F03021886FF8069865093032452
+953C43B913B50DF01FC7CCC9281FDC26FD37FE1A2866B12F22973F4C57990EF9
+3504277C7091753AC591FB430F8E16E5E77A6639A8AB5A5F3DF8FCCC650AA39B
+B3EB181CB26CE6D18719E8ADDBBF5B81A9D5C4680BFE9DF5896B71344F4E17C3
+58C0576704A8E515162F615AE8CEE6E4909987FA7B0D6A5AB5F2D0146B96D3EA
+5F434D28A2244DA8460BB70E34EA42187223E9C889FFE783BAA7CC3DDA025D56
+888CC43CEB66FB6792DE7AC6753D2401487343FD66007E3C2C9D81B5B1612465
+37AF044A023A4EA768403A8FEFBE0F9160C705C333650B60F4EF63F9451F4361
+C433F5D790A37107BFFABC982E66E9191486FDEF9C640092F8B475456BE30681
+E3E1F3E216FF130CB52A0344B6CCAF3BBC8A327262A8C675A68BF3BDBE4CE061
+C4B8F33C3130DD6FB49E4DD8914FE7F7CDAF49F13956F86FA2B88E05EBF83DF2
+06711C8303A2B8877F5A0A9706A07C6505CE0C2AF5731D1A72B190FDE2FDC698
+ADAAD113AEDBCB841829B96A089750CEDA284182B360F687FE0196D4D43D4603
+EB9954331326527F77CC4B8D850B841187117413CC6B5F462C64A3959CC7693B
+E358EE5F2CE58F4EB42153F954981EDF869B5DA9559A4B69CC554FF39D4D4E77
+0C8CFFBA1E7893766F55B7D367B02E8F6C337FD10C22D60A6225048B01CF8C30
+86124E73A35DC54B2B68C97A3556AFCEA4E982D71257DAD041433A4A60B6CCC3
+98F4E749219D982CE35EE0BE0F953D908945712465097C6214746A864F4B52C3
+3A45DE9542A7F76ABE5155883D275498D6A5633800BA5B3B45078A52D321BF70
+14A506096C76DA29AE83A4D2204633D9CEC517CDC41FF04EE01790659588D0A9
+14B460FFBDCCDF568A303A5BB001CAD84BA60D4B2EF4D764F9887C21635B32FD
+E9BF53AC249BE88117CA54F8161F40B2FBEC6935D621DEE89FA7ACCF0CD1E8CB
+9ABA2079596EE31C7DB9EE1FFA7D499B43A91D117365D82852EA7DEF15F0ADD6
+AE864307FCBA01CDA5D9F17AA12551A060CD6FD4BB69EB09B99BD0D39C69D164
+E9573BC0E97BEF5D08A2936AEEE00BD6615EBECCB9DF9852A72821249EA3BED3
+020166D83242251D35B00F35BF822213BCCFA53372A5A9CC85AA0755E2840A68
+7E28C6BC6FCC151EBF5E8B74DE652794F312A6630F6FB891EEE4707E9259DC31
+230C42986B3C60AE7FDC542B7CB2180A871821D72248B2FFDF36E3A7ADED61F8
+DE6428B29CB0B98BA868E33246CF5A6BA12A6FBACA7436527FBE2FC6DF860A77
+5FA79538304FD552AB47E056AED3E3E6267BBD55CE52190DFD3932FFA9A850F5
+4CB7A7E938A32F18E7A86E94C3C365D0C4A85E64E0A749A005738C201B999B40
+8D9534D8317597A5D7169809BD0C829A5AF1B22E660BFAF7A4A1C81377B6AE44
+FC639CF5CED0AB54D0B639880CAEC0222D73B626A37C90DB982CADC78A01BCBB
+AD833E83EEF3C45F208A90B3AAAAAC8A25A28975675C64DCBE94FEAF96F07FEC
+3D8EA3DD2A0B776492BAF2F4D14A8AE1921C5DEE62BD385247A9536B2D8DDDDC
+1D51196E72804524A9175C93CB276069D7CD6555A2084A51FC13B503CEFA1835
+C572B64BB65203CD666FDD1C79DBED16B7EC15B37AD79602AFBE1A1FEC89C865
+DE6420E6790D59CDA4EFEFDF352CF101D2B64EEC253F13B3C854FC03370DB220
+227F67A5654E595E1C6E18A6A6AF672F0638D1B35C69759D347224DCC89223A8
+A9A6682EFAF9179AF0C7CDE0D9F991E89D258596E93F26819896C730526735BA
+681674536B7D1F8C243FA809DA6572601EC8E9665204C155D4EA516B61799080
+25627C82CF7E89BA81CEA8C865D0AAFBB7DA3C47E1508D985470E6A11C93AC68
+72F823BFAAB5011A760F369164158479690A2A696A4CDE768B520E75F9A9415D
+6C0CE866FB2BCACA7B9575E8F2658CCEB6E0DBFFEE00388A9BCD9706AC8D3F13
+B03109669E54C773BA71B93DD88B3972B48B1E30C6DDA9FC8F76ADF717373F85
+FD72E2095C983B1085C2436545C0260A5788641BA646755594CD06BBDEEB721F
+AB272E8145F81AFA2659029BCD25640BB9B406FD20
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
@@ -2189,30 +2297,32 @@
 %%EndFont 
 TeXDict begin 55387786 39139632 1000 600 600 (fr-refcard.dvi)
 @start /Fa 197[20 58[{}1 66.4176 /CMMI8 rf /Fb 134[35
-3[38 24 29 30 1[36 36 40 58 18 2[22 1[33 1[33 36 33 33
-36 51[26 45[{}18 66.4176 /CMTI8 rf /Fc 242[61 13[{}1
-49.8132 /CMSY6 rf /Fd 133[27 32 1[43 32 34 24 24 24 32
-34 30 34 50 18 32 1[18 34 30 19 27 34 27 34 30 10[45
-45 1[34 2[41 1[45 54 2[31 22 1[47 39 41 1[43 42 45 9[30
-30 30 1[30 30 30 30 1[18 21 18 4[18 14[27 4[30 30 18[{}52
+3[38 24 29 30 1[36 36 40 58 18 33 1[22 1[33 1[33 36 33
+33 36 51[26 45[{}19 66.4176 /CMTI8 rf /Fc 242[61 13[{}1
+49.8132 /CMSY6 rf /Fd 128[30 4[27 32 1[43 32 34 24 24
+24 32 34 30 34 50 18 32 1[18 34 30 19 27 34 27 34 30
+10[45 45 1[34 2[41 1[45 54 3[22 1[47 39 41 1[43 42 45
+9[30 1[30 1[30 30 30 30 1[18 21 18 19[27 4[30 30 18[{}50
 49.8132 /CMR6 rf /Fe 135[43 1[43 45 32 32 34 43 45 41
-45 68 23 2[23 45 41 25 37 45 36 45 40 51[27 5[23 19[41
-41 5[45 12[{}26 66.4176 /CMBX8 rf /Ff 130[35 35 35 35
+45 68 23 1[25 23 45 41 25 37 45 36 45 40 12[57 45 61
+61 55 61 2[49 2[30 2[51 53 62 59 1[61 18[23 27 25[41
+41 18[{}39 66.4176 /CMBX8 rf /Ff 130[35 35 35 35 35 35
 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35
-35 35 35 35 35 35 35 35 35 35 35 35 35 3[35 2[35 35 35
-1[35 2[35 35 4[35 35 35 35 35 35 35 35 35 35 1[35 1[35
-4[35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 1[35 35
-35 35 35 33[{}74 66.4176 /CMTT8 rf /Fg 135[60 1[60 64
-45 45 47 60 64 57 64 95 32 2[32 64 57 35 53 64 51 64
-56 2[57 7[87 1[80 64 86 86 78 86 1[109 69 1[59 43 2[72
-75 88 83 1[87 19[38 5[32 19[57 57 5[64 12[{}43 99.6264
-/CMBX10 rf /Fh 132[35 31 37 37 51 37 39 27 28 28 37 39
-35 39 59 20 37 22 20 39 35 22 31 39 31 39 35 2[35 1[35
-3[53 2[53 1[39 52 1[48 1[53 1[44 2[25 1[55 46 48 54 51
-1[53 6[20 35 6[35 35 2[20 24 20 2[27 27 20 4[35 6[55
-7[35 35 1[20 1[59 1[39 41 11[{}61 66.4176 /CMR8 rf /Fi
-139[53 54 57 3[76 115 6[42 63 76 61 1[67 11[106 6[108
-6[108 1[90 1[99 47[69 19[{}16 119.552 /CMBX10 rf end
+35 35 35 35 35 35 35 35 35 35 35 3[35 2[35 35 35 1[35
+2[35 35 4[35 35 35 35 35 35 35 35 35 35 1[35 1[35 4[35
+35 35 35 35 35 35 35 35 35 35 35 35 35 35 1[35 35 35
+35 35 33[{}74 66.4176 /CMTT8 rf /Fg 135[60 1[60 64 45
+45 47 60 64 57 64 95 32 2[32 64 57 35 53 64 51 64 56
+2[57 7[87 1[80 64 86 86 78 86 1[109 69 1[59 43 2[72 75
+88 83 1[87 19[38 5[32 19[57 57 5[64 12[{}43 99.6264 /CMBX10
+rf /Fh 132[35 31 37 37 1[37 39 27 28 28 37 39 35 39 59
+20 1[22 20 39 35 22 31 39 31 39 35 2[35 1[35 1[43 1[53
+1[53 53 51 39 52 55 48 55 53 65 44 1[36 25 1[55 46 48
+54 51 50 53 6[20 35 6[35 35 1[35 20 24 20 2[27 27 20
+4[35 6[55 7[35 35 1[20 1[59 1[39 41 11[{}68 66.4176 /CMR8
+rf /Fi 139[53 54 57 3[76 115 6[42 63 76 61 1[67 11[106
+6[108 6[108 1[90 1[99 47[69 19[{}16 119.552 /CMBX10 rf
+end
 %%EndProlog
 %%BeginSetup
 %%Feature: *Resolution 600dpi
@@ -2223,460 +2333,422 @@
  @landscape end
 %%EndSetup
 %%Page: 1 1
-TeXDict begin @landscape 1 0 bop -540 -364 a Fi(Carte)46
-b(de)g(r)m(\023)-66 b(ef)m(\023)g(erence)46 b(de)g(GNU)f(Emacs)205
--280 y Fh(\(p)r(our)24 b(la)f(v)n(ersion)h(22\))-450
--101 y Fg(Lancemen)m(t)36 b(d'Emacs)-450 12 y Fh(P)n(our)22
-b(lancer)h(GNU)g(Emacs)f(22,)h(il)f(su\016t)h(de)g(tap)r(er)g(son)f
-(nom)h(:)31 b Ff(emacs)-450 106 y Fh(P)n(our)24 b(c)n(harger)g(un)g
-(\014c)n(hier)f(\022)-35 b(a)22 b(\023)-33 b(editer,)24
-b(v)n(oir)f(Fic)n(hiers,)g(ci-dessous.)-450 280 y Fg(Quitter)37
-b(Emacs)-450 434 y Fh(susp)r(end)24 b(Emacs)g(\(ou)h(l'iconi\014e)e
-(sous)h(X\))379 b Ff(C-z)-450 540 y Fh(quitter)24 b(d)n(\023)-33
-b(e\014nitiv)n(emen)n(t)26 b(Emacs)616 b Ff(C-x)36 b(C-c)-450
-731 y Fg(Fic)m(hiers)-450 866 y Fe(lire)23 b Fh(un)h(\014c)n(hier)f
-(dans)h(Emacs)694 b Ff(C-x)36 b(C-f)-450 972 y Fe(sauv)n(egarder)22
-b Fh(un)i(\014c)n(hier)g(sur)f(disque)439 b Ff(C-x)36
-b(C-s)-450 1078 y Fh(sauv)n(egarder)25 b Fe(tous)e Fh(les)g(\014c)n
-(hiers)633 b Ff(C-x)36 b(s)-450 1184 y Fe(ins)n(\023)-39
-b(erer)23 b Fh(le)h(con)n(ten)n(u)h(d'un)f(autre)g(\014c)n(hier)g(dans)
-g(ce)-379 1291 y(tamp)r(on)1204 b Ff(C-x)36 b(i)-450
-1397 y Fh(remplacer)24 b(ce)g(\014c)n(hier)g(par)f(le)h(\014c)n(hier)f
-(v)n(oulu)312 b Ff(C-x)36 b(C-v)-452 1503 y Fh(\023)-33
-b(ecrire)23 b(le)h(tamp)r(on)g(dans)g(un)g(\014c)n(hier)g(donn)n(\023)
--33 b(e)324 b Ff(C-x)36 b(C-w)-450 1609 y Fh(bascule)24
-b(du)g(mo)r(de)g(lecture-seule)h(du)f(tamp)r(on)229 b
-Ff(C-x)36 b(C-q)-450 1800 y Fg(Obtenir)h(de)g(l'aide)-450
-1913 y Fh(Le)27 b(syst)n(\022)-33 b(eme)27 b(d'aide)g(est)g(simple.)40
+TeXDict begin @landscape 1 0 bop -384 -421 a Fi(Carte)46
+b(de)g(r)m(\023)-66 b(ef)m(\023)g(erence)46 b(de)g(GNU)f(Emacs)361
+-313 y Fh(\(p)r(our)24 b(la)f(v)n(ersion)h(22\))-294
+-135 y Fg(Lancer)37 b(Emacs)-294 16 y Fh(P)n(our)24 b(lancer)f(GNU)h
+(Emacs)g(22,)f(tap)r(ez)j(juste)e(son)f(nom)h(:)31 b
+Ff(emacs)p Fh(.)-294 190 y Fg(Quitter)37 b(Emacs)-294
+342 y Fh(Susp)r(endre)25 b(Emacs)e(\(ou)i(l'iconi\014er)e(sous)g(X\))
+211 b Ff(C-z)-294 421 y Fh(Quitter)24 b(d)n(\023)-33
+b(e\014nitiv)n(emen)n(t)26 b(Emacs)527 b Ff(C-x)36 b(C-c)-294
+596 y Fg(Fic)m(hiers)-294 747 y Fe(Lire)23 b Fh(un)h(\014c)n(hier)986
+b Ff(C-x)36 b(C-f)-294 827 y Fe(Sauv)n(egarder)22 b Fh(un)i(\014c)n
+(hier)691 b Ff(C-x)36 b(C-s)-294 906 y Fh(Sauv)n(egarder)25
+b Fe(tous)e Fh(les)g(\014c)n(hiers)551 b Ff(C-x)36 b(s)-294
+986 y Fe(Ins)n(\023)-39 b(erer)24 b Fh(un)g(\014c)n(hier)g(sous)g(le)f
+(p)r(oin)n(t)h(\(curseur\))165 b Ff(C-x)36 b(i)-294 1066
+y Fh(Remplacer)24 b(le)f(\014c)n(hier)h(par)g(un)g(autre)g(\014c)n
+(hier)208 b Ff(C-x)36 b(C-v)-294 1146 y Fh(Sauv)n(egarder)25
+b(sous)f(un)g(autre)g(nom)g(de)g(\014c)n(hier)163 b Ff(C-x)36
+b(C-w)-294 1225 y Fh(Basculer)24 b(en)g(mo)r(de)g(lecture)g(seule)490
+b Ff(C-x)36 b(C-q)-294 1402 y Fg(Obtenir)h(de)g(l'aide)-294
+1553 y Fh(Le)27 b(syst)n(\022)-33 b(eme)27 b(d'aide)g(est)g(simple.)40
 b(F)-6 b(aites)27 b Ff(C-h)h Fh(\(ou)f Ff(F1)p Fh(\))h(et)f(suiv)n(ez)g
-(les)-450 1982 y(instructions.)38 b(Si)26 b(v)n(ous)g(d)n(\023)-33
-b(ebutez,)28 b(faites)e Ff(C-h)36 b(t)26 b Fh(p)r(our)g(suivre)g(un)g
-Fe(di-)-450 2048 y(dacticiel)p Fh(.)-450 2154 y(supprimer)d(la)g(fen)n
-(^)-33 b(etre)24 b(d'aide)682 b Ff(C-x)36 b(1)-450 2260
-y Fh(faire)23 b(d)n(\023)-33 b(e\014ler)24 b(la)f(fen)n(^)-33
-b(etre)24 b(d'aide)645 b Ff(C-M-v)-450 2395 y Fh(aprop)r(os)24
-b(:)35 b(mon)n(trer)24 b(les)f(commandes)i(con)n(tenan)n(t)-379
-2501 y(une)f(certaine)h(c)n(ha)-8 b(^)-27 b(\020ne)847
-b Ff(C-h)36 b(a)-450 2608 y Fh(d)n(\023)-33 b(ecrire)23
-b(la)h(fonction)g(lanc)n(\023)-33 b(ee)25 b(par)f(une)g(touc)n(he)258
-b Ff(C-h)36 b(k)-450 2714 y Fh(d)n(\023)-33 b(ecrire)23
-b(une)i(fonction)898 b Ff(C-h)36 b(f)-450 2820 y Fh(obtenir)24
-b(des)g(informations)f(sp)n(\023)-33 b(eci\014ques)25
-b(au)f(mo)r(de)124 b Ff(C-h)36 b(m)-450 3011 y Fg(R)n(\023)-55
-b(ecup)n(\023)g(eration)36 b(des)h(erreurs)-450 3165
-y Fe(a)n(v)n(orter)21 b Fh(une)k(commande)f(partiellemen)n(t)h(tap)n
-(\023)-33 b(ee)-379 3271 y(ou)24 b(ex)n(\023)-33 b(ecut)n(\023)g(ee)
-1084 b Ff(C-g)-450 3377 y Fe(r)n(\023)-39 b(ecup)n(\023)g(erer)24
-b Fh(les)f(\014c)n(hier)h(p)r(erdus)g(par)f(un)-379 3483
-y(crash)g(du)h(syst)n(\022)-33 b(eme)669 b Ff(M-x)36
-b(recover-session)-450 3590 y Fe(ann)n(uler)23 b Fh(une)h(mo)r
-(di\014cation)h(non)f(souhait)n(\023)-33 b(ee)16 b Ff(C-x)36
-b(u,)g(C-_)g Fh(ou)g Ff(C-/)-450 3696 y Fh(restaurer)24
-b(un)f(tamp)r(on)i(a)n(v)n(ec)g(son)f(con)n(ten)n(u)-379
-3802 y(initial)1015 b Ff(M-x)36 b(revert-buffer)-450
-3908 y Fh(r)n(\023)-33 b(ea\016c)n(her)24 b(un)e(\023)-33
-b(ecran)24 b(p)r(erturb)n(\023)-33 b(e)653 b Ff(C-l)-341
-4131 y Fd(c)-358 4133 y Fc(\015)20 b Fd(2007)j(F)-5 b(ree)21
+(les)-294 1633 y(instructions.)i(Si)16 b(v)n(ous)g(d)n(\023)-33
+b(ebutez,)19 b(faites)d Ff(C-h)36 b(t)17 b Fh(p)r(our)f(un)g
+Fe(didacticiel)p Fh(.)-294 1741 y(Supprimer)23 b(la)h(fen)n(^)-33
+b(etre)24 b(d'aide)599 b Ff(C-x)36 b(1)-294 1821 y Fh(F)-6
+b(aire)23 b(d)n(\023)-33 b(e\014ler)24 b(la)g(fen)n(^)-33
+b(etre)24 b(d'aide)555 b Ff(C-M-v)-294 1929 y Fh(Rec)n(herc)n(her)25
+b(des)f(commandes)g(selon)g(une)g(c)n(ha)-8 b(^)-27 b(\020ne)73
+b Ff(C-h)36 b(a)-294 2009 y Fh(D)n(\023)-33 b(ecrire)23
+b(la)h(fonction)g(asso)r(ci)n(\023)-33 b(ee)24 b(\022)-35
+b(a)24 b(une)h(touc)n(he)185 b Ff(C-h)36 b(k)-294 2088
+y Fh(D)n(\023)-33 b(ecrire)23 b(une)h(fonction)813 b
+Ff(C-h)36 b(f)-294 2168 y Fh(Obtenir)24 b(des)g(informations)f(relativ)
+n(es)h(au)g(mo)r(de)102 b Ff(C-h)36 b(m)-294 2333 y Fg(R)n(\023)-55
+b(ecup)n(\023)g(eration)36 b(sur)i(erreurs)-294 2485
+y Fe(Abandonner)24 b Fh(une)g(commande)517 b Ff(C-g)-294
+2564 y Fe(R)n(\023)-39 b(ecup)n(\023)g(erer)24 b Fh(les)f(\014c)n
+(hiers)h(apr)n(\022)-33 b(es)24 b(un)g(crash)72 b Ff(M-x)36
+b(recover-session)-294 2644 y Fe(Ann)n(uler)24 b Fh(une)g(mo)r
+(di\014cation)473 b Ff(C-x)36 b(u,)g(C-_)g Fh(ou)g Ff(C-/)-294
+2724 y Fh(Ann)n(uler)24 b(toutes)h(les)e(mo)r(di\014cations)305
+b Ff(M-x)36 b(revert-buffer)-294 2803 y Fh(R)n(\023)-33
+b(ea\016c)n(her)24 b(un)e(\023)-33 b(ecran)25 b(p)r(erturb)n(\023)-33
+b(e)557 b Ff(C-l)-294 2978 y Fg(Rec)m(herc)m(he)36 b(incr)n(\023)-55
+b(emen)m(tale)-294 3129 y Fh(Rec)n(herc)n(her)25 b(en)f(a)n(v)l(an)n(t)
+819 b Ff(C-s)-294 3209 y Fh(Rec)n(herc)n(her)25 b(en)f(arri)n(\022)-33
+b(ere)783 b Ff(C-r)-294 3289 y Fh(Rec)n(herc)n(her)25
+b(en)f(a)n(v)l(an)n(t)h(\(expression)f(rationnelle\))75
+b Ff(C-M-s)-294 3368 y Fh(Rec)n(herc)n(her)17 b(en)g(arri)n(\022)-33
+b(ere)15 b(\(expression)i(rationnelle\))71 b Ff(C-M-r)-294
+3477 y Fh(Utiliser)22 b(la)i(c)n(ha)-8 b(^)-27 b(\020ne)24
+b(de)g(rec)n(herc)n(he)h(pr)n(\023)-33 b(ec)n(\023)g(eden)n(te)166
+b Ff(M-p)-294 3556 y Fh(Utiliser)22 b(la)i(c)n(ha)-8
+b(^)-27 b(\020ne)24 b(de)g(rec)n(herc)n(he)h(suiv)l(an)n(te)241
+b Ff(M-n)-294 3636 y Fh(Quitter)24 b(la)f(rec)n(herc)n(he)i(incr)n
+(\023)-33 b(emen)n(tale)412 b Ff(RET)-294 3716 y Fh(Ann)n(uler)24
+b(l'e\013et)g(du)g(dernier)f(caract)n(\022)-33 b(ere)357
+b Ff(DEL)-294 3795 y Fh(Ann)n(uler)24 b(la)f(rec)n(herc)n(he)i(en)f
+(cours)526 b Ff(C-g)-294 3904 y Fh(Refaites)34 b Ff(C-s)h
+Fh(ou)f Ff(C-r)h Fh(p)r(our)f(r)n(\023)-33 b(ep)n(\023)g(eter)34
+b(la)g(rec)n(herc)n(he)h(dans)f(une)h(des)-294 3983 y(directions.)42
+b(En)28 b(cours)f(de)h(rec)n(herc)n(he,)h Ff(C-g)f Fh(e\013ace)h(les)e
+(derniers)f(car-)-294 4063 y(act)n(\022)-33 b(eres)25
+b(et)f(ne)g(conserv)n(e)h(que)f(le)g(pr)n(\023)-33 b(e\014xe)24
+b(d)n(\023)-33 b(ej\022)e(a)24 b(trouv)n(\023)-33 b(e.)-185
+4254 y Fd(c)-202 4256 y Fc(\015)20 b Fd(2007)j(F)-5 b(ree)21
 b(Soft)n(w)n(are)i(F)-5 b(oundation,)20 b(Inc.)27 b(P)n(ermissions)21
-b(au)g(dos.)27 b(v2.3)1746 -364 y Fg(Rec)m(herc)m(he)36
-b(incr)n(\023)-55 b(emen)m(tale)1746 -230 y Fh(rec)n(herc)n(her)24
-b(v)n(ers)g(l'a)n(v)l(an)n(t)823 b Ff(C-s)1746 -123 y
-Fh(rec)n(herc)n(her)24 b(v)n(ers)g(l'arri)n(\022)-33
-b(ere)787 b Ff(C-r)1746 -17 y Fh(rec)n(herc)n(her)24
-b(v)n(ers)g(l'a)n(v)l(an)n(t)g(par)g(expression)1817
-89 y(rationnelle)1115 b Ff(C-M-s)1746 196 y Fh(rec)n(herc)n(her)24
-b(v)n(ers)g(l'arri)n(\022)-33 b(ere)22 b(par)h(expression)1817
-302 y(rationnelle)1115 b Ff(C-M-r)1746 437 y Fh(s)n(\023)-33
-b(electionner)25 b(la)e(c)n(ha)-8 b(^)-27 b(\020ne)25
-b(de)f(rec)n(herc)n(he)h(pr)n(\023)-33 b(ec)n(\023)g(eden)n(te)101
-b Ff(M-p)1746 543 y Fh(s)n(\023)-33 b(electionner)25
-b(la)e(c)n(ha)-8 b(^)-27 b(\020ne)25 b(de)f(rec)n(herc)n(he)h(suiv)l
-(an)n(te)176 b Ff(M-n)1746 649 y Fh(sortir)23 b(de)h(la)f(rec)n(herc)n
-(he)i(incr)n(\023)-33 b(emen)n(tale)451 b Ff(RET)1746
-755 y Fh(ann)n(uler)24 b(l'e\013et)g(du)g(dernier)f(caract)n(\022)-33
-b(ere)446 b Ff(DEL)1746 862 y Fh(ann)n(uler)24 b(la)f(rec)n(herc)n(he)i
-(en)f(cours)615 b Ff(C-g)1746 972 y Fh(Refaites)17 b
-Ff(C-s)g Fh(ou)g Ff(C-r)h Fh(p)r(our)e(r)n(\023)-33 b(ep)n(\023)g(eter)
-18 b(la)e(rec)n(herc)n(he)i(dans)f(une)g(direction)1746
-1038 y(quelconque.)67 b(Si)34 b(Emacs)h(est)h(encore)g(en)f(train)g(de)
-g(c)n(herc)n(her,)j Ff(C-g)1746 1105 y Fh(n'ann)n(ule)24
-b(que)h(ce)f(qui)f(n'a)h(pas)e(\023)-33 b(et)n(\023)g(e)25
-b(fait.)1746 1280 y Fg(D)n(\023)-55 b(eplacemen)m(ts)1746
-1409 y Fe(en)n(tit)n(\023)-39 b(e)26 b(sur)i(laquelle)e(se)h(d)n(\023)
--39 b(eplacer)210 b(en)28 b(arri)n(\022)-39 b(ere)69
-b(en)27 b(a)n(v)-5 b(an)n(t)1746 1475 y Fh(caract)n(\022)-33
-b(ere)992 b Ff(C-b)313 b(C-f)1746 1531 y Fh(mot)1148
-b Ff(M-b)313 b(M-f)1746 1586 y Fh(ligne)1124 b Ff(C-p)313
-b(C-n)1746 1658 y Fh(aller)23 b(au)h(d)n(\023)-33 b(ebut)25
-b(\(ou)f(\022)-35 b(a)24 b(la)g(\014n\))g(de)g(la)f(ligne)105
-b Ff(C-a)313 b(C-e)1746 1727 y Fh(phrase)1069 b Ff(M-a)313
-b(M-e)1746 1793 y Fh(paragraphe)925 b Ff(M-{)313 b(M-})1746
-1858 y Fh(page)1129 b Ff(C-x)36 b([)242 b(C-x)36 b(])1746
-1922 y Fh(s-expression)901 b Ff(C-M-b)243 b(C-M-f)1746
-1988 y Fh(fonction)1021 b Ff(C-M-a)243 b(C-M-e)1746 2044
-y Fh(aller)23 b(au)h(d)n(\023)-33 b(ebut)25 b(\(ou)f(\022)-35
-b(a)24 b(la)g(\014n\))g(du)g(tamp)r(on)84 b Ff(M-<)313
-b(M->)1746 2166 y Fh(passer)24 b(\022)-35 b(a)23 b(l')n(\023)-33
-b(ecran)24 b(suiv)l(an)n(t)793 b Ff(C-v)1746 2273 y Fh(passer)24
-b(\022)-35 b(a)23 b(l')n(\023)-33 b(ecran)24 b(pr)n(\023)-33
-b(ec)n(\023)g(eden)n(t)718 b Ff(M-v)1746 2379 y Fh(d)n(\023)-33
-b(e\014ler)24 b(l')n(\023)-33 b(ecran)23 b(v)n(ers)h(la)f(droite)668
-b Ff(C-x)36 b(<)1746 2485 y Fh(d)n(\023)-33 b(e\014ler)24
-b(l')n(\023)-33 b(ecran)23 b(v)n(ers)h(la)f(gauc)n(he)640
-b Ff(C-x)36 b(>)1746 2591 y Fh(placer)24 b(la)f(ligne)h(couran)n(te)h
-(au)f(cen)n(tre)h(de)f(l')n(\023)-33 b(ecran)162 b Ff(C-u)36
-b(C-l)1746 2782 y Fg(D)n(\023)-55 b(etruire)36 b(et)i(supprimer)1746
-2911 y Fe(en)n(tit)n(\023)-39 b(e)26 b(\022)-40 b(a)26
-b(supprimer)648 b(en)28 b(arri)n(\022)-39 b(ere)69 b(en)28
-b(a)n(v)-5 b(an)n(t)1746 2981 y Fh(caract)n(\022)-33
-b(ere)25 b(\(suppression,)f(pas)g(destruction\))84 b
-Ff(DEL)313 b(C-d)1746 3045 y Fh(mot)1187 b Ff(M-DEL)243
-b(M-d)1746 3101 y Fh(ligne)24 b(\(jusqu'\022)-35 b(a)23
-b(la)h(\014n\))685 b Ff(M-0)37 b(C-k)171 b(C-k)1746 3170
-y Fh(phrase)1108 b Ff(C-x)37 b(DEL)171 b(M-k)1746 3234
-y Fh(s-expression)940 b Ff(M--)37 b(C-M-k)101 b(C-M-k)1746
-3353 y Fh(d)n(\023)-33 b(etruire)24 b(une)g Fe(r)n(\023)-39
-b(egion)890 b Ff(C-w)1746 3459 y Fh(copier)24 b(une)g(r)n(\023)-33
-b(egion)24 b(dans)g(le)f(kill)g(ring)477 b Ff(M-w)1746
-3565 y Fh(d)n(\023)-33 b(etruire)24 b(jusqu'\022)-35
-b(a)23 b(l'o)r(ccurrence)h(suiv)l(an)n(te)h(de)f Fb(c)l(ar)147
-b Ff(M-z)36 b Fb(c)l(ar)1746 3700 y Fh(r)n(\023)-33 b(ecup)n(\023)g
-(erer)24 b(la)f(derni)n(\022)-33 b(ere)24 b(c)n(hose)h(d)n(\023)-33
-b(etruite)423 b Ff(C-y)1746 3807 y Fh(remplacer)24 b(la)f(derni)n(\022)
--33 b(ere)24 b(r)n(\023)-33 b(ecup)n(\023)g(eration)24
-b(par)g(ce)g(qui)1817 3913 y(a)d(\023)-33 b(et)n(\023)g(e)25
-b(d)n(\023)-33 b(etruit)24 b(a)n(v)l(an)n(t)868 b Ff(M-y)3942
--364 y Fg(Marquer)3942 -210 y Fh(placer)24 b(la)f(marque)h(ici)901
-b Ff(C-@)36 b Fh(ou)f Ff(C-SPC)3940 -104 y Fh(\023)-33
-b(ec)n(hanger)25 b(le)f(p)r(oin)n(t)g(et)g(la)g(marque)570
-b Ff(C-x)36 b(C-x)3942 31 y Fh(placer)24 b(la)f(marque)h
-Fb(ar)l(g)30 b Fe(mots)23 b Fh(plus)g(loin)388 b Ff(M-@)3942
-137 y Fh(marquer)23 b(le)h Fe(paragraphe)755 b Ff(M-h)3942
-243 y Fh(marquer)23 b(la)h Fe(page)989 b Ff(C-x)36 b(C-p)3942
-350 y Fh(marquer)23 b(la)h Fe(s-expression)724 b Ff(C-M-@)3942
-456 y Fh(marquer)23 b(la)h Fe(fonction)864 b Ff(C-M-h)3942
-562 y Fh(marquer)23 b(tout)i(le)f Fe(tamp)r(on)730 b
-Ff(C-x)36 b(h)3942 753 y Fg(Remplacemen)m(t)g(in)m(teractif)3942
-907 y Fh(remplacer)24 b(in)n(teractiv)n(emen)n(t)h(une)g(c)n(ha)-8
-b(^)-27 b(\020ne)24 b(de)g(texte)86 b Ff(M-\045)3942
-1013 y Fh(en)24 b(utilisan)n(t)g(les)f(expressions)4013
-1119 y(rationnelles)594 b Ff(M-x)36 b(query-replace-regexp)3942
-1230 y Fh(Les)22 b(r)n(\023)-33 b(ep)r(onses)23 b(admises)f(dans)h(le)f
-(mo)r(de)h(de)g(remplacemen)n(t)h(in)n(teractif)3942
-1285 y(son)n(t)g(:)3942 1391 y Fe(remplacer)f Fh(celle-l\022)-35
-b(a,)22 b(passer)i(\022)-35 b(a)24 b(la)f(suiv)l(an)n(te)280
-b Ff(SPC)3942 1498 y Fh(remplacer)24 b(celle-l\022)-35
-b(a,)22 b(rester)i(l\022)-35 b(a)679 b Ff(,)3942 1604
-y Fe(passer)23 b Fh(\022)-35 b(a)24 b(la)g(suiv)l(an)n(te)g(sans)g
-(remplacer)400 b Ff(DEL)3942 1710 y Fh(remplacer)24 b(toutes)h(les)e
-(corresp)r(ondances)4013 1816 y(suiv)l(an)n(tes)1162
-b Ff(!)3942 1923 y Fe(rev)n(enir)23 b Fh(\022)-35 b(a)24
-b(la)f(corresp)r(ondance)i(pr)n(\023)-33 b(ec)n(\023)g(eden)n(te)279
-b Ff(^)3942 2029 y Fe(sortir)22 b Fh(du)i(remplacemen)n(t)h(in)n
-(teractif)460 b Ff(RET)3942 2135 y Fh(en)n(trer)24 b(dans)g(l')n(\023)
--33 b(edition)23 b(r)n(\023)-33 b(ecursiv)n(e)24 b(\()p
-Ff(C-M-c)h Fh(p)r(our)4013 2241 y(sortir\))1247 b Ff(C-r)3942
-2432 y Fg(F)-10 b(en)n(^)-55 b(etres)37 b(m)m(ultiples)3942
-2561 y Fh(Lorsqu'il)25 b(y)i(a)f(deux)i(commandes,)g(la)e(seconde)i
-(est)f(une)g(commande)3942 2627 y(iden)n(tique)e(\022)-35
-b(a)24 b(la)f(premi)n(\022)-33 b(ere)23 b(p)r(our)h(un)g(cadre)g(au)g
-(lieu)f(d'une)i(fen)n(^)-33 b(etre.)3942 2721 y(supprimer)23
-b(toutes)i(les)e(autres)h(fen)n(^)-33 b(etres)117 b Ff(C-x)36
-b(1)212 b(C-x)37 b(5)e(1)3942 2787 y Fh(diviser)23 b(la)g(fen)n(^)-33
-b(etre)25 b(horizon)n(talemen)n(t)184 b Ff(C-x)36 b(2)212
-b(C-x)37 b(5)e(2)3942 2843 y Fh(supprimer)23 b(cette)i(fen)n(^)-33
-b(etre)499 b Ff(C-x)36 b(0)212 b(C-x)37 b(5)e(0)3942
-2962 y Fh(diviser)23 b(la)g(fen)n(^)-33 b(etre)25 b(v)n(erticalemen)n
-(t)561 b Ff(C-x)36 b(3)3942 3096 y Fh(faire)23 b(d)n(\023)-33
-b(e\014ler)24 b(l'autre)f(fen)n(^)-33 b(etre)708 b Ff(C-M-v)3942
-3207 y Fh(placer)24 b(le)f(curseur)h(dans)g(une)g(autre)h(fen)n(^)-33
-b(etre)25 b Ff(C-x)36 b(o)212 b(C-x)37 b(5)e(o)3942 3273
-y Fh(s)n(\023)-33 b(electionner)25 b(le)e(tamp)r(on)i(dans)4025
-3338 y(l'autre)f(fen)n(^)-33 b(etre)731 b Ff(C-x)36 b(4)g(b)141
-b(C-x)37 b(5)e(b)3942 3394 y Fh(a\016c)n(her)24 b(le)g(tamp)r(on)g
-(dans)g(l'autre)g(fen)n(^)-33 b(etre)69 b Ff(C-x)36 b(4)g(C-o)71
-b(C-x)37 b(5)e(C-o)3942 3460 y Fh(c)n(harger)24 b(un)g(\014c)n(hier)g
-(dans)g(l'autre)f(fen)n(^)-33 b(etre)89 b Ff(C-x)36 b(4)g(f)141
-b(C-x)37 b(5)e(f)3942 3525 y Fh(c)n(harger)24 b(un)g(\014c)n(hier)g(en)
-g(lecture)g(seule)4025 3591 y(dans)g(l'autre)g(fen)n(^)-33
-b(etre)566 b Ff(C-x)36 b(4)g(r)141 b(C-x)37 b(5)e(r)3942
-3647 y Fh(lancer)24 b(Dired)f(dans)h(l'autre)g(fen)n(^)-33
-b(etre)246 b Ff(C-x)36 b(4)g(d)141 b(C-x)37 b(5)e(d)3942
-3703 y Fh(trouv)n(er)24 b(un)g(tag)h(dans)f(l'autre)f(fen)n(^)-33
-b(etre)179 b Ff(C-x)36 b(4)g(.)141 b(C-x)37 b(5)e(.)3942
-3821 y Fh(agrandir)23 b(la)h(fen)n(^)-33 b(etre)941 b
-Ff(C-x)36 b(^)3942 3928 y Fh(rap)r(etisser)23 b(la)h(fen)n(^)-33
-b(etre)903 b Ff(C-x)36 b({)3940 4034 y Fh(\023)-33 b(elargir)23
-b(la)g(fen)n(^)-33 b(etre)1004 b Ff(C-x)36 b(})p eop
-end
-%%Page: 2 2
-TeXDict begin @landscape 2 1 bop -450 -364 a Fg(F)-10
-b(ormater)-450 -268 y Fh(inden)n(ter)24 b(la)g Fe(ligne)f
-Fh(couran)n(te)i(\(d)n(\023)-33 b(ep)r(end)25 b(du)f(mo)r(de\))109
-b Ff(TAB)-450 -161 y Fh(inden)n(ter)24 b(la)g Fe(r)n(\023)-39
-b(egion)22 b Fh(couran)n(te)k(\(d)n(\023)-33 b(ep)r(end)25
-b(du)-379 -55 y(mo)r(de\))1247 b Ff(C-M-\\)-450 51 y
-Fh(inden)n(ter)24 b(la)g Fe(s-expression)g Fh(couran)n(te)h(\(d)n(\023)
--33 b(ep)r(end)-379 157 y(du)24 b(mo)r(de\))1145 b Ff(C-M-q)-450
-264 y Fh(inden)n(ter)24 b(la)g(r)n(\023)-33 b(egion)24
-b(sur)f Fb(ar)l(g)30 b Fh(colonnes)443 b Ff(C-x)36 b(TAB)-450
-389 y Fh(ins)n(\023)-33 b(erer)23 b(un)h(newline)g(apr)n(\022)-33
-b(es)23 b(le)h(p)r(oin)n(t)507 b Ff(C-o)-450 495 y Fh(d)n(\023)-33
-b(eplacer)24 b(le)g(reste)g(de)g(la)f(ligne)h(v)n(ers)g(le)f(bas)326
-b Ff(C-M-o)-450 601 y Fh(supprimer)23 b(les)g(lignes)g(blanc)n(hes)i
-(autour)g(du)e(p)r(oin)n(t)105 b Ff(C-x)36 b(C-o)-450
-708 y Fh(joindre)23 b(la)h(ligne)f(\022)-35 b(a)24 b(la)f(pr)n(\023)-33
-b(ec)n(\023)g(eden)n(te)26 b(\(\022)-35 b(a)25 b(la)e(suiv)l(an)n(te)
--379 814 y(a)n(v)n(ec)h(arg\))1161 b Ff(M-^)-450 920
-y Fh(supprimer)23 b(tous)h(les)f(espaces)i(autour)g(du)f(p)r(oin)n(t)
-184 b Ff(M-\\)-450 1027 y Fh(mettre)24 b(exactemen)n(t)j(un)d(espace)h
-(\022)-35 b(a)24 b(l'emplacemen)n(t)-379 1133 y(du)g(p)r(oin)n(t)1178
-b Ff(M-SPC)-450 1258 y Fh(remplir)22 b(le)i(paragraphe)845
-b Ff(M-q)-450 1364 y Fh(placer)24 b(la)f(marge)h(droite)833
-b Ff(C-x)36 b(f)-450 1471 y Fh(d)n(\023)-33 b(e\014nir)24
-b(le)f(pr)n(\023)-33 b(e\014xe)24 b(par)g(lequel)g(commencera)-379
-1577 y(c)n(haque)h(ligne)1060 b Ff(C-x)36 b(.)-450 1702
-y Fh(d)n(\023)-33 b(e\014nir)24 b(la)f(fon)n(te)1061
-b Ff(M-o)-450 1845 y Fg(Mo)s(di\014er)37 b(la)h(casse)-450
-1941 y Fh(mettre)24 b(le)g(mot)g(en)g(ma)t(juscules)634
-b Ff(M-u)-450 2048 y Fh(mettre)24 b(le)g(mot)g(en)g(min)n(uscules)638
-b Ff(M-l)-450 2154 y Fh(mettre)24 b(le)g(mot)g(en)g(capitales)704
-b Ff(M-c)-450 2279 y Fh(mettre)24 b(la)g(r)n(\023)-33
-b(egion)24 b(en)g(ma)t(juscules)563 b Ff(C-x)36 b(C-u)-450
-2386 y Fh(mettre)24 b(la)g(r)n(\023)-33 b(egion)24 b(en)g(min)n
-(uscules)567 b Ff(C-x)36 b(C-l)-450 2529 y Fg(Le)i(mini-tamp)s(on)-450
-2620 y Fh(Les)24 b(touc)n(hes)h(suiv)l(an)n(tes)g(son)n(t)f
-(utilisables)f(dans)h(le)g(mini-tamp)r(on)f(:)-450 2729
-y(compl)n(\023)-33 b(eter)24 b(autan)n(t)i(que)e(p)r(ossible)587
-b Ff(TAB)-450 2835 y Fh(compl)n(\023)-33 b(eter)24 b(un)g(mot)963
-b Ff(SPC)-450 2941 y Fh(compl)n(\023)-33 b(eter)24 b(et)h(ex)n(\023)-33
-b(ecuter)848 b Ff(RET)-450 3048 y Fh(mon)n(trer)24 b(les)f(compl)n
-(\023)-33 b(etions)25 b(p)r(ossibles)481 b Ff(?)-450
-3154 y Fh(rec)n(herc)n(her)24 b(l'en)n(tr)n(\023)-33
-b(ee)24 b(pr)n(\023)-33 b(ec)n(\023)g(eden)n(te)26 b(du)e(mini-tamp)r
-(on)74 b Ff(M-p)-450 3260 y Fh(rec)n(herc)n(her)24 b(l'en)n(tr)n(\023)
--33 b(ee)24 b(suiv)l(an)n(te)h(du)f(mini-tamp)r(on)-379
-3367 y(ou)g(le)f(d)n(\023)-33 b(efaut)1075 b Ff(M-n)-450
-3473 y Fh(rec)n(herc)n(her)24 b(\022)-35 b(a)24 b(reb)r(ours)g(par)f
-(expr.)35 b(rationnelle)-379 3579 y(dans)24 b(l'historique)931
-b Ff(M-r)-450 3685 y Fh(rec)n(herc)n(her)24 b(v)n(ers)g(l'a)n(v)l(an)n
-(t)g(par)g(expr.)35 b(rationnelle)-379 3792 y(dans)24
-b(l'historique)931 b Ff(M-s)-450 3898 y Fh(ann)n(uler)24
-b(la)f(commande)852 b Ff(C-g)-450 3999 y Fh(F)-6 b(aites)39
+b(au)g(dos.)27 b(v2.3)1902 -421 y Fg(D)n(\023)-55 b(eplacemen)m(ts)1902
+-270 y Fe(Ob)5 b(jet)27 b(sur)g(lequel)g(se)g(d)n(\023)-39
+b(eplacer)102 b(En)28 b(arri)n(\022)-39 b(ere)69 b(En)28
+b(a)n(v)-5 b(an)n(t)1902 -190 y Fh(Caract)n(\022)-33
+b(ere)803 b Ff(C-b)329 b(C-f)1902 -110 y Fh(Mot)973 b
+Ff(M-b)329 b(M-f)1902 -31 y Fh(Ligne)931 b Ff(C-p)329
+b(C-n)1902 49 y Fh(Aller)22 b(en)j(d)n(\023)-33 b(ebut/\014n)25
+b(de)f(la)g(ligne)200 b Ff(C-a)329 b(C-e)1902 129 y Fh(Phrase)891
+b Ff(M-a)329 b(M-e)1902 208 y Fh(P)n(aragraphe)749 b
+Ff(M-{)329 b(M-})1902 288 y Fh(P)n(age)953 b Ff(C-x)36
+b([)258 b(C-x)36 b(])1902 368 y Fh(S-expression)721 b
+Ff(C-M-b)259 b(C-M-f)1902 448 y Fh(F)-6 b(onction)834
+b Ff(C-M-a)259 b(C-M-e)1902 527 y Fh(Aller)22 b(en)j(d)n(\023)-33
+b(ebut/\014n)25 b(du)f(tamp)r(on)180 b Ff(M-<)329 b(M->)1902
+636 y Fh(P)n(asser)23 b(\022)-35 b(a)24 b(l')n(\023)-33
+b(ecran)24 b(suiv)l(an)n(t)715 b Ff(C-v)1902 715 y Fh(P)n(asser)23
+b(\022)-35 b(a)24 b(l')n(\023)-33 b(ecran)24 b(pr)n(\023)-33
+b(ec)n(\023)g(eden)n(t)640 b Ff(M-v)1902 795 y Fh(F)-6
+b(aire)23 b(d)n(\023)-33 b(e\014ler)24 b(l')n(\023)-33
+b(ecran)24 b(v)n(ers)f(la)h(gauc)n(he)391 b Ff(C-x)36
+b(<)1902 875 y Fh(F)-6 b(aire)23 b(d)n(\023)-33 b(e\014ler)24
+b(l')n(\023)-33 b(ecran)24 b(v)n(ers)f(la)h(droite)419
+b Ff(C-x)36 b(>)1902 954 y Fh(Placer)24 b(la)f(ligne)h(couran)n(te)h
+(au)f(cen)n(tre)h(de)f(l')n(\023)-33 b(ecran)82 b Ff(C-u)36
+b(C-l)1902 1129 y Fg(D)n(\023)-55 b(etruire)36 b(et)i(supprimer)1902
+1280 y Fe(Ob)5 b(jet)26 b(\022)-40 b(a)26 b(supprimer)439
+b(En)28 b(arri)n(\022)-39 b(ere)69 b(En)28 b(a)n(v)-5
+b(an)n(t)1902 1360 y Fh(Caract)n(\022)-33 b(ere)25 b(\(suppression\))
+370 b Ff(DEL)329 b(C-d)1902 1439 y Fh(Mot)973 b Ff(M-DEL)259
+b(M-d)1902 1519 y Fh(Ligne)24 b(\(jusqu'au)g(d)n(\023)-33
+b(ebut/\014n\))282 b Ff(M-0)36 b(C-k)188 b(C-k)1902 1599
+y Fh(Phrase)891 b Ff(C-x)36 b(DEL)188 b(M-k)1902 1679
+y Fh(S-expression)721 b Ff(M--)36 b(C-M-k)118 b(C-M-k)1902
+1787 y Fh(D)n(\023)-33 b(etruire)23 b(une)i Fe(r)n(\023)-39
+b(egion)804 b Ff(C-w)1902 1867 y Fh(Copier)23 b(une)i(r)n(\023)-33
+b(egion)24 b(dans)g(le)f Fb(kil)t(l)i(ring)383 b Ff(M-w)1902
+1946 y Fh(D)n(\023)-33 b(etruire)21 b(jusqu'\022)-35
+b(a)22 b(l'o)r(ccurrence)g(suiv)l(an)n(te)h(de)f Fb(c)l(ar)71
+b Ff(M-z)36 b Fb(c)l(ar)1902 2055 y Fh(R)n(\023)-33 b(ecup)n(\023)g
+(erer)24 b(la)g(derni)n(\022)-33 b(ere)23 b(r)n(\023)-33
+b(egion)24 b(d)n(\023)-33 b(etruite)303 b Ff(C-y)1902
+2134 y Fh(R)n(\023)-33 b(ecup)n(\023)g(erer)24 b(la)g(r)n(\023)-33
+b(egion)23 b(d)n(\023)-33 b(etruite)25 b(pr)n(\023)-33
+b(ec)n(\023)g(eden)n(te)224 b Ff(M-y)1902 2310 y Fg(Marquer)1902
+2461 y Fh(Placer)24 b(la)f(marque)h(au)g(p)r(oin)n(t)634
+b Ff(C-@)36 b Fh(ou)g Ff(C-SPC)1908 2524 y Fh(\023)1902
+2541 y(Ec)n(hanger)25 b(le)e(p)r(oin)n(t)i(et)f(la)f(marque)483
+b Ff(C-x)36 b(C-x)1902 2649 y Fh(Placer)24 b(la)f(marque)h(un)g
+Fe(mot)f Fh(plus)g(loin)363 b Ff(M-@)1902 2729 y Fh(Marquer)23
+b(le)h Fe(paragraphe)678 b Ff(M-h)1902 2808 y Fh(Marquer)23
+b(la)h Fe(page)912 b Ff(C-x)36 b(C-p)1902 2888 y Fh(Marquer)23
+b(la)h Fe(s-expression)647 b Ff(C-M-@)1902 2968 y Fh(Marquer)23
+b(la)h Fe(fonction)787 b Ff(C-M-h)1902 3048 y Fh(Marquer)23
+b(tout)i(le)f Fe(tamp)r(on)653 b Ff(C-x)36 b(h)1902 3222
+y Fg(Remplacemen)m(t)g(in)m(teractif)1902 3373 y Fh(Remplacer)24
+b(une)g(c)n(ha)-8 b(^)-27 b(\020ne)25 b(de)f(texte)492
+b Ff(M-\045)1985 3453 y Fh(\022)-35 b(a)24 b(l'aide)f(d'expr.)31
+b(rationnelles)145 b Ff(M-x)36 b(query-replace-regexp)1902
+3561 y Fh(R)n(\023)-33 b(ep)r(onses)33 b(p)r(ossibles)e(p)r(our)g(c)n
+(haque)j(o)r(ccurrence)f(dans)f(le)f(mo)r(de)h(de)1902
+3641 y(remplacemen)n(t)25 b(in)n(teractif)f(:)1902 3749
+y Fe(Remplacer)f Fh(celle-l\022)-35 b(a,)23 b(passer)g(\022)-35
+b(a)24 b(la)f(suiv)l(an)n(te)182 b Ff(SPC)1902 3829 y
+Fh(Remplacer)24 b(celle-l\022)-35 b(a,)23 b(rester)g(l\022)-35
+b(a)584 b Ff(,)1902 3909 y Fe(P)n(asser)23 b Fh(\022)-35
+b(a)24 b(la)g(suiv)l(an)n(te)g(sans)g(remplacer)321 b
+Ff(DEL)1902 3988 y Fh(Remplacer)24 b(toutes)h(les)e(o)r(ccurrences)i
+(suiv)l(an)n(tes)119 b Ff(!)1902 4068 y Fe(Rev)n(enir)23
+b Fh(\022)-35 b(a)24 b(l'o)r(ccurrence)g(pr)n(\023)-33
+b(ec)n(\023)g(eden)n(te)365 b Ff(^)1902 4148 y Fe(Quitter)23
+b Fh(le)g(remplacemen)n(t)i(in)n(teractif)348 b Ff(RET)1908
+4211 y Fe(\023)1902 4227 y(Editer)23 b Fh(a)n(v)l(an)n(t)i(de)f
+(reprendre)g(\()p Ff(C-M-c)i Fh(:)31 b(sortir\))119 b
+Ff(C-r)4098 -421 y Fg(F)-10 b(en)n(^)-55 b(etres)37 b(m)m(ultiples)4098
+-299 y Fh(Lorsqu'il)17 b(y)h(a)g(deux)h(commandes,)h(la)e(seconde)i
+(est)e(celle)g(qui)g(concerne)4098 -219 y(non)24 b(pas)g(les)f(fen)n(^)
+-33 b(etres)25 b(mais)e(les)g(cadres.)4098 -118 y(Supprimer)g(toutes)i
+(les)f(autres)g(fen)n(^)-33 b(etres)105 b Ff(C-x)36 b(1)212
+b(C-x)37 b(5)e(1)4098 -38 y Fh(Supprimer)23 b(cette)j(fen)n(^)-33
+b(etre)487 b Ff(C-x)36 b(0)212 b(C-x)37 b(5)e(0)4098
+42 y Fh(Diviser)23 b(la)g(fen)n(^)-33 b(etre)24 b(horizon)n(talemen)n
+(t)170 b Ff(C-x)36 b(2)212 b(C-x)37 b(5)e(2)4098 143
+y Fh(Diviser)23 b(la)g(fen)n(^)-33 b(etre)24 b(v)n(erticalemen)n(t)476
+b Ff(C-x)36 b(3)4098 244 y Fh(F)-6 b(aire)23 b(d)n(\023)-33
+b(e\014ler)24 b(l'autre)g(fen)n(^)-33 b(etre)618 b Ff(C-M-v)4098
+345 y Fh(S)n(\023)-33 b(electionner)25 b(une)f(autre)h(fen)n(^)-33
+b(etre)291 b Ff(C-x)36 b(o)212 b(C-x)37 b(5)e(o)4098
+425 y Fh(Choisir)23 b(un)g(tamp)r(on)i(\(autre)g(fen)n(^)-33
+b(etre\))160 b Ff(C-x)36 b(4)g(b)141 b(C-x)37 b(5)e(b)4098
+504 y Fh(A\016c)n(her)24 b(un)g(tamp)r(on)g(\(autre)h(fen)n(^)-33
+b(etre\))141 b Ff(C-x)36 b(4)g(C-o)71 b(C-x)37 b(5)e(C-o)4098
+584 y Fh(Lire)23 b(un)h(\014c)n(hier)g(\(autre)h(fen)n(^)-33
+b(etre\))308 b Ff(C-x)36 b(4)g(f)141 b(C-x)37 b(5)e(f)4181
+664 y Fh(en)24 b(lecture)g(seule)657 b Ff(C-x)36 b(4)g(r)141
+b(C-x)37 b(5)e(r)4098 743 y Fh(Lancer)24 b(Dired)f(\(autre)i(fen)n(^)
+-33 b(etre\))339 b Ff(C-x)36 b(4)g(d)141 b(C-x)37 b(5)e(d)4098
+823 y Fh(T)-6 b(rouv)n(er)24 b(un)g(tag)g(\(autre)h(fen)n(^)-33
+b(etre\))278 b Ff(C-x)36 b(4)g(.)141 b(C-x)37 b(5)e(.)4098
+924 y Fh(Agrandir)23 b(la)g(fen)n(^)-33 b(etre)25 b(v)n(erticalemen)n
+(t)416 b Ff(C-x)36 b(^)4098 1004 y Fh(R)n(\023)-33 b(eduire)24
+b(la)f(fen)n(^)-33 b(etre)24 b(horizon)n(talemen)n(t)373
+b Ff(C-x)36 b({)4098 1084 y Fh(Agrandir)23 b(la)g(fen)n(^)-33
+b(etre)25 b(horizon)n(talemen)n(t)336 b Ff(C-x)36 b(})4098
+1214 y Fg(F)-10 b(ormater)4098 1336 y Fh(Inden)n(ter)25
+b(la)f Fe(ligne)f Fh(couran)n(te)i(\(selon)f(le)g(mo)r(de\))127
+b Ff(TAB)4098 1416 y Fh(Inden)n(ter)25 b(la)f Fe(r)n(\023)-39
+b(egion)22 b Fh(couran)n(te)j(\(selon)g(le)e(mo)r(de\))76
+b Ff(C-M-\\)4098 1496 y Fh(Inden)n(ter)21 b(la)d Fe(s-expr.)30
+b Fh(couran)n(te)21 b(\(selon)e(le)g(mo)r(de\))72 b Ff(C-M-q)4098
+1576 y Fh(Inden)n(ter)25 b(la)f(r)n(\023)-33 b(egion)23
+b(sur)h(une)g(colonne)386 b Ff(C-x)36 b(TAB)4098 1655
+y Fh(Ins)n(\023)-33 b(erer)24 b(un)g(retour)f(\022)-35
+b(a)24 b(la)g(ligne)f(apr)n(\022)-33 b(es)24 b(le)f(p)r(oin)n(t)168
+b Ff(C-o)4098 1735 y Fh(D)n(\023)-33 b(eplacer)24 b(le)g(reste)g(de)g
+(la)f(ligne)h(v)n(ers)f(le)h(bas)240 b Ff(C-M-o)4098
+1815 y Fh(Supprimer)23 b(les)g(lignes)h(vierges)g(autour)g(du)g(p)r
+(oin)n(t)73 b Ff(C-x)36 b(C-o)4098 1894 y Fh(Joindre)20
+b(\022)-35 b(a)20 b(la)f(ligne)h(pr)n(\023)-33 b(ec)n(\023)g(eden)n(te)
+22 b(\(suiv.)30 b(a)n(v)n(ec)21 b Fb(ar)l(g)6 b Fh(\))71
+b Ff(M-^)4098 1974 y Fh(Supprimer)23 b(tous)h(les)g(espaces)h(autour)f
+(du)g(p)r(oin)n(t)102 b Ff(M-\\)4098 2054 y Fh(Mettre)24
+b(exactemen)n(t)j(une)d(espace)h(au)f(p)r(oin)n(t)223
+b Ff(M-SPC)4098 2155 y Fh(F)-6 b(ormater)24 b(le)f(paragraphe)715
+b Ff(M-q)4098 2235 y Fh(Placer)24 b(la)f(marge)h(droite)g(\022)-35
+b(a)24 b Fb(ar)l(g)30 b Fh(colonnes)287 b Ff(C-u)36 b
+Fb(ar)l(g)42 b Ff(C-x)36 b(f)4098 2314 y Fh(D)n(\023)-33
+b(e\014nir)23 b(le)h(pr)n(\023)-33 b(e\014xe)24 b(des)g(lignes)607
+b Ff(C-x)36 b(.)4098 2415 y Fh(D)n(\023)-33 b(e\014nir)23
+b(la)h(fon)n(te)975 b Ff(M-o)4098 2538 y Fg(Mo)s(di\014er)37
+b(la)h(casse)4098 2660 y Fh(Mettre)24 b(le)g(mot)g(en)g(capitales)627
+b Ff(M-u)4098 2740 y Fh(Mettre)24 b(le)g(mot)g(en)g(min)n(uscules)561
+b Ff(M-l)4098 2819 y Fh(Mettre)24 b(une)h(ma)t(juscule)e(au)h(mot)523
+b Ff(M-c)4098 2920 y Fh(Mettre)24 b(la)g(r)n(\023)-33
+b(egion)23 b(en)i(capitales)556 b Ff(C-x)36 b(C-u)4098
+3000 y Fh(Mettre)24 b(la)g(r)n(\023)-33 b(egion)23 b(en)i(min)n
+(uscules)490 b Ff(C-x)36 b(C-l)4098 3132 y Fg(Le)i(mini-tamp)s(on)4098
+3254 y Fh(Dans)24 b(le)f(mini-tamp)r(on)h(:)4098 3355
+y(Compl)n(\023)-33 b(eter)24 b(autan)n(t)h(que)g(p)r(ossible)496
+b Ff(TAB)4098 3435 y Fh(Compl)n(\023)-33 b(eter)24 b(un)g(mot)872
+b Ff(SPC)4098 3514 y Fh(Compl)n(\023)-33 b(eter)24 b(et)g(ex)n(\023)-33
+b(ecuter)758 b Ff(RET)4098 3594 y Fh(Mon)n(trer)23 b(les)h(compl)n
+(\022)-33 b(etemen)n(ts)25 b(p)r(ossibles)313 b Ff(?)4098
+3674 y Fh(Utiliser)22 b(l'en)n(tr)n(\023)-33 b(ee)24
+b(pr)n(\023)-33 b(ec)n(\023)g(eden)n(te)26 b(du)e(mini-tamp)r(on)91
+b Ff(M-p)4098 3753 y Fh(Utiliser)22 b(l'en)n(tr)n(\023)-33
+b(ee)24 b(suiv)l(an)n(te)h(du)f(mini-tamp)r(on)167 b
+Ff(M-n)4098 3833 y Fh(Rec)n(herc)n(her)25 b(en)f(arri)n(\022)-33
+b(ere)22 b(dans)j(l'historique)251 b Ff(M-r)4098 3913
+y Fh(Rec)n(herc)n(her)25 b(en)f(a)n(v)l(an)n(t)h(dans)f(l'historique)
+285 b Ff(M-s)4098 3993 y Fh(Quitter)24 b(en)g(ann)n(ulan)n(t)h(la)f
+(commande)394 b Ff(C-g)4098 4094 y Fh(F)-6 b(aites)39
 b Ff(C-x)d(ESC)g(ESC)j Fh(p)r(our)d(\023)-33 b(editer)39
 b(et)g(r)n(\023)-33 b(ep)n(\023)g(eter)39 b(la)f(derni)n(\022)-33
-b(ere)38 b(com-)-450 4064 y(mande)33 b(a)n(y)n(an)n(t)g(utilis)n(\023)
--33 b(e)32 b(le)g(minitamp)r(on.)56 b(F)-6 b(aites)32
-b Ff(F10)h Fh(p)r(our)f(activ)n(er)-450 4130 y(la)23
-b(barre)h(de)g(men)n(u)g(utilisan)n(t)g(le)f(minitamp)r(on.)1656
--364 y Fi(Carte)46 b(de)g(r)m(\023)-66 b(ef)m(\023)g(erence)46
-b(de)g(GNU)f(Emacs)1746 -175 y Fg(T)-10 b(amp)s(ons)1746
--21 y Fh(s)n(\023)-33 b(electionner)25 b(un)f(autre)g(tamp)r(on)604
-b Ff(C-x)36 b(b)1744 85 y Fh(\023)-33 b(en)n(um)n(\023)g(erer)24
-b(tous)g(les)f(tamp)r(ons)684 b Ff(C-x)36 b(C-b)1746
-192 y Fh(supprimer)23 b(un)h(tamp)r(on)839 b Ff(C-x)36
-b(k)1746 382 y Fg(T)-10 b(ransp)s(oser)1746 535 y Fh(transp)r(oser)24
-b(des)g Fe(caract)n(\022)-39 b(eres)687 b Ff(C-t)1746
-642 y Fh(transp)r(oser)24 b(des)g Fe(mots)872 b Ff(M-t)1746
-748 y Fh(transp)r(oser)24 b(des)g Fe(lignes)844 b Ff(C-x)36
-b(C-t)1746 854 y Fh(transp)r(oser)24 b(des)g Fe(s-expressions)585
-b Ff(C-M-t)1746 1045 y Fg(V)n(\023)-55 b(eri\014er)37
-b(l'orthographe)1746 1199 y Fh(v)n(\023)-33 b(eri\014er)23
-b(l'orthographe)i(du)f(mot)g(couran)n(t)359 b Ff(M-$)1746
-1305 y Fh(v)n(\023)-33 b(eri\014er)23 b(l'orthographe)i(de)f(tous)g
-(les)f(mots)1817 1411 y(d'une)h(r)n(\023)-33 b(egion)816
-b Ff(M-x)36 b(ispell-region)1746 1517 y Fh(v)n(\023)-33
-b(eri\014er)23 b(l'orthographe)i(de)f(tout)h(le)e(tamp)r(on)37
-b Ff(M-x)f(ispell-buffer)1746 1707 y Fg(T)-10 b(ags)1746
-1861 y Fh(trouv)n(er)24 b(un)g(tag)h(\(une)f(d)n(\023)-33
-b(e\014nition\))564 b Ff(M-.)1746 1967 y Fh(trouv)n(er)24
-b(l'o)r(ccurrence)g(suiv)l(an)n(te)h(du)f(tag)400 b Ff(C-u)36
-b(M-.)1746 2074 y Fh(sp)n(\023)-33 b(eci\014er)24 b(un)g(nouv)n(eau)h
-(\014c)n(hier)f(de)g(tags)187 b Ff(M-x)36 b(visit-tags-table)1746
-2208 y Fh(rec)n(herc)n(her)24 b(par)g(expr.)35 b(rationnelles)24
-b(dans)1817 2315 y(tous)g(les)f(\014c)n(hiers)h(du)g(tableau)h(de)f
-(tags)131 b Ff(M-x)36 b(tags-search)1746 2421 y Fh(lancer)24
-b(un)g(remplacemen)n(t)h(in)n(teractif)f(sur)1817 2527
-y(tous)g(les)f(\014c)n(hiers)652 b Ff(M-x)37 b(tags-query-replace)1746
-2633 y Fh(con)n(tin)n(uer)25 b(la)e(derni)n(\022)-33
-b(ere)24 b(rec)n(herc)n(he)h(de)f(tags)g(ou)g(le)1817
-2740 y(remplacemen)n(t)g(in)n(teractif)710 b Ff(M-,)1746
-2930 y Fg(Shells)1746 3065 y Fh(ex)n(\023)-33 b(ecuter)25
-b(une)g(commande)g(shell)606 b Ff(M-!)1746 3171 y Fh(lancer)24
-b(une)g(commande)h(shell)e(sur)g(la)h(r)n(\023)-33 b(egion)271
-b Ff(M-|)1746 3277 y Fh(\014ltrer)23 b(la)h(r)n(\023)-33
-b(egion)23 b(a)n(v)n(ec)i(une)f(commande)h(shell)246
-b Ff(C-u)36 b(M-|)1746 3384 y Fh(lancer)24 b(un)g(shell)f(dans)h(la)f
-(fen)n(^)-33 b(etre)25 b Ff(*shell*)318 b(M-x)36 b(shell)3942
--364 y Fg(Rectangles)3942 -210 y Fh(copier)24 b(le)f(rectangle)i(dans)f
-(le)g(registre)459 b Ff(C-x)36 b(r)f(r)3942 -104 y Fh(d)n(\023)-33
-b(etruire)24 b(le)f(rectangle)893 b Ff(C-x)36 b(r)f(k)3942
-2 y Fh(r)n(\023)-33 b(ecup)n(\023)g(erer)24 b(le)f(rectangle)850
-b Ff(C-x)36 b(r)f(y)3942 109 y Fh(ouvrir)23 b(le)g(rectangle,)i(en)f(d)
-n(\023)-33 b(ecalan)n(t)25 b(le)f(texte)h(\022)-35 b(a)4013
-215 y(droite)1260 b Ff(C-x)36 b(r)f(o)3942 321 y Fh(vider)23
-b(le)h(rectangle)981 b Ff(C-x)36 b(r)f(c)3942 427 y Fh(pr)n(\023)-33
-b(e\014xer)24 b(c)n(haque)h(ligne)f(a)n(v)n(ec)h(une)f(c)n(ha)-8
-b(^)-27 b(\020ne)369 b Ff(C-x)36 b(r)f(t)3942 618 y Fg(Abr)n(\023)-55
-b(eviations)3942 752 y Fh(a)t(jouter)24 b(une)g(abr)n(\023)-33
-b(eviation)25 b(globale)547 b Ff(C-x)36 b(a)f(g)3942
-859 y Fh(a)t(jouter)24 b(une)g(abr)n(\023)-33 b(eviation)25
-b(lo)r(cale)f(au)g(mo)r(de)300 b Ff(C-x)36 b(a)f(l)3942
-965 y Fh(a)t(jouter)24 b(une)g(expansion)h(globale)f(p)r(our)g(cette)
-4013 1071 y(abr)n(\023)-33 b(eviation)1094 b Ff(C-x)36
-b(a)f(i)h(g)3942 1178 y Fh(a)t(jouter)24 b(une)g(expansion)h(lo)r(cale)
-f(au)g(mo)r(de)g(p)r(our)4013 1284 y(cette)h(abr)n(\023)-33
-b(eviation)922 b Ff(C-x)36 b(a)f(i)h(l)3942 1390 y Fh(faire)23
-b(une)h(expansion)h(explicite)f(de)g(cette)4013 1496
-y(abr)n(\023)-33 b(eviation)1094 b Ff(C-x)36 b(a)f(e)3942
-1631 y Fh(faire)23 b(une)h(expansion)h(dynamique)g(du)f(mot)4013
-1737 y(pr)n(\023)-33 b(ec)n(\023)g(eden)n(t)1146 b Ff(M-/)3942
-1928 y Fg(Expressions)39 b(rationnelles)3942 2082 y Fh(un)24
-b(unique)g(caract)n(\022)-33 b(ere)25 b(quelconque,)g(sauf)f(une)g
-(\014n)4013 2188 y(de)g(ligne)1201 b Ff(.)70 b Fh(\(p)r(oin)n(t\))3942
-2294 y(z)n(\023)-33 b(ero)24 b(r)n(\023)-33 b(ep)n(\023)g(etition)25
-b(ou)f(plus)816 b Ff(*)3942 2401 y Fh(une)24 b(r)n(\023)-33
-b(ep)n(\023)g(etition)25 b(ou)f(plus)832 b Ff(+)3942
-2507 y Fh(z)n(\023)-33 b(ero)24 b(ou)g(une)g(r)n(\023)-33
-b(ep)n(\023)g(etition)834 b Ff(?)3942 2613 y Fh(caract)n(\022)-33
-b(ere)25 b(sp)n(\023)-33 b(ecial)24 b(p)r(our)f(quoter)i(l'expression)e
-(ra-)4013 2720 y(tionnelle)h Fb(c)1121 b Ff(\\)p Fb(c)3942
-2826 y Fh(alternativ)n(e)25 b(\(\\ou"\))960 b Ff(\\|)3942
-2932 y Fh(regroup)r(emen)n(t)1089 b Ff(\\\()35 b Fa(:)12
-b(:)f(:)35 b Ff(\\\))3942 3038 y Fh(le)23 b(m)n(^)-33
-b(eme)24 b(texte)i(que)e(dans)g(le)g Fb(n)5 b Fh(i)n(\022)-33
-b(eme)24 b(group)r(e)264 b Ff(\\)p Fb(n)3942 3145 y Fh(limite)23
-b(de)h(mot)1096 b Ff(\\b)3942 3251 y Fh(non)24 b(limite)f(de)h(mot)959
-b Ff(\\B)3942 3361 y Fe(en)n(tit)n(\023)-39 b(e)499 b(d)n(\023)-39
-b(ebut)258 b(\014n)3942 3417 y Fh(ligne)558 b Ff(^)427
-b($)3942 3483 y Fh(mot)582 b Ff(\\<)392 b(\\>)3942 3539
-y Fh(tamp)r(on)467 b Ff(\\`)392 b(\\')3942 3604 y Fe(classe)27
-b(de)g(caract)n(\022)-39 b(ere)41 b(corresp)r(ond)70
-b(corresp)r(ond)27 b(\022)-40 b(a)26 b(d'autres)3942
-3670 y Fh(ensem)n(ble)e(explicite)147 b Ff([)35 b Fa(:)12
-b(:)f(:)35 b Ff(])239 b([^)36 b Fa(:)12 b(:)f(:)35 b
-Ff(])3942 3736 y Fh(caract)n(\022)-33 b(ere)25 b(de)f(mot)186
-b Ff(\\w)392 b(\\W)3942 3791 y Fh(caract)n(\022)-33 b(ere)25
-b(a)n(v)n(ec)g(la)3984 3847 y(syn)n(taxe)g Fb(c)371 b
-Ff(\\s)p Fb(c)359 b Ff(\\S)p Fb(c)p eop end
-%%Page: 3 3
-TeXDict begin @landscape 3 2 bop -450 -364 a Fg(Jeux)38
-b(de)f(caract)n(\022)-55 b(eres)37 b(in)m(ternationaux)-450
--230 y Fh(indiquer)23 b(la)h(langue)g(principale)631
-b Ff(C-x)36 b(RET)g(l)-450 -123 y Fh(mon)n(trer)24 b(toutes)h(les)e(m)n
-(\023)-33 b(etho)r(des)25 b(de)f(saisie)29 b Ff(M-x)36
-b(list-input-methods)-450 -17 y Fh(activ)n(er)24 b(ou)g(d)n(\023)-33
-b(esactiv)n(er)25 b(la)f(m)n(\023)-33 b(etho)r(de)25
-b(de)f(saisie)229 b Ff(C-\\)-450 89 y Fh(c)n(hoisir)23
-b(le)g(syst)n(\022)-33 b(eme)25 b(de)f(co)r(dage)h(p)r(our)f(la)f(com-)
--379 196 y(mande)h(suiv)l(an)n(te)963 b Ff(C-x)36 b(RET)g(c)-450
-302 y Fh(mon)n(trer)24 b(tous)g(les)f(syst)n(\022)-33
-b(emes)25 b(de)f(co)r(dage)64 b Ff(M-x)36 b(list-coding-systems)-450
-408 y Fh(c)n(hoisir)23 b(le)g(syst)n(\022)-33 b(eme)25
-b(de)f(co)r(dage)h(pr)n(\023)-33 b(ef)n(\023)g(er)n(\023)g(e)85
-b Ff(M-x)36 b(prefer-coding-system)-450 599 y Fg(Info)-450
-733 y Fh(en)n(trer)24 b(dans)g(le)f(visualisateur)h(de)g(la)g(do)r
-(cumen)n(ta-)-379 839 y(tion)g(Info)1174 b Ff(C-h)36
-b(i)-450 946 y Fh(c)n(herc)n(her)24 b(une)h(fonction)f(ou)g(une)h(v)l
-(ariable)e(pr)n(\023)-33 b(ecise)-379 1052 y(dans)24
-b(Info)1154 b Ff(C-h)36 b(S)-450 1162 y Fh(Se)24 b(d)n(\023)-33
-b(eplacer)25 b(dans)f(un)f(n\033ud)i(:)-379 1281 y(une)f(page)h(plus)e
-(bas)891 b Ff(SPC)-379 1387 y Fh(une)24 b(page)h(plus)e(haut)853
-b Ff(DEL)-379 1494 y Fh(d)n(\023)-33 b(ebut)25 b(du)e(n\033ud)967
-b Ff(.)70 b Fh(\(p)r(oin)n(t\))-450 1604 y(P)n(asser)23
-b(de)h(n\033ud)g(en)h(n\033ud)f(:)-379 1710 y(n\033ud)g
-Fe(suiv)-5 b(an)n(t)991 b Ff(n)-379 1816 y Fh(n\033ud)24
-b Fe(pr)n(\023)-39 b(ec)n(\023)g(eden)n(t)898 b Ff(p)-379
-1922 y Fh(aller)22 b Fe(plus)i(haut)953 b Ff(u)-379 2029
-y Fh(c)n(hoisir)23 b(un)g(sujet)h(de)g(men)n(u)h(par)e(son)h(nom)277
-b Ff(m)-379 2135 y Fh(c)n(hoisir)23 b(le)g Fb(n)5 b Fh(i)n(\022)-33
-b(eme)24 b(sujet)g(de)g(men)n(u)g(par)g(son)-379 2241
-y(n)n(um)n(\023)-33 b(ero)23 b(\(1{9\))1029 b Fb(n)-379
-2347 y Fh(suivre)23 b(une)h(r)n(\023)-33 b(ef)n(\023)g(erence)24
-b(crois)n(\023)-33 b(ee)24 b(\(on)h(revien)n(t)f(a)n(v)n(ec)-379
-2454 y Ff(l)p Fh(\))1378 b Ff(f)-379 2560 y Fh(rev)n(enir)23
-b(au)h(dernier)f(n\033ud)h(visit)n(\023)-33 b(e)509 b
-Ff(l)-379 2666 y Fh(rev)n(enir)23 b(au)h(n\033ud)g(du)g(r)n(\023)-33
-b(ep)r(ertoire)509 b Ff(d)-379 2773 y Fh(aller)22 b(au)i(n\033ud)g(de)h
-(plus)e(haut)i(niv)n(eau)f(du)-379 2879 y(\014c)n(hier)f(Info)1110
-b Ff(t)-379 2985 y Fh(aller)22 b(sur)i(n'imp)r(orte)f(quel)h(n\033ud)g
-(par)f(son)h(nom)111 b Ff(g)-450 3095 y Fh(Autres)24
-b(:)-379 3201 y(lancer)f(le)h Fe(didacticiel)e Fh(Info)652
-b Ff(h)-379 3307 y Fh(c)n(herc)n(her)24 b(un)g(sujet)g(dans)g(l'index)
-518 b Ff(i)-379 3413 y Fh(rec)n(herc)n(her)24 b(les)f(n\033uds)h(a)n(v)
-n(ec)h(une)f(expression)-379 3519 y(rationnelle)1115
-b Ff(s)-379 3626 y Fe(quitter)22 b Fh(Info)1051 b Ff(q)1746
--364 y Fg(Registres)1746 -244 y Fh(sauv)n(er)24 b(la)f(r)n(\023)-33
-b(egion)24 b(dans)g(un)g(registre)506 b Ff(C-x)36 b(r)f(s)1746
--138 y Fh(ins)n(\023)-33 b(erer)23 b(le)g(con)n(ten)n(u)j(du)e
-(registre)f(dans)h(le)g(tamp)r(on)117 b Ff(C-x)36 b(r)f(i)1746
--11 y Fh(sauv)n(er)24 b(la)f(v)l(aleur)h(du)g(p)r(oin)n(t)g(dans)g(un)g
-(registre)222 b Ff(C-x)36 b(r)f(SPC)1746 95 y Fh(sauter)24
-b(au)g(p)r(oin)n(t)g(sauv)n(\023)-33 b(e)25 b(dans)f(le)f(registre)355
-b Ff(C-x)36 b(r)f(j)1746 244 y Fg(Macros)j(cla)m(vier)1746
-344 y Fe(lancer)23 b Fh(la)g(d)n(\023)-33 b(e\014nition)25
-b(d'une)f(macro)g(cla)n(vier)277 b Ff(C-x)36 b(\()1746
-451 y Fe(terminer)23 b Fh(la)g(d)n(\023)-33 b(e\014nition)25
-b(d'une)f(macro)f(cla)n(vier)183 b Ff(C-x)36 b(\))1746
-557 y Fe(ex)n(\023)-39 b(ecuter)24 b Fh(la)f(derni)n(\022)-33
-b(ere)24 b(macro)g(cla)n(vier)f(d)n(\023)-33 b(e\014nie)203
-b Ff(C-x)36 b(e)1746 663 y Fh(a)t(jouter)24 b(\022)-35
-b(a)24 b(la)f(derni)n(\022)-33 b(ere)24 b(macro)g(cla)n(vier)446
-b Ff(C-u)36 b(C-x)g(\()1746 770 y Fh(donner)24 b(un)g(nom)g(\022)-35
-b(a)24 b(la)f(derni)n(\022)-33 b(ere)24 b(macro)1817
-876 y(cla)n(vier)996 b Ff(M-x)36 b(name-last-kbd-macro)1746
-982 y Fh(ins)n(\023)-33 b(erer)23 b(une)h(d)n(\023)-33
-b(e\014nition)25 b(Lisp)e(dans)h(le)1817 1088 y(tamp)r(on)960
-b Ff(M-x)36 b(insert-kbd-macro)1746 1237 y Fg(Commandes)i(de)f(gestion)
-h(d'Emacs)g(Lisp)1744 1357 y Fh(\023)-33 b(ev)l(aluer)24
-b(la)g Fe(s-expression)f Fh(situ)n(\023)-33 b(ee)25 b(a)n(v)l(an)n(t)g
-(le)e(p)r(oin)n(t)115 b Ff(C-x)36 b(C-e)1744 1463 y Fh(\023)-33
-b(ev)l(aluer)24 b(la)g Fe(defun)g Fh(couran)n(te)707
-b Ff(C-M-x)1744 1570 y Fh(\023)-33 b(ev)l(aluer)24 b(la)g
-Fe(r)n(\023)-39 b(egion)726 b Ff(M-x)36 b(eval-region)1746
-1676 y Fh(lire)23 b(et)f(\023)-33 b(ev)l(aluer)24 b(le)g(mini-tamp)r
-(on)593 b Ff(M-:)1746 1782 y Fh(c)n(harger)24 b(\022)-35
-b(a)24 b(partir)f(du)h(r)n(\023)-33 b(ep)r(ertoire)23
-b(syst)n(\022)-33 b(eme)1817 1888 y(standard)926 b Ff(M-x)36
-b(load-library)1746 2037 y Fg(P)m(ersonnalisation)g(simple)1746
-2157 y Fh(p)r(ersonnaliser)23 b(les)h(v)l(ariables)f(et)h(les)g(fon)n
-(tes)81 b Ff(M-x)36 b(customize)1746 2263 y Fh(Cr)n(\023)-33
-b(eation)23 b(de)g(liaisons)f(de)h(touc)n(hes)h(globales)f(en)g(Emacs)g
-(Lisp)f(\(exem-)1746 2336 y(ples\):)1746 2425 y Ff(\(global-set-key)40
-b("\\C-cg")d('goto-line\))1746 2493 y(\(global-set-key)j("\\M-#")d
-('query-replace-regexp\))1755 2627 y Fg(\023)1746 2651
-y(Ecriture)g(de)h(commandes)1746 2731 y Ff(\(defun)f
-Fb(nom-c)l(ommande)43 b Ff(\()p Fb(ar)l(gs)5 b Ff(\))1817
-2796 y(")p Fb(do)l(cumentation)g Ff(")38 b(\(interactive)g(")p
-Fb(template)5 b Ff("\))1817 2862 y Fb(b)l(o)l(dy)h Ff(\))1746
-2948 y Fh(Exemple)24 b(:)1746 3034 y Ff(\(defun)37 b
-(cette-ligne-en-haut-de-)q(la-f)q(ene)q(tre)42 b(\(line\))1746
-3090 y("Repositionne)d(la)d(ligne)h(du)e(point)i(en)f(haut)g(de)g(la)g
-(fenetre.)1746 3145 y(Avec)g(ARG,)h(place)g(le)e(point)i(sur)f(la)g
-(ligne)h(ARG.")1817 3213 y(\(interactive)h("P"\))1817
-3269 y(\(recenter)f(\(if)g(\(null)f(line\))2311 3324
-y(0)2240 3380 y(\(prefix-numeric-value)41 b(line\)\)\)\))1746
-3468 y Fh(La)21 b(sp)n(\023)-33 b(eci\014cation)23 b
-Ff(interactive)h Fh(indique)d(commen)n(t)h(lire)e(in)n(teractiv)n(e-)
-1746 3534 y(men)n(t)28 b(les)f(param)n(\022)-33 b(etres.)42
-b(F)-6 b(aites)28 b Ff(C-h)36 b(f)f(interactive)30 b
-Fh(p)r(our)e(plus)e(de)1746 3599 y(pr)n(\023)-33 b(ecisions.)2039
-3682 y Fd(Cop)n(yrigh)n(t)2342 3680 y(c)2325 3682 y Fc(\015)21
+b(ere)38 b(com-)4098 4173 y(mande)22 b(a)n(y)n(an)n(t)g(utilis)n(\023)
+-33 b(e)20 b(le)h(mini-tamp)r(on.)30 b(F)-6 b(aites)22
+b Ff(F10)f Fh(p)r(our)g(utiliser)f(la)4098 4253 y(barre)j(de)h(men)n(u)
+h(sur)e(un)h(terminal)f(en)h(utilisan)n(t)g(le)f(mini-tamp)r(on.)p
+eop end
+%%Page: 2 2
+TeXDict begin @landscape 2 1 bop -384 -421 a Fi(Carte)46
+b(de)g(r)m(\023)-66 b(ef)m(\023)g(erence)46 b(de)g(GNU)f(Emacs)-294
+-227 y Fg(T)-10 b(amp)s(ons)-294 -76 y Fh(Choisir)23
+b(un)g(autre)i(tamp)r(on)674 b Ff(C-x)36 b(b)-294 4 y
+Fh(Lister)23 b(tous)i(les)e(tamp)r(ons)719 b Ff(C-x)36
+b(C-b)-294 84 y Fh(Supprimer)23 b(un)h(tamp)r(on)757
+b Ff(C-x)36 b(k)-294 257 y Fg(T)-10 b(ransp)s(oser)-294
+409 y Fh(T)k(ransp)r(oser)24 b(des)g Fe(caract)n(\022)-39
+b(eres)598 b Ff(C-t)-294 488 y Fh(T)-6 b(ransp)r(oser)24
+b(des)g Fe(mots)783 b Ff(M-t)-294 568 y Fh(T)-6 b(ransp)r(oser)24
+b(des)g Fe(lignes)755 b Ff(C-x)36 b(C-t)-294 648 y Fh(T)-6
+b(ransp)r(oser)24 b(des)g Fe(s-expressions)496 b Ff(C-M-t)-294
+822 y Fg(V)n(\023)-55 b(eri\014er)37 b(l'orthographe)-294
+973 y Fh(V)n(\023)-33 b(eri\014er)23 b(l'orthographe)h(du)g(mot)g
+(couran)n(t)273 b Ff(M-$)-294 1053 y Fh(V)n(\023)-33
+b(eri\014er)23 b(l'orthographe)h(d'une)g(r)n(\023)-33
+b(egion)231 b Ff(M-x)36 b(ispell-region)-294 1133 y Fh(V)n(\023)-33
+b(eri\014er)23 b(l'orthographe)h(de)g(tout)h(le)f(tamp)r(on)53
+b Ff(M-x)36 b(ispell-buffer)-294 1308 y Fg(T)-10 b(ags)-294
+1460 y Fh(T)k(rouv)n(er)24 b(un)g(tag)g(\(une)h(d)n(\023)-33
+b(e\014nition\))475 b Ff(M-.)-294 1539 y Fh(P)n(asser)23
+b(\022)-35 b(a)24 b(l'o)r(ccurrence)g(suiv)l(an)n(te)h(du)f(tag)298
+b Ff(C-u)36 b(M-.)-294 1619 y Fh(Sp)n(\023)-33 b(eci\014er)24
+b(un)g(autre)h(\014c)n(hier)e(de)h(tags)217 b Ff(M-x)36
+b(visit-tags-table)-294 1727 y Fh(Rec)n(herc)n(her)25
+b(dans)f(tous)g(les)f(\014c)n(hiers)h(des)g(tags)32 b
+Ff(M-x)k(tags-search)-294 1836 y Fh(Remplacer)24 b(dans)g(tous)g(les)g
+(\014c)n(hiers)159 b Ff(M-x)36 b(tags-query-replace)-294
+1915 y Fh(Con)n(tin)n(uer)24 b(la)g(rec)n(herc)n(he)h(ou)f(le)f
+(remplacemen)n(t)122 b Ff(M-,)-294 2090 y Fg(Shell)-294
+2241 y Fh(Ex)n(\023)-33 b(ecuter)25 b(une)f(commande)h(shell)519
+b Ff(M-!)-294 2321 y Fh(Lancer)24 b(une)h(commande)f(shell)g(sur)f(la)g
+(r)n(\023)-33 b(egion)176 b Ff(M-|)-294 2400 y Fh(Filtrer)23
+b(la)g(r)n(\023)-33 b(egion)24 b(a)n(v)n(ec)h(une)f(commande)h(shell)
+148 b Ff(C-u)36 b(M-|)-294 2480 y Fh(Lancer)24 b(un)g(shell)f(dans)h
+(la)g(fen)n(^)-33 b(etre)24 b Ff(*shell*)223 b(M-x)36
+b(shell)-294 2646 y Fg(Rectangles)-294 2797 y Fh(Copier)23
+b(le)h(rectangle)h(dans)f(un)g(registre)341 b Ff(C-x)36
+b(r)g(r)-294 2876 y Fh(D)n(\023)-33 b(etruire)23 b(le)h(rectangle)807
+b Ff(C-x)36 b(r)g(k)-294 2956 y Fh(R)n(\023)-33 b(ecup)n(\023)g(erer)24
+b(le)g(rectangle)754 b Ff(C-x)36 b(r)g(y)-294 3036 y
+Fh(D)n(\023)-33 b(ecaler)24 b(le)f(rectangle)i(\022)-35
+b(a)24 b(droite)571 b Ff(C-x)36 b(r)g(o)-294 3116 y Fh(Vider)23
+b(le)h(rectangle)894 b Ff(C-x)36 b(r)g(c)-294 3195 y
+Fh(Pr)n(\023)-33 b(e\014xer)24 b(c)n(haque)h(ligne)f(du)f(rectangle)392
+b Ff(C-x)36 b(r)g(t)-294 3370 y Fg(Abr)n(\023)-55 b(eviations)-294
+3521 y Fh(Ajouter)24 b(une)g(abr)n(\023)-33 b(eviation)25
+b(globale)462 b Ff(C-x)36 b(a)g(g)-294 3601 y Fh(Ajouter)24
+b(une)g(abr)n(\023)-33 b(eviation)25 b(lo)r(cale)f(au)g(mo)r(de)215
+b Ff(C-x)36 b(a)g(l)-294 3680 y Fh(Ajouter)24 b(une)g(expansion)h
+(globale)505 b Ff(C-x)36 b(a)g(i)f(g)-294 3760 y Fh(Ajouter)24
+b(une)g(expansion)h(lo)r(cale)f(au)g(mo)r(de)258 b Ff(C-x)36
+b(a)g(i)f(l)-294 3840 y Fh(F)-6 b(aire)17 b(une)i(expansion)g
+(explicite)f(de)g(l'abr)n(\023)-33 b(eviation)71 b Ff(C-x)36
+b(a)g(e)-294 3948 y Fh(F)-6 b(aire)23 b(une)i(expansion)f(du)g(mot)g
+(pr)n(\023)-33 b(ec)n(\023)g(eden)n(t)261 b Ff(M-/)1902
+-421 y Fg(Expressions)39 b(rationnelles)1902 -270 y Fh(Un)24
+b(caract)n(\022)-33 b(ere)25 b(quelconque,)g(sauf)e(\014n)h(de)g(ligne)
+150 b Ff(.)71 b Fh(\(p)r(oin)n(t\))1902 -190 y(Z)n(\023)-33
+b(ero)24 b(r)n(\023)-33 b(ep)n(\023)g(etition)24 b(ou)g(plus)734
+b Ff(*)1902 -110 y Fh(Une)24 b(r)n(\023)-33 b(ep)n(\023)g(etition)24
+b(ou)h(plus)747 b Ff(+)1902 -31 y Fh(Z)n(\023)-33 b(ero)24
+b(ou)g(une)g(r)n(\023)-33 b(ep)n(\023)g(etition)751 b
+Ff(?)1908 32 y Fh(\023)1902 49 y(Ec)n(happ)r(er)25 b(le)e(caract)n
+(\022)-33 b(ere)25 b(sp)n(\023)-33 b(ecial)24 b Fb(c)488
+b Ff(\\)p Fb(c)1902 129 y Fh(Alternativ)n(e)24 b(\(\\ou")i(non)e
+(exclusif)5 b(\))476 b Ff(\\|)1902 208 y Fh(Regroup)r(emen)n(t)994
+b Ff(\\\()36 b Fa(:)11 b(:)h(:)34 b Ff(\\\))1902 288
+y Fh(Reprendre)24 b(le)g(texte)h(du)f Fb(n)5 b Fh(-i)n(\022)-33
+b(eme)24 b(group)r(emen)n(t)146 b Ff(\\)p Fb(n)1902 368
+y Fh(Limite)23 b(de)i(mot)1000 b Ff(\\b)1902 448 y Fh(Non)24
+b(limite)f(de)h(mot)874 b Ff(\\B)1902 556 y Fe(Ob)5 b(jet)707
+b(D)n(\023)-39 b(ebut)264 b(Fin)1902 636 y Fh(Ligne)743
+b Ff(^)450 b($)1902 715 y Fh(Mot)785 b Ff(\\<)415 b(\\>)1902
+795 y Fh(T)-6 b(amp)r(on)658 b Ff(\\`)415 b(\\')1902
+875 y Fe(Classe)26 b(de)i(caract)n(\022)-39 b(ere)227
+b(Corresp)r(ond)70 b(Compl)n(\023)-39 b(emen)n(t)1902
+954 y Fh(Ensem)n(ble)24 b(explicite)339 b Ff([)36 b Fa(:)11
+b(:)h(:)34 b Ff(])262 b([^)36 b Fa(:)12 b(:)f(:)35 b
+Ff(])1902 1034 y Fh(Caract)n(\022)-33 b(ere)25 b(de)f(mot)375
+b Ff(\\w)415 b(\\W)1902 1114 y Fh(Caract)n(\022)-33 b(ere)25
+b(a)n(v)n(ec)f(la)g(syn)n(taxe)h Fb(c)67 b Ff(\\s)p Fb(c)382
+b Ff(\\S)p Fb(c)1902 1288 y Fg(Jeux)38 b(de)f(caract)n(\022)-55
+b(eres)37 b(in)m(ternationaux)1902 1439 y Fh(Pr)n(\023)-33
+b(eciser)23 b(la)g(langue)i(principale)568 b Ff(C-x)36
+b(RET)g(l)1902 1519 y Fh(Lister)23 b(les)h(m)n(\023)-33
+b(etho)r(des)25 b(de)f(saisie)268 b Ff(M-x)36 b(list-input-methods)1902
+1599 y Fh(Activ)n(er/d)n(\023)-33 b(esactiv)n(er)25 b(la)f(m)n(\023)-33
+b(etho)r(de)25 b(de)f(saisie)227 b Ff(C-\\)1902 1679
+y Fh(Choisir)17 b(le)i(co)r(dage)h(p)r(our)e(la)g(commande)i(suiv)l(an)
+n(te)72 b Ff(C-x)36 b(RET)g(c)1902 1758 y Fh(Lister)23
+b(les)h(co)r(dages)568 b Ff(M-x)37 b(list-coding-systems)1902
+1838 y Fh(Choisir)23 b(le)g(co)r(dage)i(pr)n(\023)-33
+b(ef)n(\023)g(er)n(\023)g(e)312 b Ff(M-x)36 b(prefer-coding-system)1902
+2014 y Fg(Info)1902 2166 y Fh(Lire)23 b(une)h(do)r(cumen)n(tation)j
+(Info)557 b Ff(C-h)36 b(i)1902 2245 y Fh(Rec)n(herc)n(her)25
+b(une)f(fonction/v)l(ariable)h(dans)f(Info)110 b Ff(C-h)36
+b(S)1902 2354 y Fh(Se)24 b(d)n(\023)-33 b(eplacer)25
+b(dans)f(un)f(n\033ud)i(:)1973 2462 y(P)n(age)f(suiv)l(an)n(te)948
+b Ff(SPC)1973 2542 y Fh(P)n(age)24 b(pr)n(\023)-33 b(ec)n(\023)g(eden)n
+(te)873 b Ff(DEL)1973 2621 y Fh(D)n(\023)-33 b(ebut)24
+b(du)g(n\033ud)881 b Ff(.)71 b Fh(\(p)r(oin)n(t\))1902
+2730 y(Na)n(vigation)25 b(en)n(tre)f(n\033uds)g(:)1973
+2838 y(N\033ud)f Fe(suiv)-5 b(an)n(t)907 b Ff(n)1973
+2918 y Fh(N\033ud)23 b Fe(pr)n(\023)-39 b(ec)n(\023)g(eden)n(t)814
+b Ff(p)1973 2997 y Fe(Remon)n(ter)22 b Fh(d'un)i(niv)n(eau)634
+b Ff(u)1973 3077 y Fh(Choisir)22 b(un)i(sujet)g(du)g(men)n(u)g(par)g
+(son)f(nom)177 b Ff(m)1973 3157 y Fh(Choisir)22 b(le)i
+Fb(n)5 b Fh(-i)n(\022)-33 b(eme)23 b(sujet)h(\(1{9\))488
+b Fb(n)1973 3236 y Fh(Suivre)18 b(une)h(r)n(\023)-33
+b(ef)n(\023)g(erence)18 b(crois)n(\023)-33 b(ee)19 b(\(retour)f(a)n(v)n
+(ec)i Ff(l)p Fh(\))71 b Ff(f)1973 3316 y Fh(Rev)n(enir)23
+b(au)h(dernier)g(n\033ud)g(visit)n(\023)-33 b(e)413 b
+Ff(l)1973 3396 y Fh(Aller)22 b(au)i(sommaire)f(Info)658
+b Ff(d)1973 3475 y Fh(Aller)22 b(au)i(n\033ud)g(le)g(plus)f(haut)i(du)f
+(man)n(uel)189 b Ff(t)1973 3555 y Fh(Aller)22 b(sur)h(un)h(n\033ud)g
+(par)g(son)f(nom)395 b Ff(g)1902 3663 y Fh(Autres)24
+b(:)1973 3772 y(Aller)e(au)i Fe(didacticiel)e Fh(Info)591
+b Ff(h)1973 3851 y Fh(Rec)n(herc)n(her)24 b(un)g(sujet)g(dans)g
+(l'index)364 b Ff(i)1973 3931 y Fh(Rec)n(herc)n(her)24
+b(un)g(n\033ud)g(par)g(expr.)31 b(rationnelle)73 b Ff(s)1973
+4011 y Fe(Quitter)22 b Fh(Info)962 b Ff(q)4098 -421 y
+Fg(Registres)4098 -271 y Fh(Sauv)n(er)24 b(la)g(r)n(\023)-33
+b(egion)24 b(dans)g(un)g(registre)423 b Ff(C-x)36 b(r)g(s)4098
+-191 y Fh(Ins)n(\023)-33 b(erer)24 b(le)f(con)n(ten)n(u)j(d'un)e
+(registre)480 b Ff(C-x)36 b(r)g(i)4098 -83 y Fh(Sauv)n(er)24
+b(la)g(v)l(aleur)g(du)g(p)r(oin)n(t)g(dans)g(un)g(registre)139
+b Ff(C-x)36 b(r)g(SPC)4098 -3 y Fh(Aller)22 b(au)i(p)r(oin)n(t)h(sauv)n
+(\023)-33 b(e)24 b(dans)g(un)g(registre)294 b Ff(C-x)36
+b(r)g(j)4098 172 y Fg(Macros)i(cla)m(vier)4098 322 y
+Fe(Lancer)23 b Fh(la)h(d)n(\023)-33 b(e\014nition)24
+b(d'une)g(macro)g(cla)n(vier)180 b Ff(C-x)36 b(\()4098
+402 y Fe(T)-7 b(erminer)23 b Fh(la)g(d)n(\023)-33 b(e\014nition)25
+b(d'une)f(macro)g(cla)n(vier)93 b Ff(C-x)36 b(\))4098
+481 y Fe(Ex)n(\023)-39 b(ecuter)24 b Fh(la)f(derni)n(\022)-33
+b(ere)24 b(macro)g(cla)n(vier)f(d)n(\023)-33 b(e\014nie)116
+b Ff(C-x)36 b(e)4098 561 y Fh(F)-6 b(aire)23 b(un)h(a)t(jout)h(\022)-35
+b(a)23 b(la)h(derni)n(\022)-33 b(ere)23 b(macro)h(cla)n(vier)155
+b Ff(C-u)36 b(C-x)g(\()4098 641 y Fh(Nommer)23 b(la)h(derni)n(\022)-33
+b(ere)23 b(macro)h(cla)n(vier)59 b Ff(M-x)37 b(name-last-kbd-macro)4098
+720 y Fh(En)24 b(ins)n(\023)-33 b(erer)23 b(une)h(d)n(\023)-33
+b(e\014nition)25 b(Lisp)297 b Ff(M-x)36 b(insert-kbd-macro)4098
+894 y Fg(Commandes)i(de)f(gestion)h(d'Emacs)g(Lisp)4104
+1036 y Fh(\023)4098 1053 y(Ev)l(aluer)24 b(la)f Fe(s-expression)h
+Fh(a)n(v)l(an)n(t)h(le)f(p)r(oin)n(t)227 b Ff(C-x)36
+b(C-e)4104 1116 y Fh(\023)4098 1133 y(Ev)l(aluer)24 b(la)f
+Fe(defun)h Fh(couran)n(te)620 b Ff(C-M-x)4104 1196 y
+Fh(\023)4098 1212 y(Ev)l(aluer)24 b(la)f Fe(r)n(\023)-39
+b(egion)742 b Ff(M-x)36 b(eval-region)4098 1292 y Fh(Lire)23
+b(et)f(\023)-33 b(ev)l(aluer)25 b(dans)f(le)f(mini-tamp)r(on)333
+b Ff(M-:)4098 1372 y Fh(Charger)24 b(depuis)g(un)g(r)n(\023)-33
+b(ep)r(ertoire)23 b(standard)113 b Ff(M-x)36 b(load-library)4098
+1547 y Fg(P)m(ersonnalisation)g(simple)4098 1697 y Fh(P)n(ersonnaliser)
+23 b(les)g(v)l(ariables)h(et)g(les)g(fon)n(tes)108 b
+Ff(M-x)36 b(customize)4098 1805 y Fh(Exemples)24 b(de)g(d)n(\023)-33
+b(e\014nition)25 b(globale)f(de)g(touc)n(hes)h(en)f(Emacs)g(Lisp)f(:)
+4098 1913 y Ff(\(global-set-key)40 b("\\C-cg")d('goto-line\))4098
+1993 y(\(global-set-key)j("\\M-#")d('query-replace-regexp\))4107
+2168 y Fg(\023)4098 2192 y(Ecriture)g(de)h(commandes)4098
+2342 y Ff(\(defun)f Fb(nom-c)l(ommande)43 b Ff(\()p Fb(ar)l(gs)5
+b Ff(\))4169 2422 y(")p Fb(do)l(cumentation)g Ff(")4169
+2502 y(\(interactive)38 b(")p Fb(template)5 b Ff("\))4169
+2581 y Fb(b)l(o)l(dy)h Ff(\))4098 2689 y Fh(Exemple)24
+b(:)4098 2797 y Ff(\(defun)37 b(cette-ligne-en-haut-de-)q(la-f)q(ene)q
+(tre)42 b(\(line\))4169 2877 y("Positionne)c(la)e(ligne)h(courante)g
+(en)f(haut)g(de)g(la)g(fen^)-35 b(etre.)4098 2957 y(Avec)36
+b(ARG,)h(place)g(le)e(point)i(sur)f(la)g(ligne)h(ARG.")4169
+3037 y(\(interactive)h("P"\))4169 3116 y(\(recenter)f(\(if)g(\(null)f
+(line\))4663 3196 y(0)4592 3276 y(\(prefix-numeric-value)41
+b(line\)\)\)\))4098 3384 y Fh(La)21 b(sp)n(\023)-33 b(eci\014cation)23
+b Ff(interactive)h Fh(indique)d(commen)n(t)h(lire)e(in)n(teractiv)n(e-)
+4098 3463 y(men)n(t)28 b(les)f(param)n(\022)-33 b(etres.)42
+b(F)-6 b(aites)27 b Ff(C-h)37 b(f)e(interactive)30 b
+Fh(p)r(our)e(plus)e(de)4098 3543 y(pr)n(\023)-33 b(ecisions.)4391
+3635 y Fd(Cop)n(yrigh)n(t)4694 3633 y(c)4677 3635 y Fc(\015)21
 b Fd(2007)i(F)-5 b(ree)21 b(Soft)n(w)n(are)i(F)-5 b(oundation,)20
-b(Inc.)2179 3727 y(v2.3)h(p)r(our)f(GNU)g(Emacs)h(v)n(ersion)h(22,)f
-(2006)2309 3771 y(conception)g(de)f(Stephen)g(Gildea)2220
-3835 y(traduction)h(fran\030)-27 b(caise)21 b(d')2831
-3822 y(\023)2826 3835 y(Eric)f(Jacob)r(oni)1746 3900
-y(V)-5 b(ous)22 b(p)r(ouv)n(ez)g(faire)g(et)g(distribuer)f(des)h
-(copies)g(de)f(cette)i(carte,)f(p)r(ourvu)f(que)h(la)1746
-3944 y(note)16 b(de)g(cop)n(yrigh)n(t)g(et)h(cette)f(note)g(de)g(p)r
-(ermission)f(soien)n(t)h(conserv)n(\023)-29 b(ees)19
-b(sur)c(toutes)1746 3989 y(les)21 b(copies.)1746 4054
-y(P)n(our)e(les)g(copies)g(du)f(man)n(uel)g(GNU)g(Emacs,)g(\023)-29
-b(ecriv)n(ez)20 b(\022)-30 b(a)19 b(la)g(F)-5 b(ree)19
-b(Soft)n(w)n(are)i(F)-5 b(oun-)1746 4098 y(dation,)29
+b(Inc.)4531 3699 y(v2.3)h(p)r(our)f(GNU)g(Emacs)h(v)n(ersion)h(22,)f
+(2007)4661 3763 y(conception)g(de)f(Stephen)g(Gildea)4510
+3827 y(traduction)g(fran\030)-27 b(caise)22 b(de)e(Mic)n(ha)n(\177)-29
+b(el)22 b(Cadilhac)4098 3919 y(V)-5 b(ous)22 b(p)r(ouv)n(ez)g(faire)g
+(et)g(distribuer)f(des)h(copies)g(de)f(cette)i(carte,)f(p)r(ourvu)f
+(que)h(la)4098 3983 y(note)16 b(de)g(cop)n(yrigh)n(t)g(et)h(cette)f
+(note)g(de)g(p)r(ermission)f(soien)n(t)h(conserv)n(\023)-29
+b(ees)19 b(sur)c(toutes)4098 4046 y(les)21 b(copies.)4098
+4138 y(P)n(our)d(des)f(copies)h(du)f(man)n(uel)g(GNU)f(Emacs,)h(\023)
+-29 b(ecriv)n(ez)19 b(\022)-30 b(a)17 b(la)h(F)-5 b(ree)18
+b(Soft)n(w)n(are)h(F)-5 b(oun-)4098 4202 y(dation,)29
 b(Inc.,)g(51)g(F)-5 b(ranklin)28 b(Street,)h(Fifth)f(Flo)r(or,)h
-(Boston,)i(MA)d(02110-1301)1746 4143 y(USA.)p eop end
+(Boston,)i(MA)d(02110-1301)4098 4266 y(USA.)p eop end
 %%Trailer
 
 userdict /end-hook known{end-hook}if
--- a/etc/fr-refcard.tex	Mon May 14 11:56:47 2007 +0000
+++ b/etc/fr-refcard.tex	Tue May 15 07:17:13 2007 +0000
@@ -66,7 +66,7 @@
 
 \def\versionnumber{2.3}
 \def\versionemacs{22}
-\def\versionyear{2006}          % latest update
+\def\versionyear{2007}          % latest update
 \def\year{2007}                 % latest copyright year
 
 \def\shortcopyrightnotice{\vskip 1ex plus 2 fill
@@ -79,14 +79,16 @@
 \centerline{v\versionnumber{} pour GNU Emacs version \versionemacs,
   \versionyear}
 \centerline{conception de Stephen Gildea}
-\centerline{traduction fran\c{c}aise d'\'Eric Jacoboni}
+\centerline{traduction fran\c{c}aise de Micha\"el Cadilhac}
+% previously: Eric Jacoboni
 
 Vous pouvez faire et distribuer des copies de cette carte, pourvu que
 la note de copyright et cette note de permission soient conserv\'ees sur
 toutes les copies.
 
-Pour les copies du manuel GNU Emacs, \'ecrivez \`a la Free Software
-Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA.
+Pour des copies du manuel GNU Emacs, \'ecrivez \`a la Free Software
+Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
 
 \endgroup}
 
@@ -121,13 +123,10 @@
 \else                           %2 or 3 columns uses prereduced size
   \hsize 3.2in
   \vsize 7.95in
-  \if 1\the\letterpaper
-     \vsize 7.95in
-  \else
-     \vsize 7.65in
-  \fi
-  \hoffset -.75in
-  \voffset -.745in
+%  \hoffset -.75in
+  \hoffset -.49in
+%  \voffset -.745in
+  \voffset -.84in
   \font\titlefont=cmbx10 \scaledmag2
   \font\headingfont=cmbx10 \scaledmag1
   \font\smallfont=cmr6
@@ -146,11 +145,6 @@
   \def\it{\eightit}
   \def\tt{\eighttt}
   \normalbaselineskip=.8\normalbaselineskip
-  \if 1\the\letterpaper
-     \normalbaselineskip=.8\normalbaselineskip
-  \else
-     \normalbaselineskip=.7\normalbaselineskip
-  \fi
   \normallineskip=.8\normallineskip
   \normallineskiplimit=.8\normallineskiplimit
   \normalbaselines\rm           %make definitions take effect
@@ -200,7 +194,7 @@
 \chardef\{=`\{
 \chardef\}=`\}
 
-\hyphenation{mini-buf-fer}
+\hyphenation{mini-tam-pon}
 
 \parindent 0pt
 \parskip 1ex plus .5ex minus .5ex
@@ -216,8 +210,8 @@
 
 % section - new major section.  Argument is section name.
 \outer\def\section#1{\par\filbreak
-  \vskip 2ex plus 2ex minus 2ex {\headingfont #1}\mark{#1}%
-  \vskip 1ex plus 1ex minus 1.5ex}
+  \vskip 2ex plus 1.5ex minus 2.5ex {\headingfont #1}\mark{#1}%
+  \vskip 1.5ex plus 1ex minus 1.5ex}
 
 \newdimen\keyindent
 
@@ -250,10 +244,9 @@
 % \key{description of key}{key-name}
 % prints the description left-justified, and the key-name in a \kbd
 % form near the right margin.
-\def\key#1#2{\leavevmode\hbox to \hsize{\vbox
-  {\hsize=.75\hsize\rightskip=1em \tolerance=20000
-   \raggedright
-   \hskip\keyindent\hangindent=1em\strut#1\strut}\kbd{\quad#2}\hss}}
+\def\key#1#2{\leavevmode\hbox to \hsize{\vtop
+  {\hsize=.75\hsize\rightskip=1em
+  \hskip\keyindent\relax#1}\kbd{#2}\hfil}}
 
 \newbox\metaxbox
 \setbox\metaxbox\hbox{\kbd{M-x }}
@@ -265,12 +258,10 @@
 % Tries to justify the beginning of the command name at the same place
 % as \key starts the key name.  (The "M-x " sticks out to the left.)
 % Note: was \hsize=.74, but changed to avoid overflow in some places.
-\def\metax#1#2{\leavevmode\hbox to \hsize{\vbox
-  {\hsize=.66\hsize\rightskip=1em
-   \raggedright \tolerance=20000
-   \hskip\keyindent\hangindent=1em\strut#1\strut\par}%
-   %\hskip-\metaxwidth minus 1fil
-   \kbd{#2}\hss}}
+\def\metax#1#2{\leavevmode\hbox to \hsize{\hbox to .75\hsize
+  {\hskip\keyindent\relax#1\hfil}%
+  \hskip -\metaxwidth minus 1fil
+  \kbd{#2}\hfil}}
 
 % threecol - like "key" but with two key names.
 % for example, one for doing the action backward, and one for forward.
@@ -284,395 +275,378 @@
 
 \centerline{(pour la version \versionemacs)}
 
-\section{Lancement d'Emacs}
+\section{Lancer Emacs}
 
-Pour lancer GNU Emacs \versionemacs, il suffit de taper son nom : \kbd{emacs}
-
-Pour charger un fichier \`a \'editer, voir Fichiers, ci-dessous.
+Pour lancer GNU Emacs \versionemacs, tapez juste son nom : \kbd{emacs}.
 
 \section{Quitter Emacs}
 
-\key{suspend Emacs (ou l'iconifie sous X)}{C-z}
-\key{quitter d\'efinitivement Emacs}{C-x C-c}
+\key{Suspendre Emacs (ou l'iconifier sous X)}{C-z}
+\key{Quitter d\'efinitivement Emacs}{C-x C-c}
 
 \section{Fichiers}
 
-\key{{\bf lire} un fichier dans Emacs}{C-x C-f}
-\key{{\bf sauvegarder} un fichier sur disque}{C-x C-s}
-\key{sauvegarder {\bf tous} les fichiers}{C-x s}
-\key{{\bf ins\'erer} le contenu d'un autre fichier dans ce tampon}{C-x i}
-\key{remplacer ce fichier par le fichier voulu}{C-x C-v}
-\key{\'ecrire le tampon dans un fichier donn\'e}{C-x C-w}
-\key{bascule du mode lecture-seule du tampon}{C-x C-q}
+\key{{\bf Lire} un fichier}{C-x C-f}
+\key{{\bf Sauvegarder} un fichier}{C-x C-s}
+\key{Sauvegarder {\bf tous} les fichiers}{C-x s}
+\key{{\bf Ins\'erer} un fichier sous le point (curseur)}{C-x i}
+\key{Remplacer le fichier par un autre fichier}{C-x C-v}
+\key{Sauvegarder sous un autre nom de fichier}{C-x C-w}
+\key{Basculer en mode lecture seule}{C-x C-q}
 
 \section{Obtenir de l'aide}
 
-Le syst\`eme d'aide est simple. Faites \kbd{C-h} (ou \kbd{F1}) et suivez
-les instructions. Si vous d\'ebutez, faites \kbd{C-h t} pour suivre un
+Le syst\`eme d'aide est simple. Faites \kbd{C-h} (ou \kbd{F1}) et
+suivez les instructions. Si vous d\'ebutez, faites \kbd{C-h t} pour un
 {\bf didacticiel}.
 
-\key{supprimer la fen\^etre d'aide}{C-x 1}
-\key{faire d\'efiler la fen\^etre d'aide}{C-M-v}
+\key{Supprimer la fen\^etre d'aide}{C-x 1}
+\key{Faire d\'efiler la fen\^etre d'aide}{C-M-v}
 
-\key{apropos : montrer les commandes contenant une certaine cha\^\i{}ne}{C-h a}
-\key{d\'ecrire la fonction lanc\'ee par une touche}{C-h k}
-\key{d\'ecrire une fonction}{C-h f}
-\key{obtenir des informations sp\'ecifiques au mode}{C-h m}
+\key{Rechercher des commandes selon une cha\^\i{}ne}{C-h a}
+\key{D\'ecrire la fonction associ\'ee \`a une touche}{C-h k}
+\key{D\'ecrire une fonction}{C-h f}
+\key{Obtenir des informations relatives au mode}{C-h m}
 
-\section{R\'ecup\'eration des erreurs}
+\section{R\'ecup\'eration sur erreurs}
 
-\key{{\bf avorter} une commande partiellement tap\'ee ou ex\'ecut\'ee}{C-g}
-\metax{{\bf r\'ecup\'erer} les fichier perdus par un crash du syst\`eme}{M-x recover-session}
-\metax{{\bf annuler} une modification non souhait\'ee}{C-x u, C-_ {\rm ou} C-/}
-\metax{restaurer un tampon avec son contenu initial}{M-x revert-buffer}
-\key{r\'eafficher un \'ecran perturb\'e}{C-l}
-
-\shortcopyrightnotice
+\key{{\bf Abandonner} une commande}{C-g}
+\metax{{\bf R\'ecup\'erer} les fichiers apr\`es un crash}{M-x recover-session}
+\metax{{\bf Annuler} une modification}{C-x u, C-_ {\rm ou} C-/}
+\metax{Annuler toutes les modifications}{M-x revert-buffer}
+\key{R\'eafficher un \'ecran perturb\'e}{C-l}
 
 \section{Recherche incr\'ementale}
 
-\key{rechercher vers l'avant}{C-s}
-\key{rechercher vers l'arri\`ere}{C-r}
-\key{rechercher vers l'avant par expression rationnelle}{C-M-s}
-\key{rechercher vers l'arri\`ere par expression rationnelle}{C-M-r}
+\key{Rechercher en avant}{C-s}
+\key{Rechercher en arri\`ere}{C-r}
+\key{Rechercher en avant (expression rationnelle)}{C-M-s}
+\key{Rechercher en arri\`ere (expression rationnelle)}{C-M-r}
 
-\key{s\'electionner la cha\^\i{}ne de recherche pr\'ec\'edente}{M-p}
-\key{s\'electionner la cha\^\i{}ne de recherche suivante}{M-n}
-\key{sortir de la recherche incr\'ementale}{RET}
-\key{annuler l'effet du dernier caract\`ere}{DEL}
-\key{annuler la recherche en cours}{C-g}
+\key{Utiliser la cha\^\i{}ne de recherche pr\'ec\'edente}{M-p}
+\key{Utiliser la cha\^\i{}ne de recherche suivante}{M-n}
+\key{Quitter la recherche incr\'ementale}{RET}
+\key{Annuler l'effet du dernier caract\`ere}{DEL}
+\key{Annuler la recherche en cours}{C-g}
 
 Refaites \kbd{C-s} ou \kbd{C-r} pour r\'ep\'eter la recherche dans une
-direction quelconque.
-Si Emacs est encore en train de chercher, \kbd{C-g} n'annule que ce
-qui n'a pas \'et\'e fait.
+des directions.
+En cours de recherche, \kbd{C-g} efface les derniers caract\`eres et
+ne conserve que le pr\'efixe d\'ej\`a trouv\'e.
+
+\shortcopyrightnotice
 
 \section{D\'eplacements}
 
 \paralign to \hsize{#\tabskip=10pt plus 1 fil&#\tabskip=0pt&#\cr
-\threecol{{\bf entit\'e sur laquelle se d\'eplacer}}{{\bf en arri\`ere}}{{\bf en avant}}
-\threecol{caract\`ere}{C-b}{C-f}
-\threecol{mot}{M-b}{M-f}
-\threecol{ligne}{C-p}{C-n}
-\threecol{aller au d\'ebut (ou \`a la fin) de la ligne}{C-a}{C-e}
-\threecol{phrase}{M-a}{M-e}
-\threecol{paragraphe}{M-\{}{M-\}}
-\threecol{page}{C-x [}{C-x ]}
-\threecol{s-expression}{C-M-b}{C-M-f}
-\threecol{fonction}{C-M-a}{C-M-e}
-\threecol{aller au d\'ebut (ou \`a la fin) du tampon}{M-<}{M->}
+\threecol{{\bf Objet sur lequel se d\'eplacer}}{{\bf En
+    arri\`ere}}{{\bf En avant}}
+\threecol{Caract\`ere}{C-b}{C-f}
+\threecol{Mot}{M-b}{M-f}
+\threecol{Ligne}{C-p}{C-n}
+\threecol{Aller en d\'ebut/fin de la ligne}{C-a}{C-e}
+\threecol{Phrase}{M-a}{M-e}
+\threecol{Paragraphe}{M-\{}{M-\}}
+\threecol{Page}{C-x [}{C-x ]}
+\threecol{S-expression}{C-M-b}{C-M-f}
+\threecol{Fonction}{C-M-a}{C-M-e}
+\threecol{Aller en d\'ebut/fin du tampon}{M-<}{M->}
 }
 
-\key{passer \`a l'\'ecran suivant}{C-v}
-\key{passer \`a l'\'ecran pr\'ec\'edent}{M-v}
-\key{d\'efiler l'\'ecran vers la droite}{C-x <}
-\key{d\'efiler l'\'ecran vers la gauche}{C-x >}
-\key{placer la ligne courante au centre de l'\'ecran}{C-u C-l}
+\key{Passer \`a l'\'ecran suivant}{C-v}
+\key{Passer \`a l'\'ecran pr\'ec\'edent}{M-v}
+\key{Faire d\'efiler l'\'ecran vers la gauche}{C-x <}
+\key{Faire d\'efiler l'\'ecran vers la droite}{C-x >}
+\key{Placer la ligne courante au centre de l'\'ecran}{C-u C-l}
 
 \section{D\'etruire et supprimer}
 
 \paralign to \hsize{#\tabskip=10pt plus 1 fil&#\tabskip=0pt&#\cr
-\threecol{{\bf entit\'e \`a supprimer}}{{\bf en arri\`ere}}{{\bf en avant}}
-\threecol{caract\`ere (suppression, pas destruction)}{DEL}{C-d}
-\threecol{mot}{M-DEL}{M-d}
-\threecol{ligne (jusqu'\`a la fin)}{M-0 C-k}{C-k}
-\threecol{phrase}{C-x DEL}{M-k}
-\threecol{s-expression}{M-- C-M-k}{C-M-k}
+\threecol{{\bf Objet \`a supprimer}}{{\bf En arri\`ere}}{{\bf En avant}}
+\threecol{Caract\`ere (suppression)}{DEL}{C-d}
+\threecol{Mot}{M-DEL}{M-d}
+\threecol{Ligne (jusqu'au d\'ebut/fin)}{M-0 C-k}{C-k}
+\threecol{Phrase}{C-x DEL}{M-k}
+\threecol{S-expression}{M-- C-M-k}{C-M-k}
 }
 
-\key{d\'etruire une {\bf r\'egion}}{C-w}
-\key{copier une r\'egion dans le kill ring}{M-w}
-\key{d\'etruire jusqu'\`a l'occurrence suivante de {\it car}}{M-z {\it car}}
+\key{D\'etruire une {\bf r\'egion}}{C-w}
+\key{Copier une r\'egion dans le {\it kill ring}}{M-w}
+\key{D\'etruire jusqu'\`a l'occurrence suivante de {\it car}}{M-z {\it car}}
 
-\key{r\'ecup\'erer la derni\`ere chose d\'etruite}{C-y}
-\key{remplacer la derni\`ere r\'ecup\'eration par ce qui a \'et\'e d\'etruit avant}{M-y}
+\key{R\'ecup\'erer la derni\`ere r\'egion d\'etruite}{C-y}
+\key{R\'ecup\'erer la r\'egion d\'etruite pr\'ec\'edente}{M-y}
 
 \section{Marquer}
 
-\key{placer la marque ici}{C-@ {\rm ou} C-SPC}
-\key{\'echanger le point et la marque}{C-x C-x}
+\key{Placer la marque au point}{C-@ {\rm ou} C-SPC}
+\key{\'Echanger le point et la marque}{C-x C-x}
 
-\key{placer la marque {\it arg\/} {\bf mots} plus loin}{M-@}
-\key{marquer le {\bf paragraphe}}{M-h}
-\key{marquer la {\bf page}}{C-x C-p}
-\key{marquer la {\bf s-expression}}{C-M-@}
-\key{marquer la {\bf fonction}}{C-M-h}
-\key{marquer tout le {\bf tampon}}{C-x h}
+\key{Placer la marque un {\bf mot} plus loin}{M-@}
+\key{Marquer le {\bf paragraphe}}{M-h}
+\key{Marquer la {\bf page}}{C-x C-p}
+\key{Marquer la {\bf s-expression}}{C-M-@}
+\key{Marquer la {\bf fonction}}{C-M-h}
+\key{Marquer tout le {\bf tampon}}{C-x h}
 
 \section{Remplacement interactif}
 
-\key{remplacer interactivement une cha\^\i{}ne de texte}{M-\%}
+\key{Remplacer une cha\^\i{}ne de texte}{M-\%}
 % query-replace-regexp est liee a C-M-% mais on ne peut pas le
 % taper dans une console.
-% Hack to prevent overflow. Please someone fix this properly.
-\metax{en utilisant les expressions \hskip 20pt rationnelles}
-{\hskip -30pt M-x query-replace-regexp}
+\metax{\hskip 10pt \`a l'aide d'expr. rationnelles}{M-x query-replace-regexp}
 
-Les r\'eponses admises dans le mode de remplacement interactif sont :
+R\'eponses possibles pour chaque occurrence dans le mode de
+remplacement interactif :
 
-\key{{\bf remplacer} celle-l\`a, passer \`a la suivante}{SPC}
-\key{remplacer celle-l\`a, rester l\`a}{,}
-\key{{\bf passer} \`a la suivante sans remplacer}{DEL}
-\key{remplacer toutes les correspondances suivantes}{!}
-\key{{\bf revenir} \`a la correspondance pr\'ec\'edente}{^}
-\key{{\bf sortir} du remplacement interactif}{RET}
-\key{entrer dans l'\'edition r\'ecursive (\kbd{C-M-c} pour sortir)}{C-r}
+\key{{\bf Remplacer} celle-l\`a, passer \`a la suivante}{SPC}
+\key{Remplacer celle-l\`a, rester l\`a}{,}
+\key{{\bf Passer} \`a la suivante sans remplacer}{DEL}
+\key{Remplacer toutes les occurrences suivantes}{!}
+\key{{\bf Revenir} \`a l'occurrence pr\'ec\'edente}{^}
+\key{{\bf Quitter} le remplacement interactif}{RET}
+\key{{\bf \'Editer} avant de reprendre (\kbd{C-M-c} : sortir)}{C-r}
 
 \section{Fen\^etres multiples}
 
-Lorsqu'il y a deux commandes, la seconde est une commande identique \`a
-la premi\`ere pour un cadre au lieu d'une fen\^etre.
+Lorsqu'il y a deux commandes, la seconde est celle qui concerne non
+pas les fen\^etres mais les cadres.
 
 {\setbox0=\hbox{\kbd{0}}\advance\hsize by 0\wd0
 \paralign to \hsize{#\tabskip=10pt plus 1 fil&#\tabskip=0pt&#\cr
-\threecol{supprimer toutes les autres fen\^etres}{C-x 1\ \ \ \ }{C-x 5 1}
-\threecol{diviser la fen\^etre horizontalement}{C-x 2\ \ \ \ }{C-x 5 2}
-\threecol{supprimer cette fen\^etre}{C-x 0\ \ \ \ }{C-x 5 0}
+\threecol{Supprimer toutes les autres fen\^etres}{C-x 1\ \ \ \ }{C-x 5 1}
+\threecol{Supprimer cette fen\^etre}{C-x 0\ \ \ \ }{C-x 5 0}
+\threecol{Diviser la fen\^etre horizontalement}{C-x 2\ \ \ \ }{C-x 5 2}
 }}
-\key{diviser la fen\^etre verticalement}{C-x 3}
+\key{Diviser la fen\^etre verticalement}{C-x 3}
 
-\key{faire d\'efiler l'autre fen\^etre}{C-M-v}
+\key{Faire d\'efiler l'autre fen\^etre}{C-M-v}
 
 %% tabskip reduced from 10 to 3pt to fit on letterpaper.
 {\setbox0=\hbox{\kbd{0}}\advance\hsize by 2\wd0
 \paralign to \hsize{#\tabskip=3pt plus 1 fil&#\tabskip=0pt&#\cr
-\threecol{placer le curseur dans une autre fen\^etre}{C-x o}{C-x 5 o}
+\threecol{S\'electionner une autre fen\^etre}{C-x o}{C-x 5 o}
 
-%% Hack in a line break to avoid overflow.
-\threecol{\raggedright s\'electionner le tampon dans\cr
-\hskip 10pt l'autre fen\^etre}{C-x 4 b}{C-x 5 b}
-\threecol{afficher le tampon dans l'autre fen\^etre}{C-x 4 C-o}{C-x 5 C-o}
-\threecol{charger un fichier dans l'autre fen\^etre}{C-x 4 f}{C-x 5 f}
-%% Hack in a line break to avoid overflow.
-\threecol{\raggedright charger un fichier en lecture seule\cr
-\hskip 10pt dans l'autre fen\^etre}{C-x 4 r}{C-x 5 r}
-\threecol{lancer Dired  dans l'autre fen\^etre}{C-x 4 d}{C-x 5 d}
-\threecol{trouver un tag dans l'autre fen\^etre}{C-x 4 .}{C-x 5 .}
+\threecol{Choisir un tampon (autre fen\^etre)}{C-x 4 b}{C-x 5 b}
+\threecol{Afficher un tampon (autre fen\^etre)}{C-x 4 C-o}{C-x 5 C-o}
+\threecol{Lire un fichier (autre fen\^etre)}{C-x 4 f}{C-x 5 f}
+\threecol{\hskip 10pt en lecture seule}{C-x 4 r}{C-x 5 r}
+\threecol{Lancer Dired (autre fen\^etre)}{C-x 4 d}{C-x 5 d}
+\threecol{Trouver un tag (autre fen\^etre)}{C-x 4 .}{C-x 5 .}
 }}
 
-\key{agrandir la fen\^etre}{C-x ^}
-\key{rapetisser la fen\^etre}{C-x \{}
-\key{\'elargir la fen\^etre}{C-x \}}
+\key{Agrandir la fen\^etre verticalement}{C-x ^}
+\key{R\'eduire la fen\^etre horizontalement}{C-x \{}
+\key{Agrandir la fen\^etre horizontalement}{C-x \}}
 
 \section{Formater}
 
-\key{indenter la {\bf ligne} courante (d\'epend du mode)}{TAB}
-\key{indenter la {\bf r\'egion} courante (d\'epend du mode)}{C-M-\\}
-\key{indenter la {\bf s-expression} courante (d\'epend du mode)}{C-M-q}
-\key{indenter la r\'egion sur {\it arg\/} colonnes}{C-x TAB}
+\key{Indenter la {\bf ligne} courante (selon le mode)}{TAB}
+\key{Indenter la {\bf r\'egion} courante (selon le mode)}{C-M-\\}
+\key{Indenter la {\bf s-expr.} courante (selon le mode)}{C-M-q}
+\key{Indenter la r\'egion sur une colonne}{C-x TAB}
+\key{Ins\'erer un retour \`a la ligne apr\`es le point}{C-o}
+\key{D\'eplacer le reste de la ligne vers le bas}{C-M-o}
+\key{Supprimer les lignes vierges autour du point}{C-x C-o}
+\key{Joindre \`a la ligne pr\'ec\'edente (suiv. avec {\it arg\/})}{M-^}
+\key{Supprimer tous les espaces autour du point}{M-\\}
+\key{Mettre exactement une espace au point}{M-SPC}
 
-\key{ins\'erer un newline apr\`es le point}{C-o}
-\key{d\'eplacer le reste de la ligne vers le bas}{C-M-o}
-\key{supprimer les lignes blanches autour du point}{C-x C-o}
-\key{joindre la ligne \`a la pr\'ec\'edente (\`a la suivante avec arg)}{M-^}
-\key{supprimer tous les espaces autour du point}{M-\\}
-\key{mettre exactement un espace \`a l'emplacement du point}{M-SPC}
+\key{Formater le paragraphe}{M-q}
+\key{Placer la marge droite \`a {\it arg\/} colonnes}{C-u {\it arg\/} C-x f}
+\key{D\'efinir le pr\'efixe des lignes}{C-x .}
 
-\key{remplir le paragraphe}{M-q}
-\key{placer la marge droite}{C-x f}
-\key{d\'efinir le pr\'efixe par lequel commencera chaque ligne}{C-x .}
-
-\key{d\'efinir la fonte}{M-o}
+\key{D\'efinir la fonte}{M-o}
 
 \section{Modifier la casse}
 
-\key{mettre le mot en majuscules}{M-u}
-\key{mettre le mot en minuscules}{M-l}
-\key{mettre le mot en capitales}{M-c}
+\key{Mettre le mot en capitales}{M-u}
+\key{Mettre le mot en minuscules}{M-l}
+\key{Mettre une majuscule au mot}{M-c}
 
-\key{mettre la r\'egion en majuscules}{C-x C-u}
-\key{mettre la r\'egion en minuscules}{C-x C-l}
+\key{Mettre la r\'egion en capitales}{C-x C-u}
+\key{Mettre la r\'egion en minuscules}{C-x C-l}
 
 \section{Le mini-tampon}
 
-Les touches suivantes sont utilisables dans le mini-tampon :
+Dans le mini-tampon :
 
-\key{compl\'eter autant que possible}{TAB}
-\key{compl\'eter un mot}{SPC}
-\key{compl\'eter et ex\'ecuter}{RET}
-\key{montrer les compl\'etions possibles}{?}
-\key{rechercher l'entr\'ee pr\'ec\'edente du mini-tampon}{M-p}
-\key{rechercher l'entr\'ee suivante du mini-tampon ou le d\'efaut}{M-n}
-\key{rechercher \`a rebours par expr. rationnelle dans l'historique}{M-r}
-\key{rechercher vers l'avant par expr. rationnelle dans l'historique}{M-s}
-\key{annuler la commande}{C-g}
+\key{Compl\'eter autant que possible}{TAB}
+\key{Compl\'eter un mot}{SPC}
+\key{Compl\'eter et ex\'ecuter}{RET}
+\key{Montrer les compl\`etements possibles}{?}
+\key{Utiliser l'entr\'ee pr\'ec\'edente du mini-tampon}{M-p}
+\key{Utiliser l'entr\'ee suivante du mini-tampon}{M-n}
+\key{Rechercher en arri\`ere dans l'historique}{M-r}
+\key{Rechercher en avant  dans l'historique}{M-s}
+\key{Quitter en annulant la commande}{C-g}
 
-Faites \kbd{C-x ESC ESC} pour \'editer et r\'ep\'eter la derni\`ere commande
-ayant utilis\'e le minitampon. Faites \kbd{F10} pour activer la barre de
-menu utilisant le minitampon.
+Faites \kbd{C-x ESC ESC} pour \'editer et r\'ep\'eter la derni\`ere
+commande ayant utilis\'e le mini-tampon. Faites \kbd{F10} pour
+utiliser la barre de menu sur un terminal en utilisant le mini-tampon.
 
 \newcolumn
 \title{Carte de r\'ef\'erence de GNU Emacs}
 
 \section{Tampons}
 
-\key{s\'electionner un autre tampon}{C-x b}
-\key{\'enum\'erer tous les tampons}{C-x C-b}
-\key{supprimer un tampon}{C-x k}
+\key{Choisir un autre tampon}{C-x b}
+\key{Lister tous les tampons}{C-x C-b}
+\key{Supprimer un tampon}{C-x k}
 
 \section{Transposer}
 
-\key{transposer des {\bf caract\`eres}}{C-t}
-\key{transposer des {\bf mots}}{M-t}
-\key{transposer des {\bf lignes}}{C-x C-t}
-\key{transposer des {\bf s-expressions}}{C-M-t}
+\key{Transposer des {\bf caract\`eres}}{C-t}
+\key{Transposer des {\bf mots}}{M-t}
+\key{Transposer des {\bf lignes}}{C-x C-t}
+\key{Transposer des {\bf s-expressions}}{C-M-t}
 
 \section{V\'erifier l'orthographe}
 
-\key{v\'erifier l'orthographe du mot courant}{M-\$}
-\metax{v\'erifier l'orthographe de tous les mots d'une r\'egion}{M-x ispell-region}
-\metax{v\'erifier l'orthographe de tout le tampon}{M-x ispell-buffer}
+\key{V\'erifier l'orthographe du mot courant}{M-\$}
+\metax{V\'erifier l'orthographe d'une r\'egion}{M-x ispell-region}
+\metax{V\'erifier l'orthographe de tout le tampon}{M-x ispell-buffer}
 
 \section{Tags}
 
-\key{trouver un tag (une d\'efinition)}{M-.}
-\key{trouver l'occurrence suivante du tag}{C-u M-.}
-\metax{sp\'ecifier un nouveau fichier de tags}{M-x visit-tags-table}
+\key{Trouver un tag (une d\'efinition)}{M-.}
+\key{Passer \`a l'occurrence suivante du tag}{C-u M-.}
+\metax{Sp\'ecifier un autre fichier de tags}{M-x visit-tags-table}
+
+\metax{Rechercher dans tous les fichiers des tags}{M-x tags-search}
 
-\metax{rechercher par expr. rationnelles dans tous les fichiers du
-  tableau de tags}{M-x tags-search}
-%% Overflow hack.
-\metax{lancer un remplacement interactif sur tous les fichiers}%
-{\hskip -9pt M-x tags-query-replace}
-\key{continuer la derni\`ere recherche de tags ou le remplacement interactif}{M-,}
+\metax{Remplacer dans tous les fichiers}{M-x tags-query-replace}
+\key{Continuer la recherche ou le remplacement}{M-,}
+
+\section{Shell}
 
-\section{Shells}
-
-\key{ex\'ecuter une commande shell}{M-!}
-\key{lancer une commande shell sur la r\'egion}{M-|}
-\key{filtrer la r\'egion avec une commande shell}{C-u M-|}
-\key{lancer un shell dans la fen\^etre \kbd{*shell*}}{M-x shell}
+\key{Ex\'ecuter une commande shell}{M-!}
+\key{Lancer une commande shell sur la r\'egion}{M-|}
+\key{Filtrer la r\'egion avec une commande shell}{C-u M-|}
+\key{Lancer un shell dans la fen\^etre {\tt *shell*}}{M-x shell}
 
 \section{Rectangles}
 
-\key{copier le rectangle dans le registre}{C-x r r}
-\key{d\'etruire le rectangle}{C-x r k}
-\key{r\'ecup\'erer le rectangle}{C-x r y}
-\key{ouvrir le rectangle, en d\'ecalant le texte \`a droite}{C-x r o}
-\key{vider le rectangle}{C-x r c}
-\key{pr\'efixer chaque ligne avec une cha\^\i{}ne}{C-x r t}
+\key{Copier le rectangle dans un registre}{C-x r r}
+\key{D\'etruire le rectangle}{C-x r k}
+\key{R\'ecup\'erer le rectangle}{C-x r y}
+\key{D\'ecaler le rectangle \`a droite}{C-x r o}
+\key{Vider le rectangle}{C-x r c}
+\key{Pr\'efixer chaque ligne du rectangle}{C-x r t}
 
 \section{Abr\'eviations}
 
-\key{ajouter une abr\'eviation globale}{C-x a g}
-\key{ajouter une abr\'eviation locale au mode}{C-x a l}
-\key{ajouter une expansion globale pour cette abr\'eviation}{C-x a i g}
-\key{ajouter une expansion locale au mode pour cette abr\'eviation}{C-x a i l}
-\key{faire une expansion explicite de cette abr\'eviation}{C-x a e}
+\key{Ajouter une abr\'eviation globale}{C-x a g}
+\key{Ajouter une abr\'eviation locale au mode}{C-x a l}
+\key{Ajouter une expansion globale}{C-x a i g}
+\key{Ajouter une expansion locale au mode}{C-x a i l}
+\key{Faire une expansion explicite de l'abr\'eviation}{C-x a e}
 
-\key{faire une expansion dynamique du mot pr\'ec\'edent}{M-/}
+\key{Faire une expansion du mot pr\'ec\'edent}{M-/}
 
 \section{Expressions rationnelles}
 
-\key{un unique caract\`ere quelconque, sauf une fin de ligne}{. {\rm(point)}}
-\key{z\'ero r\'ep\'etition ou plus}{*}
-\key{une r\'ep\'etition ou plus}{+}
-\key{z\'ero ou une r\'ep\'etition}{?}
-\key{caract\`ere sp\'ecial pour quoter l'expression rationnelle {\it c\/}}{\\{\it c}}
-\key{alternative (``ou'')}{\\|}
-\key{regroupement}{\\( {\rm$\ldots$} \\)}
-\key{le m\^eme texte que dans le {\it n\/}i\`eme groupe}{\\{\it n}}
-\key{limite de mot}{\\b}
-\key{non limite de mot}{\\B}
+\key{Un caract\`ere quelconque, sauf fin de ligne}{. {\rm(point)}}
+\key{Z\'ero r\'ep\'etition ou plus}{*}
+\key{Une r\'ep\'etition ou plus}{+}
+\key{Z\'ero ou une r\'ep\'etition}{?}
+\key{\'Echapper le caract\`ere sp\'ecial {\it c\/}}{\\{\it c}}
+\key{Alternative (``ou'' non exclusif)}{\\|}
+\key{Regroupement}{\\( {\rm$\ldots$} \\)}
+\key{Reprendre le texte du {\it n\/}-i\`eme groupement}{\\{\it n}}
+\key{Limite de mot}{\\b}
+\key{Non limite de mot}{\\B}
 
 %% tabskip reduced from 10 to 5pt for letterpaper.
 \paralign to \hsize{#\tabskip=5pt plus 1 fil&#\tabskip=0pt&#\cr
-\threecol{{\bf entit\'e}}{{\bf d\'ebut}}{{\bf fin}}
-\threecol{ligne}{^}{\$}
-\threecol{mot}{\\<}{\\>}
-\threecol{tampon}{\\`}{\\'}
+\threecol{{\bf Objet}}{{\bf D\'ebut}}{{\bf Fin}}
+\threecol{Ligne}{^}{\$}
+\threecol{Mot}{\\<}{\\>}
+\threecol{Tampon}{\\`}{\\'}
 
-\threecol{{\bf classe de caract\`ere}}{{\bf correspond}}
-{{\bf correspond \`a d'autres}}
-\threecol{ensemble explicite}{[ {\rm$\ldots$} ]}{[^ {\rm$\ldots$} ]}
-\threecol{caract\`ere de mot}{\\w}{\\W}
-%% Overflow hack.
-\threecol{\raggedright caract\`ere avec la\cr \hskip 5pt syntaxe {\it c}}%
-{\\s{\it c}}{\\S{\it c}}
+\threecol{{\bf Classe de caract\`ere}}{{\bf Correspond}}%
+{{\bf Compl\'ement}}
+\threecol{Ensemble explicite}{[ {\rm$\ldots$} ]}{[^ {\rm$\ldots$} ]}
+\threecol{Caract\`ere de mot}{\\w}{\\W}
+\threecol{Caract\`ere avec la syntaxe {\it c}}{\\s{\it c}}{\\S{\it c}}
 }
 
 \section{Jeux de caract\`eres internationaux}
 
-\key{indiquer la langue principale}{C-x RET l}
-%% Overflow hack.
-\metax{montrer toutes les m\'ethodes de saisie}
-{\hskip -10pt M-x list-input-methods}
-\key{activer ou d\'esactiver la m\'ethode de saisie}{C-\\}
-\key{choisir le syst\`eme de codage pour la commande suivante}{C-x RET c}
-%% Overflow hack.
-\metax{montrer tous les syst\`emes de codage}%
-{\hskip -10pt M-x list-coding-systems}
-%% Overflow hack.
-\metax{choisir le syst\`eme de codage pr\'ef\'er\'e}%
-{\hskip -10pt M-x prefer-coding-system}
+\key{Pr\'eciser la langue principale}{C-x RET l}
+\metax{Lister les m\'ethodes de saisie}{M-x list-input-methods}
+\key{Activer/d\'esactiver la m\'ethode de saisie}{C-\\}
+\key{Choisir le codage pour la commande suivante}{C-x RET c}
+\metax{Lister les codages}{M-x list-coding-systems}
+\metax{Choisir le codage pr\'ef\'er\'e}{M-x prefer-coding-system}
 
 \section{Info}
 
-\key{entrer dans le visualisateur de la documentation Info}{C-h i}
-\key{chercher une fonction ou une variable pr\'ecise dans Info}{C-h S}
+\key{Lire une documentation Info}{C-h i}
+\key{Rechercher une fonction/variable dans Info}{C-h S}
 \beginindentedkeys
 
 Se d\'eplacer dans un n\oe{}ud :
 
-\key{une page plus bas}{SPC}
-\key{une page plus haut}{DEL}
-\key{d\'ebut du n\oe{}ud}{. {\rm (point)}}
+\key{Page suivante}{SPC}
+\key{Page pr\'ec\'edente}{DEL}
+\key{D\'ebut du n\oe{}ud}{. {\rm (point)}}
 
-Passer de n\oe{}ud en n\oe{}ud :
+Navigation entre n\oe{}uds :
 
-\key{n\oe{}ud {\bf suivant}}{n}
-\key{n\oe{}ud {\bf pr\'ec\'edent}}{p}
-\key{aller {\bf plus haut}}{u}
-\key{choisir un sujet de menu par son nom}{m}
-\key{choisir le {\it n\/}i\`eme sujet de menu par son num\'ero (1--9)}{{\it n}}
-\key{suivre une r\'ef\'erence crois\'ee  (on revient avec \kbd{l})}{f}
-\key{revenir au dernier n\oe{}ud visit\'e}{l}
-\key{revenir au n\oe{}ud du r\'epertoire}{d}
-\key{aller au n\oe{}ud de plus haut niveau du fichier Info}{t}
-\key{aller sur n'importe quel n\oe{}ud par son nom}{g}
+\key{N\oe{}ud {\bf suivant}}{n}
+\key{N\oe{}ud {\bf pr\'ec\'edent}}{p}
+\key{{\bf Remonter} d'un niveau}{u}
+\key{Choisir un sujet du menu par son nom}{m}
+\key{Choisir le {\it n\/}-i\`eme sujet (1--9)}{{\it n}}
+\key{Suivre une r\'ef\'erence crois\'ee (retour avec \kbd{l})}{f}
+\key{Revenir au dernier n\oe{}ud visit\'e}{l}
+\key{Aller au sommaire Info}{d}
+\key{Aller au n\oe{}ud le plus haut du manuel}{t}
+\key{Aller sur un n\oe{}ud par son nom}{g}
 
 Autres :
 
-\key{lancer le {\bf didacticiel} Info}{h}
-\key{chercher un sujet dans l'index}{i}
-\key{rechercher les n\oe{}uds avec une expression rationnelle}{s}
-\key{{\bf quitter} Info}{q}
+\key{Aller au {\bf didacticiel} Info}{h}
+\key{Rechercher un sujet dans l'index}{i}
+\key{Rechercher un n\oe{}ud par expr. rationnelle}{s}
+\key{{\bf Quitter} Info}{q}
 
 \endindentedkeys
 
 \section{Registres}
 
-\key{sauver la r\'egion dans un registre}{C-x r s}
-\key{ins\'erer le contenu du registre dans le tampon}{C-x r i}
+\key{Sauver la r\'egion dans un registre}{C-x r s}
+\key{Ins\'erer le contenu d'un registre}{C-x r i}
 
-\key{sauver la valeur du point dans un registre}{C-x r SPC}
-\key{sauter au point sauv\'e dans le registre}{C-x r j}
+\key{Sauver la valeur du point dans un registre}{C-x r SPC}
+\key{Aller au point sauv\'e dans un registre}{C-x r j}
 
 \section{Macros clavier}
 
-\key{{\bf lancer} la d\'efinition d'une macro clavier}{C-x (}
-\key{{\bf terminer} la d\'efinition d'une macro clavier}{C-x )}
-\key{{\bf ex\'ecuter} la derni\`ere macro clavier d\'efinie}{C-x e}
-\key{ajouter \`a la derni\`ere macro clavier}{C-u C-x (}
-\metax{donner un nom \`a la derni\`ere macro clavier}{M-x name-last-kbd-macro}
-\metax{ins\'erer une d\'efinition Lisp dans le tampon}{M-x insert-kbd-macro}
+\key{{\bf Lancer} la d\'efinition d'une macro clavier}{C-x (}
+\key{{\bf Terminer} la d\'efinition d'une macro clavier}{C-x )}
+\key{{\bf Ex\'ecuter} la derni\`ere macro clavier d\'efinie}{C-x e}
+\key{Faire un ajout \`a la derni\`ere macro clavier}{C-u C-x (}
+\metax{Nommer la derni\`ere macro clavier}{M-x name-last-kbd-macro}
+\metax{En ins\'erer une d\'efinition Lisp}{M-x insert-kbd-macro}
 
 \section{Commandes de gestion d'Emacs Lisp}
 
-\key{\'evaluer la {\bf s-expression} situ\'ee avant le point}{C-x C-e}
-\key{\'evaluer la {\bf defun} courante}{C-M-x}
-\metax{\'evaluer la {\bf r\'egion}}{M-x eval-region}
-\key{lire et \'evaluer le mini-tampon}{M-:}
-\metax{charger \`a partir du r\'epertoire syst\`eme standard}{M-x load-library}
+\key{\'Evaluer la {\bf s-expression} avant le point}{C-x C-e}
+\key{\'Evaluer la {\bf defun} courante}{C-M-x}
+\metax{\'Evaluer la {\bf r\'egion}}{M-x eval-region}
+\key{Lire et \'evaluer dans le mini-tampon}{M-:}
+\metax{Charger depuis un r\'epertoire standard}{M-x load-library}
 
 \section{Personnalisation simple}
 
-\metax{personnaliser les variables et les fontes}{M-x customize}
+\metax{Personnaliser les variables et les fontes}{M-x customize}
 
 % The intended audience here is the person who wants to make simple
 % customizations and knows Lisp syntax.
 
-Cr\'eation de liaisons de touches globales en Emacs Lisp (exemples):
+Exemples de d\'efinition globale de touches en Emacs Lisp :
 
 \beginexample%
 (global-set-key "\\C-cg" 'goto-line)
@@ -683,7 +657,8 @@
 
 \beginexample%
 (defun \<nom-commande> (\<args>)
-  "\<documentation>" (interactive "\<template>")
+  "\<documentation>"
+  (interactive "\<template>")
   \<body>)
 \endexample
 
@@ -691,8 +666,7 @@
 
 \beginexample%
 (defun cette-ligne-en-haut-de-la-fenetre (line)
-%% Leading space omitted to avoid linebreak and underfull hbox.
-"Repositionne la ligne du point en haut de la fenetre.
+  "Positionne la ligne courante en haut de la fen\^etre.
 Avec ARG, place le point sur la ligne ARG."
   (interactive "P")
   (recenter (if (null line)
--- a/etc/refcard.tex	Mon May 14 11:56:47 2007 +0000
+++ b/etc/refcard.tex	Tue May 15 07:17:13 2007 +0000
@@ -330,7 +330,7 @@
 \key{abort current search}{C-g}
 
 Use \kbd{C-s} or \kbd{C-r} again to repeat the search in either direction.
-If Emacs is still searching, \kbd{C-g} cancels only the part not done.
+If Emacs is still searching, \kbd{C-g} cancels only the part not matched.
 
 \shortcopyrightnotice
 
@@ -478,7 +478,7 @@
 \key{abort command}{C-g}
 
 Type \kbd{C-x ESC ESC} to edit and repeat the last command that used the
-minibuffer.  Type \kbd{F10} to activate the menu bar using the minibuffer.
+minibuffer.  Type \kbd{F10} to activate menu bar items on text terminals.
 
 \newcolumn
 \title{GNU Emacs Reference Card}
@@ -657,7 +657,7 @@
 
 \beginexample%
 (defun this-line-to-top-of-window (line)
-  "Reposition line point is on to top of window.
+  "Reposition current line to top of window.
 With ARG, put point on line ARG."
   (interactive "P")
   (recenter (if (null line)
--- a/lisp/ChangeLog	Mon May 14 11:56:47 2007 +0000
+++ b/lisp/ChangeLog	Tue May 15 07:17:13 2007 +0000
@@ -1,16 +1,156 @@
+2007-05-14  Eli Zaretskii  <eliz@gnu.org>
+
+	* mail/rmail.el (rmail-convert-to-babyl-format): Check
+	content-transfer-encoding _last_, because it's its position that
+	we need as value of base64-header-field-end.
+
+2007-05-14  Juanma Barranquero  <lekktu@gmail.com>
+
+	* files.el (mode-require-final-newline, require-final-newline)
+	(enable-local-variables, enable-local-eval): Doc fixes.
+
+2007-05-13  Vinicius Jose Latorre  <viniciusjl@ig.com.br>
+
+	* ps-print.el: Use default color when foreground or background color
+	are unspecified.  Reported by Leo <sdl.web@gmail.com>.
+	(ps-print-version): New version 6.7.4.
+	(ps-rgb-color): New argument.  Use default color when color is
+	unspecified.
+	(ps-begin-job): Fix code.
+
+2007-05-12  Chong Yidong  <cyd@stupidchicken.com>
+
+	* longlines.el (longlines-mode): Make longlines-auto-wrap
+	buffer-local.  Add hooks unconditionally.
+	(longlines-auto-wrap): Toggle wrapping.
+	(longlines-after-change-function)
+	(longlines-post-command-function): Check longlines-auto-wrap.
+
+2007-05-12  Nick Roberts  <nickrob@snap.net.nz>
+
+	* xt-mouse.el (xterm-mouse-debug-buffer): New variable.
+	(xterm-mouse-translate): Use it.
+
+2007-05-10  Richard Stallman  <rms@gnu.org>
+
+	* international/iso-cvt.el (iso-cvt-read-only): Ignore arguments.
+	(iso-cvt-write-only): Likewise.
+
+	* emacs-lisp/easy-mmode.el (define-minor-mode):
+	Fix generated doc string.
+
+	* startup.el (fancy-splash-text): Add URL of guided tour.
+	Adjust horizontal and vertical whitespace.
+
+	* progmodes/compile.el (compilation-handle-exit):
+	Use run-hook-with-args to run compilation-finish-functions.
+
+	* files.el (file-start-mode-alist): New variable.
+	(magic-mode-regexp-match-limit): Doc fix.
+	(set-auto-mode): Handle file-start-mode-alist.
+	A little cleanup of structure.
+
+2007-05-10  Micha,Ak(Bl Cadilhac  <michael@cadilhac.name>
+
+	* man.el (Man-next-section): Don't consider the last line of the page
+	as being part of any section.
+
+2007-05-10  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+	* textmodes/sgml-mode.el (sgml-value): Fix handling of attributes which
+	can take any number of values.
+
+2007-05-09  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+	* textmodes/tex-mode.el (tex-font-lock-keywords-2): Add citet and citep
+	to the list of citation commands.
+
+2007-05-09  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+	* vc-hooks.el (vc-find-root): Stop searching when the user changes.
+
+2007-05-09  Edward O'Connor  <hober0@gmail.com>  (tiny change)
+
+	* progmodes/python.el (python-font-lock-keywords)
+	(python-open-block-statement-p, python-mode): Add support for the new
+	"with" keyword.
+
+2007-05-08  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+	* diff-mode.el (diff-apply-hunk, diff-test-hunk): Don't do by default
+	the exact opposite of diff-goto-source.
+
+	* emacs-lisp/advice.el (ad-special-forms): Remove.
+	(ad-special-form-p): Use subr-arity.
+
+	* newcomment.el (comment-search-forward): Make sure we search forward.
+	(comment-enter-backward): Try and distinguish the non-matching case at
+	EOB from the non-matching case with a missing comment-end-skip for
+	a 2-char comment ender.
+	(comment-choose-indent): New function extracted from comment-indent.
+	Improve the alignment algorithm.
+	(comment-indent): Use it.
+
+	* textmodes/sgml-mode.el (sgml-lexical-context): Add handling of
+	XML style Processing Instructions.
+	(sgml-parse-tag-backward): Handle XML-style PIs.  Also ensure progress.
+	(sgml-calculate-indent): Handle `pi' context.
+
+	* vc.el: Ensure that update-changelog issues an error when used with
+	a backend that does not implement it.
+	(vc-update-changelog-rcs2log): Rename from vc-default-update-changelog.
+	Remove `backend' argument.  Use expand-file-name.
+	(vc-cvs-update-changelog, vc-rcs-update-changelog): New aliases.
+
+	* progmodes/python.el (python-end-of-block): Revert last change.
+	(python-end-of-statement): Make sure we move *forward*.
+
+2007-05-08  Richard Stallman  <rms@gnu.org>
+
+	* mail/mailabbrev.el (sendmail-pre-abbrev-expand-hook):
+	Don't include non-self-insert commands in the exception for `-'.
+
+2007-05-08  David Reitter  <david.reitter@gmail.com>
+
+	* progmodes/python.el (python-guess-indent): Check non-nullness
+	before comparing indent against the 2..8 interval.
+
+2007-05-07  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
+
+	* term/mac-win.el (mac-ts-unicode-for-key-event): Check if text is
+	available.
+
+2007-05-06  Richard Stallman  <rms@gnu.org>
+
+	* emacs-lisp/eldoc.el (turn-on-eldoc-mode): Doc fix.
+
+2007-05-05  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+	* diff.el (diff): Use buffer-local vars diff-old-file and diff-new-file
+	rather than storing their value in the revert-buffer function.
+
+2007-05-04  Nick Roberts  <nickrob@snap.net.nz>
+
+	* t-mouse.el (t-mouse-mode): Do nothing on a graphical display
+	when disabling t-mouse-mode.
+
 2007-05-01  Davis Herring  <herring@lanl.gov>
 
-        * calendar/timeclock.el: Update version number.
-        (timeclock-modeline-display): Mention timeclock-use-display-time
-        in explanatory message.
-        (timeclock-in): Fix non-interactive workday specifications.
-        (timeclock-log): Don't kill the log buffer if it already existed.
-        Suppress warnings when finding the log.  Don't check for a nil
-        project twice.  Run hooks after killing the buffer (if
-        applicable).
-        (timeclock-geometric-mean): Rename to `timeclock-mean' (it never
-        was geometric).  All uses changed.
-        (timeclock-generate-report): Support prefix argument.
+	* calendar/timeclock.el: Update version number.
+	(timeclock-modeline-display): Mention timeclock-use-display-time
+	in explanatory message.
+	(timeclock-in): Fix non-interactive workday specifications.
+	(timeclock-log): Don't kill the log buffer if it already existed.
+	Suppress warnings when finding the log.  Don't check for a nil
+	project twice.  Run hooks after killing the buffer (if applicable).
+	(timeclock-geometric-mean): Rename to `timeclock-mean' (it never
+	was geometric).  All uses changed.
+	(timeclock-generate-report): Support prefix argument.
+
+2007-05-03  Ryan Yeske  <rcyeske@gmail.com>
+
+	* net/rcirc.el (rcirc-timeout-seconds): Increase to prevent unwanted
+	disconnections.
 
 2007-05-01  Romain Francoise  <romain@orebokech.com>
 
@@ -13640,8 +13780,8 @@
 
 2006-01-29  Edward O'Connor  <ted@oconnor.cx>
 
-	* emulation/viper.el (viper-major-mode-modifier-list): Add
-	insert-state and vi-state entries for erc-mode.
+	* emulation/viper.el (viper-major-mode-modifier-list):
+	Add insert-state and vi-state entries for erc-mode.
 	(viper-go-away, viper-set-hooks): Add and remove
 	viper-comint-mode-hook from erc-mode-hook as appropriate.
 
--- a/lisp/ChangeLog.8	Mon May 14 11:56:47 2007 +0000
+++ b/lisp/ChangeLog.8	Tue May 15 07:17:13 2007 +0000
@@ -5354,12 +5354,12 @@
 
 	* international/mule.el (auto-coding-alist): Add .tgz.
 
-1999-05-2  Eli Zaretskii  <eliz@is.elta.co.il>
+1999-05-02  Eli Zaretskii  <eliz@is.elta.co.il>
 
 	* international/codepage.el (cp-coding-system-for-codepage-1):
 	Make the magnification parameter for the -dos encoder be 2.
 
-1999-05-2  Andrew Innes  <andrewi@gnu.org>
+1999-05-02  Andrew Innes  <andrewi@gnu.org>
 
 	* term/w32-win.el (w32-drag-n-drop): Select file in window where
 	it is dropped, rather than current window.
--- a/lisp/dabbrev.el	Mon May 14 11:56:47 2007 +0000
+++ b/lisp/dabbrev.el	Tue May 15 07:17:13 2007 +0000
@@ -128,7 +128,7 @@
 		 (const :tag "off" nil))
   :group 'dabbrev)
 
-(defcustom dabbrev--eliminate-newlines t
+(defcustom dabbrev-eliminate-newlines t
   "*Non-nil means dabbrev should not insert newlines.
 Instead it converts them to spaces."
   :type 'boolean
@@ -913,10 +913,12 @@
 			  ((equal abbrev (downcase abbrev)) 'downcase)))))
 
     ;; Convert whitespace to single spaces.
-    (if dabbrev--eliminate-newlines
-	;; Start searching at end of ABBREV so that any whitespace
-	;; carried over from the existing text is not changed.
-	(let ((pos (length abbrev)))
+    (if dabbrev-eliminate-newlines
+	(let ((pos
+	       (if (equal abbrev " ") 0 (length abbrev))))
+	  ;; If ABBREV is real, search after the end of it.
+	  ;; If ABBREV is space and we are copying successive words,
+	  ;; search starting at the front.
 	  (while (string-match "[\n \t]+" expansion pos)
 	    (setq pos (1+ (match-beginning 0)))
 	    (setq expansion (replace-match " " nil nil expansion)))))
--- a/lisp/diff-mode.el	Mon May 14 11:56:47 2007 +0000
+++ b/lisp/diff-mode.el	Tue May 15 07:17:13 2007 +0000
@@ -72,7 +72,7 @@
   :group 'diff-mode)
 
 (defcustom diff-jump-to-old-file nil
-  "*Non-nil means `diff-goto-source' jumps to the old file.
+  "Non-nil means `diff-goto-source' jumps to the old file.
 Else, it jumps to the new file."
   :type 'boolean
   :group 'diff-mode)
@@ -1276,7 +1276,7 @@
 	(if (> (- (car forw) orig) (- orig (car back))) back forw)
       (or back forw))))
 
-(defsubst diff-xor (a b) (if a (not b) b))
+(defsubst diff-xor (a b) (if a (if (not b) a) b))
 
 (defun diff-find-source-location (&optional other-file reverse)
   "Find out (BUF LINE-OFFSET POS SRC DST SWITCHED).
@@ -1358,8 +1358,15 @@
 With a prefix argument, REVERSE the hunk."
   (interactive "P")
   (destructuring-bind (buf line-offset pos old new &optional switched)
-      ;; If REVERSE go to the new file, otherwise go to the old.
-      (diff-find-source-location (not reverse) reverse)
+      ;; Sometimes we'd like to have the following behavior: if REVERSE go
+      ;; to the new file, otherwise go to the old.  But that means that by
+      ;; default we use the old file, which is the opposite of the default
+      ;; for diff-goto-source, and is thus confusing.  Also when you don't
+      ;; know about it it's pretty surprising.
+      ;; TODO: make it possible to ask explicitly for this behavior.
+      ;; 
+      ;; This is duplicated in diff-test-hunk.
+      (diff-find-source-location nil reverse)
     (cond
      ((null line-offset)
       (error "Can't find the text to patch"))
@@ -1403,8 +1410,7 @@
 With a prefix argument, try to REVERSE the hunk."
   (interactive "P")
   (destructuring-bind (buf line-offset pos src dst &optional switched)
-      ;; If REVERSE go to the new file, otherwise go to the old.
-      (diff-find-source-location (not reverse) reverse)
+      (diff-find-source-location nil reverse)
     (set-window-point (display-buffer buf) (+ (car pos) (cdr src)))
     (diff-hunk-status-msg line-offset (diff-xor reverse switched) t)))
 
--- a/lisp/diff.el	Mon May 14 11:56:47 2007 +0000
+++ b/lisp/diff.el	Tue May 15 07:17:13 2007 +0000
@@ -124,9 +124,13 @@
 	(erase-buffer))
       (buffer-enable-undo (current-buffer))
       (diff-mode)
+      ;; Use below 2 vars for backward-compatibility.
+      (set (make-local-variable 'diff-old-file) old)
+      (set (make-local-variable 'diff-new-file) new)
+      (set (make-local-variable 'diff-extra-args) (list switches no-async))
       (set (make-local-variable 'revert-buffer-function)
-	   `(lambda (ignore-auto noconfirm)
-	      (diff ',old ',new ',switches ',no-async)))
+	   (lambda (ignore-auto noconfirm)
+             (apply 'diff diff-old-file diff-new-file diff-extra-args)))
       (set (make-local-variable 'diff-old-temp-file) old-alt)
       (set (make-local-variable 'diff-new-temp-file) new-alt)
       (setq default-directory thisdir)
@@ -186,5 +190,5 @@
 
 (provide 'diff)
 
-;;; arch-tag: 7de2c29b-7ea5-4b85-9b9d-72dd860de2bd
+;; arch-tag: 7de2c29b-7ea5-4b85-9b9d-72dd860de2bd
 ;;; diff.el ends here
--- a/lisp/emacs-lisp/advice.el	Mon May 14 11:56:47 2007 +0000
+++ b/lisp/emacs-lisp/advice.el	Tue May 15 07:17:13 2007 +0000
@@ -2467,23 +2467,11 @@
   "Take a macro function DEFINITION and make a lambda out of it."
   `(cdr ,definition))
 
-;; There is no way to determine whether some subr is a special form or not,
-;; hence we need this list (which is probably out of date):
-(defvar ad-special-forms
-  (let ((tem '(and catch cond condition-case defconst defmacro
-		   defun defvar function if interactive let let*
-		   or prog1 prog2 progn quote save-current-buffer
-		   save-excursion save-restriction save-window-excursion
-		   setq setq-default unwind-protect while
-		   with-output-to-temp-buffer)))
-    ;; track-mouse could be void in some configurations.
-    (if (fboundp 'track-mouse)
-	(push 'track-mouse tem))
-    (mapcar 'symbol-function tem)))
-
-(defmacro ad-special-form-p (definition)
-  ;;"non-nil if DEFINITION is a special form."
-  (list 'memq definition 'ad-special-forms))
+(defun ad-special-form-p (definition)
+  "Non-nil iff DEFINITION is a special form."
+  (if (and (symbolp definition) (fboundp definition))
+      (setq definition (indirect-function definition)))
+  (and (subrp definition) (eq (cdr (subr-arity definition)) 'unevalled)))
 
 (defmacro ad-interactive-p (definition)
   ;;"non-nil if DEFINITION can be called interactively."
--- a/lisp/emacs-lisp/easy-mmode.el	Mon May 14 11:56:47 2007 +0000
+++ b/lisp/emacs-lisp/easy-mmode.el	Tue May 15 07:17:13 2007 +0000
@@ -197,7 +197,7 @@
 
 	  (let ((base-doc-string
                  (concat "Non-nil if %s is enabled.
-See the command `%s' for a description of this minor-mode."
+See the command `%s' for a description of this minor mode."
                          (if body "
 Setting this variable directly does not take effect;
 either customize it (see the info node `Easy Customization')
--- a/lisp/emacs-lisp/eldoc.el	Mon May 14 11:56:47 2007 +0000
+++ b/lisp/emacs-lisp/eldoc.el	Tue May 15 07:17:13 2007 +0000
@@ -157,7 +157,7 @@
 
 ;;;###autoload
 (defun turn-on-eldoc-mode ()
-  "Unequivocally turn on eldoc-mode (see variable documentation)."
+  "Unequivocally turn on ElDoc mode (see command `eldoc-mode')."
   (interactive)
   (eldoc-mode 1))
 
--- a/lisp/files.el	Mon May 14 11:56:47 2007 +0000
+++ b/lisp/files.el	Tue May 15 07:17:13 2007 +0000
@@ -287,7 +287,7 @@
 A value of `visit' means do this right after the file is visited.
 A value of `visit-save' means do it at both of those times.
 Any other non-nil value means ask user whether to add a newline, when saving.
-nil means don't add newlines.
+A value of nil means don't add newlines.
 
 Certain major modes set this locally to the value obtained
 from `mode-require-final-newline'."
@@ -309,10 +309,10 @@
 A value of `visit-save' means do it at both of those times.
 Any other non-nil value means ask user whether to add a newline, when saving.
 
-nil means do not add newlines.  That is a risky choice in this variable
-since this value is used for modes for files that ought to have final newlines.
-So if you set this to nil, you must explicitly check and add
-a final newline, whenever you save a file that really needs one."
+A value of nil means do not add newlines.  That is a risky choice in this
+variable since this value is used for modes for files that ought to have
+final newlines.  So if you set this to nil, you must explicitly check and
+add a final newline, whenever you save a file that really needs one."
   :type '(choice (const :tag "When visiting" visit)
 		 (const :tag "When saving" t)
 		 (const :tag "When visiting or saving" visit-save)
@@ -459,7 +459,7 @@
 :safe means set the safe variables, and ignore the rest.
 :all means set all variables, whether safe or not.
  (Don't set it permanently to :all.)
-nil means always ignore the file local variables.
+A value of nil means always ignore the file local variables.
 
 Any other value means always query you once whether to set them all.
 \(When you say yes to certain values, they are remembered as safe, but
@@ -491,7 +491,7 @@
   "Control processing of the \"variable\" `eval' in a file's local variables.
 The value can be t, nil or something else.
 A value of t means obey `eval' variables;
-nil means ignore them; anything else means query."
+A value of nil means ignore them; anything else means query."
   :type '(choice (const :tag "Obey" t)
 		 (const :tag "Ignore" nil)
 		 (other :tag "Query" other))
@@ -2151,8 +2151,21 @@
 \"allow `auto-mode-alist' to decide for these files.\")")
 (put 'magic-mode-alist 'risky-local-variable t)
 
+(defvar file-start-mode-alist
+  nil
+  "Like `magic-mode-alist' but has lower priority than `auto-mode-alist'.
+Each element looks like (REGEXP . FUNCTION) or (MATCH-FUNCTION . FUNCTION).
+After visiting a file, if REGEXP matches the text at the beginning of the
+buffer, or calling MATCH-FUNCTION returns non-nil, `normal-mode' will
+call FUNCTION, provided that `magic-mode-alist' and `auto-mode-alist'
+have not specified a mode for this file.
+
+If FUNCTION is nil, then it is not called.")
+(put 'file-start-mode-alist 'risky-local-variable t)
+
 (defvar magic-mode-regexp-match-limit 4000
-  "Upper limit on `magic-mode-alist' regexp matches.")
+  "Upper limit on `magic-mode-alist' regexp matches.
+Also applies to `file-start-mode-alist'.")
 
 (defun set-auto-mode (&optional keep-mode-if-same)
   "Select major mode appropriate for current buffer.
@@ -2207,10 +2220,10 @@
 	      (or (set-auto-mode-0 mode keep-mode-if-same)
 		  ;; continuing would call minor modes again, toggling them off
 		  (throw 'nop nil))))))
+    ;; If we didn't, look for an interpreter specified in the first line.
+    ;; As a special case, allow for things like "#!/bin/env perl", which
+    ;; finds the interpreter anywhere in $PATH.
     (unless done
-      ;; If we didn't, look for an interpreter specified in the first line.
-      ;; As a special case, allow for things like "#!/bin/env perl", which
-      ;; finds the interpreter anywhere in $PATH.
       (setq mode (save-excursion
 		   (goto-char (point-min))
 		   (if (looking-at auto-mode-interpreter-regexp)
@@ -2223,7 +2236,7 @@
       ;; If we found an interpreter mode to use, invoke it now.
       (if done
 	  (set-auto-mode-0 (cdr done) keep-mode-if-same)))
-    ;; If we didn't, match the buffer beginning against magic-mode-alist.
+    ;; Next try matching the buffer beginning against magic-mode-alist.
     (unless done
       (if (setq done (save-excursion
 		       (goto-char (point-min))
@@ -2236,39 +2249,55 @@
 					  (if (functionp re)
 					      (funcall re)
 					    (looking-at re)))))))
-	  (set-auto-mode-0 done keep-mode-if-same)
-	;; Compare the filename against the entries in auto-mode-alist.
-	(if buffer-file-name
-	    (let ((name buffer-file-name))
-	      ;; Remove backup-suffixes from file name.
-	      (setq name (file-name-sans-versions name))
-	      (while name
-		;; Find first matching alist entry.
-		(setq mode
-		      (if (memq system-type '(vax-vms windows-nt cygwin))
-			  ;; System is case-insensitive.
-			  (let ((case-fold-search t))
-			    (assoc-default name auto-mode-alist
-					   'string-match))
-			;; System is case-sensitive.
-			(or
-			 ;; First match case-sensitively.
-			 (let ((case-fold-search nil))
-			   (assoc-default name auto-mode-alist
-					  'string-match))
-			 ;; Fallback to case-insensitive match.
-			 (and auto-mode-case-fold
-			      (let ((case-fold-search t))
-				(assoc-default name auto-mode-alist
-					       'string-match))))))
-		(if (and mode
-			 (consp mode)
-			 (cadr mode))
-		    (setq mode (car mode)
-			  name (substring name 0 (match-beginning 0)))
-		  (setq name))
-		(when mode
-		  (set-auto-mode-0 mode keep-mode-if-same)))))))))
+	  (set-auto-mode-0 done keep-mode-if-same)))
+    ;; Next compare the filename against the entries in auto-mode-alist.
+    (unless done
+      (if buffer-file-name
+	  (let ((name buffer-file-name))
+	    ;; Remove backup-suffixes from file name.
+	    (setq name (file-name-sans-versions name))
+	    (while name
+	      ;; Find first matching alist entry.
+	      (setq mode
+		    (if (memq system-type '(vax-vms windows-nt cygwin))
+			;; System is case-insensitive.
+			(let ((case-fold-search t))
+			  (assoc-default name auto-mode-alist
+					 'string-match))
+		      ;; System is case-sensitive.
+		      (or
+		       ;; First match case-sensitively.
+		       (let ((case-fold-search nil))
+			 (assoc-default name auto-mode-alist
+					'string-match))
+		       ;; Fallback to case-insensitive match.
+		       (and auto-mode-case-fold
+			    (let ((case-fold-search t))
+			      (assoc-default name auto-mode-alist
+					     'string-match))))))
+	      (if (and mode
+		       (consp mode)
+		       (cadr mode))
+		  (setq mode (car mode)
+			name (substring name 0 (match-beginning 0)))
+		(setq name))
+	      (when mode
+		(set-auto-mode-0 mode keep-mode-if-same)
+		(setq done t))))))
+    ;; Next try matching the buffer beginning against file-start-mode-alist.
+    (unless done
+      (if (setq done (save-excursion
+		       (goto-char (point-min))
+		       (save-restriction
+			 (narrow-to-region (point-min)
+					   (min (point-max)
+						(+ (point-min) magic-mode-regexp-match-limit)))
+			 (assoc-default nil file-start-mode-alist
+					(lambda (re dummy)
+					  (if (functionp re)
+					      (funcall re)
+					    (looking-at re)))))))
+	  (set-auto-mode-0 done keep-mode-if-same)))))
 
 ;; When `keep-mode-if-same' is set, we are working on behalf of
 ;; set-visited-file-name.  In that case, if the major mode specified is the
--- a/lisp/gnus/ChangeLog	Mon May 14 11:56:47 2007 +0000
+++ b/lisp/gnus/ChangeLog	Tue May 15 07:17:13 2007 +0000
@@ -1,3 +1,14 @@
+2007-05-10  Reiner Steib  <Reiner.Steib@gmx.de>
+
+	* gnus-art.el (gnus-article-mode): Fix comment about displaying
+	non-break space.
+
+2007-05-09  Didier Verna  <didier@xemacs.org>
+
+	* gnus-diary.el, nndiary.el: Remove the description comment (nndiary is
+	now properly documented in the Gnus manual).  Fix the spelling of "Back
+	End".
+
 2007-04-19  Katsumi Yamaoka  <yamaoka@jpl.org>
 
 	* gnus-art.el (gnus-mime-strip-charset-parameters): New function.
--- a/lisp/gnus/gnus-art.el	Mon May 14 11:56:47 2007 +0000
+++ b/lisp/gnus/gnus-art.el	Tue May 15 07:17:13 2007 +0000
@@ -3925,7 +3925,8 @@
   (make-local-variable 'gnus-article-image-alist)
   (make-local-variable 'gnus-article-charset)
   (make-local-variable 'gnus-article-ignored-charsets)
-  ;; Prevent recent Emacsen from displaying non-break space as "\ ".
+  ;; Prevent Emacs 22 from displaying non-break space with `nobreak-space'
+  ;; face.
   (set (make-local-variable 'nobreak-char-display) nil)
   (setq cursor-in-non-selected-windows nil)
   (gnus-set-default-directory)
--- a/lisp/gnus/gnus-diary.el	Mon May 14 11:56:47 2007 +0000
+++ b/lisp/gnus/gnus-diary.el	Tue May 15 07:17:13 2007 +0000
@@ -1,4 +1,4 @@
-;;; gnus-diary.el --- Wrapper around the NNDiary Gnus backend
+;;; gnus-diary.el --- Wrapper around the NNDiary Gnus back end
 
 ;; Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005,
 ;;   2006, 2007  Free Software Foundation, Inc.
@@ -33,63 +33,8 @@
 ;; Description:
 ;; ===========
 
-;; Gnus-Diary is a wrapper around the NNDiary Gnus backend.  It is here to
-;; make your nndiary-user life easier in different ways.  So, you don't have
-;; to use it if you don't want to.  But, really, you should.
-
-;; Gnus-Diary offers the following features on top of the NNDiary backend:
-
-;;  - A nice summary line format:
-;;    Displaying diary messages in standard summary line format (usually
-;;    something like "<From Joe>: <Subject>") is pretty useless.  Most of the
-;;    time, you're the one who wrote the message, and you mostly want to see
-;;    the event's date.  Gnus-Diary offers you a nice summary line format
-;;    which will do this.  By default, a summary line will appear like this:
-;;
-;;     <Event Date>: <Subject> <Remaining time>
-;;
-;;   for example, here's how Joe's birthday is displayed in my
-;;   "nndiary:birhdays" summary buffer (the message is expirable, but will
-;;   never be deleted, as it specifies a regular event):
-;;
-;;   E  Sat, Sep 22 01, 12:00: Joe's birthday (in 6 months, 1 week)
-
-;;  - More article sorting functions:
-;;    Gnus-Diary adds a new sorting function called
-;;    `gnus-summary-sort-by-schedule'.  This function lets you organize your
-;;    diary summary buffers from the closest event to the farthest one.
-
-;;  - Automatic generation of diary group parameters:
-;;    When you create a new diary group, or visit one, Gnus-Diary checks your
-;;    group parameters, and if needed, sets the summary line format to the
-;;    diary-specific value, adds the diary-specific sorting functions, and
-;;    also adds the different `X-Diary-*' headers to the group's
-;;    posting-style.  It is then easier to send a diary message, because if
-;;    you use `C-u a' or `C-u m' on a diary group to prepare a message, these
-;;    headers will be inserted automatically (but not filled with proper
-;;    values yet).
-
-;;  - An interactive mail-to-diary convertion function:
-;;    The function `gnus-diary-check-message' ensures that the current message
-;;    contains all the required diary headers, and prompts you for values /
-;;    correction if needed.  This function is hooked in the nndiary backend so
-;;    that moving an article to an nndiary group will trigger it
-;;    automatically.  It is also bound to `C-c D c' in message-mode and
-;;    article-edit-mode in order to ease the process of converting a usual
-;;    mail to a diary one.  This function takes a prefix argument which will
-;;    force prompting of all diary headers, regardless of their
-;;    presence/validity.  That way, you can very easily reschedule a diary
-;;    message for instance.
-
-
-;; Usage:
-;; =====
-
-;; 0/ Don't use any `gnus-user-format-function-[d|D]'.  Gnus-Diary provides
-;;    both of these (sorry if you used them before).
-;; 1/ Add '(require 'gnus-diary) to your gnusrc file.
-;; 2/ Customize your gnus-diary options to suit your needs.
-
+;; gnus-diary is a utility toolkit used on top of the nndiary back end. It is
+;; now fully documented in the Gnus manual.
 
 
 ;; Bugs / Todo:
@@ -103,7 +48,7 @@
 (require 'gnus-art)
 
 (defgroup gnus-diary nil
-  "Utilities on top of the nndiary backend for Gnus."
+  "Utilities on top of the nndiary back end for Gnus."
   :version "22.1"
   :group 'gnus)
 
@@ -136,7 +81,7 @@
   :group 'gnus-diary)
 
 (defconst gnus-diary-version nndiary-version
-  "Current Diary backend version.")
+  "Current Diary back end version.")
 
 
 ;; Compatibility functions ==================================================
@@ -334,7 +279,7 @@
     ))
 
 ;; Called when a group is subscribed. This is needed because groups created
-;; because of mail splitting are *not* created with the backend function.
+;; because of mail splitting are *not* created with the back end function.
 ;; Thus, `nndiary-request-create-group-hooks' is inoperative.
 (defun gnus-diary-maybe-update-group-parameters (group)
   (when (eq (car (gnus-find-method-for-group group)) 'nndiary)
@@ -452,7 +397,7 @@
 ;; The end ==================================================================
 
 (defun gnus-diary-version ()
-  "Current Diary backend version."
+  "Current Diary back end version."
   (interactive)
   (message "NNDiary version %s" nndiary-version))
 
--- a/lisp/gnus/nndiary.el	Mon May 14 11:56:47 2007 +0000
+++ b/lisp/gnus/nndiary.el	Tue May 15 07:17:13 2007 +0000
@@ -1,4 +1,4 @@
-;;; nndiary.el --- A diary backend for Gnus
+;;; nndiary.el --- A diary back end for Gnus
 
 ;; Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004,
 ;;   2005, 2006, 2007 Free Software Foundation, Inc.
@@ -33,127 +33,8 @@
 ;; Description:
 ;; ===========
 
-;; This package implements NNDiary, a diary backend for Gnus.  NNDiary is a
-;; mail backend, pretty similar to nnml in its functionnning (it has all the
-;; features of nnml, actually), but in which messages are treated as event
-;; reminders.
-
-;; Here is a typical scenario:
-;; - You've got a date with Andy Mc Dowell or Bruce Willis (select according
-;;   to your sexual preference) in one month.  You don't want to forget it.
-;; - Send a (special) diary message to yourself (see below).
-;; - Forget all about it and keep on getting and reading new mail, as usual.
-;; - From time to time, as you type `g' in the group buffer and as the date
-;;   is getting closer, the message will pop up again, just like if it were
-;;   new and unread.
-;; - Read your "new" messages, this one included, and start dreaming of the
-;;   night you're gonna have.
-;; - Once the date is over (you actually fell asleep just after dinner), the
-;;   message will be automatically deleted if it is marked as expirable.
-
-;; Some more notes on the diary backend:
-;; - NNDiary is a *real* mail backend.  You *really* send real diary
-;;   messsages.  This means for instance that you can give appointements to
-;;   anybody (provided they use Gnus and NNDiary) by sending the diary message
-;;   to them as well.
-;; - However, since NNDiary also has a 'request-post method, you can also
-;;  `C-u a' instead of `C-u m' on a diary group and the message won't actually
-;;   be sent; just stored in the group.
-;; - The events you want to remember need not be punctual.  You can set up
-;;   reminders for regular dates (like once each week, each monday at 13:30
-;;   and so on).  Diary messages of this kind will never be deleted (unless
-;;   you do it explicitely).  But that, you guessed.
-
-
-;; Usage:
-;; =====
-
-;;  1/ NNDiary has two modes of operation: traditional (the default) and
-;;     autonomous.
-;;     a/ In traditional mode, NNDiary does not get new mail by itself.  You
-;;        have to move mails from your primary mail backend to nndiary
-;;        groups.
-;;     b/ In autonomous mode, NNDiary retrieves its own mail and handles it
-;;        independantly of your primary mail backend.  To use NNDiary in
-;;        autonomous mode, you have several things to do:
-;;           i/ Put (setq nndiary-get-new-mail t) in your gnusrc file.
-;;          ii/ Diary messages contain several `X-Diary-*' special headers.
-;;              You *must* arrange that these messages be split in a private
-;;              folder *before* Gnus treat them.  You need this because Gnus
-;;              is not able yet to manage multiple backends for mail
-;;              retrieval.  Getting them from a separate source will
-;;              compensate this misfeature to some extent, as we will see.
-;;              As an example, here's my procmailrc entry to store diary files
-;;              in ~/.nndiary (the default nndiary mail source file):
-;;
-;;              :0 HD :
-;;              * ^X-Diary
-;;              .nndiary
-;;         iii/ Customize the variables `nndiary-mail-sources' and
-;;              `nndiary-split-methods'.  These are replacements for the usual
-;;              mail sources and split methods which, and will be used in
-;;              autonomous mode.  `nndiary-mail-sources' defaults to
-;;              '(file :path "~/.nndiary").
-;;  2/ Install nndiary somewhere Emacs / Gnus can find it.  Normally, you
-;;     *don't* have to '(require 'nndiary) anywhere.  Gnus will do so when
-;;     appropriate as long as nndiary is somewhere in the load path.
-;;  3/ Now, customize the rest of nndiary.  In particular, you should
-;;     customize `nndiary-reminders', the list of times when you want to be
-;;     reminded of your appointements (e.g. 3 weeks before, then 2 days
-;;     before, then 1 hour before and that's it).
-;;  4/ You *must* use the group timestamp feature of Gnus.  This adds a
-;;     timestamp to each groups' parameters (please refer to the Gnus
-;;     documentation ("Group Timestamp" info node) to see how it's done.
-;;  5/ Once you have done this, you may add a permanent nndiary virtual server
-;;     (something like '(nndiary "")) to your `gnus-secondary-select-methods'.
-;;     Yes, this server will be able to retrieve mails and split them when you
-;;     type `g' in the group buffer, just as if it were your only mail backend.
-;;     This is the benefit of using a private folder.
-;;  6/ Hopefully, almost everything (see the TODO section below) will work as
-;;     expected when you restart Gnus: in the group buffer, `g' and `M-g' will
-;;     also get your new diary mails, `F' will find your new diary groups etc.
-
-
-;; How to send diary messages:
-;; ==========================
-
-;; There are 7 special headers in diary messages. These headers are of the
-;; form `X-Diary-<something>', the <something> being one of `Minute', `Hour',
-;; `Dom', `Month', `Year', `Time-Zone' and `Dow'. `Dom' means "Day of Month",
-;; and `dow' means "Day of Week".  These headers actually behave like crontab
-;; specifications and define the event date(s).
-
-;; For all headers but the `Time-Zone' one, a header value is either a
-;; star (meaning all possible values), or a list of fields (separated by a
-;; comma).  A field is either an integer, or a range.  A range is two integers
-;; separated by a dash.  Possible integer values are 0-59 for `Minute', 0-23
-;; for `Hour', 1-31 for `Dom', `1-12' for Month, above 1971 for `Year' and 0-6
-;; for `Dow' (0 = sunday).  As a special case, a star in either `Dom' or `Dow'
-;; doesn't mean "all possible values", but "use only the other field".  Note
-;; that if both are star'ed, the use of either one gives the same result :-),
-
-;; The `Time-Zone' header is special in that it can have only one value (you
-;; bet ;-).
-;; A star doesn't mean "all possible values" (because it has no sense), but
-;; "the current local time zone".
-
-;; As an example, here's how you would say "Each Monday and each 1st of month,
-;; at 12:00, 20:00, 21:00, 22:00, 23:00 and 24:00, from 1999 to 2010" (I let
-;; you find what to do then):
-;;
-;;   X-Diary-Minute: 0
-;;   X-Diary-Hour: 12, 20-24
-;;   X-Diary-Dom: 1
-;;   X-Diary-Month: *
-;;   X-Diary-Year: 1999-2010
-;;   X-Diary-Dow: 1
-;;   X-Diary-Time-Zone: *
-;;
-;;
-;; Sending a diary message is not different from sending any other kind of
-;; mail, except that such messages are identified by the presence of these
-;; special headers.
-
+;; nndiary is a mail back end designed to handle mails as diary event
+;; reminders. It is now fully documented in the Gnus manual.
 
 
 ;; Bugs / Todo:
@@ -161,43 +42,43 @@
 
 ;; * Respooling doesn't work because contrary to the request-scan function,
 ;;   Gnus won't allow me to override the split methods when calling the
-;;   respooling backend functions.
+;;   respooling back end functions.
 ;; * There's a bug in the time zone mechanism with variable TZ locations.
 ;; * We could allow a keyword like `ask' in X-Diary-* headers, that would mean
 ;;   "ask for value upon reception of the message".
 ;; * We could add an optional header X-Diary-Reminders to specify a special
 ;;   reminders value for this message. Suggested by Jody Klymak.
 ;; * We should check messages validity in other circumstances than just
-;;   moving an article from sonwhere else (request-accept). For instance, when
-;;   editing / saving and so on.
+;;   moving an article from somewhere else (request-accept). For instance,
+;;   when editing / saving and so on.
 
 
 ;; Remarks:
 ;; =======
 
-;; * nnoo.
-;;   NNDiary is very similar to nnml.  This makes the idea of using nnoo (to
-;;   derive nndiary from nnml) natural.  However, my experience with nnoo is
-;;   that for reasonably complex backends like this one, noo is a burden
-;;   rather than an help.  It's tricky to use, not everything can be
-;;   inherited, what can be inherited and when is not very clear, and you've
-;;   got to be very careful because a little mistake can fuck up your your
-;;   other backends, especially because their variables will be use instead of
-;;   your real ones.  Finally, I found it easier to just clone the needed
-;;   parts of nnml, and tracking nnml updates is not a big deal.
+;; * nnoo. NNDiary is very similar to nnml. This makes the idea of using nnoo
+;;   (to derive nndiary from nnml) natural. However, my experience with nnoo
+;;   is that for reasonably complex back ends like this one, noo is a burden
+;;   rather than an help. It's tricky to use, not everything can be inherited,
+;;   what can be inherited and when is not very clear, and you've got to be
+;;   very careful because a little mistake can fuck up your other back ends,
+;;   especially because their variables will be use instead of your real ones.
+;;   Finally, I found it easier to just clone the needed parts of nnml, and
+;;   tracking nnml updates is not a big deal.
 
 ;;   IMHO, nnoo is actually badly designed.  A much simpler, and yet more
 ;;   powerful one would be to make *real* functions and variables for a new
-;;   backend based on another. Lisp is a reflexive language so that's a very
+;;   back end based on another. Lisp is a reflexive language so that's a very
 ;;   easy thing to do: inspect the function's form, replace occurences of
 ;;   <nnfrom> (even in strings) with <nnto>, and you're done.
 
 ;; * nndiary-get-new-mail, nndiary-mail-source and nndiary-split-methods:
 ;;   NNDiary has some experimental parts, in the sense Gnus normally uses only
-;;   one mail backends for mail retreival and splitting.  This backend is also
-;;   an attempt to make it behave differently.  For Gnus developpers: as you
-;;   can see if you snarf into the code, that was not a very difficult thing
-;;   to do.  Something should be done about the respooling breakage though.
+;;   one mail back ends for mail retreival and splitting. This back end is
+;;   also an attempt to make it behave differently. For Gnus developpers: as
+;;   you can see if you snarf into the code, that was not a very difficult
+;;   thing to do. Something should be done about the respooling breakage
+;;   though.
 
 
 ;;; Code:
@@ -220,10 +101,10 @@
       (apply #'error args))))
 
 
-;; Backend behavior customization ===========================================
+;; Back End behavior customization ===========================================
 
 (defgroup nndiary nil
-  "The Gnus Diary backend."
+  "The Gnus Diary back end."
   :version "22.1"
   :group 'gnus-diary)
 
@@ -326,27 +207,27 @@
   :type 'boolean)
 
 
-;; Backend declaration ======================================================
+;; Back End declaration ======================================================
 
 ;; Well, most of this is nnml clonage.
 
 (nnoo-declare nndiary)
 
 (defvoo nndiary-directory (nnheader-concat gnus-directory "diary/")
-  "Spool directory for the nndiary backend.")
+  "Spool directory for the nndiary back end.")
 
 (defvoo nndiary-active-file
     (expand-file-name "active" nndiary-directory)
-  "Active file for the nndiary backend.")
+  "Active file for the nndiary back end.")
 
 (defvoo nndiary-newsgroups-file
     (expand-file-name "newsgroups" nndiary-directory)
-  "Newsgroups description file for the nndiary backend.")
+  "Newsgroups description file for the nndiary back end.")
 
 (defvoo nndiary-get-new-mail nil
   "Whether nndiary gets new mail and split it.
-Contrary to traditional mail backends, this variable can be set to t
-even if your primary mail backend also retreives mail. In such a case,
+Contrary to traditional mail back ends, this variable can be set to t
+even if your primary mail back end also retreives mail. In such a case,
 NDiary uses its own mail-sources and split-methods.")
 
 (defvoo nndiary-nov-is-evil nil
@@ -367,10 +248,10 @@
 
 
 (defconst nndiary-version "0.2-b14"
-  "Current Diary backend version.")
+  "Current Diary back end version.")
 
 (defun nndiary-version ()
-  "Current Diary backend version."
+  "Current Diary back end version."
   (interactive)
   (message "NNDiary version %s" nndiary-version))
 
@@ -631,7 +512,7 @@
 
 (deffoo nndiary-request-scan (&optional group server)
   ;; Use our own mail sources and split methods while Gnus doesn't let us have
-  ;; multiple backends for retrieving mail.
+  ;; multiple back ends for retrieving mail.
   (let ((mail-sources nndiary-mail-sources)
 	(nnmail-split-methods nndiary-split-methods))
     (setq nndiary-article-file-alist nil)
--- a/lisp/international/iso-cvt.el	Mon May 14 11:56:47 2007 +0000
+++ b/lisp/international/iso-cvt.el	Tue May 15 07:17:13 2007 +0000
@@ -823,13 +823,13 @@
  (iso-translate-conventions from to iso-sgml2iso-trans-tab))
 
 ;;;###autoload
-(defun iso-cvt-read-only ()
+(defun iso-cvt-read-only (&rest ignore)
   "Warn that format is read-only."
   (interactive)
   (error "This format is read-only; specify another format for writing"))
 
 ;;;###autoload
-(defun iso-cvt-write-only ()
+(defun iso-cvt-write-only (&rest ignore)
   "Warn that format is write-only."
   (interactive)
   (error "This format is write-only"))
--- a/lisp/longlines.el	Mon May 14 11:56:47 2007 +0000
+++ b/lisp/longlines.el	Tue May 15 07:17:13 2007 +0000
@@ -110,6 +110,7 @@
         (add-hook 'change-major-mode-hook 'longlines-mode-off nil t)
 	(add-hook 'before-revert-hook 'longlines-before-revert-hook nil t)
         (make-local-variable 'buffer-substring-filters)
+        (make-local-variable 'longlines-auto-wrap)
 	(set (make-local-variable 'isearch-search-fun-function)
 	     'longlines-search-function)
         (add-to-list 'buffer-substring-filters 'longlines-encode-string)
@@ -149,12 +150,10 @@
 	       (add-to-list 'message-indent-citation-function
 			    'longlines-decode-region t)))
 
+	(add-hook 'after-change-functions 'longlines-after-change-function nil t)
+	(add-hook 'post-command-hook 'longlines-post-command-function nil t)
         (when longlines-auto-wrap
-          (auto-fill-mode 0)
-          (add-hook 'after-change-functions
-                    'longlines-after-change-function nil t)
-          (add-hook 'post-command-hook
-                    'longlines-post-command-function nil t)))
+          (auto-fill-mode 0)))
     ;; Turn off longlines mode
     (setq buffer-file-format (delete 'longlines buffer-file-format))
     (if longlines-showing
@@ -365,29 +364,27 @@
 ;; Auto wrap
 
 (defun longlines-auto-wrap (&optional arg)
-  "Turn on automatic line wrapping, and wrap the entire buffer.
-With optional argument ARG, turn off line wrapping."
+  "Toggle automatic line wrapping.
+With optional argument ARG, turn on line wrapping if and only if ARG is positive.
+If automatic line wrapping is turned on, wrap the entire buffer."
   (interactive "P")
-  (remove-hook 'after-change-functions 'longlines-after-change-function t)
-  (remove-hook 'post-command-hook 'longlines-post-command-function t)
-  (if arg
-      (progn (setq longlines-auto-wrap nil)
-             (message "Auto wrap disabled."))
-    (setq longlines-auto-wrap t)
-    (add-hook 'after-change-functions
-              'longlines-after-change-function nil t)
-    (add-hook 'post-command-hook
-              'longlines-post-command-function nil t)
-    (let ((mod (buffer-modified-p)))
-      (longlines-wrap-region (point-min) (point-max))
-      (set-buffer-modified-p mod))
-    (message "Auto wrap enabled.")))
+  (and (null arg)
+       (null longlines-auto-wrap)
+       (setq arg 1))
+  (if (> (prefix-numeric-value arg) 0)
+      (let ((mod (buffer-modified-p)))
+	(setq longlines-auto-wrap t)
+	(longlines-wrap-region (point-min) (point-max))
+	(set-buffer-modified-p mod)
+	(message "Auto wrap enabled."))
+    (setq longlines-auto-wrap nil)
+    (message "Auto wrap disabled.")))
 
 (defun longlines-after-change-function (beg end len)
   "Update `longlines-wrap-beg' and `longlines-wrap-end'.
 This is called by `after-change-functions' to keep track of the region
 that has changed."
-  (unless undo-in-progress
+  (when (and longlines-auto-wrap (not undo-in-progress))
     (setq longlines-wrap-beg
           (if longlines-wrap-beg (min longlines-wrap-beg beg) beg))
     (setq longlines-wrap-end
@@ -396,7 +393,7 @@
 (defun longlines-post-command-function ()
   "Perform line wrapping on the parts of the buffer that have changed.
 This is called by `post-command-hook' after each command."
-  (when longlines-wrap-beg
+  (when (and longlines-auto-wrap longlines-wrap-beg)
     (if (or (eq this-command 'yank)
 	    (eq this-command 'yank-pop))
 	(longlines-decode-region (point) (mark t)))
--- a/lisp/mail/mailabbrev.el	Mon May 14 11:56:47 2007 +0000
+++ b/lisp/mail/mailabbrev.el	Tue May 15 07:17:13 2007 +0000
@@ -494,6 +494,8 @@
 	     ;; the usual syntax table.
 
 	     (or (and (integerp last-command-char)
+		      ;; Some commands such as M-> may want to expand first.
+		      (equal this-command 'self-insert)
 		      (or (eq (char-syntax last-command-char) ?_)
 			  ;; Don't expand on @.
 			  (memq last-command-char '(?@ ?. ?% ?! ?_ ?-))))
--- a/lisp/mail/rmail.el	Mon May 14 11:56:47 2007 +0000
+++ b/lisp/mail/rmail.el	Tue May 15 07:17:13 2007 +0000
@@ -1959,12 +1959,13 @@
 			(base64-header-field-end
 			 (save-excursion
 			   (goto-char start)
+			   ;; Don't try to decode non-text data.
 			   (and (re-search-forward
-				 "^content-transfer-encoding:\\(\n?[\t ]\\)*base64\\(\n?[\t ]\\)*"
+				 "^content-type:\\(\n?[\t ]\\)\\(text\\|message\\)/"
 				 header-end t)
-				;; Don't try to decode non-text data.
+				(goto-char start)
 				(re-search-forward
-				 "^content-type:\\(\n?[\t ]\\)\\(text\\|message\\)/"
+				 "^content-transfer-encoding:\\(\n?[\t ]\\)*base64\\(\n?[\t ]\\)*"
 				 header-end t)))))
 		   (if quoted-printable-header-field-end
 		       (save-excursion
@@ -2066,14 +2067,14 @@
 			  header-end t)))
 		      (base64-header-field-end
 		       (and
-			(save-excursion
-			  (re-search-forward
-			   "^content-transfer-encoding:\\(\n?[\t ]\\)*base64\\(\n?[\t ]\\)*"
-			   header-end t))
 			;; Don't decode non-text data.
 			(save-excursion
 			  (re-search-forward
 			   "^content-type:\\(\n?[\t ]\\)\\(text\\|message\\)/"
+			   header-end t))
+			(save-excursion
+			  (re-search-forward
+			   "^content-transfer-encoding:\\(\n?[\t ]\\)*base64\\(\n?[\t ]\\)*"
 			   header-end t))))
 		      (size
 		       ;; Get the numeric value from the Content-Length field.
--- a/lisp/man.el	Mon May 14 11:56:47 2007 +0000
+++ b/lisp/man.el	Tue May 15 07:17:13 2007 +0000
@@ -1296,7 +1296,9 @@
 	(forward-line 1))
     (if (re-search-forward Man-heading-regexp (point-max) t n)
 	(beginning-of-line)
-      (goto-char (point-max)))))
+      (goto-char (point-max))
+      ;; The last line doesn't belong to any section.
+      (forward-line -1))))
 
 (defun Man-previous-section (n)
   "Move point to Nth previous section (default 1)."
--- a/lisp/net/rcirc.el	Mon May 14 11:56:47 2007 +0000
+++ b/lisp/net/rcirc.el	Tue May 15 07:17:13 2007 +0000
@@ -312,7 +312,7 @@
   "List of urls seen in the current buffer.")
 (put 'rcirc-urls 'permanent-local t)
 
-(defvar rcirc-timeout-seconds 60
+(defvar rcirc-timeout-seconds 600
   "Kill connection after this many seconds if there is no activity.")
 
 (defconst rcirc-id-string (concat "rcirc on GNU Emacs " emacs-version))
--- a/lisp/newcomment.el	Mon May 14 11:56:47 2007 +0000
+++ b/lisp/newcomment.el	Tue May 15 07:17:13 2007 +0000
@@ -97,10 +97,10 @@
 ;;;###autoload
 (defcustom comment-column 32
   "Column to indent right-margin comments to.
-Each mode establishes a different default value for this variable; you
+Each mode may establish a different default value for this variable; you
 can set the value for a particular mode using that mode's hook.
-Comments might be indented to a value smaller than this in order
-not to go beyond `comment-fill-column'."
+Comments might be indented to a different value in order not to go beyond
+`comment-fill-column' or in order to align them with surrounding comments."
   :type 'integer
   :group 'comment)
 (make-variable-buffer-local 'comment-column)
@@ -491,16 +491,24 @@
         (goto-char (point-min))
         (re-search-forward (concat comment-end-skip "\\'") nil t))
       (goto-char (match-beginning 0)))
-     ;; comment-end-skip not found.  Maybe we're at EOB which implicitly
-     ;; closes the comment.
-     ((eobp) (skip-syntax-backward " "))
-     (t
-      ;; else comment-end-skip was not found probably because it was not
-      ;; set right.  Since \\s> should catch the single-char case, we'll
-      ;; blindly assume we're at the end of a two-char comment-end.
+     ;; comment-end-skip not found probably because it was not set
+     ;; right.  Since \\s> should catch the single-char case, let's
+     ;; check that we're looking at a two-char comment ender.
+     ((not (or (<= (- (point-max) (line-beginning-position)) 1)
+               (zerop (logand (car (syntax-after (- (point) 1)))
+                              ;; Here we take advantage of the fact that
+                              ;; the syntax class " " is encoded to 0,
+                              ;; so "  4" gives us just the 4 bit.
+                              (car (string-to-syntax "  4"))))
+               (zerop (logand (car (syntax-after (- (point) 2)))
+                              (car (string-to-syntax "  3"))))))
       (backward-char 2)
       (skip-chars-backward (string (char-after)))
-      (skip-syntax-backward " ")))))
+      (skip-syntax-backward " "))
+     ;; No clue what's going on: maybe we're really not right after the
+     ;; end of a comment.  Maybe we're at the "end" because of EOB rather
+     ;; than because of a marker.
+     (t (skip-syntax-backward " ")))))
 
 ;;;;
 ;;;; Commands
@@ -516,6 +524,58 @@
 	      (and (> comment-add 0) (looking-at "\\s<\\(\\S<\\|\\'\\)")))
       comment-column)))
 
+(defun comment-choose-indent (&optional indent)
+  "Choose the indentation to use for a right-hand-side comment.
+The criteria are (in this order):
+- try to keep the comment's text within `comment-fill-column'.
+- try to align with surrounding comments.
+- prefer INDENT (or `comment-column' if nil).
+Point is expected to be at the start of the comment."
+  (unless indent (setq indent comment-column))
+  ;; Avoid moving comments past the fill-column.
+  (let ((max (+ (current-column)
+                (- (or comment-fill-column fill-column)
+                   (save-excursion (end-of-line) (current-column)))))
+        (other nil)
+        (min (save-excursion (skip-chars-backward " \t")
+                             (1+ (current-column)))))
+    ;; Fix up the range.
+    (if (< max min) (setq max min))
+    ;; Don't move past the fill column.
+    (if (<= max indent) (setq indent max))
+    ;; We can choose anywhere between min..max.
+    ;; Let's try to align to a comment on the previous line.
+    (save-excursion
+      (when (and (zerop (forward-line -1))
+                 (setq other (comment-search-forward
+                              (line-end-position) t)))
+        (goto-char other) (setq other (current-column))))
+    (if (and other (<= other max) (>= other min))
+        ;; There is a comment and it's in the range: bingo!
+        other
+      ;; Can't align to a previous comment: let's try to align to comments
+      ;; on the following lines, then.  These have not been re-indented yet,
+      ;; so we can't directly align ourselves with them.  All we do is to try
+      ;; and choose an indentation point with which they will be able to
+      ;; align themselves.
+      (save-excursion
+        (while (and (zerop (forward-line 1))
+                    (setq other (comment-search-forward
+                                 (line-end-position) t)))
+          (goto-char other)
+          (let ((omax (+ (current-column)
+                         (- (or comment-fill-column fill-column)
+                            (save-excursion (end-of-line) (current-column)))))
+                (omin (save-excursion (skip-chars-backward " \t")
+                                      (1+ (current-column)))))
+            (if (and (>= omax min) (<= omin max))
+                (progn (setq min (max omin min))
+                       (setq max (min omax max)))
+              ;; Can't align with this anyway, so exit the loop.
+              (goto-char (point-max))))))
+      ;; Return the closest point to indent within min..max.
+      (max min (min max indent)))))
+
 ;;;###autoload
 (defun comment-indent (&optional continue)
   "Indent this line's comment to `comment-column', or insert an empty comment.
@@ -569,38 +629,9 @@
       (if (not indent)
 	  ;; comment-indent-function refuses: delegate to line-indent.
 	  (indent-according-to-mode)
-	;; If the comment is at the left of code, adjust the indentation.
+	;; If the comment is at the right of code, adjust the indentation.
 	(unless (save-excursion (skip-chars-backward " \t") (bolp))
-	  ;; Avoid moving comments past the fill-column.
-	  (let ((max (+ (current-column)
-			(- (or comment-fill-column fill-column)
-			   (save-excursion (end-of-line) (current-column))))))
-	    (if (<= max indent)
-		(setq indent max)	;Don't move past the fill column.
-	      ;; We can choose anywhere between indent..max.
-	      ;; Let's try to align to a comment on the previous line.
-	      (let ((other nil)
-		    (min (max indent
-			      (save-excursion (skip-chars-backward " \t")
-					      (1+ (current-column))))))
-		(save-excursion
-		  (when (and (zerop (forward-line -1))
-			     (setq other (comment-search-forward
-					 (line-end-position) t)))
-		    (goto-char other) (setq other (current-column))))
-		(if (and other (<= other max) (>= other min))
-		    ;; There is a comment and it's in the range: bingo.
-		    (setq indent other)
-		  ;; Let's try to align to a comment on the next line, then.
-		  (let ((other nil))
-		    (save-excursion
-		      (when (and (zerop (forward-line 1))
-				 (setq other (comment-search-forward
-					     (line-end-position) t)))
-			(goto-char other) (setq other (current-column))))
-		    (if (and other (<= other max) (> other min))
-			;; There is a comment and it's in the range: bingo.
-			(setq indent other))))))))
+          (setq indent (comment-choose-indent indent)))
 	;; Update INDENT to leave at least one space
 	;; after other nonwhite text on the line.
 	(save-excursion
--- a/lisp/progmodes/compile.el	Mon May 14 11:56:47 2007 +0000
+++ b/lisp/progmodes/compile.el	Tue May 15 07:17:13 2007 +0000
@@ -1448,10 +1448,7 @@
     (with-no-warnings
       (if compilation-finish-function
 	  (funcall compilation-finish-function (current-buffer) msg)))
-    (let ((functions compilation-finish-functions))
-      (while functions
-	(funcall (car functions) (current-buffer) msg)
-	(setq functions (cdr functions))))))
+    (run-hook-with-args compilation-finish-functions (current-buffer) msg)))
 
 ;; Called when compilation process changes state.
 (defun compilation-sentinel (proc msg)
@@ -1863,7 +1860,24 @@
           (let* ((name (read-file-name
                         (format "Find this %s in (default %s): "
                                 compilation-error filename)
-                        spec-dir filename t nil))
+                        spec-dir filename t nil
+                        ;; The predicate below is fine when called from
+                        ;; minibuffer-complete-and-exit, but it's too
+                        ;; restrictive otherwise, since it also prevents the
+                        ;; user from completing "fo" to "foo/" when she
+                        ;; wants to enter "foo/bar".
+                        ;; 
+                        ;; Try to make sure the user can only select
+                        ;; a valid answer.  This predicate may be ignored,
+                        ;; tho, so we still have to double-check afterwards.
+                        ;; TODO: We should probably fix read-file-name so
+                        ;; that it never ignores this predicate, even when
+                        ;; using popup dialog boxes.
+                        ;; (lambda (name)
+                        ;;   (if (file-directory-p name)
+                        ;;       (setq name (expand-file-name filename name)))
+                        ;;   (file-exists-p name))
+                        ))
                  (origname name))
             (cond
              ((not (file-exists-p name))
--- a/lisp/progmodes/python.el	Mon May 14 11:56:47 2007 +0000
+++ b/lisp/progmodes/python.el	Tue May 15 07:17:13 2007 +0000
@@ -96,7 +96,7 @@
 	     "import" "in" "is" "lambda" "not" "or" "pass" "print"
 	     "raise" "return" "try" "while" "yield"
 	     ;; Future keywords
-	     "as" "None"
+	     "as" "None" "with"
              ;; Not real keywords, but close enough to be fontified as such
              "self" "True" "False")
 	 symbol-end)
@@ -374,7 +374,7 @@
   (save-excursion
     (unless bos (python-beginning-of-statement))
     (looking-at (rx (and (or "if" "else" "elif" "while" "for" "def"
-			     "class" "try" "except" "finally")
+			     "class" "try" "except" "finally" "with")
 			 symbol-end)))))
 
 (defun python-close-block-statement-p (&optional bos)
@@ -461,7 +461,7 @@
 	      (let ((initial (current-indentation)))
 		(if (zerop (python-next-statement))
 		    (setq indent (- (current-indentation) initial)))
-		(if (and (>= indent 2) (<= indent 8)) ; sanity check
+		(if (and indent (>= indent 2) (<= indent 8)) ; sanity check
 		    (setq done t))))))
 	(when done
 	  (when (/= indent (default-value 'python-indent))
@@ -883,10 +883,13 @@
 			   nil)
 			  ((eq 'string (syntax-ppss-context s))
 			   ;; Go to start of string and skip it.
-			   (goto-char (nth 8 s))
-			   (condition-case () ; beware invalid syntax
-			       (progn (forward-sexp) t)
-			     (error (end-of-line))))
+                           (let ((pos (point)))
+                             (goto-char (nth 8 s))
+                             (condition-case () ; beware invalid syntax
+                                 (progn (forward-sexp) t)
+                               ;; If there's a mismatched string, make sure
+                               ;; we still overall move *forward*.
+                               (error (goto-char pos) (end-of-line)))))
 			  ((python-skip-out t s))))
 	     (end-of-line))
 	   (unless comment
@@ -981,15 +984,11 @@
 		       (_ (if (python-comment-line-p)
 			      (python-skip-comments/blanks t)))
 		       (ci (current-indentation))
-		       (open (python-open-block-statement-p))
-		       opoint)
+		       (open (python-open-block-statement-p)))
 		  (if (and (zerop ci) (not open))
 		      (not (goto-char point))
 		    (catch 'done
-		      (setq opoint (point))
-		      (while (and (zerop (python-next-statement))
-		      		  (not (= opoint (point))))
-			(setq opoint (point))
+                      (while (zerop (python-next-statement))
 			(when (or (and open (<= (current-indentation) ci))
 				  (< (current-indentation) ci))
 			  (python-skip-comments/blanks t)
@@ -2240,7 +2239,7 @@
        #'python-current-defun)
   (set (make-local-variable 'outline-regexp)
        (rx (* space) (or "class" "def" "elif" "else" "except" "finally"
-			 "for" "if" "try" "while")
+			 "for" "if" "try" "while" "with")
 	   symbol-end))
   (set (make-local-variable 'outline-heading-end-regexp) ":\\s-*\n")
   (set (make-local-variable 'outline-level) #'python-outline-level)
--- a/lisp/startup.el	Mon May 14 11:56:47 2007 +0000
+++ b/lisp/startup.el	Tue May 15 07:17:13 2007 +0000
@@ -1150,21 +1150,25 @@
                 "\n")))
            :face variable-pitch "\
 Emacs FAQ\t\tFrequently asked questions and answers
-View Emacs Manual\tView the Emacs manual using Info
+View Emacs Manual\t\tView the Emacs manual using Info
 Absence of Warranty\tGNU Emacs comes with "
 	   :face (variable-pitch :slant oblique)
 	   "ABSOLUTELY NO WARRANTY\n"
 	   :face variable-pitch
 	   "\
-Copying Conditions\tConditions for redistributing and changing Emacs
+Copying Conditions\t\tConditions for redistributing and changing Emacs
 Getting New Versions\tHow to obtain the latest version of Emacs
 More Manuals / Ordering Manuals       Buying printed manuals from the FSF\n")
   (:face variable-pitch
-	 "To quit a partially entered command, type "
+	 "\nTo quit a partially entered command, type "
 	 :face default
 	 "Control-g"
 	 :face variable-pitch
-	 ".\n"
+	 ".
+
+Emacs Guided Tour\t\tSee http://www.gnu.org/software/emacs/tour/
+
+"
 	 :face (variable-pitch :weight bold)
 	 "Useful File menu items:\n"
 	 :face variable-pitch
@@ -1177,13 +1181,7 @@
 	 "Control-c"
 	 :face variable-pitch
 	 ")
-Recover Crashed Session\tRecover files you were editing before a crash
-
-
-
-
-
-"
+Recover Crashed Session\tRecover files you were editing before a crash\n"
 	   ))
   "A list of texts to show in the middle part of splash screens.
 Each element in the list should be a list of strings or pairs
--- a/lisp/t-mouse.el	Mon May 14 11:56:47 2007 +0000
+++ b/lisp/t-mouse.el	Tue May 15 07:17:13 2007 +0000
@@ -275,32 +275,32 @@
 
 Turn it on to use Emacs mouse commands, and off to use t-mouse commands."
   nil " Mouse" nil :global t
-  (if t-mouse-mode
-      ;; Turn it on
-      (unless window-system
-        ;; Starts getting a stream of mouse events from an asynchronous process.
-        ;; Only works if Emacs is running on a virtual terminal without a window system.
+  (unless window-system
+    (if t-mouse-mode
+	;; Turn it on.  Starts getting a stream of mouse events from an
+        ;; asynchronous process.  Only works if Emacs is running on a virtual
+        ;; terminal without a window system.
 	(progn
-	 (setq mouse-position-function #'t-mouse-mouse-position-function)
-	 (let ((tty (t-mouse-tty))
-	       (process-connection-type t))
-	   (if (not (stringp tty))
-	       (error "Cannot find a virtual terminal"))
-	   (setq t-mouse-process
-		 (start-process "t-mouse" nil
-				"mev" "-i" "-E" "-C" tty
-				(if t-mouse-swap-alt-keys
-				    "-M-leftAlt" "-M-rightAlt")
-				"-e-move"
-				"-dall" "-d-hard"
-				"-f")))
-	 (setq t-mouse-filter-accumulator "")
-	 (set-process-filter t-mouse-process 't-mouse-process-filter)
-	 (set-process-query-on-exit-flag t-mouse-process nil)))
+	  (setq mouse-position-function #'t-mouse-mouse-position-function)
+	  (let ((tty (t-mouse-tty))
+		(process-connection-type t))
+	    (if (not (stringp tty))
+		(error "Cannot find a virtual terminal"))
+	    (setq t-mouse-process
+		  (start-process "t-mouse" nil
+				 "mev" "-i" "-E" "-C" tty
+				 (if t-mouse-swap-alt-keys
+				     "-M-leftAlt" "-M-rightAlt")
+				 "-e-move"
+				 "-dall" "-d-hard"
+				 "-f")))
+	  (setq t-mouse-filter-accumulator "")
+	  (set-process-filter t-mouse-process 't-mouse-process-filter)
+	  (set-process-query-on-exit-flag t-mouse-process nil))
     ;; Turn it off
-    (setq mouse-position-function nil)
-    (delete-process t-mouse-process)
-    (setq t-mouse-process nil)))
+      (setq mouse-position-function nil)
+      (delete-process t-mouse-process)
+      (setq t-mouse-process nil))))
 
 (provide 't-mouse)
 
--- a/lisp/term/mac-win.el	Mon May 14 11:56:47 2007 +0000
+++ b/lisp/term/mac-win.el	Tue May 15 07:17:13 2007 +0000
@@ -2154,7 +2154,8 @@
 	 (coding (or (cdr (assq (car script-language)
 				mac-script-code-coding-systems))
 		     'mac-roman)))
-    (mac-unread-string (mac-utxt-to-string text coding))))
+    (if text
+	(mac-unread-string (mac-utxt-to-string text coding)))))
 
 ;; kEventClassTextInput/kEventTextInputUpdateActiveInputArea
 (define-key mac-apple-event-map [text-input update-active-input-area]
--- a/lisp/textmodes/sgml-mode.el	Mon May 14 11:56:47 2007 +0000
+++ b/lisp/textmodes/sgml-mode.el	Tue May 15 07:17:13 2007 +0000
@@ -45,12 +45,12 @@
   :group 'languages)
 
 (defcustom sgml-basic-offset 2
-  "*Specifies the basic indentation level for `sgml-indent-line'."
+  "Specifies the basic indentation level for `sgml-indent-line'."
   :type 'integer
   :group 'sgml)
 
 (defcustom sgml-transformation-function 'identity
-  "*Default value for `skeleton-transformation-function' in SGML mode."
+  "Default value for `skeleton-transformation-function' in SGML mode."
   :type 'function
   :group 'sgml)
 
@@ -164,7 +164,7 @@
   "Syntax table used to parse SGML tags.")
 
 (defcustom sgml-name-8bit-mode nil
-  "*When non-nil, insert non-ASCII characters as named entities."
+  "When non-nil, insert non-ASCII characters as named entities."
   :type 'boolean
   :group 'sgml)
 
@@ -223,7 +223,7 @@
 ;; The -s option suppresses output.
 
 (defcustom sgml-validate-command "nsgmls -s" ; replaced old `sgmls'
-  "*The command to validate an SGML document.
+  "The command to validate an SGML document.
 The file name of current buffer file name will be appended to this,
 separated by a space."
   :type 'string
@@ -236,7 +236,7 @@
 ;; I doubt that null end tags are used much for large elements,
 ;; so use a small distance here.
 (defcustom sgml-slash-distance 1000
-  "*If non-nil, is the maximum distance to search for matching `/'."
+  "If non-nil, is the maximum distance to search for matching `/'."
   :type '(choice (const nil) integer)
   :group 'sgml)
 
@@ -316,7 +316,7 @@
     ("!doctype")
     ("!element")
     ("!entity"))
-  "*Alist of tag names for completing read and insertion rules.
+  "Alist of tag names for completing read and insertion rules.
 This alist is made up as
 
   ((\"tag\" . TAGRULE)
@@ -346,15 +346,14 @@
     ("!doctype" . "Document type (DTD) declaration")
     ("!element" . "Tag declaration")
     ("!entity" . "Entity (macro) declaration"))
-  "*Alist of tag name and short description."
+  "Alist of tag name and short description."
   :type '(repeat (cons (string :tag "Tag Name")
 		       (string :tag "Description")))
   :group 'sgml)
 
 (defcustom sgml-xml-mode nil
-  "*When non-nil, tag insertion functions will be XML-compliant.
-If this variable is customized, the custom value is used always.
-Otherwise, it is set to be buffer-local when the file has
+  "When non-nil, tag insertion functions will be XML-compliant.
+It is set to be buffer-local when the file has
 a DOCTYPE or an XML declaration."
   :type 'boolean
   :version "22.1"
@@ -935,7 +934,7 @@
 (defun sgml-lexical-context (&optional limit)
   "Return the lexical context at point as (TYPE . START).
 START is the location of the start of the lexical element.
-TYPE is one of `string', `comment', `tag', `cdata', or `text'.
+TYPE is one of `string', `comment', `tag', `cdata', `pi', or `text'.
 
 Optional argument LIMIT is the position to start parsing from.
 If nil, start from a preceding tag at indentation."
@@ -962,12 +961,19 @@
                   (let ((cdata-start (point)))
                     (unless (search-forward "]]>" pos 'move)
                       (list 0 nil nil 'cdata nil nil nil nil cdata-start))))
+                 ((and sgml-xml-mode (looking-at "<\\?"))
+                  ;; Processing Instructions.
+                  ;; In SGML, it's basically a normal tag of the form
+                  ;; <?NAME ...> but in XML, it takes the form <? ... ?>.
+                  (let ((pi-start (point)))
+                    (unless (search-forward "?>" pos 'move)
+                      (list 0 nil nil 'pi nil nil nil nil pi-start))))
                  (t
                   ;; We've reached a tag.  Parse it.
                   ;; FIXME: Handle net-enabling start-tags
                   (parse-partial-sexp (point) pos 0))))))
       (cond
-       ((eq (nth 3 state) 'cdata) (cons 'cdata (nth 8 state)))
+       ((memq (nth 3 state) '(cdata pi)) (cons (nth 3 state) (nth 8 state)))
        ((nth 3 state) (cons 'string (nth 8 state)))
        ((nth 4 state) (cons 'comment (nth 8 state)))
        ((and state (> (nth 0 state) 0)) (cons 'tag (nth 1 state)))
@@ -1001,8 +1007,10 @@
 	      (insert alist ?\")
 	    (delete-backward-char 2)))
       (insert "=\"")
-      (when alist
-        (insert (skeleton-read '(completing-read "Value: " alist))))
+      (if (cdr alist)
+          (insert (skeleton-read '(completing-read "Value: " alist)))
+        (when (null alist)
+          (insert (skeleton-read '(read-string "Value: ")))))
       (insert ?\"))))
 
 (defun sgml-quote (start end &optional unquotep)
@@ -1091,9 +1099,15 @@
       (when (eq (char-after) ?<)
 	;; Oops!! Looks like we were not in a textual context after all!.
 	;; Let's try to recover.
+        ;; Remember the tag-start so we don't need to look for it later.
+	;; This is not just an optimization but also makes sure we don't get
+	;; stuck in infloops in cases where "looking back for <" would not go
+	;; back far enough.
+        (setq tag-start (point))
 	(with-syntax-table sgml-tag-syntax-table
 	  (let ((pos (point)))
 	    (condition-case nil
+                ;; FIXME: This does not correctly skip over PI an CDATA tags.
 		(forward-sexp)
 	      (scan-error
 	       ;; This < seems to be just a spurious one, let's ignore it.
@@ -1108,33 +1122,41 @@
       (cond
        ((sgml-looking-back-at "--")	; comment
 	(setq tag-type 'comment
-	      tag-start (search-backward "<!--" nil t)))
+	      tag-start (or tag-start (search-backward "<!--" nil t))))
        ((sgml-looking-back-at "]]")	; cdata
 	(setq tag-type 'cdata
-	      tag-start (re-search-backward "<!\\[[A-Z]+\\[" nil t)))
+	      tag-start (or tag-start
+                            (re-search-backward "<!\\[[A-Z]+\\[" nil t))))
+       ((sgml-looking-back-at "?")      ; XML processing-instruction
+        (setq tag-type 'pi
+              ;; IIUC: SGML processing instructions take the form <?foo ...>
+              ;; i.e. a "normal" tag, handled below.  In XML this is changed
+              ;; to <?foo ... ?> where "..." can contain < and > and even <?
+              ;; but not ?>.  This means that when parsing backward, there's
+              ;; no easy way to make sure that we find the real beginning of
+              ;; the PI.
+	      tag-start (or tag-start (search-backward "<?" nil t))))
        (t
-	(setq tag-start
-	      (with-syntax-table sgml-tag-syntax-table
-		(goto-char tag-end)
-		(condition-case nil
-		    (backward-sexp)
-		  (scan-error
-		   ;; This > isn't really the end of a tag. Skip it.
-		   (goto-char (1- tag-end))
-		   (throw 'found (sgml-parse-tag-backward limit))))
-		(point)))
+        (unless tag-start
+          (setq tag-start
+                (with-syntax-table sgml-tag-syntax-table
+                  (goto-char tag-end)
+                  (condition-case nil
+                      (backward-sexp)
+                    (scan-error
+                     ;; This > isn't really the end of a tag. Skip it.
+                     (goto-char (1- tag-end))
+                     (throw 'found (sgml-parse-tag-backward limit))))
+                  (point))))
 	(goto-char (1+ tag-start))
 	(case (char-after)
-	  (?!				; declaration
-	   (setq tag-type 'decl))
-	  (??				; processing-instruction
-	   (setq tag-type 'pi))
+	  (?! (setq tag-type 'decl))    ; declaration
+	  (?? (setq tag-type 'pi))      ; processing-instruction
+	  (?% (setq tag-type 'jsp))	; JSP tags
 	  (?/				; close-tag
 	   (forward-char 1)
 	   (setq tag-type 'close
 		 name (sgml-parse-tag-name)))
-	  (?%				; JSP tags
-	   (setq tag-type 'jsp))
 	  (t				; open or empty tag
 	   (setq tag-type 'open
 		 name (sgml-parse-tag-name))
@@ -1329,6 +1351,8 @@
 
     ;; We don't know how to indent it.  Let's be honest about it.
     (cdata nil)
+    ;; We don't know how to indent it.  Let's be honest about it.
+    (pi nil)
 
     (tag
      (goto-char (1+ (cdr lcon)))
--- a/lisp/textmodes/tex-mode.el	Mon May 14 11:56:47 2007 +0000
+++ b/lisp/textmodes/tex-mode.el	Tue May 15 07:17:13 2007 +0000
@@ -527,6 +527,8 @@
 	    (citations (regexp-opt
 			'("label" "ref" "pageref" "vref" "eqref"
 			  "cite" "nocite" "index" "glossary" "bibitem"
+                          ;; natbib's two variants of \cite:
+                          "citep" "citet"
 			  ;; These are text, rather than citations.
 			  ;; "caption" "footnote" "footnotemark" "footnotetext"
 			  )
--- a/lisp/vc-hooks.el	Mon May 14 11:56:47 2007 +0000
+++ b/lisp/vc-hooks.el	Tue May 15 07:17:13 2007 +0000
@@ -315,10 +315,17 @@
   ;; Represent /home/luser/foo as ~/foo so that we don't try to look for
   ;; witnesses in /home or in /.
   (setq file (abbreviate-file-name file))
-  (let ((root nil))
+  (let ((root nil)
+        (user (nth 2 (file-attributes file))))
     (while (not (or root
                    (equal file (setq file (file-name-directory file)))
                    (null file)
+                   ;; As a heuristic, we stop looking up the hierarchy of
+                   ;; directories as soon as we find a directory belonging
+                   ;; to another user.  This should save us from looking in
+                   ;; things like /net and /afs.  This assumes that all the
+                   ;; files inside a project belong to the same user.
+                   (not (equal user (file-attributes file)))
                    (string-match vc-ignore-dir-regexp file)))
       (if (file-exists-p (expand-file-name witness file))
          (setq root file)
--- a/lisp/vc.el	Mon May 14 11:56:47 2007 +0000
+++ b/lisp/vc.el	Tue May 15 07:17:13 2007 +0000
@@ -2909,7 +2909,11 @@
   (vc-call-backend (vc-responsible-backend default-directory)
                    'update-changelog args))
 
-(defun vc-default-update-changelog (backend files)
+(defalias 'vc-cvs-update-changelog 'vc-update-changelog-rcs2log)
+(defalias 'vc-rcs-update-changelog 'vc-update-changelog-rcs2log)
+;; FIXME: This should probably be moved to vc-rcs.el and replaced in
+;; vc-cvs.el by code using cvs2cl.
+(defun vc-update-changelog-rcs2log (files)
   "Default implementation of update-changelog.
 Uses `rcs2log' which only works for RCS and CVS."
   ;; FIXME: We (c|sh)ould add support for cvs2cl
@@ -2950,9 +2954,7 @@
                                     (mapcar
                                      (lambda (f)
                                        (file-relative-name
-                                        (if (file-name-absolute-p f)
-                                            f
-                                          (concat odefault f))))
+                                        (expand-file-name f odefault)))
                                      files)))
                        "done"
 		     (pop-to-buffer (get-buffer-create "*vc*"))
--- a/lisp/xt-mouse.el	Mon May 14 11:56:47 2007 +0000
+++ b/lisp/xt-mouse.el	Tue May 15 07:17:13 2007 +0000
@@ -43,6 +43,8 @@
 
 ;;; Code:
 
+(defvar xterm-mouse-debug-buffer nil)
+
 (define-key function-key-map "\e[M" 'xterm-mouse-translate)
 
 (defvar xterm-mouse-last)
@@ -95,6 +97,8 @@
 		       (list (intern (format "drag-mouse-%d"
 					     (+ 1 xterm-mouse-last)))
 			     down-data click-data)))))
+	    (if xterm-mouse-debug-buffer
+		(print unread-command-events xterm-mouse-debug-buffer))
 	    (if (and (symbolp down-where)
 		     (consp down-where))
 		(vector (list down-where down-data) down)
--- a/lispref/ChangeLog	Mon May 14 11:56:47 2007 +0000
+++ b/lispref/ChangeLog	Tue May 15 07:17:13 2007 +0000
@@ -1,8 +1,68 @@
+2007-05-12  Richard Stallman  <rms@gnu.org>
+
+	* text.texi (Margins): indent-to-left-margin is not the default.
+	(Mode-Specific Indent): For indent-line-function, the default
+	is indent-relative.
+
+	* modes.texi (Example Major Modes): Explain last line of text-mode
+	is redundant.
+
+2007-05-10  Richard Stallman  <rms@gnu.org>
+
+	* keymaps.texi (Scanning Keymaps): Update where-is-internal example.
+
+	* help.texi (Keys in Documentation): Add reference to
+	Documentation Tips.
+
+	* files.texi (Format Conversion): TO-FN gets three arguments.
+
+	* modes.texi (Auto Major Mode): Document file-start-mode-alist.
+
+2007-05-10  Thien-Thi Nguyen  <ttn@gnuvola.org>
+
+	* elisp.texi (Top): Remove "Saving Properties" from detailed menu.
+	* files.texi (Format Conversion): Expand intro; add menu.
+	(Format Conversion Overview, Format Conversion Round-Trip)
+	(Format Conversion Piecemeal): New nodes/subsections.
+	* hooks.texi: Xref "Format Conversion" , not "Saving Properties".
+	* text.texi (Text Properties): Remove "Saving Properties" from menu.
+	(Saving Properties): Delete node/subsection.
+
+2007-05-07  Karl Berry  <karl@gnu.org>
+
+	* elisp.texi (EMACSVER): back to 22.
+
+2007-05-06  Richard Stallman  <rms@gnu.org>
+
+	* processes.texi (Accepting Output): Revert most of previous change.
+
+2007-05-05  Richard Stallman  <rms@gnu.org>
+
+	* processes.texi (Accepting Output): accept-process-output
+	uses microseconds, not milliseconds.  But that arg is obsolete.
+
+2007-05-04  Karl Berry  <karl@tug.org>
+
+	* elisp.texi (EMACSVER) [smallbook]: 22.1, not 22.
+
+2007-05-04  Eli Zaretskii  <eliz@gnu.org>
+
+	* tips.texi (Documentation Tips): Rearrange items to place the
+	more important ones first.  Add an index entry for hyperlinks.
+
+2007-05-03  Karl Berry  <karl@gnu.org>
+
+	* elisp.texi (\urlcolor, \linkcolor) [smallbook]: \Black for printing.
+	 (EMACSVER) [smallbook]: 22 for printed version.
+
+	* control.texi (Signaling Errors) <signal>: texinfo.tex is fixed,
+	so restore anchor to normal position after defun.  Found by Kevin Ryde.
+
 2007-04-26  Glenn Morris  <rgm@gnu.org>
 
 	* elisp.texi (EMACSVER): Increase to 22.1.50.
 
-2007-04-25  Karl Berry  <karl@gnu.org>
+2007-04-28  Karl Berry  <karl@gnu.org>
 
 	* elisp.texi: Improve line breaks on copyright page,
 	similar layout to emacs manual, 8.5x11 by default.
@@ -355,7 +415,7 @@
 
 	* loading.texi (How Programs Do Loading): Fix anchor position at
 	load-read-function definition doc. (tiny change)
-	
+
 2007-02-21  Kim F. Storm  <storm@cua.dk>
 
 	* strings.texi (Text Comparison): Mention that assoc-string
--- a/lispref/control.texi	Mon May 14 11:56:47 2007 +0000
+++ b/lispref/control.texi	Tue May 15 07:17:13 2007 +0000
@@ -783,13 +783,10 @@
 @end defun
 
 @defun signal error-symbol data
-This
 @anchor{Definition of signal}
-@c unfortunately, a page break is allowed if the anchor immediately
-@c follows the @defun, due to hard-to-fix TeXnicalities.  
-function signals an error named by @var{error-symbol}.  The
-argument @var{data} is a list of additional Lisp objects relevant to the
-circumstances of the error.
+This function signals an error named by @var{error-symbol}.  The
+argument @var{data} is a list of additional Lisp objects relevant to
+the circumstances of the error.
 
 The argument @var{error-symbol} must be an @dfn{error symbol}---a symbol
 bearing a property @code{error-conditions} whose value is a list of
--- a/lispref/elisp.texi	Mon May 14 11:56:47 2007 +0000
+++ b/lispref/elisp.texi	Tue May 15 07:17:13 2007 +0000
@@ -7,7 +7,7 @@
 @c Version of the manual and of Emacs.
 @c Please remember to update the edition number in README as well.
 @set VERSION  2.9
-@set EMACSVER 22.1.50
+@set EMACSVER 22.0.99
 
 @dircategory Emacs
 @direntry
@@ -24,14 +24,18 @@
 @end ifset
 
 @c per rms and peterb, use 10pt fonts for the main text, mostly to
-@c save on paper cost.  Also, do not declare @setchapternewpage odd,
-@c for the same reason. Do this inside @tex for now, so the
-@c last-released makeinfo does not complain.
+@c save on paper cost.  
+@c Do this inside @tex for now, so current makeinfo does not complain.
 @tex
 @ifset smallbook
 @fonttextsize 10
+@set EMACSVER 22
+\global\let\urlcolor=\Black % don't print links in grayscale
+\global\let\linkcolor=\Black
 @end ifset
 \global\hbadness=6666 % don't worry about not-too-underfull boxes
+\global\let\urlcolor=\Black % don't print links in grayscale
+\global\let\linkcolor=\Black
 @end tex
 
 @c Combine indices.
@@ -1062,8 +1066,6 @@
 * Format Properties::       Properties for representing formatting of text.
 * Sticky Properties::       How inserted text gets properties from
                               neighboring text.
-* Saving Properties::       Saving text properties in files, and reading
-                              them back.
 * Lazy Properties::         Computing text properties in a lazy fashion
                               only when text is examined.
 * Clickable Text::          Using text properties to make regions of text
--- a/lispref/files.texi	Mon May 14 11:56:47 2007 +0000
+++ b/lispref/files.texi	Tue May 15 07:17:13 2007 +0000
@@ -374,8 +374,7 @@
 @end deffn
 
   Saving a buffer runs several hooks.  It also performs format
-conversion (@pxref{Format Conversion}), and may save text properties in
-``annotations'' (@pxref{Saving Properties}).
+conversion (@pxref{Format Conversion}).
 
 @defvar write-file-functions
 The value of this variable is a list of functions to be called before
@@ -496,9 +495,9 @@
 
 The function @code{insert-file-contents} checks the file contents
 against the defined file formats, and converts the file contents if
-appropriate.  @xref{Format Conversion}.  It also calls the functions in
-the list @code{after-insert-file-functions}; see @ref{Saving
-Properties}.  Normally, one of the functions in the
+appropriate and also calls the functions in
+the list @code{after-insert-file-functions}.  @xref{Format Conversion}.
+Normally, one of the functions in the
 @code{after-insert-file-functions} list determines the coding system
 (@pxref{Coding Systems}) used for decoding the file's contents,
 including end-of-line conversion.
@@ -620,9 +619,10 @@
 @var{filename} and @var{visit} for that purpose.
 
 The function @code{write-region} converts the data which it writes to
-the appropriate file formats specified by @code{buffer-file-format}.
-@xref{Format Conversion}.  It also calls the functions in the list
-@code{write-region-annotate-functions}; see @ref{Saving Properties}.
+the appropriate file formats specified by @code{buffer-file-format}
+and also calls the functions in the list
+@code{write-region-annotate-functions}.
+@xref{Format Conversion}.
 
 Normally, @code{write-region} displays the message @samp{Wrote
 @var{filename}} in the echo area.  If @var{visit} is neither @code{t}
@@ -2802,23 +2802,70 @@
 @cindex file format conversion
 @cindex encoding file formats
 @cindex decoding file formats
-  The variable @code{format-alist} defines a list of @dfn{file formats},
-which describe textual representations used in files for the data (text,
-text-properties, and possibly other information) in an Emacs buffer.
-Emacs performs format conversion if appropriate when reading and writing
-files.
+@cindex text properties in files
+@cindex saving text properties
+  Emacs performs several steps to convert the data in a buffer (text,
+text properties, and possibly other information) to and from a
+representation suitable for storing into a file.  This section describes
+the fundamental functions that perform this @dfn{format conversion},
+namely @code{insert-file-contents} for reading a file into a buffer,
+and @code{write-region} for writing a buffer into a file.
+
+@menu
+* Overview: Format Conversion Overview.     @code{insert-file-contents} and @code{write-region}
+* Round-Trip: Format Conversion Round-Trip. Using @code{format-alist}.
+* Piecemeal: Format Conversion Piecemeal.   Specifying non-paired conversion.
+@end menu
+
+@node Format Conversion Overview
+@subsection Overview
+@noindent
+The function @code{insert-file-contents}:
+
+@itemize
+@item initially, inserts bytes from the file into the buffer;
+@item decodes bytes to characters as appropriate;
+@item processes formats as defined by entries in @code{format-alist}; and
+@item calls functions in @code{after-insert-file-functions}.
+@end itemize
+
+@noindent
+The function @code{write-region}:
+
+@itemize
+@item initially, calls functions in @code{write-region-annotate-functions};
+@item processes formats as defined by entries in @code{format-alist};
+@item encodes characters to bytes as appropriate; and
+@item modifies the file with the bytes.
+@end itemize
+
+  This shows the symmetry of the lowest-level operations; reading and
+writing handle things in opposite order.  The rest of this section
+describes the two facilities surrounding the three variables named
+above, as well as some related functions.  @ref{Coding Systems}, for
+details on character encoding and decoding.
+
+@node Format Conversion Round-Trip
+@subsection Round-Trip Specification
+
+  The most general of the two facilities is controlled by the variable
+@code{format-alist}, a list of @dfn{file format} specifications, which
+describe textual representations used in files for the data in an Emacs
+buffer.  The descriptions for reading and writing are paired, which is
+why we call this ``round-trip'' specification
+(@pxref{Format Conversion Piecemeal}, for non-paired specification).
 
 @defvar format-alist
 This list contains one format definition for each defined file format.
-@end defvar
-
-@cindex format definition
 Each format definition is a list of this form:
 
 @example
 (@var{name} @var{doc-string} @var{regexp} @var{from-fn} @var{to-fn} @var{modify} @var{mode-fn})
 @end example
-
+@end defvar
+
+@cindex format definition
+@noindent
 Here is what the elements in a format definition mean:
 
 @table @var
@@ -2856,9 +2903,10 @@
 If @var{to-fn} is a string, it is a shell command; Emacs runs the
 command as a filter to perform the conversion.
 
-If @var{to-fn} is a function, it is called with two arguments, @var{begin}
-and @var{end}, which specify the part of the buffer it should convert.
-There are two ways it can do the conversion:
+If @var{to-fn} is a function, it is called with three arguments:
+@var{begin} and @var{end}, which specify the part of the buffer it
+should convert, and @var{buffer}, which specifies which buffer.  There
+are two ways it can do the conversion:
 
 @itemize @bullet
 @item
@@ -2956,6 +3004,89 @@
 in all buffers.
 @end defvar
 
+@node Format Conversion Piecemeal
+@subsection Piecemeal Specification
+
+  In contrast to the round-trip specification described in the previous
+subsection (@pxref{Format Conversion Round-Trip}), you can use the variables
+@code{after-insert-file-functions} and @code{write-region-annotate-functions}
+to separately control the respective reading and writing conversions.
+
+  Conversion starts with one representation and produces another
+representation.  When there is only one conversion to do, there is no
+conflict about what to start with.  However, when there are multiple
+conversions involved, conflict may arise when two conversions need to
+start with the same data.
+
+  This situation is best understood in the context of converting text
+properties during @code{write-region}.  For example, the character at
+position 42 in a buffer is @samp{X} with a text property @code{foo}.  If
+the conversion for @code{foo} is done by inserting into the buffer, say,
+@samp{FOO:}, then that changes the character at position 42 from
+@samp{X} to @samp{F}.  The next conversion will start with the wrong
+data straight away.
+
+  To avoid conflict, cooperative conversions do not modify the buffer,
+but instead specify @dfn{annotations}, a list of elements of the form
+@code{(@var{position} . @var{string})}, sorted in order of increasing
+@var{position}.
+
+  If there is more than one conversion, @code{write-region} merges their
+annotations destructively into one sorted list.  Later, when the text
+from the buffer is actually written to the file, it intermixes the
+specified annotations at the corresponding positions.  All this takes
+place without modifying the buffer.
+
+@c ??? What about ``overriding'' conversions like those allowed
+@c ??? for `write-region-annotate-functions', below?  --ttn
+
+  In contrast, when reading, the annotations intermixed with the text
+are handled immediately.  @code{insert-file-contents} sets point to the
+beginning of some text to be converted, then calls the conversion
+functions with the length of that text.  These functions should always
+return with point at the beginning of the inserted text.  This approach
+makes sense for reading because annotations removed by the first
+converter can't be mistakenly processed by a later converter.
+
+  Each conversion function should scan for the annotations it
+recognizes, remove the annotation, modify the buffer text (to set a text
+property, for example), and return the updated length of the text, as it
+stands after those changes.  The value returned by one function becomes
+the argument to the next function.
+
+@defvar write-region-annotate-functions
+A list of functions for @code{write-region} to call.  Each function in
+the list is called with two arguments: the start and end of the region
+to be written.  These functions should not alter the contents of the
+buffer.  Instead, they should return annotations.
+
+@c ??? Following adapted from comment in `build_annotations' (fileio.c).
+@c ??? Perhaps this is intended for internal use only?
+@c ??? Someone who understands this, please reword it. --ttn
+As a special case, if a function returns with a different buffer
+current, Emacs takes it to mean the current buffer contains altered text
+to be output, and discards all previous annotations because they should
+have been dealt with by this function.
+@end defvar
+
+@defvar after-insert-file-functions
+Each function in this list is called by @code{insert-file-contents}
+with one argument, the number of characters inserted, and should
+return the new character count, leaving point the same.
+@c ??? The docstring mentions a handler from `file-name-handler-alist'
+@c     "intercepting" `insert-file-contents'.  Hmmm.  --ttn
+@end defvar
+
+  We invite users to write Lisp programs to store and retrieve text
+properties in files, using these hooks, and thus to experiment with
+various data formats and find good ones.  Eventually we hope users
+will produce good, general extensions we can install in Emacs.
+
+  We suggest not trying to handle arbitrary Lisp objects as text property
+names or values---because a program that general is probably difficult
+to write, and slow.  Instead, choose a set of possible data types that
+are reasonably flexible, and not too hard to encode.
+
 @ignore
    arch-tag: 141f74ce-6ae3-40dc-a6c4-ef83fc4ec35c
 @end ignore
--- a/lispref/help.texi	Mon May 14 11:56:47 2007 +0000
+++ b/lispref/help.texi	Tue May 15 07:17:13 2007 +0000
@@ -384,6 +384,10 @@
 @end group
 @end smallexample
 
+  There are other special conventions for the text in documentation
+strings---for instance, you can refer to functions, variables, and
+sections of this manual.  @xref{Documentation Tips}, for details.
+
 @node Describing Characters
 @section Describing Characters for Help Messages
 @cindex describe characters and events
--- a/lispref/hooks.texi	Mon May 14 11:56:47 2007 +0000
+++ b/lispref/hooks.texi	Tue May 15 07:17:13 2007 +0000
@@ -48,7 +48,7 @@
 @xref{Init File}.
 
 @item after-insert-file-functions
-@xref{Saving Properties}.
+@xref{Format Conversion}.
 
 @item after-make-frame-functions
 @xref{Creating Frames}.
@@ -330,7 +330,7 @@
 @xref{Saving Buffers}.
 
 @item write-region-annotate-functions
-@xref{Saving Properties}.
+@xref{Format Conversion}.
 @end table
 
 @ignore
--- a/lispref/keymaps.texi	Mon May 14 11:56:47 2007 +0000
+++ b/lispref/keymaps.texi	Tue May 15 07:17:13 2007 +0000
@@ -1895,7 +1895,8 @@
 @smallexample
 @group
 (where-is-internal 'describe-function)
-    @result{} ("\^hf" "\^hd")
+    @result{} ([8 102] [f1 102] [help 102]
+         [menu-bar help-menu describe describe-function])
 @end group
 @end smallexample
 @end defun
--- a/lispref/modes.texi	Mon May 14 11:56:47 2007 +0000
+++ b/lispref/modes.texi	Tue May 15 07:17:13 2007 +0000
@@ -616,6 +616,11 @@
 @code{auto-mode-alist} gets to decide the mode.
 @end defvar
 
+@defvar file-start-mode-alist
+This works like @code{magic-mode-alist}, except that it is handled
+only if @code{auto-mode-alist} does not specify a mode for this file.
+@end defvar
+
 @defvar auto-mode-alist
 This variable contains an association list of file name patterns
 (regular expressions) and corresponding major mode commands.  Usually,
@@ -951,7 +956,11 @@
 @end group
 @end smallexample
 
-  But here is how it was defined formerly, before
+@noindent
+(The last line is redundant nowadays, since @code{indent-relative} is
+the default value, and we'll delete it in a future version.)
+
+  Here is how it was defined formerly, before
 @code{define-derived-mode} existed:
 
 @smallexample
--- a/lispref/processes.texi	Mon May 14 11:56:47 2007 +0000
+++ b/lispref/processes.texi	Tue May 15 07:17:13 2007 +0000
@@ -1307,13 +1307,13 @@
 periods.  The former specifies a period measured in seconds and the
 latter specifies one measured in milliseconds.  The two time periods
 thus specified are added together, and @code{accept-process-output}
-returns after that much time whether or not there has been any
+returns after that much time, whether or not there has been any
 subprocess output.
-
-The argument @var{seconds} need not be an integer.  If it is a floating
-point number, this function waits for a fractional number of seconds.
-If @var{seconds} is 0, the function accepts whatever output is
-pending but does not wait.
+  
+The argument @var{millisec} is semi-obsolete nowadays because
+@var{seconds} can be a floating point number to specify waiting a
+fractional number of seconds.  If @var{seconds} is 0, the function
+accepts whatever output is pending but does not wait.
 
 @c Emacs 22.1 feature
 If @var{process} is a process, and the argument @var{just-this-one} is
--- a/lispref/text.texi	Mon May 14 11:56:47 2007 +0000
+++ b/lispref/text.texi	Tue May 15 07:17:13 2007 +0000
@@ -1655,11 +1655,10 @@
 @end defun
 
 @defun indent-to-left-margin
-This is the default @code{indent-line-function}, used in Fundamental
-mode, Text mode, etc.  Its effect is to adjust the indentation at the
-beginning of the current line to the value specified by the variable
-@code{left-margin}.  This may involve either inserting or deleting
-whitespace.
+This function adjusts the indentation at the beginning of the current
+line to the value specified by the variable @code{left-margin}.  (That
+may involve either inserting or deleting whitespace.)  This function
+is value of @code{indent-line-function} in Paragraph-Indent Text mode.
 @end defun
 
 @defvar left-margin
@@ -2199,9 +2198,7 @@
 
 In Lisp mode, the value is the symbol @code{lisp-indent-line}; in C
 mode, @code{c-indent-line}; in Fortran mode, @code{fortran-indent-line}.
-In Fundamental mode, Text mode, and many other modes with no standard
-for indentation, the value is @code{indent-to-left-margin} (which is the
-default value).
+The default value is @code{indent-relative}.
 @end defvar
 
 @deffn Command indent-according-to-mode
@@ -2577,8 +2574,6 @@
 * Format Properties::      Properties for representing formatting of text.
 * Sticky Properties::      How inserted text gets properties from
                              neighboring text.
-* Saving Properties::      Saving text properties in files, and reading
-                             them back.
 * Lazy Properties::        Computing text properties in a lazy fashion
                              only when text is examined.
 * Clickable Text::         Using text properties to make regions of text
@@ -3399,75 +3394,6 @@
   @xref{Insertion}, for the ordinary insertion functions which do not
 inherit.
 
-@node Saving Properties
-@subsection Saving Text Properties in Files
-@cindex text properties in files
-@cindex saving text properties
-
-  You can save text properties in files (along with the text itself),
-and restore the same text properties when visiting or inserting the
-files, using these two hooks:
-
-@defvar write-region-annotate-functions
-This variable's value is a list of functions for @code{write-region} to
-run to encode text properties in some fashion as annotations to the text
-being written in the file.  @xref{Writing to Files}.
-
-Each function in the list is called with two arguments: the start and
-end of the region to be written.  These functions should not alter the
-contents of the buffer.  Instead, they should return lists indicating
-annotations to write in the file in addition to the text in the
-buffer.
-
-Each function should return a list of elements of the form
-@code{(@var{position} . @var{string})}, where @var{position} is an
-integer specifying the relative position within the text to be written,
-and @var{string} is the annotation to add there.
-
-Each list returned by one of these functions must be already sorted in
-increasing order by @var{position}.  If there is more than one function,
-@code{write-region} merges the lists destructively into one sorted list.
-
-When @code{write-region} actually writes the text from the buffer to the
-file, it intermixes the specified annotations at the corresponding
-positions.  All this takes place without modifying the buffer.
-@end defvar
-
-@defvar after-insert-file-functions
-This variable holds a list of functions for @code{insert-file-contents}
-to call after inserting a file's contents.  These functions should scan
-the inserted text for annotations, and convert them to the text
-properties they stand for.
-
-Each function receives one argument, the length of the inserted text;
-point indicates the start of that text.  The function should scan that
-text for annotations, delete them, and create the text properties that
-the annotations specify.  The function should return the updated length
-of the inserted text, as it stands after those changes.  The value
-returned by one function becomes the argument to the next function.
-
-These functions should always return with point at the beginning of
-the inserted text.
-
-The intended use of @code{after-insert-file-functions} is for converting
-some sort of textual annotations into actual text properties.  But other
-uses may be possible.
-@end defvar
-
-We invite users to write Lisp programs to store and retrieve text
-properties in files, using these hooks, and thus to experiment with
-various data formats and find good ones.  Eventually we hope users
-will produce good, general extensions we can install in Emacs.
-
-We suggest not trying to handle arbitrary Lisp objects as text property
-names or values---because a program that general is probably difficult
-to write, and slow.  Instead, choose a set of possible data types that
-are reasonably flexible, and not too hard to encode.
-
-@xref{Format Conversion}, for a related feature.
-
-@c ??? In next edition, merge this info Format Conversion.
-
 @node Lazy Properties
 @subsection Lazy Computation of Text Properties
 
--- a/lispref/tips.texi	Mon May 14 11:56:47 2007 +0000
+++ b/lispref/tips.texi	Tue May 15 07:17:13 2007 +0000
@@ -648,6 +648,12 @@
 variable.  Please use complete sentences for the rest of the text too.
 
 @item
+When the user tries to use a disabled command, Emacs displays just the
+first paragraph of its documentation string---everything through the
+first blank line.  If you wish, you can choose which information to
+include before the first blank line so as to make this display useful.
+
+@item
 The first line should mention all the important arguments of the
 function, and should mention them in the order that they are written
 in a function call.  If the function has many arguments, then it is
@@ -656,69 +662,6 @@
 important arguments.
 
 @item
-For consistency, phrase the verb in the first sentence of a function's
-documentation string as an imperative---for instance, use ``Return the
-cons of A and B.'' in preference to ``Returns the cons of A and B@.''
-Usually it looks good to do likewise for the rest of the first
-paragraph.  Subsequent paragraphs usually look better if each sentence
-is indicative and has a proper subject.
-
-@item
-Write documentation strings in the active voice, not the passive, and in
-the present tense, not the future.  For instance, use ``Return a list
-containing A and B.'' instead of ``A list containing A and B will be
-returned.''
-
-@item
-Avoid using the word ``cause'' (or its equivalents) unnecessarily.
-Instead of, ``Cause Emacs to display text in boldface,'' write just
-``Display text in boldface.''
-
-@item
-When a command is meaningful only in a certain mode or situation,
-do mention that in the documentation string.  For example,
-the documentation of @code{dired-find-file} is:
-
-@example
-In Dired, visit the file or directory named on this line.
-@end example
-
-@item
-Do not start or end a documentation string with whitespace.
-
-@item
-@strong{Do not} indent subsequent lines of a documentation string so
-that the text is lined up in the source code with the text of the first
-line.  This looks nice in the source code, but looks bizarre when users
-view the documentation.  Remember that the indentation before the
-starting double-quote is not part of the string!
-
-@item
-When the user tries to use a disabled command, Emacs displays just the
-first paragraph of its documentation string---everything through the
-first blank line.  If you wish, you can choose which information to
-include before the first blank line so as to make this display useful.
-
-@item
-When you define a variable that users ought to set interactively, you
-normally should use @code{defcustom}.  However, if for some reason you
-use @code{defvar} instead, start the doc string with a @samp{*}.
-@xref{Defining Variables}.
-
-@item
-The documentation string for a variable that is a yes-or-no flag should
-start with words such as ``Non-nil means,'' to make it clear that
-all non-@code{nil} values are equivalent and indicate explicitly what
-@code{nil} and non-@code{nil} mean.
-
-@item
-The documentation string for a function that is a yes-or-no predicate
-should start with words such as ``Return t if,'' to indicate
-explicitly what constitutes ``truth.''  The word ``return'' avoids
-starting the sentence with lower-case ``t,'' which could be somewhat
-distracting.
-
-@item
 When a function's documentation string mentions the value of an argument
 of the function, use the argument name in capital letters as if it were
 a name for that value.  Thus, the documentation string of the function
@@ -754,16 +697,14 @@
 is not at the start of it.
 
 @item
-If a line in a documentation string begins with an open-parenthesis,
-write a backslash before the open-parenthesis, like this:
+Do not start or end a documentation string with whitespace.
 
-@example
-The argument FOO can be either a number
-\(a buffer position) or a string (a file name).
-@end example
-
-This prevents the open-parenthesis from being treated as the start of a
-defun (@pxref{Defuns,, Defuns, emacs, The GNU Emacs Manual}).
+@item
+@strong{Do not} indent subsequent lines of a documentation string so
+that the text is lined up in the source code with the text of the first
+line.  This looks nice in the source code, but looks bizarre when users
+view the documentation.  Remember that the indentation before the
+starting double-quote is not part of the string!
 
 @anchor{Docstring hyperlinks}
 @item
@@ -781,6 +722,7 @@
 convention, with single-quotes for all symbols.)
 @end ifnottex
 
+@cindex hyperlinks in documentation strings
 Help mode automatically creates a hyperlink when a documentation string
 uses a symbol name inside single quotes, if the symbol has either a
 function or a variable definition.  You do not need to do anything
@@ -863,6 +805,65 @@
 display of the documentation string will become slow.  So use this to
 describe the most important commands in your major mode, and then use
 @samp{\\@{@dots{}@}} to display the rest of the mode's keymap.
+
+@item
+For consistency, phrase the verb in the first sentence of a function's
+documentation string as an imperative---for instance, use ``Return the
+cons of A and B.'' in preference to ``Returns the cons of A and B@.''
+Usually it looks good to do likewise for the rest of the first
+paragraph.  Subsequent paragraphs usually look better if each sentence
+is indicative and has a proper subject.
+
+@item
+The documentation string for a function that is a yes-or-no predicate
+should start with words such as ``Return t if,'' to indicate
+explicitly what constitutes ``truth.''  The word ``return'' avoids
+starting the sentence with lower-case ``t,'' which could be somewhat
+distracting.
+
+@item
+If a line in a documentation string begins with an open-parenthesis,
+write a backslash before the open-parenthesis, like this:
+
+@example
+The argument FOO can be either a number
+\(a buffer position) or a string (a file name).
+@end example
+
+This prevents the open-parenthesis from being treated as the start of a
+defun (@pxref{Defuns,, Defuns, emacs, The GNU Emacs Manual}).
+
+@item
+Write documentation strings in the active voice, not the passive, and in
+the present tense, not the future.  For instance, use ``Return a list
+containing A and B.'' instead of ``A list containing A and B will be
+returned.''
+
+@item
+Avoid using the word ``cause'' (or its equivalents) unnecessarily.
+Instead of, ``Cause Emacs to display text in boldface,'' write just
+``Display text in boldface.''
+
+@item
+When a command is meaningful only in a certain mode or situation,
+do mention that in the documentation string.  For example,
+the documentation of @code{dired-find-file} is:
+
+@example
+In Dired, visit the file or directory named on this line.
+@end example
+
+@item
+When you define a variable that users ought to set interactively, you
+normally should use @code{defcustom}.  However, if for some reason you
+use @code{defvar} instead, start the doc string with a @samp{*}.
+@xref{Defining Variables}.
+
+@item
+The documentation string for a variable that is a yes-or-no flag should
+start with words such as ``Non-nil means,'' to make it clear that
+all non-@code{nil} values are equivalent and indicate explicitly what
+@code{nil} and non-@code{nil} mean.
 @end itemize
 
 @node Comment Tips
--- a/man/.cvsignore	Mon May 14 11:56:47 2007 +0000
+++ b/man/.cvsignore	Tue May 15 07:17:13 2007 +0000
@@ -9,6 +9,7 @@
 *.log
 *.op
 *.ops
+*.pdf
 *.pg
 *.pgs
 *.ps
--- a/man/ChangeLog	Mon May 14 11:56:47 2007 +0000
+++ b/man/ChangeLog	Tue May 15 07:17:13 2007 +0000
@@ -1,3 +1,44 @@
+2007-05-09  Reiner Steib  <Reiner.Steib@gmx.de>
+
+	* gnus.texi (Running NNDiary): Use ~/.gnus.el instead of gnusrc.
+
+2007-05-09  Didier Verna  <didier@xemacs.org>
+
+	* gnus.texi (Email Based Diary): New. Proper documentation for the
+	nndiary back end and the gnus-diary library.
+
+2007-05-07  Karl Berry  <karl@gnu.org>
+
+	* emacs.texi (EMACSVER): back to 22.
+
+2007-05-06  Richard Stallman  <rms@gnu.org>
+
+	* maintaining.texi (Create Tags Table): Clean up previous change.
+
+2007-05-05  Francesco Potort,Al(B  <pot@gnu.org>
+
+	* maintaining.texi (Create Tags Table): Add text about the dangers of
+	making symbolic links to tags files.
+
+2007-05-04  Karl Berry  <karl@gnu.org>
+
+	* emacs.texi (EMACSVER) [smallbook]: 22.1 for printed version, not 22.
+
+2007-05-03  Karl Berry  <karl@gnu.org>
+
+	* emacs.texi (EMACSVER) [smallbook]: 22 for printed version.
+
+	* .cvsignore (*.pdf): new entry.
+
+	* texinfo.tex: update from current version for better pdf generation.
+
+	* emacs.texi (\urlcolor, \linkcolor) [smallbook]: \let to \Black
+	for printing.
+
+2007-05-01  Richard Stallman  <rms@gnu.org>
+
+	* cmdargs.texi (Initial Options): Under --batch, mention --eval.
+
 2007-04-30  Reiner Steib  <Reiner.Steib@gmx.de>
 
 	* gnus.texi (Article Highlighting): Clarify gnus-cite-parse-max-size.
@@ -58,8 +99,8 @@
 	* misc.texi (Thumbnails): Node deleted.
 	* emacs.texi (Top): Update node listing.
 
-	* files.texi (File Conveniences): 
-	* ack.texi (Acknowledgments): 
+	* files.texi (File Conveniences):
+	* ack.texi (Acknowledgments):
 	* faq.texi (New in Emacs 22): Rename "tumme" to "image-dired".
 
 2007-04-21  Richard Stallman  <rms@gnu.org>
--- a/man/cmdargs.texi	Mon May 14 11:56:47 2007 +0000
+++ b/man/cmdargs.texi	Tue May 15 07:17:13 2007 +0000
@@ -215,8 +215,8 @@
 @itemx --batch
 Run Emacs in @dfn{batch mode}.  Batch mode is used for running
 programs written in Emacs Lisp from shell scripts, makefiles, and so
-on.  You should also use the @samp{-l} option or @samp{-f} option, to
-invoke a Lisp program to do batch processing.
+on.  You should also use the @samp{-l}, @samp{-f} or @samp{--eval}
+option, to invoke a Lisp program to do batch processing.
 
 In batch mode, Emacs does not display the text being edited, and the
 standard terminal interrupt characters such as @kbd{C-z} and @kbd{C-c}
--- a/man/emacs.texi	Mon May 14 11:56:47 2007 +0000
+++ b/man/emacs.texi	Tue May 15 07:17:13 2007 +0000
@@ -46,11 +46,14 @@
 @end ifset
 
 @c per rms and peterb, use 10pt fonts for the main text, mostly to
-@c save on paper cost.  Also do not declare @setchapternewpage odd.
+@c save on paper cost.
 @c Do this inside @tex for now, so current makeinfo does not complain.
 @tex
 @ifset smallbook
 @fonttextsize 10
+@set EMACSVER 22
+\global\let\urlcolor=\Black % don't print links in grayscale
+\global\let\linkcolor=\Black
 @end ifset
 \global\hbadness=6666 % don't worry about not-too-underfull boxes
 @end tex
--- a/man/gnus.texi	Mon May 14 11:56:47 2007 +0000
+++ b/man/gnus.texi	Tue May 15 07:17:13 2007 +0000
@@ -623,6 +623,7 @@
 * IMAP::                        Using Gnus as a @acronym{IMAP} client.
 * Other Sources::               Reading directories, files, SOUP packets.
 * Combined Groups::             Combining groups into one group.
+* Email Based Diary::           Using mails to manage diary events in Gnus.
 * Gnus Unplugged::              Reading news and mail offline.
 
 Server Buffer
@@ -720,6 +721,25 @@
 * Virtual Groups::              Combining articles from many groups.
 * Kibozed Groups::              Looking through parts of the newsfeed for articles.
 
+Email Based Diary
+
+* The NNDiary Back End::        Basic setup and usage.
+* The Gnus Diary Library::      Utility toolkit on top of nndiary.
+* Sending or Not Sending::      A final note on sending diary messages.
+
+The NNDiary Back End
+
+* Diary Messages::              What makes a message valid for nndiary.
+* Running NNDiary::             NNDiary has two modes of operation.
+* Customizing NNDiary::         Bells and whistles.
+
+The Gnus Diary Library
+
+* Diary Summary Line Format::           A nicer summary buffer line format.
+* Diary Articles Sorting::              A nicer way to sort messages.
+* Diary Headers Generation::            Not doing it manually.
+* Diary Group Parameters::              Not handling them manually.
+
 Gnus Unplugged
 
 * Agent Basics::                How it all is supposed to work.
@@ -12343,6 +12363,7 @@
 * IMAP::                        Using Gnus as a @acronym{IMAP} client.
 * Other Sources::               Reading directories, files, SOUP packets.
 * Combined Groups::             Combining groups into one group.
+* Email Based Diary::           Using mails to manage diary events in Gnus.
 * Gnus Unplugged::              Reading news and mail offline.
 @end menu
 
@@ -17878,6 +17899,381 @@
 their @acronym{NOV} lines removed from the @acronym{NOV} file.
 
 
+@node Email Based Diary
+@section Email Based Diary
+@cindex diary
+@cindex email based diary
+@cindex calendar
+
+This section describes a special mail back end called @code{nndiary},
+and its companion library @code{gnus-diary}.  It is ``special'' in the
+sense that it is not meant to be one of the standard alternatives for
+reading mail with Gnus.  See @ref{Choosing a Mail Back End} for that.
+Instead, it is used to treat @emph{some} of your mails in a special way,
+namely, as event reminders.
+
+Here is a typical scenario:
+
+@itemize @bullet
+@item
+You've got a date with Andy Mc Dowell or Bruce Willis (select according
+to your sexual preference) in one month.  You don't want to forget it.
+@item
+So you send a ``reminder'' message (actually, a diary one) to yourself.
+@item
+You forget all about it and keep on getting and reading new mail, as usual.
+@item
+From time to time, as you type `g' in the group buffer and as the date
+is getting closer, the message will pop up again to remind you of your
+appointment, just as if it were new and unread.
+@item
+Read your ``new'' messages, this one included, and start dreaming again
+of the night you're gonna have.
+@item
+Once the date is over (you actually fell asleep just after dinner), the
+message will be automatically deleted if it is marked as expirable.
+@end itemize
+
+The Gnus Diary back end has the ability to handle regular appointments
+(that wouldn't ever be deleted) as well as punctual ones, operates as a
+real mail back end and is configurable in many ways.  All of this is
+explained in the sections below.
+
+@menu
+* The NNDiary Back End::        Basic setup and usage.
+* The Gnus Diary Library::      Utility toolkit on top of nndiary.
+* Sending or Not Sending::      A final note on sending diary messages.
+@end menu
+
+
+@node The NNDiary Back End
+@subsection The NNDiary Back End
+@cindex nndiary
+@cindex the nndiary back end
+
+@code{nndiary} is a back end very similar to @code{nnml} (@pxref{Mail
+Spool}).  Actually, it could appear as a mix of @code{nnml} and
+@code{nndraft}.  If you know @code{nnml}, you're already familiar with
+the message storing scheme of @code{nndiary}: one file per message, one
+directory per group.
+
+  Before anything, there is one requirement to be able to run
+@code{nndiary} properly: you @emph{must} use the group timestamp feature
+of Gnus.  This adds a timestamp to each group's parameters.  @ref{Group
+Timestamp} to see how it's done.
+
+@menu
+* Diary Messages::              What makes a message valid for nndiary.
+* Running NNDiary::             NNDiary has two modes of operation.
+* Customizing NNDiary::         Bells and whistles.
+@end menu
+
+@node Diary Messages
+@subsubsection Diary Messages
+@cindex nndiary messages
+@cindex nndiary mails
+
+@code{nndiary} messages are just normal ones, except for the mandatory
+presence of 7 special headers.  These headers are of the form
+@code{X-Diary-<something>}, @code{<something>} being one of
+@code{Minute}, @code{Hour}, @code{Dom}, @code{Month}, @code{Year},
+@code{Time-Zone} and @code{Dow}.  @code{Dom} means ``Day of Month'', and
+@code{dow} means ``Day of Week''.  These headers actually behave like
+crontab specifications and define the event date(s):
+
+@itemize @bullet
+@item
+For all headers except the @code{Time-Zone} one, a header value is
+either a star (meaning all possible values), or a list of fields
+(separated by a comma).
+@item
+A field is either an integer, or a range.
+@item
+A range is two integers separated by a dash.
+@item
+Possible integer values are 0--59 for @code{Minute}, 0--23 for
+@code{Hour}, 1--31 for @code{Dom}, 1--12 for @code{Month}, above 1971
+for @code{Year} and 0--6 for @code{Dow} (0 meaning Sunday).
+@item
+As a special case, a star in either @code{Dom} or @code{Dow} doesn't
+mean ``all possible values'', but ``use only the other field''.  Note
+that if both are star'ed, the use of either one gives the same result.
+@item
+The @code{Time-Zone} header is special in that it can only have one
+value (@code{GMT}, for instance).  A star doesn't mean ``all possible
+values'' (because it makes no sense), but ``the current local time
+zone''.  Most of the time, you'll be using a star here.  However, for a
+list of available time zone values, see the variable
+@code{nndiary-headers}.
+@end itemize
+
+As a concrete example, here are the diary headers to add to your message
+for specifying ``Each Monday and each 1st of month, at 12:00, 20:00,
+21:00, 22:00, 23:00 and 24:00, from 1999 to 2010'' (I'll let you find
+what to do then):
+
+@example
+X-Diary-Minute: 0
+X-Diary-Hour: 12, 20-24
+X-Diary-Dom: 1
+X-Diary-Month: *
+X-Diary-Year: 1999-2010
+X-Diary-Dow: 1
+X-Diary-Time-Zone: *
+@end example
+
+@node Running NNDiary
+@subsubsection Running NNDiary
+@cindex running nndiary
+@cindex nndiary operation modes
+
+@code{nndiary} has two modes of operation: ``traditional'' (the default)
+and ``autonomous''.  In traditional mode, @code{nndiary} does not get new
+mail by itself.  You have to move (@kbd{B m}) or copy (@kbd{B c}) mails
+from your primary mail back end to nndiary groups in order to handle them
+as diary messages.  In autonomous mode, @code{nndiary} retrieves its own
+mail and handles it independently from your primary mail back end.
+
+One should note that Gnus is not inherently designed to allow several
+``master'' mail back ends at the same time.  However, this does make
+sense with @code{nndiary}: you really want to send and receive diary
+messages to your diary groups directly.  So, @code{nndiary} supports
+being sort of a ``second primary mail back end'' (to my knowledge, it is
+the only back end offering this feature).  However, there is a limitation
+(which I hope to fix some day): respooling doesn't work in autonomous
+mode.
+
+In order to use @code{nndiary} in autonomous mode, you have several
+things to do:
+
+@itemize @bullet
+@item
+Allow @code{nndiary} to retrieve new mail by itself.  Put the following
+line in your @file{~/.gnus.el} file:
+
+@lisp
+(setq nndiary-get-new-mail t)
+@end lisp
+@item
+You must arrange for diary messages (those containing @code{X-Diary-*}
+headers) to be split in a private folder @emph{before} Gnus treat them.
+Again, this is needed because Gnus cannot (yet ?) properly handle
+multiple primary mail back ends.  Getting those messages from a separate
+source will compensate this misfeature to some extent.
+
+As an example, here's my procmailrc entry to store diary files in
+@file{~/.nndiary} (the default @code{nndiary} mail source file):
+
+@example
+:0 HD :
+* ^X-Diary
+.nndiary
+@end example
+@end itemize
+
+Once this is done, you might want to customize the following two options
+that affect the diary mail retrieval and splitting processes:
+
+@defvar nndiary-mail-sources
+This is the diary-specific replacement for the standard
+@code{mail-sources} variable.  It obeys the same syntax, and defaults to
+@code{(file :path "~/.nndiary")}.
+@end defvar
+
+@defvar nndiary-split-methods
+This is the diary-specific replacement for the standard
+@code{nnmail-split-methods} variable.  It obeys the same syntax.
+@end defvar
+
+  Finally, you may add a permanent @code{nndiary} virtual server
+(something like @code{(nndiary "diary")} should do) to your
+@code{gnus-secondary-select-methods}.
+
+  Hopefully, almost everything (see the TODO section in
+@file{nndiary.el}) will work as expected when you restart Gnus: in
+autonomous mode, typing @kbd{g} and @kbd{M-g} in the group buffer, will
+also get your new diary mails and split them according to your
+diary-specific rules, @kbd{F} will find your new diary groups etc.
+
+@node Customizing NNDiary
+@subsubsection Customizing NNDiary
+@cindex customizing nndiary
+@cindex nndiary customization
+
+Now that @code{nndiary} is up and running, it's time to customize it.
+The custom group is called @code{nndiary} (no, really ?!).  You should
+browse it to figure out which options you'd like to tweak.  The following
+two variables are probably the only ones you will want to change:
+
+@defvar nndiary-reminders
+This is the list of times when you want to be reminded of your
+appointements (e.g. 3 weeks before, then 2 days before, then 1 hour
+before and that's it).  Remember that ``being reminded'' means that the
+diary message will pop up as brand new and unread again when you get new
+mail.
+@end defvar
+
+@defvar nndiary-week-starts-on-monday
+Rather self-explanatory.  Otherwise, Sunday is assumed (this is the
+default).
+@end defvar
+
+
+@node The Gnus Diary Library
+@subsection The Gnus Diary Library
+@cindex gnus-diary
+@cindex the gnus diary library
+
+Using @code{nndiary} manually (I mean, writing the headers by hand and
+so on) would be rather boring.  Fortunately, there is a library called
+@code{gnus-diary} written on top of @code{nndiary}, that does many
+useful things for you.
+
+  In order to use it, add the following line to your @file{~/.gnus.el} file:
+
+@lisp
+(require 'gnus-diary)
+@end lisp
+
+  Also, you shouldn't use any @code{gnus-user-format-function-[d|D]}
+(@pxref{Summary Buffer Lines}).  @code{gnus-diary} provides both of these
+(sorry if you used them before).
+
+
+@menu
+* Diary Summary Line Format::           A nicer summary buffer line format.
+* Diary Articles Sorting::              A nicer way to sort messages.
+* Diary Headers Generation::            Not doing it manually.
+* Diary Group Parameters::              Not handling them manually.
+@end menu
+
+@node Diary Summary Line Format
+@subsubsection Diary Summary Line Format
+@cindex diary summary buffer line
+@cindex diary summary line format
+
+Displaying diary messages in standard summary line format (usually
+something like @samp{From Joe: Subject}) is pretty useless.  Most of
+the time, you're the one who wrote the message, and you mostly want to
+see the event's date.
+
+  @code{gnus-diary} provides two supplemental user formats to be used in
+summary line formats.  @code{D} corresponds to a formatted time string
+for the next occurrence of the event (e.g. ``Sat, Sep 22 01, 12:00''),
+while @code{d} corresponds to an approximative remaining time until the
+next occurrence of the event (e.g. ``in 6 months, 1 week'').
+
+  For example, here's how Joe's birthday is displayed in my
+@code{nndiary+diary:birthdays} summary buffer (note that the message is
+expirable, but will never be deleted, as it specifies a periodic event):
+
+@example
+   E  Sat, Sep 22 01, 12:00: Joe's birthday (in 6 months, 1 week)
+@end example
+
+In order to get something like the above, you would normally add the
+following line to your diary groups'parameters:
+
+@lisp
+(gnus-summary-line-format "%U%R%z %uD: %(%s%) (%ud)\n")
+@end lisp
+
+However, @code{gnus-diary} does it automatically (@pxref{Diary Group
+Parameters}).  You can however customize the provided summary line format
+with the following user options:
+
+@defvar gnus-diary-summary-line-format
+Defines the summary line format used for diary groups (@pxref{Summary
+Buffer Lines}).  @code{gnus-diary} uses it to automatically update the
+diary groups'parameters.
+@end defvar
+
+@defvar gnus-diary-time-format
+Defines the format to display dates in diary summary buffers.  This is
+used by the @code{D} user format.  See the docstring for details.
+@end defvar
+
+@defvar gnus-diary-delay-format-function
+Defines the format function to use for displaying delays (remaining
+times) in diary summary buffers.  This is used by the @code{d} user
+format.  There are currently built-in functions for English and French;
+you can also define your own.  See the docstring for details.
+@end defvar
+
+@node Diary Articles Sorting
+@subsubsection Diary Articles Sorting
+@cindex diary articles sorting
+@cindex diary summary lines sorting
+@findex gnus-summary-sort-by-schedule
+@findex gnus-thread-sort-by-schedule
+@findex gnus-article-sort-by-schedule
+
+@code{gnus-diary} provides new sorting functions (@pxref{Sorting the
+Summary Buffer} ) called @code{gnus-summary-sort-by-schedule},
+@code{gnus-thread-sort-by-schedule} and
+@code{gnus-article-sort-by-schedule}.  These functions let you organize
+your diary summary buffers from the closest event to the farthest one.
+
+@code{gnus-diary} automatically installs
+@code{gnus-summary-sort-by-schedule} as a menu item in the summary
+buffer's ``sort'' menu, and the two others as the primary (hence
+default) sorting functions in the group parameters (@pxref{Diary Group
+Parameters}).
+
+@node Diary Headers Generation
+@subsubsection Diary Headers Generation
+@cindex diary headers generation
+@findex gnus-diary-check-message
+
+@code{gnus-diary} provides a function called
+@code{gnus-diary-check-message} to help you handle the @code{X-Diary-*}
+headers.  This function ensures that the current message contains all the
+required diary headers, and prompts you for values or corrections if
+needed.
+
+  This function is hooked into the @code{nndiary} back end, so that
+moving or copying an article to a diary group will trigger it
+automatically.  It is also bound to @kbd{C-c D c} in @code{message-mode}
+and @code{article-edit-mode} in order to ease the process of converting
+a usual mail to a diary one.
+
+  This function takes a prefix argument which will force prompting of
+all diary headers, regardless of their presence or validity.  That way,
+you can very easily reschedule an already valid diary message, for
+instance.
+
+@node Diary Group Parameters
+@subsubsection Diary Group Parameters
+@cindex diary group parameters
+
+When you create a new diary group, or visit one, @code{gnus-diary}
+automatically checks your group parameters and if needed, sets the
+summary line format to the diary-specific value, installs the
+diary-specific sorting functions, and also adds the different
+@code{X-Diary-*} headers to the group's posting-style.  It is then easier
+to send a diary message, because if you use @kbd{C-u a} or @kbd{C-u m}
+on a diary group to prepare a message, these headers will be inserted
+automatically (although not filled with proper values yet).
+
+@node Sending or Not Sending
+@subsection Sending or Not Sending
+
+Well, assuming you've read of of the above, here are two final notes on
+mail sending with @code{nndiary}:
+
+@itemize @bullet
+@item
+@code{nndiary} is a @emph{real} mail back end.  You really send real diary
+messsages for real.  This means for instance that you can give
+appointements to anybody (provided they use Gnus and @code{nndiary}) by
+sending the diary message to them as well.
+@item
+However, since @code{nndiary} also has a @code{request-post} method, you
+can also use @kbd{C-u a} instead of @kbd{C-u m} on a diary group and the
+message won't actually be sent; just stored locally in the group. This
+comes in very handy for private appointments.
+@end itemize
+
 @node Gnus Unplugged
 @section Gnus Unplugged
 @cindex offline
--- a/man/maintaining.texi	Mon May 14 11:56:47 2007 +0000
+++ b/man/maintaining.texi	Tue May 15 07:17:13 2007 +0000
@@ -409,6 +409,10 @@
 files.  If the tags file is in @file{/dev}, however, the file names are
 made relative to the current working directory.  This is useful, for
 example, when writing the tags to @file{/dev/stdout}.
+ 
+  When using a a relative file name, it should not be a symbolic link
+pointing to a tags file in a different directory, because this would
+generally render the file names invalid.
 
   If you specify absolute file names as arguments to @code{etags}, then
 the tags file will contain absolute file names.  This way, the tags file
--- a/man/texinfo.tex	Mon May 14 11:56:47 2007 +0000
+++ b/man/texinfo.tex	Tue May 15 07:17:13 2007 +0000
@@ -3,7 +3,7 @@
 % Load plain if necessary, i.e., if running under initex.
 \expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi
 %
-\def\texinfoversion{2007-04-08.09}
+\def\texinfoversion{2007-05-04.09}
 %
 % Copyright (C) 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995,
 % 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
@@ -1327,7 +1327,11 @@
   % used to mark target names; must be expandable.
   \def\pdfmkpgn#1{#1}
   %
-  \let\linkcolor = \Blue  % was Cyan, but that seems light?
+  % by default, use a color that is dark enough to print on paper as
+  % nearly black, but still distinguishable for online viewing.
+  % (Defined in pdfcolor.tex.)
+  \let\urlcolor = \BrickRed
+  \let\linkcolor = \BrickRed
   \def\endlink{\Black\pdfendlink}
   %
   % Adding outlines to PDF; macros for calculating structure of outlines
@@ -1431,7 +1435,7 @@
       \indexnofonts
       \setupdatafile
       \catcode`\\=\active \otherbackslash
-      \input \jobname.toc
+      \input \tocreadfilename
     \endgroup
   }
   %
@@ -1461,7 +1465,7 @@
       \def\@{@}%
       \let\/=\empty
       \makevalueexpandable
-      \leavevmode\Red
+      \leavevmode\urlcolor
       \startlink attr{/Border [0 0 0]}%
         user{/Subtype /Link /A << /S /URI /URI (#1) >>}%
     \endgroup}
@@ -1551,11 +1555,276 @@
   }%
 }
 
+%
+% PDF CMaps.  See also LaTeX's t1.cmap.
+%
+% \cmapOT1
+\ifpdf
+  \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
+%%DocumentNeededResources: ProcSet (CIDInit)
+%%IncludeResource: ProcSet (CIDInit)
+%%BeginResource: CMap (TeX-OT1-0)
+%%Title: (TeX-OT1-0 TeX OT1 0)
+%%Version: 1.000
+%%EndComments
+/CIDInit /ProcSet findresource begin
+12 dict begin
+begincmap
+/CIDSystemInfo
+<< /Registry (TeX)
+/Ordering (OT1)
+/Supplement 0
+>> def
+/CMapName /TeX-OT1-0 def
+/CMapType 2 def
+1 begincodespacerange
+<00> <7F>
+endcodespacerange
+8 beginbfrange
+<00> <01> <0393>
+<09> <0A> <03A8>
+<23> <26> <0023>
+<28> <3B> <0028>
+<3F> <5B> <003F>
+<5D> <5E> <005D>
+<61> <7A> <0061>
+<7B> <7C> <2013>
+endbfrange
+40 beginbfchar
+<02> <0398>
+<03> <039B>
+<04> <039E>
+<05> <03A0>
+<06> <03A3>
+<07> <03D2>
+<08> <03A6>
+<0B> <00660066>
+<0C> <00660069>
+<0D> <0066006C>
+<0E> <006600660069>
+<0F> <00660066006C>
+<10> <0131>
+<11> <0237>
+<12> <0060>
+<13> <00B4>
+<14> <02C7>
+<15> <02D8>
+<16> <00AF>
+<17> <02DA>
+<18> <00B8>
+<19> <00DF>
+<1A> <00E6>
+<1B> <0153>
+<1C> <00F8>
+<1D> <00C6>
+<1E> <0152>
+<1F> <00D8>
+<21> <0021>
+<22> <201D>
+<27> <2019>
+<3C> <00A1>
+<3D> <003D>
+<3E> <00BF>
+<5C> <201C>
+<5F> <02D9>
+<60> <2018>
+<7D> <02DD>
+<7E> <007E>
+<7F> <00A8>
+endbfchar
+endcmap
+CMapName currentdict /CMap defineresource pop
+end
+end
+%%EndResource
+%%EOF
+    }\endgroup
+  \expandafter\edef\csname cmapOT1\endcsname#1{%
+    \pdffontattr#1{/ToUnicode \the\pdflastobj\space 0 R}%
+  }%
+%
+% \cmapOT1IT
+  \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
+%%DocumentNeededResources: ProcSet (CIDInit)
+%%IncludeResource: ProcSet (CIDInit)
+%%BeginResource: CMap (TeX-OT1IT-0)
+%%Title: (TeX-OT1IT-0 TeX OT1IT 0)
+%%Version: 1.000
+%%EndComments
+/CIDInit /ProcSet findresource begin
+12 dict begin
+begincmap
+/CIDSystemInfo
+<< /Registry (TeX)
+/Ordering (OT1IT)
+/Supplement 0
+>> def
+/CMapName /TeX-OT1IT-0 def
+/CMapType 2 def
+1 begincodespacerange
+<00> <7F>
+endcodespacerange
+8 beginbfrange
+<00> <01> <0393>
+<09> <0A> <03A8>
+<25> <26> <0025>
+<28> <3B> <0028>
+<3F> <5B> <003F>
+<5D> <5E> <005D>
+<61> <7A> <0061>
+<7B> <7C> <2013>
+endbfrange
+42 beginbfchar
+<02> <0398>
+<03> <039B>
+<04> <039E>
+<05> <03A0>
+<06> <03A3>
+<07> <03D2>
+<08> <03A6>
+<0B> <00660066>
+<0C> <00660069>
+<0D> <0066006C>
+<0E> <006600660069>
+<0F> <00660066006C>
+<10> <0131>
+<11> <0237>
+<12> <0060>
+<13> <00B4>
+<14> <02C7>
+<15> <02D8>
+<16> <00AF>
+<17> <02DA>
+<18> <00B8>
+<19> <00DF>
+<1A> <00E6>
+<1B> <0153>
+<1C> <00F8>
+<1D> <00C6>
+<1E> <0152>
+<1F> <00D8>
+<21> <0021>
+<22> <201D>
+<23> <0023>
+<24> <00A3>
+<27> <2019>
+<3C> <00A1>
+<3D> <003D>
+<3E> <00BF>
+<5C> <201C>
+<5F> <02D9>
+<60> <2018>
+<7D> <02DD>
+<7E> <007E>
+<7F> <00A8>
+endbfchar
+endcmap
+CMapName currentdict /CMap defineresource pop
+end
+end
+%%EndResource
+%%EOF
+    }\endgroup
+  \expandafter\edef\csname cmapOT1IT\endcsname#1{%
+    \pdffontattr#1{/ToUnicode \the\pdflastobj\space 0 R}%
+  }%
+%
+% \cmapOT1TT
+  \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
+%%DocumentNeededResources: ProcSet (CIDInit)
+%%IncludeResource: ProcSet (CIDInit)
+%%BeginResource: CMap (TeX-OT1TT-0)
+%%Title: (TeX-OT1TT-0 TeX OT1TT 0)
+%%Version: 1.000
+%%EndComments
+/CIDInit /ProcSet findresource begin
+12 dict begin
+begincmap
+/CIDSystemInfo
+<< /Registry (TeX)
+/Ordering (OT1TT)
+/Supplement 0
+>> def
+/CMapName /TeX-OT1TT-0 def
+/CMapType 2 def
+1 begincodespacerange
+<00> <7F>
+endcodespacerange
+5 beginbfrange
+<00> <01> <0393>
+<09> <0A> <03A8>
+<21> <26> <0021>
+<28> <5F> <0028>
+<61> <7E> <0061>
+endbfrange
+32 beginbfchar
+<02> <0398>
+<03> <039B>
+<04> <039E>
+<05> <03A0>
+<06> <03A3>
+<07> <03D2>
+<08> <03A6>
+<0B> <2191>
+<0C> <2193>
+<0D> <0027>
+<0E> <00A1>
+<0F> <00BF>
+<10> <0131>
+<11> <0237>
+<12> <0060>
+<13> <00B4>
+<14> <02C7>
+<15> <02D8>
+<16> <00AF>
+<17> <02DA>
+<18> <00B8>
+<19> <00DF>
+<1A> <00E6>
+<1B> <0153>
+<1C> <00F8>
+<1D> <00C6>
+<1E> <0152>
+<1F> <00D8>
+<20> <2423>
+<27> <2019>
+<60> <2018>
+<7F> <00A8>
+endbfchar
+endcmap
+CMapName currentdict /CMap defineresource pop
+end
+end
+%%EndResource
+%%EOF
+    }\endgroup
+  \expandafter\edef\csname cmapOT1TT\endcsname#1{%
+    \pdffontattr#1{/ToUnicode \the\pdflastobj\space 0 R}%
+  }%
+\else
+  \expandafter\let\csname cmapOT1\endcsname\gobble
+  \expandafter\let\csname cmapOT1IT\endcsname\gobble
+  \expandafter\let\csname cmapOT1TT\endcsname\gobble
+\fi
+
 
 % Set the font macro #1 to the font named #2, adding on the
 % specified font prefix (normally `cm').
-% #3 is the font's design size, #4 is a scale factor
-\def\setfont#1#2#3#4{\font#1=\fontprefix#2#3 scaled #4}
+% #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).
+\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
 
 
 % Use cm as the default font prefix.
@@ -1588,59 +1857,59 @@
 % Text fonts (11.2pt, magstep1).
 \def\textnominalsize{11pt}
 \edef\mainmagstep{\magstephalf}
-\setfont\textrm\rmshape{10}{\mainmagstep}
-\setfont\texttt\ttshape{10}{\mainmagstep}
-\setfont\textbf\bfshape{10}{\mainmagstep}
-\setfont\textit\itshape{10}{\mainmagstep}
-\setfont\textsl\slshape{10}{\mainmagstep}
-\setfont\textsf\sfshape{10}{\mainmagstep}
-\setfont\textsc\scshape{10}{\mainmagstep}
-\setfont\textttsl\ttslshape{10}{\mainmagstep}
+\setfont\textrm\rmshape{10}{\mainmagstep}{OT1}
+\setfont\texttt\ttshape{10}{\mainmagstep}{OT1TT}
+\setfont\textbf\bfshape{10}{\mainmagstep}{OT1}
+\setfont\textit\itshape{10}{\mainmagstep}{OT1IT}
+\setfont\textsl\slshape{10}{\mainmagstep}{OT1}
+\setfont\textsf\sfshape{10}{\mainmagstep}{OT1}
+\setfont\textsc\scshape{10}{\mainmagstep}{OT1}
+\setfont\textttsl\ttslshape{10}{\mainmagstep}{OT1TT}
 \font\texti=cmmi10 scaled \mainmagstep
 \font\textsy=cmsy10 scaled \mainmagstep
 
 % A few fonts for @defun names and args.
-\setfont\defbf\bfshape{10}{\magstep1}
-\setfont\deftt\ttshape{10}{\magstep1}
-\setfont\defttsl\ttslshape{10}{\magstep1}
+\setfont\defbf\bfshape{10}{\magstep1}{OT1}
+\setfont\deftt\ttshape{10}{\magstep1}{OT1TT}
+\setfont\defttsl\ttslshape{10}{\magstep1}{OT1TT}
 \def\df{\let\tentt=\deftt \let\tenbf = \defbf \let\tenttsl=\defttsl \bf}
 
 % Fonts for indices, footnotes, small examples (9pt).
 \def\smallnominalsize{9pt}
-\setfont\smallrm\rmshape{9}{1000}
-\setfont\smalltt\ttshape{9}{1000}
-\setfont\smallbf\bfshape{10}{900}
-\setfont\smallit\itshape{9}{1000}
-\setfont\smallsl\slshape{9}{1000}
-\setfont\smallsf\sfshape{9}{1000}
-\setfont\smallsc\scshape{10}{900}
-\setfont\smallttsl\ttslshape{10}{900}
+\setfont\smallrm\rmshape{9}{1000}{OT1}
+\setfont\smalltt\ttshape{9}{1000}{OT1TT}
+\setfont\smallbf\bfshape{10}{900}{OT1}
+\setfont\smallit\itshape{9}{1000}{OT1IT}
+\setfont\smallsl\slshape{9}{1000}{OT1}
+\setfont\smallsf\sfshape{9}{1000}{OT1}
+\setfont\smallsc\scshape{10}{900}{OT1}
+\setfont\smallttsl\ttslshape{10}{900}{OT1TT}
 \font\smalli=cmmi9
 \font\smallsy=cmsy9
 
 % Fonts for small examples (8pt).
 \def\smallernominalsize{8pt}
-\setfont\smallerrm\rmshape{8}{1000}
-\setfont\smallertt\ttshape{8}{1000}
-\setfont\smallerbf\bfshape{10}{800}
-\setfont\smallerit\itshape{8}{1000}
-\setfont\smallersl\slshape{8}{1000}
-\setfont\smallersf\sfshape{8}{1000}
-\setfont\smallersc\scshape{10}{800}
-\setfont\smallerttsl\ttslshape{10}{800}
+\setfont\smallerrm\rmshape{8}{1000}{OT1}
+\setfont\smallertt\ttshape{8}{1000}{OT1TT}
+\setfont\smallerbf\bfshape{10}{800}{OT1}
+\setfont\smallerit\itshape{8}{1000}{OT1IT}
+\setfont\smallersl\slshape{8}{1000}{OT1}
+\setfont\smallersf\sfshape{8}{1000}{OT1}
+\setfont\smallersc\scshape{10}{800}{OT1}
+\setfont\smallerttsl\ttslshape{10}{800}{OT1TT}
 \font\smalleri=cmmi8
 \font\smallersy=cmsy8
 
 % Fonts for title page (20.4pt):
 \def\titlenominalsize{20pt}
-\setfont\titlerm\rmbshape{12}{\magstep3}
-\setfont\titleit\itbshape{10}{\magstep4}
-\setfont\titlesl\slbshape{10}{\magstep4}
-\setfont\titlett\ttbshape{12}{\magstep3}
-\setfont\titlettsl\ttslshape{10}{\magstep4}
-\setfont\titlesf\sfbshape{17}{\magstep1}
+\setfont\titlerm\rmbshape{12}{\magstep3}{OT1}
+\setfont\titleit\itbshape{10}{\magstep4}{OT1IT}
+\setfont\titlesl\slbshape{10}{\magstep4}{OT1}
+\setfont\titlett\ttbshape{12}{\magstep3}{OT1TT}
+\setfont\titlettsl\ttslshape{10}{\magstep4}{OT1TT}
+\setfont\titlesf\sfbshape{17}{\magstep1}{OT1}
 \let\titlebf=\titlerm
-\setfont\titlesc\scbshape{10}{\magstep4}
+\setfont\titlesc\scbshape{10}{\magstep4}{OT1}
 \font\titlei=cmmi12 scaled \magstep3
 \font\titlesy=cmsy10 scaled \magstep4
 \def\authorrm{\secrm}
@@ -1648,53 +1917,53 @@
 
 % Chapter (and unnumbered) fonts (17.28pt).
 \def\chapnominalsize{17pt}
-\setfont\chaprm\rmbshape{12}{\magstep2}
-\setfont\chapit\itbshape{10}{\magstep3}
-\setfont\chapsl\slbshape{10}{\magstep3}
-\setfont\chaptt\ttbshape{12}{\magstep2}
-\setfont\chapttsl\ttslshape{10}{\magstep3}
-\setfont\chapsf\sfbshape{17}{1000}
+\setfont\chaprm\rmbshape{12}{\magstep2}{OT1}
+\setfont\chapit\itbshape{10}{\magstep3}{OT1IT}
+\setfont\chapsl\slbshape{10}{\magstep3}{OT1}
+\setfont\chaptt\ttbshape{12}{\magstep2}{OT1TT}
+\setfont\chapttsl\ttslshape{10}{\magstep3}{OT1TT}
+\setfont\chapsf\sfbshape{17}{1000}{OT1}
 \let\chapbf=\chaprm
-\setfont\chapsc\scbshape{10}{\magstep3}
+\setfont\chapsc\scbshape{10}{\magstep3}{OT1}
 \font\chapi=cmmi12 scaled \magstep2
 \font\chapsy=cmsy10 scaled \magstep3
 
 % Section fonts (14.4pt).
 \def\secnominalsize{14pt}
-\setfont\secrm\rmbshape{12}{\magstep1}
-\setfont\secit\itbshape{10}{\magstep2}
-\setfont\secsl\slbshape{10}{\magstep2}
-\setfont\sectt\ttbshape{12}{\magstep1}
-\setfont\secttsl\ttslshape{10}{\magstep2}
-\setfont\secsf\sfbshape{12}{\magstep1}
+\setfont\secrm\rmbshape{12}{\magstep1}{OT1}
+\setfont\secit\itbshape{10}{\magstep2}{OT1IT}
+\setfont\secsl\slbshape{10}{\magstep2}{OT1}
+\setfont\sectt\ttbshape{12}{\magstep1}{OT1TT}
+\setfont\secttsl\ttslshape{10}{\magstep2}{OT1TT}
+\setfont\secsf\sfbshape{12}{\magstep1}{OT1}
 \let\secbf\secrm
-\setfont\secsc\scbshape{10}{\magstep2}
+\setfont\secsc\scbshape{10}{\magstep2}{OT1}
 \font\seci=cmmi12 scaled \magstep1
 \font\secsy=cmsy10 scaled \magstep2
 
 % Subsection fonts (13.15pt).
 \def\ssecnominalsize{13pt}
-\setfont\ssecrm\rmbshape{12}{\magstephalf}
-\setfont\ssecit\itbshape{10}{1315}
-\setfont\ssecsl\slbshape{10}{1315}
-\setfont\ssectt\ttbshape{12}{\magstephalf}
-\setfont\ssecttsl\ttslshape{10}{1315}
-\setfont\ssecsf\sfbshape{12}{\magstephalf}
+\setfont\ssecrm\rmbshape{12}{\magstephalf}{OT1}
+\setfont\ssecit\itbshape{10}{1315}{OT1IT}
+\setfont\ssecsl\slbshape{10}{1315}{OT1}
+\setfont\ssectt\ttbshape{12}{\magstephalf}{OT1TT}
+\setfont\ssecttsl\ttslshape{10}{1315}{OT1TT}
+\setfont\ssecsf\sfbshape{12}{\magstephalf}{OT1}
 \let\ssecbf\ssecrm
-\setfont\ssecsc\scbshape{10}{1315}
+\setfont\ssecsc\scbshape{10}{1315}{OT1}
 \font\sseci=cmmi12 scaled \magstephalf
 \font\ssecsy=cmsy10 scaled 1315
 
 % Reduced fonts for @acro in text (10pt).
 \def\reducednominalsize{10pt}
-\setfont\reducedrm\rmshape{10}{1000}
-\setfont\reducedtt\ttshape{10}{1000}
-\setfont\reducedbf\bfshape{10}{1000}
-\setfont\reducedit\itshape{10}{1000}
-\setfont\reducedsl\slshape{10}{1000}
-\setfont\reducedsf\sfshape{10}{1000}
-\setfont\reducedsc\scshape{10}{1000}
-\setfont\reducedttsl\ttslshape{10}{1000}
+\setfont\reducedrm\rmshape{10}{1000}{OT1}
+\setfont\reducedtt\ttshape{10}{1000}{OT1TT}
+\setfont\reducedbf\bfshape{10}{1000}{OT1}
+\setfont\reducedit\itshape{10}{1000}{OT1IT}
+\setfont\reducedsl\slshape{10}{1000}{OT1}
+\setfont\reducedsf\sfshape{10}{1000}{OT1}
+\setfont\reducedsc\scshape{10}{1000}{OT1}
+\setfont\reducedttsl\ttslshape{10}{1000}{OT1TT}
 \font\reducedi=cmmi10
 \font\reducedsy=cmsy10
 
@@ -1713,59 +1982,59 @@
 % Text fonts (10pt).
 \def\textnominalsize{10pt}
 \edef\mainmagstep{1000}
-\setfont\textrm\rmshape{10}{\mainmagstep}
-\setfont\texttt\ttshape{10}{\mainmagstep}
-\setfont\textbf\bfshape{10}{\mainmagstep}
-\setfont\textit\itshape{10}{\mainmagstep}
-\setfont\textsl\slshape{10}{\mainmagstep}
-\setfont\textsf\sfshape{10}{\mainmagstep}
-\setfont\textsc\scshape{10}{\mainmagstep}
-\setfont\textttsl\ttslshape{10}{\mainmagstep}
+\setfont\textrm\rmshape{10}{\mainmagstep}{OT1}
+\setfont\texttt\ttshape{10}{\mainmagstep}{OT1TT}
+\setfont\textbf\bfshape{10}{\mainmagstep}{OT1}
+\setfont\textit\itshape{10}{\mainmagstep}{OT1IT}
+\setfont\textsl\slshape{10}{\mainmagstep}{OT1}
+\setfont\textsf\sfshape{10}{\mainmagstep}{OT1}
+\setfont\textsc\scshape{10}{\mainmagstep}{OT1}
+\setfont\textttsl\ttslshape{10}{\mainmagstep}{OT1TT}
 \font\texti=cmmi10 scaled \mainmagstep
 \font\textsy=cmsy10 scaled \mainmagstep
 
 % A few fonts for @defun names and args.
-\setfont\defbf\bfshape{10}{\magstephalf}
-\setfont\deftt\ttshape{10}{\magstephalf}
-\setfont\defttsl\ttslshape{10}{\magstephalf}
+\setfont\defbf\bfshape{10}{\magstephalf}{OT1}
+\setfont\deftt\ttshape{10}{\magstephalf}{OT1TT}
+\setfont\defttsl\ttslshape{10}{\magstephalf}{OT1TT}
 \def\df{\let\tentt=\deftt \let\tenbf = \defbf \let\tenttsl=\defttsl \bf}
 
 % Fonts for indices, footnotes, small examples (9pt).
 \def\smallnominalsize{9pt}
-\setfont\smallrm\rmshape{9}{1000}
-\setfont\smalltt\ttshape{9}{1000}
-\setfont\smallbf\bfshape{10}{900}
-\setfont\smallit\itshape{9}{1000}
-\setfont\smallsl\slshape{9}{1000}
-\setfont\smallsf\sfshape{9}{1000}
-\setfont\smallsc\scshape{10}{900}
-\setfont\smallttsl\ttslshape{10}{900}
+\setfont\smallrm\rmshape{9}{1000}{OT1}
+\setfont\smalltt\ttshape{9}{1000}{OT1TT}
+\setfont\smallbf\bfshape{10}{900}{OT1}
+\setfont\smallit\itshape{9}{1000}{OT1IT}
+\setfont\smallsl\slshape{9}{1000}{OT1}
+\setfont\smallsf\sfshape{9}{1000}{OT1}
+\setfont\smallsc\scshape{10}{900}{OT1}
+\setfont\smallttsl\ttslshape{10}{900}{OT1TT}
 \font\smalli=cmmi9
 \font\smallsy=cmsy9
 
 % Fonts for small examples (8pt).
 \def\smallernominalsize{8pt}
-\setfont\smallerrm\rmshape{8}{1000}
-\setfont\smallertt\ttshape{8}{1000}
-\setfont\smallerbf\bfshape{10}{800}
-\setfont\smallerit\itshape{8}{1000}
-\setfont\smallersl\slshape{8}{1000}
-\setfont\smallersf\sfshape{8}{1000}
-\setfont\smallersc\scshape{10}{800}
-\setfont\smallerttsl\ttslshape{10}{800}
+\setfont\smallerrm\rmshape{8}{1000}{OT1}
+\setfont\smallertt\ttshape{8}{1000}{OT1TT}
+\setfont\smallerbf\bfshape{10}{800}{OT1}
+\setfont\smallerit\itshape{8}{1000}{OT1IT}
+\setfont\smallersl\slshape{8}{1000}{OT1}
+\setfont\smallersf\sfshape{8}{1000}{OT1}
+\setfont\smallersc\scshape{10}{800}{OT1}
+\setfont\smallerttsl\ttslshape{10}{800}{OT1TT}
 \font\smalleri=cmmi8
 \font\smallersy=cmsy8
 
 % Fonts for title page (20.4pt):
 \def\titlenominalsize{20pt}
-\setfont\titlerm\rmbshape{12}{\magstep3}
-\setfont\titleit\itbshape{10}{\magstep4}
-\setfont\titlesl\slbshape{10}{\magstep4}
-\setfont\titlett\ttbshape{12}{\magstep3}
-\setfont\titlettsl\ttslshape{10}{\magstep4}
-\setfont\titlesf\sfbshape{17}{\magstep1}
+\setfont\titlerm\rmbshape{12}{\magstep3}{OT1}
+\setfont\titleit\itbshape{10}{\magstep4}{OT1IT}
+\setfont\titlesl\slbshape{10}{\magstep4}{OT1}
+\setfont\titlett\ttbshape{12}{\magstep3}{OT1TT}
+\setfont\titlettsl\ttslshape{10}{\magstep4}{OT1TT}
+\setfont\titlesf\sfbshape{17}{\magstep1}{OT1}
 \let\titlebf=\titlerm
-\setfont\titlesc\scbshape{10}{\magstep4}
+\setfont\titlesc\scbshape{10}{\magstep4}{OT1}
 \font\titlei=cmmi12 scaled \magstep3
 \font\titlesy=cmsy10 scaled \magstep4
 \def\authorrm{\secrm}
@@ -1773,53 +2042,53 @@
 
 % Chapter fonts (14.4pt).
 \def\chapnominalsize{14pt}
-\setfont\chaprm\rmbshape{12}{\magstep1}
-\setfont\chapit\itbshape{10}{\magstep2}
-\setfont\chapsl\slbshape{10}{\magstep2}
-\setfont\chaptt\ttbshape{12}{\magstep1}
-\setfont\chapttsl\ttslshape{10}{\magstep2}
-\setfont\chapsf\sfbshape{12}{\magstep1}
+\setfont\chaprm\rmbshape{12}{\magstep1}{OT1}
+\setfont\chapit\itbshape{10}{\magstep2}{OT1IT}
+\setfont\chapsl\slbshape{10}{\magstep2}{OT1}
+\setfont\chaptt\ttbshape{12}{\magstep1}{OT1TT}
+\setfont\chapttsl\ttslshape{10}{\magstep2}{OT1TT}
+\setfont\chapsf\sfbshape{12}{\magstep1}{OT1}
 \let\chapbf\chaprm
-\setfont\chapsc\scbshape{10}{\magstep2}
+\setfont\chapsc\scbshape{10}{\magstep2}{OT1}
 \font\chapi=cmmi12 scaled \magstep1
 \font\chapsy=cmsy10 scaled \magstep2
 
 % Section fonts (12pt).
 \def\secnominalsize{12pt}
-\setfont\secrm\rmbshape{12}{1000}
-\setfont\secit\itbshape{10}{\magstep1}
-\setfont\secsl\slbshape{10}{\magstep1}
-\setfont\sectt\ttbshape{12}{1000}
-\setfont\secttsl\ttslshape{10}{\magstep1}
-\setfont\secsf\sfbshape{12}{1000}
+\setfont\secrm\rmbshape{12}{1000}{OT1}
+\setfont\secit\itbshape{10}{\magstep1}{OT1IT}
+\setfont\secsl\slbshape{10}{\magstep1}{OT1}
+\setfont\sectt\ttbshape{12}{1000}{OT1TT}
+\setfont\secttsl\ttslshape{10}{\magstep1}{OT1TT}
+\setfont\secsf\sfbshape{12}{1000}{OT1}
 \let\secbf\secrm
-\setfont\secsc\scbshape{10}{\magstep1}
+\setfont\secsc\scbshape{10}{\magstep1}{OT1}
 \font\seci=cmmi12 
 \font\secsy=cmsy10 scaled \magstep1
 
 % Subsection fonts (10pt).
 \def\ssecnominalsize{10pt}
-\setfont\ssecrm\rmbshape{10}{1000}
-\setfont\ssecit\itbshape{10}{1000}
-\setfont\ssecsl\slbshape{10}{1000}
-\setfont\ssectt\ttbshape{10}{1000}
-\setfont\ssecttsl\ttslshape{10}{1000}
-\setfont\ssecsf\sfbshape{10}{1000}
+\setfont\ssecrm\rmbshape{10}{1000}{OT1}
+\setfont\ssecit\itbshape{10}{1000}{OT1IT}
+\setfont\ssecsl\slbshape{10}{1000}{OT1}
+\setfont\ssectt\ttbshape{10}{1000}{OT1TT}
+\setfont\ssecttsl\ttslshape{10}{1000}{OT1TT}
+\setfont\ssecsf\sfbshape{10}{1000}{OT1}
 \let\ssecbf\ssecrm
-\setfont\ssecsc\scbshape{10}{1000}
+\setfont\ssecsc\scbshape{10}{1000}{OT1}
 \font\sseci=cmmi10
 \font\ssecsy=cmsy10
 
 % Reduced fonts for @acro in text (9pt).
 \def\reducednominalsize{9pt}
-\setfont\reducedrm\rmshape{9}{1000}
-\setfont\reducedtt\ttshape{9}{1000}
-\setfont\reducedbf\bfshape{10}{900}
-\setfont\reducedit\itshape{9}{1000}
-\setfont\reducedsl\slshape{9}{1000}
-\setfont\reducedsf\sfshape{9}{1000}
-\setfont\reducedsc\scshape{10}{900}
-\setfont\reducedttsl\ttslshape{10}{900}
+\setfont\reducedrm\rmshape{9}{1000}{OT1}
+\setfont\reducedtt\ttshape{9}{1000}{OT1TT}
+\setfont\reducedbf\bfshape{10}{900}{OT1}
+\setfont\reducedit\itshape{9}{1000}{OT1IT}
+\setfont\reducedsl\slshape{9}{1000}{OT1}
+\setfont\reducedsf\sfshape{9}{1000}{OT1}
+\setfont\reducedsc\scshape{10}{900}{OT1}
+\setfont\reducedttsl\ttslshape{10}{900}{OT1TT}
 \font\reducedi=cmmi9
 \font\reducedsy=cmsy9
 
@@ -1977,10 +2246,10 @@
 \newcount\fontdepth \fontdepth=0
 
 % Fonts for short table of contents.
-\setfont\shortcontrm\rmshape{12}{1000}
-\setfont\shortcontbf\bfshape{10}{\magstep1}  % no cmb12
-\setfont\shortcontsl\slshape{12}{1000}
-\setfont\shortconttt\ttshape{12}{1000}
+\setfont\shortcontrm\rmshape{12}{1000}{OT1}
+\setfont\shortcontbf\bfshape{10}{\magstep1}{OT1}  % no cmb12
+\setfont\shortcontsl\slshape{12}{1000}{OT1}
+\setfont\shortconttt\ttshape{12}{1000}{OT1TT}
 
 %% Add scribe-like font environments, plus @l for inline lisp (usually sans
 %% serif) and @ii for TeX italic
@@ -2043,7 +2312,7 @@
   \null
 }
 \def\samp#1{`\tclose{#1}'\null}
-\setfont\keyrm\rmshape{8}{1000}
+\setfont\keyrm\rmshape{8}{1000}{OT1}
 \font\keysy=cmsy9
 \def\key#1{{\keyrm\textfont2=\keysy \leavevmode\hbox{%
   \raise0.4pt\hbox{\angleleft}\kern-.08em\vtop{%
@@ -4032,11 +4301,8 @@
     % The following is kludged to not output a line of dots in the index if
     % there are no page numbers.  The next person who breaks this will be
     % cursed by a Unix daemon.
-    \def\tempa{{\rm }}%
-    \def\tempb{#1}%
-    \edef\tempc{\tempa}%
-    \edef\tempd{\tempb}%
-    \ifx\tempc\tempd
+    \setbox\boxA = \hbox{#1}%
+    \ifdim\wd\boxA = 0pt
       \ %
     \else
       %
@@ -4908,7 +5174,7 @@
 \def\readtocfile{%
   \setupdatafile
   \activecatcodes
-  \input \jobname.toc
+  \input \tocreadfilename
 }
 
 \newskip\contentsrightmargin \contentsrightmargin=1in
@@ -4939,11 +5205,16 @@
     \ifnum \pageno>0 \global\pageno = \lastnegativepageno \fi
 }
 
+% redefined for the two-volume lispref.  We always output on
+% \jobname.toc even if this is redefined.
+% 
+\def\tocreadfilename{\jobname.toc}
 
 % Normal (long) toc.
+%
 \def\contents{%
   \startcontents{\putwordTOC}%
-    \openin 1 \jobname.toc
+    \openin 1 \tocreadfilename\space
     \ifeof 1 \else
       \readtocfile
     \fi
@@ -4981,7 +5252,7 @@
     \let\numsubsubsecentry = \numsecentry
     \let\appsubsubsecentry = \numsecentry
     \let\unnsubsubsecentry = \numsecentry
-    \openin 1 \jobname.toc
+    \openin 1 \tocreadfilename\space
     \ifeof 1 \else
       \readtocfile
     \fi
@@ -8071,7 +8342,7 @@
   \textleading = 12pt
   %
   \internalpagesizes{7.5in}{5in}%
-                    {\voffset}{.25in}%
+                    {-.2in}{0in}%
                     {\bindingoffset}{16pt}%
                     {9.25in}{7in}%
   %
--- a/nt/INSTALL	Mon May 14 11:56:47 2007 +0000
+++ b/nt/INSTALL	Tue May 15 07:17:13 2007 +0000
@@ -157,11 +157,11 @@
     cygwin compiled gmake 3.77:          fails[1, 5]   fails[2, 5]
     cygwin compiled make 3.78.1:         fails[5]      fails[2, 5]
     cygwin compiled make 3.79.1:         fails[3, 5]   fails[2?, 5]
-    cygwin compiled make 3.80:           fails?[6]     fails?[6]
-    cygwin compiled make 3.81:           fails         fails?[6]
+    cygwin compiled make 3.80:           okay[6]       fails?[7]
+    cygwin compiled make 3.81:           fails         fails?[7]
     mingw32 compiled make 3.79.1:        okay          okay
-    mingw32 compiled make 3.80:          okay          okay[6]
-    mingw32 compiled make 3.81:          okay          okay[7]
+    mingw32 compiled make 3.80:          okay          okay[7]
+    mingw32 compiled make 3.81:          okay          okay[8]
 
   Notes:
 
@@ -173,8 +173,10 @@
     [4] may fail on Windows 9X and Windows ME; if so, install Bash.
     [5] fails when building leim due to the use of cygwin style paths.
         May work if building emacs without leim.
-    [6] not recommended; please report if you try this combination.
-    [7] tested only on Windows XP.
+    [6] need to uncomment 3 lines in nt/gmake.defs that invoke `cygpath'
+    	(look for "cygpath" near line 85 of gmake.defs).
+    [7] not recommended; please report if you try this combination.
+    [8] tested only on Windows XP.
 
   Other compilers may work, but specific reports from people that have
   tried suggest that the Intel C compiler (for example) may produce an
--- a/nt/configure.bat	Mon May 14 11:56:47 2007 +0000
+++ b/nt/configure.bat	Tue May 15 07:17:13 2007 +0000
@@ -41,11 +41,11 @@
 rem  cygwin compiled gmake 3.77:          fails[1,5]    fails[2,5]
 rem  cygwin compiled gmake 3.78.1:        fails[5]      fails[2,5]
 rem  cygwin compiled gmake 3.79.1:        fails[3,5]    fails[2?,5]
-rem  cygwin compiled make 3.80:           fails?[6]     fails?[6]
-rem  cygwin compiled make 3.81:           fails         fails?[6]
+rem  cygwin compiled make 3.80:           okay[6]       fails?[7]
+rem  cygwin compiled make 3.81:           fails         fails?[7]
 rem  mingw32 compiled make 3.79.1:        okay          okay
-rem  mingw32 compiled make 3.80:          okay          okay?[6]
-rem  mingw32 compiled make 3.81:          okay          okay[7]
+rem  mingw32 compiled make 3.80:          okay          okay?[7]
+rem  mingw32 compiled make 3.81:          okay          okay[8]
 rem
 rem [1] doesn't cope with makefiles with DOS line endings, so must mount
 rem     emacs source with text!=binary.
@@ -55,8 +55,10 @@
 rem [4] may fail on Windows 9X and Windows ME; if so, install Bash.
 rem [5] fails when building leim due to the use of cygwin style paths.
 rem     May work if building emacs without leim.
-rem [6] not recommended; please report if you try this combination.
-rem [7] tested only on Windows XP.
+rem [6] need to uncomment 3 lines in nt/gmake.defs that invoke `cygpath';
+rem    	look for "cygpath" near line 85 of gmake.defs.
+rem [7] not recommended; please report if you try this combination.
+rem [8] tested only on Windows XP.
 rem
 
 if exist config.log del config.log
--- a/src/ChangeLog	Mon May 14 11:56:47 2007 +0000
+++ b/src/ChangeLog	Tue May 15 07:17:13 2007 +0000
@@ -1,3 +1,30 @@
+2007-05-14  Chong Yidong  <cyd@stupidchicken.com>
+
+	* image.c (pbm_load): Check image size for monochrome pbm.
+
+2007-05-13  Chong Yidong  <cyd@stupidchicken.com>
+
+	* xterm.c (XTread_socket): Revert last change.
+
+2007-05-12  Chong Yidong  <cyd@stupidchicken.com>
+
+	* image.c (pbm_load): Correctly check image size for greyscale pbm.
+
+	* xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
+
+2007-05-07  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+	* editfns.c (Ftranspose_regions): Yet another int/Lisp_Object mixup (YAILOM)
+
+2007-05-07  Andreas Schwab  <schwab@suse.de>
+
+	* keymap.c (Flookup_key): Fix typo in last change. 
+
+2007-05-07  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+	* keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
+	mapping for unibyte strings.
+
 2007-05-01  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
 
 	* macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
@@ -62,8 +89,8 @@
 
 2007-04-16  Chong Yidong  <cyd@stupidchicken.com>
 
-	* dispnew.c (adjust_frame_glyphs_for_frame_redisplay): Set
-	garbaged flag in presence of window margins.
+	* dispnew.c (adjust_frame_glyphs_for_frame_redisplay):
+	Set garbaged flag in presence of window margins.
 	(showing_window_margins_p): New function.
 
 	* xdisp.c (cursor_row_p): Only end row on newline if it's a
--- a/src/editfns.c	Mon May 14 11:56:47 2007 +0000
+++ b/src/editfns.c	Tue May 15 07:17:13 2007 +0000
@@ -4537,8 +4537,7 @@
       fix_start_end_in_overlays (start1, end2);
     }
 
-  signal_after_change (XINT (start1), XINT (end2 - start1),
-		       XINT (end2 - start1));
+  signal_after_change (start1, end2 - start1, end2 - start1);
   return Qnil;
 }
 
--- a/src/image.c	Mon May 14 11:56:47 2007 +0000
+++ b/src/image.c	Tue May 15 07:17:13 2007 +0000
@@ -5730,7 +5730,17 @@
 	    if (raw_p)
 	      {
 		if ((x & 7) == 0)
-		  c = *p++;
+		  {
+		    if (p >= end)
+		      {
+			x_destroy_x_image (ximg);
+			x_clear_image (f, img);
+			image_error ("Invalid image size in image `%s'",
+				     img->spec, Qnil);
+			goto error;
+		      }
+		    c = *p++;
+		  }
 		g = c & 0x80;
 		c <<= 1;
 	      }
@@ -5742,9 +5752,13 @@
     }
   else
     {
-      if (raw_p && (p + 3 * height * width > end))
+      if (raw_p
+	  && ((type == PBM_GRAY)
+	      ? (p + height * width > end)
+	      : (p + 3 * height * width > end)))
 	{
 	  x_destroy_x_image (ximg);
+	  x_clear_image (f, img);
 	  image_error ("Invalid image size in image `%s'",
 		       img->spec, Qnil);
 	  goto error;
--- a/src/keymap.c	Mon May 14 11:56:47 2007 +0000
+++ b/src/keymap.c	Tue May 15 07:17:13 2007 +0000
@@ -1179,7 +1179,8 @@
   if (SYMBOLP (def) && !EQ (Vdefine_key_rebound_commands, Qt))
     Vdefine_key_rebound_commands = Fcons (def, Vdefine_key_rebound_commands);
 
-  meta_bit = VECTORP (key) ? meta_modifier : 0x80;
+  meta_bit = (VECTORP (key) || STRINGP (key) && STRING_MULTIBYTE (key)
+	      ? meta_modifier : 0x80);
 
   if (VECTORP (def) && ASIZE (def) > 0 && CONSP (AREF (def, 0)))
     { /* DEF is apparently an XEmacs-style keyboard macro.  */
@@ -1345,7 +1346,7 @@
 	c = Fevent_convert_list (c);
 
       /* Turn the 8th bit of string chars into a meta modifier.  */
-      if (INTEGERP (c) && XINT (c) & 0x80 && STRINGP (key))
+      if (STRINGP (key) && XINT (c) & 0x80 && !STRING_MULTIBYTE (key))
 	XSETINT (c, (XINT (c) | meta_modifier) & ~0x80);
 
       /* Allow string since binding for `menu-bar-select-buffer'