aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMiles Bader2006-10-03 05:04:21 +0000
committerMiles Bader2006-10-03 05:04:21 +0000
commitf3bbbd11451643c49997116d639612ae434dcaa0 (patch)
tree6ce54c0dbf43746478357847960e9621fe3a5719
parent84356ba74da100da043fea790d1253b2d92e9110 (diff)
parent670992917f2ee196a667797e4c3806d89c0f6d61 (diff)
downloademacs-f3bbbd11451643c49997116d639612ae434dcaa0.tar.gz
emacs-f3bbbd11451643c49997116d639612ae434dcaa0.zip
Merge from emacs--devo--0
Patches applied: * emacs--devo--0 (patch 447-459) - Update from CVS - Merge from gnus--rel--5.10 * gnus--rel--5.10 (patch 141-144) - Merge from emacs--devo--0 - Update from CVS Revision: emacs@sv.gnu.org/emacs--unicode--0--patch-115
-rw-r--r--ChangeLog9
-rw-r--r--admin/ChangeLog4
-rw-r--r--admin/FOR-RELEASE23
-rwxr-xr-xconfigure4
-rw-r--r--configure.in4
-rw-r--r--etc/ChangeLog12
-rw-r--r--etc/NEWS24
-rw-r--r--etc/PROBLEMS14
-rw-r--r--etc/refcard.ps3657
-rw-r--r--leim/ChangeLog8
-rw-r--r--leim/Makefile.in8
-rw-r--r--lib-src/.gitignore1
-rw-r--r--lib-src/ChangeLog4
-rw-r--r--lisp/ChangeLog343
-rw-r--r--lisp/add-log.el2
-rw-r--r--lisp/allout.el59
-rw-r--r--lisp/calc/calc-lang.el55
-rw-r--r--lisp/calendar/appt.el4
-rw-r--r--lisp/calendar/calendar.el43
-rw-r--r--lisp/comint.el5
-rw-r--r--lisp/cus-edit.el22
-rw-r--r--lisp/custom.el4
-rw-r--r--lisp/delim-col.el4
-rw-r--r--lisp/dired.el66
-rw-r--r--lisp/emacs-lisp/cl-macs.el16
-rw-r--r--lisp/emacs-lisp/cl.el4
-rw-r--r--lisp/emacs-lisp/find-func.el2
-rw-r--r--lisp/emacs-lisp/timer.el6
-rw-r--r--lisp/ffap.el2
-rw-r--r--lisp/files.el26
-rw-r--r--lisp/font-lock.el37
-rw-r--r--lisp/frame.el2
-rw-r--r--lisp/gnus/ChangeLog13
-rw-r--r--lisp/gnus/gmm-utils.el2
-rw-r--r--lisp/gnus/gnus-demon.el7
-rw-r--r--lisp/gnus/gnus-draft.el1
-rw-r--r--lisp/gnus/mm-util.el4
-rw-r--r--lisp/help.el24
-rw-r--r--lisp/ibuf-ext.el12
-rw-r--r--lisp/icomplete.el11
-rw-r--r--lisp/ido.el8
-rw-r--r--lisp/isearch.el38
-rw-r--r--lisp/jit-lock.el10
-rw-r--r--lisp/lpr.el2
-rw-r--r--lisp/mail/smtpmail.el8
-rw-r--r--lisp/mh-e/ChangeLog15
-rw-r--r--lisp/mh-e/mh-comp.el2
-rw-r--r--lisp/mh-e/mh-junk.el5
-rw-r--r--lisp/mouse.el2
-rw-r--r--lisp/pcvs.el12
-rw-r--r--lisp/printing.el6
-rw-r--r--lisp/progmodes/compile.el28
-rw-r--r--lisp/progmodes/cperl-mode.el6
-rw-r--r--lisp/progmodes/ebnf2ps.el225
-rw-r--r--lisp/progmodes/make-mode.el4
-rw-r--r--lisp/progmodes/sh-script.el65
-rw-r--r--lisp/ps-print.el2
-rw-r--r--lisp/ses.el101
-rw-r--r--lisp/simple.el59
-rw-r--r--lisp/startup.el12
-rw-r--r--lisp/subr.el54
-rw-r--r--lisp/textmodes/ispell.el5
-rw-r--r--lisp/textmodes/org.el6
-rw-r--r--lisp/url/ChangeLog6
-rw-r--r--lisp/url/url-dav.el73
-rw-r--r--lisp/url/url-http.el24
-rw-r--r--lisp/wid-edit.el16
-rw-r--r--lisp/woman.el32
-rw-r--r--lispref/ChangeLog38
-rw-r--r--lispref/anti.texi3
-rw-r--r--lispref/commands.texi12
-rw-r--r--lispref/modes.texi2
-rw-r--r--lispref/os.texi30
-rw-r--r--lispref/searching.texi3
-rw-r--r--lispref/windows.texi29
-rw-r--r--man/ChangeLog27
-rw-r--r--man/calendar.texi11
-rw-r--r--man/custom.texi6
-rw-r--r--man/display.texi2
-rw-r--r--man/ebrowse.texi2
-rw-r--r--man/frames.texi4
-rw-r--r--man/gnus.texi4
-rw-r--r--man/mark.texi12
-rw-r--r--man/programs.texi1
-rw-r--r--man/texinfo.tex8
-rw-r--r--man/text.texi36
-rw-r--r--man/windows.texi4
-rw-r--r--nt/ChangeLog8
-rw-r--r--nt/config.nt1
-rw-r--r--nt/inc/langinfo.h64
-rw-r--r--nt/inc/nl_types.h29
-rw-r--r--src/ChangeLog120
-rw-r--r--src/buffer.c2
-rw-r--r--src/callint.c6
-rw-r--r--src/config.in6
-rw-r--r--src/fns.c32
-rw-r--r--src/gtkutil.c4
-rw-r--r--src/indent.c30
-rw-r--r--src/keymap.c7
-rw-r--r--src/macterm.c59
-rw-r--r--src/makefile.w32-in4
-rw-r--r--src/minibuf.c6
-rw-r--r--src/regex.c8
-rw-r--r--src/s/gnu-linux.h6
-rw-r--r--src/search.c11
-rw-r--r--src/w32fns.c61
-rw-r--r--src/w32proc.c68
-rw-r--r--src/window.c21
-rw-r--r--src/xdisp.c9
-rw-r--r--src/xfns.c2
110 files changed, 4335 insertions, 1837 deletions
diff --git a/ChangeLog b/ChangeLog
index 7faee7b1bae..306a72a8587 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
12006-09-30 Eli Zaretskii <eliz@gnu.org>
2
3 * configure: Regenerated.
4
52006-09-28 Kenichi Handa <handa@m17n.org>
6
7 * configure.in (locallisppath): Don't include leim dir.
8 (lisppath): Include leim dir.
9
12006-09-15 Jay Belanger <belanger@truman.edu> 102006-09-15 Jay Belanger <belanger@truman.edu>
2 11
3 * COPYING: Replace "Library Public License" by "Lesser Public 12 * COPYING: Replace "Library Public License" by "Lesser Public
diff --git a/admin/ChangeLog b/admin/ChangeLog
index 97602d53653..7b32f0a985f 100644
--- a/admin/ChangeLog
+++ b/admin/ChangeLog
@@ -1,3 +1,7 @@
12006-10-03 Kenichi Handa <handa@m17n.org>
2
3 * FOR-RELEASE (BUGS): "An iso-8859-6 cannot be saved" fixed.
4
12006-08-13 Chong Yidong <cyd@stupidchicken.com> 52006-08-13 Chong Yidong <cyd@stupidchicken.com>
2 6
3 * FOR-RELEASE: Elisp manual checking completed. 7 * FOR-RELEASE: Elisp manual checking completed.
diff --git a/admin/FOR-RELEASE b/admin/FOR-RELEASE
index 427d2c43c5f..90e05a557a8 100644
--- a/admin/FOR-RELEASE
+++ b/admin/FOR-RELEASE
@@ -39,29 +39,26 @@ Windows only bug.
39** henman@it.to-be.co.jp 09 Aug 2006: ispell.el problem on Cygwin. 39** henman@it.to-be.co.jp 09 Aug 2006: ispell.el problem on Cygwin.
40 (Did we decide that is unreproducible?) 40 (Did we decide that is unreproducible?)
41 41
42* BUGS 42** kitty@dre.vanderbilt.edu Sep 20 says make-frame ignores left and top.
43
44** C-g fails to interrupt accept-process-output in Gnus.
45 (Is that fixed?)
46 43
47** david.hansen@physik.fu-berlin.de: WoMan Bug, Sep 13. 44* BUGS
48 45
49** Michael Cadilhac's line-move-partial is slow. 46** Enrico Schwass, Sep 13 help-gnu-emacs: display japanese outputdoesnt work quite right
50 47
51** run-with-idle-timer change causes problem for Semantic. 48** XIM hotkey doesn't work in Emacs with gnome-settings-demon.
52 49
53** iampure@gmail.com's Sep 15 bug report about View Changes In File. 50** jpff@codemist.co.uk, Sep 29: rmail g gets Wrong type argument error.
54 51
55** Peter_Dyballa@Web.DE's Sep 17 bug report about i-search and non-ASCII chars 52** M.P.Hodges@rl.ac.uk Sep 30: list-processes and process sentinels not run.
56 53
57* DOCUMENTATION 54* DOCUMENTATION
58 55
59** Check the Emacs Tutorial. 56** Check the Emacs Tutorial.
60 57
61The first line of every tutorial must begin with text ending in a period 58The first line of every tutorial must begin with text ending in a
62(".", ASCII 0x2E) saying "Emacs Tutorial" in the respective language. 59period (".", ASCII 0x2E) saying "Emacs Tutorial" in the respective
63This should be followed by "See end for copying conditions", likewise 60language. This should be followed by "See end for copying
64in the respective language. 61conditions", likewise in the respective language.
65 62
66After each file name, on the same line or the following line, come the 63After each file name, on the same line or the following line, come the
67names of the people who have checked it. 64names of the people who have checked it.
diff --git a/configure b/configure
index 7523139a614..9c6e6ae48cb 100755
--- a/configure
+++ b/configure
@@ -1357,8 +1357,8 @@ rm conftest.sed
1357 1357
1358lispdir='${datadir}/emacs/${version}/lisp' 1358lispdir='${datadir}/emacs/${version}/lisp'
1359locallisppath='${datadir}/emacs/${version}/site-lisp:'\ 1359locallisppath='${datadir}/emacs/${version}/site-lisp:'\
1360'${datadir}/emacs/site-lisp:${datadir}/emacs/${version}/leim' 1360'${datadir}/emacs/site-lisp'
1361lisppath='${locallisppath}:${lispdir}' 1361lisppath='${locallisppath}:${lispdir}:${datadir}/emacs/${version}/leim'
1362etcdir='${datadir}/emacs/${version}/etc' 1362etcdir='${datadir}/emacs/${version}/etc'
1363archlibdir='${libexecdir}/emacs/${version}/${configuration}' 1363archlibdir='${libexecdir}/emacs/${version}/${configuration}'
1364docdir='${datadir}/emacs/${version}/etc' 1364docdir='${datadir}/emacs/${version}/etc'
diff --git a/configure.in b/configure.in
index c1899fd32cf..0f297a1b0fc 100644
--- a/configure.in
+++ b/configure.in
@@ -33,8 +33,8 @@ AC_ARG_PROGRAM
33 33
34lispdir='${datadir}/emacs/${version}/lisp' 34lispdir='${datadir}/emacs/${version}/lisp'
35locallisppath='${datadir}/emacs/${version}/site-lisp:'\ 35locallisppath='${datadir}/emacs/${version}/site-lisp:'\
36'${datadir}/emacs/site-lisp:${datadir}/emacs/${version}/leim' 36'${datadir}/emacs/site-lisp'
37lisppath='${locallisppath}:${lispdir}' 37lisppath='${locallisppath}:${lispdir}:${datadir}/emacs/${version}/leim'
38etcdir='${datadir}/emacs/${version}/etc' 38etcdir='${datadir}/emacs/${version}/etc'
39archlibdir='${libexecdir}/emacs/${version}/${configuration}' 39archlibdir='${libexecdir}/emacs/${version}/${configuration}'
40docdir='${datadir}/emacs/${version}/etc' 40docdir='${datadir}/emacs/${version}/etc'
diff --git a/etc/ChangeLog b/etc/ChangeLog
index 998de94422b..f5b800b325a 100644
--- a/etc/ChangeLog
+++ b/etc/ChangeLog
@@ -1,3 +1,15 @@
12006-09-30 Chong Yidong <cyd@stupidchicken.com>
2
3 * PROBLEMS: Document Emacs/XIM/gnome-settings-terminal clash.
4
52006-09-26 Vinicius Jose Latorre <viniciusjl@ig.com.br>
6
7 * NEWS: ebnf2ps changes.
8
92006-09-26 Reiner Steib <Reiner.Steib@gmx.de>
10
11 * refcard.ps: Regenerate.
12
12006-09-18 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> 132006-09-18 Jan Dj,Ad(Brv <jan.h.d@swipnet.se>
2 14
3 * NEWS: Rename x-use-old-gtk-file-dialog to x-gtk-use-old-file-dialog. 15 * NEWS: Rename x-use-old-gtk-file-dialog to x-gtk-use-old-file-dialog.
diff --git a/etc/NEWS b/etc/NEWS
index 1f76311224f..ee0721b634d 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -1032,6 +1032,19 @@ so package-specific faces can inherit from it.
1032+++ 1032+++
1033*** `vertical-border' face is used for the vertical divider between windows. 1033*** `vertical-border' face is used for the vertical divider between windows.
1034 1034
1035** ebnf2ps changes:
1036
1037+++
1038*** New option `ebnf-arrow-extra-width' which specify extra width for arrow
1039shape drawing.
1040The extra width is used to avoid that the arrowhead and the terminal border
1041overlap. It depens on `ebnf-arrow-shape' and `ebnf-line-width'.
1042
1043+++
1044*** New option `ebnf-arrow-scale' which specify the arrow scale.
1045Values lower than 1.0, shrink the arrow.
1046Values greater than 1.0, expand the arrow.
1047
1035** Font-Lock changes: 1048** Font-Lock changes:
1036 1049
1037+++ 1050+++
@@ -2129,7 +2142,7 @@ powerful ways. Encryption behavior customization is collected in the
2129allout-encryption customization group. 2142allout-encryption customization group.
2130 2143
2131*** Navigation within an item is easier. Repeated beginning-of-line and 2144*** Navigation within an item is easier. Repeated beginning-of-line and
2132end-of-line key commands (usually, ^A and ^E) cycle through the 2145end-of-line key commands (usually, ^A and ^E) cycle through the
2133beginning/end-of-line and then beginning/end of topic, etc. See new 2146beginning/end-of-line and then beginning/end of topic, etc. See new
2134customization vars `allout-beginning-of-line-cycles' and 2147customization vars `allout-beginning-of-line-cycles' and
2135`allout-end-of-line-cycles'. 2148`allout-end-of-line-cycles'.
@@ -3861,6 +3874,10 @@ negative, is now a float. For example: (expt 2 -2) => 0.25.
3861*** The function `eql' is now available without requiring the CL package. 3874*** The function `eql' is now available without requiring the CL package.
3862 3875
3863+++ 3876+++
3877*** The new function `memql' is like `memq', but uses `eql' for comparison,
3878that is, floats are compared by value and other elements with `eq'.
3879
3880+++
3864*** `makehash' is now obsolete. Use `make-hash-table' instead. 3881*** `makehash' is now obsolete. Use `make-hash-table' instead.
3865 3882
3866+++ 3883+++
@@ -4187,6 +4204,11 @@ and partial visibility state of the corresponding row, if the PARTIALLY
4187arg is non-nil. 4204arg is non-nil.
4188 4205
4189+++ 4206+++
4207*** New function `window-line-height' is an efficient way to get
4208information about a specific text line in a window provided that the
4209window's display is up-to-date.
4210
4211+++
4190*** New functions `posn-at-point' and `posn-at-x-y' return 4212*** New functions `posn-at-point' and `posn-at-x-y' return
4191click-event-style position information for a given visible buffer 4213click-event-style position information for a given visible buffer
4192position or for a given window pixel coordinate. 4214position or for a given window pixel coordinate.
diff --git a/etc/PROBLEMS b/etc/PROBLEMS
index 98e4460e50b..6d92189ef2b 100644
--- a/etc/PROBLEMS
+++ b/etc/PROBLEMS
@@ -837,6 +837,11 @@ feature (in the font part of the configuration window).
837 837
838* Internationalization problems 838* Internationalization problems
839 839
840** M-{ does not work on a Spanish PC keyboard.
841
842Many Spanish keyboards seem to ignore that combination. Emacs can't
843do anything about it.
844
840** Characters from the mule-unicode charsets aren't displayed under X. 845** Characters from the mule-unicode charsets aren't displayed under X.
841 846
842XFree86 4 contains many fonts in iso10646-1 encoding which have 847XFree86 4 contains many fonts in iso10646-1 encoding which have
@@ -1090,6 +1095,15 @@ into Meta. This is because of the great importance of Meta in Emacs.
1090 1095
1091** Window-manager and toolkit-related problems 1096** Window-manager and toolkit-related problems
1092 1097
1098*** Gnome: Emacs receives input directly from the keyboard, bypassing XIM.
1099
1100This seems to happen when gnome-settings-daemon version 2.12 or later
1101is running. If gnome-settings-daemon is not running, Emacs receives
1102input through XIM without any problem. Furthermore, this seems only
1103to happen in *.UTF-8 locales; zh_CN.GB2312 and zh_CN.GBK locales, for
1104example, work fine. A bug report has been filed in the Gnome
1105bugzilla: http://bugzilla.gnome.org/show_bug.cgi?id=357032
1106
1093*** Gnome: Emacs' xterm-mouse-mode doesn't work on the Gnome terminal. 1107*** Gnome: Emacs' xterm-mouse-mode doesn't work on the Gnome terminal.
1094 1108
1095A symptom of this bug is that double-clicks insert a control sequence 1109A symptom of this bug is that double-clicks insert a control sequence
diff --git a/etc/refcard.ps b/etc/refcard.ps
index 7e66ce2edca..21ac140d44b 100644
--- a/etc/refcard.ps
+++ b/etc/refcard.ps
@@ -1,15 +1,18 @@
1%!PS-Adobe-2.0 1%!PS-Adobe-2.0
2%%Creator: dvips(k) 5.86d Copyright 1999 Radical Eye Software 2%%Creator: dvips(k) 5.95a Copyright 2005 Radical Eye Software
3%%Title: refcard.dvi 3%%Title: refcard.dvi
4%%Pages: 6 4%%Pages: 2
5%%PageOrder: Ascend 5%%PageOrder: Ascend
6%%BoundingBox: 0 0 596 842 6%%Orientation: Landscape
7%%BoundingBox: 0 0 595 842
8%%DocumentFonts: CMBX10 CMR8 CMTT8 CMBX8 CMR6 CMSY6 CMTI8 CMMI8
9%%DocumentPaperSizes: a4
7%%EndComments 10%%EndComments
8%DVIPSWebPage: (www.radicaleye.com) 11%DVIPSWebPage: (www.radicaleye.com)
9%DVIPSCommandLine: dvips -o refcard.ps refcard.dvi 12%DVIPSCommandLine: dvips -t landscape refcard.dvi
10%DVIPSParameters: dpi=600, compressed 13%DVIPSParameters: dpi=600
11%DVIPSSource: TeX output 2002.02.12:1312 14%DVIPSSource: TeX output 2006.09.26:2327
12%%BeginProcSet: texc.pro 15%%BeginProcSet: tex.pro 0 0
13%! 16%!
14/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S 17/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
15N}B/A{dup}B/TR{translate}N/isls false N/vsize 11 72 mul N/hsize 8.5 72 18N}B/A{dup}B/TR{translate}N/isls false N/vsize 11 72 mul N/hsize 8.5 72
@@ -28,22 +31,10 @@ df-tail}B/dfs{div/sf X/fntrx[sf 0 0 sf neg 0 0]N df-tail}B/E{pop nn A
28definefont setfont}B/Cw{Cd A length 5 sub get}B/Ch{Cd A length 4 sub get 31definefont setfont}B/Cw{Cd A length 5 sub get}B/Ch{Cd A length 4 sub get
29}B/Cx{128 Cd A length 3 sub get sub}B/Cy{Cd A length 2 sub get 127 sub} 32}B/Cx{128 Cd A length 3 sub get sub}B/Cy{Cd A length 2 sub get 127 sub}
30B/Cdx{Cd A length 1 sub get}B/Ci{Cd A type/stringtype ne{ctr get/ctr ctr 33B/Cdx{Cd A length 1 sub get}B/Ci{Cd A type/stringtype ne{ctr get/ctr ctr
311 add N}if}B/id 0 N/rw 0 N/rc 0 N/gp 0 N/cp 0 N/G 0 N/CharBuilder{save 3 341 add N}if}B/CharBuilder{save 3 1 roll S A/base get 2 index get S
321 roll S A/base get 2 index get S/BitMaps get S get/Cd X pop/ctr 0 N Cdx 35/BitMaps get S get/Cd X pop/ctr 0 N Cdx 0 Cx Cy Ch sub Cx Cw add Cy
330 Cx Cy Ch sub Cx Cw add Cy setcachedevice Cw Ch true[1 0 0 -1 -.1 Cx 36setcachedevice Cw Ch true[1 0 0 -1 -.1 Cx sub Cy .1 sub]{Ci}imagemask
34sub Cy .1 sub]/id Ci N/rw Cw 7 add 8 idiv string N/rc 0 N/gp 0 N/cp 0 N{ 37restore}B/D{/cc X A type/stringtype ne{]}if nn/base get cc ctr put nn
35rc 0 ne{rc 1 sub/rc X rw}{G}ifelse}imagemask restore}B/G{{id gp get/gp
36gp 1 add N A 18 mod S 18 idiv pl S get exec}loop}B/adv{cp add/cp X}B
37/chg{rw cp id gp 4 index getinterval putinterval A gp add/gp X adv}B/nd{
38/cp 0 N rw exit}B/lsh{rw cp 2 copy get A 0 eq{pop 1}{A 255 eq{pop 254}{
39A A add 255 and S 1 and or}ifelse}ifelse put 1 adv}B/rsh{rw cp 2 copy
40get A 0 eq{pop 128}{A 255 eq{pop 127}{A 2 idiv S 128 and or}ifelse}
41ifelse put 1 adv}B/clr{rw cp 2 index string putinterval adv}B/set{rw cp
42fillstr 0 4 index getinterval putinterval adv}B/fillstr 18 string 0 1 17
43{2 copy 255 put pop}for N/pl[{adv 1 chg}{adv 1 chg nd}{1 add chg}{1 add
44chg nd}{adv lsh}{adv lsh nd}{adv rsh}{adv rsh nd}{1 add adv}{/rc X nd}{
451 add set}{1 add clr}{adv 2 chg}{adv 2 chg nd}{pop nd}]A{bind pop}
46forall N/D{/cc X A type/stringtype ne{]}if nn/base get cc ctr put nn
47/BitMaps get S ctr S sf 1 ne{A A length 1 sub A 2 index S get sf div put 38/BitMaps get S ctr S sf 1 ne{A A length 1 sub A 2 index S get sf div put
48}if put/ctr ctr 1 add N}B/I{cc 1 add D}B/bop{userdict/bop-hook known{ 39}if put/ctr ctr 1 add N}B/I{cc 1 add D}B/bop{userdict/bop-hook known{
49bop-hook}if/SI save N @rigin 0 0 moveto/V matrix currentmatrix A 1 get A 40bop-hook}if/SI save N @rigin 0 0 moveto/V matrix currentmatrix A 1 get A
@@ -67,1199 +58,2449 @@ p -2 w}B/o{p -1 w}B/q{p 1 w}B/r{p 2 w}B/s{p 3 w}B/t{p 4 w}B/x{0 S
67rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end 58rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end
68 59
69%%EndProcSet 60%%EndProcSet
70TeXDict begin 39158280 55380996 1000 600 600 (refcard.dvi) 61%%BeginProcSet: texps.pro 0 0
71@start 62%!
72%DVIPSBitmapFont: Fa cmmi10 10 1 63TeXDict begin/rf{findfont dup length 1 add dict begin{1 index/FID ne 2
73/Fa 1 59 df<121C127FEAFF80A5EA7F00121C0909798817>58 D 64index/UniqueID ne and{def}{pop pop}ifelse}forall[1 index 0 6 -1 roll
74E 65exec 0 exch 5 -1 roll VResolution Resolution div mul neg 0 0]FontType 0
75%EndDVIPSBitmapFont 66ne{/Metrics exch def dict begin Encoding{exch dup type/integertype ne{
76%DVIPSBitmapFont: Fb cmti10 10 19 67pop pop 1 sub dup 0 le{pop}{[}ifelse}{FontMatrix 0 get div Metrics 0 get
77/Fb 19 122 df<387FFFF8A2B5FCA214F0150579941E>45 D<14F8EB07FE90381F871C90 68div def}ifelse}forall Metrics/Metrics currentdict end def}{{1 index type
78383E03FE137CEBF801120148486C5A485A120FEBC001001F5CA2EA3F801403007F5C1300 69/nametype eq{exit}if exch pop}loop}ifelse[2 index currentdict end
79A21407485C5AA2140F5D48ECC1C0A2141F15831680143F1587007C017F1300ECFF076C48 70definefont 3 -1 roll makefont/setfont cvx]cvx def}def/ObliqueSlant{dup
805B9038038F8E391F0F079E3907FE03FC3901F000F0222677A42A>97 71sin S cos div neg}B/SlantFont{4 index mul add}def/ExtendFont{3 -1 roll
81D<133FEA1FFFA3C67E137EA313FE5BA312015BA312035BA31207EBE0F8EBE7FE9038EF0F 72mul exch}def/ReEncodeFont{CharStrings rcheck{/Encoding false def dup[
8280390FFC07C013F89038F003E013E0D81FC013F0A21380A2123F1300A214075A127EA214 73exch{dup CharStrings exch known not{pop/.notdef/Encoding true def}if}
830F12FE4814E0A2141F15C05AEC3F80A215005C147E5C387801F8007C5B383C03E0383E07 74forall Encoding{]exch pop}{cleartomark}ifelse}if/Encoding exch def}def
84C0381E1F80D80FFEC7FCEA01F01C3B77B926>I<147F903803FFC090380FC1E090381F00
8570017E13784913383901F801F83803F003120713E0120FD81FC013F091C7FC485AA2127F
8690C8FCA35A5AA45AA3153015381578007C14F0007EEB01E0003EEB03C0EC0F806CEB3E00
87380F81F83803FFE0C690C7FC1D2677A426>I<ED01F815FFA3150316F0A21507A216E0A2
88150FA216C0A2151FA21680A2153FA202F81300EB07FE90381F877F90383E03FF017C5BEB
89F80112013803F00048485B120FEBC001121F5DEA3F801403127F01005BA214075A485CA2
90140FA248ECC1C0A2141F15C3ED8380143F1587007C017F1300ECFF076C485B9038038F8E
91391F0F079E3907FE03FC3901F000F0253B77B92A>I<147F903803FFC090380FC1E09038
923F00F0017E13785B485A485A485A120F4913F8001F14F0383F8001EC07E0EC1F80397F81
93FF00EBFFF891C7FC90C8FC5A5AA55AA21530007C14381578007E14F0003EEB01E0EC03C0
946CEB0F806CEB3E00380781F83803FFE0C690C7FC1D2677A426>I<EC07C0EC3FF09138FC
9538E0903901F01FF0EB03E0903807C00FEB0F80011F1307D93F0013E05B017E130F13FE49
9614C01201151F1203491480A2153F1207491400A25DA249137EA215FEA25D000313011403
9714076C6C485A0000131FEB787BEB3FF390380FC3F0EB00031407A25DA2140F5D121C007E
98131F5D00FE49C7FC147E5C387801F8387C07E0381FFF80D803FEC8FC24367CA426>103
99D<EB03F0EA01FFA3EA00075CA3130F5CA3131F5CA3133F91C8FCA35B90387E07F0EC1FFC
100EC783E9038FFE01F02C01380EC800F1400485A16C05B49EB1F8012035BA2153F00071500
1015BA25D000F147E5B15FE5D121FD98001131C15F8163C003F01031338010013F0A2167048
10214E0007E15F016E0EDE1C000FE903801E38048903800FF000038143C263B7BB92A>I<EB
10301C0EB07E014F0130F14E01307EB038090C7FCAB13F0EA03FCEA071EEA0E1F121CA21238
1045B1270A25BEAF07E12E013FEC65AA212015B1203A25B12075BA2000F13E013C013C1001F
10513C01381A2EB83801303EB0700A2130E6C5AEA07F8EA01E0143879B619>I<EB0FC0EA07
106FFA3EA001F1480A2133FA21400A25BA2137EA213FEA25BA21201A25BA21203A25BA21207
107A25BA2120FA25BA2121FA25BA2123FA290C7FCA25AA2EA7E0EA212FE131EEAFC1CA2133C
108133812F81378EA7870EA7CE0121FEA0F80123B79B915>108 D<D801E001FEEB07F03C07
109F803FF801FFC3C0E3C0F07C0783E3C1E3E3C03E1E01F261C1F78D9F3C013803C383FF001
110F7800F02E01400007801C013FE007018C002805B4A4848EB1F80EAF07FD8E07E5CA20000
1110207143F01FE1700495CA2030F5C0001177E495C18FE031F5C120349DA8001131C18F803
1123F153C00070403133849020013F0A24B1570000F17E049017E15F019E003FEECE1C0001F
113EE01E34949903800FF000007C70038143C3E2679A444>I<D801E013FE3A07F803FF803A
1140E3C0F07C03A1E3E3C03E0261C1F787F39383FF00114E0007813C000708114804A485AEA
115F07FEAE07EA20000140701FE5C5BA2150F00015D5B151F5E12034990383F838016031607
1160007027F130049137EA2160E000F147C49141E161C5E001FEC3C7849EB1FE00007C7EA07
11780292679A42F>I<147F903803FFC090380FC1F090381F00F8017E137C5B4848137E4848
118133E0007143F5B120F485AA2485A157F127F90C7FCA215FF5A4814FEA2140115FC5AEC03
119F8A2EC07F015E0140F007C14C0007EEB1F80003EEB3F00147E6C13F8380F83F03803FFC0
120C648C7FC202677A42A>I<9039078007C090391FE03FF090393CF0787C903938F8E03E90
12138787FC00170497EECFF00D9F0FE148013E05CEA01E113C15CA2D80003143FA25CA20107
122147FA24A1400A2010F5C5E5C4B5A131F5EEC80035E013F495A6E485A5E6E48C7FC017F13
1233EEC70FC90387E3FF0EC0F8001FEC9FCA25BA21201A25BA21203A25B1207B512C0A32935
12480A42A>I<3903C003F0390FF01FFC391E783C0F381C7C703A3C3EE03F8038383FC0EB7F
125800078150000701300151CD8F07E90C7FCEAE0FE5BA2120012015BA312035BA312075BA3
126120F5BA3121F5BA3123F90C9FC120E212679A423>114 D<14FE903807FF8090380F83C0
12790383E00E04913F00178137001F813F00001130313F0A215E00003EB01C06DC7FC7FEBFF
128C06C13F814FE6C7F6D13807F010F13C01300143F141F140F123E127E00FE1480A348EB1F
1290012E06C133E00705B6C5B381E03E06CB45AD801FEC7FC1C267AA422>I<EB0380EB07C0
130130FA4131F1480A3133F1400A35B137E007FB5FCA2B6FC3800FC00A312015BA312035BA3
13112075BA3120F5BA3121FEB801CA2143C003F1338EB0078147014F014E0EB01C0EA3E0338
1321F0780380F0F00EA07FCEA01F0183579B31C>I<13F8D803FEEB01C0D8078FEB03E0390E
1330F8007121E121C0038140F131F007815C01270013F131F00F0130000E015805BD8007E13
1343FA201FE14005B5D120149137EA215FE120349EBFC0EA20201131E161C15F813E0163CD9
135F003133814070001ECF07091381EF8F03A00F83C78E090393FF03FC090390FC00F002726
13679A42D>I<13F0D803FCEB01C0D8071EEB03E0D80E1F1307121C123C0038140F4914C012
13770A249131FD8F07E148012E013FEC648133F160012015B5D0003147E5BA215FE00075C5B
138A214015DA314035D14070003130FEBF01F3901F87FE038007FF7EB1FC7EB000F5DA2141F
139003F5C48133F92C7FC147E147C007E13FC387001F8EB03E06C485A383C1F80D80FFEC8FC
140EA03F0233679A428>121 D E
141%EndDVIPSBitmapFont
142%DVIPSBitmapFont: Fc cmsy7 7 1
143/Fc 1 14 df<913801FFC0021F13FC91B67E499038007FC0D907F0EB07F0D91F80EB00FC
14449C8127E017C151F01F0ED078048486F7E48486F7E48486F7E90CA1270481778001E8300
1451C171C003C171E0038170E0078170F007083A200F01880481703A96C170700701800A200
146785F0038170E003C171E001C171C001E173C6C5F6C17706D16F06C6C4B5A6C6C4B5A6C6C
1474B5A017C031FC7FC013F157E6D6C5CD907F0EB07F0D901FFEB7FC06D90B55A021F01FCC8
148FC020113C039357CA842>13 D E
149%EndDVIPSBitmapFont
150%DVIPSBitmapFont: Fd cmr7 7 45
151/Fd 45 122 df<1238127C12FE12FFA2127F123B1203A31206A3120C1218123812701220
15208127B8613>44 D<B5FCA410047F8E16>I<1238127C12FEA3127C123807077B8613>I<EB
1533F803801FFF03803E0F83807803C48487E001E7F003E1480A2003C1307007C14C0A400FC
15414E0AE007C14C0A36CEB0F80A36CEB1F006C131E6C6C5A3803E0F86CB45A38003F801B27
1557EA521>48 D<13381378EA01F8121F12FE12E01200B3AB487EB512F8A215267BA521>I<
15613FF000313E0380E03F0381800F848137C48137E00787F12FC6CEB1F80A4127CC7FC1500
1575C143E147E147C5C495A495A5C495A010EC7FC5B5B903870018013E0EA01803903000300
15812065A001FB5FC5A485BB5FCA219267DA521>I<13FF000313E0380F01F8381C007C0030
159137E003C133E007E133FA4123CC7123E147E147C5C495AEB07E03801FF8091C7FC380001
160E06D7E147C80143F801580A21238127C12FEA21500485B0078133E00705B6C5B381F01F0
1613807FFC0C690C7FC19277DA521>I<0018130C001F137CEBFFF85C5C1480D819FCC7FC00
16218C8FCA7137F3819FFE0381F81F0381E0078001C7F0018133EC7FC80A21580A21230127C
16312FCA3150012F00060133E127000305B001C5B380F03E03803FFC0C648C7FC19277DA521
164>53 D<1230123C003FB512E0A215C0481480A239700007000060130E140C48131C5C5CC7
1655A5C1301495AA249C7FC5B130E131EA3133E133CA2137CA413FCA813781B287DA621>55
166D<137F3801FFC03807C1E0380F0070001E1378003E7F003C133E007C131EA200FC131FA4
1671580A4007C133FA2123C003E137F001E135F380F01DF3807FF9F3801FE1FD80010130013
16800A2143E123C007E133CA25C5C007C5B383003C0381C0780D80FFFC7FCEA03F819277DA5
16921>57 D<140EA2141FA34A7EA3EC6FC0A2ECEFE014C7A290380183F0A390380301F8A201
170067F1400A249137EA2011C137F01187FA24980013FB5FCA2903960000FC0A201E0804913
17107A248486D7EA200038115011207D81FC0497ED8FFF890383FFFE0A22B2A7EA931>65
172D<B612E015FC3907F0003F0003EC0FC0ED07E01503ED01F016F8A6ED03F016E01507ED1F
173C0ED7F0090B512FC819039F0003F80ED07E0ED03F0ED01F8ED00FCA2167EA616FCA2ED01
174F8ED03F0ED07E00007EC3FC0B7120015F827287EA72E>I<91387FC002903903FFF80690
175390FE01E0E90383F0007017CEB019ED801F0EB00FE4848147E4848143E5B000F151E48C8
176FC48150E123EA2007E1506A2127C00FC1500A8127C007E1506A2123EA2003F150C7E6C7E
177000715186D14386C6C14306C6C1460D8007CEB01C0013FEB038090390FE01E00903803FF
178F89038007FC0272A7DA82F>I<B712F0A23907F000070003EC00F816781638A21618A316
1790C1560A21600A215E0A2140390B5FCA2EBF0031400A21560A21606A2ED000CA4161C1618
1801638A21678ED01F80007EC07F0B7FCA227287EA72D>69 D<B712C0A23907F0001F0003EC
18103E015011500A21660A31630A215C01600A31401A2140790B5FCA2EBF0071401A21400A4
18292C7FCA9487EB512E0A224287EA72B>I<91387FC002903903FFF80690390FE01E0E9038
1833F0007017CEB019ED801F0EB00FE4848147E4848143E5B000F151E48C8FC48150E123EA2
184007E1506A2127C00FC92C7FCA792387FFFE0127C007E02001300167E123EA2123F7E6C7E
1856C7EA26C7ED801F814FEEA007C013FEB039E90390FE00F0E903903FFFC029026007FE0C7
186FC2B2A7DA833>I<B512C0A23807F8006C5AB3B0487EB512C0A212287EA718>73
187D<D8FFF0EDFFF06D5C0007EEFE0000035E017CEC037CA26D1406A26D140CA36D6C1318A2
1886D6C1330A36D6C1360A26D6C13C0A3903900F80180A291387C0300A2EC3E06A36E5AA2EC
1890F98A3EC07F0A26E5AEA0780D80FC015FE3CFFFC01C01FFFF0A234287DA73C>77
190D<D8FFF0903807FFE07FD803FC9038007E006D143C1618137F6D7E6D7EA26D7E6D7E6D7E
191A26D7E6D7E147FA2EC3F80EC1FC0EC0FE015F01407EC03F8EC01FCEC00FEA2157FED3F98
192ED1FD8A2ED0FF815071503A215011500486C1478487ED8FFFC143816182B287EA731>I<
193B612E015FC3907F0003F0003EC0FC0ED03E0ED01F016F8150016FCA616F8150116F0ED03
194E0ED0FC0ED3F0090B512FC15E001F0C8FCAF487EB512C0A226287EA72D>80
195D<90387F80203903FFF06039078078E0380E000E481307481303007813010070130012F0
196A21560A27E1500127C127FEA3FE013FF6C13F06C13FC000313FFC61480010F13C0010013
197E0EC0FF014031401EC00F8A200C01478A46C1470A26C14F06C14E06CEB01C000EFEB0780
19839E3E01F0038C0FFFC38801FF01D2A7DA825>83 D<007FB7FCA23A7E003F003F0078150F
199007081006081A200E01680481501A5C791C7FCB3A64A7E013FB5FCA229287EA72F>I<B5
20039C007FFE0A2D807F8C7EA7E006C48143C1618B3A816386C6C143016706C6C1460017C14
201E0017E495A6D495A90260F8007C7FC903807E03E903801FFF89038003FC02B297EA731>
202I<13FE3807FFC0380F03E0381C00F0003E1378003F137C143C143E121EC7FCA3EB3FFEEA
20301FF3807F03EEA1FC0EA3F00127EA2481418A3147E127EECDF38393F838FF0390FFE0FE0
2043903F807C01D1C7E9A21>97 D<EA0F8012FFA2121F120FAAEB81FCEB8FFF9038BC0FC090
20538F003E09038C001F0EB800015F815FC157CA2157EA7157CA215FC15F89038C001F015E0
20690387003C0390E3C0F80390C0FFF00380003F81F297EA725>I<EB3FC0EBFFF83803E03C
2073807C00E380F801F381F003F123EA2007E131E007C1300A212FCA7127C127E1403123E6C
2081306EA0F803807C00C3803F0383800FFE0EB3F80181C7E9A1E>I<EC03E0143FA2140714
20903AAEB3F833801FFE33803E03B3807800F380F0007481303123E127E127CA212FCA7127C
210A2127E123E001E1307001F130F390F801FF03903E073FE3801FFE339007F03E01F297EA7
21125>I<133F3801FFE03803E1F0380F80F8381F007C143E123E007E131E141F127C12FCA2
212B6FCA200FCC7FCA4127C127E1403123E6C1307380F800E3807C01C3803E0783800FFE0EB
2133F80181C7E9A1E>I<EB07E0EB3FF0EB7C78EBF0FCEA01E01203EBC078000713301400A8
214B51280A23807C000B3A2487EEA7FFEA216297FA815>I<90387E03E03901FF9FF03807C3
215FC380F00F048EBF800001E1378003E137CA6001E1378001F13F86C5BEBC3E0380DFF80D8
2161C7EC7FC90C8FCA3121E380FFFF014FC6C13FF001F1480393E001FC000781307EC03E048
2171301A40078EB03C0007C13076CEB0F80390FC07E003803FFF838007FC01C277E9921>I<
218EA0F8012FFA2121F120FAAEB81FCEB8FFF90389C0F809038B007C013E09038C003E0A313
21980AF391FC007F039FFF83FFEA21F287EA725>I<120EEA3F80A5EA0E00C7FCA7EA078012
220FFA2121F120FB3121FEAFFF8A20D287EA713>I<EA0F8012FFA2121F120FABEC3FF8A2EC
2211FC01500143C5C14E0EB81C0EB8380018FC7FCEB9F8013BFEBF7C0EBC3E0EB81F0801380
222147C80143FEC1F80EC0FC0D81FC013E039FFF83FFCA21E287EA723>107
223D<EA0F8012FFA2121F120FB3AFEA1FC0EAFFF8A20D287EA713>I<260F81FC137F3BFF8F
224FF03FFC0903A9C0F8703E03B1FB007CC01F0D80FE013D8903AC003F000F8A301805BAF48
2256C486C487E3CFFF83FFE0FFF80A2311A7E9937>I<380F81FC38FF8FFF90389C0F80391F
226B007C0EA0FE09038C003E0A31380AF391FC007F039FFF83FFEA21F1A7E9925>I<EB3F80
227EBFFE03803E0F83807803C48487E001E7F003E1480A248EB07C0A300FC14E0A7007C14C0
228A2007E130F003E1480001E1400001F5B380F803E3803E0F86CB45A38003F801B1C7E9A21
229>I<380F81FC38FF8FFF9038BC0FC0391FF007E0390FC003F0EB800115F8EC00FCA2157C
230157EA7157C15FCA2EC01F801C013F0EC03E09038F007C09038BC1F8090388FFF00EB83F8
2310180C7FCA7487EEAFFF8A21F257E9925>I<380F07C038FF1FF0EB38F8EA1F71EA0F6113
232C1EBC0F014005BAF487EEAFFFCA2151A7E991A>114 D<3803F840380FFEC0EA3C07EA78
23303EA7001EAF000A37E6C1300EA7FC013FC6CB4FC6C1380000713C0C613E0130738C003F0
234130113007EA26C13E0130100F813C038EE078038C7FF00EA81FC141C7E9A1A>I<13C0A4
2351201A312031207120F121FB512E0A23807C000AC1430A73803E060A23801F0C03800FF80
236EB3F0014257FA31A>I<390F8003E000FF133FA2001F1307000F1303B01407A20007130F
2379038C01BF03903E073FE3801FFE339007F83E01F1B7E9925>I<39FFF807FEA2390FE001
238F001C013E0000714C013E000031480EBF00300011400A23800F806A2EB7C0CA2EB7E1CEB
2393E18A26D5AA2EB0FE0A36D5AA26D5AA21F1A7F9823>I<3BFFF8FFF07FE0A23B1FC01FC0
2401F80000F90390F800E00A20007150CEC1FC02603E01B5B15E0143B2601F0315B15F0D9F8
2416013700000156015F89039FCC078E0017CEB7CC0137D90393F803D80153FEC001F6D91C7
242FCA2011E7F010E130EA22B1A7F982F>I<39FFF807FEA2390FE001F001C013E0000714C0
243EA03E01580EBF003000114006D5A0000130613FCEB7C0CA26D5AA26D5AA214F06D5AA26D
2445AA26D5AA291C7FCA213061230EA780EEAFC0C131C1318485AEA70E0EA3FC06CC8FC1F25
2457F9823>121 D E
246%EndDVIPSBitmapFont
247%DVIPSBitmapFont: Fe cmbx10 10 25
248/Fe 25 122 df<913A03FF8007FE027F9039F07FFF800103B500FDB512E0010F903A00FF
249FE0FF0D93FF8ECF81F90267FE0019038F03FF849485A4816E014804816C00200ED1FF081
250F007C06F91C7FCA8B912E0A4000390C701C0C7FCB3ABB5D8FC3FEBFF80A43D3A7EB938>
25111 D<EB3FFE0003B512E0000F14F8391FF00FFE003FEB03FF6D6C7F6E7FA26F7EA26C5A
2526C5AEA0380C8FCA2EC3FFF010FB5FC137F3901FFF87F00071380380FFE00EA3FF85B485A
25312FF5BA415FF6D5A127F263FF00713F83B1FFC1FBFFFC0390FFFFE1F0003EBF80F39003F
254E0032A257DA42E>97 D<13FFB5FCA412077EAF4AB47E020F13F0023F13FC9138FE03FFDA
255F00013804AEB7FC00280EB3FE091C713F0EE1FF8A217FC160FA217FEAA17FCA3EE1FF8A2
25617F06E133F6EEB7FE06E14C0903AFDF001FF80903AF8FC07FE009039F03FFFF8D9E00F13
257E0D9C00390C7FC2F3A7EB935>I<903801FFC0010F13FC017F13FFD9FF8013802603FE00
25813C048485AEA0FF8121F13F0123F6E13804848EB7F00151C92C7FC12FFA9127FA27F123F
259ED01E06C7E15036C6CEB07C06C6C14806C6C131FC69038C07E006DB45A010F13F0010113
2608023257DA42A>I<EE7F80ED7FFFA4150381AF903801FF81010F13F1013F13FD9038FFC0
2617F0003EB001FD807FC1307000F8048487F5B123FA2485AA312FFAA127FA27F123FA26C6C
2625B000F5C6C6C5B6C6C4913C02701FF80FD13FE39007FFFF9011F13E1010313012F3A7DB9
26335>I<903803FF80011F13F0017F13FC3901FF83FE3A03FE007F804848133F484814C000
2641FEC1FE05B003FEC0FF0A2485A16F8150712FFA290B6FCA301E0C8FCA4127FA36C7E1678
265121F6C6C14F86D14F000071403D801FFEB0FE06C9038C07FC06DB51200010F13FC010113
266E025257DA42C>I<EC1FF0903801FFFC010713FF90391FF87F8090383FE0FFD9FFC113C0
267A2481381A24813016E1380A2ED3E0092C7FCA8B6FCA4000390C8FCB3ABB512FEA4223A7D
268B91D>I<161FD907FEEBFFC090387FFFE348B6EAEFE02607FE07138F260FF801131F4848
2696C138F003F15CF4990387FC7C0EEC000007F81A6003F5DA26D13FF001F5D6C6C4890C7FC
2703907FE07FE48B512F86D13E0261E07FEC8FC90CAFCA2123E123F7F6C7E90B512F8EDFF80
27116E06C15F86C816C815A001F81393FC0000F48C8138048157F5A163FA36C157F6C16006D
2725C6C6C495AD81FF0EB07FCD807FEEB3FF00001B612C06C6C91C7FC010713F02B377DA530
273>I<13FFB5FCA412077EAFED7FC0913803FFF8020F13FE91381F03FFDA3C01138014784A
2747E4A14C05CA25CA291C7FCB3A3B5D8FC3F13FFA4303A7DB935>I<EA01F0EA07FC487EA2
275487EA56C5AA26C5AEA01F0C8FCA913FF127FA412077EB3A9B512F8A4153B7DBA1B>I<13
276FFB5FCA412077EAF92380FFFE0A4923803FC0016F0ED0FE0ED1F804BC7FC157E5DEC03F8
277EC07E04A5A141FEC7FE04A7E8181A2ECCFFEEC0FFF496C7F806E7F6E7F82157F6F7E6F7E
27882150F82B5D8F83F13F8A42D3A7EB932>107 D<13FFB5FCA412077EB3B3ACB512FCA416
2793A7DB91B>I<01FED97FE0EB0FFC00FF902601FFFC90383FFF80020701FF90B512E0DA1F
28081903983F03FF0DA3C00903887801F000749DACF007F00034914DE6D48D97FFC6D7E4A5C
281A24A5CA291C75BB3A3B5D8FC1FB50083B512F0A44C257DA451>I<01FEEB7FC000FF9038
28203FFF8020F13FE91381F03FFDA3C011380000713780003497E6D4814C05CA25CA291C7FC
283B3A3B5D8FC3F13FFA430257DA435>I<903801FFC0010F13F8017F13FFD9FF807F3A03FE
284003FE048486D7E48486D7E48486D7EA2003F81491303007F81A300FF1680A9007F1600A3
285003F5D6D1307001F5DA26C6C495A6C6C495A6C6C495A6C6C6CB45A6C6CB5C7FC011F13FC
286010113C029257DA430>I<9039FF01FF80B5000F13F0023F13FC9138FE07FFDAF0011380
2870007496C13C06C0180EB7FE091C713F0EE3FF8A2EE1FFCA3EE0FFEAA17FC161FA217F816
2883F17F06E137F6E14E06EEBFFC0DAF00313809139FC07FE0091383FFFF8020F13E0020390
289C7FC91C9FCACB512FCA42F357EA435>I<49B4EB0780010FEBE00F013FEBF81F9039FFC0
2907C3F0003EB803E3A07FE000F7F4848EB07FF121F497F123F497F127FA25B12FFAA6C7EA3
2916C7E5D6C7E000F5C6C6C5B6C6C133F6CEBC0FD39007FFFF1011F13C10101130190C7FCAC
292037F13FEA42F357DA432>I<9038FE03F000FFEB0FFEEC3FFF91387C7F809138F8FFC000
293075B6C6C5A5CA29138807F80ED3F00150C92C7FC91C8FCB3A2B512FEA422257EA427>I<
29490383FF0383903FFFEF8000F13FF381FC00F383F0003007E1301007C130012FC15787E7E
2956D130013FCEBFFE06C13FCECFF806C14C06C14F06C14F81203C614FC131F9038007FFE14
2960700F0130114007E157E7E157C6C14FC6C14F8EB80019038F007F090B512C000F8140038
297E01FF81F257DA426>I<130FA55BA45BA25B5BA25A1207001FEBFFE0B6FCA3000390C7FC
298B21578A815F86CEB80F014816CEBC3E090383FFFC06D1380903803FE001D357EB425>I<
29901FFEC3FC0B5EB3FFFA4000714016C80B3A35DA25DA26C5C6E4813E06CD9C03E13FF9038
3007FFFFC011F13F00103138030257DA435>I<B539F001FFF8A4000390C7EA3F00161E6E13
3013E6C153C6E137C6C15786E13F8017F5CECF001013F5C14F8011F495AA2ECFC07010F5CEC
302FE0F010791C7FC6E5A6D131E15BE6D13BC15FC6D5BA36E5AA26E5AA26E5AA26E5AA22D25
3037EA432>I<B500F1B538803FFFA43D07FE000FF80003E06C6C010715C082028015076C6E
3046C148015076C01C0ED0F00826E485C017FED801E5D90273FF01E7F5B17C0DAF83E147C01
3051F90393C3FE078037C14F8903B0FFC781FF0F0A29139FEF00FF10107EDF9E002FF14FB6D
306496CB45AA24B7E6D5EA26D496C90C7FCA292C7FC6E5CA2023E147C023C143C40257EA445
307>I<B539F01FFFF0A4000390398003F8006C01C013E06C1407D97FE05B6D6C485A6E48C7
308FC90381FFC3E010F5B903807FEFC6D6C5A5D6D5B6D5B6E7E6E7E814A7EA24A7E903801F3
309FFD903E37FD907C17FEB0FC049486C7E4A6C7E013E80496D7E49130F00016E7EB590383F
310FFF8A42D257EA432>I<B539F001FFF8A4000390C7EA3F00161E6E133E6C153C6E137C6C
31115786E13F8017F5CECF001013F5C14F8011F495AA2ECFC07010F5CECFE0F010791C7FC6E
3125A6D131E15BE6D13BC15FC6D5BA36E5AA26E5AA26E5AA26E5AA292C8FCA25C141E003F13
3133E387F803C38FFC07C147814F8EBC1F0EBC3E06C485A387D1F80D83FFFC9FCEA1FFCEA07
314F02D357EA432>I E
315%EndDVIPSBitmapFont
316%DVIPSBitmapFont: Ff cmtt10 10 74
317/Ff 74 126 df<121C127FEAFF80B1EA7F00AF123EC7FCA8121C127FA2EAFF80A3EA7F00
318A2121C09346FB32C>33 D<003C131E007F137F481480A66C1400A6007E7FA6003E133EA3
319003C131E001C131C191977B32C>I<010F133C90381F807EA8013F13FE4A5AA4007FB612
320F0B712F8A4003F15F03A007E01F800A5EBFE0301FC5BA6003FB612F0B712F8A46C15F03A
32101F807E000A30003130F01F05BA86C486C5A25337DB22C>I<EB01C0497EA6EB0FFC9038
3227FFF8048B512E00007804880391FFBEFFC393FC3E1FE903803E07F007E80127C00FC1580
32312F8157FA300FCEC3F00A2007E91C7FC127FEA3FC313FBEA1FFF6C13FC6C13FF000114C0
3246C6C7F011F13F801037F14E7ECE1FEECE07F81001880007E1580150F12FFA312FE151F16
32500007E5C007F143ED83F8313FE9038C3E1FC391FFBEFF86CB55A6C5C6C5CC691C7FCEB1F
326F8EB03E0A66D5A21417BB92C>I<D807801307D81FE0EB0F80151F487E486C133F160000
3277C5CD8FCFC137EEAF87C15FE5D14015DA21403D8FCFC5BEA7CF8007F13075D383FF00FD8
3281FE05BA23807801FC75B143F92C7FCA25C147E14FE5CA213015CA213035C13075CA2130F
3295C131FEC800FED3FC0013FEB7FE0140049EBFFF0017E13F9A2D9FE0113F801FC13F0A212
3300113F8120313F015F90007010013F05B000F14FF49EB7FE0A20007EC3FC06C48EB0F0025
331417DB92C>I<EA0F80EA1FC0EA3FE013F0A213F8A2121F120F1200A4120113F0A2120313
332E01207EA0FC0121FEA3F80EA7F0012FE5A5A12700D1B71B22C>39
333D<143814FC13011303EB07F8EB0FF0EB1FC0EB3F80EB7F0013FE485A485A5B12075B120F
3345B485AA2123F90C7FCA25A127EA312FE5AAC7E127EA3127F7EA27F121FA26C7E7F12077F
33512037F6C7E6C7E137FEB3F80EB1FC0EB0FF0EB07F8EB03FC130113001438164272B92C>
336I<127012FC7E7E6C7E6C7EEA0FE06C7E6C7E6C7E6C7E137F7F1480131F14C0130FEB07E0
337A214F01303A214F81301A314FC1300AC130114F8A3130314F0A2130714E0A2EB0FC0131F
3381480133F14005B13FE485A485A485A485AEA3FC0485A48C7FC5A5A1270164279B92C>I<
339EB0380497EA60020140800F8143E00FE14FE00FF13C1EBC7C7EBE7CF003FB512F8000F14
340E0000314806C140038007FFCA248B5FC481480000F14E0003F14F839FFE7CFFEEBC7C7EB
34107C100FE13C000F8143E0020140800001400A66D5A1F247AAA2C>I<147814FCAF007FB6
34212F0B712F8A46C15F0C700FCC7FCAF147825267DAB2C>I<EA0F80EA1FE0EA3FF0EA7FF8
343A213FCA3123F121F120F120013F8A21201EA03F01207EA1FE0EA7FC0EAFF80130012FC12
344700E17718A2C>I<007FB6FCB71280A46C150021067B9B2C>I<121FEA3F80EA7FC0EAFFE0
345A5EA7FC0EA3F80EA1F000B0B708A2C>I<1507ED0F80151FA2153F16005D157E15FE5D14
346015D14035DA214075D140F5D141F5D143F92C7FC5C147E14FE5CA213015C13035C13075C
347130F5C131F5CA2133F91C8FC5B137E13FE5B12015B12035B12075BA2120F5B121F5B123F
34890C9FC5A127E12FE5AA25A127821417BB92C>I<EB03F8EB0FFE90383FFF80497F90B57E
3493901FE0FF03903F803F848486C7EEBE0004848137EA248487FA248C7EA1F80A2003E140F
350007E15C0A3007C140700FC15E0AC6C140F007E15C0A46CEC1F80A36C6CEB3F00A26C6C13
3517E6D13FE00075CEBF0016C6C485A3901FE0FF06CB55A6D5B6D5BD90FFEC7FCEB03F82335
3527CB32C>I<1307497EA2131FA2133F137F13FF5A1207127FB5FC13DF139FEA7C1F1200B3
353AE007FB512E0B612F0A36C14E01C3477B32C>I<EB0FF890387FFF8048B512E000078048
35414FC391FF80FFE393FE001FF903880007F48C7EA3F80007E141F00FE15C0150F6C15E015
35507A3127E123CC8FCA2150F16C0151F1680153F16005D15FE4A5A14034A5A4A5A4A5A4A5A
356ECFF804948C7FC495A495A495AEB3FE0EB7F8049C8FC485A4848EB03C04848EB07E0EA1F
357E0485A48B6FCB7FCA36C15C023347CB32C>I<EB0FFC90387FFF8048B512E0000714F848
35880391FF807FEEBC0004848137F6D7F1680151FA26C5A6CC7FCC8FC153F16005D15FE1401
3594A5AEC1FF890381FFFF0495BA215F86D7F90380007FEEC00FF81ED3F80ED1FC0150FA216
360E01507A2123C127EB4FC150F16C0A248141F007FEC3F806DEB7F006C6C5B391FF807FE6C
361B55A6C5C6C14E0C66C1380D90FFCC7FC23357CB32C>I<EC07F04A7E141F143FA2147EA2
36214FCEB01F8A2EB03F0EB07E0A2EB0FC0EB1F80A2EB3F00137EA25B485AA2485A5B120748
3635AA2485A48C7FCA2127E5AB712FC16FEA36C15FCC8EAF800AA91387FFFF091B512F8A36E
36413F027347EB32C>I<000FB512FE4880A35D0180C8FCADEB83FE90389FFF8090B512E015
365F8819038FE03FE9038F000FF01C07F49EB3F8090C7121F6C15C0C8120FA2ED07E0A4123C
366127EB4FC150F16C0A248141F007EEC3F80007FEC7F006C6C5B6D485A391FF80FFC6CB55A
3676C5C000114C06C6C90C7FCEB0FF823347CB22C>I<121FEA3F80EA7FC0EAFFE0A5EA7FC0
368EA3F80EA1F00C7FCAE121FEA3F80EA7FC0EAFFE0A5EA7FC0EA3F80EA1F000B2470A32C>
36958 D<1507ED1F80153F15FF14034A1300EC1FFC4A5AECFFE0491380010790C7FCEB0FFC
370EB3FF8EB7FE048485A4890C8FCEA0FFEEA1FF8EA7FF0EAFFC05BA27FEA7FF0EA1FF8EA0F
371FEEA03FF6C13C06C6C7EEB3FF8EB0FFC6DB4FC01017F6D13E0EC3FF86E7EEC07FF6E1380
3721400153F151FED0700212A7BAD2C>60 D<127012FC7E6C7E13E06C7EEA1FFC6C7E3803FF
37380C67FEB7FF0EB1FF8EB0FFEEB03FF6D13C06D6C7EEC3FF8EC0FFC6EB4FC0201138080A2
3745C02071300EC0FFCEC3FF8EC7FE049485A4990C7FCEB0FFEEB1FF8EB7FF0EBFFC000035B
375D80FFEC8FC485AEA7FF0485A138048C9FC5A1270212A7BAD2C>62
376D<EB3FFE0003B512C0000F14F04814FC4880397FE007FF90C7FC00FEEC3F806C141FA315
3773F007EEC7F00003C5CC7EA03FEEC0FFC4A5AEC3FE04A5A4AC7FC495A495A5C13075C130F
3785CA76D5A90C9FCA8EB0380EB0FE0A2497EA36D5AA2EB038021337BB22C>I<EC7F809038
37903FFE0010F7F013F7F497F9038FFC0FE3901FE007FD803F87F4848EB1F809038E00FCF39
3800FC03FFF48484813C091B5FCEA3F01393E03F87F903907F03FE0007EEBE01F397C0FC00F
381EC8007A2EAFC1F00F8EB0003A900FCEB8007D87C0F14C0A2ECC00F3A7E07E01F80003EEB
382F03F903903F87F00393F01FFFED81F805B6E5A6C6C6C5A3907E00FC09039F00007C06C6C
383EB0FE0D801FE131F3900FFC0FF6DB512C06D1480010FEBFE00010313F89038007FC02333
3847CB22C>I<14FE497EA4497FA214EFA2130781A214C7A2010F7FA314C390381F83F0A590
385383F01F8A490387E00FCA549137E90B512FEA34880A29038F8003FA34848EB1F80A40007
38615C049130FD87FFEEBFFFC6D5AB514FE6C15FC497E27347EB32C>I<007FB512E015F8B6
38712FE6C8016C03903F0003FED0FE0ED07F01503A2ED01F8A6ED03F0A21507ED0FE0ED1FC0
388EDFF8090B612005D5D15FF16C09039F0001FE0ED07F0ED03F81501ED00FCA216FE167EA6
38916FE16FC1501ED03F8150FED3FF0007FB612E016C0B712806CECFE0015F027337FB22C>
390I<02FF13700107EBE0F84913F9013F13FD4913FFEBFF813901FE007F4848131FD807F013
3910F1507485A491303485A150148C7FCA25A007EEC00F01600A212FE5AAB7E127EA3007F15
392F06CEC01F8A26C7EA26C6C13036D14F06C6C130716E0D803FC131F6C6CEB3FC03A00FF81
393FF806DB512006D5B010F5B6D13F00100138025357DB32C>I<007FB5FCB612C015F0816C
394803907E003FEEC00FFED7F80153FED1FC0ED0FE0A2150716F0150316F81501A4ED00FCAC
395ED01F8A3150316F0A2150716E0150FED1FC0153FED7F80EDFF00EC03FE007FB55AB65A5D
39615C06C91C7FC26337EB22C>I<007FB612F0B712F8A37E3903F00001A7ED00F01600A4EC
39701E04A7EA490B5FCA5EBF003A46E5A91C8FCA5163C167EA8007FB612FEB7FCA36C15FC27
398337EB22C>I<007FB612F8B712FCA37ED803F0C7FCA716781600A515F04A7EA490B5FCA5
399EBF001A46E5A92C7FCAD387FFFE0B5FC805C7E26337EB22C>I<903901FC038090390FFF
40087C04913EF017F13FF90B6FC4813073803FC01497E4848137F4848133F49131F121F5B00
4013F140F90C7FCA2127EED078092C7FCA212FE5AA8913803FFF84A13FCA27E007E6D13F891
40238000FC0A36C141FA27F121F6D133F120F6D137F6C7E6C6C13FF6D5A3801FF076C90B5FC
4036D13EF011F13CF6DEB0780D901FCC7FC26357DB32C>I<387FFFE0B57EA36C5BD803F0C8
404FCB3AE16F0ED01F8A8007FB6FCB7FCA36C15F025337DB22C>76 D<D87FE0EB0FFC486CEB
4051FFEA26D133F007F15FC000F15E001BC137BA4019E13F3A3EB9F01A2018F13E3A21483A2
406018713C314C7A201831383A214EFA201811303A214FFEB80FEA3147C14381400ACD87FF0
407EB1FFC486CEB3FFEA36C48EB1FFC27337EB22C>I<007FB512C0B612F88115FF6C158026
40803F00013C0153FED0FE0ED07F0A2150316F81501A6150316F01507A2ED0FE0ED3FC015FF
40990B61280160015FC5D15C001F0C8FCB0387FFF80B57EA36C5B25337EB22C>80
410D<387FFFFCB67E15E015F86C803907E007FE1401EC007F6F7E151FA26F7EA64B5AA2153F
4114BC7FCEC01FE140790B55A5D15E081819038E007FCEC01FE1400157F81A8160FEE1F80A5
412D87FFEEB1FBFB5ECFF00815E6C486D5AC8EA01F029347EB22C>82
413D<90381FF80790B5EA0F804814CF000714FF5A381FF01F383FC003497E48C7FC007E147F
41400FE143F5A151FA46CEC0F00007E91C7FC127F7FEA3FE0EA1FFCEBFFC06C13FC0003EBFF
415C06C14F06C6C7F01077F9038007FFEEC07FF02001380153FED1FC0A2ED0FE0A200781407
41612FCA56CEC0FC0A26CEC1F806D133F01E0EB7F009038FE01FF90B55A5D00F914F0D8F83F
41713C0D8700790C7FC23357CB32C>I<007FB612FCB712FEA43AFC007E007EA70078153CC7
4181400B3AF90383FFFFCA2497F6D5BA227337EB22C>I<D87FF0EB07FF486C491380A36C48
4196D1300001FC8127CA46C6C5CA76C6C495AA4143E147FA33A03E0FF83E0A214F7A201E113
420C3A3000101E35BA201F113C701F313E7A314C1A200005DA201F713F71480A301FF13FF01
4217F91C7FC4A7EA4013E133E29347FB22C>87 D<387FFFFCB512FEA314FC00FCC7FCB3B3B3
422B512FC14FEA36C13FC17416FB92C>91 D<127812F87EA27E127E127F7E7F121F7F120F7F
4231207A27F12037F12017F12007F137E137F7F80131FA280130F8013078013038013018013
42400A280147E147F8081141F81140F811407811403A281140181140081157E157F81168015
4251FA2150FED070021417BB92C>I<387FFFFCB512FEA37EC7127EB3B3B3387FFFFEB5FCA3
4266C13FC17417DB92C>I<130EEB3F80EBFFE0000313F8000F13FE487FD87FF113C0D8FFE0
42713E0EB803F38FE000F007CEB07C00030EB01801B0C78B22C>I<007FB6FCB71280A46C15
4280021067B7D2C>I<137013F812011203EA07F0EA0FE0EA1FC01380EA3F00123E127E127C
429A212FC5AA4EAFF8013C013E0A2127FA2123FEA1FC0EA0F800D1B71B82C>I<3801FFF000
4300713FE001F6D7E15E048809038C01FF81407EC01FC381F80000006C77EC8127EA3ECFFFE
431131F90B5FC1203120F48EB807E383FF800EA7FC090C7FC12FE5AA47E007F14FEEB800338
4323FE01F6CB612FC6C15FE6C14BF0001EBFE1F3A003FF007FC27247CA32C>I<EA7FF0487E
433A3127F1201AAEC1FE0ECFFF801FB13FE90B6FC16809138F07FC09138801FE091380007F0
43449EB03F85BED01FC491300A216FE167EA816FE6D14FCA2ED01F86D13036DEB07F0150F91
43538801FE09138E07FC091B51280160001FB5B01F813F83900F03FC027337FB22C>I<9038
43603FFE0011F13F8017F13FE48B5FC48804848C6FCEA0FF0485A49137E4848131890C9FC5A
437127EA25AA8127EA2127F6C140F6DEB1F806C7E6D133F6C6CEB7F003907FE03FF6CB55A6C
4385C6C6C5B011F13E0010390C7FC21247AA32C>I<EC0FFE4A7EA380EC003FAAEB07F8EB3F
439FE90B512BF4814FF5A3807FC0F380FF00348487E497E48487F90C7FC007E80A212FE5AA8
4407E007E5CA2007F5C6C7E5C6C6C5A380FF0073807FC1F6CB612FC6CECBFFE6C143FEB3FFC
44190390FF01FFC27337DB22C>I<EB03FE90381FFFC0017F13F048B57E48803907FE03FE39
4420FF800FFD81FE0EB3F805B4848EB1FC090C7120F5A007E15E015075AB7FCA416C000FCC9
443FC7E127EA2127F6CEC03C06DEB07E06C7ED80FF0130F6C6CEB3FC001FF13FF000190B512
444806C1500013F13FC010F13F00101138023247CA32C>I<EC0FF8EC3FFE91B5FC4914805B
445903807FC7F14F090390FE03F0014C092C7FCA6007FB512FEB7FCA36C5C26000FC0C7FCB3
446A8003FB512F04880A36C5C21337DB22C>I<ED03F8903907F80FFC90391FFE3FFE017FB6
447FC48B7FC48ECFE7F9038FC0FF82607F003133E3A0FE001FC1CD9C0001300001F8049137E
448A66D13FE000F5CEBE0016C6C485A3903FC0FF048B5FC5D481480D99FFEC7FCEB87F80180
449C8FCA37F6C7E90B512F06C14FE48ECFF804815E04815F03A3FC0001FF848C7EA03FC007E
4501400007C157C00FC157E48153EA46C157E007E15FCD87F801303D83FE0EB0FF8D81FFCEB
4517FF06CB612E0000315806C1500D8003F13F8010713C028387EA42C>I<EA7FF0487EA312
4527F1201AAEC1FE0EC7FFC9038F9FFFE01FB7F90B6FC9138F03F80ECC01F02807FEC000F5B
4535BA25BB3267FFFE0B5FCB500F11480A36C01E0140029337FB22C>I<1307EB1FC0A2497E
454A36D5AA20107C7FC90C8FCA7387FFFC080B5FC7EA2EA0007B3A8007FB512FCB612FEA36C
45514FC1F3479B32C>I<140EEC3F80A2EC7FC0A3EC3F80A2EC0E0091C7FCA748B512804814
456C0A37EC7120FB3B3A2141F003C1480007E133FB414005CEB01FEEBFFFC6C5B5C001F5B00
4570790C7FC1A467CB32C>I<EA7FE0487EA3127F1201AA91381FFFF04A13F8A36E13F09138
45800FE004A5A4A5A4A5A4A5A4A5A4A5A4AC7FC14FEEBF1FC13F3EBF7FE90B5FCA2EC9F80EC
4590FC001FE7FEBFC07496C7E496C7E811400157E811680151F3A7FFFC0FFFCB500E113FEA3
4606C01C013FC27337EB22C>I<387FFFE0B57EA37EEA0003B3B3A5007FB61280B712C0A36C
461158022337BB22C>I<3A7F83F007E09039CFFC1FF83AFFDFFE3FFCD87FFF13FF91B57E3A
46207FE1FFC3E01FCEBF83F496C487E01F013E001E013C0A301C01380B33B7FFC3FF87FF002
4637F13FFD8FFFE6D13F8D87FFC4913F0023F137F2D2481A32C>I<397FF01FE039FFF87FFC
4649038F9FFFE01FB7F6CB6FC00019038F03F80ECC01F02807FEC000F5B5BA25BB3267FFFE0
465B5FCB500F11480A36C01E0140029247FA32C>I<EB07FCEB1FFF017F13C048B512F04880
4663907FC07FC390FF001FE48486C7E0180133F003F158090C7121F007EEC0FC0A348EC07E0
467A76C140F007E15C0A2007F141F6C15806D133F6C6CEB7F006D5B6C6C485A3907FC07FC6C
468B55A6C5C6C6C13C0011F90C7FCEB07FC23247CA32C>I<397FF01FE039FFF8FFF801FB13
469FE90B6FC6C158000019038F07FC09138801FE091380007F049EB03F85BED01FC491300A2
47016FE167EA816FE6D14FCA2ED01F86D13036DEB07F0150F9138801FE09138E07FC091B512
47180160001FB5B01F813F8EC3FC091C8FCAD387FFFE0B57EA36C5B27367FA32C>I<903903
472FC078090391FFF0FC0017F13CF48B512EF4814FF3807FE07380FF00148487E49137F4848
473133F90C7FC48141F127E150F5AA87E007E141FA26C143F7F6C6C137F6D13FF380FF00338
47407FC0F6CB6FC6C14EF6C6C138F6D130FEB07F890C7FCAD0203B5FC4A1480A36E14002936
4757DA32C>I<D87FFEEB3FC0B53801FFF0020713F8021F13FC6C5B39003F7FE1ECFF019138
476FC00F84A13704A13005CA25C5CA391C8FCAF007FB512E0B67EA36C5C26247EA32C>I<90
477387FF8700003B512F8120F5A5A387FC00F387E00034813015AA36CEB00F0007F140013F0
478383FFFC06C13FE6CEBFF80000314E0C66C13F8010113FCEB0007EC00FE0078147F00FC14
4793F151F7EA26C143F6D133E6D13FE9038F007FC90B5FC15F815E000F8148039701FFC0020
480247AA32C>I<131E133FA9007FB6FCB71280A36C1500D8003FC8FCB1ED03C0ED07E0A5EC
481800F011FEB1FC0ECE07F6DB51280160001035B6D13F89038003FE0232E7EAD2C>I<3A7F
482F003FF80486C487FA3007F7F0001EB000FB3A3151FA2153F6D137F3900FE03FF90B7FC6D
48315807F6D13CF902603FE07130029247FA32C>I<3A7FFF01FFFCB514FE148314016C15FC
4843A03E0000F80A26D131F00011500A26D5B0000143EA26D137E017C137CA2017E13FC013E
4855BA2EB3F01011F5BA21483010F5BA214C701075BA214EF01035BA214FF6D90C7FCA26D5A
486147C27247EA32C>I<D87FFFEB7FFF6EB5FCB515806C16004A7ED807C0EB01F0A66C6C49
4875AA3143E147FA2D801F0495AECFF87A214F7A201F113C700005D9038F9E3CFA201FB13EF
488A3D97BC190C7FC017F13FFA21480A2013F5B90381F007C29247FA32C>I<3A3FFF03FFF0
48948018713F8A36C010313F03A00FC007E005D90387E01F8013F5BEB1F83EC87E090380FCF
490C0903807EF80EB03FF6D90C7FC5C6D5A147C14FE130180903803EF80903807CFC0EB0FC7
491EC83E090381F01F0013F7FEB7E00017C137C49137E0001803A7FFF01FFFC1483B514FE6C
49215FC140127247EA32C>I<3A7FFF01FFFCB5008113FE148314816C010113FC3A03E0000F
493806C7E151F6D140012005D6D133E137C017E137E013E137CA2013F13FC6D5BA2EB0F815D
494A2EB07C1ECC3E0A2EB03E3ECE7C0130114F75DEB00FFA292C7FC80A2143EA2147E147CA2
49514FC5CA2EA0C01003F5BEA7F83EB87E0EA7E0F495A387FFF806C90C8FC6C5A6C5AEA07E0
49627367EA32C>I<003FB612E04815F0A4007EC7EA1FE0ED3FC0ED7F80EDFF004A5A003C49
4975AC7485A4A5A4A5A4A5A4A5A4AC7FCEB01FC495AEB0FF0495A495A495A49C8FC4848EB01
498E04848EB03F0485A485A485A485A485AB7FCA46C15E024247DA32C>I<15FF0207138014
4991F147F91B512004913C04AC7FCEB03F85CB31307EB1FE013FF007F5BB55A49C8FC6D7E6C
5007FC67F131FEB07F01303B380EB01FEECFFC06D13FF6E1380141F14070200130021417BB9
5012C>I<127812FCB3B3B3A9127806416DB92C>I<EA7FC0EAFFF813FE6D7E6C7FC67F131FEB
50207F01303B380EB01FEECFFC06D13FF6E1380141F147F91B512004913C04AC7FCEB03F85C
503B31307EB1FE013FF007F5BB55A49C8FC13F8EA7FC021417BB92C>I
504E
505%EndDVIPSBitmapFont
506%DVIPSBitmapFont: Fg cmbx10 14.4 42
507/Fg 42 123 df<DC7FFFEC3FFC030FB5D8E003B5FC92B6D8F81F14C00207DBFE7F14E002
5081F92B712F0027FD9E0079138F07FF89127FFFE0001ECC0FF4901F049020013FC49494949
5095A4901804913FC4990C714F8495A013F17F05C7413F849486E49EB7FF0F33FE071ED1FC0
5107192C7FCADBC7EA626007FFCC7000101F0C8FCB3B3A5007FB5D8FC01B612FCA656547DD3
51150>11 D<EF1FC04D7EA24D7EA24D7EA34C7FA24C7FA34C7FA24C80A34C80A24C80A217BF
512047F80171F04FF80A24C7E0301814C7E030381A24C7E0307814C7E030F82A24C7E031F82
5134C7F033F825E84037F8293C77E4B825D840201834B800203835D02076F7FA292B9FC4A84
514A24A84A3DA3FC0C86C7F4B81027F84A292C97E4A844A82010185A24A820103854A820107
51585A24A82010F86496C82B600FC0207B712F8A65D537BD268>65 D<BA12E019FF1AE01AFC
5161AFF87D8000701F8C7000114E0DE003F7F737F737F737F8587851C8085A21CC0A81C8061
5171C00A24F5B61634F5B4F5B077F13C04EB55A060F49C7FC92B812F81AC0A21AFC1AFF03F8
518C86C13C0071F13F007077F7313FE737F731480A27413C01CE0A27413F0A31CF886A662A2
5191CF0A35013E0A297B512C0614F14804F14004F5B073F5B4EB55ABC5A1BC06308FCC7FC1A
520E007FCC8FC55527CD162>I<932601FFFCEC03C0047FD9FFC013070307B600F8130F033F
52103FE131F92B8EA803F0203EFC0FF020FDAF00113F1023F49C7EA3FFB4A01F00207B5FC49
522B500C0804991C9FC4949824901F88249498249498249498290B5488292CAFC4885485B86
523485B481A7FA24849183FA3485B1B1FA25AA24A95C7FCA3B5FCAE7EA280A2F30FC07EA36C
5247FA21B1F6C6D1980A26C1A3F6C7F1C006C6D606C6E17FEA26D6D4C5A6D6D4C5A6D6D1607
5256D6D4C5A6D01FE4C5A6D6D4C5A6D02C0EDFF806D6C01F8020390C7FC6E01FFEC1FFE020F
52602F0EBFFF8020391B65A020017C0033F93C8FC030715FCDB007F14E0040101FCC9FC5254
52778D263>I<BA12C019FEF1FFC01AF81AFE747ED8000701F8C7000F14E0060080071F13FC
52807077F07017F7380747F081F7F8886747F747FA2747FA288861D80A2871DC0A31DE0A487
5291DF0AF1DE063A41DC0A398B51280A31D0062646264505BA2505B505B505B505B4FB5C7FC
5304F5B070F5B077F5B0607B512E0BC128098C8FC1AF81AE04FC9FC19C05C527CD169>I<BC
5317EA487A2D8000701FCC71203F0003F1907851900747E1A3FA21A1F1A0FA3747EA31A0318
5327EA3871A01A306FE90C8FCA3170117031707173F92B6FCA69238FC003F17071703170117
53300A2F31F80187EA2F33F00A595C85AA21B7EA21BFEA31A01631A031A07A21A0F1A1F1A3F
534F2FFF81903190F4EB5FCBCFCA363A351517CD05A>I<BCFCA41B80A2D8000701FCC71207
535F0007F190F1903857313C01A7FA21A3F1A1FA21A0F1BE0A31A07A2187EA21BF01A03A397
536C7FC18FEA3170117031707173F92B6FCA69238FC003F1707170317011700A3187EA795C9
537FCB2B812FCA64C517CD057>I<932601FFFCEC01E0047FD9FFE013030307B600F8130703
5381F03FF130F92B8EAC01F0203EFE07F020FDAF801EBF8FF023F91C7EA1FFD4A01F80207B5
539FC91B500C01401010391C97E4949824901F88249498249498249498290B54882A24891CB
540FC485B1B7F485B1B3F5A4A181F5AA2485B1B0FA25AA298C8FC5CA2B5FCAE6C057FB712F0
541A280A37E95C7003FEBE000A26C7FA27E807EA26C7FA26C7F6C80A26D7F6D7F6D7F6D01FC
5425E6D7F6D6D6C92B5FC010002E05C6E01F85C6E01FF140F020F02F8EBFFF9020391B612F0
5430200EFE03F031FEE800F03079238FE0003DB007F02F01300040191CAFC5C5478D26C>I<
544B800E090B812E0A6D8000701FCC9000701FCC7FCB3AC92BAFCA603FCC91207B3B0B800E0
54590B812E0A663527CD16C>I<B812E0A6D8000701FCC7FCB3B3B3B0B812E0A62B527CD134>
546I<B800E0027FB6FCA6D8000701FCCAD87FF8C7FC1CE0F3FF805090C8FC505AF20FFC505A
547F23FE0505A505A070390C9FC4F5AF10FF84F5A4F5AF1FFC04E5B4E90CAFCF007FC4E5AF0
5483FF04E5A4E5A4D90CBFC4D5AEF0FFC171F4D7E4D7E94B57E0403805E4C804C804C8093B6
549FC03FD019F7F92B5000F7F04FC804C7E4C6C804C6C8004C08193C7FC4B6E7F4B6E7F8672
5507F84727F87728084728087737F85737F737F87857380738088738086747F88747F88B800
551E0011FB712C0A662527CD16C>75 D<B812FCA6D8000701FCCAFCB3B3A71A3FA41A7EA51A
552FEA3F101FCA31903A21907190F191FA2F13FF819FF601807181F4DB5FCBBFCA21AF0A448
553527CD153>I<B600FC070FB612C06F616F61A27060A2D800070BF8C7FC7018FBA202F76D
554EF01F3A202F36DEF03E3A202F16DEF07C3A202F06DEF0F83A26F6CEF1F03A36F6C173EA2
5556F6D167CA26F6D16F8A26F6DED01F0A26F6DED03E0A36F6DED07C0A26F6DED0F80A2706C
556ED1F00A2706C153EA2706D5CA3706D5CA2706D495AA2706D495AA2706D495AA2706D495A
557A2716C49C7FCA3716C133EA2716D5AA2716D5AA271EBE1F0A271EBF3E0A371EBFFC0A271
5585CA27290C8FCA2725AA2725A497EB76C057FB712C0725AA2725AA2725A7A527CD183>I<
55993380FFFC00303B6FC031F15E092B712FC020316FF020FD9FC0014C0023F01E0011F13F0
5604A90C700037F4948486E13FE4901F86E6C7E49496F7F49496F7F49496F7F49496F7F4990
561C96C7F90B5844A8248864849707FA24849711380A248497113C0A2481BE0A24A83481BF0
562A3481BF8A24A83A3B51AFCAF6C1BF8A36E5FA26C1BF0A36C1BE06E5FA26C1BC06E5F6C1B
56380EE01FE6C6D902607FF8090B512006C031F01E05C6E496D5A6C4B01F85C6D6C9027FF03
564FC035B6D902881FC00FE075B6DD9C1F8D97F0F5B6D01E1DA3F9F5B6DD9F1F06DB55A6D01
565F994C7FC6DD9FFF86D5B6D60023F6D4913F0020F01FF90B512C0020391B6C8FC020016FC
566031F6F140C03036F141EDB001F01E37F93C700016D133E869738F801FE97B5FCA2841CFC
567A285A21CF8A2851CF07314E0A27314C0731480731400735B9638007FF8F21FE0576A78D2
56867>81 D<B912FCF0FFE019FEF1FFC01AF01AFCD8000701F8C7003F13FF06038006008007
5693F7F737F737F87737FA2737FA388A899C8FCA263616361634F5B4F5B96B55A060391C9FC
570063F5B92B812F81AC097CAFC19FC19FF9226F8000180DD003F13E0060F7F727F727F8672
5717FA27280A2737FA587A587A575EB0780F50FC0A28773151FA2736D148075133FB800C06D
572EC807F739138C1FF000701ECFFFE735D083F5C080714E0CE001F138062537CD167>I<91
573261FFF80130F91B500F85B010702FF5B011FEDC07F49EDF0FF90B712F948D9FC0190B5FC
574489038E0000F48018013034848C8FC173F4848814981003F8283485A838312FFA2847FA2
5756D82A27F7F6E92C7FC14E06C13FCECFFC015FE6CECFFE016FF6C16E017F86C16FE6C8284
5766C17E06C836C837F011F826D82010382EB007F020F1680EC007F1503DB003F14C0160316
57700053F13E0838383127C00FC82A383A27E19C0A27EA26D4B1380A27F6D4B130001F85E6D
578150F01FF4B5A02C04A5A02F8ECFFF09126FFC0075B019F90B65A010F5ED8FE034BC7FC48
579C66C5C48010F14E0489026007FFEC8FC3B5478D24C>I<001FBC12C0A5481BE09126F000
5803F9038E0007F91C7160701FC1801498401E0193FA249191F49190FA248C8EF07F0A4007E
5811A03A500FE1BF8481A01A4C994C7FCB3B3AA91B912F8A655517BD060>I<B700FE013FB7
5826C013FB512FEA6D8003F01F0C8000F01FCC9380FFC006DF603F06F6F18076D735F856F1C
5830F6D735F6F8176151F6D71616F1C3F6D7493C7FCA270715D6D4D187E701BFE4F806E6570
5841A016E4C6E5D1AEF707114036E040F607003C716076E041F6E5D1A83701A0F6E043F6E5D
585701501077F6F131F6E6570DA7E00163F6E04FE6F91C8FC4F7F71616E030170137E05C049
5867F06037013FE6F4B6D5D05E018016F020704F85B4F7F05F0EFFC036F020F6005F8496D14
58707061F16FE6F4B6D5D05FC180F6F023F04FF5B96C77E7148179F6F63DDFF7E6E14BF6F02
588FE05FFC9FC4E81A26F624E81A270496F5BA270614E81A270614E81A270496F5BA2706195
589C97EA270614D82A2704871CAFC7048173E87537DD18E>87 D<91383FFFC00107B512FC01
5901FECFF80017F15E090B77E48D9E0077F48D9800013FE486DEB3FFF82486D81707F8284A2
591707F6C5BA26C5BC648C7FC90C8FCA44BB5FC4AB6FC143F49B7FC130F013FEBFE0390B512
592E0000314004813FC4813F0485B485B5C4890C7FCA2B5FC5BA35EA27F6C5D5E6E497F6C6D
593017E13FE6C6D4848EBFFF86C9026FC0FF814FC6C90B5487E0001EDC03F6C6CEC800F011F
5949026FE000313F8010101E090C8FC3E387CB643>97 D<EB3FF8B5FCA61203C6FCB3A3EE7F
595F80307B57E031F14F0037F14FC02F9B67E02FB9038807FFF9127FFFC001F13C003F00107
5967F03C06D7F4B7F4AC780717F5C727EA285A2721380A41AC0AD1A80A34E1300A36118FF61
597806E4A5B6F495B6F495B6F495BDAE7F8013F5B9126C3FF01B5C7FC028190B512FCDA007F
5985C496D14E049010791C8FC90C813F042547CD24C>I<913803FFF0023FEBFF8091B612E0
599010315F8010F81499038C01FFE903A7FFE0007FF4948491380485B48494913C05C5A485B
600A2485B7013805A70130048ED01FC91CAFCA3B5FCAD7E80A27EA2EF07E06C7F170F6C6D15
601C06C161F6E15806C6D143F6C6DEC7F006C6D14FE903A7FFF8003FC6D9038F01FF8010F90
602B55A6D5D01011580D9003F49C7FC020313E033387BB63D>I<943801FFC00407B5FCA6EE
603001F1707B3A3913803FFC0023F13FC49B6FC010715C74915F7013FD9E03FB5FC49EB0007
604D9FFFC130148496D7E484980484980484980A25A5C5AA25A91C8FCA3B5FCAD7EA46C7FA2
6057EA26C6D5CA26C6D5C6C5E6C6D49B5FC6C6D4914F0D97FFE010FECFFC0903A3FFF807FEF
6066D90B512CF0107158F6DECFE0FD9007F13F00207018049C7FC42547BD24C>I<913803FF
607E0023F13FE91B612C0010381010F15F84901C07F903A7FFE001FFE49486D7E48496D1380
60848496D13C0484915E048814A15F048815C48EE7FF8A25A91C8FC18FC173FB5FCA391B7FC
609A418F891CAFCA57EA3807EA218786C6D15FC17016C7F6CEE03F86C6D14076E15F06C6DEC
6101FE06C6C6C143F6D6C6CEBFFC06DD9F0071300010790B55A010115F86D6C14E0021F1480
611020001F8C7FC36387CB63F>I<ED0FFF92B512C0020714F0021F14F8027F14FC9139FFFC
6121FFE49EBF03F4901C013FF49495A491300495AA2495AA2017FEC3FFE4AEB1FFCEE0FF8EE
61307F093C7FCADB712F0A626007FFCC8FCB3B3A5007FB6FCA630547CD32A>I<91261FFF80
614EB3FC049B539F803FFE00107DAFE0F13F0011FDAFFBF13F8017F92B512FC9026FFFC0314
615CF48D9F000EBFC1F4801C0013F130F4816FE4849D91FFF13F8F007F04890C76CEB81E0F0
6168000A24883A86C5FA36C6D4990C7FCA26C6D495A6C5E6C01F0EBFFF86CD9FC035B4890B6
6175A1780D803E74AC8FC01E114F82607E01F138091CBFC120FA37FA27F13FE90B712C06C16
618FCEFFF8018E06C17F8846C836C836D178048B912C012074818E04848C8FCD83FF8150F48
61948030313F01700485A187FA56D16FF007F18E06D5D6C6C4B13C06C6C4B13806C6C6C021F
62013006C01F0ECFFFE6C01FF010F5BC691B612F0013F16C0010F93C7FC010115F8D9000749
621C8FC3E4F7CB545>I<EB3FF8B5FCA61203C6FCB3A3EE1FFE93B512E0030314F8030F804B
6228092393FE07FFF92267F001F7F15FCDAF9F86D7FECFBE014FF4B6D7F5D92C7FCA35CA35C
623B3ABB6D8FC07B612E0A643537BD24C>I<137F3801FFC0487F487F487FA2487FA76C5BA2
6246C5B6C5B6C5B6C6CC7FC90C8FCABEB1FF8B5FCA612017EB3B3A4B612F0A61C547BD326>
625I<EB3FF8B5FCA61203C6FCB3A44CB512FEA69326001FFCC7FCEF3FF04D5A4D5A4C90C8FC
626EE07FE4C5A4C5AEE3FE0EEFFC04B5B4B48C9FCED0FFC4B5A153F4B7E9138F9FFFE02FB7F
62791B67EA28383038F7F03077F14FE4A6C7F4A6C7F6F7F707FA2707F707F707F707FA2707F
628707F707F717F8385B6D8F803B612C0A642537CD249>107 D<EB3FF8B5FCA612017EB3B3
629B3AFB612F8A61D537BD226>I<D93FF8D90FFFED3FFCB5027F01E049B57E0303B500F801
6300F14E04B02FE4914F8031F6E017F8092263FE03F902680FF807F4BC66C903AC1FC007FFF
631000302FC6DD9C3F07FC6D9F9F86DD9E7E06D7FDAFBF0EDEFC04B5EDAFFC06D01FFC76C7F
6324B5DA292C75CA24A5EA34A5EB3ABB6D8FC03B6D8F00FB612C0A66A367BB573>I<D93FF8
633EB1FFEB591B512E0030314F8030F804B8092393FE07FFF92267F001F7F000314FCC6D9F9
634F86D7FECFBE014FF4B6D7F5D92C7FCA35CA35CB3ABB6D8FC07B612E0A643367BB54C>I<
635EDFFF0021FEBFF80027F14E00103B612FC4981011F9039C03FFF8090273FFE00077FD97F
636F801017F49486D7F48496E7E488348496E7E48834A80481880A24818C091C87EA24818E0
637A4B517F0AB6C18E0A46C18C06E5CA26C1880A26C6D4A13006C5F6E147F6C5F6C6D4A5A6C
63801FC01035B6D6C495B90271FFFC03F13806D90B6C7FC010315FC010015F0021F14800201
63901F8C8FC3C387CB645>I<D93FF8EB7FF8B50107B57E031F14F0037F14FC02F9B67E02FB
64001807F9127FFFC003F13C0000302F0010F7FC602C06D7F5D4AC76C7F717F5C717FA28584
6411A80A47213C0AD4E1380A31A0095B5FCA2615F616E5C6E5E6F495B6F495B6F495B03F801
6427F5BDBFF01B5C7FC02FD90B512FCDAFC7F5C6F14E0030791C8FC030013F093CAFCB0B612
643FCA6424D7CB54C>I<90393FF001FFB5010F13E04B13F84B7F4B7F9238FF1FFFECF1FC00
644039026F3F03F1380C6EBF7E015C0ECFF80A215007013005C705AEE03F84A90C8FCA45CB3
645A9B612FEA631367CB539>114 D<903A01FFF00780011FEBFF1F90B7FC5A120748EB001F
646D81FF8130701E0130148487F007F157F49143FA200FF151FA27FA27F01F891C7FC13FF14
647F06CEBFFC015FE6F7E6C15E06C15F86C816C816C816C16806C6C15C0011F15E01303D900
6481F14F01400030713F81501007CEC007F00FC153F161F7E160F7EA26D15F0A26D141F6D15
649E06D143F6DEC7FC001FE903801FF809026FFC00F130091B55A01BF5CD8FE1F14F0D8FC07
65014C027F0007FFCC7FC2D387CB636>I<143FA65CA45CA25BA35B5BA25B5B5B90B5FC5A00
6510F91B5FCB8FCA5D8003F90C8FCB3A8EE07E0AB6DEC0FC01580161F6D01C01380163F6D90
65238F07F006DEBFFFE6D5C6D6C5B021F13E0020313802B4D7ECB35>I<D91FFCEDFFE0B502
65307B5FCA60003ED001FC61607B3AD5FA35FA25F017F5D6E91B5FC013FDA01FB13F86ED907
654F3EBFFE06D9038C01FE36D90B512C36D15830101ECFE036D6C13F8020701C0EC80004337
6557BB54C>I<B600F80107B512C0A6C649C8383FE000017FEE1F806E153FA26D6D4AC7FCA2
6566D6D147E18FE6D6D5C17016D5E6F13036D5E6F13076D5E6F130F6D5E6F131FA26E6C495A
657A26E018090C8FC5F6E147EEEC0FE6E5C16E16E5C16F36E5C16FFA26E5CA26E5CA26F5BA2
6586F90C9FCA26F5AA26F5AA26F5AA26F5A42357DB449>I<B6D8F07FB5D8E001B512F0A600
6590101FCC7D87FF8C73807F8006C745A7214076E143F017F626E6E6C140F6D624D6C141F6D
6606D605F6F6F133F6D97C7FC6F90B56C5B6D197E5E03F001F96D13FE6D02035E03F8EDF001
6616D03F05D160703FC9039E07FF8036D020F5E03FEEDFC07027FDAC03F5C041F14FE03FFD9
662801F130F6E013F5E04BFECFF1F6E4A6C5C04FF159F4C6D13BF6E95C8FC4C6D13FF6E5FA2
6634C7F6E5F4C7F6E5FA24C147F6E5F4C143F037F5EA26F486E5A6FC86C5A5C357DB463>I<
664007FB500F8013FB51280A6D8003F0180D907FEC7FC6D6D6D5A6D6D495A6D6D495A6D4B5A
6656D6D495A6F495A6D6D49C8FC6E6C485A6E13816EEB83FC6EEBC7F8EEEFF06EEBFFE06E5C
6666E5C6E91C9FC81A26F7F6F7F6F7F5D4B7F4B7F92B57E834A486C7E4A487EDA07F8804A48
6676C7F4A486C7F4A486C7F4A486C7F82DAFF008049486D7F49486E7E49486E7F49486E7F01
6683F81B691B612F0A644357EB449>I<B600F80107B512C0A6C649C8383FE000017FEE1F80
6696E153FA26D6D4AC7FCA26D6D147E18FE6D6D5C17016D5E6F13036D5E6F13076D5E6F130F
6706D5E6F131FA26E6C495AA26E018090C8FC5F6E147EEEC0FE6E5C16E16E5C16F36E5C16FF
671A26E5CA26E5CA26F5BA26F90C9FCA26F5AA26F5AA26F5AA35EA25E150F5E151FD81FE05C
672486C133F486C91CAFC5D486C137E15FE4A5AA24A5A49485A007F495A9038F03FC06C48B4
6735A90B5CBFC6C5B000713F86C13E0C66CCCFC424D7DB449>I<001FB8128018C0A4DAC000
674148049C7140001F85B49495B49495B495D003F5C49495B4B5B5F5D90C7B55A4A91C7FC5E
6755C4A5B4A5BC75C5C4A5B4A5B5E91B5FC4991C8FC4949EB0FC05D5B495B495B4B131F4916
67680495B90B55A92C7FC48163F485B4849147F5C4816FF48495B48495B4A130F4892B51200
677B9FCA47E32357CB43D>I E
678%EndDVIPSBitmapFont
679%DVIPSBitmapFont: Fh cmr10 10 61
680/Fh 61 124 df<DA0FF813FC91397FFF07FF903B01F807DF83C0903A07E001FF0F903B1F
6818007FE1FE090393F000FFC137E16F85B9338F007804848010790C7FC1503ACB812F8A328
68201F80003F0C7FCB3AB486C497E267FFFE0B512F0A3333B7FBA30>11
683D<EC0FF8EC7FFE903901F80780903907E001C090391F8000E090383F0007017E497EA25B
684A2485A6F5AED018092C8FCA9ED03F0B7FCA33901F8000F1503B3AA486C497E267FFFE0B5
68512C0A32A3B7FBA2E>I<001C131C007F137F39FF80FF80A26D13C0A3007F137F001C131C
68600001300A40001130101801380A20003130301001300485B00061306000E130E485B485B
687485B006013601A197DB92A>34 D<121C127FEAFF80A213C0A3127F121C1200A412011380
688A2120313005A1206120E5A5A5A12600A1979B917>39 D<146014E0EB01C0EB0380EB0700
689130E131E5B5BA25B485AA2485AA212075B120F90C7FCA25A121EA2123EA35AA65AB2127C
690A67EA3121EA2121F7EA27F12077F1203A26C7EA26C7E1378A27F7F130E7FEB0380EB01C0
691EB00E01460135278BD20>I<12C07E12707E7E7E120F6C7E6C7EA26C7E6C7EA21378A213
6927C133C133E131EA2131F7FA21480A3EB07C0A6EB03E0B2EB07C0A6EB0F80A31400A25B13
6931EA2133E133C137C1378A25BA2485A485AA2485A48C7FC120E5A5A5A5A5A13527CBD20>
694I<121C127FEAFF80A213C0A3127F121C1200A412011380A2120313005A1206120E5A5A5A
69512600A19798817>44 D<B512FCA516057F941C>I<121C127FEAFF80A5EA7F00121C0909
696798817>I<150C151E153EA2153C157CA2157815F8A215F01401A215E01403A215C01407
697A21580140FA215005CA2141E143EA2143C147CA2147814F8A25C1301A25C1303A2495AA2
6985C130FA291C7FC5BA2131E133EA2133C137CA2137813F8A25B1201A25B1203A25B1207A2
6995B120FA290C8FC5AA2121E123EA2123C127CA2127812F8A25A12601F537BBD2A>I<EB01
700C013031307131F13FFB5FCA2131F1200B3B3A8497E007FB512F0A31C3879B72A>49
701D<EB0FF0EB7FFE48B57E3903E03FE0390F000FF0000E6D7E486D7E486D7E123000706D7E
702126012FCB4EC7F807FA56CC7FC121CC8FCEDFF00A34A5A5D14035D4A5A5D140F4A5A4A5A
70392C7FC147C5C495A495A495A495A91C8FC011EEB01805B5B49130348481400485A485A00
7040EC75A000FB6FC5A5A485CB6FCA321387CB72A>I<EB07F8EB3FFF4913C03901F80FF039
70503C007F848486C7E380E0001000F80381FE0006D7FA56C5A6C5AC85A1401A25D4A5AA24A
7065A5DEC0F80027EC7FCEB1FFCECFF809038000FE06E7EEC01FC816E7EED7F80A216C0A215
7073F16E0A2121EEA7F80487EA416C049137F007F1580007EC7FC0070ECFF006C495A121E39
7080F8003F83907F00FF00001B512C06C6C90C7FCEB0FF8233A7DB72A>I<1538A2157815F8
709A2140114031407A2140F141F141B14331473146314C313011483EB030313071306130C13
7101C131813301370136013C01201EA038013005A120E120C5A123812305A12E0B712F8A3C7
7113803F800AB4A7E0103B512F8A325397EB82A>I<0006140CD80780133C9038F003F890B5
712FC5D5D158092C7FC14FC38067FE090C9FCABEB07F8EB3FFE9038780F803907E007E09038
7138003F0496C7E12066E7EC87EA28181A21680A4123E127F487EA490C71300485C12E00060
7145C12700030495A00385C6C1303001E495A6C6C485A3907E03F800001B5C7FC38007FFCEB
7151FE0213A7CB72A>I<EC3FC0903801FFF0010713FC90380FE03E90383F800790387E001F
71649EB3F804848137F485AA2485A000FEC3F0049131E001F91C7FCA2485AA3127F90C9FCEB
71701FC903807FF8039FF1E07E090383801F0496C7E01607F01E0137E497FA249148016C015
7181FA290C713E0A57EA56C7E16C0A2121FED3F807F000F15006C6C5B15FE6C6C5B6C6C485A
7193900FE07F090383FFFC06D90C7FCEB03FC233A7DB72A>I<EB03F8EB1FFF017F13C09038
720FC07E03903F803F048486C7E48486C7E49137E121F48487FA2007F158090C7FCA248EC1F
721C0A616E0A56C143FA27F123F001F147FA26C6C13FF3907E001DF0003149F3801F0033900
722FC0F1FD93FFC13C0EB07F090C7FC153F1680A316005D000F147E487E486C5BA24A5A4A5A
72349485A6C48485A001C495A260F807FC7FC3807FFFC000113F038003FC0233A7DB72A>57
724D<121C127FEAFF80A5EA7F00121CC7FCB2121C127FEAFF80A5EA7F00121C092479A317>
725I<1538A3157CA315FEA34A7EA34A6C7EA202077FEC063FA2020E7FEC0C1FA2021C7FEC18
7260FA202387FEC3007A202707FEC6003A202C07F1501A2D901807F81A249C77F167FA20106
727810107B6FCA24981010CC7121FA2496E7EA3496E7EA3496E7EA213E0707E1201486C81D8
7280FFC02071380B56C90B512FEA3373C7DBB3E>65 D<B712C016F816FE000190398001FF80
7296C90C7EA3FE0EE0FF0EE03F8707E707E177FA2EF3F8018C0171F18E0170F18F0A3EF07F8
730A418FCAC18F8A4EF0FF0A218E0A2171F18C0EF3F80A2EF7F0017FE4C5A4C5AEE0FF0EE3F
731E0486DEBFF80B8C7FC16F816C036397DB83F>68 D<B812FCA30001903880000F6C90C712
73201EE007E173E171E170EA31706A317078316C0A394C7FCA31501A21503150F91B5FCA3EC
733000F15031501A21500A21860A318E093C712C0A41701A3EF0380A21707A2170F173F177F
734486D903807FF00B9FCA333397DB839>I<B812F8A30001903880001F6C90C71201EE00FC
735177C173C171CA2170CA4170E1706A2ED0180A21700A41503A21507151F91B5FCA3EC001F
73615071503A21501A692C8FCAD4813C0B612C0A32F397DB836>I<DBFF8013C0020FEBF001
737023F13FC9139FF803F03903A03FC000787D90FF0EB03CF4948EB00EF4948147F4948143F
73849C8121F485A4848150F48481507A248481503A2485A1701123F5B007F1600A448481600
739AB93B6FCA26C7E9338007FE0EF3FC0A2123F7F121FA26C7EA26C7EA26C7E6C7E6C6C157F
7406D7E6D6C14FF6D6C14EFD90FF8EB03C7D903FEEB0783903A00FFC03F0191393FFFFC0002
7410F01F0130002001380383D7CBA41>I<B612C0A3C6EBC0006D5AB3B3AD497EB612C0A31A
742397EB81E>73 D<B612E0A3000101C0C8FC6C90C9FCB3AD1718A517381730A31770A317F0
743A216011603160FEE1FE0486D13FFB8FCA32D397DB834>76 D<B5933807FFF86E5DA20001
744F0FC002600DFC0ED1BF8A2D9CFE01533A3D9C7F01563A3D9C3F815C3A2D9C1FCEC0183A3
745D9C0FEEC0303A2027F1406A36E6C130CA36E6C1318A26E6C1330A36E6C1360A26E6C13C0
746A3913901FC0180A3913900FE0300A2ED7F06A3ED3F8CA2ED1FD8A3ED0FF0A3486C6D5A48
7477ED80FFC6D48497EB500C00203B512F8A2ED018045397DB84C>I<B5913807FFFE8080C6
7489238007FE06EEC1F80D9DFF0EC0F001706EBCFF8EBC7FCA2EBC3FEEBC1FFA201C07F6E7E
749A26E7E6E7E81140F6E7E8114036E7E168080ED7FC016E0153FED1FF0ED0FF8A2ED07FCED
75003FEA2ED01FF6F1386A2EE7FC6EE3FE6A2EE1FF6EE0FFEA216071603A216011600A2177E
751486C153E487ED80FFC151EB500C0140EA2170637397DB83E>I<EC03FF021F13E09138FE
75201FC903901F8007ED907E0EB1F8049486D7ED93F80EB07F049C76C7E01FE6E7E48486E7E
75349157E0003167F4848ED3F80A24848ED1FC0A2001F17E049150F003F17F0A3007F17F849
7541507A300FF17FCAC007F17F86D150FA3003F17F0A26C6CED1FE0A36C6CED3FC000071780
7556D157F000317006C6C15FEA26C6C4A5A017F4A5A6D6C495A6D6C495AD907E0EB1F80D903
756F8017FC7FC903900FE01FC91381FFFE0020390C8FC363D7BBA41>I<003FB812E0A3D9C0
75703EB001F273E0001FE130348EE01F00078160000701770A300601730A400E01738481718
758A4C71600B3B0913807FF80011FB612E0A335397DB83C>84 D<B6903807FFFEA300010180
7599038007FE06C90C8EA1F80EF0F001706B3B2170E6D150C80171C133F17186D6C14385F6D
7606C14F06D6C5C6D6C495A6D6CEB07806D6C49C7FC91387F807E91381FFFF8020713E09138
761007F80373B7DB83E>I<B500FC91387FFF80A30003018091380FFC006C90C8EA07E0715A
7626C705A6E1403017F93C7FCA280013F1506A26E140E011F150C80010F5DA28001075DA26E
763147001031560A26D6C5CA2806D4A5AA2ED8003027F91C8FCA291383FC006A215E0021F5B
764A2EDF01C020F1318A26E6C5AA215FC02035BA2EDFEE002015BA26E6C5AA36FC9FCA3153E
765A2151CA3393B7EB83E>I<B5D8FC07B5D8F001B5FCA30007902780001FFEC7EA1FF86C48
766C7D80FF8EC07E000010307ED03C01B807F6C6F6C1500A26E5F017F6E6C1406A280013F4A
7676C5CA280011F4A6D5BEE067FA26D6C010E6D5BEE0C3FA26D6C011C6D5BEE181FA26D6C6F
7685BEE300FA26D6C6F485AEE6007A26D6C4CC7FC9338C003FCA203805D913B7F818001FE06
769A203C1150EDA3FC3C7EAFF0CA203E3151CDA1FE6EC7F98A215F6DA0FFCEC3FF0A302075E
7704B141FA202035E4B140FA202015E4B1407A2020093C8FC4B80503B7EB855>I<007FB590
771383FFFFCA3C601F801071380D97FE0D903FCC7FC013FEC01F06D6C5C5F6D6C5C6D6C1303
7724CC8FC6D6C1306160E6D6C5B6DEB8018163891387FC0306E6C5A16E06E6C5A91380FF180
77315FB6EB4C9FC5D14036E7EA26E7F6F7EA24B7E15DF9138019FF09138038FF8150F913806
77407FC91380E03FE140C4A6C7EEC38000230804A6D7E14E04A6D7E49486D7E130391C76C7E
77501066E7E130E010C6E7E011C1401013C8101FE822607FF80010713E0B500E0013FEBFF80
776A339397EB83E>I<3901800180000313033907000700000E130E485B0018131800381338
777003013300070137000601360A200E013E0485BA400CE13CE39FF80FF806D13C0A3007F13
7787FA2393F803F80390E000E001A1974B92A>92 D<EB1FE0EBFFFC3803E03F3907000F8039
7790F8007E0486C6C7E13E06E7EA26E7E6C5A6C5AC8FCA4147FEB07FFEB3FE0EBFE00EA03F8
780EA0FF0EA1FC0123F485A90C7FC160C12FEA31401A26C13036CEB077C903980063E18383F
781C01E3A0FE0781FF03A03FFF00FE03A007F8007C026277DA52A>97
782D<EA03F012FFA3120F1203B0EC1FE0EC7FF89038F1E03E9039F3801F809039F7000FC001
783FEEB07E049EB03F049EB01F85BED00FCA216FEA2167E167FAA167E16FEA216FC15016D14
784F8ED03F07F01EEEB07E001C6EB0FC09039C7801F00903881E07E903800FFF8C7EA1FC028
7853B7EB92E>I<EB03FC90381FFF8090387E03E03901F80070484813F83907E001FC380FC0
78603A2EA1F80123F90380001F848EB00F01500A2127E12FEAA127E127FA26C14067F001F14
7870E6D130C000F141C6C6C13386C6C13706C6C13E039007C07C090381FFF00EB07F81F277D
788A525>I<ED0FC0EC03FFA3EC003F150FB0EB03F8EB1FFF90387E078F9038F801EF3903F0
789007F4848133F4848131FA24848130F123F90C7FC5AA2127E12FEAA127E127FA27EA26C6C
790131FA26C6C133F6C6C137F6C6CEBEFF03A01F801CFFF39007C078F90381FFE0FD907F813
791C0283B7DB92E>I<EB07F8EB1FFF90387C0FC03901F803E03903F001F0D807E013F8380F
792C0004848137CA248C7127E153E5A153F127E12FEA3B7FCA248C8FCA5127EA2127FA26C14
793037F001F14076C6C13060007140E6D131CD801F013386C6C137090387E03E090381FFF80
794903803FC0020277EA525>I<147E903803FF8090380FC1E0EB1F8790383F0FF0137EA213
795FCA23901F803C091C7FCADB512FCA3D801F8C7FCB3AB487E387FFFF8A31C3B7FBA19>I<
796ED03F090390FF00FF890393FFC3C3C9039F81F707C3901F00FE03903E007C03A07C003E0
79710000FECF000A248486C7EA86C6C485AA200075C6C6C485A6D485A6D48C7FC38073FFC38
798060FF0000EC9FCA4120FA213C06CB512C015F86C14FE6CECFF804815C03A0F80007FE048
799C7EA0FF0003E140348140116F8481400A56C1401007C15F06CEC03E0003F1407D80F80EB
8000F80D807E0EB3F003901FC01FC39007FFFF0010790C7FC26387EA52A>I<EA03F012FFA3
801120F1203B0EC0FF0EC3FFCECF03F9039F1C01F809039F3800FC0EBF70013FE496D7EA25B
802A35BB3A3486C497EB500C1B51280A3293A7EB92E>I<EA0380EA0FE0487EA56C5AEA0380
803C8FCAAEA03F012FFA312071203B3AA487EB512C0A312387EB717>I<EB01C0EB07F0EB0F
804F8A5EB07F0EB01C090C7FCAAEB01F813FFA313071301B3B3A2123C127E00FF13F01303A2
80514E038FE07C0127C383C0F00EA0FFEEA03F8154984B719>I<EA03F012FFA3120F1203B1
806913801FFFCA39138007FC01600157C15705D4A5A4A5A4AC7FC141E1438147814FC13F1EB
807F3FEEBF73F01FE7FEBF81F496C7E8114076E7E6E7E811400157E157F811680ED1FC0486C
808EB3FF0B500C0B5FCA3283A7EB92C>I<EA03F012FFA3120F1203B3B3AD487EB512C0A312
8093A7EB917>I<2703F00FF0EB1FE000FFD93FFCEB7FF8913AF03F01E07E903BF1C01F8380
8103F3D0FF3800FC7001F802603F70013CE01FE14DC49D907F8EB0FC0A2495CA3495CB3A348
8116C496CEB1FE0B500C1B50083B5FCA340257EA445>I<3903F00FF000FFEB3FFCECF03F90
81239F1C01F803A0FF3800FC03803F70013FE496D7EA25BA35BB3A3486C497EB500C1B51280
813A329257EA42E>I<EB03FE90380FFF8090383E03E09038F800F84848137C48487F48487F
8144848EB0F80001F15C090C712074815E0A2007EEC03F0A400FE15F8A9007E15F0A2007F14
815076C15E0A26C6CEB0FC0000F15806D131F6C6CEB3F006C6C137EC66C13F890387E03F090
816381FFFC0D903FEC7FC25277EA52A>I<3903F01FE000FFEB7FF89038F1E07E9039F3801F
817803A0FF7000FC0D803FEEB07E049EB03F04914F849130116FC150016FEA3167FAA16FEA3
818ED01FCA26DEB03F816F06D13076DEB0FE001F614C09039F7803F009038F1E07E9038F0FF
819F8EC1FC091C8FCAB487EB512C0A328357EA42E>I<D903F813C090381FFE0190387E0781
8209038FC01C33903F000E3000714774848133749133F001F141F485A150F48C7FCA312FEAA
821127FA37E6D131F121F6D133F120F6C6C137F6C6C13EF3901F801CF39007E078F90381FFE
8220FEB07F890C7FCABED1FE00203B5FCA328357DA42C>I<3807E01F00FFEB7FC09038E1E3
823E09038E387F0380FE707EA03E613EE9038EC03E09038FC0080491300A45BB3A2487EB512
824F0A31C257EA421>I<EBFF03000313E7380F80FF381E003F487F487F00707F12F0A2807E
825A27EB490C7FCEA7FE013FF6C13E06C13F86C7F00037FC67F01071380EB007F141F00C0EB
8260FC01407A26C1303A37E15806C13077EEC0F00B4131E38F3C07C38E1FFF038C03F801A27
8277DA521>I<1318A51338A31378A313F8120112031207001FB5FCB6FCA2D801F8C7FCB215
828C0A93800FC011580EB7C03017E13006D5AEB0FFEEB01F81A347FB220>I<D803F0EB07E0
82900FFEB01FFA3000FEB001F00031407B3A4150FA3151F12016D133F0000EC77F86D9038E7
830FF8090383F03C790381FFF87903A03FC07E00029267EA42E>I<B538803FFEA33A0FF800
8310FF06C48EB07E00003EC03C06D148000011500A26C6C1306A26D130E017E130CA26D5BA2
832EC8038011F1330A26D6C5AA214E001075BA2903803F180A3D901FBC7FCA214FF6D5AA214
8337CA31438A227257EA32C>I<B53A1FFFE03FFEA3260FF8009038000FF86C48017EEB03E0
83418C00003023EEB0180A26C6C013FEB0300A36C6CEC8006156FA2017E9038EFC00C15C7A2
835D93F016D5A15830281EBF038D91F831430150102C3EBF87090260FC6001360A2D907E66D
8365A02EC137CA2D903FCEB7F804A133FA2010192C7FC4A7FA20100141E4A130E0260130C37
837257EA33C>I<B538807FFFA33A03FE003FF00001EC1F80000092C7FC017E131C6D13186D
8386C5AECC070010F5B6D6C5AECF180EB03FB6DB4C8FC6D5AA2147F804A7E8114CF903801C7
839E090380383F090380703F8EB0601496C7E011C137E49137F01787F496D7E486C80000FEC
8403FF0D8FFFE90B51280A329247FA32C>I<B538803FFEA33A0FF8000FF06C48EB07C00003
841EC03806C7E16007F00001406A2017E5BA2137F6D5BA26D6C5AA2ECC070010F1360A26D6C
8425AA214F101035BA2D901FBC7FCA214FF6D5AA2147CA31438A21430A214701460A25CA2EA
8437C0100FE5B130391C8FC1306EAFC0EEA701C6C5AEA1FF0EA0FC027357EA32C>I<003FB5
84412FCA2EB8003D83E0013F8003CEB07F00038EB0FE012300070EB1FC0EC3F800060137F15
8450014FE495AA2C6485A495AA2495A495A495AA290387F000613FEA2485A485A0007140E5B
8464848130C4848131CA24848133C48C7127C48EB03FC90B5FCA21F247EA325>I<B81280A2
847290280962A>I E
848%EndDVIPSBitmapFont
849%DVIPSBitmapFont: Fi cmbx10 17.28 15
850/Fi 15 116 df<95B56C15E0053F02FCEC03F00407B76C1307043F04E0130F4BB800F813
8511F030705FE133F031F9438FF807F037F9126FC003FEBC1FF4AB60080010313F34A02F8C8
8526CB5FC020F02C0151F4A91C91207027F01FC8291B548824902E0707E494A83494A834991
853CB7E495B49498449865D90B5488448875D481C7F5D481C3F5D5A1D1F4891CDFCA3481C0F
8545CA248F407E09AC7FCA35CA2B5FCB07EA280A47EF503E06EF207F07EA36C801D0F7E6F1A
855E07E6F191F7E6FF13FC07E6D6DF17F80816DF3FF006D6D606D6D4E5A6D6E17076D6E4D5A
8566D02F04D5A6D6E4D5A6E6D4D5A021F01FF4C485A6E02E003075B020302F8DB1FFEC7FC6E
857DAFF80ECFFFC6E6C02FC011F13F0031F91B75A0307188003014DC8FCDB003F16F8040716
858C0DC003F4AC9FC05001480646677E377>67 D<BEFCA41D80A3D8000102F0C8FC1A071A00
8591B3F871B077513C087A2871C7FA21C3FA3F41FE0A31C0FF13F80A5F407F0A3197F99C7FC
860A219FFA26060180F187F93B7FCA79338F0007F180F18038484A2197F1D7FA2193F1DFEA6
8611C0196C813FCA31C03A31C071DF8A21C0FA21C1F1C3F1DF01C7F1CFF63631B0F6398B512
862E01A0797B6FCBEFCA41DC0A360617AE06C>69 D<95B56C1570053F02FCEC01F80403B76C
8631303043F04F0130793B800FC130F030705FF131F031FF0C03F037F9126FC001FEBE0FF92
864B60080010113F9020302FCC8003FB5FC020F02E0150F4A028015034A49C97E91B500F882
865494A834902C0171F495C4991CB7E49498449864B84495B90B54884481C7F5D481C3F5D48
8661C1F5D5A1D0F4891CDFCA3481C075CA2775A4899C8FCA35CA2B5FCB07E6E041FB9FCA47E
867A36E93C8ECF8007EA36C80A26C80A27E817E816C807F6D7F816D7F6D806D6E5E6D806D80
8686D6E5E023F01FE5E6E6D6C5D6E02E05D020302FC157F0200DAFFC0903801FFF36F02FE01
8691F13E1031F91B7EAC07F0307F0001F03004D1307043F04F81301040304C0EB0070DC003F
8704ACAFC050014C0706677E382>71 D<B700F80403B712F08282A2828383D800016F92C700
8713F90C7FC71EF07F8A2838383834A81816F806F806F80846F80816F806F80708070808582
872708070807080708085708183718071807180867180837180718072808772808472807280
8737280877280847314807314C07314E07314F01CF8857314FC7314FE7314FF7414871DC774
87414E7867414F77414FF86A28686878787A28787878787A2888888888888A28890260FFFC0
87584B700FC187F1D3F1D1FA21D0F1D07775A74627AE181>78 D<BA12FEF1FFF8F2FFC01BF8
8761BFEF3FFC01CF0D8000102E0C7001F80070014FE081F7F748008038074807480757F8987
87789A28987A28AA99BC8FCA2515BA265A2515B6598B55A505C505C080F91C9FC083F13FC4F
878B55A071F14E093B9CAFC1BFC1BC0871BF804E0C714FE071F6D7E070780070114F0738074
8797F8688747F8689A28689A989A8F701F0F703F889A286A21F07746E14F08677130FB900C0
8806E16E0756D131F756DEB3FC0759138C0FF80090391B5120009005D0A3F5CCF000314F0E2
881001F13C075647AE17C>82 D<B900E0020FB712C0A7D8000102F0CB01FCC7FCF51FE0B3B3
882B3A96D1B3F66A2826E1A7F66A26E1AFF7096C8FC6E61656E6D17036E6D4D5A1C0F6E6E4C
8835A6E6E4C5A6E6E4C5A6F6D4B485A6F01FC03075B6F01FF031F90C9FC030702C0ECFFFE6F
88402FE011F5B030091B712F0043F5F040F178004034CCAFCDC007F15F005071580DD001F01
885F0CBFC72647AE17F>85 D<913803FFFE027FEBFFF00103B612FE010F6F7E013F16E049D9
886001F13F8D9FFE001077F486D01017F4801FC6D6D7E717F486D8085717FA2717FA3856C49
88780A26C5B38007FE0EB1F8090C9FCA5040FB5FC030FB6FC4AB7FC141F91B8FC0103ECF807
888010F1400013F13F890B512E04814804891C7FC4813FC485B5A485B5C5A5CB5FCA25CA25F
889A36E5CA26C5E6E5C6C6D02FD7F0401ECFFC06C6DD903F9ECFF806C01FED90FF015C00003
8909039FFC07FE06C91B5EA807F6C6C4B7E011F02FC130F010302F001011480D9001F018090
891C9FC4A437BC150>97 D<92380FFFF092B67E020715F0023F15FC91B8FC4917800107DA00
8921F13C04901F8010313E04901E0010F13F0017F5B90B5484913F84891C7FC5C5A485BA248
8935B5A7113F05C487013E005011380489338007E0095C7FC5CA3B5FCAE7E80A37EA2806C18
894F8F001FC6C6D1503A26C6DED07F86C7FF00FF06C6E141F6C6E15E06D6DEC7FC06D01F814
895FF6D01FE010313800107903AFFC01FFE006D91B55A01005E023F15E0020F1580020102FC
896C7FCDA000F13C03E437BC149>99 D<F13FFE0507B5FCA7EF00078484B3A7923807FFE092
897B512FC0207ECFF81021F15E1027F15F149B538C03FFD01079026FC0007B5FC4901F01301
89849496D7E017F01808090B5814891C87E4A814849815A485BA25A5C5AA35A5CA3B5FCAE7E
899A46C7FA37EA26C7FA26C6D5D6C5F806C5F6C6D5D6D6D4A7F6D6D49B67E6D6D49EDFF8001
9000701F8130F6D01FFEBFFF3010091B512E3023F1583020FECFE03020114F8DA000F018002
901E0C7FC51657BE35C>I<92380FFFC04AB512FC020FECFF80023F15E091B712F80103D9FE
902037F499039F0007FFE011F49EB1FFF4901806D7F4990C76C7F90B56E7F48496E7F5C4870
9037F485B8548177F4A825A183F4884A2485BA21A8084A2B5FCA391B9FCA41A0002E0CBFCA5
9047EA3807EA36C181F6EEE3F807E197F6C6D17006C606E5E6C6D15016C6E4A5A6D6D14076D
9056DEC1FF86D01F8EC7FF06D01FE49485A01039026FFC01F5B6D91B6C7FC6D6C5D021F15F8
906020315E0DA007F91C8FC030713F041437BC14C>I<EE3FFE0307B512C0033F14F092B67E
907020381020F9038F80FFF4AEBC03F027FD9007F13804A5A494990B512C0495BA2495BA249
9085BA349496D1380711300715A715AEF01E094C8FCAFB812E0A7D8001F01E0C9FCB3B3AE00
9097FB612FEA73A657BE432>I<902607FF80902607FFC0ED1FFFB6027F01FC4AB512F04CB6
910020714FC040703C0011F14FF041F6F017F8193263FF81F6D9026FFE07F7F9326FF800790
91128F803FE001F7F922781FE00039026FC07F86D7FC6DA83F89226FE0FE0816DD987F04C5A
9126DD98FE06D6D48486D7F4C94C7FCDB9F80167E03BFC84A8003BE4D8215FE4B5FA24B5FA2
9134B5FA34B5FB3B1B7D8F803B7D8E00FB71280A781417AC08A>109
914D<902607FF80903807FFC0B6027F13FC4CB6FC040715C0041F8193263FF81F7F9326FF80
915077F922781FE00037FC6DA83F8816DEB87F06DD98FE06D7F5EED9F8003BFC8FC03BE8315
916FE5DA25DA25DA35DB3B1B7D8F803B712E0A753417AC05C>I<903A07FF8007FEB690381F
917FFC0047F13F093B57E038314FE923987FC1FFFDCF07F1380ED8FC0C6DA9F80B512C07F6D
918EBBF0015BE15FE5DA25D7113805D711300EF0FFCEF03F04B90C8FCA55DB3AEB712FCA73A
919417BC044>114 D<913A3FFFC007800103B538FC1FC0011FECFF3F017F15FF9038FFF000
920000390C7121FD807FC1407484880484880484880177F485A173FA212FF6D151FA27F7F6D
921ED0F8001FF92C7FC14E014FF15F86CECFFE016FC6C15FF17C06C16F06C826C16FE6C826C
92217806C6C16C06D16E0130F010116F0EB003F020115F8EC0007DB003F13FC16071601007C
9238100FE167F173F6C161FA36D150FA26D16F8A26D151F7F18F06D153F6DED7FE06D16C06D
9246C903801FF8002E00107130002FCEB7FFE01DFB65A018715F0D8FE0315C048C66C91C7FC
9250070010713E036437BC141>I E
926%EndDVIPSBitmapFont
927end 75end
76
77%%EndProcSet
78%%BeginFont: CMMI8
79%!PS-AdobeFont-1.1: CMMI8 1.100
80%%CreationDate: 1996 Jul 23 07:53:54
81% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
8211 dict begin
83/FontInfo 7 dict dup begin
84/version (1.100) readonly def
85/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
86/FullName (CMMI8) readonly def
87/FamilyName (Computer Modern) readonly def
88/Weight (Medium) readonly def
89/ItalicAngle -14.04 def
90/isFixedPitch false def
91end readonly def
92/FontName /CMMI8 def
93/PaintType 0 def
94/FontType 1 def
95/FontMatrix [0.001 0 0 0.001 0 0] readonly def
96/Encoding 256 array
970 1 255 {1 index exch /.notdef put} for
98dup 58 /period put
99readonly def
100/FontBBox{-24 -250 1110 750}readonly def
101currentdict end
102currentfile eexec
103D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
1043B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
105532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
106B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
107986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
108D919C2DDD26BDC0D99398B9F4D03D6A8F05B47AF95EF28A9C561DBDC98C47CF5
1095250011D19E9366EB6FD153D3A100CAA6212E3D5D93990737F8D326D347B7EDC
1104391C9DF440285B8FC159D0E98D4258FC57892DDF753642CD526A96ACEDA4120
111788F22B1D09F149794E66DD1AC2C2B3BC6FEC59D626F427CD5AE9C54C7F78F62
112C36F49B3C2E5E62AFB56DCEE87445A12A942C14AE618D1FE1B11A9CF9FAA1F32
113617B598CE5058715EF3051E228F72F651040AD99A741F247C68007E68C84E9D1
114D0BF99AA5D777D88A7D3CED2EA67F4AE61E8BC0495E7DA382E82DDB2B009DD63
115532C74E3BE5EC555A014BCBB6AB31B8286D7712E0E926F8696830672B8214E9B
1165D0740C16ADF0AFD47C4938F373575C6CA91E46D88DE24E682DEC44B57EA8AF8
1174E57D45646073250D82C4B50CBBB0B369932618301F3D4186277103B53B3C9E6
118DB42D6B30115F67B9D078220D5752644930643BDF9FACF684EBE13E39B65055E
119B1BD054C324962025EC79E1D155936FE32D9F2224353F2A46C3558EF216F6BB2
120A304BAF752BEEC36C4440B556AEFECF454BA7CBBA7537BCB10EBC21047333A89
1218936419D857CD9F59EBA20B0A3D9BA4A0D3395336B4CDA4BA6451B6E4D1370FA
122D9BDABB7F271BC1C6C48D9DF1E5A6FAE788F5609DE3C48D47A67097C547D9817
123AD3A7CCE2B771843D69F860DA4059A71494281C0AD8D4BAB3F67BB6739723C04
124AE05F9E35B2B2CB9C7874C114F57A185C8563C0DCCA93F8096384D71A2994748
125A3C7C8B8AF54961A8838AD279441D9A5EB6C1FE26C98BD025F353124DA68A827
126AE2AF8D25CA48031C242AA433EEEBB8ABA4B96821786C38BACB5F58C3D5DA011
12785B385124C2B6534F3CD1866AF92009D93B97F763AA3D16684AA65F029E776DA
1283BFB75EDD46D562E6A284DB4F2FDBF7CDE7C1F3772CD7B6FD372842A0E07E3EF
12968A98AB9278ADC2D35891543F57ED6DCFE8923368D556F1A8B3E35863112F409
130FBE67FC270328312BAA43A9A372C510717B50AAB01A1E02A9982113E2D7C601C
131B0BDA1C0E081E546A97647B74EE5194C57ACD62502B329FED4D966BDEB4028F0
132F082EDD5DFC8387653D620E9E73FDCE3C155347D5929C3A24D6121AEA46BBF3A
133B1C8A4793FB7F21C84400912C27D9AB0845537103553BF8F
1340000000000000000000000000000000000000000000000000000000000000000
1350000000000000000000000000000000000000000000000000000000000000000
1360000000000000000000000000000000000000000000000000000000000000000
1370000000000000000000000000000000000000000000000000000000000000000
1380000000000000000000000000000000000000000000000000000000000000000
1390000000000000000000000000000000000000000000000000000000000000000
1400000000000000000000000000000000000000000000000000000000000000000
1410000000000000000000000000000000000000000000000000000000000000000
142cleartomark
143%%EndFont
144%%BeginFont: CMTI8
145%!PS-AdobeFont-1.1: CMTI8 1.0
146%%CreationDate: 1991 Aug 18 21:07:42
147% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
14811 dict begin
149/FontInfo 7 dict dup begin
150/version (1.0) readonly def
151/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
152/FullName (CMTI8) readonly def
153/FamilyName (Computer Modern) readonly def
154/Weight (Medium) readonly def
155/ItalicAngle -14.04 def
156/isFixedPitch false def
157end readonly def
158/FontName /CMTI8 def
159/PaintType 0 def
160/FontType 1 def
161/FontMatrix [0.001 0 0 0.001 0 0] readonly def
162/Encoding 256 array
1630 1 255 {1 index exch /.notdef put} for
164dup 45 /hyphen put
165dup 97 /a put
166dup 98 /b put
167dup 99 /c put
168dup 100 /d put
169dup 101 /e put
170dup 103 /g put
171dup 104 /h put
172dup 105 /i put
173dup 108 /l put
174dup 109 /m put
175dup 110 /n put
176dup 111 /o put
177dup 112 /p put
178dup 114 /r put
179dup 115 /s put
180dup 116 /t put
181dup 117 /u put
182dup 121 /y put
183readonly def
184/FontBBox{-35 -250 1190 750}readonly def
185currentdict end
186currentfile eexec
187D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
1883B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
189532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
190B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
191986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
192D919C2DDD26BDC0D99398B9F4D03D6A8F05B47AF95EF28A9C561DBDC98C47CF5
193525003F3DAD7933EB57E7DB1462E9D906F6D8F5BF740206C1EC5F36E00AAFF68
194F3EF6F3A2540E5F9564D1C215BC1E7E69C7D04DA5DB1CF195613C9CBF4BAA360
19584AEF3E10E24877FBE36AD731DC97305BDE6DB1F934909FAF60B8E28561FBC57
1960F5B6225425BFDE8F0C71CD4507B82FF803E9A301397975E38A259DE1E1B4FC0
19706BB1DC2D45B987A2268A77CE8DC025CB0D1B39788BBEE149103950650171C94
1985FED1063050A90BD38605BD9365D1C2AE42A7DA3DDB9A263FE10BD487F63D908
199D4F02758BD9D7BE53E6353A25BEFA29E42B50C1D078A8B3A746EEDB381CCE36C
20093FC4BD1A8D1D6ACD0D355E948CFE397B74D243EB51597D251D0BAE6884D70E8
201FEE119462E1939A9783414DF59EEA5FF1529F13869D1FF0A44935C5198CC5DAA
202E1FD2A17AEEBF4974052D06734A409E26C457C06700C55896C90BB33E044A737
20346590D9FA242819B9527FD59818D8829D4EB2D26A34CC05A2CC063E66F2DF193
2048E4F9670014BC243180E45B51DDB05AD1E6A7F619EE1CE09CFC1A4F02CB7270E
2054482FEDF673EDED38EF3173C475C34BFB3F6623C5E942A7797FEDDD0EF1D54E9
2061D90D7076C0A9687E334907C22F2E7C603388D8D626B0E5A62B7543DCBB575D7
2079A6BE1528EC9BC18570001092524E4FBB02F3B29293BCB4F0EF14A2DD9DB22A5
208BB33455799E8120D2A4862424AA4A382972E2845E042506FC8F6E201D11DD0F2
20909FAD8DC29C3E12B66293ACBFB13FA0F26238981F2CD52B47A8CDE6DF5CDFAAF
2103113E1A6366B806EABA9C34E5D41167CD10D7B639021FB4CFDAE28CE72A93F3C
211E8929A4813956AAB24BE7C20FCF9196E8E2F30816FE2279CE3E6067667A39E44
212488D58BFD17606AE885FA06F478D359A6ECF5564C095FE0E5038425D8B152750
213F72F41B3D1E7420EE91CF4A9ED5BBE8C2275624AE257D2BDF5752E803B426F40
214924CB5C29460BC09EC84F3F3A95F6900836F0ECCF6A7BB85A3F8D650017E5FE0
215503A73644EC6C6B0254F0259F8DD4AB3945950974CEB34521881A2506E76EBB3
2167DBA7812E0186DE2C0AD3E6D42BCA320014368DD738408C54AE2CAAA9C05612B
217E7F33218F2FECCE8DB2E4B3A3BCD9D8D0BAD7EDDCCAE45F6A15FD2B8ED263E45
21814AF0CC7B58EF52D5FE73023EE9DAB8249D1EB3B795C7B42BFD2A2852D2D16BF
219CD71056F412571F41CF7EE80AA916EA4FF1630B1E226F474CC3195006043B1AB
220915DA8A9484B930F1F00028287EA3802DA3C3F99961952E04B736CDEC7768307
221879B4D2D553518FBBA727266F94C3A607FFD5D85CD0FB802CA51E6A3792C80F9
222A637D47C13A787F5D9C5BAC24E843DA198B7CC898AD786DEAC0BA9B6EF955ECC
22372DA3A8CCCF7F3B69597A2F868AE359737A9714AE6D81989B4152DA33095DAB8
2245759080AA156DF1F3767120018CE81D296D813DC52786586CF3F38EE3CE181D3
2259D79439EE13D4E5799E03338E93315C3F6BA8ADC731A0D8282637E524C1E9736
22629C594C6F19B49C859D7CCA98148215F7E6943637797641D44DC9FB8FA403FCA
227BD581E477C7BBDBC84048141760B4EE0D181D585C519D02DEB7D1C650BB49874
228A75E95E6A17D8024346AF3288A32A7EDFFAE15BACD436CC76850F2EAC7EFF565
229C4273160FC5DC7434DB94BFA01D1648421FCFEF66D786CFF60F0031B649B6F14
230E9139B27185E6E9A70E439AA8D68C6535A42634FFDA55DE86BDEDDF3D6B73015
23137C7437A96CDAC620A29942E834F714D82774AED0A83771A152EAC0CC043CB09
23202574AFC4CA006FC0D24C3DAAF4D681CC1D2D7870F273773171A4977AD05A082
2330DF3F50C8A36D7D8AA96E82387AAFB48D048CFAE2CBAA88F1865B84CFBBC1731
234A212A44EB98265A8D4A8C118E038A0C3503B27D8B58846C4F3E8112C8B05A41A
2359F8B0E1513528F5D7E509EE847F7224AA06819954974F8065AF49F21840E972D
236C1B028B541BA1364045E814A9F8FB299B6B62CA150245D92588056992FE6D71B
237FB16F2B42A3DE425B302051FCC4A2AA76F6146BAA385614913D2B11191CA6A09
238BAE8567DCAC342D013C7830A0F03D848397110F021C63C9D6AFA90ABBC2DE4C9
23969EDFEE42C028640F9784E8CA11B83B4E7AB58F8335FA294DD68BA87FFFCC743
24067239D7FF1C54B725D53581832F5307FF1995D8273EBA54372AC82B7D5EC5773
2418F52B55255502008E0EDA0646D4D71137D822A57C0E9E05F3D61B91436B5FFE5
242CD90CABEA89420F4ADD844733B9B0F0C72688B9184A2EF69966411DF2B23A25A
24311F009C6F23E452854B77AA33129C531C2C7A8666D550A83CBA6F251CB016F0C
244940EC74FF62C721F3D854404F431DB39548F0785C5140A9D406C06306CBB0C99
245B7AA0E4680D8DE074B369A7481F0C12BCEDB787A1A9E4C71C869F5022447E317
246E6B851B8D89144BEE028D2352745CB0C081A7E806482F74E7EDDB5F1601A58D9
247EC5B92F7DAD1B462B0EB9DF22604BB2D617AC6056E723110CEBACFB0F6ADFC92
248F64C98F9910F91A8C4B39EF508A1AA01656C41247E1E8280A97089C515A1792B
249509D2DBD3C5B6972F6829B60135247B75DFA7C067675B7010FB2F116B5009B12
2501F139A8A3E25FF52BE00D9C4AE67496958CA3D1D4568218542B77C865056E45A
2510A07947C4E7D16D24E07A77ED01F10226CBBC21E0DF75293CED54214149619A2
2524A591F3F99EB14032AE840BEC7313CF1F24250BD8D6BDDBE85883D35D6907C77
253FCF01A7E8DAA9BF8E47DA3225623B645891455874BA99ABF9AC9CFABC083127E
254CA636C8673A1ECF967BABDABF1A569319A4E382E7C593CB954522CC9DF04BEA6
25557297331734B3959805B89F96DD23C38DC8CE17C7373EE5F7A9035557E40C310
2567D1DA91F87F0CF45E54518B549DDC5F91851E2899E9756A069CBAE8E63A42974
257299781A390072C7E59B9433F9D47111900DEF4E4F10913BAEE90794333454574
25837B7A46664522983EADBAF6155C6A8624CC7FF1A850313072EF5B066059CC840
259C4A1DA2BAC6DD27D3D3BC9653003D5B25405492BB64FE4A1C294F06492093093
260A4B0175F6DBFE6C4C28C310F71010F97035774250EE0468E54A7CCF54465C7FE
2617A70ADA08BB5B6A4AEBB3F60FA39FB810E6D7B1FBF169DEF45FD7E7EEC4B273E
262A11269ED5BC9F8250F8D29BCBB656105FF2D71FB624F7A67C899828D3A563491
2639CCE8EF268F2A8986577C3A752F91B650DC9717A89F76DBAC254DF1BC705308B
2642E4C7C55A152ED1AE945337B93E411B46DF56DD8F0942DD8403ED15FA515079C
265A1035F3C7A2648761792E241C6710503F7A6093FAD8BCA34C0378700928762E7
266FC371BDA7488C95F69518E1DB63068E740942234A79478DF18C5752490DF199F
26795C654423257DE301117F3C379DA5C90392A7BA173BA19BF2C35C9A0EE180098
268C228CED65FD5241B5DA3D318891994D363AE49E3B0FFDE091C82DB4BE7B240EB
269159050F74BD181337EE202011BC96EB74C68E8BBB26E46020355378E6EC2B9D8
27089DB7907378B83FDC294B134E69D5AC1B2CBC821420EE28CEE8681EA3EC902F8
2713E8503A833B675E21679D6C5B7041701FC553B95D2DB82987EB4A010C8DCD9A9
272C0FB4C048617716CEA638CE3A16C90E55DBF76408A71B3B7FB784820EC3971EF
273726DBE12A1098F350D9FF84E1846CD57B6DDAEF32C6B839644F57EE6B256090E
274C711154CB95AB2910587E15E3F16D402943157E9CBA2174BE93B820951499A42
275F797664141F9F2698166395DF7116293B6557266C7DA28E2FC1F8BDA4B00C07B
2766F7FE6AD4937A694EA423A2B90F9EBD30B8D3710E7E6D7BE15BA631E6991EE2B
2771A28A02C4CC51889C37702E57F13F1E54295D77148C7EBB6B006DD232EF94D83
27820FFCB794B221BDEB84DCD737D301A44B8414B4591BD1D184C85B09BC5E28A0D
2797DB0830419C1D92775DBFAD72F2D7E581EB08E516B0DE87BFF2DC167EBACE23B
28073A3E770832A7A22B28AD12CA07DD15D22FF5EE53C48C55CEE77BD2D429571F8
2819DC52FC92A2D4F7BEDC0F27C39E7BFBBE38721E56234E9AF5FF1EFC753C8E281
2824EAF702CA8F08D3407FEF7E177FDE6177F6604B47872CD9EC22A6644C5A78CDA
283FE3C51033C45BC1BE224F09EAF923B058E13ACDC61A0E7CB5C999DB0C8543BFC
2844D65815338F65AA12BDDFC1EF5A249270D84BF1377FA064F62F41787F3D875D3
2850E4EBD38E30D593389ED01180CA5AD540A89B31933BCEC4DEEA2CFA94C03FD0D
286290573BB3162C80FA9783A66AF33F11CD9437A7EE16812BBC32D80DC10057A97
287C83152905B954CBE464EF39D40056FF3047D9D57B9088A7FAD48E997B5096D20
288E21F9FF5858FC241EC16527F66DE8B403281A8FCA32AF1408D05387C3BFF79CF
28925C5E6EE231B17287ACC5643C94E54A6962CE33246F7D03060042B623CB80C2C
2902E2AC47CB431B64828D8D35426810074E1B98188A866406D24B8020D2082961A
291A4AA27528B60C098CC0F8D34FF1DC6C5A4836C028B2295A4D8281278264283A9
292ABE23AC0A2EC42562FFD6F5FAFA72C8A029F333C26D8CC5B972073019BFB320A
293966156DEF26E9AE303FB4E20EEC86A48468755EB228C5BDAB00714F96797F5D7
294E099755C8F80F0E3331B038527D5743345DDB65784D8234292AEB642C74D95AB
2958927727F73AF12F8B189BDA6BE8BE6A08333ED0E2F6F95CE8367174E0280565A
29697E1F70518E142D658D2335C2FF8C7C401322D6405D0964966EAC8341F34BB5D
2971C654BD9D3489E6F730BB646EDE9F8607F401C5DD1B310D7D422703F305ADDE4
298BC45DD88E798C4F4286B117962E210BB9EFDC968BEE0A9C3EB6B35D1C2E8E50F
2999B9A8D965B63255791A17BF7E7596DDB15B617B98A8E838DE92775EE9338421C
3009A4C9BF5B8E78E475E814EB117719239075BA70DC806DCEF05ACC948AEB8378F
301DBAFC9D998270678435EE7F8E262C2341B173AEE3F9A2EBC2C74CB158BE302D7
302A4FE57E744271A24F3714DF24DDC103687754CFC72ADDED342B5FD5CF9D13D98
3031A13712D09148EF593050E8099035C6B9AE8CFD59948E786E3EC4E1F426FA3A7
3049082E10E79CE44C2D9FA830113503944F8D23CDB9C27A3570907FEAEF76D3ED7
305C8E1F81DA7A51CF5B723F0E4C42E3ECAC298B3E1ACB9679A1250633C373805E5
306C9496CF87FA7A858656D4A663D3EE3218D9792CF705C361994B69461026D8CCC
307130FB9D34293701A137E393F5AE79DE677D13DF5AE9EDDC545496A8C5456A860
308B36397BCC78EF754B6965D22004B978B4A55409F73C44B9FF02801D524740B9C
309E4F45750CD7E45235F376CC2CDCD3BC1B8C7658F52A5EB185EFDB6A0884FF0AF
3101958FAA5FDF4595D6EDFE28FB5249A40BDE8BA11AB0E997E9876CA0A0CD05A5B
311A26F60316F61DBF6E65F43089BDA2D57F00EC72BA3666952E730B14C79FFADB5
3127448ACE6463BD29995D6F6F571BF3D0B426897E457BD30FE76D6CDD6151A94D3
3133D53801608A7E865A01A2FF3D915CAC2614DFDA0A931E009FD1CB63FCEFD0A3D
314B26711BE84286E389805941573E02841C8E653FD3131316E768E2D096E5BA648
3159F03F9825333B2DAC376A79850AC29CEABC8BB1E7D4E34F37D6E9F388124A9E1
3169981131FE0F6718FFC580E678C9D8C1AED790D0C0D78407050D5FF315E605C73
317A16D6868E5DE5E8C1F63A88E159CC44DC0BB3E5CEC35CCBB7493975DC55F52BB
318A33709E5AE3066894885728EE784142B492056EF876521DA69BE39FF4E2BB95E
319C60688678B37692CD40A8BCD585240B0AA809328CEC0F954F0D50DA10DF61A21
320EADE286E22F67227CA286D9A0512EC909DC28518994C6D6E207D4D00514B0EF9
3215DCDA5965D827642072E6DB4B23D1F6C3250081B4D8E66084AEFD663C5F26E7C
322E19A4F3C9A100FC4AADA76F9E4AD474D033819801F7444B51203366CC709AD98
323F62722F700E13DB42D80041014AFCA8D12B23B85BB2302AB944C437FE0FAADF3
324E86291BA50463C32C29FC7D8E4B5EFED49EC40947016D0846AC79E3776E62388
325372568D2AD0DAADAFECEFBC4F7E6A8B47C214A
3260000000000000000000000000000000000000000000000000000000000000000
3270000000000000000000000000000000000000000000000000000000000000000
3280000000000000000000000000000000000000000000000000000000000000000
3290000000000000000000000000000000000000000000000000000000000000000
3300000000000000000000000000000000000000000000000000000000000000000
3310000000000000000000000000000000000000000000000000000000000000000
3320000000000000000000000000000000000000000000000000000000000000000
3330000000000000000000000000000000000000000000000000000000000000000
334cleartomark
335%%EndFont
336%%BeginFont: CMSY6
337%!PS-AdobeFont-1.1: CMSY6 1.0
338%%CreationDate: 1991 Aug 15 07:21:34
339% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
34011 dict begin
341/FontInfo 7 dict dup begin
342/version (1.0) readonly def
343/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
344/FullName (CMSY6) readonly def
345/FamilyName (Computer Modern) readonly def
346/Weight (Medium) readonly def
347/ItalicAngle -14.035 def
348/isFixedPitch false def
349end readonly def
350/FontName /CMSY6 def
351/PaintType 0 def
352/FontType 1 def
353/FontMatrix [0.001 0 0 0.001 0 0] readonly def
354/Encoding 256 array
3550 1 255 {1 index exch /.notdef put} for
356dup 13 /circlecopyrt put
357readonly def
358/FontBBox{-4 -948 1329 786}readonly def
359currentdict end
360currentfile eexec
361D9D66F633B846A97B686A97E45A3D0AA052F09F9C8ADE9D907C058B87E9B6964
3627D53359E51216774A4EAA1E2B58EC3176BD1184A633B951372B4198D4E8C5EF4
363A213ACB58AA0A658908035BF2ED8531779838A960DFE2B27EA49C37156989C85
364E21B3ABF72E39A89232CD9F4237FC80C9E64E8425AA3BEF7DED60B122A52922A
365221A37D9A807DD01161779DDE7D5FC1B2109839E5B52DFB7605D7BA557CC35D6
36649F6EB651B83771034BA0C39DB8D426A24543EF4529E2D939125B5157482688E
3679045C2242F4AFA4C489D975C029177CD6497EACD181FF151A45F521A4C4043C2
3681F3E76EF5B3291A941583E27DFC68B9211105827590393ABFB8AA4D1623D1761
3696AC0DF1D3154B0277BE821712BE7B33385E7A4105E8F3370F981B8FE9E3CF3E0
370007B8C9F2D934F24D591C330487DDF179CECEC5258C47E4B32538F948AB00673
371F9D549C971B0822056B339600FC1E3A5E51844CC8A75B857F15E7276260ED115
372C5FD550F53CE5583743B50B0F9B7C4F836DEF7499F439A6EBE9BF559D2EE0571
373CE54AEC461D354A32E69F39DD0C017BD6576F1E9500DC0328E8AF6EAB528FD7B
37485132A2A9995EB211FCE849216BF6D663AD649AE92DA953C4D520AB9A22D27B5
3756C34121FD688F9E17FE39B939D8DCED9EDDE5AF6DD7DC2297F2A3E1287E5AF45
3760306EDBA3C843FB8234D0DDEC7595CDE6657E499324DA260BACAE9D6DB126FD9
377AAA7368F7164F6BBBBE11EFFFB65660DA0961A97D51ADAF2136A085FDC16C199
37872BC2CA210B330C03F4252A275FEAADC95CFBC79C3B7285C4C7B5C9665909A56
3794176C37DCB569C8EED1B59C58B5EBD3ADD31010DCFD59411FC2020E238A07B83
3802439DEB653AFF1CF197533724E45EDA9810B6793E27943CF51484A5BC7DC61C5
381E97F71E04BB623E0BC9C
3820000000000000000000000000000000000000000000000000000000000000000
3830000000000000000000000000000000000000000000000000000000000000000
3840000000000000000000000000000000000000000000000000000000000000000
3850000000000000000000000000000000000000000000000000000000000000000
3860000000000000000000000000000000000000000000000000000000000000000
3870000000000000000000000000000000000000000000000000000000000000000
3880000000000000000000000000000000000000000000000000000000000000000
3890000000000000000000000000000000000000000000000000000000000000000
390cleartomark
391%%EndFont
392%%BeginFont: CMR6
393%!PS-AdobeFont-1.1: CMR6 1.0
394%%CreationDate: 1991 Aug 20 16:39:02
395% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
39611 dict begin
397/FontInfo 7 dict dup begin
398/version (1.0) readonly def
399/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
400/FullName (CMR6) readonly def
401/FamilyName (Computer Modern) readonly def
402/Weight (Medium) readonly def
403/ItalicAngle 0 def
404/isFixedPitch false def
405end readonly def
406/FontName /CMR6 def
407/PaintType 0 def
408/FontType 1 def
409/FontMatrix [0.001 0 0 0.001 0 0] readonly def
410/Encoding 256 array
4110 1 255 {1 index exch /.notdef put} for
412dup 44 /comma put
413dup 45 /hyphen put
414dup 46 /period put
415dup 48 /zero put
416dup 49 /one put
417dup 50 /two put
418dup 51 /three put
419dup 53 /five put
420dup 54 /six put
421dup 65 /A put
422dup 66 /B put
423dup 67 /C put
424dup 69 /E put
425dup 70 /F put
426dup 71 /G put
427dup 73 /I put
428dup 77 /M put
429dup 78 /N put
430dup 80 /P put
431dup 83 /S put
432dup 85 /U put
433dup 97 /a put
434dup 98 /b put
435dup 99 /c put
436dup 100 /d put
437dup 101 /e put
438dup 102 /f put
439dup 103 /g put
440dup 104 /h put
441dup 105 /i put
442dup 107 /k put
443dup 108 /l put
444dup 109 /m put
445dup 110 /n put
446dup 111 /o put
447dup 112 /p put
448dup 114 /r put
449dup 115 /s put
450dup 116 /t put
451dup 117 /u put
452dup 118 /v put
453dup 119 /w put
454dup 121 /y put
455readonly def
456/FontBBox{-20 -250 1193 750}readonly def
457currentdict end
458currentfile eexec
459D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
460016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
4619098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
462D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
463469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
4642BDBF16FBC7512FAA308A093FE5CF4E9D2405B169CD5365D6ECED5D768D66D6C
46568618B8C482B341F8CA38E9BB9BAFCFAAD9C2F3FD033B62690986ED43D9C9361
4663645B82392D5CAE11A7CB49D7E2E82DCD485CBA17D1AFFF95F4224CF7ECEE45C
467BFB7C8C77C22A01C345078D28D3ECBF804CDC2FE5025FA0D05CCC5EFC0C4F87E
468CBED13DDDF8F34E404F471C6DD2E43331D73E89BBC71E7BF889F6293793FEF5A
469C9DD3792F032E37A364C70914843F7AA314413D022AE3238730B420A7E9D0CF5
470D0E24F501451F9CDECE10AF7E14FF15C4F12F3FCA47DD9CD3C7AEA8D1551017D
47123131C09ED104C052054520268A4FA3C6338BA6CF14C3DE3BAF2EA35296EE3D8
472D6496277E11DFF6076FE64C8A8C3419FA774473D63223FFA41CBAE609C3D976B
47393DFB4079ADC7C4EF07303F93808DDA9F651F61BCCF79555059A44CBAF84A711
4746D98083CEF58230D54AD486C74C4A257FC703ACF918219D0A597A5F680B606E4
475EF94ADF8BF91A5096A806DB64EC96636A98397D22A74932EB7346A9C4B5EE953
476CB3C80AA634BFC28AA938C704BDA8DC4D13551CCFE2B2784BE8BF54502EBA9AF
477D49B79237B9C56310550BC30E9108BB06EAC755D6AA4E688EFE2A0AAB17F20FE
47800CD0BFF1B9CB6BDA0FA3A29A3117388B6686657A150CE6421FD5D420F4F7FB5
479B0DAA1BA19D638676E9CF159AC7325EF17B9F74E082BEF75E10A31C7011C0FFA
48099B797CE549B5C45238DD0FADD6B99D233AC69282DF0D91EA2DBD08CE0083904
481A6D968D5AE3BD159D01BDFF42D16111BC0A517C66B43972080D9DD4F3B9AE7FB
48211B035CE715C1218B2D779761D8D7E9DEBE277531BD58F313EBD27E33BEF9DC5
48350C7821A8BBC3B9FDF899D7EAA0B94493B97AFEAC503EB5ED7A7AB600A22D03B
48486A088CED7AE528182D2EBF4D351FD835B5DAB2036F44604002D0E21510DDCEA
485F8DD36174C2CFEBAE2D183407AAC7D4D52D51D5B2890CD3B23A88228089D26BD
4866E7ED4B31A60C45C7D8C00274A812ECF682228F241C13C41497BEAE1DB58C3B8
4873EED1B4F48D1A4706D71EB098C4FD67CC7890957724C12067CA54A2140855928
488E6197231734CB46E3EF820A1C19A6AE55A2547EDAA9994B59311C2D02BAF4950
4892A8739E2E60A1490884101F56392D67FBCB271783118B2568E2DD484465B899A
4908312F466470B4A490266852CA56F7F56991A746CCD5A365EAFD700D47D11860E
4912E2B21C90AA8B3F9915F81F0E2C2DF98D942F3CEA2300F2B9F6BC99FE21F2966
492AA932F222C35EECC2520F10C110D6FF9A32EF56A812D3760B54B451C79D6FE5F
4933F93D3E5F9E4D56096A92B9E953F160551BB6FE26206D6A317219222AA58FE76
4946C758416537175D1F7DDA512DAE5A4794216C90B561F6C29C44FAAA5EB719F20
49543333A0605C0A095D8AAC862DE53BFE3EA97A756193E9E74E7604AB5EEFC1E7C
49600888CF0F286073143ABD034A1BD66E81E588FF34930DA0421D01B48A71EF115
497BD68ECA6C15DB673CF17821A79484DA091B0FD42820B35ACBCC4E2873C3B4950
498F76EFCE8F0A80EAE5086450D76847F299FFEFAFB731C72B63DE42CDB342B1691
4990CAF1AD419B1B3102894D78C3ADE69C39ACD063566B0118C0E127D4A7C013D93
500C3F3A8D55B3A6BCFA37FC6796CB40EA156958F27435A2832A5FE55A08B76E258
5019440C4741B30E211BD4216DF1EDEE02D168A398B6769F8D165B7D7225D278BA8
502994DDDE391F57EB890156023E6E3D56E22843F3DCC582F7E6C571EF2BB436631
503A7E7738ADDAE7A0433C43A8A3B90AD8952E976F348973F79797E5B68469542DE
504D610798FAFF13B24AFA2574BF898DBD661417C41BD0FB6D448CE99BFABB91117
505E8CDCADFAD71D882E51DF28B7D04624615C826CBFA745CD903E2303337AAA886
506DF481C65C7D914DE22A026BA75D232481DC320B89A9A2F6DA1D9E54C48CDCDF3
507F657A66DFEEA1FEB0E98A71666F115BAC1286D5E0273BE8A67ECEDAA1BFA4921
508E96E67138F28919D708719107D48D8F0C4E4DDBDFE6DEC21C27F260DF7A46327
509D924F8918E2F0837760BEC3666C7D5D60A9F2A7EB0DFAECA1AE4A79C15CEBDA9
5107592B665DFC923D1C6ECB7A3444016A1F9760493BA1D71232BF2576DB84CF966
5117A7466A55FDF764D4BD7810541055B989E8A8189ACA63014CF403E3926C4F455
51281E25361FE1339777B597EFF1CD63F007EE735B9049315DE035415170248B359
513EF4A0BD6960E23D3318A59E11190AFF749ECEBC81B0D3E26795B6369309ABA76
514C1E2EA4EC1DB3065E4618BFDE7729263920EFE5236EA355BC30C95C62718EDDC
51569C3824B6A450B37974FE23553D0E1ECA572155E53DFCAD1E4F7C40FCCEB42F0
5168A41A4F516B5937D75FBB86BF290BB6548FF327853DC5A25D002A381A13DBAE8
5176CFD76979CBD26A4F4D97A791BC1E65AC1B34F43AA12D9F5E66E85E368AC33DA
5182626EE4E399623D6449037D555E35E0A22E4AABC91B360D7A961FD335E37FAD1
51946DB866561D431B05A65BE91077FEBAD52EA5587D5DB86CBD753EB270B4AFDA6
52068C0F1232BDBC07B5D7E2B58AD4FCE8D004149EA212653A83BCA85A1BC8E5AD7
521D15D165521AB6377FA20A09413403C79B1266F49D983AD0BC50AB766F1CEC782
5224609F22694540DBCF5FD113626C89BDCAA59F4905D07BABD08BA49F976C0A79F
52394A77AD26783AA9BC47B8A11CAA11090D09A88BA948844A45BCEDD3CDE0EF114
5242E16ABAC0D90E7B7345C04B53577218009E67C7B7010AD8DB0FF1073DE31C770
525670C6619622031490EA2A2D1A9FB80DD21A5ACC526C2BF0D999651B8E22A28FD
52647B4708B288F5BED8E5DFBE57FB3FB33F00657B8544CDF6CAFE1A3BBDA9F2296
5273C5BEC4351412CCB9AB6F450188D307B9AC70CA7D9DD184414833868B27BCF62
528C8CDDF23A7D796D0A1F8155E66EC9D7B35BF0FBE185103A37EC12981EADBD16D
52970CDB2D685FC168F08AE39F375739ADFC915A63C6A7246D164A12569155B956D
530A7A5795A6EA9D4FDB0AFE54C63CBC01D5C338B68DAC3D23B110527B91BC0527A
53130D7E8B7DB2A6CA19B7C71D78D71C41AE0557E0A9CF2F3285F53CEF69DC3C91A
532B3EE632FC1416B4B36CD2FDB8BAE850FAC5E9E0B7B57534A8D86948074AB123B
533B39EBA873F819AA42D36D4E07E2507EDBB3144337A743FB436545938E4DEABF7
53403EF9E9752B4DF79396023282325AC3AD52F42430A97C54287C94C3C910D025E
535B6C40DC9A11D864614393CE973DE186B99F4B3C0F33CA18E1D30F8E8EA70223A
53636853FEC29C0F96B59A6F59C0A33712B7053001FD554D23D0FF848FEB3C7EC9F
5377455645E42209FD5B8CC08A4A882E34275F6EEC5B16E7A7DE6C9D8941EB6BB46
538ABA35AA067E0439AFFF7DF7A660D66C8503BF35EC83C32270E04512FFA90618F
5396825695BB8ED9F97C4FA706BB84B66A9BB210628EBE19ADB36D679CF9E7B3BFA
5404D4764BBB31682A14FD537266E2CE1F4640131D324382542FF8B8CD9BB108B69
5416655FE8FCFB277A88C58A7E2AFAC9B740D840EDF1DFC50747CD3EA1DC24B050F
542B12404954E42E14DB6092B38F32CBAB9546A9784BFF7FB16FC0F3D2875A35A16
54375EEEA82FDD3DE0BAFF2C26BD37D229CA06A002529D27EAB41E20818ADFBBB5F
5440AAA37BB95CAD96A3F700C2E5B7DD988E89049051077CBDC2DDA592E2B99C090
54553C7D459D85A72B01880F10F9919777AAC2A3133B8A7CC5926ACB6C87B0552BE
546D310D8E86E5F4B142850D45664F2CB087C0E7546DA66214DE18E67D1BF098A30
547137068F9E9735933B96B4242E805B0D4E58FC9EDE7330D4217C9315BF6317608
548ECEE1BFED5BE0CBCDBE36119465AF20A6D7A3244652112A1E602C358D5271595
549213FC19C6562678CA6B38A817C0E7CD65FE588A1D9307FACB838C6F5461C0ED0
550888437043743899769E94B7EFD49B022E3A663EB0A00479B5C291937407B52DB
55136E71F524C1C6F4A91BB99E1A824A25C3917DDD42FC2F9DF16BB14C4D28CFFA3
552BBA2BD381C27AD1885F7DECA566B15C763B3B4B3F3EAF3806275D8600FBE4B42
553D1FEBC74147DB1CF64549C9C7DBEED10F44F4D585371BBA5357ACE0BF864231A
554436FEC2C90C94ED01324D5946B89CC05C087CEB96AF03E350BDF44683BDD566F
5550B2C48C4041411EF91A57119C9ADB0F2523477F46F72FEA57ADBB2AC25D3135F
5564F0BD460DC6D8E29830341C64BAB91275E9CA08B713955A5D344EDAEF871DCC1
557B50F30858C3C3666597B73A752E93DF128546D1A1812C5B916AE1F44CB36DBC5
558A26B5C3ECFE3A3E2A013B5BAD5722A8943BD678F651528ED340EBBF59FE47E0F
559D7BC565E44C38FF7697C3F1569C241D339EBC685E7C4D7BBD318B74E6AAFC97C
56049EECA3B147E485F1F2475AE983A18395063BFDE981F51E6A2CDBF1906E499CE
5616C6403DBD85E65E44839011D7E3F62B7504A9CFBF6A5D3C9AFD6BA64E636D7AA
562E43BD83ED14C6EFB36A5233A5D795622583AFAA09000C8557848705231B6ED8E
5635E3FA79173C172763C70AD176F4F3DB0054F144F661F9F028B596107DDA43168
56411B6A56CE4D375EB9F3DACC6EC06F632CAD1D994217FA7DA1C56F681FE7CD0AC
5656CA60BCD21FF4950D20D4A3F11E0662BC1D3CBD8AFE2DFF3DA1C609E0B337B88
56687B6FC6E735DDEFC00C491916F69D0478BA2C346608AECD337AA80031A269380
56745E450ED7BEAADFCBED412595BAC771ED3C1BFA4459A6278EA1F00CF89C9EBDB
5680A43F9CDF70A0AF808CB329CE9907FD5B36C3AF5D1C475AC99A6D6F22596CD42
5691CB7B14123D38D8FD9109438D9F49EC8AF29176204C0A776C60009AA148697B7
570F5496C6FA123F9ADAC59400E139A0B886E110425839B747241A0FD2DCA8621E4
571AC3B71FFB6FF1BD4FC5DF726DA5F383D573640774EC6327F772290930F2656C3
5723D3B1FD3F6B321E0919720F03F3C6EC09D05629549549CAF621EF916071CB6F1
57322625657C27985471E16B21714100F8B80A2C4035C5905C54FF95AB7358117C0
574DE70C0FDA8187FA316189D13A9176C1171A318A81D6A77F0E54D6DE37E5D81C2
5755BF1C7EFFEB8D130DDEA4250C4FF4F1BD1B535A20C3FEF972323F114A9FE90D8
57648162CD532AA3423FDA9AB00AD6754C8216253CE936DAD6AED5BAFAA64921186
577E217F709A73D6083A8D04F11FFF49D2D8AD5A55415043A8EFB32A478B9D70F95
578D9E63A92B53EFAABD9BE62461FEAA541F5CA67FC137E3AAEECB5BE50FF74DAB4
57918BAAE0A7244F072B33F3AF7474EBC681DDB09F4A11663EDA56268CEE9E653D7
5804C068E233BD3F142653DCAEB01E2825AFD6ACC54659F66B21AEE64F66727F033
581B3D7D17C051B17B4BF41DAC5D8FCAB88A36DEB62BCB5D248854EEB8A9EB2672A
582391013A66539BDAAD4189563B45C2FB57EBB9B02BA6845FE2E7D66CED6098014
5832831ED864C366FD3D2A36D9823E84C686D401BF9F01B71CB9864AE245E34D554
5844DE79FEE3B5C74846967D0512CC9FC103DCA3DF48D0D491E70C8A102AB9A92AD
585E868509AEC8134C6587B505139FC438FA994819CD17F108C754DF744F31B0731
586E07BB4F12389EA058127E75F5AC024595CD8477F5FEC80AE9EF2109D0FF15326
587808FC436888B98938234E93EBFB0BB009F8FACC9D0BC0058E37040CED69EDA45
588D08942E834665C0595737BD2C4B18CEF53BE576C03427D0EBD25D335ACCB2473
58963B2FC3FF036BEF8DE2CAA9308E089C591C331DE41017E36914FBC5426358701
590151572CE393FABA2C55D67E7CDC90C78CC6D58C3C6DF6524E5A9804D0D9A0E3B
591DE85F7D0057D2ADBB04FC0077E0080DB404726A8AF5029FAFC05589D835F9ABF
592ABAB4C3B3F66384368D4A2B6B3D6C1EC0FB4121C59D1C5C50CE8E65E988D06AD
5937D03BDC5B095F3BB54A1E4E7DE57601A28BDF6D1C8A26268FE2A8B510CC62B10
594A2F69EF9E8A766BE982C9D791B42C10502F3BE4516D103DE941633F021DDC99E
5954C6BB01CAFD7B886E677897C775485878943292F8592C4DED879058D96EF9F10
596B89C8BFB5567EB7D53B13F1C9893A60D22246DE121C993E9EA563EF972E433BD
597DA1119607CEC7C89145164BBF82194A31932BFA6EA40A2466EF148E9EF09209B
598973714C0DADAD79BC4DC8F767D948AA227F9A12F46262ADC3FC80BD464EB3750
59951CDE98239A728AFBA32DFCDF0E04F1364399121FBA23EA9660E71F1BD2BF976
600F6DB04FE31B3D89112C8EACEC00D8BC0834D63025580AA2A77588FEF5F95BE78
6017AB5A9BBD218B94A7D7E14AE6FC65A615D39058DE4644A126ED9AA1EA03B0A90
6029B8162D84A883D5BA85B83BE8E7EE7B3EFB9F50ACFBFDE4178C4D12D6054A046
6037CC57C142E055B9B822422C9F6E3F2323278AD2299BF211302CAD720BD980980
6044D4EBA8BCE79BC6613EB227A233BF4E0C5B73FD1C424689FECC8949C19E581B5
6059B4534060BB017C315E46E102F9C54830C11CF867846427AFF0293B6EF11970F
606A5E75BB89A8937512FAE083F1BA63BECF2B5ADCF9618F092F461096C565B55B8
607714F9AEAB4F76920A80BB74538CAE55A617C3B265F64E1B1EB19D96DEE120581
6087FDB28B9823C6F5241ED566AA02650CEEA40E6E1A2C6DB55590C5B5572D8F57B
6096AEB288D7869B6A7A50B27E496905CE770852E9BE460CD2D1C723FC7236F92DD
610727B27FAF82E9E7F32BADB7911ED3C6525D913BFA333EBDC18573F1441624892
611EB53FDBB6A945B38FC9C376C3D534127720420E20DF513EF381E2B6B5D5E5C23
61283412BD67435CD6BCE407B8FDFCE4F0A0C35E5DF9DDBB2D1D5D7CB2A45D886DD
61358F908A07FC48C245DC31F28D30FFAD477A1D1AC593FFE8086D05B285C700996
6142CB06125A817D4850B6D3DD246D671554AC1F513932BFACF92A15B75F87DB140
615F5225D5B066A913E6E3631F160CF60F54709FA0DECEBF1BB203F4D902B4351EA
6166369E4872617A98DDA8BFD29E8933D201A09149077EC934C0B082B92244DBBA5
6170E70943FE5E1E8823E0620C857D8A3CE3F857FA05A0DE16D7673E9CF27C847A7
618C8A8DC1F7B8E80A652C47C0AD748A60D76724354AE6D98D37E164B8DF1AA36C3
61904975386BD0C356DE67AF3AF9A2A7C5AB957994A588CD1BF864C64C2D00F8D07
620CCD30A5BEED0371BD23A4622BA3B8EFC35FF8A552E770FB899BFDD7A924F228B
62195B56FDDF795C0D469B399FD0DDC140CDCB61C6A6E30561CA594D7A7A0E86CE6
622B8B4A04D3651CEAF4D11F86CC71A66DA5D66555E27B1D3503E92E368352A0501
623FD045A7D79716CA26C601CA2888B9E57DED1163C821C10EAFE81CF0461A92413
624BB96D2CBD385D17430F3DD50B260F58DB83423E826B9F55FE96ADC290621D17C
6258E4BD1A39007D3EFFB5EC104D2FFC18DF08E16753C26836752BCA0F190882433
62600D86B38E658215741C887494D161A56FDEC75FD5C4E3802318C3D2B72987F3C
6272DD3B75F669F2808F2A9C0880852A4A6236FE8A4AA4FFF753FB8E0403A9926F2
62873A342837512D46102279CC3B105A959516C9CD4FF86C704BD81A2DB5FC1BA55
6294798041822419EE5B201F48A1C182EEB9530D6205677136F81D3D911C98FB220
630C04E1532CBB717A68A5AE74FC5F6ACCFFE1ADBF194551F4E9E8C481C32345FDD
6314615B1EF62FB11C900DF204485616A9D37EA2B41E81EB1854570A07B76C7A064
6322C897C81FF81F703AD989D304CF7AD99F9B900681C935A9FD79C0188B3E2B50F
63319B15C3D95D0319406F917A31676DB06839E0180EB5AF09ACB81A4493CEF52FE
634F606841668FF02BBA4492216D789B6A3C4D9C3FA1310305E9878D7457D7791E2
6354F4749102F501AFF64C3EAF5A90B7B85DF090316D74ACAC512B040C19BBC61CC
6362534597944221052369729EDFF43EDAB917F2117353A8E76A6ED790FAEFD58CD
6377B0F694B156BDCDA89DDF6DCF2B47B71CCC037111432C562AF9C6B6CA1D1BA78
638FCD24F49127731799F7A0C29786E2DAFBE0A24DBFBAE0E9A0DCD44E4649DCB7D
6392916659DB0C65232B5CDCB015827F31A5530489B79A6BB45D68E19E3ED13D3B5
64031DC8454C68CF35E3E8FD307CB301884BDC0A03EDC4F08D4142E20494C59F6EA
6418CE8046D29869C7DDCA98EC906411C57957D1C8FC5404434250881714434B1A4
6425E368208D33D37066855A8BA7318DBEAABC15A83F2E1E50362142A67E443CF03
643E31904E3AC02993022789C3A1638A2056A0D94EC8D64E2A13CED8014C4F4FA51
6448F54801B2BDE7F9F2D0F656A09EB713E8A97793DC5E7F7005241AC5D45BF297E
645429C0CB733F1B86A28AE15CB627C98548AA0DFC81E7F62817989E325324AF65E
646C44FB6A9E42A270D789463D125EEEAFDA57DFD09C94F1354D5FB7B10D8F9F47E
647B6F581CFB243A6B634647EB496F2884CF4DEA98503F4EE906A38173D2A6BDADC
648A21B3C206B15BC842DC7FFB7022AF0F963177F310E971319B9DD3BCE508D4B92
649AB9B051FDB2851502D383EE103C4B0B232E32642E305838BD2D3936387816961
650762185C7152062F990585E9055F94BDBF7BCF46EE1E5D30558BCCB4C996F27B9
65105F40807866C255B81A55D0739041B5275A66F58FC149778AF1D2D90BD83397A
65233AAE594FF0A34FE74F524FEB43A223F8E29D7ACEB1E8838EB0AEE7A5AA401CC
6539D93AA03026E0879E9B7C7BB3FED71492BDDBB28EEE6860FC9E453B0A73982DD
6547AEA950B45736DB924A67B8E88945C2FD9CD01AEAABDFA43D12083AF7D4EB987
655FCD27CA7EDE61E5707AB481BC4B566887884C33C89A2D0B234D6135BBE98ADD7
65690BB22D3BCF19B4C69FAAF0F7946A8E3ACE5C933E2AB65511E861E3C5F9428B7
657B6B61DE712F224237AC705913D0C15E717D00F1913ACF411528D7A0BA81ECC2C
658EE9C5A09F0414B01AA880EAF1776C3C4C965FDA4FF258C2C10ED0C0F894F67DC
6591EC0876ED390CE114D4635F1F7837381CC94F52F4DA12FB9C700B94D75E282BA
660C68B284F09331DCA78387C2F262FFC436FFE0B62F304CBC8BA5C287736ED17EB
6617ACE389AC473AD84A72438FD57D3F8BC75E058F0ABCB016BE01ABC26E1F2EAF1
662406809EE7F30883E006C5D62FE0D92AF0FF209B881537F7B5A34443B9A94A6D4
6634C6749230716E53A28B429458A485D1C1530527C869EAC3DB8E0928515CA5370
66483D760905152AE563F58CD82D46F80BBD9D6CA797FC8720CBE190D7264D4C754
6654590D83891A2A01C4D43AE46AECFB938899BBFDD5A0719AB0B51BD705B33446F
66624DCFD6C9D7CEC05CBC7084CFC316B0370E9F9C5F3808822C8D29CF927C76BDC
667E6C31B044951C7F455686689CF06E8138A7B19B7CE1DFDE3343136DE9287DF1E
66881778DDC3BCEF0D6DA8DBD4D56D3E06FD6AE0B51EABDB7B52024636DDC0A2396
669D34630D3E3F47889DB84CBEFB6270B85E448E02F6E81A338AE0230551D629FF4
67094A5859462DCEBE89BA8E57E107F6AC587F79CF8B427C493A5C14AF7BB045176
671A9FEE5E34663AB3AF9A8CF714DD1DD50E18889D04110634B15674D68601C4ED3
672BC8B95B927E5B2E16880E1BC5CE1FE385A2D416973B52C1A2FE4332E964074E2
67394A69FC4946F579CCBC12BD381A80B5F2B1C662CB98138B58EBB93BCA99564B0
67498CF2EB381B04F005343633B163C4DDE8A98500B447D2BEB878AFE8982510794
675D276A4A6DF3D36B0ECF8CFE7D3ED4B364B08AF5012B5AD4BA29FF5886BDF1BB0
67672378D823C1929FB02BF7C9E41B483EE3D18817B056E8FA98FB9863D79EAB517
67754BECBF7579400AC5DF7EDE80E202AF75E66C48257A50390A9784BD6077C8FDB
678CBE3D17F8BAD802E97087A8353D3412C24B0F886AFF91D101A5833CDADF898B6
679DE548E996DAFF04D6CF8668A5CFCE8400C2737D0124A97083CC808CB80B24BD5
6800162448072D97FCD1FACC4146559DFFFA11BDDE0E2698D92A9733C10BFD23E38
68173151FA9C0D030872CFA02208A31647E1A7DD2C182044D90F90D48A9C4C422A0
682FB5A3A88331168A296EEDFAA02AEAEBFCA1A698BF8A01F109EF2FB767B4F679D
6836A39AFF1972E93364E5FC5E52CCB76B06560A8FCEFEA58BE9893F9B20ED2CDA0
684F0A2EFF2C9142A50B73A1EB3547C2B7954BFA47C590FC35260C75BA557A36AD8
68518CBBC03CC65C597F432FA0F0F27DB31EEE7F754781BFCD4EFF6570BE397BFFC
68635A7C0443A8172ED4FCB128DAA55D7A0AC14F9FFF97A43538C005ED8A1FB1760
6878D01F3440420FFFDEE149F036E278E481C35007888431CA712097362CFA27134
68836FCB600FD4C4541659571FC17B8136CF3860E2A41177C4E0B6B5E39B51ABC5D
6895B5D6D732DD3D122B956D4B4328F15252762249F5D50EE7E37FBBFCFE28B12ED
69048285FF811045768B7893A838F0E02536912157475D473DBB14CB666A00B400C
691276DB1129A8D68681CED61F7E21C5761AE13FC383F55BB6FF75579CC533AB682
692E2811BC342AD6E899EBB2B16632CCEDE09B05F9DEBD65591D8CE0B6EF0FEC4DA
69310A55429C85B679511962DB373C41EFAC813C0674DA0C2B02BFD0DC1CF82E26E
69415BD338FC3236CA8DA4FB3437442EFC077549ED51208497C6B074DFB6D386333
695C0DA4772232A367AC13665201336B291E8F08BB7B30F88A3959B21C0303EAC16
696BF5BA8B4F051B58028544D56A13B171BC76F3854974A0632E262C2B90763593C
697D85BA7A24030561D968C05E641F3A72EB769B4
6980000000000000000000000000000000000000000000000000000000000000000
6990000000000000000000000000000000000000000000000000000000000000000
7000000000000000000000000000000000000000000000000000000000000000000
7010000000000000000000000000000000000000000000000000000000000000000
7020000000000000000000000000000000000000000000000000000000000000000
7030000000000000000000000000000000000000000000000000000000000000000
7040000000000000000000000000000000000000000000000000000000000000000
7050000000000000000000000000000000000000000000000000000000000000000
706cleartomark
707%%EndFont
708%%BeginFont: CMBX8
709%!PS-AdobeFont-1.1: CMBX8 1.0
710%%CreationDate: 1991 Aug 20 16:36:07
711% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
71211 dict begin
713/FontInfo 7 dict dup begin
714/version (1.0) readonly def
715/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
716/FullName (CMBX8) readonly def
717/FamilyName (Computer Modern) readonly def
718/Weight (Bold) readonly def
719/ItalicAngle 0 def
720/isFixedPitch false def
721end readonly def
722/FontName /CMBX8 def
723/PaintType 0 def
724/FontType 1 def
725/FontMatrix [0.001 0 0 0.001 0 0] readonly def
726/Encoding 256 array
7270 1 255 {1 index exch /.notdef put} for
728dup 11 /ff put
729dup 97 /a put
730dup 98 /b put
731dup 99 /c put
732dup 100 /d put
733dup 101 /e put
734dup 102 /f put
735dup 103 /g put
736dup 104 /h put
737dup 105 /i put
738dup 107 /k put
739dup 108 /l put
740dup 109 /m put
741dup 110 /n put
742dup 111 /o put
743dup 112 /p put
744dup 113 /q put
745dup 114 /r put
746dup 115 /s put
747dup 116 /t put
748dup 117 /u put
749dup 118 /v put
750dup 119 /w put
751dup 120 /x put
752dup 121 /y put
753readonly def
754/FontBBox{-59 -250 1235 750}readonly def
755currentdict end
756currentfile eexec
757D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
758016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
7599098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
760D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
761469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
7622BDBF16FBC7512FAA308A093FE5F05C11F9A72F5DA508C30BC4BF52C8B1EC5FB
7637F9DDDD0964A6D59193A389D490DAA6F6ACD02CF71C06802F3AE5A001F2B3A6D
764EEB60E9DD26DBCE1D29C825A9BEFE3A6572E70DC7B60344C3E0C9C77ABE1804C
7657ED61C544F0B4A3D6C7662DE8575C07BED3F6DBA7D64A9C8613AA152B74A140E
766AAD9B66E0FAEED6AF9D1820F361C1269A5E90519A3E6D40782E06778C0AFAA30
767E8CEAB87054C4D156C1B14B4E8471D78648FDAC70A3B8ED474FA356393A77420
7684211F60E397D2FEFC6A8D91A80C84EB9E38E663249FB91D5C8A5CBA68BA04272
7695D5D42497E1CF5CA1E62EC2B139F5CD4D6318EBBA7AE28614D2D88709C2A3762
770611524B8A1FFC7B0FCBAF77AD8159C354F4887DB1A27781DE0A4BA7DF2CE2025
771D9278CED48584E8E6BDF30BFD24284BA1DF828B637BF84A02908BBCED67372C9
772EF44711BC2B1DA343C8D9D27A9745525C774F5D639B7AEC197CEEDD06FD27923
77335ED0D402AEEB51134665A47847429D91CF419CA9B09DC905F610F8DFC54E606
774ADCDA19D5CC68A7BC7108EC9236C64205B23CE68B9BC38EF3E5BF9E0E6ADF404
7757365C8D0436609438C82EEB2F356F79186DDF6C1C797D3C278108B1767D15178
776C4C3E8ADC2482BAB9536AE8419E5CF3EE1B6E53BDCE2A83E2E485F496A562C10
777B3F5A131BB19D1E5414C86C5F995521076340536E10613E42779FA15EFDB451F
77853495CE8EFF239E4EC442E1439594549D45F5276F93D496C9AC712D762D0B702
779E894290BA028837304AFDDD8BAA6564E9DC307A14A7A206550FADDC7784DE3BF
7803390188BBCDDD929C82B1D7B529553BA75ACF5B385D31EE3902D96B2B5DDFFF1
7819F0F90FD791E54128C1717F313486896868A34FAFF22E23CEF046D02C140CCD4
7829730CDEA373A7CAC4D69E3ED60590B4CF83F26EB66896E706DFAB81296288E1C
78341CE859B3767F0AD86413F8EA2E72110FC52BF6804ED797C3B31CFEDB482B58B
78439C27F22547956219CFA5F19855B8FBEF0272DACD598ED59993377D76FCE9551
785285694FC4109E112FB3B531145321D33201949D2B68213B0E7F96F20BBFDE3CC
786992AADBF0DF7DE6B75436DE2D0BF13D8BC7535804A71D4544E98B9E203D5388A
78789BB181750CEAD2FACB627BC6107EE1C9C2860E491AB54D40769F9822C77E830
7885F20BFCE14A539F27C0BEEA7B6F11FEA0FDA7B542C0C84F8FE811F0BB6EE47F7
789ED10C4FA171225FAE1E92DC79B62605BF720FB79F2B59B925D1B1BB08A2FE6D4
7906A888653F496E5199172B81D32FD04ED21EEEEE08CED51C87F22208FA48C8F70
79118573E3D31B1664D932578C1D24535B2FBA5B1628C3FFAADB4B29A481E754D4B
792CB5BBE2AC2393AB94393C640E6429D99F55DC15761194DADA1C56B216EE4BB60
7931D106EF3DCC9D02631376C3448A47EEC7522AD087C4DADA713B72552E2B9627A
7941FA7FABCEB12B5CC3C2789CA9351D3EB78DD73CD6442DD2122BAFDACD317747F
795588DB4DB7E7FA894A13C7CBE2665D2F4E668BA4D5976832F8BBACC2F4EB6E00A
796805AB5BFB52D402C1A5F607016CCA00602D2BDCF4953B503D5FBCD1F8CCD4930
7970212BCF99C3BF4D2055407A962FF2D451843A96BDB812D7EB7AEA8FC5B020ABF
798312D8E98A261902F2085F5546BAD83F189615BBC3D431D43841C70016320E050
79933D0DD9FB670F25F3A47C818EE9D173209A95AF350AE5114D2B5B1F4A526BBF8
800951DC1B9994E77234A8106D74DE3F3CFCACAF4FF5B6608145C731A80E9C05A97
8016F118480BF5895FEDB8606E6B00409ADBD6D60C39A4A30CB9B5AE46508095FF2
8022E5E0BE6CC724DD66014BEC91FAA107F8AF7AC5986C1488995117DBA4616E335
803646BF32CB244FE26073330BCDBA19C29AEA59576F4141AFAEB3326FCD5304C62
8046E81506BB2AF943D196A033B89BC0E00BDE0863C05ACA121CB8777355FBF122E
80580B452FEFEE07B3678DC1AA93B3F6975CF4EC48049FEB6BE4ED39B01C5D3AB00
806E0984A4F61D7384FF3D94ABFACD1ADE899E982E11BC9A0E984874EC2DF8D233A
807DC199301547833C5C33E64B08E72FC8A097092E054BEC04E4E59CEB8328A646A
808C9275AE8D781125676F18FAF1BA2B88BB814CB7AF980817B67C967EE7A1221E6
809CD311A025F5F258E0A9710DF92B6CA1919B859D0BEF4B00F49DC632D9A82BC37
810A5475BB3C27D56FE647D72EB0B96FEF22A43A2FB28A49C8F49CFB68514318208
811CAEE1EED06021A7E5550EBBD8745BAEDBC5320C87285B6DD4D5AEA230E47DC94
8126B704162CD8EB7F95C2B1E1FCBB3BDC5EB90A3A7E6B28A084EDCD665C626E0BF
813288A680B54A79CA47EE352C57B6393DC6742C5B99AC3043A23D6B1E131A89059
8141B1CE7BADEBB878CA5A93B0CE4D4A6433EEA505E3E85E0CDD299CDACFC1E3945
8159733039E66152DF405081E320FECB14DCA425411EF73DEA0C10A9FD032EEE891
816F24B6AC497E42A796A565BC545418C889510BC82994DB46D47B27960F3BDBCCE
8171FE918F7437310468D9C1D4CFA08A23586B23F209CA5E1D5B9219F9146FD4A67
818272861D66B633C6115E0512EA33E99E5A2C9F786BCF687DE4D94EF7F781A849B
819B5AB60B6E571F5510242BF41FA501EDEDED1E98632385821B6111E7C243F0F8F
820394554D6F3E6B7CCE3904DF60006BC23971460A063161D8C7B188C00691CC2C6
821744BB48BBB19BF42C81787A6A60352C30631B9DDC6B25635D09190C72539F39F
822D2A60792DCB4D6C9B0E89B118C83266E6E545DCB0B40E2655EA02E1399C7F1CA
823076C97D6CBD3A89350CFDDD35AFEB9F5DC6180FD53C667540D462848D1B0A575
824114DAD87E1C280AD20030C8C29E93F0FC77465D473C26EF10B332F3D9EB16C84
82593B2F19701547BCBFC251E9B7AA540C2889BD38A17DB039BF9B0C10B1ABA41D2
826BF051BA690B962CE839E6F9C2AFC081031C1049FBBE87B4067A63515BFD1D7C5
827857F560A16B9F7999509D8D825872DAA36E44EA4F7D3CDA7488566D5713CFDF3
8284138C9A981045F83D83FD19EFC2D14CB163A590DF68AA7E5F59E05C7A6F26B46
8295786456B43EF57FB329C91530D503848EA324CE9F87747C2B1D0182CC61C28F5
83098847100F23192937A5B5E3327605FFAD1ED0395B2AA53A41C52E014D3C15E15
8310E91D9D963F377629B43BF71DC3090DB109A56ECF6C5C9EAB8C8C9A12CCCD471
832E6FC1030D7FF7D400AE435D5C333958896A4F6E57BC68321F6B1E6D7540586DB
8335A4F495CA2266A45D940FAE1C55AC750D2C650AB0A770DBC7DA2BAD9F14EF411
83464058DDBB9C050317F53D46B59DF5A8D2B4AAEED48ABE87CD5396FE2E8FAEA86
835BAE4C009CD71165A2EAEB72D680F70D55A9B866AEDC2690643B9B1A59CC85862
836AE40CCF7CED2EA6CD30D4B3BD5BE48C547FF52A9FAD1CD75BB7F21BEFCCAE738
837709CCA12294AA1EBA6A89204A8400E25466167B6A8CDA5E87CE571CD841F53D6
838AC5C57D5DE83FFDA77A5AFF1246B1B6B0527864B348DFD44CBD8205CCBD8B5A3
83951D56D897CA483951D2EDA954DD164D4252CAADCA3E5E0539BE0B9DADE6972E6
8403ADF7572F855F4825DC5FC85FDBF7F3A63F914CB5580676DA8FCFB9FAB170CB5
841CEB586F231153E29D03E85BB16F36BE558A91D706DD07CD6A426ED3BE8E64CA4
8425B9AE4FCBEA5EBB41ABB853A208D06F1668111A4D936C9A967ACB9D8263CA679
84379511E31CE1964ABEF5B4786CDFAE5CAF695F52DD437880746244CF68E793C27
84435E12A0BEDFC4CFA874A1FE53CAC6BC262BEF051087A988DC6B612C6E923268F
8457960CF416473761118D9B9FDB2F4A8D0454D2472272ACAC1CB4012EC52FA4903
8465A34C2B762B9702583795F9E046D096CC2CDF32BBFD0852233316DB914863AD3
8477B44CD88BEC7A3B3F0BDD1A199A172E318A62F5099BEDBFFB9F0A0074D9D6FD9
848072CC2D9899A31290CC098A77A18688164C6B86D60FD64D2F2B4FB89A7DF8272
84956740E85F27F11A4C429A438A6489A9E9BAADD235CA7E2478EAE998AE0A083C3
85030ECC6ACAAC3AA5053BE5780F5E082A56720143C3482A0DC91B0E1BE3AFE0327
8511FCD1A1F7BAB38E208747D8F465C5D3CB763B8EBB4691C20899F9618D8AD30E5
852166F8F0484E62116B22FEAAFCC9E337F2188F3B0E6967AA8364930E6B300903A
853AD310F61A1D9E37E5E81A6789981D000419B8D27048C525A7FA22B1F96F4946E
85470C9578B257B67888E28D2A2A1586A460842A32F2C264F7514BC3C6630A0DC1B
855BF4E583D6302A09EEBE76DB3AC28CC9D7DC341D14C745CB4AD539047DF9A5B59
85606A3FFE21DF9CE5F12A8C603B91652D07A044476729451FD8ADD752E6DC28972
85770D69C4491E906F5B0FE2008EB0705FA5D98B3AC8C8E2419BF34E2F4741FD369
858D07228085B26F57BD5DBF28CC92608FD0E0731BBC304D6B00308FC3C068B225A
8595E9EA26A18BC3EEE444D6C40C6ACC6B583A6F87DC5CE75F51C871FA18E0883D1
8604978C0D8F123A1BA73B66A268ABE134F62F9A3A60AADD56B9039F9DB87099429
861ABE357CC0ACE37D572AD946D0481F6207C2A3369E9470B5C2317A9ACF4B73414
8629EF59CC9F3716AC5D1E3F048BA6542F16331A71222E5ED686F7E28D63DECDDF9
8639ACAC3D605063AB18089D375A321B14941969ED7E35D9F9AE73CD825C6104E2C
864334534442103B9451EBC3688722A20404251C003AD0BDF43411609A20FB1E600
8657F328DDB7AF1746FBDE127447E0FE50050E678E4DD1E79291F7D83CD07821AEE
8665DD61EEBCEDF75F183437C9AA6417BE61E74F8FB2DB0A7C1891C80C5D04E592E
867FF1095AE86EEBF40998EE452520DC0D79332F77A7F3838716836C9E64D9EC809
868555A8C7FD72F6B3C9F4A81FD4CD9E66D2856FAA087A59248DDFD33AADCA0D403
869990DA961A15068ED6A20538A564E1F891439660BCEFB21D1E205B546BF63C89F
870F80C6716A2364C1222E4DE7DCAABC01329C3C335EE1C9C6003FECFFE0ADAC78E
8713256339722CA93243C823566ACFD0DDE09E237B5256CE9F4ABF43DC5790648BA
872111E032BDB926A263C45B30024D2AB93E2D214BFDC2DBC93B8D38B1A6229F6CB
87374FF545158BD92BFDBAC7613968EAD2083BD7748A581C2E5BFCD38D6EB672038
87436364AA51FC4B3683A408EBF1ACC7DBA0FBDDE1D455C6E03017A688D4E580BF6
875D9D44CA668C778AF4204A578B9E04A74DF77E13F19CDA2733679FA237CF1DF5B
87681C8256833369AD723B9826B8C87A6E1122A84EB49AB63CDE1B281756ED3AC70
877BF7FCDC06B9183DC625C57C547962811D7F0AD3E43B3EA65FDF3878B3A06BF45
8784075A761241AA220E3043790143C688E2CB33B716D77C2C9FB9C1948B5F61457
879B0A6079251472EB89672AC6C3DEFE3A0A512A9899FF79A366463CD3E4A5EBB33
8805BDCDF65F66DB23C5F4478FE98D3CE0FBED50FAD539D6597568033FBF26D49FF
881FD339DD37DD0D6361A981B794BB4571B7211F145E033E71962DF5FD3DAC4ACB1
88272A15DFF9A26CEAD20BFAC76440FC3F770B83E45A8C8AD9833E685BF589FE9B0
8837C12A2B3B9A3EBEC71FBE7FE08AC4F73E716522763A151E70DEC10519FA96831
8849D3F87869FF731EA332A5A240FA36B49BF2E010F976C9792B9C984C42CCF8A0F
8855F40ACF8735D0C87406BB3E2555C81236696EE69DAF4AF68908E912316758B60
886CD6D36B7DE897E595711831D8B456FFF483CFB58CEF8594510B45D24E0F06571
887A5C0C45E73706657C7A26C244AD7860E71E1B41D5276DEDE69FBE758B18B6BCB
888147E166575CE65AF8AEE345FE1A6266F4A82BAAADA58A989B5D30ED7F992A2EC
8898E92B256EBA63FC6AFF2A5368E9ECCEB5541DBAF23D287DF8027359D4FB4C692
890540E7BFA0B12FF6084966A6FAEE65455AEA90803C44EFD50EFA95F6E6E41583A
891934C8D1E72D95F1F3BF78B2D4F3BCA05E79A5A8AF5D48732BE2533F5434F8C6A
892413A90A1922D46B894CCF8CA366C4ED049142245BF77753B4ED19700E16518D3
8933254A6EF730704AC9EBDF9EECDCCACE4525A6DFA808DE4094383C2F74281EC73
89486E106A3EED8497A15B6966E4E00C9F46577DB1AB5F6A3C2DE0360EF4C140165
895968A3D36B10258E2866764D324D9ED6B377F3026A433F2D850103906A729608C
8966230339BE659B3E6CDC5239994088AFD77452A173E33BC1963F0B845737A3040
897CBB1351E499CC6D02684C0E019A709BC0826173B340D815533324FE52E6C851E
898D4C734EB3064D292B077DF7EC087CAE537D54F5CC85920492C5E0631AA13DB19
899F50ED934FBECD744C468C443C1AF9904739589A6362CDD7C359E1B5D8B3D409F
900A0EC10FF5A64FEA3F8E5809E1C2BC6C1EC220216A4D21627CCFEC0CF7C923F9F
9011F18FA6BF44FE990AEF8E3C731431D044F4E3DE561DE8BC272FA8E28A0655DE6
902597B68539CC1320EE0B2F2B33D4877ECA9AFF56D2F8A67F65A47DDBCDBFE8818
903219E9FD419F00CCA14C2A79B8E225D9919F552567ED66E867CB91DC2074DC442
904A8E29392B0F40D77CBC215B60217D2BAC703954074F2BC90EDBA6470AA0F4A9E
905F2401222256B7CA2F6D18A085E687E6ACD5F2A37147C2D7FF6F0CC7B87DA3803
906B3157E9615F61B4792C3DBF7A44139203C2B9B1398C72A2255BD5D8803780F0C
907D2CCA4E7848F0E02C63C35E859B80B5B2953A9E68C221841EE10B1B0098BBBE8
9081DD9C187DB3C487238E92EEA4C762C9D48
9090000000000000000000000000000000000000000000000000000000000000000
9100000000000000000000000000000000000000000000000000000000000000000
9110000000000000000000000000000000000000000000000000000000000000000
9120000000000000000000000000000000000000000000000000000000000000000
9130000000000000000000000000000000000000000000000000000000000000000
9140000000000000000000000000000000000000000000000000000000000000000
9150000000000000000000000000000000000000000000000000000000000000000
9160000000000000000000000000000000000000000000000000000000000000000
917cleartomark
918%%EndFont
919%%BeginFont: CMTT8
920%!PS-AdobeFont-1.1: CMTT8 1.0
921%%CreationDate: 1991 Aug 20 16:46:05
922% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
92311 dict begin
924/FontInfo 7 dict dup begin
925/version (1.0) readonly def
926/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
927/FullName (CMTT8) readonly def
928/FamilyName (Computer Modern) readonly def
929/Weight (Medium) readonly def
930/ItalicAngle 0 def
931/isFixedPitch true def
932end readonly def
933/FontName /CMTT8 def
934/PaintType 0 def
935/FontType 1 def
936/FontMatrix [0.001 0 0 0.001 0 0] readonly def
937/Encoding 256 array
9380 1 255 {1 index exch /.notdef put} for
939dup 33 /exclam put
940dup 34 /quotedbl put
941dup 35 /numbersign put
942dup 36 /dollar put
943dup 37 /percent put
944dup 39 /quoteright put
945dup 40 /parenleft put
946dup 41 /parenright put
947dup 42 /asterisk put
948dup 43 /plus put
949dup 44 /comma put
950dup 45 /hyphen put
951dup 46 /period put
952dup 47 /slash put
953dup 48 /zero put
954dup 49 /one put
955dup 50 /two put
956dup 51 /three put
957dup 52 /four put
958dup 53 /five put
959dup 58 /colon put
960dup 60 /less put
961dup 62 /greater put
962dup 63 /question put
963dup 64 /at put
964dup 65 /A put
965dup 66 /B put
966dup 67 /C put
967dup 68 /D put
968dup 69 /E put
969dup 70 /F put
970dup 71 /G put
971dup 76 /L put
972dup 77 /M put
973dup 80 /P put
974dup 82 /R put
975dup 83 /S put
976dup 84 /T put
977dup 87 /W put
978dup 91 /bracketleft put
979dup 92 /backslash put
980dup 93 /bracketright put
981dup 94 /asciicircum put
982dup 95 /underscore put
983dup 96 /quoteleft put
984dup 97 /a put
985dup 98 /b put
986dup 99 /c put
987dup 100 /d put
988dup 101 /e put
989dup 102 /f put
990dup 103 /g put
991dup 104 /h put
992dup 105 /i put
993dup 106 /j put
994dup 107 /k put
995dup 108 /l put
996dup 109 /m put
997dup 110 /n put
998dup 111 /o put
999dup 112 /p put
1000dup 113 /q put
1001dup 114 /r put
1002dup 115 /s put
1003dup 116 /t put
1004dup 117 /u put
1005dup 118 /v put
1006dup 119 /w put
1007dup 120 /x put
1008dup 121 /y put
1009dup 122 /z put
1010dup 123 /braceleft put
1011dup 124 /bar put
1012dup 125 /braceright put
1013readonly def
1014/FontBBox{-5 -232 545 699}readonly def
1015currentdict end
1016currentfile eexec
1017D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
1018016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
10199098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
1020D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
1021469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
10222BDBF16FBC7512FAA308A093FE5F0187316F83DDE3E2D27FCDF6C5CE4F95B6EE
10233317BD91B7921F3039DD35FEA387D5CFB6C6E9DC84C178F3432994FC7FAC6E5A
1024ED41A1E2EBA350178FBFEB45944511731BA827167DDAC238FC69A5486B995477
1025C469E2E27493B0B711DF8E267D3D5613B450011921685147114106C9472580BD
1026F531022F6DF5432B2A4EBC51A8032C7F9689B6FA942D849B29709631613DA68D
10274DF7B6F059A19304F40A3C3580CE3B51D79D42984194D4F178801720892FB6E7
102861FF43C63F9256B5E9F4227B1378222BAAD4D52C77462DF01892220E11129C16
10296C9E45BB9F01ED7C1AD5D8B4D72BE0E12969AFEA90FEF170603CDB91CB243173
1030B19A56084D10293B80A35275F41BF78A054DDC98F4A1FFF592463D944960FB31
10316BE5F03960F9B1F213CBCC7FD448657FE388F10104D42B0715FC9571CC60CF23
1032C72560CBB8835A0CA208FE06676B3B48B093CB7FB2C0C53AF17EC5B372A9771B
1033BFD52FFB7062B4FE0106A01A2A1A1DD4EF5C8C7623EC9324A2CB3B402FCC1FCE
103452BFC8662F8A39D5F1B41C97E7CE34E16AC28A1E94007AEA7D4C519399F1B7A9
103548FA7DDB671067244F09C29F95DD60668223F45BBDA8B1C452E930A9F3F341C5
1036351D59EA87462FFB30277D3B24E2104D4AAB873BB2B16DA5B23BEE25BE2C8128
1037C4CF2F4F438A4E520CD864F3EAFB5363753B82978F6FD664A14E5D6F3A929348
10385839EA752FD635619C4FABF1E1454510BD9D6B538A343BE748AE05B47F917367
10391BA5EDB15F1BDBE806E51B294257D7087334165419A6520462D794D670A1D6E1
10403BB03BF689391D056D55AD660D15A386E6D222C9572BDC4DC8A46EEC75124BB5
1041F0E8978FD6031A90E4768CCBF62A5ED8C8087FD66D2033011947634878BDC0AB
10426501DA7E6D96E227068E993DBB0072F037CA4111CDD092DD0CAEC1DC6D0CEEC3
1043B291B4AF285DBA243A3457A855171EA0527DFBF10E34A60D3BE2092B3218365F
104407271A0CFA3AD15205D0D0886AAE1C89807C74C6BB23F55F0405A522BE78D4C3
10450E6C7A2C17EF66CDDD65AB75D03526DBD692FF1557B689A200BB5A593E92DA77
104601E5A82004AEF4402C06C65B21971E8240F87BE60F5F7E0B56D3024B7D49B9A7
1047724C55353C362CB35B720A5405B2B9301A1A0083802E8766ADB7856925D45001
10481FA451AA61F72022FF0419B1650CE94208DEEC7EE3B53ED7F9E995F883338936
1049EA6FCE2E2466BE5C04B46FC7DD9E80E6F1ECDF77599D3AB9E61C00D7E425636A
1050E0AAD63D341CE31564C7882916EC35366208A3C06435BF1F55086D627E06B996
10517C49FF12CC6D0E793EB19C4972C3904ED0FA9FE0C4E05140CBAB2C41EC148B05
105243A9AD2CA401532FE0045933AE0B08BC1F16D94D85420A26A9D32A9F2486BD9F
1053EA2553F2E8B6950F63A1102E9E8DE227BD756612412DB1520358DDB08CFFAEF4
1054AC3597978F43E982BEDBAD042738D05AD42348840F9D0122535E6CE711AB2898
10559F1003DB762D3B15BF35F3B7F593C40282FCDA0CFB1DD0B2B3A8DB68E326251A
1056E4B6B6C559E735EEA2CB221ED8B8E2366B1BFAFAA234FCAB5F94F7134DB434C9
10577033F5ED902DE94FAB29392934E8DFFB00C5D27505CFDB2F1BDC7B10C9379B1B
10588533F17A4369203D2C65B5C75975A65D20BF6880FFDF8043435779F26127B38E
105909399EBB27BC2CC481594BEAF8A749445805A6EDA1DCDD02D7F23038B6EF99C3
106018918626F164B6F9FB32CFFB0D936C11AE7E2AC80543864A65EA8575DE49848B
1061B09FDE687FA8AD27D0221315119A0EF7CB87E6C72A232B51E48F4AA67AB0FE6F
106236C4BA99B3C0C343EEBF2C0E5905E71FB897C0E80C9A3B15A9CBE81994D24580
1063EC447198E94134154F103060C6CCEEC2006A2F7B8A01457493EDB59205B0194F
1064F4859CB75EAF60F98B0A213864DD8407DE4DF86AE6EDC5147FBED02C022B26D4
1065158A8313188C7BFA5F185AF65FA75F0A17DE6A5CA276DCBDB01CF410114E8B17
10665DCCB1486455DDA266A778A9EEB6B41B9DE0F79021D241FEB9E9496DDEEB6558
10677145D3540032DD2F1848CF4AD9F88E67C4B77339BFA9EE3CF75FD78A63ADB40E
106868B3D693AEB0E7AA4E46B84BAF08CDC361A106C566D01FE63AF40D245B717B92
1069FD7391F92B159830ACA6303C8E96AFA4780DCD4963BD98AF67D8511E4E6C6E7A
107032616CE5F6CB270F01B6AC4EE342610E0CA1AF1DFE51CECFF133AD714F5EE89E
1071978C4BF5EA08125733CFE4B0C3853429E910677D568EA9A4A0800AA5D391A772
1072E8114BC600B2D6B2651BBF987CC3509B00CEEBDDBDD82330A9181D209271073F
1073B37241398D70D049B9FF607A41AC70E64B928DEAB1A0B4745D98ADEFB18F2D04
10740C44BD18F8687967984B9D48A5BF27E09CEFFD7953E6D9881A197CD09B8C75AE
107531C9ED0FEF539E4D71E4DE6E65D106975A0F9C57966D50E678AE5EA9FB83EC80
10760020420E2FDB7F4234A3DF285B9D761E1F0A21018BDD9EB84934B808E345BF4E
107791556AE5779EADC1BD02E198C73D1D10A56A0F09F01302BB91879DBB084C488C
1078972D39D4212AAD28F9B24C164F18CAAF595BB6F9EA9DB90C3AC98D0F37C36830
1079F28A9DDAFBD9E3C84928E9EA230FBC0F3C3D05DE4084621B65D26AF4F07F74E6
1080183E59EAAE390C8AC834DC662B06E83A9CADC8B891B3EDB56FCA7252600082BB
1081DCE150610319A3861811339A621DEEAD6D619D475BA86984561F489D052BAA18
10827AF5FF29298168AC79B1626F882CB19F6AF7DCC4E28124ECE52599C51890E580
1083132273798D3013CF390A8569A8618258D3570D2F1E538E96793E4A939293BCAB
1084A9EAB62579E456B5C80CB9B79A70EB36080A6AAECB786FBDC7F19E6543F67B8B
108539D24FF379D8C6C257C2E361FDB384C822DB095DA0F10211D6572E4DE6D4E8BD
10861770868E2752631376DEDD29CC784ECD374D72232026BDF4650B9E2712190D39
10874C0748743D7EE4706B7B31C90E5743E85DAB062B01DA4960E0314D9D51293BEA
10889DC2DA2C67DF7186F9346CA769A0C7C6E6DE1BD9B48709EB87C6E6139BDFB245
108969A02887DF104549CFDDD7FFD86E9822FFFD2DF186512BB81BEE95253FB15FEA
109001E04ED643D2C7ED7B43AF1919ED54C69908A87FEF3C46BE979787C79F885451
10913C658541A8E388297ACE1CE31AF3DC7DE205B72F27EA432387A609D9401C0FA7
1092B53EF719D0BA60B400DD9D02C7D9626799D39C51039B3D0408CBCFEBB0B2EF81
1093220B69B2953E00666BB31C73F11F1E6108C62F4F54138631B9FAAC2C9F92935C
10942B3D9989D3D78AE5CB66BB48F669178200ECEECAAF28DC0D5378238DFB8C4DEE
1095D337C8F28BBAC0840F950DF373EE8C3A59568D95648E33802210A3A563B5819B
109614C059E7F4AC6F426CD4E7B3F1A2F6F4C2FC19C2C3E9DA7D2C8F950D7564C282
1097860C60EADC8F9B71B90DAAD27095804884289E914F0BF17C555A91FD07B13DA0
109866232C27711289C4D5E20A39A4660BFC00566BB31FA6511B763EFBF1CF95AC91
1099CCC63FB618BB886C3B7318CC8301E323EDB4E016F0F7889C4FEDE858094C23E2
11008429D32F5C52CAA03CFD74820F2B956E61560B64CCA58607B300CA9166864F66
110149FC01C8848EE25857AD731386858093E9F87299D452D9C13D06F90E9FEF2C9C
1102B9B78EA3D3F31785364D36B1650A567AE8CF30A7A5E5C6686B614DFFF65EE9E1
110304211CFDD13B3F021E5D9C965BB56FA136C0B14761ADEB5C8092088990E8D0D6
1104B92F39F4E85E71FA38904C93EFB4D7FFA8012920C2445339BEEFC621CD4765D7
110501A9C397BDA9C3C0D0E6B15297BA0BBF6169BF10162524EA71D7CA539FC209BF
1106375314A88500ECFB9C7363C5AE0D7FB44D0D1AFA09F34E57AAEA2EA67E2888A0
11071B202C2FC4017AB742D5437E8BC89CB24A4A1B0DF2453026E69B60AD3AC8EEAF
1108ABCC24A1F4C628D67BBC03985396C05E5DFFDD98A0CD615D37EE0FC2C9173D91
11097F20B0964E1FACA7FEF48DDF1ABD76716E06B403998530C15C434F1FD2BBB250
11104B95E75486B54604D3687C2320FDF083A23C01A79363A225733925DBB954D366
11113C535E17565ACB00D3ACB5116996A172743511888EAA2D69B180A4C4FECCF034
1112BBB539DCD94510B84AB82E9154C93F025FE50BF00B325A6CC4B6974BC3B67596
1113CF605CC04A14625DB25A6EB9E9F9BE93066E34A285CDC45ED330AD2073A9DDF4
11148D3A6739CBF4E846C3BB01B9DC7F01055BD43AA0022FFFB2B93DC850419B4BF7
111597451F057CC0BC68C208DF288E8A1310A015BDD1019C17EBDB42CDCA2509CE3C
1116E74D55C55630B10A7F042F260D0B285DE8399D11D079E91F348317AA3DDE0CC2
1117A8DAC75318B5FEA8A6359EE3765E6F75E58D354B9607034F6A8BF0B22C9F770A
1118F537347806E5FB7C0A6A9325D0519B02A0E7CA47946561B848BFB1C00B5AC67F
1119BE25853D147950FB70854C7F4C8D7C503850F1748DDA6210DDA2BDA36DE9AF9E
11207D4DD3152165C9AFE4CAD15D146B71F0B7F2DEAA5EB3E1637A9CB5C3CF60ACB0
11217E6A11244B3FE758DF42E346A847B6FDCA6B6FCD7F02BE7D467CDC4AA2435E5E
112234647FB8C7EFCBFD144895C0AECD5E0F2AA6375C005C75535C0833FCC123A07A
1123C841157D68C80ED5341FBCA8C83274C751016C40FB73A5EA4C6ABE1ADB730CC5
11241CD781A616C79C2B99EB1F13115FB00A8994DF8017791E23CCC269D90D49B402
1125E1AEEF2326CB2AB44079CE18A1FFA08195CA2AFAD0ED73D907F4FC6422B882BE
1126F7CE67E17EE720B1767BB925E432CDE667B4D3F0483DBCA9EEF9A41A786DBC81
1127AC9A52114892FB6D2FA892B6FDD27DDDB9E173AB1DB7FD612506E2D0338D1747
11281ABEB8BA78BF7127FEBBA18A70DAEEB612B7E48885C76CBB9DB5786C17B286C8
1129A955C89B3DC4FBC16C3DA027D10148F5A2C685255F2D165570BF8BB7EF72A0C9
1130F90C740E57BA036C38B3FD04BDE1119FD3582FAF9F254220CC20532D8C839CCD
1131ADB7ED9483CB784126475CDE0E8B2C602A14D13486C214AD6B53E14779E7DCD0
113259A4C4D62A704B4EFA896439CB66B953822B492265FFA6BE2367DE24DA97CD5E
113331D715A3320B7D0E1EEC35EA1828A218BF3B2B4EFDADCF91DDF152D4E4F92155
1134757446DD8D122A22AC3C02D9FB49D31732A03F9AAC36B0494F234466B3C239AB
11354D41488FFB5EE503F69942287348E09637CCE28F1A6671B06E8F700A2276B2E9
113660BCDD1CBAECFE816F6A4A1277569D6EF85BB49503708F56A8411F76E53148F8
1137A49C0623E3EC3DE32B280F5BD47AE3F759589C2E4DF29ED5DFC587E8241F559B
11384B6A1F8646D292D966CBCF651D751E5C92751B289BB75A8058E9B19C375013AC
11395B810252BF23FF9C7A0A568C6B4E329F5B71003118F3DE19F99760B525AC3D51
1140AC85F6E4E47F1EB7589AC39379C35DE27F4FC5B79B8F5D33049D4BF72A8FAD0D
114104A1C77795B44EDC59FEC22A5843F86D18FD4415FAC8AD44AA7520392D57B7B6
11422C755EF3AE81A83D965E65EE8583F575AE1CC4F50A37F0B3C007771A5B60B01C
114319FF8858951E0E7CAC7D157D3F5BC7F0E453738DC33EB390F31D38781CDA8578
1144F9555EA83FA8BF8BDF55740882D9140C9596ABD438E903B366ADF71304E81E58
1145FF9B51BA19FE3EB5599C6D1787569B44BF26D4E14FE79C1D47F3FD4E573CCECC
1146BA3F8FD36B608D87CAAC3686BE994B252287AEFD9A14AB3051CD4D751F27DB18
1147BED214064F065F20D3FE097DF160C63EA5CD01B3C27788A927C79A21C4F2164C
1148EEE8F38C79A7C68B1C1958F7B6F0F696A203C93918B3C23DBBEECCCB2EF2D96A
1149EF6BA2A7AE40979ACEEFF78FC82EA9B34F6126F515C307783045FE80587D0FD4
1150D0F81422E0B82CCC82BEE3D4189536E2C08B35AFAF3FAE2D5D009DE9BB99598A
1151A91B9B58964B4CC7CB625084C0DC42ED14D685C25C85181A8735C4EA6BA9CFD2
1152B7C8E67977D047470C7A778166FF42BC4B9A8F33C5451FD16878F6D65A47617C
1153543A1E51AC939FB97235FDCD67962AD3CB5985DFA5737B28AD2E24DFA5921B3A
1154CF2CF5FF6687C7EC9C66C4DF80C039DD5965CB1B49D0091ACAC40AA078DF781E
115555A2457EE55B1E0422C5F8074A9D475E194E5742857BD6544A636AE573FD8E68
115670BF3858E463E94E5F5D956B9859DCF1917516005364779BB9DDB66F5DA107E4
11572B5BC512D0F9C32FDC34794BA631A0731CED84706E2FB9AF7CBD4ECD53B6157F
11587B01BFFB519C87689E2A489833D22F3C1D812849B656E6C91088880F135DEE39
1159FBE71EB03E6B5AD77280112F6C3E2636D22A38AD1D34F33B7C327122B9F4BE2E
1160791FED7545D52ABF2ACBDFCF770F8F874806DE0D1977776B330FB8D84A52834B
11610D2BC3FC18BC1885959B65A2B395202A8BE49350C1E133EBAEDF41D36345C24F
116286E4576E68E81EB707EEFED92F6F09FA46F2F54BA766E3B20F1CFBD6677B59EB
116373778BADEBB3783A5CFA9138815187A86694E8965FABF1DF6960865AE363D418
11644C3401F3854DD5C241F3667E2CB34EBBE9A74D890283DCA529E1B63DEA16898E
1165FD241DAA19EECE2869780A8A03BE546819B3C82762F5757E72C0FA749F90050B
1166BDDE78E6D01685F6DCEB9A6F45E7EC9D253ED34D2EBCB98FDE257FE1AE7D39C7
11671171F5425F3604B93531EBD0DFF691A905ACAB90F760AF4A674C500119B91549
11680566246482F9454E3D3927239AD8DEEE6D4E9ECB56748D2965D7D4C59E358307
1169F936122ECCF570568F9C8C8FE5F135AAE916CED51041840BC4B1F403FA632FD1
1170E694065B7F48EE00FE1E6ACAD8B86A11F3ECCA19B5ADB114D0980766991F8AC1
1171573EA9B5C8FB5669574CC0426377764CF911BD316C8A7D772F78F47524112BB2
1172A32F11FA6A6D1B295D96456A0D621C2B8F284DBD8FEA152D9EDE6A68B9CE8CED
117365E380ADEA02DD9C06733A4984AB4F7F8C5E87E58C9AEC65CD3490C87C04DCA3
117442AC5CFFDAF21995432D0115B425B20DFC3AF8206354267FD0A8242BE0B23B24
11757B8BFE5CB5A2340838F3BD77B6ED26A6E43D2F732F5036807505B5E8C155D194
117603E57F31DB974254F3CE52708587825117D646942431DC4A29E99E7DF8193B3F
11772C9FA9049DF511A48E405A3B798F0855493AA0A2777BF1F9F55B6797F27B8711
11785B34A0C897B7B13543477D159232939A052E46DF470936A8479BCA8ED9F97F88
1179A9D77E43F19DBDD737EA504D94AC6DDAF29AF0DFB73AF8B7681E501AE88A6264
1180B879436A69BD0DCF3465BE9D480A31B9702B2BDDB87D647E5A03B7E931505CD6
11817FF4595F44DA7EC3B1BE6C3E713AB806A1737D026A890E77AD137A9317779D08
1182B84026855E4D84BFF2B50ACD7E4E23A50B888916681BE1FFD83128E9C36029BB
1183AB6225DECF2F6DFE22E12A084C27F809F53074A272735FA977D783ADFA5555C5
1184F2FF03C670E2018C9388CA3034414402C60E0D49E121FA06B54E649E73E65E2E
11853376B59F3E3221FF238488418E7B969795938996B506C9CCAE529C1AD10CBCBD
1186B2DC727D9722C198F7BAA1BF583AEE1B88740668CC1E9EC960B33820981700CC
118701F5AB0586DEA46B96A72EBA2568E8A3774935B4A17BB2DF361B4E4D30814CAE
11887C6BABE324FE7FCC67E32F773924E8C995A025948E253CA14FD35DB48A4C9869
118910ADFBFEA18E729FE71A53584FF7CC8E50D04A3700181E0218558C262873C7D8
1190DF424F5457D76FE99ACDF797E542433AAF9E811516AC28698A179E17915BB3E1
1191368DC25C96394147D0483ECB7EC5543595AD8903BEBFB250C76ACC782BBA59DD
119236D393AB25D84A09E19F7788CAA4A9110997581DCA6EA82B149660101B9DA10C
119366A13ACB601596B68CBDEB3F8AAAB3DE33874C0B07B71BCB6E4BF05CA47A7AD0
119469B6F516E4ED20D017CE5D324FE97D7FD2412A73B92D8601B8D716AD4C87891B
119553D9E95DFAC1F27A582CCA123096B12BC1BFD68F432956606CAAD9752102B925
1196555EB728A26DCB480AFA1E87F2990585E477E5E83C045A72FB2DD04D0AFC8512
1197640086008CD6989676719D94E4646EA41508A6A4C25E93E84B3928E9F875186D
1198B2C6079FA73A221FADDED66AA88F5B49208D10C2E1E91E25DB3818D69E69F10D
1199197A16CF687E74CDE885CB876C185F19D120D916E66F88D03B308ECD3BF2010C
12007530AC389495B4E63B70999149C463F46DC3FBB0E77E74ACA0E0CE17172AEFB5
1201F3D559DA122B384EC940CD845E8B5271D2859A12F5E913BA6CCF8576ED7F5C04
12029C4FE5B7DF849BBD08DB1B44A71A59CD1769853CF9E49A3425D48D19233988AC
12033263BD7D1861EE4E99C9D33FCDE02854B0A9CCC24F337F04F9AA4F0292F5613B
12040DC69AFFD972B2EA03B018057A588936F7868AC2FF5474B9A9584F2AB70A6813
120523571813A6B3B48ABA4CB44F6C14E9DD5EBC97D9A705F215B31352711E6DDC25
120627B5CF2AB2C4A1B2310A91711D39A4BB8EDC93361A18A38487F8D2E3C91E5D80
120753C2B713BB837DE72556FA3D1E797EB6A90D83DA02DE424D074B6A8EFF11BE23
1208D9E905B15C4860FEC665B2182CA30293A86B5D1BB1F7230D7ACF88D7C53317F2
120957FABDDDC049CA2CF03E8F0FE9FD160736418DDAD7809A85D3F3CAE9F7C51E3D
12102238449F781D61AE69614F0B307558D4423C86EE67C353E9B49DBEB7B060D7F5
121125AE5A7F64F20D22B4932E86D5F70632334D3F08F22B81472545ADD27C389FAE
1212F619E9FF87185F0F54BDDD40430CC44576CA2A2F3F4C115D3C82E53689203F93
121336421BCAEB7FE999BF2EA19D3B126C073EEEEDE1E841BA512B2A4D8E1BFB3A8C
1214B2272496B09DD88CC7C37EE8E06BB92797FEA48E4845D7EDB60A61206C581894
12151FB3FFFFA610E81026A7AFF8D400EF068D1797F8512F05223DDA51FE18DFDD7D
121679FA8754A79D501826F705CC5450BE63C2390764D2AF32BDEF3E45940774C9AF
1217E869BCF5D5C028278DA373F0B0B6ADA106DBF419FFD5ECA3C60A6C1AD46C6C25
12185C3DC971BB07A23E3F3180DD9DEAEDFC2A96DF506424C5EFA695150D5B550AF8
1219E60CDEA33876B075EF693883F6FB70EF5676B4552318E1EBBD4050B2BAD9273B
1220FA895B3DAB65E4202AB0EBBC633A0810F852824D3FA83865E505F0A226A85D26
1221C7D69739B671A64FDAA895F7C98660E43B18923702C6E02C3B0806BC375AC535
1222527265D76CAB05110C7854CB477F1ED55D0B876CF2421E3FD0F21337AFBEC2BD
122324E8E304B141B878DDF0A9F692E1481FCE9FE8734E6FE9CC2114F0F341AB9E03
12248E4118316EEA0985914711F52F7D2CA2FF11FD9D79C5CBC12807B5992B8485DC
1225494FC91F87A7A8731CE88752D02E4527597BD7485D4B88BADA367D516EE4069E
122612625CD755DE031815AE82EEABBFF8563BD74A2A5430F4B084D7F10CAB27224B
12278A8ACAB00DD8B88D7A3B9F05D769D8328E46C1345B7BA0DAD75302227CE54C2C
1228AB035F296ADF6F7F7E7CDE3EA657F1244C2370C6D95EE876257AD318A92D90D9
12294249B2EF5F001B88C41BF9C9424E9904A28951038318B55BEDDD504F111622D0
12300F9D23CDB090D27E1A7B0B7DEF03C71D5F90523852FB2530A4832382EC10EDDD
1231EAA73D2C1CC08A53F1262BF636D56748631DEBE79B173EBF76B6E2334BF0D855
123274430668E6E49160A25FDE5DB59FE6320B10D00AFDAA328324572B6F767D98D5
1233ABFF8B9418D51864EAAAAAA2872BEDBA9ADDD7F24012DDCD6200E5B322B2FBF2
12343A37639CBD9918FBAC813DDFF7A330CEAF3BBEC787D6B404C88E22F2EA4B0F88
12351260BC45253FDDB713D260F72F074FF766A841C7B258F281C092CF643013ED6D
1236F4C3DB7750E93E405958FD2DFB84FE26FB582A61A029088B6193560370751546
1237230789365755CF9412EE72731564C80661E5D607DB15823CFD57DC71DB65996A
12383093A3328998FC86ED7E2214BDAA5D70F0DF0D54D0E2380B71B9E321131F247D
123937AB1EE17FEC0ABCFC5906695B15B21CF44DE062BDBC4B9088844D4F0E39E071
12400B33110F36C709E62F7129C3089F2C235F2EFCB1820B54FFA88F157C0CE08271
1241AF58E9BEDEEB16F461B77596D9FCA92F3ED5B751FC0C0312769C23E85DB83BA1
1242A1F8D74BC27276BD842D5856664582B3F5414E2213E382DDD8EC2EEF31E79B95
1243C2497A33906574377E7FAF03CE9131A925189213E7BA883D30BDA2D03A696FDC
1244E62DC5B68FC604FC6E612BCDB18482FDAD3EE1E2E0ED7F93C91C81176D33BA53
12456CEBA5D8ECDF838640ED67372D1B2943A94D82DC93AC338C57CDE651DAE7C234
124603630634D5C816277DBC9EC71DC0A862F19B1756A11703DF5DB91E110FDC7271
1247C2EBBC42F233B575752573E7C3DDC8EFC73A6B8DE7E6B8D48352C3733CB9635C
1248ECAD66C97F2DD346865CF018F46B4565883834D989216E3CA25556E1F9E98930
1249394B985ECF798743D8277C2AB8DCAC16B483610DB7C3C90F71680D807BFD5493
1250FBEA7F3FA4293659AE976D036FAD43D509C2DBA3992DD24DE8A99BF1FEEE7431
125131705015A098AD47A51E6D955DAA1A4B03CEA003E0273BA5671F7F1998238D88
1252D0DA4262B134AC9003BCE375A75AC93715F8F2F8A628409CAE9FF9D119301B3E
1253E8147F1DE16649984430EC4BA948BF5C74111D0F8056383D444F6524C7FAD4F8
12546A4FDF445CF8EEDFED560A6C262E24C0444B2AF705926A9E0805A1911F0230ED
12555B2030D956CEC14A102CF4F8E8C3DAC74ADC16C169BC4A4DE75DB3CE82376254
125600FA86DB89265200CEB4CC133B2A993AD95C5AE5A695DEBB05624CEE6DDA6B5E
1257A089344AFA90ACA83A413762F0153EAF7DE15333BF9AF6E75EFEB3964D59E183
125842C5E52A77C87E85E2B3049508C00ADA5D6F0A8EEB2A4D71DF16F3DACD580DD5
125968C68834C0778B469ED2F8C833A1BA9CD0DB2D6AD88C506F5BB23CFEF461D30C
1260ABF3164B702B433E0156590C1FD699268144766D3AE1F8E582ADC19B2D4FEC59
12610DDC8270512D3318D854BE1BA7F545AF9D9A0F3B59710609AD7A624CDCE04DAB
1262095A54E8FBBBB1987D01EB7CD1B6BEDCCAA46A07077655A73707D6902BE02565
1263EC7C6145AF4E52D1073E3DAC7C087A14E9631570901BEE1FF3255B8D501384A4
12640658B67909EC2F6B90A1BCEFFA9D74C1CF5570D7EA96391CAB7CA4E0CFDDB3FB
1265C3591EEB49AB7B154973F0EEB9879D53DE90351F0F76BD90764ADE187C68FEB5
1266AF1B4B290F2F0AA66E1D138B21C1D4EE491ED26EE44CE490F326A0407B0FA267
12671707218CA4EE1FDE220835476614DD67C7845DFB243FD2C5D856ABC7E97671AD
1268B85BCAABD214B9D9BA81B4E925A726A122F1FFF11F9581A3F08645BBC4197B27
1269D40D2A95EE1DAFA9C8A6157E0E79866BA40C0702B26210725AA2239785D9D9F5
1270017047AB62B57F6744B2D4A5D642E971074A2FB1F8809AB65A52E96C51415FC1
1271A5286427DE8C81BBFB5A218090595CC14A86A40ED9709D5752157EA673A4084A
127293BD7E215DBD1148BC140DDC68FF8F3C1AE10894D8BA9C4A3AE55992F88429C8
1273DD9B8247EB0D653FFE69165BE6827825C1F88FB36E69F2A8A3CDB6D72FF96DDA
1274072C65F51A898EE82590678C43FC184B532ABBEEB801F0143111C9941F2B1C3A
1275484DF4C0AA7E738EB2063278EB7B70E1BAAA88C50BC462ED449B66E4E0978C1F
12767DB04568AF5EB412C3E41BA22E8273C1996042DFF01F9702B676E858F4FDD430
1277F6B417197D8999945E9A82DA43969580863825D31F9D59A0D87D0F313FE2C28B
1278C6B97A98DB142B88A45943DD49471C3424BEB1DB482E9650B0B92AC70FE8845C
1279DA7716D68C9C2A14BD68F379E2C9DBFF92DBACFA705F328AC2D196F472A24ACA
1280244A17F00C82EF653DCB067E0F3762CA52E58A5604D29EB1D56B2EB40417E2E7
12819406035A253BC2F539D5B09ACABB048EF1D689A5889B9C5FA6B2E0E2EDB9599B
1282F6F4B355E3733E6BF9B21DBF7580E52526F2900F980B3C28062A33A25CE7F6A7
12834F13D6AAD9327ECC7F3F97BF15C3BEDE1A0DE042E749F648354D061C3E52E7D9
1284F376216E4BD2B782A5AA0D9FDC5551CF660285E4CA7363858C51DCC79F66072A
12852FFD59D6799BC84EDC0C5DC09D9E40056A4608B235F1357D454ED3028322AB8F
1286DAF5CC60F8B5EF4E01A8ECE97C491D828A87CB85D50CD56E4A7BB6DE2315CB0B
1287D0113AE20B4EF27FC486B648C3C0E6F69C1FFAE0C766DFB8B16611CB504FCAD3
128806B8169190CC5F836CB68D7CC34A8434BDDBBEF33E2B778884A8070654378FB3
1289744459C9FFD348B2059652D47335D7C864619700681D45A39F068430F8DBC4F0
1290D1122FCC17182216F62C82A2800FEAB2247A07413B3809DBAD5A03E1F1968BBD
1291B41B98142B9B0403D882A3A70B334F0365353E51A7FE4309DE4EA9BE3B695601
12923CF86249952A437666BDFACB7D272F200A64B9C09A125287FE2779E950687EBB
12933EB747653C8D95758407DC3AD8C95AC3D2E18994156FD13CC03A6653EC7A2993
1294F9893778089FA63708B0E3942A226A5289090412CBED2CD71BE93DD4CC56F095
12952E41EB41DE3CA0F8953C28C3285C57B75C13CB8A7E588054BDBF3B5AD6E86965
12964BAC32C54CC88E2BA882A887BD84BBC8F15DE986DC2118D2DD0A0E154EE11815
129765B18565F5C97BA8F5753324CCB5CD8D40463D909E832CAD28E62AA2250D8DC3
1298120252A10404200CEA8A2B67CF44676E6003B7FC2AC00ADDE1227724B9E8999E
1299B5A4E94223504B52575111E828E4AC03833844683B64101AB5D91EFB4CC8A822
130072C394436D8930F1541359194EAB8F44403958F415678D3EACC777022271EBA2
13012A76DC2E2E833B426A15D5AE648101CDB8116D353A837D466E4311DD86F1D921
130264EF76C5CB35B5B0E4B8B1B93861E03C1B635391276D77ECFCF247E714CC67EF
130372209891C418D1472541D68A6761EBB440E360881E993D3FA4E29CADBFE733AA
13047C260797DFE27403E70F6B1D2E493A1C55B2381AF9A815808B5081231FDF30D7
1305CB3A1D091A4B6887F9EF692C736AB5770BA5921D48DB3F196A4515FEFD4317D5
1306BCBE5394CB5EFDB4C4A972B669C294966E5D76171CE5B903E4D8E6AE50C5C075
130737C42B59E74CF491556B618191C3489D11288587FF05713B18529C7C7DE1B9FC
1308CEA7667AA32EC4F02F452F9F20E54C89E071ABFC4155ACDB4DF3900EAEC25386
1309E14C88BB174890A966703ABE3B6EE4E229882DD0543C3E33025F072EECAC34A7
13107945C2D58A721E42FE71F1A2CBC59EE8278EE39F6BFDAE2AABA5562E0970991B
131175A3AE1B2B0CE3B8BA0E32F6D281990054BB095B9E9B128D54E3492C08380208
1312B6FD878894DE6F487363C826F26F5B810314E48E86C933B885D21887ECFC7FA7
1313711F256D819274209A0E08AB6E147F7642D07C97F92E70699D88ADDFFC941A17
1314E521A3D5E3596491CF5D9BB95E483C353441CC4748A59F9E49C79968AAD58F19
131538FE5E275EA22403CC4A287A30F7B616CD4B31519AAB4DD7237916906B59CBCB
1316C275E1E993B33AD6F76E945DD4CFC3CAC1BA88E5CF9D15F03212207182AA054E
13179B53A2469E76F128006747A7E3E95720EC90B43BAF6E016205435EA4AC8C8303
1318E1E41BF20358CDA809B88C72AB0C2011A6C91A884D542D92971327564E175217
1319A40ED9EDA6B45192C46B648215A556591A5C8AFB8468947B8BEBFAB854983A44
1320CB88DD24D3C8920383944E2FE13C18A45D4A5507110C61FBA11945DDE8F0E5C6
1321265F450C30BDF5D3C95F40573B139857539F01E8C804BDC8DA9306C133E7FC0B
132266F52013A1D7C4BBF2B2E1EBF80EC769D802C7117C06AE917206ED17D13A3E95
13235C987FBAFDF8B1B49E00376E8B4D60E9F2B140267A587BE8D14B1A0249C2B1DF
1324003533FDA36B565ED493CD1A807E139F6C2CE7148B6FE62615731CDFF1EFD40A
1325A79DCDDD7F4F4CA0D00DF277E7A38556B684A32AC4A8B6998EF6C1693F043E31
1326374B86213BF7CAEE905D239D358FFCF91EF2F34DF7E0A1A16832A54640D42610
13278C77E6BDB82B862426F153B0C87170D31DA509ADAC29EE7A614EF359D584CA36
1328787DA85840A14036378E25A53F907D10F7416D5334705DB9A111553FAF2EE20F
13299C3A0BFE2D3BE88C28899043C8293D012CD8E2752F30A883C2287D5AE64D00D7
1330443218C7F45449B4C9B2BCEBCEEBAE0AC8934549F5E27BC01AED860754AB4962
133112C42C1E066CE0B5726331F64A1B6A738F4D79388076AF52C46CE481988B5341
133285A8CFC7F9ACB1F0647D33B762CCC7C34F91BF607940DFC09040775AFC3FAF6A
133341E89010D5700942F78D5F6E159CD13806F1F62C28EC0BD6F40E4E812B50F088
1334A20C82231D47C911A9F4213077793947F6C8EA53BF2763F75779BBFA65A75E27
1335791959727522E48FC28B9C649BB0AA1DFF96D7681CE5C8A42632EEC5CB7405FC
1336167DAB24900FF3CDFA2FADEB8829283B73CBA2B1A95B483CD3E6F02C693AAFF9
13379C09D3D2DC196A6EAF720FDFE7C060FECB0392610B17EC0AE65C72D89D892694
133899CADF5E3F60F6571E29EBA897831B8AB7253557713BA2529465C615D848A1CB
133957633090AF2993CF37E19A97094B8686238056F22AAAC0CD81034661B9BFF73B
134018151C4DDCFCBA332283CB1970BF1830DB778E626626DE94E0A8004E5FD830CA
134193E4BC3607809BD56C75B558196999C92E7325ECDF73AA32B49C49C3C5FE4B95
13427F50AC40FD642A52CF12F3547ACAC754EB8F7164FE5624BEF7160B14258EDAD8
1343E26A181219321F2AA523CFCA7B2E12878A5E242BB7BA5C9F22D0C5722766C564
1344306F713ED39E883D2A7ED68A0D7C7EFD64EB39FC189A0C7FF8111660A188E19C
1345DE642C8F2B0D284AC2B52405206A5E1A449319D94B3DFA20DBCBC522B5D67431
1346E3A072463B59BF356F924434B5AEA53BD49298D25738AA79AB1E274F0A7E9330
13472982789B56EE39AEE8DF359C968C704C7D3B8FCB09FFC69587EEFA7E39DD5370
1348FF513753E7518954525B083BFA191115CF310A98EF5CF0C2540265031BCC9694
13498C6A3F1A053753838516389F26ED5D57BE285F92938D59B0DBC6047C0439E127
135055CF071FE044451EC5C557F6CC29D8C5256EB48AFB23A0CCA88307B7E8EE1E45
135191B46854300FF369C6D84072D4D1625A0613CD330AB55B0B326554909D57C7DD
135273422A8588FAEA378B917785E75F25E4F4183A36AE15C7FC2C3E2C6E890B113E
13530B3FEACB2A3C5ED2F7E5BFF91E8E273869D4143A954E6A5C1012A2FC7839A878
1354B86D878370EF71ED0A7555E8858C68B1468E130C1CE3A6199D93FAD963AC0877
13551981237BF431B598966143C8DC7F3B802729DF288A39EDD5B06F0F808741C6AC
13564D59EEDEE8655A6CB5FFFD911D8A942590E4BA2709403D0741C70B0FF9FBFA7C
1357C3FD928B5B265DEE100172E5E917F273918C7941AB9071E1C3EC631AC555CE9F
135835F88068E213C0F9A4BA7D133755EFB674717B4FF225AA16BB0B7A930D7F4474
1359F2C9C784CB7C8C0A2F2201B57541D25DB2C2C8EB11D172306F7F912149C2E61B
136040B0A570CF8A47F792860E4CDCBEB9A05B511E4903921CB80EAEB5A3B6567E14
136171229E7AE16210B7F307E1FEB739554261547BFF5B559B88CB5BDD64124817D1
1362AAE0DEDA95D830BBCFE0AE34A90A70E42BE5E9A54D420B7F15D678425F1F7408
1363B0A45ED88BBC61FFF2433D65AEBC21CC21A454F416913AF8B4272F7E20CAE1E6
13640AFB2D16F862DFB2861CCDFE73BA66BA95636004349740C2E9292EA3C326F077
13651A69BE963D955A35B72920D063127E3C8DB8655C089312F094231517A9198B70
1366CEB0F01B22DD451966D72B2152947AE928D38F39C34EA1A6DCAA758EE660700E
1367351A8E433028CD6ACD63B6745E0F501E72E3E3A001696B500F83B67E027E47C4
136836B251893D87A5B646C1BFCC94F2516C5A82CA364FCD3F128289F1DBBD0E1BD2
13698D641FBA92924ECDB132C1F89BA3650DAE6E68BAD856CDAC195A70FBB0D9ADD4
1370BFE9194C5C2C525337AC29B8A55D56BB2BF90C004F1B5B3842DB2581E728BFE7
13714112D349EF2FD56CD145DC9CCE9F8364830E466E60F6F437EEE13DFC07D8009C
1372ECF876BCF50BF9C60CC60544EBD3BC42EE61F0DB1ED1EB920CD367149B52B2FD
1373353B4ADB2C18A087AA670E492BA5FAB513AFBE786F2A729D93F28D282A2A1945
13743A0D2565D395FB4A07E97F04E1A50AEA7EBCAB7D5DABA2603BDCA8FE770A4012
1375114B736C19E1649153A74C74E7218A0A031EAAFD8420A712DEB1233036455045
137618F9902DB6390E82EF280BF3C104B4E25EDAD22880D74EE456D1E5225D683D5F
137713E8DA2C4D1A8A1F456D9A3887EB3D9ED71BBE682C7FA3AD06CE4F2C554DBB72
137871FCCF5A8D945387E9FA42BE9D774C44FD296270FB67B1004273051EFB74C2AC
13792E215CCEA6F18AADA4EE6B94915242B113F094ACC5D837566D5B49C51FA2012A
1380792357BA0162EA6D04C7106B60E25EDC02CC4FDDC90FA314E4D9DD972536C486
13817A772B06B55C1545C98E90E8104FD7AA76B0DC12C7331859B6DFD01FF9022F05
138234FCF3DB906EDDF0E8
13830000000000000000000000000000000000000000000000000000000000000000
13840000000000000000000000000000000000000000000000000000000000000000
13850000000000000000000000000000000000000000000000000000000000000000
13860000000000000000000000000000000000000000000000000000000000000000
13870000000000000000000000000000000000000000000000000000000000000000
13880000000000000000000000000000000000000000000000000000000000000000
13890000000000000000000000000000000000000000000000000000000000000000
13900000000000000000000000000000000000000000000000000000000000000000
1391cleartomark
1392%%EndFont
1393%%BeginFont: CMBX10
1394%!PS-AdobeFont-1.1: CMBX10 1.00B
1395%%CreationDate: 1992 Feb 19 19:54:06
1396% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
139711 dict begin
1398/FontInfo 7 dict dup begin
1399/version (1.00B) readonly def
1400/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
1401/FullName (CMBX10) readonly def
1402/FamilyName (Computer Modern) readonly def
1403/Weight (Bold) readonly def
1404/ItalicAngle 0 def
1405/isFixedPitch false def
1406end readonly def
1407/FontName /CMBX10 def
1408/PaintType 0 def
1409/FontType 1 def
1410/FontMatrix [0.001 0 0 0.001 0 0] readonly def
1411/Encoding 256 array
14120 1 255 {1 index exch /.notdef put} for
1413dup 11 /ff put
1414dup 65 /A put
1415dup 66 /B put
1416dup 67 /C put
1417dup 68 /D put
1418dup 69 /E put
1419dup 70 /F put
1420dup 71 /G put
1421dup 72 /H put
1422dup 73 /I put
1423dup 75 /K put
1424dup 76 /L put
1425dup 77 /M put
1426dup 78 /N put
1427dup 81 /Q put
1428dup 82 /R put
1429dup 83 /S put
1430dup 84 /T put
1431dup 85 /U put
1432dup 87 /W put
1433dup 97 /a put
1434dup 98 /b put
1435dup 99 /c put
1436dup 100 /d put
1437dup 101 /e put
1438dup 102 /f put
1439dup 103 /g put
1440dup 104 /h put
1441dup 105 /i put
1442dup 107 /k put
1443dup 108 /l put
1444dup 109 /m put
1445dup 110 /n put
1446dup 111 /o put
1447dup 112 /p put
1448dup 114 /r put
1449dup 115 /s put
1450dup 116 /t put
1451dup 117 /u put
1452dup 118 /v put
1453dup 119 /w put
1454dup 120 /x put
1455dup 121 /y put
1456dup 122 /z put
1457readonly def
1458/FontBBox{-301 -250 1164 946}readonly def
1459currentdict end
1460currentfile eexec
1461D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
1462016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
14639098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
1464D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
1465469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
14662BDBF16FBC7512FAA308A093FE5F00F963068B8B731A88D7740B0DDAED1B3F82
14677DB9DFB4372D3935C286E39EE7AC9FB6A9B5CE4D2FAE1BC0E55AE02BFC464378
146877B9F65C23E3BAB41EFAE344DDC9AB1B3CCBC0618290D83DC756F9D5BEFECB18
14692DB0E39997F264D408BD076F65A50E7E94C9C88D849AB2E92005CFA316ACCD91
1470FF524AAD7262B10351C50EBAD08FB4CD55D2E369F6E836C82C591606E1E5C73F
1471DE3FA3CAD272C67C6CBF43B66FE4B8677DAFEEA19288428D07FEB1F4001BAA68
14727AAD6DDBE432714E799CFA49D8A1A128F32E8B280524BC8041F1E64ECE4053C4
14739F0AEC699A75B827002E9F95826DB3F643338F858011008E338A899020962176
1474CF66A62E3AEF046D91C88C87DEB03CE6CCDF4FB651990F0E86D17409F121773D
14756877DF0085DFB269A3C07AA6660419BD0F0EF3C53DA2318BA1860AB34E28BAC6
1476E82DDB1C43E5203AC9DF9277098F2E42C0F7BD03C6D90B629DE97730245B8E8E
14778903B9225098079C55A37E4E59AE2A9E36B6349FA2C09BB1F5F4433E4EEFC75E
14783F9830EB085E7E6FBE2666AC5A398C2DF228062ACF9FCA5656390A15837C4A99
1479EC3740D873CFEF2E248B44CA134693A782594DD0692B4DBF1F16C4CDECA692C4
14800E44FDBEF704101118BC53575BF22731E7F7717934AD715AC33B5D3679B784C9
14814046E6CD3C0AD80ED1F65626B14E33CFDA6EB2825DC444FA6209615BC08173FF
14821805BDFCCA4B11F50D6BD483FD8639F9E8D0245B463D65A0F12C26C8A8EE2910
1483757696C3F13144D8EA5649816AAD61A949C3A723ABB585990593F20A35CD6B7E
14840FA0AD8551CEE41F61924DC36A464A10A1B14C33FAFB04862E30C66C1BC55665
14856D07D93B8C0D596E109EE2B1AAB479F7FAA35279ADB468A624BE26D527BFF5ED
1486E067598E1B8B781EB59569E3D0D54D8EFAE0F3EDE26279776ABA15341E42E636
14876E02817082BE6FE0B04249A4840C11F95F8ADEFF72173E9A5F2AB2F62C427E5B
1488DC010E18641EAC906A5EF0F9BC2108062134A7F10956219C5847C0D82F0E8663
148912D963E012DF0DD899911EC5D8096F80B49CA3444CF1294FBFAB57DFACC9D01C
149046F3BA2F3D1C14EC30CBF83E5729F1C074D4F1665405CF54722827FBC24AEF08
1491F6DD0BC6A79A2DB1FF539454E8F5D1A42D40CCFBC093AFD3E57973A009095CEA
1492B91FAFD236C47F453B38DB0067907A28EB5E9ADE87A2181F1D6DE4E183631716
1493C21F0F952E0666AC74371F8B5C888DC44FBA5607435A619684F502CF625663C7
149494B0DAA79BE8E129E7F5C5AD1B7495C1BC9B1C759867467F55148C7FF2F914D8
149595218C4C3C2D2DB3482C21EA050F23D6A7A056B172EB210276CDB3B1DCA47A9E
14968B03B9BADC72F42D28ACE31D0633A0A1B22254F37EBF0433F0EF1CFEBC1CC653
1497E3EE6D197AAF36E7FFCC75FE1811BD701298F763AA466B7843770F5F21996A50
1498DAA186F387AA9717FEBF91992ED5C4DED8E2C57F0C29F9E3C607A0B528DEC8EC
14994908033A0EB87FE3614C55D35338F758606E2B971F4F1956D9009904DC07007D
1500FB7C7879D19CD37FB26769ADA21348B058957261B5A8CBB91F9A4E6BECC2445C
1501BF9F64DDD464C6FD2F3E8C89A40CA8FC75CBF6CADA6A6B7D2C63EB5714D15C26
15026E5AA387CF1587932E216BCB4E7391D63F1469206CBF2E297124D8B8C93B1418
15037855751D9C3112888B1E80AAACA230A30728456CA5B1AA59E075C5B534895B24
1504F7689D6D6A998EB98A49CE1E2548C4059539E501B40B465322E26B47E2D64843
1505E6E675F055A97BA488249709434A12E8F25CC476C8A43944BB37C25EC841F696
15060202AB3EA1EEB657105CA1EEC7B3BC1860F59E1D517B1EF715E9E7946401926E
1507D0A2FDEC1B14931699A266CFF4506DC74CFD11878E9675664F7B0984F807CBA1
15083F84CDEBCE60D893C887BAEEBD19C68D676727B36D31591AFD543F60669891BA
150994B31E3E0267301F74D799F5116296B883D9940164A8FD9C5EF6BA97D75949E2
151032995ECDC83C8B55E12858B4AF11CA04CF1DBD9E89D9450AAC2B8E733A702D27
15118B5520A3577B7F8EA6A1D7B0B468262623D6C55D9BB33C6824BBF3F48BF10599
151242C77FF13EB7EB6F971B0BB2F06F856541DAF495B850AB6402528C284A4BA939
151365D7754A8AAE431D01DA7C7547C92F29A3D152A758D6237E52C61974DC49BBD3
1514AF7E01C6CA74526E48515B5B19D8A96E67A403F8B96C699F750DC36C46D1167C
1515C3B84A260AB5E7A530B8D23B99D098F7160C4C3C275A1F76ED1E167807C65135
1516BAD8BE880A844B64A6DA80CC40FEEA6CEB6EEF1FD01504E1BC8DCE99225BC02B
1517A4224B206C072E95B6A32B4CF6351CE1CCB009BDD15C304E566BDCCF714D2E90
151846B3DD8F3180A0FD2C814936742F96B99D6F8853F55FC596F782FFF3666137C7
151991642CFF9EA7F703E67820742B44104DD9355ECAEBB9779CECB2D6790A84FE34
15206194D3AB97C02C4AF635DAA0365BDC2B8FC811A9676143FFB839C488165F941A
15216443A6CB4550F5399B1A4C60B4992A0BAB139F08EBE8FB4F072D208511888489
152227142135141C6F5CCFFA6A2494AE9985CE6B8864BD50B9CDD2D9C19A83371CCA
15239626C02A938CD95A052DFD66C0C76F807732F578B9FA4057418055F9281787DA
15248CA227B2A7A106E4BD09BC0D5F1D14D5C325B0CFBC4B2BD7E64037896E8C4D37
1525CD4B78191DC36999E7AAA353DFA73251BB85006018BB901DEDA41D48339B6CA2
1526DAB70C8465F78ADBE36BB42DFD2547E9A18D01FC529B4EAE6BB1EFCAC5FCC50A
15274AA032B2FC7323488EDDF56A77C8C82FF09A97212C295946A81058C3266CEB83
15287F76EC815673B6449D53289112E3A09E874E0A75443AE4AB1796D3433C7AC5A9
15299E90C2515BA532B1037DF0B26E8A900888D57BA61CE086D8D48140D648BC4EAE
1530490CFE2D9694B7BD9C45020769AAA8C3CD90E1283F2A3F480DC7FB575B8B8435
1531FBD16FD244321C4958142323025076A52067231FB64D602DC386E8AC85B76B99
1532D702429C8DF0A17E51670DD63DF7274790D2464AAECB288BF7A02CFAECD3AC61
15331C5E6C819FC5F03E8A98952287A44DCFD9C9079DFA9772E94E768478D3632AFB
153423E9195DA4473F141EB705A949F9F7149ECB0315EC56DF03F135E1ED0EA6A046
1535AE61A8E88CF70A59CBE42C4987414F4593F53C98C8C7C82AD4D8F339E426AA61
1536B207E51BAF2323771794FA1CF77BAB933A36EF91733FF412E7A621A8DAC07A96
1537E8E68E22388EC51C61ECD1CF6E1812D894A9FF867F97F9B3A15EF0785B6AECAD
1538B4C3DAAF79DE59055A270A86A4C299906C90683A8AB69F06CC473C6B0E3470AE
15395596DCF72CF801FB84A338C1BCF8AE0CC43D3581C628B5AD3EB2D01CC89A6845
1540D1A66CDC12F662A4D9D73B1DDC2978E2B68B4F8B8E7B4389F5448680ED77BCBC
154109CF4106FA91DC27E02A05747C31DBDAC47797CFE9452C43F6178D2F835EF7F1
15422DF381BBB65A9A2D390349E955D8A2126B17CD7431EE7AD45CB3B180049520AB
154390EE579C057019BD152D9CD985EAD1D4E111BE36DE5503B7F55D95FAEC4A74C5
1544D0A61A6AAC800729DA9F7F8762F6447A5A30B3591FD624C57CB42AC85A3DC6E4
15453884E778E4A76801AE7537536DF232DBCFFDA5B777784EEDEA44B184CEF28352
15466F9FC878EF329369D22C9DDB965615AE9551CA29E374332C3AB0DE815AB44196
154742F9C1AAD67133B5320CC69808D934491C1B963D0AC3F506052675A65AB37F5A
1548948EC38216D618F4F18555B956E82914D5218C956D08AECE229685B190CFC9E5
1549C8D7A4567FE38E03273C47F698EFBB2950A73AD8C07543988399C7F586760C90
15509B527CBBAB1F343049BDFABDDE94B472FC19B269F15D3A315883526AAE6F931A
15510EB3CAD700F88C29CE862CA43E43DAE03CA982A81F58FC879BD445945168326A
155204C5A6380AECD7EBEA3D0FCFE1EF1B7C310368CFC0EDB1D6E0547DCD5831CDDD
1553E06450C1EA0D8345A0D17DE19A5EF92136C1F8F404825B82F50315DC696A921F
1554B8B2FEDCFA3E999E494B57010DB57E4345C721B4736C55DA23671088813BB09E
1555624BB63B38DAA68C21EBDF1F3DA652EB693CDE19C6FBFCF8FA9A2BF70A01ECF1
15561C358D5231D4135876E48E5FF1A4B9DEB14494E5A3282BC88F386165EBBA6928
15578E0DFF6D932D7FF591DF34A219D395561D905F49F89309314BFA91082B060960
1558816C86DEC3BB0F6BE43E7F66782125B3925BA85D97CA2A1F48A3B2362777EE5F
15593D476B1A16664CAAA5E7BD51D2C890828FDDFC33CB16FFCA42B6898472FD698D
1560D931B10B439675B5C003882A30447058FB4195831A27286F25027B10F5B603C8
156116254D13132471369A1800E3D5FE04806B8B445A293F6308F9C0DD0130CCB422
1562764E87361242E7BC3EF8EA420A26B3F2ED9F1E03AB8CD73D60302389D6507AA0
15637356D610923699B603701A87D9E1C5632FA5856597F59FAE2CAA6D47D17A7EF0
15648D2F208F8818271BCC8896669BFA402F2002EA57261874640843CE0F1F8392DC
156587109F142169FA8C83D4FA1D2971CAFEC7439D67DA2A615ED0C961601078A251
15665524579325C7A82A13096F32D3EC76A67E2493A91ED24A6B2DAAA49951B2D332
15673F58B00ADBA185CF3AA9BE207725A0B286CAA61D076117EE225E7C66E2462A01
1568DE9D2885C5E97C472EE04F692703CD75A55E846B5B3E9672541F3EF0A8EF34C7
1569CE1FFF82424D3EC2836BA099781D08F43EBF74C7DFB20FFC208D5B0FABB1B0BF
1570779B386917E1DF953E7DD89BEB6976ACAA42FF9206849397D61705835FB87958
1571314BA40C37D62D6F02A70375A93056B55ACC9621CF94B19448AEA37D5B43D9BD
15722050D71C3BDE5B624EAD096F67327B37746C3D07B4B408A97DD4AF4C0DF7473B
157371916E53D2CE9A9A133FFD0B392B1FB47601C2A9D54D844B4BCEC5EF938E6D1A
1574DB2A905B37908A8072C54D5737300302306A586F388368CB7A506296DA6C5E17
15752B8B54B9EEE6AA1E11557B26B1D62C5B4ABA17FA10D4AE0D9E1D3C4FE91D9E8B
157670B97F5A918DD46AED82E1E3EA4734BF45805D18531167A9ADA1ACBD8DEB48BC
15779B5436EC24279DC4B0710A0270A919C2E9722CC029AC29FC5F270B314CD211A5
1578ED2C93920FAC054DB2524ED3F8B27B07AD7A63DE96F00FDF2D74D7957D3C856F
1579647BF955B7EFDB0F01F9A64B07494878BDDDA08B63412234253C04D2AF94657B
1580B68483E6145D7312D96F12C69E6C854394C377B619BAB9B371C8A9ADA103859D
15811C7BA93CD925C144D39AEBF2BA72E67C17437270992AD464626B43158AA7E7D5
1582E8A25DD5D36AC2896D03FBD961432F735AD83F87C86F67025B749B4172AD9BA1
15836E452108889C5B1A3D656DF1B8993ECFF57C312F2B3B6DB4B8BC3C8380FA8681
15844C29470E19DC9E6A56F1D5D147D5D25FB88F890B750494BB9DB44AC231DD0CFD
1585EB7CFB59F76571C86EA2B17D85B0FC0D2DF014463111C932DE08820B3D3C0D17
158692AC0C9F00427FEEB1F53135198538CBF238446341B9CFDC17646194583A3F19
1587649A1503A7F07F5DDC20A441B1C2C70F38AD5CD8981252DAE9A3A8F4238CB4F0
15883975E0084FF6C31F446853CDBFE77B87FD7EEF60D57373A95C062676B4F79102
158992300F652574833B0D0AF2D92C214BAAFD656BDED35DECF617EBFBEA2E5A8367
15900198E4BAEE596F1C54B3ECA7D4D7F9AA9BFD5AD5A9D228FC6C6D1B7BB512AADB
1591E84167C24B65291DB5814959E98A99931437B00AF36A30D5D98B17B278DD1D39
159213DF0B59AD0A1E91CF9B90CEEE1E487B6CD65E0CF3B3A74F2C7B8086B7270908
1593F29076338AD4B4EA0D37C04856ABCAD938E9D4E9BD43BC3E13124727B2A085D0
1594ACC979A96185BEAF79F042EE42CD352F37899A05176DEB9C4FBBD9D5B5A63D2B
159582B195936FBB29B383ABB647CD51E704879A1AD69C451B2B0F2A3327A67C0425
1596D3A1AC63C0F73C25168E393C1767E9D07B04D7A2D1ED3BBCE1153123A8A1C89C
159764C6F53BB7BFFFB57040B3CA289669021C9F7800EF5F416042321D95DC5D225B
159829B23FA7EC5F8151A9CAD269EBF1BF9A4DD0D4CEB63988FFFEDB55A34C3AD692
15995334E33E7BD882A4ADA0D98BC2E7B4EF04587F2CE9D25A1ABA29DA682EAE7533
160052E0734E35CE7FB158D520EE0D66242703429DAF3C4D167AD0685187193E9FE1
160106EF6C3E90315064EB2EC2EB8EF53FD56012D7426D2C8BC229CD39723C339BCD
1602989618B22949F6D4979D564D350D5E1300C71180BF74BDEDA4B5D961E887B357
160320DF075DD09FDBF469FC19981B48CD28CABB558C8AAEBAA54B36A6C303BBB215
1604BB1C8B0ED96B418AF84C69CBBB60F054FA9B8279CCA8EBE8628FFF877217ABB4
1605F2E1B8569CD2AA6B2224A275E6423E108FFD8508F17C703E9043476491687842
16065CE5795324D9B64EE0281A38BF37265355E8CC5D84CFAA60830C73271407126A
1607BF9E48D4AC6723B7A8D54A8880FAB3BAA5DFB1307F7149F8BE635BF7C79721B9
16089448FF1170781E6A773AAF493B5CC7CC0068FF421EF4923BC8F7FC547191BE15
16095D45809DC1303B2E1C4C7A23A1D8161CAA852036B453D8D1B4DF62BD0E8BE7CF
161050B95DAC1C8E5844D4F18AFB129C71D0DFFF958BE26B57D4E57E3A0B275BDED2
161105E769FF2A073BC45BC3B2549DCE8204CF78B8950F38A92270F4AEA9FC428562
161260CC1A26B7B20BC6FB3B675B268138A49947ADD087B5B39FD45770DB5C10FB83
1613DD18D7AB1C9EBB29BEC7983562265A1686CCD395AB0EF3C9748C5A33C2939D1F
1614DC3146AF0F2E30B4172984B73A48341311237E974697D1EE03533061B865FB76
1615D1C26FBE4E0CA76C8B3C278C650DDBCBADECFC3028F402120F1190AEE9EBC9AA
1616A6EE57FF7082C113DDAFC9B094D4B9AF0E3405165BDAF284C478F7F10F294380
1617ED8948BBD7AC87878B508D65797DC240B555DED69F8B883479CA5DF85F59F392
161893DD5C83334464657E7F5B344BD8B1803A42D4F3B365FD73D1237129A45488A2
16195350B2872598A5FE7E7E1C967C5A5E6533B85ADE0E855C6D559B8BD80E5C714D
1620CCB04307AEDFFDC41E693F64CA3674F1CC113448BED653DFE02508C07D0B57AB
1621FBAC51E87F46CD90ED99EDD6536E6BD9C5A12FDC8C38ABA2DE20D28E48911377
162249E573E47F6048A5616173EF23597922629BAF0577349E52F20E6F6D473C3AC6
1623DDBBA3CC5901277D39F2EE81FF226E300A9BB0B5894C276F4718BE50EFEC1FF5
16248A2283EE27F5E199D62EDB8EA10C36020AF5312DED0050AA79D79F52F588AF4D
16257436B3555D7B6ABA5502645511EA6F215FEEA1D5E7790202F6125E4AC4164A1F
1626B6A0C4B1AE9C25475DCDF4A9B34161858F7B7D0A2BA865C65E4BDD57F81CB8CB
1627A04CC0326814E419EAFF3ADF468C654187F9F9E4E699AC891BDC68CDD7B6238C
1628AD7DD458F9D2BDC35242631DF71A327A2BF6BCA1CC3D7236F8B9D615F5A310AB
1629DF553AD76FBDAEF228E3619DAC71528B4842E9EDF753F3F9F17F0D0DA81AF276
1630056B9EF78A0EBC517B40D1157CEBEF8B9AE4DC17FEF5AABD97BFA91A3AE70112
16310F637C128631161CBD9D4C056F8E2D3B2A90F48108BCEC3871766E242B2E0C82
16321E4BBE0E468FC1C1B7389734BF0E9638634BCD62B00C8ABF2691CC2DB6972588
1633A75B58640CD738ABA1BA4C17D66987D73A5C36081894FAF432EC3847DA898C6D
1634A4801F56CF236EEEB28C6263584B701254AB7112E62DF2AFCCE0A57D6D252359
16353609FC9E3721513165D54FD71A6DC7F2FC7EBBEB54659C0DD241ECF2CD6B835B
1636D43C1840855A3FFDDF4A260A97C86B01111A5AC6BC55CCAB612E68BF59F3B97B
16378472B792F72B7BCFE16ADCEF782441D6B1ED237085AB948C1DF3C6A1AC5E548F
16381651F3EDF3C8D445109FBB6EC5AD5889482F4B73AE2540A4AA1B3CD153BFE497
163993E758F6B2E07C6436353F809A66CD6D9AB482E75CE2B55ADA22A2B1C55F2810
1640875ACF9E3F5B9E49C476FFDE0FDA12E05942EB9C4C59A10CA4231E1A04DC03E2
16416361E285E517DD39C80C97CDF6FDF4B794EDF24B78ADC7995501C8E3996C3FC5
1642CBE409478E6192F9A782B5B163252BCB4968BAA2B0C9CA3FC905492F9BB70855
164325CA8873DD1C994D65E74F37C56FEEB948CF5CAB1C6D51DF6C1E06B3DB776740
16446080D9B0EEBFD8EE81F607A99DA723FD58AC40C2E23B095A3B74C0282A8B1B5D
164503CF0FF89AA3F18CA86792F8AC6E29840019186058F9B000B7CDE938DF60F3CB
1646C202602F2378C608BA9D002281CDB22DF15D4722ADEC41EC942F7F826AC6F516
16476A1943156FB0DB95DC36A30ADBD988846B0C8EC476E5DF4E536FE4B7717FE1A8
16485FC19A2C469577B609073119029A9AE6A82C9E00E3E6694E62116AFC0D7CC96C
1649B645F7DAE1CBAC1FFBECE873E590614A13E21FD94A805561334767CE5E4FB6EF
1650ECD1A83016BD9F6469ED9F1D0EE77BF5E88492A1E569A8D1A54B2DB47A93369D
16517E4DC9188ACB4523AF57A86E1595274B76FC566967989D50194F59F97F6F039E
1652243A91094E3CCA88A899A347BF94CCC8A733EB2A9F646C77A2C2FF36939CDFD1
16534AC0BC711B00B35B6BE4017CC994469CAE8500AB667153C99E9FD5CD386F114F
16548ADC7426D9A1A229B604EC688610D0055F287739054F9BF7330C1716182C3A3B
16555B1991C09C75D862DDC48CA11361F38C387F7CD147122BAA0F7CB1C8819006DA
16567257789A3083A7C7349114871D8AF42677673A3AF007E9CEC3B27A63EEA877F1
165791C5820BA602AACC3351F64EAD99EF9D5AB7880B3949209CFB66A810673BB410
165873C7056D04F2CDC9457E790F649951B3AF95ED7DD5D9A97C1D7F6A5DD76A1B3A
16599AA803F712E73573CEB3A1CE391D276B3FC20E1FAF2781FB035D7B1098E9692E
16602E6909273D14F754778387B24C4CCD76DC6EFBA53AC2334653EAA12D96F986DD
166144B283C6370D191113A5DB4F972FC2FEB6C7B51F6A41665F544C8B60460842F1
1662869D4FF7A64E884830B866A7609ACC4B1F17B4337EEDA863FDD72AEE54113C65
166353EBEC75EA24C5F65FA0AA7321D24ECD23843A0317ACD32D09B1F3F690DAFD5F
16640C328FDB63A9388B128ECDBBB6AB3C8D054D80BC3D2C6192960FEC592C295CE5
1665503308B68AC6DE1FE8A0E6535FD283CCBDF820A23F399746BF54133535A5D7D2
166642A1BA10E73D90FDB75028936C4E6EC5FE86732BB869BE527E1074AC01CDF755
1667AFBC2855A2DDC8B44AF4FE761E58B04E0FB1FDCEF4C45AEFFEC84AB88141D4D1
1668038C6035009977652A3279A628CB134481FFD5281CD073714AADB87A8191A762
1669912F238557F6A1825FC721BD32FF20E507138D479CC1FA57060A86C3748BC414
16709F475A5FC0E6096BF9C1E6946FBF9175C6F03D94284A214A83072D75CCA5FC40
1671121EF84A9778E42F4D96D61B15518F855DC40A09A25B1221AC6FC13310F17AA4
1672CBFF2950B4A6BD40E8DEEE0A0CE86A3C2314932C1C8D1651CBE2BF33C2A88ED9
16731DE9D87287EA84F2E6A4B9BCC914884B8305D9BBFCAAA91C52F44784F5B603CD
16743C2106E067669F67E2371AC3BAEE828D14114AD032F9CD2D7607AFD9D6C4D170
1675DF7C005B7085736CD303E6D18C64488EB35A210BDC5E9BB3B20B55D4DF6DDBC2
1676B1BC0099CB2C7CFF4DF3086BA81EE3309D8BDFDA4AA59727E8B5A7D7E520B0AB
1677A1A123B776311DB50BF87E9E22A4C4F9A90ADD35397FEEB7C090A029A98D332B
1678B44D8E8DE0CDA3A605BCCA9A470A965EF9F3192599F5B2218828A88AC877434F
1679D7EEB17744ACF3C9E5DE73B08B1D49B517B8DFA306049D2F381CF68E47B6A85B
16802C9E6C72CA5C7799FB6C71A79AFE7F00F96B8C9AB952CECA3FD3EB815BB3EB68
16810FB79E838F1CF01790ABB471298D304B18037CB71F291EEAB1D144B7F64A70CB
1682A1C754B12AD657D1CC0DBC66B7E6F93ACD9D5A8C7B36F959A99706B9AB5B3332
16837A1DBF66E13EE0E7F7EF900BB6B2BC14BD0F938E2E27E41FF4FFA8296EC1D829
1684A58C7587E3BAC293A5FAFE95CFC4F8E133ED5F43A5FA80524C996B32C8E54B90
1685C3BF4B3BB002D433D22440868DAA1061B9B95448F0425C138F877EF7CFD481CD
168615B29B6CDD5B440D64C4246FB79BB080CB85477BC3E09A57AB9CE155339F2E50
16875EF003B07A68B6769C8D87621A69BCA512B59192C7D06CB4461B9C8FB29C8319
16882872479837E3EE93DFB86BC3376EE661220FFC3F5283C00F043FC5AF4C089E91
1689F602DF07DF62BB3990C59490CEF80B1D736811157BF54FD83DDE66EC3B040A4D
1690E562EC4B502796F8602CC6F8C67A03FF2C6471A693143F57DBB5017C41998F33
1691F6DF5B2C297C0C44C89C55465F7C0C2CC7846E7D3A096D7F6AC4B15D65704642
1692CA4359A7E20456BE1AD12E5FE803C9F513912EE4584B522819186B8DE6BCFC77
169300F36A9CA7AF968675B0272A3DFDB13AB5AA3E6CB0B77E228F7A0CA45F45BA7F
1694B7F065631BF416BCC832C278C4AE249C3DBC77FE7CC5163D06AE9771471C445C
1695214E451884A7DD7E6F4D110EAA5EE71F5003A3FC9218EBCB2CD5E5C28BBC2FAD
16963F4829CB50BB5B91DA35CE8E00B33DEA993154537396EC1904BD155F4B01EA4A
16973F3BCD19E3F3BFD55A974A5518E622CFB06D525B8CA92AD7A290DE6D9FEA242B
16988B89E069868760DC9BEC1E42EECA652C0A1CB4C1763AC63A582BB15120BCD29F
1699C1C5FDB0D353CF18385EEA4D99C8C69BC4B76921096870B2121084CAA1840CF6
170008AD34B322CE5C4AEAAA670F74E244EAF893134777DA2769A49767B49823AE41
170159CCD7B86F6B4532F672EFA35430B57871F768574A064C6EF9FC353BF988471E
1702921B377B6DAFE54517B3D3276CF95E5772B619D3430E89F2A693E32A6A15EF87
1703017BC9446751B38B373C62EB6C9287D2C1851634A833771ED7D17FEF8683B643
170417B1F717FB3CFBFF9609D653E407C05B23567A5BD2E624250D69ACD2047F3A31
1705897740E407D6FF79F719270ADB6163C47E6F97987BFC36AA5C0CE086FE19BA89
1706688E90A92EA796E87C4BBC45493FD57199AC96BBBBC3677ECC3CA3DC5310E414
170765091454BDBC56D276CC3B1904955A5FD555C7CB3FB3C99837B7CF398CD00C2A
17081273AEA37A40A4317A1F9519D725960ED08D184C2B42B2CE4D490CF870D88353
17097604CE9F854D134474F22516F9DA1D170AEDF6527C268D51693121D3E7D6F43A
17105CBF12758A3F70D547ADC3388F8DB433B08C7046AF624C08BE63437B247F6E14
1711922B66AC15F172A23F71AAC52D95405D851381ADB28C5773304199135FEE8E89
1712345C35ABCB6FE96AC1E85ABF190CA64D8872E4ABBDE787E59976460FC0889076
17134D9658B6D71355053D5F200D25ADB1E529D8A8BB547C7DA5F4DF91614FEB198D
171411A5B0ECBC8A9066C145A44B2E76DB97C8B964FE4E53EE9981D91814ABAE1697
1715F003014BD58A125EE73C50CF278C4E7624B8387B496121CB8A41F13E076FC452
17169CB0962308EC2BA763565C6CD88AAB5EB9D499641BF50FB904152F64FF94147E
1717FBF463E3CAAA3C5409007BBF6B8C60654EDF9FF305487C45FB49491EFEC6F8A4
17185E417E861B0B86610995AEBD0479824574D9B8FCA4875B43E4B89E6B3CC785B1
1719E524D81EDAE69E2B71774210EAEF78326910A836405A87A37FE227473A034FFD
17201DCEB3468ECDA953BAD29F12DAC93653F615AFE7D374C7FFDCE9C15E52D7F2B7
17211D3CEDFD21059E9FF4B7E1355DE12E9C3B1E6BE7E4C0E28C5F4EE8E1514288EF
1722A0476F13B17388C0676A16DFF26939319C14F72AEEDB6D4D51FBD5CDFA885E36
1723F49C78A363D0849A956E9D8D8D6BF45AF42C1630F2F01925CB855AC9838E9A91
17248467F3E1DA6B4B6473FB1EF853593891E2095FE159C7AF24E419B743B135CD42
1725E89823DFC5F316D927C3956376C11375371AE45C8BD02E502DFBC9CA56982B48
1726B69285102C9B38972612B3DC8AA9C8AFA35830FBD3CB7C9CEF46AA860DBAEDD9
1727841063BCCB67FC242D63014362310F3A6BEBC614E67AAE395F4285604CC37E94
17284CBE201FC1085D87303503E39CD9C338948287FCA7F351E2B055E75F497558EF
172933772AB2035A24C19D962E63397D7F9ADBDFD8EB3BEADF4C74E0A7B21E6240F8
1730739237CA345BA42E0C6EE14D7087F655420E98B052199BEA5F71CF8B629D7518
1731584B37E3B4DAE3B002B9F56A06D91A91DFB058096E4892C78314296C549EC7B0
1732893EC4E3324B33E0CC412CA96DC4DC97AD7574FF232DE50AF0F2B581365EB7ED
1733A354613092C87F6088D8B7A1E702282F7E8FA12A1675C88B4A2A4DDCA858C14C
1734DA96EA3ACD45A05433BFC8502A02B5737D1F08534FD794A4022178F87A2C26E5
173510B4956A095EED54275C9B822E65D256F02355811FBF6B036E5F46B6F5EA4E05
1736F3CFFB4D686A7A7501467F1BBDE90345A1CFD75C06A59A2315F35981338C1B0A
173765094CD2498E40233CE54E475A6F3E139D215CFC2996CCCAFF9B76FAF0C4978A
1738CD54E73E7BF74C11DEC651602FA5B8D0D85E8A173599DEC761802DAB5157A40A
1739AE177E59E1BFC4AF440FDBEAAD87E9E702214BC1A378B0127AA405F26AC727A0
17402046173A3016A387B2A00FEB03A1EB4001017193B9DA6438792983FCCFDE2D5E
1741BECAD57F8CED5CB7002ED3E626B5477EA0108E85ED6D47BF044BD6C25BA9EEF7
17428E6A6E55179D18B9B652D8E13AC22A6B3DF1BC88F1FBB5534FC306D5473BF3EB
174357014EEFA1E8D7E719D7D17DFC71830FAE02298E45C13573C413E0E5DF7EFA1A
1744C28B04DB57F3527364963B30164A58424C6907F7038B7DCAAEED91F0FAE03E24
1745521BBA746344E36CAEC164EF0332475C75B2ED03459390C2BE49CDDA207A24B0
1746BD764351D17B621D1933B2689379D15518775759A1091937EF8DC2D161BB4BCB
1747A15624C7AD3EF06162A1DAC94D8B6C6C0AC49F95FF6C5C86
17480000000000000000000000000000000000000000000000000000000000000000
17490000000000000000000000000000000000000000000000000000000000000000
17500000000000000000000000000000000000000000000000000000000000000000
17510000000000000000000000000000000000000000000000000000000000000000
17520000000000000000000000000000000000000000000000000000000000000000
17530000000000000000000000000000000000000000000000000000000000000000
17540000000000000000000000000000000000000000000000000000000000000000
17550000000000000000000000000000000000000000000000000000000000000000
1756cleartomark
1757%%EndFont
1758%%BeginFont: CMR8
1759%!PS-AdobeFont-1.1: CMR8 1.0
1760%%CreationDate: 1991 Aug 20 16:39:40
1761% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
176211 dict begin
1763/FontInfo 7 dict dup begin
1764/version (1.0) readonly def
1765/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
1766/FullName (CMR8) readonly def
1767/FamilyName (Computer Modern) readonly def
1768/Weight (Medium) readonly def
1769/ItalicAngle 0 def
1770/isFixedPitch false def
1771end readonly def
1772/FontName /CMR8 def
1773/PaintType 0 def
1774/FontType 1 def
1775/FontMatrix [0.001 0 0 0.001 0 0] readonly def
1776/Encoding 256 array
17770 1 255 {1 index exch /.notdef put} for
1778dup 11 /ff put
1779dup 12 /fi put
1780dup 34 /quotedblright put
1781dup 39 /quoteright put
1782dup 40 /parenleft put
1783dup 41 /parenright put
1784dup 44 /comma put
1785dup 45 /hyphen put
1786dup 46 /period put
1787dup 49 /one put
1788dup 50 /two put
1789dup 57 /nine put
1790dup 58 /colon put
1791dup 65 /A put
1792dup 68 /D put
1793dup 69 /E put
1794dup 71 /G put
1795dup 73 /I put
1796dup 76 /L put
1797dup 77 /M put
1798dup 78 /N put
1799dup 79 /O put
1800dup 84 /T put
1801dup 85 /U put
1802dup 86 /V put
1803dup 87 /W put
1804dup 88 /X put
1805dup 92 /quotedblleft put
1806dup 97 /a put
1807dup 98 /b put
1808dup 99 /c put
1809dup 100 /d put
1810dup 101 /e put
1811dup 102 /f put
1812dup 103 /g put
1813dup 104 /h put
1814dup 105 /i put
1815dup 106 /j put
1816dup 107 /k put
1817dup 108 /l put
1818dup 109 /m put
1819dup 110 /n put
1820dup 111 /o put
1821dup 112 /p put
1822dup 113 /q put
1823dup 114 /r put
1824dup 115 /s put
1825dup 116 /t put
1826dup 117 /u put
1827dup 118 /v put
1828dup 119 /w put
1829dup 120 /x put
1830dup 121 /y put
1831dup 122 /z put
1832dup 123 /endash put
1833readonly def
1834/FontBBox{-36 -250 1070 750}readonly def
1835currentdict end
1836currentfile eexec
1837D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
1838016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
18399098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
1840D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
1841469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
18422BDBF16FBC7512FAA308A093FE5CF4E9D2405B169CD5365D6ECED5D768D66D6C
184368618B8C482B341F8CA38E9BB9BAFCFAAD9C2F3FD033B62690986ED43D9C9361
18443645B82392D5CAE11A7CB49D7E2E82DCD485CBA1772CE422BB1D7283AD675B65
184548A7EA0069A883EC1DAA3E1F9ECE7586D6CF0A128CD557C7E5D7AA3EA97EBAD3
18469619D1BFCF4A6D64768741EDEA0A5B0EFBBF347CDCBE2E03D756967A16B613DB
18470FC45FA2A3312E0C46A5FD0466AB097C58FFEEC40601B8395E52775D0AFCD7DB
18488AB317333110531E5C44A4CB4B5ACD571A1A60960B15E450948A5EEA14DD330F
1849EA209265DB8E1A1FC80DCD3860323FD26C113B041A88C88A21655878680A4466
1850FA10403D24BB97152A49B842C180E4D258C9D48F21D057782D90623116830BA3
18519902B3C5F2F2DD01433B0D7099C07DBDE268D0FFED5169BCD03D48B2F058AD62
1852D8678C626DC7A3F352152C99BA963EF95F8AD11DB8B0D351210A17E4C2C55AD8
18539EB64172935D3C20A398F3EEEEC31551966A7438EF3FEE422C6D4E05337620D5
1854ACC7B52BED984BFAAD36EF9D20748B05D07BE4414A63975125D272FAD83F76E6
185510FFF8363014BE526D580873C5A42B70FA911EC7B86905F13AFE55EB0273F582
185683158793B8CC296B8DE1DCCF1250FD57CB0E035C7EDA3B0092ED940D37A05493
18572EC54E09B984FCA4AB7D2EA182BCF1263AA244B07EC0EA901C077A059F709F30
18584384CB5FA748F2054FAD9A7A43D4EA427918BD414F766531136B60C3477C6632
1859BEFE3897B58C19276A301926C2AEF2756B367319772C9B201C49B4D935A8267B
1860041D6F1783B6AEA4DAC4F5B3507D7032AA640AAB12E343A4E9BDCF419C04A721
18613888B25AF4E293AACED9A6BDC78E61DA1C424C6503CC1885F762BE10AC538E4B
186258C4B6BE0BBBE0D121DCD89FA1D8532F91EA374A83705EFA8FD4DFEB37C91DF0
1863C1459A641899007FB972682950D1380B4537582E33C818CD46BE14D91C44836C
1864F921476D1F55F6225310120A5BF9FC29E9B3BBCE29CEF9FF78704C59022BB254
1865BB0981F6948E37682E172ECFFD060080860B58BDAEF87EE9CC9606838CE391E4
1866144F941CE0BB5A49FDBC5BCB2A47011EF3E7B4CA1FEB87503D5CC5CC0A4BD51C
1867D5CFC57415CBA0C3E89A334931243678CA19517332040320E2544F563ECF0A86
1868542D89C23B40F671E78C8AD864FA543E49F43685DE66F6390C67CDE9CE1389A3
1869A85EDBEC0A29C42FFF201BF642D9761D61E1BA6499B3EB61C2E313CB84E38ED8
18706F038A950AA7A3E12A60C14BC2A48252F1FC4A24049A52A9993FE1053401CE48
187134CDE4BD2C865DEBF6EF2E48F7C085FB8976B37383C9F8E3D4425417DA2F1DFF
187233A95CE01B3BE1CAFE80D65D56AC63CB2D873856AE925337292925402BBA4CBF
187370EC76AD6E5229CC4CB2B587DF328F780350D1E4AD579B4444F7BA546AC1AEE2
1874C6E4BD774D3BF38E11F397F5439157F3CF809955C7927DC8CAF7D176720843B3
18756505A59181085C4F0C7D31E6A206F3C4CB427C031C459C797886CF2410745CDF
18764C24248346ECA2767CCC3A3DBADA103F1A6A7C94EEA4210AD76877733CA35606
1877BDCD78C5A626F031B8B9E98D91F2BAA7ED9C2AB4954DA5DC94FC48C859BB5B31
187843131A021C9C903021ABDAAE0B20BD5A3B28A51CCA07D41E5A99C1F14072573E
1879175F3465C772B0F4056E2716BE5E008D0FF1BA87B639E2B4A8F88539226E38DC
1880732CF5B742D29C364777828DE30F57B2A019A932A1544E8AC5841D6782411945
1881B76ACE4C2562028102372626A5A264AE3F13F746F3E478D83C447F6AB7304D5E
18825977DDF5C254E328F84FC29EB6E3010253BA4E6595364F15F06CA446F0B5CBE3
1883578A9AEA1738D94DFB906593827521FB920B876CF9E89CA2E21AEF896492233E
1884D81C02F646907E0532B5D646B64EEFF6FA5E91AE6503954A7B60883FE7B08EE5
18850648FFE45080B84B9563E98A3F679DE8E9BD3FB7A1B2F035549BC2BE6766F4DF
1886A8400AE7A70C499D6C49264A77252B2D3738E666D7BFA5CDD9F1A5B203DACBE5
1887F1EE7FF770A8A2567626162FC83143451EC2648AF80CC4EB48DA17BF683067DA
1888F465A3C6D4225BC2282B4DC86217CE5AF2F731D07A56FD61BA12F7C298A3D7B3
1889B1401B0A31D378D5E15135C014F563DDFD8476AD4A94E24CABDB0C1756F8AF17
18905715B2F045BCD1E40FDF22A58F87C593DDC28F5A1F53A089296357878ED76CAC
1891A1E269C56FDA60DF76FB52F1950883B47A5E0DA7119ED98D56ED590AD19C1700
189234CEEB5576C8CEF59A22A39A026E0FDCF96205D452BC8FAD4D119E8E20DDD104
18939D7ECED52E420D85995B9F7969E560C7A49B3A4429891CF29E658D88D6AB6B1A
18940C2854552EDE7C2F6F4488EAD52EEA40EFA7DBBF91360A062B926B30B78AD6CF
189575F05CF91AC211C71A7317403461A525BDFF08C380FB2296672D864FA77BABF3
1896D26D94EE5558F0985170F83730FBECC03E4BA0BBE3C3909CD9C520F05D8AD3DC
189777C649A03DF750A1441E67954670D427DC267D13D5C1C43E38110378F66F7C83
18983AD0014DB37AAA9E1F399BC397FF7359FCCC7CE758BC69EF13E50016376E98C2
18992CEA7397E8EB4F96E2C9965A088B061063D5D8DB68C96DD3662363A929CD947B
1900CB477012BE5078D2C1E8B0179C57F7F67D3E2707067E27DB122D6563ECA39B2F
19011CD189D785354263449E0028190D7EEFAF6D0424509AA2EA43F6A53B95EE3FE4
190282354DB8E3F7B7833F9B55E35BCCD28F608D3A9D8C4B81E588D3A15DFFCF3B66
19034B0D156B223C61A568D8451E7E65B473907900B5040E3486FD2B0E0E0A5D24AE
19046D9406A9115DD0FC8F3B785CA4CB8E98DC1E7DF922485BEAD4AC9BB02374E852
19054960719075010F730A748A9E5B909A02CF7EF3EE368DDEC383D4FFB47A5096FF
19066139811F850DB3E05910EB07D2F04D7CA61FAC4DA080161127F1CF088BB0B9C6
1907376B635B2C57F30F7D594CDA88B2ED752D395F360DB50269DF6FCC0DBEA85839
1908906AC2E9FCD5CB3F003E628BE01FABCBDB76FB97DAF6E5F76F2FFC30FEA042C7
19092353540DE16611F350A256E31B3891A38F9ABC2970651A3E2E48D6817CCA709D
1910A499AF22F1CEEFD30A005DA4CDE594F562135180985D21A5B180991E501F3CD7
1911E46DBB5ADA616A329459559AF55E9C3C85BC89684860D5D9D0C798A213279CC0
19124AD06C510D69D922337E57789E0CD91D3F804341A7B803432621F3A166FFEAA0
191301A382152D1C61747C49C668B12D24FA861C72543FC3970F9117F454792A7349
19143BF873F2BFCAC89D0C17DD4898952DC1E69AF87B68043B385F1411EE9A879650
1915ADA6501475945E5DAFAF42EE3E2FDD7868F01C17CB28A292DE35C305CD1A9FCC
19168AF025E0AA1FFA9A579E0672257A513116B346541F511323FF26F57D2CE59501
191784BB15C355D729B0C41C20416BB3AEDE66F45D6D6E98710321D3B6ED8E718626
191803ED3AAB1DDF52FAE18C29F48C6CB31735A0F45F4188A1AA3C0959EC53F7CE05
1919757D437A569826D882AC4517C33FD3FAECF06F03FCE758F9A777C629C44ADD0E
192020DFFCD9976EEB5158BE2294D3691296201B19DD837779AA946441E673AA7AB5
192190BB2065E682F32A1D46EC589E3F0184A73AA5743765D6C53C137BEBBC9E01C5
1922BD9F07165EB6C77393F4D4861A5C4CACB7E289FA428514C3C8045804C61B407B
19232BAA59B8CEE81512382CF039001F0EFAF69EC62AF9BA2A4CB53874F0D93A2F9B
1924E74F9A58F9E317FCF8F82697E47665E55D518F607E6285CD826B439A775D4971
1925D8EB1D2825633446806D7FF9AE54F62F82F5E00D2193DF1B23CC0A3323B8F6BA
1926654BD4383D0B476E52D381B99A3424A7F6A5DD1F7A807531799899E8ACA483B5
192708FE009CADC9F07121703B6DEEA0284B941EAD7D53ABF0E172A4F6F4FF0FD280
1928F95BE8E25E9C01A4EDC0D5AC0500A7AB8D99E5D7E7816BA87C9E913BC14D8FB0
1929A4A145C0E398CAB10B7F281213F96B848C19FBBE3985FE439420277848F91C60
1930E90EAA66922DA62B69A14648DCEE900D7CE9C87F3F375DCE4565BDC0D6B05CE9
1931A418CC881CF0266C9E0FF3E02D1EDF4F46488B36595D534FDB419212E180E910
1932507044EF09D562A557636D5AF6D1D6A4E9D6888AF4AC91402C7E67FBED2B88E6
1933947AAC3C8840DBF58286C1B94FBFF1BE0732896A26F61F772FF979B667D4765E
1934CC8380503610158EBB18002172D612EC5FBAACF8A724C7AFDAEB22CFD018FE14
1935EC736E2D256FCC47DF8117477A7AD858BE6D8986F11762A775DCAFE44A81E309
1936A16C619EBEB9623DFC1667C600409C30190113CB87A94512114E8A2C0105793C
19378A74FA831F05C81ABF13786372681E1B3892C648867E75D2C7F5D501520B64E4
1938CC0BAA74ECC6A2E033047CB14D854E7A198C181E3E4DF06A5EFE9C6AB13E65D5
19392172BFE493DC0C75F6A5997A5CC6F7A622F3F9318B08F32C3FF8A7ED14BD9743
194058E8C60C45C858F5145459893011E9D40A667876F48633D079C347BA66CF02A2
19410F6B7A08159EF5F4D71D370E18CD3159A17988962F9764640E18F7CD34707E50
1942D46C7BE1466703F4E5A76FCB59FD68C6DFB4A205E770FD1F11811B52E1A11641
19437720ECF4B11FD3AD44C2FB5E37279AB0C320704A22B8F6F70F53E0F47A619F82
1944D4166E5B7C1EA0CDC1FB1AD52A6FED667D61A200E64A15D2C974F07457BA976B
1945675764000F46AE8E91E351529562B217C9E9A3B93950ECF294996317EF4D929A
194681A8CA086E4A7242D48587A676164B7DC98F9875D14B044276FB4A031845FD38
1947C47BE4F77018375BAC63648275B477024FB35208B4061A495EB1A9FC667DAE70
1948F417AEEB931CEE0C9A435FA3BD20144ADB5473CD137430BF267ADA3FF5E333CB
1949C80B1AD385E05F347329E68A1B2C7C0C05EFD8F49398922E9C6DEE3BA7198C89
195030B571D1B1AC79CD7390A46ACFF7AF92FC99CD10E9BA4407A2DB70D4BB1FCAEE
1951FC662BCD66CF83B63A2B3A9923A56B0540B72510E498037AF9BE8DD385F32BBC
195299A202B137D4C540BDBAF6413877DEE14B26D58B357D8851CFB751DF2A2CE7D8
1953F772D98DE7DD4A9FC7D4BA8D1DB4A439D57C9DB5F8F93D889D70E7716036E52C
19545A92CD4157C0BE9FDD4660414AB9F29428A7407AAC0D28793BE17BEB46D9A953
1955D5D5F27C852CF88E50BAD670BD0847D4E1B167074D2964AA4944DB45B879BE86
19569C56BF924719799969C9E7DE3FD0196F3CD0586855C490C430DA82B220D8E86E
1957767234CCAA939F9AF1FD74225DAC5746F3F29A8C89D001F193FFDA7580BCB069
1958EC4A0F13D6C9D261F93055379E8E6CAE8359449B86057B2342CF4BD51787BAB0
19598F2E2277C7DE40A06BFA90C93C7F5DA6A3C71CCDBA9D944ED7B014FA426DB638
19601B39A364D6B98B631293FEDF6646F5D9E7B6BE216DBFA565907E308669012F27
1961A84890F9E3D7B1BF61E831C8ADD8BCC441D02D964E6BD3128AE5030611AD6048
196266614FB904F2B8722DA5368D5E5FC7E1D60D20F2AC08B20E4E1FE618984C8A61
1963391B281C55476EC56D1A51C1B1D39AF4A10CB0448B6AECBB9B014A233526B6CB
1964005610C9228DABEC64B56D1BFEAE81BC1E9007542BE5C47E3B05CF109A1A6709
196554EEA279D32E4040370B58E33B5A1A1D80B395A8AB364C88C2FDD3F7EF449A41
196610180533589D20244E5E0A65C5F1D4275434E19B8AFB84DCA93AC1937C6C2CEC
19674A420730B464217660843AFFF049A99426D882FA2CC3680CEC254C6E4FF81C53
19684978AC63C602DBFDD81D14D3964C4739A1F3EF4B15C98B7A73D26BBF39F27559
19692AB8E8029F6E83EACFA1F8DA09CDF2562C002BD9367EBA5D682E5425CADDBFD1
197045FBE01862D7DE9D083C95502D03C779E8A51DF6131EDF12488396D512AD24FC
1971411F248AA851B54E399B81CDBD605919771A4F3FDCEAB92274EFA582F59C7771
197210AE7AA21801548A13EA8532E0543A9C560C20EE3C73AA75FAFA795BA39372E3
19730DE80F5F47F7AB05B4F21028EF298247B51ECD3E34E0D4AE3C1303958F0CDB35
19746BE93BE9D3014161D81A3E863F7C3767F5D82284CA2605E43E0CD6C9A01F3DC9
1975433CA526AC3CA43869D1E5AF320C19A7A034C03658C30D5A5A72C25B4ED43ACA
1976E14D6B8C249D6E6D0C9C291CE0CBB404060E837A965A1F5D8937F681522BB956
1977FA363C842256273A25E464B43A19B86DBF9EEAB1E7F70EEEEEEF3F93EF54262E
1978647DF4701506F4B346EECDF569C85F7D03B29B26D1E8FAA28386CE07A9BF8E3F
19798DCA805F2CCBC55A6F5E32E50E32026BBCB128315E2D35E35EAB1E1C142D8C4F
1980CAC940888BC1DB394595A3F748C9CFA2ADF493EE70A41C7D26556DFE9DBB6A74
1981FB23C9AC863CB34BDCFE560DDF98D231876003A86C5714BF76CD3CBEE1052963
198244C200A3918E0EA3F51231515ED5449E9B8F06B451BA7B124F05634868C24D2B
1983A14C0511EC27C28E836F76F1765BBFC3E9AC484721768F0475B3C98C775D5B70
1984D9EC58945DDACA523EFDA41C4830A26E91E4C8D2006708EF956C7EBD7D19DFBC
1985DD20A6598F6894791A6C032DC5E6540597C97651D50F83F6A430E931DDC0C516
19861EC297528B9D72B9787DF9D6C9900AFD7F5EA607F790984984FA603ACEA8D05D
198720560237F60CE521E9642CEE775EB04806912A01AB73EC92FFA64AA3A84999CA
19881B57C6C133EC4B6865DA57E83828B8AA2635B3EB57F64D2D90F9AD559E049FB1
198926886D577CEED6C370EB6A303057172B46F443FD4BD9FD0E0D50CB441D970151
1990F01DF840CE3DFB5CDA9104F4A4B6634693CA32F6FB73A38F3173014D8E1CFE0B
1991B163AFD91EA1D945AF548065FE55AE954FAABA468262E8BC19843EE3E11125A3
1992CB3F59B3E32C6162D6F2C58B2CD5D28E87219F9A9A9722874A9B88911425E31B
1993EFF198DF3480030F6ED1555C91FF3DB151E5A566819674659C25271450CD9354
1994330C9B1CDBC54E4DC98861764E3675C336BB5DF130A43BBC7B8E2C5C40D16C94
1995033DE6EDCDE05F232B3FEF61EC182028EDF281F42591D1F597B4E424F73BBB10
1996F3EFB5F275E722213E52AB94AA6D767A945E3E82F9A217B786DFCFC19593A88D
1997ABE66FCDF794E6356F991B754290088F9B55219AD3F20447B56716119A483003
199899E284DAA7321A4129BBCE1D9A58E7AF7C65994BB62D529EE7EC99CD1D1F658E
1999C37052410F535ABFEF7B401D0ED1277CCB6E18179925F6E7001330F8B939F7E1
2000605C63BE858882DE246270507A0A1777ED4245DD7CB2FC4BD49CA6F5DE6697A6
2001CE05A3022C84ECCAE8F0F1500885DD835E13E5BB336B208CBFE1870F80D52912
20023F777D348EFEAA77DA609ADC6D53372F3E01182EAB8A05FC4B3DDE07CCB10BBB
20037441A3F2E4AFF140F6663B7DF0C96E804BF35AEABD1176D94B8974E199B6D6E8
200497D4EABFCD54C7B4629924F22C80DF1801EF9F8482660F5CED63AA229F225816
20055CEF2B6A12D736604089E3BC6F21E30A768890CC5DFDDCC10DFA1E614C4C913F
20061DBED33CAA775B1C01D58B30B57F26B9E6FDFC0F1449B5EB002D9D5B999F95FB
2007AE0A1D9E7B8C7A7824463B841A0565EFE3F19F10920098BC0430A3A9A1898363
20088EA14F0A84D59DA321CB6A346FA3308AB7DB8A0BE4FB3FDCCF5F46B8B4AC9203
2009A6428E9B510305140820AC86AD4BF419AF9094FD60FF3463DA0258C5F0FB767B
2010FBCA4B62160FAD8D2419796FF10D8AD44DDD1CE8BEC22067D7AD5096B1E6B326
20113AA531227B02B0672BFB2ADF9356ECC541C556151E59AE021D9043B1847292F7
2012E6E00F991FE9376CE92307A13C037C14CF1413EFAAC096A19C0A4B14B2089621
201381B47727C6014FA86F0479AAB63C4944D78A9AB967AE17F4F7BA746EADED5417
2014D5BBD68DDC822C744432CCBC00587AFF808EC0EB5DB4ACAE9E55A18E2DBE88E3
20155556976658B4E181DE93AC670431D90FB14ACCC19B9EE95E7AA3317B9345FC42
2016C7A38347F930152E7A9525561904F9292955226AEFD2CA05D9823927FD34D582
20170139F662DE08AC60D0456883744557E9B78C6A4F2E6B7535B3F5BFE1754130C2
2018C9BA2B6493F612D4307F183D82723FB73653EB980A379CE58FD7E8B7D688AD7D
2019CED57CF951D0B0D00671C9E0E25C748379A8BC89475616670952E796A1804B4F
202030D9A6AA145712D1C1859A87FE4C8EF8210E9ACFE5193261183D0C170EB03C12
202184EF83013710D350AA0438C0EA0A9D66F4350796327B12019E6B4BC708094ECF
2022CD85AD6FFE5D5C6A9AC95FA066BB08F44AC97E8445FEA67E3520BF38024801E8
2023912FAFDB543124BB8B03528F372B22FB2482D7667D57188118AB1C95B46AF0F1
2024ADFF94D2E39D73DAE759928FC0D2F7DD00E854ACAC62B9D783075666A0FD9909
202599A6BB222AD272EFA07C9F4E62EA6E22B67C363E5AF7335CCF18DA0B59FB33B7
20262C352DA67F87B28AE464D1EE92E38AD396DABC9ED22CD973BB850797FA4BA155
2027549F071280BB12C7A9B9D1834F32A3E4407963103ED244226E5892F5A2EA4144
2028EFF6A0C4BA24BCF45B9366131D0C09D69AD50E1150859BC44E283EB84D257AA6
2029F970EB9E48F6B60C8180C169626F43D5A232AD674B7438CAFDCA244F2F711FC2
2030E50BE43FE379B9AB380882CD15CC1272450246E8FCDFB64E98309BE6FFCBFD43
2031BB10D1826CA228C0C0331CA36216E680680289445471AF6528D2E3E4F6321298
203210B2D6AFFC5EAD6AA8721F46515473173C0040D5425E1D1BC660C864C5011FFC
2033ED996B2083F5CC11630D64B5C7029237004710B1EF765667C8DADA607452CAC4
203460A1CD85AAC006CB60786D9F566AB7E9624D571B7388D5CADF26274C7EDCA1D1
2035D75D054F5D931D7950704B18921CDDDF5CEAE257671F377A0C1ABD7597D4FB29
2036ECB923FF12083BA90BEBC95E93B61193595C0BE7181ACFC3F5A068E6E56026F6
2037984E01B341C01685E1D306AD9A42A7DD375704DDD345647989A6CAC2FA407233
203882BA30F71584586AD5F8308DD164FD0E788555EED6B1E8B0E4484893076D1D71
2039182578ED0C5C5D4DB805B7C75FF92C7A1CC96773BA32203CD0C893DD592117F2
2040DAFE8C9E1FBE859D3AFE11FA068279D7B75C0157F065FA16577A872CD1B2CA71
2041784CAE81D720FFA3EE1C6EA6220B253FB088698CCE811D37C9668D2F71302F9F
2042159C95BA8BC41BB56B7C584CBE6AEEF8D6716AC6B9C8BF657F340241FACB8B5F
2043863DA71BC37F91AEF5F3EC379AAA07DA8BA900E45AC3888A1435980BA7ADB033
2044B4AA9054F9E855E1973BF162EC3F4DC2455CBD98FC31D5451246CC88F3FF5CDB
204522880E3685C97149CCFCCF7DDD19B7AD61B46C8762194274F48237098AC5EC7C
2046F2D7F56EB2AC91CC5275D7D0838BC76DA9E0BB1F1B6E88F439EAB042B3487A77
20473694AE03422D5019416920E7D95618B24B07A8D2EF7F6C22EC67F22DADBF1499
20482A2CD15EC4B518BEF37BCF67EE085B7FC3D32F56EA6EE08180990371E83B1327
20498AAB1973E6DA6188E1732F4D66AFBB39E7C21E1A6D299D87043B0C86F6811B8F
2050A1B87646692587220A4AE0A91648F3E86BC6343EADADE07D89C674FDBF6CE091
20513C9BE0501AD4C13CB61B8985CC0C1FBA92A213B688A3DCCB1A13016E3196B7E8
20520B987D6417D7028DF1A94AE0B996962B085AF7584B0E29AC9EE2C22A7D124702
2053F26855ACE2E21939D1746E843A679DFA46D7293F08CBC31EEA3D005D87C28B05
2054D0AC1ABEFB49FFC9C5859926E7997A1F4007827221BC9077222208A7E6762563
2055009E297BBADD0A33B009FDCB4EE02B6D1A5D4553C2A6A3FC4B1088E764F40A08
205659C9BA931D73143550D8AAFBE07891F64D4F748A3AE56F3923A8A49FBAFDD8CA
205722A757FA39E915E2002D1D9EB83FA146FA8FE4A375CD8D8B8BBA8F3054999F07
205867F4BE0292774E5B221075824D3D57161860763927D2BE57F82CE63D178AEA54
205924FDDB4B529145B32BDDC83EDF5918FB6930AAFDC21E1A16A8F64007455DE27B
2060210CD374A3FD8291594DD90309D97D53EC23D2CE5105D54EAD696A035D72DC92
206198375DE338BC720E939F763BC5A3B9B1CA9742AEF605D4799E5149820B09A788
2062F2777C9F485B2748E6DC1EAC03EBBD9D1160F679841BC8D068767A70E2503FFB
2063F16FD289760BED0C149CFF778B006EAA6D10E2381B853BA57557640F76C44F93
2064F6A3FD5EAC05027F2CADC059BADCA6B2FA2380C7E24F91633804CC32F93AFB71
206542FC3C5430ECF3C363E9363BA165507B1E631D80919D740C83048E788E27CE03
2066481334F41BDA50EA0C5AC08E45657210DF5E9E9049C99BD86075F7AEB96C1DF9
2067812339D5E95DBB961A6CCD4432A842AD176C0F11DCD32044D5D4C3CD870A9C19
2068C2F8F8108E94033960A12FBA170465E5BA2ED2B427B5C4259FF8D51248DB80C5
2069778A7DC0CED69DCE784AAA3D3FB236C8CDF9ADD9E3A8A0566A15B95481D64D1B
20703361C657A586B9E38AB0E98C6C67108DC7BE7413948E4488A1EB2E48F5111699
20713D5655D6B7F375FF90DC89490ADE36CD53B969C6B1491F020E70F926A4002F58
2072D80516B0604E12A9EB0AD9F8369D90A690F390475F046ED82837106B989B081F
2073AB718EA8337DAB429DCC126F80E23217C98DD8EA3449A73C66E6E2162E7C3475
2074739AC26909A195E6FD34821FCD52FCEF60BAB85D81031B93215BB137E4D7771E
20756DEDD8C0512406BD0509050F499B20174F694019D33AC7B9923F11F9EC9EE79A
207675DC1C6E23D78137543F3F39040144A3AF04075C8FCA201A18FEDB3A9CAB10C1
2077BDC2395425B27631859D655AB5E00AD2E7D044243AF8DD4AFA7E898151B94AC8
207858B588E4E8C3A8EF78DBA31C88CE8EE5B9581B1894876327366C782E52A05004
2079D14CC443A6A22493C70D7B32BBE8FEC14DDE0DF75EC3EDAB52A7D5AA1B41AE09
20800279F8AFF104EDBABA8BCC9E461E4FEBC5CB3D2FB012C2F0711FB4A12CF7E8C1
2081E973D8C32EB71F362C6743AF79F86A772854DE6B4FA36ACCD814A7AEEE7D6BEB
2082BB431B064212DB00C054AB718D2579C22E81A6F49C76EB7382DA8A1764E04A74
2083C67BE4207D93279A70240793BC6A5358E97D119B3F9A6F7DC8858B22BF8666F3
208491C9E444FF6EF893DA7454AD98E7B0BABF9615205979A8A69CAC43A9F69233F1
2085BB922EE0DA52E8F41F955AF57586DC3BEA16FFBF55033CA2DD8F0C55297FB0B7
2086E6CE026A3F2B08573DB1E91A34AED33429680E544A30108C90E597E8BD39BAE1
208775C4064951CFB38F1A64AB2AEBAAF6806DECE33488B580D9F9647EE41E8F9B0C
20887A199225C9174D025B23A158F4F04D76B6BB9F5B78DC168DA7874426EA616009
20899BBCB08948CE5FE807C0979F61F386576329955001A680DAC16D925577DC20EB
2090E97243D030BF16DD5098275B6555B366B59989DB8D79D509D5775932DF6845E5
20914769CC4716952EE82FA2D09C4C419137B84E48EA64C7E119B43FA7D441BC2923
209235B8B5FC2A8FF5D46503AC496886596048611EE35DE217CCBBCF01749BB933FD
209320C50750C54259A7EC0B2CECBD752BEB13A899D4552292D77F4B64781D61F090
2094D34D66C2C7C6BBC4C85016A46DE2637680534300A04CB6E0C16B5A7FE654B06C
20954FD71FA1A17B0E4A067CB9306A1AEA6CF5A590DC0E30961EDD056D60D6366819
2096B3EC4E7C6B9E0082B86363666C83565C80FDCE6152F3B6607975822AA2897B78
2097806881C6B8451B0C2BCF1FC07EB24BB304EDC5E64E777CCFA2B86DCC276D185E
20988DE6294BEDC1FF52975B1F017327E27C04B121504F45CAD532164CCE73D4CFEB
20993D216F46F9DB2C1C58EEAA9DA74586DA321A742E01C61773AD4D39261893DF6A
210063F22F80F02B38FAF41D188F923F889EBF1B0709E34AD60331F323DCF2097672
21017EFC30127AB402A3C4D9C7AE88302D5A7B91247AE89AA98BEB035DF51954A42E
2102922E73FA4A66E378C6688A1CDF425A48563049C30216CA209BDF479914039327
2103EB9175B4C8EA399F0BC02F4D3A1EF795F1F774D9C4FDAEB1DA6C0F977A4B4C5F
2104FB71B7790D704F4DCB3ACBA2B32C0434635DB7133E5EBC144C2868AB3C4E67A6
21055C4D347D0A77A23681281EFE53FCDDA9DF62C7AB0F8B537BE4B22544B5074BE8
21067B193D2B5339FD46A62B8B14E6660BDDCB157F016FDEA3ED1CB3CDCB5CD7E796
21072A12A21CCCC0E568D56733CD6FFC3199A776E31F044A32801203B11EED7E8BA2
2108F7153E9ED49EDCA747A48D8ADCBC4CDB33B9E530FD51AC36D43FE8BC19B07311
2109D765E02E4BAC5252B9DD5E0D02C554A25607341E5C437192F2BE10B8D895FAF9
2110BC645E2E714F6F2E9716AB7AC7706C389F5A072C222D808848D61EA3222F935F
2111A58A4D0DE506E6EB351396E3F53AFEC44A0AC4CC6B22064AA6AC79E8BFCF477B
211236311FB56CF3F2F4CF290610E4C9EC3FCA898AD685B083593A0355BA6D68BAE1
2113ECD13F2752EBD5082AED23542184F6BD0820711BF6889F74335684720DB88A0B
2114D09973122AD44C6F8A29524427AEA937799C2A5A7530624872CCD6E0D5B4A4FB
211571128163937E60CE472641E0BF20E5AA447B7BCDFF0430B0DC51ED862A942C77
21166559E7E729AD91B5FC8A8C0B9A3A81A7B25B79F867D290E051E61DB6584292C3
21171D3FF2A43B7F330CC4EF51F889CF6C41BC17C0A37D48CBFACA320D0F8F81FB6C
21180FA345815B553245AFBF5757F50ED6443D1928ECDEA26D69132B144E610D67C6
2119A097A94AD061A05F641FD4E8626FA58EC9AD6FBC956A161518732B84C1422EF9
2120E70F0FAF340AA35FB904E50AE6B47F6C45A8E7D5B2B1368B45AD5B1CDE5C80A5
21219E65385C8C0C5CBB89189084E1C92C1BE209B2EE3EE712637127DD73FBFE6BFA
21229D4ADB559F6F5883F215273D674784A1C4F64F79196676942D2B90840336F42E
2123EE44767432CFE2EBE2550487C9567C990BAF93A246A77F77AFCCA2BF738966BB
2124D811A2922F825AD11D769C15F24299D7405341FF867FD6E7550463DB69AC5C48
2125767A9F55EDCF31421FB230322E493A5B99F347E33A811C890F69888B35045166
2126B37C730F954856C8BB7DFED1ECDAF30AF7FDB675F727F6FFB931B81476DE3F0B
2127950456E6235B4E2DDEFB07CE3E96D1
21280000000000000000000000000000000000000000000000000000000000000000
21290000000000000000000000000000000000000000000000000000000000000000
21300000000000000000000000000000000000000000000000000000000000000000
21310000000000000000000000000000000000000000000000000000000000000000
21320000000000000000000000000000000000000000000000000000000000000000
21330000000000000000000000000000000000000000000000000000000000000000
21340000000000000000000000000000000000000000000000000000000000000000
21350000000000000000000000000000000000000000000000000000000000000000
2136cleartomark
2137%%EndFont
2138TeXDict begin 55387786 39139632 1000 600 600 (refcard.dvi)
2139@start /Fa 197[20 58[{}1 66.4176 /CMMI8 rf /Fb 134[35
21403[38 24 29 30 1[36 36 40 58 18 2[22 36 33 1[33 36 33
214133 36 51[26 45[{}19 66.4176 /CMTI8 rf /Fc 242[61 13[{}1
214249.8132 /CMSY6 rf /Fd 134[32 1[43 32 34 24 24 24 1[34
214330 34 50 18 32 1[18 34 30 19 27 34 27 34 30 11[45 1[34
21442[41 1[45 54 3[22 1[47 39 41 1[43 42 45 10[30 30 1[30
214530 30 30 1[18 21 18 44[{}43 49.8132 /CMR6 rf /Fe 134[43
214643 59 43 45 32 32 34 43 45 41 45 68 23 43 1[23 45 41
214725 37 45 36 45 40 85[47 11[{}25 66.4176 /CMBX8 rf /Ff
2148130[35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35
214935 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35
21503[35 2[35 35 35 1[35 2[35 35 4[35 35 35 35 35 35 35 35
215135 35 1[35 1[35 4[35 35 35 35 35 35 35 35 35 35 35 35
215235 35 35 1[35 35 35 35 35 33[{}74 66.4176 /CMTT8 rf /Fg
2153133[51 60 60 83 60 64 45 45 47 1[64 57 64 95 32 60 1[32
215464 57 35 53 64 51 64 56 9[118 2[80 64 86 86 3[109 69
215590 1[43 90 90 72 75 88 83 81 87 53[67 11[{}42 99.6264
2156/CMBX10 rf /Fh 132[35 31 37 37 51 37 39 27 28 28 37 39
215735 39 59 20 37 22 20 39 35 22 31 39 31 39 35 4[35 3[53
215872 53 53 51 4[55 53 65 44 2[25 1[55 1[48 54 2[53 6[20
215935 6[35 35 2[20 24 20 2[27 27 20 4[35 21[39 41 11[{}55
216066.4176 /CMR8 rf /Fi 140[54 57 3[76 115 6[42 63 76 61
21611[67 11[106 2[103 3[108 6[108 1[90 1[99 67[{}15 119.552
2162/CMBX10 rf end
928%%EndProlog 2163%%EndProlog
929%%BeginSetup 2164%%BeginSetup
930%%Feature: *Resolution 600dpi 2165%%Feature: *Resolution 600dpi
931TeXDict begin 2166TeXDict begin
932%%PaperSize: A4 2167%%BeginPaperSize: a4
933 2168a4
2169%%EndPaperSize
2170 @landscape end
934%%EndSetup 2171%%EndSetup
935%%Page: 1 1 2172%%Page: 1 1
9361 0 bop 158 -320 a Fi(GNU)55 b(Emacs)g(Reference)f(Card)922 2173TeXDict begin @landscape 1 0 bop -358 -364 a Fi(GNU)45
937-185 y Fh(\(for)27 b(v)n(ersion)f(21\))0 56 y Fg(Starting)47 2174b(Emacs)h(Reference)g(Card)274 -256 y Fh(\(for)23 b(v)n(ersion)g(22\))
938b(Emacs)0 251 y Fh(T)-7 b(o)27 b(en)n(ter)g(GNU)i(Emacs)d(21,)h(just)h 2175-450 -58 y Fg(Starting)37 b(Emacs)-450 101 y Fh(T)-6
939(t)n(yp)r(e)g(its)g(name:)36 b Ff(emacs)0 383 y Fh(T)-7 2176b(o)24 b(en)n(ter)g(GNU)g(Emacs)g(22,)f(just)h(t)n(yp)r(e)h(its)e
940b(o)27 b(read)g(in)h(a)f(\014le)h(to)f(edit,)h(see)g(Files,)f(b)r(elo)n 2177(name:)32 b Ff(emacs)-450 295 y Fg(Lea)m(ving)37 b(Emacs)-450
941(w.)0 611 y Fg(Lea)l(ving)45 b(Emacs)0 807 y Fh(susp)r(end)28 2178454 y Fh(susp)r(end)24 b(Emacs)g(\(or)g(iconify)f(it)h(under)g(X\))254
942b(Emacs)e(\(or)h(iconify)h(it)g(under)f(X\))405 b Ff(C-z)0 2179b Ff(C-z)-450 533 y Fh(exit)24 b(Emacs)g(p)r(ermanen)n(tly)691
943906 y Fh(exit)28 b(Emacs)e(p)r(ermanen)n(tly)917 b Ff(C-x)42 2180b Ff(C-x)36 b(C-c)-450 728 y Fg(Files)-450 886 y Fe(read)23
944b(C-c)0 1134 y Fg(Files)0 1330 y Fe(read)28 b Fh(a)f(\014le)h(in)n(to)f 2181b Fh(a)h(\014le)g(in)n(to)g(Emacs)744 b Ff(C-x)36 b(C-f)-450
945(Emacs)981 b Ff(C-x)42 b(C-f)0 1429 y Fe(sa)m(v)m(e)29 2182966 y Fe(sa)n(v)n(e)23 b Fh(a)h(\014le)f(bac)n(k)i(to)f(disk)722
946b Fh(a)e(\014le)h(bac)n(k)e(to)i(disk)955 b Ff(C-x)42 2183b Ff(C-x)36 b(C-s)-450 1046 y Fh(sa)n(v)n(e)24 b Fe(all)f
947b(C-s)0 1529 y Fh(sa)n(v)n(e)26 b Fe(all)h Fh(\014les)1356 2184Fh(\014les)1062 b Ff(C-x)36 b(s)-450 1125 y Fe(insert)16
948b Ff(C-x)42 b(s)0 1628 y Fe(insert)27 b Fh(con)n(ten)n(ts)g(of)h 2185b Fh(con)n(ten)n(ts)j(of)e(another)h(\014le)f(in)n(to)g(this)g
949(another)e(\014le)i(in)n(to)f(this)h(bu\013er)134 b Ff(C-x)42 2186(bu\013er)71 b Ff(C-x)36 b(i)-450 1205 y Fh(replace)24
950b(i)0 1728 y Fh(replace)27 b(this)g(\014le)h(with)g(the)g(\014le)g(y)n 2187b(this)g(\014le)g(with)f(the)i(\014le)e(y)n(ou)i(really)e(w)n(an)n(t)78
951(ou)f(really)f(w)n(an)n(t)196 b Ff(C-x)42 b(C-v)0 1828 2188b Ff(C-x)36 b(C-v)-450 1285 y Fh(write)23 b(bu\013er)h(to)h(a)e(sp)r
952y Fh(write)27 b(bu\013er)h(to)g(a)f(sp)r(eci\014ed)h(\014le)738 2189(eci\014ed)i(\014le)538 b Ff(C-x)36 b(C-w)-450 1364 y
953b Ff(C-x)42 b(C-w)0 1927 y Fh(v)n(ersion)26 b(con)n(trol)g(c)n(hec)n 2190Fh(toggle)25 b(read-only)f(status)g(of)f(bu\013er)454
954(kin/c)n(hec)n(k)n(out)616 b Ff(C-x)42 b(C-q)0 2168 y 2191b Ff(C-x)36 b(C-q)-450 1561 y Fg(Getting)h(Help)-450
955Fg(Getting)47 b(Help)0 2363 y Fh(The)27 b(help)h(system)f(is)h(simple.) 21921719 y Fh(The)22 b(help)g(system)g(is)f(simple.)30 b(T)n(yp)r(e)22
95637 b(T)n(yp)r(e)27 b Ff(C-h)f Fh(\(or)h Ff(F1)p Fh(\))g(and)g(follo)n 2193b Ff(C-h)h Fh(\(or)e Ff(F1)p Fh(\))i(and)f(follo)n(w)f(the)i(di-)-450
957(w)g(the)h(direc-)0 2463 y(tions.)37 b(If)28 b(y)n(ou)f(are)f(a)h 21941799 y(rections.)30 b(If)20 b(y)n(ou)g(are)g(a)g(\014rst-time)g(user,)g
958(\014rst-time)h(user,)f(t)n(yp)r(e)h Ff(C-h)42 b(t)27 2195(t)n(yp)r(e)h Ff(C-h)36 b(t)20 b Fh(for)f(a)h Fe(tutorial)p
959b Fh(for)g(a)g Fe(tutorial)p Fh(.)0 2595 y(remo)n(v)n(e)f(help)i(windo) 2196Fh(.)-450 1905 y(remo)n(v)n(e)k(help)g(windo)n(w)813
960n(w)1061 b Ff(C-x)42 b(1)0 2695 y Fh(scroll)26 b(help)i(windo)n(w)1128 2197b Ff(C-x)36 b(1)-450 1985 y Fh(scroll)23 b(help)h(windo)n(w)869
961b Ff(C-M-v)0 2827 y Fh(aprop)r(os:)35 b(sho)n(w)27 b(commands)g(matc)n 2198b Ff(C-M-v)-450 2092 y Fh(aprop)r(os:)32 b(sho)n(w)23
962(hing)g(a)g(string)199 b Ff(C-h)42 b(a)0 2927 y Fh(sho)n(w)27 2199b(commands)i(matc)n(hing)f(a)g(string)80 b Ff(C-h)36
963b(the)h(function)g(a)f(k)n(ey)g(runs)749 b Ff(C-h)42 2200b(a)-450 2171 y Fh(describ)r(e)24 b(the)g(function)h(a)f(k)n(ey)g(runs)
964b(c)0 3027 y Fh(describ)r(e)27 b(a)g(function)1113 b 2201449 b Ff(C-h)36 b(k)-450 2251 y Fh(describ)r(e)24 b(a)g(function)856
965Ff(C-h)42 b(f)0 3126 y Fh(get)27 b(mo)r(de-sp)r(eci\014c)h(information) 2202b Ff(C-h)36 b(f)-450 2331 y Fh(get)25 b(mo)r(de-sp)r(eci\014c)f
966726 b Ff(C-h)42 b(m)0 3354 y Fg(Error)j(Reco)l(v)l(ery)0 2203(information)528 b Ff(C-h)36 b(m)-450 2524 y Fg(Error)j(Reco)m(v)m(ery)
9673550 y Fe(ab)s(ort)28 b Fh(partially)f(t)n(yp)r(ed)h(or)e(executing)i 2204-450 2683 y Fe(ab)r(ort)17 b Fh(partially)g(t)n(yp)r(ed)i(or)f
968(command)154 b Ff(C-g)0 3649 y Fe(reco)m(v)m(er)29 b 2205(executing)h(command)72 b Ff(C-g)-450 2762 y Fe(reco)n(v)n(er)23
969Fh(a)e(\014le)h(lost)f(b)n(y)h(a)f(system)g(crash)286 2206b Fh(\014les)g(lost)h(b)n(y)g(a)g(system)g(crash)142
970b Ff(M-x)42 b(recover-file)0 3749 y Fe(undo)28 b Fh(an)f(un)n(w)n(an)n 2207b Ff(M-x)36 b(recover-session)-450 2842 y Fe(undo)24
971(ted)g(c)n(hange)826 b Ff(C-x)42 b(u)i Fh(or)e Ff(C-_)0 2208b Fh(an)g(un)n(w)n(an)n(ted)h(c)n(hange)474 b Ff(C-x)36
9723848 y Fh(restore)26 b(a)h(bu\013er)h(to)f(its)h(original)e(con)n(ten)n 2209b(u,)g(C-_)g Fh(or)f Ff(C-/)-450 2922 y Fh(restore)24
973(ts)228 b Ff(M-x)42 b(revert-buffer)0 3948 y Fh(redra)n(w)26 2210b(a)g(bu\013er)g(to)g(its)f(original)g(con)n(ten)n(ts)114
974b(garbaged)f(screen)947 b Ff(C-l)0 4176 y Fg(Incremen)l(tal)47 2211b Ff(M-x)36 b(revert-buffer)-450 3001 y Fh(redra)n(w)23
975b(Searc)l(h)0 4371 y Fh(searc)n(h)26 b(forw)n(ard)1269 2212b(garbaged)i(screen)717 b Ff(C-l)-450 3196 y Fg(Incremen)m(tal)36
976b Ff(C-s)0 4471 y Fh(searc)n(h)26 b(bac)n(kw)n(ard)1202 2213b(Searc)m(h)-450 3354 y Fh(searc)n(h)24 b(forw)n(ard)990
977b Ff(C-r)0 4571 y Fh(regular)26 b(expression)g(searc)n(h)892 2214b Ff(C-s)-450 3434 y Fh(searc)n(h)24 b(bac)n(kw)n(ard)935
978b Ff(C-M-s)0 4670 y Fh(rev)n(erse)26 b(regular)f(expression)i(searc)n 2215b Ff(C-r)-450 3514 y Fh(regular)23 b(expression)h(searc)n(h)671
979(h)614 b Ff(C-M-r)0 4803 y Fh(select)27 b(previous)g(searc)n(h)f 2216b Ff(C-M-s)-450 3593 y Fh(rev)n(erse)24 b(regular)f(expression)h(searc)
980(string)782 b Ff(M-p)0 4902 y Fh(select)27 b(next)h(later)f(searc)n(h)f 2217n(h)435 b Ff(C-M-r)-450 3700 y Fh(select)24 b(previous)g(searc)n(h)g
981(string)732 b Ff(M-n)0 5002 y Fh(exit)28 b(incremen)n(tal)f(searc)n(h) 2218(string)576 b Ff(M-p)-450 3780 y Fh(select)24 b(next)h(later)f(searc)n
982960 b Ff(RET)0 5102 y Fh(undo)28 b(e\013ect)g(of)f(last)g(c)n(haracter) 2219(h)g(string)533 b Ff(M-n)-450 3859 y Fh(exit)24 b(incremen)n(tal)g
983785 b Ff(DEL)0 5201 y Fh(ab)r(ort)27 b(curren)n(t)g(searc)n(h)1061 2220(searc)n(h)729 b Ff(RET)-450 3939 y Fh(undo)24 b(e\013ect)i(of)d(last)h
984b Ff(C-g)0 5334 y Fh(Use)33 b Ff(C-s)g Fh(or)f Ff(C-r)g 2221(c)n(haracter)580 b Ff(DEL)-450 4019 y Fh(ab)r(ort)24
985Fh(again)h(to)g(rep)r(eat)g(the)h(searc)n(h)e(in)h(either)h(direction.) 2222b(curren)n(t)g(searc)n(h)815 b Ff(C-g)-450 4125 y Fh(Use)27
98654 b(If)0 5433 y(Emacs)27 b(is)g(still)h(searc)n(hing,)e 2223b Ff(C-s)h Fh(or)f Ff(C-r)h Fh(again)g(to)f(rep)r(eat)i(the)f(searc)n
987Ff(C-g)g Fh(cancels)h(only)g(the)h(part)f(not)h(done.)258 2224(h)f(in)g(either)h(direction.)-450 4205 y(If)23 b(Emacs)h(is)f(still)g
9885567 y Fd(c)239 5569 y Fc(\015)23 b Fd(1997)g(F)-5 b(ree)21 2225(searc)n(hing,)h Ff(C-g)g Fh(cancels)h(only)e(the)i(part)f(not)g(done.)
989b(Soft)n(w)n(are)h(F)-5 b(oundation,)20 b(Inc.)28 b(P)n(ermissions)22 2226-358 4311 y Fd(c)-375 4313 y Fc(\015)d Fd(2006)h(F)-5
990b(on)g(bac)n(k.)29 b(v2.2)3858 5663 y Fh(1)p eop 2227b(ree)22 b(Soft)n(w)n(are)g(F)-5 b(oundation,)20 b(Inc.)27
2228b(P)n(ermissions)21 b(on)g(bac)n(k.)28 b(v2.3)1746 -364
2229y Fg(Motion)1746 -201 y Fe(en)n(tit)n(y)e(to)g(mo)n(v)n(e)h(o)n(v)n(er)
2230472 b(bac)n(kw)n(ard)69 b(forw)n(ard)1746 -121 y Fh(c)n(haracter)885
2231b Ff(C-b)302 b(C-f)1746 -42 y Fh(w)n(ord)1017 b Ff(M-b)302
2232b(M-f)1746 38 y Fh(line)1058 b Ff(C-p)302 b(C-n)1746
2233118 y Fh(go)24 b(to)g(line)g(b)r(eginning)g(\(or)g(end\))281
2234b Ff(C-a)302 b(C-e)1746 197 y Fh(sen)n(tence)913 b Ff(M-a)302
2235b(M-e)1746 277 y Fh(paragraph)855 b Ff(M-{)302 b(M-})1746
2236357 y Fh(page)1028 b Ff(C-x)36 b([)231 b(C-x)37 b(])1746
2237437 y Fh(sexp)1033 b Ff(C-M-b)232 b(C-M-f)1746 516 y
2238Fh(function)916 b Ff(C-M-a)232 b(C-M-e)1746 596 y Fh(go)24
2239b(to)g(bu\013er)g(b)r(eginning)h(\(or)f(end\))212 b Ff(M-<)302
2240b(M->)1746 704 y Fh(scroll)23 b(to)h(next)h(screen)822
2241b Ff(C-v)1746 783 y Fh(scroll)23 b(to)h(previous)g(screen)700
2242b Ff(M-v)1746 863 y Fh(scroll)23 b(left)1155 b Ff(C-x)36
2243b(<)1746 943 y Fh(scroll)23 b(righ)n(t)1108 b Ff(C-x)36
2244b(>)1746 1022 y Fh(scroll)23 b(curren)n(t)h(line)f(to)h(cen)n(ter)h(of)
2245f(screen)312 b Ff(C-u)36 b(C-l)1746 1213 y Fg(Killing)h(and)g(Deleting)
22461746 1376 y Fe(en)n(tit)n(y)26 b(to)g(kill)723 b(bac)n(kw)n(ard)69
2247b(forw)n(ard)1746 1456 y Fh(c)n(haracter)25 b(\(delete,)g(not)f(kill\))
2248360 b Ff(DEL)302 b(C-d)1746 1536 y Fh(w)n(ord)1017 b
2249Ff(M-DEL)232 b(M-d)1746 1615 y Fh(line)23 b(\(to)i(end)f(of)5
2250b(\))699 b Ff(M-0)36 b(C-k)161 b(C-k)1746 1695 y Fh(sen)n(tence)913
2251b Ff(C-x)36 b(DEL)161 b(M-k)1746 1775 y Fh(sexp)1033
2252b Ff(M--)36 b(C-M-k)91 b(C-M-k)1746 1882 y Fh(kill)23
2253b Fe(region)1099 b Ff(C-w)1746 1962 y Fh(cop)n(y)25 b(region)e(to)i
2254(kill)d(ring)736 b Ff(M-w)1746 2042 y Fh(kill)23 b(through)h(next)h(o)r
2255(ccurrence)g(of)e Fb(char)329 b Ff(M-z)36 b Fb(char)1746
22562149 y Fh(y)n(ank)25 b(bac)n(k)f(last)g(thing)g(killed)620
2257b Ff(C-y)1746 2229 y Fh(replace)24 b(last)g(y)n(ank)g(with)g(previous)g
2258(kill)358 b Ff(M-y)1746 2431 y Fg(Marking)1746 2594 y
2259Fh(set)24 b(mark)g(here)1018 b Ff(C-@)36 b Fh(or)f Ff(C-SPC)1746
22602673 y Fh(exc)n(hange)26 b(p)r(oin)n(t)e(and)g(mark)658
2261b Ff(C-x)36 b(C-x)1746 2781 y Fh(set)24 b(mark)g Fb(ar)l(g)30
2262b Fe(w)n(ords)22 b Fh(a)n(w)n(a)n(y)639 b Ff(M-@)1746
22632861 y Fh(mark)23 b Fe(paragraph)894 b Ff(M-h)1746 2940
2264y Fh(mark)23 b Fe(page)1095 b Ff(C-x)36 b(C-p)1746 3020
2265y Fh(mark)23 b Fe(sexp)1101 b Ff(C-M-@)1746 3100 y Fh(mark)23
2266b Fe(function)966 b Ff(C-M-h)1746 3179 y Fh(mark)23 b(en)n(tire)h
2267Fe(bu\013er)852 b Ff(C-x)36 b(h)1746 3370 y Fg(Query)i(Replace)1746
22683533 y Fh(in)n(teractiv)n(ely)25 b(replace)f(a)g(text)h(string)414
2269b Ff(M-\045)1746 3613 y Fh(using)24 b(regular)f(expressions)305
2270b Ff(M-x)36 b(query-replace-regexp)1746 3721 y Fh(V)-6
2271b(alid)23 b(resp)r(onses)h(in)f(query-replace)i(mo)r(de)f(are)1746
22723828 y Fe(replace)f Fh(this)h(one,)g(go)g(on)g(to)g(next)466
2273b Ff(SPC)1746 3908 y Fh(replace)24 b(this)g(one,)g(don't)g(mo)n(v)n(e)
2274572 b Ff(,)1746 3988 y Fe(skip)23 b Fh(to)i(next)f(without)h(replacing)
2275488 b Ff(DEL)1746 4067 y Fh(replace)24 b(all)f(remaining)h(matc)n(hes)
2276525 b Ff(!)1746 4147 y Fe(bac)n(k)27 b(up)d Fh(to)g(the)g(previous)g
2277(matc)n(h)460 b Ff(^)1746 4227 y Fe(exit)23 b Fh(query-replace)871
2278b Ff(RET)1746 4306 y Fh(en)n(ter)24 b(recursiv)n(e)g(edit)g(\()p
2279Ff(C-M-c)i Fh(to)e(exit\))370 b Ff(C-r)3942 -364 y Fg(Multiple)36
2280b(Windo)m(ws)3942 -244 y Fh(When)27 b(t)n(w)n(o)f(commands)g(are)g(sho)
2281n(wn,)g(the)h(second)g(is)d(a)i(similar)e(com-)3942 -164
2282y(mand)g(for)f(a)h(frame)f(instead)h(of)g(a)f(windo)n(w.)3942
2283-67 y(delete)i(all)e(other)h(windo)n(ws)467 b Ff(C-x)36
2284b(1)212 b(C-x)37 b(5)e(1)3942 12 y Fh(split)23 b(windo)n(w,)h(ab)r(o)n
2285(v)n(e)h(and)f(b)r(elo)n(w)267 b Ff(C-x)36 b(2)212 b(C-x)37
2286b(5)e(2)3942 92 y Fh(delete)25 b(this)e(windo)n(w)640
2287b Ff(C-x)36 b(0)212 b(C-x)37 b(5)e(0)3942 189 y Fh(split)23
2288b(windo)n(w,)h(side)f(b)n(y)h(side)649 b Ff(C-x)36 b(3)3942
2289286 y Fh(scroll)23 b(other)h(windo)n(w)838 b Ff(C-M-v)3942
2290383 y Fh(switc)n(h)24 b(cursor)f(to)h(another)h(windo)n(w)206
2291b Ff(C-x)36 b(o)212 b(C-x)37 b(5)e(o)3942 463 y Fh(select)25
2292b(bu\013er)e(in)h(other)g(windo)n(w)320 b Ff(C-x)36 b(4)g(b)141
2293b(C-x)37 b(5)e(b)3942 542 y Fh(displa)n(y)24 b(bu\013er)g(in)f(other)h
2294(windo)n(w)273 b Ff(C-x)36 b(4)g(C-o)71 b(C-x)37 b(5)e(C-o)3942
2295622 y Fh(\014nd)24 b(\014le)g(in)f(other)h(windo)n(w)460
2296b Ff(C-x)36 b(4)g(f)141 b(C-x)37 b(5)e(f)3942 702 y Fh(\014nd)24
2297b(\014le)g(read-only)g(in)f(other)h(windo)n(w)148 b Ff(C-x)36
2298b(4)g(r)141 b(C-x)37 b(5)e(r)3942 782 y Fh(run)23 b(Dired)h(in)f(other)
2299h(windo)n(w)390 b Ff(C-x)36 b(4)g(d)141 b(C-x)37 b(5)e(d)3942
2300861 y Fh(\014nd)24 b(tag)h(in)e(other)h(windo)n(w)452
2301b Ff(C-x)36 b(4)g(.)141 b(C-x)37 b(5)e(.)3942 958 y Fh(gro)n(w)24
2302b(windo)n(w)f(taller)852 b Ff(C-x)36 b(^)3942 1038 y
2303Fh(shrink)23 b(windo)n(w)h(narro)n(w)n(er)698 b Ff(C-x)36
2304b({)3942 1118 y Fh(gro)n(w)24 b(windo)n(w)f(wider)844
2305b Ff(C-x)36 b(})3942 1264 y Fg(F)-10 b(ormatting)3942
23061384 y Fh(inden)n(t)25 b(curren)n(t)f Fe(line)f Fh(\(mo)r(de-dep)r
2307(enden)n(t\))267 b Ff(TAB)3942 1464 y Fh(inden)n(t)25
2308b Fe(region)d Fh(\(mo)r(de-dep)r(enden)n(t\))420 b Ff(C-M-\\)3942
23091544 y Fh(inden)n(t)25 b Fe(sexp)f Fh(\(mo)r(de-dep)r(enden)n(t\))482
2310b Ff(C-M-q)3942 1623 y Fh(inden)n(t)25 b(region)e(rigidly)g
2311Fb(ar)l(g)30 b Fh(columns)413 b Ff(C-x)36 b(TAB)3942
23121720 y Fh(insert)23 b(newline)h(after)g(p)r(oin)n(t)662
2313b Ff(C-o)3942 1800 y Fh(mo)n(v)n(e)24 b(rest)g(of)f(line)h(v)n
2314(ertically)f(do)n(wn)437 b Ff(C-M-o)3942 1880 y Fh(delete)25
2315b(blank)f(lines)f(around)h(p)r(oin)n(t)482 b Ff(C-x)36
2316b(C-o)3942 1959 y Fh(join)23 b(line)g(with)h(previous)g(\(with)g(arg,)f
2317(next\))236 b Ff(M-^)3942 2039 y Fh(delete)25 b(all)e(white)h(space)h
2318(around)f(p)r(oin)n(t)358 b Ff(M-\\)3942 2119 y Fh(put)24
2319b(exactly)h(one)g(space)f(at)h(p)r(oin)n(t)503 b Ff(M-SPC)3942
23202216 y Fh(\014ll)23 b(paragraph)1025 b Ff(M-q)3942 2295
2321y Fh(set)24 b(\014ll)f(column)1005 b Ff(C-x)36 b(f)3942
23222375 y Fh(set)24 b(pre\014x)g(eac)n(h)h(line)e(starts)h(with)506
2323b Ff(C-x)36 b(.)3942 2472 y Fh(set)24 b(face)1211 b Ff(M-o)3942
23242609 y Fg(Case)37 b(Change)3942 2730 y Fh(upp)r(ercase)25
2325b(w)n(ord)961 b Ff(M-u)3942 2809 y Fh(lo)n(w)n(ercase)24
2326b(w)n(ord)979 b Ff(M-l)3942 2889 y Fh(capitalize)25 b(w)n(ord)975
2327b Ff(M-c)3942 2986 y Fh(upp)r(ercase)25 b(region)924
2328b Ff(C-x)36 b(C-u)3942 3066 y Fh(lo)n(w)n(ercase)24 b(region)942
2329b Ff(C-x)36 b(C-l)3942 3212 y Fg(The)h(Minibu\013er)3942
23303332 y Fh(The)24 b(follo)n(wing)f(k)n(eys)h(are)g(de\014ned)h(in)e(the)
2331i(minibu\013er.)3942 3429 y(complete)g(as)f(m)n(uc)n(h)g(as)f(p)r
2332(ossible)539 b Ff(TAB)3942 3509 y Fh(complete)25 b(up)f(to)g(one)h(w)n
2333(ord)673 b Ff(SPC)3942 3588 y Fh(complete)25 b(and)f(execute)778
2334b Ff(RET)3942 3668 y Fh(sho)n(w)24 b(p)r(ossible)f(completions)636
2335b Ff(?)3942 3748 y Fh(fetc)n(h)25 b(previous)e(minibu\013er)g(input)484
2336b Ff(M-p)3942 3828 y Fh(fetc)n(h)25 b(later)e(minibu\013er)g(input)i
2337(or)e(default)276 b Ff(M-n)3942 3907 y Fh(regexp)24 b(searc)n(h)h(bac)n
2338(kw)n(ard)f(through)h(history)204 b Ff(M-r)3942 3987
2339y Fh(regexp)24 b(searc)n(h)h(forw)n(ard)d(through)j(history)261
2340b Ff(M-s)3942 4067 y Fh(ab)r(ort)24 b(command)953 b Ff(C-g)3942
23414164 y Fh(T)n(yp)r(e)28 b Ff(C-x)37 b(ESC)f(ESC)28 b
2342Fh(to)h(edit)f(and)h(rep)r(eat)f(the)h(last)f(command)h(that)3942
23434243 y(used)c(the)g(minibu\013er.)33 b(T)n(yp)r(e)26
2344b Ff(F10)f Fh(to)g(activ)l(ate)h(the)g(men)n(u)f(bar)f(using)3942
23454323 y(the)h(minibu\013er.)p eop end
991%%Page: 2 2 2346%%Page: 2 2
9922 1 bop 0 -337 a Fg(Motion)0 -130 y Fe(en)m(tit)m(y)32 2347TeXDict begin @landscape 2 1 bop -358 -364 a Fi(GNU)45
993b(to)g(mo)m(v)m(e)f(o)m(v)m(er)704 b(bac)m(kw)m(ard)86 2348b(Emacs)h(Reference)g(Card)-450 -141 y Fg(Bu\013ers)-450
994b(forw)m(ard)0 -30 y Fh(c)n(haracter)1181 b Ff(C-b)346 234924 y Fh(select)24 b(another)h(bu\013er)811 b Ff(C-x)36
995b(C-f)0 69 y Fh(w)n(ord)1339 b Ff(M-b)346 b(M-f)0 169 2350b(b)-450 104 y Fh(list)23 b(all)g(bu\013ers)1018 b Ff(C-x)36
996y Fh(line)1389 b Ff(C-p)346 b(C-n)0 268 y Fh(go)27 b(to)g(line)h(b)r 2351b(C-b)-450 184 y Fh(kill)23 b(a)g(bu\013er)1084 b Ff(C-x)36
997(eginning)g(\(or)e(end\))474 b Ff(C-a)346 b(C-e)0 368 2352b(k)-450 378 y Fg(T)-10 b(ransp)s(osing)-450 543 y Fh(transp)r(ose)24
998y Fh(sen)n(tence)1215 b Ff(M-a)346 b(M-e)0 468 y Fh(paragraph)1146 2353b Fe(c)n(haracters)760 b Ff(C-t)-450 623 y Fh(transp)r(ose)24
999b Ff(M-{)346 b(M-})0 567 y Fh(page)1351 b Ff(C-x)42 b([)260 2354b Fe(w)n(ords)915 b Ff(M-t)-450 703 y Fh(transp)r(ose)24
1000b(C-x)42 b(])0 667 y Fh(sexp)1358 b Ff(C-M-b)258 b(C-M-f)0 2355b Fe(lines)964 b Ff(C-x)36 b(C-t)-450 782 y Fh(transp)r(ose)24
1001767 y Fh(function)1221 b Ff(C-M-a)258 b(C-M-e)0 866 y 2356b Fe(sexps)935 b Ff(C-M-t)-450 985 y Fg(Sp)s(elling)37
1002Fh(go)27 b(to)g(bu\013er)h(b)r(eginning)f(\(or)g(end\))393 2357b(Chec)m(k)-450 1151 y Fh(c)n(hec)n(k)25 b(sp)r(elling)e(of)h(curren)n
1003b Ff(M-<)346 b(M->)0 1002 y Fh(scroll)26 b(to)i(next)g(screen)1071 2358(t)g(w)n(ord)516 b Ff(M-$)-450 1231 y Fh(c)n(hec)n(k)25
1004b Ff(C-v)0 1101 y Fh(scroll)26 b(to)i(previous)e(screen)928 2359b(sp)r(elling)e(of)h(all)f(w)n(ords)g(in)g(region)201
1005b Ff(M-v)0 1201 y Fh(scroll)26 b(left)1466 b Ff(C-x)42 2360b Ff(M-x)36 b(ispell-region)-450 1310 y Fh(c)n(hec)n(k)25
1006b(<)0 1300 y Fh(scroll)26 b(righ)n(t)1409 b Ff(C-x)42 2361b(sp)r(elling)e(of)h(en)n(tire)g(bu\013er)395 b Ff(M-x)36
1007b(>)0 1400 y Fh(scroll)26 b(curren)n(t)h(line)h(to)f(cen)n(ter)g(of)h 2362b(ispell-buffer)-450 1514 y Fg(T)-10 b(ags)-450 1680
1008(screen)471 b Ff(C-u)42 b(C-l)0 1643 y Fg(Killing)k(and)h(Deleting)0 2363y Fh(\014nd)24 b(a)g(tag)g(\(a)h(de\014nition\))716 b
10091849 y Fe(en)m(tit)m(y)32 b(to)g(kill)996 b(bac)m(kw)m(ard)86 2364Ff(M-.)-450 1760 y Fh(\014nd)24 b(next)h(o)r(ccurrence)g(of)e(tag)612
1010b(forw)m(ard)0 1949 y Fh(c)n(haracter)26 b(\(delete,)i(not)f(kill\))568 2365b Ff(C-u)36 b(M-.)-450 1839 y Fh(sp)r(ecify)24 b(a)f(new)i(tags)f
1011b Ff(DEL)346 b(C-d)0 2049 y Fh(w)n(ord)1339 b Ff(M-DEL)258 2366(\014le)537 b Ff(M-x)36 b(visit-tags-table)-450 1948
1012b(M-d)0 2148 y Fh(line)28 b(\(to)g(end)f(of)6 b(\))966 2367y Fh(regexp)24 b(searc)n(h)h(on)f(all)f(\014les)g(in)g(tags)i(table)138
1013b Ff(M-0)42 b(C-k)172 b(C-k)0 2248 y Fh(sen)n(tence)1215 2368b Ff(M-x)36 b(tags-search)-450 2027 y Fh(run)23 b(query-replace)i(on)f
1014b Ff(C-x)42 b(DEL)172 b(M-k)0 2348 y Fh(sexp)1358 b Ff(M--)42 2369(all)f(the)h(\014les)144 b Ff(M-x)36 b(tags-query-replace)-450
1015b(C-M-k)84 b(C-M-k)0 2483 y Fh(kill)28 b Fe(region)1400 23702107 y Fh(con)n(tin)n(ue)25 b(last)f(tags)g(searc)n(h)g(or)g
1016b Ff(C-w)0 2583 y Fh(cop)n(y)27 b(region)f(to)h(kill)h(ring)971 2371(query-replace)163 b Ff(M-,)-450 2310 y Fg(Shells)-450
1017b Ff(M-w)0 2682 y Fh(kill)28 b(through)f(next)g(o)r(ccurrence)g(of)g 23722476 y Fh(execute)26 b(a)e(shell)f(command)670 b Ff(M-!)-450
1018Fb(char)494 b Ff(M-z)42 b Fb(char)0 2818 y Fh(y)n(ank)27 23732555 y Fh(run)23 b(a)h(shell)f(command)i(on)f(the)g(region)362
1019b(bac)n(k)f(last)i(thing)f(killed)836 b Ff(C-y)0 2917 2374b Ff(M-|)-450 2635 y Fh(\014lter)24 b(region)f(through)i(a)f(shell)f
1020y Fh(replace)27 b(last)g(y)n(ank)g(with)h(previous)e(kill)528 2375(command)276 b Ff(C-u)36 b(M-|)-450 2715 y Fh(start)24
1021b Ff(M-y)0 3170 y Fg(Marking)0 3377 y Fh(set)28 b(mark)e(here)1303 2376b(a)g(shell)f(in)g(windo)n(w)h Ff(*shell*)467 b(M-x)36
1022b Ff(C-@)42 b Fh(or)h Ff(C-SPC)0 3476 y Fh(exc)n(hange)26 2377b(shell)-450 2909 y Fg(Rectangles)-450 3074 y Fh(cop)n(y)25
1023b(p)r(oin)n(t)i(and)f(mark)879 b Ff(C-x)42 b(C-x)0 3612 2378b(rectangle)g(to)f(register)659 b Ff(C-x)36 b(r)g(r)-450
1024y Fh(set)28 b(mark)e Fb(ar)l(g)36 b Fe(w)m(ords)27 b 23793154 y Fh(kill)23 b(rectangle)1043 b Ff(C-x)36 b(r)g(k)-450
1025Fh(a)n(w)n(a)n(y)856 b Ff(M-@)0 3711 y Fh(mark)27 b Fe(paragraph)1162 23803234 y Fh(y)n(ank)25 b(rectangle)992 b Ff(C-x)36 b(r)g(y)-450
1026b Ff(M-h)0 3811 y Fh(mark)27 b Fe(page)1394 b Ff(C-x)42 23813313 y Fh(op)r(en)25 b(rectangle,)f(shifting)f(text)i(righ)n(t)401
1027b(C-p)0 3911 y Fh(mark)27 b Fe(sexp)1400 b Ff(C-M-@)0 2382b Ff(C-x)36 b(r)g(o)-450 3393 y Fh(blank)24 b(out)h(rectangle)843
10284010 y Fh(mark)27 b Fe(function)1243 b Ff(C-M-h)0 4110 2383b Ff(C-x)36 b(r)g(c)-450 3473 y Fh(pre\014x)24 b(eac)n(h)h(line)e(with)
1029y Fh(mark)27 b(en)n(tire)g Fe(bu\013er)1107 b Ff(C-x)42 2384h(a)g(string)553 b Ff(C-x)36 b(r)g(t)-450 3676 y Fg(Abbrevs)-450
1030b(h)0 4353 y Fg(Query)k(Replace)0 4559 y Fh(in)n(teractiv)n(ely)26 23853841 y Fh(add)24 b(global)g(abbrev)886 b Ff(C-x)36 b(a)g(g)-450
1031b(replace)h(a)g(text)h(string)592 b Ff(M-\045)0 4659 23863921 y Fh(add)24 b(mo)r(de-lo)r(cal)g(abbrev)737 b Ff(C-x)36
1032y Fh(using)27 b(regular)f(expressions)448 b Ff(M-x)42 2387b(a)g(l)-450 4001 y Fh(add)24 b(global)g(expansion)h(for)e(this)g
1033b(query-replace-reg)o(ex)o(p)0 4794 y Fh(V)-7 b(alid)28 2388(abbrev)313 b Ff(C-x)36 b(a)g(i)f(g)-450 4081 y Fh(add)24
1034b(resp)r(onses)e(in)i(query-replace)d(mo)r(de)j(are)0 2389b(mo)r(de-lo)r(cal)g(expansion)h(for)e(this)g(abbrev)164
10354930 y Fe(replace)g Fh(this)g(one,)f(go)g(on)g(to)h(next)653 2390b Ff(C-x)36 b(a)g(i)f(l)-450 4160 y Fh(explicitly)24
1036b Ff(SPC)0 5029 y Fh(replace)27 b(this)g(one,)h(don't)g(mo)n(v)n(e)776 2391b(expand)h(abbrev)680 b Ff(C-x)36 b(a)g(e)-450 4269 y
1037b Ff(,)0 5129 y Fe(skip)27 b Fh(to)h(next)g(without)g(replacing)678 2392Fh(expand)25 b(previous)f(w)n(ord)f(dynamically)368 b
1038b Ff(DEL)0 5229 y Fh(replace)27 b(all)g(remaining)g(matc)n(hes)721 2393Ff(M-/)1746 -364 y Fg(Regular)37 b(Expressions)1746 -198
1039b Ff(!)0 5328 y Fe(bac)m(k)33 b(up)28 b Fh(to)g(the)g(previous)e(matc)n 2394y Fh(an)n(y)24 b(single)g(c)n(haracter)h(except)g(a)f(newline)291
1040(h)646 b Ff(^)0 5428 y Fe(exit)27 b Fh(query-replace)1128 2395b Ff(.)71 b Fh(\(dot\))1746 -119 y(zero)24 b(or)f(more)h(rep)r(eats)807
1041b Ff(RET)0 5528 y Fh(en)n(ter)27 b(recursiv)n(e)f(edit)i(\()p 2396b Ff(*)1746 -39 y Fh(one)24 b(or)g(more)f(rep)r(eats)827
1042Ff(C-M-c)e Fh(to)h(exit\))530 b Ff(C-r)3858 5663 y Fh(2)p 2397b Ff(+)1746 41 y Fh(zero)24 b(or)f(one)i(rep)r(eat)882
1043eop 2398b Ff(?)1746 120 y Fh(quote)25 b(regular)e(expression)h(sp)r(ecial)g(c)n
1044%%Page: 3 3 2399(haracter)h Fb(c)96 b Ff(\\)p Fb(c)1746 200 y Fh(alternativ)n(e)25
10453 2 bop 0 -337 a Fg(Multiple)47 b(Windo)l(ws)0 -173 y 2400b(\(\\or"\))900 b Ff(\\|)1746 280 y Fh(grouping)1170
1046Fh(When)28 b(t)n(w)n(o)f(commands)g(are)g(sho)n(wn,)f(the)i(second)f 2401b Ff(\\\()36 b Fa(:)11 b(:)h(:)34 b Ff(\\\))1746 359
1047(is)h(for)f(\\other)f(frame.")0 -48 y(delete)i(all)f(other)g(windo)n 2402y Fh(same)24 b(text)h(as)e Fb(n)5 b Fh(th)25 b(group)718
1048(ws)920 b Ff(C-x)42 b(1)0 76 y Fh(split)28 b(windo)n(w,)f(ab)r(o)n(v)n 2403b Ff(\\)p Fb(n)1746 439 y Fh(at)24 b(w)n(ord)g(break)1009
1049(e)f(and)i(b)r(elo)n(w)422 b Ff(C-x)42 b(2)257 b(C-x)42 2404b Ff(\\b)1746 519 y Fh(not)24 b(at)h(w)n(ord)e(break)884
1050b(5)h(2)0 176 y Fh(delete)28 b(this)g(windo)n(w)860 b 2405b Ff(\\B)1746 627 y Fe(en)n(tit)n(y)676 b(matc)n(h)27
1051Ff(C-x)42 b(0)257 b(C-x)42 b(5)h(0)0 301 y Fh(split)28 2406b(start)84 b(matc)n(h)26 b(end)1746 707 y Fh(line)774
1052b(windo)n(w,)f(side)h(b)n(y)f(side)869 b Ff(C-x)42 b(3)0 2407b Ff(^)465 b($)1746 787 y Fh(w)n(ord)733 b Ff(\\<)430
1053425 y Fh(scroll)26 b(other)h(windo)n(w)1091 b Ff(C-M-v)0 2408b(\\>)1746 866 y Fh(bu\013er)706 b Ff(\\`)430 b(\\')1746
1054550 y Fh(switc)n(h)27 b(cursor)f(to)i(another)f(windo)n(w)349 2409946 y Fe(class)27 b(of)f(c)n(haracters)238 b(matc)n(h)27
1055b Ff(C-x)42 b(o)257 b(C-x)42 b(5)h(o)0 650 y Fh(select)27 2410b(these)71 b(matc)n(h)26 b(others)1746 1026 y Fh(explicit)e(set)549
1056b(bu\013er)h(in)g(other)f(windo)n(w)484 b Ff(C-x)42 b(4)h(b)170 2411b Ff([)36 b Fa(:)11 b(:)h(:)35 b Ff(])276 b([^)36 b Fa(:)11
1057b(C-x)42 b(5)h(b)0 749 y Fh(displa)n(y)27 b(bu\013er)h(in)f(other)g 2412b(:)g(:)35 b Ff(])1746 1105 y Fh(w)n(ord-syn)n(tax)24
1058(windo)n(w)429 b Ff(C-x)42 b(4)h(C-o)82 b(C-x)42 b(5)h(C-o)0 2413b(c)n(haracter)201 b Ff(\\w)430 b(\\W)1746 1185 y Fh(c)n(haracter)25
1059849 y Fh(\014nd)28 b(\014le)g(in)g(other)f(windo)n(w)648 2414b(with)f(syn)n(tax)g Fb(c)157 b Ff(\\s)p Fb(c)397 b Ff(\\S)p
1060b Ff(C-x)42 b(4)h(f)170 b(C-x)42 b(5)h(f)0 948 y Fh(\014nd)28 2415Fb(c)1746 1388 y Fg(In)m(ternational)36 b(Character)g(Sets)1746
1061b(\014le)g(read-only)e(in)i(other)f(windo)n(w)281 b Ff(C-x)42 24161554 y Fh(sp)r(ecify)24 b(principal)f(language)643 b
1062b(4)h(r)170 b(C-x)42 b(5)h(r)0 1048 y Fh(run)27 b(Dired)h(in)g(other)f 2417Ff(C-x)36 b(RET)g(l)1746 1633 y Fh(sho)n(w)24 b(all)f(input)h(metho)r
1063(windo)n(w)566 b Ff(C-x)42 b(4)h(d)170 b(C-x)42 b(5)h(d)0 2418(ds)423 b Ff(M-x)36 b(list-input-methods)1746 1713 y
10641148 y Fh(\014nd)28 b(tag)f(in)h(other)f(windo)n(w)639 2419Fh(enable)25 b(or)e(disable)g(input)i(metho)r(d)478 b
1065b Ff(C-x)42 b(4)h(.)170 b(C-x)42 b(5)h(.)0 1272 y Fh(gro)n(w)26 2420Ff(C-\\)1746 1793 y Fh(set)24 b(co)r(ding)h(system)f(for)f(next)h
1066b(windo)n(w)h(taller)1107 b Ff(C-x)42 b(^)0 1372 y Fh(shrink)27 2421(command)307 b Ff(C-x)36 b(RET)g(c)1746 1872 y Fh(sho)n(w)24
1067b(windo)n(w)g(narro)n(w)n(er)924 b Ff(C-x)42 b({)0 1472 2422b(all)f(co)r(ding)h(systems)372 b Ff(M-x)37 b(list-coding-systems)1746
1068y Fh(gro)n(w)26 b(windo)n(w)h(wider)1098 b Ff(C-x)42 24231952 y Fh(c)n(ho)r(ose)25 b(preferred)e(co)r(ding)h(system)114
1069b(})0 1661 y Fg(F)-11 b(ormatting)0 1825 y Fh(inden)n(t)28 2424b Ff(M-x)36 b(prefer-coding-system)1746 2157 y Fg(Info)1746
1070b(curren)n(t)f Fe(line)f Fh(\(mo)r(de-dep)r(enden)n(t\))417 24252323 y Fh(en)n(ter)24 b(the)h(Info)f(do)r(cumen)n(tation)i(reader)321
1071b Ff(TAB)0 1924 y Fh(inden)n(t)28 b Fe(region)f Fh(\(mo)r(de-dep)r 2426b Ff(C-h)36 b(i)1746 2402 y Fh(\014nd)24 b(sp)r(eci\014ed)h(function)f
1072(enden)n(t\))597 b Ff(C-M-\\)0 2024 y Fh(inden)n(t)28 2427(or)f(v)l(ariable)h(in)g(Info)183 b Ff(C-h)36 b(S)1746
1073b Fe(sexp)g Fh(\(mo)r(de-dep)r(enden)n(t\))670 b Ff(C-M-q)0 24282511 y Fh(Mo)n(ving)24 b(within)f(a)h(no)r(de:)1817 2619
10742123 y Fh(inden)n(t)28 b(region)e(rigidly)h Fb(ar)l(g)36 2429y(scroll)e(forw)n(ard)949 b Ff(SPC)1817 2699 y Fh(scroll)22
1075b Fh(columns)591 b Ff(C-x)42 b(TAB)0 2248 y Fh(insert)27 2430b(rev)n(erse)973 b Ff(DEL)1817 2778 y Fh(b)r(eginning)24
1076b(newline)h(after)f(p)r(oin)n(t)884 b Ff(C-o)0 2348 y 2431b(of)f(no)r(de)820 b Ff(.)71 b Fh(\(dot\))1746 2887 y(Mo)n(ving)24
1077Fh(mo)n(v)n(e)26 b(rest)i(of)f(line)h(v)n(ertically)e(do)n(wn)618 2432b(b)r(et)n(w)n(een)h(no)r(des:)1817 2995 y Fe(next)e
1078b Ff(C-M-o)0 2447 y Fh(delete)28 b(blank)f(lines)h(around)e(p)r(oin)n 2433Fh(no)r(de)1043 b Ff(n)1817 3075 y Fe(previous)23 b Fh(no)r(de)900
1079(t)672 b Ff(C-x)42 b(C-o)0 2547 y Fh(join)28 b(line)g(with)g(previous)e 2434b Ff(p)1817 3154 y Fh(mo)n(v)n(e)24 b Fe(up)1097 b Ff(u)1817
1080(\(with)j(arg,)d(next\))381 b Ff(M-^)0 2647 y Fh(delete)28 24353234 y Fh(select)24 b(men)n(u)g(item)g(b)n(y)g(name)564
1081b(all)f(white)h(space)f(around)g(p)r(oin)n(t)526 b Ff(M-\\)0 2436b Ff(m)1817 3314 y Fh(select)24 b Fb(n)5 b Fh(th)25 b(men)n(u)f(item)g
10822746 y Fh(put)28 b(exactly)f(one)g(space)g(at)h(p)r(oin)n(t)697 2437(b)n(y)g(n)n(um)n(b)r(er)g(\(1{9\))176 b Fb(n)1817 3393
1083b Ff(M-SPC)0 2871 y Fh(\014ll)28 b(paragraph)1308 b Ff(M-q)0 2438y Fh(follo)n(w)22 b(cross)i(reference)g(\(return)g(with)g
10842970 y Fh(set)28 b(\014ll)g(column)1287 b Ff(C-x)42 b(f)0 2439Ff(l)p Fh(\))230 b Ff(f)1817 3473 y Fh(return)23 b(to)i(last)e(no)r(de)
10853070 y Fh(set)28 b(pre\014x)f(eac)n(h)g(line)g(starts)g(with)701 2440i(y)n(ou)f(sa)n(w)518 b Ff(l)1817 3553 y Fh(return)23
1086b Ff(C-x)42 b(.)0 3195 y Fh(set)28 b(face)1529 b Ff(M-g)0 2441b(to)i(directory)f(no)r(de)621 b Ff(d)1817 3633 y Fh(go)24
10873394 y Fg(Case)46 b(Change)0 3558 y Fh(upp)r(ercase)27 2442b(to)g(top)g(no)r(de)h(of)e(Info)h(\014le)578 b Ff(t)1817
1088b(w)n(ord)1235 b Ff(M-u)0 3658 y Fh(lo)n(w)n(ercase)25 24433712 y Fh(go)24 b(to)g(an)n(y)g(no)r(de)h(b)n(y)f(name)623
1089b(w)n(ord)1256 b Ff(M-l)0 3757 y Fh(capitalize)27 b(w)n(ord)1252 2444b Ff(g)1746 3821 y Fh(Other:)1817 3929 y(run)23 b(Info)h
1090b Ff(M-c)0 3882 y Fh(upp)r(ercase)27 b(region)1191 b 2445Fe(tutorial)825 b Ff(h)1817 4009 y Fh(lo)r(ok)23 b(up)h(a)g(sub)t(ject)
1091Ff(C-x)42 b(C-u)0 3981 y Fh(lo)n(w)n(ercase)25 b(region)1212 2446h(in)e(the)i(indices)398 b Ff(i)1817 4088 y Fh(searc)n(h)24
1092b Ff(C-x)42 b(C-l)0 4170 y Fg(The)k(Minibu\013er)0 4334 2447b(no)r(des)g(for)f(regexp)648 b Ff(s)1817 4168 y Fe(quit)22
1093y Fh(The)28 b(follo)n(wing)e(k)n(eys)h(are)f(de\014ned)i(in)g(the)g 2448b Fh(Info)1083 b Ff(q)3942 -364 y Fg(Registers)3942 -198
1094(minibu\013er.)0 4459 y(complete)g(as)e(m)n(uc)n(h)i(as)f(p)r(ossible) 2449y Fh(sa)n(v)n(e)24 b(region)g(in)f(register)767 b Ff(C-x)36
1095739 b Ff(TAB)0 4559 y Fh(complete)28 b(up)f(to)h(one)f(w)n(ord)897 2450b(r)g(s)3942 -119 y Fh(insert)23 b(register)h(con)n(ten)n(ts)i(in)n(to)
1096b Ff(SPC)0 4658 y Fh(complete)28 b(and)f(execute)1018 2451e(bu\013er)392 b Ff(C-x)36 b(r)g(i)3942 -10 y Fh(sa)n(v)n(e)24
1097b Ff(RET)0 4758 y Fh(sho)n(w)27 b(p)r(ossible)g(completions)852 2452b(v)l(alue)h(of)e(p)r(oin)n(t)h(in)g(register)531 b Ff(C-x)36
1098b Ff(?)0 4858 y Fh(fetc)n(h)28 b(previous)e(minibu\013er)j(input)674 2453b(r)g(SPC)3942 69 y Fh(jump)23 b(to)i(p)r(oin)n(t)f(sa)n(v)n(ed)g(in)g
1099b Ff(M-p)0 4957 y Fh(fetc)n(h)28 b(later)f(minibu\013er)h(input)g(or)f 2454(register)486 b Ff(C-x)36 b(r)g(j)3942 274 y Fg(Keyb)s(oard)i(Macros)
1100(default)430 b Ff(M-n)0 5057 y Fh(regexp)26 b(searc)n(h)h(bac)n(kw)n 24553942 440 y Fe(start)22 b Fh(de\014ning)j(a)e(k)n(eyb)r(oard)i(macro)429
1101(ard)e(through)i(history)344 b Ff(M-r)0 5156 y Fh(regexp)26 2456b Ff(C-x)36 b(\()3942 519 y Fe(end)24 b Fh(k)n(eyb)r(oard)h(macro)f
1102b(searc)n(h)h(forw)n(ard)e(through)i(history)411 b Ff(M-s)0 2457(de\014nition)482 b Ff(C-x)36 b(\))3942 599 y Fe(execute)24
11035256 y Fh(ab)r(ort)27 b(command)1225 b Ff(C-g)0 5381 2458b Fh(last-de\014ned)h(k)n(eyb)r(oard)g(macro)278 b Ff(C-x)36
1104y Fh(T)n(yp)r(e)25 b Ff(C-x)42 b(ESC)g(ESC)24 b Fh(to)h(edit)g(and)g 2459b(e)3942 679 y Fh(app)r(end)25 b(to)f(last)g(k)n(eyb)r(oard)h(macro)477
1105(rep)r(eat)g(the)g(last)f(command)h(that)g(used)0 5480 2460b Ff(C-u)36 b(C-x)g(\()3942 758 y Fh(name)24 b(last)g(k)n(eyb)r(oard)h
1106y(the)h(minibu\013er.)36 b(T)n(yp)r(e)26 b Ff(F10)e Fh(to)h(activ)-5 2461(macro)292 b Ff(M-x)37 b(name-last-kbd-macro)3942 838
1107b(ate)25 b(the)g(men)n(u)h(bar)e(using)h(the)h(mini-)0 2462y Fh(insert)23 b(Lisp)h(de\014nition)g(in)g(bu\013er)289
11085580 y(bu\013er.)3858 5663 y(3)p eop 2463b Ff(M-x)36 b(insert-kbd-macro)3942 1041 y Fg(Commands)i(Dealing)f
1109%%Page: 4 4 2464(with)g(Emacs)i(Lisp)3942 1207 y Fh(ev)l(al)24 b Fe(sexp)g
11104 3 bop 158 -320 a Fi(GNU)55 b(Emacs)g(Reference)f(Card)0 2465Fh(b)r(efore)g(p)r(oin)n(t)744 b Ff(C-x)36 b(C-e)3942
1111-42 y Fg(Bu\013ers)0 165 y Fh(select)27 b(another)g(bu\013er)1059 24661287 y Fh(ev)l(al)24 b(curren)n(t)g Fe(defun)855 b Ff(C-M-x)3942
1112b Ff(C-x)42 b(b)0 264 y Fh(list)28 b(all)f(bu\013ers)1303 24671366 y Fh(ev)l(al)24 b Fe(region)935 b Ff(M-x)36 b(eval-region)3942
1113b Ff(C-x)42 b(C-b)0 364 y Fh(kill)28 b(a)f(bu\013er)1380 24681446 y Fh(read)24 b(and)g(ev)l(al)g(minibu\013er)687
1114b Ff(C-x)42 b(k)0 607 y Fg(T)-11 b(ransp)t(osing)0 814 2469b Ff(M-:)3942 1526 y Fh(load)24 b(from)f(standard)h(system)g(directory)
1115y Fh(transp)r(ose)26 b Fe(c)m(haracters)1005 b Ff(C-t)0 2470175 b Ff(M-x)36 b(load-library)3942 1731 y Fg(Simple)h(Customization)
1116913 y Fh(transp)r(ose)26 b Fe(w)m(ords)1184 b Ff(M-t)0 24713942 1896 y Fh(customize)25 b(v)l(ariables)e(and)i(faces)396
11171013 y Fh(transp)r(ose)26 b Fe(lines)1239 b Ff(C-x)42 2472b Ff(M-x)36 b(customize)3942 2004 y Fh(Making)24 b(global)g(k)n(ey)g
1118b(C-t)0 1112 y Fh(transp)r(ose)26 b Fe(sexps)1205 b Ff(C-M-t)0 2473(bindings)g(in)f(Emacs)h(Lisp)f(\(examples\):)3942 2113
11191355 y Fg(Sp)t(elling)47 b(Chec)l(k)0 1562 y Fh(c)n(hec)n(k)27 2474y Ff(\(global-set-key)40 b("\\C-cg")d('goto-line\))3942
1120b(sp)r(elling)g(of)h(curren)n(t)f(w)n(ord)711 b Ff(M-$)0 24752192 y(\(global-set-key)j("\\M-#")d('query-replace-regexp\))3942
11211662 y Fh(c)n(hec)n(k)27 b(sp)r(elling)g(of)h(all)f(w)n(ords)f(in)i 24762397 y Fg(W)-10 b(riting)38 b(Commands)3942 2563 y Ff(\(defun)f
1122(region)332 b Ff(M-x)42 b(ispell-region)0 1761 y Fh(c)n(hec)n(k)27 2477Fb(c)l(ommand-name)43 b Ff(\()p Fb(ar)l(gs)5 b Ff(\))4013
1123b(sp)r(elling)g(of)h(en)n(tire)f(bu\013er)562 b Ff(M-x)42 24782643 y(")p Fb(do)l(cumentation)g Ff(")38 b(\(interactive)g(")p
1124b(ispell-buffer)0 2013 y Fg(T)-11 b(ags)0 2220 y Fh(\014nd)28 2479Fb(template)5 b Ff("\))4013 2722 y Fb(b)l(o)l(dy)h Ff(\))3942
1125b(a)f(tag)g(\(a)h(de\014nition\))947 b Ff(M-.)0 2319 24802831 y Fh(An)24 b(example:)3942 2939 y Ff(\(defun)37
1126y Fh(\014nd)28 b(next)g(o)r(ccurrence)e(of)i(tag)823 2481b(this-line-to-top-of-win)q(dow)42 b(\(line\))4013 3019
1127b Ff(C-u)42 b(M-.)0 2419 y Fh(sp)r(ecify)28 b(a)f(new)h(tags)e(\014le) 2482y("Reposition)c(line)e(point)h(is)f(on)g(to)g(top)g(of)g(window.)3942
1128732 b Ff(M-x)43 b(visit-tags-tabl)o(e)0 2554 y Fh(regexp)26 24833098 y(With)g(ARG,)h(put)f(point)h(on)f(line)g(ARG.")4013
1129b(searc)n(h)h(on)g(all)g(\014les)h(in)f(tags)g(table)259 24843178 y(\(interactive)i("P"\))4013 3258 y(\(recenter)f(\(if)g(\(null)f
1130b Ff(M-x)42 b(tags-search)0 2654 y Fh(run)27 b(query-replace)f(on)h 2485(line\))4507 3337 y(0)4436 3417 y(\(prefix-numeric-value)41
1131(all)g(the)h(\014les)264 b Ff(M-x)42 b(tags-query-replac)o(e)0 2486b(line\)\)\)\))3942 3525 y Fh(The)35 b Ff(interactive)k
11322754 y Fh(con)n(tin)n(ue)27 b(last)g(tags)g(searc)n(h)f(or)h 2487Fh(sp)r(ec)c(sa)n(ys)g(ho)n(w)h(to)f(read)h(argumen)n(ts)g(in)n(terac-)
1133(query-replace)294 b Ff(M-,)0 2996 y Fg(Shells)0 3203 24883942 3605 y(tiv)n(ely)-6 b(.)32 b(T)n(yp)r(e)24 b Ff(C-h)36
1134y Fh(execute)27 b(a)h(shell)f(command)893 b Ff(M-!)0 2489b(f)g(interactive)26 b Fh(for)d(more)h(details.)4235
11353303 y Fh(run)27 b(a)h(shell)f(command)g(on)h(the)g(region)529 24903736 y Fd(Cop)n(yrigh)n(t)4538 3734 y(c)4521 3736 y Fc(\015)d
1136b Ff(M-|)0 3402 y Fh(\014lter)28 b(region)e(through)h(a)g(shell)g 2491Fd(2006)i(F)-5 b(ree)21 b(Soft)n(w)n(are)i(F)-5 b(oundation,)20
1137(command)429 b Ff(C-u)42 b(M-|)0 3502 y Fh(start)27 b(a)g(shell)h(in)g 2492b(Inc.)4399 3800 y(v2.3)i(for)f(GNU)f(Emacs)h(v)n(ersion)h(22,)f(2006)
1138(windo)n(w)f Ff(*shell*)635 b(M-x)42 b(shell)0 3745 y 24934532 3864 y(designed)f(b)n(y)h(Stephen)f(Gildea)3942
1139Fg(Rectangles)0 3951 y Fh(cop)n(y)27 b(rectangle)f(to)i(register)879 24943956 y(P)n(ermission)28 b(is)f(gran)n(ted)i(to)f(mak)n(e)h(and)e
1140b Ff(C-x)42 b(r)i(r)0 4051 y Fh(kill)28 b(rectangle)1330 2495(distribute)f(copies)j(of)f(this)f(card)h(pro-)3942 4020
1141b Ff(C-x)42 b(r)i(k)0 4151 y Fh(y)n(ank)27 b(rectangle)1270 2496y(vided)23 b(the)h(cop)n(yrigh)n(t)h(notice)g(and)f(this)f(p)r
1142b Ff(C-x)42 b(r)i(y)0 4250 y Fh(op)r(en)28 b(rectangle,)e(shifting)i 2497(ermission)h(notice)g(are)h(preserv)n(ed)g(on)3942 4084
1143(text)g(righ)n(t)576 b Ff(C-x)42 b(r)i(o)0 4350 y Fh(blank)27 2498y(all)20 b(copies.)3942 4176 y(F)-5 b(or)21 b(copies)g(of)g(the)g(GNU)e
1144b(out)h(rectangle)1095 b Ff(C-x)42 b(r)i(c)0 4450 y Fh(pre\014x)27 2499(Emacs)i(man)n(ual,)f(write)h(to)g(the)f(F)-5 b(ree)22
1145b(eac)n(h)g(line)h(with)g(a)f(string)756 b Ff(C-x)42 2500b(Soft)n(w)n(are)g(F)-5 b(oun-)3942 4240 y(dation,)29
1146b(r)i(t)0 4692 y Fg(Abbrevs)0 4899 y Fh(add)27 b(global)g(abbrev)1146 2501b(Inc.,)g(51)g(F)-5 b(ranklin)28 b(Street,)h(Fifth)f(Flo)r(or,)h
1147b Ff(C-x)42 b(a)i(g)0 4999 y Fh(add)27 b(mo)r(de-lo)r(cal)g(abbrev)971 2502(Boston,)i(MA)d(02110-1301)3942 4304 y(USA)p eop end
1148b Ff(C-x)42 b(a)i(l)0 5098 y Fh(add)27 b(global)g(expansion)f(for)i
1149(this)f(abbrev)472 b Ff(C-x)42 b(a)i(i)f(g)0 5198 y Fh(add)27
1150b(mo)r(de-lo)r(cal)g(expansion)g(for)g(this)h(abbrev)296
1151b Ff(C-x)42 b(a)i(i)f(l)0 5298 y Fh(explicitly)28 b(expand)f(abbrev)904
1152b Ff(C-x)42 b(a)i(e)0 5433 y Fh(expand)27 b(previous)g(w)n(ord)f
1153(dynamically)537 b Ff(M-/)3858 5663 y Fh(4)p eop
1154%%Page: 5 5
11555 4 bop 0 -337 a Fg(Regular)46 b(Expressions)0 -130 y
1156Fh(an)n(y)27 b(single)g(c)n(haracter)e(except)j(a)f(newline)448
1157b Ff(.)87 b Fh(\(dot\))0 -30 y(zero)26 b(or)h(more)g(rep)r(eats)1053
1158b Ff(*)0 69 y Fh(one)27 b(or)g(more)g(rep)r(eats)1076
1159b Ff(+)0 169 y Fh(zero)26 b(or)h(one)g(rep)r(eat)1142
1160b Ff(?)0 268 y Fh(quote)27 b(regular)f(expression)g(sp)r(ecial)i(c)n
1161(haracter)d Fb(c)219 b Ff(\\)p Fb(c)0 368 y Fh(alternativ)n(e)26
1162b(\(\\or"\))1162 b Ff(\\|)0 468 y Fh(grouping)1480 b
1163Ff(\\\()43 b Fa(:)14 b(:)g(:)43 b Ff(\\\))0 567 y Fh(same)27
1164b(text)h(as)f Fb(n)6 b Fh(th)28 b(group)949 b Ff(\\)p
1165Fb(n)0 667 y Fh(at)27 b(w)n(ord)g(break)1291 b Ff(\\b)0
1166767 y Fh(not)28 b(at)f(w)n(ord)g(break)1143 b Ff(\\B)0
1167902 y Fe(en)m(tit)m(y)942 b(matc)m(h)32 b(start)102 b(matc)m(h)31
1168b(end)0 1002 y Fh(line)1055 b Ff(^)543 b($)0 1101 y Fh(w)n(ord)1005
1169b Ff(\\<)499 b(\\>)0 1201 y Fh(bu\013er)974 b Ff(\\`)499
1170b(\\')0 1300 y Fe(class)32 b(of)f(c)m(haracters)430 b(matc)m(h)32
1171b(these)83 b(matc)m(h)31 b(others)0 1400 y Fh(explicit)d(set)789
1172b Ff([)44 b Fa(:)14 b(:)g(:)43 b Ff(])315 b([^)42 b Fa(:)14
1173b(:)g(:)44 b Ff(])0 1500 y Fh(w)n(ord-syn)n(tax)25 b(c)n(haracter)376
1174b Ff(\\w)499 b(\\W)0 1599 y Fh(c)n(haracter)26 b(with)i(syn)n(tax)e
1175Fb(c)329 b Ff(\\s)p Fb(c)461 b Ff(\\S)p Fb(c)0 1842 y
1176Fg(In)l(ternational)48 b(Character)e(Sets)0 2049 y Fh(sp)r(ecify)28
1177b(principal)f(language)239 b Ff(M-x)42 b(set-language-env)o(ir)o(onm)o
1178(en)o(t)0 2148 y Fh(sho)n(w)27 b(all)g(input)h(metho)r(ds)592
1179b Ff(M-x)42 b(list-input-method)o(s)0 2248 y Fh(enable)27
1180b(or)g(disable)g(input)i(metho)r(d)667 b Ff(C-\\)0 2348
1181y Fh(set)28 b(co)r(ding)f(system)g(for)g(next)h(command)465
1182b Ff(C-x)42 b(RET)h(c)0 2447 y Fh(sho)n(w)27 b(all)g(co)r(ding)g
1183(systems)531 b Ff(M-x)42 b(list-coding-syst)o(em)o(s)0
11842547 y Fh(c)n(ho)r(ose)26 b(preferred)h(co)r(ding)g(system)224
1185b Ff(M-x)42 b(prefer-coding-sys)o(te)o(m)0 2800 y Fg(Info)0
11863007 y Fh(en)n(ter)27 b(the)h(Info)g(do)r(cumen)n(tation)f(reader)481
1187b Ff(C-h)42 b(i)0 3106 y Fh(\014nd)28 b(sp)r(eci\014ed)g(function)g(or)
1188f(v)-5 b(ariable)26 b(in)i(Info)321 b Ff(C-h)42 b(C-i)0
11893242 y Fh(Mo)n(ving)26 b(within)j(a)e(no)r(de:)83 3377
1190y(scroll)f(forw)n(ard)1221 b Ff(SPC)83 3476 y Fh(scroll)26
1191b(rev)n(erse)1248 b Ff(DEL)83 3576 y Fh(b)r(eginning)28
1192b(of)f(no)r(de)1069 b Ff(.)87 b Fh(\(dot\))0 3711 y(Mo)n(ving)26
1193b(b)r(et)n(w)n(een)i(no)r(des:)83 3847 y Fe(next)g Fh(no)r(de)1332
1194b Ff(n)83 3946 y Fe(previous)27 b Fh(no)r(de)1165 b Ff(p)83
11954046 y Fh(mo)n(v)n(e)26 b Fe(up)1397 b Ff(u)83 4146 y
1196Fh(select)27 b(men)n(u)h(item)g(b)n(y)g(name)768 b Ff(m)83
11974245 y Fh(select)27 b Fb(n)6 b Fh(th)29 b(men)n(u)e(item)h(b)n(y)g(n)n
1198(um)n(b)r(er)f(\(1{9\))311 b Fb(n)83 4345 y Fh(follo)n(w)27
1199b(cross)f(reference)h(\(return)g(with)h Ff(l)p Fh(\))373
1200b Ff(f)83 4445 y Fh(return)27 b(to)h(last)f(no)r(de)h(y)n(ou)e(sa)n(w)
1201714 b Ff(l)83 4544 y Fh(return)27 b(to)h(directory)e(no)r(de)835
1202b Ff(d)83 4644 y Fh(go)27 b(to)g(an)n(y)g(no)r(de)h(b)n(y)f(name)838
1203b Ff(g)0 4779 y Fh(Other:)83 4915 y(run)27 b(Info)h Fe(tutorial)1080
1204b Ff(h)83 5014 y Fe(quit)28 b Fh(Info)1379 b Ff(q)83
12055114 y Fh(searc)n(h)26 b(no)r(des)h(for)h(regexp)865
1206b Ff(M-s)3858 5663 y Fh(5)p eop
1207%%Page: 6 6
12086 5 bop 0 -337 a Fg(Registers)0 -130 y Fh(sa)n(v)n(e)26
1209b(region)g(in)i(register)1006 b Ff(C-x)42 b(r)i(s)0 -30
1210y Fh(insert)27 b(register)f(con)n(ten)n(ts)h(in)n(to)h(bu\013er)566
1211b Ff(C-x)42 b(r)i(i)0 105 y Fh(sa)n(v)n(e)26 b(v)-5 b(alue)28
1212b(of)f(p)r(oin)n(t)h(in)g(register)729 b Ff(C-x)42 b(r)i(SPC)0
1213205 y Fh(jump)28 b(to)g(p)r(oin)n(t)g(sa)n(v)n(ed)e(in)i(register)676
1214b Ff(C-x)42 b(r)i(j)0 457 y Fg(Keyb)t(oard)h(Macros)0
1215664 y Fe(start)28 b Fh(de\014ning)g(a)f(k)n(eyb)r(oard)f(macro)609
1216b Ff(C-x)42 b(\()0 764 y Fe(end)28 b Fh(k)n(eyb)r(oard)e(macro)g
1217(de\014nition)672 b Ff(C-x)42 b(\))0 863 y Fe(execute)28
1218b Fh(last-de\014ned)f(k)n(eyb)r(oard)f(macro)432 b Ff(C-x)42
1219b(e)0 963 y Fh(app)r(end)28 b(to)f(last)h(k)n(eyb)r(oard)e(macro)665
1220b Ff(C-u)42 b(C-x)h(\()0 1063 y Fh(name)27 b(last)h(k)n(eyb)r(oard)e
1221(macro)436 b Ff(M-x)42 b(name-last-kbd-ma)o(cr)o(o)0
12221162 y Fh(insert)27 b(Lisp)h(de\014nition)g(in)g(bu\013er)439
1223b Ff(M-x)43 b(insert-kbd-macr)o(o)0 1405 y Fg(Commands)j(Dealing)g
1224(with)i(Emacs)d(Lisp)0 1612 y Fh(ev)-5 b(al)27 b Fe(sexp)h
1225Fh(b)r(efore)f(p)r(oin)n(t)981 b Ff(C-x)42 b(C-e)0 1711
1226y Fh(ev)-5 b(al)27 b(curren)n(t)g Fe(defun)1111 b Ff(C-M-x)0
12271811 y Fh(ev)-5 b(al)27 b Fe(region)1199 b Ff(M-x)42
1228b(eval-region)0 1911 y Fh(read)27 b(and)g(ev)-5 b(al)28
1229b(minibu\013er)914 b Ff(M-:)0 2010 y Fh(load)27 b(from)g(standard)g
1230(system)g(directory)301 b Ff(M-x)42 b(load-library)0
12312263 y Fg(Simple)47 b(Customization)0 2470 y Fh(customize)27
1232b(v)-5 b(ariables)27 b(and)g(faces)563 b Ff(M-x)42 b(customize)0
12332605 y Fh(Making)27 b(global)f(k)n(ey)h(bindings)h(in)g(Emacs)e(Lisp)i
1234(\(examples\):)0 2741 y Ff(\(global-set-key)37 b("\\C-cg")k
1235('goto-line\))0 2840 y(\(global-set-key)c("\\M-#")k('query-replace-re)o
1236(gex)o(p\))0 3093 y Fg(W)-11 b(riting)46 b(Commands)0
12373300 y Ff(\(defun)41 b Fb(c)l(ommand-name)51 b Ff(\()p
1238Fb(ar)l(gs)7 b Ff(\))87 3399 y(")p Fb(do)l(cumentation)f
1239Ff(")44 b(\(interactive)38 b(")p Fb(template)6 b Ff("\))87
12403499 y Fb(b)l(o)l(dy)h Ff(\))0 3634 y Fh(An)28 b(example:)0
12413770 y Ff(\(defun)41 b(this-line-to-top)o(-of)o(-w)o(ind)o(ow)c
1242(\(line\))87 3869 y("Reposition)i(line)j(point)g(is)g(on)h(to)g(top)f
1243(of)h(window.)0 3969 y(With)f(ARG,)g(put)g(point)g(on)g(line)g(ARG.")87
12444069 y(\(interactive)d("P"\))87 4168 y(\(recenter)h(\(if)i(\(null)g
1245(line\))697 4268 y(0)610 4368 y(\(prefix-numeric-v)o(al)o(ue)37
1246b(line\)\)\)\))0 4503 y Fh(The)32 b Ff(interactive)c
1247Fh(sp)r(ec)k(sa)n(ys)f(ho)n(w)g(to)h(read)f(argumen)n(ts)g(in)n
1248(teractiv)n(ely)-7 b(.)0 4603 y(T)n(yp)r(e)27 b Ff(C-h)43
1249b(f)g(interactive)23 b Fh(for)k(more)g(details.)476 4919
1250y Fd(Cop)n(yrigh)n(t)805 4917 y(c)787 4919 y Fc(\015)22
1251b Fd(1997)h(F)-5 b(ree)21 b(Soft)n(w)n(are)h(F)-5 b(oundation,)20
1252b(Inc.)654 4998 y(v2.2)i(for)g(GNU)h(Emacs)e(v)n(ersion)h(21,)h(1997)
1253798 5078 y(designed)e(b)n(y)h(Stephen)e(Gildea)0 5194
1254y(P)n(ermission)f(is)i(gran)n(ted)f(to)h(mak)n(e)e(and)i(distribute)d
1255(copies)i(of)g(this)h(card)e(pro)n(vided)g(the)h(cop)n(y-)0
12565273 y(righ)n(t)i(notice)f(and)h(this)g(p)r(ermission)f(notice)g(are)g
1257(preserv)n(ed)g(on)h(all)g(copies.)0 5389 y(F)-5 b(or)20
1258b(copies)g(of)h(the)f(GNU)h(Emacs)f(man)n(ual,)g(write)g(to)h(the)f(F)
1259-5 b(ree)20 b(Soft)n(w)n(are)g(F)-5 b(oundation,)19 b(Inc.,)0
12605468 y(59)k(T)-5 b(emple)20 b(Place,)h(Suite)g(330,)h(Boston,)h(MA)f
1261(02111-1307)h(USA)3858 5663 y Fh(6)p eop
1262%%Trailer 2503%%Trailer
1263end 2504
1264userdict /end-hook known{end-hook}if 2505userdict /end-hook known{end-hook}if
1265%%EOF 2506%%EOF
diff --git a/leim/ChangeLog b/leim/ChangeLog
index 86227586f7e..cae118736e9 100644
--- a/leim/ChangeLog
+++ b/leim/ChangeLog
@@ -1,3 +1,11 @@
12006-10-02 Kenichi Handa <handa@m17n.org>
2
3 * Makefile.in (install): Fix previous change.
4
52006-09-28 Kenichi Handa <handa@m17n.org>
6
7 * Makefile.in (install): Be sure to make ${INSTALLDIR}.
8
12006-09-15 Jay Belanger <belanger@truman.edu> 92006-09-15 Jay Belanger <belanger@truman.edu>
2 10
3 * COPYING: Replace "Library Public License" by "Lesser Public 11 * COPYING: Replace "Library Public License" by "Lesser Public
diff --git a/leim/Makefile.in b/leim/Makefile.in
index 9459d6aae06..2b6ca8e9c15 100644
--- a/leim/Makefile.in
+++ b/leim/Makefile.in
@@ -217,8 +217,12 @@ leim-list.el: ${SUBDIRS} ${NON-TIT-MISC} changed.tit changed.misc ${srcdir}/leim
217 217
218install: all 218install: all
219 if [ x`(cd ${INSTALLDIR} && /bin/pwd)` != x`(/bin/pwd)` ] ; then \ 219 if [ x`(cd ${INSTALLDIR} && /bin/pwd)` != x`(/bin/pwd)` ] ; then \
220 rm -rf ${INSTALLDIR}/leim-list.el; \ 220 if [ -d ${INSTALLDIR} ] ; then \
221 rm -rf ${INSTALLDIR}/quail ${INSTALLDIR}/ja-dic ; \ 221 rm -rf ${INSTALLDIR}/leim-list.el; \
222 rm -rf ${INSTALLDIR}/quail ${INSTALLDIR}/ja-dic ; \
223 else \
224 ${srcdir}/${dot}${dot}/mkinstalldirs ${INSTALLDIR}; \
225 fi; \
222 echo "Copying leim files to ${INSTALLDIR} ..." ; \ 226 echo "Copying leim files to ${INSTALLDIR} ..." ; \
223 if [ x`(cd ${srcdir} && /bin/pwd)` = x`(/bin/pwd)` ] ; then \ 227 if [ x`(cd ${srcdir} && /bin/pwd)` = x`(/bin/pwd)` ] ; then \
224 tar -chf - leim-list.el quail ja-dic \ 228 tar -chf - leim-list.el quail ja-dic \
diff --git a/lib-src/.gitignore b/lib-src/.gitignore
index 83a67e67579..faf263e740d 100644
--- a/lib-src/.gitignore
+++ b/lib-src/.gitignore
@@ -21,5 +21,6 @@ update-game-score
21yow 21yow
22Makefile 22Makefile
23makefile 23makefile
24blessmail
24*-spd 25*-spd
25*.pdb 26*.pdb
diff --git a/lib-src/ChangeLog b/lib-src/ChangeLog
index c6ca6132d0f..45fb6d6513e 100644
--- a/lib-src/ChangeLog
+++ b/lib-src/ChangeLog
@@ -1,3 +1,7 @@
12006-09-30 Eli Zaretskii <eliz@gnu.org>
2
3 * .cvsignore: Add blessmail.
4
12006-09-15 Jay Belanger <belanger@truman.edu> 52006-09-15 Jay Belanger <belanger@truman.edu>
2 6
3 * COPYING: Replace "Library Public License" by "Lesser Public 7 * COPYING: Replace "Library Public License" by "Lesser Public
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 42ef944476b..49d677c8cfc 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,12 +1,344 @@
12006-10-03 Denis St,A|(Bnkel <dstuenkel@googlemail.com> (tiny change)
2
3 * ibuf-ext.el (eval, view-and-eval) <define-ibuffer-op>:
4 Use the interactive spec of `eval-expression'.
5
62006-10-02 Michael Welsh Duggan <md5i@cs.cmu.edu>
7
8 * progmodes/sh-script.el (sh-prev-thing): Fix last change.
9
102006-10-02 MIYOSHI Masanori <miyoshi@meadowy.org> (tiny change)
11
12 * mail/smtpmail.el (smtpmail-try-auth-methods): Fix typo in
13 2006-09-28 commit.
14
152006-10-02 Kenichi Handa <handa@m17n.org>
16
17 * international/code-pages.el (iso-8859-6): Table fixed.
18
192006-10-01 Chris Moore <christopher.ian.moore@gmail.com> (tiny change)
20
21 * dired.el (dired-build-subdir-alist): Fix previous change.
22
232006-10-01 Johan Bockg,Ae(Brd <bojohan+mail@dd.chalmers.se>
24
25 * simple.el (undo-elt-crosses-region): Fix the inequalities.
26
272006-10-01 Stefan Monnier <monnier@iro.umontreal.ca>
28
29 * emacs-lisp/find-func.el (find-function-regexp): Don't match
30 "define-button-type".
31
32 * pcvs.el (cvs-update-header): Fix handling of extra newlines so that
33 they don't keep accumulating.
34
352006-10-01 Bob Rogers <rogers-emacs@rgrjr.dyndns.org> (tiny change)
36
37 * ffap.el (ffap-rfc-path): Change the address of the RFC
38 repository to ftp.rfc-editor.org, as ds.internic.net seems to be gone.
39
402006-10-01 Stephen Berman <Stephen.Berman@gmx.net>
41
42 * allout.el (allout-expose-topic): Rectify implementation of "+"
43 spec, so that bodies are not exposed with headlines.
44
452006-10-01 Ken Manheimer <ken.manheimer@gmail.com>
46
47 * allout.el (allout-current-depth): Do aberrent check only at or
48 below doublecheck depth.
49 (allout-chart-subtree): Make it explicit that LEVELS being nil
50 means unlimited depth. Drop undocumented support for LEVELS value
51 t meaning unlimited depth. (This is consistent with
52 allout-chart-to-reveal, but contrary to allout-show-children,
53 which needs to use nil to default to depth of 1.)
54 (allout-goto-prefix-doublechecked): Wrap long docstring line.
55 (allout-chart-to-reveal): Be explicit in docstring about meaning
56 of nil LEVELS, and drop support for LEVELS value t.
57 (allout-show-children): Translate the level spec used by this
58 routine to that used by allout-chart-subtree and
59 allout-chart-to-reveal.
60 (allout-show-to-offshoot): Retry once when stuck, after opening
61 subtree - improvements in discontinuity handling likely will
62 enable progress.
63
642006-09-30 Chong Yidong <cyd@stupidchicken.com>
65
66 * wid-edit.el (widget-button-click-moves-point): New variable.
67 (widget-button-click): If widget-button-click-moves-point is
68 non-nil, set point after performing the button action
69
70 * cus-edit.el (custom-mode): Set widget-button-click-moves-point.
71
722006-09-30 Martin Rudalics <rudalics@gmx.at>
73
74 * files.el (find-file-existing): Modify to not allow wildcards.
75
762006-09-30 Johan Bockg,Ae(Brd <bojohan@dd.chalmers.se>
77
78 * simple.el (undo-more): When undo information for the region is
79 exhausted, say "No further undo information FOR REGION".
80
812006-09-30 Michael Welsh Duggan <md5i@cs.cmu.edu>
82
83 * progmodes/sh-script.el (sh-prev-thing):
84 Take `sh-leading-keywords' into account.
85
862006-09-29 Glenn Morris <rgm@gnu.org>
87
88 * custom.el (defcustom): Doc fix.
89
90 * calendar/calendar.el (european-calendar-style):
91 Call european-calendar or american-calendar as needed when set.
92 (diary-view-entries, list-calendar-holidays): Move autoloads
93 before use.
94
952006-09-29 Juri Linkov <juri@jurta.org>
96
97 * progmodes/cperl-mode.el (cperl-after-expr-p): Don't move point
98 to nil if there is no previous property change.
99
1002006-09-26 Micha,Ak(Bl Cadilhac <michael.cadilhac@lrde.org>
101
102 * cus-edit.el (custom-save-all): Switch to emacs-lisp mode before
103 saving anything to be sure that `forward-sexp' behaves correctly.
104
1052006-09-29 Chong Yidong <cyd@stupidchicken.com>
106
107 * simple.el (line-move-finish): Ignore field boundaries if the
108 initial and final points have the same `field' property.
109
1102006-09-29 Kim F. Storm <storm@cua.dk>
111
112 * ido.el (ido-file-internal): Only bind minibuffer-completing-file-name
113 to t while calling ido-read-internal.
114
1152006-09-29 Carsten Dominik <dominik@science.uva.nl>
116
117 * textmodes/org.el (org-file-remote-p): Get regexp from list.
118 (org-archive-subtree): Remove erraneous `]' from character list.
119
1202006-09-28 Jonathan Yavner <jyavner@member.fsf.org>
121
122 * ses.el (ses-in-print-area, ses-goto-data, ses-load)
123 (ses-reconstruct-all): Make undo of "insert row" work by keeping
124 markers for data-area and parameters-area.
125
1262006-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
127
128 * progmodes/make-mode.el (makefile-mode): Don't disable jit-lock.
129
130 * font-lock.el (font-lock-after-change-function): Refontify next line
131 as well if end is at BOL.
132 (font-lock-extend-jit-lock-region-after-change): Be more careful to
133 only extend the region as much as needed.
134
1352006-09-28 Richard Stallman <rms@gnu.org>
136
137 * comint.el (comint-mode): Bind font-lock-defaults non-nil.
138
139 * subr.el (insert-for-yank-1): Handle `font-lock-face' specially.
140
141 * international/mule.el (after-insert-file-set-coding):
142 If VISIT, don't let set-buffer-multibyte make undo info.
143
1442006-09-28 Osamu Yamane <yamane@green.ocn.ne.jp> (tiny change)
145
146 * mail/smtpmail.el (smtpmail-try-auth-methods): Do not break long
147 lines in base64-encoded authentication response.
148
1492006-09-26 Vinicius Jose Latorre <viniciusjl@ig.com.br>
150
151 * progmode/ebnf2ps.el: Doc fix. Implement arrow spacing and scaling.
152 (ebnf-version): New version 4.3.
153 (ebnf-arrow-extra-width, ebnf-arrow-scale): New options.
154 (ebnf-prologue): Adjust PostScript programming.
155 (ebnf-begin-file, ebnf-insert-ebnf-prologue, ebnf-terminal-dimension1)
156 (ebnf-repeat-dimension, ebnf-except-dimension): Adjust code.
157
1582006-09-26 Stefan Monnier <monnier@iro.umontreal.ca>
159
160 * jit-lock.el (jit-lock-force-redisplay): Rename from
161 jit-lock-fontify-again, and undo the mistaken change I've just done.
162
163 * jit-lock.el (jit-lock-fontify-now): Don't fontify the empty text.
164 (jit-lock-fontify-again): Don't refontify text that's not displayed.
165
1662006-09-26 Kenichi Handa <handa@m17n.org>
167
168 * startup.el (display-splash-screen): Allow a prefix argument.
169
1702006-09-25 Jason Rumney <jasonr@gnu.org>
171
172 * subr.el (shell-quote-argument): Use DOS logic for Windows
173 shells with DOS semantics.
174
1752006-09-24 Richard Stallman <rms@gnu.org>
176
177 * progmodes/compile.el (compilation-goto-locus-delete-o): New fn.
178 (compilation-goto-locus): Use compilation-goto-locus-delete-o
179 to delete the overlay. Put it on pre-command-hook.
180
181 * emacs-lisp/timer.el (timer-max-repeats): Doc fix.
182
183 * startup.el (fancy-splash-screens, normal-splash-screen):
184 Call the splash buffer *About GNU Emacs*.
185
186 * simple.el (next-error-highlight, next-error-highlight-no-select):
187 Default to 0.5.
188 (yank-excluded-properties): Add `fontified'.
189
190 * font-lock.el (font-lock-compile-keywords): Allow value of
191 syntax-begin-function to enable paren-column-0 highlighting.
192
1932006-09-24 Chris Moore <christopher.ian.moore@gmail.com> (tiny change)
194
195 * dired.el (dired-build-subdir-alist): When file ends in colon,
196 don't exit the loop, just disregard that file.
197
1982006-09-24 Chong Yidong <cyd@stupidchicken.com>
199
200 * simple.el (line-move-finish): Handle corner case for fields in
201 continued lines.
202 (line-move-1): Remove flawed test for that case.
203
2042006-09-24 Ken Manheimer <ken.manheimer@gmail.com>
205
206 * icomplete.el (icomplete-simple-completing-p): Use the correct
207 name for the new variable, `icomplete-with-completion-tables'.
208 (file local variables): Remove superfluous setting.
209
2102006-09-23 Jeff Miller <jmiller@cablespeed.com> (tiny change)
211
212 * calendar/appt.el (appt-check): Fix typo for appointments just
213 after midnight.
214
2152006-09-23 Chong Yidong <cyd@stupidchicken.com>
216
217 * help.el (describe-key-briefly, describe-key): Don't expect an
218 extra up event if a down-event is generated by a popup menu.
219
2202006-09-23 Michal Nazarewicz <mnazarewicz@gmail.com> (tiny change)
221
222 * textmodes/ispell.el (ispell-change-dictionary): Don't check the
223 local dictionary when changing the global dictionary.
224
2252006-09-23 Ken Manheimer <ken.manheimer@gmail.com>
226
227 * icomplete.el (icomplete-with-completion-tables): List of
228 specialized completion tables with which icomplete should
229 operate. Include the new `internal-complete-buffer', so icomplete
230 works with interactive buffer-selection.
231 (icomplete-simple-completing-p): Add acceptance of specialized
232 completion tables listed in icomplete-with-completion-tables.
233
2342006-09-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
235
236 * frame.el (focus-follows-mouse): Set default to nil on Mac.
237
238 * startup.el (command-line): Use `custom-reevaluate-setting' for
239 `focus-follows-mouse'.
240
2412006-09-22 Richard Stallman <rms@gnu.org>
242
243 * cus-edit.el (custom-buffer-create-internal): In `emacs -q',
244 explain why Save is not available.
245
2462006-09-22 Juanma Barranquero <lekktu@gmail.com>
247
248 * woman.el (woman0-so): Use `let*', not `let'.
249 (woman-horizontal-line): Remove unbalanced parenthesis.
250
2512006-09-22 Stefan Monnier <monnier@iro.umontreal.ca>
252
253 * woman.el: Make sure all the end-of-region markers we use have
254 a non-nil insertion-type.
255 (woman0-so): Move things around so we can use copy-marker.
256 (woman0-roff-buffer, woman2-process-escapes-to-eol, woman2-roff-buffer):
257 Adjust marker type.
258 (woman2-process-escapes): Check marker type.
259 (woman-horizontal-line): Dispense with the use of a marker.
260
2612006-09-22 Jay Belanger <belanger@truman.edu>
262
263 * calc/calc-lang.el: Add Greek letters to math-variable-table
264 property of tex.
265
2662006-09-22 Chong Yidong <cyd@stupidchicken.com>
267
268 * files.el (save-some-buffers-action-alist): Display diff in
269 view-mode.
270
2712006-09-22 Masatake YAMATO <jet@gyve.org>
272
273 * add-log.el (add-log-current-defun): Use `forward-sexp'
274 instead of `forward-word' to pick c++::symbol.
275 Reported by Herbert Euler <herberteuler@hotmail.com>.
276
2772006-09-22 Kenichi Handa <handa@m17n.org>
278
279 * bindings.el: Fix setting self-insert-command for multibyte
280 characters in global-map.
281
2822006-09-21 David Kastrup <dak@gnu.org>
283
284 * mouse.el (mouse-posn-property): Fix typo for `event-start' in
285 doc string.
286
2872006-09-21 Kim F. Storm <storm@cua.dk>
288
289 * emacs-lisp/cl.el (pushnew-internal): Remove defvar.
290 (pushnew): Fix last change.
291
2922006-09-21 Kenichi Handa <handa@m17n.org>
293
294 * language/european.el ("Latin-1"): Add windows-1252 to
295 coding-priority.
296 ("German"): Likewise.
297
2982006-09-21 Kim F. Storm <storm@cua.dk>
299
300 * emacs-lisp/cl-macs.el (member*): Use memql instead of complex code.
301 Suggested by Miles Bader.
302
303 * emacs-lisp/cl.el (pushnew): Rework 2006-09-10 change. Use memql
304 instead of add-to-list in the simple case.
305
3062006-09-20 Kenichi Handa <handa@m17n.org>
307
308 * isearch.el (isearch-process-search-char): Cancel the previous
309 change.
310 (isearch-search-string): New function.
311 (isearch-search): Use isearch-search-string.
312 (isearch-lazy-highlight-search): Likewise.
313
3142006-09-20 Vinicius Jose Latorre <viniciusjl@ig.com.br>
315
316 * lpr.el (lpr-page-header-switches): Insert `*' at beginning of doc
317 string to become an option.
318
3192006-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
320
321 * files.el (find-buffer-visiting): Don't get fooled by a nil inode.
322
3232006-09-20 Kim F. Storm <storm@cua.dk>
324
325 * simple.el (line-move-partial): Call pos-visible-in-window-p with
326 position t instead of trying both window-end and window-end - 1.
327
3282006-09-20 Carsten Dominik <dominik@science.uva.nl>
329
330 * textmodes/org.el (org-scan-tags): Find end of subtrees also in
331 hidden trees.
332
12006-09-20 David Kastrup <dak@gnu.org> 3332006-09-20 David Kastrup <dak@gnu.org>
2 334
3 * mouse.el (mouse-posn-property): Improve doc string. 335 * mouse.el (mouse-posn-property): Improve doc string.
4 (mouse-on-link-p): Change buffers for function calls on links. 336 (mouse-on-link-p): Change buffers for function calls on links.
5 337
6 * menu-bar.el (clipboard-yank): bomb out in interactive use if 338 * menu-bar.el (clipboard-yank): Bomb out in interactive use if
7 buffer is read-only. 339 buffer is read-only.
8 340
92006-09-18 Ken Manheimer <ken.manheimer@gmail.com> 3412006-09-20 Ken Manheimer <ken.manheimer@gmail.com>
10 342
11 * allout.el (allout-unprotected): Let inhibit-read-only only when 343 * allout.el (allout-unprotected): Let inhibit-read-only only when
12 buffer-read-only isn't set. 344 buffer-read-only isn't set.
@@ -17,16 +349,15 @@
17 rather than allout-exposure-changed-hook, as a stronger assertion. 349 rather than allout-exposure-changed-hook, as a stronger assertion.
18 (allout-keybindings-list): Add bindings for 350 (allout-keybindings-list): Add bindings for
19 allout-copy-line-as-kill and allout-copy-topic-as-kill. 351 allout-copy-line-as-kill and allout-copy-topic-as-kill.
20 (allout-copy-line-as-kill, allout-copy-topic-as-kill): copy 352 (allout-copy-line-as-kill, allout-copy-topic-as-kill):
21 wrappers for allout-kill-line and allout-kill-topic. 353 Copy wrappers for allout-kill-line and allout-kill-topic.
22 (allout-listify-exposed): Position correctly to accumulate lines. 354 (allout-listify-exposed): Position correctly to accumulate lines.
23 355
242006-09-19 Chong Yidong <cyd@stupidchicken.com> 3562006-09-19 Chong Yidong <cyd@stupidchicken.com>
25 357
26 * simple.el (line-move-1): Escape field boundaries occurring 358 * simple.el (line-move-1): Escape field boundaries occurring
27 exactly at point. Update goal column if constrained to a field. 359 exactly at point. Update goal column if constrained to a field.
28 (line-move-finish): Escape field boundaries occurring exactly at 360 (line-move-finish): Escape field boundaries occurring exactly at point.
29 point.
30 361
312006-09-19 Stefan Monnier <monnier@iro.umontreal.ca> 3622006-09-19 Stefan Monnier <monnier@iro.umontreal.ca>
32 363
diff --git a/lisp/add-log.el b/lisp/add-log.el
index 393a696d3f1..d60f920244a 100644
--- a/lisp/add-log.el
+++ b/lisp/add-log.el
@@ -914,7 +914,7 @@ Has a preference of looking backwards."
914 ;; Include certain keywords if they 914 ;; Include certain keywords if they
915 ;; precede the name. 915 ;; precede the name.
916 (setq middle (point)) 916 (setq middle (point))
917 (forward-word -1) 917 (forward-sexp -1)
918 ;; Is this C++ method? 918 ;; Is this C++ method?
919 (when (and (< 2 middle) 919 (when (and (< 2 middle)
920 (string= (buffer-substring (- middle 2) 920 (string= (buffer-substring (- middle 2)
diff --git a/lisp/allout.el b/lisp/allout.el
index 2d7a4777df3..5f59e5e0103 100644
--- a/lisp/allout.el
+++ b/lisp/allout.el
@@ -2202,8 +2202,9 @@ Actually, returns prefix beginning point."
2202 (save-excursion 2202 (save-excursion
2203 (allout-beginning-of-current-line) 2203 (allout-beginning-of-current-line)
2204 (and (looking-at allout-regexp) 2204 (and (looking-at allout-regexp)
2205 (not (allout-aberrant-container-p)) 2205 (allout-prefix-data)
2206 (allout-prefix-data)))) 2206 (or (> allout-recent-depth allout-doublecheck-at-and-shallower)
2207 (not (allout-aberrant-container-p))))))
2207;;;_ > allout-on-heading-p () 2208;;;_ > allout-on-heading-p ()
2208(defalias 'allout-on-heading-p 'allout-on-current-heading-p) 2209(defalias 'allout-on-heading-p 'allout-on-current-heading-p)
2209;;;_ > allout-e-o-prefix-p () 2210;;;_ > allout-e-o-prefix-p ()
@@ -2329,7 +2330,7 @@ If less than this depth, ascend to that depth and count..."
2329 2330
2330 (save-excursion 2331 (save-excursion
2331 (cond ((and depth (<= depth 0) 0)) 2332 (cond ((and depth (<= depth 0) 0))
2332 ((or (not depth) (= depth (allout-depth))) 2333 ((or (null depth) (= depth (allout-depth)))
2333 (let ((index 1)) 2334 (let ((index 1))
2334 (while (allout-previous-sibling allout-recent-depth nil) 2335 (while (allout-previous-sibling allout-recent-depth nil)
2335 (setq index (1+ index))) 2336 (setq index (1+ index)))
@@ -2505,13 +2506,13 @@ We skip anomolous low-level topics, a la `allout-aberrant-container-p'."
2505(defun allout-chart-subtree (&optional levels visible orig-depth prev-depth) 2506(defun allout-chart-subtree (&optional levels visible orig-depth prev-depth)
2506 "Produce a location \"chart\" of subtopics of the containing topic. 2507 "Produce a location \"chart\" of subtopics of the containing topic.
2507 2508
2508Optional argument LEVELS specifies the depth \(relative to start 2509Optional argument LEVELS specifies a depth limit \(relative to start
2509depth) for the chart. 2510depth) for the chart. Null LEVELS means no limit.
2510 2511
2511When optional argument VISIBLE is non-nil, the chart includes 2512When optional argument VISIBLE is non-nil, the chart includes
2512only the visible subelements of the charted subjects. 2513only the visible subelements of the charted subjects.
2513 2514
2514The remaining optional args are not for internal use by the function. 2515The remaining optional args are for internal use by the function.
2515 2516
2516Point is left at the end of the subtree. 2517Point is left at the end of the subtree.
2517 2518
@@ -2618,16 +2619,19 @@ for an explanation of charts."
2618 2619
2619 "Return a flat list of hidden points in subtree CHART, up to DEPTH. 2620 "Return a flat list of hidden points in subtree CHART, up to DEPTH.
2620 2621
2622If DEPTH is nil, include hidden points at any depth.
2623
2621Note that point can be left at any of the points on chart, or at the 2624Note that point can be left at any of the points on chart, or at the
2622start point." 2625start point."
2623 2626
2624 (let (result here) 2627 (let (result here)
2625 (while (and (or (eq depth t) (> depth 0)) 2628 (while (and (or (null depth) (> depth 0))
2626 chart) 2629 chart)
2627 (setq here (car chart)) 2630 (setq here (car chart))
2628 (if (listp here) 2631 (if (listp here)
2629 (let ((further (allout-chart-to-reveal here (or (eq depth t) 2632 (let ((further (allout-chart-to-reveal here (if (null depth)
2630 (1- depth))))) 2633 depth
2634 (1- depth)))))
2631 ;; We're on the start of a subtree - recurse with it, if there's 2635 ;; We're on the start of a subtree - recurse with it, if there's
2632 ;; more depth to go: 2636 ;; more depth to go:
2633 (if further (setq result (append further result))) 2637 (if further (setq result (append further result)))
@@ -2697,7 +2701,10 @@ Returns the point at the beginning of the prefix, or nil if none."
2697(defun allout-goto-prefix-doublechecked () 2701(defun allout-goto-prefix-doublechecked ()
2698 "Put point at beginning of immediately containing outline topic. 2702 "Put point at beginning of immediately containing outline topic.
2699 2703
2700Like `allout-goto-prefix', but shallow topics \(according to `allout-doublecheck-at-and-shallower') are checked and disqualified for child containment discontinuity, according to `allout-aberrant-container-p'." 2704Like `allout-goto-prefix', but shallow topics \(according to
2705`allout-doublecheck-at-and-shallower') are checked and
2706disqualified for child containment discontinuity, according to
2707`allout-aberrant-container-p'."
2701 (allout-goto-prefix) 2708 (allout-goto-prefix)
2702 (if (and (<= allout-recent-depth allout-doublecheck-at-and-shallower) 2709 (if (and (<= allout-recent-depth allout-doublecheck-at-and-shallower)
2703 (allout-aberrant-container-p)) 2710 (allout-aberrant-container-p))
@@ -4620,8 +4627,13 @@ point of non-opened subtree?)"
4620 (allout-beginning-of-current-line) 4627 (allout-beginning-of-current-line)
4621 (save-restriction 4628 (save-restriction
4622 (let* (depth 4629 (let* (depth
4623 (chart (allout-chart-subtree (or level 1))) 4630 ;; translate the level spec for this routine to the ones
4624 (to-reveal (or (allout-chart-to-reveal chart (or level 1)) 4631 ;; used by -chart-subtree and -chart-to-reveal:
4632 (chart-level (cond ((not level) 1)
4633 ((eq level t) nil)
4634 (t level)))
4635 (chart (allout-chart-subtree chart-level))
4636 (to-reveal (or (allout-chart-to-reveal chart chart-level)
4625 ;; interactive, show discontinuous children: 4637 ;; interactive, show discontinuous children:
4626 (and chart 4638 (and chart
4627 (interactive-p) 4639 (interactive-p)
@@ -4672,22 +4684,22 @@ Useful for coherently exposing to a random point in a hidden region."
4672 (orig-pt (point)) 4684 (orig-pt (point))
4673 (orig-pref (allout-goto-prefix-doublechecked)) 4685 (orig-pref (allout-goto-prefix-doublechecked))
4674 (last-at (point)) 4686 (last-at (point))
4675 bag-it) 4687 (bag-it 0))
4676 (while (or bag-it (allout-hidden-p)) 4688 (while (or (> bag-it 1) (allout-hidden-p))
4677 (while (allout-hidden-p) 4689 (while (allout-hidden-p)
4678 (move-beginning-of-line 1) 4690 (move-beginning-of-line 1)
4679 (if (allout-hidden-p) (forward-char -1))) 4691 (if (allout-hidden-p) (forward-char -1)))
4680 (if (= last-at (setq last-at (point))) 4692 (if (= last-at (setq last-at (point)))
4681 ;; Oops, we're not making any progress! Show the current 4693 ;; Oops, we're not making any progress! Show the current topic
4682 ;; topic completely, and bag this try. 4694 ;; completely, and try one more time here, if we haven't already.
4683 (progn (beginning-of-line) 4695 (progn (beginning-of-line)
4684 (allout-show-current-subtree) 4696 (allout-show-current-subtree)
4685 (goto-char orig-pt) 4697 (goto-char orig-pt)
4686 (setq bag-it t) 4698 (setq bag-it (1+ bag-it))
4687 (beep) 4699 (if (> bag-it 1)
4688 (message "%s: %s" 4700 (error "allout-show-to-offshoot: %s"
4689 "allout-show-to-offshoot: " 4701 "Stumped by aberrant nesting.")))
4690 "Aberrant nesting encountered.")) 4702 (if (> bag-it 0) (setq bag-it 0))
4691 (allout-show-children) 4703 (allout-show-children)
4692 (goto-char orig-pref))) 4704 (goto-char orig-pref)))
4693 (goto-char orig-pt))) 4705 (goto-char orig-pt)))
@@ -4895,7 +4907,10 @@ Examples:
4895 (cond ((eq curr-elem '*) (allout-show-current-subtree) 4907 (cond ((eq curr-elem '*) (allout-show-current-subtree)
4896 (if (> allout-recent-end-of-subtree max-pos) 4908 (if (> allout-recent-end-of-subtree max-pos)
4897 (setq max-pos allout-recent-end-of-subtree))) 4909 (setq max-pos allout-recent-end-of-subtree)))
4898 ((eq curr-elem '+) (allout-show-current-branches) 4910 ((eq curr-elem '+)
4911 (if (not (allout-hidden-p))
4912 (save-excursion (allout-hide-current-subtree t)))
4913 (allout-show-current-branches)
4899 (if (> allout-recent-end-of-subtree max-pos) 4914 (if (> allout-recent-end-of-subtree max-pos)
4900 (setq max-pos allout-recent-end-of-subtree))) 4915 (setq max-pos allout-recent-end-of-subtree)))
4901 ((eq curr-elem '-) (allout-show-current-entry)) 4916 ((eq curr-elem '-) (allout-show-current-entry))
diff --git a/lisp/calc/calc-lang.el b/lisp/calc/calc-lang.el
index c7f92a13847..07bc0e247f7 100644
--- a/lisp/calc/calc-lang.el
+++ b/lisp/calc/calc-lang.el
@@ -409,13 +409,54 @@
409 ( \\mu . calcFunc-moebius ))) 409 ( \\mu . calcFunc-moebius )))
410 410
411(put 'tex 'math-variable-table 411(put 'tex 'math-variable-table
412 '( ( \\pi . var-pi ) 412 '(
413 ( \\infty . var-inf ) 413 ;; The Greek letters
414 ( \\infty . var-uinf ) 414 ( \\alpha . var-alpha )
415 ( \\phi . var-phi ) 415 ( \\beta . var-beta )
416 ( \\gamma . var-gamma ) 416 ( \\gamma . var-gamma )
417 ( \\sum . (math-parse-tex-sum calcFunc-sum) ) 417 ( \\Gamma . var-Gamma )
418 ( \\prod . (math-parse-tex-sum calcFunc-prod) ))) 418 ( \\delta . var-delta )
419 ( \\Delta . var-Delta )
420 ( \\epsilon . var-epsilon )
421 ( \\varepsilon . var-varepsilon)
422 ( \\zeta . var-zeta )
423 ( \\eta . var-eta )
424 ( \\theta . var-theta )
425 ( \\vartheta . var-vartheta )
426 ( \\Theta . var-Theta )
427 ( \\iota . var-iota )
428 ( \\kappa . var-kappa )
429 ( \\lambda . var-lambda )
430 ( \\Lambda . var-Lambda )
431 ( \\mu . var-mu )
432 ( \\nu . var-nu )
433 ( \\xi . var-xi )
434 ( \\Xi . var-Xi )
435 ( \\pi . var-pi )
436 ( \\varpi . var-varpi )
437 ( \\Pi . var-Pi )
438 ( \\rho . var-rho )
439 ( \\varrho . var-varrho )
440 ( \\sigma . var-sigma )
441 ( \\sigma . var-varsigma )
442 ( \\Sigma . var-Sigma )
443 ( \\tau . var-tau )
444 ( \\upsilon . var-upsilon )
445 ( \\Upsilon . var-Upsilon )
446 ( \\phi . var-phi )
447 ( \\varphi . var-varphi )
448 ( \\Phi . var-Phi )
449 ( \\chi . var-chi )
450 ( \\psi . var-psi )
451 ( \\Psi . var-Psi )
452 ( \\omega . var-omega )
453 ( \\Omega . var-Omega )
454 ;; Others
455 ( \\ell . var-ell )
456 ( \\infty . var-inf )
457 ( \\infty . var-uinf )
458 ( \\sum . (math-parse-tex-sum calcFunc-sum) )
459 ( \\prod . (math-parse-tex-sum calcFunc-prod) )))
419 460
420(put 'tex 'math-complex-format 'i) 461(put 'tex 'math-complex-format 'i)
421 462
diff --git a/lisp/calendar/appt.el b/lisp/calendar/appt.el
index 29e6fe56b6e..892c76bba0c 100644
--- a/lisp/calendar/appt.el
+++ b/lisp/calendar/appt.el
@@ -394,8 +394,8 @@ displayed in a window:
394 (if (and (< appt-comp-time appt-message-warning-time) 394 (if (and (< appt-comp-time appt-message-warning-time)
395 (> (+ cur-comp-time appt-message-warning-time) 395 (> (+ cur-comp-time appt-message-warning-time)
396 appt-max-time)) 396 appt-max-time))
397 (setq min-to-app (+ (- (1+ appt-max-time) cur-comp-time)) 397 (setq min-to-app (+ (- (1+ appt-max-time) cur-comp-time)
398 appt-comp-time)) 398 appt-comp-time)))
399 399
400 ;; issue warning if the appointment time is 400 ;; issue warning if the appointment time is
401 ;; within appt-message-warning time 401 ;; within appt-message-warning time
diff --git a/lisp/calendar/calendar.el b/lisp/calendar/calendar.el
index 38bcc887ec0..6fc18d05837 100644
--- a/lisp/calendar/calendar.el
+++ b/lisp/calendar/calendar.el
@@ -568,11 +568,20 @@ are
568 568
569Names can be capitalized or not, written in full (as specified by the 569Names can be capitalized or not, written in full (as specified by the
570variable `calendar-day-name-array'), or abbreviated (as specified by 570variable `calendar-day-name-array'), or abbreviated (as specified by
571`calendar-day-abbrev-array') with or without a period. To take effect, 571`calendar-day-abbrev-array') with or without a period.
572this variable should be set before the calendar package and its associates 572
573are loaded. Otherwise, use one of the functions `european-calendar' or 573Setting this variable directly does not take effect (if the
574`american-calendar' to force the appropriate update." 574calendar package is already loaded). Rather, use either
575\\[customize] or the functions `european-calendar' and
576`american-calendar'."
575 :type 'boolean 577 :type 'boolean
578 ;; Without :initialize (require 'calendar) throws an error because
579 ;; american-calendar is undefined at this point.
580 :initialize 'custom-initialize-default
581 :set (lambda (symbol value)
582 (if value
583 (european-calendar)
584 (american-calendar)))
576 :group 'diary) 585 :group 'diary)
577 586
578;;;###autoload 587;;;###autoload
@@ -1582,6 +1591,19 @@ See the documentation of that function for more information."
1582 (calendar-only-one-frame-setup arg)) 1591 (calendar-only-one-frame-setup arg))
1583 (t (calendar-basic-setup arg)))) 1592 (t (calendar-basic-setup arg))))
1584 1593
1594(autoload 'diary-view-entries "diary-lib"
1595 "Prepare and display a buffer with diary entries.
1596Searches your diary file for entries that match ARG days starting with
1597the date indicated by the cursor position in the displayed three-month
1598calendar."
1599 t)
1600
1601(autoload 'list-calendar-holidays "holidays"
1602 "Create a buffer containing the holidays for the current calendar window.
1603The holidays are those in the list `calendar-notable-days'. Returns t if any
1604holidays are found, nil if not."
1605 t)
1606
1585(defun calendar-basic-setup (&optional arg) 1607(defun calendar-basic-setup (&optional arg)
1586 "Display a three-month calendar in another window. 1608 "Display a three-month calendar in another window.
1587The three months appear side by side, with the current month in the middle 1609The three months appear side by side, with the current month in the middle
@@ -1649,13 +1671,6 @@ to be replaced by asterisks to highlight it whenever it is in the window."
1649 (list-calendar-holidays))) 1671 (list-calendar-holidays)))
1650 (run-hooks 'initial-calendar-window-hook)) 1672 (run-hooks 'initial-calendar-window-hook))
1651 1673
1652(autoload 'diary-view-entries "diary-lib"
1653 "Prepare and display a buffer with diary entries.
1654Searches your diary file for entries that match ARG days starting with
1655the date indicated by the cursor position in the displayed three-month
1656calendar."
1657 t)
1658
1659(autoload 'view-other-diary-entries "diary-lib" 1674(autoload 'view-other-diary-entries "diary-lib"
1660 "Prepare and display buffer of diary entries from an alternative diary file. 1675 "Prepare and display buffer of diary entries from an alternative diary file.
1661Searches for entries that match ARG days, starting with the date indicated 1676Searches for entries that match ARG days, starting with the date indicated
@@ -1930,12 +1945,6 @@ to the date indicated by point."
1930to the date indicated by point." 1945to the date indicated by point."
1931 t) 1946 t)
1932 1947
1933(autoload 'list-calendar-holidays "holidays"
1934 "Create a buffer containing the holidays for the current calendar window.
1935The holidays are those in the list `calendar-notable-days'. Returns t if any
1936holidays are found, nil if not."
1937 t)
1938
1939(autoload 'cal-tex-cursor-month "cal-tex" 1948(autoload 'cal-tex-cursor-month "cal-tex"
1940 "Make a buffer with LaTeX commands for the month cursor is on. 1949 "Make a buffer with LaTeX commands for the month cursor is on.
1941Optional prefix argument specifies number of months to be produced. 1950Optional prefix argument specifies number of months to be produced.
diff --git a/lisp/comint.el b/lisp/comint.el
index 5e223ef8f18..48b747065b5 100644
--- a/lisp/comint.el
+++ b/lisp/comint.el
@@ -650,7 +650,10 @@ Entry to this mode runs the hooks on `comint-mode-hook'."
650 (make-local-variable 'comint-process-echoes) 650 (make-local-variable 'comint-process-echoes)
651 (make-local-variable 'comint-file-name-chars) 651 (make-local-variable 'comint-file-name-chars)
652 (make-local-variable 'comint-file-name-quote-list) 652 (make-local-variable 'comint-file-name-quote-list)
653 (set (make-local-variable 'comint-accum-marker) (make-marker)) 653 (make-local-variable 'comint-accum-marker)
654 (setq comint-accum-marker (make-marker))
655 (make-local-variable 'font-lock-defaults)
656 (setq font-lock-defaults '(nil))
654 (add-hook 'change-major-mode-hook 'font-lock-defontify nil t) 657 (add-hook 'change-major-mode-hook 'font-lock-defontify nil t)
655 ;; This behavior is not useful in comint buffers, and is annoying 658 ;; This behavior is not useful in comint buffers, and is annoying
656 (set (make-local-variable 'next-line-add-newlines) nil)) 659 (set (make-local-variable 'next-line-add-newlines) nil))
diff --git a/lisp/cus-edit.el b/lisp/cus-edit.el
index 70552c604b7..ab3f7ec2b92 100644
--- a/lisp/cus-edit.el
+++ b/lisp/cus-edit.el
@@ -1521,13 +1521,18 @@ Otherwise use brackets."
1521 (widget-insert description)) 1521 (widget-insert description))
1522 (widget-insert (format ". 1522 (widget-insert (format ".
1523%s buttons; type RET or click mouse-1 to actuate one. 1523%s buttons; type RET or click mouse-1 to actuate one.
1524Editing a setting changes only the text in the buffer. 1524Editing a setting changes only the text in the buffer."
1525Use the setting's State button to set it or save changes in it.
1526Saving a change normally works by editing your Emacs init file.
1527See "
1528 (if custom-raised-buttons 1525 (if custom-raised-buttons
1529 "`Raised' text indicates" 1526 "`Raised' text indicates"
1530 "Square brackets indicate"))) 1527 "Square brackets indicate")))
1528 (if init-file-user
1529 (widget-insert "
1530Use the setting's State button to set it or save changes in it.
1531Saving a change normally works by editing your Emacs init file.")
1532 (widget-insert "
1533\nSince you started Emacs with `-q', which inhibits use of the
1534Emacs init file, you cannot save settings into the Emacs init file."))
1535 (widget-insert "\nSee ")
1531 (widget-create 'custom-manual 1536 (widget-create 'custom-manual
1532 :tag "Custom file" 1537 :tag "Custom file"
1533 "(emacs)Saving Customizations") 1538 "(emacs)Saving Customizations")
@@ -4152,6 +4157,8 @@ if only the first line of the docstring is shown."))
4152 recentf-exclude))) 4157 recentf-exclude)))
4153 (old-buffer (find-buffer-visiting filename))) 4158 (old-buffer (find-buffer-visiting filename)))
4154 (with-current-buffer (or old-buffer (find-file-noselect filename)) 4159 (with-current-buffer (or old-buffer (find-file-noselect filename))
4160 (unless (eq major-mode 'emacs-lisp-mode)
4161 (emacs-lisp-mode))
4155 (let ((inhibit-read-only t)) 4162 (let ((inhibit-read-only t))
4156 (custom-save-variables) 4163 (custom-save-variables)
4157 (custom-save-faces)) 4164 (custom-save-faces))
@@ -4548,6 +4555,13 @@ if that value is non-nil."
4548 (setq widget-documentation-face 'custom-documentation) 4555 (setq widget-documentation-face 'custom-documentation)
4549 (make-local-variable 'widget-button-face) 4556 (make-local-variable 'widget-button-face)
4550 (setq widget-button-face custom-button) 4557 (setq widget-button-face custom-button)
4558
4559 ;; We need this because of the "More" button on docstrings.
4560 ;; Otherwise clicking on "More" can push point offscreen, which
4561 ;; causes the window to recenter on point, which pushes the
4562 ;; newly-revealed docstring offscreen; which is annoying. -- cyd.
4563 (set (make-local-variable 'widget-button-click-moves-point) t)
4564
4551 (set (make-local-variable 'widget-button-pressed-face) custom-button-pressed) 4565 (set (make-local-variable 'widget-button-pressed-face) custom-button-pressed)
4552 (set (make-local-variable 'widget-mouse-face) custom-button-mouse) 4566 (set (make-local-variable 'widget-mouse-face) custom-button-mouse)
4553 4567
diff --git a/lisp/custom.el b/lisp/custom.el
index 104e63126f0..e69e233614a 100644
--- a/lisp/custom.el
+++ b/lisp/custom.el
@@ -210,11 +210,11 @@ The following keywords are meaningful:
210 `custom-initialize-reset'. 210 `custom-initialize-reset'.
211:set VALUE should be a function to set the value of the symbol. 211:set VALUE should be a function to set the value of the symbol.
212 It takes two arguments, the symbol to set and the value to 212 It takes two arguments, the symbol to set and the value to
213 give it. The default choice of function is `custom-set-default'. 213 give it. The default choice of function is `set-default'.
214:get VALUE should be a function to extract the value of symbol. 214:get VALUE should be a function to extract the value of symbol.
215 The function takes one argument, a symbol, and should return 215 The function takes one argument, a symbol, and should return
216 the current value for that symbol. The default choice of function 216 the current value for that symbol. The default choice of function
217 is `custom-default-value'. 217 is `default-value'.
218:require 218:require
219 VALUE should be a feature symbol. If you save a value 219 VALUE should be a feature symbol. If you save a value
220 for this option, then when your `.emacs' file loads the value, 220 for this option, then when your `.emacs' file loads the value,
diff --git a/lisp/delim-col.el b/lisp/delim-col.el
index 7433c728405..b89e979ff0b 100644
--- a/lisp/delim-col.el
+++ b/lisp/delim-col.el
@@ -5,10 +5,10 @@
5 5
6;; Author: Vinicius Jose Latorre <viniciusjl@ig.com.br> 6;; Author: Vinicius Jose Latorre <viniciusjl@ig.com.br>
7;; Maintainer: Vinicius Jose Latorre <viniciusjl@ig.com.br> 7;; Maintainer: Vinicius Jose Latorre <viniciusjl@ig.com.br>
8;; Time-stamp: <2006-02-06 13:37:10 ttn> 8;; Time-stamp: <2006/09/15 17:35:06 vinicius>
9;; Version: 2.1 9;; Version: 2.1
10;; Keywords: internal 10;; Keywords: internal
11;; X-URL: http://www.cpqd.com.br/~vinicius/emacs/ 11;; X-URL: http://www.emacswiki.org/cgi-bin/wiki/ViniciusJoseLatorre
12 12
13;; This file is part of GNU Emacs. 13;; This file is part of GNU Emacs.
14 14
diff --git a/lisp/dired.el b/lisp/dired.el
index 2974b386d0b..491ef261c11 100644
--- a/lisp/dired.el
+++ b/lisp/dired.el
@@ -2204,40 +2204,40 @@ instead of `dired-actual-switches'."
2204 (concat "\\`" (match-string 1 default-directory))))) 2204 (concat "\\`" (match-string 1 default-directory)))))
2205 (goto-char (point-min)) 2205 (goto-char (point-min))
2206 (setq dired-subdir-alist nil) 2206 (setq dired-subdir-alist nil)
2207 (while (and (re-search-forward dired-subdir-regexp nil t) 2207 (while (re-search-forward dired-subdir-regexp nil t)
2208 ;; Avoid taking a file name ending in a colon 2208 ;; Avoid taking a file name ending in a colon
2209 ;; as a subdir name. 2209 ;; as a subdir name.
2210 (not (save-excursion 2210 (unless (save-excursion
2211 (goto-char (match-beginning 0)) 2211 (goto-char (match-beginning 0))
2212 (beginning-of-line) 2212 (beginning-of-line)
2213 (forward-char 2) 2213 (forward-char 2)
2214 (save-match-data (looking-at dired-re-perms))))) 2214 (save-match-data (looking-at dired-re-perms)))
2215 (save-excursion 2215 (save-excursion
2216 (goto-char (match-beginning 1)) 2216 (goto-char (match-beginning 1))
2217 (setq new-dir-name 2217 (setq new-dir-name
2218 (buffer-substring-no-properties (point) (match-end 1)) 2218 (buffer-substring-no-properties (point) (match-end 1))
2219 new-dir-name 2219 new-dir-name
2220 (save-match-data 2220 (save-match-data
2221 (if (and R-ftp-base-dir-regex 2221 (if (and R-ftp-base-dir-regex
2222 (not (string= new-dir-name default-directory)) 2222 (not (string= new-dir-name default-directory))
2223 (string-match R-ftp-base-dir-regex new-dir-name)) 2223 (string-match R-ftp-base-dir-regex new-dir-name))
2224 (concat default-directory 2224 (concat default-directory
2225 (substring new-dir-name (match-end 0))) 2225 (substring new-dir-name (match-end 0)))
2226 (expand-file-name new-dir-name)))) 2226 (expand-file-name new-dir-name))))
2227 (delete-region (point) (match-end 1)) 2227 (delete-region (point) (match-end 1))
2228 (insert new-dir-name)) 2228 (insert new-dir-name))
2229 (setq count (1+ count)) 2229 (setq count (1+ count))
2230 (dired-alist-add-1 new-dir-name 2230 (dired-alist-add-1 new-dir-name
2231 ;; Place a sub directory boundary between lines. 2231 ;; Place a sub directory boundary between lines.
2232 (save-excursion 2232 (save-excursion
2233 (goto-char (match-beginning 0)) 2233 (goto-char (match-beginning 0))
2234 (beginning-of-line) 2234 (beginning-of-line)
2235 (point-marker)))) 2235 (point-marker)))))
2236 (if (and (> count 1) (interactive-p)) 2236 (if (and (> count 1) (interactive-p))
2237 (message "Buffer includes %d directories" count)) 2237 (message "Buffer includes %d directories" count)))
2238 ;; We don't need to sort it because it is in buffer order per 2238 ;; We don't need to sort it because it is in buffer order per
2239 ;; constructionem. Return new alist: 2239 ;; constructionem. Return new alist:
2240 dired-subdir-alist))) 2240 dired-subdir-alist))
2241 2241
2242(defun dired-alist-add-1 (dir new-marker) 2242(defun dired-alist-add-1 (dir new-marker)
2243 ;; Add new DIR at NEW-MARKER. Don't sort. 2243 ;; Add new DIR at NEW-MARKER. Don't sort.
diff --git a/lisp/emacs-lisp/cl-macs.el b/lisp/emacs-lisp/cl-macs.el
index 45ec97b3281..ab3bfeccfb3 100644
--- a/lisp/emacs-lisp/cl-macs.el
+++ b/lisp/emacs-lisp/cl-macs.el
@@ -2578,21 +2578,7 @@ surrounded by (block NAME ...).
2578 (cl-const-expr-val (nth 1 keys))))) 2578 (cl-const-expr-val (nth 1 keys)))))
2579 (cond ((eq test 'eq) (list 'memq a list)) 2579 (cond ((eq test 'eq) (list 'memq a list))
2580 ((eq test 'equal) (list 'member a list)) 2580 ((eq test 'equal) (list 'member a list))
2581 ((or (null keys) (eq test 'eql)) 2581 ((or (null keys) (eq test 'eql)) (list 'memql a list))
2582 (if (eq (cl-const-expr-p a) t)
2583 (list (if (floatp-safe (cl-const-expr-val a)) 'member 'memq)
2584 a list)
2585 (if (eq (cl-const-expr-p list) t)
2586 (let ((p (cl-const-expr-val list)) (mb nil) (mq nil))
2587 (if (not (cdr p))
2588 (and p (list 'eql a (list 'quote (car p))))
2589 (while p
2590 (if (floatp-safe (car p)) (setq mb t)
2591 (or (integerp (car p)) (symbolp (car p)) (setq mq t)))
2592 (setq p (cdr p)))
2593 (if (not mb) (list 'memq a list)
2594 (if (not mq) (list 'member a list) form))))
2595 form)))
2596 (t form)))) 2582 (t form))))
2597 2583
2598(define-compiler-macro assoc* (&whole form a list &rest keys) 2584(define-compiler-macro assoc* (&whole form a list &rest keys)
diff --git a/lisp/emacs-lisp/cl.el b/lisp/emacs-lisp/cl.el
index 53bec05ddc3..3399f7e7b20 100644
--- a/lisp/emacs-lisp/cl.el
+++ b/lisp/emacs-lisp/cl.el
@@ -159,9 +159,7 @@ an element already on the list.
159\n(fn X PLACE [KEYWORD VALUE]...)" 159\n(fn X PLACE [KEYWORD VALUE]...)"
160 (if (symbolp place) 160 (if (symbolp place)
161 (if (null keys) 161 (if (null keys)
162 `(let ((pushnew-internal ,place)) 162 `(if (memql ,x ,place) ,place (setq ,place (cons ,x ,place)))
163 (add-to-list 'pushnew-internal ,x nil 'eql)
164 (setq ,place pushnew-internal))
165 (list 'setq place (list* 'adjoin x place keys))) 163 (list 'setq place (list* 'adjoin x place keys)))
166 (list* 'callf2 'adjoin x place keys))) 164 (list* 'callf2 'adjoin x place keys)))
167 165
diff --git a/lisp/emacs-lisp/find-func.el b/lisp/emacs-lisp/find-func.el
index 50b7d8dc9ef..42c5d3183e7 100644
--- a/lisp/emacs-lisp/find-func.el
+++ b/lisp/emacs-lisp/find-func.el
@@ -64,7 +64,7 @@
64 (concat 64 (concat
65 "^\\s-*(\\(def\\(ine-skeleton\\|ine-generic-mode\\|ine-derived-mode\\|\ 65 "^\\s-*(\\(def\\(ine-skeleton\\|ine-generic-mode\\|ine-derived-mode\\|\
66ine\\(?:-global\\)?-minor-mode\\|ine-compilation-mode\\|un-cvs-mode\\|\ 66ine\\(?:-global\\)?-minor-mode\\|ine-compilation-mode\\|un-cvs-mode\\|\
67foo\\|[^cfgv]\\(\\w\\|\\s_\\)+\\*?\\)\\|easy-mmode-define-[a-z-]+\\|easy-menu-define\\|\ 67foo\\|[^icfgv]\\(\\w\\|\\s_\\)+\\*?\\)\\|easy-mmode-define-[a-z-]+\\|easy-menu-define\\|\
68menu-bar-make-toggle\\)" 68menu-bar-make-toggle\\)"
69 find-function-space-re 69 find-function-space-re
70 "\\('\\|\(quote \\)?%s\\(\\s-\\|$\\|\(\\|\)\\)") 70 "\\('\\|\(quote \\)?%s\\(\\s-\\|$\\|\(\\|\)\\)")
diff --git a/lisp/emacs-lisp/timer.el b/lisp/emacs-lisp/timer.el
index 54c5aff305a..0c66a207351 100644
--- a/lisp/emacs-lisp/timer.el
+++ b/lisp/emacs-lisp/timer.el
@@ -300,7 +300,11 @@ and idle timers such as are scheduled by `run-with-idle-timer'."
300 "Third-to-last timer that was run.") 300 "Third-to-last timer that was run.")
301 301
302(defvar timer-max-repeats 10 302(defvar timer-max-repeats 10
303 "*Maximum number of times to repeat a timer, if real time jumps.") 303 "*Maximum number of times to repeat a timer, if many repeats are delayed.
304Timer invocations can be delayed because Emacs is suspended or busy,
305or because the system's time changes. If such an occurrence makes it
306appear that many invocations are overdue, this variable controls
307how many will really happen.")
304 308
305(defun timer-until (timer time) 309(defun timer-until (timer time)
306 "Calculate number of seconds from when TIMER will run, until TIME. 310 "Calculate number of seconds from when TIMER will run, until TIME.
diff --git a/lisp/ffap.el b/lisp/ffap.el
index 5ff63bfdec2..bd0c213ba6e 100644
--- a/lisp/ffap.el
+++ b/lisp/ffap.el
@@ -954,7 +954,7 @@ If t, `ffap-tex-init' will initialize this when needed.")
954 (substring name 2)))) 954 (substring name 2))))
955 955
956(defvar ffap-rfc-path 956(defvar ffap-rfc-path
957 (concat (ffap-host-to-filename "ds.internic.net") "/rfc/rfc%s.txt")) 957 (concat (ffap-host-to-filename "ftp.rfc-editor.org") "/in-notes/rfc%s.txt"))
958 958
959(defun ffap-rfc (name) 959(defun ffap-rfc (name)
960 (format ffap-rfc-path 960 (format ffap-rfc-path
diff --git a/lisp/files.el b/lisp/files.el
index 642bd2d9372..3e2cf2ee92d 100644
--- a/lisp/files.el
+++ b/lisp/files.el
@@ -1117,13 +1117,15 @@ expand wildcards (if any) and visit multiple files."
1117 (mapcar 'switch-to-buffer (cdr value)))) 1117 (mapcar 'switch-to-buffer (cdr value))))
1118 (switch-to-buffer-other-frame value)))) 1118 (switch-to-buffer-other-frame value))))
1119 1119
1120(defun find-file-existing (filename &optional wildcards) 1120(defun find-file-existing (filename)
1121 "Edit the existing file FILENAME. 1121 "Edit the existing file FILENAME.
1122Like \\[find-file] but only allow a file that exists." 1122Like \\[find-file] but only allow a file that exists, and do not allow
1123 (interactive (find-file-read-args "Find existing file: " t)) 1123file names with wildcards."
1124 (unless (file-exists-p filename) (error "%s does not exist" filename)) 1124 (interactive (nbutlast (find-file-read-args "Find existing file: " t)))
1125 (find-file filename wildcards) 1125 (if (and (not (interactive-p)) (not (file-exists-p filename)))
1126 (current-buffer)) 1126 (error "%s does not exist" filename)
1127 (find-file filename)
1128 (current-buffer)))
1127 1129
1128(defun find-file-read-only (filename &optional wildcards) 1130(defun find-file-read-only (filename &optional wildcards)
1129 "Edit file FILENAME but don't allow changes. 1131 "Edit file FILENAME but don't allow changes.
@@ -1365,7 +1367,7 @@ If there is no such live buffer, return nil."
1365 (number (nthcdr 10 attributes)) 1367 (number (nthcdr 10 attributes))
1366 (list (buffer-list)) found) 1368 (list (buffer-list)) found)
1367 (and buffer-file-numbers-unique 1369 (and buffer-file-numbers-unique
1368 number 1370 (car-safe number) ;Make sure the inode is not just nil.
1369 (while (and (not found) list) 1371 (while (and (not found) list)
1370 (with-current-buffer (car list) 1372 (with-current-buffer (car list)
1371 (if (and buffer-file-name 1373 (if (and buffer-file-name
@@ -3729,7 +3731,13 @@ This requires the external program `diff' to be in your `exec-path'."
3729 ;; Return nil to ask about BUF again. 3731 ;; Return nil to ask about BUF again.
3730 nil) 3732 nil)
3731 "view this file") 3733 "view this file")
3732 (?d diff-buffer-with-file 3734 (?d (lambda (buf)
3735 (save-window-excursion
3736 (diff-buffer-with-file buf))
3737 (view-buffer (get-buffer-create "*Diff*")
3738 (lambda (ignore) (exit-recursive-edit)))
3739 (recursive-edit)
3740 nil)
3733 "view changes in file")) 3741 "view changes in file"))
3734 "ACTION-ALIST argument used in call to `map-y-or-n-p'.") 3742 "ACTION-ALIST argument used in call to `map-y-or-n-p'.")
3735 3743
diff --git a/lisp/font-lock.el b/lisp/font-lock.el
index 60a4b3c00b1..1bae9cba362 100644
--- a/lisp/font-lock.el
+++ b/lisp/font-lock.el
@@ -1168,7 +1168,12 @@ what properties to clear before refontifying a region.")
1168 ;; number of lines. 1168 ;; number of lines.
1169 ;; (setq beg (progn (goto-char beg) (line-beginning-position)) 1169 ;; (setq beg (progn (goto-char beg) (line-beginning-position))
1170 ;; end (progn (goto-char end) (line-beginning-position 2))) 1170 ;; end (progn (goto-char end) (line-beginning-position 2)))
1171 ) 1171 (unless (eq end (point-max))
1172 ;; Rounding up to a whole number of lines should include the
1173 ;; line right after `end'. Typical case: the first char of
1174 ;; the line was deleted. Or a \n was inserted in the middle
1175 ;; of a line.
1176 (setq end (1+ end))))
1172 (font-lock-fontify-region beg end))))) 1177 (font-lock-fontify-region beg end)))))
1173 1178
1174(defvar jit-lock-start) (defvar jit-lock-end) 1179(defvar jit-lock-start) (defvar jit-lock-end)
@@ -1205,9 +1210,17 @@ This function does 2 things:
1205 (setq beg (or (previous-single-property-change 1210 (setq beg (or (previous-single-property-change
1206 beg 'font-lock-multiline) 1211 beg 'font-lock-multiline)
1207 (point-min)))) 1212 (point-min))))
1208 (setq end (or (text-property-any end (point-max) 1213 (when (< end (point-max))
1209 'font-lock-multiline nil) 1214 (setq end
1210 (point-max))) 1215 (if (get-text-property end 'font-lock-multiline)
1216 (or (text-property-any end (point-max)
1217 'font-lock-multiline nil)
1218 (point-max))
1219 ;; Rounding up to a whole number of lines should include the
1220 ;; line right after `end'. Typical case: the first char of
1221 ;; the line was deleted. Or a \n was inserted in the middle
1222 ;; of a line.
1223 (1+ end))))
1211 ;; Finally, pre-enlarge the region to a whole number of lines, to try 1224 ;; Finally, pre-enlarge the region to a whole number of lines, to try
1212 ;; and anticipate what font-lock-default-fontify-region will do, so as to 1225 ;; and anticipate what font-lock-default-fontify-region will do, so as to
1213 ;; avoid double-redisplay. 1226 ;; avoid double-redisplay.
@@ -1217,11 +1230,11 @@ This function does 2 things:
1217 (when (memq 'font-lock-extend-region-wholelines 1230 (when (memq 'font-lock-extend-region-wholelines
1218 font-lock-extend-region-functions) 1231 font-lock-extend-region-functions)
1219 (goto-char beg) 1232 (goto-char beg)
1220 (forward-line 0) 1233 (setq jit-lock-start (min jit-lock-start (line-beginning-position)))
1221 (setq jit-lock-start (min jit-lock-start (point)))
1222 (goto-char end) 1234 (goto-char end)
1223 (forward-line 1) 1235 (setq jit-lock-end
1224 (setq jit-lock-end (max jit-lock-end (point))))))) 1236 (max jit-lock-end
1237 (if (bolp) (point) (line-beginning-position 2))))))))
1225 1238
1226(defun font-lock-fontify-block (&optional arg) 1239(defun font-lock-fontify-block (&optional arg)
1227 "Fontify some lines the way `font-lock-fontify-buffer' would. 1240 "Fontify some lines the way `font-lock-fontify-buffer' would.
@@ -1646,9 +1659,11 @@ If SYNTACTIC-KEYWORDS is non-nil, it means these keywords are used for
1646 (cons t (cons keywords 1659 (cons t (cons keywords
1647 (mapcar 'font-lock-compile-keyword keywords)))) 1660 (mapcar 'font-lock-compile-keyword keywords))))
1648 (if (and (not syntactic-keywords) 1661 (if (and (not syntactic-keywords)
1649 (eq (or syntax-begin-function 1662 (let ((beg-function
1650 font-lock-beginning-of-syntax-function) 1663 (or font-lock-beginning-of-syntax-function
1651 'beginning-of-defun) 1664 syntax-begin-function)))
1665 (or (eq beg-function 'beginning-of-defun)
1666 (get beg-function 'font-lock-syntax-paren-check)))
1652 (not beginning-of-defun-function)) 1667 (not beginning-of-defun-function))
1653 ;; Try to detect when a string or comment contains something that 1668 ;; Try to detect when a string or comment contains something that
1654 ;; looks like a defun and would thus confuse font-lock. 1669 ;; looks like a defun and would thus confuse font-lock.
diff --git a/lisp/frame.el b/lisp/frame.el
index 8f7fdf1fd5c..9aba8c54089 100644
--- a/lisp/frame.el
+++ b/lisp/frame.el
@@ -681,7 +681,7 @@ the user during startup."
681 (nreverse frame-initial-geometry-arguments)) 681 (nreverse frame-initial-geometry-arguments))
682 (cdr param-list)) 682 (cdr param-list))
683 683
684(defcustom focus-follows-mouse t 684(defcustom focus-follows-mouse (not (eq window-system 'mac))
685 "*Non-nil if window system changes focus when you move the mouse. 685 "*Non-nil if window system changes focus when you move the mouse.
686You should set this variable to tell Emacs how your window manager 686You should set this variable to tell Emacs how your window manager
687handles focus, since there is no way in general for Emacs to find out 687handles focus, since there is no way in general for Emacs to find out
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog
index dbd88f32180..ad3c6ad919e 100644
--- a/lisp/gnus/ChangeLog
+++ b/lisp/gnus/ChangeLog
@@ -1,3 +1,16 @@
12006-09-28 Reiner Steib <Reiner.Steib@gmx.de>
2
3 * gmm-utils.el (gmm): Adjust custom version.
4
5 * mm-util.el (mm-charset-override-alist, mm-charset-eval-alist): Adjust
6 custom version.
7
8 * gnus-draft.el (gnus-draft-mode): Don't call `mml-mode'.
9
102006-09-25 Chong Yidong <cyd@stupidchicken.com>
11
12 * gnus-demon.el (gnus-demon): Use with-local-quit to avoid hangs.
13
12006-09-19 Andreas Seltenreich <uwi7@rz.uni-karlsruhe.de> 142006-09-19 Andreas Seltenreich <uwi7@rz.uni-karlsruhe.de>
2 15
3 * nnslashdot.el (nnslashdot-request-article): Update end-of-article 16 * nnslashdot.el (nnslashdot-request-article): Update end-of-article
diff --git a/lisp/gnus/gmm-utils.el b/lisp/gnus/gmm-utils.el
index f314d0e81d7..e773aa3bfac 100644
--- a/lisp/gnus/gmm-utils.el
+++ b/lisp/gnus/gmm-utils.el
@@ -35,7 +35,7 @@
35(defgroup gmm nil 35(defgroup gmm nil
36 "Utility functions for Gnus, Message and MML" 36 "Utility functions for Gnus, Message and MML"
37 :prefix "gmm-" 37 :prefix "gmm-"
38 :version "23.0" ;; No Gnus 38 :version "22.1" ;; Gnus 5.10.9
39 :group 'lisp) 39 :group 'lisp)
40 40
41;; Helper functions from `gnus-utils.el': gmm-verbose, gmm-message, gmm-error 41;; Helper functions from `gnus-utils.el': gmm-verbose, gmm-message, gmm-error
diff --git a/lisp/gnus/gnus-demon.el b/lisp/gnus/gnus-demon.el
index 8df3a3b0e70..bf35f1ddee7 100644
--- a/lisp/gnus/gnus-demon.el
+++ b/lisp/gnus/gnus-demon.el
@@ -218,7 +218,7 @@ time Emacs has been idle for IDLE `gnus-demon-timestep's."
218 (< idle gnus-demon-idle-time)) ; Idle timed out. 218 (< idle gnus-demon-idle-time)) ; Idle timed out.
219 (t (< 0 gnus-demon-idle-time)))) ; Or just need to be idle. 219 (t (< 0 gnus-demon-idle-time)))) ; Or just need to be idle.
220 ;; So we call the handler. 220 ;; So we call the handler.
221 (progn 221 (with-local-quit
222 (ignore-errors (funcall (car handler))) 222 (ignore-errors (funcall (car handler)))
223 ;; And reset the timer. 223 ;; And reset the timer.
224 (setcar (nthcdr 1 handler) 224 (setcar (nthcdr 1 handler)
@@ -232,14 +232,15 @@ time Emacs has been idle for IDLE `gnus-demon-timestep's."
232 (gnus-demon-is-idle-p)) 232 (gnus-demon-is-idle-p))
233 ;; We want to call this handler each and every time that 233 ;; We want to call this handler each and every time that
234 ;; Emacs is idle. 234 ;; Emacs is idle.
235 (ignore-errors (funcall (car handler)))) 235 (with-local-quit
236 (ignore-errors (funcall (car handler)))))
236 (t 237 (t
237 ;; We want to call this handler only if Emacs has been idle 238 ;; We want to call this handler only if Emacs has been idle
238 ;; for a specified number of timesteps. 239 ;; for a specified number of timesteps.
239 (and (not (memq (car handler) gnus-demon-idle-has-been-called)) 240 (and (not (memq (car handler) gnus-demon-idle-has-been-called))
240 (< idle gnus-demon-idle-time) 241 (< idle gnus-demon-idle-time)
241 (gnus-demon-is-idle-p) 242 (gnus-demon-is-idle-p)
242 (progn 243 (with-local-quit
243 (ignore-errors (funcall (car handler))) 244 (ignore-errors (funcall (car handler)))
244 ;; Make sure the handler won't be called once more in 245 ;; Make sure the handler won't be called once more in
245 ;; this idle-cycle. 246 ;; this idle-cycle.
diff --git a/lisp/gnus/gnus-draft.el b/lisp/gnus/gnus-draft.el
index 125e5bebd49..013be410632 100644
--- a/lisp/gnus/gnus-draft.el
+++ b/lisp/gnus/gnus-draft.el
@@ -76,7 +76,6 @@
76 (when (gnus-visual-p 'draft-menu 'menu) 76 (when (gnus-visual-p 'draft-menu 'menu)
77 (gnus-draft-make-menu-bar)) 77 (gnus-draft-make-menu-bar))
78 (gnus-add-minor-mode 'gnus-draft-mode " Draft" gnus-draft-mode-map) 78 (gnus-add-minor-mode 'gnus-draft-mode " Draft" gnus-draft-mode-map)
79 (mml-mode)
80 (gnus-run-hooks 'gnus-draft-mode-hook)))) 79 (gnus-run-hooks 'gnus-draft-mode-hook))))
81 80
82;;; Commands 81;;; Commands
diff --git a/lisp/gnus/mm-util.el b/lisp/gnus/mm-util.el
index 22bbecf7e39..8778d0a4b57 100644
--- a/lisp/gnus/mm-util.el
+++ b/lisp/gnus/mm-util.el
@@ -253,7 +253,7 @@ superset of iso-8859-1."
253 :tag "Other options" 253 :tag "Other options"
254 (cons (symbol :tag "From charset") 254 (cons (symbol :tag "From charset")
255 (symbol :tag "To charset")))) 255 (symbol :tag "To charset"))))
256 :version "23.0" ;; No Gnus 256 :version "22.1" ;; Gnus 5.10.9
257 :group 'mime) 257 :group 'mime)
258 258
259(defcustom mm-charset-eval-alist 259(defcustom mm-charset-eval-alist
@@ -270,7 +270,7 @@ If an article is encoded in an unknown CHARSET, FORM is
270evaluated. This allows to load additional libraries providing 270evaluated. This allows to load additional libraries providing
271charsets on demand. If supported by your Emacs version, you 271charsets on demand. If supported by your Emacs version, you
272could use `autoload-coding-system' here." 272could use `autoload-coding-system' here."
273 :version "23.0" ;; No Gnus 273 :version "22.1" ;; Gnus 5.10.9
274 :type '(list (set :inline t 274 :type '(list (set :inline t
275 (const (windows-1250 . (mm-codepage-setup 1250 t))) 275 (const (windows-1250 . (mm-codepage-setup 1250 t)))
276 (const (windows-1251 . (mm-codepage-setup 1251 t))) 276 (const (windows-1251 . (mm-codepage-setup 1251 t)))
diff --git a/lisp/help.el b/lisp/help.el
index fafe6e57ed0..b79e028b633 100644
--- a/lisp/help.el
+++ b/lisp/help.el
@@ -571,11 +571,9 @@ temporarily enables it to allow getting help on disabled items and buttons."
571 ;; down-events on scroll bars and mode lines: the actual 571 ;; down-events on scroll bars and mode lines: the actual
572 ;; event then is in the second element of the vector. 572 ;; event then is in the second element of the vector.
573 (and (vectorp key) 573 (and (vectorp key)
574 (or (and (eventp (aref key 0)) 574 (let ((last-idx (1- (length key))))
575 (memq 'down (event-modifiers (aref key 0)))) 575 (and (eventp (aref key last-idx))
576 (and (> (length key) 1) 576 (memq 'down (event-modifiers (aref key last-idx)))))
577 (eventp (aref key 1))
578 (memq 'down (event-modifiers (aref key 1)))))
579 (read-event)) 577 (read-event))
580 (list 578 (list
581 key 579 key
@@ -643,11 +641,21 @@ temporarily enables it to allow getting help on disabled items and buttons."
643 (list 641 (list
644 key 642 key
645 (prefix-numeric-value current-prefix-arg) 643 (prefix-numeric-value current-prefix-arg)
646 ;; If KEY is a down-event, read the corresponding up-event 644 ;; If KEY is a down-event, read and discard the
647 ;; and use it as the third argument. 645 ;; corresponding up-event. Note that there are also
646 ;; down-events on scroll bars and mode lines: the actual
647 ;; event then is in the second element of the vector.
648 (and (vectorp key) 648 (and (vectorp key)
649 (let ((last-idx (1- (length key))))
650 (and (eventp (aref key last-idx))
651 (memq 'down (event-modifiers (aref key last-idx)))))
649 (or (and (eventp (aref key 0)) 652 (or (and (eventp (aref key 0))
650 (memq 'down (event-modifiers (aref key 0)))) 653 (memq 'down (event-modifiers (aref key 0)))
654 ;; However, for the C-down-mouse-2 popup
655 ;; menu, there is no subsequent up-event. In
656 ;; this case, the up-event is the next
657 ;; element in the supplied vector.
658 (= (length key) 1))
651 (and (> (length key) 1) 659 (and (> (length key) 1)
652 (eventp (aref key 1)) 660 (eventp (aref key 1))
653 (memq 'down (event-modifiers (aref key 1))))) 661 (memq 'down (event-modifiers (aref key 1)))))
diff --git a/lisp/ibuf-ext.el b/lisp/ibuf-ext.el
index 292e158c097..4ab7b9eda41 100644
--- a/lisp/ibuf-ext.el
+++ b/lisp/ibuf-ext.el
@@ -370,7 +370,11 @@ With numeric ARG, enable auto-update if and only if ARG is positive."
370 "Evaluate FORM in each of the buffers. 370 "Evaluate FORM in each of the buffers.
371Does not display the buffer during evaluation. See 371Does not display the buffer during evaluation. See
372`ibuffer-do-view-and-eval' for that." 372`ibuffer-do-view-and-eval' for that."
373 (:interactive "xEval in buffers (form): " 373 (:interactive
374 (list
375 (read-from-minibuffer
376 "Eval in buffers (form): "
377 nil read-expression-map t 'read-expression-history))
374 :opstring "evaluated in" 378 :opstring "evaluated in"
375 :modifier-p :maybe) 379 :modifier-p :maybe)
376 (eval form)) 380 (eval form))
@@ -379,7 +383,11 @@ Does not display the buffer during evaluation. See
379(define-ibuffer-op view-and-eval (form) 383(define-ibuffer-op view-and-eval (form)
380 "Evaluate FORM while displaying each of the marked buffers. 384 "Evaluate FORM while displaying each of the marked buffers.
381To evaluate a form without viewing the buffer, see `ibuffer-do-eval'." 385To evaluate a form without viewing the buffer, see `ibuffer-do-eval'."
382 (:interactive "xEval viewing buffers (form): " 386 (:interactive
387 (list
388 (read-from-minibuffer
389 "Eval viewing in buffers (form): "
390 nil read-expression-map t 'read-expression-history))
383 :opstring "evaluated in" 391 :opstring "evaluated in"
384 :complex t 392 :complex t
385 :modifier-p :maybe) 393 :modifier-p :maybe)
diff --git a/lisp/icomplete.el b/lisp/icomplete.el
index f53ef7c91d1..6687c13275b 100644
--- a/lisp/icomplete.el
+++ b/lisp/icomplete.el
@@ -157,6 +157,12 @@ is minibuffer."
157 (< (length x) (length y)))) 157 (< (length x) (length y))))
158 ", ") 158 ", ")
159 ">")))))) 159 ">"))))))
160;;;_ = icomplete-with-completion-tables
161(defvar icomplete-with-completion-tables '(internal-complete-buffer)
162 "Specialized completion tables with which icomplete should operate.
163
164Icomplete does not operate with any specialized completion tables
165except those on this list.")
160 166
161;;;_ > icomplete-mode (&optional prefix) 167;;;_ > icomplete-mode (&optional prefix)
162;;;###autoload 168;;;###autoload
@@ -184,8 +190,9 @@ Conditions are:
184 (and (window-minibuffer-p (selected-window)) 190 (and (window-minibuffer-p (selected-window))
185 (not executing-kbd-macro) 191 (not executing-kbd-macro)
186 minibuffer-completion-table 192 minibuffer-completion-table
187 ;; (or minibuffer-completing-file-name 193 (or (not (functionp minibuffer-completion-table))
188 (not (functionp minibuffer-completion-table)))) ;; ) 194 (member minibuffer-completion-table
195 icomplete-with-completion-tables))))
189 196
190;;;_ > icomplete-minibuffer-setup () 197;;;_ > icomplete-minibuffer-setup ()
191(defun icomplete-minibuffer-setup () 198(defun icomplete-minibuffer-setup ()
diff --git a/lisp/ido.el b/lisp/ido.el
index 432347717f5..b68a4622ef8 100644
--- a/lisp/ido.el
+++ b/lisp/ido.el
@@ -2224,7 +2224,6 @@ If INITIAL is non-nil, it specifies the initial input string."
2224 (let ((ido-current-directory (ido-expand-directory default)) 2224 (let ((ido-current-directory (ido-expand-directory default))
2225 (ido-context-switch-command switch-cmd) 2225 (ido-context-switch-command switch-cmd)
2226 ido-directory-nonreadable ido-directory-too-big 2226 ido-directory-nonreadable ido-directory-too-big
2227 (minibuffer-completing-file-name t)
2228 filename) 2227 filename)
2229 2228
2230 (if (or (not ido-mode) (ido-is-slow-ftp-host)) 2229 (if (or (not ido-mode) (ido-is-slow-ftp-host))
@@ -2268,9 +2267,10 @@ If INITIAL is non-nil, it specifies the initial input string."
2268 2267
2269 (unless filename 2268 (unless filename
2270 (setq ido-saved-vc-hb vc-handled-backends) 2269 (setq ido-saved-vc-hb vc-handled-backends)
2271 (setq filename (ido-read-internal item 2270 (let ((minibuffer-completing-file-name t))
2272 (or prompt "Find file: ") 2271 (setq filename (ido-read-internal item
2273 'ido-file-history nil nil initial))) 2272 (or prompt "Find file: ")
2273 'ido-file-history nil nil initial))))
2274 2274
2275 ;; Choose the file name: either the text typed in, or the head 2275 ;; Choose the file name: either the text typed in, or the head
2276 ;; of the list of matches 2276 ;; of the list of matches
diff --git a/lisp/isearch.el b/lisp/isearch.el
index b3455b13ab8..0d253211da4 100644
--- a/lisp/isearch.el
+++ b/lisp/isearch.el
@@ -1803,8 +1803,6 @@ Isearch mode."
1803 ((eq char ?|) (isearch-fallback t nil t))) 1803 ((eq char ?|) (isearch-fallback t nil t)))
1804 1804
1805 ;; Append the char to the search string, update the message and re-search. 1805 ;; Append the char to the search string, update the message and re-search.
1806 (if (char-table-p translation-table-for-input)
1807 (setq char (or (aref translation-table-for-input char) char)))
1808 (isearch-process-search-string 1806 (isearch-process-search-string
1809 (char-to-string char) 1807 (char-to-string char)
1810 (if (>= char ?\200) 1808 (if (>= char ?\200)
@@ -1989,6 +1987,36 @@ Can be changed via `isearch-search-fun-function' for special needs."
1989 (t 1987 (t
1990 (if isearch-forward 'search-forward 'search-backward))))) 1988 (if isearch-forward 'search-forward 'search-backward)))))
1991 1989
1990(defun isearch-search-string (string bound noerror)
1991 ;; Search for the first occurance of STRING or its translation. If
1992 ;; found, move point to the end of the occurance, update
1993 ;; isearch-match-beg and isearch-match-end, and return point.
1994 (let ((func (isearch-search-fun))
1995 (len (length string))
1996 pos1 pos2)
1997 (setq pos1 (save-excursion (funcall func string bound noerror)))
1998 (if (and (char-table-p translation-table-for-input)
1999 (> (string-bytes string) len))
2000 (let (translated match-data)
2001 (dotimes (i len)
2002 (let ((x (aref translation-table-for-input (aref string i))))
2003 (when x
2004 (or translated (setq translated (copy-sequence string)))
2005 (aset translated i x))))
2006 (when translated
2007 (save-match-data
2008 (save-excursion
2009 (if (setq pos2 (funcall func translated bound noerror))
2010 (setq match-data (match-data t)))))
2011 (when (and pos2
2012 (or (not pos1)
2013 (if isearch-forward (< pos2 pos1) (> pos2 pos1))))
2014 (setq pos1 pos2)
2015 (set-match-data match-data)))))
2016 (if pos1
2017 (goto-char pos1))
2018 pos1))
2019
1992(defun isearch-search () 2020(defun isearch-search ()
1993 ;; Do the search with the current search string. 2021 ;; Do the search with the current search string.
1994 (isearch-message nil t) 2022 (isearch-message nil t)
@@ -2004,9 +2032,7 @@ Can be changed via `isearch-search-fun-function' for special needs."
2004 (setq isearch-error nil) 2032 (setq isearch-error nil)
2005 (while retry 2033 (while retry
2006 (setq isearch-success 2034 (setq isearch-success
2007 (funcall 2035 (isearch-search-string isearch-string nil t))
2008 (isearch-search-fun)
2009 isearch-string nil t))
2010 ;; Clear RETRY unless we matched some invisible text 2036 ;; Clear RETRY unless we matched some invisible text
2011 ;; and we aren't supposed to do that. 2037 ;; and we aren't supposed to do that.
2012 (if (or (eq search-invisible t) 2038 (if (or (eq search-invisible t)
@@ -2349,7 +2375,7 @@ Attempt to do the search exactly the way the pending isearch would."
2349 (isearch-regexp isearch-lazy-highlight-regexp) 2375 (isearch-regexp isearch-lazy-highlight-regexp)
2350 (search-spaces-regexp search-whitespace-regexp)) 2376 (search-spaces-regexp search-whitespace-regexp))
2351 (condition-case nil 2377 (condition-case nil
2352 (funcall (isearch-search-fun) 2378 (isearch-search-string
2353 isearch-lazy-highlight-last-string 2379 isearch-lazy-highlight-last-string
2354 (if isearch-forward 2380 (if isearch-forward
2355 (min (or isearch-lazy-highlight-end-limit (point-max)) 2381 (min (or isearch-lazy-highlight-end-limit (point-max))
diff --git a/lisp/jit-lock.el b/lisp/jit-lock.el
index 4cbc7da4511..e049579d463 100644
--- a/lisp/jit-lock.el
+++ b/lisp/jit-lock.el
@@ -349,7 +349,7 @@ Defaults to the whole buffer. END can be out of bounds."
349 ;; Fontify chunks beginning at START. The end of a 349 ;; Fontify chunks beginning at START. The end of a
350 ;; chunk is either `end', or the start of a region 350 ;; chunk is either `end', or the start of a region
351 ;; before `end' that has already been fontified. 351 ;; before `end' that has already been fontified.
352 (while start 352 (while (and start (< start end))
353 ;; Determine the end of this chunk. 353 ;; Determine the end of this chunk.
354 (setq next (or (text-property-any start end 'fontified t) 354 (setq next (or (text-property-any start end 'fontified t)
355 end)) 355 end))
@@ -397,16 +397,18 @@ Defaults to the whole buffer. END can be out of bounds."
397 ;; eagerly extend the refontified region with 397 ;; eagerly extend the refontified region with
398 ;; jit-lock-after-change-extend-region-functions. 398 ;; jit-lock-after-change-extend-region-functions.
399 (when (< start orig-start) 399 (when (< start orig-start)
400 (run-with-timer 0 nil 'jit-lock-fontify-again 400 (run-with-timer 0 nil 'jit-lock-force-redisplay
401 (current-buffer) start orig-start)) 401 (current-buffer) start orig-start))
402 402
403 ;; Find the start of the next chunk, if any. 403 ;; Find the start of the next chunk, if any.
404 (setq start (text-property-any next end 'fontified nil)))))))) 404 (setq start (text-property-any next end 'fontified nil))))))))
405 405
406(defun jit-lock-fontify-again (buf start end) 406(defun jit-lock-force-redisplay (buf start end)
407 "Fontify in buffer BUF from START to END." 407 "Force the display engine to re-render buffer BUF from START to END."
408 (with-current-buffer buf 408 (with-current-buffer buf
409 (with-buffer-prepared-for-jit-lock 409 (with-buffer-prepared-for-jit-lock
410 ;; Don't cause refontification (it's already been done), but just do
411 ;; some random buffer change, so as to force redisplay.
410 (put-text-property start end 'fontified t)))) 412 (put-text-property start end 'fontified t))))
411 413
412 414
diff --git a/lisp/lpr.el b/lisp/lpr.el
index dd39eb24349..2c2e8c872c4 100644
--- a/lisp/lpr.el
+++ b/lisp/lpr.el
@@ -141,7 +141,7 @@ See definition of `print-region-1' for calling conventions."
141;; Berkeley systems support -F, and GNU pr supports both -f and -F, 141;; Berkeley systems support -F, and GNU pr supports both -f and -F,
142;; So it looks like -F is a better default. 142;; So it looks like -F is a better default.
143(defcustom lpr-page-header-switches '("-h %s" "-F") 143(defcustom lpr-page-header-switches '("-h %s" "-F")
144 "List of strings to use as options for the page-header-generating program. 144 "*List of strings to use as options for the page-header-generating program.
145If `%s' appears in one of the strings, it is substituted by the page title. 145If `%s' appears in one of the strings, it is substituted by the page title.
146The variable `lpr-page-header-program' specifies the program to use." 146The variable `lpr-page-header-program' specifies the program to use."
147 :type '(repeat string) 147 :type '(repeat string)
diff --git a/lisp/mail/smtpmail.el b/lisp/mail/smtpmail.el
index 3fc0477a0a0..9557844a32a 100644
--- a/lisp/mail/smtpmail.el
+++ b/lisp/mail/smtpmail.el
@@ -541,7 +541,7 @@ This is relative to `smtpmail-queue-dir'.")
541 (decoded (base64-decode-string challenge)) 541 (decoded (base64-decode-string challenge))
542 (hash (rfc2104-hash 'md5 64 16 passwd decoded)) 542 (hash (rfc2104-hash 'md5 64 16 passwd decoded))
543 (response (concat (smtpmail-cred-user cred) " " hash)) 543 (response (concat (smtpmail-cred-user cred) " " hash))
544 (encoded (base64-encode-string response))) 544 (encoded (base64-encode-string response t)))
545 (smtpmail-send-command process (format "%s" encoded)) 545 (smtpmail-send-command process (format "%s" encoded))
546 (if (or (null (car (setq ret (smtpmail-read-response process)))) 546 (if (or (null (car (setq ret (smtpmail-read-response process))))
547 (not (integerp (car ret))) 547 (not (integerp (car ret)))
@@ -554,12 +554,12 @@ This is relative to `smtpmail-queue-dir'.")
554 (>= (car ret) 400)) 554 (>= (car ret) 400))
555 (throw 'done nil)) 555 (throw 'done nil))
556 (smtpmail-send-command 556 (smtpmail-send-command
557 process (base64-encode-string (smtpmail-cred-user cred))) 557 process (base64-encode-string (smtpmail-cred-user cred) t))
558 (if (or (null (car (setq ret (smtpmail-read-response process)))) 558 (if (or (null (car (setq ret (smtpmail-read-response process))))
559 (not (integerp (car ret))) 559 (not (integerp (car ret)))
560 (>= (car ret) 400)) 560 (>= (car ret) 400))
561 (throw 'done nil)) 561 (throw 'done nil))
562 (smtpmail-send-command process (base64-encode-string passwd)) 562 (smtpmail-send-command process (base64-encode-string passwd t))
563 (if (or (null (car (setq ret (smtpmail-read-response process)))) 563 (if (or (null (car (setq ret (smtpmail-read-response process))))
564 (not (integerp (car ret))) 564 (not (integerp (car ret)))
565 (>= (car ret) 400)) 565 (>= (car ret) 400))
@@ -576,7 +576,7 @@ This is relative to `smtpmail-queue-dir'.")
576 (concat "\0" 576 (concat "\0"
577 (smtpmail-cred-user cred) 577 (smtpmail-cred-user cred)
578 "\0" 578 "\0"
579 passwd)))) 579 passwd) t)))
580 (if (or (null (car (setq ret (smtpmail-read-response process)))) 580 (if (or (null (car (setq ret (smtpmail-read-response process))))
581 (not (integerp (car ret))) 581 (not (integerp (car ret)))
582 (not (equal (car ret) 235))) 582 (not (equal (car ret) 235)))
diff --git a/lisp/mh-e/ChangeLog b/lisp/mh-e/ChangeLog
index a49e3b2a4a3..76875b2849b 100644
--- a/lisp/mh-e/ChangeLog
+++ b/lisp/mh-e/ChangeLog
@@ -1,3 +1,18 @@
12006-09-25 Stephen Gildea <gildea@stop.mail-abuse.org>
2
3 * mh-junk.el (mh-spamassassin-whitelist): Add two missing
4 quotation marks, so that the last two arguments of sa-learn
5 are separated properly (closes SF #1565460).
6
7 * (mh-spamassassin-blacklist): In example .procmailrc, add
8 PATH element to find mhparam on Debian.
9
102006-09-24 Stephen Gildea <gildea@stop.mail-abuse.org>
11
12 * mh-comp.el (mh-send-args): Initialize to "" instead of nil
13 so that we always have a valid string for split-string even if
14 nothing is added in mh-send-letter (closes SF #1564742).
15
12006-07-03 Bill Wohler <wohler@newt.com> 162006-07-03 Bill Wohler <wohler@newt.com>
2 17
3 Release MH-E version 8.0.2. 18 Release MH-E version 8.0.2.
diff --git a/lisp/mh-e/mh-comp.el b/lisp/mh-e/mh-comp.el
index 7156b0cf318..a967a2c8d9e 100644
--- a/lisp/mh-e/mh-comp.el
+++ b/lisp/mh-e/mh-comp.el
@@ -127,7 +127,7 @@ Used by the \\[mh-edit-again] and \\[mh-extract-rejected-mail] commands.")
127 (make-syntax-table text-mode-syntax-table)) 127 (make-syntax-table text-mode-syntax-table))
128 (modify-syntax-entry ?% "." mh-letter-mode-syntax-table)) 128 (modify-syntax-entry ?% "." mh-letter-mode-syntax-table))
129 129
130(defvar mh-send-args nil 130(defvar mh-send-args ""
131 "Extra args to pass to \"send\" command.") 131 "Extra args to pass to \"send\" command.")
132 132
133(defvar mh-annotate-char nil 133(defvar mh-annotate-char nil
diff --git a/lisp/mh-e/mh-junk.el b/lisp/mh-e/mh-junk.el
index 9d02db0dc11..67f267d672f 100644
--- a/lisp/mh-e/mh-junk.el
+++ b/lisp/mh-e/mh-junk.el
@@ -115,6 +115,9 @@ http://spamassassin.org/.
115To use SpamAssassin, add the following recipes to 115To use SpamAssassin, add the following recipes to
116\".procmailrc\": 116\".procmailrc\":
117 117
118 # Append to $PATH the location of mhparam in some distros.
119 PATH=$PATH:/usr/bin/mh
120
118 MAILDIR=$HOME/`mhparam Path` 121 MAILDIR=$HOME/`mhparam Path`
119 122
120 # Fight spam with SpamAssassin. 123 # Fight spam with SpamAssassin.
@@ -244,7 +247,7 @@ See `mh-spamassassin-blacklist' for more information."
244 (when mh-sa-learn-executable 247 (when mh-sa-learn-executable
245 (message "Recategorizing this message as ham...") 248 (message "Recategorizing this message as ham...")
246 (call-process mh-sa-learn-executable msg-file mh-temp-buffer nil 249 (call-process mh-sa-learn-executable msg-file mh-temp-buffer nil
247 "--single" "--ham" "--local --no-rebuild")) 250 "--single" "--ham" "--local" "--no-rebuild"))
248 (message "Whitelisting message %d..." msg) 251 (message "Whitelisting message %d..." msg)
249 (setq from 252 (setq from
250 (car (mh-funcall-if-exists 253 (car (mh-funcall-if-exists
diff --git a/lisp/mouse.el b/lisp/mouse.el
index 18b16c6460d..0b6cccd86c6 100644
--- a/lisp/mouse.el
+++ b/lisp/mouse.el
@@ -778,7 +778,7 @@ If the click is in the echo area, display the `*Messages*' buffer."
778(defun mouse-posn-property (pos property) 778(defun mouse-posn-property (pos property)
779 "Look for a property at click position. 779 "Look for a property at click position.
780POS may be either a buffer position or a click position like 780POS may be either a buffer position or a click position like
781those returned from `start-event'. If the click position is on 781those returned from `event-start'. If the click position is on
782a string, the text property PROPERTY is examined. 782a string, the text property PROPERTY is examined.
783If this is nil or the click is not on a string, then 783If this is nil or the click is not on a string, then
784the corresponding buffer position is searched for PROPERTY. 784the corresponding buffer position is searched for PROPERTY.
diff --git a/lisp/pcvs.el b/lisp/pcvs.el
index a9105227bfd..1f2bad13dcd 100644
--- a/lisp/pcvs.el
+++ b/lisp/pcvs.el
@@ -618,7 +618,6 @@ If non-nil, NEW means to create a new buffer no matter what."
618 (str (car hf)) 618 (str (car hf))
619 (done "") 619 (done "")
620 (tin (ewoc-nth cvs-cookies 0))) 620 (tin (ewoc-nth cvs-cookies 0)))
621 (if (eq (length str) 2) (setq str ""))
622 ;; look for the first *real* fileinfo (to determine emptyness) 621 ;; look for the first *real* fileinfo (to determine emptyness)
623 (while 622 (while
624 (and tin 623 (and tin
@@ -626,14 +625,17 @@ If non-nil, NEW means to create a new buffer no matter what."
626 '(MESSAGE DIRCHANGE))) 625 '(MESSAGE DIRCHANGE)))
627 (setq tin (ewoc-next cvs-cookies tin))) 626 (setq tin (ewoc-next cvs-cookies tin)))
628 (if add 627 (if add
629 (setq str (concat "-- Running " cmd " ...\n" str)) 628 (progn
629 ;; Remove the default empty line, if applicable.
630 (if (not (string-match "." str)) (setq str "\n"))
631 (setq str (concat "-- Running " cmd " ...\n" str)))
630 (if (not (string-match 632 (if (not (string-match
631 (concat "^-- Running " (regexp-quote cmd) " \\.\\.\\.\n") str)) 633 (concat "^-- Running " (regexp-quote cmd) " \\.\\.\\.\n") str))
632 (error "Internal PCL-CVS error while removing message") 634 (error "Internal PCL-CVS error while removing message")
633 (setq str (replace-match "" t t str)) 635 (setq str (replace-match "" t t str))
634 (if (zerop (length str)) (setq str "\n")) 636 ;; Re-add the default empty line, if applicable.
635 (setq done (concat "-- last cmd: " cmd " --")))) 637 (if (not (string-match "." str)) (setq str "\n\n"))
636 (setq str (concat str "\n") done (concat done "\n")) 638 (setq done (concat "-- last cmd: " cmd " --\n"))))
637 ;; set the new header and footer 639 ;; set the new header and footer
638 (ewoc-set-hf cvs-cookies 640 (ewoc-set-hf cvs-cookies
639 str (concat "\n--------------------- " 641 str (concat "\n--------------------- "
diff --git a/lisp/printing.el b/lisp/printing.el
index 94be3dfbfab..18252155e49 100644
--- a/lisp/printing.el
+++ b/lisp/printing.el
@@ -5,10 +5,10 @@
5 5
6;; Author: Vinicius Jose Latorre <viniciusjl@ig.com.br> 6;; Author: Vinicius Jose Latorre <viniciusjl@ig.com.br>
7;; Maintainer: Vinicius Jose Latorre <viniciusjl@ig.com.br> 7;; Maintainer: Vinicius Jose Latorre <viniciusjl@ig.com.br>
8;; Time-stamp: <2006-02-06 15:06:40 ttn> 8;; Time-stamp: <2006/09/15 18:53:14 vinicius>
9;; Keywords: wp, print, PostScript 9;; Keywords: wp, print, PostScript
10;; Version: 6.8.4 10;; Version: 6.8.4
11;; X-URL: http://www.cpqd.com.br/~vinicius/emacs/ 11;; X-URL: http://www.emacswiki.org/cgi-bin/wiki/ViniciusJoseLatorre
12 12
13(defconst pr-version "6.8.4" 13(defconst pr-version "6.8.4"
14 "printing.el, v 6.8.4 <2005/06/11 vinicius> 14 "printing.el, v 6.8.4 <2005/06/11 vinicius>
@@ -2799,7 +2799,7 @@ See `pr-ps-printer-alist'.")
2799 2799
2800 2800
2801(defalias 'pr-get-symbol 2801(defalias 'pr-get-symbol
2802 (if (fboundp 'easy-menu-intern) 2802 (if (fboundp 'easy-menu-intern) ; hacked from easymenu.el
2803 'easy-menu-intern 2803 'easy-menu-intern
2804 (lambda (s) (if (stringp s) (intern s) s)))) 2804 (lambda (s) (if (stringp s) (intern s) s))))
2805 2805
diff --git a/lisp/progmodes/compile.el b/lisp/progmodes/compile.el
index e6a6a8ed9c5..7d9ce41229c 100644
--- a/lisp/progmodes/compile.el
+++ b/lisp/progmodes/compile.el
@@ -1784,17 +1784,31 @@ and overlay is highlighted between MK and END-MK."
1784 (current-buffer))) 1784 (current-buffer)))
1785 (move-overlay compilation-highlight-overlay 1785 (move-overlay compilation-highlight-overlay
1786 (point) end (current-buffer))) 1786 (point) end (current-buffer)))
1787 (if (numberp next-error-highlight) 1787 (if (or (eq next-error-highlight t)
1788 (setq next-error-highlight-timer 1788 (numberp next-error-highlight))
1789 (run-at-time next-error-highlight nil 'delete-overlay 1789 ;; We want highlighting: delete overlay on next input.
1790 compilation-highlight-overlay))) 1790 (add-hook 'pre-command-hook
1791 (if (not (or (eq next-error-highlight t) 1791 'compilation-goto-locus-delete-o)
1792 (numberp next-error-highlight))) 1792 ;; We don't want highlighting: delete overlay now.
1793 (delete-overlay compilation-highlight-overlay)))))) 1793 (delete-overlay compilation-highlight-overlay))
1794 ;; We want highlighting for a limited time:
1795 ;; set up a timer to delete it.
1796 (when (numberp next-error-highlight)
1797 (setq next-error-highlight-timer
1798 (run-at-time next-error-highlight nil
1799 'compilation-goto-locus-delete-o)))))))
1794 (when (and (eq next-error-highlight 'fringe-arrow)) 1800 (when (and (eq next-error-highlight 'fringe-arrow))
1801 ;; We want a fringe arrow (instead of highlighting).
1795 (setq next-error-overlay-arrow-position 1802 (setq next-error-overlay-arrow-position
1796 (copy-marker (line-beginning-position)))))) 1803 (copy-marker (line-beginning-position))))))
1797 1804
1805(defun compilation-goto-locus-delete-o ()
1806 (delete-overlay compilation-highlight-overlay)
1807 ;; Get rid of timer and hook that would try to do this again.
1808 (if (timerp next-error-highlight-timer)
1809 (cancel-timer next-error-highlight-timer))
1810 (remove-hook 'pre-command-hook
1811 'compilation-goto-locus-delete-o))
1798 1812
1799(defun compilation-find-file (marker filename directory &rest formats) 1813(defun compilation-find-file (marker filename directory &rest formats)
1800 "Find a buffer for file FILENAME. 1814 "Find a buffer for file FILENAME.
diff --git a/lisp/progmodes/cperl-mode.el b/lisp/progmodes/cperl-mode.el
index ad44753f352..69f4549a0bf 100644
--- a/lisp/progmodes/cperl-mode.el
+++ b/lisp/progmodes/cperl-mode.el
@@ -3914,12 +3914,14 @@ CHARS is a string that contains good characters to have before us (however,
3914 (if (get-text-property (point) 'here-doc-group) 3914 (if (get-text-property (point) 'here-doc-group)
3915 (progn 3915 (progn
3916 (goto-char 3916 (goto-char
3917 (previous-single-property-change (point) 'here-doc-group)) 3917 (or (previous-single-property-change (point) 'here-doc-group)
3918 (point)))
3918 (beginning-of-line 0))) 3919 (beginning-of-line 0)))
3919 (if (get-text-property (point) 'in-pod) 3920 (if (get-text-property (point) 'in-pod)
3920 (progn 3921 (progn
3921 (goto-char 3922 (goto-char
3922 (previous-single-property-change (point) 'in-pod)) 3923 (or (previous-single-property-change (point) 'in-pod)
3924 (point)))
3923 (beginning-of-line 0))) 3925 (beginning-of-line 0)))
3924 (if (looking-at "^[ \t]*\\(#\\|$\\)") nil ; Only comment, skip 3926 (if (looking-at "^[ \t]*\\(#\\|$\\)") nil ; Only comment, skip
3925 ;; Else: last iteration, or a label 3927 ;; Else: last iteration, or a label
diff --git a/lisp/progmodes/ebnf2ps.el b/lisp/progmodes/ebnf2ps.el
index bce4381c614..9f27c8a60f1 100644
--- a/lisp/progmodes/ebnf2ps.el
+++ b/lisp/progmodes/ebnf2ps.el
@@ -5,10 +5,10 @@
5 5
6;; Author: Vinicius Jose Latorre <viniciusjl@ig.com.br> 6;; Author: Vinicius Jose Latorre <viniciusjl@ig.com.br>
7;; Maintainer: Vinicius Jose Latorre <viniciusjl@ig.com.br> 7;; Maintainer: Vinicius Jose Latorre <viniciusjl@ig.com.br>
8;; Time-stamp: <2005-09-18 07:27:20 deego> 8;; Time-stamp: <2006/09/26 21:49:46 vinicius>
9;; Keywords: wp, ebnf, PostScript 9;; Keywords: wp, ebnf, PostScript
10;; Version: 4.2 10;; Version: 4.3
11;; X-URL: http://www.cpqd.com.br/~vinicius/emacs/ 11;; X-URL: http://www.emacswiki.org/cgi-bin/wiki/ViniciusJoseLatorre
12 12
13;; This file is part of GNU Emacs. 13;; This file is part of GNU Emacs.
14 14
@@ -27,8 +27,8 @@
27;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 27;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
28;; Boston, MA 02110-1301, USA. 28;; Boston, MA 02110-1301, USA.
29 29
30(defconst ebnf-version "4.2" 30(defconst ebnf-version "4.3"
31 "ebnf2ps.el, v 4.2 <2004/04/04 vinicius> 31 "ebnf2ps.el, v 4.3 <2006/09/26 vinicius>
32 32
33Vinicius's last change version. When reporting bugs, please also 33Vinicius's last change version. When reporting bugs, please also
34report the version of Emacs, if any, that ebnf2ps was running with. 34report the version of Emacs, if any, that ebnf2ps was running with.
@@ -73,18 +73,18 @@ Please send all bug fixes and enhancements to
73;; ebnf2ps provides the following commands for generating PostScript syntactic 73;; ebnf2ps provides the following commands for generating PostScript syntactic
74;; chart images of Emacs buffers: 74;; chart images of Emacs buffers:
75;; 75;;
76;; ebnf-print-directory 76;; ebnf-print-directory
77;; ebnf-print-file 77;; ebnf-print-file
78;; ebnf-print-buffer 78;; ebnf-print-buffer
79;; ebnf-print-region 79;; ebnf-print-region
80;; ebnf-spool-directory 80;; ebnf-spool-directory
81;; ebnf-spool-file 81;; ebnf-spool-file
82;; ebnf-spool-buffer 82;; ebnf-spool-buffer
83;; ebnf-spool-region 83;; ebnf-spool-region
84;; ebnf-eps-directory 84;; ebnf-eps-directory
85;; ebnf-eps-file 85;; ebnf-eps-file
86;; ebnf-eps-buffer 86;; ebnf-eps-buffer
87;; ebnf-eps-region 87;; ebnf-eps-region
88;; 88;;
89;; These commands all perform essentially the same function: they generate 89;; These commands all perform essentially the same function: they generate
90;; PostScript syntactic chart images suitable for printing on a PostScript 90;; PostScript syntactic chart images suitable for printing on a PostScript
@@ -94,14 +94,14 @@ Please send all bug fixes and enhancements to
94;; The word "print", "spool" and "eps" in the command name determines when the 94;; The word "print", "spool" and "eps" in the command name determines when the
95;; PostScript image is sent to the printer (or file): 95;; PostScript image is sent to the printer (or file):
96;; 96;;
97;; print - The PostScript image is immediately sent to the printer; 97;; print - The PostScript image is immediately sent to the printer;
98;; 98;;
99;; spool - The PostScript image is saved temporarily in an Emacs buffer. 99;; spool - The PostScript image is saved temporarily in an Emacs buffer.
100;; Many images may be spooled locally before printing them. To 100;; Many images may be spooled locally before printing them. To
101;; send the spooled images to the printer, use the command 101;; send the spooled images to the printer, use the command
102;; `ebnf-despool'. 102;; `ebnf-despool'.
103;; 103;;
104;; eps - The PostScript image is immediately sent to a EPS file. 104;; eps - The PostScript image is immediately sent to a EPS file.
105;; 105;;
106;; The spooling mechanism is the same as used by ps-print and was designed for 106;; The spooling mechanism is the same as used by ps-print and was designed for
107;; printing lots of small files to save paper that would otherwise be wasted on 107;; printing lots of small files to save paper that would otherwise be wasted on
@@ -120,22 +120,22 @@ Please send all bug fixes and enhancements to
120;; The word "directory", "file", "buffer" or "region" in the command name 120;; The word "directory", "file", "buffer" or "region" in the command name
121;; determines how much of the buffer is printed: 121;; determines how much of the buffer is printed:
122;; 122;;
123;; directory - Read files in the directory and print them. 123;; directory - Read files in the directory and print them.
124;; 124;;
125;; file - Read file and print it. 125;; file - Read file and print it.
126;; 126;;
127;; buffer - Print the entire buffer. 127;; buffer - Print the entire buffer.
128;; 128;;
129;; region - Print just the current region. 129;; region - Print just the current region.
130;; 130;;
131;; Two ebnf- command examples: 131;; Two ebnf- command examples:
132;; 132;;
133;; ebnf-print-buffer - translate and print the entire buffer, and send it 133;; ebnf-print-buffer - translate and print the entire buffer, and send it
134;; immediately to the printer. 134;; immediately to the printer.
135;; 135;;
136;; ebnf-spool-region - translate and print just the current region, and 136;; ebnf-spool-region - translate and print just the current region, and
137;; spool the image in Emacs to send to the printer 137;; spool the image in Emacs to send to the printer
138;; later. 138;; later.
139;; 139;;
140;; Note that `ebnf-eps-directory', `ebnf-eps-file', `ebnf-eps-buffer' and 140;; Note that `ebnf-eps-directory', `ebnf-eps-file', `ebnf-eps-buffer' and
141;; `ebnf-eps-region' never spool the EPS image, so they don't use the ps-print 141;; `ebnf-eps-region' never spool the EPS image, so they don't use the ps-print
@@ -148,13 +148,13 @@ Please send all bug fixes and enhancements to
148;; 148;;
149;; To translate and print your buffer, type 149;; To translate and print your buffer, type
150;; 150;;
151;; M-x ebnf-print-buffer 151;; M-x ebnf-print-buffer
152;; 152;;
153;; or substitute one of the other four ebnf- commands. The command will 153;; or substitute one of the other four ebnf- commands. The command will
154;; generate the PostScript image and print or spool it as specified. By giving 154;; generate the PostScript image and print or spool it as specified. By giving
155;; the command a prefix argument 155;; the command a prefix argument
156;; 156;;
157;; C-u M-x ebnf-print-buffer 157;; C-u M-x ebnf-print-buffer
158;; 158;;
159;; it will save the PostScript image to a file instead of sending it to the 159;; it will save the PostScript image to a file instead of sending it to the
160;; printer; you will be prompted for the name of the file to save the image to. 160;; printer; you will be prompted for the name of the file to save the image to.
@@ -162,7 +162,7 @@ Please send all bug fixes and enhancements to
162;; you may save the spooled images to a file by giving a prefix argument to 162;; you may save the spooled images to a file by giving a prefix argument to
163;; `ebnf-despool': 163;; `ebnf-despool':
164;; 164;;
165;; C-u M-x ebnf-despool 165;; C-u M-x ebnf-despool
166;; 166;;
167;; When invoked this way, `ebnf-despool' will prompt you for the name of the 167;; When invoked this way, `ebnf-despool' will prompt you for the name of the
168;; file to save to. 168;; file to save to.
@@ -172,9 +172,9 @@ Please send all bug fixes and enhancements to
172;; 172;;
173;; Any of the `ebnf-' commands can be bound to keys. Here are some examples: 173;; Any of the `ebnf-' commands can be bound to keys. Here are some examples:
174;; 174;;
175;; (global-set-key 'f22 'ebnf-print-buffer) ;f22 is prsc 175;; (global-set-key 'f22 'ebnf-print-buffer) ;f22 is prsc
176;; (global-set-key '(shift f22) 'ebnf-print-region) 176;; (global-set-key '(shift f22) 'ebnf-print-region)
177;; (global-set-key '(control f22) 'ebnf-despool) 177;; (global-set-key '(control f22) 'ebnf-despool)
178;; 178;;
179;; 179;;
180;; Invoking Ebnf2ps in Batch 180;; Invoking Ebnf2ps in Batch
@@ -523,14 +523,14 @@ Please send all bug fixes and enhancements to
523;; 523;;
524;; The following table summarizes the results: 524;; The following table summarizes the results:
525;; 525;;
526;; EPS FILE NAME NO SORT ASCENDING SORT DESCENDING SORT 526;; EPS FILE NAME NO SORT ASCENDING SORT DESCENDING SORT
527;; ebnf--AA.eps A C A C C A 527;; ebnf--AA.eps A C A C C A
528;; ebnf--BB.eps C B B C C B 528;; ebnf--BB.eps C B B C C B
529;; ebnf--CC.eps A C B F A B C F F C B A 529;; ebnf--CC.eps A C B F A B C F F C B A
530;; ebnf--D.eps D D D 530;; ebnf--D.eps D D D
531;; ebnf--E.eps E E E 531;; ebnf--E.eps E E E
532;; ebnf--G.eps G G G 532;; ebnf--G.eps G G G
533;; ebnf--Z.eps Z Z Z 533;; ebnf--Z.eps Z Z Z
534;; 534;;
535;; As you can see if EPS actions is not used, each single production is 535;; As you can see if EPS actions is not used, each single production is
536;; generated per EPS file. To avoid overriding EPS files, use names in ;[ that 536;; generated per EPS file. To avoid overriding EPS files, use names in ;[ that
@@ -692,6 +692,11 @@ Please send all bug fixes and enhancements to
692;; 692;;
693;; `ebnf-line-color' Specify flow line color. 693;; `ebnf-line-color' Specify flow line color.
694;; 694;;
695;; `ebnf-arrow-extra-width' Specify extra width for arrow shape
696;; drawing.
697;;
698;; `ebnf-arrow-scale' Specify the arrow scale.
699;;
695;; `ebnf-user-arrow' Specify a sexp for user arrow shape (a 700;; `ebnf-user-arrow' Specify a sexp for user arrow shape (a
696;; PostScript code). 701;; PostScript code).
697;; 702;;
@@ -824,6 +829,8 @@ Please send all bug fixes and enhancements to
824;; entry is the vertical position used to know where it should 829;; entry is the vertical position used to know where it should
825;; be drawn the flow line in the current element. 830;; be drawn the flow line in the current element.
826;; 831;;
832;; extra is given by `ebnf-arrow-extra-width'.
833;;
827;; 834;;
828;; * SPECIAL, TERMINAL and NON-TERMINAL 835;; * SPECIAL, TERMINAL and NON-TERMINAL
829;; 836;;
@@ -835,17 +842,17 @@ Please send all bug fixes and enhancements to
835;; : | : : | : } font height / 2 } 842;; : | : : | : } font height / 2 }
836;; : +==============+...:............................... 843;; : +==============+...:...............................
837;; : : : : : : 844;; : : : : : :
838;; : : : : : :...................... 845;; : : : : : :.........................
839;; : : : : : } font height } 846;; : : : : : } font height }
840;; : : : : :....... } 847;; : : : : :....... }
841;; : : : : } font height / 2 } 848;; : : : : } font height / 2 }
842;; : : : :........... } 849;; : : : :........... }
843;; : : : } text width } width 850;; : : : } text width } width
844;; : : :.................. } 851;; : : :.................. }
845;; : : } font height / 2 } 852;; : : } font height / 2 }
846;; : :...................... } 853;; : :...................... }
847;; : } font height } 854;; : } font height + extra }
848;; :............................................. 855;; :.................................................
849;; 856;;
850;; 857;;
851;; * OPTIONAL 858;; * OPTIONAL
@@ -976,21 +983,21 @@ Please send all bug fixes and enhancements to
976;; : | : : : : | : } font height / 2 } 983;; : | : : : : | : } font height / 2 }
977;; : +================+...:............................... 984;; : +================+...:...............................
978;; : : : : : : : : 985;; : : : : : : : :
979;; : : : : : : : :...................... 986;; : : : : : : : :..........................
980;; : : : : : : : } font height } 987;; : : : : : : : } font height }
981;; : : : : : : :....... } 988;; : : : : : : :....... }
982;; : : : : : : } font height / 2 } 989;; : : : : : : } font height / 2 }
983;; : : : : : :........... } 990;; : : : : : :........... }
984;; : : : : : } X width } 991;; : : : : : } X width }
985;; : : : : :............... } 992;; : : : : :............... }
986;; : : : : } font height / 2 } width 993;; : : : : } font height / 2 } width
987;; : : : :.................. } 994;; : : : :.................. }
988;; : : : } text width } 995;; : : : } text width }
989;; : : :..................... } 996;; : : :..................... }
990;; : : } font height / 2 } 997;; : : } font height / 2 }
991;; : :........................ } 998;; : :........................ }
992;; : } font height } 999;; : } font height + extra }
993;; :............................................... 1000;; :...................................................
994;; 1001;;
995;; 1002;;
996;; * EXCEPT 1003;; * EXCEPT
@@ -1003,21 +1010,21 @@ Please send all bug fixes and enhancements to
1003;; : | : : : : | : } font height / 2 } 1010;; : | : : : : | : } font height / 2 }
1004;; : +==================+...:............................... 1011;; : +==================+...:...............................
1005;; : : : : : : : : 1012;; : : : : : : : :
1006;; : : : : : : : :...................... 1013;; : : : : : : : :..........................
1007;; : : : : : : : } font height } 1014;; : : : : : : : } font height }
1008;; : : : : : : :....... } 1015;; : : : : : : :....... }
1009;; : : : : : : } font height / 2 } 1016;; : : : : : : } font height / 2 }
1010;; : : : : : :........... } 1017;; : : : : : :........... }
1011;; : : : : : } Y width } 1018;; : : : : : } Y width }
1012;; : : : : :............... } 1019;; : : : : :............... }
1013;; : : : : } font height } width 1020;; : : : : } font height } width
1014;; : : : :................... } 1021;; : : : :................... }
1015;; : : : } X width } 1022;; : : : } X width }
1016;; : : :....................... } 1023;; : : :....................... }
1017;; : : } font height / 2 } 1024;; : : } font height / 2 }
1018;; : :.......................... } 1025;; : :.......................... }
1019;; : } font height } 1026;; : } font height + extra }
1020;; :................................................. 1027;; :.....................................................
1021;; 1028;;
1022;; NOTE: If Y element is empty, it's draw nothing at Y place. 1029;; NOTE: If Y element is empty, it's draw nothing at Y place.
1023;; 1030;;
@@ -1089,7 +1096,8 @@ Please send all bug fixes and enhancements to
1089;; ---------------- 1096;; ----------------
1090;; 1097;;
1091;; Thanks to Drew Adams <drew.adams@oracle.com> for suggestions: 1098;; Thanks to Drew Adams <drew.adams@oracle.com> for suggestions:
1092;; - `ebnf-production-name-p', `ebnf-stop-on-error', 1099;; - `ebnf-arrow-extra-width', `ebnf-arrow-scale',
1100;; `ebnf-production-name-p', `ebnf-stop-on-error',
1093;; `ebnf-file-suffix-regexp'and `ebnf-special-show-delimiter' variables. 1101;; `ebnf-file-suffix-regexp'and `ebnf-special-show-delimiter' variables.
1094;; - `ebnf-delete-style', `ebnf-eps-file' and `ebnf-eps-directory' 1102;; - `ebnf-delete-style', `ebnf-eps-file' and `ebnf-eps-directory'
1095;; commands. 1103;; commands.
@@ -1911,6 +1919,29 @@ special."
1911 :group 'ebnf2ps) 1919 :group 'ebnf2ps)
1912 1920
1913 1921
1922(defcustom ebnf-arrow-extra-width
1923 (if (eq ebnf-arrow-shape 'none)
1924 0.0
1925 (* (sqrt 5.0) 0.65 ebnf-line-width))
1926 "*Specify extra width for arrow shape drawing.
1927
1928The extra width is used to avoid that the arrowhead and the terminal border
1929overlap. It depens on `ebnf-arrow-shape' and `ebnf-line-width'."
1930 :type 'number
1931 :version "22"
1932 :group 'ebnf-shape)
1933
1934
1935(defcustom ebnf-arrow-scale 1.0
1936 "*Specify the arrow scale.
1937
1938Values lower than 1.0, shrink the arrow.
1939Values greater than 1.0, expand the arrow."
1940 :type 'number
1941 :version "22"
1942 :group 'ebnf-shape)
1943
1944
1914(defcustom ebnf-debug-ps nil 1945(defcustom ebnf-debug-ps nil
1915 "*Non-nil means to generate PostScript debug procedures. 1946 "*Non-nil means to generate PostScript debug procedures.
1916 1947
@@ -2859,9 +2890,9 @@ See documentation for `ebnf-terminal-shape', `ebnf-non-terminal-shape' and
2859/HeightNT FontHeight FontHeight add def 2890/HeightNT FontHeight FontHeight add def
2860 2891
2861/T HeightT HeightNT add 0.5 mul def 2892/T HeightT HeightNT add 0.5 mul def
2862/hT T 0.5 mul def 2893/hT T 0.5 mul def
2863/hT2 hT 0.5 mul def 2894/hT2 hT 0.5 mul ArrowScale mul def
2864/hT4 hT 0.25 mul def 2895/hT4 hT 0.25 mul ArrowScale mul def
2865 2896
2866/Er 0.1 def % Error factor 2897/Er 0.1 def % Error factor
2867 2898
@@ -2947,6 +2978,7 @@ See documentation for `ebnf-terminal-shape', `ebnf-non-terminal-shape' and
2947 RA-vector ArrowShape get exec 2978 RA-vector ArrowShape get exec
2948 Gstroke 2979 Gstroke
2949 moveto 2980 moveto
2981 ExtraWidth 0 rmoveto
2950}def 2982}def
2951 2983
2952% rotation DrawArrow 2984% rotation DrawArrow
@@ -3245,7 +3277,7 @@ See documentation for `ebnf-terminal-shape', `ebnf-non-terminal-shape' and
3245% string width prepare-width |- string 3277% string width prepare-width |- string
3246/prepare-width 3278/prepare-width
3247{/width exch def 3279{/width exch def
3248 dup stringwidth pop space add space add width exch sub 0.5 mul 3280 dup stringwidth pop space add space add width exch sub ExtraWidth sub 0.5 mul
3249 /w exch def 3281 /w exch def
3250}def 3282}def
3251 3283
@@ -4877,7 +4909,6 @@ killed after process termination."
4877 (progn 4909 (progn
4878 ;; adjust creator comment 4910 ;; adjust creator comment
4879 (end-of-line) 4911 (end-of-line)
4880 (backward-char)
4881 (insert " & ebnf2ps v" ebnf-version) 4912 (insert " & ebnf2ps v" ebnf-version)
4882 ;; insert ebnf settings & engine 4913 ;; insert ebnf settings & engine
4883 (goto-char (point-max)) 4914 (goto-char (point-max))
@@ -5066,6 +5097,10 @@ killed after process termination."
5066 (format "/ShadowR %s def\n" 5097 (format "/ShadowR %s def\n"
5067 (ebnf-boolean ebnf-repeat-shadow)) 5098 (ebnf-boolean ebnf-repeat-shadow))
5068 ;; miscellaneous 5099 ;; miscellaneous
5100 (format "/ExtraWidth %s def\n"
5101 (ebnf-format-float ebnf-arrow-extra-width))
5102 (format "/ArrowScale %s def\n"
5103 (ebnf-format-float ebnf-arrow-scale))
5069 (format "/DefaultWidth %s def\n" 5104 (format "/DefaultWidth %s def\n"
5070 (ebnf-format-float ebnf-default-width)) 5105 (ebnf-format-float ebnf-default-width))
5071 (format "/LineWidth %s def\n" 5106 (format "/LineWidth %s def\n"
@@ -5152,7 +5187,7 @@ killed after process termination."
5152 (len (length (ebnf-node-name node)))) 5187 (len (length (ebnf-node-name node))))
5153 (ebnf-node-entry node (* height 0.5)) 5188 (ebnf-node-entry node (* height 0.5))
5154 (ebnf-node-height node height) 5189 (ebnf-node-height node height)
5155 (ebnf-node-width node (+ ebnf-basic-width space 5190 (ebnf-node-width node (+ ebnf-basic-width ebnf-arrow-extra-width space
5156 (* len font-width) 5191 (* len font-width)
5157 space ebnf-basic-width)))) 5192 space ebnf-basic-width))))
5158 5193
@@ -5173,6 +5208,7 @@ killed after process termination."
5173 ebnf-font-height-S) 5208 ebnf-font-height-S)
5174 ebnf-space-R ebnf-space-R)) 5209 ebnf-space-R ebnf-space-R))
5175 (ebnf-node-width repeat (+ (ebnf-node-width element) 5210 (ebnf-node-width repeat (+ (ebnf-node-width element)
5211 ebnf-arrow-extra-width
5176 ebnf-space-R ebnf-space-R ebnf-space-R 5212 ebnf-space-R ebnf-space-R ebnf-space-R
5177 ebnf-horizontal-space 5213 ebnf-horizontal-space
5178 (* (length times) ebnf-font-width-R))))) 5214 (* (length times) ebnf-font-width-R)))))
@@ -5194,6 +5230,7 @@ killed after process termination."
5194 ebnf-space-E ebnf-space-E)) 5230 ebnf-space-E ebnf-space-E))
5195 (ebnf-node-width except (+ (ebnf-node-width factor) 5231 (ebnf-node-width except (+ (ebnf-node-width factor)
5196 (ebnf-node-width element) 5232 (ebnf-node-width element)
5233 ebnf-arrow-extra-width
5197 ebnf-space-E ebnf-space-E 5234 ebnf-space-E ebnf-space-E
5198 ebnf-space-E ebnf-space-E 5235 ebnf-space-E ebnf-space-E
5199 ebnf-font-width-E 5236 ebnf-font-width-E
diff --git a/lisp/progmodes/make-mode.el b/lisp/progmodes/make-mode.el
index 109455e9e61..c7341a9f871 100644
--- a/lisp/progmodes/make-mode.el
+++ b/lisp/progmodes/make-mode.el
@@ -836,8 +836,8 @@ Makefile mode can be configured by modifying the following variables:
836 nil nil 836 nil nil
837 ((?$ . ".")) 837 ((?$ . "."))
838 backward-paragraph 838 backward-paragraph
839 (font-lock-syntactic-keywords . makefile-font-lock-syntactic-keywords) 839 (font-lock-syntactic-keywords
840 (font-lock-support-mode))) ; JIT breaks on long series of continuation lines. 840 . makefile-font-lock-syntactic-keywords)))
841 841
842 ;; Add-log. 842 ;; Add-log.
843 (make-local-variable 'add-log-current-defun-function) 843 (make-local-variable 'add-log-current-defun-function)
diff --git a/lisp/progmodes/sh-script.el b/lisp/progmodes/sh-script.el
index a08f999f089..ba10393a89f 100644
--- a/lisp/progmodes/sh-script.el
+++ b/lisp/progmodes/sh-script.el
@@ -2472,34 +2472,43 @@ we go to the end of the previous line and do not check for continuations."
2472 (point)) 2472 (point))
2473 (skip-chars-backward " \t;") 2473 (skip-chars-backward " \t;")
2474 (unless (looking-at "\\s-*;;") 2474 (unless (looking-at "\\s-*;;")
2475 (skip-chars-backward "^)}];\"'`({[") 2475 (skip-chars-backward "^)}];\"'`({[")
2476 (setq c (char-before)))) 2476 (setq c (char-before)))
2477 (sh-debug "stopping at %d c is %s start=%d min-point=%d" 2477 (sh-debug "stopping at %d c is %s start=%d min-point=%d"
2478 (point) c start min-point) 2478 (point) c start min-point)
2479 (if (< (point) min-point) 2479 (if (< (point) min-point)
2480 (error "point %d < min-point %d" (point) min-point)) 2480 (error "point %d < min-point %d" (point) min-point))
2481 (cond 2481 (cond
2482 ((looking-at "\\s-*;;") 2482 ((looking-at "\\s-*;;")
2483 ;; (message "Found ;; !") 2483 ;; (message "Found ;; !")
2484 ";;") 2484 ";;")
2485 ((or (eq c ?\n) 2485 ((or (eq c ?\n)
2486 (eq c nil) 2486 (eq c nil)
2487 (eq c ?\;)) 2487 (eq c ?\;))
2488 (save-excursion 2488 (let (done kwd next
2489 ;; skip forward over white space newline and \ at eol 2489 (boundary (point)))
2490 (skip-chars-forward " \t\n\\\\") 2490 (skip-chars-forward " \t\n\\\\")
2491 (sh-debug "Now at %d start=%d" (point) start) 2491 (while (and (not done) (not (eobp)))
2492 (if (>= (point) start) 2492 (if next (setq boundary next))
2493 (progn 2493 ;; skip forward over white space newline and \ at eol
2494 (sh-debug "point: %d >= start: %d" (point) start) 2494 (sh-debug "Now at %d start=%d" (point) start)
2495 nil) 2495 (if (>= (point) start)
2496 (sh-get-word)) 2496 (progn
2497 )) 2497 (sh-debug "point: %d >= start: %d" (point) start)
2498 (t 2498 nil)
2499 ;; c -- return a string 2499 (setq kwd (sh-get-word))
2500 (char-to-string c) 2500 (unless (eobp) (forward-char 1))
2501 )) 2501 (if (member kwd (sh-feature sh-leading-keywords))
2502 ))) 2502 (setq next (point))
2503 (setq done t)))
2504 (skip-chars-forward " \t\n\\\\"))
2505 (goto-char boundary)
2506 kwd))
2507 (t
2508 ;; c -- return a string
2509 (char-to-string c)
2510 ))
2511 ))))
2503 2512
2504 2513
2505(defun sh-this-is-a-continuation () 2514(defun sh-this-is-a-continuation ()
diff --git a/lisp/ps-print.el b/lisp/ps-print.el
index 59605c22c5b..d072b905e4a 100644
--- a/lisp/ps-print.el
+++ b/lisp/ps-print.el
@@ -12,7 +12,7 @@
12;; Keywords: wp, print, PostScript 12;; Keywords: wp, print, PostScript
13;; Time-stamp: <2005/06/27 00:57:22 vinicius> 13;; Time-stamp: <2005/06/27 00:57:22 vinicius>
14;; Version: 6.6.7 14;; Version: 6.6.7
15;; X-URL: http://www.cpqd.com.br/~vinicius/emacs/ 15;; X-URL: http://www.emacswiki.org/cgi-bin/wiki/ViniciusJoseLatorre
16 16
17(defconst ps-print-version "6.6.7" 17(defconst ps-print-version "6.6.7"
18 "ps-print.el, v 6.6.7 <2005/06/27 vinicius> 18 "ps-print.el, v 6.6.7 <2005/06/27 vinicius>
diff --git a/lisp/ses.el b/lisp/ses.el
index fc594167187..85f6f8db378 100644
--- a/lisp/ses.el
+++ b/lisp/ses.el
@@ -237,13 +237,6 @@ Each function is called with ARG=1."
237 ses-initial-file-trailer) 237 ses-initial-file-trailer)
238 "The initial contents of an empty spreadsheet.") 238 "The initial contents of an empty spreadsheet.")
239 239
240(defconst ses-paramlines-plist
241 '(ses--col-widths 2 ses--col-printers 3 ses--default-printer 4
242 ses--header-row 5 ses--file-format 8 ses--numrows 9
243 ses--numcols 10)
244 "Offsets from last cell line to various parameter lines in the data area
245of a spreadsheet.")
246
247(defconst ses-box-prop '(:box (:line-width 2 :style released-button)) 240(defconst ses-box-prop '(:box (:line-width 2 :style released-button))
248 "Display properties to create a raised box for cells in the header line.") 241 "Display properties to create a raised box for cells in the header line.")
249 242
@@ -255,13 +248,19 @@ functions. None of these standard-printer functions is suitable for use as a
255column printer or a global-default printer because they invoke the column or 248column printer or a global-default printer because they invoke the column or
256default printer and then modify its output.") 249default printer and then modify its output.")
257 250
251
252;;----------------------------------------------------------------------------
253;; Local variables and constants
254;;----------------------------------------------------------------------------
255
258(eval-and-compile 256(eval-and-compile
259 (defconst ses-localvars 257 (defconst ses-localvars
260 '(ses--blank-line ses--cells ses--col-printers ses--col-widths ses--curcell 258 '(ses--blank-line ses--cells ses--col-printers ses--col-widths ses--curcell
261 ses--curcell-overlay ses--default-printer ses--deferred-narrow 259 ses--curcell-overlay ses--default-printer ses--deferred-narrow
262 ses--deferred-recalc ses--deferred-write ses--file-format 260 ses--deferred-recalc ses--deferred-write ses--file-format
263 ses--header-hscroll ses--header-row ses--header-string ses--linewidth 261 ses--header-hscroll ses--header-row ses--header-string ses--linewidth
264 ses--numcols ses--numrows ses--symbolic-formulas 262 ses--numcols ses--numrows ses--symbolic-formulas ses--data-marker
263 ses--params-marker
265 ;;Global variables that we override 264 ;;Global variables that we override
266 mode-line-process next-line-add-newlines transient-mark-mode) 265 mode-line-process next-line-add-newlines transient-mark-mode)
267 "Buffer-local variables used by SES.")) 266 "Buffer-local variables used by SES."))
@@ -272,6 +271,13 @@ default printer and then modify its output.")
272 (make-local-variable x) 271 (make-local-variable x)
273 (set x nil))) 272 (set x nil)))
274 273
274(defconst ses-paramlines-plist
275 '(ses--col-widths -5 ses--col-printers -4 ses--default-printer -3
276 ses--header-row -2 ses--file-format 1 ses--numrows 2
277 ses--numcols 3)
278 "Offsets from 'Global parameters' line to various parameter lines in the
279data area of a spreadsheet.")
280
275 281
276;; 282;;
277;; "Side-effect variables". They are set in one function, altered in 283;; "Side-effect variables". They are set in one function, altered in
@@ -408,6 +414,7 @@ for safety. This is a macro to prevent propagate-on-load viruses."
408 "Execute BODY repeatedly, with the variables `row' and `col' set to each 414 "Execute BODY repeatedly, with the variables `row' and `col' set to each
409cell in the range specified by CURCELL. The range is available in the 415cell in the range specified by CURCELL. The range is available in the
410variables `minrow', `maxrow', `mincol', and `maxcol'." 416variables `minrow', `maxrow', `mincol', and `maxcol'."
417 (declare (indent defun) (debug (form body)))
411 (let ((cur (make-symbol "cur")) 418 (let ((cur (make-symbol "cur"))
412 (min (make-symbol "min")) 419 (min (make-symbol "min"))
413 (max (make-symbol "max")) 420 (max (make-symbol "max"))
@@ -429,9 +436,6 @@ variables `minrow', `maxrow', `mincol', and `maxcol'."
429 (setq col (+ ,c mincol)) 436 (setq col (+ ,c mincol))
430 ,@body)))))) 437 ,@body))))))
431 438
432(put 'ses-dorange 'lisp-indent-function 'defun)
433(def-edebug-spec ses-dorange (form body))
434
435;;Support for coverage testing. 439;;Support for coverage testing.
436(defmacro 1value (form) 440(defmacro 1value (form)
437 "For code-coverage testing, indicate that FORM is expected to always have 441 "For code-coverage testing, indicate that FORM is expected to always have
@@ -650,7 +654,7 @@ the old and FORCE is nil."
650(defun ses-update-cells (list &optional force) 654(defun ses-update-cells (list &optional force)
651 "Recalculate cells in LIST, checking for dependency loops. Prints 655 "Recalculate cells in LIST, checking for dependency loops. Prints
652progress messages every second. Dependent cells are not recalculated 656progress messages every second. Dependent cells are not recalculated
653if the cell's value is unchanged if FORCE is nil." 657if the cell's value is unchanged and FORCE is nil."
654 (let ((ses--deferred-recalc list) 658 (let ((ses--deferred-recalc list)
655 (nextlist list) 659 (nextlist list)
656 (pos (point)) 660 (pos (point))
@@ -709,7 +713,7 @@ if the cell's value is unchanged if FORCE is nil."
709 713
710(defun ses-in-print-area () 714(defun ses-in-print-area ()
711 "Returns t if point is in print area of spreadsheet." 715 "Returns t if point is in print area of spreadsheet."
712 (eq (get-text-property (point) 'keymap) 'ses-mode-print-map)) 716 (<= (point) ses--data-marker))
713 717
714;;We turn off point-motion-hooks and explicitly position the cursor, in case 718;;We turn off point-motion-hooks and explicitly position the cursor, in case
715;;the intangible properties have gotten screwed up (e.g., when 719;;the intangible properties have gotten screwed up (e.g., when
@@ -953,14 +957,16 @@ is one of the symbols ses--col-widths, ses--col-printers,
953ses--default-printer, ses--numrows, or ses--numcols." 957ses--default-printer, ses--numrows, or ses--numcols."
954 (ses-widen) 958 (ses-widen)
955 (let ((inhibit-point-motion-hooks t)) ;In case intangible attrs are wrong 959 (let ((inhibit-point-motion-hooks t)) ;In case intangible attrs are wrong
956 (goto-char (point-min))
957 (if col 960 (if col
958 ;;It's a cell 961 ;;It's a cell
959 (forward-line (+ ses--numrows 2 (* def (1+ ses--numcols)) col)) 962 (progn
960 ;;Convert def-symbol to offset 963 (goto-char ses--data-marker)
961 (setq def (plist-get ses-paramlines-plist def)) 964 (forward-line (+ 1 (* def (1+ ses--numcols)) col)))
962 (or def (signal 'args-out-of-range nil)) 965 ;;Convert def-symbol to offset
963 (forward-line (+ (* ses--numrows (+ ses--numcols 2)) def))))) 966 (setq def (plist-get ses-paramlines-plist def))
967 (or def (signal 'args-out-of-range nil))
968 (goto-char ses--params-marker)
969 (forward-line def))))
964 970
965(defun ses-set-parameter (def value &optional elem) 971(defun ses-set-parameter (def value &optional elem)
966 "Set parameter DEF to VALUE (with undo) and write the value to the data area. 972 "Set parameter DEF to VALUE (with undo) and write the value to the data area.
@@ -1070,6 +1076,23 @@ or t to get a wrong-type-argument error when the first reference is found."
1070 )))) 1076 ))))
1071 result-so-far) 1077 result-so-far)
1072 1078
1079(defsubst ses-relocate-symbol (sym rowcol startrow startcol rowincr colincr)
1080 "Relocate one symbol SYM, whichs corresponds to ROWCOL (a cons of ROW and
1081COL). Cells starting at (STARTROW,STARTCOL) are being shifted
1082by (ROWINCR,COLINCR)."
1083 (let ((row (car rowcol))
1084 (col (cdr rowcol)))
1085 (if (or (< row startrow) (< col startcol))
1086 sym
1087 (setq row (+ row rowincr)
1088 col (+ col colincr))
1089 (if (and (>= row startrow) (>= col startcol)
1090 (< row ses--numrows) (< col ses--numcols))
1091 ;;Relocate this variable
1092 (ses-create-cell-symbol row col)
1093 ;;Delete reference to a deleted cell
1094 nil))))
1095
1073(defun ses-relocate-formula (formula startrow startcol rowincr colincr) 1096(defun ses-relocate-formula (formula startrow startcol rowincr colincr)
1074 "Produce a copy of FORMULA where all symbols that refer to cells in row 1097 "Produce a copy of FORMULA where all symbols that refer to cells in row
1075STARTROW or above and col STARTCOL or above are altered by adding ROWINCR 1098STARTROW or above and col STARTCOL or above are altered by adding ROWINCR
@@ -1114,23 +1137,6 @@ Sets `ses-relocate-return' to 'delete if cell-references were removed."
1114 result)))) 1137 result))))
1115 (nreverse result)))) 1138 (nreverse result))))
1116 1139
1117(defun ses-relocate-symbol (sym rowcol startrow startcol rowincr colincr)
1118 "Relocate one symbol SYM, whichs corresponds to ROWCOL (a cons of ROW and
1119COL). Cells starting at (STARTROW,STARTCOL) are being shifted
1120by (ROWINCR,COLINCR)."
1121 (let ((row (car rowcol))
1122 (col (cdr rowcol)))
1123 (if (or (< row startrow) (< col startcol))
1124 sym
1125 (setq row (+ row rowincr)
1126 col (+ col colincr))
1127 (if (and (>= row startrow) (>= col startcol)
1128 (< row ses--numrows) (< col ses--numcols))
1129 ;;Relocate this variable
1130 (ses-create-cell-symbol row col)
1131 ;;Delete reference to a deleted cell
1132 nil))))
1133
1134(defun ses-relocate-range (range startrow startcol rowincr colincr) 1140(defun ses-relocate-range (range startrow startcol rowincr colincr)
1135 "Relocate one RANGE, of the form '(ses-range min max). Cells starting 1141 "Relocate one RANGE, of the form '(ses-range min max). Cells starting
1136at (STARTROW,STARTCOL) are being shifted by (ROWINCR,COLINCR). Result is the 1142at (STARTROW,STARTCOL) are being shifted by (ROWINCR,COLINCR). Result is the
@@ -1337,6 +1343,7 @@ execute cell formulas or print functions."
1337 (goto-char (point-max)) 1343 (goto-char (point-max))
1338 (search-backward ";; Local Variables:\n" nil t) 1344 (search-backward ";; Local Variables:\n" nil t)
1339 (backward-list 1) 1345 (backward-list 1)
1346 (setq ses--params-marker (point-marker))
1340 (let ((params (condition-case nil (read (current-buffer)) (error nil)))) 1347 (let ((params (condition-case nil (read (current-buffer)) (error nil))))
1341 (or (and (= (safe-length params) 3) 1348 (or (and (= (safe-length params) 3)
1342 (numberp (car params)) 1349 (numberp (car params))
@@ -1366,7 +1373,9 @@ execute cell formulas or print functions."
1366 (forward-line ses--numrows) 1373 (forward-line ses--numrows)
1367 (or (looking-at ses-print-data-boundary) 1374 (or (looking-at ses-print-data-boundary)
1368 (error "Missing marker between print and data areas")) 1375 (error "Missing marker between print and data areas"))
1369 (forward-char (length ses-print-data-boundary)) 1376 (forward-char 1)
1377 (setq ses--data-marker (point-marker))
1378 (forward-char (1- (length ses-print-data-boundary)))
1370 ;;Initialize printer and symbol lists 1379 ;;Initialize printer and symbol lists
1371 (mapc 'ses-printer-record ses-standard-printer-functions) 1380 (mapc 'ses-printer-record ses-standard-printer-functions)
1372 (setq ses--symbolic-formulas nil) 1381 (setq ses--symbolic-formulas nil)
@@ -1573,10 +1582,7 @@ narrows the buffer now."
1573 ;;We're not allowed to narrow the buffer until after-find-file has 1582 ;;We're not allowed to narrow the buffer until after-find-file has
1574 ;;read the local variables at the end of the file. Now it's safe to 1583 ;;read the local variables at the end of the file. Now it's safe to
1575 ;;do the narrowing. 1584 ;;do the narrowing.
1576 (save-excursion 1585 (narrow-to-region (point-min) ses--data-marker)
1577 (goto-char (point-min))
1578 (forward-line ses--numrows)
1579 (narrow-to-region (point-min) (point)))
1580 (setq ses--deferred-narrow nil)) 1586 (setq ses--deferred-narrow nil))
1581 ;;Update the modeline 1587 ;;Update the modeline
1582 (let ((oldcell ses--curcell)) 1588 (let ((oldcell ses--curcell))
@@ -1803,11 +1809,17 @@ cells."
1803 (dotimes (row ses--numrows) 1809 (dotimes (row ses--numrows)
1804 (insert ses--blank-line)) 1810 (insert ses--blank-line))
1805 (insert ses-print-data-boundary) 1811 (insert ses-print-data-boundary)
1812 (backward-char (1- (length ses-print-data-boundary)))
1813 (setq ses--data-marker (point-marker))
1814 (forward-char (1- (length ses-print-data-boundary)))
1806 ;;Placeholders for cell data 1815 ;;Placeholders for cell data
1807 (insert (make-string (* ses--numrows (1+ ses--numcols)) ?\n)) 1816 (insert (make-string (* ses--numrows (1+ ses--numcols)) ?\n))
1808 ;;Placeholders for col-widths, col-printers, default-printer, header-row 1817 ;;Placeholders for col-widths, col-printers, default-printer, header-row
1809 (insert "\n\n\n\n") 1818 (insert "\n\n\n\n")
1810 (insert ses-initial-global-parameters)) 1819 (insert ses-initial-global-parameters)
1820 (backward-char (1- (length ses-initial-global-parameters)))
1821 (setq ses--params-marker (point-marker))
1822 (forward-char (1- (length ses-initial-global-parameters))))
1811 (ses-set-parameter 'ses--col-widths ses--col-widths) 1823 (ses-set-parameter 'ses--col-widths ses--col-widths)
1812 (ses-set-parameter 'ses--col-printers ses--col-printers) 1824 (ses-set-parameter 'ses--col-printers ses--col-printers)
1813 (ses-set-parameter 'ses--default-printer ses--default-printer) 1825 (ses-set-parameter 'ses--default-printer ses--default-printer)
@@ -2880,7 +2892,8 @@ TEST is evaluated."
2880 (cons 'list result))) 2892 (cons 'list result)))
2881 2893
2882;;All standard formulas are safe 2894;;All standard formulas are safe
2883(dolist (x '(ses-range ses-delete-blanks ses+ ses-average ses-select)) 2895(dolist (x '(ses-cell-value ses-range ses-delete-blanks ses+ ses-average
2896 ses-select))
2884 (put x 'side-effect-free t)) 2897 (put x 'side-effect-free t))
2885 2898
2886 2899
diff --git a/lisp/simple.el b/lisp/simple.el
index a289f87f4d9..55f476213fd 100644
--- a/lisp/simple.el
+++ b/lisp/simple.el
@@ -128,7 +128,7 @@ If no other buffer exists, the buffer `*scratch*' is returned."
128 :group 'next-error 128 :group 'next-error
129 :version "22.1") 129 :version "22.1")
130 130
131(defcustom next-error-highlight 0.1 131(defcustom next-error-highlight 0.5
132 "*Highlighting of locations in selected source buffers. 132 "*Highlighting of locations in selected source buffers.
133If number, highlight the locus in `next-error' face for given time in seconds. 133If number, highlight the locus in `next-error' face for given time in seconds.
134If t, highlight the locus indefinitely until some other locus replaces it. 134If t, highlight the locus indefinitely until some other locus replaces it.
@@ -141,8 +141,8 @@ If `fringe-arrow', indicate the locus by the fringe arrow."
141 :group 'next-error 141 :group 'next-error
142 :version "22.1") 142 :version "22.1")
143 143
144(defcustom next-error-highlight-no-select 0.1 144(defcustom next-error-highlight-no-select 0.5
145 "*Highlighting of locations in non-selected source buffers. 145 "*Highlighting of locations in `next-error-no-select'.
146If number, highlight the locus in `next-error' face for given time in seconds. 146If number, highlight the locus in `next-error' face for given time in seconds.
147If t, highlight the locus indefinitely until some other locus replaces it. 147If t, highlight the locus indefinitely until some other locus replaces it.
148If nil, don't highlight the locus in the source buffer. 148If nil, don't highlight the locus in the source buffer.
@@ -1501,8 +1501,7 @@ Call `undo-start' to get ready to undo recent changes,
1501then call `undo-more' one or more times to undo them." 1501then call `undo-more' one or more times to undo them."
1502 (or (listp pending-undo-list) 1502 (or (listp pending-undo-list)
1503 (error (concat "No further undo information" 1503 (error (concat "No further undo information"
1504 (and transient-mark-mode mark-active 1504 (and undo-in-region " for region"))))
1505 " for region"))))
1506 (let ((undo-in-progress t)) 1505 (let ((undo-in-progress t))
1507 (setq pending-undo-list (primitive-undo n pending-undo-list)) 1506 (setq pending-undo-list (primitive-undo n pending-undo-list))
1508 (if (null pending-undo-list) 1507 (if (null pending-undo-list)
@@ -1649,12 +1648,12 @@ is not *inside* the region START...END."
1649 ((null (car undo-elt)) 1648 ((null (car undo-elt))
1650 ;; (nil PROPERTY VALUE BEG . END) 1649 ;; (nil PROPERTY VALUE BEG . END)
1651 (let ((tail (nthcdr 3 undo-elt))) 1650 (let ((tail (nthcdr 3 undo-elt)))
1652 (not (or (< (car tail) end) 1651 (and (< (car tail) end)
1653 (> (cdr tail) start))))) 1652 (> (cdr tail) start))))
1654 ((integerp (car undo-elt)) 1653 ((integerp (car undo-elt))
1655 ;; (BEGIN . END) 1654 ;; (BEGIN . END)
1656 (not (or (< (car undo-elt) end) 1655 (and (< (car undo-elt) end)
1657 (> (cdr undo-elt) start)))))) 1656 (> (cdr undo-elt) start)))))
1658 1657
1659;; Return the first affected buffer position and the delta for an undo element 1658;; Return the first affected buffer position and the delta for an undo element
1660;; delta is defined as the change in subsequent buffer positions if we *did* 1659;; delta is defined as the change in subsequent buffer positions if we *did*
@@ -2659,7 +2658,7 @@ The argument is used for internal purposes; do not supply one."
2659;; This is actually used in subr.el but defcustom does not work there. 2658;; This is actually used in subr.el but defcustom does not work there.
2660(defcustom yank-excluded-properties 2659(defcustom yank-excluded-properties
2661 '(read-only invisible intangible field mouse-face help-echo local-map keymap 2660 '(read-only invisible intangible field mouse-face help-echo local-map keymap
2662 yank-handler follow-link) 2661 yank-handler follow-link fontified)
2663 "*Text properties to discard when yanking. 2662 "*Text properties to discard when yanking.
2664The value should be a list of text properties to discard or t, 2663The value should be a list of text properties to discard or t,
2665which means to discard all text properties." 2664which means to discard all text properties."
@@ -3496,11 +3495,9 @@ Outline mode sets this."
3496 (>= rbot (frame-char-height)) 3495 (>= rbot (frame-char-height))
3497 (<= ypos (- (frame-char-height)))) 3496 (<= ypos (- (frame-char-height))))
3498 (unless lh 3497 (unless lh
3499 (let* ((wend (window-end nil t)) 3498 (let ((wend (pos-visible-in-window-p t nil t)))
3500 (evis (or (pos-visible-in-window-p wend nil t) 3499 (setq rbot (nth 3 wend)
3501 (pos-visible-in-window-p (1- wend) nil t)))) 3500 vpos (nth 5 wend))))
3502 (setq rbot (nth 3 evis)
3503 vpos (nth 5 evis))))
3504 (cond 3501 (cond
3505 ;; If last line of window is fully visible, move forward. 3502 ;; If last line of window is fully visible, move forward.
3506 ((or (null rbot) (= rbot 0)) 3503 ((or (null rbot) (= rbot 0))
@@ -3606,15 +3603,6 @@ Outline mode sets this."
3606 (let ((inhibit-field-text-motion t)) 3603 (let ((inhibit-field-text-motion t))
3607 (setq line-end (line-end-position))) 3604 (setq line-end (line-end-position)))
3608 (goto-char (constrain-to-field line-end (point) t t)) 3605 (goto-char (constrain-to-field line-end (point) t t))
3609 ;; When moving a single line, update the goal-column
3610 ;; if we couldn't move to the end of line due to a
3611 ;; field boundary. Otherwise we'll get stuck at the
3612 ;; original position during the column motion in
3613 ;; line-move-finish.
3614 (and (/= line-end (point))
3615 (= orig-arg 1)
3616 (setq temporary-goal-column
3617 (max temporary-goal-column (current-column))))
3618 ;; If there's no invisibility here, move over the newline. 3606 ;; If there's no invisibility here, move over the newline.
3619 (cond 3607 (cond
3620 ((eobp) 3608 ((eobp)
@@ -3681,6 +3669,7 @@ Outline mode sets this."
3681 (setq repeat nil) 3669 (setq repeat nil)
3682 3670
3683 (let (new 3671 (let (new
3672 (old (point))
3684 (line-beg (save-excursion (beginning-of-line) (point))) 3673 (line-beg (save-excursion (beginning-of-line) (point)))
3685 (line-end 3674 (line-end
3686 ;; Compute the end of the line 3675 ;; Compute the end of the line
@@ -3695,6 +3684,17 @@ Outline mode sets this."
3695 3684
3696 ;; Move to the desired column. 3685 ;; Move to the desired column.
3697 (line-move-to-column column) 3686 (line-move-to-column column)
3687
3688 ;; Corner case: suppose we start out in a field boundary in
3689 ;; the middle of a continued line. When we get to
3690 ;; line-move-finish, point is at the start of a new *screen*
3691 ;; line but the same text line; then line-move-to-column would
3692 ;; move us backwards. Test using C-n with point on the "x" in
3693 ;; (insert "a" (propertize "x" 'field t) (make-string 89 ?y))
3694 (and forward
3695 (< (point) old)
3696 (goto-char old))
3697
3698 (setq new (point)) 3698 (setq new (point))
3699 3699
3700 ;; Process intangibility within a line. 3700 ;; Process intangibility within a line.
@@ -3734,8 +3734,15 @@ Outline mode sets this."
3734 (goto-char opoint) 3734 (goto-char opoint)
3735 (let ((inhibit-point-motion-hooks nil)) 3735 (let ((inhibit-point-motion-hooks nil))
3736 (goto-char 3736 (goto-char
3737 (constrain-to-field new opoint t t 3737 ;; Ignore field boundaries if the initial and final
3738 'inhibit-line-move-field-capture))) 3738 ;; positions have the same `field' property, even if the
3739 ;; fields are non-contiguous. This seems to be "nicer"
3740 ;; behavior in many situations.
3741 (if (eq (get-char-property new 'field)
3742 (get-char-property opoint 'field))
3743 new
3744 (constrain-to-field new opoint t t
3745 'inhibit-line-move-field-capture))))
3739 3746
3740 ;; If all this moved us to a different line, 3747 ;; If all this moved us to a different line,
3741 ;; retry everything within that new line. 3748 ;; retry everything within that new line.
diff --git a/lisp/startup.el b/lisp/startup.el
index 2b9dd02ab9b..ba740a721d5 100644
--- a/lisp/startup.el
+++ b/lisp/startup.el
@@ -779,6 +779,7 @@ or `CVS', and any subdirectory that contains a file named `.nosearch'."
779 (custom-reevaluate-setting 'mouse-wheel-up-event) 779 (custom-reevaluate-setting 'mouse-wheel-up-event)
780 (custom-reevaluate-setting 'file-name-shadow-mode) 780 (custom-reevaluate-setting 'file-name-shadow-mode)
781 (custom-reevaluate-setting 'send-mail-function) 781 (custom-reevaluate-setting 'send-mail-function)
782 (custom-reevaluate-setting 'focus-follows-mouse)
782 (custom-reevaluate-setting 'global-auto-composition-mode) 783 (custom-reevaluate-setting 'global-auto-composition-mode)
783 784
784 ;; Register default TTY colors for the case the terminal hasn't a 785 ;; Register default TTY colors for the case the terminal hasn't a
@@ -1392,7 +1393,7 @@ mouse."
1392 (if (or (window-minibuffer-p) 1393 (if (or (window-minibuffer-p)
1393 (window-dedicated-p (selected-window))) 1394 (window-dedicated-p (selected-window)))
1394 (pop-to-buffer (current-buffer)) 1395 (pop-to-buffer (current-buffer))
1395 (switch-to-buffer "GNU Emacs")) 1396 (switch-to-buffer "*About GNU Emacs*"))
1396 (setq buffer-read-only nil) 1397 (setq buffer-read-only nil)
1397 (erase-buffer) 1398 (erase-buffer)
1398 (if pure-space-overflow 1399 (if pure-space-overflow
@@ -1608,7 +1609,9 @@ Type \\[describe-distribution] for information on getting the latest version."))
1608 (error (pop-to-buffer (current-buffer)))))) 1609 (error (pop-to-buffer (current-buffer))))))
1609 ;; Unwind ... ensure splash buffer is killed 1610 ;; Unwind ... ensure splash buffer is killed
1610 (if hide-on-input 1611 (if hide-on-input
1611 (kill-buffer "GNU Emacs"))))) 1612 (kill-buffer "GNU Emacs")
1613 (switch-to-buffer "GNU Emacs")
1614 (rename-buffer "*About GNU Emacs*" t)))))
1612 1615
1613 1616
1614(defun startup-echo-area-message () 1617(defun startup-echo-area-message ()
@@ -1627,8 +1630,9 @@ Type \\[describe-distribution] for information on getting the latest version."))
1627(defun display-splash-screen (&optional hide-on-input) 1630(defun display-splash-screen (&optional hide-on-input)
1628 "Display splash screen according to display. 1631 "Display splash screen according to display.
1629Fancy splash screens are used on graphic displays, 1632Fancy splash screens are used on graphic displays,
1630normal otherwise." 1633normal otherwise.
1631 (interactive) 1634With a prefix argument, any user input hides the splash screen."
1635 (interactive "P")
1632 (if (use-fancy-splash-screens-p) 1636 (if (use-fancy-splash-screens-p)
1633 (fancy-splash-screens hide-on-input) 1637 (fancy-splash-screens hide-on-input)
1634 (normal-splash-screen hide-on-input))) 1638 (normal-splash-screen hide-on-input)))
diff --git a/lisp/subr.el b/lisp/subr.el
index b165e8e9ad3..0d0bf7c7cc3 100644
--- a/lisp/subr.el
+++ b/lisp/subr.el
@@ -2053,7 +2053,8 @@ a system-dependent default device name is used."
2053 2053
2054(defun shell-quote-argument (argument) 2054(defun shell-quote-argument (argument)
2055 "Quote an argument for passing as argument to an inferior shell." 2055 "Quote an argument for passing as argument to an inferior shell."
2056 (if (eq system-type 'ms-dos) 2056 (if (or (eq system-type 'ms-dos)
2057 (and (eq system-type 'windows-nt) (w32-shell-dos-semantics)))
2057 ;; Quote using double quotes, but escape any existing quotes in 2058 ;; Quote using double quotes, but escape any existing quotes in
2058 ;; the argument with backslashes. 2059 ;; the argument with backslashes.
2059 (let ((result "") 2060 (let ((result "")
@@ -2067,19 +2068,17 @@ a system-dependent default device name is used."
2067 "\\" (substring argument end (1+ end))) 2068 "\\" (substring argument end (1+ end)))
2068 start (1+ end)))) 2069 start (1+ end))))
2069 (concat "\"" result (substring argument start) "\"")) 2070 (concat "\"" result (substring argument start) "\""))
2070 (if (eq system-type 'windows-nt) 2071 (if (equal argument "")
2071 (concat "\"" argument "\"") 2072 "''"
2072 (if (equal argument "") 2073 ;; Quote everything except POSIX filename characters.
2073 "''" 2074 ;; This should be safe enough even for really weird shells.
2074 ;; Quote everything except POSIX filename characters. 2075 (let ((result "") (start 0) end)
2075 ;; This should be safe enough even for really weird shells. 2076 (while (string-match "[^-0-9a-zA-Z_./]" argument start)
2076 (let ((result "") (start 0) end) 2077 (setq end (match-beginning 0)
2077 (while (string-match "[^-0-9a-zA-Z_./]" argument start) 2078 result (concat result (substring argument start end)
2078 (setq end (match-beginning 0) 2079 "\\" (substring argument end (1+ end)))
2079 result (concat result (substring argument start end) 2080 start (1+ end)))
2080 "\\" (substring argument end (1+ end))) 2081 (concat result (substring argument start))))))
2081 start (1+ end)))
2082 (concat result (substring argument start)))))))
2083 2082
2084(defun string-or-null-p (object) 2083(defun string-or-null-p (object)
2085 "Return t if OBJECT is a string or nil. 2084 "Return t if OBJECT is a string or nil.
@@ -2168,11 +2167,32 @@ If UNDO is present and non-nil, it is a function that will be called
2168 (let* ((handler (and (stringp string) 2167 (let* ((handler (and (stringp string)
2169 (get-text-property 0 'yank-handler string))) 2168 (get-text-property 0 'yank-handler string)))
2170 (param (or (nth 1 handler) string)) 2169 (param (or (nth 1 handler) string))
2171 (opoint (point))) 2170 (opoint (point))
2171 end)
2172
2172 (setq yank-undo-function t) 2173 (setq yank-undo-function t)
2173 (if (nth 0 handler) ;; FUNCTION 2174 (if (nth 0 handler) ;; FUNCTION
2174 (funcall (car handler) param) 2175 (funcall (car handler) param)
2175 (insert param)) 2176 (insert param))
2177 (setq end (point))
2178
2179 ;; What should we do with `font-lock-face' properties?
2180 (if font-lock-defaults
2181 ;; No, just wipe them.
2182 (remove-list-of-text-properties opoint end '(font-lock-face))
2183 ;; Convert them to `face'.
2184 (save-excursion
2185 (goto-char opoint)
2186 (while (< (point) end)
2187 (let ((face (get-text-property (point) 'font-lock-face))
2188 run-end)
2189 (setq run-end
2190 (next-single-property-change (point) 'font-lock-face nil end))
2191 (when face
2192 (remove-text-properties (point) run-end '(font-lock-face nil))
2193 (put-text-property (point) run-end 'face face))
2194 (goto-char run-end)))))
2195
2176 (unless (nth 2 handler) ;; NOEXCLUDE 2196 (unless (nth 2 handler) ;; NOEXCLUDE
2177 (remove-yank-excluded-properties opoint (point))) 2197 (remove-yank-excluded-properties opoint (point)))
2178 (if (eq yank-undo-function t) ;; not set by FUNCTION 2198 (if (eq yank-undo-function t) ;; not set by FUNCTION
@@ -3106,8 +3126,8 @@ Usually the separator is \".\", but it can be any other string.")
3106 3126
3107(defvar version-regexp-alist 3127(defvar version-regexp-alist
3108 '(("^[-_+ ]?a\\(lpha\\)?$" . -3) 3128 '(("^[-_+ ]?a\\(lpha\\)?$" . -3)
3109 ("^[-_+]$" . -3) ; treat "1.2.3-20050920" and "1.2-3" as alpha releases 3129 ("^[-_+]$" . -3) ; treat "1.2.3-20050920" and "1.2-3" as alpha releases
3110 ("^[-_+ ]cvs$" . -3) ; treat "1.2.3-CVS" as alpha release 3130 ("^[-_+ ]cvs$" . -3) ; treat "1.2.3-CVS" as alpha release
3111 ("^[-_+ ]?b\\(eta\\)?$" . -2) 3131 ("^[-_+ ]?b\\(eta\\)?$" . -2)
3112 ("^[-_+ ]?\\(pre\\|rc\\)$" . -1)) 3132 ("^[-_+ ]?\\(pre\\|rc\\)$" . -1))
3113 "*Specify association between non-numeric version part and a priority. 3133 "*Specify association between non-numeric version part and a priority.
diff --git a/lisp/textmodes/ispell.el b/lisp/textmodes/ispell.el
index 75b043af835..53cc61c48a2 100644
--- a/lisp/textmodes/ispell.el
+++ b/lisp/textmodes/ispell.el
@@ -2583,8 +2583,9 @@ By just answering RET you can find out what the current dictionary is."
2583 (cond ((equal dict "") 2583 (cond ((equal dict "")
2584 (ispell-internal-change-dictionary) 2584 (ispell-internal-change-dictionary)
2585 (message "Using %s dictionary" 2585 (message "Using %s dictionary"
2586 (or ispell-local-dictionary ispell-dictionary "default"))) 2586 (or (and (not arg) ispell-local-dictionary)
2587 ((equal dict (or ispell-local-dictionary 2587 ispell-dictionary "default")))
2588 ((equal dict (or (and (not arg) ispell-local-dictionary)
2588 ispell-dictionary "default")) 2589 ispell-dictionary "default"))
2589 ;; Specified dictionary is the default already. Could reload 2590 ;; Specified dictionary is the default already. Could reload
2590 ;; the dictionaries if needed. 2591 ;; the dictionaries if needed.
diff --git a/lisp/textmodes/org.el b/lisp/textmodes/org.el
index 64fbb0542ff..c8ecc3df63d 100644
--- a/lisp/textmodes/org.el
+++ b/lisp/textmodes/org.el
@@ -4569,7 +4569,7 @@ this heading. "
4569 ;; Make the subtree visible 4569 ;; Make the subtree visible
4570 (show-subtree) 4570 (show-subtree)
4571 (org-end-of-subtree t) 4571 (org-end-of-subtree t)
4572 (skip-chars-backward " \t\r\n]") 4572 (skip-chars-backward " \t\r\n")
4573 (and (looking-at "[ \t\r\n]*") 4573 (and (looking-at "[ \t\r\n]*")
4574 (replace-match "\n\n"))) 4574 (replace-match "\n\n")))
4575 ;; No specific heading, just go to end of file. 4575 ;; No specific heading, just go to end of file.
@@ -8660,7 +8660,7 @@ are included in the output."
8660 (push txt rtn)) 8660 (push txt rtn))
8661 ;; if we are to skip sublevels, jump to end of subtree 8661 ;; if we are to skip sublevels, jump to end of subtree
8662 (point) 8662 (point)
8663 (or org-tags-match-list-sublevels (org-end-of-subtree)))))) 8663 (or org-tags-match-list-sublevels (org-end-of-subtree t))))))
8664 (when (and (eq action 'sparse-tree) 8664 (when (and (eq action 'sparse-tree)
8665 (not org-sparse-tree-open-archived-trees)) 8665 (not org-sparse-tree-open-archived-trees))
8666 (org-hide-archived-subtrees (point-min) (point-max))) 8666 (org-hide-archived-subtrees (point-min) (point-max)))
@@ -9816,7 +9816,7 @@ on the system \"/user@host:\"."
9816 ((fboundp 'tramp-handle-file-remote-p) 9816 ((fboundp 'tramp-handle-file-remote-p)
9817 (tramp-handle-file-remote-p file)) 9817 (tramp-handle-file-remote-p file))
9818 ((and (boundp 'ange-ftp-name-format) 9818 ((and (boundp 'ange-ftp-name-format)
9819 (string-match ange-ftp-name-format file)) 9819 (string-match (car ange-ftp-name-format) file))
9820 t) 9820 t)
9821 (t nil))) 9821 (t nil)))
9822 9822
diff --git a/lisp/url/ChangeLog b/lisp/url/ChangeLog
index fdd735193c9..a6afb0ba20f 100644
--- a/lisp/url/ChangeLog
+++ b/lisp/url/ChangeLog
@@ -1,3 +1,9 @@
12006-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
2
3 * url-dav.el (url-dav-file-attributes): Simplify.
4
5 * url-http.el (url-http-head-file-attributes): Add device "info".
6
12006-09-18 Michael Olson <mwolson@gnu.org> 72006-09-18 Michael Olson <mwolson@gnu.org>
2 8
3 * url-methods.el (url-scheme-register-proxy): Handle case where 9 * url-methods.el (url-scheme-register-proxy): Handle case where
diff --git a/lisp/url/url-dav.el b/lisp/url/url-dav.el
index 449d8a510b5..546d744558d 100644
--- a/lisp/url/url-dav.el
+++ b/lisp/url/url-dav.el
@@ -621,59 +621,56 @@ Returns t iff the lock was successfully released."
621(autoload 'url-http-head-file-attributes "url-http") 621(autoload 'url-http-head-file-attributes "url-http")
622 622
623(defun url-dav-file-attributes (url &optional id-format) 623(defun url-dav-file-attributes (url &optional id-format)
624 (let ((properties (cdar (url-dav-get-properties url))) 624 (let ((properties (cdar (url-dav-get-properties url))))
625 (attributes nil))
626 (if (and properties 625 (if (and properties
627 (url-dav-http-success-p (plist-get properties 'DAV:status))) 626 (url-dav-http-success-p (plist-get properties 'DAV:status)))
628 ;; We got a good DAV response back.. 627 ;; We got a good DAV response back..
629 (setq attributes 628 (list
630 (list 629 ;; t for directory, string for symbolic link, or nil
631 ;; t for directory, string for symbolic link, or nil 630 ;; Need to support DAV Bindings to figure out the
632 ;; Need to support DAV Bindings to figure out the 631 ;; symbolic link issues.
633 ;; symbolic link issues. 632 (if (memq 'DAV:collection (plist-get properties 'DAV:resourcetype)) t nil)
634 (if (memq 'DAV:collection (plist-get properties 'DAV:resourcetype)) t nil)
635 633
636 ;; Number of links to file... Needs DAV Bindings. 634 ;; Number of links to file... Needs DAV Bindings.
637 1 635 1
638 636
639 ;; File uid - no way to figure out? 637 ;; File uid - no way to figure out?
640 0 638 0
641 639
642 ;; File gid - no way to figure out? 640 ;; File gid - no way to figure out?
643 0 641 0
644 642
645 ;; Last access time - ??? 643 ;; Last access time - ???
646 nil 644 nil
647 645
648 ;; Last modification time 646 ;; Last modification time
649 (plist-get properties 'DAV:getlastmodified) 647 (plist-get properties 'DAV:getlastmodified)
650 648
651 ;; Last status change time... just reuse last-modified 649 ;; Last status change time... just reuse last-modified
652 ;; for now. 650 ;; for now.
653 (plist-get properties 'DAV:getlastmodified) 651 (plist-get properties 'DAV:getlastmodified)
654 652
655 ;; size in bytes 653 ;; size in bytes
656 (or (plist-get properties 'DAV:getcontentlength) 0) 654 (or (plist-get properties 'DAV:getcontentlength) 0)
657 655
658 ;; file modes as a string like `ls -l' 656 ;; file modes as a string like `ls -l'
659 ;; 657 ;;
660 ;; Should be able to build this up from the 658 ;; Should be able to build this up from the
661 ;; DAV:supportedlock attribute pretty easily. Getting 659 ;; DAV:supportedlock attribute pretty easily. Getting
662 ;; the group info could be impossible though. 660 ;; the group info could be impossible though.
663 (url-dav-file-attributes-mode-string properties) 661 (url-dav-file-attributes-mode-string properties)
664 662
665 ;; t iff file's gid would change if it were deleted & 663 ;; t iff file's gid would change if it were deleted &
666 ;; recreated. No way for us to know that thru DAV. 664 ;; recreated. No way for us to know that thru DAV.
667 nil 665 nil
668 666
669 ;; inode number - meaningless 667 ;; inode number - meaningless
670 nil 668 nil
671 669
672 ;; device number - meaningless 670 ;; device number - meaningless
673 nil)) 671 nil)
674 ;; Fall back to just the normal http way of doing things. 672 ;; Fall back to just the normal http way of doing things.
675 (setq attributes (url-http-head-file-attributes url id-format))) 673 (url-http-head-file-attributes url id-format))))
676 attributes))
677 674
678(defun url-dav-save-resource (url obj &optional content-type lock-token) 675(defun url-dav-save-resource (url obj &optional content-type lock-token)
679 "Save OBJ as URL using WebDAV. 676 "Save OBJ as URL using WebDAV.
diff --git a/lisp/url/url-http.el b/lisp/url/url-http.el
index a1d87e1bd31..1b8bc459f49 100644
--- a/lisp/url/url-http.el
+++ b/lisp/url/url-http.el
@@ -1151,19 +1151,19 @@ CBARGS as the arguments."
1151(defalias 'url-http-file-readable-p 'url-http-file-exists-p) 1151(defalias 'url-http-file-readable-p 'url-http-file-exists-p)
1152 1152
1153(defun url-http-head-file-attributes (url &optional id-format) 1153(defun url-http-head-file-attributes (url &optional id-format)
1154 (let ((buffer (url-http-head url)) 1154 (let ((buffer (url-http-head url)))
1155 (attributes nil))
1156 (when buffer 1155 (when buffer
1157 (setq attributes (make-list 11 nil)) 1156 (prog1
1158 (setf (nth 1 attributes) 1) ; Number of links to file 1157 (list
1159 (setf (nth 2 attributes) 0) ; file uid 1158 nil ;dir / link / normal file
1160 (setf (nth 3 attributes) 0) ; file gid 1159 1 ;number of links to file.
1161 (setf (nth 7 attributes) ; file size 1160 0 0 ;uid ; gid
1162 (url-http-symbol-value-in-buffer 'url-http-content-length 1161 nil nil nil ;atime ; mtime ; ctime
1163 buffer -1)) 1162 (url-http-symbol-value-in-buffer 'url-http-content-length
1164 (setf (nth 8 attributes) (eval-when-compile (make-string 10 ?-))) 1163 buffer -1)
1165 (kill-buffer buffer)) 1164 (eval-when-compile (make-string 10 ?-))
1166 attributes)) 1165 nil nil nil) ;whether gid would change ; inode ; device.
1166 (kill-buffer buffer)))))
1167 1167
1168;;;###autoload 1168;;;###autoload
1169(defun url-http-file-attributes (url &optional id-format) 1169(defun url-http-file-attributes (url &optional id-format)
diff --git a/lisp/wid-edit.el b/lisp/wid-edit.el
index ba7a9b4a0a1..bef49d71a00 100644
--- a/lisp/wid-edit.el
+++ b/lisp/wid-edit.el
@@ -912,6 +912,10 @@ Recommended as a parent keymap for modes using widgets.")
912;; backward-compatibility alias 912;; backward-compatibility alias
913(put 'widget-button-pressed-face 'face-alias 'widget-button-pressed) 913(put 'widget-button-pressed-face 'face-alias 'widget-button-pressed)
914 914
915(defvar widget-button-click-moves-point nil
916 "If non-nil, `widget-button-click' moves point to a button after invoking it.
917If nil, point returns to its original position after invoking a button.")
918
915(defun widget-button-click (event) 919(defun widget-button-click (event)
916 "Invoke the button that the mouse is pointing at." 920 "Invoke the button that the mouse is pointing at."
917 (interactive "e") 921 (interactive "e")
@@ -922,7 +926,8 @@ Recommended as a parent keymap for modes using widgets.")
922 (start (event-start event)) 926 (start (event-start event))
923 (button (get-char-property 927 (button (get-char-property
924 pos 'button (and (windowp (posn-window start)) 928 pos 'button (and (windowp (posn-window start))
925 (window-buffer (posn-window start)))))) 929 (window-buffer (posn-window start)))))
930 newpoint)
926 (when (or (null button) 931 (when (or (null button)
927 (catch 'button-press-cancelled 932 (catch 'button-press-cancelled
928 ;; Mouse click on a widget button. Do the following 933 ;; Mouse click on a widget button. Do the following
@@ -974,12 +979,15 @@ Recommended as a parent keymap for modes using widgets.")
974 979
975 ;; When mouse is released over the button, run 980 ;; When mouse is released over the button, run
976 ;; its action function. 981 ;; its action function.
977 (when (and pos 982 (when (and pos (eq (get-char-property pos 'button) button))
978 (eq (get-char-property pos 'button) button)) 983 (goto-char pos)
979 (widget-apply-action button event))) 984 (widget-apply-action button event)
985 (if widget-button-click-moves-point
986 (setq newpoint (point)))))
980 (overlay-put overlay 'face face) 987 (overlay-put overlay 'face face)
981 (overlay-put overlay 'mouse-face mouse-face)))) 988 (overlay-put overlay 'mouse-face mouse-face))))
982 989
990 (if newpoint (goto-char newpoint))
983 ;; This loses if the widget action switches windows. -- cyd 991 ;; This loses if the widget action switches windows. -- cyd
984 ;; (unless (pos-visible-in-window-p (widget-event-point event)) 992 ;; (unless (pos-visible-in-window-p (widget-event-point event))
985 ;; (mouse-set-point event) 993 ;; (mouse-set-point event)
diff --git a/lisp/woman.el b/lisp/woman.el
index 3ee3e3f98d6..13fa3147487 100644
--- a/lisp/woman.el
+++ b/lisp/woman.el
@@ -438,6 +438,7 @@
438 438
439(eval-when-compile ; to avoid compiler warnings 439(eval-when-compile ; to avoid compiler warnings
440 (require 'dired) 440 (require 'dired)
441 (require 'cl)
441 (require 'apropos)) 442 (require 'apropos))
442 443
443(defun woman-mapcan (fn x) 444(defun woman-mapcan (fn x)
@@ -2467,6 +2468,7 @@ Start at FROM and re-scan new text as appropriate."
2467 (woman0-search-regex 2468 (woman0-search-regex
2468 (concat woman0-search-regex-start woman0-search-regex-end)) 2469 (concat woman0-search-regex-start woman0-search-regex-end))
2469 woman0-rename-alist) 2470 woman0-rename-alist)
2471 (set-marker-insertion-type woman0-if-to t)
2470 (while (re-search-forward woman0-search-regex nil t) 2472 (while (re-search-forward woman0-search-regex nil t)
2471 (setq request (match-string 1)) 2473 (setq request (match-string 1))
2472 (cond ((string= request "ig") (woman0-ig)) 2474 (cond ((string= request "ig") (woman0-ig))
@@ -2540,7 +2542,7 @@ REQUEST is the invoking directive without the leading dot."
2540 ;; String delimiter can be any non-numeric character, 2542 ;; String delimiter can be any non-numeric character,
2541 ;; including a special character escape: 2543 ;; including a special character escape:
2542 (looking-at "\\(\\\\(..\\|[^0-9]\\)\\(.*\\)\\1\\(.*\\)\\1\\'")) 2544 (looking-at "\\(\\\\(..\\|[^0-9]\\)\\(.*\\)\\1\\(.*\\)\\1\\'"))
2543 (let ((end1 (copy-marker (match-end 2)))) ; end of first string 2545 (let ((end1 (copy-marker (match-end 2) t))) ; End of first string.
2544 ;; Delete 2nd and 3rd delimiters to avoid processing them: 2546 ;; Delete 2nd and 3rd delimiters to avoid processing them:
2545 (delete-region (match-end 3) woman0-if-to) 2547 (delete-region (match-end 3) woman0-if-to)
2546 (delete-region (match-end 2) (match-beginning 3)) 2548 (delete-region (match-end 2) (match-beginning 3))
@@ -2655,10 +2657,9 @@ If DELETE is non-nil then delete from point."
2655 (error "File `%s' not found" name)) 2657 (error "File `%s' not found" name))
2656 (beginning-of-line) 2658 (beginning-of-line)
2657 (woman-delete-line 1) 2659 (woman-delete-line 1)
2658 (let ((from (point)) 2660 (let* ((from (point))
2659 (to (make-marker)) 2661 (length (woman-insert-file-contents filename 0))
2660 (length (woman-insert-file-contents filename 0))) 2662 (to (copy-marker (+ from length) t)))
2661 (set-marker to (+ from length))
2662 (woman-pre-process-region from to) 2663 (woman-pre-process-region from to)
2663 (set-marker to nil) 2664 (set-marker to nil)
2664 (goto-char from) 2665 (goto-char from)
@@ -3442,9 +3443,7 @@ Also bound locally in `woman2-roff-buffer'.")
3442(defsubst woman2-process-escapes-to-eol (&optional numeric) 3443(defsubst woman2-process-escapes-to-eol (&optional numeric)
3443 "Process remaining escape sequences up to eol. 3444 "Process remaining escape sequences up to eol.
3444Handle numeric arguments specially if optional argument NUMERIC is non-nil." 3445Handle numeric arguments specially if optional argument NUMERIC is non-nil."
3445 (woman2-process-escapes 3446 (woman2-process-escapes (copy-marker (line-end-position) t) numeric))
3446 (save-excursion (end-of-line) (point-marker))
3447 numeric))
3448 3447
3449(defun woman2-nr (to) 3448(defun woman2-nr (to)
3450 ".nr R +/-N M -- Assign +/-N (wrt to previous value, if any) to register R. 3449 ".nr R +/-N M -- Assign +/-N (wrt to previous value, if any) to register R.
@@ -3645,6 +3644,7 @@ expression in parentheses. Leaves point after the value."
3645 (woman-registers woman-registers) 3644 (woman-registers woman-registers)
3646 fn request translations 3645 fn request translations
3647 tab-stop-list) 3646 tab-stop-list)
3647 (set-marker-insertion-type to t)
3648 ;; ?roff does not squeeze multiple spaces, but does fill, so... 3648 ;; ?roff does not squeeze multiple spaces, but does fill, so...
3649 (fset 'canonically-space-region 'ignore) 3649 (fset 'canonically-space-region 'ignore)
3650 ;; Try to avoid spaces inheriting underlines from preceding text! 3650 ;; Try to avoid spaces inheriting underlines from preceding text!
@@ -3687,7 +3687,8 @@ expression in parentheses. Leaves point after the value."
3687 ;; Call the appropriate function: 3687 ;; Call the appropriate function:
3688 (funcall fn to))) 3688 (funcall fn to)))
3689 (if (not (eobp)) ; This should not happen, but ... 3689 (if (not (eobp)) ; This should not happen, but ...
3690 (woman2-format-paragraphs (point-max-marker) woman-left-margin)) 3690 (woman2-format-paragraphs (copy-marker (point-max) t)
3691 woman-left-margin))
3691 (fset 'canonically-space-region canonically-space-region) 3692 (fset 'canonically-space-region canonically-space-region)
3692 (fset 'set-text-properties set-text-properties) 3693 (fset 'set-text-properties set-text-properties)
3693 (fset 'insert-and-inherit insert-and-inherit) 3694 (fset 'insert-and-inherit insert-and-inherit)
@@ -3899,6 +3900,7 @@ Leave 1 blank line. Format paragraphs upto TO."
3899(defun woman2-process-escapes (to &optional numeric) 3900(defun woman2-process-escapes (to &optional numeric)
3900 "Process remaining escape sequences up to marker TO, preserving point. 3901 "Process remaining escape sequences up to marker TO, preserving point.
3901Optional argument NUMERIC, if non-nil, means the argument is numeric." 3902Optional argument NUMERIC, if non-nil, means the argument is numeric."
3903 (assert (and (markerp to) (marker-insertion-type to)))
3902 ;; The first two cases below could be merged (maybe)! 3904 ;; The first two cases below could be merged (maybe)!
3903 (let ((from (point))) 3905 (let ((from (point)))
3904 ;; Discard zero width filler character used to hide leading dots 3906 ;; Discard zero width filler character used to hide leading dots
@@ -3968,15 +3970,13 @@ Optional argument NUMERIC, if non-nil, means the argument is numeric."
3968 (delete-char -1) 3970 (delete-char -1)
3969 (delete-char 1) 3971 (delete-char 1)
3970 (looking-at "\\(.\\)\\(.*\\)\\1") 3972 (looking-at "\\(.\\)\\(.*\\)\\1")
3971 (let ((to (make-marker)) from N c) 3973 (forward-char 1)
3972 (set-marker to (match-end 2)) 3974 (let* ((to (match-end 2))
3973 (delete-char 1) 3975 (from (match-beginning 0))
3974 (setq from (point) 3976 (N (woman-parse-numeric-arg))
3975 N (woman-parse-numeric-arg)) 3977 (c (if (< (point) to) (following-char) ?_)))
3976 (setq c (if (< (point) to) (following-char) ?_))
3977 (delete-region from to) 3978 (delete-region from to)
3978 (delete-char 1) 3979 (delete-char 1)
3979 (set-marker to nil)
3980 (insert (make-string N c)) 3980 (insert (make-string N c))
3981 )) 3981 ))
3982 3982
diff --git a/lispref/ChangeLog b/lispref/ChangeLog
index d79ff074ba1..109ac9d704e 100644
--- a/lispref/ChangeLog
+++ b/lispref/ChangeLog
@@ -1,3 +1,41 @@
12006-09-29 Juri Linkov <juri@jurta.org>
2
3 * modes.texi (%-Constructs): Reorder coding systems in the
4 documentation of %z to the real order displayed in the modeline.
5
62006-09-25 Richard Stallman <rms@gnu.org>
7
8 * os.texi (Timers): Describe timer-max-repeats.
9
102006-09-25 Chong Yidong <cyd@stupidchicken.com>
11
12 * os.texi (Timers): Mention with-local-quit.
13
142006-09-24 Richard Stallman <rms@gnu.org>
15
16 * searching.texi (Searching and Matching): Mention property search.
17
18 * commands.texi (Command Loop Info): Explain how read-event affects
19 this-command-keys.
20
212006-09-21 Kim F. Storm <storm@cua.dk>
22
23 * lists.texi (Sets And Lists): Add memql.
24
252006-09-20 Richard Stallman <rms@gnu.org>
26
27 * os.texi (Timers): Clarify about REPEAT when timer is delayed.
28
29 * windows.texi (Window Start): Minor cleanups.
30
312006-09-20 Kim F. Storm <storm@cua.dk>
32
33 * windows.texi (Window Start): pos-visible-in-window-p allows
34 specifying t for position to mean "end of window".
35 Add window-line-height.
36
37 * anti.texi (Antinews): Mention window-line-height.
38
12006-09-19 David Kastrup <dak@gnu.org> 392006-09-19 David Kastrup <dak@gnu.org>
2 40
3 * keymaps.texi (Searching Keymaps): Small clarification. 41 * keymaps.texi (Searching Keymaps): Small clarification.
diff --git a/lispref/anti.texi b/lispref/anti.texi
index 8636282a7c2..50f93c49bf6 100644
--- a/lispref/anti.texi
+++ b/lispref/anti.texi
@@ -325,7 +325,8 @@ The functions @code{window-pixel-edges} and
325think in terms of lines and columns, not pixel coordinates. (Sometime 325think in terms of lines and columns, not pixel coordinates. (Sometime
326in the distant past, we will do away with graphical terminals 326in the distant past, we will do away with graphical terminals
327entirely, in favor of text terminals.) For similar reasons, the 327entirely, in favor of text terminals.) For similar reasons, the
328functions @code{posn-at-point} and @code{posn-at-x-y} have been removed, and 328functions @code{posn-at-point}, @code{posn-at-x-y}, and
329@code{window-line-height} have been removed, and
329@code{pos-visible-in-window-p} no longer worries about partially 330@code{pos-visible-in-window-p} no longer worries about partially
330visible rows. 331visible rows.
331 332
diff --git a/lispref/commands.texi b/lispref/commands.texi
index 514b55205a1..e27488964d0 100644
--- a/lispref/commands.texi
+++ b/lispref/commands.texi
@@ -788,11 +788,13 @@ was specified to run but remapped into another command.
788@anchor{Definition of this-command-keys} 788@anchor{Definition of this-command-keys}
789This function returns a string or vector containing the key sequence 789This function returns a string or vector containing the key sequence
790that invoked the present command, plus any previous commands that 790that invoked the present command, plus any previous commands that
791generated the prefix argument for this command. However, if the 791generated the prefix argument for this command. Any events read by the
792command has called @code{read-key-sequence}, it returns the last read 792command using @code{read-event} without a timeout get tacked on to the end.
793key sequence. @xref{Key Sequence Input}. The value is a string if 793
794all events in the sequence were characters that fit in a string. 794However, if the command has called @code{read-key-sequence}, it
795@xref{Input Events}. 795returns the last read key sequence. @xref{Key Sequence Input}. The
796value is a string if all events in the sequence were characters that
797fit in a string. @xref{Input Events}.
796 798
797@example 799@example
798@group 800@group
diff --git a/lispref/modes.texi b/lispref/modes.texi
index 68aeace5c38..bb8d840d0fb 100644
--- a/lispref/modes.texi
+++ b/lispref/modes.texi
@@ -1966,7 +1966,7 @@ meaningful distinction only on certain operating systems (@pxref{MS-DOS
1966File Types}). 1966File Types}).
1967 1967
1968@item %z 1968@item %z
1969The mnemonics of buffer, terminal, and keyboard coding systems. 1969The mnemonics of keyboard, terminal, and buffer coding systems.
1970 1970
1971@item %Z 1971@item %Z
1972Like @samp{%z}, but including the end-of-line format. 1972Like @samp{%z}, but including the end-of-line format.
diff --git a/lispref/os.texi b/lispref/os.texi
index edf5833bf42..a36d921f7af 100644
--- a/lispref/os.texi
+++ b/lispref/os.texi
@@ -1386,7 +1386,12 @@ function, because quitting out of many timer functions can leave
1386things in an inconsistent state. This is normally unproblematical 1386things in an inconsistent state. This is normally unproblematical
1387because most timer functions don't do a lot of work. Indeed, for a 1387because most timer functions don't do a lot of work. Indeed, for a
1388timer to call a function that takes substantial time to run is likely 1388timer to call a function that takes substantial time to run is likely
1389to be annoying. 1389to be annoying. If a timer function needs to allow quitting, it
1390should use @code{with-local-quit} (@pxref{Quitting}). For example, if
1391a timer function calls @code{accept-process-output} to receive output
1392from an external process, that call should be wrapped inside
1393@code{with-local-quit}, to ensure that @kbd{C-g} works if the external
1394process hangs.
1390 1395
1391 It is usually a bad idea for timer functions to alter buffer 1396 It is usually a bad idea for timer functions to alter buffer
1392contents. When they do, they usually should call @code{undo-boundary} 1397contents. When they do, they usually should call @code{undo-boundary}
@@ -1407,9 +1412,9 @@ it should save and restore the match data. @xref{Saving Match Data}.
1407@deffn Command run-at-time time repeat function &rest args 1412@deffn Command run-at-time time repeat function &rest args
1408This sets up a timer that calls the function @var{function} with 1413This sets up a timer that calls the function @var{function} with
1409arguments @var{args} at time @var{time}. If @var{repeat} is a number 1414arguments @var{args} at time @var{time}. If @var{repeat} is a number
1410(integer or floating point), the timer also runs every @var{repeat} 1415(integer or floating point), the timer is scheduled to run again every
1411seconds after that. If @var{repeat} is @code{nil}, the timer runs 1416@var{repeat} seconds after @var{time}. If @var{repeat} is @code{nil},
1412only once. 1417the timer runs only once.
1413 1418
1414@var{time} may specify an absolute or a relative time. 1419@var{time} may specify an absolute or a relative time.
1415 1420
@@ -1458,6 +1463,23 @@ the particular scheduled future action. You can use this value to call
1458@code{cancel-timer} (see below). 1463@code{cancel-timer} (see below).
1459@end deffn 1464@end deffn
1460 1465
1466 A repeating timer nominally ought to run every @var{repeat} seconds,
1467but remember that any invocation of a timer can be late. Lateness of
1468one repetition has no effect on the scheduled time of the next
1469repetition. For instance, if Emacs is busy computing for long enough
1470to cover three scheduled repetitions of the timer, and then starts to
1471wait, it will immediately call the timer function three times in
1472immediate succession (presuming no other timers trigger before or
1473between them). If you want a timer to run again no less than @var{n}
1474seconds after the last invocation, don't use the @var{repeat} argument.
1475Instead, the timer function should explicitly reschedule the timer.
1476
1477@defvar timer-max-repeats
1478This variable's value specifies the maximum number of times to repeat
1479calling a timer function in a row, when many previously scheduled
1480calls were unavoidably delayed.
1481@end defvar
1482
1461@defmac with-timeout (seconds timeout-forms@dots{}) body@dots{} 1483@defmac with-timeout (seconds timeout-forms@dots{}) body@dots{}
1462Execute @var{body}, but give up after @var{seconds} seconds. If 1484Execute @var{body}, but give up after @var{seconds} seconds. If
1463@var{body} finishes before the time is up, @code{with-timeout} returns 1485@var{body} finishes before the time is up, @code{with-timeout} returns
diff --git a/lispref/searching.texi b/lispref/searching.texi
index e93cee42a3b..e730d3b29ec 100644
--- a/lispref/searching.texi
+++ b/lispref/searching.texi
@@ -27,7 +27,8 @@ portions of it.
27@end menu 27@end menu
28 28
29 The @samp{skip-chars@dots{}} functions also perform a kind of searching. 29 The @samp{skip-chars@dots{}} functions also perform a kind of searching.
30@xref{Skipping Characters}. 30@xref{Skipping Characters}. To search for changes in character
31properties, see @ref{Property Search}.
31 32
32@node String Search 33@node String Search
33@section Searching for Strings 34@section Searching for Strings
diff --git a/lispref/windows.texi b/lispref/windows.texi
index cf045bfd5c4..bd9269f90ae 100644
--- a/lispref/windows.texi
+++ b/lispref/windows.texi
@@ -1355,6 +1355,9 @@ visible unless @var{partially} is non-@code{nil}. The argument
1355@var{position} defaults to the current position of point in 1355@var{position} defaults to the current position of point in
1356@var{window}; @var{window}, to the selected window. 1356@var{window}; @var{window}, to the selected window.
1357 1357
1358If @var{position} is @code{t}, that means to check the last visible
1359position in @var{window}.
1360
1358The @code{pos-visible-in-window-p} function considers only vertical 1361The @code{pos-visible-in-window-p} function considers only vertical
1359scrolling. If @var{position} is out of view only because @var{window} 1362scrolling. If @var{position} is out of view only because @var{window}
1360has been scrolled horizontally, @code{pos-visible-in-window-p} returns 1363has been scrolled horizontally, @code{pos-visible-in-window-p} returns
@@ -1368,7 +1371,7 @@ visible, it returns a list of the form @code{(@var{x} @var{y})}, where
1368corner of the window; otherwise it returns an extended list of the 1371corner of the window; otherwise it returns an extended list of the
1369form @code{(@var{x} @var{y} @var{rtop} @var{rbot} @var{rowh} 1372form @code{(@var{x} @var{y} @var{rtop} @var{rbot} @var{rowh}
1370@var{vpos})}, where the @var{rtop} and @var{rbot} specify the number 1373@var{vpos})}, where the @var{rtop} and @var{rbot} specify the number
1371of invisible pixels at the top and bottom of the row at 1374of off-window pixels at the top and bottom of the row at
1372@var{position}, @var{rowh} specifies the visible height of that row, 1375@var{position}, @var{rowh} specifies the visible height of that row,
1373and @var{vpos} specifies the vertical position (zero-based row number) 1376and @var{vpos} specifies the vertical position (zero-based row number)
1374of that row. 1377of that row.
@@ -1385,6 +1388,30 @@ Here is an example:
1385@end example 1388@end example
1386@end defun 1389@end defun
1387 1390
1391@defun window-line-height &optional line window
1392This function returns information about text line @var{line} in @var{window}.
1393If @var{line} is one of @code{header-line} or @code{mode-line},
1394@code{window-line-height} returns information about the corresponding
1395line of the window. Otherwise, @var{line} is a text line number
1396starting from 0. A negative number counts from the end of the window.
1397The argument @var{line} defaults to the current line in @var{window};
1398@var{window}, to the selected window.
1399
1400If the display is not up to date, @code{window-line-height} returns
1401@code{nil}. In that case, @code{pos-visible-in-window-p} may be used
1402to obtain related information.
1403
1404If there is no line corresponding to the specified @var{line},
1405@code{window-line-height} returns @code{nil}. Otherwise, it returns
1406a list @code{(@var{height} @var{vpos} @var{ypos} @var{offbot})},
1407where @var{height} is the height in pixels of the visible part of the
1408line, @var{vpos} and @var{ypos} are the vertical position in lines and
1409pixels of the line relative to the top of the first text line, and
1410@var{offbot} is the number of off-window pixels at the bottom of the
1411text line. If there are off-window pixels at the top of the (first)
1412text line, @var{ypos} is negative.
1413@end defun
1414
1388@node Textual Scrolling 1415@node Textual Scrolling
1389@section Textual Scrolling 1416@section Textual Scrolling
1390@cindex textual scrolling 1417@cindex textual scrolling
diff --git a/man/ChangeLog b/man/ChangeLog
index 56a9b542616..5eb8e609c6e 100644
--- a/man/ChangeLog
+++ b/man/ChangeLog
@@ -1,3 +1,30 @@
12006-10-02 Reiner Steib <Reiner.Steib@gmx.de>
2
3 * gnus.texi (Foreign Groups): Say where change of editing commands are
4 stored. Add reference to `gnus-parameters'.
5
62006-10-01 Karl Berry <karl@gnu.org>
7
8 * custom.texi (Customization Groups): page break to keep example buffer
9 on one page.
10
112006-09-30 Karl Berry <karl@gnu.org>
12
13 * programs.texi (Basic Indent): @need to improve page break.
14 * text.texi: rewording to improve page breaks, and use @LaTeX{}.
15
162006-09-29 Glenn Morris <rgm@gnu.org>
17
18 * calendar.texi (Date Formats): Doc fix for european-calendar-style.
19
202006-09-29 Karl Berry <karl@gnu.org>
21
22 * windows.texi (Basic Window): remove forced @break, no longer
23 desirable.
24 * frames.texi (Frame Commands),
25 * mark.texi (Marking Objects): reword to avoid bad page break.
26 * display.texi (Auto Scrolling): use @tie{} to avoid bad line break.
27
12006-09-19 Richard Stallman <rms@gnu.org> 282006-09-19 Richard Stallman <rms@gnu.org>
2 29
3 * frames.texi (Dialog Boxes): Clean up wording: avoid passive, 30 * frames.texi (Dialog Boxes): Clean up wording: avoid passive,
diff --git a/man/calendar.texi b/man/calendar.texi
index 32a53372a2b..4c424888baf 100644
--- a/man/calendar.texi
+++ b/man/calendar.texi
@@ -1204,11 +1204,12 @@ this matches any month, day, or year, respectively. Thus, a diary entry
1204 If you prefer the European style of writing dates---in which the day 1204 If you prefer the European style of writing dates---in which the day
1205comes before the month---type @kbd{M-x european-calendar} while in the 1205comes before the month---type @kbd{M-x european-calendar} while in the
1206calendar, or set the variable @code{european-calendar-style} to @code{t} 1206calendar, or set the variable @code{european-calendar-style} to @code{t}
1207@emph{before} using any calendar or diary command. This mode interprets 1207with @kbd{M-x customize}, or @emph{before} using any calendar or diary
1208all dates in the diary in the European manner, and also uses European 1208command. This mode interprets all dates in the diary in the European
1209style for displaying diary dates. (Note that there is no comma after 1209manner, and also uses European style for displaying diary dates. (Note
1210the @var{monthname} in the European style.) To go back to the (default) 1210that there is no comma after the @var{monthname} in the European style.)
1211American style of writing dates, type @kbd{M-x american-calendar}. 1211To go back to the (default) American style of writing dates, type
1212@kbd{M-x american-calendar}.
1212 1213
1213 You can use the name of a day of the week as a generic date which 1214 You can use the name of a day of the week as a generic date which
1214applies to any date falling on that day of the week. You can abbreviate 1215applies to any date falling on that day of the week. You can abbreviate
diff --git a/man/custom.texi b/man/custom.texi
index 682cb5b9310..d20558dd06b 100644
--- a/man/custom.texi
+++ b/man/custom.texi
@@ -231,7 +231,11 @@ the way up to a master group called @code{Emacs}.
231top-level @code{Emacs} group and the second-level groups immediately 231top-level @code{Emacs} group and the second-level groups immediately
232under it. It looks like this, in part: 232under it. It looks like this, in part:
233 233
234@c we want the buffer example to all be on one page, but unfortunately
235@c that's quite a bit of text, so force all space to the bottom.
236@page
234@smallexample 237@smallexample
238@group
235/- Emacs group: ---------------------------------------------------\ 239/- Emacs group: ---------------------------------------------------\
236 [State]: visible group members are all at standard values. 240 [State]: visible group members are all at standard values.
237 Customization of the One True Editor. 241 Customization of the One True Editor.
@@ -246,7 +250,7 @@ Interfacing to external utilities.
246@var{more second-level groups} 250@var{more second-level groups}
247 251
248\- Emacs group end ------------------------------------------------/ 252\- Emacs group end ------------------------------------------------/
249 253@end group
250@end smallexample 254@end smallexample
251 255
252@noindent 256@noindent
diff --git a/man/display.texi b/man/display.texi
index 74d2ba5eb62..73d91dfb1f2 100644
--- a/man/display.texi
+++ b/man/display.texi
@@ -167,7 +167,7 @@ window. However, if you set @code{scroll-conservatively} to a small
167number @var{n}, then if you move point just a little off the 167number @var{n}, then if you move point just a little off the
168screen---less than @var{n} lines---then Emacs scrolls the text just 168screen---less than @var{n} lines---then Emacs scrolls the text just
169far enough to bring point back on screen. By default, 169far enough to bring point back on screen. By default,
170@code{scroll-conservatively} is 0. 170@code{scroll-conservatively} is@tie{}0.
171 171
172@cindex aggressive scrolling 172@cindex aggressive scrolling
173@vindex scroll-up-aggressively 173@vindex scroll-up-aggressively
diff --git a/man/ebrowse.texi b/man/ebrowse.texi
index 0ffb7173e64..e1d2a86d387 100644
--- a/man/ebrowse.texi
+++ b/man/ebrowse.texi
@@ -59,7 +59,7 @@ Ebrowse.
59@end ifnottex 59@end ifnottex
60 60
61@menu 61@menu
62* Overview:: What is it and now does it work? 62* Overview:: What is it and how does it work?
63* Generating browser files:: How to process C++ source files 63* Generating browser files:: How to process C++ source files
64* Loading a Tree:: How to start browsing 64* Loading a Tree:: How to start browsing
65* Tree Buffers:: Traversing class hierarchies 65* Tree Buffers:: Traversing class hierarchies
diff --git a/man/frames.texi b/man/frames.texi
index eda8148a63d..f3191014434 100644
--- a/man/frames.texi
+++ b/man/frames.texi
@@ -516,13 +516,13 @@ Here's a similar example for specifying a foreground color:
516@kindex C-z @r{(X windows)} 516@kindex C-z @r{(X windows)}
517@findex iconify-or-deiconify-frame 517@findex iconify-or-deiconify-frame
518Iconify the selected Emacs frame (@code{iconify-or-deiconify-frame}). 518Iconify the selected Emacs frame (@code{iconify-or-deiconify-frame}).
519When typed on an Emacs frame's icon, deiconify instead.
520
519The normal meaning of @kbd{C-z}, to suspend Emacs, is not useful under 521The normal meaning of @kbd{C-z}, to suspend Emacs, is not useful under
520a graphical display that allows multiple applications to operate 522a graphical display that allows multiple applications to operate
521simultaneously in their own windows, so Emacs gives @kbd{C-z} a 523simultaneously in their own windows, so Emacs gives @kbd{C-z} a
522different binding in that case. 524different binding in that case.
523 525
524If you type this command on an Emacs frame's icon, it deiconifies the frame.
525
526@item C-x 5 0 526@item C-x 5 0
527@kindex C-x 5 0 527@kindex C-x 5 0
528@findex delete-frame 528@findex delete-frame
diff --git a/man/gnus.texi b/man/gnus.texi
index 0e8e9572349..973ba121f6f 100644
--- a/man/gnus.texi
+++ b/man/gnus.texi
@@ -2495,6 +2495,10 @@ special-purpose groups. All these commands insert the newly created
2495groups under point---@code{gnus-subscribe-newsgroup-method} is not 2495groups under point---@code{gnus-subscribe-newsgroup-method} is not
2496consulted. 2496consulted.
2497 2497
2498Changes from the group editing commands are stored in
2499@file{~/.newsrc.eld} (@code{gnus-startup-file}). An alternative is the
2500variable @code{gnus-parameters}, @xref{Group Parameters}.
2501
2498@table @kbd 2502@table @kbd
2499 2503
2500@item G m 2504@item G m
diff --git a/man/mark.texi b/man/mark.texi
index 2736dccd297..e39800ab1b5 100644
--- a/man/mark.texi
+++ b/man/mark.texi
@@ -334,11 +334,11 @@ Put region around current page (@code{mark-page}).
334@kbd{M-@@} (@code{mark-word}) puts the mark at the end of the next 334@kbd{M-@@} (@code{mark-word}) puts the mark at the end of the next
335word, while @kbd{C-M-@@} (@code{mark-sexp}) puts it at the end of the 335word, while @kbd{C-M-@@} (@code{mark-sexp}) puts it at the end of the
336next balanced expression (@pxref{Expressions}). These commands handle 336next balanced expression (@pxref{Expressions}). These commands handle
337arguments just like @kbd{M-f} and @kbd{C-M-f}. If you repeat these 337arguments just like @kbd{M-f} and @kbd{C-M-f}. Repeating these
338commands, that extends the region. For example, you can type either 338commands extends the region. For example, you can type either
339@kbd{C-u 2 M-@@} or @kbd{M-@@ M-@@} to mark the next two words. This 339@kbd{C-u 2 M-@@} or @kbd{M-@@ M-@@} to mark the next two words. These
340command also extends the region when the mark is active in Transient 340commands also extend the region in Transient Mark mode, regardless of
341Mark mode, regardless of the last command. 341the last command.
342 342
343@kindex C-x h 343@kindex C-x h
344@findex mark-whole-buffer 344@findex mark-whole-buffer
@@ -347,7 +347,7 @@ buffer. For example, @kbd{M-h} (@code{mark-paragraph}) moves point to
347the beginning of the paragraph that surrounds or follows point, and 347the beginning of the paragraph that surrounds or follows point, and
348puts the mark at the end of that paragraph (@pxref{Paragraphs}). It 348puts the mark at the end of that paragraph (@pxref{Paragraphs}). It
349prepares the region so you can indent, case-convert, or kill a whole 349prepares the region so you can indent, case-convert, or kill a whole
350paragraph. With prefix argument, if the argument's value is positive, 350paragraph. With a prefix argument, if the argument's value is positive,
351@kbd{M-h} marks that many paragraphs starting with the one surrounding 351@kbd{M-h} marks that many paragraphs starting with the one surrounding
352point. If the prefix argument is @minus{}@var{n}, @kbd{M-h} also 352point. If the prefix argument is @minus{}@var{n}, @kbd{M-h} also
353marks @var{n} paragraphs, running back form the one surrounding point. 353marks @var{n} paragraphs, running back form the one surrounding point.
diff --git a/man/programs.texi b/man/programs.texi
index 17aa9c9cb12..fb85e470f86 100644
--- a/man/programs.texi
+++ b/man/programs.texi
@@ -366,6 +366,7 @@ This program reformats a Lisp object with indentation chosen to look nice.
366 The basic indentation commands indent a single line according to the 366 The basic indentation commands indent a single line according to the
367usual conventions of the language you are editing. 367usual conventions of the language you are editing.
368 368
369@need 1000
369@table @kbd 370@table @kbd
370@item @key{TAB} 371@item @key{TAB}
371Adjust indentation of current line. 372Adjust indentation of current line.
diff --git a/man/texinfo.tex b/man/texinfo.tex
index 36c1acad97c..08177390672 100644
--- a/man/texinfo.tex
+++ b/man/texinfo.tex
@@ -3,7 +3,7 @@
3% Load plain if necessary, i.e., if running under initex. 3% Load plain if necessary, i.e., if running under initex.
4\expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi 4\expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi
5% 5%
6\def\texinfoversion{2006-07-17.16} 6\def\texinfoversion{2006-08-26.17}
7% 7%
8% Copyright (C) 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995, 8% Copyright (C) 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995,
9% 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free 9% 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free
@@ -2301,6 +2301,10 @@ where each line of input produces a line of output.}
2301 }$% 2301 }$%
2302} 2302}
2303 2303
2304% @textdegree - the normal degrees sign.
2305%
2306\def\textdegree{$^\circ$}
2307
2304% Laurent Siebenmann reports \Orb undefined with: 2308% Laurent Siebenmann reports \Orb undefined with:
2305% Textures 1.7.7 (preloaded format=plain 93.10.14) (68K) 16 APR 2004 02:38 2309% Textures 1.7.7 (preloaded format=plain 93.10.14) (68K) 16 APR 2004 02:38
2306% so we'll define it if necessary. 2310% so we'll define it if necessary.
@@ -3524,6 +3528,7 @@ where each line of input produces a line of output.}
3524 \definedummyword\point 3528 \definedummyword\point
3525 \definedummyword\print 3529 \definedummyword\print
3526 \definedummyword\result 3530 \definedummyword\result
3531 \definedummyword\textdegree
3527 % 3532 %
3528 % We want to disable all macros so that they are not expanded by \write. 3533 % We want to disable all macros so that they are not expanded by \write.
3529 \macrolist 3534 \macrolist
@@ -3657,6 +3662,7 @@ where each line of input produces a line of output.}
3657 \def\point{.}% 3662 \def\point{.}%
3658 \def\print{-|}% 3663 \def\print{-|}%
3659 \def\result{=>}% 3664 \def\result{=>}%
3665 \def\textdegree{degrees}%
3660 % 3666 %
3661 % We need to get rid of all macros, leaving only the arguments (if present). 3667 % We need to get rid of all macros, leaving only the arguments (if present).
3662 % Of course this is not nearly correct, but it is the best we can do for now. 3668 % Of course this is not nearly correct, but it is the best we can do for now.
diff --git a/man/text.texi b/man/text.texi
index b764a83d8db..78f35c9f8ca 100644
--- a/man/text.texi
+++ b/man/text.texi
@@ -34,10 +34,10 @@ structure.
34@end iftex 34@end iftex
35 35
36 For text which contains embedded commands for text formatters, Emacs 36 For text which contains embedded commands for text formatters, Emacs
37has other major modes, each for a particular text formatter. Thus, for 37has other major modes, each for a particular formatter. Thus, for
38input to @TeX{}, you would use @TeX{} 38input to @TeX{}, you would use @TeX{}
39@iftex 39@iftex
40mode (@pxref{TeX Mode}). 40mode (@pxref{TeX Mode,,@TeX{} Mode}).
41@end iftex 41@end iftex
42@ifnottex 42@ifnottex
43mode. 43mode.
@@ -106,7 +106,7 @@ Kill back to the beginning of a word (@code{backward-kill-word}).
106@item M-@@ 106@item M-@@
107Mark the end of the next word (@code{mark-word}). 107Mark the end of the next word (@code{mark-word}).
108@item M-t 108@item M-t
109Transpose two words or drag a word across other words 109Transpose two words or drag a word across others
110(@code{transpose-words}). 110(@code{transpose-words}).
111@end table 111@end table
112 112
@@ -156,7 +156,7 @@ of @kbd{M-@key{DEL}}.
156containing point with the following word. The delimiter characters between 156containing point with the following word. The delimiter characters between
157the words do not move. For example, @w{@samp{FOO, BAR}} transposes into 157the words do not move. For example, @w{@samp{FOO, BAR}} transposes into
158@w{@samp{BAR, FOO}} rather than @samp{@w{BAR FOO,}}. @xref{Transpose}, for 158@w{@samp{BAR, FOO}} rather than @samp{@w{BAR FOO,}}. @xref{Transpose}, for
159more on transposition and on arguments to transposition commands. 159more on transposition.
160 160
161@kindex M-@@ 161@kindex M-@@
162@findex mark-word 162@findex mark-word
@@ -230,7 +230,7 @@ A sentence also begins or ends wherever a paragraph begins or ends.
230It is useful to follow this convention, because it makes a distinction 230It is useful to follow this convention, because it makes a distinction
231between periods that end a sentence and periods that indicate 231between periods that end a sentence and periods that indicate
232abbreviations; that enables the Emacs sentence commands to distinguish, 232abbreviations; that enables the Emacs sentence commands to distinguish,
233too. These commands to not stop for periods that indicate abbreviations. 233too. These commands do not stop for periods that indicate abbreviations.
234 234
235@vindex sentence-end-double-space 235@vindex sentence-end-double-space
236 If you want to use just one space between sentences, you can set the 236 If you want to use just one space between sentences, you can set the
@@ -253,10 +253,10 @@ a detailed explanation of one of the regular expressions Emacs uses
253for this purpose. 253for this purpose.
254 254
255@vindex sentence-end-without-period 255@vindex sentence-end-without-period
256 Some languages do not use period to indicate end of sentence. For 256 Some languages do not use periods to indicate the end of a sentence.
257example, a sentence in Thai text ends with double space but without a 257For example, sentences in Thai end with a double space but without a
258period. Set the variable @code{sentence-end-without-period} to 258period. Set the variable @code{sentence-end-without-period} to
259@code{t} to tell the sentence commands that a period is not necessary. 259@code{t} in such cases.
260 260
261@node Paragraphs 261@node Paragraphs
262@section Paragraphs 262@section Paragraphs
@@ -267,7 +267,7 @@ period. Set the variable @code{sentence-end-without-period} to
267@findex backward-paragraph 267@findex backward-paragraph
268@findex forward-paragraph 268@findex forward-paragraph
269 269
270 The Emacs commands for manipulating paragraphs are also Meta keys. 270 The Emacs commands for manipulating paragraphs are also on Meta keys.
271 271
272@table @kbd 272@table @kbd
273@item M-@{ 273@item M-@{
@@ -938,7 +938,7 @@ which of these modes is actually being entered. @xref{Hooks}.
938 Emacs provides two other modes for editing text that is to be passed 938 Emacs provides two other modes for editing text that is to be passed
939through a text formatter to produce fancy formatted printed output. 939through a text formatter to produce fancy formatted printed output.
940@xref{Nroff Mode}, for editing input to the formatter nroff. 940@xref{Nroff Mode}, for editing input to the formatter nroff.
941@xref{TeX Mode}, for editing input to the formatter TeX. 941@xref{TeX Mode,,@TeX{} Mode}, for editing input to the formatter TeX.
942 942
943 Another mode is used for editing outlines. It allows you to view the 943 Another mode is used for editing outlines. It allows you to view the
944text at various levels of detail. You can view either the outline 944text at various levels of detail. You can view either the outline
@@ -1373,10 +1373,10 @@ automatically by putting this in your @file{.emacs} file:
1373also free software, like GNU Emacs. La@TeX{} is a simplified input 1373also free software, like GNU Emacs. La@TeX{} is a simplified input
1374format for @TeX{}, implemented by @TeX{} macros; it comes with @TeX{}. 1374format for @TeX{}, implemented by @TeX{} macros; it comes with @TeX{}.
1375Sli@TeX{} is a special form of La@TeX{}.@footnote{Sli@TeX{} is 1375Sli@TeX{} is a special form of La@TeX{}.@footnote{Sli@TeX{} is
1376obsoleted by the @samp{slides} document class in recent La@TeX{} 1376obsoleted by the @samp{slides} document class and other alternative
1377versions.} Doc@TeX{} (@file{.dtx}) is a special file format in which 1377packages in recent La@TeX{} versions.} Doc@TeX{} (@file{.dtx}) is a
1378the La@TeX{} sources are written, combining sources with 1378special file format in which the La@TeX{} sources are written,
1379documentation. 1379combining sources with documentation.
1380 1380
1381 Emacs has a special @TeX{} mode for editing @TeX{} input files. 1381 Emacs has a special @TeX{} mode for editing @TeX{} input files.
1382It provides facilities for checking the balance of delimiters and for 1382It provides facilities for checking the balance of delimiters and for
@@ -2356,8 +2356,8 @@ format, so other editors may not respect it.
2356 2356
2357 Normally, Emacs knows when you are editing formatted text because it 2357 Normally, Emacs knows when you are editing formatted text because it
2358recognizes the special annotations used in the file that you visited. 2358recognizes the special annotations used in the file that you visited.
2359However, there are situations in which you must take special actions 2359However, sometimes you must take special actions to convert file
2360to convert file contents or turn on Enriched mode: 2360contents or turn on Enriched mode:
2361 2361
2362@itemize @bullet 2362@itemize @bullet
2363@item 2363@item
@@ -2398,6 +2398,7 @@ appropriate, use @code{format-find-file} with suitable arguments.
2398text-based tables. Here is an example of such a table: 2398text-based tables. Here is an example of such a table:
2399 2399
2400@smallexample 2400@smallexample
2401@group
2401+-----------------+--------------------------------+-----------------+ 2402+-----------------+--------------------------------+-----------------+
2402| Command | Description | Key Binding | 2403| Command | Description | Key Binding |
2403+-----------------+--------------------------------+-----------------+ 2404+-----------------+--------------------------------+-----------------+
@@ -2414,6 +2415,7 @@ text-based tables. Here is an example of such a table:
2414| |end of buffer, stop and signal | | 2415| |end of buffer, stop and signal | |
2415| |error. | | 2416| |error. | |
2416+-----------------+--------------------------------+-----------------+ 2417+-----------------+--------------------------------+-----------------+
2418@end group
2417@end smallexample 2419@end smallexample
2418 2420
2419 Table mode allows the contents of the table such as this one to be 2421 Table mode allows the contents of the table such as this one to be
@@ -2800,6 +2802,7 @@ following one.
2800@c sticks out to accommodate for the removal of @samp in the 2802@c sticks out to accommodate for the removal of @samp in the
2801@c produced output!! 2803@c produced output!!
2802@smallexample 2804@smallexample
2805@group
2803+-----------------------------------------------------------------+ 2806+-----------------------------------------------------------------+
2804|@samp{table-capture} is a powerful command, but mastering its | 2807|@samp{table-capture} is a powerful command, but mastering its |
2805|power requires some practice. Here are some things it can do: | 2808|power requires some practice. Here are some things it can do: |
@@ -2816,6 +2819,7 @@ following one.
2816| the specified region is placed in that | 2819| the specified region is placed in that |
2817| cell. | 2820| cell. |
2818+-----------------------------------------------------------------+ 2821+-----------------------------------------------------------------+
2822@end group
2819@end smallexample 2823@end smallexample
2820 2824
2821@noindent 2825@noindent
diff --git a/man/windows.texi b/man/windows.texi
index afb9f4273e6..43609b4abdb 100644
--- a/man/windows.texi
+++ b/man/windows.texi
@@ -64,10 +64,6 @@ modification status and major and minor modes of the buffer that is
64displayed in the window. The selected window's mode line appears in a 64displayed in the window. The selected window's mode line appears in a
65different color. @xref{Mode Line}, for full details on the mode line. 65different color. @xref{Mode Line}, for full details on the mode line.
66 66
67@iftex
68@break
69@end iftex
70
71@node Split Window 67@node Split Window
72@section Splitting Windows 68@section Splitting Windows
73 69
diff --git a/nt/ChangeLog b/nt/ChangeLog
index 1b79cdd57c7..1283120db0d 100644
--- a/nt/ChangeLog
+++ b/nt/ChangeLog
@@ -1,3 +1,11 @@
12006-09-24 Eli Zaretskii <eliz@gnu.org>
2
3 * config.nt (HAVE_LANGINFO_CODESET): Define.
4
5 * inc/langinfo.h: New file.
6
7 * inc/nl_types.h: New file.
8
12006-09-15 Jay Belanger <belanger@truman.edu> 92006-09-15 Jay Belanger <belanger@truman.edu>
2 10
3 * COPYING: Replace "Library Public License" by "Lesser Public 11 * COPYING: Replace "Library Public License" by "Lesser Public
diff --git a/nt/config.nt b/nt/config.nt
index 482d2e6052b..c2e2ed8782e 100644
--- a/nt/config.nt
+++ b/nt/config.nt
@@ -251,6 +251,7 @@ Boston, MA 02110-1301, USA. */
251#define HAVE_SETSOCKOPT 1 251#define HAVE_SETSOCKOPT 1
252#define HAVE_GETSOCKNAME 1 252#define HAVE_GETSOCKNAME 1
253#define HAVE_GETPEERNAME 1 253#define HAVE_GETPEERNAME 1
254#define HAVE_LANGINFO_CODESET 1
254/* Local (unix) sockets are not supported. */ 255/* Local (unix) sockets are not supported. */
255#undef HAVE_SYS_UN_H 256#undef HAVE_SYS_UN_H
256 257
diff --git a/nt/inc/langinfo.h b/nt/inc/langinfo.h
new file mode 100644
index 00000000000..9661a4833d2
--- /dev/null
+++ b/nt/inc/langinfo.h
@@ -0,0 +1,64 @@
1/* Replacement langinfo.h file for building GNU Emacs on Windows.
2 Copyright (C) 2006 Free Software Foundation, Inc.
3
4This file is part of GNU Emacs.
5
6GNU Emacs is free software; you can redistribute it and/or modify
7it under the terms of the GNU General Public License as published by
8the Free Software Foundation; either version 2, or (at your option)
9any later version.
10
11GNU Emacs is distributed in the hope that it will be useful,
12but WITHOUT ANY WARRANTY; without even the implied warranty of
13MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14GNU General Public License for more details.
15
16You should have received a copy of the GNU General Public License
17along with GNU Emacs; see the file COPYING. If not, write to
18the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19Boston, MA 02110-1301, USA. */
20
21#ifndef _LANGINFO_H
22#define _LANGINFO_H
23
24#include <nl_types.h>
25
26enum {
27 CODESET,
28 DAY_1, DAY_2, DAY_3, DAY_4, DAY_5, DAY_6, DAY_7,
29 MON_1, MON_2, MON_3, MON_4, MON_5, MON_6, MON_7, MON_8, MON_9, MON_10,
30 MON_11, MON_12,
31
32 /* Number of enumerated values. */
33 _NL_NUM
34};
35
36#define CODESET CODESET
37
38#define DAY_1 DAY_1
39#define DAY_2 DAY_2
40#define DAY_3 DAY_3
41#define DAY_4 DAY_4
42#define DAY_5 DAY_5
43#define DAY_6 DAY_6
44#define DAY_7 DAY_7
45
46#define MON_1 MON_1
47#define MON_2 MON_2
48#define MON_3 MON_3
49#define MON_4 MON_4
50#define MON_5 MON_5
51#define MON_6 MON_6
52#define MON_7 MON_7
53#define MON_8 MON_8
54#define MON_9 MON_9
55#define MON_10 MON_10
56#define MON_11 MON_11
57#define MON_12 MON_12
58
59extern char *nl_langinfo (nl_item);
60
61#endif /* _LANGINFO_H */
62
63/* arch-tag: a8917b7c-fb2c-4685-902b-742d0f67661b
64 (do not change this comment) */
diff --git a/nt/inc/nl_types.h b/nt/inc/nl_types.h
new file mode 100644
index 00000000000..31c21be00bb
--- /dev/null
+++ b/nt/inc/nl_types.h
@@ -0,0 +1,29 @@
1/* Replacement nl_types.h file for building GNU Emacs on Windows.
2 Copyright (C) 2006 Free Software Foundation, Inc.
3
4This file is part of GNU Emacs.
5
6GNU Emacs is free software; you can redistribute it and/or modify
7it under the terms of the GNU General Public License as published by
8the Free Software Foundation; either version 2, or (at your option)
9any later version.
10
11GNU Emacs is distributed in the hope that it will be useful,
12but WITHOUT ANY WARRANTY; without even the implied warranty of
13MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14GNU General Public License for more details.
15
16You should have received a copy of the GNU General Public License
17along with GNU Emacs; see the file COPYING. If not, write to
18the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19Boston, MA 02110-1301, USA. */
20
21#ifndef _NL_TYPES_H
22#define _NL_TYPES_H
23
24typedef int nl_item;
25
26#endif /* _NL_TYPES_H */
27
28/* arch-tag: 518aa765-b846-4a7a-a862-95fd022928a1
29 (do not change this comment) */
diff --git a/src/ChangeLog b/src/ChangeLog
index 4b22c5d5dc0..79bfe7fe4eb 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,121 @@
12006-10-01 Stefan Monnier <monnier@iro.umontreal.ca>
2
3 * xdisp.c (handle_fontified_prop): Don't fontify at EOB.
4
52006-09-30 Eli Zaretskii <eliz@gnu.org>
6
7 * config.in Regenerated.
8
92006-09-29 Juri Linkov <juri@jurta.org>
10
11 * buffer.c (syms_of_buffer): Reorder coding systems in the
12 docstring of %z to the real order displayed in the modeline.
13
142006-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
15
16 * keymap.c (Fdefine_key): Yet another int/Lisp_Object mixup (YAILOM).
17
182006-09-26 Chong Yidong <cyd@stupidchicken.com>
19
20 * indent.c (Fvertical_motion): Do move back if the Lisp string
21 being displayed contains newlines.
22
232006-09-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
24
25 * macterm.c (mac_compute_glyph_string_overhangs, XLoadQueryFont)
26 [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw before QDTextBounds.
27
282006-09-26 Kenichi Handa <handa@m17n.org>
29
30 * keymap.c (Fsingle_key_description): For an invalid char, return
31 "Invalid char code NNNNN".
32
332006-09-25 Chong Yidong <cyd@stupidchicken.com>
34
35 * callint.c (Fcall_interactively): Doc fix.
36
372006-09-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
38
39 * macterm.c (x_underline_at_descent_line): New variable.
40 (syms_of_macterm): DEFVAR_BOOL it.
41 (x_draw_glyph_string): Use it.
42 (XLoadQueryFont): Calculate min_bounds.descent and max_bounds.descent.
43
442006-09-25 Kenichi Handa <handa@m17n.org>
45
46 * keymap.c (Fsingle_key_description): Return unique names for
47 generic characters.
48
492006-09-24 Richard Stallman <rms@gnu.org>
50
51 * search.c (compile_pattern_1): Don't BLOCK_INPUT.
52
532006-09-24 Eli Zaretskii <eliz@gnu.org>
54
55 * makefile.w32-in ($(BLD)/fns.$(O), $(BLD)/w32proc.$(O)): Depend
56 on nt/inc/langinfo.h and nt/inc/nl_types.h.
57
58 * w32proc.c (nl_langinfo): New function.
59
60 * w32fns.c (w32-pass-alt-to-system, w32-alt-is-meta)
61 (w32-pass-lwindow-to-system, w32-enable-num-lock)
62 (w32-enable-caps-lock, w32-scroll-lock-modifier)
63 (w32-lwindow-modifier, w32-rwindow-modifier)
64 (w32-apps-modifier, w32-mouse-button-tolerance): Doc fix.
65
662006-09-23 Juanma Barranquero <lekktu@gmail.com>
67
68 * minibuf.c (Finternal_complete_buffer, Fread_minibuffer)
69 (Fdisplay_completion_list): Fix typos in docstrings.
70
712006-09-23 Romain Francoise <romain@orebokech.com>
72
73 * s/gnu-linux.h (MAIL_USE_FLOCK): Check for HAVE_LIBLOCKFILE too.
74
752006-09-23 Kenichi Handa <handa@m17n.org>
76
77 * keymap.c (Fmap_keymap): Docstring mentions about generic character.
78
792006-09-22 Stefan Monnier <monnier@iro.umontreal.ca>
80
81 * regex.c (analyse_first): For eight-bit-control chars, mark both the
82 char's value and its leading byte in the fastmap.
83 (re_search_2): When fast-scanning without translation, be careful to
84 check that we only match the leading byte of a multibyte char.
85
86 * charset.h (PREV_CHAR_BOUNDARY): Make it work from within a char's
87 byte sequence.
88 (AT_CHAR_BOUNDARY): New macro.
89
902006-09-22 Kenichi Handa <handa@m17n.org>
91
92 * fns.c (optimize_sub_char_table): Don't optimize a sub-char-table
93 whose default value is non-nil.
94
952006-09-22 Jan Dj,Ad(Brv <jan.h.d@swipnet.se>
96
97 * gtkutil.c (xg_get_file_with_chooser): Only show C-l help for
98 Gtk+ versions < 2.10.
99
100 * xfns.c (syms_of_xfns): Fix typo in help text for
101 x-gtk-file-dialog-help-text.
102
1032006-09-21 Kim F. Storm <storm@cua.dk>
104
105 * fns.c (Fmemq): Refill doc string.
106 (Fmemql): New defun, like memq but using eql.
107 (syms_of_fns): Defsubr it.
108
1092006-09-20 Kim F. Storm <storm@cua.dk>
110
111 * xdisp.c (pos_visible_p): CHARPOS < 0 means return info for
112 last visible glyph in window.
113
114 * window.c (Fset_window_hscroll, Fwindow_line_height):
115 Doc fix. Use "off-window" instead of "off-screen".
116 (Fpos_visible_in_window_p): Likewise.
117 If POS is t, return info for last visible glyph in window.
118
12006-09-19 Chong Yidong <cyd@stupidchicken.com> 1192006-09-19 Chong Yidong <cyd@stupidchicken.com>
2 120
3 * search.c (struct regexp_cache): New entry syntax_table. 121 * search.c (struct regexp_cache): New entry syntax_table.
@@ -242,7 +360,7 @@
242 360
2432006-08-27 Martin Rudalics <rudalics@gmx.at> 3612006-08-27 Martin Rudalics <rudalics@gmx.at>
244 362
245 * xdisp.c (mouse_autoselect_window): Removed. 363 * xdisp.c (mouse_autoselect_window): Remove.
246 (Vmouse_autoselect_window): New variable. DEFVAR_LISP it. 364 (Vmouse_autoselect_window): New variable. DEFVAR_LISP it.
247 365
248 * dispextern.h (mouse_autoselect_window): Remove extern. 366 * dispextern.h (mouse_autoselect_window): Remove extern.
diff --git a/src/buffer.c b/src/buffer.c
index 5369fe0fac1..47877b6a37b 100644
--- a/src/buffer.c
+++ b/src/buffer.c
@@ -5507,7 +5507,7 @@ A string is printed verbatim in the mode line except for %-constructs:
5507 or print Bottom or All. 5507 or print Bottom or All.
5508 %n -- print Narrow if appropriate. 5508 %n -- print Narrow if appropriate.
5509 %t -- visited file is text or binary (if OS supports this distinction). 5509 %t -- visited file is text or binary (if OS supports this distinction).
5510 %z -- print mnemonics of buffer, terminal, and keyboard coding systems. 5510 %z -- print mnemonics of keyboard, terminal, and buffer coding systems.
5511 %Z -- like %z, but including the end-of-line format. 5511 %Z -- like %z, but including the end-of-line format.
5512 %e -- print error message about full memory. 5512 %e -- print error message about full memory.
5513 %[ -- print one [ for each recursive editing level. %] similar. 5513 %[ -- print one [ for each recursive editing level. %] similar.
diff --git a/src/callint.c b/src/callint.c
index 4c8a5718cd9..392b6f00eec 100644
--- a/src/callint.c
+++ b/src/callint.c
@@ -257,9 +257,11 @@ See `interactive'.
257Optional second arg RECORD-FLAG non-nil 257Optional second arg RECORD-FLAG non-nil
258means unconditionally put this command in the command-history. 258means unconditionally put this command in the command-history.
259Otherwise, this is done only if an arg is read using the minibuffer. 259Otherwise, this is done only if an arg is read using the minibuffer.
260
260Optional third arg KEYS, if given, specifies the sequence of events to 261Optional third arg KEYS, if given, specifies the sequence of events to
261supply if the command inquires which events were used to invoke it. 262supply, as a vector, if the command inquires which events were used to
262If KEYS is omitted or nil, the return value of `this-command-keys' is used. */) 263invoke it. If KEYS is omitted or nil, the return value of
264`this-command-keys-vector' is used. */)
263 (function, record_flag, keys) 265 (function, record_flag, keys)
264 Lisp_Object function, record_flag, keys; 266 Lisp_Object function, record_flag, keys;
265{ 267{
diff --git a/src/config.in b/src/config.in
index 44a56e36dd3..106aeea920c 100644
--- a/src/config.in
+++ b/src/config.in
@@ -124,10 +124,6 @@ Boston, MA 02110-1301, USA. */
124 don't. */ 124 don't. */
125#undef HAVE_DECL_SYS_SIGLIST 125#undef HAVE_DECL_SYS_SIGLIST
126 126
127/* Define to 1 if you have the declaration of `tzname', and to 0 if you don't.
128 */
129#undef HAVE_DECL_TZNAME
130
131/* Define to 1 if you have the declaration of `__sys_siglist', and to 0 if you 127/* Define to 1 if you have the declaration of `__sys_siglist', and to 0 if you
132 don't. */ 128 don't. */
133#undef HAVE_DECL___SYS_SIGLIST 129#undef HAVE_DECL___SYS_SIGLIST
@@ -809,7 +805,7 @@ Boston, MA 02110-1301, USA. */
809 805
810/* If using the C implementation of alloca, define if you know the 806/* If using the C implementation of alloca, define if you know the
811 direction of stack growth for your system; otherwise it will be 807 direction of stack growth for your system; otherwise it will be
812 automatically deduced at runtime. 808 automatically deduced at run-time.
813 STACK_DIRECTION > 0 => grows toward higher addresses 809 STACK_DIRECTION > 0 => grows toward higher addresses
814 STACK_DIRECTION < 0 => grows toward lower addresses 810 STACK_DIRECTION < 0 => grows toward lower addresses
815 STACK_DIRECTION = 0 => direction of growth unknown */ 811 STACK_DIRECTION = 0 => direction of growth unknown */
diff --git a/src/fns.c b/src/fns.c
index 044f82fcdb6..e77d8cbca7e 100644
--- a/src/fns.c
+++ b/src/fns.c
@@ -1383,11 +1383,10 @@ The value is actually the tail of LIST whose car is ELT. */)
1383} 1383}
1384 1384
1385DEFUN ("memq", Fmemq, Smemq, 2, 2, 0, 1385DEFUN ("memq", Fmemq, Smemq, 2, 2, 0,
1386 doc: /* Return non-nil if ELT is an element of LIST. 1386doc: /* Return non-nil if ELT is an element of LIST. Comparison done with `eq'.
1387Comparison done with `eq'. The value is actually the tail of LIST 1387The value is actually the tail of LIST whose car is ELT. */)
1388whose car is ELT. */)
1389 (elt, list) 1388 (elt, list)
1390 Lisp_Object elt, list; 1389 register Lisp_Object elt, list;
1391{ 1390{
1392 while (1) 1391 while (1)
1393 { 1392 {
@@ -1410,6 +1409,30 @@ whose car is ELT. */)
1410 return list; 1409 return list;
1411} 1410}
1412 1411
1412DEFUN ("memql", Fmemql, Smemql, 2, 2, 0,
1413doc: /* Return non-nil if ELT is an element of LIST. Comparison done with `eql'.
1414The value is actually the tail of LIST whose car is ELT. */)
1415 (elt, list)
1416 register Lisp_Object elt;
1417 Lisp_Object list;
1418{
1419 register Lisp_Object tail;
1420
1421 if (!FLOATP (elt))
1422 return Fmemq (elt, list);
1423
1424 for (tail = list; !NILP (tail); tail = XCDR (tail))
1425 {
1426 register Lisp_Object tem;
1427 CHECK_LIST_CONS (tail, list);
1428 tem = XCAR (tail);
1429 if (FLOATP (tem) && internal_equal (elt, tem, 0, 0))
1430 return tail;
1431 QUIT;
1432 }
1433 return Qnil;
1434}
1435
1413DEFUN ("assq", Fassq, Sassq, 2, 2, 0, 1436DEFUN ("assq", Fassq, Sassq, 2, 2, 0,
1414 doc: /* Return non-nil if KEY is `eq' to the car of an element of LIST. 1437 doc: /* Return non-nil if KEY is `eq' to the car of an element of LIST.
1415The value is actually the first element of LIST whose car is KEY. 1438The value is actually the first element of LIST whose car is KEY.
@@ -5207,6 +5230,7 @@ used if both `use-dialog-box' and this variable are non-nil. */);
5207 defsubr (&Selt); 5230 defsubr (&Selt);
5208 defsubr (&Smember); 5231 defsubr (&Smember);
5209 defsubr (&Smemq); 5232 defsubr (&Smemq);
5233 defsubr (&Smemql);
5210 defsubr (&Sassq); 5234 defsubr (&Sassq);
5211 defsubr (&Sassoc); 5235 defsubr (&Sassoc);
5212 defsubr (&Srassq); 5236 defsubr (&Srassq);
diff --git a/src/gtkutil.c b/src/gtkutil.c
index cdc87044c81..fb3c9447f84 100644
--- a/src/gtkutil.c
+++ b/src/gtkutil.c
@@ -1382,7 +1382,9 @@ xg_get_file_with_chooser (f, prompt, default_filename,
1382 if (x_gtk_file_dialog_help_text) 1382 if (x_gtk_file_dialog_help_text)
1383 { 1383 {
1384 message[0] = '\0'; 1384 message[0] = '\0';
1385 if (action != GTK_FILE_CHOOSER_ACTION_SAVE) 1385 /* Gtk+ 2.10 has the file name text entry box integrated in the dialog.
1386 Show the C-l help text only for versions < 2.10. */
1387 if (gtk_check_version (2, 10, 0) && action != GTK_FILE_CHOOSER_ACTION_SAVE)
1386 strcat (message, "\nType C-l to display a file name text entry box.\n"); 1388 strcat (message, "\nType C-l to display a file name text entry box.\n");
1387 strcat (message, "\nIf you don't like this file selector, use the " 1389 strcat (message, "\nIf you don't like this file selector, use the "
1388 "corresponding\nkey binding or customize " 1390 "corresponding\nkey binding or customize "
diff --git a/src/indent.c b/src/indent.c
index 8ea3ea66c1d..6a3cda9e9d5 100644
--- a/src/indent.c
+++ b/src/indent.c
@@ -2074,7 +2074,7 @@ whether or not it is currently displayed in some window. */)
2074 { 2074 {
2075 int it_start; 2075 int it_start;
2076 int oselective; 2076 int oselective;
2077 int start_on_image_or_stretch_or_string_p; 2077 int it_overshoot_expected_p;
2078 2078
2079 SET_TEXT_POS (pt, PT, PT_BYTE); 2079 SET_TEXT_POS (pt, PT, PT_BYTE);
2080 start_display (&it, w, pt); 2080 start_display (&it, w, pt);
@@ -2086,9 +2086,26 @@ whether or not it is currently displayed in some window. */)
2086 while the end position is really at some X > 0, the same X that 2086 while the end position is really at some X > 0, the same X that
2087 PT had. */ 2087 PT had. */
2088 it_start = IT_CHARPOS (it); 2088 it_start = IT_CHARPOS (it);
2089 start_on_image_or_stretch_or_string_p = (it.method == GET_FROM_IMAGE 2089
2090 || it.method == GET_FROM_STRETCH 2090 /* We expect the call to move_it_to, further down, to overshoot
2091 || it.method == GET_FROM_STRING); 2091 if the starting point is on an image, stretch glyph, or Lisp
2092 string. We won't need to backtrack in this situation, except
2093 for one corner case: when the Lisp string contains a
2094 newline. */
2095 if (it.method == GET_FROM_STRING)
2096 {
2097 const char *s = SDATA (it.string);
2098 const char *e = s + SBYTES (it.string);
2099
2100 while (s < e && *s != '\n')
2101 ++s;
2102
2103 it_overshoot_expected_p = (s == e);
2104 }
2105 else
2106 it_overshoot_expected_p = (it.method == GET_FROM_IMAGE
2107 || it.method == GET_FROM_STRETCH);
2108
2092 reseat_at_previous_visible_line_start (&it); 2109 reseat_at_previous_visible_line_start (&it);
2093 it.current_x = it.hpos = 0; 2110 it.current_x = it.hpos = 0;
2094 /* Temporarily disable selective display so we don't move too far */ 2111 /* Temporarily disable selective display so we don't move too far */
@@ -2099,10 +2116,9 @@ whether or not it is currently displayed in some window. */)
2099 2116
2100 /* Move back if we got too far. This may happen if 2117 /* Move back if we got too far. This may happen if
2101 truncate-lines is on and PT is beyond right margin. 2118 truncate-lines is on and PT is beyond right margin.
2102 It may also happen if it_start is on an image, stretch 2119 Don't go back if the overshoot is expected (see above). */
2103 glyph, or string -- in that case, don't go back. */
2104 if (IT_CHARPOS (it) > it_start && XINT (lines) > 0 2120 if (IT_CHARPOS (it) > it_start && XINT (lines) > 0
2105 && !start_on_image_or_stretch_or_string_p) 2121 && !it_overshoot_expected_p)
2106 move_it_by_lines (&it, -1, 0); 2122 move_it_by_lines (&it, -1, 0);
2107 2123
2108 it.vpos = 0; 2124 it.vpos = 0;
diff --git a/src/keymap.c b/src/keymap.c
index 9720708ecf9..237bc0db9df 100644
--- a/src/keymap.c
+++ b/src/keymap.c
@@ -725,7 +725,10 @@ map_keymap_call (key, val, fun, dummy)
725DEFUN ("map-keymap", Fmap_keymap, Smap_keymap, 2, 3, 0, 725DEFUN ("map-keymap", Fmap_keymap, Smap_keymap, 2, 3, 0,
726 doc: /* Call FUNCTION once for each event binding in KEYMAP. 726 doc: /* Call FUNCTION once for each event binding in KEYMAP.
727FUNCTION is called with two arguments: the event that is bound, and 727FUNCTION is called with two arguments: the event that is bound, and
728the definition it is bound to. 728the definition it is bound to. If the event is an integer, it may be
729a generic character (see Info node `(elisp)Splitting Characters'), and
730that means that all actual character events belonging to that generic
731character are bound to the definition.
729 732
730If KEYMAP has a parent, the parent's bindings are included as well. 733If KEYMAP has a parent, the parent's bindings are included as well.
731This works recursively: if the parent has itself a parent, then the 734This works recursively: if the parent has itself a parent, then the
@@ -1176,7 +1179,7 @@ binding KEY to DEF is added at the front of KEYMAP. */)
1176 1179
1177 meta_bit = VECTORP (key) ? meta_modifier : 0x80; 1180 meta_bit = VECTORP (key) ? meta_modifier : 0x80;
1178 1181
1179 if (VECTORP (def) && ASIZE (def) > 0 && CONSP (AREF (def, make_number (0)))) 1182 if (VECTORP (def) && ASIZE (def) > 0 && CONSP (AREF (def, 0)))
1180 { /* DEF is apparently an XEmacs-style keyboard macro. */ 1183 { /* DEF is apparently an XEmacs-style keyboard macro. */
1181 Lisp_Object tmp = Fmake_vector (make_number (ASIZE (def)), Qnil); 1184 Lisp_Object tmp = Fmake_vector (make_number (ASIZE (def)), Qnil);
1182 int i = ASIZE (def); 1185 int i = ASIZE (def);
diff --git a/src/macterm.c b/src/macterm.c
index 03b96ac7f25..719b703a77c 100644
--- a/src/macterm.c
+++ b/src/macterm.c
@@ -110,6 +110,10 @@ static Lisp_Object last_window;
110 (Not yet supported.) */ 110 (Not yet supported.) */
111int x_use_underline_position_properties; 111int x_use_underline_position_properties;
112 112
113/* Non-zero means to draw the underline at the same place as the descent line. */
114
115int x_underline_at_descent_line;
116
113/* This is a chain of structures for all the X displays currently in 117/* This is a chain of structures for all the X displays currently in
114 use. */ 118 use. */
115 119
@@ -2632,6 +2636,11 @@ mac_compute_glyph_string_overhangs (s)
2632 Rect r; 2636 Rect r;
2633 MacFontStruct *font = s->font; 2637 MacFontStruct *font = s->font;
2634 2638
2639#if USE_CG_DRAWING
2640 mac_prepare_for_quickdraw (s->f);
2641#endif
2642 SetPortWindowPort (FRAME_MAC_WINDOW (s->f));
2643
2635 TextFont (font->mac_fontnum); 2644 TextFont (font->mac_fontnum);
2636 TextSize (font->mac_fontsize); 2645 TextSize (font->mac_fontsize);
2637 TextFace (font->mac_fontface); 2646 TextFace (font->mac_fontface);
@@ -3673,18 +3682,45 @@ x_draw_glyph_string (s)
3673 /* Draw underline. */ 3682 /* Draw underline. */
3674 if (s->face->underline_p) 3683 if (s->face->underline_p)
3675 { 3684 {
3676 unsigned long h = 1; 3685 unsigned long tem, h;
3677 unsigned long dy = s->height - h; 3686 int y;
3687
3688#if 0
3689 /* Get the underline thickness. Default is 1 pixel. */
3690 if (!XGetFontProperty (s->font, XA_UNDERLINE_THICKNESS, &h))
3691#endif
3692 h = 1;
3693
3694 y = s->y + s->height - h;
3695 if (!x_underline_at_descent_line)
3696 {
3697 /* Get the underline position. This is the recommended
3698 vertical offset in pixels from the baseline to the top of
3699 the underline. This is a signed value according to the
3700 specs, and its default is
3701
3702 ROUND ((maximum descent) / 2), with
3703 ROUND(x) = floor (x + 0.5) */
3704
3705#if 0
3706 if (x_use_underline_position_properties
3707 && XGetFontProperty (s->font, XA_UNDERLINE_POSITION, &tem))
3708 y = s->ybase + (long) tem;
3709 else
3710#endif
3711 if (s->face->font)
3712 y = s->ybase + (s->face->font->max_bounds.descent + 1) / 2;
3713 }
3678 3714
3679 if (s->face->underline_defaulted_p) 3715 if (s->face->underline_defaulted_p)
3680 mac_fill_rectangle (s->f, s->gc, s->x, s->y + dy, 3716 mac_fill_rectangle (s->f, s->gc, s->x, y,
3681 s->background_width, h); 3717 s->background_width, h);
3682 else 3718 else
3683 { 3719 {
3684 XGCValues xgcv; 3720 XGCValues xgcv;
3685 XGetGCValues (s->display, s->gc, GCForeground, &xgcv); 3721 XGetGCValues (s->display, s->gc, GCForeground, &xgcv);
3686 XSetForeground (s->display, s->gc, s->face->underline_color); 3722 XSetForeground (s->display, s->gc, s->face->underline_color);
3687 mac_fill_rectangle (s->f, s->gc, s->x, s->y + dy, 3723 mac_fill_rectangle (s->f, s->gc, s->x, y,
3688 s->background_width, h); 3724 s->background_width, h);
3689 XSetForeground (s->display, s->gc, xgcv.foreground); 3725 XSetForeground (s->display, s->gc, xgcv.foreground);
3690 } 3726 }
@@ -7989,6 +8025,9 @@ XLoadQueryFont (Display *dpy, char *fontname)
7989 FontInfo the_fontinfo; 8025 FontInfo the_fontinfo;
7990 int is_two_byte_font; 8026 int is_two_byte_font;
7991 8027
8028#if USE_CG_DRAWING
8029 mac_prepare_for_quickdraw (NULL);
8030#endif
7992 /* Save the current font number used. */ 8031 /* Save the current font number used. */
7993 GetPort (&port); 8032 GetPort (&port);
7994#if TARGET_API_MAC_CARBON 8033#if TARGET_API_MAC_CARBON
@@ -8104,6 +8143,8 @@ XLoadQueryFont (Display *dpy, char *fontname)
8104 pcm->width); 8143 pcm->width);
8105 font->min_bounds.ascent = min (font->min_bounds.ascent, 8144 font->min_bounds.ascent = min (font->min_bounds.ascent,
8106 pcm->ascent); 8145 pcm->ascent);
8146 font->min_bounds.descent = min (font->min_bounds.descent,
8147 pcm->descent);
8107 8148
8108 font->max_bounds.lbearing = max (font->max_bounds.lbearing, 8149 font->max_bounds.lbearing = max (font->max_bounds.lbearing,
8109 pcm->lbearing); 8150 pcm->lbearing);
@@ -8113,6 +8154,8 @@ XLoadQueryFont (Display *dpy, char *fontname)
8113 pcm->width); 8154 pcm->width);
8114 font->max_bounds.ascent = max (font->max_bounds.ascent, 8155 font->max_bounds.ascent = max (font->max_bounds.ascent,
8115 pcm->ascent); 8156 pcm->ascent);
8157 font->max_bounds.descent = max (font->max_bounds.descent,
8158 pcm->descent);
8116 } 8159 }
8117 if ( 8160 if (
8118#if USE_ATSUI 8161#if USE_ATSUI
@@ -11617,6 +11660,14 @@ to 4.1, set this to nil.
11617NOTE: Not supported on Mac yet. */); 11660NOTE: Not supported on Mac yet. */);
11618 x_use_underline_position_properties = 0; 11661 x_use_underline_position_properties = 0;
11619 11662
11663 DEFVAR_BOOL ("x-underline-at-descent-line",
11664 &x_underline_at_descent_line,
11665 doc: /* *Non-nil means to draw the underline at the same place as the descent line.
11666nil means to draw the underline according to the value of the variable
11667`x-use-underline-position-properties', which is usually at the baseline
11668level. The default value is nil. */);
11669 x_underline_at_descent_line = 0;
11670
11620 DEFVAR_LISP ("x-toolkit-scroll-bars", &Vx_toolkit_scroll_bars, 11671 DEFVAR_LISP ("x-toolkit-scroll-bars", &Vx_toolkit_scroll_bars,
11621 doc: /* If not nil, Emacs uses toolkit scroll bars. */); 11672 doc: /* If not nil, Emacs uses toolkit scroll bars. */);
11622#ifdef USE_TOOLKIT_SCROLL_BARS 11673#ifdef USE_TOOLKIT_SCROLL_BARS
diff --git a/src/makefile.w32-in b/src/makefile.w32-in
index ec407c883f3..98ecc759034 100644
--- a/src/makefile.w32-in
+++ b/src/makefile.w32-in
@@ -719,6 +719,8 @@ $(BLD)/fns.$(O) : \
719 $(EMACS_ROOT)/src/s/ms-w32.h \ 719 $(EMACS_ROOT)/src/s/ms-w32.h \
720 $(EMACS_ROOT)/src/m/intel386.h \ 720 $(EMACS_ROOT)/src/m/intel386.h \
721 $(EMACS_ROOT)/src/config.h \ 721 $(EMACS_ROOT)/src/config.h \
722 $(EMACS_ROOT)/nt/inc/langinfo.h \
723 $(EMACS_ROOT)/nt/inc/nl_types.h \
722 $(SRC)/atimer.h \ 724 $(SRC)/atimer.h \
723 $(SRC)/blockinput.h \ 725 $(SRC)/blockinput.h \
724 $(SRC)/buffer.h \ 726 $(SRC)/buffer.h \
@@ -1044,6 +1046,8 @@ $(BLD)/w32proc.$(O) : \
1044 $(SRC)/w32proc.c \ 1046 $(SRC)/w32proc.c \
1045 $(SRC)/s/ms-w32.h \ 1047 $(SRC)/s/ms-w32.h \
1046 $(SRC)/m/intel386.h \ 1048 $(SRC)/m/intel386.h \
1049 $(EMACS_ROOT)/nt/inc/langinfo.h \
1050 $(EMACS_ROOT)/nt/inc/nl_types.h \
1047 $(SRC)/config.h \ 1051 $(SRC)/config.h \
1048 $(SRC)/process.h \ 1052 $(SRC)/process.h \
1049 $(SRC)/syssignal.h \ 1053 $(SRC)/syssignal.h \
diff --git a/src/minibuf.c b/src/minibuf.c
index 63eee29c494..9505c22d39e 100644
--- a/src/minibuf.c
+++ b/src/minibuf.c
@@ -1021,7 +1021,7 @@ DEFUN ("read-minibuffer", Fread_minibuffer, Sread_minibuffer, 1, 2, 0,
1021Prompt with PROMPT. If non-nil, optional second arg INITIAL-CONTENTS 1021Prompt with PROMPT. If non-nil, optional second arg INITIAL-CONTENTS
1022is a string to insert in the minibuffer before reading. 1022is a string to insert in the minibuffer before reading.
1023\(INITIAL-CONTENTS can also be a cons of a string and an integer. Such 1023\(INITIAL-CONTENTS can also be a cons of a string and an integer. Such
1024arguments are used as in `read-from-minibuffer') */) 1024arguments are used as in `read-from-minibuffer'.) */)
1025 (prompt, initial_contents) 1025 (prompt, initial_contents)
1026 Lisp_Object prompt, initial_contents; 1026 Lisp_Object prompt, initial_contents;
1027{ 1027{
@@ -1910,7 +1910,7 @@ DEFUN ("internal-complete-buffer", Finternal_complete_buffer, Sinternal_complete
1910If the argument FLAG is nil, invoke `try-completion', if it's t, invoke 1910If the argument FLAG is nil, invoke `try-completion', if it's t, invoke
1911`all-completions', otherwise invoke `test-completion'. 1911`all-completions', otherwise invoke `test-completion'.
1912 1912
1913The arguments STRING and PREDICATE are as in `try-completion', 1913The arguments STRING and PREDICATE are as in `try-completion',
1914`all-completions', and `test-completion'. */) 1914`all-completions', and `test-completion'. */)
1915 (string, predicate, flag) 1915 (string, predicate, flag)
1916 Lisp_Object string, predicate, flag; 1916 Lisp_Object string, predicate, flag;
@@ -2402,7 +2402,7 @@ The optional second arg COMMON-SUBSTRING is a string.
2402It is used to put faces, `completions-first-difference' and 2402It is used to put faces, `completions-first-difference' and
2403`completions-common-part' on the completion buffer. The 2403`completions-common-part' on the completion buffer. The
2404`completions-common-part' face is put on the common substring 2404`completions-common-part' face is put on the common substring
2405specified by COMMON-SUBSTRING. If COMMON-SUBSTRING is nil 2405specified by COMMON-SUBSTRING. If COMMON-SUBSTRING is nil
2406and the current buffer is not the minibuffer, the faces are not put. 2406and the current buffer is not the minibuffer, the faces are not put.
2407Internally, COMMON-SUBSTRING is bound to `completion-common-substring' 2407Internally, COMMON-SUBSTRING is bound to `completion-common-substring'
2408during running `completion-setup-hook'. */) 2408during running `completion-setup-hook'. */)
diff --git a/src/regex.c b/src/regex.c
index 09776848220..05f1fb53b1a 100644
--- a/src/regex.c
+++ b/src/regex.c
@@ -3989,7 +3989,13 @@ analyse_first (p, pend, fastmap, multibyte)
3989 for (j = CHARSET_BITMAP_SIZE (&p[-1]) * BYTEWIDTH - 1, p++; 3989 for (j = CHARSET_BITMAP_SIZE (&p[-1]) * BYTEWIDTH - 1, p++;
3990 j >= 0; j--) 3990 j >= 0; j--)
3991 if (!!(p[j / BYTEWIDTH] & (1 << (j % BYTEWIDTH))) ^ not) 3991 if (!!(p[j / BYTEWIDTH] & (1 << (j % BYTEWIDTH))) ^ not)
3992 fastmap[j] = 1; 3992 {
3993 fastmap[j] = 1;
3994#ifdef emacs
3995 if (j >= 0x80 && j < 0xa0)
3996 fastmap[LEADING_CODE_8_BIT_CONTROL] = 1;
3997#endif
3998 }
3993 3999
3994 if ((not && multibyte) 4000 if ((not && multibyte)
3995 /* Any leading code can possibly start a character 4001 /* Any leading code can possibly start a character
diff --git a/src/s/gnu-linux.h b/src/s/gnu-linux.h
index 817f1facdee..55d9a725293 100644
--- a/src/s/gnu-linux.h
+++ b/src/s/gnu-linux.h
@@ -142,8 +142,12 @@ Boston, MA 02110-1301, USA. */
142 movemail.c will use `maillock' when MAILDIR, HAVE_LIBMAIL and 142 movemail.c will use `maillock' when MAILDIR, HAVE_LIBMAIL and
143 HAVE_MAILLOCK_H are defined, so the following appears to be the 143 HAVE_MAILLOCK_H are defined, so the following appears to be the
144 correct logic. -- fx */ 144 correct logic. -- fx */
145/* We must check for HAVE_LIBLOCKFILE too, as movemail does.
146 liblockfile is a Free Software replacement for libmail, used on
147 Debian systems and elsewhere. -rfr */
145 148
146#if !(defined (HAVE_LIBMAIL) && defined (HAVE_MAILLOCK_H)) 149#if !((defined (HAVE_LIBMAIL) || defined (HAVE_LIBLOCKFILE)) && \
150 defined (HAVE_MAILLOCK_H))
147#define MAIL_USE_FLOCK 151#define MAIL_USE_FLOCK
148#endif 152#endif
149 153
diff --git a/src/search.c b/src/search.c
index 72ce7e79559..5f3f953595b 100644
--- a/src/search.c
+++ b/src/search.c
@@ -138,10 +138,11 @@ compile_pattern_1 (cp, pattern, translate, regp, posix, multibyte)
138 cp->buf.target_multibyte = multibyte; 138 cp->buf.target_multibyte = multibyte;
139 cp->whitespace_regexp = Vsearch_spaces_regexp; 139 cp->whitespace_regexp = Vsearch_spaces_regexp;
140 cp->syntax_table = current_buffer->syntax_table; 140 cp->syntax_table = current_buffer->syntax_table;
141 /* Doing BLOCK_INPUT here has the effect that 141 /* rms: I think BLOCK_INPUT is not needed here any more,
142 the debugger won't run if an error occurs. 142 because regex.c defines malloc to call xmalloc.
143 Why is BLOCK_INPUT needed here? */ 143 Using BLOCK_INPUT here means the debugger won't run if an error occurs.
144 BLOCK_INPUT; 144 So let's turn it off. */
145 /* BLOCK_INPUT; */
145 old = re_set_syntax (RE_SYNTAX_EMACS 146 old = re_set_syntax (RE_SYNTAX_EMACS
146 | (posix ? 0 : RE_NO_POSIX_BACKTRACKING)); 147 | (posix ? 0 : RE_NO_POSIX_BACKTRACKING));
147 re_set_whitespace_regexp (NILP (Vsearch_spaces_regexp) ? NULL 148 re_set_whitespace_regexp (NILP (Vsearch_spaces_regexp) ? NULL
@@ -153,7 +154,7 @@ compile_pattern_1 (cp, pattern, translate, regp, posix, multibyte)
153 re_set_whitespace_regexp (NULL); 154 re_set_whitespace_regexp (NULL);
154 155
155 re_set_syntax (old); 156 re_set_syntax (old);
156 UNBLOCK_INPUT; 157 /* UNBLOCK_INPUT; */
157 if (val) 158 if (val)
158 xsignal1 (Qinvalid_regexp, build_string (val)); 159 xsignal1 (Qinvalid_regexp, build_string (val));
159 160
diff --git a/src/w32fns.c b/src/w32fns.c
index 7fd90d7e75a..f2e456b85bf 100644
--- a/src/w32fns.c
+++ b/src/w32fns.c
@@ -8671,14 +8671,15 @@ syms_of_w32fns ()
8671 Vw32_color_map = Qnil; 8671 Vw32_color_map = Qnil;
8672 8672
8673 DEFVAR_LISP ("w32-pass-alt-to-system", &Vw32_pass_alt_to_system, 8673 DEFVAR_LISP ("w32-pass-alt-to-system", &Vw32_pass_alt_to_system,
8674 doc: /* Non-nil if alt key presses are passed on to Windows. 8674 doc: /* Non-nil if Alt key presses are passed on to Windows.
8675When non-nil, for example, alt pressed and released and then space will 8675When non-nil, for example, Alt pressed and released and then space will
8676open the System menu. When nil, Emacs silently swallows alt key events. */); 8676open the System menu. When nil, Emacs processes the Alt key events, and
8677then silently swallows them. */);
8677 Vw32_pass_alt_to_system = Qnil; 8678 Vw32_pass_alt_to_system = Qnil;
8678 8679
8679 DEFVAR_LISP ("w32-alt-is-meta", &Vw32_alt_is_meta, 8680 DEFVAR_LISP ("w32-alt-is-meta", &Vw32_alt_is_meta,
8680 doc: /* Non-nil if the alt key is to be considered the same as the meta key. 8681 doc: /* Non-nil if the Alt key is to be considered the same as the META key.
8681When nil, Emacs will translate the alt key to the Alt modifier, and not Meta. */); 8682When nil, Emacs will translate the Alt key to the ALT modifier, not to META. */);
8682 Vw32_alt_is_meta = Qt; 8683 Vw32_alt_is_meta = Qt;
8683 8684
8684 DEFVAR_INT ("w32-quit-key", &w32_quit_key, 8685 DEFVAR_INT ("w32-quit-key", &w32_quit_key,
@@ -8687,14 +8688,32 @@ When nil, Emacs will translate the alt key to the Alt modifier, and not Meta. *
8687 8688
8688 DEFVAR_LISP ("w32-pass-lwindow-to-system", 8689 DEFVAR_LISP ("w32-pass-lwindow-to-system",
8689 &Vw32_pass_lwindow_to_system, 8690 &Vw32_pass_lwindow_to_system,
8690 doc: /* Non-nil if the left \"Windows\" key is passed on to Windows. 8691 doc: /* If non-nil, the left \"Windows\" key is passed on to Windows.
8691When non-nil, the Start menu is opened by tapping the key. */); 8692
8693When non-nil, the Start menu is opened by tapping the key.
8694If you set this to nil, the left \"Windows\" key is processed by Emacs
8695according to the value of `w32-lwindow-modifier', which see.
8696
8697Note that some combinations of the left \"Windows\" key with other keys are
8698caught by Windows at low level, and so binding them in Emacs will have no
8699effect. For example, <lwindow>-r always pops up the Windows Run dialog,
8700<lwindow>-<Pause> pops up the "System Properties" dialog, etc. However, see
8701the doc string of `w32-phantom-key-code'. */);
8692 Vw32_pass_lwindow_to_system = Qt; 8702 Vw32_pass_lwindow_to_system = Qt;
8693 8703
8694 DEFVAR_LISP ("w32-pass-rwindow-to-system", 8704 DEFVAR_LISP ("w32-pass-rwindow-to-system",
8695 &Vw32_pass_rwindow_to_system, 8705 &Vw32_pass_rwindow_to_system,
8696 doc: /* Non-nil if the right \"Windows\" key is passed on to Windows. 8706 doc: /* If non-nil, the right \"Windows\" key is passed on to Windows.
8697When non-nil, the Start menu is opened by tapping the key. */); 8707
8708When non-nil, the Start menu is opened by tapping the key.
8709If you set this to nil, the right \"Windows\" key is processed by Emacs
8710according to the value of `w32-rwindow-modifier', which see.
8711
8712Note that some combinations of the right \"Windows\" key with other keys are
8713caught by Windows at low level, and so binding them in Emacs will have no
8714effect. For example, <rwindow>-r always pops up the Windows Run dialog,
8715<rwindow>-<Pause> pops up the "System Properties" dialog, etc. However, see
8716the doc string of `w32-phantom-key-code'. */);
8698 Vw32_pass_rwindow_to_system = Qt; 8717 Vw32_pass_rwindow_to_system = Qt;
8699 8718
8700 DEFVAR_LISP ("w32-phantom-key-code", 8719 DEFVAR_LISP ("w32-phantom-key-code",
@@ -8711,29 +8730,29 @@ acting on \"Windows\" key events when `w32-pass-lwindow-to-system' or
8711 8730
8712 DEFVAR_LISP ("w32-enable-num-lock", 8731 DEFVAR_LISP ("w32-enable-num-lock",
8713 &Vw32_enable_num_lock, 8732 &Vw32_enable_num_lock,
8714 doc: /* Non-nil if Num Lock should act normally. 8733 doc: /* If non-nil, the Num Lock key acts normally.
8715Set to nil to see Num Lock as the key `kp-numlock'. */); 8734Set to nil to handle Num Lock as the `kp-numlock' key. */);
8716 Vw32_enable_num_lock = Qt; 8735 Vw32_enable_num_lock = Qt;
8717 8736
8718 DEFVAR_LISP ("w32-enable-caps-lock", 8737 DEFVAR_LISP ("w32-enable-caps-lock",
8719 &Vw32_enable_caps_lock, 8738 &Vw32_enable_caps_lock,
8720 doc: /* Non-nil if Caps Lock should act normally. 8739 doc: /* If non-nil, the Caps Lock key acts normally.
8721Set to nil to see Caps Lock as the key `capslock'. */); 8740Set to nil to handle Caps Lock as the `capslock' key. */);
8722 Vw32_enable_caps_lock = Qt; 8741 Vw32_enable_caps_lock = Qt;
8723 8742
8724 DEFVAR_LISP ("w32-scroll-lock-modifier", 8743 DEFVAR_LISP ("w32-scroll-lock-modifier",
8725 &Vw32_scroll_lock_modifier, 8744 &Vw32_scroll_lock_modifier,
8726 doc: /* Modifier to use for the Scroll Lock on state. 8745 doc: /* Modifier to use for the Scroll Lock ON state.
8727The value can be hyper, super, meta, alt, control or shift for the 8746The value can be hyper, super, meta, alt, control or shift for the
8728respective modifier, or nil to see Scroll Lock as the key `scroll'. 8747respective modifier, or nil to handle Scroll Lock as the `scroll' key.
8729Any other value will cause the key to be ignored. */); 8748Any other value will cause the Scroll Lock key to be ignored. */);
8730 Vw32_scroll_lock_modifier = Qt; 8749 Vw32_scroll_lock_modifier = Qt;
8731 8750
8732 DEFVAR_LISP ("w32-lwindow-modifier", 8751 DEFVAR_LISP ("w32-lwindow-modifier",
8733 &Vw32_lwindow_modifier, 8752 &Vw32_lwindow_modifier,
8734 doc: /* Modifier to use for the left \"Windows\" key. 8753 doc: /* Modifier to use for the left \"Windows\" key.
8735The value can be hyper, super, meta, alt, control or shift for the 8754The value can be hyper, super, meta, alt, control or shift for the
8736respective modifier, or nil to appear as the key `lwindow'. 8755respective modifier, or nil to appear as the `lwindow' key.
8737Any other value will cause the key to be ignored. */); 8756Any other value will cause the key to be ignored. */);
8738 Vw32_lwindow_modifier = Qnil; 8757 Vw32_lwindow_modifier = Qnil;
8739 8758
@@ -8741,7 +8760,7 @@ Any other value will cause the key to be ignored. */);
8741 &Vw32_rwindow_modifier, 8760 &Vw32_rwindow_modifier,
8742 doc: /* Modifier to use for the right \"Windows\" key. 8761 doc: /* Modifier to use for the right \"Windows\" key.
8743The value can be hyper, super, meta, alt, control or shift for the 8762The value can be hyper, super, meta, alt, control or shift for the
8744respective modifier, or nil to appear as the key `rwindow'. 8763respective modifier, or nil to appear as the `rwindow' key.
8745Any other value will cause the key to be ignored. */); 8764Any other value will cause the key to be ignored. */);
8746 Vw32_rwindow_modifier = Qnil; 8765 Vw32_rwindow_modifier = Qnil;
8747 8766
@@ -8749,7 +8768,7 @@ Any other value will cause the key to be ignored. */);
8749 &Vw32_apps_modifier, 8768 &Vw32_apps_modifier,
8750 doc: /* Modifier to use for the \"Apps\" key. 8769 doc: /* Modifier to use for the \"Apps\" key.
8751The value can be hyper, super, meta, alt, control or shift for the 8770The value can be hyper, super, meta, alt, control or shift for the
8752respective modifier, or nil to appear as the key `apps'. 8771respective modifier, or nil to appear as the `apps' key.
8753Any other value will cause the key to be ignored. */); 8772Any other value will cause the key to be ignored. */);
8754 Vw32_apps_modifier = Qnil; 8773 Vw32_apps_modifier = Qnil;
8755 8774
@@ -8765,7 +8784,7 @@ Any other value will cause the key to be ignored. */);
8765 &w32_mouse_button_tolerance, 8784 &w32_mouse_button_tolerance,
8766 doc: /* Analogue of double click interval for faking middle mouse events. 8785 doc: /* Analogue of double click interval for faking middle mouse events.
8767The value is the minimum time in milliseconds that must elapse between 8786The value is the minimum time in milliseconds that must elapse between
8768left/right button down events before they are considered distinct events. 8787left and right button down events before they are considered distinct events.
8769If both mouse buttons are depressed within this interval, a middle mouse 8788If both mouse buttons are depressed within this interval, a middle mouse
8770button down event is generated instead. */); 8789button down event is generated instead. */);
8771 w32_mouse_button_tolerance = GetDoubleClickTime () / 2; 8790 w32_mouse_button_tolerance = GetDoubleClickTime () / 2;
@@ -8780,7 +8799,7 @@ reported as lisp events. */);
8780 8799
8781 DEFVAR_BOOL ("w32-pass-extra-mouse-buttons-to-system", 8800 DEFVAR_BOOL ("w32-pass-extra-mouse-buttons-to-system",
8782 &w32_pass_extra_mouse_buttons_to_system, 8801 &w32_pass_extra_mouse_buttons_to_system,
8783 doc: /* Non-nil if the fourth and fifth mouse buttons are passed to Windows. 8802 doc: /* If non-nil, the fourth and fifth mouse buttons are passed to Windows.
8784Recent versions of Windows support mice with up to five buttons. 8803Recent versions of Windows support mice with up to five buttons.
8785Since most applications don't support these extra buttons, most mouse 8804Since most applications don't support these extra buttons, most mouse
8786drivers will allow you to map them to functions at the system level. 8805drivers will allow you to map them to functions at the system level.
diff --git a/src/w32proc.c b/src/w32proc.c
index d874d183b17..29491931015 100644
--- a/src/w32proc.c
+++ b/src/w32proc.c
@@ -49,6 +49,11 @@ Boston, MA 02110-1301, USA.
49extern BOOL WINAPI IsValidLocale(LCID, DWORD); 49extern BOOL WINAPI IsValidLocale(LCID, DWORD);
50#endif 50#endif
51 51
52#ifdef HAVE_LANGINFO_CODESET
53#include <nl_types.h>
54#include <langinfo.h>
55#endif
56
52#include "lisp.h" 57#include "lisp.h"
53#include "w32.h" 58#include "w32.h"
54#include "w32heap.h" 59#include "w32heap.h"
@@ -1817,6 +1822,69 @@ If successful, the return value is t, otherwise nil. */)
1817 return result; 1822 return result;
1818} 1823}
1819 1824
1825#ifdef HAVE_LANGINFO_CODESET
1826/* Emulation of nl_langinfo. Used in fns.c:Flocale_info. */
1827char *nl_langinfo (nl_item item)
1828{
1829 /* Conversion of Posix item numbers to their Windows equivalents. */
1830 static const LCTYPE w32item[] = {
1831 LOCALE_IDEFAULTANSICODEPAGE,
1832 LOCALE_SDAYNAME1, LOCALE_SDAYNAME2, LOCALE_SDAYNAME3,
1833 LOCALE_SDAYNAME4, LOCALE_SDAYNAME5, LOCALE_SDAYNAME6, LOCALE_SDAYNAME7,
1834 LOCALE_SMONTHNAME1, LOCALE_SMONTHNAME2, LOCALE_SMONTHNAME3,
1835 LOCALE_SMONTHNAME4, LOCALE_SMONTHNAME5, LOCALE_SMONTHNAME6,
1836 LOCALE_SMONTHNAME7, LOCALE_SMONTHNAME8, LOCALE_SMONTHNAME9,
1837 LOCALE_SMONTHNAME10, LOCALE_SMONTHNAME11, LOCALE_SMONTHNAME12
1838 };
1839
1840 static char *nl_langinfo_buf = NULL;
1841 static int nl_langinfo_len = 0;
1842
1843 if (nl_langinfo_len <= 0)
1844 nl_langinfo_buf = xmalloc (nl_langinfo_len = 1);
1845
1846 if (item < 0 || item >= _NL_NUM)
1847 nl_langinfo_buf[0] = 0;
1848 else
1849 {
1850 LCID cloc = GetThreadLocale ();
1851 int need_len = GetLocaleInfo (cloc, w32item[item] | LOCALE_USE_CP_ACP,
1852 NULL, 0);
1853
1854 if (need_len <= 0)
1855 nl_langinfo_buf[0] = 0;
1856 else
1857 {
1858 if (item == CODESET)
1859 {
1860 need_len += 2; /* for the "cp" prefix */
1861 if (need_len < 8) /* for the case we call GetACP */
1862 need_len = 8;
1863 }
1864 if (nl_langinfo_len <= need_len)
1865 nl_langinfo_buf = xrealloc (nl_langinfo_buf,
1866 nl_langinfo_len = need_len);
1867 if (!GetLocaleInfo (cloc, w32item[item] | LOCALE_USE_CP_ACP,
1868 nl_langinfo_buf, nl_langinfo_len))
1869 nl_langinfo_buf[0] = 0;
1870 else if (item == CODESET)
1871 {
1872 if (strcmp (nl_langinfo_buf, "0") == 0 /* CP_ACP */
1873 || strcmp (nl_langinfo_buf, "1") == 0) /* CP_OEMCP */
1874 sprintf (nl_langinfo_buf, "cp%u", GetACP ());
1875 else
1876 {
1877 memmove (nl_langinfo_buf + 2, nl_langinfo_buf,
1878 strlen (nl_langinfo_buf) + 1);
1879 nl_langinfo_buf[0] = 'c';
1880 nl_langinfo_buf[1] = 'p';
1881 }
1882 }
1883 }
1884 }
1885 return nl_langinfo_buf;
1886}
1887#endif /* HAVE_LANGINFO_CODESET */
1820 1888
1821DEFUN ("w32-get-locale-info", Fw32_get_locale_info, 1889DEFUN ("w32-get-locale-info", Fw32_get_locale_info,
1822 Sw32_get_locale_info, 1, 2, 0, 1890 Sw32_get_locale_info, 1, 2, 0,
diff --git a/src/window.c b/src/window.c
index 2a3d29a8da8..a78360cda2f 100644
--- a/src/window.c
+++ b/src/window.c
@@ -333,6 +333,7 @@ Return nil if that position is scrolled vertically out of view.
333If a character is only partially visible, nil is returned, unless the 333If a character is only partially visible, nil is returned, unless the
334optional argument PARTIALLY is non-nil. 334optional argument PARTIALLY is non-nil.
335If POS is only out of view because of horizontal scrolling, return non-nil. 335If POS is only out of view because of horizontal scrolling, return non-nil.
336If POS is t, it specifies the position of the last visible glyph in WINDOW.
336POS defaults to point in WINDOW; WINDOW defaults to the selected window. 337POS defaults to point in WINDOW; WINDOW defaults to the selected window.
337 338
338If POS is visible, return t if PARTIALLY is nil; if PARTIALLY is non-nil, 339If POS is visible, return t if PARTIALLY is nil; if PARTIALLY is non-nil,
@@ -340,7 +341,7 @@ return value is a list of 2 or 6 elements (X Y [RTOP RBOT ROWH VPOS]),
340where X and Y are the pixel coordinates relative to the top left corner 341where X and Y are the pixel coordinates relative to the top left corner
341of the window. The remaining elements are omitted if the character after 342of the window. The remaining elements are omitted if the character after
342POS is fully visible; otherwise, RTOP and RBOT are the number of pixels 343POS is fully visible; otherwise, RTOP and RBOT are the number of pixels
343off-screen at the top and bottom of the row, ROWH is the height of the 344off-window at the top and bottom of the row, ROWH is the height of the
344display row, and VPOS is the row number (0-based) containing POS. */) 345display row, and VPOS is the row number (0-based) containing POS. */)
345 (pos, window, partially) 346 (pos, window, partially)
346 Lisp_Object pos, window, partially; 347 Lisp_Object pos, window, partially;
@@ -357,7 +358,9 @@ display row, and VPOS is the row number (0-based) containing POS. */)
357 buf = XBUFFER (w->buffer); 358 buf = XBUFFER (w->buffer);
358 SET_TEXT_POS_FROM_MARKER (top, w->start); 359 SET_TEXT_POS_FROM_MARKER (top, w->start);
359 360
360 if (!NILP (pos)) 361 if (EQ (pos, Qt))
362 posint = -1;
363 else if (!NILP (pos))
361 { 364 {
362 CHECK_NUMBER_COERCE_MARKER (pos); 365 CHECK_NUMBER_COERCE_MARKER (pos);
363 posint = XINT (pos); 366 posint = XINT (pos);
@@ -369,8 +372,8 @@ display row, and VPOS is the row number (0-based) containing POS. */)
369 372
370 /* If position is above window start or outside buffer boundaries, 373 /* If position is above window start or outside buffer boundaries,
371 or if window start is out of range, position is not visible. */ 374 or if window start is out of range, position is not visible. */
372 if (posint >= CHARPOS (top) 375 if ((EQ (pos, Qt)
373 && posint <= BUF_ZV (buf) 376 || (posint >= CHARPOS (top) && posint <= BUF_ZV (buf)))
374 && CHARPOS (top) >= BUF_BEGV (buf) 377 && CHARPOS (top) >= BUF_BEGV (buf)
375 && CHARPOS (top) <= BUF_ZV (buf) 378 && CHARPOS (top) <= BUF_ZV (buf)
376 && pos_visible_p (w, posint, &x, &y, &rtop, &rbot, &rowh, &vpos) 379 && pos_visible_p (w, posint, &x, &y, &rtop, &rbot, &rowh, &vpos)
@@ -402,10 +405,10 @@ counts from the end of the window.
402 405
403Value is a list (HEIGHT VPOS YPOS OFFBOT), where HEIGHT is the height 406Value is a list (HEIGHT VPOS YPOS OFFBOT), where HEIGHT is the height
404in pixels of the visible part of the line, VPOS and YPOS are the 407in pixels of the visible part of the line, VPOS and YPOS are the
405vertical position in lines and pixels of the row, relative to the top 408vertical position in lines and pixels of the line, relative to the top
406of the first text line, and OFFBOT is the number of off-screen pixels at 409of the first text line, and OFFBOT is the number of off-window pixels at
407the bottom of the text row. If there are off-screen pixels at the top 410the bottom of the text line. If there are off-window pixels at the top
408of the (first) text row, YPOS is negative. 411of the (first) text line, YPOS is negative.
409 412
410Return nil if window display is not up-to-date. In that case, use 413Return nil if window display is not up-to-date. In that case, use
411`pos-visible-in-window-p' to obtain the information. */) 414`pos-visible-in-window-p' to obtain the information. */)
@@ -565,7 +568,7 @@ DEFUN ("set-window-hscroll", Fset_window_hscroll, Sset_window_hscroll, 2, 2, 0,
565Return NCOL. NCOL should be zero or positive. 568Return NCOL. NCOL should be zero or positive.
566 569
567Note that if `automatic-hscrolling' is non-nil, you cannot scroll the 570Note that if `automatic-hscrolling' is non-nil, you cannot scroll the
568window so that the location of point moves off-screen. */) 571window so that the location of point moves off-window. */)
569 (window, ncol) 572 (window, ncol)
570 Lisp_Object window, ncol; 573 Lisp_Object window, ncol;
571{ 574{
diff --git a/src/xdisp.c b/src/xdisp.c
index 9ab61c09c2a..7ca259e2b10 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -1284,6 +1284,7 @@ line_bottom_y (it)
1284 1284
1285 1285
1286/* Return 1 if position CHARPOS is visible in window W. 1286/* Return 1 if position CHARPOS is visible in window W.
1287 CHARPOS < 0 means return info about WINDOW_END position.
1287 If visible, set *X and *Y to pixel coordinates of top left corner. 1288 If visible, set *X and *Y to pixel coordinates of top left corner.
1288 Set *RTOP and *RBOT to pixel height of an invisible area of glyph at POS. 1289 Set *RTOP and *RBOT to pixel height of an invisible area of glyph at POS.
1289 Set *ROWH and *VPOS to row's visible height and VPOS (row number). */ 1290 Set *ROWH and *VPOS to row's visible height and VPOS (row number). */
@@ -1322,10 +1323,10 @@ pos_visible_p (w, charpos, x, y, rtop, rbot, rowh, vpos)
1322 1323
1323 start_display (&it, w, top); 1324 start_display (&it, w, top);
1324 move_it_to (&it, charpos, -1, it.last_visible_y-1, -1, 1325 move_it_to (&it, charpos, -1, it.last_visible_y-1, -1,
1325 MOVE_TO_POS | MOVE_TO_Y); 1326 (charpos >= 0 ? MOVE_TO_POS : 0) | MOVE_TO_Y);
1326 1327
1327 /* Note that we may overshoot because of invisible text. */ 1328 /* Note that we may overshoot because of invisible text. */
1328 if (IT_CHARPOS (it) >= charpos) 1329 if (charpos >= 0 && IT_CHARPOS (it) >= charpos)
1329 { 1330 {
1330 int top_x = it.current_x; 1331 int top_x = it.current_x;
1331 int top_y = it.current_y; 1332 int top_y = it.current_y;
@@ -3254,7 +3255,9 @@ handle_fontified_prop (it)
3254 && !NILP (Vrun_hooks) 3255 && !NILP (Vrun_hooks)
3255 && (pos = make_number (IT_CHARPOS (*it)), 3256 && (pos = make_number (IT_CHARPOS (*it)),
3256 prop = Fget_char_property (pos, Qfontified, Qnil), 3257 prop = Fget_char_property (pos, Qfontified, Qnil),
3257 NILP (prop))) 3258 /* Ignore the special cased nil value always present at EOB since
3259 no amount of fontifying will be able to change it. */
3260 NILP (prop) && IT_CHARPOS (*it) < Z))
3258 { 3261 {
3259 int count = SPECPDL_INDEX (); 3262 int count = SPECPDL_INDEX ();
3260 Lisp_Object val; 3263 Lisp_Object val;
diff --git a/src/xfns.c b/src/xfns.c
index c60035e41c2..419eccb308e 100644
--- a/src/xfns.c
+++ b/src/xfns.c
@@ -5904,7 +5904,7 @@ chooser to show or not show hidden files on a case by case basis. */);
5904 x_gtk_show_hidden_files = 0; 5904 x_gtk_show_hidden_files = 0;
5905 5905
5906 DEFVAR_BOOL ("x-gtk-file-dialog-help-text", &x_gtk_file_dialog_help_text, 5906 DEFVAR_BOOL ("x-gtk-file-dialog-help-text", &x_gtk_file_dialog_help_text,
5907 doc: /* *If non-nil, the GTK file chooser will by show additional help text. 5907 doc: /* *If non-nil, the GTK file chooser will show additional help text.
5908If more space for files in the file chooser dialog is wanted, set this to nil 5908If more space for files in the file chooser dialog is wanted, set this to nil
5909to turn the additional text off. */); 5909to turn the additional text off. */);
5910 x_gtk_file_dialog_help_text = 1; 5910 x_gtk_file_dialog_help_text = 1;