aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMiles Bader2006-06-17 20:57:37 +0000
committerMiles Bader2006-06-17 20:57:37 +0000
commit10c1758c0b2d29b3e1fb8e3ffe5c5dc262f25217 (patch)
tree78d2db4ab91026e7d5373086d022a2bce083200b
parent2090e2a3897bd0e36fd0e8ba13d861668a0a887f (diff)
parentf362b76002bfd0f43af76a7772a808c042302f07 (diff)
downloademacs-10c1758c0b2d29b3e1fb8e3ffe5c5dc262f25217.tar.gz
emacs-10c1758c0b2d29b3e1fb8e3ffe5c5dc262f25217.zip
Merge from emacs--devo--0
Patches applied: * emacs--devo--0 (patch 300-313) - Update from CVS - Update from CVS: lispref/display.texi (Forcing Redisplay): Fix typo. - Merge from gnus--rel--5.10 * gnus--rel--5.10 (patch 105-106) - Update from CVS Revision: emacs@sv.gnu.org/emacs--unicode--0--patch-74
-rw-r--r--admin/ChangeLog4
-rw-r--r--admin/FOR-RELEASE17
-rw-r--r--etc/ChangeLog20
-rw-r--r--etc/NEWS26
-rw-r--r--etc/fr-refcard.tex64
-rw-r--r--etc/orgcard.tex196
-rw-r--r--etc/pl-refcard.ps5669
-rw-r--r--etc/pl-refcard.tex18
-rw-r--r--etc/yow.linesbin52800 -> 403 bytes
-rw-r--r--lib-src/ChangeLog9
-rw-r--r--lib-src/Makefile.in5
-rw-r--r--lib-src/makefile.w32-in5
-rw-r--r--lib-src/yow.c185
-rw-r--r--lisp/ChangeLog146
-rw-r--r--lisp/cus-edit.el1
-rw-r--r--lisp/cus-start.el7
-rw-r--r--lisp/facemenu.el3
-rw-r--r--lisp/files.el11
-rw-r--r--lisp/gnus/ChangeLog11
-rw-r--r--lisp/gnus/gnus-art.el6
-rw-r--r--lisp/gnus/message.el33
-rw-r--r--lisp/help.el43
-rw-r--r--lisp/ido.el27
-rw-r--r--lisp/language/ethio-util.el2
-rw-r--r--lisp/mail/sendmail.el13
-rw-r--r--lisp/mh-e/ChangeLog19
-rw-r--r--lisp/mh-e/mh-comp.el31
-rw-r--r--lisp/mh-e/mh-search.el4
-rw-r--r--lisp/net/ldap.el6
-rw-r--r--lisp/net/tramp.el7
-rw-r--r--lisp/obsolete/options.el2
-rw-r--r--lisp/pcvs.el22
-rw-r--r--lisp/play/pong.el2
-rw-r--r--lisp/progmodes/cperl-mode.el10
-rw-r--r--lisp/progmodes/gdb-ui.el47
-rw-r--r--lisp/progmodes/make-mode.el2
-rw-r--r--lisp/server.el12
-rw-r--r--lisp/term.el15
-rw-r--r--lisp/term/mac-win.el20
-rw-r--r--lisp/textmodes/ispell.el12
-rw-r--r--lisp/textmodes/org.el663
-rw-r--r--lisp/textmodes/page-ext.el4
-rw-r--r--lispref/ChangeLog49
-rw-r--r--lispref/commands.texi19
-rw-r--r--lispref/display.texi22
-rw-r--r--lispref/objects.texi16
-rw-r--r--lispref/text.texi3
-rw-r--r--lispref/tips.texi39
-rw-r--r--man/ChangeLog13
-rw-r--r--man/macos.texi31
-rw-r--r--man/mule.texi8
-rw-r--r--man/org.texi150
-rw-r--r--src/.gdbinit129
-rw-r--r--src/ChangeLog123
-rw-r--r--src/callproc.c4
-rw-r--r--src/dispextern.h21
-rw-r--r--src/dispnew.c133
-rw-r--r--src/eval.c4
-rw-r--r--src/lread.c49
-rw-r--r--src/macfns.c26
-rw-r--r--src/macterm.c141
-rw-r--r--src/window.c24
-rw-r--r--src/xdisp.c208
-rw-r--r--src/xterm.c139
-rw-r--r--src/xterm.h12
65 files changed, 5709 insertions, 3053 deletions
diff --git a/admin/ChangeLog b/admin/ChangeLog
index ac84b259f93..938f69d0250 100644
--- a/admin/ChangeLog
+++ b/admin/ChangeLog
@@ -1,3 +1,7 @@
12006-06-08 Reiner Steib <Reiner.Steib@gmx.de>
2
3 * FOR-RELEASE: Update refcard section.
4
12006-06-07 Reiner Steib <Reiner.Steib@gmx.de> 52006-06-07 Reiner Steib <Reiner.Steib@gmx.de>
2 6
3 * FOR-RELEASE: Update refcard section. 7 * FOR-RELEASE: Update refcard section.
diff --git a/admin/FOR-RELEASE b/admin/FOR-RELEASE
index fb9ff705b05..3d06efe7932 100644
--- a/admin/FOR-RELEASE
+++ b/admin/FOR-RELEASE
@@ -26,21 +26,24 @@ Requests to have been sent out on 2006-05-23 (Reiner Steib).
26LANG Translator Status 26LANG Translator Status
27cs Pavel Janík No response 27cs Pavel Janík No response
28de Sven Joachim Done 28de Sven Joachim Done
29fr Eric Jacoboni No response 29fr Eric Jacoboni Done (layout might be improved)
30pl Włodek Bzyl No response 30pl Włodek Bzyl Done
31pt-br Rodrigo Real Done 31pt-br Rodrigo Real Done
32ru Alex Ott Working 32ru Alex Ott Working
33sk Miroslav Vaško No response 33sk Miroslav Vaško No response
34 34
35If there's no update for a translation on 2006-06-07, notify RMS. 35Reminders sent out on 2006-06-08.
36 36
37** Send an email to the various distributions, including the GNOME 37** Send an email to the various distributions, including the GNOME
38and KDE projects, to use the new Emacs icons in etc/images/icons. 38and KDE projects, to use the new Emacs icons in etc/images/icons.
39 39
40* BUGS 40* BUGS
41 41
42** We need a way a Lisp file encoded in iso-2022 can assure 42** text_property_stickiness can be called with a POS value that is before BEGV.
43reliable decoding regardless of user options. 43
44text_property_stickiness is called from get_pos_property,
45which is called from find_field, which is called from
46various user-level functions in editfns.c.
44 47
45** JD Smith's 17 Apr 2006 bug report that CVS operations 48** JD Smith's 17 Apr 2006 bug report that CVS operations
46get mysterious unreproducible failures. 49get mysterious unreproducible failures.
@@ -149,7 +152,7 @@ SECTION READERS
149etc/TUTORIAL rms 152etc/TUTORIAL rms
150etc/TUTORIAL.bg Ognyan Kulev <ogi@fmi.uni-sofia.bg> 153etc/TUTORIAL.bg Ognyan Kulev <ogi@fmi.uni-sofia.bg>
151etc/TUTORIAL.cn 154etc/TUTORIAL.cn
152etc/TUTORIAL.cs Pavel Janík <Pavel@Janik.cz> 155etc/TUTORIAL.cs Pavel Janík <Pavel@Janik.cz>
153etc/TUTORIAL.de Werner LEMBERG <wl@gnu.org> 156etc/TUTORIAL.de Werner LEMBERG <wl@gnu.org>
154etc/TUTORIAL.es Marcelo Toledo 157etc/TUTORIAL.es Marcelo Toledo
155etc/TUTORIAL.fr ttn 158etc/TUTORIAL.fr ttn
@@ -161,7 +164,7 @@ etc/TUTORIAL.pl Slawomir Nowaczyk <slawek@cs.lth.se>
161etc/TUTORIAL.pt_BR Marcelo Toledo 164etc/TUTORIAL.pt_BR Marcelo Toledo
162etc/TUTORIAL.ro 165etc/TUTORIAL.ro
163etc/TUTORIAL.ru Alex Ott <alexott@gmail.com> 166etc/TUTORIAL.ru Alex Ott <alexott@gmail.com>
164etc/TUTORIAL.sk Pavel Janík <Pavel@Janik.cz> 167etc/TUTORIAL.sk Pavel Janík <Pavel@Janik.cz>
165etc/TUTORIAL.sl Primoz PETERLIN <primoz.peterlin@biofiz.mf.uni-lj.si> 168etc/TUTORIAL.sl Primoz PETERLIN <primoz.peterlin@biofiz.mf.uni-lj.si>
166etc/TUTORIAL.sv Mats Lidell <matsl@contactor.se> 169etc/TUTORIAL.sv Mats Lidell <matsl@contactor.se>
167etc/TUTORIAL.th Virach Sornlertlamvanich <virach@tcllab.org> 170etc/TUTORIAL.th Virach Sornlertlamvanich <virach@tcllab.org>
diff --git a/etc/ChangeLog b/etc/ChangeLog
index 5532a00c1bb..3dc253983fb 100644
--- a/etc/ChangeLog
+++ b/etc/ChangeLog
@@ -1,3 +1,23 @@
12006-06-14 Thien-Thi Nguyen <ttn@gnu.org>
2
3 * yow.lines: Delete existing data; add a new entry.
4
52006-06-09 W$,1 b(Bodek Bzyl <matwb@univ.gda.pl>
6
7 * pl-refcard.ps: Regenerate.
8
92006-06-08 W$,1 b(Bodek Bzyl <matwb@univ.gda.pl>
10
11 * pl-refcard.tex: Update for Emacs 22.
12
132006-06-08 Reiner Steib <Reiner.Steib@gmx.de>
14
15 * fr-refcard.tex: Fix errors in previous commit.
16
172006-06-08 ,AI(Bric Jacoboni <jaco@jacoboni.fr>
18
19 * fr-refcard.tex: Update for Emacs 22.
20
12006-06-07 Kenichi Handa <handa@m17n.org> 212006-06-07 Kenichi Handa <handa@m17n.org>
2 22
3 * NEWS: Mention how to disable character translation for a file. 23 * NEWS: Mention how to disable character translation for a file.
diff --git a/etc/NEWS b/etc/NEWS
index d46f23596b9..3e57149ee29 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -115,6 +115,10 @@ provides a way to display multilingual text in menus (with some caveats).
115** The `emacsserver' program has been removed, replaced with Lisp code. 115** The `emacsserver' program has been removed, replaced with Lisp code.
116 116
117--- 117---
118** The `yow' program has been removed.
119Use the corresponding Emacs feature instead.
120
121---
118** By default, Emacs now uses a setgid helper program to update game 122** By default, Emacs now uses a setgid helper program to update game
119scores. The directory ${localstatedir}/games/emacs is the normal 123scores. The directory ${localstatedir}/games/emacs is the normal
120place for game scores to be stored. You can control this with the 124place for game scores to be stored. You can control this with the
@@ -168,7 +172,7 @@ the supported image types and their associated dynamic libraries by
168setting the variable `image-library-alist'. 172setting the variable `image-library-alist'.
169 173
170--- 174---
171** Support for Cygwin was added. 175** Support for a Cygwin build of Emacs was added.
172 176
173--- 177---
174** Support for FreeBSD/Alpha has been added. 178** Support for FreeBSD/Alpha has been added.
@@ -689,6 +693,7 @@ However, risky variables will not be added to
689*** The variable `enable-local-variables' controls how local variable 693*** The variable `enable-local-variables' controls how local variable
690lists are handled. t, the default, specifies the standard querying 694lists are handled. t, the default, specifies the standard querying
691behavior. :safe means use only safe values, and ignore the rest. 695behavior. :safe means use only safe values, and ignore the rest.
696:all means set all variables, whether or not they are safe.
692nil means ignore them all. Anything else means always query. 697nil means ignore them all. Anything else means always query.
693 698
694+++ 699+++
@@ -845,6 +850,14 @@ elements are deleted from the history list.
845** Redisplay changes: 850** Redisplay changes:
846 851
847+++ 852+++
853*** Preemptive redisplay now adapts to current load and bandwidth.
854
855To avoid preempting redisplay on fast computers, networks, and displays,
856the arrival of new input is now performed at regular intervals during
857redisplay. The new variable `redisplay-preemption-period' specifies
858the period; the default is to check for input every 0.1 seconds.
859
860+++
848*** The mode line position information now comes before the major mode. 861*** The mode line position information now comes before the major mode.
849When the file is maintained under version control, that information 862When the file is maintained under version control, that information
850appears between the position information and the major mode. 863appears between the position information and the major mode.
@@ -3972,6 +3985,13 @@ text properties.
3972been declared obsolete. 3985been declared obsolete.
3973 3986
3974+++ 3987+++
3988*** New syntax: \uXXXX and \UXXXXXXXX specify Unicode code points in hex.
3989Use "\u0428" to specify a string consisting of CYRILLIC CAPITAL LETTER SHA,
3990or "\U0001D6E2" to specify one consisting of MATHEMATICAL ITALIC CAPITAL
3991ALPHA (the latter is greater than #xFFFF and thus needs the longer
3992syntax). Also available for characters.
3993
3994+++
3975** Displaying warnings to the user. 3995** Displaying warnings to the user.
3976 3996
3977See the functions `warn' and `display-warning', or the Lisp Manual. 3997See the functions `warn' and `display-warning', or the Lisp Manual.
@@ -4938,6 +4958,10 @@ of the display margins.
4938*** `sit-for' can now be called with args (SECONDS &optional NODISP). 4958*** `sit-for' can now be called with args (SECONDS &optional NODISP).
4939 4959
4940+++ 4960+++
4961*** `sit-for' called with a negative SECONDS value now forces an
4962immediate redisplay even if input is pending.
4963
4964+++
4941*** New function `force-window-update' can initiate a full redisplay of 4965*** New function `force-window-update' can initiate a full redisplay of
4942one or all windows. Normally, this is not needed as changes in window 4966one or all windows. Normally, this is not needed as changes in window
4943contents are detected automatically. However, certain implicit 4967contents are detected automatically. However, certain implicit
diff --git a/etc/fr-refcard.tex b/etc/fr-refcard.tex
index c8c8fd8cd9a..48c0c927f51 100644
--- a/etc/fr-refcard.tex
+++ b/etc/fr-refcard.tex
@@ -1,13 +1,19 @@
1 1% Reference Card for GNU Emacs version 22 on Unix systems
2% Reference Card for GNU Emacs version 21 on Unix systems
3%**start of header 2%**start of header
4\newcount\columnsperpage 3\newcount\columnsperpage
4\newcount\letterpaper
5 5
6% This file can be printed with 1, 2, or 3 columns per page (see below). 6% This file can be printed with 1, 2, or 3 columns per page (see below).
7% Specify how many you want here. Nothing else needs to be changed. 7% Specify how many you want here.
8
9\columnsperpage=3
8 10
9\columnsperpage=1 11% Set letterpaper to 0 for A4 paper, 1 for letter (US) paper. Useful
12% only when columnsperpage is 2 or 3.
10 13
14\letterpaper=1
15
16% Nothing else needs to be changed below this line.
11% Copyright (C) 1987, 1993, 1996, 1997, 2002, 2003, 2004, 17% Copyright (C) 1987, 1993, 1996, 1997, 2002, 2003, 2004,
12% 2005, 2006 Free Software Foundation, Inc. 18% 2005, 2006 Free Software Foundation, Inc.
13 19
@@ -44,6 +50,11 @@
44% For this you need a dvi device driver that can print sideways. 50% For this you need a dvi device driver that can print sideways.
45% Which mode to use is controlled by setting \columnsperpage above. 51% Which mode to use is controlled by setting \columnsperpage above.
46% 52%
53% To compile and print this document:
54% tex fr-refcard.tex
55% dvips -t landscape fr-refcard.dvi
56%
57
47% Author: 58% Author:
48% Stephen Gildea 59% Stephen Gildea
49% Internet: gildea@stop.mail-abuse.org 60% Internet: gildea@stop.mail-abuse.org
@@ -53,7 +64,7 @@
53 64
54% If there were room, it would be nice to see a section on Dired. 65% If there were room, it would be nice to see a section on Dired.
55 66
56\def\versionnumber{2.2} 67\def\versionnumber{2.3}
57\def\year{2006} 68\def\year{2006}
58 69
59\def\shortcopyrightnotice{\vskip 1ex plus 2 fill 70\def\shortcopyrightnotice{\vskip 1ex plus 2 fill
@@ -63,7 +74,7 @@
63\def\copyrightnotice{ 74\def\copyrightnotice{
64\vskip 1ex plus 2 fill\begingroup\small 75\vskip 1ex plus 2 fill\begingroup\small
65\centerline{Copyright \copyright\ \year\ Free Software Foundation, Inc.} 76\centerline{Copyright \copyright\ \year\ Free Software Foundation, Inc.}
66\centerline{v\versionnumber{} pour GNU Emacs version 21, Juin \year} 77\centerline{v\versionnumber{} pour GNU Emacs version 22, \year}
67\centerline{conception de Stephen Gildea} 78\centerline{conception de Stephen Gildea}
68\centerline{traduction fran\c{c}aise d'\'Eric Jacoboni} 79\centerline{traduction fran\c{c}aise d'\'Eric Jacoboni}
69 80
@@ -72,7 +83,7 @@ la note de copyright et cette note de permission soient conserv\'ees sur
72toutes les copies. 83toutes les copies.
73 84
74Pour les copies du manuel GNU Emacs, \'ecrivez \`a la Free Software 85Pour les copies du manuel GNU Emacs, \'ecrivez \`a la Free Software
75Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 86Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
76 87
77\endgroup} 88\endgroup}
78 89
@@ -107,6 +118,11 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
107\else %2 or 3 columns uses prereduced size 118\else %2 or 3 columns uses prereduced size
108 \hsize 3.2in 119 \hsize 3.2in
109 \vsize 7.95in 120 \vsize 7.95in
121 \if 1\the\letterpaper
122 \vsize 7.95in
123 \else
124 \vsize 7.65in
125 \fi
110 \hoffset -.75in 126 \hoffset -.75in
111 \voffset -.745in 127 \voffset -.745in
112 \font\titlefont=cmbx10 \scaledmag2 128 \font\titlefont=cmbx10 \scaledmag2
@@ -127,6 +143,11 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
127 \def\it{\eightit} 143 \def\it{\eightit}
128 \def\tt{\eighttt} 144 \def\tt{\eighttt}
129 \normalbaselineskip=.8\normalbaselineskip 145 \normalbaselineskip=.8\normalbaselineskip
146 \if 1\the\letterpaper
147 \normalbaselineskip=.8\normalbaselineskip
148 \else
149 \normalbaselineskip=.7\normalbaselineskip
150 \fi
130 \normallineskip=.8\normallineskip 151 \normallineskip=.8\normallineskip
131 \normallineskiplimit=.8\normallineskiplimit 152 \normallineskiplimit=.8\normallineskiplimit
132 \normalbaselines\rm %make definitions take effect 153 \normalbaselines\rm %make definitions take effect
@@ -257,11 +278,11 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
257 278
258\title{Carte de r\'ef\'erence de GNU Emacs} 279\title{Carte de r\'ef\'erence de GNU Emacs}
259 280
260\centerline{(pour la version 21)} 281\centerline{(pour la version 22)}
261 282
262\section{Lancement d'Emacs} 283\section{Lancement d'Emacs}
263 284
264Pour lancer GNU Emacs 21, il suffit de taper son nom : \kbd{emacs} 285Pour lancer GNU Emacs 22, il suffit de taper son nom : \kbd{emacs}
265 286
266Pour charger un fichier \`a \'editer, voir Fichiers, ci-dessous. 287Pour charger un fichier \`a \'editer, voir Fichiers, ci-dessous.
267 288
@@ -278,7 +299,7 @@ Pour charger un fichier \`a \'editer, voir Fichiers, ci-dessous.
278\key{{\bf ins\'erer} le contenu d'un autre fichier dans ce tampon}{C-x i} 299\key{{\bf ins\'erer} le contenu d'un autre fichier dans ce tampon}{C-x i}
279\key{remplacer ce fichier par le fichier voulu}{C-x C-v} 300\key{remplacer ce fichier par le fichier voulu}{C-x C-v}
280\key{\'ecrire le tampon dans un fichier donn\'e}{C-x C-w} 301\key{\'ecrire le tampon dans un fichier donn\'e}{C-x C-w}
281\key{contr\^ole de version}{C-x C-q} 302\key{bascule du mode lecture-seule du tampon}{C-x C-q}
282 303
283\section{Obtenir de l'aide} 304\section{Obtenir de l'aide}
284 305
@@ -290,15 +311,15 @@ les instructions. Si vous d\'ebutez, faites \kbd{C-h t} pour suivre un
290\key{faire d\'efiler la fen\^etre d'aide}{C-M-v} 311\key{faire d\'efiler la fen\^etre d'aide}{C-M-v}
291 312
292\key{apropos : montrer les commandes contenant une certaine cha\^\i{}ne}{C-h a} 313\key{apropos : montrer les commandes contenant une certaine cha\^\i{}ne}{C-h a}
293\key{montrer la fonction lanc\'ee par une touche}{C-h c} 314\key{d\'ecrire la fonction lanc\'ee par une touche}{C-h k}
294\key{d\'ecrire une fonction}{C-h f} 315\key{d\'ecrire une fonction}{C-h f}
295\key{obtenir des informations sp\'ecifiques au mode}{C-h m} 316\key{obtenir des informations sp\'ecifiques au mode}{C-h m}
296 317
297\section{R\'ecup\'eration des erreurs} 318\section{R\'ecup\'eration des erreurs}
298 319
299\key{{\bf avorter} une commande partiellement tap\'ee ou ex\'ecut\'ee}{C-g} 320\key{{\bf avorter} une commande partiellement tap\'ee ou ex\'ecut\'ee}{C-g}
300\metax{{\bf r\'ecup\'erer} un fichier perdu par un crash du syst\`eme}{M-x recover-file} 321\metax{{\bf r\'ecup\'erer} les fichier perdus par un crash du syst\`eme}{M-x recover-session}
301\key{{\bf annuler} une modification non souhait\'ee}{C-x u {\rm ou} C-_} 322\metax{{\bf annuler} une modification non souhait\'ee}{C-x u, C-_ {\rm ou} C-/}
302\metax{restaurer un tampon avec son contenu initial}{M-x revert-buffer} 323\metax{restaurer un tampon avec son contenu initial}{M-x revert-buffer}
303\key{r\'eafficher un \'ecran perturb\'e}{C-l} 324\key{r\'eafficher un \'ecran perturb\'e}{C-l}
304 325
@@ -377,6 +398,8 @@ qui n'a pas \'et\'e fait.
377\section{Remplacement interactif} 398\section{Remplacement interactif}
378 399
379\key{remplacer interactivement une cha\^\i{}ne de texte}{M-\%} 400\key{remplacer interactivement une cha\^\i{}ne de texte}{M-\%}
401% query-replace-regexp est liee a C-M-% mais on ne peut pas le
402% taper dans une console.
380\metax{en utilisant les expressions rationnelles}{M-x query-replace-regexp} 403\metax{en utilisant les expressions rationnelles}{M-x query-replace-regexp}
381 404
382Les r\'eponses admises dans le mode de remplacement interactif sont : 405Les r\'eponses admises dans le mode de remplacement interactif sont :
@@ -391,12 +414,12 @@ Les r\'eponses admises dans le mode de remplacement interactif sont :
391 414
392\section{Fen\^etres multiples} 415\section{Fen\^etres multiples}
393 416
394Lorsqu'il y a deux commandes, la seconde est pour l'"autre cadre". 417Lorsqu'il y a deux commandes, la seconde est une commande identique \`a
395 418la premi\`ere pour un cadre au lieu d'une fen\^etre.
396\key{supprimer toutes les autres fen\^etres}{C-x 1}
397 419
398{\setbox0=\hbox{\kbd{0}}\advance\hsize by 0\wd0 420{\setbox0=\hbox{\kbd{0}}\advance\hsize by 0\wd0
399\paralign to \hsize{#\tabskip=10pt plus 1 fil&#\tabskip=0pt&#\cr 421\paralign to \hsize{#\tabskip=10pt plus 1 fil&#\tabskip=0pt&#\cr
422\threecol{supprimer toutes les autres fen\^etres}{C-x 1\ \ \ \ }{C-x 5 1}
400\threecol{diviser la fen\^etre horizontalement}{C-x 2\ \ \ \ }{C-x 5 2} 423\threecol{diviser la fen\^etre horizontalement}{C-x 2\ \ \ \ }{C-x 5 2}
401\threecol{supprimer cette fen\^etre}{C-x 0\ \ \ \ }{C-x 5 0} 424\threecol{supprimer cette fen\^etre}{C-x 0\ \ \ \ }{C-x 5 0}
402}} 425}}
@@ -438,7 +461,7 @@ Lorsqu'il y a deux commandes, la seconde est pour l'"autre cadre".
438\key{placer la marge droite}{C-x f} 461\key{placer la marge droite}{C-x f}
439\key{d\'efinir le pr\'efixe par lequel commencera chaque ligne}{C-x .} 462\key{d\'efinir le pr\'efixe par lequel commencera chaque ligne}{C-x .}
440 463
441\key{d\'efinir la fonte}{M-g} 464\key{d\'efinir la fonte}{M-o}
442 465
443\section{Modifier la casse} 466\section{Modifier la casse}
444 467
@@ -554,7 +577,7 @@ menu utilisant le minitampon.
554 577
555\section{Jeux de caract\`eres internationaux} 578\section{Jeux de caract\`eres internationaux}
556 579
557\metax{indiquer la langue principale}{M-x set-language-environment} 580\key{indiquer la langue principale}{C-x RET l}
558\metax{montrer toutes les m\'ethodes de saisie}{M-x list-input-methods} 581\metax{montrer toutes les m\'ethodes de saisie}{M-x list-input-methods}
559\key{activer ou d\'esactiver la m\'ethode de saisie}{C-\\} 582\key{activer ou d\'esactiver la m\'ethode de saisie}{C-\\}
560\key{choisir le syst\`eme de codage pour la commande suivante}{C-x RET c} 583\key{choisir le syst\`eme de codage pour la commande suivante}{C-x RET c}
@@ -564,7 +587,7 @@ menu utilisant le minitampon.
564\section{Info} 587\section{Info}
565 588
566\key{entrer dans le visualisateur de la documentation Info}{C-h i} 589\key{entrer dans le visualisateur de la documentation Info}{C-h i}
567\key{chercher une fonction ou une variable pr\'ecise dans Info}{C-h C-i} 590\key{chercher une fonction ou une variable pr\'ecise dans Info}{C-h S}
568\beginindentedkeys 591\beginindentedkeys
569 592
570Se d\'eplacer dans un n\oe{}ud : 593Se d\'eplacer dans un n\oe{}ud :
@@ -583,12 +606,13 @@ Passer de n\oe{}ud en n\oe{}ud :
583\key{suivre une r\'ef\'erence crois\'ee (on revient avec \kbd{l})}{f} 606\key{suivre une r\'ef\'erence crois\'ee (on revient avec \kbd{l})}{f}
584\key{revenir au dernier n\oe{}ud visit\'e}{l} 607\key{revenir au dernier n\oe{}ud visit\'e}{l}
585\key{revenir au n\oe{}ud du r\'epertoire}{d} 608\key{revenir au n\oe{}ud du r\'epertoire}{d}
609\key{aller au n\oe{}ud de plus haut niveau du fichier Info}{t}
586\key{aller sur n'importe quel n\oe{}ud par son nom}{g} 610\key{aller sur n'importe quel n\oe{}ud par son nom}{g}
587 611
588Autres : 612Autres :
589 613
590\key{lancer le {\bf didacticiel} Info}{h} 614\key{lancer le {\bf didacticiel} Info}{h}
591\key{chercher dans l'index}{i} 615\key{chercher un sujet dans l'index}{i}
592\key{rechercher les n\oe{}uds avec une expression rationnelle}{s} 616\key{rechercher les n\oe{}uds avec une expression rationnelle}{s}
593\key{{\bf quitter} Info}{q} 617\key{{\bf quitter} Info}{q}
594 618
diff --git a/etc/orgcard.tex b/etc/orgcard.tex
index 5a019328a1f..646a03b0277 100644
--- a/etc/orgcard.tex
+++ b/etc/orgcard.tex
@@ -1,5 +1,5 @@
1% Reference Card for Org Mode 1% Reference Card for Org Mode
2\def\orgversionnumber{4.36} 2\def\orgversionnumber{4.37}
3\def\year{2006} 3\def\year{2006}
4% 4%
5%**start of header 5%**start of header
@@ -336,83 +336,6 @@ To set archive location for current file, add a line like$^2$:
336\key{create sparse tree with matching tags}{C-c \\} 336\key{create sparse tree with matching tags}{C-c \\}
337\key{globally (agenda) match tags at cursor}{C-c C-o} 337\key{globally (agenda) match tags at cursor}{C-c C-o}
338 338
339\section{TODO Items}
340
341\key{rotate the state of the current item}{C-c C-t}
342\key{view TODO items in a sparse tree}{C-c C-v}
343\key{view 3rd TODO keyword's sparse tree}{C-3 C-c C-v}
344
345\key{set the priority of the current item}{C-c , [ABC]}
346\key{remove priority cookie from current item}{C-c , SPC}
347\key{raise priority of current item}{S-UP$^3$}
348\key{lower priority of current item}{S-DOWN$^3$}
349
350\key{\kbd{\#+SEQ_TODO: TODO TRY BLUFF DONE}}{\rm todo workflow}
351\key{\kbd{\#+TYP_TODO: Phil home work DONE}}{\rm todo types}
352
353\section{Timestamps}
354
355\key{prompt for date and insert timestamp}{C-c .}
356\key{like \kbd{C-c} . but insert date and time format}{C-u C-c .}
357\key{Like \kbd{C-c .} but make stamp inactive}{C-c !} % FIXME
358\key{insert DEADLINE timestamp}{C-c C-d}
359\key{insert SCHEDULED timestamp}{C-c C-s}
360\key{create sparse tree with all deadlines due}{C-c C-w}
361\key{the time between 2 dates in a time range}{C-c C-y}
362\key{change timestamp at cursor by $\pm 1$ day}{S-RIGHT/LEFT$^3$}
363\key{change year/month/day at cursor by $\pm 1$}{S-UP/DOWN$^3$}
364\key{access the calendar for the current date}{C-c >}
365\key{insert timestamp matching date in calendar}{C-c <}
366\key{access agenda for current date}{C-c C-o}
367\key{Select date while prompted}{mouse-1/RET}
368%\key{... select date in calendar}{mouse-1/RET}
369%\key{... scroll calendar back/forward one month}{< / >}
370%\key{... forward/backward one day}{S-LEFT/RIGHT}
371%\key{... forward/backward one week}{S-UP/DOWN}
372%\key{... forward/backward one month}{M-S-LEFT/RIGT}
373
374\section{Links}
375
376\key{globally store link to the current location}{C-c l$^1$}
377\key{insert a link (TAB completes stored links)}{C-c C-l}
378\key{insert file link with file name completion}{C-u C-c C-l}
379\key{edit (also hidden part of) link at point}{C-c C-l}
380
381\key{open file links in emacs (\kbd{C-u} : in emacs)}{C-c C-o}
382\key{open link at point (3: in emacs)}{mouse-2/3}
383%\key{open file links in emacs}{mouse-3}
384%\key{record a position in mark ring}{C-c \%}
385\key{jump back to last followed link(s)}{C-c \&}
386
387{\bf Internal Links}
388
389\key{\kbd{<<My Target>>}}{\rm target}
390\key{\kbd{<<<My Target>>>}}{\rm radio target$^2$}
391\key{\kbd{[[*this text]]}}{\rm find headline}
392\metax{\kbd{[[this text]]}}{\rm find target or text in buffer}
393\metax{\kbd{[[this text][description]]}}{\rm optional link text}
394
395{\bf External Links}
396
397\key{\kbd{file:/home/dominik/img/mars.jpg}}{\rm file, absolute}
398\key{\kbd{file:papers/last.pdf}}{\rm file, relative}
399\key{\kbd{file:projects.org::*that text}}{\rm find headline}
400\key{\kbd{file:projects.org::find me}}{\rm find tgt/string}
401%\key{\kbd{file:projects.org::/regexp/}}{\rm regexp search}
402\key{\kbd{http://www.astro.uva.nl/~dominik}}{\rm on the web}
403\key{\kbd{mailto:adent@galaxy.net}}{\rm EMail address}
404\key{\kbd{news:comp.emacs}}{\rm Usenet group}
405\key{\kbd{bbdb:Richard Stallman}}{\rm BBDB person}
406\key{\kbd{gnus:group}}{\rm GNUS group}
407\key{\kbd{gnus:group\#id}}{\rm GNUS message}
408\key{\kbd{vm|wl|mhe|rmail:folder}}{\rm Mail folder}
409\key{\kbd{vm|wl|mhe|rmail:folder\#id}}{\rm Mail message}
410\key{\kbd{info:emacs:Regexps}}{\rm Info file:node}
411\key{\kbd{shell:ls *.org}}{\rm shell command}
412\key{\kbd{elisp:(calendar)}}{\rm elisp form}
413\metax{\kbd{[[external link][description]]}}{\rm optional link text}
414%\key{\kbd{vm://myself@some.where.org/folder\#id}}{\rm VM remote}
415
416\section{Tables} 339\section{Tables}
417 340
418%Org-mode has its own built-in intuitive table editor with unique 341%Org-mode has its own built-in intuitive table editor with unique
@@ -500,11 +423,98 @@ formula, \kbd{:=} a named-field formula.
500\key{recognize existing table.el table}{C-c C-c} 423\key{recognize existing table.el table}{C-c C-c}
501\key{convert table (Org-mode $\leftrightarrow$ table.el)}{C-c ~} 424\key{convert table (Org-mode $\leftrightarrow$ table.el)}{C-c ~}
502 425
426\section{Links}
427
428\key{globally store link to the current location}{C-c l$^1$}
429\key{insert a link (TAB completes stored links)}{C-c C-l}
430\key{insert file link with file name completion}{C-u C-c C-l}
431\key{edit (also hidden part of) link at point}{C-c C-l}
432
433\key{open file links in emacs (\kbd{C-u} : in emacs)}{C-c C-o}
434\key{open link at point (3: in emacs)}{mouse-2/3}
435%\key{open file links in emacs}{mouse-3}
436%\key{record a position in mark ring}{C-c \%}
437\key{jump back to last followed link(s)}{C-c \&}
438
439{\bf Internal Links}
440
441\key{\kbd{<<My Target>>}}{\rm target}
442\key{\kbd{<<<My Target>>>}}{\rm radio target$^2$}
443\key{\kbd{[[*this text]]}}{\rm find headline}
444\metax{\kbd{[[this text]]}}{\rm find target or text in buffer}
445\metax{\kbd{[[this text][description]]}}{\rm optional link text}
446
447{\bf External Links}
448
449\key{\kbd{file:/home/dominik/img/mars.jpg}}{\rm file, absolute}
450\key{\kbd{file:papers/last.pdf}}{\rm file, relative}
451\key{\kbd{file:projects.org::*that text}}{\rm find headline}
452\key{\kbd{file:projects.org::find me}}{\rm find tgt/string}
453%\key{\kbd{file:projects.org::/regexp/}}{\rm regexp search}
454\key{\kbd{http://www.astro.uva.nl/~dominik}}{\rm on the web}
455\key{\kbd{mailto:adent@galaxy.net}}{\rm EMail address}
456\key{\kbd{news:comp.emacs}}{\rm Usenet group}
457\key{\kbd{bbdb:Richard Stallman}}{\rm BBDB person}
458\key{\kbd{gnus:group}}{\rm GNUS group}
459\key{\kbd{gnus:group\#id}}{\rm GNUS message}
460\key{\kbd{vm|wl|mhe|rmail:folder}}{\rm Mail folder}
461\key{\kbd{vm|wl|mhe|rmail:folder\#id}}{\rm Mail message}
462\key{\kbd{info:emacs:Regexps}}{\rm Info file:node}
463\key{\kbd{shell:ls *.org}}{\rm shell command}
464\key{\kbd{elisp:(calendar)}}{\rm elisp form}
465\metax{\kbd{[[external link][description]]}}{\rm optional link text}
466%\key{\kbd{vm://myself@some.where.org/folder\#id}}{\rm VM remote}
467
468
469\section{TODO Items}
470
471\key{rotate the state of the current item}{C-c C-t}
472\key{view TODO items in a sparse tree}{C-c C-v}
473\key{view 3rd TODO keyword's sparse tree}{C-3 C-c C-v}
474
475\key{set the priority of the current item}{C-c , [ABC]}
476\key{remove priority cookie from current item}{C-c , SPC}
477\key{raise priority of current item}{S-UP$^3$}
478\key{lower priority of current item}{S-DOWN$^3$}
479
480\key{\kbd{\#+SEQ_TODO: TODO TRY BLUFF DONE}}{\rm todo workflow}
481\key{\kbd{\#+TYP_TODO: Phil home work DONE}}{\rm todo types}
482
483\section{Timestamps}
484
485\key{prompt for date and insert timestamp}{C-c .}
486\key{like \kbd{C-c} . but insert date and time format}{C-u C-c .}
487\key{Like \kbd{C-c .} but make stamp inactive}{C-c !} % FIXME
488\key{insert DEADLINE timestamp}{C-c C-d}
489\key{insert SCHEDULED timestamp}{C-c C-s}
490\key{create sparse tree with all deadlines due}{C-c C-w}
491\key{the time between 2 dates in a time range}{C-c C-y}
492\key{change timestamp at cursor by $\pm 1$ day}{S-RIGHT/LEFT$^3$}
493\key{change year/month/day at cursor by $\pm 1$}{S-UP/DOWN$^3$}
494\key{access the calendar for the current date}{C-c >}
495\key{insert timestamp matching date in calendar}{C-c <}
496\key{access agenda for current date}{C-c C-o}
497\key{Select date while prompted}{mouse-1/RET}
498%\key{... select date in calendar}{mouse-1/RET}
499%\key{... scroll calendar back/forward one month}{< / >}
500%\key{... forward/backward one day}{S-LEFT/RIGHT}
501%\key{... forward/backward one week}{S-UP/DOWN}
502%\key{... forward/backward one month}{M-S-LEFT/RIGT}
503
504
503\newcolumn 505\newcolumn
504\title{Org-Mode Reference Card (2/2)} 506\title{Org-Mode Reference Card (2/2)}
505 507
506\centerline{(for version \orgversionnumber)} 508\centerline{(for version \orgversionnumber)}
507 509
510\section{Clocking Time}
511
512\key{start clock on current item}{C-c C-x C-i}
513\key{stop clock on current item}{C-c C-x C-o}
514\key{cancel current clock}{C-c C-x C-x}
515\key{display total subtree times}{C-c C-x C-d}
516\key{remove displayed times}{C-c C-c}
517
508\section{Agenda Views} 518\section{Agenda Views}
509 519
510\key{add/move current file to front of agenda}{C-c [} 520\key{add/move current file to front of agenda}{C-c [}
@@ -563,6 +573,12 @@ To set categories, add lines like$^2$:
563\key{change timestamp to today}{>} 573\key{change timestamp to today}{>}
564\key{insert new entry into diary}{i} 574\key{insert new entry into diary}{i}
565 575
576\key{Start the clock on current item (clock-in)}{I}
577\key{Stop the clock (clock-out)}{O}
578\key{Cancel current clock}{X}
579
580\newcolumn
581
566{\bf Calendar commands} 582{\bf Calendar commands}
567 583
568\key{find agenda cursor date in calendar}{c} 584\key{find agenda cursor date in calendar}{c}
@@ -577,23 +593,16 @@ To set categories, add lines like$^2$:
577\key{quit agenda, remove agenda buffer}{q} 593\key{quit agenda, remove agenda buffer}{q}
578\key{exit agenda, remove all agenda buffers}{x} 594\key{exit agenda, remove all agenda buffers}{x}
579 595
580\section{Exporting} 596\section{Exporting and Publishing}
581 597
582Exporting creates files with extensions {\it .txt\/} and {\it .html\/} 598Exporting creates files with extensions {\it .txt\/} and {\it .html\/}
583in the current directory. 599in the current directory. Publishing puts the resulting file into
584 600some other place.
585\key{export as ASCII file}{C-c C-x a}
586\key{export visible text only (e.g. for printing)}{C-c C-x v}
587\key{export as HTML file}{C-c C-x h}
588\key{export as HTML and open in browser}{C-c C-x b}
589\key{prefix arg sets nb. of headline levels, e.g.}{C-3 C-c C-x h}
590 601
591\key{export as iCalendar file}{C-c C-x i} 602\key{export/publish dispatcher}{C-c C-e}
592\key{export all agenda files as iCalendar files}{C-c C-x C-i}
593\key{combine all agenda files to single iCal file}{C-c C-x C-c}
594 603
604\key{export visible part only}{C-c C-e v}
595\key{insert template of export options}{C-c C-x t} 605\key{insert template of export options}{C-c C-x t}
596
597\key{toggle fixed width for entry or region}{C-c :} 606\key{toggle fixed width for entry or region}{C-c :}
598 607
599{\bf HTML formatting} 608{\bf HTML formatting}
@@ -642,13 +651,6 @@ Subtrees whose header starts with COMMENT are never exported.
642 651
643\key{toggle COMMENT keyword on entry}{C-c ;} 652\key{toggle COMMENT keyword on entry}{C-c ;}
644 653
645
646\section{Publishing (requires org-publish.el)}
647\key{publishcurrent file}{C-c C-e C-f}
648\key{publish current project}{C-c C-e C-p}
649\key{publish project (prompted for)}{C-c C-e C-c}
650\key{publish all projects}{C-c C-e C-a}
651
652\section{Completion} 654\section{Completion}
653 655
654In-buffer completion completes TODO keywords at headline start, TeX 656In-buffer completion completes TODO keywords at headline start, TeX
diff --git a/etc/pl-refcard.ps b/etc/pl-refcard.ps
index 4f48f0e4570..dffe3c09f92 100644
--- a/etc/pl-refcard.ps
+++ b/etc/pl-refcard.ps
@@ -1,16 +1,19 @@
1%!PS-Adobe-2.0 1%!PS-Adobe-2.0
2%%Creator: dvips(k) 5.86 Copyright 1999 Radical Eye Software 2%%Creator: dvips(k) 5.95a Copyright 2005 Radical Eye Software
3%%Title: refcard-pl.dvi 3%%Title: pl-refcard.dvi
4%%Pages: 4 4%%Pages: 4
5%%PageOrder: Ascend 5%%PageOrder: Ascend
6%%BoundingBox: 0 0 596 842 6%%BoundingBox: 0 0 595 842
7%%DocumentFonts: PLBX10 PLR8 PLTT8 PLBX8 PLR6 PLSY6 PLTI8 PLMI8 7%%DocumentFonts: PLRoman10-Bold PLRoman8-Regular PLTypewriter8-Regular
8%%+ PLRoman8-Bold PLRoman6-Regular PLMathSymbols6-Italic PLRoman8-Italic
9%%+ PLMathItalic8-Italic
10%%DocumentPaperSizes: a4
8%%EndComments 11%%EndComments
9%DVIPSWebPage: (www.radicaleye.com) 12%DVIPSWebPage: (www.radicaleye.com)
10%DVIPSCommandLine: dvips refcard-pl -o 13%DVIPSCommandLine: dvips pl-refcard -o
11%DVIPSParameters: dpi=600, compressed 14%DVIPSParameters: dpi=600
12%DVIPSSource: TeX output 2000.02.16:1350 15%DVIPSSource: TeX output 2006.06.08:2146
13%%BeginProcSet: texc.pro 16%%BeginProcSet: tex.pro 0 0
14%! 17%!
15/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S 18/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
16N}B/A{dup}B/TR{translate}N/isls false N/vsize 11 72 mul N/hsize 8.5 72 19N}B/A{dup}B/TR{translate}N/isls false N/vsize 11 72 mul N/hsize 8.5 72
@@ -29,22 +32,10 @@ df-tail}B/dfs{div/sf X/fntrx[sf 0 0 sf neg 0 0]N df-tail}B/E{pop nn A
29definefont setfont}B/Cw{Cd A length 5 sub get}B/Ch{Cd A length 4 sub get 32definefont setfont}B/Cw{Cd A length 5 sub get}B/Ch{Cd A length 4 sub get
30}B/Cx{128 Cd A length 3 sub get sub}B/Cy{Cd A length 2 sub get 127 sub} 33}B/Cx{128 Cd A length 3 sub get sub}B/Cy{Cd A length 2 sub get 127 sub}
31B/Cdx{Cd A length 1 sub get}B/Ci{Cd A type/stringtype ne{ctr get/ctr ctr 34B/Cdx{Cd A length 1 sub get}B/Ci{Cd A type/stringtype ne{ctr get/ctr ctr
321 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 351 add N}if}B/CharBuilder{save 3 1 roll S A/base get 2 index get S
331 roll S A/base get 2 index get S/BitMaps get S get/Cd X pop/ctr 0 N Cdx 36/BitMaps get S get/Cd X pop/ctr 0 N Cdx 0 Cx Cy Ch sub Cx Cw add Cy
340 Cx Cy Ch sub Cx Cw add Cy setcachedevice Cw Ch true[1 0 0 -1 -.1 Cx 37setcachedevice Cw Ch true[1 0 0 -1 -.1 Cx sub Cy .1 sub]{Ci}imagemask
35sub Cy .1 sub]/id Ci N/rw Cw 7 add 8 idiv string N/rc 0 N/gp 0 N/cp 0 N{ 38restore}B/D{/cc X A type/stringtype ne{]}if nn/base get cc ctr put nn
36rc 0 ne{rc 1 sub/rc X rw}{G}ifelse}imagemask restore}B/G{{id gp get/gp
37gp 1 add N A 18 mod S 18 idiv pl S get exec}loop}B/adv{cp add/cp X}B
38/chg{rw cp id gp 4 index getinterval putinterval A gp add/gp X adv}B/nd{
39/cp 0 N rw exit}B/lsh{rw cp 2 copy get A 0 eq{pop 1}{A 255 eq{pop 254}{
40A A add 255 and S 1 and or}ifelse}ifelse put 1 adv}B/rsh{rw cp 2 copy
41get A 0 eq{pop 128}{A 255 eq{pop 127}{A 2 idiv S 128 and or}ifelse}
42ifelse put 1 adv}B/clr{rw cp 2 index string putinterval adv}B/set{rw cp
43fillstr 0 4 index getinterval putinterval adv}B/fillstr 18 string 0 1 17
44{2 copy 255 put pop}for N/pl[{adv 1 chg}{adv 1 chg nd}{1 add chg}{1 add
45chg nd}{adv lsh}{adv lsh nd}{adv rsh}{adv rsh nd}{1 add adv}{/rc X nd}{
461 add set}{1 add clr}{adv 2 chg}{adv 2 chg nd}{pop nd}]A{bind pop}
47forall N/D{/cc X A type/stringtype ne{]}if nn/base get cc ctr put nn
48/BitMaps get S ctr S sf 1 ne{A A length 1 sub A 2 index S get sf div put 39/BitMaps get S ctr S sf 1 ne{A A length 1 sub A 2 index S get sf div put
49}if put/ctr ctr 1 add N}B/I{cc 1 add D}B/bop{userdict/bop-hook known{ 40}if put/ctr ctr 1 add N}B/I{cc 1 add D}B/bop{userdict/bop-hook known{
50bop-hook}if/SI save N @rigin 0 0 moveto/V matrix currentmatrix A 1 get A 41bop-hook}if/SI save N @rigin 0 0 moveto/V matrix currentmatrix A 1 get A
@@ -68,82 +59,1388 @@ 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
68rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end 59rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end
69 60
70%%EndProcSet 61%%EndProcSet
71%%BeginProcSet: texps.pro 62%%BeginProcSet: plrm.enc 0 0
63/encplrm[
64/Gamma
65/Delta
66/Theta
67/Lambda
68/Xi
69/Pi
70/Sigma
71/Upsilon
72/Phi
73/Psi
74/Omega
75/ff
76/fi
77/fl
78/ffi
79/ffl
80/dotlessi
81/dotlessj
82/grave
83/acute
84/caron
85/breve
86/macron
87/ring
88/cedilla
89/germandbls
90/ae
91/oe
92/oslash
93/AE
94/OE
95/Oslash
96/suppress
97/exclam
98/quotedblright
99/numbersign
100/dollar
101/percent
102/ampersand
103/quoteright
104/parenleft
105/parenright
106/asterisk
107/plus
108/comma
109/hyphen
110/period
111/slash
112/zero
113/one
114/two
115/three
116/four
117/five
118/six
119/seven
120/eight
121/nine
122/colon
123/semicolon
124/exclamdown
125/equal
126/questiondown
127/question
128/at
129/A
130/B
131/C
132/D
133/E
134/F
135/G
136/H
137/I
138/J
139/K
140/L
141/M
142/N
143/O
144/P
145/Q
146/R
147/S
148/T
149/U
150/V
151/W
152/X
153/Y
154/Z
155/bracketleft
156/quotedblleft
157/bracketright
158/circumflex
159/dotaccent
160/quoteleft
161/a
162/b
163/c
164/d
165/e
166/f
167/g
168/h
169/i
170/j
171/k
172/l
173/m
174/n
175/o
176/p
177/q
178/r
179/s
180/t
181/u
182/v
183/w
184/x
185/y
186/z
187/endash
188/emdash
189/hungarumlaut
190/tilde
191/dieresis
192/.notdef
193/Aogonek
194/Cacute
195/.notdef
196/.notdef
197/.notdef
198/Eogonek
199/.notdef
200/.notdef
201/.notdef
202/Lslash
203/Nacute
204/.notdef
205/.notdef
206/.notdef
207/.notdef
208/.notdef
209/Sacute
210/.notdef
211/.notdef
212/.notdef
213/.notdef
214/.notdef
215/.notdef
216/.notdef
217/Zacute
218/.notdef
219/Zdotaccent
220/.notdef
221/.notdef
222/.notdef
223/.notdef
224/.notdef
225/aogonek
226/cacute
227/.notdef
228/.notdef
229/.notdef
230/eogonek
231/.notdef
232/.notdef
233/.notdef
234/lslash
235/nacute
236/.notdef
237/.notdef
238/guillemotleft
239/guillemotright
240/.notdef
241/sacute
242/.notdef
243/.notdef
244/.notdef
245/.notdef
246/.notdef
247/.notdef
248/.notdef
249/zacute
250/.notdef
251/zdotaccent
252/.notdef
253/.notdef
254/.notdef
255/.notdef
256/.notdef
257/.notdef
258/.notdef
259/.notdef
260/.notdef
261/.notdef
262/.notdef
263/.notdef
264/.notdef
265/.notdef
266/.notdef
267/.notdef
268/.notdef
269/.notdef
270/.notdef
271/.notdef
272/.notdef
273/.notdef
274/.notdef
275/Oacute
276/.notdef
277/.notdef
278/.notdef
279/.notdef
280/.notdef
281/.notdef
282/.notdef
283/.notdef
284/.notdef
285/.notdef
286/.notdef
287/.notdef
288/.notdef
289/.notdef
290/.notdef
291/.notdef
292/.notdef
293/.notdef
294/.notdef
295/.notdef
296/.notdef
297/.notdef
298/.notdef
299/.notdef
300/.notdef
301/.notdef
302/.notdef
303/.notdef
304/.notdef
305/.notdef
306/.notdef
307/oacute
308/.notdef
309/.notdef
310/.notdef
311/.notdef
312/.notdef
313/.notdef
314/.notdef
315/.notdef
316/.notdef
317/.notdef
318/.notdef
319/quotedblbase
320] def
321
322%%EndProcSet
323%%BeginProcSet: pltt.enc 0 0
324/encpltt[
325/Gamma
326/Delta
327/Theta
328/Lambda
329/Xi
330/Pi
331/Sigma
332/Upsilon
333/Phi
334/Psi
335/Omega
336/arrowup
337/arrowdown
338/quotesingle
339/exclamdown
340/questiondown
341/dotlessi
342/dotlessj
343/grave
344/acute
345/caron
346/breve
347/macron
348/ring
349/cedilla
350/germandbls
351/ae
352/oe
353/oslash
354/AE
355/OE
356/Oslash
357/visiblespace
358/exclam
359/quotedbl
360/numbersign
361/dollar
362/percent
363/ampersand
364/quoteright
365/parenleft
366/parenright
367/asterisk
368/plus
369/comma
370/hyphen
371/period
372/slash
373/zero
374/one
375/two
376/three
377/four
378/five
379/six
380/seven
381/eight
382/nine
383/colon
384/semicolon
385/less
386/equal
387/greater
388/question
389/at
390/A
391/B
392/C
393/D
394/E
395/F
396/G
397/H
398/I
399/J
400/K
401/L
402/M
403/N
404/O
405/P
406/Q
407/R
408/S
409/T
410/U
411/V
412/W
413/X
414/Y
415/Z
416/bracketleft
417/backslash
418/bracketright
419/asciicircum
420/underscore
421/quoteleft
422/a
423/b
424/c
425/d
426/e
427/f
428/g
429/h
430/i
431/j
432/k
433/l
434/m
435/n
436/o
437/p
438/q
439/r
440/s
441/t
442/u
443/v
444/w
445/x
446/y
447/z
448/braceleft
449/bar
450/braceright
451/asciitilde
452/dieresis
453/.notdef
454/Aogonek
455/Cacute
456/.notdef
457/.notdef
458/.notdef
459/Eogonek
460/.notdef
461/.notdef
462/.notdef
463/Lslash
464/Nacute
465/.notdef
466/.notdef
467/.notdef
468/.notdef
469/.notdef
470/Sacute
471/.notdef
472/.notdef
473/.notdef
474/.notdef
475/.notdef
476/.notdef
477/.notdef
478/Zacute
479/.notdef
480/Zdotaccent
481/.notdef
482/.notdef
483/.notdef
484/.notdef
485/.notdef
486/aogonek
487/cacute
488/.notdef
489/.notdef
490/.notdef
491/eogonek
492/.notdef
493/.notdef
494/.notdef
495/lslash
496/nacute
497/.notdef
498/.notdef
499/guillemotleft
500/guillemotright
501/.notdef
502/sacute
503/.notdef
504/.notdef
505/.notdef
506/.notdef
507/.notdef
508/.notdef
509/.notdef
510/zacute
511/.notdef
512/zdotaccent
513/.notdef
514/.notdef
515/.notdef
516/.notdef
517/.notdef
518/.notdef
519/.notdef
520/.notdef
521/.notdef
522/.notdef
523/.notdef
524/.notdef
525/.notdef
526/.notdef
527/.notdef
528/.notdef
529/.notdef
530/.notdef
531/.notdef
532/.notdef
533/.notdef
534/.notdef
535/.notdef
536/Oacute
537/.notdef
538/.notdef
539/.notdef
540/.notdef
541/.notdef
542/.notdef
543/.notdef
544/.notdef
545/.notdef
546/.notdef
547/.notdef
548/.notdef
549/.notdef
550/.notdef
551/.notdef
552/.notdef
553/.notdef
554/.notdef
555/.notdef
556/.notdef
557/.notdef
558/.notdef
559/.notdef
560/.notdef
561/.notdef
562/.notdef
563/.notdef
564/.notdef
565/.notdef
566/.notdef
567/.notdef
568/oacute
569/.notdef
570/.notdef
571/.notdef
572/.notdef
573/.notdef
574/.notdef
575/.notdef
576/.notdef
577/.notdef
578/.notdef
579/.notdef
580/quotedblbase
581] def
582
583%%EndProcSet
584%%BeginProcSet: plms.enc 0 0
585/encplms[
586/minus
587/periodcentered
588/multiply
589/asteriskmath
590/divide
591/diamondmath
592/plusminus
593/minusplus
594/circleplus
595/circleminus
596/circlemultiply
597/circledivide
598/circledot
599/circlecopyrt
600/openbullet
601/bullet
602/equivasymptotic
603/equivalence
604/reflexsubset
605/reflexsuperset
606/lessequal
607/greaterequal
608/precedesequal
609/followsequal
610/similar
611/approxequal
612/propersubset
613/propersuperset
614/lessmuch
615/greatermuch
616/precedes
617/follows
618/arrowleft
619/arrowright
620/arrowup
621/arrowdown
622/arrowboth
623/arrownortheast
624/arrowsoutheast
625/similarequal
626/arrowdblleft
627/arrowdblright
628/arrowdblup
629/arrowdbldown
630/arrowdblboth
631/arrownorthwest
632/arrowsouthwest
633/proportional
634/prime
635/infinity
636/element
637/owner
638/triangle
639/triangleinv
640/negationslash
641/mapsto
642/universal
643/existential
644/logicalnot
645/emptyset
646/Rfractur
647/Ifractur
648/latticetop
649/perpendicular
650/aleph
651/A
652/B
653/C
654/D
655/E
656/F
657/G
658/H
659/I
660/J
661/K
662/L
663/M
664/N
665/O
666/P
667/Q
668/R
669/S
670/T
671/U
672/V
673/W
674/X
675/Y
676/Z
677/union
678/intersection
679/unionmulti
680/logicaland
681/logicalor
682/turnstileleft
683/turnstileright
684/floorleft
685/floorright
686/ceilingleft
687/ceilingright
688/braceleft
689/braceright
690/angbracketleft
691/angbracketright
692/bar
693/bardbl
694/arrowbothv
695/arrowdblbothv
696/backslash
697/wreathproduct
698/radical
699/coproduct
700/nabla
701/integral
702/unionsq
703/intersectionsq
704/subsetsqequal
705/supersetsqequal
706/section
707/dagger
708/daggerdbl
709/paragraph
710/club
711/diamond
712/heart
713/spade
714/.notdef
715/.notdef
716/.notdef
717/.notdef
718/.notdef
719/.notdef
720/.notdef
721/.notdef
722/.notdef
723/.notdef
724/.notdef
725/.notdef
726/.notdef
727/.notdef
728/.notdef
729/.notdef
730/.notdef
731/.notdef
732/.notdef
733/.notdef
734/.notdef
735/.notdef
736/.notdef
737/.notdef
738/.notdef
739/.notdef
740/.notdef
741/.notdef
742/.notdef
743/.notdef
744/.notdef
745/.notdef
746/.notdef
747/.notdef
748/.notdef
749/.notdef
750/.notdef
751/.notdef
752/.notdef
753/.notdef
754/.notdef
755/.notdef
756/.notdef
757/.notdef
758/xlessequal
759/xgreaterequal
760/.notdef
761/.notdef
762/.notdef
763/.notdef
764/.notdef
765/.notdef
766/.notdef
767/.notdef
768/.notdef
769/.notdef
770/.notdef
771/.notdef
772/.notdef
773/.notdef
774/.notdef
775/.notdef
776/.notdef
777/.notdef
778/.notdef
779/.notdef
780/.notdef
781/.notdef
782/.notdef
783/.notdef
784/.notdef
785/.notdef
786/.notdef
787/.notdef
788/.notdef
789/.notdef
790/.notdef
791/.notdef
792/.notdef
793/.notdef
794/.notdef
795/.notdef
796/.notdef
797/.notdef
798/.notdef
799/.notdef
800/.notdef
801/.notdef
802/.notdef
803/.notdef
804/.notdef
805/.notdef
806/.notdef
807/.notdef
808/.notdef
809/.notdef
810/.notdef
811/.notdef
812/.notdef
813/.notdef
814/.notdef
815/.notdef
816/.notdef
817/.notdef
818/.notdef
819/.notdef
820/.notdef
821/.notdef
822/.notdef
823/.notdef
824/.notdef
825/.notdef
826/.notdef
827/.notdef
828/.notdef
829/.notdef
830/.notdef
831/.notdef
832/.notdef
833/.notdef
834/.notdef
835/.notdef
836/.notdef
837/.notdef
838/.notdef
839/.notdef
840/.notdef
841/.notdef
842] def
843
844%%EndProcSet
845%%BeginProcSet: plit.enc 0 0
846/encplit[
847/Gamma
848/Delta
849/Theta
850/Lambda
851/Xi
852/Pi
853/Sigma
854/Upsilon
855/Phi
856/Psi
857/Omega
858/ff
859/fi
860/fl
861/ffi
862/ffl
863/dotlessi
864/dotlessj
865/grave
866/acute
867/caron
868/breve
869/macron
870/ring
871/cedilla
872/germandbls
873/ae
874/oe
875/oslash
876/AE
877/OE
878/Oslash
879/suppress
880/exclam
881/quotedblright
882/numbersign
883/sterling
884/percent
885/ampersand
886/quoteright
887/parenleft
888/parenright
889/asterisk
890/plus
891/comma
892/hyphen
893/period
894/slash
895/zero
896/one
897/two
898/three
899/four
900/five
901/six
902/seven
903/eight
904/nine
905/colon
906/semicolon
907/exclamdown
908/equal
909/questiondown
910/question
911/at
912/A
913/B
914/C
915/D
916/E
917/F
918/G
919/H
920/I
921/J
922/K
923/L
924/M
925/N
926/O
927/P
928/Q
929/R
930/S
931/T
932/U
933/V
934/W
935/X
936/Y
937/Z
938/bracketleft
939/quotedblleft
940/bracketright
941/circumflex
942/dotaccent
943/quoteleft
944/a
945/b
946/c
947/d
948/e
949/f
950/g
951/h
952/i
953/j
954/k
955/l
956/m
957/n
958/o
959/p
960/q
961/r
962/s
963/t
964/u
965/v
966/w
967/x
968/y
969/z
970/endash
971/emdash
972/hungarumlaut
973/tilde
974/dieresis
975/.notdef
976/Aogonek
977/Cacute
978/.notdef
979/.notdef
980/.notdef
981/Eogonek
982/.notdef
983/.notdef
984/.notdef
985/Lslash
986/Nacute
987/.notdef
988/.notdef
989/.notdef
990/.notdef
991/.notdef
992/Sacute
993/.notdef
994/.notdef
995/.notdef
996/.notdef
997/.notdef
998/.notdef
999/.notdef
1000/Zacute
1001/.notdef
1002/Zdotaccent
1003/.notdef
1004/.notdef
1005/.notdef
1006/.notdef
1007/.notdef
1008/aogonek
1009/cacute
1010/.notdef
1011/.notdef
1012/.notdef
1013/eogonek
1014/.notdef
1015/.notdef
1016/.notdef
1017/lslash
1018/nacute
1019/.notdef
1020/.notdef
1021/guillemotleft
1022/guillemotright
1023/.notdef
1024/sacute
1025/.notdef
1026/.notdef
1027/.notdef
1028/.notdef
1029/.notdef
1030/.notdef
1031/.notdef
1032/zacute
1033/.notdef
1034/zdotaccent
1035/.notdef
1036/.notdef
1037/.notdef
1038/.notdef
1039/.notdef
1040/.notdef
1041/.notdef
1042/.notdef
1043/.notdef
1044/.notdef
1045/.notdef
1046/.notdef
1047/.notdef
1048/.notdef
1049/.notdef
1050/.notdef
1051/.notdef
1052/.notdef
1053/.notdef
1054/.notdef
1055/.notdef
1056/.notdef
1057/.notdef
1058/Oacute
1059/.notdef
1060/.notdef
1061/.notdef
1062/.notdef
1063/.notdef
1064/.notdef
1065/.notdef
1066/.notdef
1067/.notdef
1068/.notdef
1069/.notdef
1070/.notdef
1071/.notdef
1072/.notdef
1073/.notdef
1074/.notdef
1075/.notdef
1076/.notdef
1077/.notdef
1078/.notdef
1079/.notdef
1080/.notdef
1081/.notdef
1082/.notdef
1083/.notdef
1084/.notdef
1085/.notdef
1086/.notdef
1087/.notdef
1088/.notdef
1089/.notdef
1090/oacute
1091/.notdef
1092/.notdef
1093/.notdef
1094/.notdef
1095/.notdef
1096/.notdef
1097/.notdef
1098/.notdef
1099/.notdef
1100/.notdef
1101/.notdef
1102/quotedblbase
1103] def
1104
1105%%EndProcSet
1106%%BeginProcSet: plmi.enc 0 0
1107/encplmi[
1108/Gamma
1109/Delta
1110/Theta
1111/Lambda
1112/Xi
1113/Pi
1114/Sigma
1115/Upsilon
1116/Phi
1117/Psi
1118/Omega
1119/alpha
1120/beta
1121/gamma
1122/delta
1123/epsilon1
1124/zeta
1125/eta
1126/theta
1127/iota
1128/kappa
1129/lambda
1130/mu
1131/nu
1132/xi
1133/pi
1134/rho
1135/sigma
1136/tau
1137/upsilon
1138/phi
1139/chi
1140/psi
1141/omega
1142/epsilon
1143/theta1
1144/pi1
1145/rho1
1146/sigma1
1147/phi1
1148/arrowlefttophalf
1149/arrowleftbothalf
1150/arrowrighttophalf
1151/arrowrightbothalf
1152/arrowhookleft
1153/arrowhookright
1154/triangleright
1155/triangleleft
1156/zerooldstyle
1157/oneoldstyle
1158/twooldstyle
1159/threeoldstyle
1160/fouroldstyle
1161/fiveoldstyle
1162/sixoldstyle
1163/sevenoldstyle
1164/eightoldstyle
1165/nineoldstyle
1166/period
1167/comma
1168/less
1169/slash
1170/greater
1171/star
1172/partialdiff
1173/A
1174/B
1175/C
1176/D
1177/E
1178/F
1179/G
1180/H
1181/I
1182/J
1183/K
1184/L
1185/M
1186/N
1187/O
1188/P
1189/Q
1190/R
1191/S
1192/T
1193/U
1194/V
1195/W
1196/X
1197/Y
1198/Z
1199/flat
1200/natural
1201/sharp
1202/slurbelow
1203/slurabove
1204/lscript
1205/a
1206/b
1207/c
1208/d
1209/e
1210/f
1211/g
1212/h
1213/i
1214/j
1215/k
1216/l
1217/m
1218/n
1219/o
1220/p
1221/q
1222/r
1223/s
1224/t
1225/u
1226/v
1227/w
1228/x
1229/y
1230/z
1231/dotlessi
1232/dotlessj
1233/weierstrass
1234/vector
1235/tie
1236/.notdef
1237/.notdef
1238/.notdef
1239/.notdef
1240/.notdef
1241/.notdef
1242/.notdef
1243/.notdef
1244/.notdef
1245/.notdef
1246/.notdef
1247/.notdef
1248/.notdef
1249/.notdef
1250/.notdef
1251/.notdef
1252/.notdef
1253/.notdef
1254/.notdef
1255/.notdef
1256/.notdef
1257/.notdef
1258/.notdef
1259/.notdef
1260/.notdef
1261/.notdef
1262/.notdef
1263/.notdef
1264/.notdef
1265/.notdef
1266/.notdef
1267/.notdef
1268/.notdef
1269/.notdef
1270/.notdef
1271/.notdef
1272/.notdef
1273/.notdef
1274/.notdef
1275/.notdef
1276/.notdef
1277/.notdef
1278/.notdef
1279/.notdef
1280/.notdef
1281/.notdef
1282/.notdef
1283/.notdef
1284/.notdef
1285/.notdef
1286/.notdef
1287/.notdef
1288/.notdef
1289/.notdef
1290/.notdef
1291/.notdef
1292/.notdef
1293/.notdef
1294/.notdef
1295/.notdef
1296/.notdef
1297/.notdef
1298/.notdef
1299/.notdef
1300/.notdef
1301/.notdef
1302/.notdef
1303/.notdef
1304/.notdef
1305/.notdef
1306/.notdef
1307/.notdef
1308/.notdef
1309/.notdef
1310/.notdef
1311/.notdef
1312/.notdef
1313/.notdef
1314/.notdef
1315/.notdef
1316/.notdef
1317/.notdef
1318/.notdef
1319/.notdef
1320/.notdef
1321/.notdef
1322/.notdef
1323/.notdef
1324/.notdef
1325/.notdef
1326/.notdef
1327/.notdef
1328/.notdef
1329/.notdef
1330/.notdef
1331/.notdef
1332/.notdef
1333/.notdef
1334/.notdef
1335/.notdef
1336/.notdef
1337/.notdef
1338/.notdef
1339/.notdef
1340/.notdef
1341/.notdef
1342/.notdef
1343/.notdef
1344/.notdef
1345/.notdef
1346/.notdef
1347/.notdef
1348/.notdef
1349/.notdef
1350/.notdef
1351/.notdef
1352/.notdef
1353/.notdef
1354/.notdef
1355/.notdef
1356/.notdef
1357/.notdef
1358/.notdef
1359/.notdef
1360/.notdef
1361/.notdef
1362/.notdef
1363/.notdef
1364] def
1365
1366%%EndProcSet
1367%%BeginProcSet: texps.pro 0 0
72%! 1368%!
73TeXDict begin/rf{findfont dup length 1 add dict begin{1 index/FID ne 2 1369TeXDict begin/rf{findfont dup length 1 add dict begin{1 index/FID ne 2
74index/UniqueID ne and{def}{pop pop}ifelse}forall[1 index 0 6 -1 roll 1370index/UniqueID ne and{def}{pop pop}ifelse}forall[1 index 0 6 -1 roll
75exec 0 exch 5 -1 roll VResolution Resolution div mul neg 0 0]/Metrics 1371exec 0 exch 5 -1 roll VResolution Resolution div mul neg 0 0]FontType 0
76exch def dict begin Encoding{exch dup type/integertype ne{pop pop 1 sub 1372ne{/Metrics exch def dict begin Encoding{exch dup type/integertype ne{
77dup 0 le{pop}{[}ifelse}{FontMatrix 0 get div Metrics 0 get div def} 1373pop pop 1 sub dup 0 le{pop}{[}ifelse}{FontMatrix 0 get div Metrics 0 get
78ifelse}forall Metrics/Metrics currentdict end def[2 index currentdict 1374div def}ifelse}forall Metrics/Metrics currentdict end def}{{1 index type
79end definefont 3 -1 roll makefont/setfont cvx]cvx def}def/ObliqueSlant{ 1375/nametype eq{exit}if exch pop}loop}ifelse[2 index currentdict end
80dup sin S cos div neg}B/SlantFont{4 index mul add}def/ExtendFont{3 -1 1376definefont 3 -1 roll makefont/setfont cvx]cvx def}def/ObliqueSlant{dup
81roll mul exch}def/ReEncodeFont{CharStrings rcheck{/Encoding false def 1377sin S cos div neg}B/SlantFont{4 index mul add}def/ExtendFont{3 -1 roll
82dup[exch{dup CharStrings exch known not{pop/.notdef/Encoding true def} 1378mul exch}def/ReEncodeFont{CharStrings rcheck{/Encoding false def dup[
83if}forall Encoding{]exch pop}{cleartomark}ifelse}if/Encoding exch def} 1379exch{dup CharStrings exch known not{pop/.notdef/Encoding true def}if}
84def end 1380forall Encoding{]exch pop}{cleartomark}ifelse}if/Encoding exch def}def
1381end
85 1382
86%%EndProcSet 1383%%EndProcSet
87%%BeginFont: PLMI8 1384%%BeginFont: PLMathItalic8-Italic
88%!PS-AdobeFont-1.0: PLMI8 1.02 1385%!PS-AdobeFont-1.0: PLMathItalic8-Italic 1.11
89%%CreationDate: Thu Jan 07 19:30:00 1999 1386%%CreationDate: Thu Apr 13 18:00:00 2000
90%%VMusage: 1024 32857 1387%%VMusage: 1024 32857
91% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. Adaptacja PL JMN 1997 1388% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. Adaptacja PL JMN 1997
92% ADL: 750 250 0 1389% ADL: 556 156 0
93%%EndComments 1390%%EndComments
94FontDirectory/PLMI8 known{/PLMI8 findfont dup/UniqueXX known{dup 1391FontDirectory/PLMathItalic8-Italic known{/PLMathItalic8-Italic findfont dup/UniqueID known{dup
95/UniqueXX get 0 eq exch/FontType get 1 eq and}{pop false}ifelse 1392/UniqueID get 0 eq exch/FontType get 1 eq and}{pop false}ifelse
96{save true}{false}ifelse}{false}ifelse 1393{save true}{false}ifelse}{false}ifelse
9717 dict begin 139417 dict begin
98/FontInfo 13 dict dup begin 1395/FontInfo 13 dict dup begin
99/version(1.02)readonly def 1396/version(1.11)readonly def
100/Notice(Copyright (C) 1997 American Mathematical Society. All Rights Reserved. Adaptacja PL JMN 1997)readonly def 1397/Notice(Copyright (C) 1997 American Mathematical Society. All Rights Reserved. Adaptacja PL JMN 1997)readonly def
101/FullName(PLMI8)readonly def 1398/FullName(PLMathItalic8-Italic)readonly def
102/FamilyName(Computer Modern)readonly def 1399/FamilyName(PLMathItalic8)readonly def
103/Weight(Normal)readonly def 1400/Weight(Normal)readonly def
104/isFixedPitch false def 1401/isFixedPitch false def
105/ItalicAngle 0 def 1402/ItalicAngle -14.0362 def
106/UnderlinePosition -133 def 1403/UnderlinePosition -117 def
107/UnderlineThickness 20 def 1404/UnderlineThickness 36 def
108end readonly def 1405end readonly def
109/FontName /PLMI8 def 1406/FontName /PLMathItalic8-Italic def
110/Encoding 256 array 1407/Encoding 256 array
1110 1 255 {1 index exch /.notdef put} for 14080 1 255 {1 index exch /.notdef put} for
112dup 58 /period put 1409dup 0 /.notdef put
113readonly def 1410readonly def
114/PaintType 0 def 1411/PaintType 0 def
115/FontType 1 def 1412/FontType 1 def
116/StrokeWidth 0 def 1413/StrokeWidth 0 def
117/FontMatrix[0.001 0 0 0.001 0 0]readonly def 1414/FontMatrix[0.001 0 0 0.001 0 0]readonly def
118%/UniqueXX 0 def 1415%/UniqueID 0 def
119/FontBBox{-24 -250 1110 750}readonly def 1416/FontBBox{-24 -250 1110 750}readonly def
120currentdict end 1417currentdict end
121currentfile eexec 1418currentfile eexec
122d9d66f633b846a97b686a97e45a3d0aa0525392eecac163e584a9104d99ad0bc 1419D9D66F633B846A97B686A97E45A3D0AA0525392EECAC163E584A9104D99AD0BC
1231b1844a0e222653fa481b8809b26a46f4c483a5d7e95816ea6582584156cfede 14201B1844A0E222653FA481B8809B26A46F4C483A5D7E95816EA6582584156CFEDE
124b994adcff4645140e3617e4d7e1b0e4541cb9f562e55829b4dd880aabe2229e9 1421B994ADCFF4645140E3617E4D7E1B0E4541CB9F562E55829B4DD880AABE2229E9
1254a9fa259a734d29bba91ba1e2055cbea4339bcbff98d32ceff11f296225caaba 14224A9FA259A734D29BBA91BA1E2055CBEA4339BCBFF98D32CEFF11F296225CAABA
126dca10577a5d431b714726c1278d8101abd1bd8d0bd0174fff9148f8c61c241d9 1423DCA10577A5D431B714726C1278D8101ABD1BD8D0BD0174FFF9148F8C61C241D9
1272ad360a28616cb4a0670c1bf13e7a26e167f6ffbfa02d201035c41858d1c9bc3 14242AD360A28616CB4A0670C1BF13E7A26E167F6FFBFA02D201035C41858D1C9BC3
128c5482bbd107ab18a030ff0012b4f80f35e3b5f2dacda8da3af61ca4b9d6f97ca 1425C5482BBD107AB18A030FF0012B4F80F35E3B5F2DACDA8DA3AF61CA4B9D6F97CA
129640bbda51c5ee4608b0ba41e06e5531a75a3aa83454901ad3eb84a39ddf29139 1426640BBDA51C5EE4608B0BA41E06E5531A75A3AA83454901AD3EB84A39DDF29139
1307f4cc0cdc03202665fb60db649bf152427838b7192cec676aa2a0da9bffbcde5 14277F4CC0CDC03202665FB60DB649BF152427838B7192CEC676AA2A0DA9BFFBCDE5
13169e48508484670cc75b5e5a534e17e0d46ee7adb21ad5f8b433a001279d54fe4 142869E48508484670CC75B5E5A534E17E0D46EE7ADB21AD5F8B433A001279D54FE4
13266730968d8dd7cb05f42ed6ea3d86c6ae6b21b3d3bab9e27b9c46721a475898f 142966730968D8DD7CB05F42ED6EA3D86C6AE6B21B3D3BAB9E27B9C46721A475898F
1334d9018fba3fbd95f754db80dc5375ce15b229dff01a6dde71f29724c41749179 14304D9018FBA3FBD95F754DB80DC5375CE15B229DFF01A6DDE71F29724C41749179
1344ce2cf23b2549f1cdb2f992c900fff4c58a50d89fe2af87db2a40d86c13de9a6 14314CE2CF23B2549F1CDB2F992C900FFF4C58A50D89FE2AF87DB2A40D86C13DE9A6
135dcb1ab47b273ac768471b1a5380a8f13e35dc0b4f61c2be6c7af6da70195e49e 1432DCB1AB47B273AC768471B1A5380A8F13E35DC0B4F61C2BE6C7AF6DA740B3B420
1362fbb91db3e354b96a98c97bc1d32360ecfb3789cb81d219fa6afa2f67ca968b9 14335A3D3E5905EB628EF58212420084AA1A390A401A8701AA5695E99C908FE7FAEF
13766b0989355759823d24fbf97e68f1e88807e554c162a38a19734389e8677fc17 143478B5907B740869BB38525FEF89E5722C9472D7CB53F3FC4F591BFE0EA1D08956
138c8ab5fa2b8edb7e7f3243df8fb13820d550fbc010fb41071da0e46468695a4ca 1435FA78F7FBBFD715357EDD7E5EB84721E202AF56F3070434199E1D6FA71F8A4F04
1397d1b1bf6d4ac452d5ac588bc3e0d99e97bfb58c82d050cd3925f039adffc0166 14368F596C8FED02A5A88A1F78A913B92D132586C1F3194CF55F2391CC65E4E12E7C
1406723ea08aa5b1cc158f6ebc3e07ec14903750a25067ff6885dd337ca7955ede5 143730BE87678550213E4DE8F527B408B31E72EF7F0A034A2747CEC6361673853B40
1413044811e6ab04a7108ff2c723d49e14aec485181e032c632db99c17a6e747dee 14387F1D4B66DAA509D22557BF3DD658B4F36A3A075BCB8A96755A83EBE33291F877
142c211e70326f4146cca501f3f36b5a2f3bcd19826076e7be86e6aa38a3552fdab 1439660ACD6274EF96757CB7515036BA88A9CF8E77ED0BB6C17C9D6EEDEB6D7314B5
14367e997bc8718c008fcab85257b905f5e2d53bcc7ca62f1a8b30292948600977d 1440287EA4EA33AA18387EEA867CA0FE208A8BDE6D679508976F7928EA84F2908126
1440dc85627944f596b23f74313d577a15cec9921aa74ddd86140b690a36940da9a 1441264AE8A399DDE7F4450988622D3E319964895143AB13FD85097FA3DDF76971E2
1455c4b29370e3c304b256c85e0e50a5b24743b5c8e0e40adfb4d31d635b2d2d155 144222E7911257FF4F9C32D68C0F195D4E90424FC1557A18DF1795A8D9BEB3D7B313
146d98edb 1443392D40D1
1470000000000000000000000000000000000000000000000000000000000000000 14440000000000000000000000000000000000000000000000000000000000000000
1480000000000000000000000000000000000000000000000000000000000000000 14450000000000000000000000000000000000000000000000000000000000000000
1490000000000000000000000000000000000000000000000000000000000000000 14460000000000000000000000000000000000000000000000000000000000000000
@@ -155,215 +1452,245 @@ d98edb
155cleartomark 1452cleartomark
156{restore}if 1453{restore}if
157%%EndFont 1454%%EndFont
158%%BeginFont: PLTI8 1455%%BeginFont: PLRoman8-Italic
159%!PS-AdobeFont-1.0: PLTI8 1.02 1456%!PS-AdobeFont-1.0: PLRoman8-Italic 1.11
160%%CreationDate: Thu Jan 07 19:30:00 1999 1457%%CreationDate: Thu Apr 13 18:00:00 2000
161%%VMusage: 1024 37745 1458%%VMusage: 1024 37745
162% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. Adaptacja PL JMN 1997 1459% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. Adaptacja PL JMN 1997
163% ADL: 750 250 0 1460% ADL: 556 156 0
164%%EndComments 1461%%EndComments
165FontDirectory/PLTI8 known{/PLTI8 findfont dup/UniqueXX known{dup 1462FontDirectory/PLRoman8-Italic known{/PLRoman8-Italic findfont dup/UniqueID known{dup
166/UniqueXX get 0 eq exch/FontType get 1 eq and}{pop false}ifelse 1463/UniqueID get 0 eq exch/FontType get 1 eq and}{pop false}ifelse
167{save true}{false}ifelse}{false}ifelse 1464{save true}{false}ifelse}{false}ifelse
16817 dict begin 146517 dict begin
169/FontInfo 13 dict dup begin 1466/FontInfo 13 dict dup begin
170/version(1.02)readonly def 1467/version(1.11)readonly def
171/Notice(Copyright (C) 1997 American Mathematical Society. All Rights Reserved. Adaptacja PL JMN 1997)readonly def 1468/Notice(Copyright (C) 1997 American Mathematical Society. All Rights Reserved. Adaptacja PL JMN 1997)readonly def
172/FullName(PLTI8)readonly def 1469/FullName(PLRoman8-Italic)readonly def
173/FamilyName(Computer Modern)readonly def 1470/FamilyName(PLRoman8)readonly def
174/Weight(Normal)readonly def 1471/Weight(Normal)readonly def
175/isFixedPitch false def 1472/isFixedPitch false def
176/ItalicAngle 0 def 1473/ItalicAngle -14.0362 def
177/UnderlinePosition -133 def 1474/UnderlinePosition -117 def
178/UnderlineThickness 20 def 1475/UnderlineThickness 36 def
179end readonly def 1476end readonly def
180/FontName /PLTI8 def 1477/FontName /PLRoman8-Italic def
181/Encoding 256 array 1478/Encoding 256 array
1820 1 255 {1 index exch /.notdef put} for 14790 1 255 {1 index exch /.notdef put} for
183dup 45 /hyphen put 1480dup 0 /.notdef put
184dup 97 /a put
185dup 99 /c put
186dup 100 /d put
187dup 101 /e put
188dup 102 /f put
189dup 103 /g put
190dup 104 /h put
191dup 105 /i put
192dup 106 /j put
193dup 107 /k put
194dup 109 /m put
195dup 110 /n put
196dup 111 /o put
197dup 114 /r put
198dup 116 /t put
199dup 117 /u put
200dup 119 /w put
201dup 121 /y put
202dup 122 /z put
203dup 162 /cacute put
204dup 177 /sacute put
205readonly def 1481readonly def
206/PaintType 0 def 1482/PaintType 0 def
207/FontType 1 def 1483/FontType 1 def
208/StrokeWidth 0 def 1484/StrokeWidth 0 def
209/FontMatrix[0.001 0 0 0.001 0 0]readonly def 1485/FontMatrix[0.001 0 0 0.001 0 0]readonly def
210%/UniqueXX 0 def 1486%/UniqueID 0 def
211/FontBBox{-45 -260 1200 921}readonly def 1487/FontBBox{-45 -260 1200 921}readonly def
212currentdict end 1488currentdict end
213currentfile eexec 1489currentfile eexec
214d9d66f633b846a97b686a97e45a3d0aa0525392eecac163e584a9104d99ad0bc 1490D9D66F633B846A97B686A97E45A3D0AA0525392EECAC163E584A9104D99AD0BC
2151b1844a0e222653fa481b8809b26a46f4c483a5d7e95816ea6582584156cfede 14911B1844A0E222653FA481B8809B26A46F4C483A5D7E95816EA6582584156CFEDE
216b994adcff4645140e3617e4d7e1b0e4541cb9f562e55829b4dd880aabe2229e9 1492B994ADCFF4645140E3617E4D7E1B0E4541CB9F562E55829B4DD880AABE2229E9
2174a9fa259a734d29bba91ba1e2055cbea4339bcbff98d32ceff11f296225caaba 14934A9FA259A734D29BBA91BA1E2055CBEA4339BCBFF98D32CEFF11F296225CAABA
218dca10577a5d431b714726c1278d8101abd1bd8d0bd0174fff9148f8c61c241d9 1494DCA10577A5D431B714726C1278D8101ABD1BD8D0BD0174FFF9148F8C61C241D9
2192ad360a28616cb4a0670c1bf13e7a26e167f6ffbfa02d201035c41858d1c9bc3 14952AD360A28616CB4A0670C1BF13E7A26E167F6FFBFA02D201035C41858D1C9BC3
220c5482bbd107ab18a030d1e9cf347e4cdd7792fca72747568ebacdbee0242f654 1496C5482BBD107AB18A030D1E9CF347E4CDD7792FCA72747568EBACDBEE0242F654
2212aa61af9420834407706cf33f36fdb9bb8c0bca09e3e0d3edb9711aab89ed3ce 14972AA61AF9420834407706CF33F36FDB9BB8C0BCA09E3E0D3EDB9711AAB89ED3CE
222de5bac9ea97ed8b2aa2ec5b0fd8f60ebf836328fb19ecf23f73d72da42c48cea 1498DE5BAC9EA97ED8B2AA2EC5B0FD8F60EBF836328FB19ECF23F73D72DA42C48CEA
2237e403a5db5841637e35178a7d1e2250ce208fb9a0ce583f9bb5f242d0d9fe5ec 14997E403A5DB5841637E35178A7D1E2250CE208FB9A0CE583F9BB5F242D0D9FE5EC
22448a88ef14f534f65a1a06e03d2812e5e90b5ef2eb39962f6de24669519b26087 150048A88EF14F534F65A1A06E03D2812E5E90B5EF2EB39962F6DE24669519B26087
22592fa2badffb2e71e2884959c9fce35d20d2fac51ae938caa2dc481b16ca80385 150192FA2BADFFB2E71E2884959C9FCE35D20D2FAC51AE938CAA2DC481B16CA80385
2266153a79977cf168d27ac23af5c9f5a5c699db568890cb86800ce46d2b9a95e8a 15026153A79977CF168D27AC23AF5C9F5A5C699DB568890CB86800CE46D2B9A95E8A
2278fa33d57532065b43fe92134f20207b4d72a1ee997d34c8ae5981e987d67e2fc 15038FA33D57532065B43FE92134F20207B4D72A1EE997D34C8AE59813E246D2B0AE
2284351cad093cebae0d587cbd0a038b6ba98b607090dd28878a4d6bd50af30cfb6 15042002DEB3A16A92F234CF7B44A58B63AFE598C36853E0D56F000D1659799D7487
229061e172b686e92355a7c7459d83199040a368b5697ddad65b433124ba3a887b7 15050F9FAFD22BD2ADDE02B5705B5F8F86CAB54A5E5135A88B05136C106FE7784BF3
230bd4572544d0c434fc62b412b0449e2b4ddf83466480bbe2529610091d8a9f091 150643039C49B39B0B7A38728EE401FC15B57643B5BAB4968AC4965F27BF8327C9FE
23161a41bac6a151cff1ffb6c89f1590c2d9d9333c93a60027dcfe96c688ec23820 150755B586D057A5B67F9729789DDC5C6C5A4AC9E21CE0ACF1C02A9B72F3C264E021
2325ea4fae540abccfbc800ec8371b953ae5a1e9265686bcd65f3d6f77a8aa9e226 1508FD054E895299785FF6190EF689DDCB6281B496A3FBEAF9140B86917135468FE0
2339d0af9519bbb5f8b8dce6ae144678798c48707d2436df48110607a91f8615178 150906F159D3299B384C346A8C02EB51E908376F7B54992F9DFD820D91DB7016505A
2340d0f4f055861c2b682be580f3930aba1f46e40c976ad8bc33f1892b07995dc41 15108DF7F307E7A7E8E64841163AB3E1550DE6141FECE531A950C0A07C88F66C2C6D
235f1891cd972e0ecbbf5cac357b97a01ee4a20c6700312bc5ab568313228cab6cd 15118FDE6D0A0D2512D7931EBC886B052717039570A75CB813B767EF3F6E157210A3
2369aba0e92606751a5a80154b18b65e9f7a8dc97563c73f9bbf235d4df19579a10 1512A46A4A30114F032BA029D8207A52E17904D85DF0A7D9E501B59E4B817D6632F1
23782441086abe13d47fcabeaacf65c71e8148e7422320290587e467fa1655147af 151377624C7B256530D4492AE7E4E3CBA90F50E8BAF9435EBFD205E6A62F64EF5974
238132651698a83783c1c4ca4910347f0b08ba83e60280ac7d4e151e03f682b21ca 1514CD8E25A6906CAC83605B885C22BDD36FA9C48822F17C1071C0C7FC963342019A
239dfb0daa42243e19c3768f175861e24178ff08e8372cd7d100561b6b3e5183739 1515CD959A8ADEBD17C734D458EF614EF1A550F5879209A327816D66B7BCEDBE1DD0
240200bf7540dc3360c7428d70de0ff19f6252c84702a37942748165257e015eff7 1516B5D560DF7DDC6F3E2CC8DDD94C94EF3D27DD71FBE170C8BE4617BDFA87FDE559
2411791855126c0c4414639806e03ad334d8e65ce45b5d06bdde61bca325a76edae 1517AD552CFC1E5BC2A9EC89E2F197EA7A34DD83662671BD7F31FD232892A1E58878
24263f237cfdced415c071488d07c9eb24871c1ea5dcce85d06eecddf4fd0b5f436 1518B389013A404C98354BF71E103BE4CE2C7181C69E5F95299EE164A740C1CCCA57
2439844dbba4bd7e8de0440f41d8e074f9da1652458a05f2f34c8ad4da715476fe7 1519C467DCD70275FABB0DFF9F8F1AD8AD4198DB878C3AD7CB78118E12A771959CF7
24417e37e5f699eb509fb886a3702585dc8827603529ac9eae159233881a3113c85 152086275EFF05A5288B4C2C7246386BFEA0B225EDD48F17DD3B54687CA515946C04
24502c32da970d5f029c25338600c105fcd480555e4992da9618e9eee4a5f8c3f4e 1521611860F426EC3524C5FAE321B5F9FC78F1BCA9E33E21B50F40E3C37B9F9218D1
2465a9502a4b17dbc0e3612edb454eec85d2d05334f9f52ce01f57e62962eedfd8d 1522DA2E3C6CFA4065F1A60674A6AB6C7FDE5DE8D5E4FB54155696745FE9B404D672
2471b6f4e5391a3ad715e8a3b11680e238cb5dc185b0b01a64a0f5c39241a38ce7a 1523492F4032F57316FB5AD3274C504FE924AC9063FF90376483C8647FD30CB62763
248f60859e30f9c22eb913e2076efa2e633fdf26a95be409033d0ce5d30bd01f176 1524F54165BF4263C2F43AB0EEAB3455B2CD9E6F785385C62EEAD35229EEB3718DBE
249c9e88543ad19a6187071a3b1c42e4c259bff4544c587b5beb5e6d38127f7092b 15250BC2EA0E63FD8AE3A2A4D72613E494716E01A9C7FBC41B9657385B3FE17C4EFB
250fcbfb6bb2978b90ea653ab312cfaa5080d43e795e55f3c87646b5ee4863a3edb 1526060F260AED6A623A639302FDEF4479EDFD9D47DAE05320FD1665794C567AFE7B
251769adc7159b43bab690362f8ad3c1cfe79e033b5743db1f5afa49399ed6e3d7a 152758DF5A12CE50929D7B689BB81F7FA6C8645AD007458A277A9522BBF8BDD6175D
2529f23b88f54057224c3627718146ebfdb244441198618ca22f09f9842bc8ca662 1528EFE417F9C20DB9E80D69DF85AD1860901078C3FC53973E6829973B91B589C727
25398d34f8fcf1ea34928d247d7e262767def8c9234a6d81dfc19ac6f6d97a619d2 152905D0809BEC5D74611E49F8C76750BBB8F02ABD2DAA5B7A19BFFD1A04AC79CBED
254ccaa102d34cece13a0a229670c8468f2fc9adcd6dfe91669bcf31ceb6bacbcec 153022D9A06E0D1013682B37DB1677ACDCD9C2C882B7BF79F5205F1FB7FECE186716
255c90d367e3b99e21aae92c170fd2b9fee4fcc1b1c083f170a1ba0377d234b8568 15312276D9CF4FC6DA7C463439B10D45C7D718949C66133B2CA8FEE89B66CAD26C84
256ddc8546141553a11cc4a0bd6e28b8d883136f514cd280e2c9f98861f41de5644 15320798B31828EA8305FCC34415D565A241C970E47BC3F1C212B287568149F82292
2571e0585bd625ac2bea768bdbb7fac742afc56fcee5ff03dea9a339a42a1dff1b0 1533BB2DF12C1167E57C0BEBA7DEF44EDE70A2C55D4595E79DBCC5B6E4A3D8B685AB
258b902561d4f9a96de41e55caf5f90d8fc07dcbd95f44d66388bca2f96ebcdb01c 15344B86A76260FEFE2CDE336C126BA223FA9F4B4CD364EE74452FDD69F69B69D8C1
259929ac0118ef8dbf802ea1fc5b2f3c50b928c078511dd963e2e4d971d7a3a05c3 15352007F62E80F13AA8F974B0E2D06CDD42E9B61FDC3B182449627810C93DBA6928
260af4617793f48dff7c8ee2d1bcf3d273c87140b06a9afa5290b2b469408e8e5fc 15363F0AF62704F47A967543D5331E935F94F2A58AA9394588881EF3502D264C81E2
261083978a8d3f591f58d44afd64e4a0f637819ae6fc34e4802d14441300ccfce85 15378A7E1B43265201F1B4C49A4EE76448D1CD1F48A8C01E28CB26E9AD37F59724E1
26268eb7cd8cf0b4b292a4c7781e7cf9b4152cff7a9ec73b8f3419af9ef3da607a5 15389678A61445AD43374C6120A959A130EBE4E6566F00C1CA18C6FCBB397BE77F6C
263b0aa09227dfe06961bdf0aaf5b3ef2a713996b10dac3c34d75de744a6327a918 1539D0D633F95DDB27AA84711729B172ABCA93F2DEF59ECB621657FFDDF7395F8F23
2644a071ece030ef483f32547a55d41bf7888e2651b52fefa97c3039e3428e18ee3 1540C8E2542FD282E76CC78FA320C1B249F51DEA3CB819EFFAF581E60EA5C9AFA0FE
265c1f562881e619ea02fb95c23d8b80c8632ff20819f7811d6e4f76e06ddad0ccd 15414348A0795B5A19537D568479C2CE392D8D5A1351531B298ED4B7DAF343114351
26623c2f9f0d9220bec36910b3a9188648af0f1fdb9296a9bed073a8d5e2c7aacdd 154201EEE86C77968293FEF7E667094888C4727B20698DA61FCA950CF774154BA653
2678029feb7e4bfb89ea613c4ad7fbf51a5e7d2c88f9460c9913f9d6ba42f34c4cb 1543D5C26C224A560EE958725486FC899905CAF450F44198BA633D8639980EA7B220
268b77fd8aff0495edc109fcb0dd2d775441ffecba1924d32009607f38ee7a06768 154489247B9C3121BF1C0C1DD432FB523701060720730E9F51B76319D37980604F92
2697d0a4c3fda418a191d5d6e4f7fe55e3f2577fd37d0edd63ad80c5442005b1654 1545E34598BDF81A3E2F8FEDA1187CA50F9236EDE39D157842BB99697A6908A49996
2708b3ff5884d7ae1a891bc4c1c8aa22baaad5f4cec25f7be90b4a6b8b54aeeecd4 154602AE079A8B885AF93A5FE8B9A960C247807DD37A497D2622D848CA434C1BE615
271d63d36ce8b6ebb17225faa275f71628a85ceeb1d2b3f42f85e88537d79eb799c 1547232A94F9D254AC9D9D4414C706E17FE6E313E2F73FED61DAAF687478A220CE96
272ab8b74f14f2cb2c22121c749dbc615a865e7de3f8320fd61a9eee319f5bdcce6 1548C89872D795D3BB3ECAE68C984F09636A149C022F4127F2E220714F4C46B51A77
273fe9f3212d5f64497b920f461c8f3193e5af716fc1ac1efdef15d472af58565d4 1549C19C9BDB44260EAC4D5D177CF6626A3EBD6025E8C4BFB074BD852EBE2A2D4B20
2748b9a6ef2d42e03c72aad406b62c6b29aa69c8a0d2bc92f5a758d8816fc4a5e32 1550656E378DF6727113FC2E4411972F265753772EC845BD8AF84289F92E00FF084E
275a2f53fbd0d28689cbb8484d4c450fd2cc5eef1cf7aeef82ff3ac3a7df09601f0 1551E23E1FDDBF92EAF6FFE8906B8442503E051275D93D41906A7A3990A637102730
276f409c0d5c023e5c7903e1b6df6e86ef1ac757019bdfe8e6f48fa8b2c005d7234 155253DED37849C52D39779DAAF3AFD572A41A40D45D3F9B39005F8424ADEC822FA4
277b62623d7223ff060cf0291ace7018c7e228e0cc672a17bd874c8b2450fec7913 15536DBAFD4C80195448F613F24FB2C27402DA065FACEA0325A339CE2380AC4E3068
278c7eb51092f9f3c6616152934d3cf19f1f96a0117603e8caeed8fc8686ee2bd1f 1554F6E707516D38B690DF71AD0E8C35C4924D7129C419343DBDDB85ED1890F76404
279fdabdf1c043d1a96dd0e64a0d289aef0010f905d83d0802f571925c4442f7709 15551509A21551866BFFFA6C78B414051129C72D0E315C84144B2966F72FDA22367B
2808cf2cd70302fadd03e097719620fdbe59f2f1524dc8cf376760bfbd0c338ecab 1556D243EF56A477B3DFBCC8AF7B6FB67E620200B215C8EAAAC52FF900289981316B
28153c72edeea25dfb1d05f09c6771abcb082912d7ea6ddae99d20fbed0cab0e9ac 1557C60E07B9A6F340CFF8CFFECBB8575DDAB8AF935881AEC6F0F7D866C1E6AADEC9
28242ed33482736c9d297cb10282ce6fecc714964f15d92da853128fc9d9c6cb0d7 15581C8E901CD09E8CE73723AFC16BFA3EE6659849D3E05EB1CD20E45CF7C5636E95
283dd9a09d29cd6b4019052629756e99471d4df4cd7e5c9bbc555221f4913279ba0 1559F2E7746600B1A247D3742F9A57BFFC2AAD5303AB20085A3110AC1CC2B7560852
284562d7e862ffef280063f39ad5230628c045ac6debbac01b85db9a263aa663db1 156001DBDB06D7B6548E29F5307474F9F6EA10BD205FABE4465EE49B1CB1F4719F2D
28511aaa2f0f2179983297e5ec06e8a9d3c2e64cd6905ca9f0eda4980090b76287e 1561B45D11CF0F4808BBC4AEA4881748C0A2F1F9A03CCD801AEBB0EC68A78F6911E3
28633698b652dd1f7bcb905a78f0f6fbfc9dedb3691068d1ff6fa19f453cc6da046 15626E12E02ECF7E9DDCC72C99BA46D8765468462B9AADD9F877A33AE08A7D848E5E
2877e6cd85d9497fb9444cc7ffbc06cf0ec08c31597998275c09ab7626d4c8ca349 1563B3F2831DF3DAB63CD24527A0A6E70944211C590B86E3F769D89C49BC776AEF6F
288adca41e5acc74fe23a4b618bad4ad955eac0741554d71dbdac7b5c779f11be33 156484543FE1C546870C54BAD8FE049E4A91AC3AEA0D87D744E223D4CF6B54BDBAAD
28980ce80027fe7b3305aed94fcf22c86ac626636e8dcdb0197aa8b09e0e2f2fb25 1565227763C2D8905E71628EA34AE453661179B0452AC0110490592564A451C9C2B5
290ad21d3156ddae02d58ae843a70bd9c5a1149e6d67c1f15cf79d2788ca44c7aac 1566E8F3395CC1A4FC913C9166EE6B800104F28BEE3DF01BA22C5AFDBEB963177665
2915f091f28ec36dd1705f4692a234847f89aafbdfe5a8e4b262e853413dccd5d73 15676663828AF4AFADF09D8FCC025ECA483CDF75579CD24CCB5A013B13B4687A026D
29275d2d7e395ad60819e1c03408cd825f78874e165989fb6556dfe3dfd7cd7ab76 15685829C885EF20E05E4D2069E117E0F85D66D2E881213E1819D30DF615DE4EAA4D
2934ba46b24aa8fb189d9e6ee5c1e1f24fa6e67a692783c1bb88c03774016e62293 15691CFDE17373D85C7687ABC96B7AEAB6E230A511B0A95F0F111CDB9FC398A1F3B0
2949af87d1ea41f9a0feffe95c1f87ae8e2efec609974a41c708ba82b71747387b5 1570FC6A85426E37C3B5EE1F629FAF9AA74DA6519EE828AEFE628891BBD83835BD4D
29525b7dc8fc4f4dfb72dfa8cc30b3b44bc0408ea27a3c8e378395f3360f9d8a454 1571BEE58B6B05801B1C94FCC20CD390495FD1D4A6D9421FBE64D4348497FCA9D5A1
29643ffb70bde2865092e516a07b58f52a636ba7d2fb30868aecec735ff0d8bfe73 15721B332C9F58FAE22D7A20FDC5A20D73CEB95EAF8A8F1512C407DE6B07852122DE
297af73d9bc2e52967012c3251c1a179e0ddfcc3597f96196e6b7d12d5753e817b2 157362F98D8CAAECD64C1FC9FDFF9626E1600A56A061E2A9833070D949B1C539E42B
29803eb6c59d1b72b760205900075185f3d0a861afdadeccb17e7a6f943bd129c91 15744733842C69D117D2B58AE4D908FF904C71696A34C1610AA6982BC8E4D52C7D25
2996c9412b3930e0c76f77e44db034ebb3e160a09fe60b1ff040b95f3b0f68b0d10 1575D2FA3E9BF80185399BC5C251127B6C69556B9279FC9194E2846675A21436F963
30062f25d0dd60c42c3720cb1373a7ce7e24ba419b9f5e2f6e7f24ecb4ebc8e66b5 157654CB97418729B8EBB94FF5664A8B29A0787F92A9B74D1DEB5E6ADCA4454CEDD2
301fac1e840177c7bd65564d34730f4512887fc370d5a4c69a31ca79c13f01a6548 15770F053780BC224C7246CD134F47B25ACA5AA08B431BD2315157C36611705DF0DE
302224a9b289df4d4c471d9df13d7004083d9d60dd4479b5cde29c89245a9ed87ee 1578767FE9B0BF9E20989C124A54C79C77032B8514408528B970BE27C739F5308A5C
303671990424f78cd70387a65b18d7b61f23555e79db7749de522ec506e16b8ff38 1579440E8ED21BEA735122C136EE3E634BB7968281E22133A947416DA2238038CC14
3045e221121ced1fd6dd6328c5a87acb442ffc62f080ae8d0d1e4916c6947ea8f3f 15807146AAF2ED1D90FDF92AC9F25075CE7D76366B5B28AEBBC239980A38968FF9B8
305fccae6371638586d531bc66717d3a989b24b0442b3f0ad150a310c332211d431 158115E5DC93846CCC8A07CED3567C467E54790062892C274817774286E395ADE505
306f749d7db15ae95a5188aef3d30d6a5d38f212987cc74a26465cae6d3f551de7b 15823A4951FEE70FEB9CB1F837A1295CED4E933130C8750760B559F45B22D7C27E3C
307deb4abaa3dd13287ee5b67dff1e26545be10f8f07a28ed2ad6dfc8a84fed5b8e 15836583E51C894211DA5115B186FC14F401766C7591C5E01F1924741FB1F4063CEC
308a80f3da0f0d320717a37b8bf6b8790bba25eda5b8cf2ccafff791bbfa981d05c 1584627363559A53BFC7CC1CBDAE2D8231BB7CD198E97C7594F32ACB35C58A28CD0F
309cd830e21586bcde4b612d925ef510afa283a9604e5a631e1d18ea934dc488484 1585CA766E49BD7D5717316BC685BD9F0481E4637B1CD7102E1C4CB48B75AE681984
31096f85d83a36b5c3761ebeaf86eef82d88eb74eab733414cf771e28698c37f1df 1586ED9CA2AC0845C47C4CED4B587C18D106959EBBD9B874FAD6E18EF539137A54C6
3119af5cf450341425ce02b78ace802eb93490d04df007a9fb94d6aa30a8948ab80 1587C787E1B5D5F3ACB77B13DB27D871503CB5DAA2E395B4BF897509D5306D0FC936
3123bb1066f616af91b393ac7495c6354874fb08798f36a706b497bb69e5706eab6 15888EFBC24A135F07A2C28AE26A6E32E5C8D3A9A09C3F1EE0C18FAB75843EEC7B5D
3130a969816ddfe6ec7c76adc2dfbc272de02c9f0c6d38d71e3e9cc54b35b703b92 1589A65F61997FD9CCAF17118850F74EB98D5EA6D66D7BD2551678F5EF0231543C5F
3145eab420a0fff2763ff96b473af23114b9cdf03235cc9be739c6f72c2f7461172 15908EC4F703B17276912A1EBBC4BC66DC598F6F5B4953BB6790B900677E94056D90
315131dc82a8d2fa03fb0845ea68b265acfd18463c2aa10e09b991823282bad721d 1591F65DF04CD94D395C28EEA275244C1047D178DDBAF6E0971324F72468AA5AD6D1
31633f73fbbbb58a452502f8222310b29fd2cf68373123c2f08b502da5387b1a165 15923FFC9C6F679A412BBBC86A1FE55F5369B12A058513319619B0C5870276265C79
317f857b0d05347032627a6f8748027241c801ad78abdba6dc5f7eb69c15c07b851 15935C55AE4E6C07855A9BC2FBF179869D8FC843020887F3103FFDADD38034D8F34E
318865e9aa683a97ad13d92de85fc3aaa972eb727f05f21003573b0c494d65a023e 1594BA9CC74D233E20BBCD42F78C46D62EC4BE01C5454E032466231D3B7E999C1166
31975cb0325c27a1a81aab7d66aa61fff797ee8cb26f5175b3d8c086fdc2d69b8d3 1595890D3F5F644F8AFCC6540A50ED46346EC80B6171119377D458D193B1F81EA3BB
320ae4156a2d7b0f397d434298bcb691b1937d2d341fc1bcf686d6ec9b303dce71b 159672234EDDC8234B8620A78AD003F279A4B22246BEF2149C36EB3FD38729F6E875
3215fa7a34cb3b20ceedc3e0552224f54142ead3da0c9e50c577ecfb84a87950aa7 159767247A57B89115DB90A7C0C4F0CDA620A1B77304C21C3648550D2F2750F258AA
322ea550ff7fe090a833f5d844552d5e13b23e95d3b16203e68bcf87caa1286fcae 1598E40AB8D6B13DC41FFCEA039BF45BC9436FA8D61435C7A68AA72F30E27B5BA2F7
3235d40aa10679487e44ecd058dc87ffff786032227ba5d7c219ab051dd78303495 1599BFE00578BB6C18A3DB61A9E84B41CC5A6F4F561D37DACDEA2AE6C8D0C05364A1
3247d5bc47add5892d816a05bfd176a8278409a2af2f36278f7d355be7500eb019a 1600410F300809B64B66CB87A567BEBE883B9D0923B4D2D583FF42B048E68C069BF6
325dfac96e722381a624ea47a08b2804054f133dfb011806e272a3ef2bb068b8888 1601CB92D44DA5D39CD4D2B1F245E01C1F36626E3819E7DCBA9450A2BBF0324CA6EE
3262d3cc95d03c63fd6efade478ceac94db73831def06ec1e73a1a2ca0b1baecc95 1602EEE7B4FA88BA66620BB08F65A08BF76C5EBD69FFF5A9A7B1874BC65B1F468763
327975a524bcc4b4ad2c80d98ac086d98646f9607bb5f8ec2c2b0d763e45612d805 1603282BC437C335BF2645040109A3D2D98CB563D4CEB5C030A7D2F2834679DE74EF
328262e8b5ea64ebb257e9dfa184235ecc19d3a79a9720fbb285938480f115d98bc 1604934E027649AC2EBE9AD41E8CE89D36560FCFF3F25B87B75D65CDB23CB54D3C26
329b5fcd82164f02f1d87a907a8675484959c0efa6cbd5e61a6307ccc862798e7f4 160566ABBD1FD11820859189DD2064241C0568E46CEE6FD265E7112FDE545A510341
330ed74b8e1f96d1526d7484b48321e5f59d0ba242f5f38d4da8541482e4898341e 16066158931C0FCE0FC36E3939F2FAEA67C25E93CBFD63D7EC135192132941FCCB3E
331199b0e737b7e7932a0694a0fc42e91095a2822beb68444b7ee20d26f92be06d9 16076C30276B14D1BC62CA9CDDED45AD603B12563F509005C3E1E1A60488C0FCDCEF
332a17c7078241a8c555ef576914f64858bf82a2a0c5f1079eb5c983574a4771e05 1608F58ED64B88A852A32989A638052F6C72D13D031D72A93A103F2F0EA765A81AA2
3335cd58cf38410e0adeb412e144a9209a8d822ec67999660dd2f3bdb49f6ce3375 16095830ED17BAA8AFAE51D0A8CDD7778027505E6F9D14DD64DD2D471FE06C928FB5
33450d92daab67a23b015659998c098b8bdf150108ae62d9f82b9848decc7107ce8 161009CEC6ECCC7A7C8B1E29AF07E83C804E8DC1B2DF754B713A660582EBB6337765
33523a430809b572b25815da15b64c26d8aea023ba6b1bc148df7dbd9dc20f31432 161108F4688432DBBB867EAEBB4D9F2113FDB414357A3C444B90AC3B8FB8D6683B17
336991e40f94bffe9f1c5e48bc05a1ef4ca616bdcd2d6d093d1c3aafc94732aeec5 1612083469EE367CC1F13C2388C1E140DA4004919027257F2186CF716C6858D30E57
337ecb1042f71ea8b69ce74515c6ef9adda89fb1156a1205ffefc54afa1617f4446 161318711C074A9C05A17C8B512E2767AA2880C8F5D39ED4026EFD3B57466FFBE533
338ce08fb77d438375c393308c37dcf78d64614a93a3bea134c7f55de693ce2aa4d 16140AB6BC5E2CECD68B9981B2BEF1AED8D00A3AEEB5328A5436567D6AA32DF46C7E
339d95bae4b05429fdbeb87c6026be6a9955c26ec711e31193ef871546a2a503f3c 1615F465E963B3FEEDA9112932898719493BEC545829BC2C9C99BE09D7BBDAF95DC4
34074918a34e1d5be7139e6caec4883484dd5539d0f68315b927d18a52cc9863e64 161609FB645CCFCEE8A7AEB1CDAEC087354CD5EFE743E5B9422B3CE88E98C37E3AF2
341471b7129b83761f24eed258bdf54a011ffceb5f7da75f9c37d5948fdd7481079 161722687DB9CF10CD88109B0AA050F06A64F75ADD796D0CFE51760C4C5E1684D5EA
342a491e7c021855722fa8456c81146d9f70d2edf5d7abe74e6e9130394491d10cf 1618B3437D479FC45AA9E0DADA17371D616CC087DBA8854E4A1372610EF06A1FDFEA
34390114ace136a086825dd10aa5183ece356ccaa97aff763e96e8490a80af520de 161971D4347680EF8ADD88F630075746AE447896CF63F361505A235EAFD1ECF61B9C
3449855118fe916b800ce4313c81f6f2018024eb8ae08280fad0e1db32edcd71b48 16202F36F92CB169B0F5A9A943C39CFE18B2F8F92CD45B12481CDDD1FE7A73DC4D18
3450da4583abb9195948846a7abd94ce7919b261400bdbcac13999020fa3ff02973 16211C5916886C28EF30DD36AF482F2E48AA56435A4BFC57904CDBA6BB2FBF209B96
346460ee849de0107f2b567abf17cd3ade34c7b0c92deb09dfd131c08c09cdf9073 162283DD7583FE4BC0A3A381305D2284B467A236251092352BBDE73D091175D2BF8F
347dc20dcfbb9d3aa8719b9dc4e9fc849473992347cb5b7e1393f57ba2e00bf35e2 1623DC26D77EA9B7E64FA8DC43E91706ADA1B5B74DC9D0879EA696EC44E1564EDA61
34874026beccb36ebf925df6bba18dc2d43b173f81821bc76ef100ee5b9417602cf 1624AAF453FADF6FE1F298A21A418194C741F4E7CA7334A4F4962901A65B01942F0D
349b312c49a056d98fbfb8a267ad20077c97302a8f8d0adc13201afc7679b1917af 1625FB1AB2AD398ACB8D44D136FC64DBD90510A6669C729E62A007D77BFB4DE9C813
35063b384067147f60e13c824b417b1d064f4a30b1c11cbe47dd0df26ca97ab9c53 1626B80BC78A2240D57BA12F612C7BDBA3119C40FFB6EE0B0A7D704ACD3F96E18104
35164078edeaddba8a003f66adf40b99f868ea0053456066a7c8605a560a1c2900d 1627115DD13BCD1C2E70F8ADF9F258F9B24B13060D2ACE1428C729D0AC268F5A1543
35293c7249edf523fb508d16af7c294894001a3a31c46494f448434dd3508f520d2 162814142AA8C89BD3E40D837F715293BB155CE657EA499F1A8C14F631774D4713B2
353ad94d487d107327a569207fce39a55f314759c61f617e0c7cbd91d36c072d165 162967DCE7C7BBAEDBD7CD236E6DD24FA08410678A21B3BBF0BCBA7603E5B58D38F2
354c4f3d3ff9ec629842e2500f4763030ee5442af2adf42c7fe2ee16f5b3370cf79 16306480DC5660DFB6395E5A1C3C2E64E6DAE27DF8ED36E9F2844D17BBDC17761FDE
35555067b70994be052d7cabe727253d7dd1ed320b3272652c8f857c0527845717b 1631A4E83449FBA11226394847D3626E1BDB596AD95090D12D0BA9D148144FF6BE4E
356869b624a7dacf71050de027494c883c5d161ac75b82123764a36d313ae4355e9 163263740580820644A352FBC02B408A9EE41D348535CAF92B0863EB7884B5232413
35775670b4f135276126c81a3817f7a91b342c6db78157cd5b7a0906cd926582c3a 1633A1820718E00C9812F53EAF068B7868CEB2A755FB3B3BB04BFA131CF5D3F2342B
358b85d532e92eb5eee93d715cc22d5e6aba1075ddfa9fcd1f51245aac5fa676cb9 1634858D2D40789EB15ACE5239BAEE279192A9C7D6FA8FCA10770D0BF7B4A2965C18
3592405a9297edb88c1eaf6551389c03808b8ec0eeefa0521362ec5ad621c707b76 1635BA9ABC63573339592026E53A6CD6974A9A613C036C0AD32CED13619C79539574
360026d04f46fd87ccaf5c3690bf8c982aed39aca86fb1a89351cf32b5a4ec4f155 1636C2C49EDAF6067CFBF22F6916D5B77A57308E13B23854B5C1261209C1E74D6483
36184a181b8814b969048c8c1a9ce187700bc9ad70bab1aa6e97984a5047777bfd7 16379F40DBF229141445D90A48D0D3535BC38088A07A58FB49B4328E4EC85D1B9233
362a2611b5280132b9a76ebf1e68395c1f640c4ec115c4048722ab515b12305f5ea 16380CBF0C7CD07E6C58CC5985D7940672239A9DF4942294E8F09D45931E357CC5C4
363a5c749afda39c0a6c7c155d98a3ea9808c12475e0a73e1c206bc9407f5fe0316 1639AC86D3B4960EF4D2BA9A099494BCFB3CA0BAC086BD1E52D51937BEAB738C9314
3648abb273f62b41efef876943a0945b8ef51f0d32fe3b53bc8c09fa6f69dd6c1e3 1640302716BBC93AD9D2BCF89C8057BDD69149DB83884CEA2635DF627DB30483F131
36538e66342a9eeb2a50a163221c7b68f7f90318c810c8467540834a906f0d78657 164152D70D8C762CD2C56D3FD45B8DAF3A92DDF8582E4A2427F78924276B949C5AF4
3666423afc045fc7f66919898e5d56159435afef5012916a0499df8ae38e9776b 16428B4078A4F51CCB9B129C6ABC2285718515BFF83CFB393FB7C7565BB7DB2D92CE
16438627C44FB4744DC3BD466705D1674F79026A5413390B297A18699938EC1A8F6E
1644B97C6E930E069B60BFFB4419BA888A1721E7F4003EBE0C1AA54B7A5E28939CFE
16450B8B4732BA2BF3A67FDB9F528328EAE9A7CBC78AB15228156D4C7E62BBFEFB8B
1646D78EA8C0CCB1838661BDF29863CF48868E4DAE932E4333CC1A7CA904620CE247
164780821FA175B59A1454FAF223D2300F3433E424395B7666D7BD74A887D66B641C
16487C49B7EE92CD764794A5B6B11F82A0E5DD3C5AAD3E35EA216E34978C90A7487B
1649D8EF92E8264C4F50CBB149C450E8450506E7411DD4D2C59F76850BE79F5E0824
1650AFB0C0B6207D5084C6DB32B75A85C0AFC04D3EB56A5D9D444D86174C0218E551
16519469BBFD2D82446C8A21EC7EB7196D50926443AE6281A9355BE10820960B091B
16525668527F349ABFBFDEF66D1BF9B945C979CC4B65A45A94F541305239D5D8F30C
1653D234127F01D8D61246C24DF667A295744EF0B8EA9FBD304E1E27C5051E037AA4
1654D77A8E8E3827BF5E3C70DE472A518BFD42CF72C4E13C4F95283393CE1604AB8B
16555D705952F36DD07E02D59FFE71F34624FCC4DF36D0F728385494B14C7B748E5F
1656A8B10FFCEF5BF984CAA3BA3F907BF371C93EB43E4EE1B52986E76333A3F14901
165757CAB27F7B6949C334F264FDC984EFCB4556AE252DD5FFB101E93FAAEF0947A7
1658A47A99930382ABD4D063AAB0AA041D01C2D94C190F7D4D7C7601E876471D92D2
1659873049D8725885159C3AB513A0990521CFB725ADE116A6A2AC6810281F5A947A
1660AD2DD7B8D84256FEFAFD5A05D414822B03FEBABAE8D7B4BDFFBD09F0D116CEFA
16618552A3D42750DD847D0C74CF8DB33CE4751B3CB1ACAA32BE5B32D39FBCF191F9
16629E588B8641909F6D22740CABE131CC78D088CD1937803753EFDA1449048B6917
16639D7554B3852ECD601A2773A1CAB7FCDF1AB101339FCDC29A06EEB427BA2B98B5
1664B936FDEFAC99ED1AB910FF57513810347F3666952CABA5F90399BF95605A9630
1665326E797CCFED22AE46D4748E7FEA347B82BC54EE49007DCF8453E70E9C467C96
1666614BAE985EB8A9FA84AEB969B7F926C5A2B064F8B9893507EA6F80D6AEF3DF76
16679A848B2D9F368024FD53F0DA543F17ED079C706BE055D5BBBDE07A54828FA8CF
1668677D43401C0FDD9DCF86920A8040F5DC5BC5E1657467D66D7806B3537A67E8FF
1669D0C9C4AD9075AD7627243290CFF8300E9824519B9C9E94652FA7FFA93AB927EF
1670159E3E6183DC2EFA2E2FE117BCB2A266AC3EC93019896D3F2F68C88CF24D6227
1671AE1634A97A5D958F9D77781BFEE185040DD38CB013B32D31427E55C8955F245C
167283CE0DA87FB967246B36760935408B2CBC6B79E27F4EFEF8717069EBD41DE4F7
1673841C635BE7F699871AEC19945CAB00903F6962CE242C3D546DF7F15DBA8728D4
16743A90F268B8A110DC4C1EADBE597E2053A0BCAB20B94AAC4D77842A0C7FDEC69F
1675B5136C6FA6AC1C6C96E982428FE49259CF59C3EFD4B13B3C916A0B6C972845E9
16762AF874E893BF8D781A1E08A805B4E07053751D068AD02E22F4D3742481796993
1677AFDB2DB256A659FA327440561593F32AF46133C1C891528FD69665BF4CA5AF7C
16780ED51B5C7676131D082051CF3BB2567FD6F81880088B8E08E14471F850CBEE79
16791E7DAF21293FA5EE648E931FE9A408DD63D024A156EB3335F59BF86296D3229E
1680B10E851BF39F89CB172354772F1994B5FC994DF1935EBBF328BCD06A5E17D1F2
1681813C5128CA9800C1515C29A6B089AB8C3C87AAA2689482F4ACEED7D292610BA8
1682EBB15DFDFE6CA8770519C27E643D619C8968D72FE5953A80CF3C34CCE7ECE90F
1683090938C3B1F079EFA22A9B6DE86A14D1EE7BD88F02AD7B880B4D662EB60AAD48
1684C71F9D9613A492CE9A57D44A0C1E3FCA240A0F49C57285C302455BEDBCC6F7E5
1685F5363853AEE3EC6BC822ABC902A152AD0713F18FBAD4EF266B2542BF31414F7C
1686FFB2F9FB9F14B0EA04698F8C6413784164B8B843CC6B86710167D09805BDBFA2
1687B4520DD6108F9EFDEDC16D747800463BBE0FF7232003C1E05EAA6AC17AE757C9
1688E7E82BA2C9E452C076B263342E8A698B78E34F711405A1CE29782544FC466E0C
16895FE8DDA7EBED8A8D5676590570D325D3EF003B1E7F041D57AF4332E0BDFABFD6
1690926C0E971A463C05F828E36FC4FC068C1BCBAD1ADDC04CFEEC0E2A7842ACFB6A
1691082DAA3A619F63166742DA29F8614799DF092A4B6B55B3E61281D4B9069972C3
169277A42603AD50375EF59633D3C9E1F8DE44AC9378E95DAF5EA171B0B19CDAD5DF
16933805AB169E7571990AFEB99F5A161670B389ABC0587892446DE3CB
3670000000000000000000000000000000000000000000000000000000000000000 16940000000000000000000000000000000000000000000000000000000000000000
3680000000000000000000000000000000000000000000000000000000000000000 16950000000000000000000000000000000000000000000000000000000000000000
3690000000000000000000000000000000000000000000000000000000000000000 16960000000000000000000000000000000000000000000000000000000000000000
@@ -375,68 +1702,68 @@ a5c749afda39c0a6c7c155d98a3ea9808c12475e0a73e1c206bc9407f5fe0316
375cleartomark 1702cleartomark
376{restore}if 1703{restore}if
377%%EndFont 1704%%EndFont
378%%BeginFont: PLSY6 1705%%BeginFont: PLMathSymbols6-Italic
379%!PS-AdobeFont-1.0: PLSY6 1.02 1706%!PS-AdobeFont-1.0: PLMathSymbols6-Italic 1.11
380%%CreationDate: Thu Jan 07 19:30:00 1999 1707%%CreationDate: Thu Apr 13 18:00:00 2000
381%%VMusage: 1024 29885 1708%%VMusage: 1024 29885
382% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. Adaptacja PL JMN 1997 1709% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. Adaptacja PL JMN 1997
383% ADL: 800 200 0 1710% ADL: 417 117 0
384%%EndComments 1711%%EndComments
385FontDirectory/PLSY6 known{/PLSY6 findfont dup/UniqueXX known{dup 1712FontDirectory/PLMathSymbols6-Italic known{/PLMathSymbols6-Italic findfont dup/UniqueID known{dup
386/UniqueXX get 0 eq exch/FontType get 1 eq and}{pop false}ifelse 1713/UniqueID get 0 eq exch/FontType get 1 eq and}{pop false}ifelse
387{save true}{false}ifelse}{false}ifelse 1714{save true}{false}ifelse}{false}ifelse
38817 dict begin 171517 dict begin
389/FontInfo 13 dict dup begin 1716/FontInfo 13 dict dup begin
390/version(1.02)readonly def 1717/version(1.11)readonly def
391/Notice(Copyright (C) 1997 American Mathematical Society. All Rights Reserved. Adaptacja PL JMN 1997)readonly def 1718/Notice(Copyright (C) 1997 American Mathematical Society. All Rights Reserved. Adaptacja PL JMN 1997)readonly def
392/FullName(PLSY6)readonly def 1719/FullName(PLMathSymbols6-Italic)readonly def
393/FamilyName(Computer Modern)readonly def 1720/FamilyName(PLMathSymbols6)readonly def
394/Weight(Normal)readonly def 1721/Weight(Normal)readonly def
395/isFixedPitch false def 1722/isFixedPitch false def
396/ItalicAngle 0 def 1723/ItalicAngle -14.0362 def
397/UnderlinePosition -133 def 1724/UnderlinePosition -88 def
398/UnderlineThickness 20 def 1725/UnderlineThickness 31 def
399end readonly def 1726end readonly def
400/FontName /PLSY6 def 1727/FontName /PLMathSymbols6-Italic def
401/Encoding 256 array 1728/Encoding 256 array
4020 1 255 {1 index exch /.notdef put} for 17290 1 255 {1 index exch /.notdef put} for
403dup 13 /circlecopyrt put 1730dup 0 /.notdef put
404readonly def 1731readonly def
405/PaintType 0 def 1732/PaintType 0 def
406/FontType 1 def 1733/FontType 1 def
407/StrokeWidth 0 def 1734/StrokeWidth 0 def
408/FontMatrix[0.001 0 0 0.001 0 0]readonly def 1735/FontMatrix[0.001 0 0 0.001 0 0]readonly def
409%/UniqueXX 0 def 1736%/UniqueID 0 def
410/FontBBox{-4 -948 1329 786}readonly def 1737/FontBBox{-4 -948 1329 786}readonly def
411currentdict end 1738currentdict end
412currentfile eexec 1739currentfile eexec
413d9d66f633b846a97b686a97e45a3d0aa0525392eecac163e584a9104d99ad0bc 1740D9D66F633B846A97B686A97E45A3D0AA0525392EECAC163E584A9104D99AD0BC
4141b1844a0e222653fa481b8809b26a46f4c483a5d7e95816ea6582584156cfede 17411B1844A0E222653FA481B8809B26A46F4C483A5D7E95816EA6582584156CFEDE
415b994adcff4645140e3617e4d7e1b0e4541cb9f562e55829b4dd880aabe2229e9 1742B994ADCFF4645140E3617E4D7E1B0E4541CB9F562E55829B4DD880AABE2229E9
4164a9fa259a734d29bba91ba1e2055cbea4339bcbff98d32ceff11f296225caaba 17434A9FA259A734D29BBA91BA1E2055CBEA4339BCBFF98D32CEFF11F296225CAABA
417dca10577a5d431b714726c1278d8101abd1bd8d0bd0174fff9148f8c61c241d9 1744DCA10577A5D431B714726C1278D8101ABD1BD8D0BD0174FFF9148F8C61C241D9
4182ad360a28616cb4a0670c1bf105bf4659adeaf285b288b8c45ebb1c430adc5e0 17452AD360A28616CB4A0670C1BF105BF4659ADEAF285B288B8C45EBB1C430ADC5E0
41955c153c58d0f07fb32132c3cea11815265d39a20821f7a1a778738160578bced 174655C153C58D0F07FB32132C3CEA11815265D39A20821F7A1A778738160578BCED
420399653eff49cac16ebd0b780a11c18e6966be38184b550a4d69d69db456b328e 1747399653EFF49CAC16EBD0B780A11C18E6966BE38184B550A4D69D69DB456B328E
421355ffdaa78c47ee83dae72a4db5a385052324763cdf9d67d462d1550c78c3ad8 1748355FFDAA78C47EE83DAE72A4DB5A385052324763CDF9D67D462D1550C78C3AD8
422d5ff01e46eafb7361c516dd8c71870ba0aeb8e6feab79e82d9cf94b9945492ec 1749D5FF01E46EAFB7361C516DD8C71870BA0AEB8E6FEAB79E82D9CF94B9945492EC
4237526aaf2785529a98fd4a7ebb5f15babc0619fbc49c907f07fec8e23d3d35c71 17507526AAF2785529A98FD4A7EBB5F15BABC0619FBC49C907F07FEC8E23D3D35C71
424a304a01a695dd9119d8866d0a5da72a216e9f80dabeca85a56caaa79dc5e42a3 1751A304A01A695DD9119D8866D0A5DA72A216E9F80DABECA85A56CAAA79DC5E42A3
425cf4f1d171a6d50db9bae2f88130df372b37a75d81089b6bea6002c995ed468d4 1752CF4F1D171A6D50DB9BAE2F88130DF372B37A75D81089B6BEA6002C995ED468D4
42658ac20b9eeb2aac85f82943bd9e77210e6753ea5604033d75954bd3928036da5 175358AC20B9EEB2AAC85F82943BD9E77210E6753EA5604033D75954FC56CFE8EA07
427138fb4f7e2fb7021555065f649fe81e6b334ed55fd4c36aea39976125d9ee861 1754FAC26C11F80FFA3706A4BC08DD6698ABFD26B1E4EEB6AF0585C7CACED2867442
428f61d0090300d6b32fc4f39fffae3472f2d0b4b9f1ad4a133b021fcec45fd4e59 1755F5FE4455978BDBA063C52E8210D675E198F88DAE125EAA7F5977208E4CD75D5B
4297373c612e87b27bd7191e583ba7cd309259d4a204cb66f3fa5f7ebd0a7deda93 17568AA2D56A3111A050E501FD978DBEC0E0DB9C4D5A1BB8A9E7BB776B37107CD588
4301a3f3ab2cb4d96bfeae47ee1a8c5503aecea8762a17dfac31b4775ed17ed9e17 1757225511D4A92100290CDD8BF9315A05962616BDEF31DD007AC99947459D2F1279
431b62496643a7a8028adcedabd1f5814a560f83adc0c48a033219bd37202170de7 1758227E647DB37994441D207FC17B5F5127DFE683A18263F071BC1C3B8023F974E9
432e17b30bfc68084826c0630e512cb01403c809d84ab955b2935cba3cc9ebddded 1759CC07FF8D037BB5AF29F2B829D8492C7F0AE5DCB73E9D05B0E925556DC91B7102
4332d74ae2037907bf2c0781be1e1142159ff6a4d511fb5eb50834ba5ea00c2ed79 176099C21C5E31B451DA322ABB2B59D887FE5E39FBCF94C05E6C67AD8A7BA2F9B635
434f7e0224220b34fe21e16a237c72baf5347d2da78a72ed80a7edecf5eacbb012f 17610B42115E8D0FF2000464A56568B9E97A96BEE20D96CECAE4ECA748C571175629
435128feae28ca79a23bc16a7d1f8eddc76c54f45e050dcb44f39d6f818680ff66a 1762C60F35CDB604A66EAD9D4D7AF66B53E3B0D41DFAEF96ABC838929DADBBBB98A5
436e97d5f93fcfd1c3d72b593ea88fdabbaa310d516ec50505ee8c6e9ac7ab9e82e 1763D8D52800C963E2EB8CE0D5878E65F40F5C91E7C887EC5F5B9EDFBA08700284C2
4373fdbf8c11bd2220aa6c9ead07f32cd5ea69fec07d0fb4725636c75634aa70da6 1764967FE93F346CA2AEC93EF3F1BF3095A56723F43FB389AE8189C08570A68FE01C
43821202481d081ee8b8f7116990eedf770fe489e920f4b86e9d0c5f0c4e09df80c 17655F07EEF6ED05C4B4AC9D3E266A606F4C5D44CB71BDF55943069923A29BCC9632
4395e205459f154e10d5a9ce303eb 1766FB5F15E1D2E733FFB930FB
4400000000000000000000000000000000000000000000000000000000000000000 17670000000000000000000000000000000000000000000000000000000000000000
4410000000000000000000000000000000000000000000000000000000000000000 17680000000000000000000000000000000000000000000000000000000000000000
4420000000000000000000000000000000000000000000000000000000000000000 17690000000000000000000000000000000000000000000000000000000000000000
@@ -448,351 +1775,354 @@ e97d5f93fcfd1c3d72b593ea88fdabbaa310d516ec50505ee8c6e9ac7ab9e82e
448cleartomark 1775cleartomark
449{restore}if 1776{restore}if
450%%EndFont 1777%%EndFont
451%%BeginFont: PLR6 1778%%BeginFont: PLRoman6-Regular
452%!PS-AdobeFont-1.0: PLR6 1.02 1779%!PS-AdobeFont-1.0: PLRoman6-Regular 1.11
453%%CreationDate: Thu Jan 07 19:30:00 1999 1780%%CreationDate: Thu Apr 13 18:00:00 2000
454%%VMusage: 1024 31499 1781%%VMusage: 1024 31499
455% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. Adaptacja PL JMN 1997 1782% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. Adaptacja PL JMN 1997
456% ADL: 750 250 0 1783% ADL: 417 117 0
457%%EndComments 1784%%EndComments
458FontDirectory/PLR6 known{/PLR6 findfont dup/UniqueXX known{dup 1785FontDirectory/PLRoman6-Regular known{/PLRoman6-Regular findfont dup/UniqueID known{dup
459/UniqueXX get 0 eq exch/FontType get 1 eq and}{pop false}ifelse 1786/UniqueID get 0 eq exch/FontType get 1 eq and}{pop false}ifelse
460{save true}{false}ifelse}{false}ifelse 1787{save true}{false}ifelse}{false}ifelse
46117 dict begin 178817 dict begin
462/FontInfo 13 dict dup begin 1789/FontInfo 13 dict dup begin
463/version(1.02)readonly def 1790/version(1.11)readonly def
464/Notice(Copyright (C) 1997 American Mathematical Society. All Rights Reserved. Adaptacja PL JMN 1997)readonly def 1791/Notice(Copyright (C) 1997 American Mathematical Society. All Rights Reserved. Adaptacja PL JMN 1997)readonly def
465/FullName(PLR6)readonly def 1792/FullName(PLRoman6-Regular)readonly def
466/FamilyName(Computer Modern)readonly def 1793/FamilyName(PLRoman6)readonly def
467/Weight(Normal)readonly def 1794/Weight(Normal)readonly def
468/isFixedPitch false def 1795/isFixedPitch false def
469/ItalicAngle 0 def 1796/ItalicAngle 0 def
470/UnderlinePosition -133 def 1797/UnderlinePosition -88 def
471/UnderlineThickness 20 def 1798/UnderlineThickness 31 def
472end readonly def 1799end readonly def
473/FontName /PLR6 def 1800/FontName /PLRoman6-Regular def
474/Encoding 256 array 1801/Encoding 256 array
4750 1 255 {1 index exch /.notdef put} for 18020 1 255 {1 index exch /.notdef put} for
476dup 44 /comma put 1803dup 0 /.notdef put
477dup 45 /hyphen put
478dup 46 /period put
479dup 48 /zero put
480dup 49 /one put
481dup 50 /two put
482dup 51 /three put
483dup 53 /five put
484dup 55 /seven put
485dup 57 /nine put
486dup 65 /A put
487dup 66 /B put
488dup 67 /C put
489dup 69 /E put
490dup 70 /F put
491dup 71 /G put
492dup 73 /I put
493dup 77 /M put
494dup 78 /N put
495dup 80 /P put
496dup 83 /S put
497dup 84 /T put
498dup 85 /U put
499dup 86 /V put
500dup 87 /W put
501dup 97 /a put
502dup 98 /b put
503dup 99 /c put
504dup 100 /d put
505dup 101 /e put
506dup 102 /f put
507dup 103 /g put
508dup 104 /h put
509dup 105 /i put
510dup 106 /j put
511dup 107 /k put
512dup 108 /l put
513dup 109 /m put
514dup 110 /n put
515dup 111 /o put
516dup 112 /p put
517dup 114 /r put
518dup 115 /s put
519dup 116 /t put
520dup 117 /u put
521dup 118 /v put
522dup 119 /w put
523dup 121 /y put
524dup 122 /z put
525dup 170 /lslash put
526dup 171 /nacute put
527readonly def 1804readonly def
528/PaintType 0 def 1805/PaintType 0 def
529/FontType 1 def 1806/FontType 1 def
530/StrokeWidth 0 def 1807/StrokeWidth 0 def
531/FontMatrix[0.001 0 0 0.001 0 0]readonly def 1808/FontMatrix[0.001 0 0 0.001 0 0]readonly def
532%/UniqueXX 0 def 1809%/UniqueID 0 def
533/FontBBox{-30 -260 1203 929}readonly def 1810/FontBBox{-30 -260 1203 929}readonly def
534currentdict end 1811currentdict end
535currentfile eexec 1812currentfile eexec
536d9d66f633b846a97b686a97e45a3d0aa0525392eecac163e584a9104d99ad0bc 1813D9D66F633B846A97B686A97E45A3D0AA0525392EECAC163E584A9104D99AD0BC
5371b1844a0e222653fa481b8809b26a46f4c483a5d7e95816ea6582584156cfede 18141B1844A0E222653FA481B8809B26A46F4C483A5D7E95816EA6582584156CFEDE
538b994adcff4645140e3617e4d7e1b0e4541cb9f562e55829b4dd880aabe2229e9 1815B994ADCFF4645140E3617E4D7E1B0E4541CB9F562E55829B4DD880AABE2229E9
5394a9fa259a734d29bba91ba1e2055cbea4339bcbff98d32ceff11f296225caaba 18164A9FA259A734D29BBA91BA1E2055CBEA4339BCBFF98D32CEFF11F296225CAABA
540dca10577a5d431b714726c1278d8101abd1bd8d0bd0174fff9148f8c61c241d9 1817DCA10577A5D431B714726C1278D8101ABD1BD8D0BD0174FFF9148F8C61C241D9
5412ad360a28616cb4a0670c1bf13e7a26e167f6ffbfa02d201035c41858d1c9bc3 18182AD360A28616CB4A0670C1BF13E7A26E167F6FFBFA02D201035C41858D1C9BC3
542c5482bbafcf7df8061b51863fde697437824573e60cc3736b77d96b9b17f4ac2 1819C5482BBAFCF7DF8061B51863FDE697437824573E60CC3736B77D96B9B17F4AC2
5434ccbc0394c27774c26fc66f04993d0e73f619503565343c1e03ed8880a14a7a8 18204CCBC0394C27774C26FC66F04993D0E73F619503565343C1E03ED8880A14A7A8
544e686ceaf12d18fb2c70e54d7c524923386e488a5781001b47276f3ccb8173466 1821E686CEAF12D18FB2C70E54D7C524923386E488A5781001B47276F3CCB8173466
545544141f99fd85b6bcead8a7e1294ba184ac78c372f2e5b85e8aa15afea2a77f2 1822544141F99FD85B6BCEAD8A7E1294BA184AC78C372F2E5B85E8AA15AFEA2A77F2
546c42e7590a246be66d35d32b78f084c348a79fbbbe7b6f9567c3ea4b3b0c1cec5 1823C42E7590A246BE66D35D32B78F084C348A79FBBBE7B6F9567C3EA4B3B0C1CEC5
547a3de0e36448f8c66f8992474ea20d179439c30fe7793746a258fd1f1a3714f39 1824A3DE0E36448F8C66F8992474EA20D179439C30FE7793746A258FD1F1A3714F39
548a0cafc38273b74534db852131fb30b383e6edffbcc308b14442b86c8109777eb 1825A0CAFC38273B74534DB852131FB30B383E6EDFFBCC308B14442B86C8109777EB
54979b6a3ca593c194fa43ac76959392665cb4b80ff1f4f14ff499e9a6aa70e1132 182679B6A3CA593C194FA43AC76959392665CB4B80FF1F4F14FF499E92D1E25C217C
55058c68d2d4339ef9d98051bd9c57340228b575a7a3073a282f085e699c878e8d4 182745FC5A535E0B2C2EFF0BB3EBFF84387DC0AE48D3EBCF5E702DC09298FCC1C222
551767f4a3e61b91f25c02b78551535ee5da5ab2d2e908c5b31aacf1c19c21c3dbb 182893A666201A11EF320BFFC01CBAA10C0032682C8E1E263214B80D797AB7E393E4
5528ae143a620190406401e3e5bd6510d5c76aa40c583dac6214b0c40d761dbe360 18296E5CEF5EDBD37618D2877E34F59F794BAF7859558C79871830A4581AB3426B88
553876bf7709b1b6484862664c170fbef84b53657102b0f1427597ec55d77b1b60d 18308F236D57DB2F5A50B37FDDFA61F635DF10C313E5AA3FD101F7027BE6C68A1C05
5544905265ebe5264363acc8e5c1d1a82654aeaad3f4bb83900a42b29642ab92a48 18310AD00D19CFEBF7C899CB6DC0F30CF38F782C94DA1B1B82FD8797EEEB29846B6D
5556ade85a248ecfc2e1b85ee0848fb9ba8a6088fdef5991241159dd6aea5c2bed3 1832B84DEFD0C7F2FBD86CA8D87CB293347A95C4C462D94D7EE9B4862F04FC79F789
556669684277b008c8d4ff740edf3e330cfffee1e8b31f5fd687654ea8c26f4f81b 1833D849F04C06573FF3B1C6FC0878C36954AD758A7C7BE59C3BAA712A0A56D9636B
557d365b57063cd7766a95b7bc92d2845888e3e6829b3a6d18546c8a0166e186489 1834628138797772C16BE5309CF91E7B9440BC8CE2D95FA1D8388E21499C6652666A
5588fedb6b74366c43ceeb8ca7d7ff852cac1c957d779181ccc9f26d84566836d71 1835ADBC2FDF3E1CE2670000924D3BAE8E782777B037B0FBA022555B0FCC1421A0B6
559afc78b71f831cf86fe1fa0a1a4419ab53f70a80538f75845c486832fa746aa30 183660B7381809F7FAD8EA305C71530FD9173A18E079156D95730D32EFEA3D477C04
560edcfb35ef6ddaa3147b8a160227b028189f7e00f11a71c10a4935ed92e290d81 183733ADAD9AA04C4B6A9E56344507DFC06D2EDBB23894BC719D68C21A6625E48518
56142f56635f8af42a28cccc7acb61292f97ec340bf3bd31a630e07c0ab951c408c 1838D2E33F8722EFDDB4D5DBE2E0970EF2443D4FB7D4CCC38EF2E093AA45402FBA7E
56202191d0bf3a0901dbfbc261c937f8b36dd849748592036a2427850eb1b6227dd 18398BD0AF96F2879BC2589DAC396A5021C1E4B35D1557349F9FE0789CDA8E35CE25
563db3f35ec6da9de2e322474a8872c11c8464aadb6a5cd67d6d707e8c528bc661c 1840242ADA516CBCC69635AC49A6314CC3471A1E5C9B1012DD10AE3C3B7E657D2664
5641c1922756e01e942061ad0b26308b1ab3e8b3446d291fc12823c6977b3065455 18413C179C5027423D11BB023866AEF1C65E4B9824DE0908EF0E20A590BB9F5F6771
56595584bdc67a0bdb93ee3f1b791740c84df93d35f76d76c9783d084d074f9266d 18422F9876FCA3999A6012F079C3B17D769B11BD0CA1828AC72035B1A79E19FFD9BD
5666c96bda2a5ddb8bcf4597940f19283697d9c0c89818c306e67574f49d54a45ae 18436CC4B15B5D0941AD7281D9031F89B9FE8AEA4A19EA669736C5200BF5CFE04FD3
5676d37f88bef6ab120ce0f4bafe4a56d5e1102da9a1c86184ec3085a96e5b25494 1844CE304CDED06A21C9C5BF3BCCEAD202AABA714B46E92CB87B16FCFB51D3FBC0B1
56810900d8d69816d1d95b7df19e7d1261b69dc94136981c2ecf1a8fa402cb66ff4 18451D69B7A4205E5112E125D2C497D8570BC5E87D6778490596F4940117DC761D3A
5698f0c888ed578cb327b3ea7b0d322b35acae5cb31dfde1c911281be27103cb4eb 184697CBE3B1CDA706CB838573AF0FBCFF9C486793D5365A31053B30E0134A36E6C2
57043364248898324fec2ca1265104ee84cbe5d4ce7a9444162bfd51ae581158c39 1847BE8BFCA2D3368D88A5F72194EDB068A98AF034999E0789E20ECC77E4254A48E5
571919eaf443c9cc559788d39a01d2dd66bf27fa7e482116ce04cb63f562cfd443f 18481F7B432276DD279E64CB13662ABAE3C26C582E056B4745BA43CC844A757BEDCD
572952425baf01494906ac5068d28f177bf0627087a5f74bbf9101e8799b1f07025 1849010C20E025BE688F21AE393E7871517F2763CB1AA124E99BA0DA7ED9CFBBC177
5735421ef87bbdffba40d0c2d8ecbb44ea391d43976db969da5dd89faaa6f9fca26 185088CAD36269D9C5CB3AF26542BD43D588B6F544B8474C62E7FF2F07AED1A46A2C
574ee1d546ac511230c08e8f0b2f2cb7ac35b445c79bc9fbd5fb48b7ca6eabf0254 18514B6084E497A4AC42D3780891731205F0348F536FC68936CF4FB684A2111EAC01
575fbf5d937f63b48537fc2285eee6418fa3f6052f0800129768a561df2de69f307 185272A53CBF5E879256D282F71F697D6DC6406131859F597CFBA4AF83394B6E823A
5763f9172dc6fcd80a0b4ab9e4545aaa1f7c1960e1feb3718c9a09b0dd81929ca07 1853B1D4A0B2C6DC5E8457B0E4C4A1E24848EDCCD19203080563B710920DD1110838
57727f2689c2dfd53a42df2f248f4cbbca1468095248df7d52a7df958641fbd60c7 1854994AEABFD1F0A5CC1318F776F9E59C1CE71334AFF1063D3B9878FEB884628827
57858730ad285c63306b6760dd46b97fbc325d5aa506046bf3dc029be588b87706c 1855508D628FB3DD5AEE9A5661A5AB0139014FD7DB850346A689C3C990955AB1514A
579145e6327937949aaed9215685a409c211e9530308d8695a47aed6bb238657bcf 1856A37B2E33A610A1CF47FDE04D16FB56FEA578E6EA001C8428FC9C353C5A905B8A
580f175f2ba61c8b68db31f23721b43cef5954ceb603cac77900424de9784ff7538 18577C6E81B91108662E1ADE69CEB9E0C0C556B4B26BD677A4621CBA130FB1FBDD15
581dcd72e1373c29798a653bb1913418dade2589a368da1d900c2585d92179f1de6 1858FB65955F91EC0E4F9DC9D476485541083B58C378548EFE328BDD6D891C0B3D31
5821ae95b6a1ce048fccad8285bfb41d04afa465baf2b8c322b9eed43f7d45c357e 18599B71970E28F8DF280A2A3A9866E3258026116132692ADB296DD96ABC023742AB
583241c6df270b4e8013df77afd027db09668e597b179e215c582a21210df095858 186030C275A5059488787C530B85035A763F0DB28FFB7321EDFD7A84F196628CDD52
584a6bac04e8f180adfa00909eebe37ad954536a8b2259450e46a6041395dbb90ca 1861B063FCD64976B2AC1BFF25343E48ACE0BCBFA4B17022F2B11490CEC6D844E86A
585d67cd9a3a08e5262b763cf933d89f3334778418f424572b1fe2ae71226c4cdee 186225B597E0D475F3E0D6B62CFC70432170E2686EFC8E6DB6980D032F02ABD4F665
586b786fd09089cda8b71caaaaa27c2018ba2f38e244b1b5676bab1ed0a34c60242 18637F1748F28CBE526D90398D3840182F35ECB41A03FBEDB4CA29BC51FB2BC0C62C
587301b950337b9a4a19038e1559be5faff38ca0c65cb830da4ef5252d3954a6527 1864E1B3FEE159A7BD1E785256B4388BE0BFDE518C3F79BA7B78FB84A3503225F146
5885da982e39632a63f45a2c3eae0afa957e10e482854feae2ae72ac98b245663c4 1865F9EC2A3CA0D004E35A76A3BA7B6029658F403669F2A0B5B0442BDB988DEEADCE
5890b023d2e90c4b06b3fe534e158780c614bf6e53ecd1f590ae2398db238879d4a 186682A145DEB68E18C538386C106D7BC88FBC1BF6544BF1CF40D0743BEC6FD3F826
59066a64522ed6fa43880457122d0a3df0bb894d1579dc3293455c2038e9b010e86 18678D35B9176DB4F005D0FFD58FA4E07973DCDA6D7D1987934FF0D9EAC98DDF62C6
5918cca453cae76ba732f64bdbfaaf0a55b3f6521ad16f565a234771e0edf88285c 1868AFDD8562D9AB60C61C32F507498352491141C005CBD6D61CDFF743D17BFEC0EC
5921d103368377d6fc8cad52794b79df726eaea3ab879dcea803262d8b74b839c97 1869F5A0965FFF31D1ECE140A551EA602DAD6ECA806E9B5A0507CA54A84EE6427B86
5938fbff51e8321f03d6f53bd8da3904cc2ec46acb2f42bef6c7b00d1b1098b2327 18709046F1FD661720BD6740644A4F3BBA13278D94471F64ED8C9CAE4858366308A3
594257445cbcf703ecdef6f314396d14d8ae6ae4bad2cf798762a52944a5363d34b 187136FFEA30517E49CD61EF344BC4DEF12AA87F0286ADDEB69705B9040340730498
595fdb6277c694e2298fdcfa7842c1bbdb97c6af62dbd7434b775e185c8bfd46335 187238C0DB7719CAE2A9C25076D8F5BBA7D5D4F8C596AB3BA23B48D55E673B605916
59667ee660754b8a6b32c352d41a1c0331e6ae9282bd4c2493c03725aca9242df00 18734C4176234C61159EE24F2A6688EB74F71080636B595CCD064AAEC0CE876604D7
59790dc022bc88bcb33a871f20abc9d13b83e3bcad68def6e0d2495dbee23e1b753 18746978B921AAF1168D074B2A4751C3D7C2325BEC85DF280B33285E09F25E70C469
59840152f82d9a58af5dd8ae7361aac5ea070fea0cc3d399ef4eeb7bde96a6b1d1d 1875EA88A87CD621D3188F769B8C216D755770CA38652BF04D68761F0607FC7926C0
599f1401ddd86ab0341c1150cef2f6730c19711054f844abad9b78afe6c6f5c7b2c 1876D4BFFC5A4E0CB32F86CEB100C0B2DEEC22EF1EA53EBC7340D1A093ACFEC2A465
600c0790893a9b7ce177f1c5abb8378d12ef9865e1829433775a3eb1da8bc1e2992 1877DE64C6AE6FBCFBD9E90FDB327A6F347B37A005A4FF777167798B100F7BCAC11A
601e5c0e1c276b93038c611b49188deb8c0c35bd8ff7842c72d498fee5ec22dfc77 1878ACF31A73C50873D3A1BAE46960D9DB146C951E9A23B49AC5B25B8487DA55B0AF
602594ea701bdb5ba258462b2faeac3185f3282b4984419ee0bfd5b96f2386c4e65 1879AC54946C49BA7E773D6DEE7B2DFBD99274A8D23022ED4E29CB1BCDDC57296986
603ee0472b6d2c0979a18d60d47f560467feeab3afad06db9c073f14e9f170b9718 1880480ECA084610D96BEDA842C9B8077E11797AC484450C17CEEFBD33397D848DCE
604f6b96aae922103a7e8ca50423ca30c2510820de7185bff80e9462db81a19dbe0 1881D0BAB94724D3763B650F5F47AC924381F4BC6284F9E08A88C7895443D35056EC
605a60a7aa64933286e497d23a7716d30e0818d18e73c91ca97c61fcfa5414ddcc2 1882AD9AD3220CF58421DACCB1AEEFA5C7D4801D93C0FA7D9B51E99DE115C0F9B3CB
6066f024116b38254eda947e64bf7c23ed80071abfeb921d6acc2a5c53648cfe148 18836C42075E45072A114EBAC0B0F263ACEDD95A8F5D15D1339193DA369A7559BE85
6076937fe85441bc8393d45b24f4243e1aba4f841b24ed8fc8f6e5357e6ab7ab55f 18845EDE27C68AC4D888DE5F8D2B1B99B73FFEA315EA7D65D1F72AF063A629672D29
6080f64c06d457ddd2970fd64b131fe97f103e0104d57d667f63f9ca49fc7887172 18858245D1F9672DD68961C1734BE891551CD993623082824CCB8A5983236B4DFB3D
60909399f648dbadf2deca33a263222faef1168ddeda4a34ffd6a48a9dc9ac64ff3 188613C02D26B27665126BC84955402CE2D267B6F66D9465907BB3E7B2C75010F3B5
610257084ee2fa183ce539b981ed85c0f4437b65d7a0435070214aff8cc11c17ed4 188782CEC1C97B589ACB1CF67CF762DFB0D3C65F14C6DA2BF9A875C34881E0AA0039
61169861fb0357e1ee2e1a3935b262a2b9de3caa4aa18ac8eaeeb99b34df0e71ec9 18883CCF1E3E7A2D1E1FA8C115059A69852439F8D31D2BB63458E0DA6D150968330F
6127bd47e388e3ae967e663de1636884d678206113062a3f3f3f20c9936cb520f22 1889D6B8572443E10B01EEB0EAEDF433870C0523C32B54CC3864C25766B80E644F7A
6131dd617c31a4084f1456ec71b8a718e9e3c923991ec83e99e24f172b5c627cd20 1890B7A74F91EAFF38CFEC6599D538100BAC4FCA3E575EB48CC65069D163D255AB56
6140b3cf1c7e6c7b3bb98be58f6b968b25362b009751022b6837eb600dabe7553c4 18918A79706C0986E691E67A210377B13F2AE0CF71B34ED649C025A8BA6CF7C24249
615546d0893cacbc33a71a0211a0af250f027c40993a480c3df41e3918423664169 1892DA6D1369433C427EBFC14C67EC12ECA650670FDC930AC97A6B2449412EC60294
616c996cc56381ba275fe5987d3a233ffc9bcba4b52052f0174f21af6691dc102c1 1893905A3D1540EEC68747915A3F49482FBEAD4031D9AB6265FB6BB647FD9FD95E0A
61750de1b1b447b7ed287d4167740bbe40f6a9705bed2fafba29b0efc4f032c83f0 1894202A48C35320B04790905077BBAC170BE3529EB55B908CAE4B8F60D73C15112F
618f0d198dcf1aab46ac67a0c6f1f711871ec56041db69847b44f1ef31f3dc42471 1895317F4843C0116C8D26D271791695B51CD354B5D7D42743FA494262DF3BA47E66
619e14ee29302c434c958d81cb69564571ee6e5506f58b07cf3f113ba4711f66394 1896E3B8932289192BA7E030922609E03905B37E88EDFA25F24D7F07B8F5C90D04C2
6202ec79542d67ff2766871689f59dd6750891c94a4b2b51c5271342d0e6f337a2a 1897C97A7301BC5B442634F12D8DC7016FE2C013C913AFE54049D17EEC1EF32A3EE7
62142f3e04cafd7b621124a89b9403554fade88b929303899b90a0ee65172a8cd93 18986AADE218DACCEAD910D8B8B12DD40FA60319B227A4036874EDF770CFBE8E7394
622d71b27617c218d8bb119d32af266044bde42bab47db0412698587f54530222ac 1899FC4DF8CB692AABF163D6EC83D30125CCE76F945F97E6222A2C93284D0F8519F2
6233bf3378ca3f94c8991132e0e77ebae03c9bf8675dfdd77a8be7079b8a7e6686c 190006FB95AEA6BB102FEF09C25D849D8D5F67C547A48937B3ED6932CB31DA99306C
624df1707231ee8c3a993e1ff2d7562a1f8c5808fe1365e07f915318a5888d1bce5 1901B9C02D13FF96CA0551022065DDC6D2FE07D0F2E33023013BE175CA87C5ADB9AD
625b823c7b8c265348c36b0f01f4a9d5d979b577d2b7ae7cea15b76466d7b896fc4 190243927837F9B1F1BDF714B7D49B81029800D533B972431F4B6DBBAC79996B5882
6268434a558198256e67d776c223320968e12a55fb7406afb688358f195bd000bf5 1903558441EB3370DBAAF0D5886161562831CD23DEC40E6264A2DF4B991069CDA2F8
6275af2183f37b0474b2ff18c18d6e278d2cfb91872687c43512eb5e34839b29ef4 190450B1937C6C12E5209E30C31648EDCC4ECD6472B9775021FBB6FB5527933E64E3
62837a16ee7db1a76991b08226c63687e8fc448ad348aa5470ff1a1f74f8615e641 1905112DEBB7E8167B9C10C491F14B92DD07838BC18D124357B24AB26A44B6FAB103
62958040cb4c2639eadbe8b321da1faa63f2370f5675060e2c8aad992d1662b952b 19067FB0997B367483D2C8C0D44E6111CEE2EC3CFCBBF060F416C0B747EC5BA54AA7
63034040061729ac40ec06ca57c4483d777572147d469ce1a78cba7608e5e701e72 190743154084CCBE5AA960C4D1E2BCE002794741AE799F0F745B1DD6551E9DBDCC57
631fbc3ed39fc0b9ccf3d70285e5a03cb598c291a777c86b4023877c462e7896f4b 190851105F1B452FA8039841AC003F10F851BE565F93622832E97BB688798FC7719E
63276d560bfa9f38804a56a4eaf852c31c0fd31925ca9579d130db8127651f686eb 190947EEE2B94EBC03B2A99FB0444CE1B96775CE4E17444833DED69B16D0891B957E
633751e253dd0907d01ac3ef5f4e9b9ebb27b6d7c9a0d46d5e8c0213e4546f91f29 1910ADEA9B8B7B0371B5B6C525461A1B0B47B72EF158C0B8DAA61EBBD2FE4DC35FA9
6347f8ea92cabd33ec82bb9aff0a21e635bc3fed07b5d1eb022c59dd173a70e22e8 191145B109E02BC9D0CA8F2F54C1BB773553E69D68E57589A437A6CFF712A5A5B775
635bf63792eeb3edc38b2c5775b4d1d167aeb52f2ace755e33b2fa1d88a32934afb 191202E567EF0D7673C78E33FB53B8936DF55D655D394055FFCD33242AA55F5D8015
6362b9b08cc94e7d271beaade65c51d91c7bf664469242afc48f64762872bcf1f6b 19139ED5927999DAFBE4260C95B2F05CB540672D9D294A026D04F0CF049DFA74A19F
637dd2d83bd33e9fb32abaaeaeb013bde7cfcd6287f099ebfeb6d42aa087493aec0 191438BB8A746DD4976CA2B53DB31F06594B8F0A30BE859B28D6233AFBABF86E04F0
6389a12e65166534a6df25aee5840b0f2481ef8bdbb2d3115258f6d284f76986a22 19155D4AEAE6015371E5849E2A375D979859ACBC25317F24F583F59256C1E1ED8B2C
63972131b769e66b70f71051ba373efeb3df2d75ea84fd7dff3c9d722f983e1f2c8 19160334D571CECF2B4C3E28198796D327C21664F97C2F417CE0B2E60E577E946DD3
640ee6e4d0280c8d8ce8b46c183f19529f7048355133549e2fe0d5f0c79a864e3bd 1917624ADD58869960793856E257249D7E2F2A9CF549FC7625360FA022F2F055ACBC
6410e139ee8fcf7b5b4e67ba17376952556b0c880d2cc4ea71ef1345a8f825a5908 19187A816C359AD64C6D3F146C93724A08324ED1CE7C8D3DA3C710044C03A37A680D
6421a19fda1215e376bde3a7a41f7178ad8c701d043f2722a4297a6f1a40def3dbb 19191F806296BBF942428F43DFC6E9A7B5EDA26186578223C50EB478AC4131E851E4
64362a5e3587fbece523f0216057799f3e05940b0f30426e8d58b926208b417caab 1920AAC8A0CDC05E45D59FF3D05CCA1DD7DF9A1E17C0D953F9F160F20D43269F7171
6447bfeff4b8b0f3f95d50166edf95d9734be56c8c72651095bcb1a5a1c64866f91 1921E9320C26306F91514C90644046B293912B31CAF9FDDDBE3FBC8272FF827B677E
645f6281f1192bffedb34b24f307d1ea43a23939cbb0cbad9610cdf6ab993224728 1922CADAF295574EBED60685F10EAE1ED416C434625304D404E9A2F1002341AC2775
646b4a9ae4322cd24324eb9aa0a0b0e70a43c5781bf860e1d1f3f8236a845d7b0bd 19230FA1CF1A994E99B20E46E76DAA92E985B513F344F9F14DD6715944830B4437CF
647f10b1ff73651468193f655bc49a1a3cb9707ebce43e7361b984333d4a108fe41 1924D732AE81782ADB85BEC5D81E544D200A0A4823E767182192913C1B26358408A8
648a82d7158773710b33e4ab7302231771448e971910daba80e69e8ab03a38f128e 19253A7EDE5AB7FF3C65ABF6352258235890D5C8FFC972EBAFDC88074933F8A7D31F
649caa7389461812a6fb0b4ffe861258762b59b3e6c1fb4ca5e2aaee3d8a35a856e 192642B0F25BD659CA9E620284261237BFF4891BA7A769C5741FBEA4FB1A36D8FEFE
6509cd5329f66bbc72e4c7cfc0a1120324e4828f0f6d587350c7f016ec8a9e76366 1927EB12B472EC3A7899D9CA6D40BA17195C8530C373FDCD38877ECD01B39D57A632
6514a319bd32bac737fb81081c37acc63bbe0b72b2ced1cfe2f2f91f9160693b143 19285FFBC5C4A8FFAE0D6B8EDCC9FD98FEEF4273560C8E4BBB51F39470098ACF4BEF
652d807e35b8c142efa61f0d51f36e635fcf51bea408393a98cd8aa768670b6c8f9 192968F3473D994D9CD04A768FD883B762EF29ECBB0113B85E9EEE582D062693DF8E
65311159329a0caeb74d38cd5e426ccb80e089659450a4cd23867220aca6e57499e 1930223CDD15B8B185AA9778398144A77B1CEA2158DF6A2F31E70EAA93FBC1368DED
654565972e33936861ae4c57bc962474cd88bc7432c8f1a6bd8d72e1f2f8caa4ba1 193101FD932B6B55E0AABE2DC95CA8033A3F755FBB8515426BB432CB6210B93F60CF
655aa2917a1b100f01469f230046b198cc2716098ec2b651ee05bfa67f48357110a 1932A4478149856413B86B4B6F6343FB1E1C57436E6E45DAC8CDF772C0065EF634DC
6562c9f2faa56e56f82678a43e09fbed5f84c102acafb9cf0487d94525c4c410faf 1933A076DD7A4137FC6C9BCC6182DF2C5346B526B1E178D16C6D2C47179F35919B74
65708a277a2646cfcfce36aca84761903438a3f4166a8c28e3d2c93789e7de5a639 1934552FE1F7A0185C5AB94D3452AAAE1AF13B4929C91D710393EFB379209FE16ED2
658b0855b9bb2f4292b634199c1d39209b7ffb29f22d13b6d9446e3d6134f91b460 1935175265D14F360C6488E18A8C0973844C950B9BDA89959372A2D1D83ADEB80887
659df257352d6fcb1f8d4bfc77ba00144a9452e6a35ff70b0bffc26a66357febfb6 1936AD84C2E2099F73A2E468110AAB2BC8367161DF44E4B8EEAEEBB91C50FD3E067E
66060b9653a919839927c7e437b0fb9cd2ce5cfa3b5c4bf78895e49ccd623096c04 1937BB629F83EDCC2D659B3FF757B1D1CD9D256FAE1A2E9ACFC032BA9F411D5BE7BA
661dd2f75f13b756cc5d03fcc7e8178e3cb1b951cf5f7647aa9b563e002fc51e604 193835B34EB84BD59C8FC9005C544BC83CFE7F062423EEC29B326C19A0684DBBCF44
6621c4a3097b576a486ccb2e3bc6746e223245328f8d969637a615ca4fbfba5eb45 1939FEAF613BE20321AF7D1CA940090DB58920B9219284D91DA3BD4CCB8DB367464F
663948894c312ccd70becf3409d32117984b1e41ba1091480531c145894b1063f78 1940CC848329BCBE84245A4B5E96BA2200F2CA72A28E2D8B37EB1309FD6C6F51D89C
66442c5a41c9da4a5cf4ba9b83088f5b1f9ca3ff6d962372927bff24c0eab19ac05 194116AAB4DC27CD99AC7D748CFC6CDB1BCD36CFB0020B11D1CCC9186C1571D50641
6650cf5f36b3da0ff939f510905673c499377b373bf0f7fca82b8dd8bf96ffb1682 194231D888349947B448513C7E832EB9F35B28EF86C2313AC9C9D795E8419F8391DE
666901e645610751894cdc3b80f52120fdd0af56509929594416650640076435d9e 194331E82F5EAAA4A6474A598FAADF2F5BBADBD7460804D71371C1358E7EB05B2A2A
667486af4299fd4a418e41642ea9227ade3ef87074a9cb92204005fdf0098408a6c 1944871DBB24797F62063F8E28DBF7B4B6C2BE6916D5E7DABC3DD8447B926452AFF6
66815a603eeb7748a01ad00ca20112da1456ac425d2595f996dd13188f79352e4bf 1945B12970869D2816CAABFB163DE7D75B530B2F873CF5039B0594D1CD925DDCC24B
669817dea0a3590edba04beb3fabf35cb5f302c844f662b88c748d5ef504d4524c6 1946CF772AF6E8BC64819469293A064442141A4D01526C93C55879A8EA0224911F07
670349126e6aa4bc181439ba4f4ea5887381fd17dc92cdddb29754ef06b1d9c44e4 194728FB73B1C2DF58F5D22984E6BBC957E31B7641D701115B694EE342F8362C571A
671e8c274a1f39fcae013dd267b055e1ad0924cd7b76bb72ca7d80471fc5bc69a82 19487C31BDC1C6F2611B5337EA2F3A34AD00EA8287694838776068268A7E27B3AED8
672244fba90488ac22da863fc5f282fb23867195b1b35e3f78d29096d866aac4894 194975F2D2745418BEF0E6DB6834777CD3B07F91EDACA9CBFED80FF429114EA8CA10
673b606b13adccbebcc90c9b0a3078b5e1645471b721735f4605fff4580d76663c5 19502F52A894B559D32FD8113D33FD627F1A45160C6A78F9BBCD9F863EB98DAAE397
6745110ca5d931f3a94c0f7f25962ca5c01d3be3bfe07e8915a186ea9a711587a7f 1951E4EB52EC153DCD51E0A00C801F30D092FC6BA87A44335CBB48C9B5753D6BC5B8
675cf670ffa6162b610e4a1528794bdba8b1cad15d20cd98fd1618a28a512367993 19528419A6836646059BC1DCB1EA3B8DA7C513787F4347FFAABFA9652CE7053CECDC
67664e6bd2484d658cb580be960ec78ec12e1ed84e5f36ce2f3642644ab416fc4b4 1953C6C6F581C821188EA33AE262BFE594DC5FB9A68831E34C847BB9A76D0CFAC87E
677df9828bc1d4a3847e23f1d5953e982665d455f524b0071b5582db38650deb5f0 1954EE89512A909C311F76C628F8AEE423C84EEEC847734A5F5965237FEAE903AB82
678d58f7311cf3a9e19db8ebd91c764bd4a63abceee39487ad55ccdbac0a2c4f300 1955E3DC422D0A0926B8D5F379DF239265A69CA293482BFBE7C9B763D5357CD7DD96
67932cca546b833d6f45f49cb77fa0a593b6b6f92247df132d2da9c113659a0e897 19566F03F8B1FE3B4E639624E60FC5F03DCC001DB9D7E25F9BD60B34FE24AEB3C657
680b0e61f06404e1f88015182d4812dffaeb6a86ec1d6cba5b2e28d6674099c830c 19579F40ADC8CF18DBB410E47E76E7C107D12E7D1F5348F6464C107CC9FA7760B319
681931924c40159030d7a54465f679b5e3c39fbda6b16bd9dd1cd815e3489ece5ff 1958FC9CA536F38FD625550300F5D5719E6CE4FA3354AD77CCD6EBD2E517C4A5DA63
6820f37bc3d54a9011c0dd80e0c076ec49f3b9453e6214afbaa2da94c7aea55edd2 19598BAAF5E0CE1DD74F1C602CC98089BF60107E41319F7017A569C51333A54160E7
6831b5221b60d20680fe26c5d729a360f243aa817565a9408e989f2b05024b79d36 1960FD5ADD4883E12582E2681B707D9C68FA526BCBDFA1DAD0116E0271E215FB6C52
684035de593e852abc731b48d0d57a4152346888781de7605237d8a2e54267b8332 19612AABC0B9738DAFD90EA6A413125F38C0D05FC385C88331419CF4ED3769A715A9
6852b9b49aa3123a96ba9f4d7865373a31bb02bda9481414b43ea7d53b4e681c141 1962048F1218741EE21010E3AAC8487C9A20866300EF581724F40B031BB44077F518
686acc1239a155bce872241429d64ed3f2a97796d97ad9cd1328980651b941cf754 1963AF943809E2025145D3DB4365E2DCA14553D9A270FED6DD8FED8D1559422B384B
687cdbf26beffc41b199c0a2ecbbb803bba3d986edc93accd93a2c1deed02c093b3 1964762BBFFACFB6B5592844B988529FBE9915DA32C5ACB545AC202DB35D3298894C
68827cb853b6fb9d76f648167a1e142a33b6df30cc71810d52394608368572e67f1 19651F7A519771C5AFADD6BA3ED3A734C15813142459B06E80FDBF5126E420ACF5DC
6892dda5425c10b4a63aaff5032f6a41eeaa67f713f6c2bf318c98962dd2c088637 1966C659AD33AB0F1D0F7324077A7262514240EED920E41F813357F200D39FE19262
690b2f8dcb98fae313ed659464b9c0d4d7d785793db9d2cab9492c82d033bc3bb58 196714625E95387EFCB28B8968921E6C10CFFFC4BD87916698E3F2E8B56CF9EB9F5D
691766aa47e2d73b3be40ad50648d7b081595235f72c7ccf7c25b2ddd2cd5ad04e7 19685DF46EA7A53E55C8672A2B70AC902ADA9CEA93A26A5C80134F1A64258FBF3587
692184877442d93bb1cf3c78eedf5dcc4b2e86efbbcf61cc7b28acda92ad19228be 1969C68A55A652A98F250AC0FAF442C30042B44A31CAB4E0DA51859B39F654CB4214
6934b01986bd421a299c68566e73b07ca8d5d844637c3b279f633017145e45e8a14 197089AD6E8101B91064985B0E5EBC1C769DF9A5BB93C542D6492BD7153BDEA3628A
694f02d02f5707b1bb7b45c9702abc142bd74aa3dad494524cc394f4dfb1f47f906 1971CD2731F8E758179D6AECDB6BDC3EF702CC0CB5E7521EEA3BF7EC2D9AAD705F26
695672b0000bd355f815153e9f74f9a7f4ee25b84fdf113da33cf12bb0f85f8ce7e 197295A9F1E0FFE9EEE2BA7DE69196B139D4828D0A975B6AFB8FADE5485F120A6D1B
6963c9c9cf8f7cba50bd9edc7871f95ceff658f8eb7e89f8d1037f39f7eb508ed1d 19739DCD7C5101858C1B690959D9797783579B9A258EB64BC1AB244CC44F38CC193B
69774653d072f0f63ebe2d48b0f6eef7f2bcb5c8a11af8a1a9605b0300c394465ac 19742F744B67973707E16B61939053E0D14C8B99A53BF16A3BD004A4C2A0497DB3CA
69895250d2133b5115fcc1cdb18b3fccf9f4998c17fdb01574eb9404af25cbb5ef9 1975FE7C15D614F15EA38541D703FC5693AD7E66CA4A83F783C1C4CAD1463F963139
699a00de693ba785dece14969f9b37b98a09a871158b1519d30623ffe3f565dc94e 1976FB78E535D0F70D47953D4E309C789156CD63D0D1DED586554422CDEE06C30A2B
700b3e5bbf668827a63db46e871faf233478db6ec4e45f8009e84775300e5ca5124 1977B8E8653FA5D009C5A49A91B02AD39F4DBEF16351D050CC5B9987F7750A9E971C
701877450e7bca5bf1be1f0cdfe1e1847cb8247cd9623681ae2398eebc7ad46b364 1978872C703D59F4815DAAE2B20F6C745A2EFF7C6225C2EB7E9C2FA48CBB7BE3884B
7025fed4685c1a95e738f104e4d5fd8f1b8e3549a45df02a5f36adf860e3d5c0f7d 19796A21645B7C436F9CC0BADFE5D1A367CDAB8B5E694FD74D66D617EE9BF118E2A3
703a666c21a5c1fd1b0c4f423d66d3895067a7274b12c055d8380007b1837a9fd16 1980D4436805710A3776E329329DED5AA41886BA47FD48EA1E446E9314F6BD0A6D5E
7040a4f4230ffc10142059b7c732fd97cb24c9e5fbfcb7306ddd97f597ca15a012f 19815D11DB2E407C0089818E3F8222F210AD5ED0AFE35273B1A610CF2B59D4C873B1
7051e866afce07afefc673f45bd1d823aa25f124cd0fd9bf50200802e2491e14fda 1982BFA5657F45B876574351569E1B5D0566C9C8E05192C6EE20E76C59ACC3FB3B81
706358d70630ab7346f9325f18f4f268caf66135091122a5df493235fd15711808f 19832C5B0FE47B4C2DD5E10618C7BEAA8185CEEDC1E7A8085293EFB0F0B5D0BCCF8F
70715010c276b3cc63063ffeefdec573cb8d915fc6a9cb797a285e697f8ea171e7a 1984452DE32E6DEBC6F791BDE6A9C898068E1EF4745316FA7E255A4530586FB73D3C
70877f97f4e0809f82f992dfefd1ef0072ebebce060eb81f92f38c4a1b643120ec4 198550BB4D7CB9D91C6ED60B1401337DDFA74CEEC12BA98DEEB5732669AC8FBAC352
709851d2436ea2041bc2a587664446eb565890cc6d00d321410bac10b586222fd7e 1986A9E9A5759B7D848AAB9AFBFD769DC7AF4A2B6A36C8CD0E801E64DB7D2E1B06CF
710dd1d22fd5bd8978853fd46e21372dde4823eca3988ae93c89d6f20f6f9423e8f 1987BE8A544743965F190927145151EC4BBCECFB2E641F4EA7D31274FEA66518D849
7110dca05c4670656d90e1fb37055d4689df1f4cb53755195cb091fda15f0ee9afa 1988DB82483792BDE4FD15095501E07CAA8732846CED29D16C89EBEF24992B6F6876
7126a0aa1af4d4a115594a28245c9603417a7e26d043300b96249ab1e5bc4756052 19892A42CDE07E3A18BA1C238E1F888ED3FA2D7EDF68003810BDF02046561194B709
713ab5335ccc04df3f2bb807fba2063ff302c9e36f49b9331b56425089a3fd94de7 1990C6CEF013DDA5686DBD6ABF443D1D3171899840FD142DFFBCBF119F73C205E168
7147f9fb626aebf46a9030830fb847caa0665c63e700ea660ba047231ad7ae928f9 199116A7783350A5F58D5F131014761B08E7708A9BABDA96FF71EE6A44B1211DCC2B
7158b85d9e8ab88e0e99cdbeb11a9773db4295c8eb3e5b0c279029a5a594c4c5105 1992C9A0569894DBF24628615C9900E5B072B3C640D13E902F4FEB2326D4CB432A6B
71648de1788ff9cf5309c08c4ef41238931f5dfd887046cff0ee2e0f9dbe3d2345e 1993C48C0DF00BA5224E9F94ACD218B37587712580797A5120E78AC13A849726DA27
717f001b0314d864a6a81b802c1edca6dacc04fb077c766e39d3173a1f180442041 1994EBEE3844F0ABD0FABE99A29F24D9958E37756B9FA5CA6A2A9BC9C09D00D1A91F
718d814145ac9d326dbcef0e9010332959c5b08cc0fdd5b33d61c77c891a1e357cf 1995FDCA890A095EC3765EE5B8DB792FCA5D4A1E39837E163EAF955C1400B2F9A659
7195ebb2afe06b42ec211aad6462d6f3d63ed6a8f405369305d5e04b13ef8a3b2d4 19965F90DD9EF711096746C7E0FD7FB6BE2050FD5966F368D8D3E20724E55F3385AD
720b1cd759e0235149c61dc188e42d5e2efe1578f7ea4c6402374e31d12e97a2729 199710811D2B1E7BCE236C7804D37B0EA446206B489B57F6A7111920A3436B130194
72163f829f0583d8a47e9edc5026692a580f708fc50c2639b6ea1624335ee60d230 1998057D32EB4D657E25719328BE307241FD0F06A59BC042EA3829E3B0E2A2B7D019
722a70f0a72b79b145ded3303e2f4eba1f07e5b9ffc00918516c19179cac615715b 1999486853E95CC89D3565F40A61A8F1315F32A34BF8EA024639B8F26ED927C64D86
72301d4bba0258563b322016dfc284f5da802453b4bea5aa69d04f2b8e4bcc48b8d 2000A2776E1993C34DA8BEEC9AD4A85A734B9923433CD6E9C4BEF381B9F9E60259B9
7246cf1d741e8550c0681ecb40d7303954f4ba50aeaf5add88d5ed4dc8809686782 2001B0D86B0E39D0B295254595E361AA0945205831C8A54A7A1AC26CD34CC29B5617
725f1be622c6faa7c870bc6ec8ba94e787d7625002205bdf49de401a1d95abcb330 200214068220FA57C47DD9DF80DC8AB128CC04136087B44092895FBE218D9EDCBCDC
72608bf750bdd8c7412f91a77f752d50fae487ebaeae5a47ec1d0b88eb2bae7bd60 200397BB9AFC314FBD8E77578E3F27DF88EED64E824FF0C25B44AF88BAE160DB886B
727cc3f4e337b58d8627fb7cbc1d609a3a30feb0cfd91b768b1b1d09a2d35afab60 2004A2E022B1795F0076E5657BB35AB376D8AC8523CF9D01C0D5FE612FEEF17CB26A
7285e96c0b1d41127fa6f11fdd35b88566ba8d0d8b2a657a492974167ad43a84b9d 20058B8732FC3492104DAB6386398F733299E6E79D833397B7D527F5C4AFE6BC106F
7299817e9a0ddf5374596946c6bd68e5ab22035ddfe75f0cc85e1aa8394574c6d73 200636E8F8FE95D9D77D5AFF6EEAA715B0E16D639A60887D9C885029689FFD7D642E
730b5d9ac533a8fcea8e770d12a073d2185e40c6a352bc96dd6fc3242f4b5b1a01f 20077959D844FCD32091AC778B8686BC037534687F95555EAFDDAEDCE3F61B396AA0
731f1e6b9c07d7bea2d6da5477b95f8e224cf76af0fa0632a14cf40760cc8da87b1 200850AFC950B1561B41A9747662582F24C02FD330AF7652FA86901326925131B2C2
732e8cccc3c1330e22db525426d4d3da95b0aaffc2238c2b6d55cfe432c74e8bd49 2009F974B0223E2F31BC104CDD8D96B76649C61F9E2C31C413257898412426177407
7339d7c93629075efd8357632aa242ec619d31a1184e00e87bbefa26a90f7755e18 20108CE96D10B669086F3CF145567E4A1942E056E4A3624A7CFDB97B85DBED674D1A
734bab369026bc4cd96737046e1a8d17e40e4bf0c3e801b716950c40c3d13dba511 201143D1BC23D1608C5B16B1347A28BE681ED20EFD3BDF76DB1BE0E13349B0B7401B
735dca027ae7818c913d1e502586e8d17964e297e524f946f1440e0f1b7d49dc743 2012A7891FE07D3FF79C8EB25BDC4E409CB67FE1A1DA4551E2239A6A644510454A0A
736dfbacf4d8eee3412cf779eaa1f697b9a684e12645f37952a116014ef905c4f77 20138C0587A95E7222EC9C46B98771AD761C8118CDCE98AAAF1B798EBBFC423C3B7E
7377ae7dee6e37843ada493df16d28b2a7a692287ac43a5b77f39164465ae703f6e 2014269251F146F9B186460C0BCECC32DE08E4A110CE3A6FDFCB40B2186CC45B7123
73876abfc5941a670d66bc01ffb718301b1f48b5bb4767b5fe32645684d3d85ef07 2015A3A4BEF219934AE6A8081BF29C466AA115D0557F9102E011DCFEA334F9322358
73938ba7df2e210640a4c070ae2ea8e13c76c45a6557b2716b2898091e578116252 201648985622FB748DEB06C508835CB5ACF6D26DAF814BE418C8A96E98F9B6D7B756
74081b724906dd9d3b636d294857c23bae96b1933dbe426a2c24cc587c146177947 2017019D453738B102FA960728C3FCA17AC0BA94E829F343B9298EF7B0959F68EF3D
74132f97ac706117b6edb4e16b7da265f7538accda18b9969bd2a262f3fadb816d6 2018C43A00349D6A91C48903E3FF1B4DD44D480B2E5EFBBEFE7BD4686706804C4365
7423449e0ee2a113d44e5a611d643ded7779b4b1db373c41efa960cd3622a548474 2019A12EA8D8E1A56BFFC9C3724E5226FFC4BCB90E0FA7C8F694AD7B77A9D7BBFE0A
743134736dc80215876425bbcf7bfd6eb11dd1cc48dfe3a64cbbb1c21ef522895a8 2020DFF72A3F39F1AD7385D8C4720E5137F8CE9CA6CE163EA2941F67AA130DED7ADC
744d370cd834c2deef002b6ed27868e18dd4c055987ac3b30dbc5c0ee1d468ba555 2021F3352EBE25B706F025EC2560FB682B012314B933C0CBCB36EF057C54CF2C2918
74593570c5483ca88d437aef88a97096ca89e8f7f90e890ac5f8472271809fd35da 202256A3200093068141DFFCC589E5D4311844A2631FB86A36F4664A3DE943A93805
74655e706a7f8eb1551dc4ca23d198ba10e65a1ee9dcdd1cd86a06aef81616cb581 20239F56E43E05BD378ACD3A0E2AB25E192D2B296AE371331BFBACFEA82EE3DA915F
7471935314ab3b4fb37582e761d992b667fb6ec480e753733a94ee437ad1ccfce9b 2024DE23C8649BD60380463B33916CA217EE6A00E353707FBE01A8ABE74711B58201
748f22802f4d4585b78208ed534b949caee4de4828805a92a83dba14dabbaa7afa8 202521D9FA12C7C4A3F9BB54D334F49C64AC258CB30039E3BF891ACC13338E2391AA
7498f1166f9a0a15f3f852bf0589576169d539c416a016a1b5d4d106712e3ff789b 20267F9267FFEE491F2CFDD27F863599A373FE2008C2170D789A3BEA85D747809A6A
75026fc771887fcad928b365c6feb8ac4fe0dd68761b3587cc33bc3dee3957596eb 2027D3DDC2D413FCCC31CBD247484883A0F02FB4B3BF1EF0282A5851D6C6B799F679
75142c9819034a6ff9b9c744caceebc6863e776e199e0c0f7f1d0c83e059cd74555 20288AD48D0AA6D92A993E6BE8E2E755D05DDD153DAF25E60CBE80CE92818B2E1F89
752967b5026825930281186cd19d8b9ca0d885353f1e3b0e8671a3ea63e996bea50 20296E40912C3DE446D5EE6BE13AFA901C48A421CD7D89E91A7F8A7D4DF17F3EF6CB
7534c3eb146d3e52f046fdcc08aba850e203824918286608396508e339873ba03d2 2030029135C3FBAC03ABAF8118623E6E51ECA32E9FEDC87AB3F4B2A9B7E4822E7B98
754637d781811112ad5f86e547e03cbec8753a5841c8477cd8d72b6ea67edb33945 20313FF4C7061EA7062E1616C5330B330A39E46B4D01C8CDB2C33F10F6CBA57CA3D3
75576756cbb5f0a7b9d32cd1a0dc464445441e022329997454caf59a2055fb6facf 2032BA080F24C55643E56CC3B8267B65E50B3EEA65E6785133F3F72D9B8A4CC9C3E6
756a2a58345ade595a74eeeef119833d44a9e390a543ce96558c177c9a1b6f3aafd 203355095919DB38E9D6FA2FB85649891E7E8E373A187FE21771422190C83EAE1329
75726f8db70f93e6b88b5e6b41616ceb708f513155727dd54f4f3f7ba9fef378722 2034245B9773D0B68B691591D4512B836A459B30B95BCC82F501D5DD8B1EBB2B1339
758876a5f4eda3ca4479814130dc8d8808c1eb1feb9b16680d2945c6e5767ecb52b 203529638DA8D36C2639BE871A012E983B77AE092AD3AE160358CDC54F8872D8BA5D
759768bc1fa4edaf8c0036b1b32a9a67231cc3f07498373f59bb5cdd656640fb1f4 2036C71BCE0C2575EBDCCEC8AB76539E6903A8AC710A47404B2C37F09EE0503401D2
7607b9463969a51e16f3dfffc2ac71359bd25e8b980761a7c070ea75140f27fa3b8 20376BB2FA2B193886275E07B8D46F1F446342774E7C5C3F9E3F55B962F7BB11D0F3
761ded4cdfc1a749703e7d7a30e04a18e77cf44e530cbff6c90d39e1eeb41bc322e 2038C7A79A3343934E79FD4C4241CE21CC1F161ECD2F1A915B915938617068A8AF73
762c36d8abc68358a36c7ae7c0fbb2d67abc2fbc14c601ce880342ef044279f839b 20397D77579E78C03A09E4C24D41F7A306EE5E33EC3F30E9C2439A4D8031E075097C
76360656b57fe06acc5f321837674f85dc700e8d71341f9c91b983c96b5cb86fce0 20404C6335FBE3553CCC7D09438DFAE91DE6A9774A74472CB67BD73277F8BDE5D7CC
7645743b394fb490da3f829111a71bcfdda2004698982d1e720cdb460dfecfb40e3 20413F8237F93A66DA5C20183550918A286A139AC1FBEC20D7D4718457BC5D83D1CF
765cf78ceb7122f539ca3279d8c17f65708f7f1e956aedf28669334352dcbe4adc5 2042A71B8109E431F9B07C2A4E5BE8A2B1B883D5EBDE19EDD32064D994D77D0393B6
766e6525b83e373b00932f6fb352455b0239dceebcd4dca89e45b338eb1db7b57cb 204322D5403EFD0868FBCAFC4DE9C949FE190DEBFC324FEEFBCBB4C85B191CDE2174
76761a1f4468f770fd3bea1a6de483c2f403cbb61b7f57c22f96832cbe44a951399 2044BC06460940FD7F59ABBA5E812A12E5FA76E063E16A8746E08C05EDDE2F6D4ED1
7687d3ef00fd3e93035b87291a5e21bec79ba9e3a64719808e7996210f99de8e493 2045455E1BFBF8A05081B7350223CD24253067AE1A4978BDC0FF9256C29EC706D31F
769ea0b1312103a834617c58390ada5a03d03996980d944dc7ac3330f62abbd8fdb 2046CC4C384B423B1248C96B9AA6C6625836ABBABA7E69B45C0FF5560C55B8895E4B
77003bec526ae8f9c329905a1733ff09e847ece313b508e60dac71a6091b7f9cd37 20470F32386309517C510598EE29708F98ED5E0FFCBBC145BD413DC2468101A55F30
771223e72f7c1132bc37e96c9e882b96be10e0c59330b3f07c81866642e3d35826a 2048FB3B20EB9946718BBEB9399483EBC19F52D1C494FE513EB90ACD0A215789E700
77227aeb063c6459721c8e61bad5f0980481daf4c0ba5170084af7dcf6946c096af 204921F1BB30A5D8163654C552457A68582A67575B60559293C971A8DEBFFDC53422
773857634f7ada8fa01c0a80c0c2a4163174505f6ac9fd0f7caa7e8cdfa7539b758 20505F7BA31C8C872D4E605C70E4A1F8CE2F8BB0D3D606F21E2BD014459446AA2726
774629f73b27efba016668717a8d176a1fa333c70fe12b4884318d66909780789f0 20517786C5FC1B8669FD948AEE469267419BD45C62DFF3450EDD9FFBE322CFEFE049
775a52392a19e6e4634bbe0556851fc6b5d4010deafd021e16440cb60c426eac430 20527ACC4D899AC10B2C24133276F95A64A1C2B8AE018A0204E365DD4967CCB96D51
776cb2de61a005136f8e7b9f3c1af6866ccb7b213133e794d75538a35b6ef5eb082 205358652A59B1AB79B5CB911E81E5F1B63008BBD3B1AF273960E94AAFAEEEC73F2A
777711e0e3ea6f9caadbd3b6d06012a7e1d674d483679653ae7e9166b44c94fed64 2054E1C7ED48E833B02719D50AB68B60C572C5DD27F14EB585CAB3CB85A18397C5F4
77828d4bcf30ec88bc9d03e9bf508753fa0fb0fcd9b2630c0bec10a4afcd7d18dde 20557C132F9FBE3DD4E629DB137BE22EEFE1AAD18B37A54C8AC07360DDF99A37B56D
77978dc5e33d80a9f3c673e65a1d4af21a891221ee65f1bf4df912043640a36ba55 205641622EE687C32FFDDC1A2590EA8A71DCDB73BFF7395A5434758FC21BA45C7262
78019a30910f6a793c76e01ed70a4ec0fbd89370c2f5a146eb6f4629fac5e8ecae1 2057F705F0FFA5978D6F79F0CC1A25405F91CE9DCF09627423D112D3123A60F8A9FF
7812389b1118859beb2cfe7e0a5fb0d984ae602ba326ddcf0d8d75b16af35c303a1 20583D72661A5A29DD4ABC8A4BF1759EEAA7010925CA919E836D4846B4CD11BF752E
782e76b9adcb7967cf01c880cdc5018a6521f86c8eaf48c4ea1a8abf8145038ce31 2059B0EFF7BE8B68381F8CCDF2902926DDCE4529839070DF6D8856CE6653D9A398C2
783bc3364ef11b3a622d16f2d26c3d3d0e33d97d2bc82b8e648b037b5c3c402a72c 20600875A1F1A0DD1AA655C4CFD7A475026736672F942322D2D5860FCA120BDEBC88
784cda65cff5acffba4b5da3cde98e3e91032c3986518fc52d851260dca09aa0d56 2061C9D2C9043EC9FC9658FA916DFDF6FA40C46380A4BC588300096688CF5769D7A5
7859f6ce72742e0fa4bd1574529cd910343267c9604334ab109b467f3c3f12f864a 206226D0457660D2273D23CF062BFE83B05C35EB7C05B00120CC1574CF137EB2225B
786bd8dffdcc5b44c3c38ca1c38592ed6125723172ca23b8067543db77c6c066a05 20638DE0DA27E1238CAB1349ABF74962B08AE1B948FC4F8C876234D123F622C64C7E
787683cb69c12f0171a365bc75a170aba1e45ff53bb29d9dbfa02fda142c52edbdd 206499D5983F5004181B93452359A4459E01E09FE4C6408CE239A917C070EB42321B
788500d03db428ded7dc4dc8959607f13dd547a15fda82486cbc5f0671789d6401b 2065A053859A2F23A93BF2C77C4664BE5F531CBED724010B01BEDAB4FD698F59D624
789948f3c1b33fcc932a243141228d472e2352a5e122024a329d961410ecfb4c204 206688F3050560BCFF80478829E8B6902EEF9EF19C6ABC19699DB522EF1655A90B58
790b05a7e226d433976a98075c368a1ce4e43e767b97dd2ba454395f4817496a2a5 20671B7AB2695ECF4ACCAF39F79CA17EA6DECB9B3132D3271AE828596A7293060504
79170b5fab9ae65db145fc1a6ca11fcfac22eb09819e43c30455b33e1abee8492e1 2068E1D5375C553659EAAEA43399111DC1F866E99D788080F8C9EC24B2823098C498
7923e1dffde1f8e924433483360d57e663635f7afbe9c41ae98498ab2a6860512f0 2069DB3F8A0795A7716CCDF03ABBC2B50A935D64CD08ADBC2A5E5D591E8C4A5DE697
793ea39e2906dd36e07dba126d46b8c0fddd730e57d346cd653155e8a74745817ca 20704200369D75A07E8853F5A7007C4184CA5445D5B4342F673878339A09F09BD6BF
79427471307835a02d96670b7e5449a264ff767ceacac056e10f0b409bb9561e406 20718438E9EA727ADD8618D2DB058CFE96B75D24FB0A8C4AC5FF451C3EE990BD2B81
795407d483a40de6710bd2776046099d9a8aa869537febdda0102a0882a50 20724442FD27EC6EEC0B6C5B8BFEC20C284E1C9F3C093C6A5342495ABD9C697C5D32
2073A76F091299E807345AC5A08C9854FAA1603D7E44B660989BE87D0B744C2407F1
20747D6997BCFA19B9C3B713A79E691FF7AF4A2438EAAA6D01936D8AC18C3DB2A8F4
2075ADA04B19B48060C41FF9C67B3DF7604D0DE6B406C79647284D014CA9BE6FFAA6
20763E163FD8F81DC49415F0D94296523526779CAFAEF705B03B89D8B2B9A5D4BB9C
20777456FB30A1996587688951ACC8187B30FA2492AE7FB6E2AFAE095DC7CE2DA646
2078C7F7A377FDD4A0C3CB5562848AAD603A1FB282E458A322462B63F4247BBF9A69
2079330B537F0B0AD1F7BE285B8E1EAF9FB9D9B45C80CEC5EE3EB276A3F5A0F3AE92
208060941FE11D159BBC7A8F924BA49D260EE3D5D7C2EA430024417273969913AD25
2081DD8588D5FC54899D76DF4115093285D1F16197DB4AA17F9506227BB509B59ECD
2082F86D9D1C84E26AF5F6F841666A3F0F69F8E234026985AD28D78DB981F0372809
2083457201FBA51AD175B2FA15C25AFB18CF8B18E338578927CBC7A170F102F8B67D
2084099978B4D60F55BC979CBECE0FE7A978FE27399D538FB69D3443BD5599A1F49D
2085831D1B19B65FCAA1CDBDEC158C62CA94C2597B818F9E8A86AE5D1EB67501DCD3
2086783A6BE313E1DB8204A9005F62250B16395507743DE099326EDCD61364711D3C
208782EA6C78F7F9AF77829F2821F9C5C932E9C22194F7D58A24C7F66D65C2EFD858
2088AC542A705AE1A5054F75C2C500D01883CA8034ACE707B750EE42C494F8408337
20896B3E1986DD34AC8C21365A5FED6D21E1F05CF26A6DFE79D5112AA6ECE623E52D
20906C25D8E06D76AD8E7A26768F3EDC3FBBA64B58AD2E298B171F6B6D7F6F75BA90
209112B51A6A063CBFFADE92995C7511FF2002EF1CE66DA3FFD048FB2E7FB690441B
2092DFA665F885113CD2E2F2CCC034D74D575EAFB46F63A02FF331A16065F4FD0BB2
209365C1D1F9E28F0A80A9F6476069FA4CBB077034D588BD8A417517C6661F714D20
209499C51763A34C8941CCC76A414B3AC519FA759C242F6539E2F12708DAC0EA4AD2
209574902B4E8080F6C7A8EFD4DEA4EDE452C775A547CD711A6118135B4F2E822A46
2096491697FBB8DF2F8B734B54C2BF6657D45AB9C14B14F2E73FD38729F6E87567E5
2097C37B3ED025B6502831DC140105527314F8A23E8F309B8E7CF95E0E2EE07B2271
20981F8216E909A58BC5A035AA904014B93B0A708718E80A1E07682A43FE6ED76E18
2099767DE903FD2619F5D64BB5047FE1BE5218424E596439810FF58C4C7203969AD1
210026822987ED2A3E8EB1393747786538056183EE305279ACAE4B743673C264601E
21015F90AACFEECF227C7F63628AA5C7C1F5EAF2B095E5CE49A1E61F90ACBF5A8405
2102EC961A712CBBF082E04A7D7A443A860F682415BA38032C911DEB986F4CE79068
2103D759B41CB84F78A92C1E9667AB80E06E8C72309269419ED2970D17F9B6B2EA4B
210443EFF76136B76DDDE42F3321C8D96BC5F11FA31E8B08B8A3B3F117B3ACEB9B0B
2105EFE5F4BCCB2B7B6B3CE509264E58C2AD39DC58B25C4BCF009C5FE50A06C688B8
21062DD778B7899CC78E85BAD8241B0A4C23605D37A17EDA0AA4FC948A01F9AB2348
21076476ED62B70555E91582699A8450B92A342E39C85B15EB6BEB788D113FED822F
2108DF948EAF530150AA1077C977C4F1BD02E19EA57968D5E81A41CAF56F85B8AE9F
2109A68CBDF161A738C5C02C8AC5025D119694821C3B7AA60325201272048C00EFE3
211069CD3EDD9FC7FCB49F87391B9F0A68D3159B444BF4EE12D4DEB4B03B04AB0871
211170421392BFEE0F554903A4453E2C6E97849ADFB32739243A4CF271A158EC0F8C
2112CFB7E0604776657AC194BD7B3F4F0B145B0C3BC96F0E531DDF877B6C4F90264D
21131DCD038E36A4C3BA16F7A35C7A9A5F2D08DB031BF82DA5267EE8D18DFB0D2194
211496982951E3F1453B71F9EF92572EBDE65DEBA0CD75B9DCAF147864FA2AB3B8F5
211500DCC80BC7E334D823A9106659CDE3BF745D8E10C9AE3838174632EB416A1BC1
2116A5FA10D10E529351D44E252450239CD921403D97ACA3650293F382BCA9027C02
2117BFFB0A7720BDECCBDA02664CFF8B509D12FEE61E0E7E9BE1DA54BE91784BC0F2
2118941C7C95ACB36BDD0693B44191678FA99D8057B3CBB05EE3AEA0977A9027567A
21190C5036965090789DA62AFE78652007628EA270D2D9A383BE0327068FAA790022
2120F8033E2A54B7E6F39D80DC913F8BFA7DC5C3491926276BDD41397933EC0B050C
2121B29DEDC53C85527ECD47DC604DF196D712A530EE443588864FD5A80084667DA1
2122A19719EA1F29F9155F928DA466511F18359F498DF715F0F2F527E34B045D4E4A
2123421543DC7870810AB6A4FEE430F96004795BEC1A8CCC246E2699185481139519
2124B66364E4C71271C888D639BB8B78D1A0A0A1DC61AA29BE6CCED3EE91E3A0206B
21257E
7960000000000000000000000000000000000000000000000000000000000000000 21260000000000000000000000000000000000000000000000000000000000000000
7970000000000000000000000000000000000000000000000000000000000000000 21270000000000000000000000000000000000000000000000000000000000000000
7980000000000000000000000000000000000000000000000000000000000000000 21280000000000000000000000000000000000000000000000000000000000000000
@@ -804,244 +2134,254 @@ ea39e2906dd36e07dba126d46b8c0fddd730e57d346cd653155e8a74745817ca
804cleartomark 2134cleartomark
805{restore}if 2135{restore}if
806%%EndFont 2136%%EndFont
807%%BeginFont: PLBX8 2137%%BeginFont: PLRoman8-Bold
808%!PS-AdobeFont-1.0: PLBX8 1.02 2138%!PS-AdobeFont-1.0: PLRoman8-Bold 1.11
809%%CreationDate: Thu Jan 07 19:30:00 1999 2139%%CreationDate: Thu Apr 13 18:00:00 2000
810%%VMusage: 1024 30988 2140%%VMusage: 1024 30988
811% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. Adaptacja PL JMN 1997 2141% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. Adaptacja PL JMN 1997
812% ADL: 750 250 0 2142% ADL: 556 156 0
813%%EndComments 2143%%EndComments
814FontDirectory/PLBX8 known{/PLBX8 findfont dup/UniqueXX known{dup 2144FontDirectory/PLRoman8-Bold known{/PLRoman8-Bold findfont dup/UniqueID known{dup
815/UniqueXX get 0 eq exch/FontType get 1 eq and}{pop false}ifelse 2145/UniqueID get 0 eq exch/FontType get 1 eq and}{pop false}ifelse
816{save true}{false}ifelse}{false}ifelse 2146{save true}{false}ifelse}{false}ifelse
81717 dict begin 214717 dict begin
818/FontInfo 13 dict dup begin 2148/FontInfo 13 dict dup begin
819/version(1.02)readonly def 2149/version(1.11)readonly def
820/Notice(Copyright (C) 1997 American Mathematical Society. All Rights Reserved. Adaptacja PL JMN 1997)readonly def 2150/Notice(Copyright (C) 1997 American Mathematical Society. All Rights Reserved. Adaptacja PL JMN 1997)readonly def
821/FullName(PLBX8)readonly def 2151/FullName(PLRoman8-Bold)readonly def
822/FamilyName(Computer Modern)readonly def 2152/FamilyName(PLRoman8)readonly def
823/Weight(Normal)readonly def 2153/Weight(Bold)readonly def
824/isFixedPitch false def 2154/isFixedPitch false def
825/ItalicAngle 0 def 2155/ItalicAngle 0 def
826/UnderlinePosition -133 def 2156/UnderlinePosition -117 def
827/UnderlineThickness 20 def 2157/UnderlineThickness 54 def
828end readonly def 2158end readonly def
829/FontName /PLBX8 def 2159/FontName /PLRoman8-Bold def
830/Encoding 256 array 2160/Encoding 256 array
8310 1 255 {1 index exch /.notdef put} for 21610 1 255 {1 index exch /.notdef put} for
832dup 45 /hyphen put 2162dup 0 /.notdef put
833dup 80 /P put
834dup 97 /a put
835dup 98 /b put
836dup 99 /c put
837dup 100 /d put
838dup 101 /e put
839dup 102 /f put
840dup 103 /g put
841dup 105 /i put
842dup 106 /j put
843dup 107 /k put
844dup 108 /l put
845dup 109 /m put
846dup 110 /n put
847dup 111 /o put
848dup 112 /p put
849dup 114 /r put
850dup 115 /s put
851dup 116 /t put
852dup 117 /u put
853dup 119 /w put
854dup 121 /y put
855dup 122 /z put
856dup 161 /aogonek put
857dup 162 /cacute put
858dup 166 /eogonek put
859dup 170 /lslash put
860dup 171 /nacute put
861dup 177 /sacute put
862dup 187 /zdotaccent put
863dup 243 /oacute put
864readonly def 2163readonly def
865/PaintType 0 def 2164/PaintType 0 def
866/FontType 1 def 2165/FontType 1 def
867/StrokeWidth 0 def 2166/StrokeWidth 0 def
868/FontMatrix[0.001 0 0 0.001 0 0]readonly def 2167/FontMatrix[0.001 0 0 0.001 0 0]readonly def
869%/UniqueXX 0 def 2168%/UniqueID 0 def
870/FontBBox{-70 -261 1246 937}readonly def 2169/FontBBox{-70 -261 1246 937}readonly def
871currentdict end 2170currentdict end
872currentfile eexec 2171currentfile eexec
873d9d66f633b846a97b686a97e45a3d0aa0525392eecac163e584a9104d99ad0bc 2172D9D66F633B846A97B686A97E45A3D0AA0525392EECAC163E584A9104D99AD0BC
8741b1844a0e222653fa481b8809b26a46f4c483a5d7e95816ea6582584156cfede 21731B1844A0E222653FA481B8809B26A46F4C483A5D7E95816EA6582584156CFEDE
875b994adcff4645140e3617e4d7e1b0e4541cb9f562e55829b4dd880aabe2229e9 2174B994ADCFF4645140E3617E4D7E1B0E4541CB9F562E55829B4DD880AABE2229E9
8764a9fa259a734d29bba91ba1e2055cbea4339bcbff98d32ceff11f296225caaba 21754A9FA259A734D29BBA91BA1E2055CBEA4339BCBFF98D32CEFF11F296225CAABA
877dca10577a5d431b714726c1278d8101abd1bd8d0bd0174fff9148f8c61c241d9 2176DCA10577A5D431B714726C1278D8101ABD1BD8D0BD0174FFF9148F8C61C241D9
8782ad360a28616cb4a0670c1bf105f3d1ffa85450238616e5a0c33eac0f9ccbde6 21772AD360A28616CB4A0670C1BF105F3D1FFA85450238616E5A0C33EAC0F9CCBDE6
879ac15f1cf2a94043733c8cd06266771c56ed8a3da9fec02bf3c2e26ff3bae2cbd 2178AC15F1CF2A94043733C8CD06266771C56ED8A3DA9FEC02BF3C2E26FF3BAE2CBD
880fbcb8ce1e8ba45e7c3f8d6ddb1c1c5bdc54883488da7cc4cd2c05bfdba771011 2179FBCB8CE1E8BA45E7C3F8D6DDB1C1C5BDC54883488DA7CC4CD2C05BFDBA771011
881dba8cf2637698c547be9ef95591b4e0b4bf322bae091cded462dd98a0feedd13 2180DBA8CF2637698C547BE9EF95591B4E0B4BF322BAE091CDED462DD98A0FEEDD13
882b63ea201aa22586619b9e0f89e8963aa1debebc5ff84827ed982298379501bdf 2181B63EA201AA22586619B9E0F89E8963AA1DEBEBC5FF84827ED982298379501BDF
883b8c460a2da020f85e62754372d716c35bc979085d5d028a78e6bf0328c4f409b 2182B8C460A2DA020F85E62754372D716C35BC979085D5D028A78E6BF0328C4F409B
8849192e5443f6f0a4704fcb17689bb601b980a049b3507abe7f8babb2352ffd5d2 21839192E5443F6F0A4704FCB17689BB601B980A049B3507ABE7F8BABB2352FFD5D2
885dc0c9e62da8b6e80f86a4c9c0f03e3f6fd5bc04815a0b1cf153a90701e8d69c9 2184DC0C9E62DA8B6E80F86A4C9C0F03E3F6FD5BC04815A0B1CF153A90701E8D69C9
88632d73148e8cd2ae4b79db7b34a135ae9fa28bec8579a8699d66c696ad7f6d7f1 218532D73148E8CD2AE4B79DB7B34A135AE9FA28BEC8579A8699D66C696ADE507683
8873b5e0e893a4c1711db1b25ca8354e5b65b92a6310e360898aaa1bf8c892c1fd8 21864329BAA902E701CA42717476298C9FF511E8DE1A268DEC768A941E3DF9669D04
8884749091be71be45da4aba315f95b724a60f17c70833e889c903522047c2cd466 21876C697F818EA103F176646D72499CDDCC90EA530A828BBDBEEEF59FADE7248B21
889cf31228c9cd7f72dc87b7dd2f4d7390a7aa1b5923e3b9fcb41ab066f94ee078c 21881FF63B2B858D2D40789EB126C98F5489BBEFDFBF09F285EEFF14AA13715DDF6F
8909cd251103e5fb8e75bf46534f5b8ad4be417217fd59ecacc14ee3e7f6d85ffa2 21897034D0EA4F1FB73476024F8769ABEEEF7FA4EFCCA30C35F607F5C12CAB51089E
89131f9e65964743867033c2b058e9dd6019f0ee7330f16146036cf80f3178a3e49 21902C7C6F4150C4774423E8C99C28166E5FC3BCE52C13F05719FAF20F60E5D15B63
89236bcba0413fc61c9cfef97ded0d35eb6ee1c6e6d9d09b6c07bfb23791a595768 21910ADA5342D0CE252B67A9CCAF247C1A705A84EE6DB91C7C0A0100F1978F245635
893723e46787a274abcb47c29b78d5fbdded54728d49f9a4531b8e8cbc1f9a1d55f 2192FA140CEF7FB92E22D07071D76B34DBB962CFC90A5084AFA8A975DBB3644ADB10
894c15724d10ccd681fa4680da00195f36915de2d3e31ccfd5740e38a18764d8f5c 219337620E73A8012950F693A42136142D77A1741E2895CB2CF6F647E827537F2698
8955a0906a7703c22d2364cce2f89380952f0f02538e92ab11a78796a5fbd8db423 21949BF63286102E4EA6220BEAA1EF3FB862F9AA0FF7F3371CC1F33591F2A81E9478
8966e45e25b3f0e9cf98b50d5ac0a99c3d50b8355459f59d6b6d86de7a106ee9baa 219584D1E3DD1A8975EE6F7B0BB69266D0FDC747F0F89C2635D595FD984CA77B5C5D
897f10841da85839f4bc05a5b4dfb56bf8a1b03457737c5f728a38ca1c1f9fda2c1 2196D25C2852914D3225D07083B0BF8E4F10510C0D2491AB13FCB507AB79FD0421C5
898d6f2e4076cdbeede162ac2995b605684c8ccf88f2e09510a56be49e6e2c27c0e 2197C06B9D593022C0A0C703A8479904F0256C5A0B12BEF34533C9C6EBBD193EC913
899787409973403e22a5125e42f8a6b6ee13e442069471167864ea8d170f2a36868 2198183B2BE2ADBC924DDE75551EA794895FF697FFF58FC24F8F4074B96C1735036B
9008ef370b76e526b368166fe1c1cd39a2263c63d064b92de87bc75224fa8ac3080 219966C5A6AF44E14C485F3DBD0DCAA1D2BA8DB2FAD3A6063907DFBC54DB0C3B8554
901669e17f00a357fb57de37377181154f97f9b0799704733cb0e0f91f939222360 22007C61D7E791F0EFFE61FE49DE095377351777C233796E3C3B76493BB9C08D5891
902191b4fcf294f45bb172b2e76da557a65ce992b15a91b1cc40c0d973285d126fd 220188CFF8CAC6EEB756CF0ABE5F5A77BD5100F96AFEDFD0228ED63307080927953F
90340cfbb68d5a6a4cedba03cce2f4570eac67c9ed2f10db49362ed8073f0ac8279 22028BC73DBF1486A8CBBAE3C2A090DBFDB78D3C62F09DB178EB00BBA223AD140645
90468bd2534e88816b5482e6fac424eb55bc650b9184190b46099d6fb9124dd53f1 2203B75794C47656E27DBFBF9E5695E704B4AE18EA08ACA6B60CA473B46905057635
9058ac0ee0b8eab2d277693f48735ad8f300cf6cd463fbf93adb5b5525890782a53 2204E6502D167CA1053BE9C8A37F18431BE64882149C65F47BDD1671010328FC7FD7
9066cec918827666c7357f3655414ba485b0425f00d914bfaeee2c3d7a84d0bb076 2205464D887D7965B8CE22255BE94C6D185D042C297E406CB8FEA4722686F0B1F3D1
9079d9ea93dd07c46ab3c1e717356d552ee07e9263454181b15874186630da766ae 220630CB7B6A59454807003F55C42D8258610E443A3D3EEF019E826ED8528FA772F9
9088ae80a1276ca0f470473989a350ced6365823780f11a0e1b58dfd4596818bfdd 22070CD5A59CF0F9525FCD41C0A368A954452FB1AFAF4C19766336E629B65F5ADFA4
9095be8f7240c6bf605f9240eb7fd65742ca687b2e33f4bd1f4295655a246c43675 2208D0C3C442D34EF5E344A819CFACC305F6831226C56160914266B1D28D74185B0E
9105ac29850ed6ae77b332d39fe441036e6925e4ee272356d19d53d7dc75e8d7f59 22090FAC89BECE59F6885F2E1394A596001FAC3C14C4AE3B287732A74624CD1AA642
9116efc87808da8bbd4baf1f73364a5852ae98dd5fa1344d90081123cf6f5ce301e 2210CABD334B5FCE8441F56E2FCC3EEAE0959D55D77119128D5486A2B3890E1DBD28
912cc52a2733089facc7a4bac3d34e4266891292d5d7fef591ea117948b4217515c 2211018ABA72A1442AD6946BC91FECC6BF991DEF9A693800F88FCD01DD8842D53A0E
9136e8d207e47f68e898902661c8b4fe2354d41c1771fb8b1d77954c61bc2ed2465 22126D87E0F2079F816DF768493C7075240C93B644EE1EAC1A1F2711CE3C5B6F7630
91435474b22cd9c6aaf7b95be5ba661cdfd9c242a92670fe737693b0f4f91115bcf 22136A7B57F1EA05DE738806354AC06F6330A38533E085E1EF6CC1BDD35A3F6DAAA1
9150fd9bf4034597f7e7f33e59b5719825aecbfb8d4b5ffbab6a3e4af26bc18c712 22149C857EBA17FEA216B731233A518B48040D40CBF94EA8E15DF7F0D97F71A4F3E4
916fa779cfe0b2c6aa2347e56d2bd44278d53cb64a7a0812d49ac1ca48b7ef4a347 22153AB674E1C4AE3F7E57DD385E1C63444E5B8EF4FDB9699B949B759F595899D229
917d33d6608583b47df4ca492b488813f3a8ae1c105fff4e33cd2c3b84d2448759e 22162619ECE920ACEA03EA27944046811AFD022372C017C1161A5D9974DFEFF4F032
918c6f815a55aaea04ccfa88e69efcaaaf67881070013232af550cc921559cb3856 221792F436BCC3CBAC1B766229EC03F717405C6BA98AF61B53AFA57A14B7F2D4815E
919667b174c25c6106b2a945fe98646215d431265b0bdc1648197be1ce3cd5757a1 22180733979B9FE7F2EBF30D6F43D5A1031F84BD428D30A72C71236573E05AAB9F71
920a29f56c2ca3ea0c273b0f4032b25f6a6902d042863b0b4d7eea37eef268aa1b1 22199D48E54C53FEFD797C9D6CEEF884247A495C8B6F736704478FB265EEDB2C014E
92135ac5b49af89b389c6f6fbdc114659b66a93ee01d945f90c9aca50654cea5c07 2220DC06AF0F99618F7D40617650FD9314E731D92207FFE12AB3DDECBB5F218BBE63
9222878070369308728a3cec6ab261d098f1ed1757d037dd64be6e8b13de34fc0b4 2221758374E04BA7A6B3E9C951D8F90287AD8C6485F5339624848692FD811DE08921
923cce4249282721e8c92d719122929e527f18310a06d369224a1be7b3379c49452 222243A3166E8A243C09AD0E674C1D486D4F59FC3F155A19D63A97CBB7B99FF5756A
9244a35c3ff2e1c6040700bab74ccdef3ae19d32798f53685279485efaa4baec658 222344F596F7FDB2249F5029FF35484E94C45FBAD23887ADF1F1F07CEC18C186F3C9
9255577370565de2352c00c16320f8ce9453a46cbec33e262e2988b5486194ba67c 222409FD4316EE5CFB825AB81F98AB45E118E7EEC24B12C968A4DC8F5A07545EE52C
926a043f82dd388640b9507c65d2ff7ee74a743c52f4ae7781bbd6d6ca936baf92c 22256BBB76A334615A272924F1868E2AAB61A3C1D0E82B661EA9C1B94B2EAC616248
92765ff20e96d6c1e4d8c9a08ad61b6679d17d7601e4c549f7ab5c7cfaef5ecf8fa 22263BFC6A074E90F0395AF08BDAD01BC664D35CE925F6F04405595BD5A8A009F16F
928316076dc752630934d8f7c6b4e2502995c86a0a5d70feabbf7b9921a34d1eb15 222770DB778E6032E3243476B874464269ACA5BF82566FE07660CAE36E35E6CDF134
9297f16ee82c83b5832fb626d826a9a7fdcee0e88d894bbe081c41e3c4cc7941f72 2228E82DE4DCFD2BE250662021E34D75944F3A93D799C3633FBC05451AB907B3E76E
930c9c5df08e42276fa4363e6386698953d28e6ff2a606cb21a4599bbd7b44574bd 2229C0DF833FDB049A03348CDEAB9F513F4251B69782EFCB7BF7D23A5844DB96A32B
9310a2fe3b479814555780aa5b28254dae5a8b15de7bb3ce9ca9712521ded55c243 2230DCE57D5C67D702AEBF0B8E2D333F98F57EEF40E66F956E98933A8C0E3DBB1D00
9324e57eeead692e2e7cb8a3bf95f27ced0b02aa6530b1deb22e0a26dfdc2ef71d7 2231989805A5D391A7728D51B18AE0FA5374AD3D78AF2B3F4C6CB32606657ECF51B6
933ca53fa5d8f6d7cfa8782283be7582d03f847e491dad5307b0297f280d51732c6 22321ED2737839DB3B83FC3C528DD3B9304F30DA69CA757DF77A57F2EE78A22CE58C
9341964a6782a1b2662d0387c5721b092ec48166e24320acd7a8390936a1e5a6478 223367244215DE18BCF06B4C2607D10368EAD71325D69BF3460F448A5E38A4D87BD8
93578c523c7d5fbb7a317db3d92315c627cbdf330abf91f1c292112cd496b872dd7 2234AEE6DF7CBE80059C2A83B08C696A8423FE23278F98D87173A9E686234B6E8B6A
93603cd799defa526cd09b4f17ff2b810e625924c26e717ccd2bbab2cb5519041b8 223541A1565DB7CD7B6E984DEE494A7B01B637E77EAF484C238B02138995BDA8F401
9370a7d0ac210a9f61b39197dd6e508e1a92546f26fe4fc598f57088e875b1b3162 2236BC2AB317B12C429198C61D6D0DB796E73D1F01A4F48E7D98A9B2B4F0106A7238
938a17fad3497f5c6fcb66877612819af131fa3b55d7fc59a218ae89a8f5c8e7757 2237F457195D09FCB4CA2D81A942C37D7258F523002CEFA1CB9EDEBC0FF97EBEEA67
9399087459d3fa475d4a2b39ad73bdd98ecce88de2b850819d78e87aa8a28f1a8f1 2238B0B94F8A355299FBF350DB9CC57CC348B817348347A92520EBABA10C972DA468
94077aa68b5827a2ff4c7b11faff85e3402f254b20b5bde0adde2e72e16c80cc972 2239E1D75411661B046544BF2723FF4B45AC1F3C41698192EDAEA808C1FCEEB0A101
94103fee96779d1009db314947953ee54e105c17ac62b3da1560e72713560f6d875 2240C52F7A0A857FE92008A5DEB59FF71B33DAAED2DEE10380BD00159522AADD72B6
942cc3c1eda5d90d354485cbe9c23a18e187c0750ccfeabd319c6d25384e3f73428 22416B8DFF757DF5A2AC8EB65977F54D3234B52B495A915C91C43CA5E08BB3F88634
94317aa2b7e110a052932a21516f3ea786f35c037090a16a541d06a66084858f6bf 224206FB1CC2CF016E6BCB592914E79DEDC7ACB9E0574E8DE0DAF6A12EA013AAADF6
944f50976df6654d871ecd0bf5313c2c7564e7b498712b78dfc436ffb4fc7f949d7 2243F1D7076ED71FBE9706E8CDFAB981D03330EE306078B7A2F954E5A230D5975793
945bb09aa95f4029e0a55d34e940962ddfd9c2376e4631961114f174819d1a00513 22446660D3CB62D4FB676940A2F08D727FA2AEFCBE4AC82DAFEEF86EB672ACE9A64A
946202447c343bab5cfa015aab1274bca708577cd0541c52a4e98e0f9d50eddbe6e 2245A094FE3697A275D68B3A674D43404E33F99836541F880846106385A467700E14
9470269ac9f116045f7f9d7f7c63a85c819f650c48f556e8eddcaa784f3398a2e01 2246FF13B2D5DD4E61176641A01BDB02DD95FCD9E8F7867EECB897301D2FE70F5091
94868519743f5cc8884785046abb0cc38beb60e007ccee2b15dbb5b3244635aa669 224760C1CB42875A052F4D53D6124E7D7E64030217149D945E58DFF20AE4267D1CF0
949ee1207fb5fc6af6d0ea150cf7e58bcccff105ace71b58eb54cf341e662478d6d 224852953745A4D54A253FB2AE3D37E39706B7571AAAED118CE796246940463E2D04
950a061531ae91eb67b9b47cd326cd00146b02743e0551b4df1d468ecdb47c853f7 22494358AE67AC7BFC8697CF929C6B47ABCA35F1F7E9AEC0F0BDA1BDA3C46A81CA96
951d077e45b4322e63060ccc34be2957610c5ba9f0e8281d1c8df25a894a2acaa76 2250EC40EA33D43AF106DFF90F450E7B24F7088A5E41311E9B82067883EDC8BCDDDF
952184975134820d87b034128a58791051e51825875a995ae6fc26f95e7f99e99bb 2251CB6A87C2A885AD457EB21EA14C919CE9F13C2BFED1652493DD64960EF0B77F65
953ecd5a76dd74a869fedc183aa9f83a4f6f616d20901d2c51bf3e3d549c080194b 2252031C7D4F88A7F87669A117DCB087F1D2BC31824E9572A3F3CD0C1171F118FDC2
954737b71e853a9eed6e85b5d4091c864694865a2b58d8c098ce8056182e6b110d0 2253149533BA921D3E005374772DC9A937B9DBBC40F6BB6BFBD9CD7021261D2C8117
955401a633dccfea0d0058dfe56caab5ab77d7899fd68453e961d8d9b65d90c478f 225431B526265F1A63525475398013F04B49F67164F032D2F3C2DDC16FD131C7F302
9567d2fc68ba6a8004303428a057f60015c9fe282fa070f24ba9070e927d0dfc9e0 2255A2F9FB65ECCCAD46169329B7C59A444976F34F301F2906629B3D30BE4A54C7E4
957606823067be707b0b8ff4fea6be69cb4c864b6d182bcc75a3806823d6e2bdb25 225677FDD85B8D52A42EB6E9B4B10C0C20C1A175AB640E476814AB3ED796B8189A3F
95879e5a5bebf3ebd0da5868e57aebf58af9a579db862c1df4e23a07f6c0e13217c 2257739C72975C388195E806E7C824571D4783F11B5F1889192ECBE6DCA069227164
959f63c488c6fe36e26a7403b57472254231145be96ec7a5251512d5df0aabc2454 2258C2CC7FA6F6974CAA8E8DA1D36DDE0F6D84642CC593FBD38744296B82E44AC1A5
9605bcf9bf2f754d1de031e30711d4772b2bb04e1f7e3de4e45b2ead29174c8f002 225954E3D03ABC8B3DA3F404CCADA635E1B497C482A2A657E4E6C9C21533B3D1672A
96145074ec52fc74423af9a48102e99f49c0b7127f84fc43db4d00bc20243dc255f 2260022D1935DC96866AF1BFFC7A438014B5902A55B0F6CF2F8AE22F37FBD6545D9E
962a38bb516f3dcf1a9d6d29e3ff353766a34703fc9c102ae99553a3e845eaf43bb 22618FEC766BFD055074C5D637D7CF1805F02C4559E7AD0F0C3E68A9DC74A9D79B2F
9634e0a5bbaf4ae1caa29619bc7109c577b21e65a257e704fe155e6cf67fbb5a579 2262FF0D43D16E0D780DA8251F4D0C298EA47151D9B41FF20364B875ADCBEDB9D8D2
964ef7fd0eb3f3bdf5e2829d706c158c2faaf73e3b08f22aa2124c9f5992d2aebdd 2263E139D55D686C7E96E4E59D476FD2FC56FCDBA6777B31BFB424421ED6047D0736
96577bc5c4d6e8068cf4200020058c8cf0a97f503f844947c6c776a4347166ab3f5 2264338A42C2A174C3E0F92DA62475947EE726E1C877B97AE9E1A6649A0CB6953A8D
96678735d9389506c9e446b26a29106ed9e7c13ec10cce14c374b3102b4eb2331fb 2265B701BF7A8A91680293C1F5DAE96E1A7A9C9012A54077D77F63305D13F623F9B8
967631b7144d534d34301fe5c652ccae8b9f161f7e4dbbd93ca8c2a2979685ad323 2266ED4D7FD2F08CEF3916F1EA9CBB74334DEB94DAC8D2D246B81D8EDF863AAB492A
968e99925b89ef3768ddfd6ec1c6cfd112fe3e97a68cc6f64a8a8f0a39c231b732e 2267E57E8EDF86F51C1705B63562D004710A84EAD6E3E6E195CBDAC59C6559093C11
96952a08770f79e2a039c7b4cc08a51007d47c11b65279d8ed57d9c41d8ae53cc8a 2268233AD680967E1EC25734E2F4C6DCA412C2E0A836F88D24D6FE389DDA01FA4306
9705da075699d777305605fc4638f3e8de5a9d17458a1568d00e7bd7927d8e0adf5 226990CEC6D8F7061643F30D1874BE32DBF1FA9D3883FADCE79A8521483C2AD47B0A
9719708a3dd7a65ce47399196fc467ae3f078f5b0508fadef1e024087d2ff0136f2 2270CA1E1FA73EA9C4CD1348704810FBF3EA97132DFA64AE2AEA572E8B3C8F56B2AC
9727ebee1cf8137105e4fecae1ee5065b228563795be71d6732fc1e5b3a6f2d50de 22711D5C87E48486591A3C1C4760B0E12B51E1234E945ADBEA4BD8C6953A5C3B4BF2
973be1101e17d2dd9782b044b7726acacc2dceee64b214a8b9a249f02c92c2c0b16 2272D0372D0210175B00375938695CA4A2904943033C1F9036FA76EBDCFA48841DE5
974b952bdc2603e4394b1f4162a47f66ba9d9b2ffae44299e0c2fea89956f6b950e 2273394BBBFE6F613682D938AB70D416CD39E8562FD546F1E50BFD42D0C60D8E87DA
97568254ca299f7277931a703cf32e118cf84871203ca3b8b8ab876c0d67a4606c5 2274E14E79860B37E3E8AACFCAFA98EEE36E181581656DD25A7835DD6BAB3830ED59
9767f4b0e1fe531b466b4df9012439a2b67fba717e5ea09785bf8e7f0c6ecc676c8 2275A43AB87815C627822DB3D6E1566AE808D65B12481CDDD1FE7A73DC4D181C5916
977a42ff3cfb0dd3f49d92d2557d3bf269a8ed6d34bfc1e8fc20004bdf4216bc35f 2276886C28EF3E057C202CAD95C87793D5F78FF22EDE240535D6E3DC2BA4865E3562
9780e5e26ba57cb96ed06b4b1cf08ea563619494980ff7dceb8cbb7211fd8af69d9 2277D7A3B0B34414144629AA8E5986E337E7AD09BB07B4671FF09BFAD30292186B7F
979ff8a19aa3f36ed3686b735a04a66996510b60d53c191bfc62357acb54c3e68a5 22786BD8C29D65B4356C4E2C8E6ED1E2D6B1093F9F3749B84F64B1FD5992C1EF09AE
980f78b121e5cecfa3171af39f0afe37a4a817d8f76c584321ca56b4bbc18193bc5 22792E4E0F5236844C1052D0EBF84B621A37B09C82C73AB92A7451F4AB96F55DA6D3
9819cd32fd33c270549d4faa27fdb9a17dbbfbc239ee7e1fbf07129a9743036f229 22805FB7C3A342EC821ADA931C653006BF3BE90ED148B99FE059B9DF5536CCD95377
9822d0efe117baa948b65ebe4612bba245f0a9f940618ce5b1dcf2d0472eac9e9a8 2281E0D3FE9C05F30F995C001D5F190A0BFCC817D5DBC16B44DFEDAC2A39A813FC48
98361c0498fe43182ed175678e0f253584a15f794f667739e5d169a9c2945d284e3 228291B49E7775375100F55E9F16B3DF05B11CFD93731EE7455CCC4ED0ABEF6C73B6
984655e92fc9e06554a53da6898a20f249245ea03d5d074bf1bcb8ea47ea656442f 2283DADAD2702D31876A1CFCE58D619A66DF8CCC311631985E922540F0D3D5236EA9
985bf6f58740def55562cc298fb17576e7233ccf453868de2d57670031ddff491c9 22847982C05E30482CFBAB903804529BEFFC802F9800AD9A061C5A9DEFE69400B2EF
986911496002b06e5f5f95800f62565f33637bcb9bcebd617ba4b9c11724532e918 228505694742221D464A6661A7F34E6D65CC45A36D5E736F1412AECDD420CD51195E
9879396fcd4e5300b7f8a2a213a7fff87d0f5bc29c3ba1d753ad294b4dd7fdc7268 2286AACBEA028E44400CF14E44F283F129D896AC099E3A80CF8CF84F57C0E4BCEADB
9881b935ac8d29c4927ee6cd5e0c9d8cb3ba39a81966b193f939510eac8ec3b8799 228769142DB4E45865796EFC447255A99CCE4EC07AF8CBD2560CC56845D97159BD8B
989d68696fdbe0ee64bd9ed50ffde5d53adb1ddda9e6f70252d29a118c13c04f2f0 22888EEE2C388AED3B21C2EB19D38EE7EF00B7FD440C38A1BD8E6A11149D6BA9283C
990b27a52df224f6c668996d2c921cdd34db44dc473d721b22b9b65e3bfbb0f1b96 2289269D2E0AB1795DA66CA39727598CDE36A037F2FAFDC119B5449795A6AEDFB0D6
99117c6cfa9cf95ca9cf0e989b3a34156579b9bc0ba2633872f410b8d5541f2c6ab 229002DDA6976077056F38E453DACE9E719FD335668D0308E1BDC9C039C5D12C144E
992c2934395ff4785afe71c203e4790b22b032007258be0c386abe919fc92692864 2291F074FC348973D42CB83D61BAA2EE3C43062E6959165E9EC2602F42298810713A
993bf7244be4b30487a20f9190be0714cd757e57701489acb530d6f53d74db358b4 22929B31042BB5A1A31266E9604F5428E00C21C1CEF23C264CAA7ED1498203368309
99440aeaf46b1773102a23150fc7ced3b97fddbb0279980f3bbd3d7902cc4ba42b0 2293F97CF308EB489545B7ED76123320FF3E98ED91EB5F18A4F7D911D3EEADD41EB7
9956633482893ced1635b1917723d80fa2837fcd447be02514de49a689671d10f14 2294B8921ED1DFEDAAD93A07401077BAEADD59BAB0E23E86CDCE1D9FF33AFA5A22B6
9964a29666af945b65cb7f2c44da4f9ab0b4a75c9b6678bb1ec94756191d6d0ffd8 229521455429C82A60188A9CC302686387398B27E1352493EE662FB80E0D2F4448FB
997b02fd55654a83c0c112e27c09a2f069a791a4e046db82f990b427a022d138d14 2296963304426DADE00CD6E6894AE12715154AE64BF9BE90FCE97C3147008F00F136
9987a88d61c5990438c17e103cb0185254eaaf9686ebf74dda2c816abb11ba370ce 2297FEF0E8CA99A6CF8AE101D94B52602E22933C091369BC8AA064E0AC4EE68A7C1C
999fd30ae51a244688f09a9cb7e6838a09c9d5894d7ce47b905e69a30109908c072 22984309D6BBD6B6043F41C732FD622ED48AE06ECEDC6303F1592B79CE46CA4C8845
1000ce234ebd1e4d3e42685121efc15c3b5050bf67e3e60f20c0740855c29f92f1ac 229939400BB3DF940EFA1C84D534874007249ADA3E06D08D112D96A5DF0FB3DAC7DC
1001c2ca1e71a1b9ba691ecf8cdd7f6f423edd404950aab4de3bb699d40a3c17d46d 2300B6211E6A24365C3791605F84F39C859B3BE698EAA1ADC90FF68C556ED6A60335
1002cdfae521e5df5a2b1b9b824e08c5240a47e552425aa72992e6f5744ba5fcb944 230101F5E1C090E3A641843D4AE30DBBE4C189B5B5F89B0683474C2B05C44EC07ED3
1003a15a1593b410278315d8bfb417b3267018d73a48d341978c35715732e4205eb5 23023B46E63C23D3E8DA5DA36488AAD1C3D83D53A038FA1F23EF76E43D5B088D0A38
100439a2a8c026ae825e169d6276aef72d490fabceceb784e85e9069269d9e4b67ae 2303FA8A6BF8B50E61083FD9F8ABB5D85D4C18C17255B9A042CBD9DE2B1953F12988
10054f44415b51e89fc1e488c23589f081ac290e634dae0db782e34d4d254dd407e1 2304BBBF028A9223883F9BB654504DBE5C353EE60A5E033A38DC5393FD4C40408AE7
10063183d3c16550f3519afe92ca449a3ae221337a29459f070021e9fd91bf5b2b3b 230549815B5F2755B73B9B5397599CE4A935999B70701E7651148B2CF46FC1B740EE
1007824e102bc7d1cfb4b998a042e991ee4f32563f289a78c2b3c1834820b85f19df 23063D97E3381F635DEE68AEF01B942C5BD89B956D79982A3403BD54D8D22E4EBB05
100885bf3f3a57b3731f098a9a9c4336aae9b9129b5c17054971d518c02bf8e1aac9 2307585173AA55CDC6AA48050371B243E1B0966F05D0A82089E2FA3670AA62E81DEF
10091dfb1614754bccc95a7cea02cc467fc45cfc2a731d7ab22eb0b4c530e6e807ea 2308656644E81D1BDE643F11B2443FF507770909B0AE054CD40FF05CA14BB428392B
1010c54e2a8458c67c98d19ff7ed3a8ea82be1cdcb691ef2403565b4a26c6c2866d3 2309F935DCD3E32E62A547C003325C8F250AE9758545EB67E078F2697513890EBAE0
10115338a30eed584320b8b83268f4cd27796210a8fa28ea0e8e0628931e6fb4eb55 23109588F48C0A10B69864BA960D8D626027B44100380B53E4C2F5932B239F9F8C94
1012337f21934715b75c898b96d91a401397b5e82a0183d083a900129e101050b907 2311B0782041128675069491EDC6393BFD9BDBC2F4BF31F70D77135241629CA599EA
101362efaf4bbbe1ab96d4f37e5dcc21c09b95761aefe52c9655ce7c9fbfc37900d6 23127B17C74542892876C5CE297F6C23FB62B6AA682136AB07E51153C93B32CBB0DC
1014b759adc367e911a7460ce78295101ec74be4e51a5796a970eb6fb170db7e7dd7 2313ED323005754A20A64F3D9E308E4A41F4549DD76E9F2F1D6A2A01676831AEBFD3
101533c9de60807411c9b8ed17b6b2f88c2fdf2cc73b3d4b83a044d37e9f8548476e 2314B4171EFDCB28C5442BE496A96D13ED2C4C25E1A873151CF6ED500EF18B733E14
1016151cdc17b60919a4fccb7078c842d8a675b45412432e63e431d4a6e44e151738 2315061C6B3455CD1EDDC5E481B7BFB2614856135A86B878F86765CC77527581AE71
101794ce686578051b8f65734a2d8bc5bdce212811c387b61e3455a8c972b8b02352 231632C02219E85F3B956F30F3399AFA3592C6701CCCC59E7EC7C5C5CE77F653FDAF
1018aca742a11f122e6873316240d04af7b427aec5da1075eb96fb9289c1504f4290 231773BFFA369C29D2ABDACE28F121BB6F8395DBB21EC64F0F69D1C7445D3004D45A
1019ffb530a9bc646f87beea36b23827f802ef4e81bd3f6cd75fa5cec834b0073fee 23188F3F541EEAAB3BAE066D98DB760D2FDDFD3D16C84CD797C1810C55505D450256
10200eec7854b972c737e2ef18b593609664e15e792cea6642df84fd6213b8f99660 2319DE2B9B1556981C6250ACBD9AEE22844A329FA077387C2319E7C86F65CC173576
1021eb2126124d5587698cd74734106012f2ce06554f7d9ccb636f8f086ef6102347 2320429980C812BD83ECE52D08E83FA9CD37F1BEEECD76E6909031B3B449885969CE
1022a279ea4125515d69b14e2c44f221b5bfef0aefd92aaa29809a22387247d63f10 2321752ED4874BB76182CF57EF9ABC7FC6A56E92C9795539B579DCFDCD94BDCFFF99
10233fd8b434c7eada434a923a291b4ec1ae61779106cc88a11fd57ecc2e7c806afc 2322D6B0566A2F144874F369C67ACDAB40586A33CA01172C1DC4ED397DAAB6937ECB
1024d7447a236bead87ef255403fbb0c5ab3ccea5b904fd0d131d862499c44e34046 2323C03CE8A8DE781129AF903A2071B32CCD999C06C27A66F8B1306FD73AA6311D73
1025e935df39d875e387d3934dcb0d14c9ff1418c34c73a8f235d96256173888006b 2324262D996D89D49CB5BE569EE0D7BA248DBA2E17C19C92702FDC0E06AFE8835CD1
1026f7903958de56dc06d3ef0eceadcab303e8d84e61424bcf93069fd01ad9609370 2325CBE3F9C99C3BB40E515FD7B16BA576825A5C05F297A13F5B8976437E10CC2E46
102795cf295b432536aaac1fb82ab2905c7d858a8ab8de9eac3786b259b510ca58b6 2326693D1A4083AAF2B7A46C4E46F54CF6DA89266D1F965DCED45B76E61DF587FA2D
1028337cc475bacb6f6ecc606bb525159b2df4c57e647650bc470ccb764eca9bccb3 2327766F39206C44E5AB89B00A5DE491BC8992BC31C851B3DAAE8B302E79D73A9819
1029637d917d37b02892f9acbb8518802bcf0f007a7a341f39368cf268006aaed6ae 232890A0DB13C2E3338ADD04DBDA9E67FEC445AE2D886E1B38B1F160DF505C6635E5
10305e94ae555200db288442b17a6a2a23cd401b859a181bba8b810b6f75f109673c 2329C55FF27D8F388FCD81BEADE0FB3708C00A4BDE339FC8B00BD2926B9A2BA6A300
1031055c8e9d284aef2342d7443d3ded26316a39c4da085f8a40a484c224b7970352 2330D5A60076F863CB74628D8DE0237439F1B7C07CDBB2AE6B759E774FEC3F2CF6D0
10320d4133ffa642ff325ea1884687289b9527c8f4fcd05cf01bc53f286001be102b 2331C964CB8D35E85540B97BAC732278341BF05B7FB7F927C13BF67EC38B752B05BF
1033e5eb76b441d7af52a96b1ec8aef732e18c665bc852f771b1068f40c3d1e898ff 23320085886EB77492E76C28E88692D219E16879EB0E41C9020ABE935D35B465EADE
103461aa94de674e9ed9f0bd56ead9969bae7548017e240b82d884b5c5c01fc131a8 2333DB47C90FE2589CC4F1589D571180A8A4782AE1E9532FE5FF83AFBFC657B34121
1035bdae9c7576aecbd5e0b9b5fdeae734713e95f82bb47a48584b1566e19f0e355a 2334A995317A6D17310C8D714C5E590A98CEC6898DA5055F9BC4C88403B63255CC9D
10366bf251bd2f3862bbaee51d860bb20692a05d2a405796f4604e79a04639211acf 23357B64FE2CD0CF3EA724201E9DF5271C9A5273D75452E8D7EC353E7D81E92D04A6
1037e93fbf04af99024fc640c1867af9533195056cb4bd7791f9cfd390c6bf2306af 23364871A8744457EC29CE48B19D3804120D21DFA6034A14B252C7688B62F09861CA
1038163f363d084389c66c0468907ae1d25fcabe43ee8db1f1e7c59f27d1cee63e04 23377BB9F160120DF141893AD510C29283CF8C5625627487584F5D9C80390F8CC18E
1039a2c87fda4383cc95face761d6fb88ec6274164fe55a62af223115117ee043a41 2338380BEC846083E33344F425468DD7C19ECFFF0D16B079485659EA94578B3CE9C9
104048b073cda14f31c42e59308bcdd7681df302405dfe81f01e9160c73a282752b9 23392D3D497324077A727EF39F893C9B3740FE2E9D8DBE9CB4BC244D9DA6259DCC3E
1041704917012171263cdc9d25ad539ed4ab7b3100296fb995f2c56f3742edb36417 23405A2E64AEE6B2FC3A3E5AC524756CBB7D7854CFAD833C0E4B3D2A68B2366102AB
10425ecb202ee9823d2c11f19a9f8e474fcf201cdba0d0596168ed07cf9faf0ff598 234104094D88D3F18C3AAE9A6FBDFD2C2EAD99224C88F82E3220BB28E676941F818C
10434287246ed6c0536e023ee15cc463e319faa8df095854f059b7c71033c6c8edfc 2342D45F0FB2F55C4B77AED5A57BEEEB868046CCEB6DF1687AB3C6014940AFB1A6FE
10443c8cbc7be7b8b01ebd07712d03c1 234304844DDDB5D5A1A2EA65B6C789621A07F8AF76573E7BA2BDC85C893D5F4B3EF1
2344014A08B5705B5F8F86CAB5020D1ED1FD9ACAB966CE06B883E8D1DED7CA22EB4C
23456799E68CFDB502EC670D15B0A1CF50CFDC11E8869C21CCA790046C2773626A1E
2346DC7B140E2865F915F6AEB7EFACCE030B48991EFB54A88CED8FAABD94BC7D4F34
234782B0669F0885D1EA3DBFCD53064B70371658095EA7215574250373D8383DF962
23488957602E4F8D8E0B35BA9B0D4823485953B3CD3EF9D5B561D8E4B211C4FBE9D0
2349A7349AB865B5A54329A6E5EB809F959C46437306DE6CBB953D59BC1D0619E23F
23503A9AF33258C86AFB2F73E2B0C49F62AD946AA8259A8B1D882552729A6847D7A4
2351F886B9EA56ECAF341FDECB9490DFB7AFA506A3FA669B69FD3C31C7E4DEB288A5
23527D94B05643000E9B8D8A39D6B9EB08AE2741F2794C10799B06FE4359A20D42BA
23538E313C84F7694E7D9735621ACF85D920A9B6E343CC2A8FDA44FCF69B9F4B04D0
23541DC6057DBFC2B0085C29A95EB03DA57125B658AFB0BB255792D6D7039D1FEA75
2355C28531E7280F26F57845D24204611DE9ED7854B7108D3C1511C95A9D188B89D4
2356E33E0CA5168252B138217E94C52C3E21141C6593A1B8086692DD9F4B8FC20B85
23571B1CB51A7D983EEB01DE0AB2536A6DE82E8DE2ED92346B5918BC5735835437F8
23586CDD43B26AFE3816A6F76087D3DD7A9892460E6B6A09E5CB823BC5B7B93CCD6D
23594F2407A6573408317F15803ABC8777163DD6E1BBE517F927C34B1F3249863949
23601AB1A1CB0C4E894BCDE243A97EF9EB9C673D4EA0F58B2B11ECD0C7F700A5BEBC
23612404C7C876C281E433DA9A039F645549B32A224AAEEB83C49921E0BFC0A3B66B
2362FBEE976F069D256717A40D4950FBBBD20C626217A45A4B81E98B67D920CF6596
236326B51D88373B619BC2ED5104DB78936B2F50E449E68FBB05CDAE4D7A5BCE7561
2364669EDCF29419310D9EC11917D3D726F2E736A78CAE3D1B2564F7A5C35E21CEE3
23655255268AB1065F2929C07E161728190859B2C076A8411B42EDB079468F08130F
2366F0C8C9E118926FCC6AA7E6375997266691C1E08BD0AEC4036AA977995A2D6889
2367861ED8B5A653D68EFFFBA64D968E675949F1A7886969D17E57EA780B1BDAEDC1
236800063E0F0CA5DFA7A88EF38810F06D7C6E504512FC8AD2A626AEC53FB6FBBE49
23692ADC8189708529FF7B5DCF6C3B81C4183FCE0FD0C7F6B0713475C955C756C7A7
2370366E444E1804B5A4823BA87A965BD2724F9001D0758578128A95D232F3CBC38C
2371F3B76B92097A94B6E52792CE81A458755AA6246DEE8566566A1F5E7C9C458001
237222D55D4A575A91CAAC7F6AC6CAC1A04D0EE2AFE20BCF8191C0F7F147A93DD114
2373F7760ACB25BE24945AC1FEA340C1F0051D0A70227B35B4B35E7C7A8C976D5380
23740506923F1FA5CB0CBD9F968D068DBF528C83F7023AB1AAB55A523B4D711B0DD5
23759987AF3B59B8A361F8F2D12E639FF368D6C892FD7CFDB8A72E327A4391E45DC6
2376C5105F51DE862F93B03A24C9418E59D019445473A72AF9870D32D5DF7D83683D
2377FEB4BDCCD30BAF6B590D49CF9D875B309A944A99F32AD738B618A634D4E46B69
23782F5431B34B0B08C9D6D400948E6AA7120830EB4B34B59FDA0B150D035C040E6E
23794C000633E5954C2944481154D16BB28F88CC5E36842220F4943B0272AC32A322
23807A281EC4DB95F4A9A493E3DD868DCA5868184C4CB4A16D0874C9B8B9EB48D724
2381A498F77B33BDC6C51B6791F9B47C6A95437F537591F5FBE87F7FD7BC7005EEA3
23829A649CF301F783F3A79E6944F6C25D39708C553B117B05C53FA39EF76B2EB828
238313C8D18231BCAA29629EF9E81B0DFC6F84CE4886F48588F399E21A1EC805DAB3
2384
10450000000000000000000000000000000000000000000000000000000000000000 23850000000000000000000000000000000000000000000000000000000000000000
10460000000000000000000000000000000000000000000000000000000000000000 23860000000000000000000000000000000000000000000000000000000000000000
10470000000000000000000000000000000000000000000000000000000000000000 23870000000000000000000000000000000000000000000000000000000000000000
@@ -1053,531 +2393,479 @@ a2c87fda4383cc95face761d6fb88ec6274164fe55a62af223115117ee043a41
1053cleartomark 2393cleartomark
1054{restore}if 2394{restore}if
1055%%EndFont 2395%%EndFont
1056%%BeginFont: PLTT8 2396%%BeginFont: PLTypewriter8-Regular
1057%!PS-AdobeFont-1.0: PLTT8 1.02 2397%!PS-AdobeFont-1.0: PLTypewriter8-Regular 1.11
1058%%CreationDate: Thu Jan 07 19:30:00 1999 2398%%CreationDate: Thu Apr 13 18:00:00 2000
1059%%VMusage: 1024 30414 2399%%VMusage: 1024 30414
1060% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. Adaptacja PL JMN 1997 2400% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. Adaptacja PL JMN 1997
1061% ADL: 772 228 0 2401% ADL: 489 178 0
1062%%EndComments 2402%%EndComments
1063FontDirectory/PLTT8 known{/PLTT8 findfont dup/UniqueXX known{dup 2403FontDirectory/PLTypewriter8-Regular known{/PLTypewriter8-Regular findfont dup/UniqueID known{dup
1064/UniqueXX get 0 eq exch/FontType get 1 eq and}{pop false}ifelse 2404/UniqueID get 0 eq exch/FontType get 1 eq and}{pop false}ifelse
1065{save true}{false}ifelse}{false}ifelse 2405{save true}{false}ifelse}{false}ifelse
106617 dict begin 240617 dict begin
1067/FontInfo 13 dict dup begin 2407/FontInfo 13 dict dup begin
1068/version(1.02)readonly def 2408/version(1.11)readonly def
1069/Notice(Copyright (C) 1997 American Mathematical Society. All Rights Reserved. Adaptacja PL JMN 1997)readonly def 2409/Notice(Copyright (C) 1997 American Mathematical Society. All Rights Reserved. Adaptacja PL JMN 1997)readonly def
1070/FullName(PLTT8)readonly def 2410/FullName(PLTypewriter8-Regular)readonly def
1071/FamilyName(Computer Modern)readonly def 2411/FamilyName(PLTypewriter8)readonly def
1072/Weight(Normal)readonly def 2412/Weight(Normal)readonly def
1073/isFixedPitch false def 2413/isFixedPitch true def
1074/ItalicAngle 0 def 2414/ItalicAngle 0 def
1075/UnderlinePosition -133 def 2415/UnderlinePosition -133 def
1076/UnderlineThickness 20 def 2416/UnderlineThickness 61 def
1077end readonly def 2417end readonly def
1078/FontName /PLTT8 def 2418/FontName /PLTypewriter8-Regular def
1079/Encoding 256 array 2419/Encoding 256 array
10800 1 255 {1 index exch /.notdef put} for 24200 1 255 {1 index exch /.notdef put} for
1081dup 33 /exclam put 2421dup 0 /.notdef put
1082dup 34 /quotedbl put
1083dup 35 /numbersign put
1084dup 36 /dollar put
1085dup 37 /percent put
1086dup 39 /quoteright put
1087dup 40 /parenleft put
1088dup 41 /parenright put
1089dup 42 /asterisk put
1090dup 43 /plus put
1091dup 44 /comma put
1092dup 45 /hyphen put
1093dup 46 /period put
1094dup 47 /slash put
1095dup 48 /zero put
1096dup 49 /one put
1097dup 50 /two put
1098dup 51 /three put
1099dup 52 /four put
1100dup 53 /five put
1101dup 58 /colon put
1102dup 60 /less put
1103dup 62 /greater put
1104dup 63 /question put
1105dup 64 /at put
1106dup 65 /A put
1107dup 66 /B put
1108dup 67 /C put
1109dup 68 /D put
1110dup 69 /E put
1111dup 70 /F put
1112dup 71 /G put
1113dup 76 /L put
1114dup 77 /M put
1115dup 80 /P put
1116dup 82 /R put
1117dup 83 /S put
1118dup 84 /T put
1119dup 87 /W put
1120dup 90 /Z put
1121dup 91 /bracketleft put
1122dup 92 /backslash put
1123dup 93 /bracketright put
1124dup 94 /asciicircum put
1125dup 95 /underscore put
1126dup 96 /quoteleft put
1127dup 97 /a put
1128dup 98 /b put
1129dup 99 /c put
1130dup 100 /d put
1131dup 101 /e put
1132dup 102 /f put
1133dup 103 /g put
1134dup 104 /h put
1135dup 105 /i put
1136dup 106 /j put
1137dup 107 /k put
1138dup 108 /l put
1139dup 109 /m put
1140dup 110 /n put
1141dup 111 /o put
1142dup 112 /p put
1143dup 113 /q put
1144dup 114 /r put
1145dup 115 /s put
1146dup 116 /t put
1147dup 117 /u put
1148dup 118 /v put
1149dup 119 /w put
1150dup 120 /x put
1151dup 121 /y put
1152dup 122 /z put
1153dup 123 /braceleft put
1154dup 124 /bar put
1155dup 125 /braceright put
1156dup 126 /asciitilde put
1157dup 161 /aogonek put
1158dup 162 /cacute put
1159dup 166 /eogonek put
1160dup 170 /lslash put
1161dup 171 /nacute put
1162dup 177 /sacute put
1163dup 185 /zacute put
1164dup 187 /zdotaccent put
1165dup 243 /oacute put
1166readonly def 2422readonly def
1167/PaintType 0 def 2423/PaintType 0 def
1168/FontType 1 def 2424/FontType 1 def
1169/StrokeWidth 0 def 2425/StrokeWidth 0 def
1170/FontMatrix[0.001 0 0 0.001 0 0]readonly def 2426/FontMatrix[0.001 0 0 0.001 0 0]readonly def
1171%/UniqueXX 0 def 2427%/UniqueID 0 def
1172/FontBBox{-5 -232 545 841}readonly def 2428/FontBBox{-5 -232 545 841}readonly def
1173currentdict end 2429currentdict end
1174currentfile eexec 2430currentfile eexec
1175d9d66f633b846a97b686a97e45a3d0aa0525392eecac163e584a9104d99ad0bc 2431D9D66F633B846A97B686A97E45A3D0AA0525392EECAC163E584A9104D99AD0BC
11761b1844a0e222653fa481b8809b26a46f4c483a5d7e95816ea6582584156cfede 24321B1844A0E222653FA481B8809B26A46F4C483A5D7E95816EA6582584156CFEDE
1177b994adcff4645140e3617e4d7e1b0e4541cb9f562e55829b4dd880aabe2229e9 2433B994ADCFF4645140E3617E4D7E1B0E4541CB9F562E55829B4DD880AABE2229E9
11784a9fa259a734d29bba91ba1e2055cbea4339bcbff98d32ceff11f296225caaba 24344A9FA259A734D29BBA91BA1E2055CBEA4339BCBFF98D32CEFF11F296225CAABA
1179dca10577a5d431b714726c1278d8101abd1bd8d0bd0174fff9148f8c61c241d9 2435DCA10577A5D431B714726C1278D8101ABD1BD8D0BD0174FFF9148F8C61C241D9
11802ad360a28616cb4a0670c1bf105bf4659adeaf285b288b8c45ebb28817b16fd4 24362AD360A28616CB4A0670C1BF105BF4659ADEAF285B288B8C45EBB28817B16FD4
1181e84aaace8eee3ff662c0a331845cf93764ac3d89dbd552b91a1e9b652cf90846 2437E84AAACE8EEE3FF662C0A331845CF93764AC3D89DBD552B91A1E9B652CF90846
11820db65cabc15cd4439ae5b5277f193d525319f51c7e4782f09759a87e1b37a013 24380DB65CABC15CD4439AE5B5277F193D525319F51C7E4782F09759A87E1B37A013
1183c4c25f5c7c43490b50cce7b9c9ddb33861bf2a2b755fc0e3526a02b7c2134177 2439C4C25F5C7C43490B50CCE7B9C9DDB33861BF2A2B755FC0E3526A02B7C2134177
11840ee0df579b43a3965daf9548ef0e6a5e88a265dd968ceef0372f7433a5575690 24400EE0DF579B43A3965DAF9548EF0E6A5E88A265DD968CEEF0372F7433A5575690
1185db0eb58eeb024104a2b925cd1b8c8971d80232693c6e616e78306ddc79494fd6 2441DB0EB58EEB024104A2B925CD1B8C8971D80232693C6E616E78306DDC79494FD6
1186f4cf9a1be8b2478b8c2073f3dfb2ac1b08a9f95e5a6129bf96dd6f356e3cfb10 2442F4CF9A1BE8B2478B8C2073F3DFB2AC1B08A9F95E5A6129BF96DD6F356E3CFB10
11876cd4681b468893dcdd5049b6664bc42200513b9cadb615879e41d6190aa3a0da 24436CD4681B468893DCDD5049B6664BC42200513B9CADB615879E41D6190AA3A0DA
11881c06f42c9aa4fdaffc058871ff664d81b7ff38800c5754eb41d12cd815112403 24441C06F42C9AA4FDAFFC058871FF664D81B7FF38800C5754EB41D1244C5E974D96
11896ea610af0867c9ae27ca804e973a275571270ae4ba32bd77b98ec59b49e79468 244575B6FFF16F3C96BD9BE14FF20C785A6F46E7AB9DA0A6025784AFDAA74E9E69FA
1190b5528f5b5dc8bcdd4f914bf569ea1f9ca8a732a1db6fefd3d8a2b222301fd738 2446C88CAE97BD8239E974438E141CB19E762A1FDB01DA5EA72FC2C4A95C05EDB8A7
11911915d2ba0d44855014e51e668c3c7938c812d690765d217b76b59de1a9aee59b 2447B96E93483B35288221D856957449AA4AF7FA6963E77ACEBC40FC0F4228F77FFC
11921bebc3e1d081d58da932b2554e88fc48b08d9412bacbad3d5919e0a3e935aa65 2448CA2F2F7CAFD93CA182B25CD0F7F8387DD8CA44A544BEE210382DB0321D08CED2
11932c0b70f4968ea4a18ec26969599ff82a80bee936aa81cb3de0f664f06a8e4988 24491EE48F9FC2C35D851EE98AD3863A0A6C40428D521AC56BD90E5D14B07E2D70F0
1194851f77b198eb86f6831b6a89b1b47f219461c3aa74694597cad4a67b1b395e7e 245084A5A74282463E426240BB2AECAF921477FCD299B2E5EA7AE199713BD4573977
119563879530365d05fa84eddb1831eff1e3f220f297cdee6e7916ca9c2100fa3dbd 245197B1F5E1DF730CF36E7E0DA7F9805EBCA7E545DC35A60B9C93D1A9DBDF00700F
11964824eeba0fef7cbd332eb57640cac849bab70c11a22cf7270978e6b36ec6ba4f 2452D1893286ADE1BC40550DBD475801848196FF59D705A0D83B4647C244630A285F
1197e46e61b0482f8ff93b83b052d0dae19eb930485888b2515b5e99ef986cda347d 2453751DAF6D51E9B9D5CB3E7541626E069F54C8A0818C4D8691E084B8B2BC1DE7C5
11983cdc898d9dbae5f5bd65e1579292491271a92beedd52409ce0aad96f24eb873c 24547D2992EB24625547D67BD112B59BA801D75428F331EB561A6F257C8BC677E44A
1199d641cb382d45493d7a3d3093379ec38a3a7ee353632ae60c37c58fcf4fd48832 24553629E20B6B00AB8DD9359F982E1B59361D233CED47B7985A34DE5861E0AE858C
1200e227a72a1844e6702960623999f7d80cabd3f952fa94fe5a43c23651ba61f05f 2456398D95179E007A6CFE211D8D3BD07A191CC377126A41EA96394170A5BF25824F
12015872c67d078cab77ac7a46e6c1f6f139fafd5127c35f5258bec0b1286e9a3075 24577EAC28280B1FD9CBECFC7CE7D76F3A09B3BF227F67DF57D19B3F873D1E7E46FB
1202292bd22a1a601d90d46920730086b9a3d3e1adf93b68498646bce69ae1b80e60 2458042B8425F182A1ED39553AF1119CB14C388EAB56D36EC43623539BAE1C2022B8
120307be3225d4c0ec82081b8b0f50a66af49829bb3b162cd242afb9ed4e7f34f492 24593E3269E878E4DABE11BCA251600788A06FE5A8EFD273C02B6815F111514C2BB2
1204737d88a77c5c5009da8d86a84e1fd494435ef96c3989c5b65e172f3ccf791f6e 24601B16C7E4F8EEE21D4959D2B78540E1566B5CEA3A7F4143DCAF0C973C32B448B5
120521ba9660d75dd722c24c9755ade1e0738679c6609d00593ffc61c11b91777d82 24618F1851EC935A0A0CB753F67FCAD925FFA67EBD994DA888B66526C76E1442E95D
120628353a8951e017347568de22e49b3861fdd6fd3393b9bbedb1c5bc012ad39b46 2462FD76D944D13FFEE76B06B2243B93A714BFADD14A52A3C56D45CA8B4F0E073865
1207aa495292854b12eb1b5ff43aadadf307c332543755349b2fcb2672e8083b9c14 2463F3309041EDE5D2768687CC471AED42F2886C1A3AE9E544B5CDB0AED33204093B
1208abbdc91242e8c59ff5ca434314f77a5360a060aa2b09f23fe4839b77691efa63 2464570CA37A1D626A0D50E4E66FA2EBA88294BC72B991CD58E1D9531AABC9DE7DF9
12098070b37c8922d5f8f8c0b8c88e6f00e152a8ab3d6b9566a1c0fb54723577045d 2465163FFF77B46319A796AD9178781F0E51C7EF4F7A449D9C8AA7783653A7C6BBEC
1210a4cc7f8d331a8e4866db01af9039809c62616182b66381d8dbf19b16ea1cf17f 2466CA0FE1D38F417818F37A3A070EBFE95EA7DB361DDD6001FE4B7368A1F1A012D2
1211a4a20f18140fff6a9dfd917a5294bd57a778635322c38dba936e83136ff891e0 2467896DFBD327142268C81D827F8AC87AC0DF39B1E0EBAAC34D6E17090F43C615CF
1212749658f49822a62327206a4ab2de8beaf0f30ec9dc48e9f5ea0bf1b573aa44e7 2468AF7439D2C6E8BF87B0383B6F7AE56DC9264635E2188986E0AEBCC298331EF89D
1213bd65559684db8f07bd14dff988c396c6601946bcbc35af5857904d247f75f611 2469F1DB61968812291C5BD83579B55601659E8374CBEC1D71A935C8D6761F3CDD58
121479030ec37db30c6818414ddc4a37e6560a7a9f22e6390e46c674f82adf1367a2 2470F8B8E447555557A7961C86F877E0D837CAB76BCAB53B32CC96206C18B1F1E45C
12153b16bea15e8d205ce1b44c2d65f663cb57816de7ae9a08ff6147a48cf17d98be 247130E63E42686F7F60305F5F135461F8AB4E1A5B5CEC69FEB1914AAB7AC7447F29
121650877121d216c08d7b089e17ed3272d8acfaf83fe9e8512889992d49a14e72e3 247230362DD09229C80137E2DCFC1D586DCEE2DAA656D1555DA1488F1F17F4CD7A08
12179dbc0357c4278a4b5a007505cbf1785ba5e98f39f4416a4b852fffd34bf98304 2473396913FB7265FF4F5796CAE1DD7047D46C72420DE5C1EA962F618B18A3DBDF7B
12183189700ad11b06a9914c7ee4309515d5b9ccda8201de081b30ab7edf11ba9e01 2474E1566BDF90F502A700E00BF19971469BF22120B8F798205B3CDAE20E03994784
121978676baeac7fab321f17fcf2daa38687212e5993300e15191f802d107a442281 2475712355A46936E8C7FC84527E7D439BC235430FE2C6D0C98D7AF768B0F4285C4F
1220185140a242257c4c2c67d3f70475daf34410652bb06a14b920964d71497195dd 2476A2CF91CF95EB6C4616704AC458155065BE7F7633423E4283CA25D06CE7826FF3
1221c781223e7a59fca59c73f6bc9905a60dcd8e126c7fccbb9a4e8dc7dfafa71b19 2477DD99BB594BA35798649DEA27F65FF89E3AC674408818CC72602AC5BAA57C00F2
122226c043cf0161f85f9adf474e0fa11e390ef0e5e6d2165b83e113c0f082340d05 24784B8940BFA717354350E40BF722188F38CE9D46B2ABC0413F6782048119C7B3BB
12234e90267144f433e6ac1cc4ac2926786df6903708e4a7ea5910bc8c118687df6f 247900C482B190C7FEB04EE0C4F936D673FF29BE91E000ED4AE191931633CAAD57CF
12246fdf1f85e2776dca03812d527fa80f145e63cce8f4b450cb5ddd2eb43755947a 24802076E8A43DD4B42790D389B16E1FBCF04E0C4EC39D7982084FB63865B81ECA05
12258222c3ed123300debdf5e789f5ef406fdc6932dc009906342da21d601b8b1b2f 2481A80E40C0DA667129F87745EEF4660FB56D9F92BAF993C4A1F9918298D2DA853E
1226fd8c03fd8f7e6c9fabe3614a63139cf423fce9b9552ec577349784606fff80fe 248294734B26CA503A277634E4192DC17787C412E7273DDE3F70DA94BF8D08C5A921
1227249fedbd90a6603588a7631097b7a94d7316e2f42fdc0a048d7a485608e939df 24836D29E2CF0BD6D47B45C1DE6D1C0F2EF0F0A0569A8BA8389597F0617364303EAF
1228e46314b9e1a0eed00ebfb8b3ab3ec324fc3f11f042607c42365fb5c527747e77 2484057DCAAA45CA93BA7CB71BBA2F3D6AED42553105A5C120308AD6E4B905367A51
12296acdb9108a6b42bcf65646ff6dbdd10e06ac2391a13b16eca58d0b5f19eec293 248596F5A334775804EF2047F7F8BECEB82913736130C521620B2D0C877D96C24DA3
123018111c2101a03c9a6e5c0cc70da892ab116d3d576bc7adc2716e69ede1324f2f 2486DAA51DA0C97290306F2B40E28DCDBF18E72B17D6C2F443F2718C25440586C64F
123190c5738712d5ddbd92531dcad9498d97d96bf644812d89885a858d607b1e3ce4 2487328339EED2EEA79229F7D6AA63EDCAC14D0E7609CA2C1325A2F5E66E9CD987C0
1232fb35b3b2123d9692cadfd7aa379e2acbc9093ffcd742a1f7c76231908312b3b9 24884095F0034DD3BD95E0FDCED4E2B4C542E8DE10296260304F2DFAD6EBE48CC19C
1233e9877da4fc3408c7889248db13adaf7e29314e3723e2b746ae47b5ca7fbbb11f 248934839E7B1DA20F7E26BC52C73DBFB67111A6BA5680BBDB2E202C5641DE56ACA6
1234448e4958589a777bb5cacd8233c7efac5bc5f6234685e2622fd43d86293c6f59 249072B233D05F45F0AAB98FF5387F0F57089A2D575B2659F0EAE5FE109377B949DC
1235ce813f067207114b2e2e653135774361f9022c7af5699c8ff9bce1785e4ed738 2491F7A7CD8B56AB4BAD106CD589113ED0ED88E4562C1AA4B411796D217E22BD3373
123607ed280a03c606670061ace479250fff7f0f628b4eeec51fde593e43198e1a81 2492C972885EC11829358C1583255E15BAE9ACEC391B579C16BF069302FE49157850
123786065a928370b16e2f5ea2fcbc6a1ca4654fca3f7c7ad195513e06381efdc994 2493C07ABAB3222956D475D6241EFE4E186C1F6147D7607A45398FA21F25E7A1E529
1238ce7308a031505f93e5aa639cf3e57f47c581dffdfd99175e4b744ce893a33f63 24942523B5C5A70AB68F0E82288384134272F550C045B9FCC0F5DFB46C9FF7436B00
12397ea8a182761ac9452c64e8062c775466bdd38f659b5b11967f5029c93fbd2c09 249526DC732ECA0A51437AE3F14C4CF1CE9A372900526B412117FA0C16776770FF8C
124096e8155f27e49402ac912dd324eba211b985bb2d00197aee8687587d6f59a34f 24966758AF06F4E4291B21347541CBBC63FC3048F27D9C4C9369E0FF17C243C8725D
1241dd1838521902eb1ef139fe4a70424b2e47d1e132debb6a490310663a16cff0f4 24974177FC4E030950F86B944EF7F6468A1273BA67845FC46D7C43D38CCAD33A0225
1242b1fe9956a7cd8ea2c65379ac3fcf04efb76982d7fc1923515e6387d2c918f463 24981EEDA8600201AFC252AA5812AA5072BE796574CE2C9A985FDFBD3E2B876BE576
1243e256f8df5edcfa8678b5a12dfe1817fe0bfba82c51c78590414f981b99281395 2499710C393A8356649F386E1979A6F7EBB8CC911A0345F33273203BC909CEA33A2D
12440ef2f360ac544dec2cf7ae10a8c96f4f7b82bf30e410f8f9261e53ea96ab06b1 25004B68B92DF8431F441E8603E1B735366BDEA64084E2039F6F689D1D1AEFD7CE0E
12451d7a41fc4f41e7482ec3c63816b9d6d1886493456c55995ec8065a9971a2f669 2501AF2EC676BF771F5B9316AFD5C2AED1F9B71F55A5D5E997CEADB3435EB9BE3CE7
124675cd58cc3c80bd65863cccfea67a515cb1b284e70b967b84342be33c90c19b8b 25022605076331FDB634340EB236626F0EE54F1DB5B3628E247CF976B6AFE25DAF40
12472785e45d165146f59310168e88b0e261423b905f058a3d77d65d344b909fc345 25033311F039C6561DAEBF46AD62DB6E27933E03BB118A00D0F025F0A14EBAFB5897
1248c8558ca7ae05c2261234d2cd12264fbff78bd9a1895e4dc64f3f70591b8e91fb 25047B835708E9D552067650A999C62F6C26F98370DAE50451FC90F48753DAF686F3
124947d15738ffd5a26f91603291637f1f673208f153808aebe24381eb6d6b74c8a8 2505642E6E7A209CA9617468EEA88155D181FAD328163D315EB92F8E42446275F5A6
12508787d49b6496e3babe6b5f3c0ee595218dcaee6d998b0f691fe4de2a46d64867 25062376530BDEB66C20F6AA24B51A02AEBEF322648F56EA12F46DF6A22B590B9F0F
12516d07fed1048b48378781dfa383c45caa42e0ce2192a82f9b0dab38ed0d83abc9 2507AAD50D044E12428A74D03BFD927A376A70A50816CC70D50FB51BE1161FC30F6C
1252f572858444545ebe698235e8e81f71a494ca121eddaf585bc33db5ff650db8a6 2508059EB4E54EE1ADAC62B7362B8CC7D7E6C18C3EA533285B7E62617DB6523E629B
1253bf38f1fc6ff61693faf103aa707e56479a070c29ad0f32ac0ece91b54d2ce4d7 250939FDA591442B82FBABDEBF5DD307FD5FE881F99944982823409EC0269BD33DD9
125482f571c246e030af72d42fc4c8ba14017643beeb8a3bafdcc22a7835fb308628 25104B412A8D349640AFBBE5F42363EF87ECFBB07FD376BD2C1A641459EA2C6ABED7
1255e20995eaf9a0dc5381a11c00524f5876da650b9c47ff607c4610627ced57c20c 25110CF63CDD5FE7231C05A3020749339681BE57B4CD50903AE0459070B2E1CBDEA4
1256b6f9533930ae354ee4f96f7cf661476861ee0592365d4a0125406e76e91ad3d3 251202066DFAC37A4B06C8D2CFE0B88F287C3FED26A115C2173238A8C843BF252705
1257b85ebeb6c7a6dd6075578f2b4e547e1c1b2e1b7cad21c748fc3bc358297c28d1 25133FA78840C66160E0E099D4F50B9B0756B0C75BC7DC06B034D0EF5C55E86C0A7A
1258178df131ea7dd563ae35c04d23cd6ec3fad1a24eab3478d4e4605bc19f983f70 25143AFBFE040101F5F3E2EFCFDF11D52E8BE37297EE576202FD04008079F09BB2FB
12595b0d9869b9d81f636d8db0aab34c8eb10cbfd96e475c60f20feda73c6e2cc5c0 251582B1D1E2E078E4D42F8C9ED1C9D6B0EA1CB656E493908FC60CDC49BDA893459C
126073ae23dffdcd5d253f68687f1f74aa524be28c1800d64e55e1180b946525feca 2516EC2F7068E9336C351E276A37D7EAD511A3BC741690961339CD650B2CEBB80EB6
12617888fff60e7802cbfd30457256115bbf68e5db8212f07674e9b65675f8680ed4 25178DBC5D82F253F83F62958034C6C1590AD32A8EDB9588B3DDA9D5744616A43CBC
1262b907eb2cbaf873ac598f33f419e67996bc20ded906a2b161a5b9d775d3db6c85 251856B00F822F7AE0AC4005DC811EBC418E6F0D0BA80CB2062F319454FD0EEE07E1
1263fb8c62dc123c02fcee52386bb991edc01554211d1c2ccdb1f70a6e2667d97307 251955DBBAFABC7790789ED0C3E2E2237AC3FFB62638BC2BD4B3CDF1DCD2F4F7A072
1264d62ac6e280d4e85616e1cf29ecc2f6990882f149552acb4d4828e9b3efb4ee93 25200503D7161B7EF3264E153925BAEFE64761F5EBA2915DAF3D8379BBEE93C7ADE7
126532b0abed51d03992c5b2b40dd023d353e9bf3cb96de4d50e29f5248f97acc413 252121409B093C1927BF03F3B5EBA369EEC9DEB81AC4B59F8C8A49FB435D4620E8A2
12661bcf8dd3ef5779b69bfbabe63d06771dc0ffcb0e816b2b44cf1348bdc202ebb1 2522008A02EC5681D000A8EBB023F0EF15AE3F6D91CA26515A86F5B9D008786002CB
12676c4e600822ca4b4e7ccac5c05ad676cbc1f266bd9ca776d48c4ffbf44af464ad 2523B1EE977C88AE260A1D2E428520C8811D02A0A094F845FF4A109BF1A5B3E4F822
1268dffaa0e67e0673f295eecc7d58c146a516c55213c78256572d8b523accab8e1c 2524D84FF85A7AFAED62A69684C2DEC40609D994CC7847064A18E9F4B13BD4CA03F2
126995795cf9e921f515ce1efceccad9b7b7513f36f691ee6e2c4c413931b95fb179 252542DF0F81E34F138B8A76AC6C4A8FFECCA09AE8210DC0157687AA55F982E7F97C
1270647b9298810b8febe55277d5db59645d8ded5e4e059df7b2bf2ebc96bb5bc6f1 25262B2459661177FC792403F181E7C0131D379A49B2C7649F51FD803890EC88A5EA
1271084da89df48d70c88b43b3595937d9e2818565e0c7e6c372f4b61dc58e0f8e5b 252775D82CF49C948544456D6323286CEB2539DDE7A73364AB352763C407C0F09DC3
1272da6d4d6b01edbb54e548de0ffeb49181002c66bd11a0dd5a165283172c4e1941 2528F3022EF6347C31A53640E45FADCBE33FE5F40AC5A42258DC11796E8F834E7FCC
1273c3fc03f06e1a49e0270d5c32df1af21a8b37608086d80152eab31acb2ea448da 25294C523D95207B36E865797879DD5D854A04EB3F5AF5E709F26CD9C484E3C56D49
1274d88a86871614409b2ee450a585a0e8398dfa8a11c651c5aa0e215357f7dcb9e5 253078D17EEB944C905C0FB4E7F592C93535C26977C3BC6B9CB149F3725C894669FF
12759558ca4f2fa5d4dc057c3fe88d88aa15c5d5bf348b867ec58ea98d74ef50deac 253144C8BDC92CC29C5B7F2DDD6DD5104E04E810338E7B485BDE7BCF903F734DD7CB
1276d52bdbf310da3d2f46f612609f523f28236dfbd812f480a54ba1a912ddc04b2f 25325C9B7DBCD5ADF9264A60D166F0211390A48B60413102DE03A69C33515BF9C595
127769baecf9cf006ef8610cbc58a1aa7dac3ab6085b229b74daf52b4858da88004b 2533EFEC75E06F07B35273CDCE50516A57F191028439EC8E5B8124192D43A47EEF26
1278267e747174366eefbb0c060f5e3128c16b38cbf6dc54634f3786543d7db28f21 25348AA1B135AC4F442444A67A855D1C96EC73E306DFAE22973DEF8FF548AF36F41E
1279ec9bdd38618f31164b42ac09e628df1f721abd116a4069738f628d14df27c76f 2535219F071A8126A9DF8158DF67183BC133AA81F2082FBDA1525D000067FFE55783
128051ffba11cf3139c8d50743d5e861eb9ed602c883643ede5e91c50bf133aceb5e 2536E17EDFB171D6AD67DEA1649F54431D42B663F7868151FE6102F9CCC90D4FD2A0
1281df7a37a5993949558675c986091a6d6901fbf674f21f4db7620fc4349d5272c4 2537931193F10D34CCEB45D5F2337EAB4F70211F994C0737897477BA5BFECD0802B0
128275d9c6510fc62e49f5d6755d8f7f5a6f1aa7b9e43f5e15d3a8c5e1423f08502b 253886594E2D64281DBE9D61FF6706E8D5A4A955D3A423DACE1AB5B13A4DEEF2E9A1
1283181745ad981f4f0b515cf10f457c94dc99b9c94d7e6c98d0278849121aebd6c4 253936BABC8E1328AB11B4B26222A6F4169D9ED91D60D4F8C46C16C745B58752D394
1284391d8c0c301f01a64d60ccbc794e976a941300711adc6a96c7bc9d37cdc8f981 254015CCA9C948A3665E31FBDF35035E4B79D216D2A2E10837B4D590E00464AEA544
1285141d89dc95bed12708f4cd7d1f4a3e2d97259896ab55f0cf606fe66a29065274 2541FD607E476804BFA21D553A9A3B6E29937F52FEDF5BCBAEEA8FF205D91E61D6FB
1286f65bd4d4f1cb3cd419f6f2f83541f74c7a0ccee2ae0796d3882e12d50030d9d7 2542F0894C659A61F005C6FCE1A0E970036117F50BEF1DDDBC2AD2B526C65E1A4E98
1287322c72a2852151e37bb80d6915f7461952df7453411d7286371b58c4bb4f8e23 2543BB4EFAB5F880FF2492A0FD1A321D392B6590F33779183066983F1B67526D6089
1288560c75cfadf894f244470e344942f0bf3b0852527200a4867a5625f868d9bf2b 25446E706D9DA2C2E4289EDB0205C94E76DF309E19377297C58FBEC02B0424B56DD3
12894356505d08788bc526f89fbed3c2c7a821a5f680a07649cb0bc769930b2a418d 25457AC73B7D957BF9CE3B0999EF24263FA13A3DC4FAE0E34ED9BB413501394C01D7
1290c963c3b960e3d0bd5be67cf5fdf0296473a412924fba11e62f5e68e770d7583b 25463557DC869EA0D45CDD151E01EA0F5D6ACEC38C3BB28D26B8F817C641C4DC2B64
1291d1cf10e470841f8defadfd17934a72000792c1eb96e61edc05eccae7d698cc28 2547A89E0D6A283C98929C675D9735BBF8799A87D3987420F014A0A2B1B15A104121
12927297a73e27d07e725eade1e219dbcd07b71eee6cdbb793e544974dcc08169f2f 25486988DE7335FA7130D761D45E9F9CAA56046AD1CE245C969AA0F257BFF37ADD69
1293861179b08419a0fbe231fb583472fa13364c305c21211a0903dc63d19b2f9826 254989E85FCA26A24EF31C4375A2809CC5ED835EB1AECF35AB8ED9C07D27DA60451F
12941ab6d93df284aa103b9dc85ed84f8d7b2fadc6fd33e9b0e648bcf5f10320f897 25502CFF04B9C2ED3225AFDFED29C110AEED350F45EB766CE005561141B3076B162B
1295d18c9d489438ce7be49d1269f5f8391c75ae4e8109c3e85ed32288efb5de0e9d 25515B0DEB09713CDA59AA7ABDF6A54B35F6010FEDEF6C34FAC4077EF07FD0FC8962
1296866e6473b9373625125721ab67bc475ed1b381a97775d82b3665fa141fb4083b 2552530A98376BD26C39075D9EC1A987BC99B27BB61B4A077FADD338C2A01580D84E
1297c687555204faceb4e1779a1bafa4a5d438944cc88bde043ae7c458502ffe40d0 25530135EED6CD280ED033AD04799EB9F13AD2F4373BDA157D2389CF1D71F65EA74C
1298eea23137ef0b1adc07a7344dbb4129cdc0c436f64445a5009e0d2c96db64314c 2554B0A90A62A05E0E6853A89537F380C2FB287D7458FCF8C5301D4633D93064D975
12990c88a7b3c6b867d9c14e04e89a44c10d5efe39c0d12472e3549a0d073e2bd028 2555906ED3948EEA7CDCA298C41A6F679848AEB924DF95B58D8DA93DD0E43634791D
13007a3c313eb36bd145293aa5b811da37665370273bcf3af3f55a67ef763d0b5a22 2556B7B31DB298B7E78F839ED8D858AD4C77BACED05E5DD0C717505475857A47A977
1301e5771b26d87c16221ef046a501aeb5499e4740ef7819aaa5e4b1a927994122d1 2557CFDC3FAB4954286AD4115B409DDFFEE2757E3B3C622CC6935DA0C4EBE6E73DBA
13027accdb5765c327071859da5226a187c9f6a822eca21bea2a9b3cd79273d7db57 25589E508070C5EE9E91EACEFAFF2D8B6BF15794A552055E3B2E9707A0C61D904E41
1303b8e621a156a5e82ea2628660b273bb96348ffaf60eb70ebfc183b9155d5c0bd3 2559B9B0B901CC8489414DEF5E701BDC76E7B9700EBBB54DEAF0039BFD9D975A0C53
130488cd7140484d11b4ef03f315ba14c80e808e558076fb06be7b22d4b13f5b89dd 256023A575E10783F738A69564D8C4D3DE3B27BF408FF68EDBBA8148EA7FEBCF1093
130536577ded4d342598f0c38147e1f0ec8f5f741dc0632e39d468c5b887649121e8 256141488F906450AD70892A75ACEA874898A1893291A97827D2AF45C8379364325D
130695672913c6934452b67a0e2c52b51822e0b3e2e8b6773831aae41ec429d85d28 2562D8DC1AE11DD1E3F0088AEB39EE217541A4C17DF1A012D2896DFBD32EE1A8844F
13072cb2d6ab83e6a727cf1e9020a364a52fad0c516e484f6b5663fb0b1855ae5a21 25635EA592BFA0F8530A17935D1E17DC0C1FAF30A7C463EB45F0D1798271E583290B
1308e38260dbf4bb0641ed939f5410e2f0d9d1acc9705e2c9d15d0f0faa258942085 25640195489A5ED95EB8E3733A3BA2F98CD9C937C36603B7F3357786F66BE72851EC
130974a18254dbbccdba72345ce68ff33a09dd6d12b37262bc99c95cc2aa42ccddb6 2565C43D94B484700D72CE5B239CB06EF050913C84520BBC0DD71A5ED6AB07863F84
13108c24f08d224255d17de18d520e05324cf2318efbaf1bf548d96f80b1d1334661 25665D07F03C217FFD7A58EA0C7A398BCA6EF0DC03DF19A3B7F0621E5DF8F48C433C
13115353733751b016b2430a1a579f6f065bba9f83803d10090ca6cc4322c4f023cf 25675CA5EF5AAC63F57DE0552ADA3E14BC9A225A7A06271CD2A35B031DA95C0CD59F
131285f2c51a79e41fc2abe3c7a4958e279a7fbeb7b94ac038ccde98aa1b43a03775 256819CAAE0B2173E3498FB7D0594BE5C1C51FF11BC7660627C309B251D45D787512
13134246da328fe1c6925884ed447b0212cce587a580258891d5037fc11834f109f8 25698814A1B75DD571FF042DFD6A009817A28C281C3E1974EF64505EAEE437E10F0C
13142d7f4c626f2e34154928714453eeb65f985066577e2bda9a2e9839ebd12755c4 2570446F2AADC2AFADBF3F607C7C93DF8C301739E51DD451D8AA55F085706C278C5E
1315d08cddcbd474507e7fbda89b2d3edd8b2adcfc53acb0b6a17ce9c27e62079778 25711981EC64A5A3157D7221A45C95F7E64231E58015863310F60AA52F893F9E0A8D
1316a1496d40e38d15349da699c3883fd33be9f0d8a87de32b65cd176281c63449d6 25727C22D8D3DC349EE4B9BEEACBE36A6DA23FB3E8BE62FBEA68C93884A25FC2EF78
13176f4d243658e77d8a6aa0ea3aab02a98ee3ba3d0ecdda62acfc6c4be4a88c819a 2573FF074A7B458B16FC14050FFD4C8F2AF68FD0E13011CC3011A88576B8430B4A72
1318c6ff56a296f513e3d31d0698c051ded9a17956747644afcd7c3f2a9d6e3f7182 25748F254E9C04A8F1FA82E223319B624D546799A137A61DB960A3746B2BBA04956B
13197fe1b059838b856b4c8c4fc0f811a3323f3c40a701eaa3aae69d4ea46477d94b 257586F9B706370053CD173E9D3D2261AA9B3F73296995CD0398C35E5E008CE46E03
1320a6b285f3b7d4a13116459ef974e34d50953340e21cc15e76e2940fb09f76a7a9 25764B3F80AD2AD5D46C478AC54EA771DB2E116B5F3D795D8EB4965FEA812297011C
1321b19e5b8086bc8072a63b47c8cf840f4c437d492b50f8b7224bc9d60e41159fad 2577EF1C2764D61BF8F9E244474B07910763C27010AA86EA4B7F6B1B609DC99F0970
1322a03d76df310bd146800589e3cb32f3f7ab0d4183b7b1e342634e9d8a65726395 2578D73EBD25676A2743F442E4D7193F90BC0CB3045FFD66D27ACDDDF6844EE95C8F
132323e6281af65f14bf380913382b0039faa4e02af51dc38c536bd432ebef1c003f 257900645E9CF2C3A71C1499CEF50F2E70E256AB6AB6592D605E873EF375665DFD55
132490d59bebaf9720165b883e63e2a4b39726373ec1898b9e33bdd7ff1b845531c5 25802665499DA042C5A95A254853EDE7EA1D4886861F7462E61A0C068124A89F89C6
13252fe1c7ecff261e80859ffff52e1ad86b058135959a3dba8d960a73a35dfb18d6 258162F872C866C7A9878969095404E84D2420904CE81614809D97B4B88FADC24F80
13269a2c90db69b4b0d813fc292a572b4e8fec9a1b2973c76e491b51155d05d61120 2582974B48D8FC563ED82DD7C0F29D35DE34A5C877A7242EA8814BD8504C65F2182A
13274c3ec93af6296438a3549e92b27d5c705925e6dfc1de2ff1a4de75a1acab4373 25834F50833FE84E224696BF32270E8F67664170E613506B72390D0FEFD2B476E5DC
13288a3e0fc8565cacf6e79237d100baf4c4df2cc4328855f7ef273857ed44da8554 25849EC3DDB6310B59817ABDE32A3EE76BE0B8A3520D7A8D41D16D4A3E36D597C7EF
1329f0c193f834612b347077e6c46ec212934b429da0963767af3bafbd30687f8908 258586102A0AED5B0CDF3872DD27DFE5E285F8C7EB1331FA15A73709AC2C7FC1F5E9
13302f5f866d2477c55d6ec4d38080936852040cb40fdaa767e285a8b40e8446aa7e 25865F94BE63D6C28148250AB67AD6A45BD188255D5A783B32B5A6F76E0435095678
13319db6be6705753e229d68bb6ccb2bf3de8fccec2d23a4f8e2b490b0295916dd20 2587386F97F6A459467A25F2E4A55724FED24FC2F8852D3935955D9934F923793DC8
133254ef89d43ff718d494a7bccaf78492e42c6977d77aff803a2c896f69abcd2a1a 2588C963116DC5A3531FEFD7C5B014F39EAF0D7FA4DA1316C308D33B21BDA87C1A98
133378fd4ebbabba74b832df9cf6f44886fd9a3d5f329883014704df7a6a0ae19cb2 25891C720790A9C991F318764F19E9835FF8E82FC677217C210DA1DA5CA989C9A0A1
1334eb6cbb2e1d426a278a40f803011cecc6730ee3e3e608f228cd5a3a04f82ac871 259067813257F9E37202DFF04A22E5AE26375A3B2CCD6F934361CA0D77F47A7E2119
1335d9ee8c2b642d271a444126af3fb6acbf455e9c4705f4edaab0d93f3e48fb5e68 2591C1009E2ED2540C5E635C5BED74DE76E48E06E6CC926E03DA745316CF48850271
1336f09420dfbec08f61d39b184189322657a3f9027a7c48bb827982f720b708542f 259271A5258697AF20F1314EEAE7564CBDDB40C97652C1697D2BAD5DADF0C1A92F7A
13376c2239ef588efa7c962f73e552f6e6521e8171b6df42f46a4449b6ac99c13bfc 2593DA6F3100F29C864BAC5DEC9D29C4575F7FBFA39A86BF16ED2466D8DD2EA2E80F
1338f236b00a62864daf4ae894042d7659e51c8d01a11ae61812bdfa205c67445b54 2594589B3D0F108E530CF19D665AB209ED3EBB7280DA88C7345730E8184BFC9EEE4D
1339747375244cdb5d2392b678f1909e846ee0b50a6f0d0e894145c5d3db34687099 25959FE376D7825CAB14AA924CE621CE0B2988A9B0EFE7FC3E279A4429B2939059F4
13409f2a4b787e1bcce9a3e009aec3b55d1b5153293c3e57477b31f18a672d31da93 2596B4ACDE2A650BDB5CC9D5EDE1495155DEE2C89E1D3383D2DD1B6292B7E21C27CB
13410ee2253e7676a816f72f2fe23a94cad85a5c7876062d19a87609ff2c0d746524 25977B049D1773BB0EDE89B977122D3F26873231FE69504FC0649FAFE3A951A6CBE1
1342d311d6b67df9934965a1eada38df97f776ac49cf7eb7dbcf1c3bd28fea8ff7d1 2598B23CD348F54FFC2A14A682573428FE006FE3F5CF538761B57C9C44F436A457B7
13430af0f08eaf0058a32176abe154da646f8649960bd6bda56e293d7870317987f6 2599CDD95BF3E6515958D80EE7A4F522507421DD6C9353BE1058FF7075573BE448E6
13440c0af42ffd17b0b4fad237a493e91ee0e6d1687975c3d2edc2e7c261e1ae0ad4 2600FE375870F4820113C592E7080C797D60E3942E7913F0F41394DD01524B342881
1345f86e6261c0a5eed9f9665a5c16614031f1cd999a2673a7bb25e366aa739cc757 2601E852CBF50A9DD891830B3F01552C5F73CD7B30B5D459A86CA5817830AC8A29F7
1346ca0854e8633fdb3cf8d10c5442a5ab763e879d670b128165b124f18c6db60b28 26022B012B75109F5C3EF03D8A3735EBCF71EBDD6930043A3C643A6C32AE3CE9BCC4
134744cd7a411ef17495c86063bc63e8886e2bea7f5daebae1aa725b0cfa85df86a4 260385CC5D3239C3736B16542980AF0FD4D413DB8EA31A431CF3879574BED7345763
134883d56222087fa8171648206cf7f5764dc91099c7c3c3e027571f02dc629ad0fd 2604B25155ECE30DDA73A32C390177AE0796710AEABAA07E36BF91FF2BE61055CE45
13496c5a23c8972a4d0e4c9c84152411b69701b516b6ac6e883c97004337351cf0b9 2605A3CDA0B1517F1DAAF840012EFAEAFD5632B370AE8955FBC699FC847FFBFDCDA5
1350a98587bec2b00a25236bfee5c7d0d02626583cd2c94171fe8420e1ea94fa4997 2606C1AFBE3C28EFAE4B76D065623775693E0F3E49E3BBA089C8E19C23606AC75631
135158ffbc1925f2d6ab6a69f374f651706ad2ee92f98c1b693a1012a7cd1b9c7655 2607E9441EA26E2188147BBA8F70A7D7A5A77E157C651E556EBAA6474EAD3A6188A2
1352d4cdc4ed3e0c756355952ba7d4ef4024726195cabc0cad44831e3b077a94fccc 2608DA05BAD2DE0ACC02B8ADF47401F8A55BB73B29F727ABBEEBCCA3DD33DE32C90A
1353f2ce0242a48396455a455ee2e47d51a876191bea5eb00b47fbac390846c6da96 26092546C090ECD872C48AB4BF001752E079D2065D9B7D8C2AF27B2546D995629784
1354fcb1745fe6024149f478aa101d2bc7e4d3327b54d5ca2cc49a8810eb090ab078 261010572FD2E0F7DD562FAF98506FA0A2186A65E1F7427482E42145649903A220DD
135565634d4ca731f3cebca5d6347fa7e6ed67343aea5bb4e8fe80dbff1d301a3662 2611FACBA5A39A5309459035396E4E94B3BC031F24E8A43F0731EB6D10A3C1BCCF7D
1356a65b90a0e7e459e3c7a0b0ae854522be979d2f5e90f9ebb61546a6436cdce73f 2612E243728C87C7C96516574D26B0B7F5A52403137483EB24731126502CC6AF65E4
1357fe478770fe8505795eeec42940d36bb2c7362251af54746eb14a1dfbc534ed0f 261321861F92C749EC695084E897679A1D09E7C4979D6FDDEDC084737B4D8235B053
1358ad5e77e7358651820c9ff85a6487a833647ee8957f8412c9ccab69010c9231e4 26142F0C9447D871D68AF75FE7C4D24754AE69C5A0CF0A56B288F6278D34B3DA4A62
13597366b9e26adcc7c44d49e14101182fc7d374f4d836725c7f82f7c17547b8ff45 261502D377C85DC513FB5FCE978189EACD38403BF6113933188796D8A4AFD80D2300
1360a94d4f6a153dc1f3c7a2f4216ac94bd504c41c9e7263b5cca7a7a006414aa104 2616A67CA6CFEF470051C6D10F9FC88148B4248784988E2158F33615341EAC94E61A
1361acca3a485b9e7b4c23a2991e9515a75952d25e4f55aedfc9da3118d60284778d 26175557C7530B5AC1B657C3BB2BBCF10FBDC0BE74AD2E8AE6D170A3787578FBBE56
1362812350af9f75a737c343b4056730b1d6add2b0908b9465d0f8dc0ebd8f834bbe 2618B646D229B2E148E351A63DD8460DEB8FC4CE4F9BE1E94D4A4D6FB049AFDBE1DE
1363866535ad9451cfe97c1952bbfe5bf6718a2e4d3c7de99b0803d57c6a287e43f1 2619F666C14EE422C36FD17FBCBCC6ED253E29CB3BF1374422CB313853E14748BFF1
13648fafc22c062d54e48853486b3ec0c52b88bcae5e67c78d9e67afeec2e82a5ff3 262053D14F913213FC416951EBB43CC03F854D0A45A4A9C821415D9D121966AA4CD6
13656355abd4f48ccf9bdc0b840c74321d48d38fa94361b081385fb2dcbcc6f7d29e 262131C61065CA780CE9A649CE076161278E8AEC8E4A609C147AE7BDDAA18A31C629
1366497b14dcb14afdf7834f0251638eef2610567c835b8b485ef6bfdb95020ab575 26220C876ACE023566656DE99C8DD328A3CB3F59C1311A1A870FFC9399F87D391830
1367cf3e462a7d452b695e26b5500888e79bd3e3543ad2b33f99bdf99b102b43c186 262313BE512EEED0D64EC9D62E85D42BFFD334BFA5DEDB60ADDBC3349FEE1A1204F5
1368735c18491502d76de54e48b4a656e3d20cca895c2ceb355c8a20ac1a536520d6 262464D32B1E47489F91C6651A29B8628F33FED3EBC94F41A68C19FF670B7E847BF3
13698c811eec78d7fea385e37f3e744628ff88e4f4c2a681846b23e4ae388904ff44 262514D7B208C9AE11C70595C8198CC04A5EA4FF63763A313DFC80E922A6E9E93228
13701367d6c8a1ec926a7937037c2ae535b9ea54d455bc3b2c5e7b88c0e013d90f9b 26265287C3AF97002FE3BCD9479D77856FA941F152CAA9227C44F1B39B60A159223D
137161d62dc116a3cb8f3e93103a38e56553a4279b24ffa6d2813afffb62563a6c34 26270BF3A3C7921F47CC03240186432EA6675326AF7ED0E7034FE0395EE0E4C8EF10
137257d7ff4a18226ac5434d3bb84531c839ea5f5c4a800c5ef1aa47218dc5e503cf 2628E60B2F5B3039BF6D022875BB277FD8633BD1F7D69E3F0ECF51B70C9F79A3E8E6
137366e61ea59ebdd22654cf8603608a327d5abdb7880492c428b033623e3e3713ef 2629488704F6D542DDEAD58934B8C9F894AD07C295CA6B866E436A9743BF070D8563
1374fa3a62a80dca983b004ae7e8f0b3ae95d57218c21f110ecd8686150c6a02eaae 2630E19B7C08BF709FE9C5B6D51F9767EB89239985717EF84B341F6EDC288E441482
13751676299550d616a38645b9c8125117988c785cc9205e1d9058b193ab5ae9875d 263148DE53A7D1BAB7FA350C8593FB8FDEF73BC274B65EA08846E632CE0C60CC7F16
1376626cbc58ef0b8cd969a6d5c2148298fa7f4abb8d959845ffd3dd054e9a009119 2632ADFA60E6653103BF10422F0075B496C585C7EA4D4352FAB75ACEE263BADCF6F9
1377ef226a16f7046502c9aa19e69bc5317e4517e94a9d816b1e718b3c2a4bb68a07 2633685591D040EA6EF2F860C23E9E27D70C0BC4BDFE33186B4D160812207091ABFD
1378228e7427b9673255a3bb30ab5141efd310df372fa02a27255dc239f79fe19f3b 2634250125F39A7A3523F57EFA2D7917653D743EE04489ED6317AA5345C3B2781902
1379736d1d4da67d58aca15a07af980f4fc863b73911439a83b546cfb55b0e03e028 26357A3A34E56A50009A8764F9539ECF7203CEE399698A49E1FBF816243BA11159D6
13801abf7138ecb51674d81c26e2a9b800166e14e478cb999ace587e3f3bb616fa65 263603611ECEABFC83489227E8F58A94FD5E4061CD340BA09635BDA9183B36CA2A9B
13819fa82df6f64cd7130cd877d521f447271116700b847d92061def4faae0326730 26376119D7E5C2E55C82ED7A700772FCA980B8B95899C9C0E0AED713F04B18AA0C86
1382f1844593f668a27215dca92450970fe1858382f9f413be68b1faee48826eb881 26380E00A184F14699C7AA23BA98A9B63DEDEB61826EFE3D65D5BC7A271618E9C68F
1383a38a8480d09c0b929dfa5735a0b30c04561dc4c4d72079fa57b4c08967b38478 263991297E07FCFBA5E244A20E27AAB110135F538A3AE88EA6A15FD2D150E6E9EA97
1384fd9adb40e9bf8fdb531d55e8b2d07e37dc3cdfa4ff99c49731094df3c811214c 264003AB24F289049B952E80E28017623E6DEC899E4E9929C668A1F8E600BC62D9D6
1385622893af1dfb6cd92a4cd6007f2364776835446d82b720eaaed0e0fc2da6ed47 2641C520DAA727C85C35CA0D143AD7D555615D2BF15B25BED1F8B0B19C0A4F982514
1386d61f83275de116d0b942a0ea8c08fb2b0547f7ead2791f0d054c0cf5fd32be6c 2642CCC24D25D5E5DA979BE412A17E89CA231836FBDBF9F20EF5A4DCCB4EEBB22D91
13876320b40b991b37c71f3443677696cc813c2d629326bcf34f1805c2564915625d 264388736383A898B0C9B0D6A2EDD43CC1D15143FB8348646A34FC8C88262CF69B46
138819a379d111164e3050a477c6f98db7dcedc1fd21af7c12ef47d801db0d3804c3 2644F4C60D1AFFFEF4F6F1B008F46F1581BFD75A8F3452090D88F9DD2C8B71970FB3
138916beadd8f4e09ec411b4867276199d0eb9b281759d7cc888cd2475d716ed4986 2645F77DD24ED084CCE11F587DBEA211BCC08739ADF1FF013BE242CE5197CD4E1E88
13905e6728e2354a2163921bab2a258c124788964b3c11851be443365a828e9e12ab 264669C1B9ADD4AF06FBCF316E3EF577DD728B074F13D2D36727CE498593617FFB07
1391840d4168bbf53f2995873d7d0d1800698c665e5ec58f3daebba4b10997757f4a 2647D4992BEC67799540E0A435B286027DC36F49CE3A0478839F2127DC4AA7289AD1
13929d64a613f1471ecb5765deaea882ababbfd06637b61340c3af5b306759fe3608 2648680396D0C5935D3DC5582E7A8C6E7441AD77E332BBCF11EA2D9F5B98920A9B9A
1393dee6b04f347522a011e301f9f5eb3e8b64a6f144504855076676fbc638f830df 2649F042877D3D6B8908C9033A1E95F5F8A1D36201E233D7B49853910A59DA98B41D
139465f60393d58a4ab691a6d80131f8d469e7f955d65b12c13baf6ca0c4348786d7 2650CA3A245A829395D38B9CB7717C2F2FA5D1E334B78CF52DBF6EF8F389B9C32DDA
1395fc756497ddce94bfbad967ee89fda2fdfce5de1a81475981a1cfb80a497b0f08 265188EF621E3F8D25BBBC544C48EC89F3B799FC5FC1EEED325FE8AF57981321B9DF
139617ba8a9d90cfc434715aa69a9ddf8ebfff3edcea95dfaf64c87b6bddd288092f 2652605565A2103A1331F8130DFBB446FEF44B5A3B8F51BA6A9EF8569954BE283FF0
1397c1e1f1be2b3332751410674992cdb000c74fa824fcc7d5677c6b39e53b59df68 26536CA7398BA4E94CF911E29C5BBD155449877263E8C348FFFEB953A6669194D489
13989b91d3fc7c8b07d862700d9b0877128e104f829b8e56e89e9ed4603eee8c6b85 2654801B196ED4A4D09D5665D19185FBAAAC42A6B7F1CED08821977D671F820CD8E1
1399f1fb24dddb90e1ddd5c4fb2ce70c46ece1d50f8cff48eb35c1601e3828acbe08 26551B048EC8C8F7706F7026124B2132E7EDCA20DA643CEB0ED271EF787F63F45751
14002a002191d3e6f99839789dad804b013ceb85436022d4557b97ca5ff3eb0eba67 265671DA1303BA5194B63EA9837CEAF441CAC7BE73129551A5EF0FD3EA2BEE24C866
1401b3fc0082887245a3d2152610e9941a3e9e4d7644c8a04122283ca1349a3915af 26574FF43748792CB89A5777AF5968FA716C3A0B2C307341FF0752FCCF88558D837A
1402dae3b9f045d879eb3e8c41b19f4fd1db6fd2ac568a278fe5a3f79ff22ff0814c 26583F803F870C88B1971E84AE575DFF2BB81C97E9900CECFD4FEB93F67D42AC8D5D
1403afd80d8658ea32d740230b99718031a5f1f179d989dbdde3fef80c148bbbe8f1 26592DC5B2A044C90C31167A11C43DDB568EF592E9DA606B695F4C59418914FFDFCD
1404aa881d9e25842fe9977e09147194d692f5a46c6c193b1a6313f66200b4246baf 2660DDAFC55B36051B0EAEBADF8713489E46C0D94B3911FF6BC967EEF7099F8F2094
140565f31fcdd3549b46e3b7b7a17f4538d2a8198ea02b201438fd101a1e6e1ccd9e 2661E1BD2DA0C5C1CC24199790F05A6182C0D83D245932DAE9FE5DD1F6ECFE77948C
1406467f2f34244b767eb7651f3bac987d9b1ef27f562bfaf0c3afbfd41efa4ea899 2662B97C5DD2A61346B1C3592D42BB2FDD14652267A1D399B723518AAE7617042157
14079352b1e906fc307982bb480f39caa635c37a77d277260581f0c77a0e994fe15d 266335B30783B6F9F6C059CF1A7B3577A727E52A1BB0643D7C0BF67205BE4F9090A9
1408e30dd28024c662e2db035a7a175ec3d044e1c1cd984d957eb0f0f54ef1735c47 26644062BA511DA13FA80C389947E0F0222D29794B681DCD02070111BFD5E8E3AD79
140914c53987782d3ed5937da9db74bac0edf5e809918e509ca55c49ebd8df4d506e 266506AFDB28BDD7ED3FE5B86BEB27F94F7C68BD6D8D373EB6C03106A34F9B6DB854
141087cd85e84c545a3229b88813a97e78fc8dd5efc5dddf70d391e876c08d24abe7 2666216C6DDFEE7F7642A33AE5CBFB043542EEAFECB6562995578C5BFBB15B6A9235
1411a8f6fb384b336654f46822ee8400d672459ea3e83d4b77af408b4463730d4ae0 26670E85BCCC74F7202493510425674C34FF7150D22A8FF7418B1789C5A7F8B2444B
14121bc040d7a4f2a941e5753aca6fa111526567bfc973fc0da257273af012e49219 2668B1056D574DF0F6EC2DA281D13C61CAE602135D72426BD0C10B3554B9CCA9E1D4
14130e2c70728b9e5f5dbfa43b669c97e58703b6e45914d25cc275fde30947db24b3 2669CFCC6B1AC5AC072CEA763BBA2BF91679112A47C740E21AD18A43847D2338E3F0
14148db34a29030c155d3a2faf64a5b9fb3049001ff6705568ff6f6834c66cda554e 26708F685971CC0199B0E8F68A9BBCD1E5AE213CE21516D94CF159627C60A60BC1C7
1415ac1a3749d53f3a055fe52215155d01b16d0c200641365584acf9a03e1de4b39c 26712938D70601E5D0391DBB1DFE8D8BF2E7B9FEDEBAD7E245B1CC70BF69A394EC0D
14166fe147724b786384bfc9d28c6918537ae6b27b67c805f6e0840219011ca9a717 2672C86F1D3A4BD9F0B7E0B238A258D61F0FD05291E77CE35AA11FB2694644494B75
1417c6abfbcf64832dd90732cf3f35a3c51757b65be24231904e22d74fbf9f17819d 26733E12679F14B0E5D804DDA98D3EF39F1CC64FD3ABF464A75BF1F4D5D0E379D340
1418b7f6c54920ac8e23b6b7e68f652117ae0bdba757b1ecd4f9f51072b0a49ab7f2 26746A452EF024D21DBF303F4EFFE269941913DCF742964A2564F44296E321EABD95
14194b66768241b9f92c90ee3a3fb19bbeb570fbae03337eaca3526e28e7f1724e68 2675DBD8CD1DCC3603CE1DFA14DFD5F667348C85DDD8F7CF714364CFEA703CAAF786
1420437b17780ccf5e96d16c23e84803a777c88ae686c3be4df8ca03c056ddd8e53c 2676152DB61A034CB4409EE8AF81B13BD45F56891CF4B7E41257F04777C9B6166AF9
1421aaf5cfae05b21a2a4ec1004713cea6bebca519ba4d651fe6421f34c53c647bdd 2677BFC16918A7ED6B226151E1888295585D8CB5FE3BE97D9FD776E8BDA02ACBEB51
1422a4f4e24d680804ac51a89dbff7eda0e10c48147ac8b6c887745d9a034a6bb060 26784C473F30E82243A2456F80A21894208C5DF2EAB207C5C8A563DE6CA07B436232
14232e64ea17f4c2f3daf71513a33e5bc52c257c74831d070f08663c3ca0028a242b 26797F94C0B973BE05175B316FD8EA4389968A94C978CFEDEE8FB2190E191E921521
1424d6f5f5df1dce4a068beeb1b58f3ad078e27b5a47e506c6db8428f8ca9f1a2768 2680A4170000B5580A3FEB81A52D2AFD9330931DCA4594B784259FAF2631B34FE0CB
14250fa6bf4c032d058f23923dcdce22962c058f5d04d777bac0dea34665d6933e4f 26817B172DA962E55C2D6D0AF34A62E8F651BA9290699FC59B3D2D6F7F081D5E706A
142687812f92cd2142f59085743d7ee30e15c165c8d65fe07018c25ffe6605954682 2682A6AD5E2BF9B7BE48BD9BC51D61E2FFEEEBE997B7347ECAF56591AF9BFF5229C2
1427b73ad7040eea69b90448cf385e9e1ae96b4f3f5126aa415a623b5c4a94b9b4be 2683C80B64E30DBD1985524FAC26656968042A5801ACEA877D3607F0CACBF35E24FA
142847a54155a544b43ae3a3d7a99f03077119fe24b0613979d137ccaa38e1fca11e 26845D1C113A04A67040C66351DE85F00892C88B3F789DCE9A9F36973E17900E4D77
142947719247998be7561a0f67837ff2f3d591ecd188aa0b722e6cd6a47a33728011 2685ED73F6778772868CE46933A67E3C2ECE270481D074949436AA6A94E0C3580377
14304cb2ebb5e3d74ebaf8b07234eb641894f6ba753602d20b32c2e342b7e0a521bd 26864283508E7C1B0A47D617685B02579C0C5AB29D35E34AB17565A1A105340F53C3
1431bed2e157bb1213ebd8f6e3dac3e343a31011209793b30d0f9b9fa0b563990ad0 2687350AB96B5FAEE89458E00CF4F48F691DA405B49F4D5152E57EE782667BD2C06A
1432140465b0a2bbedac1c2d1b716a212553d5181ce84432448c2468843ca38da39a 268868AAAF5358F07E5348D4DC98AA2E930BE03B13E936B44C29A4E70B6860AA9ABE
1433a98ca77d4ae7acfe9a4be0efb9a2bf61357f7d2d5be3363d45cd5ebea80bf69e 2689A8C80D9ED9F86395F3AAEF21FA579432250A08E7EE1627AC0F30E7B6E312F476
1434500eb12485a631c6d74e75bc172916ac7a24651a425a65205a60e3345bba213b 2690B5639F37282ECEC24155940FAE2BA6FFEC523A253E6DA7AD4CACBEB2E1DD7FEB
14353df67cd5f3dc6287b22b0c0df9e81684f48c12d4268b5fe77a82b24a1cfb2ba9 2691B6DACE84E91FF8F3433DFB96E4EE5FF73482457B9477E5DB9D80CE7FFF324F48
14366080ae35136141ddd7fb8ac26b7f0a5fa7b956f4fad3bd59b8057c89a57f7c33 2692CD0567C07ADD825DD5DCF5FD2F657F8FE5EEE9FD2085A4677D7D5F986BD1B97B
14376a641080e7177143a3e3fcbe687e6e6effeb75c8ae59d3c0173a89c274ed7bec 2693C09BB3083A8D33C725D5C204BFD60BE38AF2C43FF1EE18574EE86EC025980B2F
14389f004551ecc2d0ca9304672c7ba90f436b7ecebae9092f2f2755d98787f087f3 2694C46E094A91F5E78929BEE0367D8D3905FD48B09714A5849CB4888A35303A4FC8
1439ee60de66e953772f43163d178cd05c57a26e3fa2fe40987fd853493d83ffc793 26959D591D99A57DFD9A2C914BA4444AA978B399227B218BE378B1DC01FE7095E70C
144006c01f9fe982d4b29df4c286a918e769dc10197e752c8084a30373d7293af803 2696F107A8241B9EDA3401512474015F3FE6D2205F40117D1A4869FC11A62BA85327
14410cf6321b93eab18a5785cd3ed5fed7fbe400f15042a50a6e92907e39e41031c6 26975D5707F786085ECC72DADB653BCC130918854C7DA4416A7EDB961B6801D4990B
1442fb07d28839bb457b1e6730ad0fb90c16ee387bbccef903e447981af98ddc5c5d 26987D8037D7D4A0E8522DD1D7592C43A62DEDCD9F50636E4F6DF10DC2DD03416EAA
1443d175a836c0b599cc418ea146a488fd7eca599736398d22ae988591f174a6cf37 2699DCD800AC4306E346CEE57375625BF7C100C14C0A34E18E84B6450BDD689A10A2
14445fd0b62754cb64931a6aa003b4fb984e613cb60a028d46d8f9f4e475aa3f67b2 27004E54FCFA7B469CF4F6E9B0A0322458184F95F7267212B7D520E1C45639711B2C
1445c38eb7c4112b3a5e5d66b2f38dd77f9cfd05067e55430c91bb5def1c9ccb7725 27015E5CF282A8E4242787B5669D38B15AFAEA40E319269D7D041647CFFBCC1648E2
1446f1defe6f1e7bc16fca0280d0fee2a5494032e1db1ac3d543b7e5adf4aae16c94 27029D0D4159A1EBE45D1D8D5140AB03BD74A86E9BAE09180517EBF3C5351BA94E38
1447a5d871481190fd07a8533a71a99ffd8379970588cf663d482b7b6fcbd88679fd 270344FF8E4A42277493FAF469E1BB56F6225009B7A4BFB42D6F9483FFA863C65A16
14481ed0d9ed0a574de1fe35c3b88d3262764be01215beaa48004149a7dc195efce9 270403A9ED78D1CB105B6524EF06B6AE98A85CC97E1FF95DFA981828AAB11312E41B
1449c459aee958bf6f0067bb1672ce605915cf6ef506d286a6c44f7a5c71e73a3d72 2705E1E8B94F29FA40B92B6C648B57E8CC1C12C8F64F19235F84C0FD8FCCD0B8F64C
1450f26f452bd1499b854f9a271db9e356b430b2710d3079398c25019ce98117d626 2706173B4671B48DAE6574D25124C400CDBF7319EA639549D6D63F5527B96AFC8102
145118ad9e281e94eb6dff1974a134bd180e1f9ecd4b6ff36bacea61d91c760d9f47 270704AC331F5A6AE0B9FCA8ACF343ADA120E115AF74E5A370D962CDC2F03C962484
14522e813f5ebddca514731b24976cb996bd1195e7beee40d06c0d02a512cdd94461 270800896098345E25958EF5F1E42E5404F0CFF25779F341825AD0CA60327B8B4EB4
145330d028bfd231bf3050fcbb53211d18df443553c20573928372811d81a914f4f4 2709EBBE98C5901A0AB9947C7A9ACAC2A2D52A6854D4215964A9B50DC84C35DA9C80
1454941e759778b755502fe6f0a2dbce12ee4e79b377a7c022326465a8d4d3a5393f 2710FD37D7F45211DB5EBAD66200BF86D1B7DDE8B8CFFC15699B57574F41BC525F44
145590cc7d9ccce4a6e432874d4870326bc452c66179aed6f072e99b02a1d8a3f044 271192D0B382D0EA1F8B260ACB4F6D20F6DC2A8E19738E6D6C2C8F8886F34346900C
1456db9129ca9c121b6cc555fc5c2fedb10b8e4168869683c4fb7df20b426af93f92 2712331081E46C0216245E4F951022FCC0AE71C321D72E9EE3F8E0BAB7B50AEE96AC
14577e6e53697e7ea4106f95e298e943d63279466a48b474fa5c9832eb9876c06455 271357AD3E7E80292D374CC5CADA3A58EE42B8E5AF7E0857A2D7D6A49C3CCBD5FE25
1458b8168347041c097978f66bbecb9d1b1d239136ab018f528393377f9b3e4bd84f 271430CBFF7D2DED0C09A3465DB9866A44DB92510CC4FC7FF6A5FD2D7B9D98B42542
14599f80dfbf33eedea1089a2f87fa649b9b435aa293546e1a08151401ea47556e2c 2715E3943284FBC49A9F4D5D29AF090D9EEC1BADC848B2A1C3418DCFB8621A019EC0
1460c98994cc2bf3ed44071233e26bed901b102bd57c27cc8fc46aa127dac97646d0 2716244B482A7756B7F451C8F50E639955F0CFA11667E84E00E76A14E3995BF3A17D
146109b029755c747aa2ffe1162f4b61c257751d746c351eb34c59dcb8eec69cba34 27170D6220F6063DD3A440DF1345FBB452CC096440BDED6A66857E5EB9F7ADCBAE97
146239f17d7228a136751fae1b49d16d10e43b401af88d1c5cc12cc4e930f98da2bb 2718D6BFC65CEBB5781075053C8B8D01810DC79910A61DBD9C2FE70DF8E5A2F9B01C
1463c26524df70f76bfaeb4e79649300becafe7af0d4134bfe4a72acb3ca326133f4 2719B28DBC9D078C2D461015EC70BFD21A4E8BE1D627F074CDBD3F121D57EBF35F6E
1464fd2641b5476ffead0bbf898e3a74dcf84e364b580455aaba927645599c3f181b 2720EA5ABB33EC69A1791DC55E45724A16B26B4B4CBD0A3B391613AEC708EF590B3B
1465837c61450357cd3796f09da4e6696a4240b503d91f222e2cd4ff98dcdd225b54 272194807CC1AABD633D0190DD6DBE07559EBDB8D547A8700245E274462234B7DFBC
1466d3f970780d83462cc20b7347f819a3c3636a6a6f95c570c81855a80315044812 27223AC8C5BE2754CAEF619AAF499BCACC517CBBBD772B873BFCD1D77D6D7AC184EF
146757b11641550780d247ea7d9d98b5c141afe728ae32bb07cefa841efc02905d31 272309824F8C93DAD1EAD6C3278DBF5BEF592944D1C0261986E5DC0E928521657898
146851fa6d42c9052a98406d266d8dbdf3b60aba477c1d8bba7e4c868f9ebf22f90c 272485C67595B54AEBD0753A2F13B23A7CFDF5B0FFD61B5DB71D7AEA9400CC22AD68
1469470386549efe2287145db5e1e36f0654d900f8bd0c2bb9cb46cdccd3d808b85a 2725510404AE571D56144A1CEB5FDD07EBA70373847ACA6D61251C79276E21F3612A
147026d6bb38191313ee64d3a740eed2da29d19d1151f68c22897a786c5766f82cc7 2726A66EEDA92F9531A9E80120E754C45EE33932FCB63558F0E4436A061972CB87A7
1471a4b1f9650f9aa47cd4adc7292fd8e407adcc509716773bb2dd3d9cf0dc38c23b 2727A78095AA583A672EFAB142684CB93E8F97BC6DAC1F943AF65430E5E1A7B589FD
1472b41cefe89a1f73c05ea1854b253f09f97ccbdcf61ed915e133379631fa83c4c6 272851ECC713BC2417FC2AC10748DF60079DED68C55EB78F55478C2847AF84A53D10
147306f9aba9b79023854e99fc9c077c0c47335dce696fccf9e62491e7ade48583d7 272922F21AB9BB80CF8C65DA34CBC16EDFCE3068C4F17B96FD44FDC30BAF101F4A7B
147481446a511a0680d406e8b2c46dada512074f0a0d42e4872b3ec3f8871d76246b 27300E421DDFC25470ED373BEC0FACBE01A0830E9F60B68DC014DB248AB9968C77CF
14753ef46ee8a806a98d11237967c8d40d6b845ef5e5860912af2d54ae9697d622e7 2731AA5052BBEA891A9C2C153FEC849383059BDDD75CA572F6885C653944F04E6580
1476694e77149b1cf0e7709dec1e58a8e83055a47c6db08fa046965333652d46b48f 27323B5471A73570B36DF5BA539AF4CA561CE3F121753378D24E4F066126E9407DE6
1477186b4a2db5eb1cf69681fd04a7b7380f4318dcb4835463eb69b72cbb166ded99 273375CB455EEAFE31541BE8D3B11552EEB7625AF8F44AFD826CA6BBC0961EBE1E65
147869189c8f945b0492435750f50cc1f858ceffdadad310fa32511cc741d535c356 2734D96A80F72079759D3913CC00C41AFCC2E8BD77E4684B0BA9A046C45FA064D462
147909a5ae051f0fbd21ba4cc1f454e09b32cdc9955b24479e2edcae5ba61915cbc7 273527115A711B5741929C99FE76799F3878C83DF3EB952FE3701DF6D1DD9269F45B
14802bfb1411d4de4f38228e95049b0989163449809f5a84d5416c555fd2f21ba97f 2736059DE4221079C53EBD185834F20EAFE9516AE2542DFC07ADE444E2911A1AF742
148117c425b46d58c74c356ac55c8cccda5d3a4b05fb8c0560890dc3323803e97b5b 273750DCDA2F35533B6ADC400BE3F1334BF03DAF8507F1BA344F37A62C93ED723B99
148247815e52330ff0f787c0e9369ed58d6d86e6f6400953b6d5684d15857a21e7d4 273885DD143CBB2FF1C6CAB51A3D53144B5AEEE8FBFCFD7E94C1BD65ACDC1800AFCD
1483e40cdb19c6f2c861cd16303479632e105cb5ab3ea033c3a3394fa9405bcafb5f 2739F10802E54F97AF281E8189C20B7691464A509E04F50780DDCB29E6880CE6D021
148499dd1e218e349ecb73aa7b81fe13c0725d7d5b3d668d4fc8a7bb450cc3587233 2740318111668E4E00A39A3E177FBE919698F556F36DF8ABAE00B92DB57060E7C37E
1485935bbbc950619c230a54fec86fcd3a76ba5d5d50fd7893640bef811276fdac5c 2741A7841F824E33CCB749A80FD9906056B3B675D2965EFAD87CFAA1439784A0C172
148626558c0cd47aa480bf8d38f13614141d4fceb13fd43bce85460bc0ab0e4a7573 2742F30E7C32DADC9232567FEF3D544A73C9502A6A805FD2AB6F086BEE1D4704EF0F
148741f472429765255e0fa56bc74adbf0e1bf79e4c66d48ad0fe5a74f865c0b0df9 2743696400C507EEE8DBA68CA9EA8BBA9BF656DCC6138E2B2E5A27F24191FF71F984
14884cc4fa152bfc97789d4145b78edfa8196672b5c553986e33a1428e29cb06f8a3 27446AEC38E8A427393C96BFCCAA69924DCA437B5E18B17530CEA4D3456C3D857C11
14890ad721b0a5dde6095cfefe29915591ecad38e1985af89e5650747d245b7ab024 27456EF03FAE1BCF595125912F129F8713A2B5483500F099709DA2E78B87C409C6C2
1490caba200dada44062ed5253b99db58bc12b8936663f04a1cc3518e82cf10390de 27465B6B4C5E1C7FD85F23DB9B544EB428A92D63AE8DE6837479DA0A4235C81554A4
14911c23997950b6ac6ea17cb32093aa76b739a79d719fd6ceff1b4e17cf9da801e6 2747CDEBE0A13601549E5E9EF9CC778392D8ACC6CBDF167D511A3E5212B2FD8F2093
149213b4ade20f40b031682d5c9a98fe7bddfcd32bdcdf45bd60b4bff2c7e5361e03 2748349FFC2843356168A97050D6BB94FCD5E51507C5DFEEEA78F8F78F3516D62215
1493d09da82b121b17d5f1b51aa6d62b358b7ed2ebba1603b7bfb14447f6050bcd36 27497FC703FA58AB15A5B6E08B071117DCD73945CA33F0E49E0E02D57F82A02FA6BD
14949ef230aa529104bda35111aebae9226abfe775c67f165c02f43cda139121da02 275015946D42D5AA118078554A2F6B33C43CE5C86B9CD2E11AEF151F68A9DE431437
1495b30a63fe00fa404dd4616b406a51733b86a5578f9a0bea13d50f81ba59bc580d 2751358CFB4427C4C2443AA9B73A890EBB5211BD3004FEC19B09A0043B9A48BE8FC6
14969b72a55add983c29924d691c2184b3b45b876bf72012eca934acb551731173bb 2752D6E2B4ED3BF497D0553CE08B83B3D13C77A7F70B385FE049A2D8EF336D54DDBE
1497ef3444dbd6b5ae5d3d65bfea9672b4c56b506c3ad692c37e5f40a00cee82bf1b 2753A35505E57CBCC6173959E05CDE1CAB7B97FF8D3AF32F206EF37D821B92D76D49
1498181f723882894bdb054e17789d29f1d1cfda6d6df40bc752975ba953770a09dd 27547B17D31A9343E448B1CEBB51AF0DCFADC5937A8CC468A4A26A966DE4F7A71B5A
14998fb9743b8404c8ce0406fd0546e6748671442e36800e203d18307c448d665a0a 27558576A783A64A4B9FB795F2BBEC9573F88772C68FF15020AE3F6B3D978AB61926
15001fd1678636a00d78fde67f5ee576ece3440e880f4219bb9793ee2dc9e248094c 2756B0DA27604A975C2DB6421DF604FDC5D2F639ED3337AF4E6533CA348CE58DA987
150121da03d0f12c9b27e40ca9da60ed11350ca624f4869570d2cf009d4807ef4cc7 2757886A0BB3B232C4871FBF95A636E90AEE93B13E4EE6690097D16A66553687007E
1502454c35962aa8091759ee4f94cc0f4239bde96326dfe11f391d30e9fe95118c47 2758C343FBB4BFD329CD63146A11C6EAE47383B7D5ADE4599D51F7ECA6C6C8435B49
1503a78924ffa71f55649da3c71430ac42a268a536338da5b8f8715f2647b0a967ad 2759BC4AA33AD40D70CD0591274730AA3116A0BB4D9580E15B10358EF74344A35DCE
15046ffe1c087f8416d7e4ea34b5c7a8e76c0de874ec04292e6263813d74138e933c 2760EF7930FE8AC50ECAB81AD910150E9D909671965AC826EF3570EFE9DCD2C23E3C
15053278428d5d6f3e006619e194a90cd9bb4fcd7db1dd479a95f4aafe2c2af8e84e 27610686D6C958E81513EF8E856375EF14910FDCE53A2CC75C31FB4CC98352E497BA
1506a4ad33956ce1c7b57666bde8530601242801d21f36ba9ff6322d2ddfdca66956 276266D5B5F02683ADA1B57907FE29E551D4356DF800771FDF6323976F6CB8D41A72
15072cf67c662e4eefb10634129ee5f24454068aa8f75660cb55226fd65bb0d09e38 2763BB0BCD5BA1D0C5DFC7B30517F708580BB486D8DDCC49F5122454F7463CF54E4D
1508a078e55b89b7e4ee49f0dfcd212314a3b12bee69fccf692336df2ede2f864dfc 2764D8FE3AB57B68D7FB62C600590366788558933F87311E6FBEAE1A0F77A01967EC
1509ea5f07afd2c787a733f0c62532aa06e03bee73a9944907fcebe06e075f1663b5 2765C97267BB19A46D3574B49906D23318902F7922326591068746558FEE0A84D83B
151065ef1799ef85d97a0b831fcf5d16f98e2eddb5259a9ed0bf444ac20721b64558 2766F553D2C485CA8C37F1A40546D7684B92D7C5DEFE312A823F117A125FDCA90648
1511cbe05c2ab6e9ee7c35c3a66f250a2df65ea7c1e8ce4f8cda8fc1e6a73d9f81b8 2767CC648B33DBCD17520460C89E0149E00DB2D018843F4106C35431F9A26A279016
15122904661bcdca0d35a2e3958b03a80f950d661cc0ed5570a5cda3b4c3127b5ba4 2768224E633F16FA09076239E82F6F5B101C9A1FE4AFA629399AF5CA419471EA13BC
15135b1070ca004d5669c3bdf2b41958d7b43eea506ef7673a6b71da070654c6a422 27690610CB10DE3609E5417F814161AF869D9E4E053BA22CFED450C88E540940AB0B
15148d6f5d87c66a179541bbc8d3fb1689307f7561dceab76f397241b6d39225f9b3 2770A933F2D9C989D2E00E3D3537F6377CAB0F7B6CBF6312D35B800557E269D519F7
151567107bc62645cc0853acf3701285ca2e3ce78430c8a598e52a920ebbf2d01bd4 27718092C4AC931BDA19F7737B176E4820B9D3F72A9B0E0773EF91F82BDF812FDF42
15167b310f384feb7113faae4a481503d6ca0f77c3a93b8f4786a981aa92729430c8 2772084AECAE788D879A6FBFC2198334B437122D1F5098214290C17D63C3379D6C9E
151789ac713a4d6e3b9add795b60a7af73bce8a21141875e0c9a8104e37ff4709c42 277379ABEAB518F5BCD9BEFBD6FEB556AA64BCD5B5207541D34DB8D0036EF24AA183
1518cf6f7088e1ba070587bdf9e48edea73a1a08a2eaae956496dfbd0214b27181d9 277484A2D7C035437266B36FB3CDA8A80E93BCFBF25418BEEC672961BADDC36AD323
15194782a504ef3deb0ada683d83b51f519a7ff3be86d8e2188bb43be581893ab0a4 2775BF12C931B2439722796F929FB1F68429124249DA2A9276D8F2420F82A81FB0C3
1520e430263562faa964d31c4376c654d6c04f6f7be4d13e5f5db2d170ba14fe933b 2776DE6EF9F4F306479322D9A6A9278B1A9CB0C1ED12B73F6435048BBEA6F5E3C414
1521b5adbf73a70539291b9b8004f270bf44b914d4b2f2605c1c61886a6cd44b59a6 277788E459D86A9A52D4D74339BD6AB509EEB4AB7E567E237202C8F1FF0B0AFAA20D
152273aad60fb4df0f0285e1763c5647171cde4c67b8dece2ca48af3eff7853ef087 2778CABDE3409F3BE6541A1ACB557323CF3F9ECE336FEC89C4A041E09718761DE065
15231453237270b10e68622ab25416fa04096721d5c4f9a8d58c1bfcf37530f56068 27797F13F42CC2ACD83037AE441247F1324F6F14AED5A13BEADC8A3F51557B35BF5B
1524c69bc231444cf07d06bc70ccdb694c43ba3c196b805dee610343670127ec3569 2780E2285A1E0A374E34A64DFE6694B723A02C7CB4AE2E3AA3D97EAC0B6CCECB40B5
152559d494619ccf2e6288c4903d7d35acf236c7462c608a5fdd39519c7feb345fa0 27810CF9DE0EB8E4D9A13177A3D9E835EE742FC6479DDDA318B61AF49CB3C8DDA06F
1526a3aadbf50ecfd740a81cc10f9dbf649d62bcb2c20b9f813e3ad6ae95185e4dd9 278258568CE8468B8CB056C78D6B89957E29003CFC6D0B7BDE6550691FF6EAE5D63A
15270a0bcf4ef97763fde5ca96963395bd26febe68c0030d153da5c7c1cab506f01a 27837E83C873FF1A1EAACB8F73E5DE34A1EE71B6DEE81B6BE216AFB7670DAB35ECA5
15280e44a4369d362f2976a7633d2cf96d1e85c8c06d8a2ad379582293cc45c35183 2784352830B18099FE5CD0DB566E3B6ABB12DCCA21779961A61A89B211D0B0139534
15299d8769e1b2d656db9ca360220abbdc0b0aabd70b9f7cc1b497fba6fdf178b24b 27859F8222ED81C4090FDC4DCE46F82C569A16182B126CBE5DFF50E33D9AA1F3C1F3
15300f05f4c8b5c5de81ef820559b115840b6466870756dddca2bef4a9b04e6d7dfd 27868B3F8454B3B606A17FF969A160996FDEC3FD7774D7496C56FAD1D7EC85FEA79B
15314ab8daaff62c72cd139f3de83b8a2351f05fd8c9f36d3cf3327dcec88458d643 2787BD89389275D701D5A0B220F74AE2744358FF391E70041C53649E42663BC79B0F
153203ef981cfa8cc19160a8f8bc29dbb03b57e23775f75823778cc4530c2f9d406a 2788896ABA484B06532BA3C542F44D04780B31793DC3588A8A57A3F43BFF32E0BBDC
153333176a9dfcd72016b6921e683a4eea9efba1667ee95359b578a12bf578846a01 2789E2D5744145FE796ABB1DACEE440B5B2CEE966312E8668233B7DEE86E1662DD7A
1534a8e4a3511e1b19928484d60a8fef8bc88694b5b9a88e1fb3c41d4f17b3554583 2790CA7ECAA10F9ABBADD26A5096F87FAFDC93647EC1246A1A01F835B9272CFF293D
15350b057b9e31a8332a1385ab164edd70d592276c925db60ab252af9cca9e76d852 279175111A98794F973948CD2E9256B4C11C35F648B8B099BA239F077B790BACFA13
1536f8636d7210c4ddcde04dd9a542b67349dbdab095e065a63bdf658b42611f258e 2792A7A6FB6829FA299A664AC53D866D59D69AC6219237315416DCD7634A478AA3F0
1537407c2e7ca58ff06a126bec9ef40bb797bf3bcd1bad011b306f3ae51157a181fe 2793CBF14B01440415FFB44B955CE1B7E4403B45D0C5F84FF1F94BB4673394EAEDC5
15380531ea42e299335b9b48c84de86fcddd8626146666ca12eeed2b78f31954e886 27943334D8DF5FEE387A7E170682950705AFF8911B9F82EB6D75CCBC5E830492BDFA
153908242d31fc327d449c0db08cf5ad4a51421b23d3b982dc90ead282ac7edaed2a 279578AB0E19532F13B0A68EC14DBD57694CB60734554C837EEA049EE19036437FC6
15402be70e468552e657c1725610dd3979e427c91a49d7357763b6fa9e7d0b7fa0c6 27962A8CFD94301FF00A06730103F87A46F746B141347D6A519B35842AD0F533B692
154107f32019d952881a1030108152fdc603ac9e5b45debc352fa19ff3e3c1a15930 279786DE9040E12797E78041A50387FA904192917DE35BD56D767FE6D41A9394E5A4
15426ad9e2845a96d7cdb331930c77e428cd99c87bb0434ba1701452ab026cbd8c6e 27983E113A087CBC42C86D71672C001FB8E18AE25E99C33FF1FDF1DF12F38F2921B7
1543ade593cb540411f3d0dcf97349f223f7a24e86b3e48fba99eb14849ac00ade62 27992DCA18338C477C2040F4BA8AECF2933CFA0A9C08AB9516AF44D4197194E3906E
1544f6dbaf6fe031d8137e879dcd70e0468559cce22e0d2ce54fce15f6dc9fb08fbf 28001A47F428E178D7E9F5DBCC1DDC73D8C96769B43046B75593FA8FBE53A16DBE2A
154518dd49865698dd97564049c35eab8574bf7318e10328825f3c1677eadf2d5d60 2801CA69312A8F4B26C7E75A2971FEF9DB92690FC43A6A55B13B6A06D53CEAFD2736
15469be21baccbda5c55f70de00771f3ae621c4b1e69eb936a372ea02ea3f793a159 2802E2C1244F106FF2118A016EB4C1FB8D76281CA50AB56F783416BBE0D85D43F6DF
1547cef60fc226e37608304edf5590116b7d3423e01815d273fe5b30d11893e6b655 2803745611F6F133757E3F657EAB60D952C6769BA31027A604DAD8C28E746CE6E01E
154873cc7c4eea3ea22bf4ec6b9eb241dbce446ece9960255d334cfaf4ef43f7c7b1 280439CE1A5D99E826235E2B32D8D9F39ED7A90A852038A2248C92BD4D836F82DCB8
15492e8296dddb507b078032c8e816d287fc0c6b62649a70ea588c7af664d3024747 280572B6BE7EBD141D9FE4F664FB875B0D16F4DC72FE7EA927F9E9402ED47C63B5C2
1550be7f7b88baf2fe63ed14d29af0ebcdd5e647fd21852b5ae80434faa7b4b40c92 28069295261BE144D10B4BB4B49B708FEF3808317A02B9D4DA689240B68DEE3E5A79
15515ccf2e9da47c41e46a859d3840a7493295cfd7365466eb88e3a605cc1344d280 28076C5362489025315A8D44D572C6A7866C59052C27A691BCC073546E37FD699818
155221032f80b41a7ca14892086f7c8084334c1d77c73bf12d6b7476243e010df558 280864D2752D7EC32F527664CE2C218DC41BC437CEE5A744669D332CB3D0C0F32B32
155308046ef31ce4a84a8c22a6de944c39d7a22eccdd302b081b459d675e193d15ee 280942CA982706D3B4DA6BD9B1F4E31B44BC1F9AB9AC4C26DE5B1F84392FF8D9503A
155447033dd17c183a009bfe91ea6ba1a64535edfc207a127e1011ff20c8d1d28045 281082DCE35E7418D0BB41858253C5F8EEAC5DEB99B729487524F3FF9CDC09DD6242
155560a696ae042e156a5dde571047465617b081204fe0ffba1088c11db560aedc26 2811603DEEB3E534B1F9879172E5122E7C399C813547B18709C6C42482302F841314
1556e44c3e6ab0c7714cedb550839a8034a2877f85e5e63184e9df1b882cef02acae 281245FE78B4B6AB40969A46A5857E36082EDCA56B0C50F70B3C87CBCF086C2C2C94
15576097333a2eb8f4c2fa7c433c86aa10f2ae5acdf634dc05c4a2abe1d45960d308 2813820F462360D116D7CAD3E24D99E9B523295C6920F7FC801D94973015C60D0E10
1558fd8410bc5d17c691103ef5792bde143c6a15b88d2406d3adb0e6448422d28001 2814A1529CA0BBEE521D4FE2CACA48BFE918170B32AE3013A028D48BE905346169E0
1559d54b009d213d7015da4c5912f3e37c1c53239b3be9dbee62aa288d1bb2478d92 2815090FAD0BEDDB85C78D824A7F23BC4E48CCEDBC8B1DF39F81496AE27A92FAF47F
15605c07ee1c78887457545552630e9172f6fc1b5819d6cfd2a5141e22f3eed0a6de 28166A01247548DF90DBD56F16AB39961D064CFAA5C82C662E7AA737CEBEBF231756
15617f83cb15f018663f7be2f1346cc917a2833482b826a902cb142ad89f0fb22537 281739A36CA5E5A62F64EF5974CD8E878B7EBE543F170BE7FC082E847F3E46AD6173
1562c1773a256d83d024ac92bb7183e58236d4deb8aec056ee4b672800091bdfa74a 28188A3D3D5509D23B3F27372DF2D9794E76CDB43A7AAB0024A38A6BBB824BF60EE3
156335f5db1bba21867028530b945dfa1e9c09e7f8d5802be922df43abdb2c3c6d55 2819FA578D4D746EED9C6344D9735AEFEF59ED9CAF65C534B2DA378A122649A112FE
156474a2473f136ea74d3bbfcce4e95694e51ae0c951eecf7424e9b7eb82f4c37bd2 282089A8507D4A61C356E9F170A38713B42A943FC535455FFCE9206108A3E1F8EBE4
1565455af16a9ddfccf92f727a06d65e0963251cd0f4064cd844244a85ad4a2b6793 2821B0BB08771E558284CDEAE623C40610CFD957991FD27124272B5C36EECE403798
1566eab122ccdb9578e78d021fc4dd8b3af382fdc9070cdd672554b93addb317cf0a 2822740F708DC51CB62AD14711416E25EBF4E4BDF74C53268EB75397EB464DEB602C
156784a3ccd39966db82820b47d9272d4bc08835731f17412c40d966912f238557a5 28239F61ECCDEA568F351CD1457CEFC102D13673619175454C90756B98DE424C6BFB
1568044367632ff9731f3b5d42252ae0097308e5fb2d9f55f80d688e37139d3bdd18 282411D80BB18870F0474B4E41CA42BD48D8996E285EE8C5356AA4624372D65AED26
1569fb60d01a33c5f3cf30bf6695c09fe61bc07c4da0de6b5ba543b46475effe7368 2825E2CDB074D2F14B6A1EA9B76920EA90E22934E666A7DE2B5A083A11809B8488A9
15705eded1d7fc2d40d09560955ce0e0228d1762218dc326f57dbf428e5da0108aff 2826A4E930CE3953589341A4F9DF1F86241E452E703149D640511B02ACDB01283A9A
1571cc2df33a58739ea5be0b818ff9a1a0e6f3674262be777ff591bfd547ff7ed820 2827A3A16536B09D018CF80B684E9F08D1AB27AB0AB47F382032C18946141F037849
15720fc6803bf9f2f6e3ec13cbb4c7cd835a8c52edc9e6fd7abc46a9809186aa71f0 2828CA7ED0FEFC3998D9F8EF591811201CC423CC64CDA38485100143873139163F48
1573c1adf363c9d1200377888052e76383da080aa026833c0aa4fc03fc60fdbaf721 28297BB59A6AF989740D1A649A6F9B9EC50C10A9B2E93437CDEA9D314DB847436614
15747f6b7fdfc5b42a727159287ad66ba916dc0c17d8765b9e1816b29aedb4001f45 283028CCB4CE02662246C2424148790EC018351AA113D9A0A2E70FB46FD54EA84DA1
1575444edc08418ed169a80d3d40e46666bc8ccfcecd0395953f2a6b8d80c153a46a 2831C14B964468D4E42D75581F9668B83D4B4703C855CE8562BDE64A942C9D78EFF4
1576750a366047c8175edafd958e3ef509c85b81d6bb1c6d2ea28f524fdf5dabef16 28329C79340157672D4DA55FC4018697AF3EC3A9DAD346C87D5CE849793C7ECA6851
157733936dda39514bd50a2bfae0cd42f7e7d4f6a8ee855099d08e983dc57d682407 283346A3B287AD6A9F004334F05C9ECFFE90B6D9C9AD5B41DFB5A38F814C4CFDB508
15789047b0d88b5c00c3e71e623ef1c4b593423cb1a6c9691c743267063656e9a6a3 28342A6F5963E93E3A4CA88EFFCA9951C4D52E82C68EA28BDACB61C6AF6DB220C48E
1579c7628865a8297bbd6d3fae755a12f187df1898a484d57b0fec0ae9c4ca861f9b 28359DD4953A24B2CDBB5F37DF257178271BED7E6AF0A3028699F8EFE9C69A5FC3FC
15807c97 283654A56483531E7925A7AD6402D32E46B7A839BE5668E4292FC083C0B336A6CC27
28379D3F91BC3985070ED952B979E9ECE9A5F05322FCCB71326DB47C2E464E453FF2
2838D41606230F283D1232EFF84C278E317C6E7BEA6B0B2379DD90E7D4070C6854D7
28398A349C0EA008336F4263C63988B242B2C3BBD238AF6EDD472A4CE102C4A2BDF6
284089DD29D112A75E1D48B1262EED0E88BEA7CE6105280716E56E1867ECD075B36A
2841C7129CB5611FE389EA16AD4F1D398DDEEF906EDF16D09561AB30FFE827AB7306
2842F2E75BFE704EE8FEC256A6E56FF64199038C006B9BD322662AAA57128CF7C46B
28434532E9290A0BCBD99601AC41C939B74C5EEF26D4B8AFF2ABCD75573B43686B6A
2844824D68C5FD86772F838F349C0EB447ED12033A2E0DF8B1282B0B8C4F66A7EF7D
284554F88CFB199769DCDB12B4F9E46BF041F9D9542BD25275751456AB8DD944EE33
284635B4F89ADF5908290E543DF55E56C4A4CD30765DDF9AB61F9365FCBC56E92FDE
284753A26F582D1009A91E848C7730A7307CE2FD2633E10AB2810DA88D73907C0174
284823F6A857F749656A85071EB2D42A73210FC95927B3FAE880BC3C2FD9EE456DAB
2849E33B86FF95063E1666764B157F933014C1ED77655C2C7CD2F2FF01450844AA5D
2850A2B6BAFD6689DD45532F38C9DA7035D219F1F59E7096B4091E7577FEF06A8EC7
285168CE94AC36018C7A4590BC0B23EA42970F107D23215F006CDE4E36909226315C
2852E81EE4645B0F9FC187A389FC94B0B88A2B8BBD6C8584CE237BFE9A25115C3EDE
2853FD7AA4B8E8F33071785DE12335BD62E18F3573B74A881A701867B7B72B366144
28544ADBB9454946F9F2815E119670AB866FA07AE46D39C6D94C1DFC73E43374D8CC
2855BF8BF2660A5CABD711BAF00313DEA3E9B077F1440935AB4FAAD4EA04F3199E9E
2856DA2976B9916405D4C706652477399823C5D2F1C652236FFF052DC53A8500ED33
2857F86DB117FD01DF7F865917248A215F2A1E8C0C801F8773BAEE0C6BA10997D577
2858D80D03428997EDBFD37C36BC606356F57E774B3CD4594E0E29CBD217101791CB
285908FE37F177D201DEEF1A08EE67CF5E402D7C688398493C2DD29E99ED397477F2
2860B0872E4228A45DFDFA571C7680DFEACD9CF6184D27FFD7D6DF754405A2CED22E
2861C26F9B2761463C01F64E5B4C7D1746F62642EBE648E32FC239320600690919E6
28622D9AE66DD5A552F2FDAD74858A8F87FA7653F1C2FCDB8E1F4985ED1405A5F27B
286328A1C0A04E7CAAB8BC94160E1B25734A95289D455E6A64EEB65D74C76B123EAB
286474ECAC9327F4A57D757158B51BD17A0C0BFE6251FD317AA030E211B10C9B5C28
2865A617482DB21157A1A9E2B43CD32747D14DFAB92E08B9E745939F4A426F9A3E63
28660778520D33456ECE373AFC20749E267FCAA88F092FEA5F3E64BDF5629CA57F25
286728FE3F1F11906E5C583099E5A110946533A74100E32DF1A793FCF352C67CB948
2868ABD084CA35EBCAAE875166F66573B5F241CB15D90B74852307D5
15810000000000000000000000000000000000000000000000000000000000000000 28690000000000000000000000000000000000000000000000000000000000000000
15820000000000000000000000000000000000000000000000000000000000000000 28700000000000000000000000000000000000000000000000000000000000000000
15830000000000000000000000000000000000000000000000000000000000000000 28710000000000000000000000000000000000000000000000000000000000000000
@@ -1589,351 +2877,344 @@ c7628865a8297bbd6d3fae755a12f187df1898a484d57b0fec0ae9c4ca861f9b
1589cleartomark 2877cleartomark
1590{restore}if 2878{restore}if
1591%%EndFont 2879%%EndFont
1592%%BeginFont: PLBX10 2880%%BeginFont: PLRoman10-Bold
1593%!PS-AdobeFont-1.0: PLBX10 1.02 2881%!PS-AdobeFont-1.0: PLRoman10-Bold 1.11
1594%%CreationDate: Thu Jan 07 19:30:00 1999 2882%%CreationDate: Thu Apr 13 18:00:00 2000
1595%%VMusage: 1024 31190 2883%%VMusage: 1024 31190
1596% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. Adaptacja PL JMN 1997 2884% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. Adaptacja PL JMN 1997
1597% ADL: 750 250 0 2885% ADL: 694 194 0
1598%%EndComments 2886%%EndComments
1599FontDirectory/PLBX10 known{/PLBX10 findfont dup/UniqueXX known{dup 2887FontDirectory/PLRoman10-Bold known{/PLRoman10-Bold findfont dup/UniqueID known{dup
1600/UniqueXX get 0 eq exch/FontType get 1 eq and}{pop false}ifelse 2888/UniqueID get 0 eq exch/FontType get 1 eq and}{pop false}ifelse
1601{save true}{false}ifelse}{false}ifelse 2889{save true}{false}ifelse}{false}ifelse
160217 dict begin 289017 dict begin
1603/FontInfo 13 dict dup begin 2891/FontInfo 13 dict dup begin
1604/version(1.02)readonly def 2892/version(1.11)readonly def
1605/Notice(Copyright (C) 1997 American Mathematical Society. All Rights Reserved. Adaptacja PL JMN 1997)readonly def 2893/Notice(Copyright (C) 1997 American Mathematical Society. All Rights Reserved. Adaptacja PL JMN 1997)readonly def
1606/FullName(PLBX10)readonly def 2894/FullName(PLRoman10-Bold)readonly def
1607/FamilyName(Computer Modern)readonly def 2895/FamilyName(PLRoman10)readonly def
1608/Weight(Normal)readonly def 2896/Weight(Bold)readonly def
1609/isFixedPitch false def 2897/isFixedPitch false def
1610/ItalicAngle 0 def 2898/ItalicAngle 0 def
1611/UnderlinePosition -133 def 2899/UnderlinePosition -146 def
1612/UnderlineThickness 20 def 2900/UnderlineThickness 60 def
1613end readonly def 2901end readonly def
1614/FontName /PLBX10 def 2902/FontName /PLRoman10-Bold def
1615/Encoding 256 array 2903/Encoding 256 array
16160 1 255 {1 index exch /.notdef put} for 29040 1 255 {1 index exch /.notdef put} for
1617dup 12 /fi put 2905dup 0 /.notdef put
1618dup 66 /B put
1619dup 68 /D put
1620dup 69 /E put
1621dup 70 /F put
1622dup 71 /G put
1623dup 73 /I put
1624dup 75 /K put
1625dup 76 /L put
1626dup 77 /M put
1627dup 78 /N put
1628dup 79 /O put
1629dup 80 /P put
1630dup 82 /R put
1631dup 83 /S put
1632dup 84 /T put
1633dup 85 /U put
1634dup 87 /W put
1635dup 90 /Z put
1636dup 97 /a put
1637dup 98 /b put
1638dup 99 /c put
1639dup 100 /d put
1640dup 101 /e put
1641dup 102 /f put
1642dup 103 /g put
1643dup 104 /h put
1644dup 105 /i put
1645dup 106 /j put
1646dup 107 /k put
1647dup 108 /l put
1648dup 109 /m put
1649dup 110 /n put
1650dup 111 /o put
1651dup 112 /p put
1652dup 114 /r put
1653dup 115 /s put
1654dup 116 /t put
1655dup 117 /u put
1656dup 119 /w put
1657dup 121 /y put
1658dup 122 /z put
1659dup 123 /endash put
1660dup 161 /aogonek put
1661dup 166 /eogonek put
1662dup 170 /lslash put
1663dup 171 /nacute put
1664dup 177 /sacute put
1665dup 187 /zdotaccent put
1666dup 243 /oacute put
1667readonly def 2906readonly def
1668/PaintType 0 def 2907/PaintType 0 def
1669/FontType 1 def 2908/FontType 1 def
1670/StrokeWidth 0 def 2909/StrokeWidth 0 def
1671/FontMatrix[0.001 0 0 0.001 0 0]readonly def 2910/FontMatrix[0.001 0 0 0.001 0 0]readonly def
1672%/UniqueXX 0 def 2911%/UniqueID 0 def
1673/FontBBox{-56 -250 1164 916}readonly def 2912/FontBBox{-56 -250 1164 916}readonly def
1674currentdict end 2913currentdict end
1675currentfile eexec 2914currentfile eexec
1676d9d66f633b846a97b686a97e45a3d0aa0525392eecac163e584a9104d99ad0bc 2915D9D66F633B846A97B686A97E45A3D0AA0525392EECAC163E584A9104D99AD0BC
16771b1844a0e222653fa481b8809b26a46f4c483a5d7e95816ea6582584156cfede 29161B1844A0E222653FA481B8809B26A46F4C483A5D7E95816EA6582584156CFEDE
1678b994adcff4645140e3617e4d7e1b0e4541cb9f562e55829b4dd880aabe2229e9 2917B994ADCFF4645140E3617E4D7E1B0E4541CB9F562E55829B4DD880AABE2229E9
16794a9fa259a734d29bba91ba1e2055cbea4339bcbff98d32ceff11f296225caaba 29184A9FA259A734D29BBA91BA1E2055CBEA4339BCBFF98D32CEFF11F296225CAABA
1680dca10577a5d431b714726c1278d8101abd1bd8d0bd0174fff9148f8c61c241d9 2919DCA10577A5D431B714726C1278D8101ABD1BD8D0BD0174FFF9148F8C61C241D9
16812ad360a28616cb4a0670c1bf105a25e1bfc9f2b5d2adc8239cf6ceb1085a5d47 29202AD360A28616CB4A0670C1BF105A25E1BFC9F2B5D2ADC8239CF6CEB1085A5D47
168276bf78d14753f998c47f4fcb1ab6b7595496fa51af12771741c525cc727551a1 292176BF78D14753F998C47F4FCB1AB6B7595496FA51AF12771741C525CC727551A1
1683c53b99507cb5132343184f19d28615dddf61ba4ed26ff746a8de2d895cd9fbad 2922C53B99507CB5132343184F19D28615DDDF61BA4ED26FF746A8DE2D895CD9FBAD
168456cceaddefe9e0d07a01fa572fa8e90427da946147c08161a3d49c534a5966d4 292356CCEADDEFE9E0D07A01FA572FA8E90427DA946147C08161A3D49C534A5966D4
16859db68b43e54b6abce3674e951551a86fee8206e15d755fc96d3e006d6bfc1c3e 29249DB68B43E54B6ABCE3674E951551A86FEE8206E15D755FC96D3E006D6BFC1C3E
1686dc4557cb035687755e7896fbbdd7f0e8feb84bc965bb3a156ac014eb63afd5ea 2925DC4557CB035687755E7896FBBDD7F0E8FEB84BC965BB3A156AC014EB63AFD5EA
16879f86295b06a8954df1fd0f5c49d1e4fc45e07f61035f23768667fa661fd8d83a 29269F86295B06A8954DF1FD0F5C49D1E4FC45E07F61035F23768667FA661FD8D83A
1688f919b5e9fc42f7f3376488cbdf2d84189aec29d3442963c84ef6a185e1fe8b2e 2927F919B5E9FC42F7F3376488CBDF2D84189AEC29D3442963C84EF6A185E1FE8B2E
1689dac61e0afe78f39de16cd153a9a5521ba6235a41981d6fa292307bb1674f8857 2928DAC61E0AFE78F39DE16CD153A9A5521BA6235A41981D6FA292307BB16FDDDC1C
1690ffbf1b4d888a053067c8bdd020c124baef8489e22a9695239572da12faa9003e 29293BA6FE06BE9366B3243E303CB1134E3301899D29B46159F65190979324826E4C
169177b58b735c1f44c5d887a016954e26706951085403691a73361e5a30da786e59 2930C903AC30059F04637AEAED972F75FA7E60FD83CA6E5A43206587E6329F6CC3FF
16929e554acd9f59a3e70196edb7408d844d77af0d6c18318591c18b3498fedd429b 29315895100355AD8F4D4EEC9CB5330F6B28D7229DA29624B70E833AA2943C05C912
16931b1b8550f2219e7ef9cc6498377eeb98c0c01cbaa10c0032681a5c2209013769 2932B7B60343A7DC7A3F6F1AEA9D868237E30DB8618BB04B765781A7EAA080503F95
1694ec79e2f70fa0b7f7bc3165c34863c9ed9f7928ab93f9c6c4bd6d42c7ae37894d 293316B125739FAB9FBEF8523676B7509EA7AD0D2111E34025D45A68E6713BE04923
1695b7d9ab7deba978f86de0d40252391203d2019b4cc7191a01e6c46712ef0332d3 29342B3DF2EE4EF47A38B0D8C545F3F85475C51BE22597651714C1A4FD2F200995C6
169655e7991f89eaeafa9102fe5b08f936a704bea3521abeba45ef5a863e6df6994a 2935807B6805524A6D24289FF6CE2EB50AF4ACE16F148480E3E0A4266097351A03ED
169791b8e0f568ac52601c71e2428cafd273ebdba3dd782eb52a382112cb5ccaa76e 2936AD9D7E84C86C4F5E7BE57336A0CC4F925415F9F6B65DD690FB21D5EFB414B7DB
1698fba63ccfb193f0535668963cd81c85b8c6f704ae86151b23b102f075a045f1a4 293780614C024373D7F7E68D33EFB93F057E59608220CC29F4A3B54C712E006E1D6B
169983b5cabe142a3d8c36509f0429a83796cc605f31682dcb40fa2f6372e41851f0 2938D993668999C3A856C017533B7CAF2195E89F96FEAB7D91BE5CA1D915F241BB4E
1700c6fb83f8aab16ee306e3460a158bbcdb278a70e5ec7a790d08c65887497c67de 2939E66E1D478AA9DD9E87F5C8B0761AEF5A91CE7EB13407DBF99FAB4515DA29F183
170148dbcb2406a5b89affc074464941a5c482b5376b87a17c8c15f289f1d60eec36 2940AC857EB50E62666F64930EBB260229711369CEDDA424A91D8D42E19D196B44DA
1702a1f009c699e498fc50eaac6deae31b30eea4b8cc2434681339b3a8c96cdeaf81 294181BA1B9098DC35CCE4573C54F6813B02641C8CB75C522A0ED1925CCDF7BA6D06
17034991a3133a212f0cd9f58b4c51f83916e6a8ffb062fdb938436953236b17bdba 29421C34D61E35F697E4A448DD19120937089808561FDBE83ED134AF5107488A9723
17049afe53e8aca1df369300eeebc1c4888e5c6b77ec7029ef43ae3835433d00d2fd 294363BFC0B6FB57A75B989432D8A030128F796038DFBB841803231B3D1A1A4BB33E
170561a4b4bd4fa23848408d4083243a9c2034a55e82592f9bc8490ba4ed5ffed8d9 294422B0709D275570C37263293E6F25DE1A406FC80BB622CFC49D6B7D6D30D0F7B5
17061a684c2ffef80844659929e4943861f8646aa39c44a05b961cc47fe1aebe771b 294512AC417E418D0BD296B2BC46C1E4ABF5E2D8428D248B12CFAE6A804A5536562F
17072c86d85dc86124f0c5f6fb17c1b3be7ac0155f1dfa12ae5b99ca30eaca35d22a 2946FF26C1CBA38C4FE099F8917C246F8327451148CCB23B78527E5F6729ECB4491B
170888c432e33960c48226928abcc5aac317ef51529b3f18fa2de7a7ab908ec797db 294734132B6113E63B7180C5FC979D625B6D370D36E8D019AD43A7B8ED81721B449D
17098a2e7fbeb199d0d635cb64e3efbe4d3ed522b5070e317e0fb9f7941203be7d5e 294867917AD7C9EF1E123570A93F53E03A2AE1A3CBE32AE587A838AB8E337ACE0AA7
17106aecc7f3e1650efd2e41fc0e09b70e742cc28830f93b2eb0a75247d68070cbad 29496DBC3BCB401D48A9512E4C2C162673270BEA1042D124477238B826DE582A230D
1711275415182abe29940155fc52ef6ec557c8b6dd5d2655a24ec9d4d6135694e3c5 2950A9890E458B8C6A10D1285B1C51570C0D94FD0AC193F8130DBB5F84D6476F5DF4
17122366bafda34b4e126fa2a169230de02c19162edfbbb9edff8461d7a5375f741e 2951B4DD749A33EF353D83D7CFCA9A321D23CCE16C49D5B65EB42AC17F004F7DC1CC
171371f9470d31082a66ee9495a2dc232d103b0b793ee9d2fa84cf8f10df58c13ed1 2952C96ADEF11D3EAA6D5418583CF9F199EF342D909D8260BCAC2F6D8D50B5B60914
1714f6504bc8bae81f677063e62704bb826b994d0fbbfbc9ca2cf1ea72cbb5662cae 2953009142D59F7361F842E6AF5543B264999DFC8C1AE598D322483045C74B8C5962
17156d897220135415a0fc41a267943125a7d4a56bacbc6b5942793df4b84c19f099 29543576A210A17848CE8BCC3674D9A938D7C66C1C509B8E4A79B7F9C1AC2ECBD3A0
17164f14d8dfb0b1f211e019c089e3f0e0bf430e3f19d6a6816abd7d77ed7ca1d234 2955E7EBD5C9187F887964AF85CD87ABF45EEC4E04BF350182DC28A70C1B3E372E65
17178217b753b6d6a66694def49f77d0d5b99c38bfdb75417a73b36b787b3720b645 29567CF4097243AA2D200DE755C3AE18D92FA0250F62BEEBB6F14EF5E51DF139A6F3
171869acaaf1a589536e17cef7cb6b84108f28c8f623a254822b3c51535dd7f360aa 29575ED3A8A74B81FF539DEDB60DA4FA3D729000A35317623DCC6809C3475892111B
17197835a3c621a6810761fd93ca0f1cd26cf55384fc0e501c6e39b5d9de1f11921d 2958D952667728887DAE7D347AEE9EE0C6DE82DB06897E44E38C9E98E488F3893EFD
1720eb0096caad0376274180bcc51a3efba4907e7bbd2dc02cac0eab1c37056c4e84 2959099E277EA8A4697D0987FB01A110C1DED37CAF49B841976DD89EB500236CBAA8
1721d85fa416ade7ebae9e7ed87da2bfd91ac061c17e9fdbac6a70ab42c2a80f83d1 29604C2435D88DB6260FCC2D27E03848338171AAFCE43A4561E4BDC9BF1BF4BEFF3E
172212a178037453a40f4b88f7454e31adf640754c011428e00ed5200fc413a5e17e 29618B53097421F602A18C94817F54639AB84BEAD0D71412F8FABE5A24DE1560CB94
1723797a05073e6957085102aa9be5391ac725c929fedd9420d3f0503ab18d32ad88 29629D746B5C33BB22F242D485368169D550059149EFF10496C9162F79D35DA71EC8
17247553350a8e0a16c6fd6b0e205bd3ddb326cc7b46acfccbca582a66fa4f84d0a8 2963997385844F8D58C6AEFFB23D9B4DF868327E7BAA061F61B65201FDC5744FD880
1725e6218a1d25e53209fe9a66c39f922679428fb0aa8eb4827123f4135806dead83 29640582F1C54AB74AED751F364DD9BE61C39F983276381302AB55A2F3ECDD36C59F
1726c0cbce469499d4bec8130024923a36e236c041c0faf1b537f86d3e11a501544a 2965299A93FF29FD80F22BCF2A9A4F01CCCF1E10C2DA4065A30828BE7CEE911370B9
1727e02305fade75999a45e0a73752a824b79c727b5be4f856f349dbb9aa7034ee03 2966CE7E88DDDA179510EF1FD813BAEF4B930DFF8FD5B1BD2B1DF4014D9BCB47A72E
172825610ce2c5f1b0b5fdce35e27ca00e739bf74ae02b30774b7ea307dd5c9745f4 2967317F79D55A9417BCD367D9234C5471ADD144DD1AF3A76EA8A63CC475F5179A8C
1729fab74146e398e1b675964836f1a230ecb9e51cd17221b509590e316f1facb8bf 296818ECC0D62BA973BEB5B80B96AD9E9C4018AEF735F019AAA33799CC40467CD33A
1730c213123927a58522c1a0be1f391a1d4eda7c3215a82548cf5f6871e318be1dd0 2969BDA7E803F7745E4C1C988226D1D7EEDE4BD0A7A1833B19CB43DEB2538341FA4D
17319000c10ed14c17fae81f904a4327b6d48b3f1313e8bc9ed9febf9e222390e0a4 297065A0A885D72FB775CE8B716878066CEEA84853BD9D097E71411511E98B27DF6F
17320b7c5473f80cac58fed5ce70ba682906eda7f5d900796779d98f236d5322945d 29714C6104916EFB6F3F2AC969A4DA6D49EF4FA7B5AA479980F57705D0FE9E419307
173388d9228ce094945907e2476862704c534227b1e4ed50b3d27b86c6dcba56f09f 2972A77ED0815842F507F27183D8A5D55EA53B9D72DB9DFBA8D910331183571965BD
1734b49e9e7d2156192b2262fedf123874ed36bf55e7669038bcabfe2e2f3851e427 29730DBA9A840E37A7D4CE19CAF6881D65F8CB127FF9339190CD044880D04A8313E2
17354469c9cc1e93069fb851df5b0260a202a567e98956b04507f059427aabbbebce 2974C113D52C8ADDF2829CC7205928BBC4283D1719B702D7A1233DB0BAB179033DA9
1736b72e0821f66a756b184f824e3be1b7157ca6660b429f87494bb8efbe967accef 2975D418C328FFE1E1502AB5C9DA764112E9C82CE75C57C2E5AB45A406D2D87D17F3
17373a10356d541463f8a2dfee0f2c51b1aa54509d31772f680effbe7f44ce38ed32 2976348DE0B66F121E76E6BD1FF6BC3CAEA11F7E0B2D9F3D3991A68CB9F5399C5CA4
1738d5d6785b0b97a512893807794dfcaf7fea840d56d691df270f33705133e562d6 29779F8D79C9DC04B65B020926BD092AD872B158F05CA09EC0F50AA7BC09F3067A7A
17394d5bd492b6db7051a1a6be339a3f41e993a3824b991088d74cfe36186d9be0f2 2978A6254F6DBB9A3BF36665834C8D6B85DBE998CE526A2DC4672AFB01117A84560E
17406ed69c54d8ab6f49511544677fdbd7cf6b44daae639c534b775b91ca6c015202 297931456F95396A4AD4E01789D7C44BDACD73329B02077BA34720E87F8D55257BB7
174100e45c73312b35c1f1379efa1ccd17980b3a25d29269626f8c3515dbca203c8b 2980530A2CE5F9899E56D72455378C51B46739D055183CA8800E0A79E01BABF2184B
1742e767e1844aae6e466ee13dc28206a34c555e6eac50fd913132e141a88118d242 2981C4177DD5A9B869567B7E0DACC95FC3104F8FD850F4F7E5F3A3B32040409E8490
174393d23a1062d5654c8d917f4884bb7b430741cfc69b62a9ea6b8931361c12de48 298209ECF20D3F7F0FC69F3214C00CEB9AF9F5A4C5A920BA06CD8BCDCC40219ED34E
174469b412409bf7ada24af2e5f5a7e74604e28a5c77f93f77a7b4a0f0209fd58230 2983AD309DC79246CEA3EF9F3937F3ACCB52AD5E151A42CBD1A80DC59107424BFB3F
1745d494b83bf44c82ba5313cc5e08dd71a0b860667e3b12711734d8ae403d692b3a 298405949E921C0089ECF5282E2683BE378FC17A6E3E30FC8A797CFCB0C90A83C3BA
17461a2c3c88d32f7fa0742af270b948908959d3939125845edc2c7244786d040030 2985B4D2BAEAB95E8A590966A1F7C23FE0E61A1017DB919CEAB5799D099E451B9938
1747edf22c709023988d3fa57721d19b30f202e2e7082d4189c93503f8b8af96a44c 2986B053874352924FFFE06ADC0596DD1C07F98D5D2F7156874CEE7459BE20D6E99A
174802a4c846b733388520273a080c4e4bba9ffd446ae8fa96e7dcb0315e0d78afa9 2987DB61645A21B4DEA72B19A5DE611F98E2D6D1DC621B8B40C03330E4CB6113229C
17495341a243e14ff939afaea10368375ea6894b275de6015b134a377feca284f737 2988A997D9356D87A63A6E6D2CBA7207E5ED2A8B5D6BE90BE4203C3F857F759E4697
1750d4a0d68c18e57dcbfbb83ccd32c1fcc9a39ee187b530ffbffc0e015863287b28 29890DA5B1B19BFEBA52AA4C43753F00BE4D09A41E15D1A960EB9E3158BF0C92D099
175106d27b15e17e2de73057ba3eab36f7e55a2b1d4e53f6315fe3ed227fc8fffbd2 2990DC93D658FCFD4B0A8821B811AE3C8DAD4CF063DA31F7E8E2986CA4D81B07EBBD
1752fc3d0d9496b795a18074c8893001dd8f9ed6e5cc7086ae41cc19e6d256aa8320 29916D70427D4060323EC6C0B1D4F0D14003C671AF4B2C8202C02B110FBD21BA4CC1
1753ffbb09825e83a444e294156f09b87973c3ed85cc0512ef67e30758415cf70234 2992F4548E3E9704D01550E11B1D1CC97A59F5B2264D35F9A3EAC3929319ED28A90B
17546306e839cbb82cecf0e1a1ca82c6adc0df6a71afea878f8bfc878521c077964f 299337E3FFF62390EFD808BDF9537CA9479C76B8DB8FDA7BD20DA0C263D5F5029A0A
17556a8e855290c5849b31ee851b0e488ca32777eebc227d80a79cc611a0d58ce622 2994CB527790B33C9B0E9870FD873E94D4A3CBD09FE8EFA6FA5694ADBA674280C7A0
17561e5a1d423621612f119be507b6bc34f19b5e2a789626affc34a5939d8aea1c9b 2995C102A032465003A5310EF846E4B962C8046FB3F9AF2A670D888F7266D4DA6D40
1757042c527c1a969eec3474abb21361434a9ea880a3149c7eb4a6b826d0cdc86867 299682480147332F31087D2FE5445B295C56A2FC16217BB5B5A44C3B11027C7176E9
1758b0dc3013505c56663bbae2f51631877d551d8ebcde229817b0bcd6a11b88d2e6 29973CF7DCA4E95529116303DF6A79C301E00600AB38A00EEA61310B34A5E042732D
17593067f81490d227e91c1e69eb48da0a47608e9c06079fc5356b184f0b48601fb8 29982A5A07070351CE3D94CCCC38CA05A3B890E925D744B6AF48AAE86AF266EC3AB8
17607bc623dc34a20d4a1d397515712621a4b479550471c1e9ae0e78fae6fab32759 29995890BEF91F6A0402E4C9E457A92854A526D1EDBE28594BC5F2B30B2D1C0AA610
1761de824cd2a5290ff0f8168cddaae73ccdb7738924c33f31635e00e7a86113ba26 30008E674ECCA30C45555CA2D11F94EFED513D3744BF7C85D411526108BE7B72351E
1762f1b2eff94752d65bc04558b93e671f269355053814b68a625826ecdf08934014 300148E30F6EDA6B277239E5E75BA397998E519B27EC9E29F7D2117C93D6155A8CE6
1763994b947a9ea083ddc5b6c0d84aadc53487b037d94387c43cd101d4dd65abc2d3 3002CF4424870972FC2B171C4C055458665B88B08AFE9C1EAE19DF07EA703E6EE873
17640d89dd2bedbebd2e7f86cfda4aef92a3cf077434132144034b7a1c1f3c28f425 3003EC04657166E98BA573A3EEA5967F58691C47B09CEBE352FF45D653F34E9C61DA
17654002acd1b8f8a908d183b901ad439e2d2677adaab708e19026c598f35bb61313 300416A1DA997814E99C70B6CAA983A119D5C72C143446A1F1384FC401B554D99B5A
1766b12468364cdf52e44520dabe1b204fae82a02301cff3767f47c693372b0657e3 300553378D53978C4B1DB734A10BA4315EAE6637704C683E6C590BF2EF885BE65A9F
176771196b19aac69e316d16a3f10e5b0ea5fcf1873b601caa1e881dcdf05b2726e0 300657662C785DE0B832395706406F4352C3BD0299E2D51F2FD2AED148A3DFFABC32
176868df5210fd876c884d1f985d31f4414c078385e3519594ddc2f398f80c3f7775 30072A2A3F62BF60D6F2439E2D50DCBA8DBF9A98E36E7F3CB0F1282761CD321E25A9
1769ec7f90f8b12fcb8e1fe6e6a6ea31086d85c0b2729af908b0d305df3014215970 3008B0771D2CC29F5BF67E7591163219389B0F4BEF7935058ED16528D28E50E37BBE
1770c484207dd08ceab12c85d898d249995daeadc2b26e03493d3ac7e24aeb710044 3009B1D1554503645C1052CE94A55077C7300F05F142F0EF670D0975D3E512F8520A
17715e85fe24c1f832877b869ffe02b52f7acef616c2067c4cfd53d5633b358e540c 30104F7541A9D9A7C8E66911844735529060B541F6E2706649A38F2345052550944E
177270f769bba710fa427e98ba56e35c1cc807307c13a8439cba3f627b11e163d7ae 301173B0CD2720E2E9EE55B42F75DA831AFF5F4A1B1587CE8B070FCD6CAD74138969
17731601816ea1776c621321faea23cb892aa00f8553562f0d2f8c7684f1cdf8b66d 3012F2C64E0D04E7A384AB792F36A93039AF47F5F301BC6859E75A2535D014B9A85A
17747d1ef09b6ffa4d5e4a384094a161b6ff766cadfa1d7e9313e6510feb4eb36823 3013231737A55533C8A6318928AE4F6BB7D73551EE33D4FABED8EE7952C3AECD739C
1775630aa718a2f9a5d996ca45ed1c7ba3caf15ce81e6185b1f9bf5fa432517f5f82 30149C0F9B0C800627DDA0D25C33B62C5EDC02610D4A348BF572C78CB30A2F939E91
1776185aebec8fd54a541a9e9546caefa716d6955db1bee32890cb3246efb70e3a0b 301571AF69937EE32526B0722C162E655624906DFE47F66A1EF66EE2AA37CB4120BB
177712b683983b2bd4ed9f303f3cf8055b0e9adec8798c16e927af9365968fbed6f5 30165CE017FCC070EFE541F22CB595D2E55E6C7A52C3C7DA8948ADFB24D679C3FA35
17783367a95762fcf0c2c5d3988e4429a47406dfd7b3f0e1be96b3bbda05ed57ef3e 30173EE4725DB5DD405C8CE39D8C2712D7DEE63C22CE01867117D1908D958AD0EFBD
1779178dac2b8d8958555f5218eba096a9166ee8ad565e2f096741b5838e58e7641f 30185C6CBE684E8993B9C48429E96ABC0D85756EBB96B502E82F60BDCF13FD75A52D
17801c7cb6a18d413f9931ef86394a7f97251f7b96856f9da241dacf6d19bca64a41 3019505CED91635094F55BF2570F9211FAE9B3691A04D0896F1A6D409FB13CE8590A
178199ebff93afe086ba33b8244b7ba57ac5409071349d7a32d9e954b2790cd87d44 30207BEBAF2770DFB333EA66621A56115E2E7A1763D775A7AD326589128EE1829F1A
17820c1466730845fe9db42ad79c1cfaadd0da46adeb2d1993a9d466b2dc046abd83 30211E3B8FBBD4A78F8A01F09263081B8BA278BD0B7D531AA9D50B72A167232A5C3E
1783209b39b89accb8125c8748ab6934536beb70cfcb2bc3f98e6264530a61ff1313 302269EC1A3CC2370D8619DB10C162B96E490193208D7CE9CBC4EB12C2BEA2C26F76
1784a3c64f7385fe1e80c8c1ccf86ec9556e53b0567b13414ae5314076492e33a62f 30238EE4BDC1C612B31C7A4A924DAF743E8296350CA4382200124B7C22AD75592BE8
1785d7003d283535ba00fe252dbed89160e80a5f125a050f7b539b5122bb53b8db0f 3024CE7BA0842EDE36A1D32DC13EF79CD0334D822B4F4FF52A35DC39B445B55318D2
1786a7e4d1afef6283cb1783baaf7bc1ccb9d6af4a1bd1356a606aafe3f59e4d1b5a 302500DB5122520207570D513B06AD9A21446882273FB569F8251ABC9287517EFD31
17878d6a7cd522a5ac075dba846093da22db4f21815e74c064e40c2ad3d6d92d1153 30261812C967F59A12EF2385A7F49B1E33AC0462BD394555FD4892363909518452AE
1788b8024dd2ca1b2c2e0ea0c5862fc8b3630eb9e123b8520fcc84acbd4873993107 302728C283128602DB2E36B26E4C92C4D48E3C976E64C24E8B2C638B40A5DE68CCAE
17890de374b5c067c4fdc1eb8110887cc0c03ca3b9951766f02985d4fbe30be11cd0 302880B0FFF820557C27F39B6113A62C11D64ED00E224CBEABB4AC456B56C6235E20
17905a3ded27a0107e6c4e786a6e8d5f8125f93f6eb624ad0d98377b0bc406947fde 30297E82071EFA4509598A6E3D04FE29E1CEAF4713263A0B11C7D838FB46F60D89F7
17910827d167222384130920ad01f4e56b1f808f2811945761a198ea339eaf638bbd 3030CEE7C5C0D6C91D5102F5A4B0F09FB9B43D9D05D9E9CD6D1F52ACB1745231E213
179239196740d0ba13ec022888ffc0bc34d600f4ff0d543d018f51ce827d84e0d161 3031BCD4A2FC290AB05B0BCE4285A33BC2A9A8EAA8989AE8BF9E2E3401628296A8C6
1793e32445c609d1147f25b5e0da4f88e45da932e350cf99704eaa6fe1ac0f4861fe 3032FC1D3D14588E07EFC19FB4DEA090AD58C190F60FB936D5078B8FF050F767A53A
17941d608f98fc3d68a4e8d45a795b80775712e948cc542f174466b1e5428eb36b80 303382F9D8976374F582C1513B386DFC9035C49528CAB649B6AD98F74FD037431B85
1795986c1e0a888cf0807363fa0ab7809f0f346e3c38bbc3ecb591e6c48c7bc59048 3034F88956B5D698353161B2D103402F2BB0FBA01033423168BF615C33FDCB30CA36
1796befd72f72c2decefe3b81e2a4d5e6b13730088eb02effd2ba4904d8e44f490f3 30359A6C9857B81868B25F5E3A9B19FB70A20A4A2E4ED6201A0C74D322562BB5468D
17979e6f00c81f5a5a6e976f72f61d13dcbdb393cee5913fb86301a8e8ab80c3bf5f 3036B1830B5F72431398040695CDC0722BEC75EC3DD979FA99344F34C69C09F6B2A5
179833e0b68abb24d1d46b91a3abaa6e704dc642bfdd5ded06932d5c314c50aa2d1f 3037FDCE116D38A531B0C6A5A4AFB79D8A7063FA5214F3012B43E80B013C352EAA05
179903818c74144ca6d18a352bff922a727f1257d956fd2b2254097f8aed53d94596 3038DEC5A6772F6AAAF3D526A95DBB4FA2D09E524A75515AAB594A2CE70FF89C0248
1800350a2e4671b82cf68fd2aa19cbf36d6fcd684a57834f4ea0a308ef05010952b6 303916FD5FE2A0CC6D6BBEA5E489A740D461B542ECC7092AB91CEA4DFB1C7C768210
1801556a13447c6d62bd09a844c434117ffcc28c64880efdf800c82ed5b2909a2c4a 30405E23A374BCA91885E747274F31E5C64B7A397FDD41932F2A16CBB052084E3E24
1802e61a0e086a6231d6d80c977ac35ac6969d44f8fda1fb7d44fcb548ee9448c42f 304190EBDF90624BB22393DDB90DF1D8545651EA776CA13D046B0ABFCA115414EB46
18033c7efea8f700d85edb6d6d0b72a01b64c6d7daab9d3cede00792a4411da7eddc 304252911C21C71EF12B865DD8DB8B54E7B0AD52BB9A04C1A3AD3827FFEDA3DFDCF3
180444455d2a8f9d2d78d57789a08a6f01ca3e5544f6ecb1e53af88b6da592949f3d 3043BC90CBA8188EC1FACB777CA1C5C32CC0FA8AB3125B0ACBBC32D387AE65025C55
1805ab799d0ed4f4ba2508ad7b43502cbb18e97a301e2ff9ca8b2d722acd30dcb4fd 30441AB599C3EA4A5B43EFD388D2DAB89BB947561AC3E73728A55039E4A7EA63CDDC
18061a65a7cb0fea61d84e538b732492a66fff1d30d0fdd3260ccce451c5d630963f 3045B2C2AA2FD9116F5A58A72EF317F76DDDFACD79B407D72992A3B6C83A80D1EE1A
18073e46393b0af35f7597803b1b466b774a1098c9f731e02af41f5ad7a87c1d9e03 3046B160FA3A167599B4678AB660942341D99178F2172D51E5FE6A532AAFEB7C1909
1808dc1471ac86ec85239fca84e4c0e1c90abbea574dbaad03c59cb21800e32fd4f2 30478C9E2A5BFEB899C63EEDB7645170A6A63867AEA0E83B77BF5F411BD5E5E19903
18094feb29fcb1472c16c4929abfeb25126da9c1d380b822b5e4ba6c70c721adaa40 30489448352F89B440C80D668FF731A43F7E858197D75EC2D18BF067556A8F861310
181095e605c65d8f5c3625acfc2503b76b119f8a1360b15e4733ef0a4e70d6d1259e 30490AE8E0CB05FFC5891EEA9F0E324F9909668FF731A43F7E85066F8B30F3AC3455
18117d1cdff47176cb3708a59e29ba47e2cbfdceb6806ed53b9ba76c3cce1a35717b 3050EAEFC63DB890C59CDE42353355744B983B11398E7B381CBBE069E98B5DC49123
1812b13c6ec03d2e47ec1a4a5eab237c22ffee8b144ee4e5cf4efcaed971faee495d 30512670D6609742C8432AAAB19E471724033995E4064CD4DC59030A1E5075D46585
1813f2a935fc463be03c9c0f05e58eac29256938d93bc4a4059c4a8e405d58d31e0b 3052E1D62E0267C75EEF3919EB6C5635C9EA88F549F4FF7DCDA5DD6F5ABDAF12E0B1
1814b1b903a0351ae7f1cca904b8cb6ad06e55d7ce7ec759dc867263e4452e6728eb 30530F880A7996D730F9FE2F3B9316FC41775DF4F288C71B51746D20B6FEC22E6FBA
1815474d945052d3e4310aa16b8fda9d4ee5b7d838387d7e009f7ec6e04813654d22 30548E9B22727AE236E786250497721120F259611D3BE08A85FA51AD2356ED33184D
1816e582c0df36f47855f90dc2de7f785d89c4f285d7e04ce62e0b6697a90241dc87 30553BA70D5FB8970E912C0A2F7CEDB74F255EB3344E9524A2AE82D38AB4F653A529
181791968e90b4837072657d815c2651c2cc59e374350819ef3742d98aca7b9c813a 3056152F8B7A5077E96854439260BCC53B76CB0BD7CF8F1645BBE764E8CE87CBD1AE
1818d7534c698f54ed737ea8f9fef6a452600b006cb387e5551e1f7950bba0b3d674 3057B3F08785B73EEDD5496C7EB648874EC2748E23E685294D68E286596C02EF3512
181976ffd51616a19c2bb811029278269b72712230552a99c368edbf625a1f963106 305878B15DF2AB38FE915639E033A2E65166CF72D08AF8E6C47BA0A8D7692F07A7E6
18205ef11fdf069f7409849534e802568aa41d4a6d23ba723d01cfc9ec4afcb74690 30590912138E50FB9B3B0285C7FA62B2E2E2751B919742CB4AADFFFBFC6C167505EB
18216ee6a5345df7abdd83d5b4abe0d1ff283028b312db1895bbd13a4e68396a86ef 3060CDE13B5C46D41BB33ECA6B84DF5059BE43390F39105E94800741C67DD8A7CA79
182239b5ef06ffb470426f7a04a8dfa6fa5ad467099835016334e5031fe1296b168b 30615C3BFF6DB885FC6AB3971A6B6C279940BB8EC33A721E686DE01614813A18D310
1823c9f7a587232fe26195e4b22ec8b6ec0aa1e5b80ad88ec0c8944004642195cb22 3062CC118F55FA0A322EA09EE20EA0F98E57E9C7E810EF373A3B86CA5D3A2F9BE1DD
18247ea08faa7010af7b661f655fed3a33deb765fe598fbde13deac83ecc208ca881 3063E610B775D3B832A2AB360D686C35106A05E6D58359D08C11F7F211B86E827EA4
182594c934438d54d52680888805d436f7f98c90813f2db2edc3991407873fa267d6 306488E454BF17ECDFCE5124A1A4F131B44066E5C90FCD461AF11FF3C6ED7D6D58E5
18262e8dd29388fe1746315f862cca8929f155d08531a6803b73307005e5c7887d03 3065D4CD38E3B381E085B733F0D46DC8A66884D9F69189DE900E73E57950F2026AF9
1827be2369bd096d6bedc544e7f5906621c7eaaf5278fb60473deaef4a5462c0e784 3066C57C89A25D31394BA7C724BE83C92E65ED8F6B8F00242244CE216FC2904D50F9
1828eb2a929369e76cd0170827bed2bc41ad5e217e69a4dcbbc4348c1759242ba778 30677C4D4E96EEDE68BAB0DFE4083E7722E3F8EF38A0E069A5D124F7D1ECC85143D6
182985b865d6c116c7d561ef5792f496cd8ed851951beeb4fb648d7d296791b0c205 3068787C743E34A74471711ED3A42969A9DE0FD5D2CA9DB012A2D0028C45F255E429
1830355c42297b91558d427a324d94937d8a376da2d2c191b8616b0bd2cdf958231d 3069B0B5700BC9EF2D369EB96E6A51C18E0B7D11C1E8781AE1A3D0076B612D11B562
18312998e4fe574fda714375601a3a54f53e7fd9b2273d2a6f3149aacb0d507ccf4b 30701DC08959079B12ABD106800647D055F1B598E72D65D57A440E8EB2F63FC1BA74
183236f3a1133cba8fd63bd482c68da9c67c5294ed761bf1cad1d1bab983e1f94be2 3071E8304F6AA6170A4D9824A57A65089E4DCAD04E977398F555DE3C62D39A3C53FF
18338a26ff98957ea676d8143b2b40b87321226536ac07cc75ba60941d57cd5f1cd7 3072436B408329130BBB41E5E7A8E6A0BF1DB857B98483F987B7A0AB9EC8AD2369F0
1834201aff1736242c6349b38a7896affb69934aa02d85d633902dc7d0858a61981a 30731BBDE6DB5D5D29A111B3A21A2C22BAFFA13368B435782155A21C5547086B58AB
1835deed7cfc9280952eba39c3f7f1803a3a178217581085459fe250bb0755cd4003 3074245FD1AA1D04378CC56EAA38E271F5AD173EF8FCDA96B4B4BCC8B234BEE63206
1836a39fdb2a7206bac44523d826512501cff788e94589ac84e1dbd88fd3afb97540 30752C8F982F7C533D161328ADE0BF280B5EEC9059FD061E3C0CDBB3ADC4A2CF5D2E
183786b306954a988c5f3b48a1a63d2997b41c043c5f4698939fc10c98bee40ab7be 3076FFAF649F60EC4C773067E3DBEB1061010A1151E984376E22A912F7DC87B1D8F9
183862aafa6561b7d2f3928519096ebc87df6f9fa3d410bc06eadf11b319e82d68c8 3077F837595D280E534512D611F066A0541B9522BFF9B03EB749E4C8952EB576015A
18394f56bfb8458d85d0824e1e5f04330e5252ce8206f8e31da0ea72de8ebdc52951 3078DC4F3B405669EB8B7CA47BCFA0916B2AB84B280BC1B8AAC92CA89FB909880B99
1840d01d069f86d15cf6279ce4b3e2191270d69122539e750bfaa442a0693837839a 3079D96DF4CD26210105289C56119F264789527CF706F0BD8A82E5328886EBFA71FD
1841f76e88b3578c501d3617439c0069b5ed8da8cf4a28e5e0dff1b610338cb4198b 30807533903CE238B7253FC672484915ADB8816E25D533839F4238684B428A721307
1842f0198dbc2f0dad542121dc14ec1a3a7910748ae36ab792ab3b711dc136bb7286 30811F5258F29F714B2EA61E0262D25549742079FB76A1438A8DCF5655EB64342E5F
18433c5692229242355dcbed11ebeef2e6a15d9eb81033f4f4aea1bf2ae6747cee22 3082B658F27B7E8F66327FCF51F0219F04241E4F741E77D9C6976FE371A357A51829
1844493fee582787949681793b972aced666a6c512e5f3510aa82eb15b927115f9d2 3083C5D8B2C4D383397B01C0C2D8877DBBDDE63D5C46FD8EDD3B8ACD5BCCA5D0FBF0
18452a2d1e42dc69beddbd9612494df0ff00cf1dbe8ec92206911f84a62c2c0f9811 30843C77A4E5605D8CEBDBE6477CEBA8D1FF0F28BBE2B28616A371CCC186DDD423D6
18466d48576d2379231422b263e664f0fcafa57184567c9b789669832f2319a24d34 30858EB88F0C08E1AB4C3DF12C2203D326AF0FC6915A613EA49E6A2064BCA333F9AB
1847ae9d774e2ce4e8d3d47434e829c4ada7f338a85f708ea16f3c4ef331bc496cc3 3086C6130C112144D1E9BB26AC3C4AB1A54C7B0944A0BC0B30A59B8F71BDD706763F
1848cf54fbe01976f658466d757f643cf855b44cc5c105bdd65f0b3407376d3e2e42 30872B59B836E23576978F9C76D2E8823F97E5B111B184178812ECD4873088D74F0B
1849e138e12f6100ea7df55b4879369c34009f47db9287a12f771dfa3f01bd2cd34d 30887E52750E002540DFA0E09A157CF9686345ECB609FDD66F30ACD5C04833F18705
1850bb4c34a36edee4742faa821d6784151067f1eebaa3934b61bad97f277aceeb20 3089938E2EBB9D965777BCA210F7AEA3230572AB5DB8E0878AB0236277E3EAD22C76
18515c32f88d9eb60eec5386a804899adce8749ec80c1a4cec43ee38c79d44422649 3090DB9262FA6D18A89078E2407973F08E400788706688E4BA35AA5284CF67A1DAEC
18523ecec7e50794c243375fa29fff6d86b85085367e1c3e826a74e0ae7097580991 30913971DC7EFC40DBFFDBEAE5FC0317A22756B57B2DE3A6B8038F2E5B5FC95930B4
1853b41472c79665de4e058b49c9718ac0f90c2b98cd418df3783f0be8055cf714e6 3092C58475514A22B7DC55527A93E9309E36915B0263D255A98C8E076789D6306ABC
1854cd20ad44a0f334fb5687af9206c664e8ad06a3904ac96cfab1a864c8618cd78d 30932674417BAB70CFC0B68EA258B56E9BE8022E717E0D3B5E7F595B112B8B522A72
1855bdcd330ce1af70b055a3ec33bdb7e2b95a80ad1e0431c3cd354fbd7570f216e0 30940758CBB01FF632C2750F82A557D9BF40A04BA972EC6DC7C95D711CAD8522281B
1856a0888926fa070a99ab3e26223659c4f6728369ad4f505a9262c409c5843a05fd 3095221078F37B7CDD6360E1064DF1FA02C00CBC503EE105F0EFD56598F4761F6623
1857c85f85ba53d9227e6afa83089b917f6e490b5bfc1e5a713c4e8da8d8884cd28b 309634C6BAE583CEC27934C74B7430D649338629D99CFFF13869DA0303E61F19986F
1858faaade8a4004670c4c692d86e7254d3732eaff0d1c625298b884da8499561e93 30972BC4D18DFE52EE1275B05D195FE43B5D53CDCC0CB7051D42B2D9EFA4D1A7C650
1859d2dab3a46eab4c4cd674cd54718cd0f6c62939e28c61df4230b10cc5247db5be 3098B85A65294CB582FADF481A756C597B046DA33CF4A84889F5C11FD913C5B90EE1
1860595d14d23f27143ae03facf8d7651978f53431fc0b15493f5e1751f263ecf5c0 3099AE09C9237750ED3AFF144833F7E02A1E6817E75390483647D9269FDF5C7905C7
1861b3d56c9d1339c9b55aa13bc6f545884ac6f394153bede4be8d34c84282ec6e34 310096C4D1FEB2BAAC71BB05BD07D82BF2873E3756C9A7FFE09897138C27CE899207
18621c230405f6a8357f886b72c342a535ca184c60874656600cce4aa09c17858219 310136A83786208351C54A4EE2CC0FA897CF8F13B90ED37B79B5D33C3CD71A5D2029
1863170fb0ec5ce38aa24b9cfc22f17846fdae21dfaafbee094a16412c28cc91a5f2 31023794E6A79FB1AE84693C1159BC7230A9E40A5071E082030CD1F9CB2959FF37E5
1864d8bc46cae87b4e0ef611b8e0a2a56417a3a387bbb8cddc6746b273297a4402fa 31030A0BEE6B09A96E3602F9204E5CC7A9D311A8D39FCFDEE9D3C25B923F80783807
1865e8df3a3ad4af86daa31d8b592c2b2b757169024c34f450a0ced64103bb143fff 3104D3778A57186403E5F3E03E6921A36373FB36ED27177033C6E827E38EC47E301B
1866b0fddbc555b78a125df861f1809d9a74a8ab98be6701b647b358f16a4ad6acee 31058DE05AD0D05A1E6EB881CD4C1DA36B97270F38342322E80461124A46987FDD26
1867a5d7c67a4cdd9598754608c1b37605698a87714658a7e6fc7ed339aebc543c4c 310660A226D91F10AD11504D70201AD99ACA09A6B21C74569030270D679583BB7E99
18682a5278534b1271b6cb2bdada77edf90243bd4e8fe8866586fc83fe385e70deee 310703ECAE0921EFE1788DDC381DE031A73D319B3B7BFFF353631E37141F9916DB7D
1869735e3b8654d64d1878a14d1c09bdfa68e3b2e4265c943ce88783f84f684c8b67 31084BE037550126FB9F1E56264B8E31F73B5950066BD0B6C530AEB917E75112C2C0
1870e300636c67bcdebc0c0d05eb4db116410dfb121f1cf2dcc15e1eb0bb3d43c246 3109914D3C52E7746C0E3DB4CF9D8D543B7145556CDEAE8D36D4D8E9B602A2B316F5
1871045617e91b1dba976846dbc47d90755d820cf82c8ca3064b12928d97ab496cf7 31108098D67026DA0C2E2D8C19B8CACC4E37C30782D7A8A6EC4B085610CAC9DDE535
187261dff91edf2db8bbf54d210fb37711c0e606b16656674a7d314f336154851d36 3111EFCEF15457A38A65C5598A9BEDDEF36F0C304F726C4C8A5262055B889245BBDF
1873e9c450165e30a66c0c0a432ed7596cb8d825308af3f5c48946f64aa963605bab 311217A3DB3077685EFECEBBB624A1E5482D72781D6E552F903643A951E6BD1D24A0
18740f8dbc520ea81fdaacd40defb0eaca54cb30d4c9172b736b61971c09b6253de0 311316B91D8E550F83FC8FEC7A1C50DBC13B8728F127EDC534A75C6EFAF569AC0410
1875a28f4e683eb689ee94566065a37545f32a57a4764e0c94334e503266faaa45fa 31141791EE28370EFF6FAF6BBBB7FF2D7E4DA00126702255EBFA172E726A6AA3FC8E
1876ea1c80bb6cca5f789d7504a9320f8482f563505f3b7e8221e43594d7d043fa15 3115265326E2F8A35D7630C94B115AB564EA838A0438B847A17F580A2B8773F79443
187782dd262e478a5810e1377cab302aaf42c061797d822567594eeda1977d8bb03f 31164138A4471575DBBECFB41C6DB983ED2BAB8405E698B49E75CB5E5355222CB222
187830afe6141b769f71277dda1b1e4697725201a036877872daf7fda394d3bde43b 311778A328DF0E3A05EC0C1176427E5AC9EE93489E03340B3DC577AC456856EB9B59
18797942ed0508663e3818a72c42955d1c55a65085cf76b15bf347c7ee247d2cebc5 3118F9B8F1CFAD9BC46D3A17F10E1976F9DA77F22694BA155F336A4731FEDC7096E8
18802212d7f6b82cdea77189381991b9eb10704d1d511c0bbe31250ac540241cd49b 3119BCCC1B8648A0D68CD1D8FF199A540C79C4CAFCA596E9C5E95EC9796B36F3402C
188104444c4301a34e4ddeba82790138b1017a27c02dff13fb6c939b96024ce1e88f 3120380471D7B9F2ABFDD056602905D5DBD8D28EC6C4262817F4B31961A6075CD478
18823cc8912273a6cebdb1ea6280225e016be6b970f79475e2e09ec3e4a3c0ac7561 31214CB7998FAD7F260A49F30B3A69791FB013316463B48B2983327CA4EC48518B28
18834489548e9eea7dc601e965d7533dad287853ba92e613655a73f456d54a1729f5 3122B0D52755CA172C6F9921325B37D2C95E6B7BC3DE279A5AA4BA178EC6F759CA5B
1884972b25e649d99c21e1274b168215832b003c90f305646723ccfb290ac6ab5dc1 3123F39E701BA58B7D3D0E7AA8C7F45BAD067C9A182E508E54655443E84B3A45E7CD
1885b31ae2ccf7c0b4e3f7c892966adc9ac3067a969db083e159b191bff0e75138de 3124E8F0175F40B86F59AC9B292B44E25EC3DF66C40734039BA64C612CC1F13A84C8
188619df59de0645be0848ff2ff5d8105efdc01f3cb3f195bd8400f80276ef51eff4 31253C6A4EC17BD115442BE320549EAC82A4C9DBFD9461A46D4CE42D739AB0228F07
18872ad6c24903caa55cd144819cba999379805a9a0df18686e72e667c5dd6d3aa53 3126EB90BA652C87355F5A08BC79B5C8631CC793537A741E75C506DFE0FA63B4FB63
1888439488fbc4b78ae26699984dcb1df18a92ebdf61bec2ccbb5124d2e94eab0539 312734CB8DECD010782399AC2BD517576D3B82797040F254FE286138FF4957EC8F69
1889e9381b9ed7b671e2d3b67c21dcae69d761a68995972a8a487ede6c4418530272 3128DFE5565ECD326C26AD6B952793B2DEAC1DF9B63A58CA672B57861089DA967747
18903129ef15ce2ad6956e63a758ebcd38f575f2f2e81ac1d8b813bb4ecf5662ad8c 3129DBECB32042ACE40BCA54927AE5FFD3583BC54FCC1BE2D6C4F9BA34EDB55B6FCB
189179e6e823950d3b87e26bd8bbb9a6592abf277d6bb96b2fc579d61587b2096ed7 3130E9D4984FE301EA26EC6000B8A7B67FB45B476E3879A8E565345EB5DC90F1373F
1892e28e35243f04283ee7807a2c9b9ee0344e73d91936df589e5d9f6e57e262f9bc 31310B72508D564C1EADCB68083D066477F2CEFE1E112D644E3EF5DF83E067D762C6
18939dd944f5cde2b489cf0db21ee4b147d292c4ff96f12ba962c7103b9db2e308d0 3132C0BB6991C98ED4C30A01F7843C71628E8C7B55560DB1D261236A2DA1A6C91EA3
1894288f1f47ed86251cf7fea4187b4f09b9eeabc52c404710fcd597f4eec31871b6 3133FC5F244DD1C94B6BE4CA711F01C56C2AE13FB162F8204075242853D83F29A5A8
189583cde28e4a851300402ea6b6c929a92c24488784e05b74ac50541a000723b9a9 313403737BA7A4DD6CD1BCDA185981F9A5DDB33F6906CB94F6736F648D96B1AD87D1
18967bd525e270547f91d0ff873d3a5a32b9128195767202a4d91b64b4dfa39a9613 31352E74FB0373FA4EF35E9423C22CD7DA9D732623B3C0C9D1C0F18E382F3E312362
18975ce0c367b570e1c281927de8e5a0d74a2511d8036e470dcd0f59ef1524a29424 3136592C4A2CA37C3390CFCFBCDBCBE6153F334A7506AF9B7B1FBCEA2A6835A068DF
1898ab5e19da023e2b3e6d6daf9998e4c0d448e8388260c391669a5739bff3fb93c9 31378884B4089802A732F20F463971151B22B5282C29810C42A774DDD00348F79BE7
189947dd942adabfd67e3bb962a2fbae765a54d997df3180b82461fb8bf6039cfde4 3138A13F212ECE33EA03851C54F7B4AB6E9B24E6A901234347D9C7234D792B960665
1900074e102ee7b7f61f4789e28f31c0568682621666322b77d60a829a4e362124d6 313940754B01E538A60CD050C5E5BB6D5EC39B23DEEF44FA672F7E981EA955B13FD7
1901e1e926b3b5dd3e5570d6fbfd1601dfc40405b630ba0bb556a4fffd17b3b17240 31400332F569675678C1D1EC97F5B78F9E1F166BA4CBDDF6CD8DF9C4456749C4432A
19028f55154136ca7203e0e90b351b015320794a29c5039487ff7a6d8b031a23a810 3141A841DFBA2B2CD86FB34839EB96CE547AC4A7FFFF432E54AA32176E645365F83B
19030f90160c03277590c306d3146c9e8853770d4c2e638e7ce77ef01da3bdab9627 3142D4C8E0D8CE320C437847C5EC09C0162260DADFC31F6A14AA0C21EF638DBDD072
1904198bb3408f33727acc8c42fe76ee6e1630e4ad8e0a8d93ac1badfecaa19298b4 31438FB092C989BC116500B170E4A295C296DBF62B3EE1DE5063C289B99F3D64D4B6
190584c742b47da0a4f5af6a8c30c3c87200523cf857e34fd6e8625aa76a38cf7dc4 31444A7675B258273D7E9877BC7B70799B40E27E66FDF954D155664B4A5B84732A8B
1906d515fd4b68ea14e845d161e9c4bff92a6592f60a339838643e71142e3a169d6a 3145850101796E8EC18DB08A33FC71357BAADAD0DBEEBE40EF185550403CD585F1F9
19071aa83b306a6cc84a956e7a1721cbe8c7aebe9c8ceef27f41e71a811ded7aba6d 3146125E1590CB168D4092318CB0C8736C98E866E3397D2F273F2E1A41AB6EB1E353
1908ab29e236afb4416672de0acb0f6d4e5a4c1766728f99fedc664150d66cc1d22c 3147B6B0A13088E8F71D3038948AE252DB3B0FE81C4F54B4A067ABBE8A47B5A8AF43
1909f28d8331a1df90c9a09d950bd0086a84b28e1682f02cb0778ad353923901da50 31481D169299EE93DB0FA105092438D1EBF5C949064FD62BB42DA88F6325C80DB521
19109a4a747917de3706f34de37bcd11a62db0e98e41a4c3cd9040c646c20b26af91 3149B9116F5FEC189B4F347EA7B3A3949ED6A73723EEC5D3093EBEE1187679D7DF62
1911507cd85595ef3ae90907cf51e8006202eb4a23929296c40e65e7c655f33cbc74 3150C2BE9AFC7AC2AB814C125D97F7149F4C8C9FE6CCEA3BE51BA03042798578EB9C
19123dc00349b7e88243fc23ac076be3c6113b7768d80dbe5adb04de4f2aea62ab56 315140D5F773D7126DE9CD94BC8F37A6A77813CB6E9B0DAF23EA62F5EB658C2179FD
1913ae8a4d5a8aa5a448341b0d6cd775ac979b2c76a36fa9602b50cbe9c174b241f6 3152FAE682962AC66FF354D2E6AE8A7C26F1E5236BD930CD2594ECF150A39BF39ACA
1914fbc1b7c1fde325b4aa4e830111590082e96835b66c3195bac28b3acda885dcdb 31532CDF5A25635ABE8F06E77F7769C2278833FB387592507FEEDA4F6A3829EAE2E7
19151a68ceb2908682d41eb496be424ebdd981ef7012d7ffbd3eb1bc5a3b518f8bd5 3154F1EF367867BED38573B2B1960D18516B32F644922AE761425BE640BA0F27CD80
19160025886e7603cf83597fa6e8d3e60c6438f11db435b2d0f02bbdae191e0ed55f 3155FD5D9F542DAB7F5EAFEBDEEE7C1B799C71DB7CF2DE13623F676D945A2C08707E
191766cb92f9bc61fc0217edbf9b8d0102552e757437b124835143158c2783ca5fb2 3156AC6217501ABC6148F070893FB0EFC66C709AE4DF8A3518B817C183245F1B733C
19186cf7d98d6ab8a60cba248abac00c59850ab528751925c9f69f921c6910d7a129 315717687883CEE41732A9D7D983798F037CD453E1A9AA3CB30B2C7B48C04846746E
1919d908814a14ce89d70861fb47d1c020f1155068b551b21c302dd718baec1802f4 3158CF5E512CF9C8A08916B5065BB4EB26ABEB99C4A67FD3BF11D9D2B66AE5F37364
1920dd0065dbd58ba656bccb0f44c39d8298ae44605e0d78725d9c7aa306c7346313 31592E607454EE97853ABC6D40B18ED8E5D98795FB0A08C8254A8A7F0E6532B08A52
1921a7e5ce15110f5772755891e5536034a2c79a995e7357dd730e1f6d9566d09895 3160F2AC9A9711A81BC6EC9CF652DE040EEA6AB3FAC01F65ED521B4AC18356EAE57D
1922542de122963237d3a08fd2404b69fafb0ac2c57c909762ed73ed1c9202e05a57 31613BD2407FAF55717CD73359525EA631D74754BFA26D5865F978C52C8E1295F412
192357772809543c4d0176c6fe36d3304208473a5a4ed1f55253a786a051a9116de1 3162224A628032910E48A3ED08D0556D61ED3BD7829AE7E509610F4AB454250D5AF9
1924cace82243b65afeb68f8013219c775424058c7451a70dac8f3c54f38d882dde8 31631A683B276DC3C37F330F74A59591F058B9110AE0D46DE921654B6B9391DE0FBE
1925de423c332d4cb436ea89129362e2041f16520cbfb5aedc62e425186f4572da61 316434848FEA0015CC9BE022C660E90729CE4413F00ABF8B2958BE04275ADDD4E2C7
1926b7f82a6cd36e38294b4828bae025998234e8480958a4b040a9f4bbcf37e8e253 31652424FC8F2829868168E0896B13EA6DF16B0DC33774E633F1B04B7E3D1C2813B9
1927ceee3b77ecc9050b505b4765a0d43f5876368b7e22571eb41c544fe34bf171fd 3166129F9A66FB407538D797E5174CA7079CB2582CF0AA108AC1864C968DC32F5177
1928a3a720377e3281a056f9d0ed5f2302d98f8d02f1b0d61133e02170a741c18e05 31671135CC09EF7AF19F1F98D0357222AEC67F9CBADF73C37FFA97E826525B4FF098
192986775087eacd84f24dfa7f1f1047f47883359eef45fc99ae412ca15fff746009 31685B995A1CAC3BF1615FD8CB417E10DD91F71EAC34519F89DBB92DCD9F1557A59A
193033a2020ed9f783cd9bbf293daadc7e0d661bf5c68f2c060703259b0bc504adbb 3169DBB39052C4F5D732A46EB574744DCCE29090138AA1F6F47E5183C50D2A764BA6
1931f98cf77c3ebaaf06e95a63610b553a191ea35cccd9e23d841fe311c179b6dc9c 3170C1554BCA0ED6C948BC6847AEAB4736BC407670DBD077ACE83F0EEF592146BE4E
193241336df390aed82300ecff393f1452d0ed758b5e7575f57bb78736b9cfb58d78 31718B2BFFB27E300E3F5F6B8B75BD9435F1BC878F26B120D58F2F8E7D5077A80D8A
1933f1f31af4347bd18d7ac3e8997cb2b08f6216d9801b9c7df3186f4996eeb8e720 3172027F89A05A3B5FF0962D6F4F9CCF80F7D1430FFA224275D9CDBF55B9E352F979
1934f7ff8fc9ad42479e826ea657f7ac56c1e950e6c6520891bb276caba8126eaf64 3173F98E41E3B8AE23AF83B5CD26DAD96BBDB702C04B147D55F5545A95719CF28C3E
1935168b7bdc0dfea2d184a1338bc75e9981378993510641a7a5c5164a33848779c6 317497CD9ED819667E7D95B3A3A8CD7C83A0AE1C690365CA3BB121513CD600F05283
1936db514bc5f3f8e98160a129c7fa906b8b6b1686caeafa9d897f42 3175A0E5A09B679B6BE4EB9433E5651FC4468B8F217B4CC41369C23E4EC7985F1570
3176E59A8BCA751A7D639E32C5691EC4CE8BF75D7CA6F23D0D6861D28EAC20DE03D0
31771BFC00FB080ECF71E3B70B3B871A995A41F1B7DE9065FC7561798DBDA6351A9E
31780E7255F2EDD22993EFF01EC46A1568B58FC28F87D3573314DEDC993004AA6C6C
3179E9B617E4931B1523E74883E8E03B88E4A1991FFAE782095458A04752A8422F38
3180D48E55B547A53BE6AC7CFDE51435137908479E87C5109D62C984B73E2BFD24F5
31812D414A56642CCAF056AEEB5A299B89FCD6704BCE23BCD81C204D549E3189EC36
3182ED44101F02B9DBF8D1D9CE4C1362DF697C89C6BBFED0EAFDFAE2C5AD83C18C8A
3183CB39F51CB5AEC24F7E0F663D3B53A7B0A2C277AC78DE2E29429F75071BB97AFC
31847F9762C26D4704003694532CF37C1A56D5517155BA77230422BCEB620E7EC9F3
3185C6D531B49EDE685D354C7BE71655B13ACEEC052B83E9C21C3D50F69EFF06C8F6
318665D53FE037CE70241168AD11D4F3371AA8BE05F43C804481C27BD745ED277509
3187E171A93D97FE67F4393C8E945E03856DEED83E72693886E16BEC3B2C8603BBC3
3188F61669351E8574B8B60A425CB5AEA6640A8D79E1D1F2B949BA44D152F9A92BF6
3189EC42415E2C941F291BE9B9596D2FF731E969BC54BB5CA6E0C32A63C776F9A677
3190492A552EF20CC7EC30F63B84568F4D63A0989AC338A465F23CCBECAD2A485EB4
31914229B49A109A6C211B86D81B663C9AADD510E80341A823041A510811F83590A7
3192332330499F3747656BC09B309DF7F3A4B3D069A93CE85AF1496A8180AAC3341B
319317E89EE49163473375E86E95A8E8E5AF26F29FA48518DD604EFE671555B9BE09
31945EB82F2E1250C59CF4040992BB4099B3AE4A80A5D6CD275AA4323DEEEFD43597
3195E62FC06FEDD330EBAEBBE430A4F613CFDF4BB055A93F428FF35D7BF98D039024
31962E0C1983C79A133A1417AEB142476468F85F6A3089BE2717E3D67896D19FA490
3197C4CD562B57366DEE84C857186645C4676C22E52FFBCD470EE2C62C6E4AAB0563
31989FC38E300320DEC4932920A64B152E3DEB6A793A4574D7806DBE3F4C2EC9888B
31995649A359CC203C2F71A91761847C3912E5CAA5919CC7C94D0F6BE8B1BD90ABB2
32002A002558C6D3A3EB5C02D8782A92FEE3A8AD71736EBE4BC4E987BBF0E5EF69F6
3201CC6EDEF9E6EEA553E5373B010DA099907CEEB96A734884F5E959095F3F1EB9A7
3202684BF6B638AD26F90F846B528684DD6457047DFA42D7D31407E365156B618A05
3203E0C3D1D7B1A463E7794396EEF9390043547EE0623A16FC124A7F674A5DEF1A39
3204D83FF41C05B8A407CEE6F0746D60F7DB83725CEC32E473D409C3C86A3FEDC78A
320567B03F145C16F1812AB2F8211C009D678F2871EC987405E4EACCE2F5F460E907
32065158D14300444A6F7C8991CAB4957AA40A75EF24ACFA4F151ECE3C357812B657
3207104E0538D4105FCD089D1E81D08A9BAEE684BE1B397FD8D6B92F86979F67B07E
3208B827697FE8DB065EB4698CFE11074C9E6AB8848B4767783A02FFAFE1CF097A22
320949BA4A46F719217287EF866BDFE7D7C751345E5AA0E578E54650E6A826C0362E
3210A6A9FB112AC16FA42F9BF8B7D6653831B04BF675BD1D27A1493773E798740D5C
3211034E3F19A89EA4EE3CF7E3D855C3CF4DE1FE6CDF1087591FB97CF3EAF7A1915E
3212CA5ABF5986DE6B004540DFAC498950F6FF634795B83F9F1F3889AE41825FB89C
32133246F2FCDA575E926B6692F1981533759BDBAA46BC195525A78016B8C57356B7
32140F1203F2B9C61D457215C23F154ADAD643A2ACB456EFE642891FC7594CCD0771
3215C64BF9A93F1701E000BDFC29AA5821C2BAA0D9AED8D3806EA4AF710E03FA2F49
3216B5DECFBF182B1CBE354B697A6E5073F7C81C47C55138A3819E121884A0A5E87B
3217E8DE4D02
19370000000000000000000000000000000000000000000000000000000000000000 32180000000000000000000000000000000000000000000000000000000000000000
19380000000000000000000000000000000000000000000000000000000000000000 32190000000000000000000000000000000000000000000000000000000000000000
19390000000000000000000000000000000000000000000000000000000000000000 32200000000000000000000000000000000000000000000000000000000000000000
@@ -1945,429 +3226,397 @@ db514bc5f3f8e98160a129c7fa906b8b6b1686caeafa9d897f42
1945cleartomark 3226cleartomark
1946{restore}if 3227{restore}if
1947%%EndFont 3228%%EndFont
1948%%BeginFont: PLR8 3229%%BeginFont: PLRoman8-Regular
1949%!PS-AdobeFont-1.0: PLR8 1.02 3230%!PS-AdobeFont-1.0: PLRoman8-Regular 1.11
1950%%CreationDate: Thu Jan 07 19:30:00 1999 3231%%CreationDate: Thu Apr 13 18:00:00 2000
1951%%VMusage: 1024 31375 3232%%VMusage: 1024 31375
1952% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. Adaptacja PL JMN 1997 3233% Copyright (C) 1997 American Mathematical Society. All Rights Reserved. Adaptacja PL JMN 1997
1953% ADL: 750 250 0 3234% ADL: 556 156 0
1954%%EndComments 3235%%EndComments
1955FontDirectory/PLR8 known{/PLR8 findfont dup/UniqueXX known{dup 3236FontDirectory/PLRoman8-Regular known{/PLRoman8-Regular findfont dup/UniqueID known{dup
1956/UniqueXX get 0 eq exch/FontType get 1 eq and}{pop false}ifelse 3237/UniqueID get 0 eq exch/FontType get 1 eq and}{pop false}ifelse
1957{save true}{false}ifelse}{false}ifelse 3238{save true}{false}ifelse}{false}ifelse
195817 dict begin 323917 dict begin
1959/FontInfo 13 dict dup begin 3240/FontInfo 13 dict dup begin
1960/version(1.02)readonly def 3241/version(1.11)readonly def
1961/Notice(Copyright (C) 1997 American Mathematical Society. All Rights Reserved. Adaptacja PL JMN 1997)readonly def 3242/Notice(Copyright (C) 1997 American Mathematical Society. All Rights Reserved. Adaptacja PL JMN 1997)readonly def
1962/FullName(PLR8)readonly def 3243/FullName(PLRoman8-Regular)readonly def
1963/FamilyName(Computer Modern)readonly def 3244/FamilyName(PLRoman8)readonly def
1964/Weight(Normal)readonly def 3245/Weight(Normal)readonly def
1965/isFixedPitch false def 3246/isFixedPitch false def
1966/ItalicAngle 0 def 3247/ItalicAngle 0 def
1967/UnderlinePosition -133 def 3248/UnderlinePosition -117 def
1968/UnderlineThickness 20 def 3249/UnderlineThickness 36 def
1969end readonly def 3250end readonly def
1970/FontName /PLR8 def 3251/FontName /PLRoman8-Regular def
1971/Encoding 256 array 3252/Encoding 256 array
19720 1 255 {1 index exch /.notdef put} for 32530 1 255 {1 index exch /.notdef put} for
1973dup 12 /fi put 3254dup 0 /.notdef put
1974dup 13 /fl put
1975dup 34 /quotedblright put
1976dup 39 /quoteright put
1977dup 40 /parenleft put
1978dup 41 /parenright put
1979dup 44 /comma put
1980dup 45 /hyphen put
1981dup 46 /period put
1982dup 47 /slash put
1983dup 48 /zero put
1984dup 49 /one put
1985dup 50 /two put
1986dup 51 /three put
1987dup 52 /four put
1988dup 57 /nine put
1989dup 58 /colon put
1990dup 65 /A put
1991dup 68 /D put
1992dup 69 /E put
1993dup 71 /G put
1994dup 73 /I put
1995dup 74 /J put
1996dup 76 /L put
1997dup 78 /N put
1998dup 79 /O put
1999dup 80 /P put
2000dup 83 /S put
2001dup 84 /T put
2002dup 85 /U put
2003dup 87 /W put
2004dup 96 /quoteleft put
2005dup 97 /a put
2006dup 98 /b put
2007dup 99 /c put
2008dup 100 /d put
2009dup 101 /e put
2010dup 102 /f put
2011dup 103 /g put
2012dup 104 /h put
2013dup 105 /i put
2014dup 106 /j put
2015dup 107 /k put
2016dup 108 /l put
2017dup 109 /m put
2018dup 110 /n put
2019dup 111 /o put
2020dup 112 /p put
2021dup 114 /r put
2022dup 115 /s put
2023dup 116 /t put
2024dup 117 /u put
2025dup 119 /w put
2026dup 121 /y put
2027dup 122 /z put
2028dup 123 /endash put
2029dup 161 /aogonek put
2030dup 162 /cacute put
2031dup 166 /eogonek put
2032dup 170 /lslash put
2033dup 171 /nacute put
2034dup 177 /sacute put
2035dup 185 /zacute put
2036dup 187 /zdotaccent put
2037dup 243 /oacute put
2038dup 255 /quotedblbase put
2039readonly def 3255readonly def
2040/PaintType 0 def 3256/PaintType 0 def
2041/FontType 1 def 3257/FontType 1 def
2042/StrokeWidth 0 def 3258/StrokeWidth 0 def
2043/FontMatrix[0.001 0 0 0.001 0 0]readonly def 3259/FontMatrix[0.001 0 0 0.001 0 0]readonly def
2044%/UniqueXX 0 def 3260%/UniqueID 0 def
2045/FontBBox{-46 -260 1080 920}readonly def 3261/FontBBox{-46 -260 1080 920}readonly def
2046currentdict end 3262currentdict end
2047currentfile eexec 3263currentfile eexec
2048d9d66f633b846a97b686a97e45a3d0aa0525392eecac163e584a9104d99ad0bc 3264D9D66F633B846A97B686A97E45A3D0AA0525392EECAC163E584A9104D99AD0BC
20491b1844a0e222653fa481b8809b26a46f4c483a5d7e95816ea6582584156cfede 32651B1844A0E222653FA481B8809B26A46F4C483A5D7E95816EA6582584156CFEDE
2050b994adcff4645140e3617e4d7e1b0e4541cb9f562e55829b4dd880aabe2229e9 3266B994ADCFF4645140E3617E4D7E1B0E4541CB9F562E55829B4DD880AABE2229E9
20514a9fa259a734d29bba91ba1e2055cbea4339bcbff98d32ceff11f296225caaba 32674A9FA259A734D29BBA91BA1E2055CBEA4339BCBFF98D32CEFF11F296225CAABA
2052dca10577a5d431b714726c1278d8101abd1bd8d0bd0174fff9148f8c61c241d9 3268DCA10577A5D431B714726C1278D8101ABD1BD8D0BD0174FFF9148F8C61C241D9
20532ad360a28616cb4a0670c1bf13e7a26e167f6ffbfa02d201035c41858d1c9bc3 32692AD360A28616CB4A0670C1BF13E7A26E167F6FFBFA02D201035C41858D1C9BC3
2054c5482bbafcf7df8061b51863fde697437824573e60cc3736b77d96b9b17f4ac2 3270C5482BBAFCF7DF8061B51863FDE697437824573E60CC3736B77D96B9B17F4AC2
20554ccbc0394c27774c26fc66f04993d0e73f619503565343c1e03ed8880a14a7a8 32714CCBC0394C27774C26FC66F04993D0E73F619503565343C1E03ED8880A14A7A8
2056e686ceaf12d18fb2c70e54d7c524923386e488a5781001b47276f3ccb8173466 3272E686CEAF12D18FB2C70E54D7C524923386E488A5781001B47276F3CCB8173466
2057544141f99fd85b6bcead8a7e1294ba184ac78c372f2e51950f79844bf99538d3 3273544141F99FD85B6BCEAD8A7E1294BA184AC78C372F2E51950F79844BF99538D3
20585ca2530e636c821bdbf28843f9f48878c5b3d1560ad7ebf9279e90c993eb09e9 32745CA2530E636C821BDBF28843F9F48878C5B3D1560AD7EBF9279E90C993EB09E9
205947357dafc76071f98e84ab3c17ea7b49a06c55e512f6265f15555a6c47aec525 327547357DAFC76071F98E84AB3C17EA7B49A06C55E512F6265F15555A6C47AEC525
2060381449c04d2a48c5c72cb15e07eb74de8ff1f8572aa28ab47dc19e5558d0cc68 3276381449C04D2A48C5C72CB15E07EB74DE8FF1F8572AA28AB47DC19E5558D0CC68
2061a51733dbccab4ab8798079565b82622f61a03472ae0a3de6cd251c297831b5ad 3277A51733DBCCAB4AB8798079565B82622F61A03472AE0A3DE6CD251493DEF89C38
2062c57a1fac587dd2e39ebd2ef0e723414fdffa2f1dba73273a022e279b16e84b6f 32785255DD4CD5F214B6A7B36AFBBBA1E86D352FF82CC01B72872C33384180326A01
2063f1bfa35bb75a358a79b4e4c86cf762c86bf9d534932d31c15276590abc46648d 32794C998B467A6F5307BB43CFC5807C5516517FC7066CB1F147229B0CC9A0E20126
20649f16236284a571a5a386ee657fab13991ebe5777afde964e5cf7881e19bde936 328028A6BE305080E8FC9A94B98D56FFBE6688309F6D9793FEDAA5926EA5679791D4
2065dc01d8f243c7a7491600124246da934c09c1251375abd7e956712ad5abed0f6e 328174BC0B7939D43C0AA387BB7D9759D0213A6F36607CC721D6B87FA453D0E82635
2066221efced9762e588fe5b9ccc070d2a6127f531b37270a3d98a04753979635733 3282D5695E1B8D43FB421979DCB016E5CA2765235A8148701570D9563168F06C40EA
2067dcaee54519a343e8c07f2db1a6b331d69dd90073048a63fdbfd917bbf122841e 3283E2C3813033A5D7441FE2F5A3B451290BCA5D541320D8DE86610389C0D9DB3032
206853201a0c377c0925cf91d68db0702b8643f60a51053349b3f7192c1a4d2c998a 32844F35E3F41F7FCBEC699C2392CC42065233DA1DAC8F01EFD3C68B55FB44300E0B
2069f9dd52ee03c19a294176f7210a51426510ecb70432b9db3cf034e2e296903ba9 328511954CA5863023430A727D50DFB8D021C3FA1F371DC668BFE9B1CF2E2C93B0CC
2070b822d49da9f5dc495fe7a460607a40c3d6abeacc28e80cc75682fc655323791a 3286107A3BD2986CC84CF28D4940F93FA5BD3D4314B3C4B93CF52BF89AC53466038C
2071fbe9caa83e798250f35eaf061cb370ead85090037b9a7a35559f771e11f537a4 328705C0592171D6DB3717525B37D33DC7D4DCE62BC5140AB590C156D658E164D88B
2072e507bbc33074a518c3a6fe4a503479d0bfead964c2d3fdeabc7176a49e338545 328856E6F9CEAE61FBB850C398377A8B3B9B0605595400D89642FD874209635F566E
2073ac7ef2f4f048544f4b11ddb55869a87b2eda49acf3d9241753015bebc41c3050 3289CD661D7DB1F56AE69F266EE3AE8475A72A79FB407FC26533A22B3EB9B11A123B
20747698fb6a6f7c286b15ddfc4b8f944ca86c8dff65a35d6389288a298e14d31274 329076F23B805B496B37CDA7823E39FEA037382CF60E7CE51F6532B87D96246DF48E
207558a76f901a6ce757d146eeef204633494c292d003e2306feffb42e20a9ed2ff8 3291DFF837FA25657EC253C20B175686D514DE3EC4C75BA916D2BE7E935DFDA9DE27
2076f332fbe3c44fcf3f297f872f0b98fb7049088885c076c4f6fc3c9d8a2f94c044 3292054A0914519B226A7A8453ECAFA803EC3719606C69B27C28B8831608E37AB0AA
20771b3c4f55db0b51372cda5d64c7b2834fb8a219636200413d2620a0ed59dbb0ed 329360B11750ED869357A65973A96B30ECA2849840ECA56B29812065F4CB66E936CE
20789057592b64a14505bd2ffc9c5f3d8ca08786a63ce6acd68630f8fcf968584d39 32940EF228C1CD2E68F237F0AC62A0776E6F2EBC33865E5FE83EFD89FAC4C11F2F85
20794e5f4114dc1f8ebeb0d94079f6cdff360caa818ebb838e5f8470fe60f85c63ed 3295E0B96415723A8F20391FE6A514D30057A0913FB3FB117254E73AD81D40CBEFB3
2080bb86636e9531aacfae59f76719fecc9f146a7ed54994eef9b605bc284e46f1fb 32963B4B742142323FA3C3B562E1EAC34E7FF56F7CDB72907984F5E73CCCCEE37DD3
2081ed027971cc1e0ff2e5742d6fc511589420b04609d1137064e2f95ee9e646411f 3297ADFC1C309B44756AD5D93FCBE749DACB54473477FBEE8798B973D7E7C4052B91
20827bcec8d4336f8275ab050a9ae54706f6dce5a5b6cd19d0374b924243bb3037df 3298189F059DA1B284C7F42F6BB8D95B4067A8141AB8B4CC2F091E6135645CD869F1
2083e017b627ca2d511b3d64c9e0f6984c2305ae3c63cae47085db6a191a02c1cf75 3299A903EF745677C765D4CCDFD8B568F1339BBEBB63F268A435FE43E20B99E1FAFB
20841d10f507f8c592fbf530df2ef8ee58c14f4558028cd1039b2e47a1d4e7525ade 33007FCFE79828EFF008C89CD60F2D73FF874F5F00DBCD673759B39B1EC0F1E2AA5C
2085c25c467d88e34b4828c217469e6953d8721058a6a318f1631aa5ab2bea287497 3301A952A079E1E45B9DC216ADFADE342458015F5764D7DA28C536176409633C4337
208638d1811aec61cb0144573289b677585a173d3844353fc323d7f5deff7b580ada 330222F5D89E57354423D8DABF363628E62B818D14C7C8709016D2CD3EBF22608D12
20872ff3b129c6c8b0d00b25a576a014a123bf22b2daad24f7f08eddb372fa775c1d 3303B5EAD4F2183D20A1D74B6F64989F395AD1F4253B4FADCF44C5206D8DE6AB0A9F
2088060f32066177ebecba3ad62139733db76fc09092093488cf47309b1c65e615da 330467A9A5FA60EE600B71B912109EADE2541CF8DAE849562C79CC225E96A94B9BDE
208951ac2f60d2cc363fc2c31a70734c5d949f82143a3c0cbba7caf78b7d8d482a96 3305472EDE36F8DF14A368A465437978818B4C8EB837A10864912C2C9C3FC2897183
20902a503fb73a2d9e970ac2eba79b97446add731a6260bae49df7fff469827731f0 3306B0B225E5156CC72A5EFA2F6C2FDABF8C0D2788448D65E6F02604D2D63D3D43A7
2091e2db51b51bcde6290f4ee52c29704b5b08e91d070120d1c6ade222d7ccc1a3ab 330745DDAD53383BE15E76538061CD6523C42AE04A309AF8949EEC96498BD7FC84E0
209234b3e3f97fc9b58b6a6053d84765b43338ecc0c156432266414b3fc3c2c54e89 3308ACF4C687D965E78D2A8EA4977311E33C823AC7FC1029291E7A26EB4DB0974703
20939750348454bcb00679eb07a333bad68f3d589a2b7716f2f61b1b664cc811c594 330986BDB6CD26559D1C29873B6A659B937B96A1F545C8F0E4D6B74CBB6290BECAE7
209435696693d01571556150c97bca49e8d2349f88ee0288664c114eb0a29eb8b8a0 3310173EB9071FE57904EE3DEB4CC00F3E4019EFDC1EAD90B0F8940695805370574F
2095613a969033bfb4632e350272b1ded10ce4576166378f0b26b7d0eda3428f6fc5 331161D17BD6FC5C9FB8D18DA9DA3404E26A97DC64A8257B75361C9829DB6E453147
2096bf776db246681c98c382440d1a5c9b0c0854fb0a424fc04be7245516d076d9e5 3312DF8C3D1F0EC964DCD9D577A5116B1418955484541550F31FE244405399F18482
2097c35b94f9437d08b0e458f639f2aafd00c0976c805efcb52a367c88b4492345e9 33134744E06EC1D1D83451A8078E3DD3DF939F24A13BE4C74F1033CF940807905AAD
2098df7f15b21e6f3138fc749cdb9e343df11b67ee768aabf58d774693c45373618e 331481B0FBB016A6ABB87AF68B306A45E502A5156D0D822E770953A57C1164D26A10
2099bc6b3a6dd4c1c9e5782486a835cefa83e800f3b25a84bd89e1479f8e27138833 33159947F3956628315A221357E004F62E80A1719218A18EDB5C817F4AE4576E49B0
21002c88f5af766536e867986ef67fff021356580e073503c62c28293ad85a6c26cf 3316D09786B499E6E72C22F7B388B3D2426DE85C619AE7B63260B6F3D9F7389B5B9D
21016955b5f21b4a97c178ce20c50bc81669f5aef57910299de77f8b1c0ae2adc8cd 33172A9C9BB8FB1B2B95D7C8479149B8F71D794844779E3E75A3B587ECEB8402AFB6
210219c39e106ee07fffd59073f774d92ac17e3e1e2bff8e769c0f51eade76a61080 3318E5E9868BE0ACB7EF6488A4C772D67DDCD7084560CA43E5BA8F6F2AC2615C55A4
2103bdd39491490960acbe4be0d07b33bc631de87582df0cf3ff4bbdb0c6a014d7ee 3319F4E3D9DB6C3D0C429A3CCF6A7BA17AE2B5DC446FDE3105FBECC25AC56F94455C
2104a01a903d82f86b379ebcedbb39902a2b52400be675044b6b97dec689cbaddf0c 33205FD01C1F2DDE31AD27950AA807562480E79985DCBC685AB12C8D4DE1C39268FD
2105df1e071311ad783cb0d4d19f0e056ba789f21673535025eb2e88aef27591d02b 3321D2230CD25505FC28D2CED46EA6CEDC27326B62520977CA9EAF4356A981AB0F7D
210610acb78755de2e3563ff56b3df1cf43763abecebf5846e25eee901320d3944b2 33226ECC46A2D259E27A0625D1B6B7BB058750DF7E7961AC02510F5B6EE04E45B561
210762b692ccea778f06773a18f79a7b7e96339b7eb1fbb32651f6681d681105fc7c 3323E9988871D125317E14B83714D18F84E5C4E50BC74E4467777AB55BE7E79E6A34
21087524a83b117a6b4c3c1f972a3b251cb5ac59bf89b4240b9e1f772102b58df886 3324DAC730FF609EB5815E8929FB0742BC839A39E9378CB6D5F4CF46F48C321ECCE7
210970eeba8322e3491e19c08f6e3f2ab3315d043bec23e4f916e1967488da67a92b 3325246AB4E34AEB39829B5EE09B1EF172E8C0FFEB2E655E5FCC51C9DDBD83F855EA
211090a9b4e85bceedd487fbd078e0ba5ba4cc92ecf3b782a7a558001cbef70ffdd2 3326C474A8736927D72421F28DC5199CB64F57A392D2738F84625AEC2D3D6BA583EC
2111c27357b481b72ea8312e7053a23d7f2bc71deeb6dfd8ee6499515d183a770232 332724398D567BF2EC06CEC72976C1AB6B3C31410E8D6B00DDB397C0E357E657D0CC
2112a2ffab05c27ddaa2a1ac5d9e565800da2ac5a30c5055f71968ef3394b7971c62 3328D61EE7A6DF3277E3D551AC55B34825D09A6F2495A39D4B32FEFF6182802287A4
2113b62ac7033ad78319d04814685605d655b5c8231051207b51d8138153ed357f49 3329868542F933B667468D197BBD57C0E2D8C55B7673C79829358469A3FE856445AC
211433c48f1ec74b363f1184e57225c680934ada7e4cb093b73731e930047a2eb9f2 3330A1D8FC1A02958FA16F33A2455597C010A1E3526B264DD15CD6313F6CBCDF8B39
2115a3b271b847d554d00054950c175636c3625eaa73405f38db67488b7e63daa0a7 3331A869B985EED8CEF6824FBD8DD50C04CED7F87DA1797A60C5E8DCED65C1074A2D
2116aa4a33bc049514c30506efd27eef364fc2482668e1a9b2cbbd1ad12f28afc89a 3332AB87621CEAF1864D59B1AF75F5A9128F601362FDCB045942E26D5CA5CCA1987D
21171da574fb56fecdf1815eb9bb90d0d0d0d8788b9f3bf3f157a03676f2786d00cd 33333D16E2FDCD4860EC357C5C7C61943C75F27EF6BABA6D1482E9C55F12CF7CF2A9
2118237a1a66d26e30b0be801bb58e2c2f6754b1a08b7e860c3f36e5c0067276db20 333413FB2CE66241390A3ED026FCBAE7E568C0AC6E1DF14C0C3E92E696B8F8E9B7E6
21190235a2802e53cfb910fc30dc8ed98e14ec78a1902b331262af9a7ad7e2b3297c 33353E6283F537235581D28C2EE4615334D6B5B69A25565F3514D43A141A85B4B1FF
2120e0adb14f46e31da50a51e59d07d59075ace193a3cab4506b3eec3695c181d814 3336B55204CF730FFED115661513AE690AECDD91791D761A45D69CCBC086D1AA38E2
2121a15cc7a1bb409487160b85caf35bc2ff739fce8e371e7b39db6396abbf5976e5 3337780FE896E01C69E46591BA9CDCF208058849432FF49CB298674BA423C1D6CD6A
2122640eeab71cf1fd1eb67c5de90e27eb7050fab39af5af55ff0d914d90028984f5 3338F7BC99FF5C9B52264D486321F3D1E703E9A9E433A5AEDA8F83954EAB5781EF18
2123fe605a76f2d3bb346ffaf2cc2582aa9fafab0e71ef07739dc295884667d4cb07 3339E08CC1F7D36D1F0256561DB84E0DBA4681990CFB4A9CFA7584BDA40906265D8C
212456ede46032caebe0d5ddb3de7eaa29a47ff50d3a8ac2433d499e616342b8146c 33406F9AF6978D929610EBDDAE08DA72021D9AD36682B89B02E385120D3B58213C98
2125bb11e46f868d4ce0409705ccc5f03ed4f226c917e4ba2d0d47506a7cab24d6e2 3341B0D69DD391C9382CA888C679ED3EB9B52AC7354906F0104D3990F40678B17CCC
2126a8c0cfd6251c304c822c54984af053e9a4a0be084fc6249aa548772aa7717fdf 3342CB2C2BC758B1098AA113BA62F11004E1302D6A3AC104CC5B467DFBDD92A14720
21270f5f9257875dae598decd3c47ec37ad1f63f542032c7be59ae6072c320ebbdf4 33436523BE1A8D74DBFFC7C51921D5588D4524070473397D45BE89DAFB02871BA701
21289c8b8866c6694ab18876abc2b55ba3f82ba8b2315c5c2fb64fa4f473ef17a074 3344D455FAA6B79CCFE92DEB18715405D2823867526EFEC419653EB3FBC428592F9E
212994023f59f9228f8e2b8fe8606fa189bc857789d2043cb363df1cad158d83b922 33451DD0CC46FC0E92018032C37E968442AC60C06D49D4F4D92F7DA236C73B01A7EB
2130e30a294762e5352023a84edf249d3a403e4199fd1cca2ac375da17047b6a7462 3346F85DE9F84D3A5691C931140EFF12BDABCE7ECD74710D6F3518861A35FC1061EE
213149e0620d0137eec0ef54e7a04d4d52f44c41232dfe87589283c980e74ec8b2ea 3347B232963B3F0BEDF4EE6BF9C62ECA29A883D89878818276E4A5A520E260FB5780
213255ba7fe1b51104d1d63dae7370a25a49d066090f9e1a1c6f941bbba29a0c14f1 334856EFDE8757BD405E1BB0B5087824206AFA5FE46559C2274C06F979ACA29B85F5
213310c884983fe37d366b46d450dcbfc4a6b7f0895bbc9a4b67bbdc02aa6228ab7e 334985885F14D3BB3F2A6C8C837C41DE5D9B283955159B7F0C9D349CF28F2A577056
2134b3614e82b2e9ce45e6b8d38fe3a94bf7d9298d27743039fb86a37072a7e4a135 335073E627FDF21EEB0E1351CDC979DCC5C686D4C9E96650E4FA70975126E47F2803
2135c83bfb2d1053fc44a43bc854ea8e2a01fc1f3227f4574a251caf4bd53ea836dd 335171E1F963484EA5717A0B4B63634F92F6862F44C45992AD1E45B86A2396A0FB90
21362eae2b9826838e474314b47ec35f15097027a7bbc0acde653315d020ae692439 335296DC4D2FE64193327485E7AAB8D4CAEB340725057E64058F25B597E0D475F3E0
21376da55001903ccd9dd3636a59980e67a7a8c881d1843a204dcac3d836582f7473 3353D76F461E9C7A0811E8EC4075D21B5F9357ECC41C4DF1DD0B9A9E1055B341DA1F
21385d7a74b0f398528acd8f1e0889ca3675664d54f0987f47b0cd44af6b234e63fa 335471F73551EC7F6FC65F3D9F53140E618FD0D0ED7D053166500517C3D5C64D1C30
21397e3677075d662509c3703098b322656764ac94ea1cad1271abe9665cbd24f1cf 3355B41002E7C46E47A7C65EB3AF97E72594C518A0034038946DDCFE3E23B27267DD
214047d452a0523e3ffc15d72597ad108574c5fb78be0e34f7c534516b0b97cfab82 3356B7191C87D5C92B15B71047215D80EFB45A0275641BABEC3940090EF2E3ED1FEE
2141b5af8fad5fc197e09b246a57a3cd8a15328f3ab684583df4e86c622fa9d19c1f 335761436DA107749746B5118B5F4C57B3FEA20864A490BFFA4CFC27C7170082B8A4
2142ff707949e4085256f92cccab5a6c2d0a560cc84c227b9d83d2509903ae1d57b7 335838F9CD97B97EB00D2DF8161335A24F561ECEB4FB6CF5BA98A1725AEBCC5CB1F7
2143f7bcd6ab07d7d5a1ac44512f95312d5cbeea65510a20cebc58563c08eede375f 3359A93994DE3461A8FF61F2E56C5CA78EF6825A13BB04ABECA8B745DEEE33F77C17
2144c147c5dac10eb190a0c92d15bbc12ef88549c935e90d35cafc12fb47e4ec0ba6 3360BA0EB6554C0CD94118FA8F3587D5105CAAD7D3534117B28A278F06A71EC263D7
214516810b714d9a0c3606981147346c8d50c627cc009ccc7d8ac1396938a41b5f5d 3361EC135192132942A076778D2437F4652FC3F2D1CBA0A87340AA1F3A80CDEA8165
2146bd37e9633f9cbd30b72729eb90c4c9daa797a003934e003af876ad63e67ef7b0 336265D4B535A5EEF86D283956B995C6B0FCAE62AC953A08694BF444F28DA1C82E9C
214703a291339e86af6979925375ad452c994f1855e6173222014e239775fa4975d7 3363A1C2D93C8BD16760A91B02B4044AEE9931ED7B94AA019BEAD3E07F283A27E2D2
214806ee50364fd5890ffa44c05bc66caa985c4ce50c774033ecdd7f93db6b32e3df 3364C6708BD8A21E85ADB2E2DD7DE392216B7C53B891E16180CDC03DDD8AFB697A00
21494748b39bbe76d3e4a88c0fa9a502e4afed3f7cea2e0b128eea4f4bf6eda95dec 33659C4B3893DF4E2532EEB11A2955946BB92848A510C516C908501871C51A1A9828
215081a44e6a881a984b49cd31bddb959a70bf41a02484330f4c3a77c66588590db0 3366B41C13CA367D5A2B8E6F2E46F6C8F726DCE90FC2158B83382C7EFF505ADE1C4B
21511e14d712a0b693e3cb16e45f914800b22c44b35ddc58e2223030103a8fa7bbe4 3367837957293C67DF287C8B2340D731E4495446B5AADC2BF18D3CAB3AEB2B0B8771
21522f687c9599cd151bb6d3052bd3ff63b2a59ed7dac46af17cfb6a02b6eb2944a7 3368B7BA9939D0BAEA1174C492CE873B6522615E530B9FB90651AD700EFC78B4D4D2
2153d5dcb931c8cda3aa745e093627b0eb5bcaa04483e33cbe34af277ab5c20ffea3 3369AF1AC365D58F3956C211A76C5B5D57F356EA4A9D7D7FDC6D246C967D99221C10
215461520a968911ac2d0da707b2f622c4a6f78c07f426949494cfa4163430ff6eaf 3370E06B2F3E91005EC0BCC9A85A7D7C8906790CDD8CB5054547EF99B756661D6438
215597f7fa7955c0c536945751bb9a822801774223a1daab2717a2bcddab9c9fa30a 337195DF79E9BE619F569B936D8A84B759AC9A551DE571634BE643B4D346B14ADC19
215695c830ece829b72a46f7803bf8fc7a9e09a4164c0eed16798784a9c8bcfd0e05 3372A793F80F1E6D56EF46C5AB9676458D15A7A1B69A9484857517A5F51E22F0F31C
21577e507988c7135f04927ee949252227396d73f5542745ae5aeea8403c43902f77 337329AC65B5B3D05416E763B0D102F50FA386E9317108A182F9448DAC386C8CEC4C
2158641c0870e2ce583fd73a055ed8177b9147f7fd48ab35439ca3ba1e3f88b4b77b 33744A2E4950CFE234AEB39A20004EECCD3194408B8748374623A45C5EB8C4CAB000
2159f608be9e56c893a4737195175119e51bb57035336e6bc818e97497888474508a 3375EF290AEA38F840066456911FF96A992819AF5EEA35CD76BF2F108FA45DF84B2E
21603f7ddf25d3d5f46d7596620aa0012f654e026aac9e89a0c8686ee7f94b5a523c 3376915123DCED78D3C953830F4FDFFE499FF2BD421F9FC06C7B364E6040B5027249
21619c2ccd917872fb36cfb4b92d7a1d9abb8584c5a4c14c5bc39c1b141c1ba14c79 3377A19AFFAD51FD58AC604FFACA84F2850431C1CA8FA02D92D6B2899C442A5A981D
21620915dce50394f2cc416bdb7cb43d38fc20a8c81e26526ef93f4f1ead643fa4dd 3378B37BBD0F95FB6612CB7D76FE663A99E6BA58A0A2EC4B1E541D96A6C8FBCBAAB6
2163467c763e19f579e358bb772411001b1965fb0fd0b72c594e386aa16341fc2801 337998D363D28FF3F3DA83E18BEE1E9E972DFA9D85A6CC5B38314F6AAC8B5CEEF712
2164cbc8a68cf7d10d19ddc3e867be8c851b265196454777773073a73aa40abbdec1 33803DC1F6674B508BA0CA2F1D10F41CB6BF581E58F4FF03ACD3DA0F2A1298700C73
2165348c7f6ff7ff08e251f9df1cb1483e1b707b3aaaa78eda225fd5fac363c065b2 3381551F9B07B443D1BC5E4EFE77037671FAAF08633A13C303EAE11BC5E7318F8D95
2166663f0ef310eadb3ff09b5ecb7528fc5160cbcc74c71415eb7f7e77d239fb4fec 338272760FFA000582EC243DA0A9B677C36481A3E474F5A3D7ABF80CC0315CDF5870
2167896f4c507d426d1a2a64fab328190e71d84c769636167ae0c6bd0d1da232a5ba 3383C595E8F8349D2BA5B47B3F387A73654956A72A8BE169C5D0B120667A01B928DB
2168f552a432443b0c3da21db726e0f0645ceb3968728bf9a1a1589baf816a7ec1cc 338490315692D6BE29D6D17FB491A9DECF27C480F283578AD590D4557BDCFFB6BAEF
216926c0b9394aa7c4644d06eb1d06a67e3e745664064a7c4845eab1dbad5e79173e 33858136B8116D81A730D638DB6574647F5F1463ABFF37AECD69BE9AD7B87EC13DF7
21705cd9ddb86b8f6978f44e605c2c3aaff6a09de469e72e9306b30591b9af32b01a 3386B662B6AA178F4EDB8DD0AC194DF463639938A5A26374D1D5735B79C339F7B421
2171866e2dd47e703254e474f082fa22922251adc9d97a3c89839b7e7a1692ba3052 3387983E61769C43955C269DACA02134FADD4A03EE61444C2F8DA54D9557145C8244
21729f01cac693cc0b4e97e9dd7898df43b09f49c8288cb2eb8cfc1fba8beabe03f1 338896B2B89BE7CBEB6ECC8848D17A70BA8DB8DD6E5B41F5D2917F0497F0F6CAF869
21737463cd64fe8d4dbe4cded6044a91ebb57f287bbdb3fce4b01fde418380132b59 33890596A92D6B28370196094CE7BD850DB4E7A6CE89EA7C92E0C40B31C03651F1D4
217490da225a11c0e19c4ff385a575beb466cc4d9a5ca70ec072c0d48f92de7843e1 339045B1E94E192EADC2A6507C119021E687F2CB6EA298ACBCDFCEED5E4A97080AE3
217510e2555729e4f9701d191e1b7fa16a9727101fb780e746bf6806bfeddc9d532b 33912BC98C90EC787CF473F88C935906D0BD17218BAC5C5CBEBA60F0298D4AD1B6F8
2176eed6151ab75ad70e7a60117d823201fa8b5b2c2ccc963c4bf894030ceed74b9e 33925EC1E6609D09821BD121F361A0D2AE90FBCF7F0C9088B30640149CEBEF18C8C9
2177753fadb6fc8bc36df38fa509b9df45b6f21440c91bf178c82c3083ee546829f6 33930734DAF11F4928277A4F197E3EFBF17115FC387BDA86A994239C9716711FCD9D
2178aae5843c949952739b91ad8df9ddcae285f403f3a9e13cee2ed160a3ba88703a 33944D78D3CA88145F3CD0304A05C76BABFE324148AA96EBCACE22455CA060310D07
21798c55c7e8688d28c49589d627fe7790b00b383aceb98c757570a5d2cd40575b68 339569E1CF38CFE5F50CF6E6BF687C2500E3DAA62B3FF0C184955E04FC32A6CA464F
2180b40b760295bc211af87c00a59961758f856013812523fc54a2ffe7720773a079 339642492C4FA45409B5EA00478A21937B0B1072631FD01ABCA6AF3F50DF969F3B5A
21811a1923788886ca8a5584b815780ee6fdb1cf1e9f929a7b4d6db6cd7d2dbfc395 3397C7B9417F7374DE7DC83F2B3D66FAC9E510D5EAA048077AEE3B7942ED0508663E
21827db401a4c3d35efba714d1253d0e43148871c3b337d35463b9109c724c6263f9 339838C51F5365F8E420A030E8713D457B54F8BF292D59FB3F556ADCEB45DF4D0071
2183c5c4d7a88f03e65a2309afae2cbb00397fa54b8f9ecad5724820e6bdd188edf7 339931943AD8320268AB1F0E9E41C167B865C8A06DF5F7365BE364258FE9318EB501
21846cffdeb124d5e860cbed434dc1172ed7df4001ab157b0cad3d80d2bc4629ef67 3400E496182B15C6C4BBCDDB7094ED2C21EC501C520B42125CC79B078F0C2F3D497E
2185af733cb6c4fce983c1c89ef91ffb90a11783caad9ec9c420250f1cd72dbda39e 3401077FF92CEEE279D2FF847399E70A9C4D00767155542EE22A0FA45CB0481D3330
2186d5b4470b8a5a232c4836f7bfcdd8b105a08146a7eb11124129f76faa7ff743ff 3402444D7448A966AD16A3D11FC76133074AF52C0A4A4A1BE90C3436EC6C3B42E25A
2187fb9f78b61e9f787312ce98fae990489254393a801d39cd041e886ca58a2c7057 340341DFA8F71A87B059612007C141D6795671F3A1E788724EE04C6EDD8672F04BF1
218849eb1351f7685e3a3930f340d86eb1c86b17f685a1a38a0ccab4affb8d139520 3404B180B3604072520484AE8BE66CA44B67C0831856D10B7DED00AE8F3B1DA1C704
2189e36f6a2d57ea0b5591f69f073fd5bc1c8a20ec2c84c858ec4f724c4d0ee43d44 340590BB59A0C9F513CAE4E7E7549429B0275AF422EB548577C286446247F1AE16A3
2190774c3be8d87e2a99c81ec20e64f999f49093f16b777d684d356698c71558499a 3406C25FD6CA02D74451FDF612CD4E07EBBA6599DB6A9E6D157E7FB615FA653AF274
2191a2e4724aceb8edc2a2552b13fdce94551ffaf64a6b5b0fb69f431868f95b9b8b 34074618ADB8B5F8FD83C8F01DAB3A6B7234E6136DF33F27A6DD1E55E7A513EFB425
2192f3b5eb74657989c66a37d968628fa794668e660ea3e3126b6e8bac488c360f33 3408B3A0F9ED33760E52C72BE659A6AFF6FA89AB01DA0ACF1D4CC2A0E4DACA3EC7E6
21935a9a53572ad9d9d1a6dbcf33bf46950af9e85763ed9bfee956a00b7ccadc97b0 34094E4E10824A8EB84608A5E95A2593A77AC3B48D4B4EFF99AC5E8ECAE12389B1A3
21949c7c3e75d0868a5f3a57ee31dd201429a74633d32f88feadf1704793f4c16f91 341002E16B7DB5970B85AD4B7DA373F0D51E81DC69EFC45BD40DF4EFFE58142BA8B4
21951df2492aa1f52d3fcd7686ab890a856719cab4bec096e1ed5c1c4f4ffa1611fb 3411EF904FFEF935954AFB9BD2041241B1BC8519E238033113629B6246DA4B173E92
2196eae6bd555f110134d4a30eb6957cffeb055b7bc8a141de452dc31b6ec00528e0 34129C882C49928D1BB2A9C024F25D85D78DD6ED27DF9056031052D9279097919A22
2197d1342f62aaae6182dea62b089f4b9673cc9b1938227ca775868aa317cc224863 34135431C5E693744016124AE1F298C8CFE42A925AD42883914C13F1E40E091803D9
219818b9010309525cc47e4a50c6e5c1a0205d5b7dda1c0f27c875e826fba490a104 3414D140375C5EFCD7AE903A45A531B3FF0D01341A77F5F142BB10E32729BB0C3892
219909748e0b000adb88f649f490f5dff2afa1e2bb1fd7fbcc44281179ff324e2808 3415F3FF9C179F9A45F2054FAF27C47B84E63397C8EA891CD4173431F8F28084D649
2200c341a92b43b3dacceca175260290d8b028e938a7b970b260f2197349a3e0620c 3416289E46000992DA783622A8DF8F0ECA99B7CD78F3DE7516C10068856ED15BCF2F
22016e6dfdcad1489979ce9d796d317d881a9521125d01606cdf73ae34f8fa78be89 3417BA48D1F4FAAC6003FA121C5611D82187A5E462AD7A7128010CC68202C17DC217
2202322cea7ea15f854f226f80f3919d43385372f3d6f77b7fa362a483d164d1c6db 3418C7A9CA60D39A737E8FAE822C8963E4EE812214117B779ABC586A2749AC9E0792
2203efb7b277d73b333f0cfedd5e35aeadd8ecb81f87df54968b6a24eb8463009223 3419A1437AB869AC036F4846E4AE49CCA926D2D683F66EEBFE6B60E40C0F481F20EF
220456fb0ee164b6fa2bae544846c7f6335cd54752b354c19266fa00c17d33fb865c 342040953783C0AA5E5AF15279A3D414A11BCD5F7FBC20299DDC4C3039CB756C3DC2
2205415e08eff0dd0a25af92668ba643f34b830b3732e4ebb696652016d423ab0762 342124122A755512E6E1B82614FA1BA1F145790C3C0C2D3B1495691791A0B3B277F2
2206e2f3bbd6719284371830bad761a86500009da0299d8873aa608f520703389931 342248C388212CA31B9D833A848E62533BED862F5C93831BC0D7DF4A7D89B17B01E6
2207060e36c333f049c131a13757e72f88ea8f625499b4351cef7ab7112a0756076a 34238D8315D95C3F4E7BD8C20BB0BA9355DE01DA336E69E76F551238BE8E3FB9AD4A
2208447a24b54288ba9340855edbda2e342b428558ba9a84d75df09b1a14ac03fdc6 3424566DB80360EE9E9232918C6B013EBC5CACDF4E6683D7B48FFDCEEEDC99610E1E
2209162a17e0abd610b21fadfaa679f5dd60c771d18b9601d8f4edc01a57a4267a45 3425D949844E178CF307F10F868F5484EA844C2DE853809D2019D63084442DC43E51
2210e048f722e57f15b47755f62e548085466c9fdc70d2b7edf11121adcfe41ce63a 342668B38119A341ABA48C33E08DA77E617184FC84CD97519824DA3A4990703CC889
2211d2e0380672ab29f898f4e456f077de71854dd685e7e88a851e79393cb7740fda 34278A859FBE7654F08D93E0C5F6E7249796D482759EF0ECDA75C678B3C8EDB84406
221211754312a91bef1f4054ec86228b6095b3d0e1d074d4cc6583788b4e7a9a0855 3428CDE9B13118B1B756CDFCEA8A19E13DD8C68641F7CC6BE0E8FAB8FF04B95E820A
2213f0ee810211498ca25084b8f3f8f2c40a8719c49c6bed22101a480cc8f756dea7 34293A1C90C85F73E35855764A9B8CA5BE4CA0C8C3FC699D2EC01BCA4DC383D3243F
2214dcc6cca30b13eb407b6f188f2fc3474c56f3b4c36a866c793ee1c579360d1823 34308F825BEC634B3E7506A8D328199ECEDA10FE9EACDE7B649BBCC5D78092427AD9
22155f26953ab3ecd8f6d01de091d47c69176d8ea16e6daf2fea64704a50c992c536 3431825B7654F2E6D76B0E75CCECC577A01679757EECB85C8D3AFE287B147F6A9F87
2216519fc179168015ed8f5b1918815a243d9e15a6d26ddde79d15dedb2672210543 343248502F4A198BB2BE26153AD81E8354F8B203776FCCB0100A89B425951D1B8F92
2217c3851eca18638cff45165e55f75184123bfdd40129844751147bb7f10f5bcf37 343348A26968B74E354BB337EAFFA5397857055B2801E7D7D7C23CF530D4E5A3FB29
2218a3375fbdd5d7703c59616d44efb5562badaedbcc2fa71a352026c7342f901275 3434CEECD1AAE86EB828ECC41A6A0A5E89B4FAC2D686EB98ADFC9422773A6F8637D9
22190e37b9843c43c2c91c37208617488aa4b104fe5630402195482af6dc4ff56f81 3435DA64D2A24158D290EEFDF000EFF179080089918D3A502B3837C6167B2F3F6275
22202e335a663dfc62e2c079142edafc644a9a7433289dc311256e7967c1339db1e0 3436131B545BB3BF3A27D91157033E8A34275B3F9105BD9E948C3774DC0D81015B99
2221e8f1e902de0f108e46ed43730829171b6a1aff49face03736c1be09ebfaa005c 34377BD95D5A6D2E16A229EC56E5288CD3D65277679C4EC2DAFBE68723D83CA4E606
222256f321c0597e82c67732cabf4abc65ba76baaf3fe83a09816adf8d6cc1c8281f 3438B0C3D2DD4C2AE6AF43A6F26735142CF5E886349383E91212FEE2C8CD98998B55
2223484054339e771bda24a37a429ed971435a7b6e9fca9aa3f3be99c622a99e31e6 3439C68F45D0DF8F1DF0471866F337222D20E2DED5A96469048562AF098EA46AA2E0
22245d3cafd441c98095b79acf8fd6e672d658f6704689a7c51860180fe84ccdf4dc 34400D6FF215EE9AF3ED128A9AC51A4B1CD0D02B3DDE08FC25128C9A440FCFDD220A
2225b52b7edc93fe598c9991ddb330d69f31b96256c9731f88b3d3b1530325e811eb 344180841B03D08C6D13EB000DAD73C64C85DC340DD9221323006A80D3706ECF7E2B
22264ded8020c9cf0b09b2d37a45a80b6ea8481ef49db88fdadfb61215c3078fbb4f 34421F58923890D034FFB3636B8CE8BE725389889891825E685D296616D727A89C9B
22276986515fdb2e2c44f2496424d26ea03b646e8548e216bb6ac1ba4ad5d45d2223 3443EFCD87DB5546A990855D71099735224B1D86589C424B5D655C79FA548C96679E
2228ceb38ccb8fa940b7957bbfabccb65eada937d1d7e9ad2e5dea0fcf13eedb5a17 3444BC7CD17EC3D32F4C61C8619E31924D4E1DFABB55D26591F936B9634CCDA99121
22291e6aa199a316262fc1bdfdf9708fb0e6c5ee01d180da78498a973d4a192efd93 34456DC7F0A516C38A6370EA9789C1A159DF5A0FDE7BB0B3B6BEBDE51DF41A98F712
2230c0aa07db55985b7da13b89eddc1adf922c3ec7efac5bc5f62346fc0fd3fc850f 34469D98F64A9911C43C1D967F23AB0AFD69FDDFFE5A1C2B2B7D6417B9B9F7871F74
2231aeccf9b4f0274f02b6fbf862ac974d2b7846ce48f4f53bb503206a8a322793f6 3447F32EDBAAD84D57CB948EFC9C9BDC9C56847A9C40E1FE1E7768DBD1E6142873F9
22329ceb318108efe1241c4e500e96f2381f8217abd8a6defa20552cca27c08e0435 3448F069429085567AB66B7BE423A7EC9FD2CFF80EC9FD40684C65605D540CD25CD9
2233481ec73bc168e0d8a7b6a38637101bebbd52100366823fbd18a808b76b38a983 34499499AA0E1624F181202EBA794307EB35938452E50F015DEEE493BBEC696F8515
223410b9865db23a766ff5be81c41bb4003230754f18d05e56e377dc64cb0e3663f3 3450E991E9AF9A6E84D6010254A43E27D51665E509C8F9D526BC971FC1E59A948E33
2235656ab414354af3c7ad28d86d14abf82eb0092b0d3feb68bf44267a0efe17888f 345142FC09EC12681682C2FB84DE3FE4ED85DD647659C2426F6227C91873EA1E71C7
22361e0c2611577288d2bfad0e20733df24f630e163722695ec8325c7227cf174cc1 345290F1A8B46DFEAA5BE2976854217B5678678213ADBEE8A4222C11ACEACDB1339F
223717178783390090fe073aa10408ac9d245dd32e4dd35bdc9a98feebbb49c98890 3453255D42B9616CD67B0D406674C6E3E48CF323DC2B1784FB78A4FF02D5A1D1D5FA
22384834a0f452243fdab035ab75908f78baa196d3eafc795ee82fec8feac36f0bbf 3454854135EFD4CE3545163013073574D8A504D502134BE30EA125A1A67B982478A8
2239d413f030af966c623cf56cce6d89a2d0d7d8830990640814baa42cccf9357c49 3455039EF2120FB08CD896F4CC8EB9819F5DBF74CEDC0D5D3564AD5A30151D920BE9
224005e2731a0f2494909b162b13290179826f481c7ee314d08137bcddd8bde77204 34565DB92CA93054D133A88A4E8540A4BD84FC05BE1AF6E6F101F07485442DBFF263
22417996751731fa34b507baa89a0301eb2246ab2261789a6503d25b933a7e5d6eb1 3457D0AC098CECF52E0BAB9CBB766E982A849674E4053F0E3DACDB2637D03F900BB4
2242965afa60f8f9698cba938e481d10402cde14047e7960380687746bc8ba37c678 3458C2BA4EAF9599F9F8F6F3FA2A21C96B1A3894090AB7C89BF1F90C5AC9381C998F
224386b093fe1d4465d1b4a1367a5a0697516a2e494f8b509459ef8ad209cd33e281 34598BA03805F04918729E7E1C75FB3283AEFF4EF2AFF444946A08C6FC7545F8C21D
22441899fad784b4ed012b28d39a109a22ded00ffe3b65db0f3c02c9282c4fed605c 346055A6D02C9C7CE37F62C54BBB31CE87AB0578811CFC996BF912809474583F4EAD
224562d2bc531fae59d30994501323c54466039a53d6fb82bab409b9df41db502f49 346194CF4C2C533BA4E10837B4D590E00460DC9B19869D8EA076C6BEB9AC5C7F0930
224678c3366a57bed626da8f6e86ea14c41088afc4318c2fddab2a07cf8d93adc2c1 34626C793353E2BC38AE62B811E5FE9B42CD08612C1010C6D13FB3BBDD6436B1358F
22478a4f302264547b95ba618d9068d1194be96e4c07b1b553b182358a412e9996c1 346384029389630A47C01CCBE47224478A3797194A5442DC4F0547E58A3E07AA72C7
2248f4f1c95cbd351586c94a0c00b4522d0b797f896e46afca5a4828f026832ca890 346419EE53B58A4A961DED5E06B9614A41F04ACD5D82B122D5E537A8884C88A30680
224922df2ff4033b99bf44bab1568954140cc8623ff3c6b3446b1f225a2840b73b1f 3465E7420BB183CB7633FE6492E65F775BC4CD490116D87DB13D315377E4D9D18AA9
22502713e9d08d719151fb3343ffca0c440b450efe89df49fec7a06546187153adc2 346640A2D014E52817F1D25307ABDF2AAEC100F0D61AD0879CAD4C7256A6F2572D5D
225162a4afbb63c91a4ade7b83155c1c1c166b4c792525e6a5577b4ef868907412f3 34674DA5DA57C4282B6A3EDFBCD92193C82B6819EC7A0E097B02F7F00A21F1AAEBE7
2252a1b4854e1028fe3cd22dad95c6a46cad24db0ec8950ed774b80b4e6dfd2934ba 3468A3E9D49CF87407B56B889FBBBCE311D287C59A2B07520C039A728EF2371F7813
225394f0c17391ea46f743c139a0e4aec4430d09a45f177693eb33ca9dcf254422ef 346913188248A5AC5A28D760138CB78F8E98AD1007D3BA6E2AE69412055EAD68A871
22544374eb97b1127327e1086d40ef9cdb6e1c7614f9963322cc65afcd4a4a86121b 34706CFBCCFD033F5115A9540A3E871B6935832BA240B28DEC5FB76CE50C5CBF4E31
225594dd2cad3616cb366482bd0c041d090508732c653196abce791bc9a7ada3cafe 34714A0EDBBCCEB01E837B18CF95543236D509062E9258BFD1D9E60B481957D58C3F
2256e021c8b118fbf18587a17db7c061e371ded73de519d5164e61d15f964fd8a90e 3472B480F16829CB834856A2A46D83686EDB11D99163C96185DFBE698C5FBFD425A6
22573d00e3d7a5ede9ca11c3867d4fd9b1af49ef2e006603bb04696f4117e81c99e3 34739C783E86CF8DE5EE731F7F0DCE571434D9E8B0F75969801D81EF462278192288
22588c67c92c31e391a5fb81abd16f5705faeb043f0fac1fe4f486d00e32e3fc8947 3474F5E4AA4EB478D42B345965257FAC9F7EE6EAC611698DD3D7DDC247B4EC54431F
2259d12382b17fdc54309317a33dc65c5162cb731c64e9f02059f156ec25a7625c26 3475E9A9C1E02DFD319644643919DF480D626F8F6C4B870C2410B14FB7D558CF1940
2260a28a2ce8c67e8b2b78a6a41e3915a96a94fbe71e59f42d9e9704b1a21d88e0ef 3476FC9E4F76A23D4F95D15FFEEA0BC8FFCD59A003689C036BDA1F271E00AFA7D2F4
2261bb02543c9909f716c5288378a91cf45e7a4802e125dc75545c1e7f322132b809 34775DA5CF2FA4C13E3F7F3CF95DC4D929319233F8CACA302EC0DABF582182FBE2B7
226250e99b906b74d997ab47445cbad2c674facb4ddb111368d024255effe3b9d67a 3478C8C1E962797B2F78BF0695AD8E3EB83C296D13B40ACBFA7860462B466DE909FD
2263b82d6057b5a049aa805dc7de9e6d6df10b1d5b628179ed6e1a32ae4b1b02137b 3479E59203E41046C9CC546F0AA7DF04FAF9BF7A9270933D8B167D25B884FA9B1424
2264c74b1896d8886dd4f935c7036125f8566816a800825d11238f2b164f434e5f88 3480BCD8A86D15E8D5BDD2EA983AC7AE11C3A627E1B4C8ABACF1A3A5E5EF35C8D4C8
226599c4f477100838c91ff7b954e0c6b153ba55f194e92790861a5639284d6d1589 3481DB34B96A9C9FBE4AF511C281DD652BF4B19B8D3286408B2F15B775F539728BF8
2266ef79e1309c45ad060e6432a9a7eca4345941c8456892ad7881bd1f5cc245f2d2 3482561CD76E989896337FC86461E2AC656CD4FB63CF50B9BE39A2DAC6D19DF94521
2267a4dba8e95363fea4a436442537c04513454cae954fe250a2439475974c76e148 348370137125554AE6C3074F92A087E85C326033F43A0EE3AD384E901CF96674547A
2268d5297951bf43a17874ef7468244120d2c0a3079ba232687dca68af29b73e3bbc 3484109422D4A764FB8E074C0ABA9B9EBBF646B2CF9213303674DA2899B0E7176F71
22690db552e8ae30dbaef634157c1cebbeb32d8d2675b83c41baea6a850dec23fef6 34851C08C895A205FE2A58F63051244C90CDECAA9EDE48268E9A30EB41F7C7C8B9C3
2270b7950098a30d547e2b13fc095e7b6a5ed9be5ed7d5181adc0317adf8d1587457 3486286FF7EBCDD8D88D5BB8236C73D275F48CDB393035C7C34CE64BFF822731CB57
2271e5b5fa4d4cf37187cf5156f9095c6697d292c9c2c23de2ce56a9c13aa5d17a0b 3487B412DA75BDD8DC89E4006297551EBB8F8DD17DCE29389F17E25F9A8937812993
2272b752b8c224dbc92983b615b825056da181d4f9095fc53011209b7262a1a626fa 3488709F886D67DFF017CECA614101DEFCEEF27C73C515328B1BFD174595E361AA06
22738de1270cb4b4ae559fac1e13cef35ab684a6ca828d8ee4388ac17ece9e5fa9b1 3489D9AD9D6BAA92E985B513F344EA9C395BAB1D5DA7F092724DA1A8896B95DB1EDA
227469646ed00c626217a45a4b81e98c424015b212fe32f5753ae9bf744c7493ae96 349054C18AE1124B37F37361E2D4778180D279EACA24D8B0556C8C35AF37D66C9D36
2275d6678ea3a48cb4f99b9d499f935747f1e222f82287e73b5e3cef3f0d92c8f77a 34912B284FEB3C8E119FD40728984FBB5D707A73A4054038326303B2EDCC2B320A95
22763ea5fae44ff842cf959d545cec1a75222bded50f7549ff4a9f663be7e873f4e6 34929CF9CB7F75850F94E97539D44BCAD3E1B344447D55FE640A8791911E0F6592FF
2277cefe32a7e48d70d6d632d315a9819f49b7ee86032c384217149f97c47dfd562a 3493403FD242FAC2887994709E897E990AE0B90650894F020B2FA8E70561819C3196
22782e9fb3d24e4c1c2e353af5ce0a30acbeaa0e8c34c42fa9e22395238f7f279750 349400953A6D08AE930BEE0DD8010786431DEA7A06396DEC4CA387F4ECE353A1F262
22793cc5c1e8898926e201c9e8e2c7ccfaefed522ca0f1deb08521e7a2e5c46ab4b4 3495A415164F9FCE5A3AB645F3F1C2492A5D6A806C5E2E0F1A32B4AEF4658F37EC5F
22807781c7577aaee39020d6f921101a7ccae588784f0bba79ce2540d6c62d7ace2c 3496AA5142F698F4B47ACE8E6B9CDB63C66B7415142916176AC37C3FAA05F65EE580
228133b78feb07b5dac5c54b80e48fef36341891d13eae269d1e275089d1f1fad891 3497A47FB2AF726DA0178DFF6507B1E539B8BF06738821D62BD6EED27E377A0773E6
2282907cda9d8d705eb7dac448f79c5e0c5c766edf83ab39d6cb1a26b424ff543740 349855A753168E20D89A2F019156EDD5F4F259264F34AD94F3355A0EA1BE155A403A
2283bd3425b7c87e1d24c34e3bb90b3047b9686258b319dde29004686683283d1caf 3499C2FBCE53095D32237781F869374C555EC2C85F173519D01B4011E66C5A5C460A
2284e40227ab5949602915fa3d1f7a8e4b07c8c595c727a698bfe9c4fa5671516d0a 3500345D6A47CD4C7723EFC96D3F87F125EB67171CF21548D17AC5E874AE4DC1EED5
2285718da5b7692637f3864d13ca0e9299c69dabc1dd1b0e5a005d53791e00a84cbb 3501422FA44AC0A8AE53CA89F843C0C82960D9813E454EEDD02E02FB2945BB83FDFE
2286b76010c0cb22deb5633f01557c866af637be63a8f0947179a5685a60b23edc8d 350269567189255200701787FE407A55DD7F39B9CC018A3DCBB912C0A7069C700870
228705d4a066de6a0f35afdff18adc5f189a583a654858a030ec88fab324fe9b435e 350363935DABBB3169014C53D2AFCCF8321CE55B76427CBF8A8792DB025C79457E2E
22883d435368e2666472011006226d05e5506c17d84d414285ae1c352f3adc6a83b9 35048AC9CE36DC55DA254AC9B584DF22F1166C2D59BF13DE16F609E6E1D02B009D87
2289d6bda4f39d51ca09a88b0507b35721461272c511ee704b4308a3e69320ca1b03 3505D7787088F93BDCB752F0B33BEFC4C54A01DD0729FAC6ACCC0B581A791ABC8B6B
2290f384a047de1cd2c9a98d126de8a5974082497cd036ad88d3ad722d507b77a9dc 35065B3975C98113C0191F42DC1F16C27A239DFD8824F52E0F52489A13D73FDFB694
2291a6fd9fb691d9e266671619e471b0e173e5808836e85f5b23058bda5606b55c08 35077E5A4AD1DBF2C33BF6C7DD8BCFC9C206D885291F3DADC62B6F85EBF53996997B
2292ab5d92be7dd116dbf70bcd523cf51b46cff66cde5d3d10003f7fdf6fa87ce30a 350838CFFB4B46E596B18F97AE1A2B9D614A460C6DA4FEDCB521C094752E5514C4E0
22933732331c8286f78357fb451d8fa954904a5f66a19cd5583547cc60e7826444ab 3509A230F6F53A722462EF6C757B7AF73047B65723C118F8FBA5AFEB4C5110F6897C
22941adb5767c0eaae928950bdd4c6a097c888499467843354076d89eed8326a45f2 3510AF863825C16354255FBDA1A11E032F5CE7938F9876934C8F041FA6B0B28B1475
22956e2ee21d6ef619f688ce53eeabbb5d059e4cacb0ca1108b69d30ef0838cc40fa 3511C29E7A6F6134E6B7834D250263CF0484300C701AFBB50C9D3819BF272DE9E072
2296d04a9d72155502a33f3e65a94a6abee9340839aaf9f5c4e9aee9c6f97d508160 35125355D8BA6CBAF7918783AA5DF2A7E04205166034F08A0B9CAD265100985D711E
2297880818bd186e28b3588ff35a39feb458ea823bfb6358257416d249aaf0205fc0 3513C93AF97AAD54C4B62FFA16346354CE7C8E0485AFCDBDB6411CF2A11C945931E8
22980d83860376be6cfec5d214dc70a6ba7e9f900e6ffcb40b2a5a5c7f2aab67bc3f 35141694E072414A1E454DFC2459C38158DE94153A893D27E12CC7AF879C440EF4C1
22996c8faeee25089db99f1844a59ddb40fcd59d488ed6cf42a8b2b616e72c3c52b8 3515B4DB8772520AF9F33FA6AF50F10042C55DA356EB89937479D0D4AE4A50A5CD25
23004663b18914713816f2829db0274bf3d7fa26665212e940a145f3ca8fbdf4a7fa 3516DF4F1CF780E22D97B61403A3AB0FE8C06A205B78DCBC9F07C1B51BD17A0C15DA
230185dce8c35ee035877e2d0c12786b6d38fa0df9f9d8322257d34e4f85d0710d1d 35176DDF7CE93671E300D47132008080C78C427E5D20D1FC6DBC6DFB821355F6C024
2302853fa734c0881f5142496fe67ae282c84c904589a37575171281d45b3a0514ee 35185895AAE922E6928304CEB68E29AF7E1DB701F8E3455B367D1EF586D46A452A6D
23038b86aed90cf369bcc27570c2f64eca9748153671066fdf5ad0184a8686b0631a 3519AE76D390C86F059D5AD4046836E2CC32DAD05BE0764157BF01C8046FCE356D97
2304d912851995218abce31e0c2d10826c98a716d1f378028eaf1d35ea0933b79160 35200BF3D50DDD1FB1A4B4F4D8526B253C6107465F766A5A9FF9B25A0A865E724D3F
2305407a934212a3817fc8b969495327e4f22f2ca56d1f63cf404fb25e0b40533685 3521BD101E3301FE55B7DC49577004F7B413F5DA0DCAE6BDBF74D55340F9ABF01F90
23069868d719f7e4383df48a137c8fddaafe507c4a68dddbe479cad636dbb4e88614 3522DADFB4DD03339EC57A1F5844F3EF3F974D01C05051BF2B71452E0B86C16C31DF
230745d69a8de4537458da204fc6d0d1bc7844d925e4c6388a453a226901ce370ce2 352312AD5B430F784ACAAAC977B910F9410D4DA78FDDE71866A111060DC04A9B7EE3
230808aac25a0e9098119caf13928acea4733cf9d705b23e7669e41aeaaf909f3107 3524447E8D5E89BAAFB954EED6F5519C8929AB015E1AE23341B3A7E64DCEEAC77792
2309acc3adbef8303d988c0478be0d65b4c93c088d36a8d41483c3acc32aacc1b43b 3525BBFF9BAED548B0BEB21B1A20239265A6B9FB0DDCDB9DAAAA93476EC412D8F9DA
2310580aa7c0d48f71ba0b9b83e68bfaab59a7d0daa5deec877356c50d32eb00c143 3526717DE5C0409E3B8985B528B517EF4D7DE95EFBDDCFF61B31905CD6919ADF2E99
231173792c25164d24e5fd1b57bfb62fa8f7becce45fe0c343e7016b63413c5b4257 3527326104E3D761CC12B30ADAC02FC95984060002EA64DE673608F2BA4CE7687AF9
231217c08b22067198dfd93f7067ee5a5932297d5c738053ea3011ba03d184d797bf 3528610D825F186B6BFA2A65AB82CD8115DD1077A18DFDBF5A698E094341400EAC99
2313aefc43ac60378cb829f3529d3fbeea132d6f6836fdca19d7ddfb5ec550064b23 3529E86343F5725B852F9AEB88538B137786C60D3CE62BE0B97217E06115115272F0
231479e54c51ad49141a558ca9a3599881d2f1eb1a0f71a14c1b1e69281ae859a158 3530D2969F6664B28073FC63B58B8CC16E845A95028FDC070A874AA86A4E2BC706A2
2315d5837f89d7a624f970cfde64856da78e96cae4e5f7f3aed41385e3988d24f863 3531C0D28FC06DEB1D82D7E17829A865E948D4E265B6FC039ECD95F6AE1E45DCC7E7
2316c9034a1be1b87a081f2f7b870b0eac5f9e6a0909bc494bba1f2faaee56bbc614 353285EBAFB74BB36B09FDB91E2A7496CA4AD5735FBF2685A1DD6635051DAE86DCBC
23176f41b5eb3ae52bd220d1d6433d8aa880d7f990b6d8474b8603fa41cbe3c5331c 3533FE2C218F64A21F76E60CBC196DCA5B2FC701CBE0EE41CDB25AC717A8573685CB
231864f36d261ac2ac9dc4cbd77bd697fd6c955f9cb0867af56e2e179ee04dc1ef87 35340275B9F54DC365EF5BEFF71A9B3CA12345AFE1857B21769BCA79F0211944A2C0
2319a8091060114397572eb18867e123aee4219011f4c648002716fd4488f4b950d7 3535DDAFA93CFDED3FAEBEA72C7FD8BE710D6FE41E403E1DC6CDEBED50F1C034506A
232033b9a621a03bf95c4a3a8932f7714a278cb9d44be7a8fa5259dcba9c41efc038 35363761225C99674B27596940666C503E7CD5B248F2812B3493C597E69B51290F33
232186fad56b7d777075ada46067a055067dbfc8eb9238453938677fb7e0719f35ca 3537E63359A56D0BFF41B5731FEAE368434D471411B1DC8A1AACB30E79BA2A4FB832
2322e7ae5e912a64f3496a858aafd3c911f9f154a2afc6307d6f2a36d37f1db61a29 353845D7D2D45C6207ED7264269C84DFD7735988F8EBF44FD3304F36298C7AF2400E
2323d8ae538c8ef1ebc2932301bf648048a8d00dc49178d2f97937bf99e9b5c1701a 35397F92C81E20C31556C90BDDE6F1260E6D68B25131259675952596E2EC365755E1
23241f2becc9537c1744e187579f7f17a7e0ed3ba1cacb456db8a2343482be3af336 3540606E5E61FA489CBF883C539F3ECD897484C88F530802A9F3E947BE40F71DBD9A
232599f839a7e25367ce66cd1145a200cb5f0ce9e2605f6c55a7ebc1e4fff43f01a6 35414F35AA01D1B927C534309B31AF9BC1DE351A23ED1C8823B162A0BCC1DFD8581B
2326ac697737a34c420c4c93f3fecd708749754aebb1a2175aeb18e443c1734d16e9 35421CFAE0F45CCEC717566D2726835C5BECB4147CB90E1F6BB04956824D435C997D
2327a905531db8d6b9a73db8e287f0e512378e39135caca386ef875f1805f8cbe314 35437CCC8D1F46974559CA1EF0B7FC3234D9EBDBB7709117FD67ED3D905BC8C2F07C
2328e1f12553ed673f31ad27fa4089675de81d7624f921b1638148690e705e0ddab7 35441B38EC0BB305619BA9B0E3B6D234274A8BE43616588DF08BBC60B5DB9D1996E3
23294eb3ab1437f91d874058e84a26d73dd181c5b036494f40f243f6507cb1ae5ad6 3545DF4BB78F2B82B798D603C9FD44592B34D371532CF3455AD9EDBFB44D91DB0BFA
2330594b1327d6bd886e90f0b8670197c0d77400e4d85565cf54de97ab5674c70b66 35460138B7346868AE305FE7EEE0C2916CCF382DD0728F4DF4C45213F72E98D093E3
23317a3bd7fe9b4e45911a2fa16d81c8593b5bb6f8469ef3125eebb751d069b72236 35472C7DCB222BD91675D581EADD9FD5BC6B4F3CE801CEEC450F737B1093D26A1C91
2332acdc0648d18d61e7ffea0f901b558f49fef7b1b171a5a3a9778cd5daa68b4cc5 3548CB2958844EB07E3B4B780E51B1B469A19D94264C9A74DB3B67391940EB7BF8F8
2333a668814b4cbbf4dfc4c3db1a77f7d4392039ab217d909325d0ab1ca4dd6b4b4a 3549B5708BC044C23DFDC813E70B602F8100E8A0E694F90EEEBCBAE58FA56AF14725
2334a8d0828b15262f3be6ac83168f5d78373124e8bf78ab187e9abb8aca67b552f9 3550E3995E5CB8126B6765626621AD4936921822938F70FCE180655F44910C968C65
2335062a1809c33b2b37f909ecd1fbe0c58ba697c2aff8dcfa7a56603d8fd95d5f74 355159BA9200B9DA68297BE8A802748266B2B5E4B3F7647FD88AD4FB366C4066F66C
233605408b01a7683fa0a5d6b5cca17d64a0bc3cc336fe9a872e1a39c9125d039d52 355201CF96A20F03A8910C553297D1399FA0C19B1DB9BBE40296A49E4564DA6C51C3
2337eba710d7bd71a869b689f4a28715a285ebb88b53e7064e99536654a73368fddc 3553F01AEE882DABB7D33D717C53006BEF8F5A60E0406A7E7326F32C3538E189F268
23380465eadfda4e699fd7120e84a360c388ab10c6306acb50e5430c7d5e07e92e5d 3554C286B3EF5897DA0D83A5B08A98AA6EE4874D6499FDBC0AE9201FDF4B2FFBA028
2339338234b7d43adec91cc9d32bb8cabd5306ac4ea83adcb02d35424e28a38be832 355568BAF3AF1DBBCAFA7DB513D3862822EE91CA5F54DB0AC5F6417A7CA682051C83
23408636ea03eb9f854008155fbf4add4f88391b3a951c487bc3421122b4368198cd 355689E88D28E81D7361D0E946B14EB7A3512C7AE38EA3C067A1C107EC6B0A443456
234121d7bdca003f7b7698ea15f8284b5c9593b5e6d847b471ba887dc331cac07ddb 35578E1BC11C568D091B255748F695DD3314F2B4BCC9F350EE64D44A782B627F9FFC
234262dc79958874fb1dbd5e1e5541e2d8c861a1cb16730a05febb089eef8b278ebf 3558B9A312B657C7D9495ACE71EABDFFEE67862562C010AE5C851FF518A45AE70152
23431039343c75882d2174b092e6c422b7ec3f664d2252b2fe97deda66c1f9c802f5 3559FBA327B97D67892FA9506487995554B078C711331156DC39DACA9D7E8171C756
2344b83e0773a6a07bbbc79e45724bc98e5de6b8c2f1de41df4515a95cc172bab2eb 356020F143F1323691F9ECCB5C91B330D0E8D8069EACB692DD7EA0E7389D5CE5E0A5
2345f611eb5e324002ddb25a79bc4f5c1968fb25fca025932bb939bc3aa4e01ccb9d 3561E13406703921341390B488BFE6F41A91B37D7CD6E5C1F011D26427C5872F12AA
2346f1d97a6901a0a51c401f5945e141bbe5822f41ab75824f563dc7408c9344752a 35620CE1DE763037AE40C9AFB488B48A246E064A4AB04DAEA8906B785B43EBA146D2
2347c6fcf04d583ddb596dbc2961afdbb27d864d089c7b425feeed7c4de45ed8e8ec 3563BBD1CECEA355FC195197D1D06C2C33A36C9DD4BF5E6B7AE55A67728A31A47B7A
23484c657de23503184ac562fae22e3607db5ea135854c912f0db7414985297223b0 3564E831E8B6A2E0A07930229C2994F3A00048731069CA4D3336B5FAD3CF91478E7F
23495768275960d92abd181f6c7fe6806ad16d17e287bd8c7d6f808e39c4b7b746a0 3565FE96B235EE9603B10025B0ED1DD70300765E5550DCF62DF68203FCE7DBBB783B
23507d590d89d5d3ad4ee83df97bc5d701a7ddf0e3b548b88d1e73468c9f35cdf55d 3566A2AB2F9A75D96D02FCC5F5BA3ABA0E3D0C65386749972F84E91DC312E31E001B
2351ae444b1f48937c08fe7e61118e0afbe766279f79b6ab2e241da41c4b11a3fe50 356756E5FF546E219BA46DAD405158B4B865DBC499CF6D715A4081F2B53E958B0448
23525436fa5fe5f7a05882701c5608874188bf54cf7d4224bf4626f51e7a539fe1f8 35681D2AC8E79AFB2F643D59983DA05CEC6D0E3E997028E20D022C743B18DE9BAA76
2353a2832c766705d022ddf75da97e0515c2cb0f3e0c3016a207f494f87c9e5bbf9b 3569A70A117CDB6D100A1AFF652032D4348FC9A3AEFD190FC03100DAF894304BEBA7
2354f1a8c4494a1301b08a2f19889dbccd5eca69f8f9b33c3e1fd4fd349baa50c162 357082786B4F50C13A70D9EF0C6B3DE685AE8AC10CE69C823866305F3207C0663955
23558f691bb3ae73f3eab26d003bd56a10c78ab91328aa446b45adca645f61f1c09c 3571612AF91A19C55CCA6ADE1D9E8B8838EB8F7893F15AB5649D77809E18A58398C3
2356e99081b74c29ec9a086d70a3a89774e9ec0954f773979d18cfc5e9bc39301396 3572857375AA5B9C0039784ABA892FBB524D0E932C179BF28C45DE6088E4D4DF8440
235731206d01b2eb934811e74029b81dc93e6324209a16487327dc3c0e071532ab4b 3573D8C0268B2F0B59F29BBA902790F1020C0BA11586966695EFFE4B14095694B3D7
2358f376cb00d3245172a237fb69a2bb02a9309da3629185b376a714601276386c03 3574BF65A4927ED52817C1CD73C968F13A9F79544918ED02E4C6B9686EC5BC77D108
2359550ad5b29fd5ca31884bd971cfc6d24883e351ccb9963ab5f874f1fd02ae40bf 35754CBC86CD49A1C7112B8E3E6A21FEC000576F732F27FC98BBEADB043188968A9B
2360dbd7e86a35f9153689477e4cbe0089514602797128a4356e69eacc09846d876b 357676F97835E4380D7BBEDBF4C3B97FF9CBDD06828E95FFE3E11797AEE8787E0B73
236185ada43a104c55e192e8f4c5100aaf99164221f4039a207689f9827442ed0735 357769FBE5212734078A8A3DC378B0C17E2A63962BDF4D97ACC7E2A8085A71C42578
2362f363ec02f19b066747d746f4920727cf2777b23f8e9a55b50fc1c985d7831809 3578DB40634AFA3498630BEC9367B5F6F472D2053BEA4A4B84440529C1F1B8695A21
236342494c4787959387ad0ac230dcb02818af66ac26c3346eb5b6bd1d0ff4e0c611 35797E7CD84B9D4F924129F21BA2D1D6F7E27A57CE61292A06DEB73269B47679655D
23649b51b5db8f79b02f52d0aa0d08acdd61fb1c12c657532a23312ec98851592cf9 35806B2737942C24ED49366639EDD7EFA5D2D223E52CDEBA17BD19FF47D10F401CAC
2365609f91a67b3e67320c6904cd60c08b44a989a27da24168de519145e20f912230 3581EDD9916D5249DD046C459025462E775BAE3143C6004C4A826633446BDABF25D9
23663062c9cf20e273dd6e1f1d50f2c98fffea307ad5ece6b2abd90541947c74afcf 3582B3B0AEDDF6585A51E49293E05EC35C0AB151464F786A5E87658DBF32F6D0DC28
2367586531adb59caa435680b68e251df27edce0950e603a3a946c8da4d340de85c4 3583748159F30D56C40870F1936638F175D3AD4E8FC61BF9F5E3EFE0E635FAFE9E00
236835cf60b38f9d8c0234e6b5f82717132c69b16022e31268cca0e7b0a6010a284d 3584E7517C54BA553C717FA02B5C7E66056BB68CDCAC43CE0B7B56AA5FD7BBDEDA87
2369d92bb372ce06fe9f812586e8d454e1f5e7c076b6a139e6b328b2f2e1e3589e4e 3585D8B5238439D589EDCCE7923766CF7D25DBB9FA70BBB088D3899781D7B3045FF2
23701df92b3be1 358696A6FC41A267943125A7C65E949991860A3CDC129D59E4BA56209E7A3FC43FC5
35879F6BBF6F56F075BBEB47D841D0C3D4C6F8BD85F277F6DD732F73DD6697F12C5B
35884317BA505B0B46A45E05CB0EE8430F216DFB5B2891F7214641B50604D4070281
3589494C635D66AABFEA79E3100A16E6EB31D9C320E34F2EFDDB0237BABD99F3D5ED
35902700BB1367DD7ED7BF0F31A87C6FEAF596C1BECAF420A8E59E08C78F1C0529A9
3591E81A411599F343F07D7628BDC8B045DB1B260425976C12C80E4D38A24D5D458E
35923F55F8D5D0D823A046B8E6ED3BB2DB5707F96B012C1475AFF25A304CE2C23FB8
3593E4AC0AD95EBAE53EA8CCD9BBB436676FFB06FE4B779AAED999EE403D239BD728
3594B8A2AD327F8DF1FAFC9C621991AA6DD62F8A033264593CB4AAC76A132C32DC02
3595E8A762976D03B915DA0552B8D466AEAF8FC57714A81B91C5031F5DFBB2932347
3596A75297C2C6BE407D3F1D52AFD4BC1550827A7F56664FF865B548849492EF0BD4
359770F6DBAA26660B1EA63030AFB30A82D8A52AA0F5FE263926783E769D899FC743
359895C0C7E735A3ACCB6B4047B72A72DE0DFB2CDA8019E2AD0E3C368DC4E023187C
359986205CD1C53EA3A5C2A14537AC47C94A9E1BFB20B614EC93A2F24B401E9E5963
36001C5811D0CC797E196204DE91D2939992424C47D8E099AAB743C3A467E1ABD791
36018457E75827AC70B67FA0A30882ACB7854DE8D432828A33F1E1A0491D1A4B0EAD
3602E3F5751600D83565D0984AECFE9E66399F45D8C1B2B7113F960D3BA3851BF1E0
36032C91C149EB0DBAB88279B3B881207FE40969B0A4ADD21E0897F8F775CF9B45A2
3604CA439B63BBEB1936836B4F631949E6D3757B822034F385BC97602DE8FE7A64C3
3605BA9763995DEE384636E6C23424A2EEF3F7943A5D053735DBC15FA404A704AC74
36069ACE75E95A0351FBADFF4B1642B0216F3FBF94CA131F7782F62A960078E42D4F
3607B7243A28F99770339E02AD61A0BD4C61183EC999CD24BE87F0D3CEC147157145
3608C82797C98842DD196DE1024B30FAFB9B93EDA03CCD8A890EF83423C501808C03
3609C89FF69B74AC399604E11BBE039EA7E69E4C66D728755CAAD8B2970FBBAAABF9
3610921E23B2864043F1E2CBA4DFDC6C215E944107776289376E5AD409F065DF0187
36112CAD15EBF47DE0481A08BA65CAF4B348F1E6E73523A6E1A34D44D837091A6260
3612F217D91DECE903684CFF88A5EC91E458AD3F43DAFA00DE90E4FF42985BCB01D9
36131620879206A13B36193A06C46AD3F75C7E4339BE86B20200E15B07B02C711B06
36140818AFA86416E07BE7B0DAD8AB233CF17FD78334C7B4E2446CF5C643B9D5AAC6
3615AB86DFAB1B53FD93C8FC6E34524EF28EA6565D7F9A596E6CBE6D2BF192195627
361667BA09C4B7217EFA08B6BA127E50F4C3953BF64E4E7D2F14E43E5B8558F6C908
361731C93686CFD936FA14F41AF740BB420AD26311BC90B64305D53665FC27B4DB73
36183297517331506937109C56228D771AC2F9C8A3AA1F791A1BC6D0A7DA858C1BAC
3619A59F28697EAA0DFB6A6353FCE1D07C4D3BE598B04294AFABDBA9971F8A
23710000000000000000000000000000000000000000000000000000000000000000 36200000000000000000000000000000000000000000000000000000000000000000
23720000000000000000000000000000000000000000000000000000000000000000 36210000000000000000000000000000000000000000000000000000000000000000
23730000000000000000000000000000000000000000000000000000000000000000 36220000000000000000000000000000000000000000000000000000000000000000
@@ -2379,64 +3628,69 @@ d92bb372ce06fe9f812586e8d454e1f5e7c076b6a139e6b328b2f2e1e3589e4e
2379cleartomark 3628cleartomark
2380{restore}if 3629{restore}if
2381%%EndFont 3630%%EndFont
2382TeXDict begin 39158280 55380996 1000 600 600 (refcard-pl.dvi) 3631TeXDict begin 39139632 55387786 1000 600 600 (pl-refcard.dvi)
2383@start /Fa 197[20 58[{}1 66.4176 /PLMI8 rf /Fb 78[29 3632@start /Fa 197[20 58[{encplmi ReEncodeFont}1 66.4176
238414[33 39[29 35 1[47 1[38 24 1[30 2[36 40 58 1[33 22 22 3633/PLMathItalic8-Italic rf /Fb 78[29 14[33 39[29 35 1[47
238536 33 22 33 36 33 1[36 51[26 45[{}22 66.4176 /PLTI8 rf 36341[38 24 1[30 2[36 40 58 1[33 22 22 36 33 22 33 36 33
2386/Fc 242[61 13[{}1 49.8132 /PLSY6 rf /Fd 84[34 21 47[27 36351[36 51[26 45[{encplit ReEncodeFont}22 66.4176 /PLRoman8-Italic
238732 1[43 32 34 24 24 24 1[34 30 34 50 18 32 19 18 34 30 3636rf /Fc 242[61 13[{encplms ReEncodeFont}1 49.8132 /PLMathSymbols6-Italic
238819 27 34 27 34 30 9[61 45 45 43 34 2[41 1[45 54 3[22 3637rf /Fd 85[21 47[27 32 1[43 32 34 24 24 24 1[34 30 34
23891[47 39 41 1[43 42 45 7[30 1[30 1[30 1[30 30 30 30 1[18 363850 18 32 19 18 34 30 19 27 34 27 34 30 9[61 45 45 1[34
239021 18 44[{}51 49.8132 /PLR6 rf /Fe 12[41 55[36 9[32 5[45 36392[41 1[45 54 3[22 1[47 39 41 1[43 42 45 10[30 30 1[30
239127 3[37 3[36 40 38[36 43 1[59 1[45 32 32 34 1[45 41 45 364030 30 30 1[18 21 18 44[{encplrm ReEncodeFont}48 49.8132
239268 23 43 25 23 1[41 25 37 45 36 45 40 16[55 34[27 45[{}32 3641/PLRoman6-Regular rf /Fe 12[41 55[36 9[32 5[45 27 3[37
239366.4176 /PLBX8 rf /Ff 12[35 55[35 1[35 7[35 5[35 35 3[35 36423[36 40 38[36 43 1[59 1[45 32 32 34 1[45 41 45 68 23
23943[35 35 34[35 35 35 35 35 35 35 35 35 35 35 35 35 35 364343 25 23 1[41 25 37 45 36 45 40 16[55 34[27 45[{encplrm ReEncodeFont}32
364466.4176 /PLRoman8-Bold rf /Ff 12[35 55[35 1[35 7[35 5[35
364535 3[35 3[35 35 34[35 35 35 35 35 35 35 35 35 35 35 35
239535 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 364635 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35
239635 35 35 35 35 2[35 2[35 35 35 1[35 2[35 35 4[35 35 35 364735 35 35 35 35 35 35 2[35 2[35 35 35 1[35 2[35 35 4[35
239735 35 35 35 35 35 35 1[35 1[35 4[35 35 35 35 35 35 35 364835 35 35 35 35 35 35 35 35 1[35 1[35 4[35 35 35 35 35
239835 35 35 35 35 35 35 35 1[35 35 35 35 35 33[{}85 66.4176 364935 35 35 35 35 35 35 35 35 35 1[35 35 35 35 35 33[{encpltt ReEncodeFont}
2399/PLTT8 rf /Fg 12[57 55[51 9[45 5[64 39 3[53 4[56 37[57 365085 66.4176 /PLTypewriter8-Regular rf /Fg 12[57 55[51
240051 60 1[83 1[64 45 45 47 1[64 57 64 95 32 60 35 32 64 36519[45 5[64 39 3[53 4[56 37[57 51 60 1[83 1[64 45 45 47
240157 35 53 64 51 64 56 6[70 2[118 1[88 80 64 86 1[78 86 36521[64 57 64 95 32 60 35 32 64 57 35 53 64 51 64 56 6[70
24021[109 69 90 1[43 2[72 75 88 1[81 53[64 12[{}48 99.6264 36532[118 1[88 80 64 86 1[78 86 1[109 69 90 1[43 2[72 75
2403/PLBX10 rf /Fh 35 11[35 55[31 1[31 7[28 5[39 24 3[31 365488 1[81 53[64 12[{encplrm ReEncodeFont}48 99.6264 /PLRoman10-Bold
24043[31 35 37[35 31 37 1[51 1[39 27 28 28 1[39 35 39 59 3655rf /Fh 35 11[35 55[31 1[31 7[28 5[39 24 3[31 3[31 35
240520 37 22 20 39 35 22 31 39 31 39 35 20 8[72 1[53 51 39 365637[35 31 37 1[51 1[39 27 28 28 1[39 35 39 59 20 37 22
24062[48 55 53 1[44 1[36 25 1[55 1[48 54 2[53 6[20 35 4[35 365720 39 35 22 31 39 31 39 35 20 8[72 1[53 51 39 2[48 55
240735 35 35 35 35 20 24 20 2[27 27 20 4[35 20[39 39 12[{}66 365853 1[44 1[36 25 1[55 1[48 54 2[53 6[20 35 4[35 35 35
240866.4176 /PLR8 rf /Fi 84[76 9[67 38[61 6[54 57 1[76 69 365935 1[35 20 24 20 2[27 27 20 4[35 20[39 39 12[{encplrm ReEncodeFont}65
24091[115 38 4[69 1[63 76 61 1[67 11[106 4[94 1[108 6[108 366066.4176 /PLRoman8-Regular rf /Fi 84[76 9[67 38[61 6[54
24101[90 69[{}19 119.552 /PLBX10 rf end 366157 1[76 69 1[115 38 4[69 1[63 76 61 1[67 11[106 4[94
36621[108 6[108 1[90 69[{encplrm ReEncodeFont}19 119.552
3663/PLRoman10-Bold rf end
2411%%EndProlog 3664%%EndProlog
2412%%BeginSetup 3665%%BeginSetup
2413%%Feature: *Resolution 600dpi 3666%%Feature: *Resolution 600dpi
2414TeXDict begin 3667TeXDict begin
2415%%PaperSize: A4 3668%%PaperSize: A4
2416 3669 end
2417%%EndSetup 3670%%EndSetup
2418%%Page: 1 1 3671%%Page: 1 1
24191 0 bop 16 83 a Fi(Przegl\241d)46 b(p)t(olece\253)g(GNU)f(Emacsa)711 3672TeXDict begin 1 0 bop 16 83 a Fi(Przegl\241d)46 b(p)t(olece\253)g(GNU)f
2420191 y Fh(\(dla)24 b(w)n(ersji)e(20.3\))0 398 y Fg(Uruc)m(hamianie)36 3673(Emacsa)738 191 y Fh(\(dla)24 b(w)n(ersji)f(22\))0 398
2421b(Emacsa)0 564 y Fh(Ab)n(y)24 b(uruc)n(homi\242)g(GNU)g(Emacsa)g(20,)f 3674y Fg(Uruc)m(hamianie)36 b(Emacsa)0 564 y Fh(Ab)n(y)24
2422(napisz)h(jego)g(nazw)n(\246:)h Ff(emacs)0 672 y Fh(Ab)n(y)f(w)n 3675b(uruc)n(homi\242)g(GNU)g(Emacsa)g(22,)f(napisz)h(jego)g(nazw)n(\246:)h
2423(czyta\242)h(plik)f(do)g(edycji,)f(patrz)h(rozdzia\252)g 3676Ff(emacs)0 672 y Fh(Ab)n(y)f(w)n(czyta\242)h(plik)f(do)g(edycji,)f
2424Fe(Pliki)f Fh(p)r(oni\273ej.)0 875 y Fg(Opuszczanie)36 3677(patrz)h(rozdzia\252)g Fe(Pliki)f Fh(p)r(oni\273ej.)0
2425b(Emacsa)0 1041 y Fh(t)n(ymczaso)n(w)n(e)26 b(zatrzymanie)f(Emacsa)492 3678875 y Fg(Opuszczanie)36 b(Emacsa)0 1041 y Fh(t)n(ymczaso)n(w)n(e)26
2426b Ff(C-z)0 1120 y Fh(zak)n(o\253czenie)26 b(sesji)d(z)h(Emacsem)629 3679b(zatrzymanie)f(Emacsa)492 b Ff(C-z)0 1120 y Fh(zak)n(o\253czenie)26
2427b Ff(C-x)36 b(C-c)0 1331 y Fg(Pliki)0 1497 y Fe(w)n(czyta)5 3680b(sesji)d(z)h(Emacsem)629 b Ff(C-x)36 b(C-c)0 1331 y
2428b(j)22 b Fh(plik)h(do)h(Emacsa)742 b Ff(C-x)36 b(C-f)0 3681Fg(Pliki)0 1497 y Fe(w)n(czyta)5 b(j)22 b Fh(plik)h(do)h(Emacsa)742
24291576 y Fe(zapisz)23 b Fh(plik)g(na)h(dysk)898 b Ff(C-x)36 3682b Ff(C-x)36 b(C-f)0 1576 y Fe(zapisz)23 b Fh(plik)g(na)h(dysk)898
2430b(C-s)0 1656 y Fh(zapisz)24 b Fe(wszystkie)f Fh(pliki)807 3683b Ff(C-x)36 b(C-s)0 1656 y Fh(zapisz)24 b Fe(wszystkie)f
2431b Ff(C-x)36 b(s)0 1736 y Fe(wsta)n(w)22 b Fh(za)n(w)n(arto\261\242)j 3684Fh(pliki)807 b Ff(C-x)36 b(s)0 1736 y Fe(wsta)n(w)22
2432(innego)f(pliku)g(do)g(bufora)249 b Ff(C-x)36 b(i)0 1816 3685b Fh(za)n(w)n(arto\261\242)j(innego)f(pliku)g(do)g(bufora)249
2433y Fh(zamie\253)24 b(plik)f(w)h(buforze)g(na)g(inn)n(y)578 3686b Ff(C-x)36 b(i)0 1816 y Fh(zamie\253)24 b(plik)f(w)h(buforze)g(na)g
2434b Ff(C-x)36 b(C-v)0 1895 y Fh(zapisz)24 b(bufor)f(do)h(pliku)g(z)g(p)r 3687(inn)n(y)578 b Ff(C-x)36 b(C-v)0 1895 y Fh(zapisz)24
2435(o)r(daniem)g(nazwy)267 b Ff(C-x)36 b(C-w)0 1975 y Fh(k)n(on)n(trola)24 3688b(bufor)f(do)h(pliku)g(z)g(p)r(o)r(daniem)g(nazwy)267
2436b(w)n(ersji)f(pliku)g(`c)n(hec)n(kin/c)n(hec)n(k)n(out')293 3689b Ff(C-x)36 b(C-w)0 1975 y Fh(k)n(on)n(trola)24 b(w)n(ersji)f(pliku)g
2437b Ff(C-x)36 b(C-q)0 2186 y Fg(Uzyskiw)m(anie)h(p)s(omo)s(cy)0 3690(`c)n(hec)n(kin/c)n(hec)n(k)n(out')293 b Ff(C-x)36 b(C-q)0
24382351 y Fh(Napisz)20 b Ff(C-h)h Fh(\(lub)g Ff(F1)p Fh(\))g(i)f(p)r 36912186 y Fg(Uzyskiw)m(anie)h(p)s(omo)s(cy)0 2351 y Fh(Napisz)20
2439(ost\246puj)i(w)n(ed\252ug)f(dalszyc)n(h)g(instruk)n(cji.)e(Je\261li)0 3692b Ff(C-h)h Fh(\(lub)g Ff(F1)p Fh(\))g(i)f(p)r(ost\246puj)i(w)n
3693(ed\252ug)f(dalszyc)n(h)g(instruk)n(cji.)e(Je\261li)0
24402431 y(jeste\261)d(p)r(o)r(cz\241tkuj\241cym)i(u\273ytk)n(o)n(wnikiem,) 36942431 y(jeste\261)d(p)r(o)r(cz\241tkuj\241cym)i(u\273ytk)n(o)n(wnikiem,)
2441f(napisz)f Ff(C-u)37 b(C-h)f(t)f(Polish)0 2511 y Fh(ab)n(y)24 3695f(napisz)f Ff(C-u)37 b(C-h)f(t)f(Polish)0 2511 y Fh(ab)n(y)24
2442b(wyw)n(o\252a\242)h Fe(samouczek)e Fh(Emacsa)h(p)r(o)g(p)r(olsku.)0 3696b(wyw)n(o\252a\242)h Fe(samouczek)e Fh(Emacsa)h(p)r(o)g(p)r(olsku.)0
@@ -2458,9 +3712,9 @@ b(recover-file)0 3743 y Fe(an)n(uluj)23 b Fh(niec)n(hcian\241)i
2458y Fh(w)n(czyta)t(j)25 b(plik)e(wg)h(aktualnej)g(za)n(w)n(arto\261ci)h 3712y Fh(w)n(czyta)t(j)25 b(plik)e(wg)h(aktualnej)g(za)n(w)n(arto\261ci)h
2459(na)71 3904 y(dysku)1029 b Ff(M-x)36 b(revert-buffer)0 3713(na)71 3904 y(dysku)1029 b Ff(M-x)36 b(revert-buffer)0
24603984 y Fh(up)r(orz\241dkuj)25 b(za\261miecon)n(y)f(ekran)602 37143984 y Fh(up)r(orz\241dkuj)25 b(za\261miecon)n(y)f(ekran)602
2461b Ff(C-l)5 4758 y Fd(c)-11 4760 y Fc(\015)20 b Fd(1999)j(F)-5 3715b Ff(C-l)5 4758 y Fd(c)-11 4760 y Fc(\015)20 b Fd(2006)j(F)-5
2462b(ree)21 b(Soft)n(w)n(are)i(F)-5 b(oundation,)20 b(Inc.)g(P)n 3716b(ree)21 b(Soft)n(w)n(are)i(F)-5 b(oundation,)20 b(Inc.)g(P)n
2463(ermissions)h(on)g(bac)n(k.)g(V)-5 b(ersion)21 b(1.1)2196 3717(ermissions)h(on)g(bac)n(k.)g(V)-5 b(ersion)21 b(1.2)2196
246483 y Fg(Szuk)-6 b(anie)36 b(przyrosto)m(w)m(e)2196 249 371883 y Fg(Szuk)-6 b(anie)36 b(przyrosto)m(w)m(e)2196 249
2465y Fh(szuk)l(a)t(j)24 b(wprz\363)r(d/wstecz)i(\()p Ff(C-f)e 3719y Fh(szuk)l(a)t(j)24 b(wprz\363)r(d/wstecz)i(\()p Ff(C-f)e
2466Fh(ab)n(y)h(zak)n(o\253czy\242\))188 b Ff(C-s/C-r)2196 3720Fh(ab)n(y)h(zak)n(o\253czy\242\))188 b Ff(C-s/C-r)2196
@@ -2474,11 +3728,11 @@ b Ff(M-n)2196 838 y Fh(zak)n(o\253cz)26 b(szuk)l(anie)e(przyrosto)n(w)n
2474(e)602 b Ff(RET)2196 918 y Fh(an)n(uluj)24 b(rezultat)g(ostatniej)h(p)r 3728(e)602 b Ff(RET)2196 918 y Fh(an)n(uluj)24 b(rezultat)g(ostatniej)h(p)r
2475(opra)n(wki)460 b Ff(DEL)2196 998 y Fh(przerwij)23 b(szuk)l(anie)982 3729(opra)n(wki)460 b Ff(DEL)2196 998 y Fh(przerwij)23 b(szuk)l(anie)982
2476b Ff(C-g)2196 1106 y Fh(P)n(ono)n(wne)25 b Ff(C-s)p Fh(/)p 3730b Ff(C-g)2196 1106 y Fh(P)n(ono)n(wne)25 b Ff(C-s)p Fh(/)p
2477Ff(C-r)p Fh(,)g(p)r(o)n(wtarza)g(szuk)l(anie)g(wprz\363)r(d/wstecz.) 3731Ff(C-r)g Fh(p)r(o)n(wtarza)g(szuk)l(anie)g(wprz\363)r(d/wstecz.)2196
24782196 1313 y Fg(Przemieszczanie)37 b(kursora)2196 1478 37321313 y Fg(Przemieszczanie)37 b(kursora)2196 1478 y Fe(przemie\261\242)
2479y Fe(przemie\261\242)27 b(kursor)751 b(wstecz)71 b(wprz\363)r(d)2196 373327 b(kursor)751 b(wstecz)71 b(wprz\363)r(d)2196 1583
24801583 y Fh(o)24 b(znak)1154 b Ff(C-b)198 b(C-f)2196 1663 3734y Fh(o)24 b(znak)1154 b Ff(C-b)198 b(C-f)2196 1663 y
2481y Fh(o)24 b(s\252o)n(w)n(o)1127 b Ff(M-b)198 b(M-f)2196 3735Fh(o)24 b(s\252o)n(w)n(o)1127 b Ff(M-b)198 b(M-f)2196
24821742 y Fh(o)24 b(lini\246)f(wy\273ej/ni\273ej)793 b Ff(C-p)198 37361742 y Fh(o)24 b(lini\246)f(wy\273ej/ni\273ej)793 b Ff(C-p)198
2483b(C-n)2196 1822 y Fh(na)24 b(p)r(o)r(cz\241tek/k)n(oniec)j(linii)615 3737b(C-n)2196 1822 y Fh(na)24 b(p)r(o)r(cz\241tek/k)n(oniec)j(linii)615
2484b Ff(C-a)198 b(C-e)2196 1902 y Fh(o)24 b(zdanie)1101 3738b Ff(C-a)198 b(C-e)2196 1902 y Fh(o)24 b(zdanie)1101
@@ -2510,19 +3764,20 @@ Ff(M-w)2196 3795 y Fh(k)l(asuj)24 b(wszystk)n(o)h(a\273)f(do)g
25103903 y Fh(wsta)n(w)24 b(ostatnio)h(sk)l(aso)n(w)n(an)n(y)g(obiekt)497 37643903 y Fh(wsta)n(w)24 b(ostatnio)h(sk)l(aso)n(w)n(an)n(y)g(obiekt)497
2511b Ff(C-y)2196 3985 y Fh(zamie\253)24 b(wsta)n(wion)n(y)h(obiekt)f(z)g 3765b Ff(C-y)2196 3985 y Fh(zamie\253)24 b(wsta)n(wion)n(y)h(obiekt)f(z)g
2512(uprzednio)2267 4064 y(sk)l(aso)n(w)n(an)n(ym)1066 b 3766(uprzednio)2267 4064 y(sk)l(aso)n(w)n(an)n(ym)1066 b
2513Ff(M-y)2040 6050 y Fh(1)p eop 3767Ff(M-y)2040 6050 y Fh(1)p eop end
2514%%Page: 2 2 3768%%Page: 2 2
25152 1 bop 0 83 a Fg(Zaznaczanie)0 249 y Fh(wsta)n(w)24 3769TeXDict begin 2 1 bop 0 83 a Fg(Zaznaczanie)0 249 y Fh(wsta)n(w)24
2516b(znacznik)h(w)f(p)r(ozycji)g(kursora)463 b Ff(C-@)36 3770b(znacznik)h(w)f(p)r(ozycji)g(kursora)463 b Ff(C-@)36
2517b Fh(or)f Ff(C-SPC)0 328 y Fh(zamie\253)24 b(p)r(ozycje)h(kursora)e(i)h 3771b Fh(or)f Ff(C-SPC)0 328 y Fh(zamie\253)24 b(p)r(ozycje)h(kursora)e(i)h
2518(znacznik)l(a)428 b Ff(C-x)36 b(C-x)0 437 y Fh(zaznacz)26 3772(znacznik)l(a)428 b Ff(C-x)36 b(C-x)0 437 y Fh(zaznacz)26
2519b(s\252o)n(w)n(o)1083 b Ff(M-@)0 516 y Fh(zaznacz)26 3773b(s\252o)n(w)n(o)d(p)r(o)h Fb(ar)l(g)30 b Fh(s\252\363)n(w)699
2520b(ak)l(apit)1063 b Ff(M-h)0 596 y Fh(zaznacz)26 b(stron\246)1064 3774b Ff(M-@)0 516 y Fh(zaznacz)26 b(ak)l(apit)1063 b Ff(M-h)0
2521b Ff(C-x)36 b(C-p)0 676 y Fh(zaznacz)26 b(s-wyra\273enie)897 3775596 y Fh(zaznacz)26 b(stron\246)1064 b Ff(C-x)36 b(C-p)0
2522b Ff(C-M-@)0 755 y Fh(zaznacz)26 b(funk)n(cj\246)1033 3776676 y Fh(zaznacz)26 b(s-wyra\273enie)897 b Ff(C-M-@)0
2523b Ff(C-M-h)0 835 y Fh(zaznacz)26 b(ca\252y)e(bufor)938 3777755 y Fh(zaznacz)26 b(funk)n(cj\246)1033 b Ff(C-M-h)0
2524b Ff(C-x)36 b(h)0 1046 y Fg(Zamiana)h(z)h(zap)m(ytaniem)0 3778835 y Fh(zaznacz)26 b(ca\252y)e(bufor)938 b Ff(C-x)36
25251211 y Fh(zamiana)24 b(tekstu)h(w)f(trybie)g(in)n(terak)n(cyjn)n(ym)302 3779b(h)0 1046 y Fg(Zamiana)h(z)h(zap)m(ytaniem)0 1211 y
3780Fh(zamiana)24 b(tekstu)h(w)f(trybie)g(in)n(terak)n(cyjn)n(ym)302
2526b Ff(M-\045)0 1291 y Fh(z)24 b(u\273yciem)g(wyra\273e\253)h(regularn)n 3781b Ff(M-\045)0 1291 y Fh(z)24 b(u\273yciem)g(wyra\273e\253)h(regularn)n
2527(yc)n(h)549 b Ff(C-M-\045)0 1399 y Fh(Odp)r(o)n(wiedzi)24 3782(yc)n(h)549 b Ff(C-M-\045)0 1399 y Fh(Odp)r(o)n(wiedzi)24
2528b(w)g(in)n(terak)n(cyjn)n(ym)g(trybie)g(zamian)n(y:)0 3783b(w)g(in)n(terak)n(cyjn)n(ym)g(trybie)g(zamian)n(y:)0
@@ -2609,10 +3864,10 @@ b Ff(C-x)36 b(ESC)g(ESC)24 b Fh(ab)n(y)f(p)r(opra)n(wia\242)h(i)e(wyk)n
2609(ona\242)i(p)r(olecenie,)g(kt\363re)2196 3622 y(ostatnio)h(u\273yw)n 3864(ona\242)i(p)r(olecenie,)g(kt\363re)2196 3622 y(ostatnio)h(u\273yw)n
2610(a\252o)f(minibufora.)e(Napisz)h Ff(F10)i Fh(ab)n(y)f(uakt)n(ywni\242)g 3865(a\252o)f(minibufora.)e(Napisz)h Ff(F10)i Fh(ab)n(y)f(uakt)n(ywni\242)g
2611(men)n(u)2196 3701 y(w)f(minibuforze.)2040 6050 y(2)p 3866(men)n(u)2196 3701 y(w)f(minibuforze.)2040 6050 y(2)p
2612eop 3867eop end
2613%%Page: 3 3 3868%%Page: 3 3
26143 2 bop 16 83 a Fi(Przegl\241d)46 b(p)t(olece\253)g(GNU)f(Emacsa)0 3869TeXDict begin 3 2 bop 16 83 a Fi(Przegl\241d)46 b(p)t(olece\253)g(GNU)f
2615325 y Fg(Bufory)0 491 y Fh(wybierz)24 b(inn)n(y)g(bufor)930 3870(Emacsa)0 325 y Fg(Bufory)0 491 y Fh(wybierz)24 b(inn)n(y)g(bufor)930
2616b Ff(C-x)36 b(b)0 570 y Fh(p)r(ok)l(a\273)25 b(spis)e(wszystkic)n(h)i 3871b Ff(C-x)36 b(b)0 570 y Fh(p)r(ok)l(a\273)25 b(spis)e(wszystkic)n(h)i
2617(bufor\363)n(w)574 b Ff(C-x)36 b(C-b)0 650 y Fh(sk)l(asuj)24 3872(bufor\363)n(w)574 b Ff(C-x)36 b(C-b)0 650 y Fh(sk)l(asuj)24
2618b(bufor)1139 b Ff(C-x)36 b(k)0 861 y Fg(Przesta)m(wianie)0 3873b(bufor)1139 b Ff(C-x)36 b(k)0 861 y Fg(Przesta)m(wianie)0
@@ -2723,16 +3978,16 @@ b Ff(C-u)36 b(C-x)g(\()2196 4588 y Fh(nazwij)24 b(ostatnie)g(makrop)r
2723(olecenie)233 b Ff(M-x)36 b(name-last-kbd-macro)2196 3978(olecenie)233 b Ff(M-x)36 b(name-last-kbd-macro)2196
27244670 y Fh(wpisz)23 b(do)i(bufora)e(nazw)n(ane)2267 4749 39794670 y Fh(wpisz)23 b(do)i(bufora)e(nazw)n(ane)2267 4749
2725y(makro)g(Lisp)r(o)n(w)n(e)713 b Ff(M-x)36 b(insert-kbd-macro)2040 3980y(makro)g(Lisp)r(o)n(w)n(e)713 b Ff(M-x)36 b(insert-kbd-macro)2040
27266050 y Fh(3)p eop 39816050 y Fh(3)p eop end
2727%%Page: 4 4 3982%%Page: 4 4
27284 3 bop 0 83 a Fg(Info)0 249 y Fh(w)n(ejd\271)24 b(w)g(tryb)f(czytania) 3983TeXDict begin 4 3 bop 0 83 a Fg(Info)0 249 y Fh(w)n(ejd\271)24
2729j(dokumen)n(tacji)f(Info)247 b Ff(C-h)36 b(i)0 328 y 3984b(w)g(tryb)f(czytania)j(dokumen)n(tacji)f(Info)247 b
2730Fh(wyszuk)l(a)t(j)24 b(p)r(o)r(dan\241)h(funk)n(cj\246)f(lub)g 3985Ff(C-h)36 b(i)0 328 y Fh(wyszuk)l(a)t(j)24 b(p)r(o)r(dan\241)h(funk)n
2731(zmienn\241)g(w)g(Info)117 b Ff(C-h)36 b(C-i)0 437 y 3986(cj\246)f(lub)g(zmienn\241)g(w)g(Info)117 b Ff(C-h)36
2732Fh(P)n(oruszanie)24 b(si\246)g(w)f(obr\246bie)h(w)n(\246z\252a)g(Info:) 3987b(S)0 437 y Fh(P)n(oruszanie)24 b(si\246)g(w)f(obr\246bie)h(w)n
273371 545 y(przegl\241da)t(j)g(do)g(przo)r(du)786 b Ff(SPC)71 3988(\246z\252a)g(Info:)71 545 y(przegl\241da)t(j)g(do)g(przo)r(du)786
2734625 y Fh(przegl\241da)t(j)24 b(do)g(t)n(y\252u)874 b 3989b Ff(SPC)71 625 y Fh(przegl\241da)t(j)24 b(do)g(t)n(y\252u)874
2735Ff(DEL)71 704 y Fh(na)24 b(p)r(o)r(cz\241tek)i(w)n(\246z\252a)876 3990b Ff(DEL)71 704 y Fh(na)24 b(p)r(o)r(cz\241tek)i(w)n(\246z\252a)876
2736b Ff(.)35 b Fh(\(kropk)l(a\))0 813 y(P)n(oruszanie)24 3991b Ff(.)35 b Fh(\(kropk)l(a\))0 813 y(P)n(oruszanie)24
2737b(si\246)g(p)r(omi\246dzy)g(w)n(\246z\252ami:)71 921 3992b(si\246)g(p)r(omi\246dzy)g(w)n(\246z\252ami:)71 921
2738y Fe(nast\246pn)n(y)f Fh(w)n(\246ze\252)934 b Ff(n)71 3993y Fe(nast\246pn)n(y)f Fh(w)n(\246ze\252)934 b Ff(n)71
@@ -2749,36 +4004,37 @@ b Ff(l)71 1560 y Fh(p)r(o)n(wr\363)r(\242)24 b(do)g(sk)n(oro)n(widza)
2749762 b Ff(d)71 1640 y Fh(wybierz)23 b(w)n(\246ze\252)i(p)r(o)r(da)t 4004762 b Ff(d)71 1640 y Fh(wybierz)23 b(w)n(\246ze\252)i(p)r(o)r(da)t
2750(j\241c)f(jego)g(nazw)n(\246)389 b Ff(g)0 1748 y Fh(P)n(ozosta\252e)25 4005(j\241c)f(jego)g(nazw)n(\246)389 b Ff(g)0 1748 y Fh(P)n(ozosta\252e)25
2751b(p)r(olecenia:)71 1856 y(wyw)n(o\252a)t(j)e Fe(samouczek)g 4006b(p)r(olecenia:)71 1856 y(wyw)n(o\252a)t(j)e Fe(samouczek)g
2752Fh(Info)638 b Ff(h)71 1936 y Fe(zak)n(o\253cz)23 b Fh(Info)1021 4007Fh(Info)638 b Ff(h)71 1936 y Fh(wyszuk)l(a)t(j)24 b(zagadnienie)h(w)f
2753b Ff(q)71 2017 y Fh(wyszukuj)24 b(w)f(w)n(\246z\252ac)n(h)i(tekst)g 4008(indeksac)n(h)384 b Ff(i)71 2017 y Fh(wyszukuj)24 b(w)f(w)n
2754(zgo)r(dn)n(y)71 2097 y(z)e(p)r(o)r(dan)n(ym)i(wyra\273eniem)f 4009(\246z\252ac)n(h)i(tekst)g(zgo)r(dn)n(y)71 2097 y(z)e(p)r(o)r(dan)n(ym)
2755(regularn)n(ym)341 b Ff(M-s)0 2308 y Fg(Dired)37 b({)i(edytor)f(k)-6 4010i(wyra\273eniem)f(regularn)n(ym)341 b Ff(s)71 2177 y
2756b(atalog\363)m(w)0 2474 y Fh(wyw)n(o\252anie)24 b(edytora)h(k)l 4011Fe(zak)n(o\253cz)23 b Fh(Info)1021 b Ff(q)0 2388 y Fg(Dired)37
2757(atalog\363)n(w)605 b Ff(C-x)36 b(d)0 2553 y Fh(usta)n(w)24 4012b({)i(edytor)f(k)-6 b(atalog\363)m(w)0 2553 y Fh(wyw)n(o\252anie)24
2758b(\015ag\246)h(`D')e(\(do)h(usuni\246cia\))h(na)f(pliku)315 4013b(edytora)h(k)l(atalog\363)n(w)605 b Ff(C-x)36 b(d)0
2759b Ff(d)0 2633 y Fh(usta)n(w)24 b(\015ag\246)h(`D')e(na)h(plik)l(ac)n(h) 40142633 y Fh(usta)n(w)24 b(\015ag\246)h(`D')e(\(do)h(usuni\246cia\))h(na)f
2760g(zapaso)n(wyc)n(h)333 b Ff(~)0 2713 y Fh(zdejmij)23 4015(pliku)315 b Ff(d)0 2713 y Fh(usta)n(w)24 b(\015ag\246)h(`D')e(na)h
2761b(\015ag\246)i(`D')d(z)i(pliku)773 b Ff(u)0 2792 y Fh(usu\253)24 4016(plik)l(ac)n(h)g(zapaso)n(wyc)n(h)333 b Ff(~)0 2792 y
2762b(pliki)f(oznaczone)j(\015ag\241)f(`D')587 b Ff(x)0 2872 4017Fh(zdejmij)23 b(\015ag\246)i(`D')d(z)i(pliku)773 b Ff(u)0
2763y Fh(uaktualnij)24 b(za)n(w)n(arto\261\242)h(bufora)654 40182872 y Fh(usu\253)24 b(pliki)f(oznaczone)j(\015ag\241)f(`D')587
2764b Ff(g)0 2953 y Fh(w)n(czyta)t(j)25 b(plik)e(wsk)l(azyw)n(an)n(y)i 4019b Ff(x)0 2952 y Fh(uaktualnij)24 b(za)n(w)n(arto\261\242)h(bufora)654
2765(przez)g(kursor)e(do)71 3033 y(bufora)1242 b Ff(f)0 3115 4020b Ff(g)0 3033 y Fh(w)n(czyta)t(j)25 b(plik)e(wsk)l(azyw)n(an)n(y)i
4021(przez)g(kursor)e(do)71 3113 y(bufora)1242 b Ff(f)0 3194
2766y Fh(prze\252\241cz)25 b(mi\246dzy)f(p)r(orz\241dkiem)g(alfab)r(et)n 4022y Fh(prze\252\241cz)25 b(mi\246dzy)f(p)r(orz\241dkiem)g(alfab)r(et)n
2767(yczn)n(ym)71 3194 y(a)f(p)r(orz\241dkiem)i(w)n(ed\252ug)f(dat)n(y)h(i) 4023(yczn)n(ym)71 3274 y(a)f(p)r(orz\241dkiem)i(w)n(ed\252ug)f(dat)n(y)h(i)
2768e(czasu)71 3274 y(p)r(o)n(wstania)h(pliku)952 b Ff(s)0 4024e(czasu)71 3354 y(p)r(o)n(wstania)h(pliku)952 b Ff(s)0
27693384 y Fh(wybierz)24 b(z)g(bie\273\241cego)h(k)l(atalogu)h(i)d(jego)71 40253464 y Fh(wybierz)24 b(z)g(bie\273\241cego)h(k)l(atalogu)h(i)d(jego)71
27703464 y(p)r(o)r(dk)l(atalog\363)n(w)j(wszystkie)e(pliki,)e(kt\363re)71 40263543 y(p)r(o)r(dk)l(atalog\363)n(w)j(wszystkie)e(pliki,)e(kt\363re)71
27713543 y(za)n(wiera)t(j\241)h(tekst)i(zgo)r(dn)n(y)g(z)f(p)r(o)r(dan)n 40273623 y(za)n(wiera)t(j\241)h(tekst)i(zgo)r(dn)n(y)g(z)f(p)r(o)r(dan)n
2772(ym)71 3623 y(wyra\273eniem)g(regularn)n(ym)459 b Ff(M-x)36 4028(ym)71 3703 y(wyra\273eniem)g(regularn)n(ym)459 b Ff(M-x)36
2773b(find-grep-dired)0 3834 y Fg(P)m(olecenia)29 b(dot)m(ycz\241ce)h 4029b(find-grep-dired)0 3914 y Fg(P)m(olecenia)29 b(dot)m(ycz\241ce)h
2774(j\246zyk)-6 b(a)31 b(Emacs)g(Lisp)0 3999 y Fh(oblicz)24 4030(j\246zyk)-6 b(a)31 b(Emacs)g(Lisp)0 4079 y Fh(oblicz)24
2775b Fe(s-wyra\273enie)f Fh(przed)h(kursorem)398 b Ff(C-x)36 4031b Fe(s-wyra\273enie)f Fh(przed)h(kursorem)398 b Ff(C-x)36
2776b(C-e)0 4079 y Fh(oblicz)24 b(akt)n(ywn\241)h Fe(defun)830 4032b(C-e)0 4159 y Fh(oblicz)24 b(akt)n(ywn\241)h Fe(defun)830
2777b Ff(C-M-x)0 4159 y Fh(oblicz)24 b(s-wyra\273enia)g(w)f 4033b Ff(C-M-x)0 4239 y Fh(oblicz)24 b(s-wyra\273enia)g(w)f
2778Fe(obszarze)322 b Ff(M-x)36 b(eval-region)0 4240 y Fh(w)n(czyta)t(j)25 4034Fe(obszarze)322 b Ff(M-x)36 b(eval-region)0 4320 y Fh(w)n(czyta)t(j)25
2779b Fe(s-wyra\273enie)e Fh(i)g(oblicz)h(je)71 4320 y(w)f(minibuforze)1003 4035b Fe(s-wyra\273enie)e Fh(i)g(oblicz)h(je)71 4400 y(w)f(minibuforze)1003
2780b Ff(M-:)0 4401 y Fh(w)n(czyta)t(j)25 b(bibliotek)n(\246)f(z)g(k)l 4036b Ff(M-:)0 4481 y Fh(w)n(czyta)t(j)25 b(bibliotek)n(\246)f(z)g(k)l
2781(atalogu)71 4481 y(systemo)n(w)n(ego)816 b Ff(M-x)36 4037(atalogu)71 4561 y(systemo)n(w)n(ego)816 b Ff(M-x)36
2782b(load-library)2196 83 y Fg(Proste)i(mo)s(dy\014k)-6 4038b(load-library)2196 83 y Fg(Proste)i(mo)s(dy\014k)-6
2783b(acje)2196 249 y Fh(mo)r(dy\014k)n(o)n(w)n(anie)25 b(w)n(arto\261ci)f 4039b(acje)2196 249 y Fh(mo)r(dy\014k)n(o)n(w)n(anie)25 b(w)n(arto\261ci)f
2784(zmienn)n(yc)n(h)2267 328 y(i)f(czcionek)911 b Ff(M-x)36 4040(zmienn)n(yc)n(h)2267 328 y(i)f(czcionek)911 b Ff(M-x)36
@@ -2805,21 +4061,22 @@ Fb(wzorze)l(c)h Fh(opisuje,)27 b(jak)g(b)r(\246d\241)i(czytane)h(ar-)
28052196 2381 y(gumen)n(t)n(y)35 b(w)e(trybie)h(in)n(terak)n(cyjn)n(ym.)g 40612196 2381 y(gumen)n(t)n(y)35 b(w)e(trybie)h(in)n(terak)n(cyjn)n(ym.)g
2806(Szczeg\363\252o)n(wy)h(opis)f(uzysk)l(asz)2196 2461 4062(Szczeg\363\252o)n(wy)h(opis)f(uzysk)l(asz)2196 2461
2807y(przez)24 b(wyw)n(o\252anie)h Ff(C-h)36 b(f)f(interactive)p 4063y(przez)24 b(wyw)n(o\252anie)h Ff(C-h)36 b(f)f(interactive)p
2808Fh(.)2489 3646 y Fd(Cop)n(yrigh)n(t)2792 3644 y(c)2775 4064Fh(.)2489 3610 y Fd(Cop)n(yrigh)n(t)2792 3608 y(c)2775
28093646 y Fc(\015)21 b Fd(1999)i(F)-5 b(ree)21 b(Soft)n(w)n(are)i(F)-5 40653610 y Fc(\015)21 b Fd(2006)i(F)-5 b(ree)21 b(Soft)n(w)n(are)i(F)-5
2810b(oundation,)20 b(Inc.)2522 3710 y(W)-5 b(ersja)22 b(1.1)f(dla)f(GNU)g 4066b(oundation,)20 b(Inc.)2533 3674 y(W)-5 b(ersja)21 b(1.2)h(dla)e(GNU)g
2811(Emacsa)i(20.3,)f(st)n(ycze\253)h(1999)2845 3774 y(pro)s(jekt)g 4067(Emacsa)i(22,)f(czerwiec)h(2006)2845 3738 y(pro)s(jekt)g(Stephen)e
2812(Stephen)e(Gildea)2813 3838 y(t\252umaczenie)g(W\252o)r(dek)h(Bzyl)2196 4068(Gildea)2813 3802 y(t\252umaczenie)g(W\252o)r(dek)h(Bzyl)2196
28133930 y(P)n(ermission)i(is)h(gran)n(ted)g(to)g(mak)n(e)g(and)f 40693894 y(P)n(ermission)i(is)h(gran)n(ted)g(to)g(mak)n(e)g(and)f
2814(distribute)f(copies)i(of)g(this)e(card)i(pro)n(vi-)2196 4070(distribute)f(copies)i(of)g(this)e(card)i(pro)n(vi-)2196
28153994 y(ded)c(the)h(cop)n(yrigh)n(t)g(notice)g(and)f(this)g(p)r 40713958 y(ded)c(the)h(cop)n(yrigh)n(t)g(notice)g(and)f(this)g(p)r
2816(ermission)g(notice)g(are)i(preserv)n(ed)f(on)g(all)2196 4072(ermission)g(notice)g(are)i(preserv)n(ed)f(on)g(all)2196
28174058 y(copies.)2196 4150 y(F)-5 b(or)21 b(copies)g(of)g(the)g(GNU)e 40734022 y(copies.)2196 4114 y(F)-5 b(or)27 b(copies)f(of)h(the)f(GNU)f
2818(Emacs)i(man)n(ual,)f(write)h(to)g(the)f(F)-5 b(ree)22 4074(Emacs)i(man)n(ual,)f(write)g(to)g(the)g(F)-5 b(ree)27
2819b(Soft)n(w)n(are)g(F)-5 b(oun-)2196 4214 y(dation,)20 4075b(Soft)n(w)n(are)h(F)-5 b(o-)2196 4178 y(undation,)20
2820b(Inc.,)g(59)h(T)-5 b(emple)21 b(Place,)g(Suite)e(330,)j(Boston,)f(MA)g 4076b(Inc.,)h(51)i(F)-5 b(ranklin)20 b(Street,)i(Fifth)f(Flo)r(or,)g
2821(02111-1307)k(USA)2040 6050 y Fh(4)p eop 4077(Boston,)i(MA)e(02110-1301)2196 4241 y(USA)2040 6050
4078y Fh(4)p eop end
2822%%Trailer 4079%%Trailer
2823end 4080
2824userdict /end-hook known{end-hook}if 4081userdict /end-hook known{end-hook}if
2825%%EOF 4082%%EOF
diff --git a/etc/pl-refcard.tex b/etc/pl-refcard.tex
index c0d242c01a3..62dca4458c5 100644
--- a/etc/pl-refcard.tex
+++ b/etc/pl-refcard.tex
@@ -73,7 +73,7 @@
73 73
74% If there were room, it would be nice to see a section on Dired. 74% If there were room, it would be nice to see a section on Dired.
75 75
76\def\versionnumber{1.1} 76\def\versionnumber{1.2}
77\def\year{2006} 77\def\year{2006}
78 78
79\def\shortcopyrightnotice{\vskip 1ex plus 2 fill 79\def\shortcopyrightnotice{\vskip 1ex plus 2 fill
@@ -83,8 +83,8 @@
83\def\copyrightnotice{ 83\def\copyrightnotice{
84\vskip 1ex plus 2 fill\begingroup\small 84\vskip 1ex plus 2 fill\begingroup\small
85\centerline{Copyright \copyright\ \year\ Free Software Foundation, Inc.} 85\centerline{Copyright \copyright\ \year\ Free Software Foundation, Inc.}
86\centerline{Wersja \versionnumber{} dla GNU Emacsa 20.3, 86\centerline{Wersja \versionnumber{} dla GNU Emacsa 22,
87 stycze/n 1999} 87 czerwiec 2006}
88\centerline{projekt Stephen Gildea} 88\centerline{projekt Stephen Gildea}
89\centerline{t/lumaczenie W/lodek Bzyl} 89\centerline{t/lumaczenie W/lodek Bzyl}
90 90
@@ -311,12 +311,12 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
311%\title{GNU Emacs Reference Card} 311%\title{GNU Emacs Reference Card}
312\title{Przegl/ad polece/n GNU Emacsa} 312\title{Przegl/ad polece/n GNU Emacsa}
313 313
314\centerline{(dla wersji 20.3)} 314\centerline{(dla wersji 22)}
315 315
316\section{Uruchamianie Emacsa} 316\section{Uruchamianie Emacsa}
317 317
318%To enter GNU Emacs 20, just type its name: \kbd{emacs} 318%To enter GNU Emacs 20, just type its name: \kbd{emacs}
319Aby uruchomi/c GNU Emacsa 20, napisz jego nazw/e: \kbd{emacs} 319Aby uruchomi/c GNU Emacsa 22, napisz jego nazw/e: \kbd{emacs}
320 320
321%To read in a file to edit, see Files, below. 321%To read in a file to edit, see Files, below.
322Aby wczyta/c plik do edycji, patrz rozdzia/l {\bf Pliki} poni/zej. 322Aby wczyta/c plik do edycji, patrz rozdzia/l {\bf Pliki} poni/zej.
@@ -409,7 +409,7 @@ po polsku.
409 409
410%Use \kbd{C-s} or \kbd{C-r} again to repeat the search in either direction. 410%Use \kbd{C-s} or \kbd{C-r} again to repeat the search in either direction.
411%If Emacs is still searching, \kbd{C-g} cancels only the part not done. 411%If Emacs is still searching, \kbd{C-g} cancels only the part not done.
412Ponowne \kbd{C-s}//\kbd{C-r}, powtarza szukanie wprz/od//wstecz. 412Ponowne \kbd{C-s}//\kbd{C-r} powtarza szukanie wprz/od//wstecz.
413%If Emacs is still searching, \kbd{C-g} cancels only the part not done. 413%If Emacs is still searching, \kbd{C-g} cancels only the part not done.
414% Patrz wyja/snienie powy/zej. 414% Patrz wyja/snienie powy/zej.
415 415
@@ -496,7 +496,7 @@ Ponowne \kbd{C-s}//\kbd{C-r}, powtarza szukanie wprz/od//wstecz.
496%\key{mark {\bf sexp}}{C-M-@} 496%\key{mark {\bf sexp}}{C-M-@}
497%\key{mark {\bf function}}{C-M-h} 497%\key{mark {\bf function}}{C-M-h}
498%\key{mark entire {\bf buffer}}{C-x h} 498%\key{mark entire {\bf buffer}}{C-x h}
499\key{zaznacz s/lowo}{M-@} 499\key{zaznacz s/lowo po {\it arg\/} s/l/ow}{M-@}
500\key{zaznacz akapit}{M-h} 500\key{zaznacz akapit}{M-h}
501\key{zaznacz stron/e}{C-x C-p} 501\key{zaznacz stron/e}{C-x C-p}
502\key{zaznacz s-wyra/zenie}{C-M-@} 502\key{zaznacz s-wyra/zenie}{C-M-@}
@@ -854,9 +854,9 @@ i~odpowiedni znak z~{\tt acelnosxz//}.
854\section{Info} 854\section{Info}
855 855
856%\key{enter the Info documentation reader}{C-h i} 856%\key{enter the Info documentation reader}{C-h i}
857%\key{find specified function or variable in Info}{C-h C-i} 857%\key{find specified function or variable in Info}{C-h S}
858\key{wejd/x w tryb czytania dokumentacji Info}{C-h i} 858\key{wejd/x w tryb czytania dokumentacji Info}{C-h i}
859\key{wyszukaj podan/a funkcj/e lub zmienn/a w Info}{C-h C-i} 859\key{wyszukaj podan/a funkcj/e lub zmienn/a w Info}{C-h S}
860\beginindentedkeys 860\beginindentedkeys
861 861
862%Moving within a node: 862%Moving within a node:
diff --git a/etc/yow.lines b/etc/yow.lines
index 699208ecb69..98724e1a634 100644
--- a/etc/yow.lines
+++ b/etc/yow.lines
Binary files differ
diff --git a/lib-src/ChangeLog b/lib-src/ChangeLog
index 557d8a2d492..040f155221f 100644
--- a/lib-src/ChangeLog
+++ b/lib-src/ChangeLog
@@ -1,3 +1,12 @@
12006-06-09 Eli Zaretskii <eliz@gnu.org>
2
3 * yow.c: Remove file.
4
5 * makefile.w32-in ($(BLD)/yow.$(O)): Remove target.
6
7 * Makefile.in (UTILITIES): Remove yow${EXEEXT}.
8 yow${EXEEXT}: Remove target.
9
12006-06-04 Masatake YAMATO <jet@gyve.org> 102006-06-04 Masatake YAMATO <jet@gyve.org>
2 11
3 * ebrowse.c (main): Exit with EXIT_FAILURE if BROWSE file 12 * ebrowse.c (main): Exit with EXIT_FAILURE if BROWSE file
diff --git a/lib-src/Makefile.in b/lib-src/Makefile.in
index 85a7c13c95a..4eb1658ac0a 100644
--- a/lib-src/Makefile.in
+++ b/lib-src/Makefile.in
@@ -107,7 +107,7 @@ INSTALLABLE_SCRIPTS = rcs-checkin grep-changelog
107# Things that Emacs runs internally, or during the build process, 107# Things that Emacs runs internally, or during the build process,
108# which should not be installed in bindir. 108# which should not be installed in bindir.
109UTILITIES= profile${EXEEXT} digest-doc${EXEEXT} sorted-doc${EXEEXT} movemail${EXEEXT} cvtmail${EXEEXT} fakemail${EXEEXT} \ 109UTILITIES= profile${EXEEXT} digest-doc${EXEEXT} sorted-doc${EXEEXT} movemail${EXEEXT} cvtmail${EXEEXT} fakemail${EXEEXT} \
110 yow${EXEEXT} hexl${EXEEXT} update-game-score${EXEEXT} 110 hexl${EXEEXT} update-game-score${EXEEXT}
111 111
112DONT_INSTALL= test-distrib${EXEEXT} make-docfile${EXEEXT} 112DONT_INSTALL= test-distrib${EXEEXT} make-docfile${EXEEXT}
113 113
@@ -449,9 +449,6 @@ cvtmail${EXEEXT}: ${srcdir}/cvtmail.c
449fakemail${EXEEXT}: ${srcdir}/fakemail.c ../src/config.h 449fakemail${EXEEXT}: ${srcdir}/fakemail.c ../src/config.h
450 $(CC) ${ALL_CFLAGS} ${srcdir}/fakemail.c $(LOADLIBES) -o fakemail 450 $(CC) ${ALL_CFLAGS} ${srcdir}/fakemail.c $(LOADLIBES) -o fakemail
451 451
452yow${EXEEXT}: ${srcdir}/yow.c ../src/epaths.h
453 $(CC) ${ALL_CFLAGS} ${srcdir}/yow.c $(LOADLIBES) -o yow
454
455emacsclient${EXEEXT}: ${srcdir}/emacsclient.c ../src/config.h $(GETOPTDEPS) 452emacsclient${EXEEXT}: ${srcdir}/emacsclient.c ../src/config.h $(GETOPTDEPS)
456 $(CC) ${ALL_CFLAGS} ${srcdir}/emacsclient.c $(GETOPTOBJS) \ 453 $(CC) ${ALL_CFLAGS} ${srcdir}/emacsclient.c $(GETOPTOBJS) \
457 -DVERSION="\"${version}\"" \ 454 -DVERSION="\"${version}\"" \
diff --git a/lib-src/makefile.w32-in b/lib-src/makefile.w32-in
index f941e862514..564487a5858 100644
--- a/lib-src/makefile.w32-in
+++ b/lib-src/makefile.w32-in
@@ -120,7 +120,6 @@ $(BLD)/ctags.$(O): ctags.c
120# 120#
121# don't know what to do with these yet... 121# don't know what to do with these yet...
122# 122#
123# $(BLD)/yow.exe: $(BLD)/yow.$(O)
124# $(BLD)/emacstool.exe: $(BLD)/emacstool.$(O) 123# $(BLD)/emacstool.exe: $(BLD)/emacstool.$(O)
125# $(BLD)/server.exe: $(BLD)/server.$(O) 124# $(BLD)/server.exe: $(BLD)/server.$(O)
126# $(BLD)/cvtmail.exe: $(BLD)/cvtmail.$(O) 125# $(BLD)/cvtmail.exe: $(BLD)/cvtmail.$(O)
@@ -458,7 +457,3 @@ $(BLD)/timer.$(O) : \
458 $(EMACS_ROOT)/src/s/ms-w32.h \ 457 $(EMACS_ROOT)/src/s/ms-w32.h \
459 $(EMACS_ROOT)/src/m/intel386.h \ 458 $(EMACS_ROOT)/src/m/intel386.h \
460 $(EMACS_ROOT)/lib-src/../src/config.h 459 $(EMACS_ROOT)/lib-src/../src/config.h
461
462$(BLD)/yow.$(O) : \
463 $(SRC)/yow.c \
464 $(EMACS_ROOT)/lib-src/../src/paths.h
diff --git a/lib-src/yow.c b/lib-src/yow.c
deleted file mode 100644
index 18f0f7b2e13..00000000000
--- a/lib-src/yow.c
+++ /dev/null
@@ -1,185 +0,0 @@
1/*
2 * yow.c
3 *
4 * Print a quotation from Zippy the Pinhead.
5 * Qux <Kaufman-David@Yale> March 6, 1986
6 *
7 * This file is in the public domain because the author published it
8 * with no copyright notice before the US signed the Bern Convention.
9 *
10 * With dynamic memory allocation.
11 */
12
13#ifdef HAVE_CONFIG_H
14#include <config.h>
15#endif
16
17#include <stdio.h>
18#include <ctype.h>
19#ifdef TIME_WITH_SYS_TIME
20#include <sys/time.h>
21#include <time.h>
22#else
23#ifdef HAVE_SYS_TIME_H
24#include <sys/time.h>
25#else
26#include <time.h>
27#endif
28#endif
29#ifdef HAVE_UNISTD_H
30#include <unistd.h>
31#endif
32#include "epaths.h" /* For PATH_DATA. */
33
34#define BUFSIZE 80
35#define SEP '\0'
36
37#ifndef YOW_FILE
38#define YOW_FILE "yow.lines"
39#endif
40
41#ifdef MSDOS
42#define rootrelativepath(rel) \
43({\
44 static char res[BUFSIZE], *p;\
45 strcpy (res, argv[0]);\
46 p = res + strlen (res);\
47 while (p != res && *p != '/' && *p != '\\' && *p != ':') p--;\
48 strcpy (p + 1, "../");\
49 strcpy (p + 4, rel);\
50 &res;})
51#endif
52
53void yow();
54void setup_yow();
55
56int
57main (argc, argv)
58 int argc;
59 char *argv[];
60{
61 FILE *fp;
62 char file[BUFSIZ];
63
64 if (argc > 2 && !strcmp (argv[1], "-f"))
65 strcpy (file, argv[2]);
66 else
67#ifdef vms
68 sprintf (file, "%s%s", PATH_DATA, YOW_FILE);
69#else
70 sprintf (file, "%s/%s", PATH_DATA, YOW_FILE);
71#endif
72
73 if ((fp = fopen(file, "r")) == NULL) {
74 fprintf(stderr, "yow: ");
75 perror(file);
76 exit(EXIT_FAILURE);
77 }
78
79 /* initialize random seed */
80 srand((int) (getpid() + time((time_t *) 0)));
81
82 setup_yow(fp);
83 yow(fp);
84 fclose(fp);
85 return EXIT_SUCCESS;
86}
87
88static long len = -1;
89static long header_len;
90
91#define AVG_LEN 40 /* average length of a quotation */
92
93/* Sets len and header_len */
94void
95setup_yow(fp)
96 FILE *fp;
97{
98 int c;
99
100 /* Get length of file */
101 /* Because the header (stuff before the first SEP) can be very long,
102 * thus biasing our search in favor of the first quotation in the file,
103 * we explicitly skip that. */
104 while ((c = getc(fp)) != SEP) {
105 if (c == EOF) {
106 fprintf(stderr, "yow: file contains no separators\n");
107 exit(EXIT_FAILURE);
108 }
109 }
110 header_len = ftell(fp);
111 if (header_len > AVG_LEN)
112 header_len -= AVG_LEN; /* allow the first quotation to appear */
113
114 if (fseek(fp, 0L, 2) == -1) {
115 perror("yow");
116 exit(EXIT_FAILURE);
117 }
118 len = ftell(fp) - header_len;
119}
120
121
122/* go to a random place in the file and print the quotation there */
123void
124yow (fp)
125 FILE *fp;
126{
127 long offset;
128 int c, i = 0;
129 char *buf;
130 unsigned int bufsize;
131
132 offset = rand() % len + header_len;
133 if (fseek(fp, offset, 0) == -1) {
134 perror("yow");
135 exit(EXIT_FAILURE);
136 }
137
138 /* Read until SEP, read next line, print it.
139 (Note that we will never print anything before the first separator.)
140 If we hit EOF looking for the first SEP, just recurse. */
141 while ((c = getc(fp)) != SEP)
142 if (c == EOF) {
143 yow(fp);
144 return;
145 }
146
147 /* Skip leading whitespace, then read in a quotation.
148 If we hit EOF before we find a non-whitespace char, recurse. */
149 while (isspace(c = getc(fp)))
150 ;
151 if (c == EOF) {
152 yow(fp);
153 return;
154 }
155
156 bufsize = BUFSIZE;
157 buf = (char *) malloc(bufsize);
158 if (buf == (char *)0) {
159 fprintf(stderr, "yow: virtual memory exhausted\n");
160 exit (EXIT_FAILURE);
161 }
162
163 buf[i++] = c;
164 while ((c = getc(fp)) != SEP && c != EOF) {
165 buf[i++] = c;
166
167 if (i == bufsize-1) {
168 /* Yow! Is this quotation too long yet? */
169 bufsize *= 2;
170 buf = (char *) realloc(buf, bufsize);
171 if (buf == (char *)0) {
172 fprintf(stderr, "yow: virtual memory exhausted\n");
173 exit (EXIT_FAILURE);
174 }
175 }
176 }
177 buf[i++] = 0;
178 printf("%s\n", buf);
179 free (buf);
180}
181
182/* arch-tag: e40fc0df-bafb-4001-af24-5c883d1c685e
183 (do not change this comment) */
184
185/* yow.c ends here */
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 24e371c2240..9666bfa58aa 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,136 @@
12006-06-16 Richard Stallman <rms@gnu.org>
2
3 * obsolete/options.el (list-options): Put "obsolete" msg in buffer.
4
5 * files.el (basic-save-buffer-2): For a new precious file,
6 use the default modes in the return value.
7
8 * facemenu.el (facemenu-color-alist): Doc fix.
9
10 * cus-edit.el (custom-guess-name-alist): Recognize `-flag'.
11
122006-06-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13
14 * cus-start.el (all): Add mac-ts-script-language-on-focus.
15
16 * term/mac-win.el (mac-text-encoding-ascii): New constant.
17 (mac-utxt-to-string): Use it.
18 (mac-ts-update-active-input-area): Use mac-ae-number.
19
202006-06-15 Dan Nicolaescu <dann@ics.uci.edu>
21
22 * term.el (term-handle-scroll, term-delete-lines)
23 (term-insert-lines): Fix off by one errors.
24
252006-06-15 Katsumi Yamaoka <yamaoka@jpl.org> (tiny change)
26
27 * net/tramp.el (tramp-touch): Use UTC to express time.
28
292006-06-15 Chong Yidong <cyd@stupidchicken.com>
30
31 * mail/sendmail.el (mail-send): Search explicitly for
32 mail-header-separator when checking for corrupted header lines.
33
342006-06-15 Nick Roberts <nickrob@snap.net.nz>
35
36 * progmodes/gdb-ui.el (gdb-same-frame): New option.
37 (gud-old-arrow, gdb-frame-begin, gdb-printing): New variables.
38 (gdb-init-1): Initialise them.
39 (gdb-starting): Reset gdb-printing
40 (gdb-starting): Save value of gud-overlay-arrow-position.
41 (gdb-frame-begin): Set gdb-frame-begin, gdb-printing.
42 (gdb-stopped): Don't look for source if calling procedure e.g "p a ()".
43 Use gdb-*-gdb-buffer conditionally on gdb-same-frame.
44 (gdb-frame-gdb-buffer): Keep menu bar, tool bar for GUD buffer.
45
462006-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
47
48 * pcvs.el (cvs-retrieve-revision): Use decode-coding-inserted-region.
49
502006-06-13 Martin J. Reed <mjreed@essex.ac.uk> (tiny change)
51
52 * net/ldap.el (ldap-ldapsearch-args): Default to SASL search.
53 (ldap-search-internal): Keep error messages, and a regexp fix.
54
552006-06-12 Thien-Thi Nguyen <ttn@gnu.org>
56
57 * files.el (hack-local-variables-confirm):
58 Display string value using its printed representation.
59
602006-06-11 Chong Yidong <cyd@stupidchicken.com>
61
62 * server.el (server-edit): No-op if no server buffers exist.
63
642006-06-11 Robert J. Chassell <bob@rattlesnake.com>
65
66 * textmodes/page-ext.el (pages-directory-for-addresses):
67 Including `pages-directory-address-mode' in the function results
68 in the message "Buffer in which pages were found is deleted".
69
702006-06-10 Carsten Dominik <dominik@science.uva.nl>
71
72 * textmodes/org.el: (org-agenda-mode-map): Add bindings for
73 clocking functions.
74
75 (org-agenda-clock-in, org-check-running-clock)
76 (org-clock-out-if-current, org-remove-clock-overlays)
77 (org-put-clock-overlay): New functions.
78 (org-clock-marker, org-clock-file-total-minutes)
79 (org-clock-overlays): New variables.
80 (org-clock-display, org-clock-sum, org-clock-cancel)
81 (org-clock-out, org-clock-in): New commands.
82 (org-export): New function.
83 (org-emph-re): New constant.
84 (org-set-emph-re, org-do-emphasis-faces): New functions.
85 (org-emphasis-regexp-components, org-emphasis-alist): New options.
86 (org-set-font-lock-defaults): Call `org-do-emphasis-faces'.
87 (org-export-html-convert-emphasize): Use the configurable emphasis.
88 (org-cleaned-string-for-export): Make multiline emphasis visible
89 to the exporter. New optional argument PARAMETERS.
90 (org-export-as-html): Specify :emph-multiline parameter to
91 `org-cleaned-string-for-export'.
92
932006-06-10 Richard Stallman <rms@gnu.org>
94
95 * help.el (help-for-help-internal): Clean up help text.
96
972006-06-10 Andreas Schwab <schwab@suse.de>
98
99 * language/ethio-util.el (ethio-fidel-to-java-buffer): Fix quoting
100 in doc string.
101
102 * progmodes/cperl-mode.el (cperl-short-docs): Likewise.
103
1042006-06-09 Karl Chen <quarl@cs.berkeley.edu>
105
106 * progmodes/make-mode.el (makefile-fill-paragraph): Don't remove
107 spaces after the comment start.
108
1092006-06-09 Micha,Ak(Bl Cadilhac <michael.cadilhac@lrde.org>
110
111 * play/pong.el (pong-init-buffer):
112 Fill buffer with spaces instead of ^A.
113
114 * textmodes/ispell.el (ispell-kill-ispell): If ispell has been
115 launched asynchronously, delete its process instead of being cool.
116 (ispell-async-processp): Check for `delete-process' existence
117 instead of `kill-process' one for consistency.
118
1192006-06-09 Nick Roberts <nickrob@snap.net.nz>
120
121 * progmodes/gdb-ui.el (gdb-set-gud-minor-mode-existing-buffers-1)
122 (gdb-prompt, gdb-set-gud-minor-mode-existing-buffers): Show status
123 in mode line at startup.
124
1252006-06-08 Kim F. Storm <storm@cua.dk>
126
127 * ido.el (ido-take-first-match, ido-push-dir-first): New commands.
128 (ido-init-completion-maps): Bind them to M-SPC and M-v.
129 (ido-copy-current-file-name): Repeating C-w inserts whole file name.
130 (ido-file-internal): Pass full file name to write-file.
131 (ido-read-internal): Only pop stack elements automatically if they
132 actually match an existing directory or file name.
133
12006-06-07 Kenichi Handa <handa@m17n.org> 1342006-06-07 Kenichi Handa <handa@m17n.org>
2 135
3 * international/mule.el (find-auto-coding): Don't handle the short 136 * international/mule.el (find-auto-coding): Don't handle the short
@@ -8,8 +141,7 @@
8 141
92006-06-06 Jesper Harder <harder@phys.au.dk> 1422006-06-06 Jesper Harder <harder@phys.au.dk>
10 143
11 * ediff-diff.el (ediff-test-utility): Protect against 144 * ediff-diff.el (ediff-test-utility): Protect against file-error.
12 file-error.
13 145
142006-06-06 Chong Yidong <cyd@stupidchicken.com> 1462006-06-06 Chong Yidong <cyd@stupidchicken.com>
15 147
@@ -41,7 +173,7 @@
41 cookies but no other non-empty fields. 173 cookies but no other non-empty fields.
42 (org-set-tags): Allow groups of mutually exclusive tags. 174 (org-set-tags): Allow groups of mutually exclusive tags.
43 (org-cmp-time): Sort 24:21 before items without time. 175 (org-cmp-time): Sort 24:21 before items without time.
44 (org-get-time-of-day): Fixed the interpretation of 12pm and 12am. 176 (org-get-time-of-day): Fix the interpretation of 12pm and 12am.
45 (org-open-at-point): Require double colon also for numbers. 177 (org-open-at-point): Require double colon also for numbers.
46 178
472006-06-06 Kim F. Storm <storm@cua.dk> 1792006-06-06 Kim F. Storm <storm@cua.dk>
@@ -81,8 +213,8 @@
81 213
822006-06-05 Kenichi Handa <handa@m17n.org> 2142006-06-05 Kenichi Handa <handa@m17n.org>
83 215
84 * international/mule.el (find-auto-coding): Handle 216 * international/mule.el (find-auto-coding):
85 enable-character-translation in file header. 217 Handle enable-character-translation in file header.
86 218
872006-06-04 Kim F. Storm <storm@cua.dk> 2192006-06-04 Kim F. Storm <storm@cua.dk>
88 220
@@ -151,8 +283,8 @@
151 as well as `coding'. 283 as well as `coding'.
152 (hack-local-variables): Likewise. 284 (hack-local-variables): Likewise.
153 285
154 * international/mule.el (enable-character-translation): Put 286 * international/mule.el (enable-character-translation):
155 permanent-local and safe-local-variable properties. 287 Put permanent-local and safe-local-variable properties.
156 (find-auto-coding): Handle char-trans: tag. 288 (find-auto-coding): Handle char-trans: tag.
157 289
1582006-06-02 Juri Linkov <juri@jurta.org> 2902006-06-02 Juri Linkov <juri@jurta.org>
diff --git a/lisp/cus-edit.el b/lisp/cus-edit.el
index 52f66038ea6..e700cd47d16 100644
--- a/lisp/cus-edit.el
+++ b/lisp/cus-edit.el
@@ -587,6 +587,7 @@ WIDGET is the widget to apply the filter entries of MENU on."
587 587
588(defcustom custom-guess-name-alist 588(defcustom custom-guess-name-alist
589 '(("-p\\'" boolean) 589 '(("-p\\'" boolean)
590 ("-flag\\'" boolean)
590 ("-hook\\'" hook) 591 ("-hook\\'" hook)
591 ("-face\\'" face) 592 ("-face\\'" face)
592 ("-file\\'" file) 593 ("-file\\'" file)
diff --git a/lisp/cus-start.el b/lisp/cus-start.el
index 79b142470d1..e35a75da598 100644
--- a/lisp/cus-start.el
+++ b/lisp/cus-start.el
@@ -225,6 +225,13 @@ Leaving \"Default\" unchecked is equivalent with specifying a default of
225 (mac-pass-command-to-system mac boolean "22.1") 225 (mac-pass-command-to-system mac boolean "22.1")
226 (mac-pass-control-to-system mac boolean "22.1") 226 (mac-pass-control-to-system mac boolean "22.1")
227 (mac-allow-anti-aliasing mac boolean "22.1") 227 (mac-allow-anti-aliasing mac boolean "22.1")
228 (mac-ts-script-language-on-focus mac
229 (choice (const :tag "System default behavior" nil)
230 (const :tag "Restore to script/language used in the last focus frame" t)
231 (cons :tag "Specify script/language"
232 (integer :tag "Script code")
233 (integer :tag "Language code")))
234 "22.1")
228 235
229;; This is not good news because it will use the wrong 236;; This is not good news because it will use the wrong
230;; version-specific directories when you upgrade. We need 237;; version-specific directories when you upgrade. We need
diff --git a/lisp/facemenu.el b/lisp/facemenu.el
index 04f70708359..5478cf12b8c 100644
--- a/lisp/facemenu.el
+++ b/lisp/facemenu.el
@@ -308,9 +308,8 @@ May also be t meaning to use `facemenu-add-face-function'."
308;;; Internal Variables 308;;; Internal Variables
309 309
310(defvar facemenu-color-alist nil 310(defvar facemenu-color-alist nil
311 ;; Don't initialize here; that doesn't work if preloaded.
312 "Alist of colors, used for completion. 311 "Alist of colors, used for completion.
313If null, `facemenu-read-color' will set it.") 312If this is nil, then the value of (defined-colors) is used.")
314 313
315(defun facemenu-update () 314(defun facemenu-update ()
316 "Add or update the \"Face\" menu in the menu bar. 315 "Add or update the \"Face\" menu in the menu bar.
diff --git a/lisp/files.el b/lisp/files.el
index b4bc8f9ffec..3313f003d89 100644
--- a/lisp/files.el
+++ b/lisp/files.el
@@ -2406,7 +2406,11 @@ n -- to ignore the local variables list.")
2406 (insert " "))) 2406 (insert " ")))
2407 (princ (car elt) buf) 2407 (princ (car elt) buf)
2408 (insert " : ") 2408 (insert " : ")
2409 (princ (cdr elt) buf) 2409 (if (stringp (cdr elt))
2410 ;; Make strings with embedded whitespace easier to read.
2411 (let ((print-escape-newlines t))
2412 (prin1 (cdr elt) buf))
2413 (princ (cdr elt) buf))
2410 (insert "\n")) 2414 (insert "\n"))
2411 (setq prompt 2415 (setq prompt
2412 (format "Please type %s%s: " 2416 (format "Please type %s%s: "
@@ -3626,8 +3630,9 @@ Before and after saving the buffer, this function runs
3626 (set-visited-file-modtime old-modtime))) 3630 (set-visited-file-modtime old-modtime)))
3627 ;; Since we have created an entirely new file, 3631 ;; Since we have created an entirely new file,
3628 ;; make sure it gets the right permission bits set. 3632 ;; make sure it gets the right permission bits set.
3629 (setq setmodes (or setmodes (cons (file-modes buffer-file-name) 3633 (setq setmodes (or setmodes
3630 buffer-file-name))) 3634 (cons (or (file-modes buffer-file-name) umask)
3635 buffer-file-name)))
3631 ;; We succeeded in writing the temp file, 3636 ;; We succeeded in writing the temp file,
3632 ;; so rename it. 3637 ;; so rename it.
3633 (rename-file tempname buffer-file-name t)) 3638 (rename-file tempname buffer-file-name t))
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog
index 71aa3654da6..1899fd9d845 100644
--- a/lisp/gnus/ChangeLog
+++ b/lisp/gnus/ChangeLog
@@ -1,3 +1,14 @@
12006-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
2
3 * message.el (message-syntax-checks): Doc fix.
4 (message-send-mail): Add check for continuation headers.
5 (message-check-news-header-syntax): Fix regexp used to check for
6 continuation headers.
7
82006-06-14 Katsumi Yamaoka <yamaoka@jpl.org>
9
10 * gnus-art.el (gnus-display-mime): Make sure body ends with newline.
11
12006-06-06 Katsumi Yamaoka <yamaoka@jpl.org> 122006-06-06 Katsumi Yamaoka <yamaoka@jpl.org>
2 13
3 * mm-util.el (mm-mime-mule-charset-alist): Use unicode-precedence-list 14 * mm-util.el (mm-mime-mule-charset-alist): Use unicode-precedence-list
diff --git a/lisp/gnus/gnus-art.el b/lisp/gnus/gnus-art.el
index 4722e98ef19..39292e33a1f 100644
--- a/lisp/gnus/gnus-art.el
+++ b/lisp/gnus/gnus-art.el
@@ -4927,7 +4927,11 @@ N is the numerical prefix."
4927 (article-goto-body) 4927 (article-goto-body)
4928 (narrow-to-region (point-min) (point)) 4928 (narrow-to-region (point-min) (point))
4929 (gnus-article-save-original-date 4929 (gnus-article-save-original-date
4930 (gnus-treat-article 'head))))))))) 4930 (gnus-treat-article 'head)))))))
4931 ;; Cope with broken MIME messages.
4932 (goto-char (point-max))
4933 (unless (bolp)
4934 (insert "\n"))))
4931 4935
4932(defcustom gnus-mime-display-multipart-as-mixed nil 4936(defcustom gnus-mime-display-multipart-as-mixed nil
4933 "Display \"multipart\" parts as \"multipart/mixed\". 4937 "Display \"multipart\" parts as \"multipart/mixed\".
diff --git a/lisp/gnus/message.el b/lisp/gnus/message.el
index 8bc0f704b5c..91ac018f324 100644
--- a/lisp/gnus/message.el
+++ b/lisp/gnus/message.el
@@ -190,14 +190,13 @@ To disable checking of long signatures, for instance, add
190 190
191Don't touch this variable unless you really know what you're doing. 191Don't touch this variable unless you really know what you're doing.
192 192
193Checks include `subject-cmsg', `multiple-headers', `sendsys', 193Checks include `approved', `continuation-headers', `control-chars',
194`message-id', `from', `long-lines', `control-chars', `size', 194`empty', `existing-newsgroups', `from', `illegible-text',
195`new-text', `quoting-style', `redirected-followup', `signature', 195`invisible-text', `long-header-lines', `long-lines', `message-id',
196`approved', `sender', `empty', `empty-headers', `message-id', `from', 196`multiple-headers', `new-text', `newsgroups', `quoting-style',
197`subject', `shorten-followup-to', `existing-newsgroups', 197`repeated-newsgroups', `reply-to', `sendsys', `shoot',
198`buffer-file-name', `unchanged', `newsgroups', `reply-to', 198`shorten-followup-to', `signature', `size', `subject', `subject-cmsg'
199`continuation-headers', `long-header-lines', `invisible-text' and 199and `valid-newsgroups'."
200`illegible-text'."
201 :group 'message-news 200 :group 'message-news
202 :type '(repeat sexp)) ; Fixme: improve this 201 :type '(repeat sexp)) ; Fixme: improve this
203 202
@@ -3769,6 +3768,16 @@ It should typically alter the sending method in some way or other."
3769 (let ((message-deletable-headers 3768 (let ((message-deletable-headers
3770 (if news nil message-deletable-headers))) 3769 (if news nil message-deletable-headers)))
3771 (message-generate-headers headers)) 3770 (message-generate-headers headers))
3771 ;; Check continuation headers.
3772 (message-check 'continuation-headers
3773 (goto-char (point-min))
3774 (while (re-search-forward "^[^ \t\n][^ \t\n:]*[ \t\n]" nil t)
3775 (goto-char (match-beginning 0))
3776 (if (y-or-n-p "Fix continuation lines? ")
3777 (insert " ")
3778 (forward-line 1)
3779 (unless (y-or-n-p "Send anyway? ")
3780 (error "Failed to send the message")))))
3772 ;; Let the user do all of the above. 3781 ;; Let the user do all of the above.
3773 (run-hooks 'message-header-hook)) 3782 (run-hooks 'message-header-hook))
3774 (unwind-protect 3783 (unwind-protect
@@ -4326,11 +4335,11 @@ Otherwise, generate and save a value for `canlock-password' first."
4326 (message-check 'continuation-headers 4335 (message-check 'continuation-headers
4327 (goto-char (point-min)) 4336 (goto-char (point-min))
4328 (let ((do-posting t)) 4337 (let ((do-posting t))
4329 (while (re-search-forward "^[^ \t\n][^:\n]*$" nil t) 4338 (while (re-search-forward "^[^ \t\n][^ \t\n:]*[ \t\n]" nil t)
4339 (goto-char (match-beginning 0))
4330 (if (y-or-n-p "Fix continuation lines? ") 4340 (if (y-or-n-p "Fix continuation lines? ")
4331 (progn 4341 (insert " ")
4332 (goto-char (match-beginning 0)) 4342 (forward-line 1)
4333 (insert " "))
4334 (unless (y-or-n-p "Send anyway? ") 4343 (unless (y-or-n-p "Send anyway? ")
4335 (setq do-posting nil)))) 4344 (setq do-posting nil))))
4336 do-posting)) 4345 do-posting))
diff --git a/lisp/help.el b/lisp/help.el
index d9a48a0a4cf..0caf018c2e9 100644
--- a/lisp/help.el
+++ b/lisp/help.el
@@ -182,31 +182,28 @@ specifies what to do when the user exits the help buffer."
182 "You have typed %THIS-KEY%, the help character. Type a Help option: 182 "You have typed %THIS-KEY%, the help character. Type a Help option:
183\(Use SPC or DEL to scroll through this text. Type \\<help-map>\\[help-quit] to exit the Help command.) 183\(Use SPC or DEL to scroll through this text. Type \\<help-map>\\[help-quit] to exit the Help command.)
184 184
185a command-apropos. Give a list of words or a regexp, to get a list of 185a command-apropos. Type a list of words or a regexp; it shows a list of
186 commands whose names match. See also the apropos command. 186 commands whose names match. See also the apropos command.
187b describe-bindings. Display table of all key bindings. 187b describe-bindings. Display a table of all key bindings.
188c describe-key-briefly. Type a command key sequence; 188c describe-key-briefly. Type a key sequence;
189 it prints the function name that sequence runs. 189 it displays the command name run by that key sequence.
190C describe-coding-system. This describes either a specific coding system 190C describe-coding-system. Type the name of the coding system to describe,
191 (if you type its name) or the coding systems currently in use 191 or just RET to describe the ones currently in use.
192 (if you type just RET). 192d apropos-documentation. Type a pattern (a list of words or a regexp), and
193d apropos-documentation. Give a pattern (a list or words or a regexp), and 193 it shows a list of functions, variables, and other items whose
194 see a list of functions, variables, and other items whose built-in 194 documentation matches that pattern. See also the apropos command.
195 doucmentation string matches that pattern. See also the apropos command. 195e view-echo-area-messages. Go to the buffer that logs echo-area messages.
196e view-echo-area-messages. Show the buffer where the echo-area messages 196f describe-function. Type a function name and you see its documentation.
197 are stored. 197F Info-goto-emacs-command-node. Type a command name;
198f describe-function. Type a function name and get its documentation. 198 it goes to the on-line manual's section that describes the command.
199F Info-goto-emacs-command-node. Type a function name;
200 it takes you to the on-line manual's section that describes
201 the command.
202h Display the HELLO file which illustrates various scripts. 199h Display the HELLO file which illustrates various scripts.
203i info. The Info documentation reader: read on-line manuals. 200i info. The Info documentation reader: read on-line manuals.
204I describe-input-method. Describe a specific input method (if you type 201I describe-input-method. Describe a specific input method (if you type
205 its name) or the current input method (if you type just RET). 202 its name) or the current input method (if you type just RET).
206k describe-key. Type a command key sequence; 203k describe-key. Type a key sequence;
207 it displays the full documentation for that key sequence. 204 it displays the full documentation for that key sequence.
208K Info-goto-emacs-key-command-node. Type a command key sequence; 205K Info-goto-emacs-key-command-node. Type a key sequence;
209 it takes you to the on-line manual's section that describes 206 it goes to the on-line manual's section that describes
210 the command bound to that key. 207 the command bound to that key.
211l view-lossage. Show last 100 characters you typed. 208l view-lossage. Show last 100 characters you typed.
212L describe-language-environment. This describes either a 209L describe-language-environment. This describes either a
@@ -218,12 +215,12 @@ n view-emacs-news. Display news of recent Emacs changes.
218p finder-by-keyword. Find packages matching a given topic keyword. 215p finder-by-keyword. Find packages matching a given topic keyword.
219r info-emacs-manual. Display the Emacs manual in Info mode. 216r info-emacs-manual. Display the Emacs manual in Info mode.
220s describe-syntax. Display contents of syntax table, plus explanations. 217s describe-syntax. Display contents of syntax table, plus explanations.
221S info-lookup-symbol. Display the definition of a specific symbol 218S info-lookup-symbol. Type a symbol; it goes to that symbol in the
222 as found in the manual for the language this buffer is written in. 219 on-line manual for the programming language used in this buffer.
223t help-with-tutorial. Select the Emacs learn-by-doing tutorial. 220t help-with-tutorial. Select the Emacs learn-by-doing tutorial.
224v describe-variable. Type name of a variable; 221v describe-variable. Type name of a variable;
225 it displays the variable's documentation and value. 222 it displays the variable's documentation and value.
226w where-is. Type command name; it prints which keystrokes 223w where-is. Type a command name; it displays which keystrokes
227 invoke that command. 224 invoke that command.
228. display-local-help. Display any available local help at point 225. display-local-help. Display any available local help at point
229 in the echo area. 226 in the echo area.
diff --git a/lisp/ido.el b/lisp/ido.el
index 344f8a667a1..a4c26b52c98 100644
--- a/lisp/ido.el
+++ b/lisp/ido.el
@@ -1538,6 +1538,7 @@ With ARG, turn ido speed-up on if arg is positive, off otherwise."
1538 (define-key map "\C-t" 'ido-toggle-regexp) 1538 (define-key map "\C-t" 'ido-toggle-regexp)
1539 (define-key map "\C-z" 'ido-undo-merge-work-directory) 1539 (define-key map "\C-z" 'ido-undo-merge-work-directory)
1540 (define-key map [(control ?\s)] 'ido-restrict-to-matches) 1540 (define-key map [(control ?\s)] 'ido-restrict-to-matches)
1541 (define-key map [(meta ?\s)] 'ido-take-first-match)
1541 (define-key map [(control ?@)] 'ido-restrict-to-matches) 1542 (define-key map [(control ?@)] 'ido-restrict-to-matches)
1542 (define-key map [right] 'ido-next-match) 1543 (define-key map [right] 'ido-next-match)
1543 (define-key map [left] 'ido-prev-match) 1544 (define-key map [left] 'ido-prev-match)
@@ -1565,6 +1566,7 @@ With ARG, turn ido speed-up on if arg is positive, off otherwise."
1565 (define-key map "\C-l" 'ido-reread-directory) 1566 (define-key map "\C-l" 'ido-reread-directory)
1566 (define-key map [(meta ?d)] 'ido-wide-find-dir-or-delete-dir) 1567 (define-key map [(meta ?d)] 'ido-wide-find-dir-or-delete-dir)
1567 (define-key map [(meta ?b)] 'ido-push-dir) 1568 (define-key map [(meta ?b)] 'ido-push-dir)
1569 (define-key map [(meta ?v)] 'ido-push-dir-first)
1568 (define-key map [(meta ?f)] 'ido-wide-find-file-or-pop-dir) 1570 (define-key map [(meta ?f)] 'ido-wide-find-file-or-pop-dir)
1569 (define-key map [(meta ?k)] 'ido-forget-work-directory) 1571 (define-key map [(meta ?k)] 'ido-forget-work-directory)
1570 (define-key map [(meta ?m)] 'ido-make-directory) 1572 (define-key map [(meta ?m)] 'ido-make-directory)
@@ -2092,8 +2094,10 @@ If INITIAL is non-nil, it specifies the initial input string."
2092 (cons (cons ido-current-directory ido-selected) ido-last-directory-list))))) 2094 (cons (cons ido-current-directory ido-selected) ido-last-directory-list)))))
2093 (ido-set-current-directory ido-current-directory ido-selected) 2095 (ido-set-current-directory ido-current-directory ido-selected)
2094 (if ido-input-stack 2096 (if ido-input-stack
2095 (while ido-input-stack 2097 ; automatically pop stack elements which match existing files or directories
2096 (let ((elt (car ido-input-stack))) 2098 (let (elt)
2099 (while (and (setq elt (car ido-input-stack))
2100 (file-exists-p (concat ido-current-directory (cdr elt))))
2097 (if (setq ido-input-stack (cdr ido-input-stack)) 2101 (if (setq ido-input-stack (cdr ido-input-stack))
2098 (ido-set-current-directory ido-current-directory (cdr elt)) 2102 (ido-set-current-directory ido-current-directory (cdr elt))
2099 (setq ido-text-init (cdr elt))) 2103 (setq ido-text-init (cdr elt)))
@@ -2337,7 +2341,7 @@ If INITIAL is non-nil, it specifies the initial input string."
2337 (setq default-directory ido-current-directory) 2341 (setq default-directory ido-current-directory)
2338 (ido-record-command 'write-file (concat ido-current-directory filename)) 2342 (ido-record-command 'write-file (concat ido-current-directory filename))
2339 (ido-record-work-directory) 2343 (ido-record-work-directory)
2340 (write-file filename)) 2344 (write-file (concat ido-current-directory filename)))
2341 2345
2342 ((eq method 'read-only) 2346 ((eq method 'read-only)
2343 (ido-record-work-file filename) 2347 (ido-record-work-file filename)
@@ -2805,12 +2809,28 @@ If input stack is non-empty, delete current directory component."
2805 (ido-delete-backward-word-updir 1) 2809 (ido-delete-backward-word-updir 1)
2806 (ido-wide-find-dir))) 2810 (ido-wide-find-dir)))
2807 2811
2812(defun ido-take-first-match ()
2813 "Use first matching item as input text."
2814 (interactive)
2815 (when ido-matches
2816 (setq ido-text-init (car ido-matches))
2817 (setq ido-exit 'refresh)
2818 (exit-minibuffer)))
2819
2808(defun ido-push-dir () 2820(defun ido-push-dir ()
2809 "Move to previous directory in file name, push current input on stack." 2821 "Move to previous directory in file name, push current input on stack."
2810 (interactive) 2822 (interactive)
2811 (setq ido-exit 'push) 2823 (setq ido-exit 'push)
2812 (exit-minibuffer)) 2824 (exit-minibuffer))
2813 2825
2826(defun ido-push-dir-first ()
2827 "Move to previous directory in file name, push first match on stack."
2828 (interactive)
2829 (if ido-matches
2830 (setq ido-text (car ido-matches)))
2831 (setq ido-exit 'push)
2832 (exit-minibuffer))
2833
2814(defun ido-pop-dir (arg) 2834(defun ido-pop-dir (arg)
2815 "Pop directory from input stack back to input. 2835 "Pop directory from input stack back to input.
2816With \\[universal-argument], pop all element." 2836With \\[universal-argument], pop all element."
@@ -2880,6 +2900,7 @@ If repeated, insert text from buffer instead."
2880 (when name 2900 (when name
2881 (setq ido-text-init 2901 (setq ido-text-init
2882 (if (or all 2902 (if (or all
2903 (eq last-command this-command)
2883 (not (equal (file-name-directory bfname) ido-current-directory)) 2904 (not (equal (file-name-directory bfname) ido-current-directory))
2884 (not (string-match "\\.[^.]*\\'" name))) 2905 (not (string-match "\\.[^.]*\\'" name)))
2885 name 2906 name
diff --git a/lisp/language/ethio-util.el b/lisp/language/ethio-util.el
index 8a7c0a0ee1e..ba4b22b1153 100644
--- a/lisp/language/ethio-util.el
+++ b/lisp/language/ethio-util.el
@@ -863,7 +863,7 @@ The 2nd and 3rd arguments BEGIN and END specify the region."
863(defun ethio-fidel-to-java-buffer nil 863(defun ethio-fidel-to-java-buffer nil
864 "Convert Ethiopic characters into the Java escape sequences. 864 "Convert Ethiopic characters into the Java escape sequences.
865 865
866Each escape sequence is of the form \uXXXX, where XXXX is the 866Each escape sequence is of the form \\uXXXX, where XXXX is the
867character's codepoint (in hex) in Unicode. 867character's codepoint (in hex) in Unicode.
868 868
869If `ethio-java-save-lowercase' is non-nil, use [0-9a-f]. 869If `ethio-java-save-lowercase' is non-nil, use [0-9a-f].
diff --git a/lisp/mail/sendmail.el b/lisp/mail/sendmail.el
index 3fa7eda968c..0760aa648ec 100644
--- a/lisp/mail/sendmail.el
+++ b/lisp/mail/sendmail.el
@@ -863,11 +863,14 @@ the user from the mailer."
863 (error "Message contains non-ASCII characters")))) 863 (error "Message contains non-ASCII characters"))))
864 ;; Complain about any invalid line. 864 ;; Complain about any invalid line.
865 (goto-char (point-min)) 865 (goto-char (point-min))
866 (while (< (point) (mail-header-end)) 866 (re-search-forward (regexp-quote mail-header-separator) (point-max) t)
867 (unless (looking-at "[ \t]\\|.*:\\|$") 867 (let ((header-end (or (match-beginning 0) (point-max))))
868 (push-mark opoint) 868 (goto-char (point-min))
869 (error "Invalid header line (maybe a continuation line lacks initial whitespace)")) 869 (while (< (point) header-end)
870 (forward-line 1)) 870 (unless (looking-at "[ \t]\\|.*:\\|$")
871 (push-mark opoint)
872 (error "Invalid header line (maybe a continuation line lacks initial whitespace)"))
873 (forward-line 1)))
871 (goto-char opoint) 874 (goto-char opoint)
872 (run-hooks 'mail-send-hook) 875 (run-hooks 'mail-send-hook)
873 (message "Sending...") 876 (message "Sending...")
diff --git a/lisp/mh-e/ChangeLog b/lisp/mh-e/ChangeLog
index 94632f8c38d..a679b5d65eb 100644
--- a/lisp/mh-e/ChangeLog
+++ b/lisp/mh-e/ChangeLog
@@ -1,3 +1,22 @@
12006-06-15 Bill Wohler <wohler@newt.com>
2
3 * mh-search.el (mh-index-new-folder): Use -2 suffix instead of <2>
4 suffix for folder names, as <> are illegal filenakme characters on
5 Windows (closes SF #1507002).
6
72006-06-05 Jacob Morzinski <morzinski@MIT.EDU> (tiny change)
8
9 * mh-comp.el (mh-send-uses-spost): New variable.
10 (mh-send-letter): Do not use -msgid and -mime if
11 mh-send-uses-spost is t (closes SF #1486726).
12
132006-06-02 Bill Wohler <wohler@newt.com>
14
15 (mh-folder-exists-p): Change test from an empty buffer, to one
16 that contains the actual folder, since GNU mailutils' folder
17 command displays output if the folder doesn't exist (closes SF
18 #1499712).
19
12006-05-06 Bill Wohler <wohler@newt.com> 202006-05-06 Bill Wohler <wohler@newt.com>
2 21
3 Release MH-E version 8.0. 22 Release MH-E version 8.0.
diff --git a/lisp/mh-e/mh-comp.el b/lisp/mh-e/mh-comp.el
index ad80e3be838..7156b0cf318 100644
--- a/lisp/mh-e/mh-comp.el
+++ b/lisp/mh-e/mh-comp.el
@@ -53,6 +53,15 @@
53 "Name of the MH send program. 53 "Name of the MH send program.
54Some sites need to change this because of a name conflict.") 54Some sites need to change this because of a name conflict.")
55 55
56(defvar mh-send-uses-spost-flag nil
57 "Non-nil means \"send\" uses \"spost\" to submit messages.
58
59If the value of \"postproc:\" is \"spost\", you may need to set
60this variable to t to tell MH-E to avoid using features of
61\"post\" that are not supported by \"spost\". You'll know that
62you'll need to do this if sending mail fails with an error of
63\"spost: -msgid unknown\".")
64
56(defvar mh-redist-background nil 65(defvar mh-redist-background nil
57 "If non-nil redist will be done in background like send. 66 "If non-nil redist will be done in background like send.
58This allows transaction log to be visible if -watch, -verbose or 67This allows transaction log to be visible if -watch, -verbose or
@@ -267,16 +276,18 @@ use `mh-send-prog' to tell MH-E the name."
267 (and (boundp 'default-buffer-file-coding-system ) 276 (and (boundp 'default-buffer-file-coding-system )
268 default-buffer-file-coding-system) 277 default-buffer-file-coding-system)
269 'iso-latin-1)))) 278 'iso-latin-1))))
270 ;; Adding a Message-ID field looks good, makes it easier to search for 279 ;; Older versions of spost do not support -msgid and -mime.
271 ;; message in your +outbox, and best of all doesn't break threading for 280 (unless mh-send-uses-spost-flag
272 ;; the recipient if you reply to a message in your +outbox. 281 ;; Adding a Message-ID field looks good, makes it easier to search for
273 (setq mh-send-args (concat "-msgid " mh-send-args)) 282 ;; message in your +outbox, and best of all doesn't break threading for
274 ;; The default BCC encapsulation will make a MIME message unreadable. 283 ;; the recipient if you reply to a message in your +outbox.
275 ;; With nmh use the -mime arg to prevent this. 284 (setq mh-send-args (concat "-msgid " mh-send-args))
276 (if (and (mh-variant-p 'nmh) 285 ;; The default BCC encapsulation will make a MIME message unreadable.
277 (mh-goto-header-field "Bcc:") 286 ;; With nmh use the -mime arg to prevent this.
278 (mh-goto-header-field "Content-Type:")) 287 (if (and (mh-variant-p 'nmh)
279 (setq mh-send-args (concat "-mime " mh-send-args))) 288 (mh-goto-header-field "Bcc:")
289 (mh-goto-header-field "Content-Type:"))
290 (setq mh-send-args (concat "-mime " mh-send-args))))
280 (cond (arg 291 (cond (arg
281 (pop-to-buffer mh-mail-delivery-buffer) 292 (pop-to-buffer mh-mail-delivery-buffer)
282 (erase-buffer) 293 (erase-buffer)
diff --git a/lisp/mh-e/mh-search.el b/lisp/mh-e/mh-search.el
index b6f8dd71d9a..62c130bb90f 100644
--- a/lisp/mh-e/mh-search.el
+++ b/lisp/mh-e/mh-search.el
@@ -1537,7 +1537,7 @@ If folder NAME already exists and was generated for the same
1537SEARCH-REGEXP then it is reused. 1537SEARCH-REGEXP then it is reused.
1538 1538
1539Otherwise if the folder NAME was generated from a different 1539Otherwise if the folder NAME was generated from a different
1540search then check if NAME<2> can be used. Otherwise try NAME<3>. 1540search then check if NAME-2 can be used. Otherwise try NAME-3.
1541This is repeated till we find a new folder name. 1541This is repeated till we find a new folder name.
1542 1542
1543If the folder returned doesn't exist then it is created." 1543If the folder returned doesn't exist then it is created."
@@ -1545,7 +1545,7 @@ If the folder returned doesn't exist then it is created."
1545 (error "The argument should be a valid MH folder name")) 1545 (error "The argument should be a valid MH folder name"))
1546 (let ((chosen-name 1546 (let ((chosen-name
1547 (loop for i from 1 1547 (loop for i from 1
1548 for candidate = (if (equal i 1) name (format "%s<%s>" name i)) 1548 for candidate = (if (equal i 1) name (format "%s-%s" name i))
1549 when (or (not (mh-folder-exists-p candidate)) 1549 when (or (not (mh-folder-exists-p candidate))
1550 (equal (mh-index-folder-search-regexp candidate) 1550 (equal (mh-index-folder-search-regexp candidate)
1551 search-regexp)) 1551 search-regexp))
diff --git a/lisp/net/ldap.el b/lisp/net/ldap.el
index 180e14fcc20..2a63615a602 100644
--- a/lisp/net/ldap.el
+++ b/lisp/net/ldap.el
@@ -154,7 +154,7 @@ Valid properties include:
154 :type '(string :tag "`ldapsearch' Program") 154 :type '(string :tag "`ldapsearch' Program")
155 :group 'ldap) 155 :group 'ldap)
156 156
157(defcustom ldap-ldapsearch-args '("-LL" "-tt" "-x") 157(defcustom ldap-ldapsearch-args '("-LL" "-tt")
158 "*A list of additional arguments to pass to `ldapsearch'." 158 "*A list of additional arguments to pass to `ldapsearch'."
159 :type '(repeat :tag "`ldapsearch' Arguments" 159 :type '(repeat :tag "`ldapsearch' Arguments"
160 (string :tag "Argument")) 160 (string :tag "Argument"))
@@ -555,7 +555,7 @@ an alist of attribute/value pairs."
555 (setq arglist (nconc arglist (list (format "-z%s" sizelimit))))) 555 (setq arglist (nconc arglist (list (format "-z%s" sizelimit)))))
556 (eval `(call-process ldap-ldapsearch-prog 556 (eval `(call-process ldap-ldapsearch-prog
557 nil 557 nil
558 `(,buf nil) 558 buf
559 nil 559 nil
560 ,@arglist 560 ,@arglist
561 ,@ldap-ldapsearch-args 561 ,@ldap-ldapsearch-args
@@ -580,7 +580,7 @@ an alist of attribute/value pairs."
580 (end-of-line) 580 (end-of-line)
581 (point)))) 581 (point))))
582 (forward-line 1) 582 (forward-line 1)
583 (while (looking-at "^\\(\\w*\\)\\(;\\w*\\)?[=:\t ]+\\(<[\t ]*file://\\)?\\(.*\\)$") 583 (while (looking-at "^\\(\\w*\\)\\(;\\w*\\)?[=:\t ]+\\(<[\t ]*file://\\)\\(.*\\)$")
584 (setq name (match-string 1) 584 (setq name (match-string 1)
585 value (match-string 4)) 585 value (match-string 4))
586 ;; Need to handle file:///D:/... as generated by OpenLDAP 586 ;; Need to handle file:///D:/... as generated by OpenLDAP
diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el
index 2ebc4d0b45e..c4166bb6d24 100644
--- a/lisp/net/tramp.el
+++ b/lisp/net/tramp.el
@@ -5017,15 +5017,16 @@ hosts, or files, disagree."
5017(defun tramp-touch (file time) 5017(defun tramp-touch (file time)
5018 "Set the last-modified timestamp of the given file. 5018 "Set the last-modified timestamp of the given file.
5019TIME is an Emacs internal time value as returned by `current-time'." 5019TIME is an Emacs internal time value as returned by `current-time'."
5020 (let ((touch-time (format-time-string "%Y%m%d%H%M.%S" time))) 5020 (let ((touch-time (format-time-string "%Y%m%d%H%M.%S" time t)))
5021 (if (tramp-tramp-file-p file) 5021 (if (tramp-tramp-file-p file)
5022 (with-parsed-tramp-file-name file nil 5022 (with-parsed-tramp-file-name file nil
5023 (let ((buf (tramp-get-buffer multi-method method user host))) 5023 (let ((buf (tramp-get-buffer multi-method method user host)))
5024 (unless (zerop (tramp-send-command-and-check 5024 (unless (zerop (tramp-send-command-and-check
5025 multi-method method user host 5025 multi-method method user host
5026 (format "touch -t %s %s" 5026 (format "TZ=UTC; export TZ; touch -t %s %s"
5027 touch-time 5027 touch-time
5028 localname))) 5028 localname)
5029 t))
5029 (pop-to-buffer buf) 5030 (pop-to-buffer buf)
5030 (error "tramp-touch: touch failed, see buffer `%s' for details" 5031 (error "tramp-touch: touch failed, see buffer `%s' for details"
5031 buf)))) 5032 buf))))
diff --git a/lisp/obsolete/options.el b/lisp/obsolete/options.el
index 1383666a9b1..968a0bac5f6 100644
--- a/lisp/obsolete/options.el
+++ b/lisp/obsolete/options.el
@@ -41,6 +41,8 @@ It is now better to use Customize instead."
41 (interactive) 41 (interactive)
42 (with-output-to-temp-buffer "*List Options*" 42 (with-output-to-temp-buffer "*List Options*"
43 (let (vars) 43 (let (vars)
44 (princ "This facility is obsolete; we recommend using M-x customize instead.")
45
44 (mapatoms (function (lambda (sym) 46 (mapatoms (function (lambda (sym)
45 (if (user-variable-p sym) 47 (if (user-variable-p sym)
46 (setq vars (cons sym vars)))))) 48 (setq vars (cons sym vars))))))
diff --git a/lisp/pcvs.el b/lisp/pcvs.el
index 5e322b9276a..89aeef53b80 100644
--- a/lisp/pcvs.el
+++ b/lisp/pcvs.el
@@ -1723,16 +1723,22 @@ Signal an error if there is no backup file."
1723 (message "Retrieving revision %s..." rev) 1723 (message "Retrieving revision %s..." rev)
1724 ;; Discard stderr output to work around the CVS+SSH+libc 1724 ;; Discard stderr output to work around the CVS+SSH+libc
1725 ;; problem when stdout and stderr are the same. 1725 ;; problem when stdout and stderr are the same.
1726 (let ((res (apply 'call-process cvs-program nil '(t nil) nil 1726 (let ((res
1727 "-q" "update" "-p" 1727 (let ((coding-system-for-read 'binary))
1728 ;; If `rev' is HEAD, don't pass it at all: 1728 (apply 'call-process cvs-program nil '(t nil) nil
1729 ;; the default behavior is to get the head 1729 "-q" "update" "-p"
1730 ;; of the current branch whereas "-r HEAD" 1730 ;; If `rev' is HEAD, don't pass it at all:
1731 ;; stupidly gives you the head of the trunk. 1731 ;; the default behavior is to get the head
1732 (append (unless (equal rev "HEAD") (list "-r" rev)) 1732 ;; of the current branch whereas "-r HEAD"
1733 (list file))))) 1733 ;; stupidly gives you the head of the trunk.
1734 (append (unless (equal rev "HEAD") (list "-r" rev))
1735 (list file))))))
1734 (when (and res (not (and (equal 0 res)))) 1736 (when (and res (not (and (equal 0 res))))
1735 (error "Something went wrong retrieving revision %s: %s" rev res)) 1737 (error "Something went wrong retrieving revision %s: %s" rev res))
1738 ;; Figure out the encoding used and decode the byte-sequence
1739 ;; into a sequence of chars.
1740 (decode-coding-inserted-region
1741 (point-min) (point-max) file t nil nil t)
1736 (set-buffer-modified-p nil) 1742 (set-buffer-modified-p nil)
1737 (let ((buffer-file-name (expand-file-name file))) 1743 (let ((buffer-file-name (expand-file-name file)))
1738 (after-find-file)) 1744 (after-find-file))
diff --git a/lisp/play/pong.el b/lisp/play/pong.el
index d73d789d0d3..4efa8c2a639 100644
--- a/lisp/play/pong.el
+++ b/lisp/play/pong.el
@@ -244,7 +244,7 @@
244 244
245 (gamegrid-init-buffer pong-width 245 (gamegrid-init-buffer pong-width
246 (+ 2 pong-height) 246 (+ 2 pong-height)
247 1) 247 ?\s)
248 248
249 (let ((buffer-read-only nil)) 249 (let ((buffer-read-only nil))
250 (loop for y from 0 to (1- pong-height) do 250 (loop for y from 0 to (1- pong-height) do
diff --git a/lisp/progmodes/cperl-mode.el b/lisp/progmodes/cperl-mode.el
index 36f75b757b5..ad44753f352 100644
--- a/lisp/progmodes/cperl-mode.el
+++ b/lisp/progmodes/cperl-mode.el
@@ -6298,7 +6298,7 @@ $^E Information about the last system error other than that provided by $!.
6298$^F The highest system file descriptor, ordinarily 2. 6298$^F The highest system file descriptor, ordinarily 2.
6299$^H The current set of syntax checks enabled by `use strict'. 6299$^H The current set of syntax checks enabled by `use strict'.
6300$^I The value of the in-place edit extension (perl -i option). 6300$^I The value of the in-place edit extension (perl -i option).
6301$^L What formats output to perform a formfeed. Default is \f. 6301$^L What formats output to perform a formfeed. Default is \\f.
6302$^M A buffer for emergency memory allocation when running out of memory. 6302$^M A buffer for emergency memory allocation when running out of memory.
6303$^O The operating system name under which this copy of Perl was built. 6303$^O The operating system name under which this copy of Perl was built.
6304$^P Internal debugging flag. 6304$^P Internal debugging flag.
@@ -6380,11 +6380,11 @@ $~ The name of the current report format.
6380@ARGV Command line arguments (not including the command name - see $0). 6380@ARGV Command line arguments (not including the command name - see $0).
6381@INC List of places to look for perl scripts during do/include/use. 6381@INC List of places to look for perl scripts during do/include/use.
6382@_ Parameter array for subroutines; result of split() unless in list context. 6382@_ Parameter array for subroutines; result of split() unless in list context.
6383\\ Creates reference to what follows, like \$var, or quotes non-\w in strings. 6383\\ Creates reference to what follows, like \\$var, or quotes non-\\w in strings.
6384\\0 Octal char, e.g. \\033. 6384\\0 Octal char, e.g. \\033.
6385\\E Case modification terminator. See \\Q, \\L, and \\U. 6385\\E Case modification terminator. See \\Q, \\L, and \\U.
6386\\L Lowercase until \\E . See also \l, lc. 6386\\L Lowercase until \\E . See also \\l, lc.
6387\\U Upcase until \\E . See also \u, uc. 6387\\U Upcase until \\E . See also \\u, uc.
6388\\Q Quote metacharacters until \\E . See also quotemeta. 6388\\Q Quote metacharacters until \\E . See also quotemeta.
6389\\a Alarm character (octal 007). 6389\\a Alarm character (octal 007).
6390\\b Backspace character (octal 010). 6390\\b Backspace character (octal 010).
@@ -6655,7 +6655,7 @@ ucfirst [ EXPR ] Returns EXPR with upcased first letter.
6655untie VAR Unlink an object from a simple Perl variable. 6655untie VAR Unlink an object from a simple Perl variable.
6656use PACKAGE [SYMBOL1, ...] Compile-time `require' with consequent `import'. 6656use PACKAGE [SYMBOL1, ...] Compile-time `require' with consequent `import'.
6657... xor ... Low-precedence synonym for exclusive or. 6657... xor ... Low-precedence synonym for exclusive or.
6658prototype \&SUB Returns prototype of the function given a reference. 6658prototype \\&SUB Returns prototype of the function given a reference.
6659=head1 Top-level heading. 6659=head1 Top-level heading.
6660=head2 Second-level heading. 6660=head2 Second-level heading.
6661=head3 Third-level heading (is there such?). 6661=head3 Third-level heading (is there such?).
diff --git a/lisp/progmodes/gdb-ui.el b/lisp/progmodes/gdb-ui.el
index 0f92523e306..f3144cbb84a 100644
--- a/lisp/progmodes/gdb-ui.el
+++ b/lisp/progmodes/gdb-ui.el
@@ -76,6 +76,9 @@
76;; 3) M-x gdb doesn't work with "run" command in .gdbinit, use M-x gdba instead. 76;; 3) M-x gdb doesn't work with "run" command in .gdbinit, use M-x gdba instead.
77;; 4) M-x gdb doesn't work if the corefile is specified in the command in the 77;; 4) M-x gdb doesn't work if the corefile is specified in the command in the
78;; minibuffer, use M-x gdba instead (or specify the core in the GUD buffer). 78;; minibuffer, use M-x gdba instead (or specify the core in the GUD buffer).
79;; 5) If you wish to call procedures from your program in GDB
80;; e.g "call myproc ()", "p mysquare (5)" then use level 2 annotations
81;; "gdb --annotate=2 myprog" to keep source buffer/selected frame fixed.
79 82
80;;; Problems with watch expressions, GDB/MI: 83;;; Problems with watch expressions, GDB/MI:
81;; 1) They go out of scope when the inferior is re-run. 84;; 1) They go out of scope when the inferior is re-run.
@@ -110,6 +113,7 @@ Each element has the form (VARNUM EXPRESSION NUMCHILD TYPE VALUE STATUS FP)
110where STATUS is nil (unchanged), `changed' or `out-of-scope', FP the frame 113where STATUS is nil (unchanged), `changed' or `out-of-scope', FP the frame
111address for root variables.") 114address for root variables.")
112(defvar gdb-main-file nil "Source file from which program execution begins.") 115(defvar gdb-main-file nil "Source file from which program execution begins.")
116(defvar gud-old-arrow nil)
113(defvar gdb-overlay-arrow-position nil) 117(defvar gdb-overlay-arrow-position nil)
114(defvar gdb-server-prefix nil) 118(defvar gdb-server-prefix nil)
115(defvar gdb-flush-pending-output nil) 119(defvar gdb-flush-pending-output nil)
@@ -126,6 +130,9 @@ and #define directives otherwise.")
126(defvar gdb-inferior-status nil) 130(defvar gdb-inferior-status nil)
127(defvar gdb-continuation nil) 131(defvar gdb-continuation nil)
128(defvar gdb-look-up-stack nil) 132(defvar gdb-look-up-stack nil)
133(defvar gdb-frame-begin nil
134 "Non-nil when GDB generates frame-begin annotation.")
135(defvar gdb-printing t)
129 136
130(defvar gdb-buffer-type nil 137(defvar gdb-buffer-type nil
131 "One of the symbols bound in `gdb-buffer-rules'.") 138 "One of the symbols bound in `gdb-buffer-rules'.")
@@ -426,7 +433,8 @@ With arg, use separate IO iff arg is positive."
426 (when gud-tooltip-mode 433 (when gud-tooltip-mode
427 (make-local-variable 'gdb-define-alist) 434 (make-local-variable 'gdb-define-alist)
428 (gdb-create-define-alist) 435 (gdb-create-define-alist)
429 (add-hook 'after-save-hook 'gdb-create-define-alist nil t))))))) 436 (add-hook 'after-save-hook 'gdb-create-define-alist nil t))))))
437 (gdb-force-mode-line-update "ready"))
430 438
431(defun gdb-find-watch-expression () 439(defun gdb-find-watch-expression ()
432 (let* ((var (nth (- (line-number-at-pos (point)) 2) gdb-var-list)) 440 (let* ((var (nth (- (line-number-at-pos (point)) 2) gdb-var-list))
@@ -542,7 +550,10 @@ With arg, use separate IO iff arg is positive."
542 gdb-source-window nil 550 gdb-source-window nil
543 gdb-inferior-status nil 551 gdb-inferior-status nil
544 gdb-continuation nil 552 gdb-continuation nil
545 gdb-look-up-stack nil) 553 gdb-look-up-stack nil
554 gdb-frame-begin nil
555 gdb-printing t
556 gud-old-arrow nil)
546 557
547 (setq gdb-buffer-type 'gdba) 558 (setq gdb-buffer-type 'gdba)
548 559
@@ -1238,6 +1249,7 @@ happens to be in effect."
1238 "An annotation handler for `prompt'. 1249 "An annotation handler for `prompt'.
1239This sends the next command (if any) to gdb." 1250This sends the next command (if any) to gdb."
1240 (when gdb-first-prompt 1251 (when gdb-first-prompt
1252 (gdb-force-mode-line-update "initializing...")
1241 (gdb-init-1) 1253 (gdb-init-1)
1242 (setq gdb-first-prompt nil)) 1254 (setq gdb-first-prompt nil))
1243 (let ((sink gdb-output-sink)) 1255 (let ((sink gdb-output-sink))
@@ -1268,6 +1280,7 @@ This sends the next command (if any) to gdb."
1268This says that I/O for the subprocess is now the program being debugged, 1280This says that I/O for the subprocess is now the program being debugged,
1269not GDB." 1281not GDB."
1270 (setq gdb-active-process t) 1282 (setq gdb-active-process t)
1283 (setq gdb-printing t)
1271 (let ((sink gdb-output-sink)) 1284 (let ((sink gdb-output-sink))
1272 (cond 1285 (cond
1273 ((eq sink 'user) 1286 ((eq sink 'user)
@@ -1276,6 +1289,7 @@ not GDB."
1276 (setq gdb-inferior-status "running") 1289 (setq gdb-inferior-status "running")
1277 (gdb-force-mode-line-update gdb-inferior-status) 1290 (gdb-force-mode-line-update gdb-inferior-status)
1278 (gdb-remove-text-properties) 1291 (gdb-remove-text-properties)
1292 (setq gud-old-arrow gud-overlay-arrow-position)
1279 (setq gud-overlay-arrow-position nil) 1293 (setq gud-overlay-arrow-position nil)
1280 (setq gdb-overlay-arrow-position nil) 1294 (setq gdb-overlay-arrow-position nil)
1281 (if gdb-use-separate-io-buffer 1295 (if gdb-use-separate-io-buffer
@@ -1319,6 +1333,8 @@ directives."
1319 (setq gdb-signalled t)) 1333 (setq gdb-signalled t))
1320 1334
1321(defun gdb-frame-begin (ignored) 1335(defun gdb-frame-begin (ignored)
1336 (setq gdb-frame-begin t)
1337 (setq gdb-printing nil)
1322 (let ((sink gdb-output-sink)) 1338 (let ((sink gdb-output-sink))
1323 (cond 1339 (cond
1324 ((eq sink 'inferior) 1340 ((eq sink 'inferior)
@@ -1329,25 +1345,33 @@ directives."
1329 (gdb-resync) 1345 (gdb-resync)
1330 (error "Unexpected frame-begin annotation (%S)" sink))))) 1346 (error "Unexpected frame-begin annotation (%S)" sink)))))
1331 1347
1348(defcustom gdb-same-frame focus-follows-mouse
1349 "Non-nil means pop up GUD buffer in same frame."
1350 :group 'gud
1351 :type 'boolean
1352 :version "22.1")
1353
1332(defun gdb-stopped (ignored) 1354(defun gdb-stopped (ignored)
1333 "An annotation handler for `stopped'. 1355 "An annotation handler for `stopped'.
1334It is just like `gdb-stopping', except that if we already set the output 1356It is just like `gdb-stopping', except that if we already set the output
1335sink to `user' in `gdb-stopping', that is fine." 1357sink to `user' in `gdb-stopping', that is fine."
1336 (setq gud-running nil) 1358 (setq gud-running nil)
1337 (unless (or gud-overlay-arrow-position gud-last-frame) 1359 (unless (or gud-overlay-arrow-position gud-last-frame)
1360 (if (and gdb-frame-begin gdb-printing)
1361 (setq gud-overlay-arrow-position gud-old-arrow)
1338 ;;Pop up GUD buffer to display current frame when it doesn't have source 1362 ;;Pop up GUD buffer to display current frame when it doesn't have source
1339 ;;information i.e id not compiled with -g as with libc routines generally. 1363 ;;information i.e id not compiled with -g as with libc routines generally.
1340 (let ((special-display-regexps (append special-display-regexps '(".*"))) 1364 (if gdb-same-frame
1341 (special-display-frame-alist gdb-frame-parameters) 1365 (gdb-display-gdb-buffer)
1342 (same-window-regexps nil)) 1366 (gdb-frame-gdb-buffer))
1343 (display-buffer gud-comint-buffer))
1344 ;;Try to find source further up stack e.g after signal. 1367 ;;Try to find source further up stack e.g after signal.
1345 (setq gdb-look-up-stack 1368 (setq gdb-look-up-stack
1346 (if (gdb-get-buffer 'gdb-stack-buffer) 'keep 1369 (if (gdb-get-buffer 'gdb-stack-buffer)
1370 'keep
1347 (progn 1371 (progn
1348 (gdb-get-buffer-create 'gdb-stack-buffer) 1372 (gdb-get-buffer-create 'gdb-stack-buffer)
1349 (gdb-invalidate-frames) 1373 (gdb-invalidate-frames)
1350 'delete)))) 1374 'delete)))))
1351 (unless (member gdb-inferior-status '("exited" "signal")) 1375 (unless (member gdb-inferior-status '("exited" "signal"))
1352 (setq gdb-inferior-status "stopped") 1376 (setq gdb-inferior-status "stopped")
1353 (gdb-force-mode-line-update gdb-inferior-status)) 1377 (gdb-force-mode-line-update gdb-inferior-status))
@@ -2755,7 +2779,9 @@ corresponding to the mode line clicked."
2755 "Display GUD buffer in a new frame." 2779 "Display GUD buffer in a new frame."
2756 (interactive) 2780 (interactive)
2757 (let ((special-display-regexps (append special-display-regexps '(".*"))) 2781 (let ((special-display-regexps (append special-display-regexps '(".*")))
2758 (special-display-frame-alist gdb-frame-parameters) 2782 (special-display-frame-alist
2783 (remove '(menu-bar-lines) (remove '(tool-bar-lines)
2784 gdb-frame-parameters)))
2759 (same-window-regexps nil)) 2785 (same-window-regexps nil))
2760 (display-buffer gud-comint-buffer))) 2786 (display-buffer gud-comint-buffer)))
2761 2787
@@ -3239,7 +3265,8 @@ is set in them."
3239 (when gud-tooltip-mode 3265 (when gud-tooltip-mode
3240 (make-local-variable 'gdb-define-alist) 3266 (make-local-variable 'gdb-define-alist)
3241 (gdb-create-define-alist) 3267 (gdb-create-define-alist)
3242 (add-hook 'after-save-hook 'gdb-create-define-alist nil t)))))) 3268 (add-hook 'after-save-hook 'gdb-create-define-alist nil t)))))
3269 (gdb-force-mode-line-update "ready"))
3243 3270
3244; Uses "-var-list-children --all-values". Needs GDB 6.1 onwards. 3271; Uses "-var-list-children --all-values". Needs GDB 6.1 onwards.
3245(defun gdb-var-list-children-1 (varnum) 3272(defun gdb-var-list-children-1 (varnum)
diff --git a/lisp/progmodes/make-mode.el b/lisp/progmodes/make-mode.el
index d22aedb6058..a3146df3e45 100644
--- a/lisp/progmodes/make-mode.el
+++ b/lisp/progmodes/make-mode.el
@@ -1304,7 +1304,7 @@ definition and conveniently use this command."
1304 (save-excursion 1304 (save-excursion
1305 (beginning-of-line) 1305 (beginning-of-line)
1306 (cond 1306 (cond
1307 ((looking-at "^#+") 1307 ((looking-at "^#+\\s-*")
1308 ;; Found a comment. Return nil to let normal filling take place. 1308 ;; Found a comment. Return nil to let normal filling take place.
1309 nil) 1309 nil)
1310 1310
diff --git a/lisp/server.el b/lisp/server.el
index d20caf34f79..266d9d7824f 100644
--- a/lisp/server.el
+++ b/lisp/server.el
@@ -576,11 +576,13 @@ which filenames are considered temporary.
576If invoked with a prefix argument, or if there is no server process running, 576If invoked with a prefix argument, or if there is no server process running,
577starts server process and that is all. Invoked by \\[server-edit]." 577starts server process and that is all. Invoked by \\[server-edit]."
578 (interactive "P") 578 (interactive "P")
579 (if (or arg 579 (cond
580 (not server-process) 580 ((or arg
581 (memq (process-status server-process) '(signal exit))) 581 (not server-process)
582 (server-mode 1) 582 (memq (process-status server-process) '(signal exit)))
583 (apply 'server-switch-buffer (server-done)))) 583 (server-mode 1))
584 (server-clients (apply 'server-switch-buffer (server-done)))
585 (t (message "No server editing buffers exist"))))
584 586
585(defun server-switch-buffer (&optional next-buffer killed-one) 587(defun server-switch-buffer (&optional next-buffer killed-one)
586 "Switch to another buffer, preferably one that has a client. 588 "Switch to another buffer, preferably one that has a client.
diff --git a/lisp/term.el b/lisp/term.el
index 9ecb1efa948..cdaa72b7d94 100644
--- a/lisp/term.el
+++ b/lisp/term.el
@@ -3611,7 +3611,7 @@ all pending output has been dealt with."))
3611 (progn 3611 (progn
3612 ;; Delete scroll-needed lines at term-scroll-end, 3612 ;; Delete scroll-needed lines at term-scroll-end,
3613 ;; then insert scroll-needed lines. 3613 ;; then insert scroll-needed lines.
3614 (term-vertical-motion (1- term-scroll-end)) 3614 (term-vertical-motion term-scroll-end)
3615 (end-of-line) 3615 (end-of-line)
3616 (setq save-top (point)) 3616 (setq save-top (point))
3617 (term-vertical-motion scroll-needed) 3617 (term-vertical-motion scroll-needed)
@@ -3765,11 +3765,12 @@ Should only be called when point is at the start of a screen line."
3765 (save-current-column term-current-column) 3765 (save-current-column term-current-column)
3766 (save-start-line-column term-start-line-column) 3766 (save-start-line-column term-start-line-column)
3767 (save-current-row (term-current-row))) 3767 (save-current-row (term-current-row)))
3768 (when (>= (+ save-current-row lines) term-scroll-end) 3768 ;; The number of inserted lines shouldn't exceed the scroll region end.
3769 (setq lines (- lines (- (+ save-current-row lines) term-scroll-end)))) 3769 (when (> (+ save-current-row lines) (1+ term-scroll-end))
3770 (setq lines (- lines (- (+ save-current-row lines) (1+ term-scroll-end)))))
3770 (term-down lines) 3771 (term-down lines)
3771 (delete-region start (point)) 3772 (delete-region start (point))
3772 (term-down (- term-scroll-end save-current-row lines)) 3773 (term-down (- (1+ term-scroll-end) save-current-row lines))
3773 (term-insert-char ?\n lines) 3774 (term-insert-char ?\n lines)
3774 (setq term-current-column save-current-column) 3775 (setq term-current-column save-current-column)
3775 (setq term-start-line-column save-start-line-column) 3776 (setq term-start-line-column save-start-line-column)
@@ -3790,9 +3791,9 @@ Should only be called when point is at the start of a screen line."
3790 (term-down (- term-scroll-start save-current-row)) 3791 (term-down (- term-scroll-start save-current-row))
3791 (setq start (point))) 3792 (setq start (point)))
3792 ;; The number of inserted lines shouldn't exceed the scroll region end. 3793 ;; The number of inserted lines shouldn't exceed the scroll region end.
3793 (when (>= (+ save-current-row lines) term-scroll-end) 3794 (when (> (+ save-current-row lines) (1+ term-scroll-end))
3794 (setq lines (- lines (- (+ save-current-row lines) term-scroll-end)))) 3795 (setq lines (- lines (- (+ save-current-row lines)(1+ term-scroll-end)))))
3795 (term-down (- term-scroll-end save-current-row lines))) 3796 (term-down (- (1+ term-scroll-end) save-current-row lines)))
3796 (setq start-deleted (point)) 3797 (setq start-deleted (point))
3797 (term-down lines) 3798 (term-down lines)
3798 (delete-region start-deleted (point)) 3799 (delete-region start-deleted (point))
diff --git a/lisp/term/mac-win.el b/lisp/term/mac-win.el
index b5dc01ff9bf..9843d984e34 100644
--- a/lisp/term/mac-win.el
+++ b/lisp/term/mac-win.el
@@ -1299,6 +1299,9 @@ correspoinding TextEncodingBase value."
1299 1299
1300;;;; Conversion between common flavors and Lisp string. 1300;;;; Conversion between common flavors and Lisp string.
1301 1301
1302(defconst mac-text-encoding-ascii #x600
1303 "ASCII text encoding.")
1304
1302(defconst mac-text-encoding-mac-japanese-basic-variant #x20001 1305(defconst mac-text-encoding-mac-japanese-basic-variant #x20001
1303 "MacJapanese text encoding without Apple double-byte extensions.") 1306 "MacJapanese text encoding without Apple double-byte extensions.")
1304 1307
@@ -1319,7 +1322,7 @@ correspoinding TextEncodingBase value."
1319 (if (string-match "[\xa0\xfd-\xff]" str) 1322 (if (string-match "[\xa0\xfd-\xff]" str)
1320 (setq str nil) 1323 (setq str nil)
1321 ;; ASCII-only? 1324 ;; ASCII-only?
1322 (unless (string-match "\\`[[:ascii:]]*\\'" str) 1325 (unless (mac-code-convert-string data nil mac-text-encoding-ascii)
1323 (subst-char-in-string ?\x5c ?\Â¥ str t) 1326 (subst-char-in-string ?\x5c ?\Â¥ str t)
1324 (subst-char-in-string ?\x80 ?\\ str t))))) 1327 (subst-char-in-string ?\x80 ?\\ str t)))))
1325 (or str 1328 (or str
@@ -2015,8 +2018,7 @@ either in the current buffer or in the echo area."
2015 (coding (or (cdr (assq (car script-language) 2018 (coding (or (cdr (assq (car script-language)
2016 mac-script-code-coding-systems)) 2019 mac-script-code-coding-systems))
2017 'mac-roman)) 2020 'mac-roman))
2018 (fix-len (mac-bytes-to-integer 2021 (fix-len (mac-ae-number ae "tsfx"))
2019 (cdr (mac-ae-parameter ae "tsfx" "long"))))
2020 ;; Optional parameters 2022 ;; Optional parameters
2021 (hilite-rng (mac-ae-text-range-array ae "tshi")) 2023 (hilite-rng (mac-ae-text-range-array ae "tshi"))
2022 (update-rng (mac-ae-text-range-array ae "tsup")) 2024 (update-rng (mac-ae-text-range-array ae "tsup"))
@@ -2058,15 +2060,15 @@ either in the current buffer or in the echo area."
2058 (put-text-property 0 (length active-input-string) 2060 (put-text-property 0 (length active-input-string)
2059 'mac-ts-active-input-string t active-input-string) 2061 'mac-ts-active-input-string t active-input-string)
2060 (if use-echo-area 2062 (if use-echo-area
2061 (let (msg message-log-max) 2063 (let ((msg (current-message))
2062 (if (and (current-message) 2064 message-log-max)
2065 (if (and msg
2063 ;; Don't get confused by previously displayed 2066 ;; Don't get confused by previously displayed
2064 ;; `active-input-string'. 2067 ;; `active-input-string'.
2065 (null (get-text-property 0 'mac-ts-active-input-string 2068 (null (get-text-property 0 'mac-ts-active-input-string
2066 (current-message)))) 2069 msg)))
2067 (setq msg (propertize (current-message) 'display 2070 (setq msg (propertize msg 'display
2068 (concat (current-message) 2071 (concat msg active-input-string)))
2069 active-input-string)))
2070 (setq msg active-input-string)) 2072 (setq msg active-input-string))
2071 (message "%s" msg) 2073 (message "%s" msg)
2072 (overlay-put mac-ts-active-input-overlay 'before-string nil)) 2074 (overlay-put mac-ts-active-input-overlay 'before-string nil))
diff --git a/lisp/textmodes/ispell.el b/lisp/textmodes/ispell.el
index 00a757d68bd..2efae381418 100644
--- a/lisp/textmodes/ispell.el
+++ b/lisp/textmodes/ispell.el
@@ -865,7 +865,7 @@ and added as a submenu of the \"Edit\" menu.")
865(defvar ispell-process nil 865(defvar ispell-process nil
866 "The process object for Ispell.") 866 "The process object for Ispell.")
867 867
868(defvar ispell-async-processp (and (fboundp 'kill-process) 868(defvar ispell-async-processp (and (fboundp 'delete-process)
869 (fboundp 'process-send-string) 869 (fboundp 'process-send-string)
870 (fboundp 'accept-process-output) 870 (fboundp 'accept-process-output)
871 ;;(fboundp 'start-process) 871 ;;(fboundp 'start-process)
@@ -2542,15 +2542,7 @@ With NO-ERROR, just return non-nil if there was no Ispell running."
2542 (or no-error 2542 (or no-error
2543 (error "There is no ispell process running!")) 2543 (error "There is no ispell process running!"))
2544 (if ispell-async-processp 2544 (if ispell-async-processp
2545 (progn 2545 (delete-process ispell-process)
2546 (process-send-eof ispell-process)
2547 (if (eq (ispell-process-status) 'run)
2548 (ispell-accept-output 1))
2549 (if (eq (ispell-process-status) 'run)
2550 (kill-process ispell-process))
2551 (while (not (or (eq (ispell-process-status) 'exit)
2552 (eq (ispell-process-status) 'signal)))
2553 (sleep-for 0.25)))
2554 ;; synchronous processes 2546 ;; synchronous processes
2555 (ispell-send-string "\n") ; make sure side effects occurred. 2547 (ispell-send-string "\n") ; make sure side effects occurred.
2556 (kill-buffer ispell-output-buffer) 2548 (kill-buffer ispell-output-buffer)
diff --git a/lisp/textmodes/org.el b/lisp/textmodes/org.el
index 853c28f5565..dd4dfc1a857 100644
--- a/lisp/textmodes/org.el
+++ b/lisp/textmodes/org.el
@@ -5,7 +5,7 @@
5;; Author: Carsten Dominik <dominik at science dot uva dot nl> 5;; Author: Carsten Dominik <dominik at science dot uva dot nl>
6;; Keywords: outlines, hypermedia, calendar, wp 6;; Keywords: outlines, hypermedia, calendar, wp
7;; Homepage: http://www.astro.uva.nl/~dominik/Tools/org/ 7;; Homepage: http://www.astro.uva.nl/~dominik/Tools/org/
8;; Version: 4.36 8;; Version: 4.36b
9;; 9;;
10;; This file is part of GNU Emacs. 10;; This file is part of GNU Emacs.
11;; 11;;
@@ -90,6 +90,10 @@
90;; 90;;
91;; Recent changes 91;; Recent changes
92;; -------------- 92;; --------------
93;; Version 4.37
94;; - Clock-feature for measuring time spent on specific items.
95;; - Improved emphasizing allows configuration and stacking.
96;;
93;; Version 4.36 97;; Version 4.36
94;; - Improved indentation of ASCII export, when headlines become items. 98;; - Improved indentation of ASCII export, when headlines become items.
95;; - Handling of 12am and 12pm fixed. Times beyond 24:00 can be used 99;; - Handling of 12am and 12pm fixed. Times beyond 24:00 can be used
@@ -122,7 +126,7 @@
122;; - All context-sensitive commands use `call-interactively' to dispatch. 126;; - All context-sensitive commands use `call-interactively' to dispatch.
123;; - `org-confirm-shell-links' renamed to `org-confirm-shell-link-function'. 127;; - `org-confirm-shell-links' renamed to `org-confirm-shell-link-function'.
124;; - Bug fixes. 128;; - Bug fixes.
125;; 129;;
126;; Version 4.31 130;; Version 4.31
127;; - Bug fixes. 131;; - Bug fixes.
128;; 132;;
@@ -163,7 +167,7 @@
163;; 167;;
164;;; Code: 168;;; Code:
165 169
166(eval-when-compile 170(eval-when-compile
167 (require 'cl) 171 (require 'cl)
168 (require 'calendar)) 172 (require 'calendar))
169(require 'outline) 173(require 'outline)
@@ -172,7 +176,7 @@
172 176
173;;; Customization variables 177;;; Customization variables
174 178
175(defvar org-version "4.36" 179(defvar org-version "4.36b"
176 "The version number of the file org.el.") 180 "The version number of the file org.el.")
177(defun org-version () 181(defun org-version ()
178 (interactive) 182 (interactive)
@@ -333,6 +337,11 @@ Changes become only effective after restarting Emacs."
333 :group 'org-keywords 337 :group 'org-keywords
334 :type 'string) 338 :type 'string)
335 339
340(defcustom org-clock-string "CLOCK:"
341 "String used as prefix for timestamps clocking work hours on an item."
342 :group 'org-keywords
343 :type 'string)
344
336(defcustom org-comment-string "COMMENT" 345(defcustom org-comment-string "COMMENT"
337 "Entries starting with this keyword will never be exported. 346 "Entries starting with this keyword will never be exported.
338An entry can be toggled between COMMENT and normal with 347An entry can be toggled between COMMENT and normal with
@@ -2134,6 +2143,95 @@ Changing this variable requires a restart of Emacs to take effect."
2134 :group 'org-font-lock 2143 :group 'org-font-lock
2135 :type 'boolean) 2144 :type 'boolean)
2136 2145
2146(defvar org-emph-re nil
2147 "Regular expression for matching emphasis.")
2148(defvar org-emphasis-regexp-components) ; defined just below
2149(defvar org-emphasis-alist) ; defined just below
2150(defun org-set-emph-re (var val)
2151 "Set variable and compute the emphasis regular expression."
2152 (set var val)
2153 (when (and (boundp 'org-emphasis-alist)
2154 (boundp 'org-emphasis-regexp-components)
2155 org-emphasis-alist org-emphasis-regexp-components)
2156 (let* ((e org-emphasis-regexp-components)
2157 (pre (car e))
2158 (post (nth 1 e))
2159 (border (nth 2 e))
2160 (body (nth 3 e))
2161 (nl (nth 4 e))
2162 (stacked (nth 5 e))
2163 (body1 (concat body "*?"))
2164 (markers (mapconcat 'car org-emphasis-alist "")))
2165 ;; make sure special characters appear at the right position in the class
2166 (if (string-match "\\^" markers)
2167 (setq markers (concat (replace-match "" t t markers) "^")))
2168 (if (string-match "-" markers)
2169 (setq markers (concat (replace-match "" t t markers) "-")))
2170 (while (>= (setq nl (1- nl)) 0) (setq body1 (concat body1 "\n?" body "*?")))
2171 ;; Make the regexp
2172 (setq org-emph-re
2173 (concat "\\([" pre (if stacked markers) "]\\|^\\)"
2174 "\\("
2175 "\\([" markers "]\\)"
2176 "\\("
2177 "[^" border markers "]"
2178 body1
2179 "[^" border markers "]"
2180 "\\)"
2181 "\\3\\)"
2182 "\\([" post (if stacked markers) "]\\|$\\)")))))
2183
2184(defcustom org-emphasis-regexp-components
2185 '(" \t(" " \t.,?;:'\")" " \t\r\n,." "." 1 nil)
2186 "Components used to build the reqular expression for emphasis.
2187This is a list with 6 entries. Terminology: In an emphasis string
2188like \" *strong word* \", we call the initial space PREMATCH, the final
2189space POSTMATCH, the stars MARKERS, \"s\" and \"d\" are BORDER characters
2190and \"trong wor\" is the body. The different components in this variable
2191specify what is allowed/forbidden in each part:
2192
2193pre Chars allowed as prematch. Beginning of line will be allowed too.
2194post Chars allowed as postmatch. End of line will be allowed too.
2195border The chars *forbidden* as border characters. In addition to the
2196 characters given here, all marker characters are forbidden too.
2197body-regexp A regexp like \".\" to match a body character. Don't use
2198 non-shy groups here, and don't allow newline here.
2199newline The maximum number of newlines allowed in an emphasis exp.
2200stacked Non-nil means, allow stacked styles. This works only in HTML
2201 export. When this is set, all marker characters (as given in
2202 `org-emphasis-alist') will be allowed as pre/post, aiding
2203 inside-out matching.
2204Use customize to modify this, or restart emacs after changing it."
2205 :group 'org-fixme
2206 :set 'org-set-emph-re
2207 :type '(list
2208 (sexp :tag "Allowed chars in pre ")
2209 (sexp :tag "Allowed chars in post ")
2210 (sexp :tag "Forbidden chars in border ")
2211 (sexp :tag "Regexp for body ")
2212 (integer :tag "number of newlines allowed")
2213 (boolean :tag "Stacking allowed ")))
2214
2215(defcustom org-emphasis-alist
2216 '(("*" bold "<b>" "</b>")
2217 ("/" italic "<i>" "</i>")
2218 ("_" underline "<u>" "</u>")
2219 ("=" shadow "<code>" "</code>"))
2220"Special syntax for emphasised text.
2221Text starting and ending with a special character will be emphasized, for
2222example *bold*, _underlined_ and /italic/. This variable sets the marker
2223characters, the face to bbe used by font-lock for highlighting in Org-mode
2224emacs buffers, and the HTML tags to be used for this.
2225Use customize to modify this, or restart emacs after changing it."
2226 :group 'org-fixme
2227 :set 'org-set-emph-re
2228 :type '(repeat
2229 (list
2230 (string :tag "Marker character")
2231 (face :tag "Font-lock-face")
2232 (string :tag "HTML start tag")
2233 (string :tag "HTML end tag"))))
2234
2137(defgroup org-faces nil 2235(defgroup org-faces nil
2138 "Faces in Org-mode." 2236 "Faces in Org-mode."
2139 :tag "Org Faces" 2237 :tag "Org Faces"
@@ -2374,21 +2472,6 @@ This face is only used if `org-fontify-done-headline' is set."
2374 )) 2472 ))
2375(defconst org-n-levels (length org-level-faces)) 2473(defconst org-n-levels (length org-level-faces))
2376 2474
2377(defconst org-bold-re
2378 (if (featurep 'xemacs)
2379 "\\([ ]\\|^\\)\\(\\*\\(\\w[a-zA-Z0-9-_ ]*?\\w\\)\\*\\)\\([ ,.]\\|$\\)"
2380 "\\([ ]\\|^\\)\\(\\*\\(\\w[[:word:] -_]*?\\w\\)\\*\\)\\([ ,.]\\|$\\)")
2381 "Regular expression for bold emphasis.")
2382(defconst org-italic-re
2383 (if (featurep 'xemacs)
2384 "\\([ ]\\|^\\)\\(/\\(\\w[a-zA-Z0-9-_ ]*?\\w\\)/\\)\\([ ,.]\\|$\\)"
2385 "\\([ ]\\|^\\)\\(/\\(\\w[[:word:] -_]*?\\w\\)/\\)\\([ ,.]\\|$\\)")
2386 "Regular expression for italic emphasis.")
2387(defconst org-underline-re
2388 (if (featurep 'xemacs)
2389 "\\([ ]\\|^\\)\\(_\\(\\w[a-zA-Z0-9-_ ]*?\\w\\)_\\)\\([ ,.]\\|$\\)"
2390 "\\([ ]\\|^\\)\\(_\\(\\w[[:word:] -_]*?\\w\\)_\\)\\([ ,.]\\|$\\)")
2391 "Regular expression for underline emphasis.")
2392 2475
2393;; Variables for pre-computed regular expressions, all buffer local 2476;; Variables for pre-computed regular expressions, all buffer local
2394(defvar org-done-string nil 2477(defvar org-done-string nil
@@ -2582,12 +2665,14 @@ Also put tags into group 4 if tags are present.")
2582 org-keyword-time-regexp 2665 org-keyword-time-regexp
2583 (concat "\\<\\(" org-scheduled-string 2666 (concat "\\<\\(" org-scheduled-string
2584 "\\|" org-deadline-string 2667 "\\|" org-deadline-string
2585 "\\|" org-closed-string "\\)" 2668 "\\|" org-closed-string
2669 "\\|" org-clock-string "\\)"
2586 " *[[<]\\([^]>]+\\)[]>]") 2670 " *[[<]\\([^]>]+\\)[]>]")
2587 org-maybe-keyword-time-regexp 2671 org-maybe-keyword-time-regexp
2588 (concat "\\(\\<\\(" org-scheduled-string 2672 (concat "\\(\\<\\(" org-scheduled-string
2589 "\\|" org-deadline-string 2673 "\\|" org-deadline-string
2590 "\\|" org-closed-string "\\)\\)?" 2674 "\\|" org-closed-string
2675 "\\|" org-clock-string "\\)\\)?"
2591 " *\\([[<][0-9]\\{4\\}-[0-9]\\{2\\}-[0-9]\\{2\\}[^]\r\n>]*?[]>]\\)")) 2676 " *\\([[<][0-9]\\{4\\}-[0-9]\\{2\\}-[0-9]\\{2\\}[^]\r\n>]*?[]>]\\)"))
2592 2677
2593 (org-set-font-lock-defaults))) 2678 (org-set-font-lock-defaults)))
@@ -2609,6 +2694,7 @@ Also put tags into group 4 if tags are present.")
2609(defvar timecnt) ; dynamically scoped parameter 2694(defvar timecnt) ; dynamically scoped parameter
2610(defvar levels-open) ; dynamically scoped parameter 2695(defvar levels-open) ; dynamically scoped parameter
2611(defvar entry) ; dynamically scoped parameter 2696(defvar entry) ; dynamically scoped parameter
2697(defvar state) ; dynamically scoped into `org-after-todo-state-change-hook'
2612(defvar date) ; dynamically scoped parameter 2698(defvar date) ; dynamically scoped parameter
2613(defvar description) ; dynamically scoped parameter 2699(defvar description) ; dynamically scoped parameter
2614(defvar ans1) ; dynamically scoped parameter 2700(defvar ans1) ; dynamically scoped parameter
@@ -2640,7 +2726,7 @@ Also put tags into group 4 if tags are present.")
2640 2726
2641;;; Define the mode 2727;;; Define the mode
2642 2728
2643(defvar org-mode-map 2729(defvar org-mode-map
2644 (if (and (not (keymapp outline-mode-map)) (featurep 'allout)) 2730 (if (and (not (keymapp outline-mode-map)) (featurep 'allout))
2645 (error "Conflict with outdated version of allout.el. Load org.el before allout.el, or ugrade to newer allout, for example by switching to Emacs 22.") 2731 (error "Conflict with outdated version of allout.el. Load org.el before allout.el, or ugrade to newer allout, for example by switching to Emacs 22.")
2646 (copy-keymap outline-mode-map)) 2732 (copy-keymap outline-mode-map))
@@ -2711,10 +2797,11 @@ The following commands are available:
2711 (when (and org-ellipsis (stringp org-ellipsis)) 2797 (when (and org-ellipsis (stringp org-ellipsis))
2712 (unless org-display-table 2798 (unless org-display-table
2713 (setq org-display-table (make-display-table))) 2799 (setq org-display-table (make-display-table)))
2714 (set-display-table-slot org-display-table 2800 (set-display-table-slot org-display-table
2715 4 (string-to-vector org-ellipsis)) 2801 4 (string-to-vector org-ellipsis))
2716 (setq buffer-display-table org-display-table)) 2802 (setq buffer-display-table org-display-table))
2717 (org-set-regexps-and-options) 2803 (org-set-regexps-and-options)
2804 (modify-syntax-entry ?# "<")
2718 (if org-startup-truncated (setq truncate-lines t)) 2805 (if org-startup-truncated (setq truncate-lines t))
2719 (set (make-local-variable 'font-lock-unfontify-region-function) 2806 (set (make-local-variable 'font-lock-unfontify-region-function)
2720 'org-unfontify-region) 2807 'org-unfontify-region)
@@ -2722,6 +2809,8 @@ The following commands are available:
2722 (set (make-local-variable 'org-table-may-need-update) t) 2809 (set (make-local-variable 'org-table-may-need-update) t)
2723 (org-add-hook 'before-change-functions 'org-before-change-function nil 2810 (org-add-hook 'before-change-functions 'org-before-change-function nil
2724 'local) 2811 'local)
2812 ;; Check for running clock before killing a buffer
2813 (org-add-hook 'kill-buffer-hook 'org-check-running-clock nil 'local)
2725 ;; Paragraphs and auto-filling 2814 ;; Paragraphs and auto-filling
2726 (org-set-autofill-regexps) 2815 (org-set-autofill-regexps)
2727 (org-update-radio-target-regexp) 2816 (org-update-radio-target-regexp)
@@ -2793,7 +2882,7 @@ that will be added to PLIST. Returns the string that was modified."
2793(defconst org-non-link-chars "]\t\n\r<>") 2882(defconst org-non-link-chars "]\t\n\r<>")
2794(defconst org-link-types '("https?" "ftp" "mailto" "file" "news" "bbdb" "vm" 2883(defconst org-link-types '("https?" "ftp" "mailto" "file" "news" "bbdb" "vm"
2795 "wl" "mhe" "rmail" "gnus" "shell" "info" "elisp")) 2884 "wl" "mhe" "rmail" "gnus" "shell" "info" "elisp"))
2796(defconst org-link-re-with-space 2885(defconst org-link-re-with-space
2797 (concat 2886 (concat
2798 "<?\\(" (mapconcat 'identity org-link-types "\\|") "\\):" 2887 "<?\\(" (mapconcat 'identity org-link-types "\\|") "\\):"
2799 "\\([^" org-non-link-chars " ]" 2888 "\\([^" org-non-link-chars " ]"
@@ -2809,7 +2898,7 @@ that will be added to PLIST. Returns the string that was modified."
2809 "[^" org-non-link-chars " ]\\)>?") 2898 "[^" org-non-link-chars " ]\\)>?")
2810 "Matches a link with spaces, optional angular brackets around it.") 2899 "Matches a link with spaces, optional angular brackets around it.")
2811 2900
2812(defconst org-angle-link-re 2901(defconst org-angle-link-re
2813 (concat 2902 (concat
2814 "<\\(" (mapconcat 'identity org-link-types "\\|") "\\):" 2903 "<\\(" (mapconcat 'identity org-link-types "\\|") "\\):"
2815 "\\([^" org-non-link-chars " ]" 2904 "\\([^" org-non-link-chars " ]"
@@ -2859,6 +2948,21 @@ that will be added to PLIST. Returns the string that was modified."
2859 org-ts-regexp "\\)?") 2948 org-ts-regexp "\\)?")
2860 "Regular expression matching a time stamp or time stamp range.") 2949 "Regular expression matching a time stamp or time stamp range.")
2861 2950
2951(defvar org-§emph-face nil)
2952
2953(defun org-do-emphasis-faces (limit)
2954 "Run through the buffer and add overlays to links."
2955 (if (re-search-forward org-emph-re limit t)
2956 (progn
2957 (font-lock-prepend-text-property (match-beginning 2) (match-end 2)
2958 'face
2959 (nth 1 (assoc (match-string 3)
2960 org-emphasis-alist)))
2961 (add-text-properties (match-beginning 2) (match-end 2)
2962 '(font-lock-multiline t))
2963 (backward-char 1)
2964 t)))
2965
2862(defun org-activate-plain-links (limit) 2966(defun org-activate-plain-links (limit)
2863 "Run through the buffer and add overlays to links." 2967 "Run through the buffer and add overlays to links."
2864 (if (re-search-forward org-plain-link-re limit t) 2968 (if (re-search-forward org-plain-link-re limit t)
@@ -3050,10 +3154,9 @@ between words."
3050 (list (concat "\\<" org-deadline-string) '(0 'org-special-keyword t)) 3154 (list (concat "\\<" org-deadline-string) '(0 'org-special-keyword t))
3051 (list (concat "\\<" org-scheduled-string) '(0 'org-special-keyword t)) 3155 (list (concat "\\<" org-scheduled-string) '(0 'org-special-keyword t))
3052 (list (concat "\\<" org-closed-string) '(0 'org-special-keyword t)) 3156 (list (concat "\\<" org-closed-string) '(0 'org-special-keyword t))
3157 (list (concat "\\<" org-clock-string) '(0 'org-special-keyword t))
3053 ;; Emphasis 3158 ;; Emphasis
3054 (if em (list org-bold-re 2 ''bold 'prepend)) 3159 (if em '(org-do-emphasis-faces))
3055 (if em (list org-italic-re 2 ''italic 'prepend))
3056 (if em (list org-underline-re 2 ''underline 'prepend))
3057 ;; Checkboxes, similar to Frank Ruell's org-checklet.el 3160 ;; Checkboxes, similar to Frank Ruell's org-checklet.el
3058 '("^[ \t]*\\([-+*]\\|[0-9]+[.)]\\) +\\(\\[[ X]\\]\\)" 3161 '("^[ \t]*\\([-+*]\\|[0-9]+[.)]\\) +\\(\\[[ X]\\]\\)"
3059 2 'bold prepend) 3162 2 'bold prepend)
@@ -3148,7 +3251,7 @@ between words."
3148 (if org-cycle-include-plain-lists 3251 (if org-cycle-include-plain-lists
3149 "\\*+\\|\\([ \t]*\\)\\([-+*]\\|[0-9]+[.)]\\) " 3252 "\\*+\\|\\([ \t]*\\)\\([-+*]\\|[0-9]+[.)]\\) "
3150 outline-regexp)) 3253 outline-regexp))
3151 (bob-special (and org-cycle-global-at-bob (bobp) 3254 (bob-special (and org-cycle-global-at-bob (bobp)
3152 (not (looking-at outline-regexp)))) 3255 (not (looking-at outline-regexp))))
3153 (org-cycle-hook (if bob-special nil org-cycle-hook)) 3256 (org-cycle-hook (if bob-special nil org-cycle-hook))
3154 (pos (point))) 3257 (pos (point)))
@@ -3268,10 +3371,15 @@ between words."
3268 (org-cycle)))))) 3371 (org-cycle))))))
3269 3372
3270;;;###autoload 3373;;;###autoload
3271(defun org-global-cycle () 3374(defun org-global-cycle (&optional arg)
3272 "Cycle the global visibility. For details see `org-cycle'." 3375 "Cycle the global visibility. For details see `org-cycle'."
3273 (interactive) 3376 (interactive "P")
3274 (org-cycle '(4))) 3377 (if (integerp arg)
3378 (progn
3379 (show-all)
3380 (hide-sublevels arg)
3381 (setq org-cycle-global-status 'contents))
3382 (org-cycle '(4))))
3275 3383
3276(defun org-overview () 3384(defun org-overview ()
3277 "Switch to overview mode, shoing only top-level headlines. 3385 "Switch to overview mode, shoing only top-level headlines.
@@ -3484,11 +3592,13 @@ the current headline."
3484 (match-string 0)) 3592 (match-string 0))
3485 (error "*")))) 3593 (error "*"))))
3486 pos) 3594 pos)
3487 (cond 3595 (cond
3488 ((and (org-on-heading-p) (bolp) 3596 ((and (org-on-heading-p) (bolp)
3489 (save-excursion (backward-char 1) (not (org-invisible-p)))) 3597 (save-excursion (backward-char 1) (not (org-invisible-p))))
3490 (open-line 1)) 3598 (open-line 1))
3491 ((bolp) nil) 3599 ((and (bolp) (save-excursion
3600 (backward-char 1) (not (org-invisible-p))))
3601 nil)
3492 (t (newline))) 3602 (t (newline)))
3493 (insert head) (just-one-space) 3603 (insert head) (just-one-space)
3494 (setq pos (point)) 3604 (setq pos (point))
@@ -3657,6 +3767,7 @@ in the region."
3657 (not (eobp))) 3767 (not (eobp)))
3658 (funcall fun))))) 3768 (funcall fun)))))
3659 3769
3770;; FIXME: this does not work well with Tabulators. This has to be re-written entirely.
3660(defun org-fixup-indentation (from to prohibit) 3771(defun org-fixup-indentation (from to prohibit)
3661 "Change the indentation in the current entry by re-replacing FROM with TO. 3772 "Change the indentation in the current entry by re-replacing FROM with TO.
3662However, if the regexp PROHIBIT matches at all, don't do anything. 3773However, if the regexp PROHIBIT matches at all, don't do anything.
@@ -3999,7 +4110,7 @@ Error if not at a plain list, or if this is the last item in the list."
3999 (setq ind1 (org-get-indentation)) 4110 (setq ind1 (org-get-indentation))
4000 (unless (and (org-at-item-p) (= ind ind1)) 4111 (unless (and (org-at-item-p) (= ind ind1))
4001 (goto-char pos) 4112 (goto-char pos)
4002 (error "On last item")))) 4113 (error "On last item"))))
4003 4114
4004(defun org-previous-item () 4115(defun org-previous-item ()
4005 "Move to the beginning of the previous item in the current plain list. 4116 "Move to the beginning of the previous item in the current plain list.
@@ -4560,7 +4671,8 @@ be removed."
4560 (goto-char (1+ (match-end 0))) 4671 (goto-char (1+ (match-end 0)))
4561 (if (and (not (looking-at outline-regexp)) 4672 (if (and (not (looking-at outline-regexp))
4562 (looking-at (concat "[^\r\n]*?" org-keyword-time-regexp 4673 (looking-at (concat "[^\r\n]*?" org-keyword-time-regexp
4563 "[^\r\n]*"))) 4674 "[^\r\n]*"))
4675 (not (equal (match-string 1) org-clock-string)))
4564 (narrow-to-region (match-beginning 0) (match-end 0)) 4676 (narrow-to-region (match-beginning 0) (match-end 0))
4565 (insert "\n") 4677 (insert "\n")
4566 (backward-char 1) 4678 (backward-char 1)
@@ -4589,7 +4701,7 @@ be removed."
4589 " ") 4701 " ")
4590 (insert 4702 (insert
4591 (setq ts 4703 (setq ts
4592 (format-time-string 4704 (format-time-string
4593 (if (eq what 'closed) 4705 (if (eq what 'closed)
4594 (concat "[" (substring (cdr org-time-stamp-formats) 1 -1) "]") 4706 (concat "[" (substring (cdr org-time-stamp-formats) 1 -1) "]")
4595 (car org-time-stamp-formats)) 4707 (car org-time-stamp-formats))
@@ -5258,6 +5370,193 @@ If there is already a time stamp at the cursor position, update it."
5258 (interactive) 5370 (interactive)
5259 (org-timestamp-change 0 'calendar)) 5371 (org-timestamp-change 0 'calendar))
5260 5372
5373;;; The clock for measuring work time.
5374
5375(defvar org-clock-marker (make-marker)
5376 "Marker recording the last clock-in.")
5377
5378(defun org-clock-in ()
5379 "Start the clock on the current item.
5380If necessary, clock-out of the currently active clock."
5381 (interactive)
5382 (org-clock-out t)
5383 (let (ts)
5384 (save-excursion
5385 (org-back-to-heading t)
5386 (beginning-of-line 2)
5387 (if (and (looking-at (concat "[ \t]*" org-keyword-time-regexp))
5388 (not (equal (match-string 1) org-clock-string)))
5389 (beginning-of-line 1))
5390 (insert "\n") (backward-char 1)
5391 (indent-relative)
5392 (insert org-clock-string " "
5393 (setq ts (concat "[" (format-time-string
5394 (substring
5395 (cdr org-time-stamp-formats) 1 -1)
5396 (current-time))
5397 "]")))
5398 (move-marker org-clock-marker (point))
5399 (message "Clock started at %s" ts))))
5400
5401(defun org-clock-out (&optional fail-quietly)
5402 "Stop the currently running clock.
5403If there is no running clock, throw an error, unless FAIL-QUIETLY is set."
5404 (interactive)
5405 (catch 'exit
5406 (if (not (marker-buffer org-clock-marker))
5407 (if fail-quietly (throw 'exit t) (error "No active clock")))
5408 (let (ts te s h m)
5409 (save-excursion
5410 (set-buffer (marker-buffer org-clock-marker))
5411 (goto-char org-clock-marker)
5412 (beginning-of-line 1)
5413 (if (and (looking-at (concat "[ \t]*" org-keyword-time-regexp))
5414 (equal (match-string 1) org-clock-string))
5415 (setq ts (match-string 2))
5416 (if fail-quietly (throw 'exit nil) (error "Clock start time is gone")))
5417 (goto-char org-clock-marker)
5418 (setq te (concat "[" (format-time-string
5419 (substring
5420 (cdr org-time-stamp-formats) 1 -1)
5421 (current-time))
5422 "]"))
5423 (setq s (- (time-to-seconds (apply 'encode-time (org-parse-time-string te)))
5424 (time-to-seconds (apply 'encode-time (org-parse-time-string ts))))
5425 h (floor (/ s 3600))
5426 s (- s (* 3600 h))
5427 m (floor (/ s 60))
5428 s (- s (* 60 s)))
5429 (insert "--" te " => " (format "%2d:%02d" h m))
5430 (move-marker org-clock-marker nil)
5431 (message "Clock stopped at %s after HH:MM = %d:%02d" te h m)))))
5432
5433(defun org-clock-cancel ()
5434 "Cancel the running clock be removing the start timestamp."
5435 (interactive)
5436 (if (not (marker-buffer org-clock-marker))
5437 (error "No active clock"))
5438 (save-excursion
5439 (set-buffer (marker-buffer org-clock-marker))
5440 (goto-char org-clock-marker)
5441 (delete-region (1- (point-at-bol)) (point-at-eol)))
5442 (message "Clock canceled"))
5443
5444(defvar org-clock-file-total-minutes nil
5445 "Holds the file total time in minutes, after a call to `org-clock-sum'.")
5446 (make-variable-buffer-local 'org-clock-file-total-minutes)
5447
5448(defun org-clock-sum ()
5449 "Sum the times for each subtree.
5450Puts the resulting times in minutes as a text property on each headline."
5451 (interactive)
5452 (remove-text-properties (point-min) (point-max) '(:org-clock-minutes t))
5453 (let* ((re (concat "^\\(\\*+\\)[ \t]\\|^[ \t]*"
5454 org-clock-string
5455 ".*=>[ \t]*\\([0-9]+\\):\\([0-9]+\\)[ \t]*$"))
5456 (lmax 30)
5457 (ltimes (make-vector lmax 0))
5458 (t1 0)
5459 (level 0)
5460 (lastlevel 0) time)
5461 (save-excursion
5462 (goto-char (point-max))
5463 (while (re-search-backward re nil t)
5464 (if (match-end 2)
5465 ;; A time
5466 (setq t1 (+ t1 (* 60 (string-to-number (match-string 2)))
5467 (string-to-number (match-string 3))))
5468 ;; A headline
5469 (setq level (- (match-end 1) (match-beginning 1)))
5470 (when (or (> t1 0) (> (aref ltimes level) 0))
5471 (loop for l from 0 to level do
5472 (aset ltimes l (+ (aref ltimes l) t1)))
5473 (setq t1 0 time (aref ltimes level))
5474 (loop for l from level to (1- lmax) do
5475 (aset ltimes l 0))
5476 (goto-char (match-beginning 0))
5477 (put-text-property (point) (point-at-eol) :org-clock-minutes time))))
5478 (setq org-clock-file-total-minutes (aref ltimes 0)))))
5479
5480(defun org-clock-display (&optional total-only)
5481 "Show subtree times in the entire buffer.
5482If TOTAL-ONLY is non-nil, only show the total time for the entire file
5483in the echo area."
5484 (interactive)
5485 (org-remove-clock-overlays)
5486 (let (time h m p)
5487 (org-clock-sum)
5488 (unless total-only
5489 (save-excursion
5490 (goto-char (point-min))
5491 (while (setq p (next-single-property-change (point) :org-clock-minutes))
5492 (goto-char p)
5493 (when (setq time (get-text-property p :org-clock-minutes))
5494 (org-put-clock-overlay time (funcall outline-level))))
5495 (setq h (/ org-clock-file-total-minutes 60)
5496 m (- org-clock-file-total-minutes (* 60 h)))
5497 ;; Arrange to remove the overlays upon next change.
5498 (org-add-hook 'before-change-functions 'org-remove-clock-overlays
5499 nil 'local)))
5500 (message "Total file time: %d:%02d (%d hours and %d minutes)" h m h m)))
5501
5502(defvar org-clock-overlays nil)
5503(defun org-put-clock-overlay (time &optional level)
5504 "Put an overlays on the current line, displaying TIME.
5505If LEVEL is given, prefix time with a corresponding number of stars.
5506This creates a new overlay and stores it in `org-clock-overlays', so that it
5507will be easy to remove."
5508 (let* ((c 60) (h (floor (/ time 60))) (m (- time (* 60 h)))
5509 (l (if level (org-get-legal-level level 0) 0))
5510 (off 0)
5511 ov tx)
5512 (move-to-column c)
5513 (if (eolp) (setq off 1))
5514 (unless (eolp) (skip-chars-backward "^ \t"))
5515 (skip-chars-backward " \t")
5516 (setq ov (org-make-overlay (- (point) off) (point-at-eol))
5517 tx (concat (make-string (+ off (max 0 (- c (current-column)))) ?.)
5518 (org-add-props (format "%s %2d:%02d%s"
5519 (make-string l ?*) h m
5520 (make-string (- 10 l) ?\ ))
5521 '(face secondary-selection))
5522 ""))
5523 (org-overlay-put ov 'display tx)
5524 (push ov org-clock-overlays)))
5525
5526(defun org-remove-clock-overlays (&optional beg end noremove)
5527 "Remove the occur highlights from the buffer.
5528BEG and END are ignored. If NOREMOVE is nil, remove this function
5529from the `before-change-functions' in the current buffer."
5530 (interactive)
5531 (mapc 'org-delete-overlay org-clock-overlays)
5532 (setq org-clock-overlays nil)
5533 (unless noremove
5534 (remove-hook 'before-change-functions
5535 'org-remove-clock-overlays 'local)))
5536
5537(defun org-clock-out-if-current ()
5538 "Clock out if the current entry contains the running clock.
5539This is used to stop the clock after a TODO entry is marked DONE."
5540 (when (and (equal state org-done-string)
5541 (equal (marker-buffer org-clock-marker) (current-buffer))
5542 (< (point) org-clock-marker)
5543 (> (save-excursion (outline-next-heading) (point))
5544 org-clock-marker))
5545 (org-clock-out)))
5546
5547(add-hook 'org-after-todo-state-change-hook
5548 'org-clock-out-if-current)
5549
5550(defun org-check-running-clock ()
5551 "Check if the current buffer contains the running clock.
5552If yes, offer to stop it and to save the buffer with the changes."
5553 (when (and (equal (marker-buffer org-clock-marker) (current-buffer))
5554 (y-or-n-p (format "Clock-out in buffer %s before killing it? "
5555 (buffer-name))))
5556 (org-clock-out)
5557 (when (y-or-n-p "Save changed buffer?")
5558 (save-buffer))))
5559
5261;;; Agenda, and Diary Integration 5560;;; Agenda, and Diary Integration
5262 5561
5263;;; Define the mode 5562;;; Define the mode
@@ -5361,6 +5660,9 @@ The following commands are available:
5361(define-key org-agenda-mode-map "h" 'org-agenda-holidays) 5660(define-key org-agenda-mode-map "h" 'org-agenda-holidays)
5362(define-key org-agenda-mode-map "H" 'org-agenda-holidays) 5661(define-key org-agenda-mode-map "H" 'org-agenda-holidays)
5363(define-key org-agenda-mode-map "+" 'org-agenda-priority-up) 5662(define-key org-agenda-mode-map "+" 'org-agenda-priority-up)
5663(define-key org-agenda-mode-map "I" 'org-agenda-clock-in)
5664(define-key org-agenda-mode-map "O" 'org-clock-out)
5665(define-key org-agenda-mode-map "X" 'org-clock-cancel)
5364(define-key org-agenda-mode-map "-" 'org-agenda-priority-down) 5666(define-key org-agenda-mode-map "-" 'org-agenda-priority-down)
5365(define-key org-agenda-mode-map (org-key 'S-up) 'org-agenda-priority-up) 5667(define-key org-agenda-mode-map (org-key 'S-up) 'org-agenda-priority-up)
5366(define-key org-agenda-mode-map (org-key 'S-down) 'org-agenda-priority-down) 5668(define-key org-agenda-mode-map (org-key 'S-down) 'org-agenda-priority-down)
@@ -6619,7 +6921,7 @@ the documentation of `org-diary'."
6619 (format "mouse-2 or RET jump to org file %s" 6921 (format "mouse-2 or RET jump to org file %s"
6620 (abbreviate-file-name buffer-file-name)))) 6922 (abbreviate-file-name buffer-file-name))))
6621 (regexp (concat 6923 (regexp (concat
6622 "\\<" org-closed-string " *\\[" 6924 "\\<\\(" org-closed-string "\\|" org-clock-string "\\) *\\["
6623 (regexp-quote 6925 (regexp-quote
6624 (substring 6926 (substring
6625 (format-time-string 6927 (format-time-string
@@ -6627,13 +6929,14 @@ the documentation of `org-diary'."
6627 (apply 'encode-time ; DATE bound by calendar 6929 (apply 'encode-time ; DATE bound by calendar
6628 (list 0 0 0 (nth 1 date) (car date) (nth 2 date)))) 6930 (list 0 0 0 (nth 1 date) (car date) (nth 2 date))))
6629 1 11)))) 6931 1 11))))
6630 marker hdmarker priority category tags 6932 marker hdmarker priority category tags closedp
6631 ee txt timestr) 6933 ee txt timestr)
6632 (goto-char (point-min)) 6934 (goto-char (point-min))
6633 (while (re-search-forward regexp nil t) 6935 (while (re-search-forward regexp nil t)
6634 (if (not (save-match-data (org-at-date-range-p))) 6936 (if (not (save-match-data (org-at-date-range-p)))
6635 (progn 6937 (progn
6636 (setq marker (org-agenda-new-marker (match-beginning 0)) 6938 (setq marker (org-agenda-new-marker (match-beginning 0))
6939 closedp (equal (match-string 1) org-closed-string)
6637 category (org-get-category (match-beginning 0)) 6940 category (org-get-category (match-beginning 0))
6638 timestr (buffer-substring (match-beginning 0) (point-at-eol)) 6941 timestr (buffer-substring (match-beginning 0) (point-at-eol))
6639 ;; donep (org-entry-is-done-p) 6942 ;; donep (org-entry-is-done-p)
@@ -6649,7 +6952,7 @@ the documentation of `org-diary'."
6649 tags (org-get-tags-at)) 6952 tags (org-get-tags-at))
6650 (looking-at "\\*+[ \t]*\\([^\r\n]+\\)") 6953 (looking-at "\\*+[ \t]*\\([^\r\n]+\\)")
6651 (setq txt (org-format-agenda-item 6954 (setq txt (org-format-agenda-item
6652 "Closed: " 6955 (if closedp "Closed: " "Clocked: ")
6653 (match-string 1) category tags timestr))) 6956 (match-string 1) category tags timestr)))
6654 (setq txt org-agenda-no-heading-message)) 6957 (setq txt org-agenda-no-heading-message))
6655 (setq priority 100000) 6958 (setq priority 100000)
@@ -6701,7 +7004,7 @@ the documentation of `org-diary'."
6701 (setq txt (org-format-agenda-item 7004 (setq txt (org-format-agenda-item
6702 (format "In %3d d.: " diff) head category tags)))) 7005 (format "In %3d d.: " diff) head category tags))))
6703 (setq txt org-agenda-no-heading-message)) 7006 (setq txt org-agenda-no-heading-message))
6704 (when txt 7007 (when txt
6705 (setq face (cond ((<= diff 0) 'org-warning) 7008 (setq face (cond ((<= diff 0) 'org-warning)
6706 ((<= diff 5) 'org-upcoming-deadline) 7009 ((<= diff 5) 'org-upcoming-deadline)
6707 (t nil))) 7010 (t nil)))
@@ -6897,7 +7200,7 @@ only the correctly processes TXT should be returned - this is used by
6897 (and org-agenda-remove-tags-when-in-prefix 7200 (and org-agenda-remove-tags-when-in-prefix
6898 org-prefix-has-tag)) 7201 org-prefix-has-tag))
6899 (setq txt (replace-match "" t t txt)) 7202 (setq txt (replace-match "" t t txt))
6900 (setq txt (replace-match 7203 (setq txt (replace-match
6901 (concat (make-string (max (- 50 (length txt)) 1) ?\ ) 7204 (concat (make-string (max (- 50 (length txt)) 1) ?\ )
6902 (match-string 2 txt)) 7205 (match-string 2 txt))
6903 t t txt)))) 7206 t t txt))))
@@ -7083,7 +7386,7 @@ and by additional input from the age of a schedules or deadline entry."
7083 (interactive) 7386 (interactive)
7084 (let* ((tags (get-text-property (point-at-bol) 'tags))) 7387 (let* ((tags (get-text-property (point-at-bol) 'tags)))
7085 (if tags 7388 (if tags
7086 (message "Tags are :%s:" 7389 (message "Tags are :%s:"
7087 (org-no-properties (mapconcat 'identity tags ":"))) 7390 (org-no-properties (mapconcat 'identity tags ":")))
7088 (message "No tags associated with this line")))) 7391 (message "No tags associated with this line"))))
7089 7392
@@ -7283,7 +7586,7 @@ the tags of the current headline come last."
7283 (condition-case nil 7586 (condition-case nil
7284 (while t 7587 (while t
7285 (if (looking-at "[^\r\n]+?:\\([a-zA-Z_@0-9:]+\\):[ \t]*\\([\n\r]\\|\\'\\)") 7588 (if (looking-at "[^\r\n]+?:\\([a-zA-Z_@0-9:]+\\):[ \t]*\\([\n\r]\\|\\'\\)")
7286 (setq tags (append (org-split-string 7589 (setq tags (append (org-split-string
7287 (org-match-string-no-properties 1) ":") 7590 (org-match-string-no-properties 1) ":")
7288 tags))) 7591 tags)))
7289 (or org-use-tag-inheritance (error "")) 7592 (or org-use-tag-inheritance (error ""))
@@ -7400,6 +7703,20 @@ be used to request time specification in the time stamp."
7400 (match-string 1) 7703 (match-string 1)
7401 ""))) 7704 "")))
7402 7705
7706(defun org-agenda-clock-in (&optional arg)
7707 "Start the clock on the currently selected item."
7708 (interactive "P")
7709 (org-agenda-check-no-diary)
7710 (let* ((marker (or (get-text-property (point) 'org-marker)
7711 (org-agenda-error)))
7712 (buffer (marker-buffer marker))
7713 (pos (marker-position marker))
7714 (hdmarker (get-text-property (point) 'org-hd-marker)))
7715 (with-current-buffer (marker-buffer marker)
7716 (widen)
7717 (goto-char pos)
7718 (org-clock-in))))
7719
7403(defun org-agenda-diary-entry () 7720(defun org-agenda-diary-entry ()
7404 "Make a diary entry, like the `i' command from the calendar. 7721 "Make a diary entry, like the `i' command from the calendar.
7405All the standard commands work: block, weekly etc." 7722All the standard commands work: block, weekly etc."
@@ -7837,7 +8154,7 @@ Returns the new tags string, or nil to not change the current settings."
7837 (setq tbl table char ?a cnt 0) 8154 (setq tbl table char ?a cnt 0)
7838 (while (setq e (pop tbl)) 8155 (while (setq e (pop tbl))
7839 (cond 8156 (cond
7840 ((equal e '(:startgroup)) 8157 ((equal e '(:startgroup))
7841 (push '() groups) (setq ingroup t) 8158 (push '() groups) (setq ingroup t)
7842 (when (not (= cnt 0)) 8159 (when (not (= cnt 0))
7843 (setq cnt 0) 8160 (setq cnt 0)
@@ -7852,7 +8169,7 @@ Returns the new tags string, or nil to not change the current settings."
7852 (setq c (cdr e)) 8169 (setq c (cdr e))
7853 ;; automatically assign a character. 8170 ;; automatically assign a character.
7854 (setq c1 (string-to-char 8171 (setq c1 (string-to-char
7855 (downcase (substring 8172 (downcase (substring
7856 tg (if (= (string-to-char tg) ?@) 1 0))))) 8173 tg (if (= (string-to-char tg) ?@) 1 0)))))
7857 (if (or (rassoc c1 ntable) (rassoc c1 table)) 8174 (if (or (rassoc c1 ntable) (rassoc c1 table))
7858 (while (or (rassoc char ntable) (rassoc char table)) 8175 (while (or (rassoc char ntable) (rassoc char table))
@@ -7885,7 +8202,7 @@ Returns the new tags string, or nil to not change the current settings."
7885 (setq c (read-char-exclusive)) 8202 (setq c (read-char-exclusive))
7886 (cond 8203 (cond
7887 ((= c ?\r) (throw 'exit t)) 8204 ((= c ?\r) (throw 'exit t))
7888 ((= c ?!) 8205 ((= c ?!)
7889 (setq groups nil) 8206 (setq groups nil)
7890 (goto-char (point-min)) 8207 (goto-char (point-min))
7891 (while (re-search-forward "[{}]" nil t) (replace-match " "))) 8208 (while (re-search-forward "[{}]" nil t) (replace-match " ")))
@@ -8198,7 +8515,7 @@ in all files."
8198 (pre "") (post "") 8515 (pre "") (post "")
8199 words re0 re1 re2 re3 re4 re5 re2a reall camel) 8516 words re0 re1 re2 re3 re4 re5 re2a reall camel)
8200 (cond 8517 (cond
8201 ;; First check if there are any special 8518 ;; First check if there are any special
8202 ((run-hook-with-args-until-success 'org-execute-file-search-functions s)) 8519 ((run-hook-with-args-until-success 'org-execute-file-search-functions s))
8203 ;; Now try the builtin stuff 8520 ;; Now try the builtin stuff
8204 ((save-excursion 8521 ((save-excursion
@@ -8644,8 +8961,8 @@ for this link."
8644 (interactive (list (y-or-n-p "Would you like to be queried for a description at each link?"))) 8961 (interactive (list (y-or-n-p "Would you like to be queried for a description at each link?")))
8645 (save-excursion 8962 (save-excursion
8646 (goto-char (point-min)) 8963 (goto-char (point-min))
8647 (let ((re (concat "\\([^[]\\)<\\(" 8964 (let ((re (concat "\\([^[]\\)<\\("
8648 "\\(" (mapconcat 'identity org-link-types "\\|") 8965 "\\(" (mapconcat 'identity org-link-types "\\|")
8649 "\\):" 8966 "\\):"
8650 "[^" org-non-link-chars "]+\\)>")) 8967 "[^" org-non-link-chars "]+\\)>"))
8651 l1 l2 (cnt 0)) 8968 l1 l2 (cnt 0))
@@ -8763,7 +9080,7 @@ For file links, arg negates `org-context-in-file-links'."
8763 link (org-make-link cpltxt))) 9080 link (org-make-link cpltxt)))
8764 9081
8765 ((eq major-mode 'Info-mode) 9082 ((eq major-mode 'Info-mode)
8766 (setq link (org-make-link "info:" 9083 (setq link (org-make-link "info:"
8767 (file-name-nondirectory Info-current-file) 9084 (file-name-nondirectory Info-current-file)
8768 ":" Info-current-node)) 9085 ":" Info-current-node))
8769 (setq cpltxt (concat (file-name-nondirectory Info-current-file) 9086 (setq cpltxt (concat (file-name-nondirectory Info-current-file)
@@ -9110,8 +9427,8 @@ is in the current directory or below."
9110 ;; We do have a link at point, and we are going to edit it. 9427 ;; We do have a link at point, and we are going to edit it.
9111 (setq remove (list (match-beginning 0) (match-end 0))) 9428 (setq remove (list (match-beginning 0) (match-end 0)))
9112 (setq desc (if (match-end 3) (org-match-string-no-properties 3))) 9429 (setq desc (if (match-end 3) (org-match-string-no-properties 3)))
9113 (setq link (read-string "Link: " 9430 (setq link (read-string "Link: "
9114 (org-link-unescape 9431 (org-link-unescape
9115 (org-match-string-no-properties 1))))) 9432 (org-match-string-no-properties 1)))))
9116 (complete-file 9433 (complete-file
9117 ;; Completing read for file names. 9434 ;; Completing read for file names.
@@ -9172,7 +9489,7 @@ is in the current directory or below."
9172 (setq path (file-relative-name path))) 9489 (setq path (file-relative-name path)))
9173 (t 9490 (t
9174 (save-match-data 9491 (save-match-data
9175 (if (string-match (concat "^" (regexp-quote 9492 (if (string-match (concat "^" (regexp-quote
9176 (file-name-as-directory 9493 (file-name-as-directory
9177 (expand-file-name ".")))) 9494 (expand-file-name "."))))
9178 (expand-file-name path)) 9495 (expand-file-name path))
@@ -9187,7 +9504,7 @@ is in the current directory or below."
9187 (insert (org-make-link-string link desc)))) 9504 (insert (org-make-link-string link desc))))
9188 9505
9189(defun org-completing-read (&rest args) 9506(defun org-completing-read (&rest args)
9190 (let ((minibuffer-local-completion-map 9507 (let ((minibuffer-local-completion-map
9191 (copy-keymap minibuffer-local-completion-map))) 9508 (copy-keymap minibuffer-local-completion-map)))
9192 (define-key minibuffer-local-completion-map " " 'self-insert-command) 9509 (define-key minibuffer-local-completion-map " " 'self-insert-command)
9193 (apply 'completing-read args))) 9510 (apply 'completing-read args)))
@@ -9667,7 +9984,7 @@ This is being used to correctly align a single field after TAB or RET.")
9667 (error "Cannot narrow field starting with wide link \"%s\"" 9984 (error "Cannot narrow field starting with wide link \"%s\""
9668 (match-string 0 xx))) 9985 (match-string 0 xx)))
9669 (add-text-properties f1 (length xx) (list 'org-cwidth t) xx) 9986 (add-text-properties f1 (length xx) (list 'org-cwidth t) xx)
9670 (add-text-properties (- f1 2) f1 9987 (add-text-properties (- f1 2) f1
9671 (list 'display org-narrow-column-arrow) 9988 (list 'display org-narrow-column-arrow)
9672 xx))))) 9989 xx)))))
9673 ;; Get the maximum width for each column 9990 ;; Get the maximum width for each column
@@ -10229,7 +10546,7 @@ With prefix ARG, insert above the current line."
10229 (buffer-substring (point-at-bol) (point-at-eol)))) 10546 (buffer-substring (point-at-bol) (point-at-eol))))
10230 (col (current-column))) 10547 (col (current-column)))
10231 (while (string-match "|\\( +\\)|" line) 10548 (while (string-match "|\\( +\\)|" line)
10232 (setq line (replace-match 10549 (setq line (replace-match
10233 (concat "+" (make-string (- (match-end 1) (match-beginning 1)) 10550 (concat "+" (make-string (- (match-end 1) (match-beginning 1))
10234 ?-) "|") t t line))) 10551 ?-) "|") t t line)))
10235 (and (string-match "\\+" line) (setq line (replace-match "|" t t line))) 10552 (and (string-match "\\+" line) (setq line (replace-match "|" t t line)))
@@ -11776,7 +12093,7 @@ overwritten, and the table is not marked as requiring realignment."
11776 (while (re-search-forward re nil t) 12093 (while (re-search-forward re nil t)
11777 (setq key (org-match-string-no-properties 1) 12094 (setq key (org-match-string-no-properties 1)
11778 val (org-match-string-no-properties 2)) 12095 val (org-match-string-no-properties 2))
11779 (cond 12096 (cond
11780 ((string-equal key "TITLE") (setq p (plist-put p :title val))) 12097 ((string-equal key "TITLE") (setq p (plist-put p :title val)))
11781 ((string-equal key "AUTHOR")(setq p (plist-put p :author val))) 12098 ((string-equal key "AUTHOR")(setq p (plist-put p :author val)))
11782 ((string-equal key "EMAIL") (setq p (plist-put p :email val))) 12099 ((string-equal key "EMAIL") (setq p (plist-put p :email val)))
@@ -11789,7 +12106,7 @@ overwritten, and the table is not marked as requiring realignment."
11789 (let ((op '(("H" . :headline-levels) 12106 (let ((op '(("H" . :headline-levels)
11790 ("num" . :section-numbers) 12107 ("num" . :section-numbers)
11791 ("toc" . :table-of-contents) 12108 ("toc" . :table-of-contents)
11792 ("\\n" . :preserve-breaks) 12109 ("\\n" . :preserve-breaks)
11793 ("@" . :expand-quoted-html) 12110 ("@" . :expand-quoted-html)
11794 (":" . :fixed-width) 12111 (":" . :fixed-width)
11795 ("|" . :tables) 12112 ("|" . :tables)
@@ -11798,7 +12115,7 @@ overwritten, and the table is not marked as requiring realignment."
11798 ("TeX" . :TeX-macros))) 12115 ("TeX" . :TeX-macros)))
11799 o) 12116 o)
11800 (while (setq o (pop op)) 12117 (while (setq o (pop op))
11801 (if (string-match (concat (regexp-quote (car o)) 12118 (if (string-match (concat (regexp-quote (car o))
11802 ":\\([^ \t\n\r;,.]*\\)") 12119 ":\\([^ \t\n\r;,.]*\\)")
11803 options) 12120 options)
11804 (setq p (plist-put p (cdr o) 12121 (setq p (plist-put p (cdr o)
@@ -11863,6 +12180,49 @@ ones and overrule settings in the other lists."
11863 (t (setq rtn (cons line rtn))))) 12180 (t (setq rtn (cons line rtn)))))
11864 (nreverse rtn))) 12181 (nreverse rtn)))
11865 12182
12183(defun org-export (&optional arg)
12184 (interactive)
12185 (let ((help "[t] insert the export option template
12186\[v] limit export to visible part of outline tree
12187
12188\[a] export as ASCII
12189\[h] export as HTML
12190\[b] export as HTML and browse immediately
12191\[x] export as XOXO
12192
12193\[i] export current file as iCalendar file
12194\[I] export all agenda files as iCalendar files
12195\[c] export agenda files into combined iCalendar file
12196
12197\[F] publish current file
12198\[P] publish current project
12199\[X] publish... (project will be prompted for)
12200\[A] publish all projects")
12201 (cmds
12202 '((?v . org-export-visible)
12203 (?a . org-export-as-ascii)
12204 (?h . org-export-as-html)
12205 (?b . org-export-as-html-and-open)
12206 (?x . org-export-as-xoxo)
12207 (?i . org-export-icalendar-this-file)
12208 (?I . org-export-icalendar-all-agenda-files)
12209 (?c . org-export-icalendar-combine-agenda-files)
12210 (?F . org-publish-current-file)
12211 (?P . org-publish-current-project)
12212 (?X . org-publish)
12213 (?A . org-publish-all)))
12214 r1 r2 ass)
12215 (save-window-excursion
12216 (delete-other-windows)
12217 (with-output-to-temp-buffer "*Org Export/Publishing Help*"
12218 (princ help))
12219 (message "Select command: ")
12220 (setq r1 (read-char-exclusive)))
12221 (setq r2 (if (< r1 27) (+ r1 96) r1))
12222 (if (setq ass (assq r2 cmds))
12223 (call-interactively (cdr ass))
12224 (error "No command associated with key %c" r1))))
12225
11866;; ASCII 12226;; ASCII
11867 12227
11868(defconst org-html-entities 12228(defconst org-html-entities
@@ -12163,7 +12523,7 @@ The list contains HTML entities for Latin-1, Greek and other symbols.
12163It is supplemented by a number of commonly used TeX macros with appropriate 12523It is supplemented by a number of commonly used TeX macros with appropriate
12164translations. There is currently no way for users to extend this.") 12524translations. There is currently no way for users to extend this.")
12165 12525
12166(defun org-cleaned-string-for-export (string) 12526(defun org-cleaned-string-for-export (string &rest parameters)
12167 "Cleanup a buffer substring so that links can be created safely." 12527 "Cleanup a buffer substring so that links can be created safely."
12168 (interactive) 12528 (interactive)
12169 (let* ((cb (current-buffer)) 12529 (let* ((cb (current-buffer))
@@ -12196,15 +12556,21 @@ translations. There is currently no way for users to extend this.")
12196 (goto-char (point-min)) 12556 (goto-char (point-min))
12197 (while (re-search-forward re-plain-link nil t) 12557 (while (re-search-forward re-plain-link nil t)
12198 (replace-match 12558 (replace-match
12199 (concat 12559 (concat
12200 (match-string 1) "[[" (match-string 2) ":" (match-string 3) "]]") 12560 (match-string 1) "[[" (match-string 2) ":" (match-string 3) "]]")
12201 t t)) 12561 t t))
12202 (goto-char (point-min)) 12562 (goto-char (point-min))
12203 (while (re-search-forward re-angle-link nil t) 12563 (while (re-search-forward re-angle-link nil t)
12204 (replace-match 12564 (replace-match
12205 (concat 12565 (concat
12206 (match-string 1) "[[" (match-string 2) ":" (match-string 3) "]]") 12566 (match-string 1) "[[" (match-string 2) ":" (match-string 3) "]]")
12207 t t)) 12567 t t))
12568 ;; Find multiline emphasis and put them into single line
12569 (when (assq :emph-multiline parameters)
12570 (goto-char (point-min))
12571 (while (re-search-forward org-emph-re nil t)
12572 (subst-char-in-region (match-beginning 0) (match-end 0) ?\n ?\ t)
12573 (goto-char (1- (match-end 0)))))
12208 12574
12209 ;; Remove comments 12575 ;; Remove comments
12210 (goto-char (point-min)) 12576 (goto-char (point-min))
@@ -12293,7 +12659,7 @@ underlined headlines. The default is 3."
12293 (case-fold-search nil) 12659 (case-fold-search nil)
12294 (filename (concat (file-name-as-directory 12660 (filename (concat (file-name-as-directory
12295 (org-export-directory :ascii opt-plist)) 12661 (org-export-directory :ascii opt-plist))
12296 (file-name-sans-extension 12662 (file-name-sans-extension
12297 (file-name-nondirectory buffer-file-name)) 12663 (file-name-nondirectory buffer-file-name))
12298 ".txt")) 12664 ".txt"))
12299 (buffer (find-file-noselect filename)) 12665 (buffer (find-file-noselect filename))
@@ -12327,7 +12693,7 @@ underlined headlines. The default is 3."
12327 ;; create local variables for all options, to make sure all called 12693 ;; create local variables for all options, to make sure all called
12328 ;; functions get the correct information 12694 ;; functions get the correct information
12329 (mapcar (lambda (x) 12695 (mapcar (lambda (x)
12330 (set (make-local-variable (cdr x)) 12696 (set (make-local-variable (cdr x))
12331 (plist-get opt-plist (car x)))) 12697 (plist-get opt-plist (car x))))
12332 org-export-plist-vars) 12698 org-export-plist-vars)
12333 (set (make-local-variable 'org-odd-levels-only) odd) 12699 (set (make-local-variable 'org-odd-levels-only) odd)
@@ -12401,7 +12767,7 @@ underlined headlines. The default is 3."
12401 (setq level (org-tr-level (- (match-end 1) (match-beginning 1))) 12767 (setq level (org-tr-level (- (match-end 1) (match-beginning 1)))
12402 txt (match-string 2 line)) 12768 txt (match-string 2 line))
12403 (org-ascii-level-start level txt umax lines)) 12769 (org-ascii-level-start level txt umax lines))
12404 (t 12770 (t
12405 (insert (org-fix-indentation line org-ascii-current-indentation) "\n")))) 12771 (insert (org-fix-indentation line org-ascii-current-indentation) "\n"))))
12406 (normal-mode) 12772 (normal-mode)
12407 (save-buffer) 12773 (save-buffer)
@@ -12459,7 +12825,7 @@ underlined headlines. The default is 3."
12459 (let (char (n (- level umax 1)) (ind 0)) 12825 (let (char (n (- level umax 1)) (ind 0))
12460 (if (> level umax) 12826 (if (> level umax)
12461 (progn 12827 (progn
12462 (insert (make-string (* 2 n) ?\ ) 12828 (insert (make-string (* 2 n) ?\ )
12463 (char-to-string (nth (% n (length org-export-ascii-bullets)) 12829 (char-to-string (nth (% n (length org-export-ascii-bullets))
12464 org-export-ascii-bullets)) 12830 org-export-ascii-bullets))
12465 " " title "\n") 12831 " " title "\n")
@@ -12489,13 +12855,14 @@ key. As a special case, if the you type SPC at the prompt, the temporary
12489org-mode file will not be removed but presented to you so that you can 12855org-mode file will not be removed but presented to you so that you can
12490continue to use it. The prefix arg ARG is passed through to the exporting 12856continue to use it. The prefix arg ARG is passed through to the exporting
12491command." 12857command."
12492 (interactive 12858 (interactive
12493 (list (progn 12859 (list (progn
12494 (message "Export visible: [a]SCII [h]tml [b]rowse HTML [x]OXO [ ]keep buffer") 12860 (message "Export visible: [a]SCII [h]tml [b]rowse HTML [x]OXO [ ]keep buffer")
12495 (char-to-string (read-char-exclusive))) 12861 (char-to-string (read-char-exclusive)))
12496 current-prefix-arg)) 12862 current-prefix-arg))
12497 (if (not (member type '("a" "\C-a" "b" "\C-b" "h" "x" " "))) 12863 (if (not (member type '("a" "\C-a" "b" "\C-b" "h" "x" " ")))
12498 (error "Invalid export key")) 12864 (error "Invalid export key"))
12865 ;; FIXME: do this more explicit?
12499 (let* ((binding (key-binding (concat "\C-c\C-x" type))) 12866 (let* ((binding (key-binding (concat "\C-c\C-x" type)))
12500 (keepp (equal type " ")) 12867 (keepp (equal type " "))
12501 (file buffer-file-name) 12868 (file buffer-file-name)
@@ -12680,7 +13047,7 @@ org-mode's default settings, but still inferior to file-local settings."
12680 (let* ((opt-plist (org-combine-plists (org-default-export-plist) 13047 (let* ((opt-plist (org-combine-plists (org-default-export-plist)
12681 ext-plist 13048 ext-plist
12682 (org-infile-export-plist))) 13049 (org-infile-export-plist)))
12683 13050
12684 (style (plist-get opt-plist :style)) 13051 (style (plist-get opt-plist :style))
12685 (odd org-odd-levels-only) 13052 (odd org-odd-levels-only)
12686 (region-p (org-region-active-p)) 13053 (region-p (org-region-active-p))
@@ -12690,14 +13057,15 @@ org-mode's default settings, but still inferior to file-local settings."
12690 (if region-p (region-end) (point-max)))) 13057 (if region-p (region-end) (point-max))))
12691 (all_lines 13058 (all_lines
12692 (org-skip-comments (org-split-string 13059 (org-skip-comments (org-split-string
12693 (org-cleaned-string-for-export region) 13060 (org-cleaned-string-for-export
13061 region :emph-multiline)
12694 "[\r\n]"))) 13062 "[\r\n]")))
12695 (lines (org-export-find-first-heading-line all_lines)) 13063 (lines (org-export-find-first-heading-line all_lines))
12696 (level 0) (line "") (origline "") txt todo 13064 (level 0) (line "") (origline "") txt todo
12697 (umax nil) 13065 (umax nil)
12698 (filename (concat (file-name-as-directory 13066 (filename (concat (file-name-as-directory
12699 (org-export-directory :html opt-plist)) 13067 (org-export-directory :html opt-plist))
12700 (file-name-sans-extension 13068 (file-name-sans-extension
12701 (file-name-nondirectory buffer-file-name)) 13069 (file-name-nondirectory buffer-file-name))
12702 ".html")) 13070 ".html"))
12703 (buffer (find-file-noselect filename)) 13071 (buffer (find-file-noselect filename))
@@ -12755,7 +13123,7 @@ org-mode's default settings, but still inferior to file-local settings."
12755 ;; create local variables for all options, to make sure all called 13123 ;; create local variables for all options, to make sure all called
12756 ;; functions get the correct information 13124 ;; functions get the correct information
12757 (mapcar (lambda (x) 13125 (mapcar (lambda (x)
12758 (set (make-local-variable (cdr x)) 13126 (set (make-local-variable (cdr x))
12759 (plist-get opt-plist (car x)))) 13127 (plist-get opt-plist (car x))))
12760 org-export-plist-vars) 13128 org-export-plist-vars)
12761 (setq umax (if arg (prefix-numeric-value arg) 13129 (setq umax (if arg (prefix-numeric-value arg)
@@ -12946,7 +13314,7 @@ lang=\"%s\" xml:lang=\"%s\">
12946 (if (string-match "::\\(.*\\)" filename) 13314 (if (string-match "::\\(.*\\)" filename)
12947 (setq search (match-string 1 filename) 13315 (setq search (match-string 1 filename)
12948 filename (replace-match "" t nil filename))) 13316 filename (replace-match "" t nil filename)))
12949 (setq file-is-image-p 13317 (setq file-is-image-p
12950 (string-match (org-image-file-name-regexp) filename)) 13318 (string-match (org-image-file-name-regexp) filename))
12951 (setq thefile (if abs-p (expand-file-name filename) filename)) 13319 (setq thefile (if abs-p (expand-file-name filename) filename))
12952 (when (and org-export-html-link-org-files-as-html 13320 (when (and org-export-html-link-org-files-as-html
@@ -12959,7 +13327,7 @@ lang=\"%s\" xml:lang=\"%s\">
12959 (not (string-match "^[0-9]*$" search)) 13327 (not (string-match "^[0-9]*$" search))
12960 (not (string-match "^\\*" search)) 13328 (not (string-match "^\\*" search))
12961 (not (string-match "^/.*/$" search))) 13329 (not (string-match "^/.*/$" search)))
12962 (setq thefile (concat thefile "#" 13330 (setq thefile (concat thefile "#"
12963 (org-solidify-link-text 13331 (org-solidify-link-text
12964 (org-link-unescape search))))) 13332 (org-link-unescape search)))))
12965 (when (string-match "^file:" desc) 13333 (when (string-match "^file:" desc)
@@ -13039,7 +13407,7 @@ lang=\"%s\" xml:lang=\"%s\">
13039 line) 13407 line)
13040 (setq ind (org-get-string-indentation line) 13408 (setq ind (org-get-string-indentation line)
13041 start-is-num (match-beginning 4) 13409 start-is-num (match-beginning 4)
13042 starter (if (match-beginning 2) 13410 starter (if (match-beginning 2)
13043 (substring (match-string 2 line) 0 -1)) 13411 (substring (match-string 2 line) 0 -1))
13044 line (substring line (match-beginning 5))) 13412 line (substring line (match-beginning 5)))
13045 (unless (string-match "[^ \t]" line) 13413 (unless (string-match "[^ \t]" line)
@@ -13068,7 +13436,7 @@ lang=\"%s\" xml:lang=\"%s\">
13068 (org-close-li) 13436 (org-close-li)
13069 (insert "<li>\n"))) 13437 (insert "<li>\n")))
13070 (if (string-match "^[ \t]*\\[\\([X ]\\)\\]" line) 13438 (if (string-match "^[ \t]*\\[\\([X ]\\)\\]" line)
13071 (setq line 13439 (setq line
13072 (replace-match 13440 (replace-match
13073 (if (equal (match-string 1 line) "X") 13441 (if (equal (match-string 1 line) "X")
13074 "<b>[X]</b>" 13442 "<b>[X]</b>"
@@ -13088,7 +13456,7 @@ lang=\"%s\" xml:lang=\"%s\">
13088 (setq line (concat line "<br/>")))) 13456 (setq line (concat line "<br/>"))))
13089 13457
13090 (insert line "\n"))))) 13458 (insert line "\n")))))
13091 13459
13092 ;; Properly close all local lists and other lists 13460 ;; Properly close all local lists and other lists
13093 (when inquote (insert "</pre>\n")) 13461 (when inquote (insert "</pre>\n"))
13094 (when in-local-list 13462 (when in-local-list
@@ -13115,7 +13483,7 @@ lang=\"%s\" xml:lang=\"%s\">
13115 (insert "<p class=\"date\"> " 13483 (insert "<p class=\"date\"> "
13116 (nth 2 lang-words) ": " 13484 (nth 2 lang-words) ": "
13117 date " " time "</p>\n"))) 13485 date " " time "</p>\n")))
13118 13486
13119 (if org-export-html-with-timestamp 13487 (if org-export-html-with-timestamp
13120 (insert org-export-html-html-helper-timestamp)) 13488 (insert org-export-html-html-helper-timestamp))
13121 (insert (or (plist-get opt-plist :postamble) "")) 13489 (insert (or (plist-get opt-plist :postamble) ""))
@@ -13288,9 +13656,9 @@ But it has the disadvantage, that Org-mode's HTML conversions cannot be used."
13288 (if (not org-export-with-timestamps) 13656 (if (not org-export-with-timestamps)
13289 (setq r (concat r (substring s 0 (match-beginning 0))) 13657 (setq r (concat r (substring s 0 (match-beginning 0)))
13290 s (substring s (match-end 0))) 13658 s (substring s (match-end 0)))
13291 (setq r (concat 13659 (setq r (concat
13292 r (substring s 0 (match-beginning 0)) 13660 r (substring s 0 (match-beginning 0))
13293 (if (match-end 1) 13661 (if (match-end 1)
13294 (format "@<span class=\"timestamp-kwd\">%s @</span>" 13662 (format "@<span class=\"timestamp-kwd\">%s @</span>"
13295 (match-string 1 s))) 13663 (match-string 1 s)))
13296 (format " @<span class=\"timestamp\">%s@</span>" 13664 (format " @<span class=\"timestamp\">%s@</span>"
@@ -13403,12 +13771,9 @@ stacked delimiters is N. Escaping delimiters is not possible."
13403 string) 13771 string)
13404 13772
13405(defun org-export-html-convert-emphasize (string) 13773(defun org-export-html-convert-emphasize (string)
13406 (while (string-match org-italic-re string) 13774 "Apply emphasis."
13407 (setq string (replace-match "\\1<i>\\3</i>\\4" t nil string))) 13775 (while (string-match org-emph-re string)
13408 (while (string-match org-bold-re string) 13776 (setq string (replace-match (concat "\\1" (nth 2 (assoc (match-string 3 string) org-emphasis-alist)) "\\4" (nth 3 (assoc (match-string 3 string) org-emphasis-alist)) "\\5") t nil string)))
13409 (setq string (replace-match "\\1<b>\\3</b>\\4" t nil string)))
13410 (while (string-match org-underline-re string)
13411 (setq string (replace-match "\\1<u>\\3</u>\\4" t nil string)))
13412 string) 13777 string)
13413 13778
13414(defvar org-par-open nil) 13779(defvar org-par-open nil)
@@ -13446,12 +13811,12 @@ When TITLE is nil, just close all open levels."
13446 ;; If title is nil, this means this function is called to close 13811 ;; If title is nil, this means this function is called to close
13447 ;; all levels, so the rest is done only if title is given 13812 ;; all levels, so the rest is done only if title is given
13448 (when (string-match "\\(:[a-zA-Z0-9_@:]+:\\)[ \t]*$" title) 13813 (when (string-match "\\(:[a-zA-Z0-9_@:]+:\\)[ \t]*$" title)
13449 (setq title (replace-match 13814 (setq title (replace-match
13450 (if org-export-with-tags 13815 (if org-export-with-tags
13451 (save-match-data 13816 (save-match-data
13452 (concat 13817 (concat
13453 "&nbsp;&nbsp;&nbsp;<span class=\"tag\">" 13818 "&nbsp;&nbsp;&nbsp;<span class=\"tag\">"
13454 (mapconcat 'identity (org-split-string 13819 (mapconcat 'identity (org-split-string
13455 (match-string 1 title) ":") 13820 (match-string 1 title) ":")
13456 "&nbsp;") 13821 "&nbsp;")
13457 "</span>")) 13822 "</span>"))
@@ -13527,6 +13892,7 @@ When LEVEL is non-nil, increase section numbers on that level."
13527 string)) 13892 string))
13528 13893
13529 13894
13895;;;###autoload
13530(defun org-export-icalendar-this-file () 13896(defun org-export-icalendar-this-file ()
13531 "Export current file as an iCalendar file. 13897 "Export current file as an iCalendar file.
13532The iCalendar file will be located in the same directory as the Org-mode 13898The iCalendar file will be located in the same directory as the Org-mode
@@ -13551,7 +13917,7 @@ The XOXO buffer is named *xoxo-<source buffer name>*"
13551 (org-infile-export-plist))) 13917 (org-infile-export-plist)))
13552 (filename (concat (file-name-as-directory 13918 (filename (concat (file-name-as-directory
13553 (org-export-directory :xoxo opt-plist)) 13919 (org-export-directory :xoxo opt-plist))
13554 (file-name-sans-extension 13920 (file-name-sans-extension
13555 (file-name-nondirectory buffer-file-name)) 13921 (file-name-nondirectory buffer-file-name))
13556 ".html")) 13922 ".html"))
13557 (out (find-file-noselect filename)) 13923 (out (find-file-noselect filename))
@@ -13636,11 +14002,11 @@ The file is stored under the name `org-combined-agenda-icalendar-file'."
13636If COMBINE is non-nil, combine all calendar entries into a single large 14002If COMBINE is non-nil, combine all calendar entries into a single large
13637file and store it under the name `org-combined-agenda-icalendar-file'." 14003file and store it under the name `org-combined-agenda-icalendar-file'."
13638 (save-excursion 14004 (save-excursion
13639 (let* ((dir (org-export-directory 14005 (let* ((dir (org-export-directory
13640 :ical (list :publishing-directory 14006 :ical (list :publishing-directory
13641 org-export-publishing-directory))) 14007 org-export-publishing-directory)))
13642 file ical-file ical-buffer category started org-agenda-new-buffers) 14008 file ical-file ical-buffer category started org-agenda-new-buffers)
13643 14009
13644 (when combine 14010 (when combine
13645 (setq ical-file 14011 (setq ical-file
13646 (if (file-name-absolute-p org-combined-agenda-icalendar-file) 14012 (if (file-name-absolute-p org-combined-agenda-icalendar-file)
@@ -13654,7 +14020,7 @@ file and store it under the name `org-combined-agenda-icalendar-file'."
13654 (set-buffer (org-get-agenda-file-buffer file)) 14020 (set-buffer (org-get-agenda-file-buffer file))
13655 (unless combine 14021 (unless combine
13656 (setq ical-file (concat (file-name-as-directory dir) 14022 (setq ical-file (concat (file-name-as-directory dir)
13657 (file-name-sans-extension 14023 (file-name-sans-extension
13658 (file-name-nondirectory buffer-file-name)) 14024 (file-name-nondirectory buffer-file-name))
13659 ".ics")) 14025 ".ics"))
13660 (setq ical-buffer (org-get-agenda-file-buffer ical-file)) 14026 (setq ical-buffer (org-get-agenda-file-buffer ical-file))
@@ -13793,7 +14159,6 @@ a time), or the day by one (if it does not contain a time)."
13793 14159
13794;; Make `C-c C-x' a prefix key 14160;; Make `C-c C-x' a prefix key
13795(define-key org-mode-map "\C-c\C-x" (make-sparse-keymap)) 14161(define-key org-mode-map "\C-c\C-x" (make-sparse-keymap))
13796(define-key org-mode-map "\C-c\C-e" (make-sparse-keymap))
13797 14162
13798;; TAB key with modifiers 14163;; TAB key with modifiers
13799(define-key org-mode-map "\C-i" 'org-cycle) 14164(define-key org-mode-map "\C-i" 'org-cycle)
@@ -13889,40 +14254,46 @@ a time), or the day by one (if it does not contain a time)."
13889(define-key org-mode-map [(control ?#)] 'org-table-rotate-recalc-marks) 14254(define-key org-mode-map [(control ?#)] 'org-table-rotate-recalc-marks)
13890(define-key org-mode-map "\C-c~" 'org-table-create-with-table.el) 14255(define-key org-mode-map "\C-c~" 'org-table-create-with-table.el)
13891(define-key org-mode-map "\C-c\C-q" 'org-table-wrap-region) 14256(define-key org-mode-map "\C-c\C-q" 'org-table-wrap-region)
13892(define-key org-mode-map "\C-c\C-xa" 'org-export-as-ascii) 14257(define-key org-mode-map "\C-c\C-e" 'org-export)
13893(define-key org-mode-map "\C-c\C-x\C-a" 'org-export-as-ascii) 14258;(define-key org-mode-map "\C-c\C-xa" 'org-export-as-ascii)
13894(define-key org-mode-map "\C-c\C-xv" 'org-export-visible) 14259;(define-key org-mode-map "\C-c\C-x\C-a" 'org-export-as-ascii)
13895(define-key org-mode-map "\C-c\C-x\C-v" 'org-export-visible) 14260;(define-key org-mode-map "\C-c\C-xv" 'org-export-visible)
14261;(define-key org-mode-map "\C-c\C-x\C-v" 'org-export-visible)
13896;; OPML support is only an option for the future 14262;; OPML support is only an option for the future
13897;(define-key org-mode-map "\C-c\C-xo" 'org-export-as-opml) 14263;(define-key org-mode-map "\C-c\C-xo" 'org-export-as-opml)
13898;(define-key org-mode-map "\C-c\C-x\C-o" 'org-export-as-opml) 14264;(define-key org-mode-map "\C-c\C-x\C-o" 'org-export-as-opml)
13899(define-key org-mode-map "\C-c\C-xi" 'org-export-icalendar-this-file) 14265;(define-key org-mode-map "\C-c\C-xi" 'org-export-icalendar-this-file)
13900(define-key org-mode-map "\C-c\C-x\C-i" 'org-export-icalendar-all-agenda-files) 14266;(define-key org-mode-map "\C-c\C-x\C-i" 'org-export-icalendar-all-agenda-files)
13901(define-key org-mode-map "\C-c\C-xc" 'org-export-icalendar-combine-agenda-files) 14267;(define-key org-mode-map "\C-c\C-xc" 'org-export-icalendar-combine-agenda-files)
13902(define-key org-mode-map "\C-c\C-x\C-c" 'org-export-icalendar-combine-agenda-files) 14268;(define-key org-mode-map "\C-c\C-x\C-c" 'org-export-icalendar-combine-agenda-files)
13903(define-key org-mode-map "\C-c\C-xt" 'org-insert-export-options-template) 14269;(define-key org-mode-map "\C-c\C-xt" 'org-insert-export-options-template)
13904(define-key org-mode-map "\C-c:" 'org-toggle-fixed-width-section) 14270(define-key org-mode-map "\C-c:" 'org-toggle-fixed-width-section)
13905(define-key org-mode-map "\C-c\C-xh" 'org-export-as-html) 14271;(define-key org-mode-map "\C-c\C-xh" 'org-export-as-html)
13906(define-key org-mode-map "\C-c\C-xx" 'org-export-as-xoxo) 14272;(define-key org-mode-map "\C-c\C-xx" 'org-export-as-xoxo)
13907(define-key org-mode-map "\C-c\C-x\C-x" 'org-export-as-xoxo) 14273;(define-key org-mode-map "\C-c\C-x\C-x" 'org-export-as-xoxo)
13908(define-key org-mode-map "\C-c\C-xb" 'org-export-as-html-and-open) 14274;(define-key org-mode-map "\C-c\C-xb" 'org-export-as-html-and-open)
13909(define-key org-mode-map "\C-c\C-x\C-b" 'org-export-as-html-and-open) 14275;(define-key org-mode-map "\C-c\C-x\C-b" 'org-export-as-html-and-open)
13910 14276
13911(define-key org-mode-map "\C-c\C-x\C-k" 'org-cut-special) 14277(define-key org-mode-map "\C-c\C-x\C-k" 'org-cut-special)
13912(define-key org-mode-map "\C-c\C-x\C-w" 'org-cut-special) 14278(define-key org-mode-map "\C-c\C-x\C-w" 'org-cut-special)
13913(define-key org-mode-map "\C-c\C-x\M-w" 'org-copy-special) 14279(define-key org-mode-map "\C-c\C-x\M-w" 'org-copy-special)
13914(define-key org-mode-map "\C-c\C-x\C-y" 'org-paste-special) 14280(define-key org-mode-map "\C-c\C-x\C-y" 'org-paste-special)
13915 14281
13916(define-key org-mode-map "\C-c\C-ef" 'org-publish-current-file) 14282(define-key org-mode-map "\C-c\C-x\C-i" 'org-clock-in)
13917(define-key org-mode-map "\C-c\C-ep" 'org-publish-current-project) 14283(define-key org-mode-map "\C-c\C-x\C-o" 'org-clock-out)
13918(define-key org-mode-map "\C-c\C-ec" 'org-publish) 14284(define-key org-mode-map "\C-c\C-x\C-x" 'org-clock-cancel)
13919(define-key org-mode-map "\C-c\C-ea" 'org-publish-all) 14285(define-key org-mode-map "\C-c\C-x\C-d" 'org-clock-display)
13920(define-key org-mode-map "\C-c\C-e\C-f" 'org-publish-current-file) 14286
13921(define-key org-mode-map "\C-c\C-e\C-p" 'org-publish-current-project) 14287;(define-key org-mode-map "\C-c\C-ef" 'org-publish-current-file)
13922(define-key org-mode-map "\C-c\C-e\C-c" 'org-publish) 14288;(define-key org-mode-map "\C-c\C-ep" 'org-publish-current-project)
13923(define-key org-mode-map "\C-c\C-e\C-a" 'org-publish-all) 14289;(define-key org-mode-map "\C-c\C-ec" 'org-publish)
13924 14290;(define-key org-mode-map "\C-c\C-ea" 'org-publish-all)
13925(when (featurep 'xemacs) 14291;(define-key org-mode-map "\C-c\C-e\C-f" 'org-publish-current-file)
14292;(define-key org-mode-map "\C-c\C-e\C-p" 'org-publish-current-project)
14293;(define-key org-mode-map "\C-c\C-e\C-c" 'org-publish)
14294;(define-key org-mode-map "\C-c\C-e\C-a" 'org-publish-all)
14295
14296(when (featurep 'xemacs)
13926 (define-key org-mode-map 'button3 'popup-mode-menu)) 14297 (define-key org-mode-map 'button3 'popup-mode-menu))
13927 14298
13928(defsubst org-table-p () (org-at-table-p)) 14299(defsubst org-table-p () (org-at-table-p))
@@ -13965,7 +14336,7 @@ because, in this case the deletion might narrow the column."
13965 (eq N 1) 14336 (eq N 1)
13966 (string-match "|" (buffer-substring (point-at-bol) (point))) 14337 (string-match "|" (buffer-substring (point-at-bol) (point)))
13967 (looking-at ".*?|")) 14338 (looking-at ".*?|"))
13968 (let ((pos (point)) 14339 (let ((pos (point))
13969 (noalign (looking-at "[^|\n\r]* |")) 14340 (noalign (looking-at "[^|\n\r]* |"))
13970 (c org-table-may-need-update)) 14341 (c org-table-may-need-update))
13971 (backward-delete-char N) 14342 (backward-delete-char N)
@@ -14028,12 +14399,12 @@ COMMANDS is a list of alternating OLDDEF NEWDEF command names."
14028 "Throw an error because Shift-Cursor command was applied in wrong context." 14399 "Throw an error because Shift-Cursor command was applied in wrong context."
14029 (error "This command is active in special context like tables, headlines or timestamps")) 14400 (error "This command is active in special context like tables, headlines or timestamps"))
14030 14401
14031(defun org-shifttab () 14402(defun org-shifttab (&optional arg)
14032 "Global visibility cycling or move to previous table field. 14403 "Global visibility cycling or move to previous table field.
14033Calls `org-cycle' with argument t, or `org-table-previous-field', depending 14404Calls `org-cycle' with argument t, or `org-table-previous-field', depending
14034on context. 14405on context.
14035See the individual commands for more information." 14406See the individual commands for more information."
14036 (interactive) 14407 (interactive "P")
14037 (cond 14408 (cond
14038 ((org-at-table-p) (call-interactively 'org-table-previous-field)) 14409 ((org-at-table-p) (call-interactively 'org-table-previous-field))
14039 (t (call-interactively 'org-global-cycle)))) 14410 (t (call-interactively 'org-global-cycle))))
@@ -14204,7 +14575,7 @@ This command does many different things, depending on context:
14204 14575
14205- If the cursor is in one of the special #+KEYWORD lines, this 14576- If the cursor is in one of the special #+KEYWORD lines, this
14206 triggers scanning the buffer for these lines and updating the 14577 triggers scanning the buffer for these lines and updating the
14207 information. 14578 information.
14208 14579
14209- If the cursor is inside a table, realign the table. This command 14580- If the cursor is inside a table, realign the table. This command
14210 works even if the automatic table editor has been turned off. 14581 works even if the automatic table editor has been turned off.
@@ -14227,6 +14598,12 @@ This command does many different things, depending on context:
14227 (interactive "P") 14598 (interactive "P")
14228 (let ((org-enable-table-editor t)) 14599 (let ((org-enable-table-editor t))
14229 (cond 14600 (cond
14601 (org-clock-overlays
14602 (org-remove-clock-overlays)
14603 (message "Clock overlays removed"))
14604 (org-occur-highlights
14605 (org-remove-occur-highlights)
14606 (message "occur highlights removed"))
14230 ((and (local-variable-p 'org-finish-function (current-buffer)) 14607 ((and (local-variable-p 'org-finish-function (current-buffer))
14231 (fboundp org-finish-function)) 14608 (fboundp org-finish-function))
14232 (funcall org-finish-function)) 14609 (funcall org-finish-function))
@@ -14403,6 +14780,18 @@ See the individual commands for more information."
14403 "--" 14780 "--"
14404 ["Goto Calendar" org-goto-calendar t] 14781 ["Goto Calendar" org-goto-calendar t]
14405 ["Date from Calendar" org-date-from-calendar t]) 14782 ["Date from Calendar" org-date-from-calendar t])
14783 ("Logging work"
14784 ["Clock in" org-clock-in t]
14785 ["Clock out" org-clock-out t]
14786 ["Clock cancel" org-clock-cancel t]
14787 ["Display times" org-clock-display t]
14788 "--"
14789 ["Record DONE time"
14790 (progn (setq org-log-done (not org-log-done))
14791 (message "Switching to %s will %s record a timestamp"
14792 org-done-string
14793 (if org-log-done "automatically" "not")))
14794 :style toggle :selected org-log-done])
14406 "--" 14795 "--"
14407 ["Agenda Command" org-agenda t] 14796 ["Agenda Command" org-agenda t]
14408 ("File List for Agenda") 14797 ("File List for Agenda")
@@ -14426,28 +14815,10 @@ See the individual commands for more information."
14426 :style radio :selected (not (member '(org-link) buffer-invisibility-spec))] 14815 :style radio :selected (not (member '(org-link) buffer-invisibility-spec))]
14427 "--" 14816 "--"
14428 ["Upgrade all <link> to [[link][desc]]" org-upgrade-old-links 14817 ["Upgrade all <link> to [[link][desc]]" org-upgrade-old-links
14429 (save-excursion (goto-char (point-min)) 14818 (save-excursion (goto-char (point-min))
14430 (re-search-forward "<[a-z]+:" nil t))]) 14819 (re-search-forward "<[a-z]+:" nil t))])
14431 "--" 14820 "--"
14432 ("Export" 14821 ["Export/Publish" org-export t]
14433 ["ASCII" org-export-as-ascii t]
14434 ["Export visible part..." org-export-visible t]
14435 ["HTML" org-export-as-html t]
14436 ["HTML and Open" org-export-as-html-and-open t]
14437 ["XOXO" org-export-as-xoxo t]
14438 "--"
14439 ["iCalendar this file" org-export-icalendar-this-file t]
14440 ["iCalendar all agenda files" org-export-icalendar-all-agenda-files
14441 :active t :keys "C-c C-x C-i"]
14442 ["iCalendar combined" org-export-icalendar-combine-agenda-files t]
14443 "--"
14444 ["Option Template" org-insert-export-options-template t]
14445 ["Toggle Fixed Width" org-toggle-fixed-width-section t])
14446 ("Publish"
14447 ["Current File" org-publish-current-file t]
14448 ["Current Project" org-publish-current-project t]
14449 ["Project..." org-publish t]
14450 ["All Projects" org-publish-all t])
14451 "--" 14822 "--"
14452 ("Documentation" 14823 ("Documentation"
14453 ["Show Version" org-version t] 14824 ["Show Version" org-version t]
@@ -14649,6 +15020,7 @@ return nil."
14649 ;; But only if the user has not turned off tables or fixed-width regions 15020 ;; But only if the user has not turned off tables or fixed-width regions
14650 (set (make-local-variable 'auto-fill-inhibit-regexp) 15021 (set (make-local-variable 'auto-fill-inhibit-regexp)
14651 (concat "\\*\\|#" 15022 (concat "\\*\\|#"
15023 "\\|[ \t]*" org-keyword-time-regexp
14652 (if (or org-enable-table-editor org-enable-fixed-width-editor) 15024 (if (or org-enable-table-editor org-enable-fixed-width-editor)
14653 (concat 15025 (concat
14654 "\\|[ \t]*[" 15026 "\\|[ \t]*["
@@ -14968,10 +15340,5 @@ Show the heading too, if it is currently invisible."
14968 15340
14969(run-hooks 'org-load-hook) 15341(run-hooks 'org-load-hook)
14970 15342
14971
14972;; arch-tag: e77da1a7-acc7-4336-b19e-efa25af3f9fd 15343;; arch-tag: e77da1a7-acc7-4336-b19e-efa25af3f9fd
14973;;; org.el ends here 15344;;; org.el ends here
14974
14975
14976
14977
diff --git a/lisp/textmodes/page-ext.el b/lisp/textmodes/page-ext.el
index 280a8d28020..24282872f67 100644
--- a/lisp/textmodes/page-ext.el
+++ b/lisp/textmodes/page-ext.el
@@ -777,7 +777,9 @@ directory."
777 (or filename pages-addresses-file-name)))) 777 (or filename pages-addresses-file-name))))
778 (widen) 778 (widen)
779 (pages-directory t nil nil) 779 (pages-directory t nil nil)
780 (pages-directory-address-mode) 780 ;; by RJC, 2006 Jun 11: including this causes failure; it results in
781 ;; the message "Buffer in which pages were found is deleted"
782 ;; (pages-directory-address-mode)
781 (setq pages-directory-buffer-narrowing-p 783 (setq pages-directory-buffer-narrowing-p
782 pages-directory-for-addresses-goto-narrowing-p) 784 pages-directory-for-addresses-goto-narrowing-p)
783 (or pages-directory-for-addresses-buffer-keep-windows-p 785 (or pages-directory-for-addresses-buffer-keep-windows-p
diff --git a/lispref/ChangeLog b/lispref/ChangeLog
index 16ba4acd74a..e965f92a279 100644
--- a/lispref/ChangeLog
+++ b/lispref/ChangeLog
@@ -1,3 +1,52 @@
12006-06-16 Richard Stallman <rms@gnu.org>
2
3 * tips.texi (Coding Conventions): Better explain conventions
4 for definition constructs.
5
6 * text.texi (Special Properties): String value of `read-only'
7 serves as the error message.
8
9 * objects.texi (Character Type): Clarify prev. change.
10 (Non-ASCII in Strings): Mention \u and \U.
11
12 * commands.texi (Using Interactive): Explain problem of
13 markers, etc., in command-history.
14
152006-06-14 Kim F. Storm <storm@cua.dk>
16
17 * commands.texi (Waiting): Negative arg to sit-for forces
18 redisplay even if input is pending.
19
20 * display.texi (Forcing Redisplay): Use (sit-for -1) to force a
21 redisplay. Remove incorrect example of binding redisplay-dont-pause
22 around (sit-for 0).
23
242006-06-13 Richard Stallman <rms@gnu.org>
25
26 * display.texi (Forcing Redisplay): Clarify previous change.
27
282006-06-13 Romain Francoise <romain@orebokech.com>
29
30 * display.texi (Forcing Redisplay): Fix typo.
31
322006-06-13 Kim F. Storm <storm@cua.dk>
33
34 * display.texi (Forcing Redisplay): Add redisplay-preemption-period.
35
362006-06-10 Luc Teirlinck <teirllm@auburn.edu>
37
38 * tips.texi (Coding Conventions): Add `@end itemize'.
39
402006-06-10 Richard Stallman <rms@gnu.org>
41
42 * tips.texi (Coding Conventions): Explain use of coding systems
43 to ensure one decoding for strings.
44
452006-06-09 Aidan Kehoe <kehoea@parhasard.net>
46
47 * objects.texi (Character Type): Describe the\uABCD and \U00ABCDEF
48 syntax.
49
12006-06-07 Eli Zaretskii <eliz@gnu.org> 502006-06-07 Eli Zaretskii <eliz@gnu.org>
2 51
3 * display.texi (Font Selection): Remove description of 52 * display.texi (Font Selection): Remove description of
diff --git a/lispref/commands.texi b/lispref/commands.texi
index 0723c368bba..e494d0dfc5a 100644
--- a/lispref/commands.texi
+++ b/lispref/commands.texi
@@ -233,6 +233,20 @@ reading the keyboard input:
233 (let ((string (read-string "Foo: " nil 'my-history))) 233 (let ((string (read-string "Foo: " nil 'my-history)))
234 (list (region-beginning) (region-end) string))) 234 (list (region-beginning) (region-end) string)))
235@end smallexample 235@end smallexample
236
237@strong{Warning:} the argument values should not include any data
238types that can't be printed and then read. Some facilities save
239@code{command-history} in a file to be read in the subsequent
240sessions; if a command's arguments contain a data type that prints
241using @samp{#<@dots{}>} syntax, those facilities won't work.
242
243There are, however, a few exceptions: it is ok to use a limited set of
244expressions such as @code{(point)}, @code{(mark)},
245@code{(region-beginning)}, and @code{(region-end)}, because Emacs
246recognizes them specially and puts the expression (rather than its
247value) into the command history. To see whether the expression you
248wrote is one of these exceptions, run the command, then examine
249@code{(car command-history)}.
236@end itemize 250@end itemize
237 251
238@cindex examining the @code{interactive} form 252@cindex examining the @code{interactive} form
@@ -2532,8 +2546,11 @@ point number, @code{sit-for} waits for a fractional number of seconds.
2532Some systems support only a whole number of seconds; on these systems, 2546Some systems support only a whole number of seconds; on these systems,
2533@var{seconds} is rounded down. 2547@var{seconds} is rounded down.
2534 2548
2549If @var{seconds} is negative, force a redisplay even if there is
2550pending input. So use @code{(sit-for -1)} to force a redisplay.
2551
2535The expression @code{(sit-for 0)} is a convenient way to request a 2552The expression @code{(sit-for 0)} is a convenient way to request a
2536redisplay, without any delay. @xref{Forcing Redisplay}. 2553redisplay, without any delay, if there is no pending input. @xref{Forcing Redisplay}.
2537 2554
2538If @var{nodisp} is non-@code{nil}, then @code{sit-for} does not 2555If @var{nodisp} is non-@code{nil}, then @code{sit-for} does not
2539redisplay, but it still returns as soon as input is available (or when 2556redisplay, but it still returns as soon as input is available (or when
diff --git a/lispref/display.texi b/lispref/display.texi
index 1b8e66ec23e..fb4d5678abb 100644
--- a/lispref/display.texi
+++ b/lispref/display.texi
@@ -94,6 +94,20 @@ at all if input is available before it starts. Most of the time, this
94is exactly what you want. However, you can prevent preemption by 94is exactly what you want. However, you can prevent preemption by
95binding @code{redisplay-dont-pause} to a non-@code{nil} value. 95binding @code{redisplay-dont-pause} to a non-@code{nil} value.
96 96
97@tindex redisplay-preemption-period
98@defvar redisplay-preemption-period
99This variable specifies how many seconds Emacs waits between checks
100for new input during redisplay. (The default is 0.1 seconds.) If
101input has arrived when Emacs checks, it pre-empts redisplay and
102processes the available input before trying again to redisplay.
103
104If this variable is @code{nil}, Emacs does not check for input during
105redisplay, and redisplay cannot be preempted by input.
106
107@emph{Note} that this variable is only available if Emacs is built
108with support for sub-second timers.
109@end defvar
110
97@tindex redisplay-dont-pause 111@tindex redisplay-dont-pause
98@defvar redisplay-dont-pause 112@defvar redisplay-dont-pause
99If this variable is non-@code{nil}, pending input does not 113If this variable is non-@code{nil}, pending input does not
@@ -101,14 +115,10 @@ prevent or halt redisplay; redisplay occurs, and finishes,
101regardless of whether input is available. 115regardless of whether input is available.
102@end defvar 116@end defvar
103 117
118@tindex sit-for
104 You can request a display update, but only if no input is pending, 119 You can request a display update, but only if no input is pending,
105with @code{(sit-for 0)}. To force a display update even when input is 120with @code{(sit-for 0)}. To force a display update even when input is
106pending, do this: 121pending, use @code{(sit-for -1)}.
107
108@example
109(let ((redisplay-dont-pause t))
110 (sit-for 0))
111@end example
112 122
113@node Truncation 123@node Truncation
114@section Truncation 124@section Truncation
diff --git a/lispref/objects.texi b/lispref/objects.texi
index 5665e5beee6..b721809d18b 100644
--- a/lispref/objects.texi
+++ b/lispref/objects.texi
@@ -431,6 +431,19 @@ Numerically, the
431bit values are 2**22 for alt, 2**23 for super and 2**24 for hyper. 431bit values are 2**22 for alt, 2**23 for super and 2**24 for hyper.
432@end ifnottex 432@end ifnottex
433 433
434@cindex unicode character escape
435 Emacs provides a syntax for specifying characters by their Unicode
436code points. @code{?\u@var{nnnn}} represents a character that maps to
437the Unicode code point @samp{U+@var{nnnn}}. There is a slightly
438different syntax for specifying characters with code points above
439@code{#xFFFF}; @code{\U00@var{nnnnnn}} represents the character whose
440Unicode code point is @samp{U+@var{nnnnnn}}, if such a character
441is supported by Emacs.
442
443 This peculiar and inconvenient syntax was adopted for compatibility
444with other programming languages. Unlike some other languages, Emacs
445Lisp supports this syntax in only character literals and strings.
446
434@cindex @samp{\} in character constant 447@cindex @samp{\} in character constant
435@cindex backslash in character constant 448@cindex backslash in character constant
436@cindex octal character code 449@cindex octal character code
@@ -1000,6 +1013,9 @@ this produces a unibyte string. However, using any hex escape in a
1000string (even for an @acronym{ASCII} character) forces the string to be 1013string (even for an @acronym{ASCII} character) forces the string to be
1001multibyte. 1014multibyte.
1002 1015
1016 You can also specify characters in a string by their numeric values
1017in Unicode, using @samp{\u} and @samp{\U} (@pxref{Character Type}).
1018
1003 @xref{Text Representations}, for more information about the two 1019 @xref{Text Representations}, for more information about the two
1004text representations. 1020text representations.
1005 1021
diff --git a/lispref/text.texi b/lispref/text.texi
index 426ec1ef00f..802c69145c5 100644
--- a/lispref/text.texi
+++ b/lispref/text.texi
@@ -3098,7 +3098,8 @@ about this particular character. @xref{Syntax Properties}.
3098@kindex read-only @r{(text property)} 3098@kindex read-only @r{(text property)}
3099If a character has the property @code{read-only}, then modifying that 3099If a character has the property @code{read-only}, then modifying that
3100character is not allowed. Any command that would do so gets an error, 3100character is not allowed. Any command that would do so gets an error,
3101@code{text-read-only}. 3101@code{text-read-only}. If the property value is a string, that string
3102is used as the error message.
3102 3103
3103Insertion next to a read-only character is an error if inserting 3104Insertion next to a read-only character is an error if inserting
3104ordinary text there would inherit the @code{read-only} property due to 3105ordinary text there would inherit the @code{read-only} property due to
diff --git a/lispref/tips.texi b/lispref/tips.texi
index d2060a942bf..37461398473 100644
--- a/lispref/tips.texi
+++ b/lispref/tips.texi
@@ -204,11 +204,14 @@ say which functions are replaced, and how the behavior of the
204replacements differs from that of the originals. 204replacements differs from that of the originals.
205 205
206@item 206@item
207Avoid using macros that define functions and variables with names that 207Constructs that define a function or variable should be macros,
208are constructed. It is best for maintenance when the name of the 208not functions, and their names should start with @samp{def}.
209function or variable being defined is given explicitly in the source 209
210code, as the second element of the list---as it is when you use 210@item
211@code{defun}, @code{defalias}, @code{defvar} and @code{defcustom}. 211Macros that define a functions or variables should take the name to be
212defined as the first argument. That will help various tools find the
213definition automatically. Avoid constructing the names in the macro
214itself, since that would confuse these tools.
212 215
213@item 216@item
214Please keep the names of your Emacs Lisp source files to 13 characters 217Please keep the names of your Emacs Lisp source files to 13 characters
@@ -224,6 +227,32 @@ only for special-purpose buffers.) The users will find Emacs more
224coherent if all libraries use the same conventions. 227coherent if all libraries use the same conventions.
225 228
226@item 229@item
230If your program contains non-ASCII characters in string or character
231constants, you should make sure Emacs always decodes these characters
232the same way, regardless of the user's settings. There are two ways
233to do that:
234
235@itemize -
236@item
237Use coding system @code{emacs-mule}, and specify that for
238@code{coding} in the @samp{-*-} line or the local variables list.
239
240@example
241;; XXX.el -*- coding: emacs-mule; -*-
242@end example
243
244@item
245Use one of the coding systems based on ISO 2022 (such as
246iso-8859-@var{n} and iso-2022-7bit), and specify it with @samp{!} at
247the end for @code{coding}. (The @samp{!} turns off any possible
248character translation.)
249
250@example
251;; XXX.el -*- coding: iso-latin-2!; -*-
252@end example
253@end itemize
254
255@item
227Indent each function with @kbd{C-M-q} (@code{indent-sexp}) using the 256Indent each function with @kbd{C-M-q} (@code{indent-sexp}) using the
228default indentation parameters. 257default indentation parameters.
229 258
diff --git a/man/ChangeLog b/man/ChangeLog
index 00a2ae3ef34..627f528de85 100644
--- a/man/ChangeLog
+++ b/man/ChangeLog
@@ -1,3 +1,16 @@
12006-06-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2
3 * macos.texi (Mac Input): Add description of mac-function-modifier.
4 Now Unicode keyboard layouts work.
5
62006-06-10 Carsten Dominik <dominik@science.uva.nl>
7
8 * org.texi: (Progress logging): New section.
9
102006-06-10 Richard Stallman <rms@gnu.org>
11
12 * mule.texi (Recognize Coding): Clarify previous change.
13
12006-06-07 Kevin Ryde <user42@zip.com.au> 142006-06-07 Kevin Ryde <user42@zip.com.au>
2 15
3 * mule.texi (Coding Systems): Footnote xref "MS-DOS and MULE" in main 16 * mule.texi (Coding Systems): Footnote xref "MS-DOS and MULE" in main
diff --git a/man/macos.texi b/man/macos.texi
index a6c1020fbc5..347149a4db0 100644
--- a/man/macos.texi
+++ b/man/macos.texi
@@ -45,16 +45,17 @@ features such as file dialogs, drag-and-drop, and Unicode menus.
45@vindex mac-control-modifier 45@vindex mac-control-modifier
46@vindex mac-command-modifier 46@vindex mac-command-modifier
47@vindex mac-option-modifier 47@vindex mac-option-modifier
48 On Mac, Emacs can use @key{control}, @key{command}, and @key{option} 48@vindex mac-function-modifier
49keys as any of Emacs modifier keys except @key{SHIFT} (i.e., 49 On Mac, Emacs can use @key{control}, @key{command}, @key{option}, and
50@key{ALT}, @key{CTRL}, @key{HYPER}, @key{META}, and @key{SUPER}). The 50laptop @key{function} keys as any of Emacs modifier keys except
51assignment is controlled by the variables @code{mac-control-modifier}, 51@key{SHIFT} (i.e., @key{ALT}, @key{CTRL}, @key{HYPER}, @key{META}, and
52@code{mac-command-modifier}, and @code{mac-option-modifier}. The 52@key{SUPER}). The assignment is controlled by the variables
53value for each of these variables can be one of the following symbols: 53@code{mac-control-modifier}, @code{mac-command-modifier},
54@code{alt}, @code{control}, @code{hyper}, @code{meta}, @code{super}, 54@code{mac-option-modifier}, and @code{mac-function-modifier}. The value
55and @code{nil} (no particular assignment). By default, the 55for each of these variables can be one of the following symbols:
56@key{control} key works as @key{CTRL}, and the @key{command} key as 56@code{alt}, @code{control}, @code{hyper}, @code{meta}, @code{super}, and
57@key{META}. 57@code{nil} (no particular assignment). By default, the @key{control}
58key works as @key{CTRL}, and the @key{command} key as @key{META}.
58 59
59 For the @key{option} key, if @code{mac-option-modifier} is set to 60 For the @key{option} key, if @code{mac-option-modifier} is set to
60@code{nil}, which is the default, the key works as the normal 61@code{nil}, which is the default, the key works as the normal
@@ -64,13 +65,9 @@ Mac keyboard, for example.
64 65
65 Emacs recognizes the setting in the Keyboard control panel (Mac OS 66 Emacs recognizes the setting in the Keyboard control panel (Mac OS
66Classic) or the International system preference pane (Mac OS X) and 67Classic) or the International system preference pane (Mac OS X) and
67supports international and alternative keyboard layouts (e.g., Dvorak) 68supports international and alternative keyboard layouts (e.g., Dvorak).
68if its script is either Roman, Japanese, Traditional Chinese, Korean, 69Selecting one of the layouts from the keyboard layout pull-down menu
69Cyrillic, Simplified Chinese, or Central European. Keyboard layouts 70will affect how the keys typed on the keyboard are interpreted.
70based on Unicode may not work properly. (Try drag-and-drop if input
71from the Character Palette does not work.) Selecting one of the layouts
72from the keyboard layout pull-down menu will affect how the keys typed
73on the keyboard are interpreted.
74 71
75@vindex mac-pass-command-to-system 72@vindex mac-pass-command-to-system
76@vindex mac-pass-control-to-system 73@vindex mac-pass-control-to-system
diff --git a/man/mule.texi b/man/mule.texi
index 812a4d57a1c..8220a5097d1 100644
--- a/man/mule.texi
+++ b/man/mule.texi
@@ -824,6 +824,14 @@ Latin-1 coding system, as well as C mode. When you specify the coding
824explicitly in the file, that overrides 824explicitly in the file, that overrides
825@code{file-coding-system-alist}. 825@code{file-coding-system-alist}.
826 826
827 If you add the character @samp{!} at the end of the coding system
828name, it disables any character translation while decoding the file.
829For instance, it effectively cancels the effect of
830@code{unify-8859-on-decoding-mode}. This is useful when you need to
831make sure that the character codes in the Emacs buffer will not
832according to user settings; for instance, for the sake of strings in
833Emacs Lisp source files.
834
827@vindex auto-coding-alist 835@vindex auto-coding-alist
828@vindex auto-coding-regexp-alist 836@vindex auto-coding-regexp-alist
829@vindex auto-coding-functions 837@vindex auto-coding-functions
diff --git a/man/org.texi b/man/org.texi
index 27970a1aea8..c88205887ba 100644
--- a/man/org.texi
+++ b/man/org.texi
@@ -1,10 +1,9 @@
1\input texinfo 1\input texinfo
2
3@c %**start of header 2@c %**start of header
4@setfilename ../info/org 3@setfilename ../info/org
5@settitle Org Mode Manual 4@settitle Org Mode Manual
6 5
7@set VERSION 4.36 6@set VERSION 4.37
8@set DATE June 2006 7@set DATE June 2006
9 8
10@dircategory Emacs 9@dircategory Emacs
@@ -146,7 +145,6 @@ Internal links
146TODO items 145TODO items
147 146
148* TODO basics:: Marking and displaying TODO entries 147* TODO basics:: Marking and displaying TODO entries
149* Progress logging:: Document your productivity
150* TODO extensions:: Workflow and assignments 148* TODO extensions:: Workflow and assignments
151* Priorities:: Some things are more important than others 149* Priorities:: Some things are more important than others
152 150
@@ -160,6 +158,12 @@ Timestamps
160 158
161* Time stamps:: Assigning a time to a tree entry 159* Time stamps:: Assigning a time to a tree entry
162* Creating timestamps:: Commands which insert timestamps 160* Creating timestamps:: Commands which insert timestamps
161* Progress logging:: Documenting when what work was done.
162
163Progress Logging
164
165* Closing items:: When was this entry makred DONE?
166* Clocking work time:: When exactly did you work on this item?
163 167
164Tags 168Tags
165 169
@@ -1921,12 +1925,11 @@ things you have to do.
1921 1925
1922@menu 1926@menu
1923* TODO basics:: Marking and displaying TODO entries 1927* TODO basics:: Marking and displaying TODO entries
1924* Progress logging:: Document your productivity
1925* TODO extensions:: Workflow and assignments 1928* TODO extensions:: Workflow and assignments
1926* Priorities:: Some things are more important than others 1929* Priorities:: Some things are more important than others
1927@end menu 1930@end menu
1928 1931
1929@node TODO basics, Progress logging, TODO items, TODO items 1932@node TODO basics, TODO extensions, TODO items, TODO items
1930@section Basic TODO functionality 1933@section Basic TODO functionality
1931 1934
1932Any headline can become a TODO item by starting it with the word TODO, 1935Any headline can become a TODO item by starting it with the word TODO,
@@ -1978,28 +1981,8 @@ the TODO entries directly from that buffer (@pxref{Agenda commands}).
1978@c agenda, customize the variable @code{org-agenda-include-all-todo}. 1981@c agenda, customize the variable @code{org-agenda-include-all-todo}.
1979@end table 1982@end table
1980 1983
1981@node Progress logging, TODO extensions, TODO basics, TODO items
1982@section Progress Logging
1983@cindex progress logging
1984@cindex logging, of progress
1985If you want to keep track of @emph{when} a certain TODO item was
1986finished, turn on logging with
1987 1984
1988@lisp 1985@node TODO extensions, Priorities, TODO basics, TODO items
1989(setq org-log-done t)
1990@end lisp
1991
1992@noindent
1993Then each time you turn a TODO entry into DONE using either @kbd{C-c
1994C-t} in the Org-mode buffer or @kbd{t} in the agenda buffer, a line
1995@samp{CLOSED: [timestamp]} will be inserted just after the headline.
1996If you turn the entry back into a TODO item again through further
1997state cycling, that line will be removed again. In the timeline
1998(@pxref{Timeline}) and in the agenda (@pxref{Weekly/Daily agenda}),
1999you can then use the @kbd{L} key to display the TODO items closed on
2000each day, giving you an overview of what has been done on a day.
2001
2002@node TODO extensions, Priorities, Progress logging, TODO items
2003@section Extended use of TODO keywords 1986@section Extended use of TODO keywords
2004@cindex extended TODO keywords 1987@cindex extended TODO keywords
2005 1988
@@ -2166,6 +2149,7 @@ planning.
2166@menu 2149@menu
2167* Time stamps:: Assigning a time to a tree entry 2150* Time stamps:: Assigning a time to a tree entry
2168* Creating timestamps:: Commands which insert timestamps 2151* Creating timestamps:: Commands which insert timestamps
2152* Progress logging:: Documenting when what work was done.
2169@end menu 2153@end menu
2170 2154
2171 2155
@@ -2239,9 +2223,17 @@ When @code{org-log-done} is non-nil, Org-mode will automatically insert
2239a special time stamp each time a TODO entry is marked done 2223a special time stamp each time a TODO entry is marked done
2240(@pxref{Progress logging}). This time stamp is enclosed in square 2224(@pxref{Progress logging}). This time stamp is enclosed in square
2241brackets instead of angular brackets. 2225brackets instead of angular brackets.
2226
2227@item Time range with CLOCK keyword
2228@cindex CLOCK keyword
2229When using the clock to time the work that is being done on specific
2230items, time ranges preceeded by the CLOCK keyword are inserted
2231automatically into the file. The time stamps are enclosed in square
2232brackets instead of angular brackets. @xref{Clocking work time}.
2233@c FIXME: Reference needed
2242@end table 2234@end table
2243 2235
2244@node Creating timestamps, , Time stamps, Timestamps 2236@node Creating timestamps, Progress logging, Time stamps, Timestamps
2245@section Creating timestamps 2237@section Creating timestamps
2246@cindex creating timestamps 2238@cindex creating timestamps
2247@cindex timestamps, creating 2239@cindex timestamps, creating
@@ -2373,6 +2365,82 @@ One month back.
2373Choose date in calendar (only if nothing typed into minibuffer). 2365Choose date in calendar (only if nothing typed into minibuffer).
2374@end table 2366@end table
2375 2367
2368@node Progress logging, , Creating timestamps, Timestamps
2369@section Progress Logging
2370@cindex progress logging
2371@cindex logging, of progress
2372
2373Org-mode can automatically record a time stamp when you mark a TODO item
2374as DONE. You can also measure precisely the time you spent on specific
2375items in a project by starting and stopping a clock when you start and
2376stop working on an aspect of a project.
2377
2378@menu
2379* Closing items:: When was this entry makred DONE?
2380* Clocking work time:: When exactly did you work on this item?
2381@end menu
2382
2383@node Closing items, Clocking work time, Progress logging, Progress logging
2384@subsection Closing items
2385
2386If you want to keep track of @emph{when} a certain TODO item was
2387finished, turn on logging with
2388
2389@lisp
2390(setq org-log-done t)
2391@end lisp
2392
2393@noindent
2394Then each time you turn a TODO entry into DONE using either @kbd{C-c
2395C-t} in the Org-mode buffer or @kbd{t} in the agenda buffer, a line
2396@samp{CLOSED: [timestamp]} will be inserted just after the headline.
2397If you turn the entry back into a TODO item again through further
2398state cycling, that line will be removed again. In the timeline
2399(@pxref{Timeline}) and in the agenda (@pxref{Weekly/Daily agenda}),
2400you can then use the @kbd{l} key to display the TODO items closed on
2401each day, giving you an overview of what has been done on a day.
2402
2403@node Clocking work time, , Closing items, Progress logging
2404@subsection Clocking work time
2405
2406Org-mode allows you to clock the time you spent on specific tasks in a
2407project. When you start working on an item, you can start the clock.
2408When you stop working on that tast, or when you makr the task done, the
2409clock is stoppend and the corresponding time interval is recorded. It
2410also computes the total time spent on each subtree of a project.
2411
2412@table @kbd
2413@kindex C-c C-x C-i
2414@item C-c C-x C-i
2415Start the clock on the current item (clock-in). This inserts the CLOCK
2416keyword together with a timestamp.
2417@kindex C-c C-x C-o
2418@item C-c C-x C-o
2419Stop the clock (clock-out). The inserts another timestamp at the same
2420location where the clock was last started. It also directly computes
2421the resulting time in inserts it after the time range as @samp{=>
2422HH:MM}.
2423@kindex C-c C-t
2424@item C-c C-t
2425Changing the TODO state of an item to DONE automatically stops the clock
2426if it is running in this same item.
2427@kindex C-c C-x C-x
2428@item C-c C-x C-x
2429Cancel the current clock. This is useful if a clock was started by
2430mistake, or if you ended up working on something else.
2431@kindex C-c C-x C-d
2432@item C-c C-x C-d
2433Display time summaries for each subtree in the current buffer. This
2434puts overlays at the end of each headline, showing the total time
2435recorded under that heading, including the time of any subheadings. You
2436can use visibility cycling to study the tree, but the overlays disappear
2437automatically when the buffer is changed.
2438@end table
2439
2440The @kbd{l} key may be used in the timeline (@pxref{Timeline}) and in
2441the agenda (@pxref{Weekly/Daily agenda}) to show which tasks have been
2442worked on or closed during a day.
2443
2376@node Tags, Agenda views, Timestamps, Top 2444@node Tags, Agenda views, Timestamps, Top
2377@chapter Tags 2445@chapter Tags
2378@cindex tags 2446@cindex tags
@@ -2958,7 +3026,8 @@ agenda buffers can be set with the variable
2958@kindex l 3026@kindex l
2959@item l 3027@item l
2960Toggle Logbook mode. In Logbook mode, entries that where marked DONE while 3028Toggle Logbook mode. In Logbook mode, entries that where marked DONE while
2961logging was on (variable @code{org-log-done}) are shown in the agenda. 3029logging was on (variable @code{org-log-done}) are shown in the agenda,
3030as are entries that have been clocked on that day.
2962 3031
2963@tsubheading{Change display} 3032@tsubheading{Change display}
2964@kindex o 3033@kindex o
@@ -3075,13 +3144,16 @@ Change the time stamp associated with the current line to today.
3075The key @kbd{>} has been chosen, because it is the same as @kbd{S-.} 3144The key @kbd{>} has been chosen, because it is the same as @kbd{S-.}
3076on my keyboard. 3145on my keyboard.
3077 3146
3078@cindex diary entries, creating from agenda 3147@kindex I
3079@kindex i 3148@item I
3080@item i 3149Start the clock on the current item. If a clock is running already, it
3081Insert a new entry into the diary. Prompts for the type of entry 3150is stopped first.
3082(day, weekly, monthly, yearly, anniversary, cyclic) and creates a new 3151@kindex O
3083entry in the diary, just as @kbd{i d} etc. would do in the calendar. 3152@item O
3084The date is taken from the cursor position. 3153Stop the previously started clock.
3154@kindex X
3155@item X
3156Cancel the currently running clock.
3085 3157
3086@tsubheading{Calendar commands} 3158@tsubheading{Calendar commands}
3087@kindex c 3159@kindex c
@@ -3092,6 +3164,14 @@ Open the Emacs calendar and move to the date at the agenda cursor.
3092When in the calendar, compute and show the Org-mode agenda for the 3164When in the calendar, compute and show the Org-mode agenda for the
3093date at the cursor. 3165date at the cursor.
3094 3166
3167@cindex diary entries, creating from agenda
3168@kindex i
3169@item i
3170Insert a new entry into the diary. Prompts for the type of entry
3171(day, weekly, monthly, yearly, anniversary, cyclic) and creates a new
3172entry in the diary, just as @kbd{i d} etc. would do in the calendar.
3173The date is taken from the cursor position.
3174
3095@kindex M 3175@kindex M
3096@item M 3176@item M
3097Show the phases of the moon for the three months around current date. 3177Show the phases of the moon for the three months around current date.
diff --git a/src/.gdbinit b/src/.gdbinit
index 7de361fddfb..dd848fed3d5 100644
--- a/src/.gdbinit
+++ b/src/.gdbinit
@@ -190,12 +190,8 @@ define pitx
190 printf " ch=[%d,%d]", $it->c, $it->len 190 printf " ch=[%d,%d]", $it->c, $it->len
191 end 191 end
192 else 192 else
193 if ($it->what == IT_IMAGE) 193 printf " "
194 printf " IMAGE=%d", $it->image_id 194 output $it->what
195 else
196 printf " "
197 output $it->what
198 end
199 end 195 end
200 if ($it->method != GET_FROM_BUFFER) 196 if ($it->method != GET_FROM_BUFFER)
201 printf " next=" 197 printf " next="
@@ -203,6 +199,12 @@ define pitx
203 if ($it->method == GET_FROM_STRING) 199 if ($it->method == GET_FROM_STRING)
204 printf "[%d]", $it->current.string_pos.charpos 200 printf "[%d]", $it->current.string_pos.charpos
205 end 201 end
202 if ($it->method == GET_FROM_IMAGE)
203 printf "[%d]", $it->image_id
204 end
205 if ($it->method == GET_FROM_COMPOSITION)
206 printf "[%d,%d,%d]", $it->cmp_id, $it->len, $it->cmp_len
207 end
206 end 208 end
207 printf "\n" 209 printf "\n"
208 if ($it->region_beg_charpos >= 0) 210 if ($it->region_beg_charpos >= 0)
@@ -372,6 +374,121 @@ document pwin
372Pretty print window structure w. 374Pretty print window structure w.
373end 375end
374 376
377define pgx
378 set $g = $arg0
379 if ($g->type == CHAR_GLYPH)
380 if ($g->u.ch >= ' ' && $g->u.ch < 127)
381 printf "CHAR[%c]", $g->u.ch
382 else
383 printf "CHAR[0x%x]", $g->u.ch
384 end
385 end
386 if ($g->type == COMPOSITE_GLYPH)
387 printf "COMP[%d]", $g->u.cmp_id
388 end
389 if ($g->type == IMAGE_GLYPH)
390 printf "IMAGE[%d]", $g->u.img_id
391 end
392 if ($g->type == STRETCH_GLYPH)
393 printf "STRETCH[%d+%d]", $g->u.stretch.height, $g->u.stretch.ascent
394 end
395 xgettype ($g->object)
396 if ($type == Lisp_String)
397 printf " str=%x[%d]", $g->object, $g->charpos
398 else
399 printf " pos=%d", $g->charpos
400 end
401 printf " w=%d a+d=%d+%d", $g->pixel_width, $g->ascent, $g->descent
402 if ($g->face_id != DEFAULT_FACE_ID)
403 printf " face=%d", $g->face_id
404 end
405 if ($g->voffset)
406 printf " vof=%d", $g->voffset
407 end
408 if ($g->multibyte_p)
409 printf " MB"
410 end
411 if ($g->padding_p)
412 printf " PAD"
413 end
414 if ($g->glyph_not_available_p)
415 printf " N/A"
416 end
417 if ($g->overlaps_vertically_p)
418 printf " OVL"
419 end
420 if ($g->left_box_line_p)
421 printf " ["
422 end
423 if ($g->right_box_line_p)
424 printf " ]"
425 end
426 if ($g->slice.x || $g->slice.y || $g->slice.width || $g->slice.height)
427 printf " slice=%d,%d,%d,%d" ,$g->slice.x, $g->slice.y, $g->slice.width, $g->slice.height
428 end
429 printf "\n"
430end
431document pgx
432Pretty print a glyph structure.
433Takes one argument, a pointer to a glyph structure
434end
435
436define pg
437 set $pgidx = 0
438 pgx glyph
439end
440document pg
441Pretty print glyph structure glyph.
442end
443
444define pgi
445 set $pgidx = $arg0
446 pgx (&glyph[$pgidx])
447end
448document pgi
449Pretty print glyph structure glyph[I].
450Takes one argument, a integer I.
451end
452
453define pgn
454 set $pgidx = $pgidx + 1
455 pgx (&glyph[$pgidx])
456end
457document pgn
458Pretty print next glyph structure.
459end
460
461define pgrowx
462 set $row = $arg0
463 set $area = 0
464 set $xofs = $row->x
465 while ($area < 3)
466 set $used = $row->used[$area]
467 if ($used > 0)
468 set $gl0 = $row->glyphs[$area]
469 set $pgidx = 0
470 printf "%s: %d glyphs\n", ($area == 0 ? "LEFT" : $area == 2 ? "RIGHT" : "TEXT"), $used
471 while ($pgidx < $used)
472 printf "%3d %4d: ", $pgidx, $xofs
473 pgx $gl0[$pgidx]
474 set $xofs = $xofs + $gl0[$pgidx]->pixel_width
475 set $pgidx = $pgidx + 1
476 end
477 end
478 set $area = $area + 1
479 end
480end
481document pgrowx
482Pretty print all glyphs in a row structure.
483Takes one argument, a pointer to a row structure.
484end
485
486define pgrow
487 pgrowx row
488end
489document pgrow
490Pretty print all glyphs in row structure row.
491end
375 492
376define xtype 493define xtype
377 xgettype $ 494 xgettype $
diff --git a/src/ChangeLog b/src/ChangeLog
index d0ad63de10d..c4c798e6f77 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,126 @@
12006-06-17 Kim F. Storm <storm@cua.dk>
2
3 * dispnew.c (update_frame): Check for input pending on entry.
4 (update_window, update_frame_1): Break loop if input is detected.
5
62006-06-16 Francis Litterio <flitterio@gmail.com>
7
8 * xterm.c (x_check_expected_move, handle_one_xevent)
9 (x_set_offset, x_check_fullscreen): Extensive changes to make
10 frame positioning deterministic under X.
11
12 * xterm.h (x_output): Added members left_before_move and
13 top_before_move. Removed members expected_left and expected_top.
14
152006-06-16 Kim F. Storm <storm@cua.dk>
16
17 * dispextern.h (struct it): Add union to iterator stack to save
18 image, composition, and stretch specific paramters.
19
20 * xdisp.c (next_overlay_string): Fix assert.
21 (push_it, pop_it): Handle composition and stretch specific values.
22 Only handle it->slice in image (for now).
23 (back_to_previous_visible_line_start): Continue search if newline is
24 part of a compisition. Simplify.
25 (reseat_1): Set it->object to buffer.
26 (set_iterator_to_next): Set it->object to string or buffer, when
27 setting it->method to GET_FROM_STRING or GET_FROM_BUFFER.
28 (next_element_from_composition): Set it->object to buffer if not
29 from string.
30 (set_cursor_from_row): Only save start of string if not already
31 done to handle multiple strings in a row.
32
33 * .gdbinit (pitx): Show composition parameters.
34 (pgx, pg): New commands to print a glyph structure.
35 (pgi, pgn): New commands to print specific/next glyph.
36 (pgrowx, pgrow): New commands to print all glyphs in a row.
37
382006-06-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
39
40 * macfns.c (Fx_display_mm_height, Fx_display_mm_width)
41 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Use CGDisplayScreenSize.
42
43 * macterm.c (do_app_resume, do_app_suspend): Remove functions.
44 (mac_tsm_resume, mac_tsm_suspend) [USE_MAC_TSM]: New functions.
45 (mac_handle_window_event, XTread_socket) [USE_MAC_TSM]: Use them.
46 (Vmac_ts_script_language_on_focus) [USE_MAC_TSM]: New variable.
47 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
48 (saved_ts_language, saved_ts_component) [USE_MAC_TSM]: New variables.
49 (mac_initialize_display_info) [MAC_OSX]: Use Quartz Display
50 Services functions to get size of main display in pixels.
51
522006-06-14 Chong Yidong <cyd@stupidchicken.com>
53
54 * xdisp.c (back_to_previous_visible_line_start): Reset
55 it->continuation_lines_width.
56
572006-06-14 Richard Stallman <rms@gnu.org>
58
59 * eval.c (Fdefconst): Mark variable as risky.
60
61 * callproc.c (Fcall_process): Doc fix.
62
63 * window.c (adjust_window_trailing_edge): Don't break out of the loop
64 because there's no next window, if there are parallel windows.
65 Do break out when WINDOW is nil.
66
672006-06-14 Kim F. Storm <storm@cua.dk>
68
69 * dispextern.h (IT_STACK_SIZE): New macro specifying size of
70 iterator stack (instead of hardcoded number). Increase from 2 to
71 4 to make room for propertized overlay strings before and after a
72 display string, image or composition.
73 (struct it): Add image_id and method members to iterator stack.
74
75 * xdisp.c (init_from_display_pos): Don't set it->method and
76 overlay_string_index after pop_it. Add asserts.
77 (handle_stop): Look for overlay strings around a display string,
78 image, or composition. Handle properties on those strings.
79 (next_overlay_string): Don't set string, pos or method after pop_it.
80 (get_overlay_strings_1): Split from get_overlay_strings; don't
81 modify it if no overlay strings are found.
82 (get_overlay_strings): Use get_overlay_strings_1. Always set
83 it->string and it->method.
84 (push_it): Push it->image_id and it->method. Push it->object
85 instead of it->string if method is GET_FROM_IMAGE.
86 (pop_it): Pop it->image_id and it->method. Ppo it->object
87 instead of it->string if method is GET_FROM_IMAGE.
88 Reset it->current.string_pos if popped it->string is nil.
89 (reseat_1): Remove comment dated 19 May 2003. It expressed doubt
90 whether a given change was correct; but the change is correct.
91 Clear it->string_from_display_prop_p.
92 (set_iterator_to_next): Rely on it->method and it->image_id from
93 iterator stack, instead of setting them explicitly after pop_it.
94
95 * dispnew.c (sit_for): Undo 2006-06-01 change. Instead, a
96 negative time forces redisplay even when input is available.
97 (Fsit_for): Doc fix.
98
992006-06-13 Kim F. Storm <storm@cua.dk>
100
101 * dispnew.c: Modify preemptive redisplay to be based on periodic
102 checks for input.
103 (PERIODIC_PREEMPTION_CHECKING): Define to 1 iff EMACS_HAS_USECS.
104 (Vredisplay_preemption_period): New variable.
105 (syms_of_display): DEFVAR_LISP and initialize it.
106 (preemption_period, preemption_next_check): New variables.
107 (update_frame, update_single_window): Initialize them based on
108 Vredisplay_preemption_period if !force_p.
109 (update_window, update_frame_1): Use them to determine when to
110 check for input.
111
1122006-06-03 Aidan Kehoe <kehoea@parhasard.net>
113
114 * lread.c (read_escape): Provide a Unicode character escape
115 syntax; \u followed by exactly four or \U followed by exactly
116 eight hex digits in a comment or string is read as a Unicode
117 character with that code point.
118
1192006-06-09 Eli Zaretskii <eliz@gnu.org>
120
121 * window.c (window_scroll_pixel_based): Signal "Beginning of
122 buffer" when scroll-down at the beginning of an empty buffer.
123
12006-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> 1242006-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2 125
3 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event): Exclude 126 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event): Exclude
diff --git a/src/callproc.c b/src/callproc.c
index 4fcf2ec0eda..d8eebac08a6 100644
--- a/src/callproc.c
+++ b/src/callproc.c
@@ -203,6 +203,10 @@ t (mix it with ordinary output), or a file name string.
203Fourth arg DISPLAY non-nil means redisplay buffer as output is inserted. 203Fourth arg DISPLAY non-nil means redisplay buffer as output is inserted.
204Remaining arguments are strings passed as command arguments to PROGRAM. 204Remaining arguments are strings passed as command arguments to PROGRAM.
205 205
206If executable PROGRAM can't be found as an executable, `call-process'
207signals a Lisp error. `call-process' reports errors in execution of
208the program only through its return and output.
209
206If BUFFER is 0, `call-process' returns immediately with value nil. 210If BUFFER is 0, `call-process' returns immediately with value nil.
207Otherwise it waits for PROGRAM to terminate 211Otherwise it waits for PROGRAM to terminate
208and returns a numeric exit status or a signal description string. 212and returns a numeric exit status or a signal description string.
diff --git a/src/dispextern.h b/src/dispextern.h
index 92005e6b149..8c9c427f68d 100644
--- a/src/dispextern.h
+++ b/src/dispextern.h
@@ -1827,6 +1827,8 @@ enum it_method {
1827 NUM_IT_METHODS 1827 NUM_IT_METHODS
1828}; 1828};
1829 1829
1830#define IT_STACK_SIZE 4
1831
1830struct it 1832struct it
1831{ 1833{
1832 /* The window in which we iterate over current_buffer (or a string). */ 1834 /* The window in which we iterate over current_buffer (or a string). */
@@ -1938,19 +1940,34 @@ struct it
1938 int stop_charpos; 1940 int stop_charpos;
1939 int face_id; 1941 int face_id;
1940 Lisp_Object string; 1942 Lisp_Object string;
1943 union {
1944 struct {
1945 Lisp_Object object;
1946 struct it_slice slice;
1947 int image_id;
1948 } image;
1949 struct {
1950 Lisp_Object object;
1951 int c, len;
1952 int cmp_id, cmp_len;
1953 } comp;
1954 struct {
1955 Lisp_Object object;
1956 } stretch;
1957 } u;
1941 struct display_pos pos; 1958 struct display_pos pos;
1942 int end_charpos; 1959 int end_charpos;
1943 int string_nchars; 1960 int string_nchars;
1944 enum glyph_row_area area; 1961 enum glyph_row_area area;
1962 enum it_method method;
1945 unsigned multibyte_p : 1; 1963 unsigned multibyte_p : 1;
1946 unsigned string_from_display_prop_p : 1; 1964 unsigned string_from_display_prop_p : 1;
1947 unsigned display_ellipsis_p : 1; 1965 unsigned display_ellipsis_p : 1;
1948 struct it_slice slice;
1949 Lisp_Object space_width; 1966 Lisp_Object space_width;
1950 short voffset; 1967 short voffset;
1951 Lisp_Object font_height; 1968 Lisp_Object font_height;
1952 } 1969 }
1953 stack[2]; 1970 stack[IT_STACK_SIZE];
1954 1971
1955 /* Stack pointer. */ 1972 /* Stack pointer. */
1956 int sp; 1973 int sp;
diff --git a/src/dispnew.c b/src/dispnew.c
index f239d6969f4..b899cd2bd93 100644
--- a/src/dispnew.c
+++ b/src/dispnew.c
@@ -192,6 +192,28 @@ struct window *frame_row_to_window P_ ((struct window *, int));
192 192
193int redisplay_dont_pause; 193int redisplay_dont_pause;
194 194
195/* Define PERIODIC_PREEMPTION_CHECKING to 1, if micro-second timers
196 are supported, so we can check for input during redisplay at
197 regular intervals. */
198#ifdef EMACS_HAS_USECS
199#define PERIODIC_PREEMPTION_CHECKING 1
200#else
201#define PERIODIC_PREEMPTION_CHECKING 0
202#endif
203
204#if PERIODIC_PREEMPTION_CHECKING
205
206/* If a number (float), check for user input every N seconds. */
207
208Lisp_Object Vredisplay_preemption_period;
209
210/* Redisplay preemption timers. */
211
212static EMACS_TIME preemption_period;
213static EMACS_TIME preemption_next_check;
214
215#endif
216
195/* Nonzero upon entry to redisplay means do not assume anything about 217/* Nonzero upon entry to redisplay means do not assume anything about
196 current contents of actual terminal frame; clear and redraw it. */ 218 current contents of actual terminal frame; clear and redraw it. */
197 219
@@ -3806,6 +3828,28 @@ update_frame (f, force_p, inhibit_hairy_id_p)
3806 int paused_p; 3828 int paused_p;
3807 struct window *root_window = XWINDOW (f->root_window); 3829 struct window *root_window = XWINDOW (f->root_window);
3808 3830
3831#if PERIODIC_PREEMPTION_CHECKING
3832 if (!force_p && NUMBERP (Vredisplay_preemption_period))
3833 {
3834 EMACS_TIME tm;
3835 double p = XFLOATINT (Vredisplay_preemption_period);
3836 int sec, usec;
3837
3838 if (detect_input_pending_ignore_squeezables ())
3839 {
3840 paused_p = 1;
3841 goto do_pause;
3842 }
3843
3844 sec = (int) p;
3845 usec = (p - sec) * 1000000;
3846
3847 EMACS_GET_TIME (tm);
3848 EMACS_SET_SECS_USECS (preemption_period, sec, usec);
3849 EMACS_ADD_TIME (preemption_next_check, tm, preemption_period);
3850 }
3851#endif
3852
3809 if (FRAME_WINDOW_P (f)) 3853 if (FRAME_WINDOW_P (f))
3810 { 3854 {
3811 /* We are working on window matrix basis. All windows whose 3855 /* We are working on window matrix basis. All windows whose
@@ -3884,6 +3928,7 @@ update_frame (f, force_p, inhibit_hairy_id_p)
3884#endif 3928#endif
3885 } 3929 }
3886 3930
3931 do_pause:
3887 /* Reset flags indicating that a window should be updated. */ 3932 /* Reset flags indicating that a window should be updated. */
3888 set_window_update_flags (root_window, 0); 3933 set_window_update_flags (root_window, 0);
3889 3934
@@ -3938,6 +3983,22 @@ update_single_window (w, force_p)
3938 /* Record that this is not a frame-based redisplay. */ 3983 /* Record that this is not a frame-based redisplay. */
3939 set_frame_matrix_frame (NULL); 3984 set_frame_matrix_frame (NULL);
3940 3985
3986#if PERIODIC_PREEMPTION_CHECKING
3987 if (!force_p && NUMBERP (Vredisplay_preemption_period))
3988 {
3989 EMACS_TIME tm;
3990 double p = XFLOATINT (Vredisplay_preemption_period);
3991 int sec, usec;
3992
3993 sec = (int) p;
3994 usec = (p - sec) * 1000000;
3995
3996 EMACS_GET_TIME (tm);
3997 EMACS_SET_SECS_USECS (preemption_period, sec, usec);
3998 EMACS_ADD_TIME (preemption_next_check, tm, preemption_period);
3999 }
4000#endif
4001
3941 /* Update W. */ 4002 /* Update W. */
3942 update_begin (f); 4003 update_begin (f);
3943 update_window (w, force_p); 4004 update_window (w, force_p);
@@ -4093,7 +4154,9 @@ update_window (w, force_p)
4093{ 4154{
4094 struct glyph_matrix *desired_matrix = w->desired_matrix; 4155 struct glyph_matrix *desired_matrix = w->desired_matrix;
4095 int paused_p; 4156 int paused_p;
4157#if !PERIODIC_PREEMPTION_CHECKING
4096 int preempt_count = baud_rate / 2400 + 1; 4158 int preempt_count = baud_rate / 2400 + 1;
4159#endif
4097 extern int input_pending; 4160 extern int input_pending;
4098 extern Lisp_Object do_mouse_tracking; 4161 extern Lisp_Object do_mouse_tracking;
4099#if GLYPH_DEBUG 4162#if GLYPH_DEBUG
@@ -4105,8 +4168,13 @@ update_window (w, force_p)
4105 /* Check pending input the first time so that we can quickly return. */ 4168 /* Check pending input the first time so that we can quickly return. */
4106 if (redisplay_dont_pause) 4169 if (redisplay_dont_pause)
4107 force_p = 1; 4170 force_p = 1;
4108 else 4171#if PERIODIC_PREEMPTION_CHECKING
4172 else if (NILP (Vredisplay_preemption_period))
4173 force_p = 1;
4174#else
4175 else if (!force_p)
4109 detect_input_pending_ignore_squeezables (); 4176 detect_input_pending_ignore_squeezables ();
4177#endif
4110 4178
4111 /* If forced to complete the update, or if no input is pending, do 4179 /* If forced to complete the update, or if no input is pending, do
4112 the update. */ 4180 the update. */
@@ -4178,9 +4246,23 @@ update_window (w, force_p)
4178 detect_input_pending. If it's done too often, 4246 detect_input_pending. If it's done too often,
4179 scrolling large windows with repeated scroll-up 4247 scrolling large windows with repeated scroll-up
4180 commands will too quickly pause redisplay. */ 4248 commands will too quickly pause redisplay. */
4249#if PERIODIC_PREEMPTION_CHECKING
4250 if (!force_p)
4251 {
4252 EMACS_TIME tm, dif;
4253 EMACS_GET_TIME (tm);
4254 EMACS_SUB_TIME (dif, preemption_next_check, tm);
4255 if (EMACS_TIME_NEG_P (dif))
4256 {
4257 EMACS_ADD_TIME (preemption_next_check, tm, preemption_period);
4258 if (detect_input_pending_ignore_squeezables ())
4259 break;
4260 }
4261 }
4262#else
4181 if (!force_p && ++n_updated % preempt_count == 0) 4263 if (!force_p && ++n_updated % preempt_count == 0)
4182 detect_input_pending_ignore_squeezables (); 4264 detect_input_pending_ignore_squeezables ();
4183 4265#endif
4184 changed_p |= update_window_line (w, vpos, 4266 changed_p |= update_window_line (w, vpos,
4185 &mouse_face_overwritten_p); 4267 &mouse_face_overwritten_p);
4186 4268
@@ -5131,11 +5213,16 @@ update_frame_1 (f, force_p, inhibit_id_p)
5131 5213
5132 if (redisplay_dont_pause) 5214 if (redisplay_dont_pause)
5133 force_p = 1; 5215 force_p = 1;
5216#if PERIODIC_PREEMPTION_CHECKING
5217 else if (NILP (Vredisplay_preemption_period))
5218 force_p = 1;
5219#else
5134 else if (!force_p && detect_input_pending_ignore_squeezables ()) 5220 else if (!force_p && detect_input_pending_ignore_squeezables ())
5135 { 5221 {
5136 pause = 1; 5222 pause = 1;
5137 goto do_pause; 5223 goto do_pause;
5138 } 5224 }
5225#endif
5139 5226
5140 /* If we cannot insert/delete lines, it's no use trying it. */ 5227 /* If we cannot insert/delete lines, it's no use trying it. */
5141 if (!line_ins_del_ok) 5228 if (!line_ins_del_ok)
@@ -5186,8 +5273,23 @@ update_frame_1 (f, force_p, inhibit_id_p)
5186 } 5273 }
5187 } 5274 }
5188 5275
5189 if ((i - 1) % preempt_count == 0) 5276#if PERIODIC_PREEMPTION_CHECKING
5277 if (!force_p)
5278 {
5279 EMACS_TIME tm, dif;
5280 EMACS_GET_TIME (tm);
5281 EMACS_SUB_TIME (dif, preemption_next_check, tm);
5282 if (EMACS_TIME_NEG_P (dif))
5283 {
5284 EMACS_ADD_TIME (preemption_next_check, tm, preemption_period);
5285 if (detect_input_pending_ignore_squeezables ())
5286 break;
5287 }
5288 }
5289#else
5290 if (!force_p && (i - 1) % preempt_count == 0)
5190 detect_input_pending_ignore_squeezables (); 5291 detect_input_pending_ignore_squeezables ();
5292#endif
5191 5293
5192 update_frame_line (f, i); 5294 update_frame_line (f, i);
5193 } 5295 }
@@ -6388,15 +6490,22 @@ Lisp_Object
6388sit_for (sec, usec, reading, display, initial_display) 6490sit_for (sec, usec, reading, display, initial_display)
6389 int sec, usec, reading, display, initial_display; 6491 int sec, usec, reading, display, initial_display;
6390{ 6492{
6493 int preempt = (sec >= 0) || (sec == 0 && usec >= 0);
6494
6391 swallow_events (display); 6495 swallow_events (display);
6392 6496
6393 if ((detect_input_pending_run_timers (display) 6497 if ((detect_input_pending_run_timers (display) && preempt)
6394 && !redisplay_dont_pause)
6395 || !NILP (Vexecuting_kbd_macro)) 6498 || !NILP (Vexecuting_kbd_macro))
6396 return Qnil; 6499 return Qnil;
6397 6500
6398 if (initial_display) 6501 if (initial_display)
6399 redisplay_preserve_echo_area (2); 6502 {
6503 int count = SPECPDL_INDEX ();
6504 if (!preempt)
6505 specbind (Qredisplay_dont_pause, Qt);
6506 redisplay_preserve_echo_area (2);
6507 unbind_to (count, Qnil);
6508 }
6400 6509
6401 if (sec == 0 && usec == 0) 6510 if (sec == 0 && usec == 0)
6402 return Qt; 6511 return Qt;
@@ -6422,8 +6531,7 @@ Redisplay is preempted as always if input arrives, and does not happen
6422if input is available before it starts. 6531if input is available before it starts.
6423Value is t if waited the full time with no input arriving. 6532Value is t if waited the full time with no input arriving.
6424 6533
6425Redisplay will occur even when input is available if you bind 6534Redisplay will occur even when input is available if SECONDS is negative.
6426`redisplay-dont-pause' to a non-nil value.
6427 6535
6428An obsolete but still supported form is 6536An obsolete but still supported form is
6429\(sit-for SECONDS &optional MILLISECONDS NODISP) 6537\(sit-for SECONDS &optional MILLISECONDS NODISP)
@@ -6922,7 +7030,14 @@ See `buffer-display-table' for more information. */);
6922 doc: /* *Non-nil means update isn't paused when input is detected. */); 7030 doc: /* *Non-nil means update isn't paused when input is detected. */);
6923 redisplay_dont_pause = 0; 7031 redisplay_dont_pause = 0;
6924 7032
6925 /* Initialize `window-system', unless init_display already decided it. */ 7033#if PERIODIC_PREEMPTION_CHECKING
7034 DEFVAR_LISP ("redisplay-preemption-period", &Vredisplay_preemption_period,
7035 doc: /* *The period in seconds between checking for input during redisplay.
7036If input is detected, redisplay is pre-empted, and the input is processed.
7037If nil, never pre-empt redisplay. */);
7038 Vredisplay_preemption_period = make_float (0.10);
7039#endif
7040
6926#ifdef CANNOT_DUMP 7041#ifdef CANNOT_DUMP
6927 if (noninteractive) 7042 if (noninteractive)
6928#endif 7043#endif
diff --git a/src/eval.c b/src/eval.c
index 20f29b5f06b..5f8d266ec7b 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -195,9 +195,10 @@ int handling_signal;
195 195
196Lisp_Object Vmacro_declaration_function; 196Lisp_Object Vmacro_declaration_function;
197 197
198extern Lisp_Object Qrisky_local_variable;
198 199
199static Lisp_Object funcall_lambda P_ ((Lisp_Object, int, Lisp_Object*)); 200static Lisp_Object funcall_lambda P_ ((Lisp_Object, int, Lisp_Object*));
200 201
201void 202void
202init_eval_once () 203init_eval_once ()
203{ 204{
@@ -895,6 +896,7 @@ usage: (defconst SYMBOL INITVALUE [DOCSTRING]) */)
895 tem = Fpurecopy (tem); 896 tem = Fpurecopy (tem);
896 Fput (sym, Qvariable_documentation, tem); 897 Fput (sym, Qvariable_documentation, tem);
897 } 898 }
899 Fput (sym, Qrisky_local_variable, Qt);
898 LOADHIST_ATTACH (sym); 900 LOADHIST_ATTACH (sym);
899 return sym; 901 return sym;
900} 902}
diff --git a/src/lread.c b/src/lread.c
index d8abde1c458..6ea92d1aebf 100644
--- a/src/lread.c
+++ b/src/lread.c
@@ -1924,6 +1924,9 @@ read_escape (readcharfun, stringp)
1924 int stringp; 1924 int stringp;
1925{ 1925{
1926 register int c = READCHAR; 1926 register int c = READCHAR;
1927 /* \u allows up to four hex digits, \U up to eight. Default to the
1928 behaviour for \u, and change this value in the case that \U is seen. */
1929 int unicode_hex_count = 4;
1927 1930
1928 switch (c) 1931 switch (c)
1929 { 1932 {
@@ -2090,6 +2093,52 @@ read_escape (readcharfun, stringp)
2090 return i; 2093 return i;
2091 } 2094 }
2092 2095
2096 case 'U':
2097 /* Post-Unicode-2.0: Up to eight hex chars. */
2098 unicode_hex_count = 8;
2099 case 'u':
2100
2101 /* A Unicode escape. We only permit them in strings and characters,
2102 not arbitrarily in the source code, as in some other languages. */
2103 {
2104 int i = 0;
2105 int count = 0;
2106 Lisp_Object lisp_char;
2107 struct gcpro gcpro1;
2108
2109 while (++count <= unicode_hex_count)
2110 {
2111 c = READCHAR;
2112 /* isdigit(), isalpha() may be locale-specific, which we don't
2113 want. */
2114 if (c >= '0' && c <= '9') i = (i << 4) + (c - '0');
2115 else if (c >= 'a' && c <= 'f') i = (i << 4) + (c - 'a') + 10;
2116 else if (c >= 'A' && c <= 'F') i = (i << 4) + (c - 'A') + 10;
2117 else
2118 {
2119 error ("Non-hex digit used for Unicode escape");
2120 break;
2121 }
2122 }
2123
2124 GCPRO1 (readcharfun);
2125 lisp_char = call2(intern("decode-char"), intern("ucs"),
2126 make_number(i));
2127 UNGCPRO;
2128
2129 if (EQ(Qnil, lisp_char))
2130 {
2131 /* This is ugly and horrible and trashes the user's data. */
2132 XSETFASTINT (i, MAKE_CHAR (charset_katakana_jisx0201,
2133 34 + 128, 46 + 128));
2134 return i;
2135 }
2136 else
2137 {
2138 return XFASTINT (lisp_char);
2139 }
2140 }
2141
2093 default: 2142 default:
2094 return c; 2143 return c;
2095 } 2144 }
diff --git a/src/macfns.c b/src/macfns.c
index 1c774f8ade2..6d77aea0409 100644
--- a/src/macfns.c
+++ b/src/macfns.c
@@ -3070,11 +3070,20 @@ If omitted or nil, that stands for the selected frame's display. */)
3070 (display) 3070 (display)
3071 Lisp_Object display; 3071 Lisp_Object display;
3072{ 3072{
3073 /* MAC_TODO: this is an approximation, and only of the main display */
3074
3075 struct mac_display_info *dpyinfo = check_x_display_info (display); 3073 struct mac_display_info *dpyinfo = check_x_display_info (display);
3074 /* Only of the main display. */
3075#if MAC_OS_X_VERSION_MAX_ALLOWED >= 1030
3076 CGSize size;
3077
3078 BLOCK_INPUT;
3079 size = CGDisplayScreenSize (kCGDirectMainDisplay);
3080 UNBLOCK_INPUT;
3076 3081
3082 return make_number ((int) (size.height + .5f));
3083#else
3084 /* This is an approximation. */
3077 return make_number ((int) (dpyinfo->height * 25.4 / dpyinfo->resy)); 3085 return make_number ((int) (dpyinfo->height * 25.4 / dpyinfo->resy));
3086#endif
3078} 3087}
3079 3088
3080DEFUN ("x-display-mm-width", Fx_display_mm_width, Sx_display_mm_width, 0, 1, 0, 3089DEFUN ("x-display-mm-width", Fx_display_mm_width, Sx_display_mm_width, 0, 1, 0,
@@ -3085,11 +3094,20 @@ If omitted or nil, that stands for the selected frame's display. */)
3085 (display) 3094 (display)
3086 Lisp_Object display; 3095 Lisp_Object display;
3087{ 3096{
3088 /* MAC_TODO: this is an approximation, and only of the main display */
3089
3090 struct mac_display_info *dpyinfo = check_x_display_info (display); 3097 struct mac_display_info *dpyinfo = check_x_display_info (display);
3098 /* Only of the main display. */
3099#if MAC_OS_X_VERSION_MAX_ALLOWED >= 1030
3100 CGSize size;
3101
3102 BLOCK_INPUT;
3103 size = CGDisplayScreenSize (kCGDirectMainDisplay);
3104 UNBLOCK_INPUT;
3091 3105
3106 return make_number ((int) (size.width + .5f));
3107#else
3108 /* This is an approximation. */
3092 return make_number ((int) (dpyinfo->width * 25.4 / dpyinfo->resx)); 3109 return make_number ((int) (dpyinfo->width * 25.4 / dpyinfo->resx));
3110#endif
3093} 3111}
3094 3112
3095DEFUN ("x-display-backing-store", Fx_display_backing_store, 3113DEFUN ("x-display-backing-store", Fx_display_backing_store,
diff --git a/src/macterm.c b/src/macterm.c
index dc449498a4a..7e354642759 100644
--- a/src/macterm.c
+++ b/src/macterm.c
@@ -8533,6 +8533,9 @@ static Lisp_Object Qtext_input;
8533static Lisp_Object Qupdate_active_input_area, Qunicode_for_key_event; 8533static Lisp_Object Qupdate_active_input_area, Qunicode_for_key_event;
8534static Lisp_Object Vmac_ts_active_input_overlay; 8534static Lisp_Object Vmac_ts_active_input_overlay;
8535extern Lisp_Object Qbefore_string; 8535extern Lisp_Object Qbefore_string;
8536static Lisp_Object Vmac_ts_script_language_on_focus;
8537static ScriptLanguageRecord saved_ts_language;
8538static Component saved_ts_component;
8536#endif 8539#endif
8537#endif 8540#endif
8538extern int mac_ready_for_apple_events; 8541extern int mac_ready_for_apple_events;
@@ -8882,22 +8885,84 @@ is_emacs_window (WindowPtr win)
8882 return 0; 8885 return 0;
8883} 8886}
8884 8887
8885static void
8886do_app_resume ()
8887{
8888#if USE_MAC_TSM 8888#if USE_MAC_TSM
8889 ActivateTSMDocument (tsm_document_id); 8889static OSStatus
8890mac_tsm_resume ()
8891{
8892 OSStatus err;
8893 ScriptLanguageRecord slrec, *slptr = NULL;
8894
8895 err = ActivateTSMDocument (tsm_document_id);
8896
8897 if (err == noErr)
8898 {
8899 if (EQ (Vmac_ts_script_language_on_focus, Qt))
8900 slptr = &saved_ts_language;
8901 else if (CONSP (Vmac_ts_script_language_on_focus)
8902 && INTEGERP (XCAR (Vmac_ts_script_language_on_focus))
8903 && INTEGERP (XCDR (Vmac_ts_script_language_on_focus)))
8904 {
8905 slrec.fScript = XINT (XCAR (Vmac_ts_script_language_on_focus));
8906 slrec.fLanguage = XINT (XCDR (Vmac_ts_script_language_on_focus));
8907 slptr = &slrec;
8908 }
8909 }
8910
8911 if (slptr)
8912 {
8913#if MAC_OS_X_VERSION_MAX_ALLOWED >= 1020
8914 err = SetDefaultInputMethodOfClass (saved_ts_component, slptr,
8915 kKeyboardInputMethodClass);
8916#else
8917 err = SetDefaultInputMethod (saved_ts_component, slptr);
8890#endif 8918#endif
8919 if (err == noErr)
8920 err = SetTextServiceLanguage (slptr);
8921
8922 /* Seems to be needed on Mac OS X 10.2. */
8923 if (err == noErr)
8924 KeyScript (slptr->fScript | smKeyForceKeyScriptMask);
8925 }
8926
8927 return err;
8891} 8928}
8892 8929
8893static void 8930static OSStatus
8894do_app_suspend () 8931mac_tsm_suspend ()
8895{ 8932{
8896#if USE_MAC_TSM 8933 OSStatus err;
8897 DeactivateTSMDocument (tsm_document_id); 8934 ScriptLanguageRecord slrec, *slptr = NULL;
8935
8936 if (EQ (Vmac_ts_script_language_on_focus, Qt))
8937 {
8938 err = GetTextServiceLanguage (&saved_ts_language);
8939 if (err == noErr)
8940 slptr = &saved_ts_language;
8941 }
8942 else if (CONSP (Vmac_ts_script_language_on_focus)
8943 && INTEGERP (XCAR (Vmac_ts_script_language_on_focus))
8944 && INTEGERP (XCDR (Vmac_ts_script_language_on_focus)))
8945 {
8946 slrec.fScript = XINT (XCAR (Vmac_ts_script_language_on_focus));
8947 slrec.fLanguage = XINT (XCDR (Vmac_ts_script_language_on_focus));
8948 slptr = &slrec;
8949 }
8950
8951 if (slptr)
8952 {
8953#if MAC_OS_X_VERSION_MAX_ALLOWED >= 1020
8954 GetDefaultInputMethodOfClass (&saved_ts_component, slptr,
8955 kKeyboardInputMethodClass);
8956#else
8957 GetDefaultInputMethod (&saved_ts_component, slptr);
8898#endif 8958#endif
8899} 8959 }
8900 8960
8961 err = DeactivateTSMDocument (tsm_document_id);
8962
8963 return err;
8964}
8965#endif
8901 8966
8902static void 8967static void
8903do_apple_menu (SInt16 menu_item) 8968do_apple_menu (SInt16 menu_item)
@@ -9351,12 +9416,12 @@ mac_handle_window_event (next_handler, event, data)
9351#if USE_MAC_TSM 9416#if USE_MAC_TSM
9352 case kEventWindowFocusAcquired: 9417 case kEventWindowFocusAcquired:
9353 result = CallNextEventHandler (next_handler, event); 9418 result = CallNextEventHandler (next_handler, event);
9354 err = ActivateTSMDocument (tsm_document_id); 9419 err = mac_tsm_resume ();
9355 return err == noErr ? noErr : result; 9420 return err == noErr ? noErr : result;
9356 9421
9357 case kEventWindowFocusRelinquish: 9422 case kEventWindowFocusRelinquish:
9358 result = CallNextEventHandler (next_handler, event); 9423 result = CallNextEventHandler (next_handler, event);
9359 err = DeactivateTSMDocument (tsm_document_id); 9424 err = mac_tsm_suspend ();
9360 return err == noErr ? noErr : result; 9425 return err == noErr ? noErr : result;
9361#endif 9426#endif
9362 } 9427 }
@@ -10391,10 +10456,12 @@ XTread_socket (sd, expected, hold_quit)
10391 switch ((er.message >> 24) & 0x000000FF) 10456 switch ((er.message >> 24) & 0x000000FF)
10392 { 10457 {
10393 case suspendResumeMessage: 10458 case suspendResumeMessage:
10394 if ((er.message & resumeFlag) == 1) 10459#if USE_MAC_TSM
10395 do_app_resume (); 10460 if (er.message & resumeFlag)
10461 mac_tsm_resume ();
10396 else 10462 else
10397 do_app_suspend (); 10463 mac_tsm_suspend ();
10464#endif
10398 break; 10465 break;
10399 10466
10400 case mouseMovedMessage: 10467 case mouseMovedMessage:
@@ -10957,7 +11024,6 @@ void
10957mac_initialize_display_info () 11024mac_initialize_display_info ()
10958{ 11025{
10959 struct mac_display_info *dpyinfo = &one_mac_display_info; 11026 struct mac_display_info *dpyinfo = &one_mac_display_info;
10960 GDHandle main_device_handle;
10961 11027
10962 bzero (dpyinfo, sizeof (*dpyinfo)); 11028 bzero (dpyinfo, sizeof (*dpyinfo));
10963 11029
@@ -10973,37 +11039,29 @@ mac_initialize_display_info ()
10973 strcpy (dpyinfo->mac_id_name, "Mac Display"); 11039 strcpy (dpyinfo->mac_id_name, "Mac Display");
10974#endif 11040#endif
10975 11041
10976 main_device_handle = LMGetMainDevice();
10977
10978 dpyinfo->reference_count = 0; 11042 dpyinfo->reference_count = 0;
10979 dpyinfo->resx = 72.0; 11043 dpyinfo->resx = 72.0;
10980 dpyinfo->resy = 72.0; 11044 dpyinfo->resy = 72.0;
10981 dpyinfo->color_p = TestDeviceAttribute (main_device_handle, gdDevType);
10982#ifdef MAC_OSX 11045#ifdef MAC_OSX
10983 /* HasDepth returns true if it is possible to have a 32 bit display, 11046 /* HasDepth returns true if it is possible to have a 32 bit display,
10984 but this may not be what is actually used. Mac OSX can do better. 11047 but this may not be what is actually used. Mac OSX can do better. */
10985 CGMainDisplayID is only available on OSX 10.2 and higher, but the 11048 dpyinfo->color_p = 1;
10986 header for CGGetActiveDisplayList says that the first display returned 11049 dpyinfo->n_planes = CGDisplayBitsPerPixel (kCGDirectMainDisplay);
10987 is the active one, so we use that. */ 11050 dpyinfo->height = CGDisplayPixelsHigh (kCGDirectMainDisplay);
11051 dpyinfo->width = CGDisplayPixelsWide (kCGDirectMainDisplay);
11052#else
10988 { 11053 {
10989 CGDirectDisplayID disp_id[1]; 11054 GDHandle main_device_handle = LMGetMainDevice();
10990 CGDisplayCount disp_count;
10991 CGDisplayErr error_code;
10992
10993 error_code = CGGetActiveDisplayList (1, disp_id, &disp_count);
10994 if (error_code != 0)
10995 error ("No display found, CGGetActiveDisplayList error %d", error_code);
10996 11055
10997 dpyinfo->n_planes = CGDisplayBitsPerPixel (disp_id[0]); 11056 dpyinfo->color_p = TestDeviceAttribute (main_device_handle, gdDevType);
11057 for (dpyinfo->n_planes = 32; dpyinfo->n_planes > 0; dpyinfo->n_planes >>= 1)
11058 if (HasDepth (main_device_handle, dpyinfo->n_planes,
11059 gdDevType, dpyinfo->color_p))
11060 break;
11061 dpyinfo->height = (**main_device_handle).gdRect.bottom;
11062 dpyinfo->width = (**main_device_handle).gdRect.right;
10998 } 11063 }
10999#else
11000 for (dpyinfo->n_planes = 32; dpyinfo->n_planes > 0; dpyinfo->n_planes >>= 1)
11001 if (HasDepth (main_device_handle, dpyinfo->n_planes,
11002 gdDevType, dpyinfo->color_p))
11003 break;
11004#endif 11064#endif
11005 dpyinfo->height = (**main_device_handle).gdRect.bottom;
11006 dpyinfo->width = (**main_device_handle).gdRect.right;
11007 dpyinfo->grabbed = 0; 11065 dpyinfo->grabbed = 0;
11008 dpyinfo->root_window = NULL; 11066 dpyinfo->root_window = NULL;
11009 dpyinfo->image_cache = make_image_cache (); 11067 dpyinfo->image_cache = make_image_cache ();
@@ -11554,6 +11612,15 @@ order. */);
11554 DEFVAR_LISP ("mac-ts-active-input-overlay", &Vmac_ts_active_input_overlay, 11612 DEFVAR_LISP ("mac-ts-active-input-overlay", &Vmac_ts_active_input_overlay,
11555 doc: /* Overlay used to display Mac TSM active input area. */); 11613 doc: /* Overlay used to display Mac TSM active input area. */);
11556 Vmac_ts_active_input_overlay = Qnil; 11614 Vmac_ts_active_input_overlay = Qnil;
11615
11616 DEFVAR_LISP ("mac-ts-script-language-on-focus", &Vmac_ts_script_language_on_focus,
11617 doc: /* *How to change Mac TSM script/language when a frame gets focus.
11618If the value is t, the input script and language are restored to those
11619used in the last focus frame. If the value is a pair of integers, the
11620input script and language codes, which are defined in the Script
11621Manager, are set to its car and cdr parts, respectively. Otherwise,
11622Emacs doesn't set them and thus follows the system default behavior. */);
11623 Vmac_ts_script_language_on_focus = Qnil;
11557#endif 11624#endif
11558} 11625}
11559 11626
diff --git a/src/window.c b/src/window.c
index 59c223b4a8f..6a1edb24efb 100644
--- a/src/window.c
+++ b/src/window.c
@@ -4279,15 +4279,17 @@ adjust_window_trailing_edge (window, delta, horiz_flag)
4279 { 4279 {
4280 Lisp_Object first_parallel = Qnil; 4280 Lisp_Object first_parallel = Qnil;
4281 4281
4282 p = XWINDOW (window); 4282 if (NILP (window))
4283 parent = p->parent;
4284
4285 if (NILP (XWINDOW (window)->next))
4286 { 4283 {
4284 /* This can happen if WINDOW on the previous iteration was
4285 at top level of the tree and we did not exit. */
4287 Fset_window_configuration (old_config); 4286 Fset_window_configuration (old_config);
4288 error ("No other window following this one"); 4287 error ("Specified window edge is fixed");
4289 } 4288 }
4290 4289
4290 p = XWINDOW (window);
4291 parent = p->parent;
4292
4291 /* See if this level has windows in parallel in the specified 4293 /* See if this level has windows in parallel in the specified
4292 direction. If so, set FIRST_PARALLEL to the first one. */ 4294 direction. If so, set FIRST_PARALLEL to the first one. */
4293 if (horiz_flag) 4295 if (horiz_flag)
@@ -4301,6 +4303,14 @@ adjust_window_trailing_edge (window, delta, horiz_flag)
4301 first_parallel = XWINDOW (parent)->hchild; 4303 first_parallel = XWINDOW (parent)->hchild;
4302 } 4304 }
4303 4305
4306 /* If this level's succession is in the desired dimension,
4307 and this window is the last one, its trailing edge is fixed. */
4308 if (NILP (XWINDOW (window)->next) && NILP (first_parallel))
4309 {
4310 Fset_window_configuration (old_config);
4311 error ("Specified window edge is fixed");
4312 }
4313
4304 /* Don't make this window too small. */ 4314 /* Don't make this window too small. */
4305 if (XINT (CURSIZE (window)) + delta 4315 if (XINT (CURSIZE (window)) + delta
4306 < (horiz_flag ? window_min_width : window_min_height)) 4316 < (horiz_flag ? window_min_width : window_min_height))
@@ -4324,7 +4334,7 @@ adjust_window_trailing_edge (window, delta, horiz_flag)
4324 we will fail and report an error, above.) */ 4334 we will fail and report an error, above.) */
4325 if (NILP (first_parallel)) 4335 if (NILP (first_parallel))
4326 { 4336 {
4327 if (!NILP (XWINDOW (window)->next)) 4337 if (!NILP (p->next))
4328 { 4338 {
4329 /* This may happen for the minibuffer. In that case 4339 /* This may happen for the minibuffer. In that case
4330 the window_deletion_count check below does not work. */ 4340 the window_deletion_count check below does not work. */
@@ -4895,6 +4905,8 @@ window_scroll_pixel_based (window, n, whole, noerror)
4895 } 4905 }
4896 else if (noerror) 4906 else if (noerror)
4897 return; 4907 return;
4908 else if (n < 0) /* could happen with empty buffers */
4909 Fsignal (Qbeginning_of_buffer, Qnil);
4898 else 4910 else
4899 Fsignal (Qend_of_buffer, Qnil); 4911 Fsignal (Qend_of_buffer, Qnil);
4900 } 4912 }
diff --git a/src/xdisp.c b/src/xdisp.c
index 0cb34a2fef8..bf51137c716 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -925,6 +925,7 @@ static int display_string P_ ((unsigned char *, Lisp_Object, Lisp_Object,
925static void compute_line_metrics P_ ((struct it *)); 925static void compute_line_metrics P_ ((struct it *));
926static void run_redisplay_end_trigger_hook P_ ((struct it *)); 926static void run_redisplay_end_trigger_hook P_ ((struct it *));
927static int get_overlay_strings P_ ((struct it *, int)); 927static int get_overlay_strings P_ ((struct it *, int));
928static int get_overlay_strings_1 P_ ((struct it *, int, int));
928static void next_overlay_string P_ ((struct it *)); 929static void next_overlay_string P_ ((struct it *));
929static void reseat P_ ((struct it *, struct text_pos, int)); 930static void reseat P_ ((struct it *, struct text_pos, int));
930static void reseat_1 P_ ((struct it *, struct text_pos, int)); 931static void reseat_1 P_ ((struct it *, struct text_pos, int));
@@ -2918,8 +2919,8 @@ init_from_display_pos (it, w, pos)
2918 also ``processed'' overlay strings at ZV. */ 2919 also ``processed'' overlay strings at ZV. */
2919 while (it->sp) 2920 while (it->sp)
2920 pop_it (it); 2921 pop_it (it);
2921 it->current.overlay_string_index = -1; 2922 xassert (it->current.overlay_string_index == -1);
2922 it->method = GET_FROM_BUFFER; 2923 xassert (it->method == GET_FROM_BUFFER);
2923 if (CHARPOS (pos->pos) == ZV) 2924 if (CHARPOS (pos->pos) == ZV)
2924 it->overlay_strings_at_end_processed_p = 1; 2925 it->overlay_strings_at_end_processed_p = 1;
2925 } 2926 }
@@ -3030,7 +3031,18 @@ handle_stop (it)
3030 if (handled == HANDLED_RECOMPUTE_PROPS) 3031 if (handled == HANDLED_RECOMPUTE_PROPS)
3031 break; 3032 break;
3032 else if (handled == HANDLED_RETURN) 3033 else if (handled == HANDLED_RETURN)
3033 return; 3034 {
3035 /* We still want to show before and after strings from
3036 overlays even if the actual buffer text is replaced. */
3037 if (!handle_overlay_change_p || it->sp > 1)
3038 return;
3039 if (!get_overlay_strings_1 (it, 0, 0))
3040 return;
3041 it->string_from_display_prop_p = 0;
3042 handle_overlay_change_p = 0;
3043 handled = HANDLED_RECOMPUTE_PROPS;
3044 break;
3045 }
3034 else if (handled == HANDLED_OVERLAY_STRING_CONSUMED) 3046 else if (handled == HANDLED_OVERLAY_STRING_CONSUMED)
3035 handle_overlay_change_p = 0; 3047 handle_overlay_change_p = 0;
3036 } 3048 }
@@ -4650,13 +4662,14 @@ next_overlay_string (it)
4650 int display_ellipsis_p = it->stack[it->sp - 1].display_ellipsis_p; 4662 int display_ellipsis_p = it->stack[it->sp - 1].display_ellipsis_p;
4651 4663
4652 pop_it (it); 4664 pop_it (it);
4653 xassert (it->stop_charpos >= BEGV 4665 xassert (it->sp > 0
4654 && it->stop_charpos <= it->end_charpos); 4666 || it->method == GET_FROM_COMPOSITION
4655 it->string = Qnil; 4667 || (NILP (it->string)
4668 && it->method == GET_FROM_BUFFER
4669 && it->stop_charpos >= BEGV
4670 && it->stop_charpos <= it->end_charpos));
4656 it->current.overlay_string_index = -1; 4671 it->current.overlay_string_index = -1;
4657 SET_TEXT_POS (it->current.string_pos, -1, -1);
4658 it->n_overlay_strings = 0; 4672 it->n_overlay_strings = 0;
4659 it->method = GET_FROM_BUFFER;
4660 4673
4661 /* If we're at the end of the buffer, record that we have 4674 /* If we're at the end of the buffer, record that we have
4662 processed the overlay strings there already, so that 4675 processed the overlay strings there already, so that
@@ -4912,7 +4925,7 @@ load_overlay_strings (it, charpos)
4912 least one overlay string was found. */ 4925 least one overlay string was found. */
4913 4926
4914static int 4927static int
4915get_overlay_strings (it, charpos) 4928get_overlay_strings_1 (it, charpos, compute_stop_p)
4916 struct it *it; 4929 struct it *it;
4917 int charpos; 4930 int charpos;
4918{ 4931{
@@ -4934,12 +4947,13 @@ get_overlay_strings (it, charpos)
4934 /* Make sure we know settings in current_buffer, so that we can 4947 /* Make sure we know settings in current_buffer, so that we can
4935 restore meaningful values when we're done with the overlay 4948 restore meaningful values when we're done with the overlay
4936 strings. */ 4949 strings. */
4937 compute_stop_pos (it); 4950 if (compute_stop_p)
4951 compute_stop_pos (it);
4938 xassert (it->face_id >= 0); 4952 xassert (it->face_id >= 0);
4939 4953
4940 /* Save IT's settings. They are restored after all overlay 4954 /* Save IT's settings. They are restored after all overlay
4941 strings have been processed. */ 4955 strings have been processed. */
4942 xassert (it->sp == 0); 4956 xassert (!compute_stop_p || it->sp == 0);
4943 push_it (it); 4957 push_it (it);
4944 4958
4945 /* Set up IT to deliver display elements from the first overlay 4959 /* Set up IT to deliver display elements from the first overlay
@@ -4951,13 +4965,22 @@ get_overlay_strings (it, charpos)
4951 it->end_charpos = SCHARS (it->string); 4965 it->end_charpos = SCHARS (it->string);
4952 it->multibyte_p = STRING_MULTIBYTE (it->string); 4966 it->multibyte_p = STRING_MULTIBYTE (it->string);
4953 it->method = GET_FROM_STRING; 4967 it->method = GET_FROM_STRING;
4968 return 1;
4954 } 4969 }
4955 else 4970
4956 { 4971 it->current.overlay_string_index = -1;
4957 it->string = Qnil; 4972 return 0;
4958 it->current.overlay_string_index = -1; 4973}
4959 it->method = GET_FROM_BUFFER; 4974
4960 } 4975static int
4976get_overlay_strings (it, charpos)
4977 struct it *it;
4978 int charpos;
4979{
4980 it->string = Qnil;
4981 it->method = GET_FROM_BUFFER;
4982
4983 (void) get_overlay_strings_1 (it, charpos, 1);
4961 4984
4962 CHECK_IT (it); 4985 CHECK_IT (it);
4963 4986
@@ -4982,19 +5005,37 @@ push_it (it)
4982{ 5005{
4983 struct iterator_stack_entry *p; 5006 struct iterator_stack_entry *p;
4984 5007
4985 xassert (it->sp < 2); 5008 xassert (it->sp < IT_STACK_SIZE);
4986 p = it->stack + it->sp; 5009 p = it->stack + it->sp;
4987 5010
4988 p->stop_charpos = it->stop_charpos; 5011 p->stop_charpos = it->stop_charpos;
4989 xassert (it->face_id >= 0); 5012 xassert (it->face_id >= 0);
4990 p->face_id = it->face_id; 5013 p->face_id = it->face_id;
4991 p->string = it->string; 5014 p->string = it->string;
5015 p->method = it->method;
5016 switch (p->method)
5017 {
5018 case GET_FROM_IMAGE:
5019 p->u.image.object = it->object;
5020 p->u.image.image_id = it->image_id;
5021 p->u.image.slice = it->slice;
5022 break;
5023 case GET_FROM_COMPOSITION:
5024 p->u.comp.object = it->object;
5025 p->u.comp.c = it->c;
5026 p->u.comp.len = it->len;
5027 p->u.comp.cmp_id = it->cmp_id;
5028 p->u.comp.cmp_len = it->cmp_len;
5029 break;
5030 case GET_FROM_STRETCH:
5031 p->u.stretch.object = it->object;
5032 break;
5033 }
4992 p->pos = it->current; 5034 p->pos = it->current;
4993 p->end_charpos = it->end_charpos; 5035 p->end_charpos = it->end_charpos;
4994 p->string_nchars = it->string_nchars; 5036 p->string_nchars = it->string_nchars;
4995 p->area = it->area; 5037 p->area = it->area;
4996 p->multibyte_p = it->multibyte_p; 5038 p->multibyte_p = it->multibyte_p;
4997 p->slice = it->slice;
4998 p->space_width = it->space_width; 5039 p->space_width = it->space_width;
4999 p->font_height = it->font_height; 5040 p->font_height = it->font_height;
5000 p->voffset = it->voffset; 5041 p->voffset = it->voffset;
@@ -5021,13 +5062,33 @@ pop_it (it)
5021 p = it->stack + it->sp; 5062 p = it->stack + it->sp;
5022 it->stop_charpos = p->stop_charpos; 5063 it->stop_charpos = p->stop_charpos;
5023 it->face_id = p->face_id; 5064 it->face_id = p->face_id;
5024 it->string = p->string;
5025 it->current = p->pos; 5065 it->current = p->pos;
5066 it->string = p->string;
5067 if (NILP (it->string))
5068 SET_TEXT_POS (it->current.string_pos, -1, -1);
5069 it->method = p->method;
5070 switch (it->method)
5071 {
5072 case GET_FROM_IMAGE:
5073 it->image_id = p->u.image.image_id;
5074 it->object = p->u.image.object;
5075 it->slice = p->u.image.slice;
5076 break;
5077 case GET_FROM_COMPOSITION:
5078 it->object = p->u.comp.object;
5079 it->c = p->u.comp.c;
5080 it->len = p->u.comp.len;
5081 it->cmp_id = p->u.comp.cmp_id;
5082 it->cmp_len = p->u.comp.cmp_len;
5083 break;
5084 case GET_FROM_STRETCH:
5085 it->object = p->u.comp.object;
5086 break;
5087 }
5026 it->end_charpos = p->end_charpos; 5088 it->end_charpos = p->end_charpos;
5027 it->string_nchars = p->string_nchars; 5089 it->string_nchars = p->string_nchars;
5028 it->area = p->area; 5090 it->area = p->area;
5029 it->multibyte_p = p->multibyte_p; 5091 it->multibyte_p = p->multibyte_p;
5030 it->slice = p->slice;
5031 it->space_width = p->space_width; 5092 it->space_width = p->space_width;
5032 it->font_height = p->font_height; 5093 it->font_height = p->font_height;
5033 it->voffset = p->voffset; 5094 it->voffset = p->voffset;
@@ -5178,37 +5239,47 @@ back_to_previous_visible_line_start (it)
5178 continue; 5239 continue;
5179 } 5240 }
5180 5241
5181 /* If newline has a display property that replaces the newline with something 5242 if (IT_CHARPOS (*it) <= BEGV)
5182 else (image or text), find start of overlay or interval and continue search 5243 break;
5183 from that point. */
5184 if (IT_CHARPOS (*it) > BEGV)
5185 {
5186 struct it it2 = *it;
5187 int pos;
5188 int beg, end;
5189 Lisp_Object val, overlay;
5190
5191 pos = --IT_CHARPOS (it2);
5192 --IT_BYTEPOS (it2);
5193 it2.sp = 0;
5194 if (handle_display_prop (&it2) == HANDLED_RETURN
5195 && !NILP (val = get_char_property_and_overlay
5196 (make_number (pos), Qdisplay, Qnil, &overlay))
5197 && (OVERLAYP (overlay)
5198 ? (beg = OVERLAY_POSITION (OVERLAY_START (overlay)))
5199 : get_property_and_range (pos, Qdisplay, &val, &beg, &end, Qnil)))
5200 {
5201 if (beg < BEGV)
5202 beg = BEGV;
5203 IT_CHARPOS (*it) = beg;
5204 IT_BYTEPOS (*it) = buf_charpos_to_bytepos (current_buffer, beg);
5205 continue;
5206 }
5207 }
5208 5244
5209 break; 5245 {
5246 struct it it2;
5247 int pos;
5248 int beg, end;
5249 Lisp_Object val, overlay;
5250
5251 /* If newline is part of a composition, continue from start of composition */
5252 if (find_composition (IT_CHARPOS (*it), -1, &beg, &end, &val, Qnil)
5253 && beg < IT_CHARPOS (*it))
5254 goto replaced;
5255
5256 /* If newline is replaced by a display property, find start of overlay
5257 or interval and continue search from that point. */
5258 it2 = *it;
5259 pos = --IT_CHARPOS (it2);
5260 --IT_BYTEPOS (it2);
5261 it2.sp = 0;
5262 if (handle_display_prop (&it2) == HANDLED_RETURN
5263 && !NILP (val = get_char_property_and_overlay
5264 (make_number (pos), Qdisplay, Qnil, &overlay))
5265 && (OVERLAYP (overlay)
5266 ? (beg = OVERLAY_POSITION (OVERLAY_START (overlay)))
5267 : get_property_and_range (pos, Qdisplay, &val, &beg, &end, Qnil)))
5268 goto replaced;
5269
5270 /* Newline is not replaced by anything -- so we are done. */
5271 break;
5272
5273 replaced:
5274 if (beg < BEGV)
5275 beg = BEGV;
5276 IT_CHARPOS (*it) = beg;
5277 IT_BYTEPOS (*it) = buf_charpos_to_bytepos (current_buffer, beg);
5278 }
5210 } 5279 }
5211 5280
5281 it->continuation_lines_width = 0;
5282
5212 xassert (IT_CHARPOS (*it) >= BEGV); 5283 xassert (IT_CHARPOS (*it) >= BEGV);
5213 xassert (IT_CHARPOS (*it) == BEGV 5284 xassert (IT_CHARPOS (*it) == BEGV
5214 || FETCH_BYTE (IT_BYTEPOS (*it) - 1) == '\n'); 5285 || FETCH_BYTE (IT_BYTEPOS (*it) - 1) == '\n');
@@ -5340,15 +5411,11 @@ reseat_1 (it, pos, set_stop_p)
5340 IT_STRING_BYTEPOS (*it) = -1; 5411 IT_STRING_BYTEPOS (*it) = -1;
5341 it->string = Qnil; 5412 it->string = Qnil;
5342 it->method = GET_FROM_BUFFER; 5413 it->method = GET_FROM_BUFFER;
5343 /* RMS: I added this to fix a bug in move_it_vertically_backward 5414 it->object = it->w->buffer;
5344 where it->area continued to relate to the starting point
5345 for the backward motion. Bug report from
5346 Nick Roberts <nick@nick.uklinux.net> on 19 May 2003.
5347 However, I am not sure whether reseat still does the right thing
5348 in general after this change. */
5349 it->area = TEXT_AREA; 5415 it->area = TEXT_AREA;
5350 it->multibyte_p = !NILP (current_buffer->enable_multibyte_characters); 5416 it->multibyte_p = !NILP (current_buffer->enable_multibyte_characters);
5351 it->sp = 0; 5417 it->sp = 0;
5418 it->string_from_display_prop_p = 0;
5352 it->face_before_selective_p = 0; 5419 it->face_before_selective_p = 0;
5353 5420
5354 if (set_stop_p) 5421 if (set_stop_p)
@@ -5830,6 +5897,7 @@ set_iterator_to_next (it, reseat_p)
5830 IT_STRING_BYTEPOS (*it) += it->len; 5897 IT_STRING_BYTEPOS (*it) += it->len;
5831 IT_STRING_CHARPOS (*it) += it->cmp_len; 5898 IT_STRING_CHARPOS (*it) += it->cmp_len;
5832 it->method = GET_FROM_STRING; 5899 it->method = GET_FROM_STRING;
5900 it->object = it->string;
5833 goto consider_string_end; 5901 goto consider_string_end;
5834 } 5902 }
5835 else 5903 else
@@ -5837,6 +5905,7 @@ set_iterator_to_next (it, reseat_p)
5837 IT_BYTEPOS (*it) += it->len; 5905 IT_BYTEPOS (*it) += it->len;
5838 IT_CHARPOS (*it) += it->cmp_len; 5906 IT_CHARPOS (*it) += it->cmp_len;
5839 it->method = GET_FROM_BUFFER; 5907 it->method = GET_FROM_BUFFER;
5908 it->object = it->w->buffer;
5840 } 5909 }
5841 break; 5910 break;
5842 5911
@@ -5866,7 +5935,10 @@ set_iterator_to_next (it, reseat_p)
5866 else if (STRINGP (it->string)) 5935 else if (STRINGP (it->string))
5867 it->method = GET_FROM_STRING; 5936 it->method = GET_FROM_STRING;
5868 else 5937 else
5869 it->method = GET_FROM_BUFFER; 5938 {
5939 it->method = GET_FROM_BUFFER;
5940 it->object = it->w->buffer;
5941 }
5870 5942
5871 it->dpvec = NULL; 5943 it->dpvec = NULL;
5872 it->current.dpvec_index = -1; 5944 it->current.dpvec_index = -1;
@@ -5914,9 +5986,8 @@ set_iterator_to_next (it, reseat_p)
5914 && it->sp > 0) 5986 && it->sp > 0)
5915 { 5987 {
5916 pop_it (it); 5988 pop_it (it);
5917 if (STRINGP (it->string)) 5989 if (it->method == GET_FROM_STRING)
5918 goto consider_string_end; 5990 goto consider_string_end;
5919 it->method = GET_FROM_BUFFER;
5920 } 5991 }
5921 } 5992 }
5922 break; 5993 break;
@@ -5928,13 +5999,8 @@ set_iterator_to_next (it, reseat_p)
5928 if the `display' property takes up the whole string. */ 5999 if the `display' property takes up the whole string. */
5929 xassert (it->sp > 0); 6000 xassert (it->sp > 0);
5930 pop_it (it); 6001 pop_it (it);
5931 it->image_id = 0; 6002 if (it->method == GET_FROM_STRING)
5932 if (STRINGP (it->string)) 6003 goto consider_string_end;
5933 {
5934 it->method = GET_FROM_STRING;
5935 goto consider_string_end;
5936 }
5937 it->method = GET_FROM_BUFFER;
5938 break; 6004 break;
5939 6005
5940 default: 6006 default:
@@ -6157,6 +6223,7 @@ next_element_from_ellipsis (it)
6157 setting face_before_selective_p. */ 6223 setting face_before_selective_p. */
6158 it->saved_face_id = it->face_id; 6224 it->saved_face_id = it->face_id;
6159 it->method = GET_FROM_BUFFER; 6225 it->method = GET_FROM_BUFFER;
6226 it->object = it->w->buffer;
6160 reseat_at_next_visible_line_start (it, 1); 6227 reseat_at_next_visible_line_start (it, 1);
6161 it->face_before_selective_p = 1; 6228 it->face_before_selective_p = 1;
6162 } 6229 }
@@ -6345,6 +6412,8 @@ next_element_from_composition (it)
6345 : it->current.pos); 6412 : it->current.pos);
6346 if (STRINGP (it->string)) 6413 if (STRINGP (it->string))
6347 it->object = it->string; 6414 it->object = it->string;
6415 else
6416 it->object = it->w->buffer;
6348 return 1; 6417 return 1;
6349} 6418}
6350 6419
@@ -11787,9 +11856,12 @@ set_cursor_from_row (w, row, matrix, delta, delta_bytes, dy, dvpos)
11787 } 11856 }
11788 else 11857 else
11789 { 11858 {
11790 string_before_pos = last_pos; 11859 if (string_start == NULL)
11791 string_start = glyph; 11860 {
11792 string_start_x = x; 11861 string_before_pos = last_pos;
11862 string_start = glyph;
11863 string_start_x = x;
11864 }
11793 /* Skip all glyphs from string. */ 11865 /* Skip all glyphs from string. */
11794 do 11866 do
11795 { 11867 {
diff --git a/src/xterm.c b/src/xterm.c
index 4f2bc73c9f9..df99f9cad0d 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -359,7 +359,8 @@ static void x_scroll_bar_report_motion P_ ((struct frame **, Lisp_Object *,
359 Lisp_Object *, Lisp_Object *, 359 Lisp_Object *, Lisp_Object *,
360 unsigned long *)); 360 unsigned long *));
361static void x_check_fullscreen P_ ((struct frame *)); 361static void x_check_fullscreen P_ ((struct frame *));
362static void x_check_expected_move P_ ((struct frame *)); 362static void x_check_expected_move P_ ((struct frame *, int, int));
363static void x_sync_with_move P_ ((struct frame *, int, int, int));
363static int handle_one_xevent P_ ((struct x_display_info *, XEvent *, 364static int handle_one_xevent P_ ((struct x_display_info *, XEvent *,
364 int *, struct input_event *)); 365 int *, struct input_event *));
365static SIGTYPE x_connection_closed P_ ((Display *, char *)); 366static SIGTYPE x_connection_closed P_ ((Display *, char *));
@@ -6883,11 +6884,8 @@ handle_one_xevent (dpyinfo, eventp, finish, hold_quit)
6883 && GTK_WIDGET_MAPPED (FRAME_GTK_OUTER_WIDGET (f))) 6884 && GTK_WIDGET_MAPPED (FRAME_GTK_OUTER_WIDGET (f)))
6884#endif 6885#endif
6885 { 6886 {
6886 /* What we have now is the position of Emacs's own window.
6887 Convert that to the position of the window manager window. */
6888 x_real_positions (f, &f->left_pos, &f->top_pos); 6887 x_real_positions (f, &f->left_pos, &f->top_pos);
6889 6888
6890 x_check_expected_move (f);
6891 if (f->want_fullscreen & FULLSCREEN_WAIT) 6889 if (f->want_fullscreen & FULLSCREEN_WAIT)
6892 f->want_fullscreen &= ~(FULLSCREEN_WAIT|FULLSCREEN_BOTH); 6890 f->want_fullscreen &= ~(FULLSCREEN_WAIT|FULLSCREEN_BOTH);
6893 } 6891 }
@@ -8512,8 +8510,11 @@ x_set_offset (f, xoff, yoff, change_gravity)
8512{ 8510{
8513 int modified_top, modified_left; 8511 int modified_top, modified_left;
8514 8512
8515 if (change_gravity > 0) 8513 if (change_gravity != 0)
8516 { 8514 {
8515 FRAME_X_OUTPUT (f)->left_before_move = f->left_pos;
8516 FRAME_X_OUTPUT (f)->top_before_move = f->top_pos;
8517
8517 f->top_pos = yoff; 8518 f->top_pos = yoff;
8518 f->left_pos = xoff; 8519 f->left_pos = xoff;
8519 f->size_hint_flags &= ~ (XNegative | YNegative); 8520 f->size_hint_flags &= ~ (XNegative | YNegative);
@@ -8531,7 +8532,7 @@ x_set_offset (f, xoff, yoff, change_gravity)
8531 modified_left = f->left_pos; 8532 modified_left = f->left_pos;
8532 modified_top = f->top_pos; 8533 modified_top = f->top_pos;
8533 8534
8534 if (FRAME_X_DISPLAY_INFO (f)->wm_type == X_WMTYPE_A) 8535 if (change_gravity != 0 && FRAME_X_DISPLAY_INFO (f)->wm_type == X_WMTYPE_A)
8535 { 8536 {
8536 /* Some WMs (twm, wmaker at least) has an offset that is smaller 8537 /* Some WMs (twm, wmaker at least) has an offset that is smaller
8537 than the WM decorations. So we use the calculated offset instead 8538 than the WM decorations. So we use the calculated offset instead
@@ -8543,13 +8544,26 @@ x_set_offset (f, xoff, yoff, change_gravity)
8543 XMoveWindow (FRAME_X_DISPLAY (f), FRAME_OUTER_WINDOW (f), 8544 XMoveWindow (FRAME_X_DISPLAY (f), FRAME_OUTER_WINDOW (f),
8544 modified_left, modified_top); 8545 modified_left, modified_top);
8545 8546
8546 if (FRAME_VISIBLE_P (f) 8547 x_sync_with_move (f, f->left_pos, f->top_pos,
8547 && FRAME_X_DISPLAY_INFO (f)->wm_type == X_WMTYPE_UNKNOWN) 8548 FRAME_X_DISPLAY_INFO (f)->wm_type == X_WMTYPE_UNKNOWN
8548 { 8549 ? 1 : 0);
8549 FRAME_X_OUTPUT (f)->check_expected_move = 1; 8550
8550 FRAME_X_OUTPUT (f)->expected_top = f->top_pos; 8551 /* change_gravity is non-zero when this function is called from Lisp to
8551 FRAME_X_OUTPUT (f)->expected_left = f->left_pos; 8552 programmatically move a frame. In that case, we call
8552 } 8553 x_check_expected_move to discover if we have a "Type A" or "Type B"
8554 window manager, and, for a "Type A" window manager, adjust the position
8555 of the frame.
8556
8557 We call x_check_expected_move if a programmatic move occurred, and
8558 either the window manager type (A/B) is unknown or it is Type A but we
8559 need to compute the top/left offset adjustment for this frame. */
8560
8561 if (change_gravity != 0 &&
8562 (FRAME_X_DISPLAY_INFO (f)->wm_type == X_WMTYPE_UNKNOWN
8563 || (FRAME_X_DISPLAY_INFO (f)->wm_type == X_WMTYPE_A
8564 && (FRAME_X_OUTPUT (f)->move_offset_left == 0
8565 && FRAME_X_OUTPUT (f)->move_offset_top == 0))))
8566 x_check_expected_move (f, modified_left, modified_top);
8553 8567
8554 UNBLOCK_INPUT; 8568 UNBLOCK_INPUT;
8555} 8569}
@@ -8584,37 +8598,96 @@ x_check_fullscreen (f)
8584 } 8598 }
8585} 8599}
8586 8600
8587/* If frame parameters are set after the frame is mapped, we need to move 8601/* This function is called by x_set_offset to determine whether the window
8588 the window. 8602 manager interfered with the positioning of the frame. Type A window
8589 Some window managers moves the window to the right position, some 8603 managers position the surrounding window manager decorations a small
8590 moves the outer window manager window to the specified position. 8604 amount above and left of the user-supplied position. Type B window
8591 Here we check that we are in the right spot. If not, make a second 8605 managers position the surrounding window manager decorations at the
8592 move, assuming we are dealing with the second kind of window manager. */ 8606 user-specified position. If we detect a Type A window manager, we
8607 compensate by moving the window right and down by the proper amount. */
8608
8593static void 8609static void
8594x_check_expected_move (f) 8610x_check_expected_move (f, expected_left, expected_top)
8595 struct frame *f; 8611 struct frame *f;
8612 int expected_left;
8613 int expected_top;
8596{ 8614{
8597 if (FRAME_X_OUTPUT (f)->check_expected_move) 8615 int count = 0, current_left = 0, current_top = 0;
8598 { 8616
8599 int expect_top = FRAME_X_OUTPUT (f)->expected_top; 8617 /* x_real_positions returns the left and top offsets of the outermost
8600 int expect_left = FRAME_X_OUTPUT (f)->expected_left; 8618 window manager window around the frame. */
8601 8619
8602 if (expect_top != f->top_pos || expect_left != f->left_pos) 8620 x_real_positions (f, &current_left, &current_top);
8621
8622 if (current_left != expected_left || current_top != expected_top)
8603 { 8623 {
8624 /* It's a "Type A" window manager. */
8625
8626 int adjusted_left;
8627 int adjusted_top;
8628
8604 FRAME_X_DISPLAY_INFO (f)->wm_type = X_WMTYPE_A; 8629 FRAME_X_DISPLAY_INFO (f)->wm_type = X_WMTYPE_A;
8605 FRAME_X_OUTPUT (f)->move_offset_left = expect_left - f->left_pos; 8630 FRAME_X_OUTPUT (f)->move_offset_left = expected_left - current_left;
8606 FRAME_X_OUTPUT (f)->move_offset_top = expect_top - f->top_pos; 8631 FRAME_X_OUTPUT (f)->move_offset_top = expected_top - current_top;
8632
8633 /* Now fix the mispositioned frame's location. */
8607 8634
8608 f->left_pos = expect_left; 8635 adjusted_left = expected_left + FRAME_X_OUTPUT (f)->move_offset_left;
8609 f->top_pos = expect_top; 8636 adjusted_top = expected_top + FRAME_X_OUTPUT (f)->move_offset_top;
8610 x_set_offset (f, expect_left, expect_top, 0); 8637
8638 XMoveWindow (FRAME_X_DISPLAY (f), FRAME_OUTER_WINDOW (f),
8639 adjusted_left, adjusted_top);
8640
8641 x_sync_with_move (f, expected_left, expected_top, 0);
8611 } 8642 }
8612 else if (FRAME_X_DISPLAY_INFO (f)->wm_type == X_WMTYPE_UNKNOWN) 8643 else
8644 /* It's a "Type B" window manager. We don't have to adjust the
8645 frame's position. */
8646
8613 FRAME_X_DISPLAY_INFO (f)->wm_type = X_WMTYPE_B; 8647 FRAME_X_DISPLAY_INFO (f)->wm_type = X_WMTYPE_B;
8648}
8649
8650
8651/* Wait for XGetGeometry to return up-to-date position information for a
8652 recently-moved frame. Call this immediately after calling XMoveWindow.
8653 If FUZZY is non-zero, then LEFT and TOP are just estimates of where the
8654 frame has been moved to, so we use a fuzzy position comparison instead
8655 of an exact comparison. */
8656
8657static void
8658x_sync_with_move (f, left, top, fuzzy)
8659 struct frame *f;
8660 int left, top, fuzzy;
8661{
8662 int count = 0;
8663
8664 while (count++ < 50)
8665 {
8666 int current_left = 0, current_top = 0;
8667
8668 /* In theory, this call to XSync only needs to happen once, but in
8669 practice, it doesn't seem to work, hence the need for the surrounding
8670 loop. */
8671
8672 XSync (FRAME_X_DISPLAY (f), False);
8673 x_real_positions (f, &current_left, &current_top);
8674
8675 if (fuzzy)
8676 {
8677 /* The left fuzz-factor is 10 pixels. The top fuzz-factor is 40
8678 pixels. */
8614 8679
8615 /* Just do this once */ 8680 if (abs (current_left - left) <= 10 && abs (current_top - top) <= 40)
8616 FRAME_X_OUTPUT (f)->check_expected_move = 0; 8681 return;
8617 } 8682 }
8683 else if (current_left == left && current_top == top)
8684 return;
8685 }
8686
8687 /* As a last resort, just wait 0.5 seconds and hope that XGetGeometry
8688 will then return up-to-date position info. */
8689
8690 wait_reading_process_output (0, 500000, 0, 0, Qnil, NULL, 0);
8618} 8691}
8619 8692
8620 8693
diff --git a/src/xterm.h b/src/xterm.h
index 411a7deea87..8bc9782b02b 100644
--- a/src/xterm.h
+++ b/src/xterm.h
@@ -644,18 +644,14 @@ struct x_output
644 FocusOut and LeaveNotify clears EXPLICIT/IMPLICIT. */ 644 FocusOut and LeaveNotify clears EXPLICIT/IMPLICIT. */
645 int focus_state; 645 int focus_state;
646 646
647 /* The latest move we made to FRAME_OUTER_WINDOW. Saved so we can
648 compensate for type A WMs (see wm_type in dpyinfo above). */
649 int expected_top;
650 int expected_left;
651
652 /* The offset we need to add to compensate for type A WMs. */ 647 /* The offset we need to add to compensate for type A WMs. */
653 int move_offset_top; 648 int move_offset_top;
654 int move_offset_left; 649 int move_offset_left;
655 650
656 /* Nonzero if we have made a move and needs to check if the WM placed us 651 /* The frame's left/top offsets before we call XMoveWindow. See
657 at the right position. */ 652 x_check_expected_move. */
658 int check_expected_move; 653 int left_before_move;
654 int top_before_move;
659}; 655};
660 656
661#define No_Cursor (None) 657#define No_Cursor (None)