summaryrefslogtreecommitdiff
path: root/language/typingtex
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /language/typingtex
Initial commit
Diffstat (limited to 'language/typingtex')
-rw-r--r--language/typingtex/ASCII-on-the-Mac.doc278
-rw-r--r--language/typingtex/Active8MacProse.dir/Active8Mac-SP.tex105
-rw-r--r--language/typingtex/Active8MacProse.dir/Active8MacCM.tex565
-rw-r--r--language/typingtex/Active8MacProse.dir/Test8LaTeXCsCM.tex117
-rw-r--r--language/typingtex/Active8MacProse.dir/Test8MacCM.tex115
-rw-r--r--language/typingtex/Active8MacProse.dir/Textures16xMacEncoding.dir/fr8hyph.mac162
-rw-r--r--language/typingtex/Active8MacProse.dir/Textures16xMacEncoding.dir/fr8hyph.src1114
-rw-r--r--language/typingtex/Convert-RaichleHacked.dir/cork2dek.tbl173
-rw-r--r--language/typingtex/Convert-RaichleHacked.dir/cv.cfg31
-rw-r--r--language/typingtex/Convert-RaichleHacked.dir/cv.in1
-rw-r--r--language/typingtex/Convert-RaichleHacked.dir/cv.log24
-rw-r--r--language/typingtex/Convert-RaichleHacked.dir/cv.out0
-rw-r--r--language/typingtex/Convert-RaichleHacked.dir/cv.tex482
-rw-r--r--language/typingtex/Convert-RaichleHacked.dir/mac2dek.tbl80
-rw-r--r--language/typingtex/Convert-RaichleHacked.dir/mac2fr7d.tbl56
-rw-r--r--language/typingtex/Convert-RaichleHacked.dir/mac2fr7g.tbl57
-rw-r--r--language/typingtex/Convert-RaichleHacked.dir/mac2noac.tbl80
-rw-r--r--language/typingtex/Convert-RaichleHacked.dir/pc2dek.tbl103
-rw-r--r--language/typingtex/Convert-RaichleHacked.dir/pc2fr7d.tbl65
-rw-r--r--language/typingtex/Convert-RaichleHacked.dir/pc2fr7g.tbl61
-rw-r--r--language/typingtex/Convert-RaichleHacked.dir/pc2noac.tbl103
-rw-r--r--language/typingtex/CorkNormMacTyping-cpt.hqx579
-rw-r--r--language/typingtex/Seroul-8bit-Textures-cpt.hqx548
-rw-r--r--language/typingtex/ascii-on-the-macintosh_system7.doc153
-rw-r--r--language/typingtex/cortex-email.dir/CorTeX-lex-script-Mai93203
-rw-r--r--language/typingtex/cortex-email.dir/Email&CorTeXQuedMac.doc604
-rw-r--r--language/typingtex/cortex-email.dir/Email&CorTeXQuedMac.hqx327
-rw-r--r--language/typingtex/email.dir/email-fix.pub148
-rw-r--r--language/typingtex/email.dir/email-fr.dmp123
-rw-r--r--language/typingtex/email.dir/email-fr.fix947
-rw-r--r--language/typingtex/email.dir/email-fr.sty560
-rw-r--r--language/typingtex/email.dir/email-sp104
-rw-r--r--language/typingtex/email.dir/email-sp.sty248
-rw-r--r--language/typingtex/lehyphen.tex170
-rw-r--r--language/typingtex/multicategory.tex682
-rw-r--r--language/typingtex/tally.sty874
36 files changed, 10042 insertions, 0 deletions
diff --git a/language/typingtex/ASCII-on-the-Mac.doc b/language/typingtex/ASCII-on-the-Mac.doc
new file mode 100644
index 0000000000..ff568286e4
--- /dev/null
+++ b/language/typingtex/ASCII-on-the-Mac.doc
@@ -0,0 +1,278 @@
+
+
+ *** ASCII-on-the-Mac.doc ***
+
+
+ When the Macintosh stoops to converse with the rest
+of the world on the email (= electronic mail) network the
+Macintosh user has to adapt to the old ASCII system
+(=American Standard for Computer Information Interchange of 1963).
+Since, on the Macintosh, ASCII is neither clearly delimited
+nor optimally implemented, some learning and adaptation on
+the part of the user is required. The following comments
+may help.
+
+ Leaving aside details of little interest, one can say
+that under the ASCII regime the Mac user is simply required
+to use only TEXT files and therein use only the characters
+
+ 9 (tab), 13 (carriage return), 32 (space)
+ and 33 -- 126, which are :
+ !"#$%&'()*+,-./0123456789:;<=>?@
+ ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`
+ abcdefghijklmnopqrstuvwxyz{|}~
+
+Roughly speaking, these are the common unaccented caracters
+and diacritics of American typewriters the early 20th
+century. Unfortunately there are problems:
+
+ (A) The following common diacritics are not ASCII and
+must not be used although they may be marked on the keyboard:
+
+ section (= \S in TeX)
+ degree
+ dieresis
+ pound sign
+ yen
+
+
+ (B) The following ASCII characters are often somewhat
+inaccessible (depending on your Mac model and software!)
+
+ \ | @ #
+
+You do well to hunt them down and mark them somehow.
+
+ (C) The following characters are marked but on
+"dead-keys" (=keys that give bo result on first being struck)
+ ` ^ ~ and perhaps ' "
+
+On early Macs the dead keys were typed by double-striking
+them. From the coming of the ADB (=Apple Desktop Bus)
+keyboards in 1987(?), dead keys became spooky; the
+double strike to obtain the dead-key character was
+invalidated and replaced by the dead-key followed by
+spacebar. For many users that takes twice as long as the
+original double strike.
+
+ In 1988 Fabien Samuel wrote at my request a low level
+system patch (for the KeyTrans ROM routine) to restore the
+original behavior of dead-keys. It comes in the form of an
+INIT file called KeyTransPatchInit to be put in your system
+folder. It is given immediately below in binhex coded
+form. Put the binhex code and preamble in a TEXT file on
+the Mac and decode with BinHeX or CompactPro or Stuffit
+to obtain the INIT file.
+
+(This file must be converted with BinHex 4.0)
+:(%YPH94bB@jc8'&dBfK*EQPd+'4PB@3YDf9jFbN!58j*9%CK8f%K!!!!!!!!!!2
+-%1d!!!!!!3!!!!-"!!!#!3!!!-[!!B!2i!'!(r!"J"ji!B!m2!'!1"`"J(!i!B"
+`1!'!i"a,CAP8FQ&ZFe"KG'0S5@jTG#KNC@&N,@YPHA-T,3)!!!"*6NP84Q&6B5!
+!rmF!!!!!!!!!!!!!!!!!!!!!!!!!!+,YU3d!!!!!!!!$c)!!!!+!!!!#J!!!!S+
+UUS+!!!!#L!!!)S!!!!+)!!!LJ!!!!SJ!!#+!!!!#L!!!)S!!!!+)!!!LJ!!!!SJ
+!!#+!!!!#L!!!)S!!!!*rrrrm!!!!J!$rr`!"rrq!!rrr`!Iqrq!2r(r`(qaRq$r
+%4rara%Iqrd4(rrj%4rrq4%IrrN3!!!")B!3!!!!!)&mLAc!I)Km[#%j@!!")ja!
+J*%P#J`J!!!GQ!LB53UF[!6m!,`NJH[r86T!!,9m!##)$C`BN[!!!!!"-h`3)6Pj
+1G3!!!!3!!!")!!!"!2rrrrq!!!!"[R2[4D+)L%@LL)Kp[[L)4D#)L%@JL)p&J!!
+!!Irrrrq!!!!"QUUUUB!!!!'9999CJ!!!!CUUUUQ!!!!"KArr8B!!!!'!!!!"rrr
+rri!!!!(rrrrrrrrrr`!rq!!!!i!!!!%!!!!!!!!!!!!!!!!!!!!!!!!!!!!!rrr
+rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
+rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr!$r
+i!!!$J!!!!3!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!F4Q&6B3!!!!&'8N9'!!!
+!!!#!5801)`!!!!!!J!!!!!G*6NP8!!!!!!!!0M!i!9S-3!3!DbT#Tbmm5h43-8*
+RUD!LAb!*CaJ[#DQ5-$`"`k&')P%M5!!#-$`"`b"*S%G1G3!!!%"#5f9j9(*KER0
+3BA4MD#"*EQPd)#dJ3fp`HA*TCfKd)%CKBQPPEL"6B@eeC@`J-6Ni1#!J)#!J)#!
+J)#!J)#!J!!!"!!!!!`%!!!)"!!!!b`!+JB`6'J!!!"`!UJ!'5h43-3!!!$TcHA0
+k!!!!4NP$6L-!!!"53Nj%6!!!!&j'8N9'!!!!DNCK8f%!!!"f58j*9!!!!))!!!!
+!8!!!!!!!!!!!!!!1)!!!6!!!!!!!J2rr*!!!9!!!!!!!J2rr)!!"@!!!!!!!J2r
+r!!!"H!!!!!!!!2rr)!!"[3!+JA`!!!!@%!!"J`!!!!!05f9j9(*KER03BA4MD!G
+,G("6DATP#NYdF%PZFh4KE'bcL`:
+
+
+ There is still a minor bug or two in the patch; perhaps
+someone will take up the challenge to fix it?
+
+ With the above patch, the Mac on its own types and
+displays ASCII reasonably well with almost any Mac prose font.
+But the situation may take a turn for the worse once the Mac
+is connected to the net. The "terminal program" often fails to
+establish full ASCII communication between the Macintosh
+and the host computer on the net.
+
+
+NCSATelnet
+
+ One bad example still widely used is the NCSATelnet program
+(non-TCP form); it allows the Mac to be a Telnet node on a local
+network, usually ethernet or Apple's Local Talk. The most
+freindly versions seem to be 2.2 and 2.3. About ten ASCII
+characters become inaccessible and have to be replaced by
+command keys on the numerical keypad: Command 0, ... Command 9.
+
+ The following seems a suitable arrangement
+
+ 7 ` 8 < 9 >
+
+ 4 { 5 | 6 }
+
+ 1 ~ 2 # 3 \
+
+ 0 @
+
+To retain these from one session to the next one should
+add to the configuration file the following lines:
+
+key0= "@"
+key1= "~"
+key2= "#"
+key3= "\\"
+key4= "{"
+key5= "|"
+key6= "}"
+key7= "`"
+key8= "<"
+key9= ">"
+
+ This is just one terminal program of recent times. Expect
+similar problems with others. That being so, the Mac user is
+well advised to collect means that let him survive with a
+crippled keyboard. The device of copying from and pasting to the
+terminal program window is one of the most powerful. It permits
+one to do essentially all typing and editing in one's favorite
+text editor.
+
+ Another helpful item is the KeyFinder desk accessory
+available from sumex.stanford.edu. It lets one type with the
+mouse.
+
+ This collection of "helpful hints" for Macs in the ASCII
+world is highly subjective. Readers are most welcome to suggest
+useful additions.
+
+ Larry S <lcs@matups.matups.fr>
+
+
+
+Here is another approach to the dead-key problem
+based on KCHR reprogramming. (Cf Fabien Samuel's INIT above).
+
+ASCII sur le Mac
+
+%%~t gut@ens.fr 8-94
+
+ *** ASCII sur le Mac, deux approches ***
+
+ Je rencontre souvent des utilisateurs du Macintosh
+qui disent:
+
+ > Pour un certain nombre de raisons
+ > j'utilise moi-meme un clavier QWERTY.
+
+ Un des motifs pour cela est qu'on ne voit pas
+les caract`er ascii @~#\ grav'es sur le clavier.
+
+Mais on peut mettre de petites 'etiquettes sur le devant
+des touches en question --- rem`ede satisfaisant.
+
+ Un autre motif est la difficult'e d'acc`es `a
+<tilde>, <leftquote> et <hat> --- qui est due `a un
+m'ecanisme de touches mortes servant `a acc'eder aux
+caract`eres Mac pr'ecompos'es portant un de ces trois
+"accents".
+
+ --- pour obtenir <tilde>
+ on doit taper Option n et ensuite <espace>
+
+ --- pour obtenir ` (leftquote = l'accent grave)
+ on doit taper ` et ensuite <espace>
+
+ --- pour obtenir ^
+ on doit taper ^ et ensuite <espace>
+
+ En somme la frappe `a 8 bits entrave s'erieusement la
+frappe ASCII. Cela explique en partie le m'epris pour le
+Macintosh parmi ceux qui le connaissent mal. Que faire
+pour restaurer une bonne frappe ASCII sur le Mac? Il y a,
+en effet, plusieurs solutions.
+
+ (1) Am'eliorer m'ecanisme des touches mortes par un
+INIT. Fabien Samuel a programm'e cette solution pour
+moi. Par exemple, la frappe "<hat> et ensuite
+<espace>" devient alors <hat><hat>. C'est bon mais
+pas optimal. Son grand avantage est de corriger
+tous les claviers nationaux `a la fois.
+
+ (2) Modifier la resource fran_caise KCHR. Il y a
+beaucoup de fa_cons de faire cela avec ResEdit. J'ai
+choisi de d'etourner compl`etement la touche BLOC
+MAJUSCULES pour basculer entre un chavier ASCII et le
+clavier 8 bits d'origine. La frappe de <hat> pour <hat>
+est donc possible tant que BLOC MAJUSCULES est deprim'e
+(et abc donne abc et pas ABC). Pour installer cette
+solution on doit remplacer avec ResEdit la resource KCHR
+no 1 par celle appele'e "France&ASCIIsurBLOC" et lui
+donner le num'ero 1.
+
+ Ces deux solutions (qu'on peut combiner) se trouvent
+sur ftp matups.math.u-psud.fr dans
+
+ pub/TeX/TypingTeX.dir/ASCII-on-the-Mac.doc
+
+
+ Laurent S
+
+Voici la resource:
+
+(This file must be converted with BinHex 4.0)
+:&dY$5&*'FQ&ZBf8Q390$58PcGA*#6%p$!(*cFQ058d9%!3!!!!!!!!!*$Me%!!!
+!!!%!!!!)bJ!!"mS!!!"%!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+A5d0)8NCbB@jMC5C"8d0*5A0eFN*-6d-#!!!!FR0bB`!!FR0bBe*6483"!!#4!1X
+!!$[1!!!!!!!!!!!!!!!!!!#UIG3,!!!!!!!!#3jb!LJY!"&3Eh"eF%ePER9$4%9
+',6%b1!9'6'PcG!!!!#-L3Qp[E@9bB@jR)(Ba,M-JU6%j1$NJ5'PbEb"CB@eKE@p
+dE`!!"FKJ%J!!3d4&4J#!!!""8ddJ9M%Z-Nj@rqC)jaii+'i!$M`Z!!`k,J!5)%b
+JD4e!rqDJ+5483Ui!&%)Z!!!(aJ!!!!!"!3J##3!$"J3%#J8,"!F("`F("`F("`F
+("`F("`F"!!%)!3!"!!3%"!3%"!3%"`F("`F("`F("`F("`F("`-'"!3&"33%!`B
+%"!8&"!3("`F("`F("`F("`F("`F("!3%"!3%"!3%"!3%"!3%"!F("`F("`F("`F
+("`F("`F("`F("`F("`F("`F("`F("`F("`F("`F("`F("`F("`F("`F("`F("`F
+("`F("`F("`F("`F("`F("`F("`F("`F("`F("`F("`F("`F("`F("`F("`F("`F
+("`F("`F("`F("`F("`F("`F("`F("`F("`F("`F("`F("`F("`!-FA0NCQKRGhK
+MGN"LBATPFRPd*SiL*k3S,Bf2+5')*'pe!'P`$@aUR@YY!$XpEL`k#5!m#!-E!!!
+!!!!!!!!!!!!X(5S!+a`E(`!!,`-H,3!!26!a-M-d06Bh!$Jj!!!!%"!3%"!3%"!
+3%'!3%"!3%"!3"3%,Ia!%%!`3("dI(J"48d4'5%GA@%0@)d*"@N95@93a-M-d0M9
+I16HK1$!U6e8!59!06%SP5dfM,LY12bm*)$i)!aX!!!!!!!!!!!!!!#iU+J!V+aX
+p!!![!bmY!!!p-$%b-c3e0MF!1$N!!!!3%"!3%"!3%"!3)a!3%"!3%"!&!3Yr%!3
+3$"!F(4mH!&&64%C)4eGB3eC!3N&D49*C9#D1)LHN+#f0MbNKL#4293"*8!e-5Te
+,63!l28iX1JNJ2!J$'`!!!!!!!!!!!!!!,"dU!#XF'am!!#m$(Ld!!$d`-6)c0$8
+f0`!i13!!!"!3%"!3%"!3%"!3%"!3%"!3%!8"#hm3""!-%"`G(ai!i2'fa1hHh-@
+Tek@R[Z@3!+MbS2#4dY5QHp'#ahh"[q,2[*Q8Z3h#l26TY8$*V3#`eJR+XJJ$'`!
+!!!!!!!!!!!!!,"dU!#XF'am!!#m$(Ld!!$d`-6)c0$8f0`!i13!!!"!3%"!3%"!
+3%""q%"!3%"!3%!8"#hm3""!-%"`G(ai![EI'iH[IhGUL`pQkVS(QfpQU!126eBa
+Ed1I)AI1[Y-kllj@i$AcUj1MZ)k@apF"F#FUc#!-E!!!!!!!!!!!!!!!Z+LS!+bX
+E23!!,`-[,3!!26!a-M-d06Bh!$Jj!!!!%"!3%"!3%"!3%(i3%"!3%"!3"3%,Ia!
+%%!`3("dI(J#pYmEKkprGfU,$TEUZJHEEfDV`NG,8TR[4JXGp`ErLcVZCPEJ0I1V
+dk1j!bDheX0B*bV))!aX!!!!!!!!!!!!!!#`G+J!V("XI!!![!aiY!!!p-$%b-c3
+e0MF!1$N!!!!3%"!3%"!3%"!3%"!3%"!3%"!&!3Yr%!33$"!F(4mH!1$aYX6YhYc
+&UGHPTllPN!#SmU$`NG,8TR[4JXGp`ErLclbCP,N0`ZcdkE9!bDeqX0B*bV))!aX
+!!!!!!!!!!!!!!#`G+J!V("XI!!![!aiY!!!p-$%b-c3e0MF!1$N!!!!3%"!3%"!
+3%"!3%"!3%"!3%"!&!3Yr%!33$"!F(4mH!"%6"!B)"aFB!aB`!J%D"4)C&$%b-c3
+f06dj0ami-"d2&4X*%!d-#L),$4`l,`iX,JNJB!J$'`!!!!!!!!!!!!!!,KdU!#X
+F'am!!#m$(Ld!!$d`-6)c0$8f0`!i13!!!"!3%"!3%"!3%"!3%"!3%"!3%!8"#hm
+3""!-%"`G(ai!FA0NCQKRGhKMGN"LBATPFRPd*SiL*k3S,Bf2+5')*'peAQP`$@a
+UR@YYB$XpEL`k#5!m#!-E!!!!!!!!!!!!!!!X(5S!+a`E(`!!,`-H,3!!26!a-M-
+d06Bh!$Jj!!!!%"!3%"!3%"!3%'!32"!3%"!3"3%,Ia!%%!`3("dI(J"48d4'5%G
+A@%0@)d*"@N95@93a-M-d0M9I16HK1$!U6e@X59!06%SP5dfM,LY12bm*)$i)!aX
+!!!!!!!!!!!!!!#iU+J!V+aXp!!![!bmY!!!p-$%b-c3e0MF!1$N!!!!3%"!3%"!
+3%"!3)a!q%"!3%"!&!3Yr%!33$"!F(4mH!1$aYX6YhYc&UGHPTllPN!#SmU$`NG,
+8TR[4JXGp`ErLclbCP,N0`ZcdkE9!bDeqX0B*bV))!aX!!!!!!!!!!!!!!#`G+J!
+V("XI!!![!aiY!!!p-$%b-c3e0MF!1$N!!!!3%"!3%"!3%"!3IK!3%"!3%"!&!3Y
+r%!33$"!F(4mH!,fhaZ(VhphDSX2CZUk"jY[CUJ$Mdp@-@p$Rb&hcVl61Zqq9Z!e
+mkZ6SlL1PXIA!A!R+X`J$'`!!!!!!!!!!!!!!,LSU!#XV'cd!!#m$,bd!!$d`-6)
+c0$8f0`!i13!!!"!3%"!3%"!3%""q%"!3%"!3%!8"#hm3""!-%"`G(ai!!!F%%J!
+,)+YKKf@1DC*[Ph@F3HG&JdRU6qj9mJ#V!#S!#b"JBBKPMfQ6EjKeR8(,4HP*l8r
+a9I3!B!)U!!XJB'')CBpTNfqBGCe"bdAT5He2m9Ad!'!!)3!,)&jKL@@3!'Q8EjP
+eRN(P4HC*kdr[9I-!AJ%K!!dJV''+CC&TP@qDGCpjf%'!4HK*l%q&9BCCf3#X!bd
+!"b"q3Fa2c8k%BBYZPQqE!(i#)3!,)&jKL@@3!'Q8EjPeRN(P4HC*kdr[9I-JAJ!
+!!3!!!!M+!!!(bJ!!!%3!!"km"lJ!!!!F!$)!!%Y$5&)!!!!+!!S!!#!!!!!!"k,
+i%8CbB@jMC5C"8d0*55p#6%p$hD-:
+
+
diff --git a/language/typingtex/Active8MacProse.dir/Active8Mac-SP.tex b/language/typingtex/Active8MacProse.dir/Active8Mac-SP.tex
new file mode 100644
index 0000000000..c7786d7640
--- /dev/null
+++ b/language/typingtex/Active8MacProse.dir/Active8Mac-SP.tex
@@ -0,0 +1,105 @@
+ %%%% Active8Mac-SP.sty, april 1993
+ %%%% by Laurent Siebenmann <lcs@matups.matups.fr>
+ %%%% Posting for updates ftp matups.matups.fr
+ %%%% This file is ASCII with 8-bit characters in ^^xy form.
+
+ %%% Purpose: Allow direct typing of all Spanish accents for TeX
+ %% using any standard Macintosh prose font having them, AND
+ %% (a) Permit good Spanish hyphenation in words with
+ %% accents in case 7-bit Spanish hyphenation patterns are loaded
+ %% together with the 7bit accent administration package
+ %% HyAcc-CM.tex posted on ftp matups.matups.fr.
+ %% (b) Permit perfect Spanish hyphenation in words with
+ %% accents in case 8-bit Spanish hyphenation patterns are loaded
+ %% and any known 8bit accent administration package is present.
+ %% (CaesarCM.tex and CaesarCK.tex on ftp matups.matups.fr
+ %% are candidates for (extended) computer modern fonts and
+ %% and cork norm fonts respectively.
+ %% (c) Maintain the expected behavior of \uppercase and \lowercase.
+
+ %%% Warnings:
+ %% Eight bit typing based on a file option.keys distributed
+ %% at one time with Textures and containing basically just some
+ %% active character definitions satisfies NONE of the conditions
+ %% (a) (b) (c) because the uccodes and lccodes are wrong.
+ %% Further it has been verified that there exists no
+ %% language-independent way to assign these codes for the Macintosh
+ %% unless the TeX implementation has so-called I/O filters to
+ %% harmonise Macintosh and Cork norm (TeX) character encodings.
+ %% In 1993 OzTeX and Textures do not have such filters.
+ %% When, some time in the future, you notice that your TeX does
+ %% have such I/O filters look for a simple language-independant
+ %% replacement for this file on ftp matups.matups.fr.
+
+ %%% Compatibility: If option.keys is loaded BEFORE this file,
+ %% you do get the features (a) (b) (c) PLUS the active character
+ %% definitions in option.keys that are not revised by this file.
+
+\begingroup
+\catcode`@=11
+
+ %%% Globally set high ASCII to 13
+ %%
+ \count@="80
+ \loop
+ \global\catcode\the\count@=\active
+ \ifnum\count@<"FF
+ \relax\advance\count@ by 1
+ \repeat
+
+ %%% Globally set their Cork default lc-uc codes
+ \newcount\Ct@
+ \newcount\Ct@@
+ \newcount\Ct@@@
+ \toks0={%
+ \loop
+ \Ct@=\count@\advance\Ct@ by 32
+ %% \count@ is Plain scratch counter \count255
+ \global\uccode\the\count@=\the\count@
+ \global\lccode\the\count@=\the\Ct@
+ \global\uccode\the\Ct@=\the\count@
+ \global\lccode\the\Ct@=\the\Ct@
+ \ifnum\count@<\Ct@@
+ \relax\advance\count@ by 1
+ \repeat
+ }
+
+ \count@="80 \Ct@@="9F \the\toks0 %% segment "80 to "BF
+ \count@="C0 \Ct@@="DF \the\toks0 %% segment "C0 to "FF
+
+
+ \def\Forbid@ #1{%
+ \global\catcode`#1=15 }
+
+ \def\CheckPeriod#1{\if#1.\else
+ \errmessage{ !!! Error in character data}\fi}
+
+
+ \def\lc@uc@ADef#1#2#3#4#5{%
+ \CheckPeriod{#5}%
+ \global\def#1{#3}\global\def#2{#4}%
+ \global\lccode`#1=`#2\global\uccode`#1=`#1%
+ \global\lccode`#2=`#2\global\uccode`#2=`#1%
+ }
+
+ \catcode`/=13 \let/\lc@uc@ADef
+
+ %\catcode`*=13 \let*=\Forbid@
+ \catcode`^=7 %% superscript
+
+ %/^^a0^^87{\'A}{\'a}. *^^a0 %%cf Activ8MonacoCM.tex
+ /^^e7^^87{\'A}{\'a}.
+ /^^83^^8e{\'E}{\'e}.
+ %/^^b1^^92{\'I}{\'\i}.*^^b1
+ /^^ea^^92{\'I}{\'\i}.
+ %/^^b8^^97{\'O}{\'o}.*^^b8
+ /^^ee^^97{\'O}{\'o}.
+ %/^^b9^^9c{\'U}{\'u}.*^^b9
+ /^^f2^^9c{\'U}{\'u}.
+ /^^84^^96{\~N}{\~n}.
+
+ %^^e7^^87^^83^^8e^^ea^^92^^ee^^97^^f2^^9c^^84^^96
+
+ \endgroup
+ \endinput
+
diff --git a/language/typingtex/Active8MacProse.dir/Active8MacCM.tex b/language/typingtex/Active8MacProse.dir/Active8MacCM.tex
new file mode 100644
index 0000000000..0fda92a4c8
--- /dev/null
+++ b/language/typingtex/Active8MacProse.dir/Active8MacCM.tex
@@ -0,0 +1,565 @@
+ %%%%% Active8MacCM.tex
+ %%% November 1992, Mar 1994
+
+ %%%% NB: 7bit ascii file
+
+ %%% Author:
+ %% Laurent Siebenmann, Orsay, France
+ %% lcs@matups.matups.fr <= bug reports here please!
+
+ %%% Master Posting:
+ %% ftp matups.matups.fr in directory TypingTeX.dir
+
+ %%% AIM:
+ %% Exploit TeX's active character mechanism
+ %% in conjunction with CaesarCM
+ %% to allow direct typing of prose for TeX
+ %% using all accented characters of Times or other
+ %% Macintosh fonts (Helvetica, Palatino etc.)
+ %% A fortiori, one can use the less rich but more readable
+ %% bitmapped fonts Monaco, Geneva etc.
+
+ %%% INSTRUCTIONS:
+ %% You have merely to \input
+ %% this file on top of any format in which the
+ %% 7-bit typing system for accented characters
+ %% CaesarCM has been incorporated.
+ %% format-dumper-CM is a tool to create such
+ %% formats. Then direct typing
+ %% of accented characters is acceptable to TeX.
+ %% TeX will use a ready-made accented character
+ %% if these are available in the current font
+ %% and create a composite character otherwise.
+ %% LaTeX users must \input the file
+ %% --- AFTER LaTeX.tex and
+ %% --- BEFORE \documentstyle
+
+ %%% CASE CHANGE RESTORED!
+ %% Such macros as these necessarily fail to
+ %% extend the action of the primitives
+ %% \uppercase and \lowercase
+ %% to directly typed accented characters.
+ %% To replace (or indeed redefine) these, consider
+ %% using \Uppercase and \Lowercase
+ %% Or \eUppercase and \eLowercase from caesarcm.tex.
+ %% See documentation following \endinput
+
+ %%%% \Uppercase and \Lowercase to extend action of
+ %%% \uppercase and \lowercase to 128-255. Robust.
+ %%% Misbehave on \ss, \ae, \oe, \o and caps (leave them fixed)
+ %%% \eUppercase and \eLowercase of caesarcm.tex
+ %%% have perfect behavior --- but are fragile.
+
+ \begingroup
+ \catcode`\@=11
+ \catcode`\/=13
+
+ \global\let\primuppercase\uppercase
+ \global\let\primlowercase\lowercase
+
+ %%\count@ is Plain scratch counter \count255
+ %%% These counts exist globally global despite appearances
+ \ifx\undefined\Ct@\csname newcount\endcsname\Ct@\fi
+ \ifx\undefined\Ct@@\csname newcount\endcsname\Ct@@\fi
+ \ifx\undefined\Ct@@@\csname newcount\endcsname\Ct@@@\fi
+
+ \count@=12\Ct@=128\Ct@@=255
+ \loop
+ \catcode\Ct@=\count@
+ \ifnum\Ct@<\Ct@@\relax
+ \advance\Ct@ by \@ne
+ \repeat
+
+ %%%%% Casing alphabetic Mac Characters
+ %%
+ \def\Alphaholder@{%
+ /^^e7^^87./^^83^^8e./^^ea^^92./^^ee^^97./^^f2^^9c.%
+ /^^cb^^88./^^e9^^8f./^^ed^^93./^^f1^^98./^^f4^^9d.%
+ /^^e5^^89./^^e6^^90./^^eb^^94./^^ef^^99./^^f3^^9e.%
+ /^^80^^8a./^^e8^^91./^^ec^^95./^^85^^9a./^^86^^9f.%
+ /^^d9^^d8./^^cc^^8b./^^84^^96./^^cd^^9b./^^81^^8c.%
+ /^^82^^8d./^^ae^^be./^^ce^^cf./^^af^^bf.%
+ }
+ %\def\CheckPeriod#1{\if#1.\else %
+ % \errmessage{ !!! Error in character data}\fi}
+ \def\space{ }
+
+\def/#1#2.{\lccode\number`#1=\number`#2\lccode\number`#2=\number`#2}
+
+ \xdef\LAlphaPrep@{\Alphaholder@}%
+ %\show\LAlphaPrep@
+
+
+\def/#1#2.{\uccode\number`#1=\number`#1\uccode\number`#2=\number`#1}
+ \xdef\UAlphaPrep@{\Alphaholder@}%
+ %\show\UAlphaPrep@
+
+ %%%%% Casing nonalphabetic Mac Characters
+ \def\Otherholder@{%
+ /^^a0./^^a1./^^a2./^^a3./^^a4./^^a5./^^a6./^^a7.%
+ /^^a8./^^a9./^^aa./^^ab./^^ac./^^ad.%
+ /^^b0./^^b1./^^b2./^^b3./^^b4./^^b5./^^b6./^^b7.%
+ /^^b8./^^b9./^^ba./^^bb./^^bc./^^bd.%
+ /^^c0./^^c1./^^c2./^^c3./^^c4./^^c5./^^c6./^^c7.%
+ /^^c8./^^c9./^^ca./^^d0./^^d1./^^d2./^^d3./^^d4.%
+ /^^d5./^^d6./^^d7./^^da./^^db./^^dc./^^dd./^^de.%
+ /^^df./^^e0./^^e1./^^e2./^^e3./^^e4./^^f0./^^f5.%
+ /^^f6./^^f7./^^f8./^^f9./^^fa./^^fb./^^fc./^^fd.%
+ /^^fe./^^ff.}
+
+ \def/#1.{\uccode\number`#1\z@}
+ \xdef\UOtherPrep@{\Otherholder@}
+ %\show\UOtherPrep@
+
+ \def/#1.{\lccode\number`#1\z@}
+ \xdef\LOtherPrep@{\Otherholder@}
+ %\show\LOtherPrep@
+
+ \gdef\SetCorkULCodeSeg{%
+ \loop
+ \Ct@=\count@\advance\Ct@ by 32
+ \uccode\count@=\count@
+ \lccode\count@=\Ct@
+ \uccode\Ct@=\count@
+ \lccode\Ct@=\Ct@
+ \ifnum\count@<\Ct@@
+ \relax\advance\count@ by 1
+ \repeat
+ }
+
+ \gdef\SetCorkULCodes{%
+ %%% Impose Cork lc uc and sf codes
+ \count@=128 \Ct@@=158 \SetCorkULCodeSeg %% segment "80 to "BF
+ %%% Cork "9F is \S and "BF is pound sign lc/uc codes 0
+ \count@=192 \Ct@@=223 \SetCorkULCodeSeg %% segment "C0 to "FF
+ }
+
+ \gdef\Uppercase#1{\UAlphaPrep@\UOtherPrep@
+ \primuppercase{#1}%
+ \SetCorkULCodes
+ }
+
+ \gdef\Lowercase#1{\LAlphaPrep@\LOtherPrep@
+ \primlowercase{#1}%
+ \SetCorkULCodes
+ }
+
+ \endgroup
+
+ \begingroup
+ \catcode`\@=11
+ \global\let\EX@\expandafter
+
+ %\show\CaesarCMLoaded
+ {\catcode`!=12
+ \ifx\CaesarCMLoaded\undefined
+ \immediate\write16{}%
+ \immediate\write16{ !!! CaesarCM not loaded}
+ \gdef\temp{}\else \gdef\temp{}
+ \fi}
+ \temp %\endgroup\end
+
+ { \catcode`!=11
+ \ifx\ActiveEight\undefined
+ \gdef\temp{}
+ \else
+ \W@{}%
+ \W@{ !!! Stop! An Active8MacCM typing setup has already been
+loaded.
+ \gdef\temp{\endgroup\end}\else \gdef\temp{}
+ \global\let\ActiveEight\relax
+ \fi}
+ \temp
+
+ %%% Globally set high ASCII to 13
+ %%
+ \count@="80\Ct@@="FF
+ \loop
+ \global\catcode\count@=\active
+ \ifnum\count@<\Ct@@\relax
+ \advance\count@ by \@ne
+ \repeat
+
+ \def\CheckPeriod#1{\if#1.\else
+ \errmessage{ !!! Error in character data}\fi}
+
+ %%% \lcucActAccDef ^^83^^8eEe\'. %%is example!
+ %% Presumably uc and lc codes already set
+\def\lcucActAccDef#1#2#3#4#5#6{%
+ \CheckPeriod{#6}%
+ \global\catcode`#1=\active
+ \global\catcode`#2=\active
+ \gdef#1{#5#3}%% #3 and #4 ascii catcode 11; #5 is \' say
+ \gdef#2{#5#4}%
+ }
+
+ %%% \CharAct@ ^^d4^^60. %% is example!
+ %% leaves uc lc unresolved
+ \def\CharAct@#1#2#3{%
+ \global\catcode`#1=\active
+ \CheckPeriod{#3}%
+ \global\let#1#2%
+ }
+
+ %%% \QuoteAct@ ^^d4^^60. %% is example!
+ %%
+ \def\QuoteAct@#1.#2#3{%
+ \CheckPeriod{#3}%
+ \global\catcode`#1=\active
+ \xdef#1{\string#2}%
+ \global\uccode`#2=0\global\lccode`#2=0
+ }
+
+ %%% \Forbid@
+ %%
+ \def\Forbid@ #1{%
+ \global\catcode`#1=15 }
+
+ \catcode`/=13
+ \let/\lcucActAccDef
+
+ \catcode`\*=13
+ \let*=\QuoteAct@
+
+ \catcode`\|=13
+ \let|=\CharAct@
+
+ %%% / is \lcucActAccDef
+ /^^e7^^87Aa\'.
+ /^^83^^8eEe\'.
+ /^^ea^^92Ii\'.
+ /^^ee^^97Oo\'.
+ /^^f2^^9cUu\'.
+ /^^cb^^88Aa\`.
+ /^^e9^^8fEe\`.
+ /^^ed^^93Ii\`.
+ /^^f1^^98Oo\`.
+ /^^f4^^9dUu\`.
+ /^^e5^^89Aa\^.
+ /^^e6^^90Ee\^.
+ /^^eb^^94Ii\^.
+ /^^ef^^99Oo\^.
+ /^^f3^^9eUu\^.
+ /^^80^^8aAa\".
+ /^^e8^^91Ee\".
+ /^^ec^^95Ii\".
+ /^^85^^9aOo\".
+ /^^86^^9fUu\".
+ /^^d9^^d8Yy\".
+ /^^cc^^8bAa\~.
+ /^^84^^96Nn\~.
+ /^^cd^^9bOo\~.
+ /^^81^^8cAa\*.%\show^^81
+ /^^82^^8dCc\c.
+
+ %%% | is \CharAct@
+ |^^ae\AE.
+ |^^be\ae.
+ |^^ce\OE.
+ |^^cf\oe.
+ |^^af\O.
+ |^^bf\o.
+ |^^a7\ss.
+
+ %%% * is \QuoteAct@
+ {\catcode"5C=12 *^^d2.^^5c.}%% backslash code!!
+ *^^d3.^^22.%% ''
+ *^^d4.^^60.%% `
+ *^^d5.^^27.%% '
+
+ \gdef\Symb@@#1{%
+ \EX@ \ifx \csname #1@\endcsname\relax
+ ^^58%% Print X if nothing better
+ \else
+ \csname #1@\endcsname
+ \fi}
+
+ \xdef\questiondown@{\string^^3e}%
+ \xdef\exclamdown@{\string^^3c}%
+ %\def\guillemotleft@{\DLG}%% in gllmts.tex
+ %\def\guillemotright@{\DRG}%% in gllmts.tex
+ \def\dagger@{$\m@th\dag$}%
+ \gdef\daggerdbl@{$\m@th\ddag$}%
+ \gdef\section@{$\m@th\S$}
+ \gdef\paragraph@{$\m@th\P$}
+ \gdef\pound@{{\ifdim\fontdimen\@ne\font >\z@
+ \it\else \font\ft=cmu10\ft\fi\char`\$}}%% cheat
+ %\gdef\paragraph@{X}%% unavailable
+
+ \gdef^^c0{\questiondown}
+ \gdef^^c1{\exclamdown}
+ \gdef^^c7{\guillemotleft}
+ \gdef^^c8{\guillemotright}
+ \gdef^^a4{\section}
+ \gdef^^a3{\pound}
+ \gdef^^a0{\dagger}
+ \gdef^^e0{\daggerdbl}
+ \gdef^^a6{\paragraph}
+ \gdef^^e4{\perthousand}
+
+ %%% If Caesar not present \Symb@@=\Symb@
+ \gdef\questiondown{\Symb@@{questiondown}}
+ \gdef\exclamdown{\Symb@@{exclamdown}}
+ \gdef\guillemotleft{\Symb@@{guillemotleft}}
+ \gdef\guillemotright{\Symb@@{guillemotright}}
+ \gdef\section{\Symb@@{section}}
+ \gdef\pound{\Symb@@{pound}}
+ \gdef\dagger{\Symb@@{dagger}}
+ \gdef\daggerdbl{\Symb@@{daggerdbl}}
+ \gdef\paragraph{\Symb@@{paragraph}}
+ \gdef\perthousand{\Symb@@{perthousand}}
+
+ \ifx\CaesarCMLoaded\relax
+ \global\let\Symb@@=\Symb@ %% of Caesar
+ \fi
+
+ \endgroup
+
+ %%%%%% LaTeX material
+
+ { \catcode`!=11 \catcode`\@=11
+ \ifx\undefined\@@line %% \@@line unique to LPlain
+ \gdef\temp{\endinput}
+ \else
+ \gdef\temp{}
+ \fi}
+ \temp %% \endinput unless LaTeX
+
+ { \catcode`!=11\catcode`\@=11
+ \ifx\@@end\undefined %% \@@end unique to LaTeX
+ \W@{}%
+ \W@{ !!! LaTeX must be fully loaded }%
+ \W@{ !!! before Active8MacCM.tex}%
+ \gdef\temp{\end}%
+ \else
+ \gdef\temp{}
+ \fi}
+ \temp
+
+ { \catcode`!=11\catcode`\@=11
+ \ifx\subsubsection\undefined %% yes before \documentstyle
+ \gdef\temp{}
+ \else
+ \W@{}%
+ \W@{ !!! Active8MacCM.tex must be input}%
+ \W@{ !!! before \noexpand\documentstyle occurs.}%
+ \gdef\temp{\end{document}}%
+ \fi}
+ \temp
+
+ %%%%%% end of LaTeX material
+
+ \endinput
+
+ %%%%%%%%%%%%%%%%%%%%%%%%%
+ %%%%%%%%%%%%%%%%%%%%%%%%%
+ %%%%%%%%%%%%%%%%%%%%%%%%%
+ Active8MacCM.doc
+
+
+ Documentation for Active8MacCM.tex
+
+ Alpha version, November 1992
+ Beta version, Mar 1994
+
+ ********************************************************
+ NOTA BENE In this documentation please read CM for CX and cm for
+cx. (The following serves also for the CK (Cork) font encoding
+--- reading CK for CX etc.)
+ ********************************************************
+
+ Although Active8MacCX.tex can be used with most TeX formats,
+it complements the accent administration package caesarcx.tex in a
+well-planned way. When the two are to be used together, be sure
+to obtain versions of Active8MacCX.tex and caesarcx.tex that are
+in step. The master postings are currently on ftp
+matups.matups.fr. Then on typing a given eight bit Macintosh
+character, you will get the best rendition of that character that
+is available in the current font.
+
+ There is alarming misbehavior of
+
+ --- \uppercase, \lowercase
+
+for characters in the range 128-255. Not only does
+\uppercase{<eacute>} give <eacute> rather than <Eacute>, but
+\uppercase{<Ugrave>} gives <Udieresis>. Good hyphenation with all
+languages served by the Cork norm more or less dictates Cork
+standard uc and lc code assignments. And the misbehavior just
+noted is consequence of using them. The one reasonable way to
+systematically eliminate the misbehavior is to use "I/O filters"
+for TeX to align the code of characters typed to the Cork code.
+But few TeX implementations have this desirable flexibility; on
+the Macintosh only Direct TeX has it.
+
+ A rather straightforeward remedy is provided by the substitute
+macros \Uppercase and \Lowercase defined here. They coincide with
+\uppercase and \lowercase on 7-bit (ascii) TeX input, but are
+designed to behave correctly on directly typed Macintosh
+characters in the range: 128-255.
+
+ \Uppercase and \Lowercase are robust in the sense that they
+are unlikely to cause their argument to blow up no matter how
+complex it may be. In particular no \edef-type expansion is used.
+Additionally they themselves can hopefully be subjected to
+\edef-type expansion. These macros work by temporarily adjusting
+many catcodes for the application of \uppercase and \lowercase.
+Hence, like, \verbtim macros, they are somewhat slow. Further in
+spite of their robustness, these macros may misbehave where
+\edef-type expansion is used indescriminately (notably in LaTeX)
+the reason is that after expansion the Cork uc and lc codes are
+more appropriate, whereas these macros insist on using Macintosh
+uc and lc codes.
+
+ A second solution and more ambitions solution is provided
+by macros
+
+ \eUppercase, \eLowercase
+
+defined already in the accent administration package caesarcx.tex;
+the performance edge is double:
+
+ (i) these macros deal correctly with \ae,\oe,\o,\ss,\i and
+capitalized versions, whereas all competeting macros leave them
+invariant.
+ (ii) inlike \Uppercase, \Lowercase often give correct results
+when applied to characters in the 128-255 range that have been
+subjected to \edef-type expansion.
+
+These macros work by expanding (via the \edef mechanism) until
+\uppercase and \lowercase produce the right effect; hence they are
+fragile. The "e" in \eUppercase should recall "expansion" or
+"\edef". No massive use uc and lc code changes is involved; these
+macros are fairly fast.
+
+ \eUppercase, \eLowercase should not be applied to any
+material that is not known to be *safe* under \edef-type
+expansion; all category 11 and 12 characters are safe; beginners
+should regard *all* other material with suspicion, notably font
+changes.
+
+ It is tempting to hide the misbehavior of \lowercase and
+\uppercase from the eye of the user by \let'ing the primitive
+commands \lowercase and \uppercase equal to \relax. But this is
+in fact dangerous, especially if macros are loaded thereafter,
+because programmers use \lowercase and \uppercase as low level
+tools for macro loading. THOU SHALT NOT GLOBALLY REDEFINE TEX
+PRIMITIVES is a commandment deserving respect.
+
+ It is tempting and often very effective to sort out all
+case change problems at a blow by redefining via
+
+ \let \uppercase\Uppercase \let \lowercase\Lowercase
+
+or
+
+ \let \uppercase\eUppercase \let \lowercase\eLowercase
+
+although (as explained above) this is antisocial. Use it privately
+so long as it gives good results, but never pass on such a
+dangerous system to an unsuspecting third party. Everything within
+a TeX group of moderate size can legitimately be considered
+private! So this efficient device has reasonable scope in
+practice. Incidentally, caesarcx.tex Active8MacCX.tex and
+preserve intact versions \primuppercase, \primlowercase for
+convenience and security.
+
+
+ ***** Occasional problems and their current remedies *****
+
+ If TeX issues mysterious complaints in response to the
+(local!) redefinition above, try to pacify it by using standard
+7-bit ascii typing there. Consider also using \ufcr
+(=\UpdateFontClassRegister) command of Caesar before the
+troublesome part, and selectively replacing the complex \uppercase
+by the simple \primuppercase. As a last resort use \noCaesar to
+locally to revert to composite characters.
+
+ -----------------------------
+
+ Some special problems occur for LaTeX. By default a command
+
+ \CaesarProtectLaTeX
+
+is in effect to avoid them. This makes Caesar use composite
+accented characters in its headings. It does so by (re)defining
+parameters \LHdShield, \RHdShield. Other remedies for other
+problems are included.
+
+ To undo this at a later point (to perfect the LaTeX
+typography) use
+
+ \CaesarDeprotectLaTeX
+
+Then LaTeX may get stuck or lose accented characters in headings
+--- especially those involving special font changes and accented
+characters. In this case try 7-bit ascii typing for the
+troublesome headings. If that does not work or is too much
+bother, revert locally to \CaesarProtectLaTeX.
+
+ Beware that \uppercase is used by LaTeX behind the user's back
+and mixed with \edef type expansions.
+
+NB. These difficulties with LaTeX are due to unnecessary use by
+LaTeX of expansion of the sort done by \edef, (and \write, \mark,
+etc.). Hopefully they will all dissappear without trace in
+version 3 of LaTeX. Present versions af LaTeX are fragile, hence
+provisional.
+
+
+ ***** Related tools *****
+
+ (A) Bernd Raichle <raichle@azu.informatik.uni-stuttgart.de>, has
+a patch for the TeX program offering improved versions of
+\uppercase, \lowercase that do not incur any problems, since they
+operate after macro expansion, at the horizontal list level. It
+is not yet available. Raichle's patch and Active8MacCX.tex both
+solve case change problems by *delaying* the case changes, but of
+course to different degrees and in different ways.
+
+ (B) I/O filters available in DirectTeX of W. Ricken let one adopt
+the easy solution that uses the Cork code only within TeX. To
+enjoy the flexibility of Caesar (use of ready-made accented
+characters if they happen to be present), input characters do have
+to be active.
+
+ (C) The same is accomplished for any TeX on the Macintosh through
+use of Cork-encoded screen fonts allied with a special Macintosh
+KCHR resource. These have been provided by N. Jungers and are
+available on ftp matups.matups.fr.
+
+
+ ***** Thanks and programmer notes *****
+
+ Comments of Daniel Taupin and Bernd Raichle in the GUT
+TeX forum October 1992 brought into focus the multiple case change
+problems stirred up by use of active characters. Taupin noticed
+that automatically capitalised headlines in the LaTeX book style
+caused difficulties for all then existing 8-bit typing systems
+which used active characters to align input to norms for output
+(see my Prague proceedings article 1992, where the case change
+problem is mentioned). This stirred me to introduce the two
+replacement pairs \Uppercase,\Lowercase and \eUppercase,
+\eLowercase for \uppercase, \lowercase. From the programmer's
+viewpoint these replacements are the net contribution of these
+macros.
+
+ The author's sincere thanks go to them.
+
+
+ ***** References *****
+
+ --- L. Siebenmann, *La mise en application d\'efinitive de
+la norme de Cork*, pages 107 to 118 in EuroTeX92, Proceedings of
+the 7th European TeX Conference, Prague, Sept 1992, Ed. J. Zlatu\v
+ska <zlatuska@cspuni12.bitnet>, ISBN 80-210-0480-0, Published in
+book form, by Czechoslovak TeX Users Group, Matematick\'y \'ustav
+UK, Sokolovsk\'a 83, CS 18600, Praha, Mailorders: 30 DM hardcover
+and 25 DM soft cover, preprint possibly also posted on ftp
+matups.matups.fr.
+
+ --- B. Jackowski and M. Ry\'cko, *Polishing \TeX*, ibid. pages
+119-134.
+
+
+
diff --git a/language/typingtex/Active8MacProse.dir/Test8LaTeXCsCM.tex b/language/typingtex/Active8MacProse.dir/Test8LaTeXCsCM.tex
new file mode 100644
index 0000000000..3814ca1485
--- /dev/null
+++ b/language/typingtex/Active8MacProse.dir/Test8LaTeXCsCM.tex
@@ -0,0 +1,117 @@
+
+ %%%%%
+ %%%%% Test8LaTeXCsCM.tex
+
+ %%% Les Problemes \uppercase de Daniel Taupin, Octobre 1992.
+ %% Test pour CaesarCM avec Active8TimesCsCM
+ %% disponibles par ftp sur matups.matups.fr
+ %% Laurent S 11-92
+ %%
+ %%% Fichier ascii avec plusieurs charact`eres
+ %% ^^xy de code hexadecimal "XY suivant la norme de Cork 1991.
+ %%
+ %% Daniel Taupin (forum GUT octobre 1992) a demande un bon
+ %% comportement de\uppercase et \lowercase
+ %% quand on saisit en 8bits.
+ %%
+ %% Ce test presente une solutions pour CaesarCM.
+ %% Il y a des solutions analogues pour EuroOzTeX.
+ %% En plus, il exist des solutions tres differentes
+ %% (voir documentation pour Active8MacTimesCM.tex).
+
+\input Active8MacCM.tex %% BEFORE \documentstyle
+
+ \documentstyle{book}
+
+ \font\tenrm=dmr10\tenrm
+ \font\tensl=dmsl10
+
+ %\CaesarProtectLaTeX %% par default
+ \CaesarDeprotectLaTeX %% pour une typographie parfaite
+
+ %% trois lignes pour supprimer un pepin dans mon LateX
+ %% --- pas necessaire pour le votre?
+ \catcode`\@=11
+ \let\reset@font\relax
+ \catcode`\@=12
+
+ \begin{document}
+
+ \ShowCaesar %% signale lettres > 127 sous CaesarCM
+ %\HideCaesar %% default
+
+ %\ufcr %% aplanit certaines difficult'es
+
+ \chapter*{Poincar\'e et Painlev^^8e}
+ %%\bf : inserrer avant Poincar\'e ?
+
+ \section{Painlev^^8e sans Poincar\'e }
+ %%\bf : inserrer?
+
+
+ \newpage\null
+ \raggedright
+ \parindent=0pt\parskip=10pt
+ \newpage\null
+ \newpage\null
+
+{\noindent \bf Hyacc-CM et \verb|\uppercase|,
+ \protect\verb|\lowercase|.}
+\addcontentsline{toc}{subsection}{HyAcc-CM}
+
+ Pour HyAcc-CM, (disponible sur ftp matups.matups.fr) les
+primitifs \verb|\uppercase|, \verb|\lowercase| se comportent
+correctement, m^^90me pour une saisie en huit bits ^^88
+caract^^8fres actifs. Il va de m^^90me pour les macros
+``fragilisantes'' de sectionnement de \LaTeX:
+\verb|\chapter{...}| et ses confr^^8fres (pages 23 et 157 du
+manuel \LaTeX).
+
+\newpage
+
+{\noindent \bf CaesarCM et \verb|\uppercase|,
+ \verb|\lowercase|.}
+\addcontentsline{toc}{subsection}{CaesarCM}
+
+ En revanche, pour CaesarCM certaines
+irregularit^^8es ont du ^^90tre
+aplanies en octobre 1992, ^^88 la suite
+d'avertissements de Daniel Taupin. Surtout, il faut
+remplacer \verb|\uppercase|, \verb|\lowercase| par
+\verb|\Uppercase|, \verb|\Lowercase|. Pour faire cela
+au mieux, une lecture de la documentation dans
+Acive8TimesCsCM.tex est vivement recommand^^8ee.
+
+ D'ailleurs, les constructions fragiles de \LaTeX\
+comme \verb|\chapter| (qui utilisent l'expansion
+``formelle'' ^^88 la \verb|\edef| peuvent se bloquer sur des
+caracteres accentu^^8es. Des dispositifs particuliers ^^88
+\LaTeX, log^^8es dor^^8enavant dans CaesarCM.tex, r^^8fglent
+provisoirement ces probl^^8fmes dans l'attente de la
+nouvelle version de \LaTeX\ qui devrait les r^^8esoudre
+d^^8efinitivement.
+
+\verb|\Uppercase{Poincar\'e}| donne POINCAR\'E (avec Eaccute)
+et \verb|\Lowercase| marche en sens inverse. Attention, ces
+deux nouvelles commandes de CaesarCM sont fragiles, car elles
+sont bas^^8es sur \verb|\edef|; donc leurs arguments
+n'ont pas le droit de contenir des macros compliqu^^8es.
+Ainsi \verb|\let\uppercase\Uppercase| serait dangereux
+car \verb|\uppercase| est utilis\'e aveugl\'ement par \LaTeX.
+
+
+\verb|\uppercase {\uppercase{Poincar\'e et Painlev^^8e}|\hfill\break
+donne: \uppercase{Poincar\'e et Painlev^^8e}.
+
+\verb|\Uppercase{Poincar\'e et Painlev^^8e}|\hfill\break
+donne: \Uppercase{Poincar\'e et Painlev^^8e}.
+
+\verb|\Lowercase{\Uppercase{P}OINCAR\'E ET \Uppercase{P}AINLEV^^83}|\hfill\break
+donne: \Lowercase{\Uppercase{P}OINCAR\'E ET \Uppercase{P}AINLEV^^83}.
+
+
+\tableofcontents
+
+ \end{document}.
+
+
diff --git a/language/typingtex/Active8MacProse.dir/Test8MacCM.tex b/language/typingtex/Active8MacProse.dir/Test8MacCM.tex
new file mode 100644
index 0000000000..d740dad8cc
--- /dev/null
+++ b/language/typingtex/Active8MacProse.dir/Test8MacCM.tex
@@ -0,0 +1,115 @@
+%%% Test8.tex
+ %% for 8-bit typing
+ \input caesarcm.tex %% if not previously loaded
+ \input gllmts.tex
+ %%%%%\input ULcase.tex
+ \input gllmts_a.sty
+ \input Active8MacCM.tex
+
+%% MAKE YOUR FONT CHOICE HERE!
+ %%% xTimes, tmr10, dmr10, cmr10
+ %%% dc not allowed as not CM compatible
+ \font\ft=dmr10
+ \ft%\ufcr
+ \catcode`\@=11
+ %\showthe\FontCls@
+
+ %\skewchar\font=\CaesarClassTM \ufcr
+ % would force font class of CaesarCM used
+
+ %\let\uppercase\relax
+ %\let\lowercase\relax
+%%% Select meaning of \my...
+ %\let\myUppercase\Uppercase %%%
+ %\let\myLowercase\Lowercase %%%
+ \let\myUppercase\eUppercase %%%
+ \let\myLowercase\eLowercase %%%
+
+ %\HideCaesar %% the default
+ %\ShowCaesar
+
+ \def\HR{\medskip\hrule\medskip}
+ %
+ %% Various hyphenation tests
+ %\hyphenation{^^9fmagn^^e9tiq^^9fuemagn^^e9tique}
+ %\showhyphens{\ft ^^9fmagn^^e9tiq^^9fuemagn^^e9tique}
+ %\showhyphens{\ft ^^a4magn^^8etiquemagn^^8etique}
+ %\showhyphens{\ft ^^a4 magn^^8etiquemagn^^8etique}
+ %\showhyphens{\ft MAGN\'ETIQUE}
+ %\showhyphens{\ft ^^a4magn^^8etique}
+
+
+The extended ascii:\medskip
+
+ ^^cb^^cc^^cd^^80^^81^^82^^83^^84^^85^^86^^87^^88^^89^^8a^^8b^^8c^^8d^^8e%^^81
+
+ \myLowercase{^^cb^^cc^^cd^^80^^81^^82^^83^^84^^85^^86^^87^^88^^89^^8a^^8b^^8c^
+^8d^^8e}
+
+ \myUppercase{^^cb^^cc^^cd^^80^^81^^82^^83^^84^^85^^86^^87^^88^^89^^8a^^8b^^8c^
+^8d^^8e}
+
+ \HR
+
+ ^^8f^^90^^91^^92^^93^^94^^95^^96^^97^^98^^99^^9a^^9b^^9c^^9d^^9e^^9f
+
+ \myLowercase{^^8f^^90^^91^^92^^93^^94^^95^^96^^97^^98^^99^^9a^^9b^^9c^^9d^^9e^
+^9f}
+
+ \myUppercase{^^8f^^90^^91^^92^^93^^94^^95^^96^^97^^98^^99^^9a^^9b^^9c^^9d^^9e^
+^9f}
+
+ \HR
+
+ ^^ce^^cf^^ae^^af^^be^^bf^^a7
+
+ \myLowercase{^^ce^^cf^^ae^^af^^be^^bf^^a7}
+
+ \myUppercase{^^ce^^cf^^ae^^af^^be^^bf^^a7}
+
+ \HR
+
+ ^^d8^^e5^^e6^^e7^^e8^^e9^^ea^^eb^^ec^^ed^^ee^^ef^^f1^^f2^^f3^^f4
+
+ \myLowercase{^^d8^^e5^^e6^^e7^^e8^^e9^^ea^^eb^^ec^^ed^^ee^^ef^^f1^^f2^^f3^^f4}
+
+ \myUppercase{^^d8^^e5^^e6^^e7^^e8^^e9^^ea^^eb^^ec^^ed^^ee^^ef^^f1^^f2^^f3^^f4}
+
+\HR
+
+ ^^d2^^d3^^d4^^d5^^a3^^a4^^c0^^c1^^c7^^c8^^a0^^e0^^e4^^a6
+
+ \myLowercase{^^d2^^d3^^d4^^d5^^a3^^a4^^c0^^c1^^c7^^c8^^a0^^e0^^e4^^a6}
+
+ \myUppercase{^^d2^^d3^^d4^^d5^^a3^^a4^^c0^^c1^^c7^^c8^^a0^^e0^^e4^^a6}
+
+\bye
+
+
+^^d2^^d3^^d4^^d5^^a3^^a4^^c0^^c1%
+^^c7^^c8%
+^^a0^^e0%
+^^e4
+^^a6
+
+ \myLowercase{%
+^^d2^^d3^^d4^^d5^^a3^^a4^^c0^^c1%
+^^c7^^c8%
+^^a0^^e0%
+^^e4
+^^a6}
+
+ \myUppercase{%
+^^d2^^d3^^d4^^d5^^a3^^a4^^c0^^c1%
+^^c7^^c8%
+^^a0^^e0%
+^^e4
+^^a6}
+ %\section@^^a4
+\end
+
+^^a7\myLowercase{^^a7}
+\myUppercase{^^a7}
+\myUppercase{\myLowercase{^^a7}}
+\myLowercase{\myUppercase{^^a7}}
+\end
diff --git a/language/typingtex/Active8MacProse.dir/Textures16xMacEncoding.dir/fr8hyph.mac b/language/typingtex/Active8MacProse.dir/Textures16xMacEncoding.dir/fr8hyph.mac
new file mode 100644
index 0000000000..9fd531387c
--- /dev/null
+++ b/language/typingtex/Active8MacProse.dir/Textures16xMacEncoding.dir/fr8hyph.mac
@@ -0,0 +1,162 @@
+
+ %%% fr8hyph.mac
+ %%
+ %% Laurent Siebenmann, December 1993
+ %% Master posting 1993-4:
+ %% ftp matups.matups.fr, directory TeX/TypingTeX.dir
+ %% This file is 7bit ascii.
+ %% This file is NOT autonomous, since it uses the
+ %% coding-independant hyphenation file
+ %% fr8hyph.src as source of the patterns.
+ %%
+ %% Sets up the universal 8bit French hyphenation patterns
+ %% of fr8hyph.src for use with (output) font systems
+ %% using the Mac font encoding in the range 128-255
+ %% and the CM encoding in the range 0-127.
+ %% The only examples available in 1993 are the Textures
+ %% Adobe font series of Textures version 1.6x.
+ %% Characters of Mac the 128-255 range that appear in the
+ %% CM 0-127 range are omitted.
+
+ %% HEALTH WARNING: This encoding is a curious new mixture.
+ %% There are alternatives offering
+ %% more fonts and more support, notably
+ %% the Cork-extended CM encoding (Cork encoding rather
+ %% than Mac in the range 128-255). And the full
+ %% Cork encoding. See "format-dumper" in versions -CM and -CK
+ %% The main advantage of this encoding over the alternatives
+ %% is its inclusion of various glyphs such as
+ %% daggerdbl paragraph cent Yen ...
+
+ %% SIMPLEST USE (with Plain TeX). Put copies of plain.tex,
+ %% fr8hyph.mac and fr8hyph.src together in a Mac
+ %% directory. Rename fr8hyph.mac as hyphen.tex.
+ %% Compile plain.tex using the Textures virtex (initex)
+ %% and, when asked, type the command \dump. Save the
+ %% resulting format file in the directory "TeX formats".
+ %% If you quit and restart Textures (or use the "add format"
+ %% command) the new format will be available.
+ %% Under this format, the default hyphenation system will
+ %% be French and you can directly type eight-bit characters
+ %% (without inputing the file option.keys) --- provided you use
+ %% only the fonts of the Adobe series of Textures >=1.62.
+
+ %% The grouping around the the body of the file
+ %% to follow assures that the net change induced
+ %% is to the hyphenation trie only.
+ %% (Neglecting a dozen or so abandoned hash table entries.)
+
+ \begingroup
+
+ \catcode`\<=0
+ \catcode`\>=12
+ \lccode`\'=`\' %
+ \def\set#1>#2{\edef\temp{\def\noexpand#1>{\string #2}
+ \catcode`#2=12\lccode`#2=`#2}\temp}
+
+
+ %%% Table setting up the Mac
+ %% encoding for French patterns
+
+ %% <ag> for <a-grave>
+ \set<ag>^^88 %%^^e0 comment gives Cork encoding
+ %% <eg> is <e-grave>
+ \set<eg>^^8f %%^^e8
+
+ %% <ea> is <e-acute>
+ \set<ea>^^8e %%^^e9
+
+ %% <ax> is <a-circumflex>
+ \set<ax>^^89 %%^^e2
+ %% <ex> is <e-circumflex>
+ \set<ex>^^90 %%^^ea
+ %% <ix> is <i-circumflex>
+ \set<ix>^^94 %%^^ee
+ %% <ox> is <o-circumflex>
+ \set<ox>^^99 %%^^f4
+ %% <ux> is <u-circumflex>
+ \set<ux>^^9e %%^^fb
+
+ %% <id> is <i-dieresis>
+ \set<id>^^95 %%^^ef
+ %% <od> is <o-dieresis>
+ \set<od>^^9a %%^^f6
+
+ %% <cc> is <u-cedilla>
+ \set<cc>^^8d %%^^e7
+
+ %% <oe> is <oe-ligature>
+ \set<oe>^^1b %%^^f7 NB. ^^1b is CM encoding
+
+%%% end of table
+
+
+
+ \input fr8hyph.src
+
+ \endgroup
+
+
+\def\.#1#2.{\edef\temp{%
+ \global\lccode`#1=`#2 \global\uccode`#1=`#1
+ \global\lccode`#2=`#2 \global\uccode`#2=`#1}
+ \temp}
+
+
+ %% Now the Mac uc and lc codes
+\.^^e7^^87.
+\.^^83^^8e.
+\.^^ea^^92.
+\.^^ee^^97.
+\.^^f2^^9c.
+\.^^cb^^88.
+\.^^e9^^8f.
+\.^^ed^^93.
+\.^^f1^^98.
+\.^^f4^^9d.
+\.^^e5^^89.
+\.^^e6^^90.
+\.^^eb^^94.
+\.^^ef^^99.
+\.^^f3^^9e.
+\.^^80^^8a.
+\.^^e8^^91.
+\.^^ec^^95.
+\.^^85^^9a.
+\.^^86^^9f.
+\.^^d9^^d8.
+\.^^cc^^8b.
+\.^^84^^96.
+\.^^cd^^9b.
+\.^^81^^8c.
+\.^^82^^8d.
+\.^^ce^^cf.
+\.^^1d^^1a.%%\AE\ae
+\.^^1e^^1b.%%\OE\oe
+\.^^1f^^1c.%%\O\o
+
+ %\endinput %% comment out to enable test
+
+%%% Test for Textures 1.62
+
+ \font\ft=Times
+ \ft
+
+ \showhyphens{\ft hŽberluŽ h\'eberlu\'e}
+
+\long\def\tst{\vskip5pt Test of French lc and uc pairs:
+\par
+ ˈ å‰ €Š ƒŽ é æ è‘
+ ë” ì• ï™ …š óž †Ÿ ‚\par
+ \OE\oe \AE\ae \O\o\ (These last refuse case change.)
+ \vskip5pt
+ }
+
+ \let\e\expandafter
+
+ \tst
+ \e\uppercase\e{\tst}
+ \e\lowercase\e{\tst }
+
+\end
+
diff --git a/language/typingtex/Active8MacProse.dir/Textures16xMacEncoding.dir/fr8hyph.src b/language/typingtex/Active8MacProse.dir/Textures16xMacEncoding.dir/fr8hyph.src
new file mode 100644
index 0000000000..bbbc25306f
--- /dev/null
+++ b/language/typingtex/Active8MacProse.dir/Textures16xMacEncoding.dir/fr8hyph.src
@@ -0,0 +1,1114 @@
+
+% fr8hyph.src
+% version june 2nd, 1992. (Daniel Flipo)
+% Coding-independant version LS 6-92
+% NOT TO BE INPUT DIRECTLY
+% SEE fr8hyph.ck or fr8hyph.mac for use.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% This is *NOT* an official GUTenberg distribution %%
+%% but my personal updated version of the 8bits %%
+%% french hyphenation patterns. (Daniel Flipo) %%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Hyphenation patterns for French
+% from Jacques D'esarm'enien: how to run TeX in a French environment:
+% hyphenation, fonts, typography. Tugboat, 5 (1984) 91-102.
+% Modifications by Michael Ferguson (Tugboat, 10, 1989) (mjf),
+% Norman Buckle (nb) and Justin Bur (jbb).
+% Following modifications by Daniel Flipo (df):
+% March 20, 92: addition of some missing uppercase codes
+% June 1, 92 : add missing JD patterns (see TSI vol 5 No 4 1986)
+% and check consistency with FRHYPH.TEX for MLTeX (Gould, Rennes)
+% Patterns present in FRHYPH.TEX and not in original JD file are
+% marked as `JD+'.
+ %
+ % Coding independant version LS 6-92
+ % as requested by Michael Ferguson in his presentation
+ % of the Cork norm Tugboat 11 (Nov. 1990) pages 514--6.
+ % <ag> is <a-grave>
+ % <ax> is <a-circumflex>
+ % <eg> is <e-grave>
+ % <ea> is <e-acute>
+ % <ex> is <e-circumflex>
+ % <ix> is <i-circumflex>
+ % <id> is <i-dieresis>
+ % <ox> is <o-circumflex>
+ % <od> is <o-dieresis>
+ % <ux> is <u-circumflex>
+ % <cc> is <u-cedilla>
+ % <oe> is <oe-ligature>
+ % for example by
+ %
+ %% Here are the substitutions that were used
+ %% to derive this table from Flipo's Cork norm table
+ % Change "^^e0" to "<ag>" "a"
+ % Change "^^e8" to "<eg>" "a"
+ %
+ % Change "^^e9" to "<ea>" "a"
+ %
+ % Change "^^e2" to "<ax>" "a"
+ % Change "^^ea" to "<ex>" "a"
+ % Change "^^ee" to "<ix>" "a"
+ % Change "^^f4" to "<ox>" "a"
+ % Change "^^fb" to "<ux>" "a"
+ %
+ % Change "^^ef" to "<id>" "a"
+ % Change "^^f6" to "<od>" "a"
+ %
+ % Change "^^e7" to "<cc>" "a"
+ %
+ % Change "^^f7" to "<oe>" "a"
+ %
+
+ \message{fr8hyph.tex french hyphenation patterns
+ of jun 2nd, 1992}
+
+
+\patterns{
+%front mjf patterns deleted and replaced by orininal JD patterns,
+%see at the end of phonetic patterns (df jun92).
+% Phonetic patterns
+1ba
+1b<ax>
+1be
+1b<ea>
+1b<eg>
+1b<ex>
+1bi
+1b<ix> % mjf jun88
+1bo
+1b<ox>
+1bu
+1b<ux>
+1by
+4be. % JD+ (df jun92)
+4bes.
+1b2l
+4ble.
+4bles.
+1b2r
+4bre.
+4bres.
+1ca
+1<cc>a % df jun92 (c-cedilla)
+1c<ax>
+1ce
+1c<ea>
+1c<eg>
+1c<ex>
+1ci
+1c<ix> % mjf jun88
+1co
+1<cc>o % df jun92 (c-cedilla)
+1c<ox> % df jun92
+%1ct % df jan92
+1cu
+1<cc>u % df jun92 (c-cedilla)
+1c<ux>
+1cy
+1c<oe> % mjf jun88
+4ce. % JD+ (df jun92)
+4ces.
+1c2h
+4che.
+4ches.
+2chb
+2chg
+2chm
+2chn
+2chp
+2chs
+2cht
+2chw % (instead of 2chv) df jun92
+.ch4
+4ch. % JD+ (df jun92)
+ch2l
+4chle.
+4chles.
+ch2r
+4chre.
+4chres.
+% ck patterns missing (df jun92)
+1c2k % JD+
+4cke. % JD+
+4ckes. % JD+
+4ck. % JD+
+2ckb % JD+
+2ckf % JD+
+2ckg % JD+
+2ck3h % JD+ c2k3h in JD's file
+2ckp % JD+
+2cks % JD+
+2ckt % JD+
+1c2l
+4cle.
+4cles.
+1c2r
+4cre.
+4cres.
+1<cc>
+1da
+1d<ax>
+1de
+1d<ea>
+1d<eg>
+1d<ex>
+1di
+1d<ix> % mjf jun88
+1do
+1d<ox>
+1du
+1d<ux>
+1dy
+4de. % JD+ (df jun92)
+4des.
+d1d2h
+1d2r
+4dre.
+4dres.
+1fa
+1f<ax>
+1fe
+1f<ea>
+1f<eg>
+1f<ex>
+1fi
+1f<ix> % mjf jun88
+1fo
+1f<ox>
+1fu
+1f<ux>
+1fy
+4fe. % JD+ (df jun92)
+4fes.
+1f2l
+4fle.
+4fles.
+1f2r
+4fre.
+4fres.
+1ga
+1g<ax>
+1ge
+1g<ea>
+1g<eg>
+1g<ex>
+1gi
+1g<ix> % mjf jun88
+1go
+1g<ox>
+1gu
+1g<ux>
+1gy
+4ge. % JD+ (df jun92)
+4ges.
+4gue.
+4gues.
+1g2ha
+1g2he
+1g2hi
+1g2ho
+1g2hy
+1g2l
+4gle.
+4gles.
+1g2n
+.sta2g3n % df jun92
+wa2g3n % df jun92
+4gne.
+4gnes.
+1g2r
+4gre.
+4gres.
+1ha
+1h<ax>
+1he
+1h<ea>
+1h<eg>
+1h<ex>
+1hi
+1h<ix> % mjf jun88
+1ho
+1h<ox>
+1hu
+1h<ux>
+1hy
+4he. % JD+ (df jun92)
+4hes.
+1j
+2jk
+4je. % JD+ (df jun92)
+4jes.
+1ka
+1k<ax>
+1ke
+1k<ea>
+1k<eg>
+1k<ex>
+1ki
+1k<ix> % mjf jun88
+1ko
+1k<ox>
+1ku
+1k<ux>
+1ky
+4ke. % JD+ (df jun92)
+4kes.
+1k2h
+%c2k3h % (df jun92) replaced by 2ck3h as on Gould
+4kh. % JD+ (df jun92)
+.kh4
+1k2r
+1la
+1l<ax>
+1l<ag> % (instead of 1l<O">) df jun92
+1le
+.seu2le % jbb (df jun92)
+1l<ea>
+1l<eg>
+1l<ex>
+1li
+1l<ix> % mjf jun88
+1lo
+1l<ox>
+1lu
+1l<ux>
+1ly
+4le. % JD+ (df jun92)
+4les.
+% following patterns missing (df jun92)
+il2l
+l3lion
+cil3l
+ucil4l
+rcil4l
+vacil4l
+gil3l
+hil3l
+lil3l
+mil3l
+<ea>mil4l
+rmil4l
+armil5l
+mil4let
+semil4l
+vanil3lin
+vanil3lis
+capil3l
+papil3la
+papil3le
+papil3li
+papil3lom
+pupil3l
+cyril3l
+ibril3l
+piril3l
+thril3l
+pusil3l
+boutil3l
+distil3l
+fritil3l
+instil3l
+.stil3l
+vil3l
+avil4l
+uvil4l
+uevil4l
+chevil4l
+xil3l
+% end of missing
+1ma
+1m<ax>
+1me
+1m<ea>
+1m<eg>
+1m<ex>
+1mi
+1m<ix> % mjf jun88
+1mo
+1m<ox>
+1mu
+1m<ux>
+1my
+1m<oe> % mjf jun88
+4me. % JD+ (df jun92)
+4mes.
+1na
+1n<ax>
+1ne
+1n<ea>
+1n<eg>
+1n<ex>
+1ni
+1n<ix> % mjf jun88
+1no
+1n<ox>
+1nu
+1n<ux>
+1ny
+n1x % JD+ (df jun92)
+1n<oe> % mjf jun88 % JD+ (df jun92)
+4ne. % JD+ (df jun92)
+4nes.
+1pa
+1p<ax>
+1pe
+1p<ea>
+1p<eg>
+1p<ex>
+1pi
+1p<ix> % mjf jun88
+1po
+1p<ox>
+1pu
+1p<ux>
+1py
+4pe. % JD+ (df jun92)
+4pes.
+4ph. % JD+ (df jun92)
+1p2h
+4phe.
+4phes.
+ph2l % JD+ (df jun92)
+4phle. % JD+ (df jun92)
+4phles. % JD+ (df jun92)
+2phn
+ph2r
+4phre.
+4phres.
+2phs
+2pht
+.ph4
+1p2l
+4ple.
+4ples.
+1p2r
+4pre.
+4pres.
+1q
+4que.
+4ques.
+1ra
+1r<ax>
+1re
+1r<ea>
+1r<eg>
+1r<ex>
+1ri
+1r<ix> % mjf jun88
+1ro
+1r<ox>
+1ru
+1r<ux>
+1ry
+4re. % JD+ (df jun92)
+4res.
+1r2h
+4rhe.
+4rhes.
+1sa
+1s<ax>
+1se
+1s<ea>
+1s<eg>
+1s<ex>
+1si
+1s<ix> % mjf jun88
+1so
+1s<ox>
+1su
+1s<ux>
+1sy
+1s<oe> % mjf jun88
+4se. % JD+ (df jun92)
+4ses.
+1s2ch
+4sch.
+2schs
+4sche.
+4sches.
+.sch4
+.sh4
+4sh. % JD+ (df jun92)
+1s2h
+2shm
+2shr
+2shs
+4she.
+4shes.
+1ta
+1t<ax>
+1t<ag> % (instead of 1tO") df jun92
+1te
+1t<ea>
+1t<eg>
+1t<ex>
+1ti
+1t<ix> % mjf jun88
+1to
+1t<ox>
+1tu
+1t<ux>
+1ty
+4te. % JD+ (df jun92)
+4tes.
+1t2h
+4th.
+.th4
+4the.
+4thes.
+th2l % (2thl in JD'original file) (df june92)
+2thm
+2thn
+th2r
+4thre. % JD+ (df jun92)
+4thres. % JD+ (df jun92)
+2ths
+1t2r
+4tre.
+4tres.
+1va
+1v<ax>
+1ve
+1v<ea>
+1v<eg>
+1v<ex>
+1vi
+1v<ix> % mjf jun88
+1vo
+1v<ox>
+1vu
+1v<ux>
+1vy
+4ve. % JD+ (df jun92)
+4ves.
+1v2r
+4vre.
+4vres.
+1wa
+1we
+1wi
+1wo
+1wu
+4we. % JD+ (df jun92)
+4wes.
+1w2r
+1za
+1ze
+1z<ea>
+1z<eg>
+1zi
+1zo
+1zu
+1zy
+4ze. % JD+ (df jun92)
+4zes.
+% following patterns missing (df jun92)
+'a4
+'<ax>4
+'e4
+'<ea>4
+'<eg>4
+'<ex>4
+'i4
+'<ix>4
+'o4
+'<ox>4
+%'\"o2 % mjf what for??? df jun92
+'u4
+'<ux>4
+'y4
+2'2
+id'
+% end of missing patterns
+% Note: in FRHYPH following patterns are added, why? (\lefthyphenmin=2)
+% .a4 .<ax>4 .e4 .<ea>4 .<eg>4 .<ex>4 .i4 .<ix>4 .o4 .<ox>4 .u4 .<ux>4 .y4
+d1s2
+f1s2
+g1s2
+tung2s3 % JD+ (df jun92)
+l1s2t
+m1s2
+e2s3ch
+i2s3ch<ea>
+i2s3chia
+i2s3chio
+% Etymological patterns
+1alcool
+i1algi
+a2l1algi % JD+ (df jun92)
+y1algi % JD+ (df jun92)
+1a2nesth<ea>si
+i1arthr
+y1asth % JD+ (df jun92)
+a1<eg>2dre
+i1<eg>2dre
+o1<eg>2dre % JD+ (df jun92)
+1<ea>2drie % JD+ (df jun92)
+1<ea>2drique
+1<ea>2lectr
+1<ea>2l<ea>ment
+1<ea>2nerg
+o1d2l % JD+ (df jun92)
+2t3heur
+2r3heur
+3d2hal % JD+ (df jun92)
+3d2houd
+2s3hom
+2r3hydr
+1informat % df jun92
+o1ioni
+1m2n<eg>s % JD+ (df jun92)
+1m2n<ea>si
+1m2n<ea>mo
+mon2t3r<ea>al % df jun92
+1octet % df jun92
+i1oxy
+io1a2ct % JD+ (df jun92)
+3ph2tal<ea>
+3ph2tis
+1p2neu
+1p2n<ea>
+1p2sych
+1p2t<eg>r
+1p2t<ea>r
+1s2caph
+1s2cl<ea>r
+1s2cop
+e2s3cop
+<ea>pi2s3cop
+<ea>pi3s4cope
+di2s3co % instead of di2s3cop (dis-convenance, dis-courir...) (df jun92)
+1s2lav
+1s2lov
+1s2patia
+1s2perm
+1s2por
+1s2ph<eg>r
+1s2ph<ea>r
+1s2piel
+1s2piros
+1s2tandard
+o1s2tas
+eu1s2tat % JD+ (df jun92)
+o1s2tat
+pro2s3tat
+i1s2tat
+1s2tein
+o1s2t<ea>ro
+1s2tigm
+o1s2tim
+1s2tock
+1s2tomos
+o1s2tom
+y1s2tom % JD+ (df jun92)
+o1s2trad
+o1s2tratu
+o1s2triction
+1s2troph
+a2s3tro
+apo2s3tr
+u2s3tr
+1s2tructu
+1s2tyle
+t1t2l % JD+ (df jun92)
+.ab3r<ea>a % JD+ (df jun92)
+.ae3s4ch % JD+ (df jun92)
+.amino1a2c % JD+ (df jun92)
+.ana3s4tr % JD+ (df jun92)
+.anti1a2
+.anti1e2
+.anti2enne
+.anti1<ea>2
+.anti1s2
+.apo2s3ta % JD+ (df jun92)
+.as2ta % JD+ (df jun92)
+% following patterns missing (df jun92)
+'ab3r<ea>a
+'ae3s4ch
+'amino1a2c
+'ana3s4tr
+'anti1a2
+'anti1e2
+'anti2enne
+'anti1<ea>2
+'anti1s2
+'apo2s3ta
+'as2ta
+% end of missing patterns
+.bi1a2c
+.bi1au
+.bio1a2
+.bi1u2
+.bi2s1a2
+chlo2r3a2c % JD+ (df jun92)
+chlo2r3<ea>2t % JD+ (df jun92)
+.ci2s1alp
+co1acc
+co1acq
+co1a2d
+co1ap
+co1ar
+co1assoc
+co1assur
+co1au
+co1ax
+co1ef % JD+ (df jun92)
+co1en
+co1ex
+co1<ea>2
+.con4 % df mar92
+.cons4 % df mar92
+.contre1s2c % JD+ (df jun92)
+co2nurb % (instead of co2n1urb) df jun92
+.co1o2 % (instead of colo2) df mai92
+.co2o3lie
+.cul4 % df jan92
+.dacryo1a2 % JD+ (df jun92)
+.d<ea>1a2
+.d<ea>1io
+.d<ea>1o2
+% Following patterns are not original JD's, who changed them? why?
+.d<ea>2s1a2
+.d<ea>3s2a3cr
+.d<ea>3s2astr
+.d<ea>3s2a3tell
+.d<ea>2s1<ea>2
+.d<ea>3s2<ea>3gr
+.d<ea>2s1e2
+.d<ea>3s2ensib
+.d<ea>3s2ert
+.d<ea>3s2exu
+.d<ea>2s3h
+.d<ea>2s1i2
+.d<ea>3s2i3d
+.d<ea>3s2i3gn
+.d<ea>3s2i3li
+.d<ea>3s2i3nen% instead of .d<ea>3s2i3non (df jun92)
+.d<ea>3s2invo
+.d<ea>3s2i3r
+.d<ea>3s2ist
+.d<ea>2s1o2
+.d<ea>3s2o3d<ea>
+.d<ea>3s2o3l
+.d<ea>3s2o3pil
+.d<ea>3s2orm
+.d<ea>3s2orp
+.d<ea>3s2oufr
+.d<ea>2s1<oe> % mjf jun88
+.d<ea>1s2c
+.d<ea>1s2p
+.d<ea>1s2t
+.d<ea>2s1u2n
+% end of modifications
+.di1a2c<ea>
+.di1a2cid
+dia2g3n
+.di1ald
+.di1a2mi
+.di1a2tom % .di1a2tomi in JD's file df jun92
+.di1e2n
+.di2s3h
+.dy2s1a2
+.dy2s1i2
+.dy2s1o2 % df jun92
+.dy2s1u2
+.dy2s3
+.en1a2
+'en1a2 % df jun92
+en1i2vr
+.en1o2
+'en1o2 % df jun92
+.eu2r1a2
+'eu2r1a2 % df jun92
+extra1
+extra2c % JD+ (df jun92)
+extra2i % JD+ (df jun92)
+h<ea>mi1<ea>
+h<ea>mo1p2t
+hypera2
+hyper<ea>2
+hypere2 % df june 92
+hyper<oe>2 % JD+ (df jun92)
+hyperi2
+hypero2
+hypers2
+hyperu2
+hype4r1
+hypo1a2
+hypo1<ea>2
+hypo1e2 % df jun92
+hypo1i2
+hypo1o2
+hypo1u2
+hypo1s2
+.in1a2
+.in2a3nit
+.in2augur
+.in1<ea>2
+.in2<ea>3lucta % e -> <ea> df jun92
+.in2<ea>3narra
+.in1e2
+.in2effab % df jun92
+.in2ept
+.in2er
+.in2exora % df jun92
+.in1i2
+.in2i3miti
+.in2i3q
+.in2i3t
+.in1o2
+.in2o3cul
+.in2ond
+.in1s2tab
+.in1u2
+.in2uit
+.in2u3l
+% same patterns with ' missing (df jun92)
+'in1a2
+'in2a3nit
+'in2augur
+'in1<ea>2
+'in2<ea>3lucta
+'in2<ea>3narra
+'in1e2
+'in2effab
+'in2ept
+'in2er
+'in2exora
+'in1i2
+'in2i3miti
+'in2i3q
+'in2i3t
+'in1o2
+'in2o3cul
+'in2ond
+'in1s2tab
+'in1u2
+'in2uit
+'in2u3l
+.intera2
+.inter<ea>2
+.intere2
+.interi2
+.intero2
+.interu2
+.inters2
+.inte4r3
+% same patterns with ' missing (df jun92)
+'intera2
+'inter<ea>2
+'intere2
+'interi2
+'intero2
+'interu2
+'inters2
+'inte4r3
+la2w3re % df jun92
+.ma2c3k % JD+ (df jun92)
+.macro1s2c % JD+ (df jun92)
+.ma2l1a2dres
+.ma2l1a2dro
+.ma2l1ais<ea>
+.ma2l1ap
+.ma2l1a2v
+.ma2l1en
+.ma2l1int
+.ma2l1oc
+.ma2l1o2d
+.ma2r1x % JD+ (df jun92)
+.m<ea>2g1oh
+.m<ea>2sa % df jun92
+.m<ea>3san % df jun92
+.m<ea>2s1es % .m<ea>2ses in JD's file (df jun92)
+.m<ea>2s1i % .m<ea>2si in JD's file (df jun92)
+.m<ea>2s1u2s % .m<ea>2sus in JD's file (df jun92)
+.m<ea>ta1s2ta
+.milli1am % JD+ (df jun92)
+.mono1a2
+.mono1<ea>2
+.mono1e2
+.mono1i2
+.mono1<id>2d<ea> % JD+ (df jun92)
+.mono1o2 % momo -> mono df jun92
+.mono1u2
+.mono1s2
+.no2n1obs
+n3s2at. % JD+ (df jun92)
+n3s2ats. % JD+ (df jun92)
+o2b3long % JD+ (df jun92)
+ombud2s3 % JD+ (df jun92)
+omni1s2
+.oua1ou % JD+ (df jun92)
+'oua1ou % df jun92
+.ovi1s2c % JD+ (df jun92)
+'ovi1s2c % df jun92
+oxy1a2
+pal<ea>o1<ea>2
+.pa2n1a2f
+.pa2n1a2m<ea>
+.pa2n1a2ra
+.pa2n1is
+.pa2n1o2ph
+.pa2n1opt
+.para1s2
+.pa2r1a2che
+.pa2r1a2ch<eg>
+.pa2r3h<ea>
+.per1a2
+.per1<ea>2
+.per1e2
+.per1i2
+.per1o2
+.per1u2
+per3h
+.pe4r
+p<ea>2n1ul
+p<ea>2r1<ea>2q % JD+ (df jun92)
+.p<ea>ri1os
+.p<ea>ri1s2
+.p<ea>ri2s3s
+.p<ea>ri2s3ta
+.p<ea>ri1u2
+.phalan3s2t % JD+ (df jun92)
+photo1s2
+.phyto3ph2 % JD+ (df jun92)
+.pluri1a % JD+ (df jun92)
+poly1a2
+poly1<ea>2
+poly1<eg>2
+poly1e2
+poly1i2
+poly1o2
+poly1u2
+poly1s2
+.pos2t3h % instead of .pos2t3hy (df jun92)
+.pos2t1in % JD+ (df jun92)
+.pos2t1o2
+.pos2t3r
+.post1s2
+.pr<ea>1a2
+.pr<ea>2a3la % df jun92
+.pr<ea>2au
+.pr<ea>1<ea>2
+.pr<ea>1e2
+.pr<ea>1i2
+.pr<ea>1o2
+.pr<ea>1u2
+.pr<ea>1s2
+.pro1<ea>2
+.prou3d2h % JD+ (df jun92)
+.pro1s2c<ea>
+.psycho1a2n % JD+ (df jun92)
+.pud1d2l % JD+ (df jun92)
+radio1a2 % df jun92
+.re1s2
+.re2s3cap
+.re2s3cisi % df jun92
+.re2s3ciso % df jun92
+.re2s3cou
+.re2s3cri
+.re2s3pect
+.re2s3pir
+.re2s3plend
+.re2s3pons
+.re2s3quil
+.re2s3s
+.re2s3t
+.re3s4tab
+.re3s4tag
+.re3s4tand
+.re3s4tat
+.re3s4t<ea>n
+.re3s4t<ea>r
+.re3s4tim
+.re3s4tip
+.re3s4toc
+.re3s4top
+.re3s4tr
+.re4s5trein
+.re4s5trict
+.re4s5trin
+.re3s4tu
+.re3s4ty
+.r<ea>1a2
+.r<ea>2a3le
+.r<ea>2a3lis
+.r<ea>2a3lit
+.r<ea>2aux
+.r<ea>1<ea>2
+.r<ea>1e2
+.r<ea>2el
+.r<ea>2er % JD+ (df jun92)
+.r<ea>2<eg>r
+.r<ea>1i2
+.r<ea>2i3fi
+.r<ea>1o2
+.r<ea>1u2
+.r<ea>2uss
+.r<ea>tro1a2
+sesqui1a2
+st<ea>r<ea>o1s2
+.su2b1a2
+.su3b2alt
+.su2b1<ea>2
+.su3b2<ea>3r
+.su2b1in % JD+ (df jun92)
+.su2b3limin
+.su2b3lin
+.su2b3lu
+sub1s2
+.su2b1ur
+supero2
+supers2
+supe4r1
+.su2r1a2
+su3r2ah
+.su3r2a3t
+.su2r1e2
+.su3r2eau
+.su3r2ell % instead of .su3r2e1l (df jun92)
+.su3r2et
+.su2r1<ea>2
+.su2r3h
+.su2r1i2m
+.su2r1inf
+.su2r1int
+.su2r1of
+.su2r1ox
+tachy1a2 % JD+ (df jun92)
+tchin3t2 % JD+ (df jun92)
+t<ea>l<ea>1e2
+t<ea>l<ea>1i2
+t<ea>l<ea>1o2b
+t<ea>l<ea>1o2p
+t<ea>l<ea>1s2
+thermo1s2
+tran2s1a2
+tran3s2act % should be tran2s3act ? (trans-action)
+tran3s2ats
+tran2s3h
+tran2s1o2
+tran2s3p
+tran2s1u2
+.tri1a2c
+.tri1a2n
+.tri1a2t
+.tri1o2n % JD+ (df jun92)
+archi1<ea>2pis
+moye2n1<ax>2g
+po1astre
+uni1o2v % JD+ (df jun92)
+uni1a2x % JD+ (df jun92)
+v<ea>lo1s2ki
+vol2t1amp
+% last patterns put back in alphabetical order (df jun92)
+}
+
+\endinput
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+Chers coll\`egues,
+
+ J'ai compar\'e les 3 fichiers suivants :
+ - FRHYPHEN pour MLTeX du Gould de Rennes, (GR)
+ - La liste de motifs de J. D\'esarm\'enien parue dans TSI, (JD)
+ - le fichier FR8HYPHEN de Yannis, (YH)
+et je voudrais vous faire part des diff\'erences que j'ai observ\'ees et
+des questions que je me pose.
+
+ D'apr\`es Bernard, la r\'ef\'erence \`a prendre est le Gould, je comparerai
+donc les 2 autres \`a cette r\'ef\'erence.
+
+ 1) Le motif `th2l' figure \`a Rennes contre `2thl' chez JD, lequel est le
+bon ? Pour ma part je ne sais pas comment il faut couper athl\'etisme,
+triathlon ou biathl\`ete. Avec le motif `th2l' (Rennes) j'obtiens :
+pen-ta-thlon mais tri-athlon, est-ce correct ?
+
+ 2) M\^eme probl\`eme avec `2ck3h' \`a Rennes contre `c2k3h' chez JD...
+
+ 3) Que vient faire le motif '\"o2 ajout\'e par mjf (ligne 471 du fichier GR) ?
+Existe-t-il des mots fran\c cais commen\c cant par `o-tr\'ema' ? Ce motif est
+absent des 2 autres fichiers.
+
+ 4) Quelle est l'utilit\'e des motifs (lignes 448--460)
+.a4 .\^a4 .e4 .\^e4 .\'e4 .\`e4 .i4 .\^\i4 .o4 .\^o4 .u4 .\^u4 .y4 ?
+En fran\c cais \lefthyphenmin=2, il me semble donc inutile d'interdire
+les c\'esures ci-dessus, en revanche les m\^emes motifs avec apostrophe
+s'imposent ('a4 '\^a4 ... 'y4).
+
+ 5) Dans le m\^eme ordre d'id\'ee, `on' a rajout\'e \`a Rennes un tas de motifs
+de 2 lettres en fin de mot qui ne figuraient pas chez JD :
+4be. 4ce. 4ch. 4ck. 4de. 4fe. 4ge. 4he. etc.
+Ils ne servent \`a rien tant qu'on impose \righthyphenmin=3.
+Faut-il les maintenir quand m\^eme ?
+
+ 6) Les motifs suivants pr\'esents chez JD sont absents \`a Rennes :
+ - .re2s3cisi
+ - .re2s3ciso
+(ils sont pr\'ec\'ed\'es d'un %) ne faut-il pas les remettre ?
+
+ 7) Les motifs de JD concernant les d\'ebuts de mots en .d\'es (lignes 617--647)
+ont \'et\'e assez profond\'ement retouch\'es sur la version de Rennes.
+Est-ce par Norman Buckle ? Ces modifications ont-elles \'et\'e test\'ees ?
+
+Une chose me trouble : JD affirme dans TSI que ses motifs donnent
+d\'esami-don-ner, or dans cet exemple s'appliquent les motifs `.d\'e2s'
+et `1mi', je ne vois pas pourquoi la coupure entre le `a' et le `m'
+serait emp\^ech\'ee... En revanche on a sur le Gould le motif `.d\'e2s1a2'
+qui emp\^eche la coupure entre le `a' et le `m' mais pourquoi avoir mis
+un `1' entre le `s' et le `a' alors qu'on ne veut s\^urement pas d\'es-ami ?
+
+Autre question : le Larousse des difficult\'es de la langue fran\c caise donne
+pour bonne la division `d\'esa-bu-ser', pourquoi alors faut-il refuser
+`d\'esa-mi-don-ner' ?
+
+ 8) Pb de dis-convenance, dis-continuit\'e, dis-cours (cf. question de Bernard) :
+je propose de changer `di2s3cop' (ligne 532) en `di2s3co', je ne connais
+'ailleurs pas de mot en 'discop'. J'ai test\'e, \c ca marche \`a mon avis : j'obtiens
+dis-con-ve-nance dis-con-ti-nuit\'e dis-co-bole dis-co-gra-phie
+dis-con-ve-nir dis-co-phile dis-cor-dant dis-cou-rir dis-cour-tois.
+Y a-t-il des objections ?
+
+ 9) Ne faudrait-il pas ajouter des motifs pour le c-cedille ?
+Je propose : `1\c ca' `1\c co' `1\c cu' si \c ca passe en MLTeX (?),
+et en version 8-bits (fontes EC) : `1<cc>a' `1<cc>o' `1<cc>u'
+(ex. : commen\c cant commer\c cant fa\c con ma\c connerie ger\c cure).
+
+ 10) En essayant les mots dont la division est donn\'ee dans le Lexique
+des r\`egles typographiques ou le Larousse des difficult\'es,
+j'ai obtenu trois coupures apparemment incorrectes :
+
+ ** tran-sac-tion au lieu de trans-ac-tion (selon le Lexique)
+le motif `tran3s2act' pr\'esent \`a Rennes et chez JD est responsable,
+`tran2s3act' me semble plus conforme \`a l'\'ethymologie.
+
+ ** caout-chouc au lieu de caou-tchouc (selon le Lexique)
+faut-il ajouter `caou3t2chou' ?
+
+ ** post-hume au lieu de pos-thume (selon le Larousse)
+l\`a c'est le motif `.pos2t3h' pr\'esent \`a Rennes et chez JD qui est responsable,
+faut-il le changer ? Le Larousse affirme que dans ce cas c'est la coupure
+phon\'etique qui s'impose, \c ca peut se discuter...
+Qu'en pensent les sp\'ecialistes ? Question finale (fondamentale) :
+existe-t-il un ouvrage de r\'ef\'erence qui tranche tous ces cas litigieux ?
+
+=================================================================
+ Je signale pour terminer qq lacunes (graves) du fichier 8-bits
+de Yannis (outre les doubles points...) :
+ - il manque tous les motifs phon\'etiques concernant les mots en `ill'
+(lignes 222--260 dans le fichier de Rennes) ;
+Il n'est pas le seul \`a faire cet oubli puisque le fichier FEhyphen.tex
+diffus\'e avec le format FEPlain par le labo de typographie de Strasbourg
+(proche de JD ?) fait la m\^eme chose !
+ - il manque tous les motifs concernant les mots en `ck' (lignes 75--85 sur
+le Gould) ;
+ - il manque de tr\`es nombreux motifs commen\c cant par une apostrophe ;
+ - plus qq fautes de frappes et omissions diverses...
+
+ J'ai compl\'et\'e et corrig\'e le fichier 8-bits de Yannis en prenant pour
+mod\`ele celui de Rennes. Il s'agit pour l'instant d'une version d'essai
+annot\'ee en ce qui concerne les ajouts, corrections et pbs en suspens. Si \c
+ca int\'eresse quelqu'un il suffit de me la demander.
+
+Bien cordialement,
+Daniel Flipo.
diff --git a/language/typingtex/Convert-RaichleHacked.dir/cork2dek.tbl b/language/typingtex/Convert-RaichleHacked.dir/cork2dek.tbl
new file mode 100644
index 0000000000..60a4cd8660
--- /dev/null
+++ b/language/typingtex/Convert-RaichleHacked.dir/cork2dek.tbl
@@ -0,0 +1,173 @@
+% This is `codepage.tbl'.
+% It is used in `Convert' -- a character converter written in TeX
+%
+% Note: in column 1 <charnum> the rest of the line is the replacement
+% (most characters have catcode `letter' or `other' to avoid
+% expansion)
+%
+% Example: Definitions for Cork Font Encoding Scheme of DC/EC-Fonts
+% (only characters > 128 are defined in the current file)
+%
+% Note: to use some of the characters you need the following definitions:
+% \font\minisan=cmss10
+% \font\san=cmss10 scaled \magstep1
+% \font\San=cmss10 scaled \magstep2
+% \def\eng{{\san r \hskip-6pt\j}}
+% \def\Eng{{\San r \hskip-7pt\j}}
+% \def\Thorn{{\San\lower4pt\hbox{l} \hskip-8.5pt\relax b}}
+% \def\thorn{{\san\lower3pt\hbox{l} \hskip-7pt\relax b}}
+% \def\eth{{\minisan \raise4pt\hbox{$\times$} \hskip-8.5pt\relax o}}
+% \def\ogonek#1{\setbox0=\hbox{`}\ooalign{%
+% \hidewidth\lower\ht0\copy0\hidewidth\crcr#1\crcr}}
+% \font\tenu=cmu10
+%
+% (taken from "Extended Font Encoding Scheme -- Latin"
+% finished in Cork, September 12, 1990)
+%
+%
+
+
+"80 \u{A}
+"81 \ogonek{A}
+"82 \'C
+"83 \v{C}
+"84 \v{D}
+"85 \v{E}
+"86 \ogonek{E}
+"87 \u{G}
+
+"88 \'L
+"89 L\kern-2pt'
+"8A \unbrace{\L}
+"8B \'N
+"8C \v{N}
+"8D \unbrace{\Eng}
+"8E \H{O}
+"8F \'R
+
+"90 \v{R}
+"91 \'S
+"92 \v{S}
+"93 \c{S}
+"94 \v{T}
+"95 \c{T}
+"96 \H{U}
+"97 {\accent23 U}
+
+"98 \"Y
+"99 \'Z
+"9A \v{Z}
+"9B \.Z
+"9C IJ
+"9D \.I
+"9E d\llap{\raise.7ex\hbox{--}}
+"9F \unbrace{\S}
+
+"A0 \u{a}
+"A1 \ogonek{a}
+"A2 \'c
+"A3 \v{c}
+"A4 {d\kern-1pt'}
+"A5 \v{e}
+"A6 \ogonek{e}
+"A7 \u{g}
+
+"A8 \'l
+"A9 {l\kern-1pt'}
+"AA \unbrace{\l}
+"AB \'n
+"AC \v{n}
+"AD \unbrace{\eng}
+"AE \H{o}
+"AF \'r
+
+"B0 \v{r}
+"B1 \'s
+"B2 \v{s}
+"B3 \c{s}
+"B4 t\kern-1pt'
+"B5 \c{t}
+"B6 \H{u}
+"B7 \accent23 u
+
+"B8 \"y
+"B9 \'z
+"BA \v{z}
+"BB \.z
+"BC ij
+"BD !`
+"BE ?`
+"BF {\it\$}
+
+"C0 \unbrace{\AA}
+"C1 \'A
+"C2 \^A
+"C3 \~A
+"C4 \"A
+"C5 \unbrace{\AA}
+"C6 \unbrace{\AE}
+"C7 \c{C}
+
+"C8 \`E
+"C9 \'E
+"CA \^E
+"CB \"E
+"CC \`I
+"CD \'I
+"CE \^I
+"CF \"I
+
+"D0 \rlap{\raise.3ex\hbox{--}}D % Eth
+"D1 \~N
+"D2 \`O
+"D3 \'O
+"D4 \^O
+"D5 \~O
+"D6 \"O
+"D7 \unbrace{\OE}
+
+"D8 \unbrace{\O}
+"D9 \`U
+"DA \'U
+"DB \^U
+"DC \"U
+"DD \'Y
+"DE \unbrace{\Thorn}
+"DF \unbrace{\SS}
+
+"E0 \`a
+"E1 \'a
+"E2 \^a
+"E3 \~a
+"E4 \"a
+"E5 \a{a}
+"E6 \a{e}
+"E7 \c{c}
+
+"E8 \`e
+"E9 \'e
+"EA \^e
+"EB \"e
+"EC \`{\i}
+"ED \'{\i}
+"EE \^{\i}
+"EF \"{\i}
+
+"F0 \unbrace{\eth}
+"F1 \~n
+"F2 \`o
+"F3 \'o
+"F4 \^o
+"F5 \~o
+"F6 \"o
+"F7 \unbrace{\oe}
+
+"F8 \unbrace{\o}
+"F9 \`u
+"FA \'u
+"FB \^u
+"FC \"u
+"FD \'y
+"FE \unbrace{\thorn}
+"FF \unbrace{\ss}
+
diff --git a/language/typingtex/Convert-RaichleHacked.dir/cv.cfg b/language/typingtex/Convert-RaichleHacked.dir/cv.cfg
new file mode 100644
index 0000000000..4c37054f70
--- /dev/null
+++ b/language/typingtex/Convert-RaichleHacked.dir/cv.cfg
@@ -0,0 +1,31 @@
+
+%%% Configuration file for cv.tex
+ %% Uncomment just one of the following configuration commands.
+ %% Headers of the *.tbl files describe the conversion determined.
+
+ \def\configtables{} %% default translation to ^^xy form
+
+ % \def\configtables{cork2dek.tbl}
+
+ % \def\configtables{mac2dek.tbl}
+ % \def\configtables{mac2fr7d.tbl}
+ % \def\configtables{mac2fr7g.tbl}
+ \def\configtables{mac2noacc.tbl}
+
+ % \def\configtables{pc2dek.tbl}
+ % \def\configtables{pc2fr7d.tbl}
+ % \def\configtables{pc2fr7g.tbl}
+ % \def\configtables{pc2noacc.tbl}
+
+
+ %%%%%% user alterations below this line only, please!
+ %%%%%%
+
+ %\def\configtables{pc2dek.tbl pc2fr7g.tbl}
+ %% this uses two tables and the last has last word!
+
+ %\def\configtables{my.tbl}
+ %% this is model for personally arranged table
+
+ \endinput
+
diff --git a/language/typingtex/Convert-RaichleHacked.dir/cv.in b/language/typingtex/Convert-RaichleHacked.dir/cv.in
new file mode 100644
index 0000000000..9395da8023
--- /dev/null
+++ b/language/typingtex/Convert-RaichleHacked.dir/cv.in
@@ -0,0 +1 @@
+ Il reste que le sens de cette ordonnance musicale, comme celui des relations qu'elle entretient avec les autres modes d'expression artistique, n'est pas sans rapport avec le vŽcu le plus intime de l'auteur qui lui aussi se dŽroule dans le temps d'une histoire dont les commencements gardent toujours une importance privilŽgiŽe. Tout au long de cet entretien o Lorand Gaspar essaiera, ˆ travers sa propre expŽrience, de saisir ce qu'est le processus crŽateur en train de se faire, on est d'emblŽe frappŽ par la nŽcessitŽ vitale qu'est pour lui l'Žcriture poŽtique: Tout d'abord, il s'agit essentiellement d'un besoin, d'une nŽcessitŽ, de quelque chose de vraiment vital. J'ai le sentiment que si je ne peux pas trouver cette faon de dŽployer quelque chose qui est lˆ, il y aura comme un blocage Cela ressemble ˆ une boule, ˆ quelque chose d'informe, comme un neurone qui aurait des arborisations, dont il ignore les liaisons, les fonctions, ˆ un magma obscur, habitŽ d'un grouillement. Autrement dit, il s'agit de trouver quelque chose qui me permette de me sortir d'une situation parfois critique, en tout cas toujours difficile, o quelque chose est bouleversŽ et l'Žcriture est pour moi le moyen. Mais c'est sans doute parce que le moyen est au dŽpart sans reprŽsentation et sans mots pour le dire que la crŽation poŽtique lui appara”t comme la seule voie possible pour rŽsoudre le profond malaise qui ne peut encore s'exprimer que corporellement. Trouver les mots lˆ o il n'y en a pas parce qu'il est des profondeurs obscures de nous-mme o la rŽflexion n'a pas d'accs, o son pouvoir d'Žlaboration est inopŽrant ou, du moins, ne peut directement s'exercer. Telle est peut-tre pour Lorand Gaspar la fonction mŽdiatrice du pote et c'est en ce sens qu'il ajoute: La finalitŽ de la poŽsie est aussi sa nŽcessitŽ. C'est lˆ, me semble-t-il, la matrice archŽtypique de toute son oeuvre qui appara”t, au fur et ˆ mesure qu'on y pŽntre, comme la mise en images et en mots de ce magma originaire. Nombreux sont les textes d'EgŽe et de JudŽe o, derrire l'expression multiforme d'un monde qui l'engendre avant qu'il ne l'engendre, se profile, en arrire plan, l'essence et la fonction de la crŽation poŽtique. Lorand Gaspar va tenter, dans la suite de l'entretien, d'en exprimer le cheminement d'abord obscur et qui va peu ˆ peu s'Žlaborer. Au dŽpart, dit-il, c'est senti, c'est ŽprouvŽ comme une sorte d'activitŽ magmatique. C'est dans le corps. Dans ce mŽlange apparaissent rapidement des fragments de mŽmoire, de sentiments Mais on est dŽjˆ au-delˆ. A l'origine, c'est presque kinesthŽsique et cŽnesthŽsique, c'est comme si la totalitŽ du corps Žtait impliquŽe. Puis c'est une sorte d'urgence ˆ distinguer les choses Et c'est cela qui est inquiŽtant, c'est cela qui est douloureux et c'est lˆ qu'il faut essayer d'Žclaircir, de relier. C'est quand on voit l'ensemble et les relations entre les choses, quand on voit comment a bouge et comment a circule qu'on est envahi par une grande joie. Les termes qu'utilise ici Lorand Gaspar font penser que cette mise en ordre se dŽroule sur plusieurs plans ˆ la fois: celui de l'espace: voir l'ensemble et les relations entre les choses, et la poŽsie s'apparente ici aux arts de l'image (peinture, sculpture) mais aussi celui du temps: comment a bouge et comment a circule, ce qui rapproche la poŽsie de la musique et de la danse. C'est sans doute pourquoi les anciens considŽraient la poŽsie comme le plus grand des arts en ce qu'il rassemble en lui l'ensemble des autres. Lorsque je demande ˆ Lorand Gaspar si, dans ce cheminement Žlaboratif vers un ordre satisfaisant, quelque chose le guide et s'il a un projet prŽalable, il rŽpond que non et qu'en tout cas, ce n'est pas une idŽe, c'est rarement une image ou un mot, voire un son. Et mme lˆ c'est encore simplement un facteur dŽclanchant mais ce n'est pas ce autour de quoi je vais construire. J'ai, dit-il, le sentiment qu'il faut que je revienne toujours au point de dŽpart, ˆ cette urgence et lˆ, j'ai une activitŽ, une fermentation qui n'est pas claire. Alors il faut nommer, il faut mettre en ordre, comme si la forme devait tre trouvŽe ˆ partir d'une nŽcessitŽ, comme si, dans ce magma, il y avait dŽjˆ tous les ingrŽdients, non pas qu'il n'y ait qu'un seul ordre mais comme s'il n'existait qu'un nombre limitŽ d'ordonnances possibles. Et lˆ, il n'y a pas de modle, il n'y a, consciemment, aucune rŽfŽrence dans le monde extŽrieur. Mais comment le pote trouve-t-il la correspondance formelle qu'il recherche? Est-ce dans son patrimoine culturel? Lorand Gaspar pense que ce ne peut tre que secondaire. C'est donc ˆ l'intŽrieur de lui-mme qu'il doit trouver ce rŽfŽrend organisateur: Pour moi, dit-il, il a toujours ŽtŽ Žvident que c'est avec moi-mme que la communication devait tre Žtablie, que c'Žtait mon affaire, mon problme, que les autres pouvaient me donner une impulsion mais que c'est de moi-mme que je vais tirer cette Žlucidation. On voit que, mme ˆ l'intŽrieur de lui-mme, il ne s'agit pas de rŽfŽrence ˆ un modle une fois pour toute Žtabli, mais de la nŽcessitŽ de renouer constamment un dialogue entre les parties les plus profondes, les plus inconscientes et les plus ŽlaborŽes, y compris celles projetŽes, en avancŽe, dans un idŽal du moi. Mais cette rŽfŽrence primordiale ˆ lui-mme n'exclut pas pour autant le dŽsir de communication avec autrui, on pourrait dire plut™t qu'elle la fonde: Il est Žvident que dans un deuxime temps le dŽsir de communiquer existe mais c'est dans un deuxime temps. Je n'ai jamais eu le sentiment que c'Žtait d'emblŽe pour communiquer que j'Žcrivais. Mais une fois rŽsolue cette problŽmatique interne, je peux Žventuellement devenir capable de communiquer avec autrui. Il reste cependant que la poŽsie utilise un matŽriau qui lui est propre, ˆ savoir le langage. A la question que je lui pose quant ˆ l'importance qu'il donne ˆ chacun des deux versants du langage: le signifiant et le signifiŽ, ou, pour tre concret, le corps du mot et son sens, il rŽpond: qu'il y a d'abord un rapport sensoriel avec les mots, corporel est le bon terme. Il faut que les mots soient trs prs de ce qui est lˆ; il faut que les mots aient cette matŽrialitŽ, ce toucher. Je suis aussi sensible ˆ la sonoritŽ. Mais je ne fais pas non plus partie de ceux qui renoncent au sens. Je n'admets pas d'Žcrire uniquement pour la musique des mots. Le c™tŽ palper des mots est une premire phase, un premier temps. Comme si les ŽlŽments, la matire des mots, devaient tre d'abord trs concrets. Mais, pour Žtablir leurs rapports pour les lier, j'ai besoin qu'intervienne le sens. ˆ vrai dire je n'arrive pas ˆ sŽparer dans la pratique cette matŽralitŽ du mot de son sens. Dans ma mŽmoire, le sensible et le sens sont intimement liŽs dans la trace du mme vecu. Il peut arriver que la comprŽhension ne soit pas Žvidente pour un autre mais pour moi, elle l'est. Dans un deuxime temps, cependant, un travail peut tre fait pour approcher davantage de la communication et du partage. Mais c'est lˆ, aussi, qu'on sent un danger. Jusqu'o est-ce que je fais bien d'aller ?. Reste ˆ se demander de quoi est fait ce magma obscur habitŽ d'un grouillement qui semble le matŽriau premier d'o toute crŽation prend sa source et son origine. Lorand Gaspar ne rŽpond pas directement ˆ cette question mais il semble qu'une certaine rŽponse peut tre faite ˆ partir de ce qu'il dit des circonstances dans lesquelles il a commencŽ ˆ Žcrire. J'ai commencŽ ˆ Žcrire trs t™t, dit-il, dans mon adolescence et c'Žtait dŽjˆ un besoin. C'Žtait une faon, dŽjˆ, de mettre au clair quelque chose que je ne comprenais pas. Le point de dŽpart est toujours un moment difficile. Puis un peu plus tard, aprs mon arrivŽe en France, j'ai essayŽ d'Žcrire en franais; c'Žtait au moment d'une crise et c'est: Le quatrime Žtat de la matire qui est venu d'une seule coulŽe. Dans la situation difficile qui Žtait alors la mienne, ce fut la seule faon de m'en sortir. A d'autres moments, il y a pu y avoir des rencontres heureuses, mais le processus dŽclanchŽ reste douloureux au dŽbut. Quand je lui demande si son enfance elle-mme peut avoir jouŽ un r™le important comme source d'inspiration, il me rŽpond: Cela para”t Žvident. J'ai le sentiment que mon corps n'a rien oubliŽ. J'ai des souvenirs trs vivants qui se rŽveillent ˆ la moindre occasion et qui veulent tre dŽgagŽs, verbalisŽs. Mais ces rŽveils me renvoient toujours dans un premier temps ˆ l'obscuritŽ, et je ne peux retrouver la rencontre positive heureuse qu'aprs ce retour. On dit qu'ˆ travers son Žcriture le pote crŽe son monde. Mais n'est-ce pas aussi lui-mme qu'il crŽe, tel qu'il est ou tel qu'il voudrait tre? A la rŽflexion oui, rŽpond-il, mais quand on est dedans, dans cette nŽcessitŽ, on ne sait rien, on est pris par cela et il faut en sortir. Pourtant cet Žtat douloureux ne m'est jamais apparu comme dŽsespŽrŽ. On sent qu'on pourra toujours aller plus loin. On s'est peut-tre fourvoyŽ mais il y a toujours un autre chemin. Cette essence itinŽrante qui marqua sa vie, on la retrouve aussi dans son oeuvre. Quand je lui demande en fin d'entretien ce qui lui fait penser qu'un pome est terminŽ, il me dit: Je ne sais jamais si c'est fini mais ce que je sais, c'est que dans la situation donnŽe, je ne peux pas aller plus loin. Il arrive mme qu'aprs plusieurs annŽes, j'ai le mme sentiment. Mais je sais que je peux aller jusque lˆ pour, le moment. D'autres fois, ˆ la relecture il se fait comme une ouverture nouvelle. A la relecture de cet entretien avec Lorand Gaspar, j'ai le sentiment que, dans sa concision et dans sa densitŽ, il est le tŽmoignage Žmouvant de la raison d'tre et de la nŽcessitŽ de la crŽation artistique. A partir d'un travail poursuivi dans un sŽminaire que j'ai animŽ pendant une dizaine d'annŽes autour du thme: Art et Psychanalyse, il m'a semblŽ que les processus psychiques qui se dŽploient dans la crŽation artistique s'architecturaient selon des modalitŽs semblables ˆ celles que la clinique psychanalytique mettait en Žvidence dans son domaine propre, en particulier, au niveau des structures les plus anciennes et les plus profondes telles qu'on peut les observer chez l'enfant, mais aussi dans certains Žtats pathologiques (Žtats limites ou psychotiques) ou lors de mouvements rŽgressifs particulirement importants. De cette confrontation pouvait rŽsulter un Žclairage rŽciproque intŽressant, permettant ˆ la fois de mieux situer le r™le et la fonction de l'art, mais aussi de mieux comprendre certains modes de fonctionnement psychiques qui posent ˆ l'analyste des problmes thŽrapeutiques d'une grande difficultŽ. Il est bien Žvident que la fonction symbolisante occupe ici une place centrale et je ne peux qu'Žvoquer, d'entrŽe de jeu, le rŽcent travail d'Alain Gibeault, Congrs des psychanalystes de langue franaise des pays romans, mai. ne serait-ce que pour me situer par rapport ˆ lui. J'en ai apprŽciŽ l'Žclairage philosophique, la rigueur mŽtapsychologique et l'enracinement clinique. Il m'a semblŽ seulement, mais qui pourrait lui en faire grief, Žtant donnŽe l'ampleur de son sujet, que son exposŽ laissait dans l'ombre quelques questions. Ce sera donc dans ce champ laissŽ en friche que j'essaierai d'apporter ma propre contribution. Je crois, en effet, d'un grand intŽrt, pour entrer plus profondŽment dans la comprŽhension de cette fonction symbolisante, de s'attarder davantage sur les conditions de sa naissance, sur les modalitŽs de son apparition et sur les toutes premires Žtapes de son Žlaboration. Or, ce point de dŽpart me para”t profondŽment enracinŽ dans le corps, dans ce qu'il peut inscrire, ressentir et exprimer: souvenirs du corps, ŽprouvŽs sensori-moteurs, langages du corps seront donc ici les mots clŽs. Je crois aussi que l'art offre un champ d'investigation privilŽgiŽe dont on ne contestera pas l'importance en ce qui concerne la symbolisation mais qui nous intŽresse ici tout particulirement dans la mesure o son mode d'expression, son langage est justement langage du corps, comme j'aurai ample occasion de le montrer plus loin. Freud n'a-t-il pas d'ailleurs engagŽ d'emblŽe la recherche analytique dans ce registre en prenant d'abord l'hystŽrie comme objet d'Žtude. L'hystŽrie reprŽsente bien, en effet, l'organisation nŽvrotique o le corps est le plus prŽsent. Car s'il l'est au terme du processus, la conversion, il l'est aussi ˆ l'origine et il l'est encore ˆ chacune de ses Žtapes, inscrivant dans la fonction symbolisante elle-mme sa marque propre. Chez Dora, la zone corporelle Žrogne excitŽe exagŽrŽment peut expliquer ce qu'on a appelŽ la complaisance somatique. Mais, les dŽplacements symboliques ne sont possibles que si l'objet ou l'acte symbolique substituŽ donne la possibilitŽ d'un ŽprouvŽ psychique semblable et suffisamment satisfaisant. Si chez Dora la satisfaction masturbatoire a pu se dŽplacer sur d'autres objets, pourquoi n'aurait-elle pas elle-mme une origine antŽrieure. On rejoint lˆ, du reste, une remarque pertinente d'Alain Gibeault qui, se rŽfŽrant ˆ Ferencsi, montre la rŽversibilitŽ du processus symbolique. Si la dent, ou le mamelon, peut tre symbole du pŽnis, le pŽnis peut tre aussi symbole de la dent et peut-tre plus encore du mamelon. Freud l'avait d'ailleurs bien peru puisque, au bout du compte, c'est sans doute parce qu'il n'a pas suffisamment analysŽ ce puissant retour nostalgique vers le lien primitif et fusionnel avec la mre que l'analyse de Dora a, finalement, butŽ. Ainsi, la masturbation de Dora est aussi par l'utilisation, certes, d'un nouveau registre qui est celui de la sexualitŽ, recherche de retrouvailles avec un ŽprouvŽ semblable ˆ celui, dŽjˆ vŽcu, dans le contact oral et cutanŽ avec le sein de la mre. C'est aussi dire que la fonction symbolisante commence trs t™t, voire ds le dŽbut, mme si c'est sous une forme qu'on pourrait appeler prŽsymbolique pour souligner la distinction encore partielle des termes semblables. Mais il para”t justement important et intŽressant d'essayer de la saisir dans ses tout premiers commencements, ce qui nous permettra de mieux comprendre ses Žlaborations ultŽrieures plus complexes et les modalitŽs de leurs investissements successifs. Comment donc opre ce premier langage du corps et comment le situer dans son lieu et dans son devenir par rapport ˆ celui qui s'exprimera ensuite en images et en mots. Quand on s'interroge sur l'origine et les dŽbuts de cette fonction symbolisante, deux paramtres apparaissent essentiels: la pulsion et le corps sensori-moteur comme repre et comme rŽfrent. C'est la pulsion qui donne sens et il est intŽressant de remarquer que le mot sens indique ˆ la fois signification et mouvement vers, impulsion. Le premier dŽcoupage d'objet, le sein de la mre, par exemple, s'Žtaye sur la pulsion. C'est cette pulsion primaire qui va permettre, parce qu'elle en est le moteur, les Žquivalences substitutives et les dŽplacements symboliques ultŽrieurs. C'est parce que le pouce remplit une fonction semblable ˆ celle du sein, sur le plan de la satisfaction pulsionnelle, que le dŽplacement va se produire comme il se produira ensuite sur l'objet transitionnel puis, comme le dira Winnicott, sur le domaine culturel tout entier. Mais la pulsion ne permet pas, par elle-mme, le repŽrage de similitude des substitutions adŽquates. C'est le corps, dans sa sensorialitŽ comme dans son agir, sa gestualitŽ, qui en assurera la possibilitŽ. Le corps avant mme qu'il ne s'Žlabore en image du corps. Ferencsi disait bien que l'enfant apprend ˆ figurer, au moyen de son corps, toute la diversitŽ du monde extŽrieur. Mais je crois qu'avant mme que le corps soit figurŽ en image du corps, le repŽrage se fait dŽjˆ ˆ partir de l'ŽprouvŽ senti et agi, inscrivant, dans le corps, traces et frayages sensori-moteurs. Autrement dit, c'est parce qu'il s'est dŽjˆ Žtabli un lien entre un ensemble sensori-moteur et un affect correspondant ˆ la satisfaction ou ˆ la non satisfaction de la pulsion que va pouvoir s'Žlaborer secondairement le fantasme. (Fantasme qui gardera d'ailleurs les composantes de sa double appartenance, puisqu'il comporte ˆ la fois affect et reprŽsentation. Et si le visuel tend ˆ y occuper la premire place, c'est en raison de l'Žlaboration schŽmatisante qu'il permet). Je me rŽfŽrerai ici ˆ l'expŽrience que fait Proust lorsqu'il gožte la madeleine trempŽe dans une infusion. C'est un ŽprouvŽ du corps, un ŽprouvŽ sensori-moteur qui est le point de dŽpart de cette expŽrience, si intense qu'il la dŽcrit comme lui donnant une joie pareille ˆ une certitude et suffisante, sans autre preuve, ˆ lui rendre la mort indiffŽrente.Proust A la Recherche du Temps Perdu, t.(ADMIN), Žd. La PlŽiade, Gallimard, Paris, p. Cet ŽprouvŽ actuel va faire rŽsonner en lui un ŽprouvŽ plus ancien de par sa similitude sensorielle avec lui. Une image-souvenir peut s'y trouver associŽe (c'est le cas de l'expŽrience rapportŽe par Proust). Mais ce n'est pas nŽcessaire. Il nous est tous arrivŽ, ˆ propos d'un gožt, d'une odeur, d'une perception de sable chaud, d'avoir la certitude d'un revŽcu sans qu'une image s'y associe. Un rapport de similitude semble donc pouvoir s'Žtablir entre une perception actuelle et ce que j'appellerai un souvenir du corps, avant mme qu'une reprŽsentation soit ŽlaborŽe et puisse servir de terme de comparaison. Bien Žvidemment, la pulsion joue aussi son r™le car c'est elle, au point de dŽpart, qui fonde cette similitude. Mais Proust ne souponne sans doute pas qu'elle s'enracine beaucoup plus loin encore que dans ce souvenir d'enfance, chez sa tante, auquel il le rapporte (et qui fait donc figure de souvenir Žcran). Car on ne peut pas ne pas penser que cette madeleine en forme de sein, laissant sourdre le liquide dans lequel elle a ŽtŽ trempŽe, le geste de la main qui saisit et met ˆ la bouche, les mouvements mme de la langue et des lvres, ne renvoient pas aux expŽriences corporelles inaugurales et trs investies qui, dans leur double polaritŽ, active et passive, gestuelle et sensorielle, vont servir d'assises initiales ˆ toute l'organisation des cha”nes symboliques. Pulsions et repres corporels signifiants y sont donc lˆ, liŽs ds l'origine, et serviront de noyaux organisateurs aux systmes symboliques ultŽrieurs. Mais situer les choses de cette faon, c'est aussi introduire un troisime paramtre : celui, prŽcisŽment, de l'organisation et de l'Žlaboration psychique qui, de ce fait, se construit. Organisation qui va d'ailleurs pouvoir tre investie pour elle-mme, engageant la dimension narcissique. Tel est, rapidement tracŽ, le schŽma directeur qui conduit notre rŽflexion. Il me para”t plus intŽressant et plus fructueux de rŽaborder maintenant ce cheminement ˆ travers une analyse des processus ˆ l'oeuvre dans la crŽation artistique ce qui, nous l'espŽrons, apportera un Žclairage nouveau sur la faon dont s'originent et se dŽveloppent certains processus psychiques primaires que nous pouvons observer dans notre pratique analytique. \ No newline at end of file
diff --git a/language/typingtex/Convert-RaichleHacked.dir/cv.log b/language/typingtex/Convert-RaichleHacked.dir/cv.log
new file mode 100644
index 0000000000..d6746a5ab7
--- /dev/null
+++ b/language/typingtex/Convert-RaichleHacked.dir/cv.log
@@ -0,0 +1,24 @@
+This is MlTeX, C Version 3.141 (format=plain 92.6.12) 19 JAN 1994 05:44
+**cv
+(cv.tex
+TeX Utility `convert' version 1.0a <91/07/08> (br)
+English documentation dated <91/07/08> (br)
+Modified <January, 1994> (ls)
+(cv.cfg)
+
+********************************************************
+ This program converts text-files with 8bit-characters
+ into text-files with TeX's ^^xx syntax or
+ into TeX macros you specify for these characters.
+ ---Input is taken from "cv.in".
+ ---Output goes to "cv.out".
+ ---Configuration in "cv.cfg" revises default translation.
+ Translation tables to be used this time are (in order):
+ pc2dek.tbl pc2fr7d.tbl
+********************************************************
+Type <return> to start; any letter first to abort.
+
+\order=
+* Reading pc2dek.tbl *
+* Reading pc2fr7d.tbl *
+* Starting to convert "cv.in" line by line: *
diff --git a/language/typingtex/Convert-RaichleHacked.dir/cv.out b/language/typingtex/Convert-RaichleHacked.dir/cv.out
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/language/typingtex/Convert-RaichleHacked.dir/cv.out
diff --git a/language/typingtex/Convert-RaichleHacked.dir/cv.tex b/language/typingtex/Convert-RaichleHacked.dir/cv.tex
new file mode 100644
index 0000000000..b495954215
--- /dev/null
+++ b/language/typingtex/Convert-RaichleHacked.dir/cv.tex
@@ -0,0 +1,482 @@
+%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% This is cv.tex a quick and provisional temporary hack of convert.tex
+%% to add the following features:
+%%
+%% --- suppress register creation logging
+%%
+%% --- standardized I/O (cv.in ==> cv.out) to abreviate dialog
+%%
+%% --- reduce logging of linenumbers tenfold to conserve time and eyesight
+%%
+%% --- adjust interpretation of configuration file
+%% so that a line of the form (note the left quote!)
+%% `^^xy <substitution text>
+%% (a) defines expansion of "ZW where Knuth's input filter
+%% assigns external code "XY to internal code "ZW.
+%% This allows use of the same line
+%% `\^^88 \`a
+%% to have an <agrave> of a Macintosh convert to \`a in cv.out
+%% *NO MATTER WHICH* Knuth input filter (xord) may be present.
+%% (Direct TeX for the Mac has user adjustable filters.)
+%% (b) to avoid \edef type expansion of <substitution text>
+%% See "Sanitize" and "Readtable".
+%%
+%% --- add \unbrace to prevent damage to kerning etc as necessary.
+%%
+%% Thanks to Bernd for code that is clean enough to hack!
+%%
+%% L.Siebenmann 1-94 <lcs@matups.matups.fr>
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% This is file `convert.tex' generated
+%% on <1991/7/9> with the docstrip utility (v1.1l test).
+%%
+%% The original source file was `convert.doc'.
+%%
+%%
+%% Copyright (C) 1991 by Bernd Raichle, all rights reserved.
+%%
+%% IMPORTANT NOTICE:
+%%
+%% You are not allowed to change this file. You may however copy this file
+%% to a different name and then change this copy.
+%%
+%% You are NOT ALLOWED to take money for the distribution or use of this
+%% file (or a changed version) except for some nominal charge for copying etc.
+%%
+%% Error Reports in case of UNCHANGED versions to
+%%
+%% Bernd Raichle
+%% Stettener Str. 73
+%% D-7300 Esslingen
+%% Federal Republic of Germany
+%% Email: raichle@azu.informatik.uni-stuttgart.de
+%%
+\def\fileversion{1.0a}
+\def\filedate{91/07/08}
+\def\docdate{91/07/08}
+\def\moddate{January, 1994}
+
+%% \CheckSum{556}
+%% \CharacterTable
+%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
+%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
+%% Digits \0\1\2\3\4\5\6\7\8\9
+%% Exclamation \! Double quote \" Hash (number) \#
+%% Dollar \$ Percent \% Ampersand \&
+%% Acute accent \' Left paren \( Right paren \)
+%% Asterisk \* Plus \+ Comma \,
+%% Minus \- Point \. Solidus \/
+%% Colon \: Semicolon \; Less than \<
+%% Equals \= Greater than \> Question mark \?
+%% Commercial at \@ Left bracket \[ Backslash \\
+%% Right bracket \] Circumflex \^ Underscore \_
+%% Grave accent \` Left brace \{ Vertical bar \|
+%% Right brace \} Tilde \~}
+%%
+%% TeX utility `convert' to use with plainTeX or LaTeX v2.09
+%% Copyright (C) 1991 by Bernd Raichle, all rights reserved.
+\catcode`@=11
+ %% suppress Plain's logging of allocations
+ \def\wlog#1{\relax} %% revise for latex 3
+
+ %% some header definitions
+
+ \let\EX@\expandafter
+ \def\IW@ne{\immediate\write\@ne}
+
+ {\lccode`\$=`\% \lccode`\*=`\# \lccode`|=`\\
+ \lowercase{%
+ \gdef\HeaderA{\IW@ne{}%
+ \IW@ne{|def|unbrace*1{*1} $$ serves to get rid of braces }%
+ \IW@ne{ $$ as in {|oe}, that might damage kerning.}%
+ \IW@ne{}}%
+ }}
+
+ \EX@\let
+ \csname cork2dek.tbl\endcsname\HeaderA
+ \EX@\let
+ \csname mac2dek.tbl\endcsname\HeaderA
+ \EX@\let
+ \csname mac2fr7g.tbl\endcsname\HeaderA
+
+
+\newwrite\@unused
+\def\typeout#1{{\let\protect\string\immediate\write\@unused{#1}}}
+\def\@strip#1#2 \@gobble{\def #1{#2}}
+\def\@defpar{\par}
+\def\@iden#1{#1}
+\def\@gobble#1{}
+\def\typein[#1]#2{\typeout{#2}\read\sixt@@n to#1%
+ \ifx #1\@defpar \def#1{}\else
+ \@iden{\expandafter\@strip\expandafter #1#1\@gobble\@gobble} \@gobble
+ \fi}
+\typeout{TeX Utility `convert' version \fileversion\space <\filedate> (br)}
+\typeout{English documentation dated <\docdate> (br)}
+\typeout{Modified <\moddate> (ls)}
+\def\endofjob{%
+ \typeout{******************************************}
+ \typeout{* Finished. See output in file cv.out. *}
+ \typeout{******************************************}
+ \csname @@end\endcsname \end
+ }
+%\everypar{\errhelp{This TeX utility should not produce any dvi output.}%
+% \errmessage{Internal Error 1. -- Please fix me!}}
+ %\nullfont
+\def\sorry{%
+ \typeout{******************************************}
+ \typeout{* Sorry, you need TeX 3 for this Utility *}
+ \typeout{******************************************}
+ \endofjob}
+\newif\iftexthree \texthreetrue
+\ifx\undefined\inputlineno
+ \texthreefalse
+\else
+ \count@=\inputlineno
+ \ifnum\inputlineno<\z@
+ \texthreefalse
+ \else\ifnum\inputlineno=\count@
+ \texthreefalse
+ \fi\fi
+ \fi
+ \iftexthree \else \expandafter\sorry\fi
+ \errorcontextlines=\m@ne
+ \input cv.cfg\relax
+ \catcode`^=12
+ \typeout{}
+ \typeout{********************************************************}
+ \typeout{ This program converts text-files with 8bit-characters}
+ \typeout{ into text-files with TeX's ^^xx syntax or }
+ \typeout{ into TeX macros you specify for these characters.}
+ \typeout{ ---Input is taken from "cv.in".}
+ \typeout{ ---Output goes to "cv.out".}
+ \typeout{ ---Configuration in "cv.cfg" revises default translation.}
+ \typeout{ Extra translation tables for this run (in order):}
+ \typeout{ \space\space\configtables}
+ \typeout{********************************************************}
+ \typein[\order]{Type <return> to start; any letter first to abort.}
+ \def\nibble#1#2\endnibble{\def\nibblet{#1}}
+ \expandafter\nibble\order\relax\endnibble
+ \expandafter
+ \ifcat\nibblet a
+ \expandafter\endofjob
+ \fi
+ \newcount\convtype
+ \convtype=2
+ \def\getnumber{\afterassignment\gobblerest\count@=}
+ \def\gobblerest#1\lineend{%
+ %\showthe\count@\showthe\catcode`\^
+ }
+ %\loop
+ % \typeout{ Should I convert 8bit characters to...}%
+ % \typeout{ \space 1) ^^x notation or}%
+ % \typein[\conversion]%
+ % { \space 2) macros calls (defined in `convert.tbl')}%
+ % \getnumber\conversion \space 0 \lineend
+ % \convtype=\count@
+ % \fehlertrue
+ %\ifnum\convtype>\z@ \ifnum\convtype<\thr@@ \fehlerfalse \fi\fi
+ % \convtype=2 \fehlerfalse
+ % \iffehler
+ % \typeout{ !! Please type 1 or 2 !!}\typeout{}%
+ %\repeat
+ %\typeout{}
+ %\typein[\infilename]{First type the name of your input file:}
+ %\typeout{}
+ %\typein[\outfilename]{Now type the name of your output file:}
+ %\typeout{}
+ %\ifx\infilename\outfilename
+ % \typeout{}
+ % \typeout{!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!}
+ % \typeout{! Not possible to read from and write to the same file !}
+ % \typeout{!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!}
+ % \expandafter\endofjob
+ %\fi
+ \def\infilename{cv.in}
+ \def\outfilename{cv.out}
+\newwrite\outstream
+ %\ifx\outfilename\empty
+ % \typeout{Output to \jobname.log and online.}
+ % \typeout{------------------------------------------------------------}
+ % \chardef\outstream=\sixt@@n
+ %\else
+ \immediate\openout\outstream \outfilename \relax
+ %\fi
+
+
+% {\lccode`\$=`\%\lccode`\*=`\#\lccode`\I=`\I\lccode`\|=`\\
+% \lowercase
+% {\global\toks0={|def|unbrace*1{} $$ auxiliary macro for {|oe} etc.}
+% \global\toks2={$$ It erases cerain braces lest they damage kerning etc.}
+% }}
+%\showthe\toks2
+
+ %\endofjob
+
+\catcode`~=7
+\catcode`$=\active
+\newtoks\currentline \currentline={}
+\newcount\Lineno
+\newcount\lineno
+\ifx\outfilename\empty
+ \def\finish@line{\immediate\write\outstream{\the\currentline}%
+ \currentline{}\outputpos\z@}
+\else
+ \def\finish@line{\immediate\write\outstream{\the\currentline}%
+ \currentline{}\outputpos\z@\linemessage}
+\fi
+\def\linemessage{\ifnum\lineno=0\relax\message{\the\Lineno}\fi}
+\def\lastlinemessage{\ifnum\lineno=0\relax\else\message{\the\Lineno}\fi}
+\newcount\outputpos \outputpos=\z@
+\begingroup\lccode`$=32
+\lowercase{\endgroup
+\def\expand@tab{%
+ \count@\outputpos
+ \loop \ifnum\count@>7 \advance\count@ -8\repeat
+ \loop \ifnum\count@<8 \advance\count@\@ne $\repeat
+}
+} % end of lowercase
+\begingroup \catcode`\~~@=\active
+\gdef~~@{\currentline\expandafter{\the\currentline ^^@}%
+ \advance\outputpos\thr@@}
+\endgroup
+\def\defoutstring#1#2#3{\ifnum#1=\z@ \else
+ \begingroup \lccode`$=#1\relax
+ \lowercase{\endgroup\xdef$}%
+ {\currentline\noexpand\expandafter{\noexpand\the\currentline #2}%
+ \advance\outputpos\noexpand#3}%
+ \fi
+}
+\def\defout#1#2{\lccode`$=#1\relax
+ \lowercase{\gdef$}{#2}}
+\def\letout#1#2{\lccode`$=#1\relax
+ \lowercase{\global\let$}#2}
+\def\hexnum#1{\ifcase#1 0\or 1\or 2\or 3\or 4\or 5\or 6\or 7\or
+ 8\or 9\or a\or b\or c\or d\or e\or f\fi}
+\catcode`*=12
+\count@=32
+\loop
+ \lccode`*=\count@
+ \ifnum\count@<127
+ \lowercase{\defoutstring\count@*{\@ne}}
+ \advance\count@\@ne
+\repeat
+\defoutstring{127}{^^?}\thr@@
+\count@=\@ne \count\thr@@=`A
+\loop
+ \uccode`*=\count\thr@@
+ \ifnum\count@<32
+ \uppercase{\defoutstring\count@{^^*}}\thr@@
+ \advance\count@\@ne \advance\count\thr@@\@ne
+\repeat
+\count@=128
+\count\@ne=8 \count\tw@=0 % hex-counter
+\loop
+ \ifnum\count@<\@cclvi
+ \defoutstring\count@
+ {^^\hexnum{\the\count\@ne}\hexnum{\the\count\tw@}}4
+ \advance\count@\@ne
+ \ifnum\count\tw@>14
+ \count\tw@\z@ \advance\count\@ne \@ne
+ \else
+ \advance\count\tw@ \@ne
+ \fi
+\repeat
+\newcount\length
+\def\getlength{\afterassignment\lengthloop\let\next= }
+\def\lengthloop{%
+ \ifx\next\empty%\showthe\length
+ \else
+ \advance\length\@ne
+ \expandafter\getlength
+ \fi
+}
+ %
+ \def\@Cleanup#1>#2@{#2}
+ \def\@Meaning#1{\expandafter\@Cleanup\meaning#1@}
+ \def\@Sanitize#1{\def\@Sanholder{#1}%
+ \edef\@Sanholder{\@Meaning\@Sanholder}
+ }
+ %
+\def\processline#1 #2\lineend{\length=\z@
+ \@Sanitize{#2}%
+ \getlength#2\empty \getnumber#1\space -1 \lineend
+ \defoutstring\count@{\@Sanholder}\length
+}
+\newif\ifmore \moretrue
+
+ \def\nibble#1#2\endnibble{\def\nibblet{#1}}
+ \def\unbrace#1{#1}
+ \def\Unbrace#1{\edef#1{\expandafter\unbrace#1}}
+
+\def\readtablehead{\begingroup
+ \loop
+ \endlinechar\m@ne
+ \read\@ne to \curline \relax%\show\curline
+ \endlinechar`~~M
+ \ifx\curline\empty % ignore empty lines
+ \else
+ \Unbrace\curline%%!!!
+ \curline\show\curline
+ \expandafter\nibble\curline\endnibble
+ \show\nibblet
+ \def\temp{`}
+ \ifx\nibblet\temp\show\gcurline
+ \morefalse \global\let\gcurline=\curline
+ \show\gcurline
+ \fi
+ \fi
+ \ifeof\@ne \morefalse \message{xxxxxxxx}\let\readtablebody=\relax \fi
+ \ifmore
+ \repeat
+\endgroup}
+
+\def\readtablebody{\begingroup
+ %%% following is replaced by Sanitize
+ % \count@=128 %%%\z@ %%%127 %%\z@%!!!!!
+ % \loop
+ % \ifnum\count@<\@cclvi
+ % \ifnum\catcode\count@<9
+ % \catcode\count@ 12
+ % \else\ifnum\catcode\count@=\active
+ % \catcode\count@ 12
+ % \fi\fi
+ % \advance\count@ \@ne
+ % \repeat
+ %%% start with one \curline in hand
+ %\let\curline=\gcurline
+ %\show\gcurline
+ %\expandafter\processline\curline\lineend
+ \loop
+ \endlinechar\m@ne
+ \read\@ne to \curline
+ \endlinechar`~~M
+ \ifx\curline\empty % ignore empty lines
+ \else
+ %%\show\curline%%!!!
+ \expandafter\processline\curline\lineend
+ \fi
+ \ifeof\@ne \morefalse \fi
+ \ifmore
+ \repeat
+\endgroup}
+
+
+ %%% \SIN@0#1@#2@ : Is 1st exp of #1 in 1st exp of #2 ??
+ %% Answer in \ifIN@
+ %% Further if true, then \Initialtoks@ \Terminaltoks@
+ %% contain the parts before and after.
+ %% while \Initialtoks@{#2}%
+ \newif\ifIN@
+ \newtoks\Initialtoks@ \newtoks\Terminaltoks@
+ \def\m@rker{\m@@rker}%
+ \long\def\DeleteMarker@ #1@@#2\m@rker{\Terminaltoks@{#1}}%
+ \def\SIN@{\expandafter\SINN@\expandafter}%
+ \long\def\SINN@0#1@#2@{%
+ \long\def\NI@##1#1##2##3\ENDNI@
+ {\ifx\m@rker##2\IN@false\Initialtoks@\expandafter{#2}%
+ \else
+ \IN@true
+ \Initialtoks@{##1}\DeleteMarker@##2##3%
+ \fi}%
+ \expandafter\NI@#2@@#1\m@rker\ENDNI@}
+
+ \def\getnexttable{%
+ \SIN@0 @\configtables @%
+ \ifIN@
+ \edef\configtable{\the\Initialtoks@}%
+ \edef\configtables{\the\Terminaltoks@}%
+ \ifx\configtable\empty\expandafter\getnexttable\fi
+ \else
+ \let\configtable\configtables
+ \let\configtables\empty
+ \fi
+ }
+
+ \def\Loop@#1\Repeat@{%
+ \def\Iterate@{#1\expandafter\Iterate@\fi}%
+ \Iterate@}
+
+
+
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %%%%% ACTION
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ifnum\convtype=\tw@
+ \Loop@
+ \getnexttable
+ \ifx\empty\configtable
+ \else
+ \openin\@ne \configtable\relax
+ \typeout{* Reading \configtable\space *}
+ \ifeof\@ne
+ \typeout{I can't find file \configtable -- ignored.}%
+ \else
+ \catcode`\^=7
+ %\showthe\catcode`\\%
+ \def\Readtable{%
+ %\readtablehead
+ \readtablebody\catcode`\\=0 }%
+ \afterassignment\Readtable
+ \catcode`\\=12
+ %%%!!!\Readtable here
+ \catcode`\^=12
+ \closein\@ne
+ \fi
+ \Repeat@
+\fi
+\letout{9}\expand@tab
+\defout{10}{%
+ \typeout{!!--> Found ^J in line \the\Lineno--I'll ignore all ^J.}%
+ \letout{10}\relax}
+\defout{13}{%
+ \typeout{!!--> Found ^M in line \the\Lineno--I'll ignore all ^M.}%
+ \letout{13}\relax}
+\def\readfile{%
+ \read\@ne to\next
+ \ifeof\@ne
+ \else
+ \advance\Lineno\@ne\advance\lineno\@ne
+ \ifnum\lineno=10\relax\lineno=\z@\fi
+ \next\relax
+ \finish@line
+ \expandafter\readfile
+ \fi
+ }
+\def\makeactiveandinput{\begingroup
+ \count@=\z@
+ \loop
+ \ifnum\count@<\@cclvi
+ \catcode\count@\active
+ \advance\count@\@ne
+ \repeat
+ \endlinechar=-1
+ \openin\@ne \infilename\relax
+ \EX@\csname\configtable\endcsname
+ %\HeaderA
+ \ifeof\@ne
+ \typeout{No input file \infilename.}%
+ \else
+ \Lineno\z@\lineno\z@
+ \typeout{* Starting to convert "cv.in" line by line: *}
+ \readfile
+ \lastlinemessage
+ \closein\@ne
+ \fi
+ \endlinechar=`~~M
+ \ifx\outfilename\empty
+ \typeout{------------------------------------------------------------}
+ \else
+ \immediate\closeout\outstream
+ \fi
+ \endgroup
+ \endofjob
+}
+\makeactiveandinput
+\errhelp{This TeX utility should not reach this point.}%
+\errmessage{Internal Error 2. -- Please fix me!}
+\endinput
+%%
+%% End of file `convert.tex'.
+
diff --git a/language/typingtex/Convert-RaichleHacked.dir/mac2dek.tbl b/language/typingtex/Convert-RaichleHacked.dir/mac2dek.tbl
new file mode 100644
index 0000000000..484c49cc79
--- /dev/null
+++ b/language/typingtex/Convert-RaichleHacked.dir/mac2dek.tbl
@@ -0,0 +1,80 @@
+
+
+
+%%% mac2dek.tbl table for conversion
+ %% FROM: Mac eight bit TeX typing
+ %% TO: DE Knuth's syntax (normalized).
+
+%%% This file is selected and called by configuration file cv.cfg
+ %% for use by cv.tex (B. Raichle's convert.tex revised).
+
+%%% Input allows only Mac (accented) letters
+ %% in the eight-bit range 128-255 ---
+ %% as for Times (without misc characters).
+ %% If you want more, please
+ %% extend this table, and then give it a new name.
+
+%%% The first entry is the Hex code for the Mac
+ %% the second is an ascii substitution text.
+
+
+`^^e7 \'A
+`^^87 \'a
+`^^83 \'E
+`^^8e \'e
+`^^ea \'I
+`^^92 \'{\i}
+`^^ee \'O
+`^^97 \'o
+`^^f2 \'U
+`^^9c \'u
+`^^cb \`A
+`^^88 \`a
+`^^e9 \`E
+`^^8f \`e
+`^^ed \`I
+`^^93 \`{\i}
+`^^f1 \`O
+`^^98 \`o
+`^^f4 \`U
+`^^9d \`u
+`^^e5 \^A
+`^^89 \^a
+`^^e6 \^E
+`^^90 \^e
+`^^eb \^I
+`^^94 \^{\i}
+`^^ef \^O
+`^^99 \^o
+`^^f3 \^U
+`^^9e \^u
+`^^80 \^A
+`^^8a \^a
+`^^e8 \^E
+`^^91 \^e
+`^^ec \^I
+`^^95 \^{^i}
+`^^85 \^O
+`^^9a \^o
+`^^86 \^U
+`^^9f \^u
+`^^d9 \^Y
+`^^d8 \^y
+`^^cc \~A
+`^^8b \~a
+`^^84 \~N
+`^^96 \~n
+`^^cd \~O
+`^^9b \~o
+`^^82 \c{C}
+`^^8d \c{c}
+`^^81 \unbrace{\AA}
+`^^8c \unbrace{\aa}
+`^^ae \unbrace{\AE}
+`^^be \unbrace{\ae}
+`^^ce \unbrace{\OE}
+`^^cf \unbrace{\oe}
+`^^af \unbrace{\O}
+`^^bf \unbrace{\o}
+`^^a7 \unbrace{\ss}
+
diff --git a/language/typingtex/Convert-RaichleHacked.dir/mac2fr7d.tbl b/language/typingtex/Convert-RaichleHacked.dir/mac2fr7d.tbl
new file mode 100644
index 0000000000..212854c591
--- /dev/null
+++ b/language/typingtex/Convert-RaichleHacked.dir/mac2fr7d.tbl
@@ -0,0 +1,56 @@
+
+%%% mac2fr7d.tbl table for conversion
+ %% FROM: Mac eight bit French TeX typing
+ %% TO: succinct French typing with accents on left.
+
+%%% This file is selected and called by cv.cfg
+ %% for use by cv.tex (B. Raichle's convert.tex revised).
+
+%%% INPUT Allows only Mac (accented) letters for French
+ %% in the eight bit range 128-255 ---
+ %% coded as for Mac Times.
+ %% If you want more, please
+ %% extend this table, or better load another table
+ %% before this one as indicated in cv.cfg.
+
+%% OUTPUT Succinct (and readable)
+%% 7bit style with accents on right.
+%% To get output for email that is directly
+%% composable by TeX using email-fr.sty
+%% use accents on left style instead.
+
+%%% The first entry is the Hex code for the Mac
+ %% the second is an asci substitution text.
+
+
+`^^83 E'
+`^^8e e'
+`^^cb A`
+`^^88 a`
+`^^e9 E`
+`^^8f e`
+`^^f4 U`
+`^^9d u`
+`^^e5 A^
+`^^89 a^
+`^^e6 E^
+`^^90 e^
+`^^eb I^
+`^^94 i^
+`^^ef O^
+`^^99 o^
+`^^f3 U^
+`^^9e u^
+`^^80 A"
+`^^8a a"
+`^^e8 E"
+`^^91 e"
+`^^ec I"
+`^^95 i"
+`^^85 O"
+`^^9a o"
+`^^86 U"
+`^^9f u"
+`^^82 C/
+`^^8d c/
+
diff --git a/language/typingtex/Convert-RaichleHacked.dir/mac2fr7g.tbl b/language/typingtex/Convert-RaichleHacked.dir/mac2fr7g.tbl
new file mode 100644
index 0000000000..6cbce70e3c
--- /dev/null
+++ b/language/typingtex/Convert-RaichleHacked.dir/mac2fr7g.tbl
@@ -0,0 +1,57 @@
+
+%%% mac2fr7g.tbl table for conversion
+ %% FROM: Mac eight bit French TeX typing
+ %% TO: Succinct French typing with accents on left.
+
+%%% This file is selected and called by cv.cfg
+ %% for use by cv.tex (B. Raichle's convert.tex revised).
+
+%%% INPUT Allows only Mac (accented) letters for French
+ %% in the eight bit range 128-255 ---
+ %% coded as for Mac Times.
+ %% If you want more, please
+ %% extend this table, or better load another table
+ %% before this one as indicated in cv.cfg.
+
+%% OUTPUT Succinct (and readable)
+%% 7bit style with accents on left.
+%% Directly composable by TeX using email-fr.sty.
+
+%%% HEADER material will be added at opening of output file
+ %% \def\unbrace#1{#1} %% serves to get rid of braces before they
+ %% have a chance to damage kerning. Temporary measure.
+
+%%% The first entry is the Hex code for the Mac
+ %% the second is an asci substitution text.
+
+`^^83 'E
+`^^8e 'e
+`^^cb `A
+`^^88 `a
+`^^e9 `E
+`^^8f `e
+`^^f4 `U
+`^^9d `u
+`^^e5 ^A
+`^^89 ^a
+`^^e6 ^E
+`^^90 ^e
+`^^eb ^I
+`^^94 ^i
+`^^ef ^O
+`^^99 ^o
+`^^f3 ^U
+`^^9e ^u
+`^^80 \"A
+`^^8a \"a
+`^^e8 \"E
+`^^91 \"e
+`^^ec \"I
+`^^95 \"i
+`^^85 \"O
+`^^9a \"o
+`^^86 \"U
+`^^9f \"u
+`^^82 _C
+`^^8d _c
+
diff --git a/language/typingtex/Convert-RaichleHacked.dir/mac2noac.tbl b/language/typingtex/Convert-RaichleHacked.dir/mac2noac.tbl
new file mode 100644
index 0000000000..e2a783c0fc
--- /dev/null
+++ b/language/typingtex/Convert-RaichleHacked.dir/mac2noac.tbl
@@ -0,0 +1,80 @@
+%%% mac2noacc.tbl table for conversion
+ %% FROM: Mac eight bit TeX typing
+ %% TO: ascii with no accents: <eaccute> ==> e ...
+ %% However \'e and all ascii <= 127 is unchanged.
+
+%%% This file is selected and called by configuration file cv.cfg
+ %% for use by cv.tex (B. Raichle's convert.tex revised).
+
+%%% Input allows only Mac (accented) letters
+ %% in the eight-bit range 128-255 ---
+ %% as for Times (without misc characters).
+ %% If you want more, please
+ %% extend this table, and then give it a new name.
+
+%%% The first entry is the Hex code for the Mac
+ %% the second is an ascii substitution text.
+
+%%% Perhaps the conversion of \O, \o, \AA, \aa could be improved.
+
+
+`^^e7 A
+`^^87 a
+`^^83 E
+`^^8e e
+`^^ea I
+`^^92 i
+`^^ee O
+`^^97 o
+`^^f2 U
+`^^9c u
+`^^cb A
+`^^88 a
+`^^e9 E
+`^^8f e
+`^^ed I
+`^^93 i
+`^^f1 O
+`^^98 o
+`^^f4 U
+`^^9d u
+`^^e5 A
+`^^89 a
+`^^e6 E
+`^^90 e
+`^^eb I
+`^^94 i
+`^^ef O
+`^^99 o
+`^^f3 U
+`^^9e u
+`^^80 A
+`^^8a a
+`^^e8 E
+`^^91 e
+`^^ec I
+`^^95 i
+`^^85 O
+`^^9a o
+`^^86 U
+`^^9f u
+`^^d9 Y
+`^^d8 y
+`^^cc A
+`^^8b a
+`^^84 N
+`^^96 n
+`^^cd O
+`^^9b o
+`^^82 C
+`^^8d c
+`^^81 A
+`^^8c a
+`^^ae AE
+`^^be ae
+`^^ce OE
+`^^cf oe
+`^^af O
+`^^bf o
+`^^a7 ss
+
diff --git a/language/typingtex/Convert-RaichleHacked.dir/pc2dek.tbl b/language/typingtex/Convert-RaichleHacked.dir/pc2dek.tbl
new file mode 100644
index 0000000000..bd96d08bd5
--- /dev/null
+++ b/language/typingtex/Convert-RaichleHacked.dir/pc2dek.tbl
@@ -0,0 +1,103 @@
+
+
+
+%%% mac2dek.tbl table for conversion
+ %% FROM: PC eight bit TeX typing (really larger ISO850 character set)
+ %% TO: D.E. Knuth's syntax (normalized).
+
+%%% This file is selected and called by configuration file cv.cfg
+ %% for use by cv.tex (B. Raichle's convert.tex revised).
+
+%%% Input allows ISO850 character set
+ %% in the eight-bit range 128-255 ---
+ %% If you extend or modify this table,
+ %% please give it a new name.
+
+%%% The first entry is the Hex code for the PC
+ %% the second is an ascii substitution text.
+
+
+
+
+`^^80 \c{C}
+`^^81 \"u
+`^^82 \'e
+`^^83 \^a
+`^^84 \"a
+`^^85 \`a
+`^^86 \a{a} %% \aa %% \a is small circle accent
+`^^87 \c{c}
+`^^88 \^e
+`^^89 \"e
+`^^8a \`e
+`^^8b \"{\i}
+`^^8c \^{\i}
+`^^8d \`{\i}
+`^^8e \"A
+`^^8f \a{A} % \AA
+
+`^^90 \'E
+`^^91 \a{e} %%
+`^^92 \a{E} %%
+`^^93 \^o
+`^^94 \"o
+`^^95 \`o
+`^^96 \^u
+`^^97 \`u
+`^^98 \"y
+`^^99 \"O
+`^^9a \"U
+`^^9b \unbrace{\o} %%
+`^^9c \unbrace{\pounds} %%
+`^^9d \unbrace{\O} %%
+
+`^^a0 \'a
+`^^a1 \'{\i}
+`^^a2 \'o
+`^^a3 \'u
+`^^a4 \~n
+`^^a5 \~N
+`^^a6 \b a %%
+`^^a7 \b o
+`^^a8 \unbrace{\questiondown}%%?` %% ??
+`^^ad \unbrace{\exclamdown}%%!` %% !!
+`^^ae \unbrace{\guillemotleft} %% $\scriptstyle\ll$, \<
+`^^af \unbrace{\guillemotright} %% $\scriptstyle\gg$, \>
+
+`^^b5 \'A
+`^^b6 \^A
+`^^b7 \`A
+`^^b8 \unbrace{\copyright}
+`^^bd \unbrace{\cent} %% \leavevmode\hbox{\rm\rlap/c}
+
+`^^c6 \~a
+`^^c7 \'O
+
+`^^d0 \unbrace{\eth} %% Icelandic eth like $\partial$ crossed
+`^^d1 \unbrace{\Eth} %%\rlap{\raise.3ex\hbox{--}}D %% Eth (Icelandic)
+ %%%% Croatian \Dj, but lowercase \dj (a crossed d) is absent from 850.
+`^^d2 \^E
+`^^d3 \"E
+`^^d4 \`E
+`^^d5 \unbrace{\i}
+`^^d6 \'I
+`^^d7 \^I
+`^^d8 \"I
+`^^de \`I
+
+`^^e0 \'O
+`^^e1 \unbrace{\ss}
+`^^e2 \^O
+`^^e3 \`O
+`^^e4 \~o
+`^^e5 \~O
+`^^e7 \unbrace{\thorn} %% thorn
+`^^e8 \unbrace{\Thorn} %% Thorn
+`^^e9 \'U
+`^^ea \^U
+`^^eb \`U
+`^^ec \'y
+`^^ed \'Y
+
+`^^f4 \unbrace{\paragraph} %% <paragraph>, \P
+`^^f5 \unbrace{\S} %% <section>, \section
diff --git a/language/typingtex/Convert-RaichleHacked.dir/pc2fr7d.tbl b/language/typingtex/Convert-RaichleHacked.dir/pc2fr7d.tbl
new file mode 100644
index 0000000000..76b723a1dd
--- /dev/null
+++ b/language/typingtex/Convert-RaichleHacked.dir/pc2fr7d.tbl
@@ -0,0 +1,65 @@
+
+%%% pc2fr7d.tbl
+ %% table for conversion using cv.tex
+ %% (convert.tex version 1 of B. Raichle modified)
+ %% FROM: Eight bit French TeX typing on PC with "850" encoding
+ %% TO: Succinct French typing with accents on right.
+
+%%% This file is selected and called by cv.cfg
+ %% for use by cv.tex (B. Raichle's convert.tex revised).
+
+%%% INPUT Allows only Mac (accented) letters for French
+ %% in the eight bit range 128-255 ---
+ %% coded as for Mac Times.
+ %% If you want more, please
+ %% extend this table, or better load another table
+ %% before this one as indicated in cv.cfg.
+
+%%% OUTPUT Succinct (and readable)
+%% 7bit style with accents on right.
+%% To get output for email that is directly
+%% composable by TeX using email-fr.sty
+%% use accents on left style instead.
+
+%%% HEADER material will be added at opening of output file
+ %% \def\unbrace#1{#1} %% serves to get rid of braces before they
+ %% have a chance to damage kerning. Temporary measure.
+
+%%% The first entry is the Hex code for the Mac
+ %% the second is an asci substitution text.
+
+
+
+`^^80 C/
+`^^81 u"
+`^^82 e'
+`^^83 a^
+`^^84 a"
+`^^85 a`
+`^^87 c/
+`^^88 e^
+`^^89 e"
+`^^8a e`
+`^^8b i"
+`^^8c i^
+`^^8e A"
+
+`^^90 E'
+`^^93 o^
+`^^94 o"
+`^^96 u^
+`^^97 u`
+`^^99 O"
+`^^9a U"
+
+`^^b6 A^
+
+`^^d2 E^
+`^^d3 E"
+`^^d4 E`
+`^^d7 I^
+`^^d8 I"
+
+`^^e2 O^
+`^^ea U^
+`^^eb U`
diff --git a/language/typingtex/Convert-RaichleHacked.dir/pc2fr7g.tbl b/language/typingtex/Convert-RaichleHacked.dir/pc2fr7g.tbl
new file mode 100644
index 0000000000..7e79cb4fc2
--- /dev/null
+++ b/language/typingtex/Convert-RaichleHacked.dir/pc2fr7g.tbl
@@ -0,0 +1,61 @@
+
+%%% pc2fr7g.tbl
+ %% table for conversion using cv.tex
+ %% (convert.tex version 1 of B. Raichle modified)
+ %% FROM: Eight bit French TeX typing on PC with "850" encoding
+ %% TO: Succinct French typing with accents on left.
+
+%%% This file is selected and called by cv.cfg
+ %% for use by cv.tex (B. Raichle's convert.tex revised).
+
+%%% INPUT Allows only Mac (accented) letters for French
+ %% in the eight bit range 128-255 ---
+ %% coded as for Mac Times.
+ %% If you want more, please
+ %% extend this table, or better load another table
+ %% before this one as indicated in cv.cfg.
+
+%% OUTPUT Succinct (and readable)
+%% 7bit style with accents on left.
+%% Directly composable by TeX using email-fr.sty.
+
+%%% HEADER material will be added at opening of output file
+ %% \def\unbrace#1{#1} %% serves to get rid of braces before they
+ %% have a chance to damage kerning. Temporary measure.
+
+%%% The first entry is the Hex code for the Mac
+ %% the second is an asci substitution text.
+
+`^^80 _C
+`^^81 \"u
+`^^82 'e
+`^^83 ^a
+`^^84 \"a
+`^^85 `a
+`^^87 _c
+`^^88 ^e
+`^^89 \"e
+`^^8a `e
+`^^8b \"i
+`^^8c ^i
+`^^8e \"A
+
+`^^90 'E
+`^^93 ^o
+`^^94 \"o
+`^^96 ^u
+`^^97 `u
+`^^99 \"O
+`^^9a \"U
+
+`^^b6 ^A
+
+`^^d2 ^E
+`^^d3 \"E
+`^^d4 `E
+`^^d7 ^I
+`^^d8 \"I
+
+`^^e2 ^O
+`^^ea ^U
+`^^eb `U
diff --git a/language/typingtex/Convert-RaichleHacked.dir/pc2noac.tbl b/language/typingtex/Convert-RaichleHacked.dir/pc2noac.tbl
new file mode 100644
index 0000000000..1d6d25129d
--- /dev/null
+++ b/language/typingtex/Convert-RaichleHacked.dir/pc2noac.tbl
@@ -0,0 +1,103 @@
+%%% mac2dek.tbl table for conversion
+ %% FROM: PC eight bit TeX typing (really larger ISO850 character set)
+ %% TO: ascii with no accents: <eaccute> ==> e ...
+ %% However \'e and all ascii <= 127 is unchanged.
+
+%%% This file is selected and called by configuration file cv.cfg
+ %% for use by cv.tex (B. Raichle's convert.tex revised).
+
+%%% Input allows only Mac (accented) letters
+ %% in the eight-bit range 128-255 ---
+ %% as for Times (without misc characters).
+ %% If you want more, please
+ %% extend this table, and then give it a new name.
+
+%%% The first entry is the Hex code for the Mac
+ %% the second is an ascii substitution text.
+
+%%% Perhaps the conversion of \O, \o, \AA, \aa could be improved.
+
+
+
+
+`^^80 C
+`^^81 u
+`^^82 e
+`^^83 a
+`^^84 a
+`^^85 a
+`^^86 a%% \aa %% \a is small circle accent
+`^^87 c
+`^^88 e
+`^^89 e
+`^^8a e
+`^^8b i
+`^^8c i
+`^^8d i
+`^^8e A
+`^^8f A %% \AA
+
+`^^90 E
+`^^91 e %%
+`^^92 E %%
+`^^93 o
+`^^94 o
+`^^95 o
+`^^96 u
+`^^97 u
+`^^98 y
+`^^99 O
+`^^9a U
+`^^9b o %%
+`^^9c (pounds) %%
+`^^9d O %%
+
+`^^a0 a
+`^^a1 i
+`^^a2 o
+`^^a3 u
+`^^a4 n
+`^^a5 N
+`^^a6 a
+`^^a7 o
+`^^a8 ? %%?` %% ??
+`^^ad ! %%?` %% !!
+`^^ae << %%
+`^^af >> %%
+`^^b5 A
+`^^b6 A
+`^^b7 A
+`^^b8 (copyright)
+`^^bd (cent)
+
+`^^c6 a
+`^^c7 O
+
+`^^d0 (eth) %% Icelandic eth like $\partial$ crossed
+`^^d1 (Eth) %%\rlap{\raise.3ex\hbox{--}}D %% Eth (Icelandic)
+ %%%% Croatian \Dj, but lowercase \dj (a crossed d) is absent from 850.
+`^^d2 E
+`^^d3 E
+`^^d4 E
+`^^d5 i
+`^^d6 I
+`^^d7 I
+`^^d8 I
+`^^de I
+
+`^^e0 O
+`^^e1 ss
+`^^e2 O
+`^^e3 O
+`^^e4 o
+`^^e5 O
+`^^e7 (thorn) %% thorn
+`^^e8 (Thorn) %% Thorn
+`^^e9 U
+`^^ea U
+`^^eb U
+`^^ec y
+`^^ed Y
+
+`^^f4 (paragraph) %% <paragraph>, \P
+`^^f5 (section) %% <section>, \section
diff --git a/language/typingtex/CorkNormMacTyping-cpt.hqx b/language/typingtex/CorkNormMacTyping-cpt.hqx
new file mode 100644
index 0000000000..972f803705
--- /dev/null
+++ b/language/typingtex/CorkNormMacTyping-cpt.hqx
@@ -0,0 +1,579 @@
+(This file must be converted with BinHex 4.0)
+:&80[FQY1Eh*Y6@&M9(P`D@jR,@0`G!"338083e"$9!!!!!"VZ!!!!!#`@J%"RP!
+!!'T#J%CfCfGQKRD)CiL)LCL(L*K)L*QALAH)GhQDUCQ*Q*LCGTH(QCHSL(HTKjH
+CU)L*LAD(KUQRQ)Q(UAL(QDL)L)ThHTUCUBUUUUUUUUUUUTQ*QDU*LCQ*QUUSUT!
+!UUUUQCQCQTQBUSUTQBUCQDLCUUUTQDUTQ*QUUTUDUUUSQDU+Tb!!!L0eCRG@9fF
+!!!"RGhG`!!!!F!F!!!"J"`"`C`Ki"4BL8h8'L!!'"`3eF'F!!!!!!!!!!!L!K#3
+!5IiN)9B")B%-2%MME@r`0G(A8pRV,qPJDhBkbS)cXF#pdeeED)"GUX(3f`0+bSh
+Q,eI,!*PidJf%!59,iiJdL489%L%QA+P906+P9@(L8*%*%`!N*@(L6#)-"a8N!j3
+!4K%-K-kVBkhhI[1RkcheleGTV+@dTi'cfA)qYQSDV1ClKqVb@Cp(Mlr"KIHpRkr
+U2Deh8`d'Kf'GjQE(QTNQY$p1cZAVi@'@VFa#&P*il23KSE2Nq8pYlIPH@jH'IjJ
+Dpe1efp$TD'(L6kQ41pr3P8+ZKPX[Q11Kd0eSZHk$RqNpeDp(QqGSkLfdfRk)Qh,
+FVdh-!iXkqjZi@rZCqNpab'Md[J@0KFFjC6BmfSi@0H(#`VG#A#bHh#d8F")+jM)
+,QleD1(YD25hQJd0`[)!i4MZSaMMBaKff,kNIBMKiP63[1cfZ6KN0[hhXaiNBplr
+qI[IV!MY!4afdf-9frJK-a`"22p$aN!!bZapCADV8j+14k@2R4i8BpMqfIZILmE'
+1E!jhqUEh"mfH)KM1f!,1e@e#KY`&6*jNPS39H'X9fVCVNGa',dZKBakba@C#9,Q
+9A'FE*bGR85-V8ir+C&ZrG0$c(,jM2fHAaf5VCY#I9ic06Tq@d&PMFlBcBhM$e+e
+Di6)C+'9MA8[5[IU8r@[[kDrZ0Kh9rrM!qaXGpJrmfIrYTpqMi9VL@hj,Iap*m+i
+q(FqAT[MhAbE[p1RrCU2SeeC'ZN9X+Q-ZPkH$pfMiYhmq-Z'CK1M88I$YZ"Eq4Fq
+CGrUTIZTra[[A[rmi2rB9%R23UilLPqrBIf[rp8IaA(jlRcEIXY4p1qbR8CADIKM
+*KAJH[,bK4m'fr(ErQZI+Zr2THM6p@qrRIrh`IDKH5CSe&98Zd[IUkhGdqfkIYpI
+h1`lZrq[JICf2fYPhQ$pcDIJSi9Vm$4GEEI"dRBA(a,RifQq4GI+k,jPhml8I5M9
+5-c#I'95rK6rPIIe[rpi2&fIhU2L@hjEIbERp&hq[6r3M+Nj3DbR8Ze[H(6hQaqh
+XZm`m1ehpYeeem[S[QaR3K,k0,V#S&K5SJ%8ZS%R'kJ%9*&VV55kl3AAGkcUZX0e
+Bp)jl2fI5hq$U8ZYGVY"UXlCE$UAlT'LQ!DJB"[ZGk(T$J'CY-haqVj!!X-jb269
+r*EHjZpUQ!CV4mcYZDjbid[0cBlKjlKGQ[GU0E+,A0hU8Dkl4Q,A'PISYkH,l'kb
+S'Z((Gj6L#NGl$[Sq"(XahG+b8BhRX`S30Rp5(Fj#!(i6B`E0ILqK`H$'TR9HrM[
+Zbi@2NFEf082Mq1bq@(Z2*aRehR5UbS0LmDAf'4Qpr*M-F'YVX(aI(mMbI,#a[a&
+Z&'4(`SXSYjdUK84Rq9jRM5ij#-H*iBa0rE"M('"V'`4p9N!+@f$+SDZ-q-I84V5
+r2Z`C#Al+TIUcM(1r9dl3CE1f@0R[qr9FR'Qr9eBdY$6M%+k6bM[QQDGH'41,+i8
+VN8*6abb6@0Z(5CETET1F2KKm)2L%CFQTK)M8aUC08"LVSiGYee,YDHmM9bE!#%h
+@lV4F(Alh5EQ-f6C!3Q8F,Rq[TGTdrEaQ$FmIAi'jl[Fm$epl#',Lm@`i[+N%B"(
+&X-A&CNRG5-A&md!K#-)JJ"(,q-[IClLECJ+bd0A#4SlAS0-#((h9[Dh!#+q'&#&
+i2`+CK`RAN!#AQJ&e1%8@Vfd,hLH$$$3-l5&lkA@icRX#PX,fQIpHCGf0eBN*!!!
+!J%GQD)QDUBL*ZiQ*USU,LE"`QBURL)PjDAGjJ*QRLTZBPjGhLCLDH)ZDL(HDQD#
+lQC@'GBH&Q@CPD9CPF(LSQ`YjL3#D!!ZiF*D&Zf"UQE#iLJ#VQUZh#T!!UJZj!*Q
+`#VZDUl!+F,ZJQ,Z`#,#J!,QDZUQJZjHSS!Z`U!#CUjQTZ!m!!L0%499RKRH*L'N
+*!!Nb-d499@9PCACQCQCRGhCRH(LAH(L(LCN)U+QCQ)H3!)UTUTS!N!!!LT!!!)#
+J!*!!U!N!#!N*K$!!%q9kd)EF!5(X`KYX(VX(+NYq9Jh*CDp[!Kj[-U8`&[QHREj
+h`HReGaPfDdZI&S4q2NbcH9ipU@HEaq(&@Uh)p++N"CX-h,m60hS!S+qrKZi3rIi
+3#fdqamRpheB3q4fN)EMcqiaD308@I0Db+q4Emd!bPJNcEEHN98YT#&5(Tp(JIG)
+%!5l2`r,#5HEc0PmS#VEB2BC&UeAM`H$)!,Pk9ENa@G#-"RH`q0XH(,CLV5J9lUT
+$B`*P4%Y+!8#(J3m"&,fG,FGAm[9r06l@Ph02[pKbkIYS+A!mM%Fp'-i'"J!2B'&
+ej"J%'cT3q9JHJ5ThS![CH(#(Bp3J5RlUcirc(BIei(jDIIe2-KL3!1Y`0[JGl$H
+3!+P1+TbrM%dBq"V`ff0pQ%1C#'j*HfHbj%H6ElE`Um8PR&ha9lhk@"jh1pMFr1+
+5e2YrYB1E(iQ$,2FY6h-(&amI'UiZ09a-EIiRFEi#lDIdIa)R`B4e3,qEcrd`KcE
+ZfK$UGarYehmrc)I(!H)%f&DaamA%pXTTk2IpN8hZdmRQl@lm2l2i)V[`pTU4AUH
+GR9iU,-XeL1J+PmqLeI#Td"8k2-SiFYr2MScm+1aDVbbAFRXF5d#(4LkQTd+A!"b
+k(aIjq6r6cEZqp#EUB[hrpq*d)GH$TXJ"0L$aTBZ0r`KjdS)HGKc)E@llrU3LZqr
+q'%9lBG#$qRR8jq#91VI2pMU8[-jILpC$V38L"+PDa0mhl@GFNVbA)T*SlGkPd[%
+#2%bph-6,4YEh`rhrVLSL)DG&rbQbr9e2Vi21e9-ZaN6BTNiQhYBYhCkF1&Cp$S3
+Z65qKj%-qHYFNPXkReN'Z-3pQ)GL(!GVe66K(FS"`Yh)V1I&0Rb@iN!"Pcp``e3i
+H2l2j(6Q*XA%eFM4p(er1PNQ[8raIcCmGZMN5fEp`!K#i(BDHZ!EERNdE[9m[m%3
+$P&H1M4[aeVNB8`1E4@V1&(EZ8@SL+pTE36fJ2JYqTpF+ZL!9`bfRDhdjCjEMQ"L
+ScHEGrrcZmjp,#VjHTGTrQfrL9D-U1I5SLRZ"VG&UDAMep2hE"3+1Ld*[jEFGRd2
+Amkj4[bJr)$@iVP"AK''Ab`UUYNRK&@*jVe6Ci63V`k*+j5+i))Y)3!pPC+U"LU(
+LhHVf[Ja@E-PZM`)TSUm9Lrad8Zh9Sm)["@B&(0F8m1p5Qqb#5dQ9#-3Vcfk!d+[
+*@LZ9D-Zc4(edB39a,K-T(2F+[mJ`2FE89RBDile2lPiZTBhHF`'N$CjEI*`bdUD
+-2e8jkh4@#F9VQRlTD)!6*b!mm-RXS(CY2ALYfj0#b4HX`a6k9kRhfLk(#2AV5c!
+')hNPmSR9Sb8IBB95e`d@@b9f%@lBQV%`Fe(8l,mIjqldQS8L+GbjLiQX8+dBkTI
+T`0F2dh)IT5lIr[a09MXXZZ9TqhkT,pb@j&AMX4f3!,U'2VLT4&I-1`d&6[NM%NS
+J,AYLeL)2$UeAdA[PrQXK*3p#-CPP6j!!ITE!VN""$JJf%K+i(i2M6!''U89akHL
+p5kNMG"0D@aD#3FF)ce0epA%jHeHQ)bBZ*dECRIk[m'&@SMp)$[9LrPpIcY'L1YI
+VaAd-YmQ,$[ah,k50YaLiZhIES@[ejCVDd"cjle2Pqb$cE-&Jqba&GKUILmQHh@R
+#"khldpUe(0@L%+Y9j,V-`NPZfpG9UjU&3Tff6ACiD4HlbD-4Df9Q4*!!0D[%*RG
+'3525Di6bHA1'A&S*cJPRPXY9V!6mP!XN'ViJ`ZP)6L,&M4R&l[aIk26JCk(9!bh
+"Uc,VVadEiY0SDTGV)MPp%DA0l@PXLSkjKV-mPHp6i'Eb![KCXQE0%l`SYSL@PI!
+H&8eKT-GlBF$iSUeD1b%dNd!hIJCZUk8qM6rj-dpH1i@RDdE*5)-lT(S'fVKR(F@
+()HFq@c@E65F6aM!FX@6(TZZHJ'26ekdJMG9e1IY&jfF`-TUHIp4#!V8UlGfCba9
+$CA)lISieQHN&#D+b,l9ZiFXG@R@l22X@eAUH9aXFePiZ0KdGr(CM5UA(`k-A%!%
+!8aGm3pMElHBD'-)8Bb9Lr"ZD(GXd0+,e[P@`pk`)+GlNpb4rh@mSb2TCI&p)B$j
+[LhDIHrZ!+I3qMPm@qS(E[Jh`Q&C4m!EcU['UN!"J1KCcSJcac@fmV$2GrVp*PI`
+iJkY@MM'PkhbN2&(G*21'(PMTakAH+ZEF#R#NXL`)8a'q%65M#Y-C&Q,3$Y`lLp8
+qArLPm-E&e&fCV&$haIM(0fqbV!amNX%eLZdGM9`a+ja#qj'KaYcE'3YRm93h25T
+mhT48*94Z`KJK*I60a[,qY`CE0cYmV)-*1(,SacAp89GJSh`TP#+CI@1YELafm[2
+NZDY@rQ-I1"+%I)R[8U-%98$1MA%U`dX0BCId)TCX3Y9LR0"!MGaj4Ja[k1$0%+i
+D-Q[%5&Ue54-TE!"AXiihXrR0QTG&MHq40N4S!0#pZHB9CU[2FSHCcF$%TU-cEMN
+jjml1G9ER8UpD-dcP[[+ClNTpRh'dUDQBHk1,C##"T+[1M0*@0X1UV$1fG!)fp!S
+0`5@P5pECY15Qfp6r9l3CGBN1m-kd8(S6U3H[c6eej'UadPQNd*,-BQ9596FpTi[
+8CN5c'86,$J`)9c2QeX@*%TckHZBc5mHj)P8`9#Hc),KJFcdP"RqYP4aCjJcmq2P
+@aXbEiVI*h(kHcm0eLi2@"LII(l@AHZrKr@&hZdqPQQdle-Fa6jrb&MM91@34cBm
+B2ZGf3Vf,64fJq-G19pDk[DJlV%b,Y2Bm!1Ch@*PBB`hN1PMYR'[P`Kda%VhUHRb
+MTPd+r+Y&d@YRMRN9R)&&&'YjFmS5+5cS9q1-TK90NZcIZiVr+[ZS9$pqrHkCk#j
+0N!$TK+4CTk[FM[[5Tqppi&2*iUYR)[@%qfRVL@)eFEbK9GD@AZYa'I*Y+`jB)h9
+QC43V"#XQ@SNYpMZFSEJ6#TQMffFcCaemZI#"R'er3QLX#5!DX!-qFe9bFUD#dD8
+TVNLcA(C[8ZRpT8j4Ndr0hc-KHTXHZk((ladr@`0b2h1lSeGeLm'l5kI1&M,Bl81
+Mh$lVZN$flYa6mJZq`blPL!A,SRTi!j&lab$iJ6M13*1NIe-G8KG6RlH%2ii3kcr
+)r)Nrb*KEe[j$DVR,%d"1kkArj5jH`pj18Z-jbP@9fGUe,i2L&&mDphihP$AcAS(
+dHV*fZ"IejNNY49f*KeLUA"Hi)Z'CUDiZi6#-j3bZ'cj[hjDc9jfTc`$d#RYKL)N
+jmH'"Q)V"BPkhZ*HC`E[9h[p6@6QTcrf'-,5GBANhUIfTRYkbj4T1Lc9JqGciLB&
+MmN*5eQ5($"TC'jl4K$SM9+G6&kTrKf!"'KTkpR6eam#!@CaC!UjH4-"Ph,Z)GdH
+2*p1+DDk2BXEa"HiL-SfZr1blN@)MhSpq(S(LNGDJe,5fNN+D5cMF)YRD+lpJkD#
+SM3eIimPNF`i%@YBL@(f9G+*Ca%ejLNA4bSbL3Z"Ti[I'i&Y'Ldpei2!(lqM@h`j
+QGEaL"GU3!#m0S`lap!m#0Cc@RrEEHpm(X8aeb+kS'"E49C%X("C4eBMZ!4!PfcR
+C5&e9KP[f&EI%MDSm,8K![fdMMr4,1@%CmXjda*Ee4Rc5Lb"BDG"0K0mCr#E@NQ$
+ppR(T0#Eb(d*N53@)QZeq(E3LRVA`m"dGeK4K5FCqrL"6$$*pLTT,"h&LI1`c*&l
+E3`6LC3i3(@J8+$aeGJ!bQAm9MBp,S5fBr+GN[4E0I*LV4MF'rT!![5!SimfRlS"
+JVmC`,j0%pLZ+R,r*PXk!EJb-V6lR&+NVjmErPp*2$r#,K-)kj"hh-#5bZ+YUAh[
+2Fi"#VEYI"5VBp("TJ1Nj@`9Im0+JUMGG2h3F6pBLi#rF-EN91q%B&*-YPN8E%9B
+JiTkA4'X0D&TrBcZe('IYU,1aYbdX#5Tf@pXMZS2H3jB)JYF6pT,KCUemc@*X%X'
+"(E9T&m2Mm3'Gjid"UNd,DEe2rcT("ih'!,KNB8G#GF26iHXJlqaE1h9(8l246I)
+1aXic,RVCpN6p(PQSE,cbmcXj[qY&Il'VThFmBYfV,ii(F9HVK2GN'MIYVBclAF(
+b6b6cC@I4(PURH2KRb@Yck'J$!Em!Zm`[k(5b!A&0S*cdR@-TVR%NV5eiNkX2"R(
+i`QYmk(phdmc-L'h&8V10*'IXC(CX4-q$q3*T,Bm"Fl1lfM[Xl*c-cLBZ,9llKC[
+%bmhR3rYh`p(+1pDf9`r4qSIrcdAAR,5qL2-@Z!h6K5I[r42clJ[28!mkbhRLFmq
+UEcc$HIH0qrLIriIRlkY,mIQmcV(cpC91RrCf2%!+h)"Qabq$a-d!cIjHENGm!4`
+F[k'AP!%FA`Z,Pj)"(M6$p0J%H6[H$`b+0(+m2KB`C&c+I6k[9$11YTrS!)K#URj
+1)8K$Z6k*kD![Zi92cql"3-pD&6p'h8$-$DJ'EQ%1VeF''"fN+RrAmN-"!Cp!)lr
+l#N3Cer`!'GDI4("KmR@!N[J!!%)!!*!!UJF!"+S!!!!!!!!!!%#SK`H)!'GTGSP
+iQ*U!TkUBKhL+UDPiN!#DQ(N+UE"3X)4PC'CeQ9C9D&49DBH("J!)J")!!L-d99C
+SCiGjLDU3!!!+#3!+*M0%4&9@9Q9@CQCfCiGhGSL(LSH*Q+L)QBQ!S!#3!!S*!+S
+*UJ!*UZ12V[`fbaM9lT4baXYXT2#2RMVr'f9Pd12jI2``UfbfA@Dl+jBfAhG'MbF
+h0#VIIVedRMd4jSlXB9GUJq24j1C!I5cicMd4qVRjd$qpJ3m[QmS#((Rcji9ETB@
+ADThBS0)JDkm[MmHMbmb%+rI2$APEEKPD4b6-"(GIZPXRGPYdc`S5'!EIdD)9Dll
+mEE,Tpp9QX"q,!hrIQL%-T9KY!LYX[3'kl1%+[hXeAr[ZRG+h(Z*d#TUJ(e)J%)F
+FHQr+l'H!1drhV)-Ua3$ZJM4m#636J`AG!,6LeSVQ&QcYaTqeQiJq1kh+NG%pX+Y
+8pG8Y@9hJdGi"'q9eFiq$4(6h4dF$![q5L2%,96([!)IK+mXpS9p44Tld%eIE,$q
+RPkH$BBSk$(NjJ'%,[((m3dPF`l1Zm+AfDGI4AYdr$4j)L81MbP1d$1,BCB%D0K)
+,DS5D#EB5h6aXa!5`q`1jm[Rr-JAq!I@FY4KcdGrUZV[e#'b6,YP'i6CQ)#iII(G
+IPK(f5VMbm[,(fAkTaeFNpZkfq`3eXYYLBh4UalCXM`&UDNPdGk#4&N"eL%'`+aS
+a4"KHlHA%jDVC84cP#'Ml!ZA%N!"*N6'Si#+R%(#dk`"3G'"hhj5eF2"Si-(hNhB
+XI'MqQJ#TSd---@l#&0CFjfE-k!aJMHMb%fD2$qRPdX$FpbEAr'jJ0IiI1FR`26e
+3UV&Ymm&US,#S[rLq%h3M*L)m)55qMqCbKaPB)JQ3!%rK5rCXTCq"U3@&lrZZa`[
+eC9R-4`,GEK''A`)Y-CADTBDV+*RF"9k0ppQ%G31CY)!(3C9FN`#kC@#Xi(-ilje
+ic"fe6JL"hFNk#UFL*GHX%m#G%AY!iEdURG'VXRrl[iCip8m[K'@4Qp(GKITYUpd
+pT-N`1+"M"U[E1'YGF#PcDHCaAT!!Y")b(XdE,91q)DKXfJ3GA6bT[D#6ar59eeP
+)IkPK+f@h6IP4SN0PR-4SiKX89-ic&J"KC,(1)XaRVec"eF(%GdmX3R80CKDrE6j
+'%&Pf0p1h-@(`Q(i358M@%6Va"c,'!&@D`q`A5iKk'!2NU8XfA%B5$E2SB)reGq!
+"Qkp#TRMdT!daI[Y$(hh&93kaL-)5B31j"$9[RR@#)JPkV3Q*(10q-V3`!0l8S)b
+#P"FPGe*@*-%#Kk9cE)2+1@5NqiXi*d,*X3'S!rB"S'S$0%*BL"6i`i$,GXJ"K@C
+STY@93V[flJKHN!!9(-N*D)R9ci-5ahG%(c-caBiE@AGPpYq!0Z4+&%ZAZ#KIVP5
+XGT+01H$%FY`8DZ9!AA9SIAb*D!imcUXT53*aK-blefA#LJ5HZf@q`6E5jVhj"C!
+!4K!b4FD&LkqdX8h%m`%51EBNH00NkU5aT8Y8"K5mKUif!fFD2U-rAIF,[9ZleK4
+bV#@eSLh*)80(2!+5$'6k(L%XjL@TbSM+cCP`GT3FPS"p,CiPNhk&cKVeAh9ZB+C
+#8LBeZfrTZ$Eef#ar2#(@eL'qEM$)-8,ZA$"ePX4rK+i4YHAaamAX[ZNPf[p4*@'
+MbCSrjRG03PQMSjJ"!&0(1CCq6RmHC#X$ZYM`J#aar%KDTh8-$4C4pC'2QmFI4rp
+k[bl2dJ!ErcrT"8I&k`K0DQ)"EmmrYcN'!Y&HamZD*,aMDXUYM2i#b,fQjbRF`aH
+C,TfY9mB*GUU(!6FPP`VF,SJaBLD-Lde&f"jPh()Sc&&'&"TU)&M&UH(dQ0a99%$
++U$U[QJ"Fk2reRFqfJ$k1#@*q)!S4l5j6aU5[@"Cp29k"q`S@FAH-c`D63MGFM2b
+R6eDV-649bG)VHFXl4E%'L$@,HbaUHb3[jPN@jdhM+,ca$d#Y%HP4qH%LV0!9k)R
+D,$hX#Nfc-FcHTPJ+N!#jBZTbXi@41Tkf'VVm#kkUL0(AQkC6bqEi@@VYX@aQhh2
+kJ##"P+Z*R0J)9cT`1Cp$Ri13!1l*8$9)i+,a"ff(DKS@"(,"jNJ[RHmZmHmHb`k
+DR4Y-B'N524#2A*6d&BaJpirVHrN#HC)AkFE'9,bZX'*#F!Lb53`kKkGaqqIG6J&
+mCmjHmTdUk$TfGlp$!KhHXcXi`RZ,p([C90hY$D[$cHJZ1!4eCKQ2Bmd(JG"pP[G
+Z1N+)MU(+G&"5E+"2hjAK#l,YPZNll4X8qc0iTGb4j'cJl8Qr[2$Xp(T*'kIbA(%
+5`#A#e)DYq1*L+,l)1qIfU`k4f-fS'TiXe`Z0UKmA&ICVGM55EcIIPb!X$MpX`PY
+%q`dqfF&iRBj&(J4a5R'`i!QTbGf,mfF6HRiIlH%0GSpC&cS3Rj+))+[$j[A(a8P
+PV4hFb1f9Qram[Rp(MHSM05i%5%iK#4dfFYMc$'[GXCr!'3q8B1#Lp+GEbXLcT(8
+34U(&PUXr)B4M6`p@%K'hHm6qfJ$GlMQPJ3RX0j!!pVqhB5hZ'HYK$Si8dr8S%i,
+KMBdCJp!`@hXdVf!4A!#$cC!!6XKGi+B@*ImbVMSrM2!ALkE2M)cGi$53!"&4V9T
+1E'elb&A#rFRdCCp-'Zbj[`ND'BNCTXZ'r36-3F0L,PB3P3Y$mj8Yc'&RlkJ&HG6
+ccMYb3%eIrMj[jP+eAZF"RXE-AMI!QSeGU(be$TXp"2Hj6YJ5(`'1pp25YQC)jR*
+G(ji+C1IJIGT*--k0a[b,"kVmMR'PiNG@&iTk`01`Q`M)N!!l*0GQ"m9,Cr"S4qj
+p#!8dhY&"p'VC*)@Zc8S6B4hE6ZbL2mNf2BME4FHV"XjfbB)hEL%3#15B`RAFRXq
+KDGHef@MIX[ZRqc`HKlN,AE+ZBjD2`EkF"1C9S3)GZ@fdeHlElYJEqM`SLDkTACE
+U(mH[`SlValXN0$`00c!"ajG29F%pk#Z!cSAIQcl1T(T'c#-!TRlk)hjR1a,FaT!
+!Ah(lGeN%3,Y,pF3ERqi80H3``Q!@Z(VHHKMX21N4F3%i*0r',%+c$fGbq(,ABY$
+8p(MY-,4%jY*Q3FA`%`YB4P#&LHk%p&8%Sa(HUYjJfH@Z$FX&FSGJKm,'raFhh01
+[jjm5Dr(-eR%j21m-5er3r5HcNE%Rf1"RbfE!6cPH(,`'A)lI!#jB$p1$m``r#bZ
+mIkA(rH9f`C!!(&a,r`r&m[Rr(VN1(!4Iff6dcZfbZ(pJL(G-SrE(drRdpIAq'M4
+Rp2hGRiHVX![qKRrJ@dMpX!$q+V6h6!!!!)!fGfGRGiGhHAKiL)QBKiQ(@CQCKjP
+iL)L+UCQ)LCL)QRH(PiU(Q*Q(UBH'UTKjLDPhTjD)TjL)GkTfGjUSHCLDL(UDQBG
+kL)H)UTQ+TUU+QTUUQ*UUUTQUQUU!QTUULUUDQTUUUDUULUQCUUU*USQULTUUQCQ
+UUCUUUTUUQDUDL#!!!64P9'G38'!!!!!!!!!!!!!!!!F!!!"J"`"`!!!!"3d54&B
+!CJ!!!!!'!!"3L*3%TH4%6!*(8d8829LE3iX81*&$a)SGk$HjLKfm80e&$Y)Qj$8
+B&hIANkd[m$CAP%-GPX,hCl5rl$!XSh'*6Y$H9l[5i5#*P0Ell@a[Y6'qk50Y%hH
+jU0l*'pbXBrPa0aq0'2imBr!M(hi0h8Br64Mc)hRKa0hR$MHH"'mlq0hfF6GhX)h
+@PMGG"'kc-6FEdSa[4M'iNBh$"[G4M@-Bh0aLh86F@jM&d-BZBM&b%6Gcb)h1MMF
+j11fi%6Hf-TiTKP*aB-dTl1q[m#IK5A&X%kh[2'U-26p+#TGATCPaYCq$1fJ0dPA
+V%d$$Rl@Ie&RDA(*$i@b9@L((fNiH5FlSZH1H5iLVdT,9kjASfdLKj+FRNT56-bJ
+D9+SU+9&(-Pbk5NPbkAFBPC+L96!5*Hia+C!!JbFD5"bX"'h3C&0lHIef`pVXIFH
+j[1`X[DAH(1`0VJjVcqCMAmlRI0mlRZBir0hq&&llDUfIAqTXYT'NdepR1MTj0,6
+8GFAe4R1AXBcHBVUq)cp(QFl%DE3HXpEcr3G$SG&'Mk)j6eIBlDXkbXh'*98NUSp
+e@5kbTV-abpIQBkQikA8DRerXZUY2BmeTl1jYGCVYDME3p$e[4$M3@0[0LfpK9G2
+dh1DVU2Xjl0k[efITj1NBX-pBPKQkl6*BCpqX,*L`0JX&l"EcICUX28eA8A@NdfV
+Ff!X**1jNNNUj*)i2*mb6qdKlG@AAaHabXC,EIAp16rNNR$j&9mc[K(C#16XUH54
+b[r+4R+!6bIfrG8-X+h)f'[k[+5C2V*1,*qQ56JIXUXEGmY**c3FqaVhGJrq(QSC
+$JJ@SerBNKYJ9695E*C)&FdeFl8[*b6Xj*(fG*LYEQ-MNTFbQTH9jDMbZJST@AT+
+h,C0epTTZLd9ISp"br+C5ZTkbUUFKc049CM5CqVcQHTj,TRNVfVLQM+4Pj,#lrGH
+I(RHIHqKXrPAhcErr1"mqIp$#rlYIriIe,2l9TL@[LfhiqRh1VplEq4V-Hihdhp@
+ZmUjS@'4NX*9G&**-ZriiAdl2lNhi%Nb1BLSNSV2`lAm&Ya,ImdhpGhjFlq9lk0r
+k@&rk++McX9-RChIlllqprrUcqhUr'Yrcfha,RiGlPZ[bq(pD5MLa$eeG9PRi9Vp
+qfr&Eq20mQlimlcVhqPrrM#p5,UMTc)U@llUmq4ehGcZ$XINl2jGphYrml!lqIp(
+"i@&i'(p@cfpTl[THdYIHG2Lk[G@qmeQpZ2IDhYjZrZIK58XVQ)UT*Ghr#Gr1prV
+Irl`[9f[JfIL@[iEEmP[qLEaYGm'5A4jBc+SZrMARQcZmRr5`H&Z0aDIHYHeZ2Ik
+hZ*+Kjf+,rd26QHU#Xa'SL9Gl1pRJbYe9TUGB#-c%TAp0*8pVe8EH)ZSMM48iXYm
+lZ!!!!)"(GQCRCjGQH'L)QCQ)L)LA5CQBTiQAQ(L+QDL)LCQ)U(H(KjQ(Q)KhQRD
+AL)L)UTPhQ*DBTjKiGjPhKTU(HUU*Q)QTQTLDUCQDUUUDUUUTQBQUHSQBQCQDQ+U
+3!)UUUUQUQ*USQDQUUCQ)QCUTLDQ+UTUDUCQUQUQ+UUUUUBUDQUBI!!%d"P3(99"
+`!!!!!!!!!!!!!!!!!!"JB!!!!'F!9`d54&9RB!!!!!!!F!!'K#S!Nc13!)93%KF
+@AJqhC3Sc1d!h!iP6[)mrEdTYPZ)8C1,cY[5dRLEfCG@0#aY-$"f&#T&q`k@p[YM
+JG6Jf80VYUaNEaf,Rk5#*FcVHrk@A'CGbG9FG2#24@p+%*Zkl[Z+1$$(9CGBc93U
+6!URb[$KUG(Dmj$V*p2[1eVDlCk,`-K0[mE+[iCUS[TYr#9X)9(4aZXacrTkhNmT
+EF5VpVPV'SjUam(,6*9KSHHX)G4U1(6lhUUQeX13bh#dfSeF06`kIS6GRSDG6f9$
+Kdr4eaP2"--PF%V)9GRIi'$K8Sd,B*ilFm#Xa0&S`9*VFr,SBH&XU1a"[0eYbQJB
+Q&Ki@RXl5K6$i@apDL(XpM4(NF[RH8-iN`K@jmPUjFVc6D43mP+G0+5AU%$'hMZ4
+,NbC3%UYVYTp3%%#5GVYTL%'$M+316`4eD$)6,c#k6TIIkr%fHZkR&k2U2J8F($f
+AZHAjMh@FcHJjR1jM2CVhf"5eYldmkqkD[f(0qpjE-hqaXDZ0h-NC02*V(+mV#`b
+Q6VS3c-MMma#'Jc51XhR-l$2FbFTRR&C94@G92NcjXr+C@Ziq&R3dI1D6RGCUV68
+E[4Hme0VFk[S13XZ5j2SFYBCIh(4FVbR`lLkq$EFr1dh2FMTHDq&Rp$EkIhGA(D-
+9I+PABC23*9jPh9iVUVDeDiZYDUVVp+QV@qRFeEe+IpHhb3DpD1,NICM#2hSH((m
+%HiLH3FC'0ha)6iIrRGjhrU`h@2J(i9FB2D[IIXhqrM+V*[MahIEHIMUM)I5USaV
+FCPFT'-H0M1Vq$*aY6qZGf(Bq0,fr&eIhj%CMj9[1JllbI+m[c5BmFeEcie%Gl&V
+9Z$*Re-ChQHGidZ12M(fI&Lrp"M(LLV1JapNUiYeI%NcqKM1M(e99HdL9Epd'Sam
+QA-UXPN*('jUTa[(5XGNH,Ak[ACl0CA'FCNkZI1Qm9AeR0j6PXc@cR29i6C&E$*4
+Vkr'fHpY0YDq4EH6TZ[YrMA(Qh2Cd2NAAkGAqV@I2[2fklkG(q0ll&phGrhZ"rM"
+qYKEZPl@(rl%qh#[NF[#E'lZjpRiPVq1fr0FHCGHKHHP4rKHrc`2ld[q3!,Z4b-+
+b06Cq,DrNY[+Z21Z[4[26Sq[Hm2!rc5rl#TN4K1M*Xra@[jEEblMp&e`YAmkmrI4
+rPHrd`2pd[E`rY3Nb-`6@d[2hArpX$r9Rq'hi&aqHflE@I4[FMdf5a2ZaN5-DCP9
+AQiehe1NaD2eGIh9pZVr[X$`-(`F,kqbm+P[-6lPReGTeQMq*DpETY[Er(Z1bZHd
+SI*k$jGefZXqK'UN5c&+bmlRAHY4h1&pMCH&YGVDH2DpG3q9d(c)eNM,`P4PfHqZ
+[QhRU8[XaPb*8+L-U-U49"LECl@ekkmlQMZBcC&J%+[T1hdHr[ZmdhB4Uj'C#%bc
+k[RILhQierG4Q2[d--$f1*9D`&C5(13U,bq[F)'Bl5fQNZ33IV&IkT8hVr5KYB3Z
+i3i8*[BF*If`!!)"&99Ch9hKTH'GSHCPTQAQBCRGjQAL+QTTiLCUTL*UCQ'GiH)P
+iLTUDHCL)UjQVUTU)L)QDQDQjUCLBQTU*UCUBChKjLAL+HCQ)LBQVQ+UCUBL*UCU
+DQDUVQUZkUUUjUDQ*L)PjQDUDLBQUZUZVUUUCLCLUU*UUUjQ*U+UTLCQ*Pa`!!54
+&CQGiL*QBQlUkR+`!!,$!!!!!!!!!!!$!3$3e0QGhGhL(L(GhH(L(L*TiGjD'GiC
+hD(QCQ*L(GRL)LBLCQ*QSZCQBLCKjLCQTQUZCQXQRH`V,QUN+L)R+R+Q%)J#I,Y)
+3k`!N25Kqd!f@!XJGPS6SB--$"R4!Q`-'ZiRi28r+d@NkRN1Ek2jA4pESXjmV-p6
+eI6mle29p4'#c0j[1Fid$A[`IKI$'9b%2X!dS@PThrUHpqXKpm[r-12"6P!#Fb!6
+1!%d&MPkI9GC6[rpY&dhbXGP,Tk"Q9HJCbV`'C9i$"NjC``R&J%TJ%j!!!*b3!!6
++SmcQ#0S'H`B"ciZKJ19K$''"iL,2*KiSiXplRef!b[MK,#`K#mmU&M#'2h8*m)C
+V)3XS3UEZ&+%1QrNNKABf--&-![(@U'YTQqTq9eQHkcjHPkEUDD"G20p0rYdB)Xk
+0CJ2mDb*0Cm5k66G2m"ic9PR[JAr3if0lI53Y)9bIKXISkj!!paN+FEh)Bk%qA-K
+K6h1D!cQ)kG(Bl5dKB9E61dDfcY+h$TRk!"CmI+f8)l1ACbApYbX)8,B#R$JhRJ)
+jL,E9*U[T`S9VR#U3!+Z5cYY63cR8d"CBUbG(QZKjk%9YiAa*f(QZKUJ2ZDU*'f!
+,MjGhrcSi6VpMLF1'LZNq2JB0,69N`[$Ea#0-(bpABai9D1rb@5ZCH3Uj1%*D`mI
+JB0P@K0Hl5R&B4hrk,c0$d&1D'2rcp,TqFl[E@+C@AVYP[[9rElQ[cP@(*r'pEX2
+3dpD'N`Z"q$h26h&,9IlpGjrc0l5bREE[Cdke#k`X9bF2&RUZ&T`4E(j(,Hrmr6p
+hMBZ8aZ$P-eJ6Cb6rEpp2Rk0$*CckPlR0IKhP$#b2c-EfVMq2aGpPr0hfNTBYeTY
+cmr1lD'`lll'6Z2"ed+1If2[pr&S84,(CS$EA*khqIKA'e`X+(2HPEhF@*Gbl'pa
+1MXk@iZI*lR&bQXYk@8`r+hB5UYDmG%V39X*#,Br)bf,P-64hQEbPR5jEE3KI3Z'
+-P83&MQ#9FiPlQEMk!4FT0hS5YDRK+qr'$VUd*Fh3P6jQfKb&@(,H[MBhNrbZD[C
+r[Kd0jQ[QaiRbICiV`F5hXjYaIH&d',P-#hiI1mpI9Ulq2@llrrmRl2TI6p$c0$L
+r1[iXlK!LlliIKiZ8`UGjQmREA18bqbfAjq8llNr8k2pRLF$mHNa[Df&Thf5cYcK
+"'l4%D`lfPj(4B0PkRUHVXYPp,r2(G*dR5HAcRQHEQl6M'6IDF-j6Lf'em(`G[hA
+lI!`ZmjMZ,hq9IYp2ZBXRi2plIpfBh'(fr3Hcc@QYZq[EDpV4E,CCcBrRj$T2N9-
+lh'6cXh-K+rGPYAm2`r*mr6peHCZi[ElPVh0p*HqCp6,l,k'P[DQGdGlR2USPGMf
+Ic02FIP4+r(hY,Fkr6IRj6P-VdR5G(crAE,CE,hA1HCjRkk(J-AP#'Zlch1I#9YV
+(P+(CAX1h[XMUlM$[2Cc[M#8TEfqe@@fr+f&YYGEFAYD[lR[-jXGlb(5G*a@GlLM
+cer*M#8TBA1pCLl'Dm#9Kkh,jIclEQq&p6*E,BjRP!PBHXfqBaXE'[K+FILEd*8p
+%UEP"YplMHhcqb!4rq%V&Sp1l5ND*9E*jkj`TBV2RV-CA!PX218X,Hh)5[Ykbf[0
+IFAPD`fAFX5R56XjBj24AmH83La!PFqTFL*9GdR5AYlp6TYPXDZ(Y-lT,1`r'N9K
+UA*X85LA*ZITkhP"+FKE9'%U`4+b+S(cYY1j#UaphE@Z*ZEk'CXZap(,lR6h-,fc
+i(i0rkIlXMUZ*Zr1deVHDrNG[fhNrakhQpMq6N!$rAkH@r"BjVf`NNrIeIAaH8jI
++$lZAh10l(rZDrGXYabJNp,cIc+(i23a[jIH*Vf8lC6prhUI[kpV[XYVY0ZP,Rl[
+ZqIkET1Nq4qRhrLH0rV[mqNR5+h%#Lk!ZD%,U#cY+kD%PB"&JJE1d5cQSS9S4UG$
+,9hLT&S&embdDTf@"a6V,-,"+UFi`+RY898dX5Q,A)Eh#Ub-T&f#CZZ@Ica0G)0h
++QI'N'"4(Vk#!eF"E))G`MLKDXB1Z41SSF@2+`ar#BGTB9ibQ2"Aa*SZj'&Y#fKF
+'Lrb%-ND-0e$P66BjU&k8$1GKcX1IKRiIk3q0$43k1(6`dd00$UiI,Kmf'TKfF1e
+KVSG[$k%2T3fF0V$[iI9Ki82$KpZ(hSIKKim-@(j)EZ(k)IVKqb(lSEb(m)HR$qX
+1"$J`pXV5em@1Lam9T&a8A&aC'+iLZB[H4FV&PiZDLc-9p&m',Ri[p)[LaD5,TBZ
+SLdd@RLqC&edAB4B-@&&KaBN@ZLf-AFaGe&Xi[U4Gr&pD,l%Ar%AhB[qi[a4EH,&
+Lr(&ZS[1Lr4&qZ,dB[iaIcLp5,eS[l4IiLpQ,h)j)jSq'MSam6(aNH4MZ)lQ2NSm
+T(lk2hmGh(QirJ4hmHJMq*(mH25ap0(mU26akL2X)kdH&(mq2%MemId)rSar6MfX
+IIarBMqe(pb2m%IiBr(Mh-IP4qC(Zird4rr4rZMp'2q%ImSr8MpD2r-IXaidNNPI
+*MT+%PR*`mR&bC'5iNb8R*bFT*PT+XQDNcNR`C1HNd%RqNR3bI&Nq2*dFRbC1TNk
+b6VT1aNe8Rcj0K*r[*h8QdNlq6`T2$Nm56aT0a*j-Rj*20Nr2*qZ6cj25NrM*r16
+e*0r*rD6r%R"Ni8X*CCCTCmY#@dPib@T,amZ5Pph,P*IHbjHAQTEf%N8X8iR"!TK
+1LR$j411!STLM!K(Aaem*STJ59i'Uk%J+Ui"b#&H-")K-"+`"-Q'P31!91!eA!+!
+)"jS'B"SaRKTUi(&F$4$a"K-NKK)i$TRi(!"'K5F-!QL#3QSB1QZ%3'4J3'4bI)F
+GX!!j6ZNa9HqL!i4J#1J`r"%Bb%9J'Kd-%"(6A)r)02EH0C4THG$)G3a2"!3%B5,
+"kC!!(Q"L*(d4V"p"#HpY*&B2313m6jMaNQQCi%%#KdbeJl(mEm`BrkXJaLKcB'E
+bpMjr`,DXCUelY,QaL[YTFeQGICJ&QNC5k[-Vp@%9KarF4E'E%m!STjT8I1(VZPq
+(pYGH#X%l!`E@k8"GPPSCD@T3if%G#-X[5al%V[`kc![l'`UcUZ`fYr0cQ"FP1$X
+ZFQV3f'$dXHMXmm61CYR3'KqM2K3lQffh&iAj5!5kS3Vq$X[ZI@q$[)qI4,pMCF$
+fFPj[mE6B`MrKk'1rMlAG&8A)EVIHehXr4crMElV[3a0$P1fp1rPTbckQ8991U!6
+2q9$YIQCME8F2&i(Lll,qK`E$)ifrdIcikHaVZ+mV!Z,fRcrEjfcj$-c9D(0ira1
+&c1$TZ*beIPrfredF-hCCEBIlIEKBFKS1@rfcR[L!IR2UFE`5!FLLPf$01UfbGlr
+hlRfmjDBF*11YZ,QRk1%[1dFTXEh56qpiiVdA'*SmTKp,dXe1@K6S1LGS,UKVm6D
+mE4a0p23MZ0*3`VVU31kk(PXebla!@8@ej2cG[k1`cRFq4j@,8Y!9fGl#&&)4PCZ
+@h0&*D(F[e%-HT)$Grcq`eYcf0@GXEM*d*qMQTmpNlV%[EIKVEl)2CGEX-lIr8Uf
+(i1lr"lA9rjrM[[Zm#PP1mcm-PIi@MYl6krm3PhNYaSpT0Ik26mTbRIr)c[a[frN
+qldQqf2QihUAYThecheTH@e6BCVZF@jaDR+k5Pi@lZpPh2QIrE,CIKrqq,jQ,dQ,
+jRQHEEc,4qRD'%HPK$MlE`FrpVf1dPQ[UXl2mlm$cmKh[qQlqci@llEV-aC@h`G*
+5mMFkhZ,hRVLV(dR5FrdI+qAXYPjHHTC2AX*[Al5Kq2p-r5F6PpcFD2Dd0GmV%mc
+c0CXVl6mTbAPl+mf2PBIImkLEa1Cm6m'`k2S!QjI2k5Pi2*m[dR4mS@3mrIClP-P
+XXN@2rX@(-)QkiIRa[D40m2ClImH(S1"jI+i'(P,6SUGKNm86@pXVEKY*kI"Z!Qe
+,DV&r(NIcG(PJQk[Rqq[GKJeq,GB@Mj'KVIdiRcYjKA&aSlbKVZVdriEhY[B'PZG
+AdPjXI,Xq3`VHPj&,m,%dLE8#EX+NlphlI8pc-BhrQFr1%hqJ6HpBQT5SpB@%*Hq
+41Khf8QUeE$KiZ&P,LmiRc[HGL%l5GTE6pl0ZlM@6DffYK0mK4B6X!*facm06[aq
+LceQka1QUSRAY5dkZIjPlKkbqr2bPcJ@GjXIafh)fQBa[Ea[U)RH4PN6YLLGA#EY
+VDfY-kNh`c#FTIU665CXirVCA#V9E2L,1abPaHc8k'E8hr%fXrHf2i`QDqiU2(jp
+CcpjVHjcm-hP-6Dfp!*R4h*0rdGpH@R9YIR%eV"qIc,hN5EIj&,FjX*QFB6!)G[j
+fEFIRB6%r2hZ2pPX[6BD@%M(ji[+mbpV5h@qp5`h9[XUX8rQpe[Yah[@GM2q0AjV
+FkDEAmMk20qYl(Gkrq'9m[k'qeI*hQ[e)6H6qCQ2hHj`FA6pk5p,IZ[KBh!qcTr%
+j69r)[XpPI+eI5902if0hrUPm'Pj2LBhYl$6F6Pr*brRlhZYp4XXZ2cNi(BjcB%i
+&3eG4`86#QlVM-ACfC954C#%XeHHXc@FbNl,90el!3*SCpP"0"Z[CYbQYM#SS-eV
+)c-(c)4-JK'SCQA!k-#p(!h25'G2Rek$h%a9MC2BbqK1#m%,,NX6-)KFXKa#YX`P
+M0E&$TY[jA#-FBKc1)CA[QK`d+"Z58SFB3dfm,Fi)Z4Kb--R$hCh51@Kc%,`KRq$
+$33d%1KKrV$SL'ATSG4$V)GI$ViGJ3bkZ(cb'2k-1kKhK$(p@(eiIC)BIq@3arLK
+Z)H9$G3r2$p4$$k80m3`rcKrr$qd2m3pQ+)kf11LS4F13!-I'a@dA)QLElZ,+aHq
+LjQ+mLjZ,R)ZHLq(&rV&SBZMLq53`kL,jcN,qYLl3KIqK&p',kF@e)Ar"Lqc&pXK
+Iqr&iNAM4H2&j8AQ4EZ,rb,p8AlBYj&[BYp&r@,J4F',K4`)Aj5cr`dGR(a"$$6M
+iq2*amR(PBq@)BFa(Hajb2RAjKKqG(JapQj!![r5)AHpMm"h#riVZ&hmmIkSrf4q
+K([Bpp(r@2IarhMi-I#065G*0*`c)AH+Nif5T*b%R)bFP*PC1@NjL5lNjZ6R#&rS
+C1LNdFR5%,IbT1UNkZ6jFQS)Am+6@5GV*fmQbNqQ3!,rf*2YbIHNr$*imQ+3[rTF
+KGhdRp*29Nrc*l-RZ5abedYL3!,12Pb%[%5mA,NCEHANCIG5h8[+bqrPZjFe,R*I
+Jbmp,S*HKPq2,dCek@fFA)D@@!hN0*VDXXKYeMbZ+@19CaVh,'jfN$@h9VH[LX9$
+55N&Cp3+VeD,9ZPlY'X!c,MUZ*J%,6V,E0HKd`%,@r31'8G"aPX&!DaEDK4S"m%K
+Pa&eCpD$'JD8B"3NS#-KECFa,9,4Fbj@mKPH%"d4R#dm%6j!!G&BXZ4[e$5VIl8-
+aZRCFHJXfl+GapADAZiUQbB*'1!CGeI3N9ieeEA55G3dYCCkLEB2R6YRJNQ(D1fN
+!i2e+'RK[a13dimKTpXr&V(c[d$15%022Y`1Fh,9Pjl04&%HaKFCU@rMV@&e'[aL
+Q9%lKTTD'PLfd*CUfaKPDekZ6qVJXSMP@[!`E4@41ENV68m'(leKC[X'DR&#MR,f
+SfMBbQ6'`'(CBZHjfY-mQ'GkHVcPA@mi9(DNkiCLb4QXp3cak4C*8hk%)cNH4$if
+bT-TIBpH0I)A602qKB9E'@V$Bakbm[ijer+[&YA4TTFKH@Hced*UN9cdIJ@Ck23m
+P8H#mI1rMcM"l`1ki@0QX[l'$X+X,$@HKJm,eI2e%$2+b2-llh2lh@L`VAS[BpAk
+H02T6p*l0L93jDkEN&8MPC[&m2PBSq1krcIEp216p0q,Vr9qRehUihSk[-BfmdA-
+EbKJA%RhG001SB91deZI[VcN-c,03ThHfp[eFE'd[dp(`20jMJHIemqkh&,MZBZ-
+Rq23`P[0MqRk1jY[Vl0*'iXY6kl2)Qb*Q@1piqTb2ardjfpepD&(iP5Z`)D,#K(N
+2(SELdU6lV4k[Q0&Uk@LX`bD2LZ'4NQQM5VF-R144e0AFhP)-RMJSeGQ!qT0SINE
+FS68i89+GR8$B5%pK"MUi&j5[+'PeqN#l2TpNM(89cL`6YjTE1VK,4Bp$eIAa[mf
+22mrJBrpm1)j+fXF''d`TVDdYYGimqT,GDAX[L"6d)8pEYFP0$MGpc2lIDq9l[k1
+ki(UHS4EpYqL%IC8m'PH6FpRHQ`!8B+-9Y3fHLURIYjh6rQlMl(b1Lp66rJml%e*
+FMXE5j[pTGhKj[p,V[cX+RD!'b1c"CZY2q$GDIZ[,j!!ZqdhkM`CDqVUdAFlHppa
+r)CM+E5+``SFIFmK4pVHI6eHZSC,mhHAD,[5iAd@&faZ0KXER$KEdXA*@[ImlmM+
+BQQY&'TS(4GZpDl,[CAP$Cp6c*i9,2%jrMY2h1pXm5req*H81rDAEal,[F6lVEq"
+SEX&Q)GFh4qAAj6%dP,@h)$qIUVm!Tee#)RlX-GT5[-#aq2c9ai&hE9eR8`Z4mV1
+jqrmI(q,Q0re@&a@LpR)r6Xl(MqHY,l$KND@Eb9,[db'LPa0"RF2Ci(pllCi14qE
+U,Z`k2!l-QEqL'1pU8p0HH[Yl--C!RYk'%GJZpUFKfYREAZXSfrXirVr2d[FrN4M
+jM[NBqLjMer&pAVm@c$(c6$(dSBqHUXY&hd)mjUImX-F,6rVRTTBA[5eYZ'2X+XZ
+Y$(2*Qh5KM`H,LXl$0FrKiGm2$Fhr+Pp@H'23r[,ZZXiH%SBk9j5c)BpAVBT5CYK
+BGj6dfCTEHcb2#jm[eEHbdqZeq*IAR)bX-G`eiCKMTq3'1qZj%m0f14a[FmXCM58
+[Cm!"prY[USai40YV@$6(`r19%BmP$'VU05@R0V29hk-H@dZ&5p("iS-GjE0-HEX
+'[$D'deZ(VGE`m-IMEa'1lQhZdeHFG'1jdh-KMSB6(KSTL96Ii5[!QBArGKMm2bA
+8pVEr#`''-pM90TMe5P8hqfG[$3BBlL(`qF[bNrJjfcMeG'T0a1lPQZPQqCE4Sap
+"Y,1E"Z-j0FXQQ8Zrja5UE6C6Dr%iH%eeSPQq--GcY&QqB@Z`VR6*Yh*9*0-lIZY
+&0b0TSI(e9G2((V0pjY'1SM(I9-blQQ--HYb@kdj+TpKXdc1C@&FeiEPq8`pG#l`
+1fp52V[5ilUm1RUX2-Fc[YjrIPYT`UA4B(Tp&3hiBq$Fif4hh-q9`Hrj,0mR`0j[
+HQQeqTr3'2SLQ(k[Ym(4I6qE5k)QQFGU1maYpraHH[q$cE,6rQY0*a0jCDI%kMTm
+B[AE0KMqFbQ(H-TKkJ!epac*TM+"R,mQ8$2Pi[h2XDRlZTl08IcAq[R-RmiUpk&Q
+KkEl4h5@D*Xp89jaqRCHXCLNQ-[jHhB-V#UcQ0jKHqDJ4R$!a$!e@A[TN,q)6&6b
+lkcK(1D*E%E1EKNI5(pV%p-pKS#ZQH-GV"*!!KD0Cf1&BdL'-kY(lKd2q'a%fUdD
+N5eTBh@mCX2p8brJhX)Pm@'1!)Y$@FFrE+PLE'hkT[kb2eMUZ'Bk,Q&c$h816KbK
+MSjQ'C2iTq#Bj-r$S)I%-G'P0J(j81YKf-1a)rm''X-FhF3lYNIrI1mF(hiH+4qq
+3!'1,cL2hccVGIcK[iIjKkm2BCMHVSTjMFib+S4lU2APL2A-aAX@GL[iY!Bf0'Bf
+2P4GC&mf+Y&fE)lql)krUaIA)krqB[Z%GHf-CANNG2R4ITLrC&k%Ali[j4Id-CA!
+-C$hM'YA)jH8MbdI-ahNHD-BfFMq&(RirpBp((dT((eNIA4pLB`YC(fTiHISal-M
+Iqc(re(rh(YSm8MEr2(qZ2H4raMrS4UriMpQ5-jXV#6(b@K'MadP[*lU5kNpl*bm
+R-bAKcBCf6i8QIC'MT*1PNkJM0qC*emPD6XT0E*fdQaC'EhNRe*2"Nqe*pmjVX@6
+mXRrK'Aqq6q4c6F!jS[CNi8Q-4Qf"'6`l1D,N6QJjDA-%B2`#prrT,m@A4bp6,eN
+[A5pM,UTF1AY*IS5r5PfF[I5q$,ra,pUArQAlX[i*Ia5lLAbTIbbrQPrpPrE,r#A
+qX[V5rjPpSK3R6V'GCcZ+8GE,dEV'XVZm)kq4BeQiqN(M(8VbDf!9c3+kk!Da)6T
+@BkPX!f%,"NE-i&KHCC(5$U4$a!4d#*QE!,EZF``PJi&R'SM9jP!jd''!CFpJ%XF
+i8%cbLMEITGAf@hZ8B%"R3XD''Kad&&kKQQL`I4!9eYVX(`G&fEABQ!*(2M5FGK!
+F3kCT[CCG0dmaQ0"6SC6(DjDj4%*S'R[6)6KS&fBhb5*ld%%aQ2I(ECH1bGX!qZh
+hMPfGAS)@%9LYJ'MPA0J'c0J(K'IR4QajX$bQG*T3-p"&3K0V,5VCQqT82RVJdlf
+VC`SdS@G"P'aRlGBmb69G+IXS@kDY'V$5eCUCj'6JAENmiiC`lT1"JjmBkKIl@YC
+P*UVXbKr9`DaI@23XVd0LKBAeN!#SedYRh0lE$#80VcRJ`lQR3[qj+Zd8FkA"910
+GjZ[921bb*V[qCSeX2VMkj'[VfIrMl`i9EYRfT90'&D)FN8RfHK3f#&P9`i"1KKc
+9TLXKCUR1JJ[[%J5cK[ChZLRE@hEDLV2qB5d-lXYPRGU,YLkLrjlVp[lBm2d,V*!
+!ESYc[YrmIGDR,&5683Ql$QH"MHE6fhMi-Q$efri'mhh"T6iY9Am)T5RJdUdTXJU
+dE1d&1&j9TmaeqqaZfTkqZXTqQhhNq2Z1c,%Hbe@0MF'ZPpQR&D5l'(crN6E1A#[
+me$1f'FSCfE%c1!2Fdk&VAm$d-E'rYHqaJkJB[jQqm1kA%aDfY1mf@F("9Vc$llR
+mTViV(LK!bcE@lTf@TaZ9k5'8ihI`Z'1%CI2YZlUAf5Y$hHHlS8ph3L[F1%-+%ej
+QE'DKXpYYp9Ai2C@&MCd-01%PRi'('R#8jSQD3V(#C2U`)hQVY+&$CMK1'eYTF@e
+aIB8f"JB)fe+Zb-lE4c&Hr6FI3Uf#fN1ISh3d8*EYMKCV'@kZjD0lf@$K$'BNeqa
+`YYE8-,T)(if9F+VaG2*k("Xq38S+cS4dl1URcUpkF&lcqPYIA@(3K2iLDl[kF@D
+1c[,`TVc!VTUG2EER"qIQC+kZXCX1dSfelKfQ""pZ#a!)i%FqK6TkqG`eP2RfPT5
+ZVdF&Hc8,QZR-lB4r5r(TZ&fJTdYkThD2Xe"(h9CQ4"DKiGeGA9cq+lZeB,[Pf!D
+G4TZipQ'Rd&$jaq5Z,qraU%1)Y*X'rj120(lT6Sl4`hH9JjjKZJdhA&h#2j[Sq6c
+[AIXqpBIJrpYI[pE[[&RdX5PQ2"K$Chl6MY-e`dp('DK+MM3TheGeRMllXlAjGVP
+[Pj,ihbr*j2m'qqRkqdeH2aXEZVf2!Ul1rZE5LqcVY+YAVYpp2VYph@@p(FGRc1*
+AEhXl+ebh!l2`pa2Z[P@e914VL!'`,5V)CCecj91J2Cm2D@'jq2P)m[AI9rYBjHd
+l"VKGhJfpZ1&X)BG'fYVQr(#`l1MFqGEFaRV2&bfeh2E8ZH0SqjT[6KF$#a-3F,4
+2iL(#h+F,fQ9TAfea,Dpl5T[HeZIYBY,4AP69N[l%q%qR#fl(#fDPlFI6fG0B@+@
+Mc9'i[YMKI-Y,lAffDRheq1&dh)9HF6K5ZM4-p&MKFMh0#rSE(h1aZ0M3ZDZc`Xe
+,9LSjbf[-#[pA[FEEEc"Nb%PMA80jKdDQISAjhH)Fe2SD(kP,29-+k,RdaYEkqpZ
+lZ,f+'(J4ird,IHB%[1Fj2Rh&6FGQa`Y1VKemZ(`0hGbhHUR9-c2ZY#3QAP6XJli
+Q&,H9+'(Hff4mV)r1pImelZ-JR#erR0F,h9Vc#L5mI"RdVV2iADdVSM3QZGhZ*pc
+XpT9k*Nh@Y#iir'EXX@-rN!$@80V3KFCqRNGjSF,"a+FGYR,Dl6j@K(bK`[pUrH8
+-1cZmrFdm)F,Qjp$8MKEYMKDrAf2(hq&H@a66(#Mj@Ke5F,Mr*fe1UU!9#VJ69m[
+4fPrGbkR'R@kF,JElkDF,JcGT+ii@fFI+Bi@@LR#fe2"Mc9TcfDY058L-ErcXUjM
+KFIr)I+ZGRXpYQQHTZV#qSYl5r)@0MR1bS(I4[H9Ud+ZK`m(V1*r[ECc8YF,[2+`
+6qkBkkR-R#hY2#0&E9Mj9a5cfdBi@(2@'D[m(#bF*2Bi6A#i%[*HlRclfV3TUJ+1
+&X+qALk3i@VJ0I+V8,ZmUB@dPSGV,0b2!pLAh05e`ZDe@1Bi@dBi@T&%bBI9,jP#
+dFF,0BMK5C9YP3JBq9F11&KBkc"Bi@dV-F+84lEhefiiAFi*rQ%I%8CX1K@`lfT+
+mF,CZR#hP5m`mR#1`PG1&YH0*Kp`fL93`)a`YFr6KGV06l@AhRlk0K`X'lG2P9ld
+iAQVZlIEKClMK9d,%p5ABAcV"$lU`c42NKJmI,6[pI0HPJ!T9lGPBlcVc"NVZbLX
+E!`c9X2"YT38pXU$1@ceKKA@eh2DcCkPJfe5KNcMGME@4(#fZ`Y,3c6m+Dm[,11@
+E@pTACEbQd'Fb5cF'PSXlT-5pS9HeY,UP2VT)UfhFV)9cDb&m[jZTfeYfZ@h[DjE
+dQd'GDj3CjlbEA4j5T9qDfLp,V0Fk`KmEACE@(`S`2*pVEI#XTXYeGD&2IeZ&c2!
+i12TlUlpb52VSIjPhQUf`i@hi9KAm,V5T(8r9RTf&GGeprVDr%p2"Z,2)q#R#Xkc
+@Bp[K6jqLrI2X&3CjMQ,-kcA9pCl(r[0f[@&5-F,b0-RUC6ZqXj['pcY29hEA#lK
+cV04XkcAVpQ1&`DGVDr,rpq0m[rhiUU4fQ&eH3C8MrhlAr[qQej2T05V68ipT5fe
+'iC4lXUCU#PN&h&epHY%UJcj29QIYl'S2&DLC"IMPY0X`B$!S+XmK5Y$ZB*SN`r'
++[P3P@NJI23ji&*8KmlDQhT[KSfNTQ49aSV"Q%DJJXqQMC*BpY&BXb3+&TN-c"eE
+aECFm,M3X!UQC4S9f+b2)8*QD*!HV!N*PF3EF,Dd5CbJc%e-ab[`@--XX$!Ia+'U
+D6(-aF)#ql4Z0eCR[pX@CIq+KaT!!lmM$NSFN5FC8bpqqKbm-a#p*2,q(qN2LPdV
+5`k@(b@CHqZ*1Y@5EGV$YQCHqmKi%2Y'A2lX2`"NmQ(P`mf'lKqL(l56Mq%2k`i$
+-YUM`iL,L@CEEJbemR&PSVZ+qLq%CC9*KmQ,64GA&ea*KUiZfLrhLl`bXrC-U[La
+ENNQr3Frqq*([m'8Ifc+21MXSk"P$if1h*(-T(lf2Q#4bpMjXbIhj)eSL4VUBqYM
+l"Q6[Y#4MZirU4q%C0IqM*[pq2aSr)Mh4Nap!NBrrMi$*&TT,)b5mE*amRZb4$Q5
+3!-jb625I%Nd4)4e4N4e-QVNl3N#8J(eC2XbIp5H)C$I*Nmk6p8RS5IaC)"kdRVb
+Hh,)C"k"N$YCED@j-2Q9Pbd[01m2haTHLPdX[6NJ(cTGA,fd[Fbl5AkjKdr",id[
+N5rN-1AQbrq'(6d*Gp,kX[Vbidk[RBqGaNkhRHkRFT1pr1c-l1cZHRD'GdNlrDGe
+Fl86ZaRB8lA6[S6ZlRI8RH&1qh1rkRIGRH*1mDGLc[-RIRRIVRHM1p1GkXlfUk5Z
+X+l(eh$eh'9eYAC+ZbPGbjfiTBfb29j[i0f`)#)9+YGci#J&Ph(PPMCL!2LqJFYV
+3a!'d3c*DE2f18M%D"ba&+5JfBT([DLD"PL!Vieh,MD5"Xd,)M')ia!*X*J-$3,Z
+4-!b"'1LiC`@1B*QEQ64FJXQkQF-%i&MV!mh"XhF!De6F3$@QI*!!'lPLE4!4dhM
+4%p!iQH*J(Ql*2I"DD&'UCmEccXC)p)B)J)#)#*ccM),$mcq%@YXk*PNqLaC[M%p
+C2@iJeJ'T*ii+bHY`"aj4BJ13!2jZBJ11-3(XP3LeSp1IhpA'I6hJ'@HCFci6"e-
+[)(3@a[,3APl[BjD!&M!(#&R&YX'+@K6C9!iC8iq,9-f5&V9YMaN-q291kU9-V6!
+P6K9VSYbB@!,J-T5de4fj4BE@92%emF9#p"&3[@#8jASBFTaPV$&IQ'@-JBMTZ0H
+Kp2+@%0ibQ`59eVHYE&(pGYL&@qU8Fl6KEPP'YB4jCVEJ-Z"Pe6DY9LfXp8Q&iP"
+c0m'4D3GYc5d%QFKZcZBkd*QFY&9G-G#D+U"CQKVHQiE,%cpiedmi-d"*8a*AN`2
+X1R8!V@L0l#*P@DZUa`CbM5X,aUTB8*kqAmXd8#!4EbX8,aHIX,Dh610B0lSfVmd
+l-FUmkYhKXamffF@JBKe,9S$fLdh$jS!&%Lc4e$%h6q4LL(JJ"d`1i"`YB%Y@U'f
+Y'F,NE%hMdrGb09Fmc0mb@V()DaPD&I339BcY#NeQjf"R-@fbKmXM5DrLY)56ZVA
+MVAHEldTE[IqK[0j5ea+V!hU+("aYr&Q1$NFa`Za(R!b(!p3b1rb2HH2MBhSqY#k
+LV@N4-bZr(i8AMqjAqYMF'+Y2+i0eAif&$R"UeTCeBE`qNff6peJc6D`qeAJNMKN
+F$f1%I"((iFGd5'9U@0@hQ0MprQ09`Faff0MHj$4BX&JY+pr0lc$"IXiVVC`Xm[j
+Thi)@FFGDYINTZ@lS%ZZY6Uq1F'j-"Ai2c$iQ4i@BCljrc8qchp@E,4EDbKe8PDe
+e1iaBD'Z!($E9qrb1fTc@&I3`f+fR,,J@G(RZ1kAH)+V`kKNTh&#YJ`ailUmeH@P
+jfKTq%6m8,jTG(E@e[Cd[5P[-j6Xk"1jAJIQ`Z8*pXP-pIFZ"2ZN%LGY3S6D'rbK
+2kX%X,L+YMiC[+59f8L`cEVF@%X@%[VXF5)X)MV`dpXbc1eBDqCL`d1ER5(YrZVk
+1K6RaEELSCQP@mUI9-bkV62!`19V8jT!!@&p3kS3ia&@&P0Hi)q&E5QrC6KB669Y
+iDZ-%X-*l@&+'ffCCNV8DH&2d-f,AA@8`-5ISG*9RqqG,#Ba-8+&$$hQ'T44er*V
+ZKp6+9+`k#KKqLcqT+e@m0L@&$NFEJRJ`ClfCc9I09UhPj(3p,8m,0d+-eK-6m4i
+SpKN+XkQ6Sjd0FRGd*ZD'2PVA9J5qjb9pl&9iQ&mET&K#r2Y0&9Y)49EkD2"KSR5
+[09B!cdVpR[f+qYFb3e`KlPU[iZ&l,@-j!!G0L[R(`rS6S59qrCVf+M$#Dp4eX@I
+H%K[He&Fa3d,LLMd*9KQUMND&EE8,&LLR49D"3)AMq+!"#i5K,5'2-c"H5'ZI+(Q
+`Xh3YM`lXeqk-9)ccV#Q0IB*$eU&1Eakeb)F,e8IY%2K48q3VAiTTa8&5(SaaY3j
+-iIdKak11Y1!p%,XBN3pM&Xl@$8)04"m)H&qrY$a98a0LA-6pBbAkiKiVqa(S5FP
+6(lhD(l'Jc2Lb$+GV80BTKq+h+TbDE'pM'pSS2EDE#[+&j3SP&NF&E#$LKCY3Hc+
+MXbC1j#ZN'8hEU,!PLSCY)-!Gdk3G2#S5i#B(bI,hRBFGcIEH2r(8EhEC[UZZjM(
+j$EF$Q-aQ0R5NLLVD((qiiM5V8a'eTM5$%E550T42%DBik`hFR(Am1$c9IiqrkkT
+[04aepIG[ZI@jMMZ4lIFEmce['fG+ZC4Ch(M[P0A`kaqde6iKLDP`E[A"Vi20Br9
+E`![Ci're((9q"[H"fX-pYYrc'2N!,DiqkRb3!0YG9fS&Ub8+5ri80Zc-`[LAhH8
+D'fXilbKJdjC-EJMZ12KVJle$YANbICQRT+%fRHTFb1,NdV*YA9d-N!!!E&c6YSi
+l-S!-A0,*d-'TIANI%B92ED[$2ZjXDQ1[#[meFc4TFbe3@*M',Q&1`Lee*69AbZ5
+B2C`NUFj*,imeY0f8G$#UAeABmHEkPcRlL`MUiFe-A*4LMULjMTM,9V-dUEelA-2
++RSd&%iPX8q3FA0@rK9'AZZFb!"EkmQ`UKpI0GJ`ck"#"YY3m0LjVm*bCGB&%#&5
+Sq9c&GRZhPMC-b[DfZ0FUlc'hjL&$!TeelUI5K4iiA0JmA1%IXaA8fVRNQ,QSH5D
+-Y*RdrK6YE#+VZlDA(adr(VjdQ"6k#MAi&DqTfNk++VVU%VpVQE!`h&bR-1,NaN*
+FeIcbP'qdR55LXmUVh2%6X#ViH@T9d9DqDZ9R[[TFiEdZGbqecHRQaZKPpXfB[F6
+SkZZZ*YGJmGd&'A!Th`"EZRIS0h0M(6Z'VNY"3['9Ah5jmI'hQffjdQaNi`A0AA$
+CB%-VZ)8qaTeem9+lLT3`FMkcaFiFX4af0A1ChMLj'LS-A-+3!-4Ifa`0dp[A4b4
+8lqM)*qRD5i1$801a,QDR3ZhlA0c(NBYrNA5j#48&cIlD-c,BSNZEkU2"a9GR35A
+0,+N8-bCR9fjFE0bkK9TeVXkI(pVR0ZPcElc(Rl6+EF!@iLFA05rFA0E!H,RFYA1
+!1E`LPUmA1fYKLe-bSGR`Y6[-+QD4Yh&$($)i&!L)K@[5ckbCPlQTefT)+4`d+kJ
+%lCMaG)A0#lR5M"8+alJi3ba,'d0'DZLTlNA,C5caFfC2NaR5jc'qi1Ui+G,Gi6L
+jJF'@fDZ3!"UA0DrZUk)r$@)C+X,QHF@ZKHPbUc&AEeqmHPc&MIfKQ20i(#aU02X
+UfhH,R8dp@eFh0@R5!8-5T[@KT4S#bkl"UlYNd*((E-cDlQaL*Q5[mQNqHpQBl#$
+iA9q9Bbr`RFi9!deVb)HR#*VTi+DZ&GfF6UP+8Pi[!5kQBZSUbX88+Z'64`l-AAk
+RDkmTfZMrY9'E"`D)jfX6-k&#R8G6-k8F15QUB,&d885SmfaNEkN8,XAA16FAA2&
+d145k!j9HPeZ5Z0--X1$VB"hahFc29`mGkQCe'32-A8X+(&ef"XqP3&GVVE-Q8-A
+AMXS$h&')T5Uad-I92iQMiR'a[iZee!Kqh0#pMUQZP&,0VMfVU1)q)'*bY$8lbXa
+G52&eZA&e*6NaS1Pd298bmSGPpCr@TrXPe[hDkc#A9lHcbfLXfep,UkFA@0fh"HP
+dNmPeQCY(55k2ND,SPV*G5'S`Pe,JV-ZUq8q&dF*ETGGdq&eE1,SQZ#kdG,9e--!
+ZBi-Lkc[#ef$@GVV'flYG6fCYTb1'el60rD&Jp,UpUA%f%S"KG5kkQV9Je'$$-lN
+M"LPZmKMDjkA5faDkA3bF+R)99aG69X2$XbV5aG6dZY$'qCQN--[fLkAFm&eQ1$U
+5RZlA@mQXm"Nc6$,Q"CVFA3lc!&e9m["d,*QJLlklFcEPb-,8CP40UeGh%Zec`G6
+[mEdFEFBbP`Zk8qfa(LkZ(Dk,HeKJk(ZH33&E5XQ2Y8mA9DpBZVDf5kHjQLl6'ZH
+PeH8TaUr)15akkV$hQ-QS0GihrSiTEHfJmA@@8*N+k-*p-D*Uk[lmA9BrhX-`mA6
+bP4#qBZU-Y@XPdD#GQp,SlQGEZD`ZViPP2&d605GC@Uj@1XlA9ikA34&U05hU#pA
+H!f1kZ9+kK[#i6iAA12kA9L-Z9JDfcIkA9mp,T3Q29+Km,V"T4aU2D@-ldLJ1@iJ
+26$+'S4DlGLk9dC,S[NLk,SG$MhLkTePDR9P4iZPU0[5kZEQSqPdVScYG&dCrYG$
+!1edkV42`ZLZ#rfZSUZGHA4VPdZVXe'(5P0d&pVUrHPe`cie'hDjV3P&c1DZCBiM
++C9L8f%HP(U6L-,T9r'hC#R3bdCJ*KA4*Fm1X"-Tbihpr9Ui!,f,P@9)j4Fq1PcX
+eC8+K0$CLjM`)*FeCDdcVC-03+R01VG"@[QE*MF#F4h26ZGNSDG96M@@9$0@DZ5b
+SeFd,58fR!-#jfFBbeK#M#i!bpE,0A*[@bbEDUff+(BPX'dGVP-%EjTU0hpLjC8V
+8lj66UPj',R(2L%elA1DMY*X"QlJ6)+*+#66NIkmFjiSdZAHk&bXB4LDMj9K#CQk
+%PbUV,TFm`fk0C4&rp,NZM%ZZKG#jUi*"5kA,[G-(5b9XXF'VlA-diV*9m6bk-iZ
+@DNme$PCpbP&9hKfUhbZAHkc9iTkh@A5j9hUdViYYe9UJ+lZM9GFiZ5k0I,8dd3Z
+E4RkkPrq,Z5rqq+cmHFLYU&f[E(@T3`V5'LV48VVF4`h%0'8#)M[4&Ia[&9a818R
+YrdeLj5&Glf(*8TC*kdc+e-`3VPFSIVFfH"FjXA1Z0RJY,her9$hGbXA*M&PGF@R
+P1,R+DUNVrq,2d*!!Q`h%qk6RSUlLUPp4i[9iE[Ci5jU8k#H'`Vfqjqd3QK9hCf`
+)KPUiG+D0-ceaD9D6cLdj+k'BBcCrRqMi[9l6`2NS#ZpRLSFH$QcaIi@5XEcAE29
+B925YcDc$MKQ(%rl`mA-AV3mIH8pF[1C5KU-MMFG#+[fh-4`jL[`4&43jUD'BCb*
+lD,dBA@rVBr'Cb*`Lh%,IH5`hl9cUXBA10MBrLP[9B-Am4FmJ,RYMHUKQ*1cec&c
+AXhUKdFpeb1QV6Q$P@T@80i,Pbrr$Q*0Y3e*pf)[4ilQr4p,8GQEe85hUQ,RMUE,
++8QUl2Ar[3QpbVj[NqipVR([kj(GlYKQ%cG@6HBr!p,8I6j(@)#YhUYiE2&#Ce[9
+I#NmVqh-GY6`G4Z1c22@GjPRc[AVUVehZ,"cRYEkIc3F`-(NUc1q`I`qhR626ZK5
+DQZFCpad"962SJKAYGak!YG-`DQGD`'!Y,A)2@-XXi6hD$p)d035VRN*m6mNKRP*
+D40qcfa2XLFdl)LCDLHX4Rd(XQHa"EI,SLcca92C&@CIlYINXi48"CPQ)*M@%5c3
+iXd,FZqQiCafdAEDTccaY9[6ZQeAU`FpR,'e3jpfL)DRL%V2rPiVjHlTMC)+QQFQ
+b+'$mYQMS19HRV'G29G9CqCVdpBqQbBpBaXTmE1STMcAa5!eHD5LR#d%q+!TMABp
+M`PFZ%HFZ3!HKAf9Bdb'4kjKPN!!qNcUq6KmJJ,mD,H-fA'-RcA()1,(V2B1N'HJ
+Fqc5q-X`+q)KaN!#h1-6hKp3HD*4Yh$03c4qB@HKd-2M`k1'QKmk(C(9Vfm0P$ZS
+E@(r%2[3mD(Q3!2rSIr3rA$d)Ir`rb9l-K&`mA&QC*lZ,hd@ALc-9l&m',S6UPk@
+,V)X',YB[SR8hpZ,m8AM4EH,bi[caIVLrK&rH152(amC(b*e'qr1SI2(1VSBqSMq
+C(UipK(hNIJarHMh%IQarYMp12r"p)mK*adPc*b8R[T1ANUbAmR2bI&Nk3kCrQbB
+8Q**p#6CbGl*pD6rQ6lV1Q(pNRm*29Ni*p-,'@dPb-Ye,bjdRr#PcmZJPq*,dN[9
+5kNk5IT5r91NIaCI+1MrcjI6PrZIqM6cSjZCh+cUXlR*h36Y,1dadAkdk,GSG&Ih
+$SPmfGZjhl*hm$SKpQZPVV+ZYDlN+kkVZAVXaACZZq"AD#Zq2AG,AGAAGIAB9GfY
+Gh0GYDl`DllGGq'ZaDlcUlpPGr#Zp@ZpLZpQ[R9pRAdkrhPIc9Im'[q,Ap2ApMAk
+f[f0Ip1[m#[qhArFVr[eriUrF9rR9rlUrqGIkjqPGR0adf9QjUE1cI$QdFhbTZZQ
+e8hGcI9Qqe0iNhN6HE0rp0r@Er0K#`XE#dX11X+PKapKlU`ZV$hpKQV$i9Kd0KT,
+$U,$jPKV,$Yl$Zl$kYKpU`m5`aE$Gf(lV$rpG9FYP*C4f-FqGC5F0(MSjj-r2Ub6
+R-G*MT,+GC6V)YR8)jjB[K(Bb!UMX`#)$@F*T+i(P%rTfM(4NQ3J2J&C$-@8GF[[
+IA&qpAmfJCJ'VSjM64XSjmP#5d"`d,@5&dG#@aJJ4C4!B6F$(!@3'NSQRMC4)8*R
+Pdld"XN%%""N%"Q'"!EL(`'!#!k!SQ!!mMXQd$Xq#!!CK!S4j"VG0$d6SN!$M+5m
+8FDPN*CddPQd%5@-NmCj!cKQ0X`U2!8k'%PR+Hj-C"%#Ld$58R#-eL,%-9M"a[%"
+!K)41LPC5Bq2MRYP)RMXRE!'Bmp#*k5MAL+-GS[UEBm`jp65VdD50G$(5VZbV1Lj
+X$0@iLb@GP[S5l1aiq`,Q@DX#mJZM9P+k[CPY*XA&l@%eR`pMXrNbj[`)9F2D!@i
+HAGrBdVDfQ"JqmYB$J-+6A(p&fKVXdl6CQZP&D9Xl&9eX+0ERVR1`Uq$$B`L`VEk
+mk%YY@lL(fT[#25AD(`IQl3iR*Ufapli&RaCrDaq3!*&p,TqIqPYZ(A&(c(QF$r(
+1pIbKZdpA[XGkRYGe#6Z[9prk(YGlZ+@Ej2JIKpA&bQ*UF8m2mYG0cLUGbVcaC2T
+BElhrSF'TTEIM1lpA,lV'fepMBhCiAE``Z5VG9jp5'eSB8H[[HHQcQ`jh6pekA-q
+J*Me2Rpe[X[kQ*Gd[(U@I`qIUafHGkI1lQfq[XiBA2kbAJk%X2`b5*h2F2Q[QIiq
+[XI"UaGY5qM3Rk1DidP,&ZX,4kUjkR+BQNSj[+Cr-jN[#5c6(Q*G%l`q0"*UYTar
++Gd#h+9,HPK91bb)aea#ZcV+Yl"A(CiQNiRRlV#UBfFm`&'[a0*5fqlFe,ar49bC
+[+3[bBbYJIVCk1IqjFr&UarMSH&jmr5IkE[Vk@hZX+fe9pm2l@*T)mhP,M0@d23h
+h-rYaZFlcSI2qGhRRGTT-Mi-,HPHA@&SXhlVS"R+!5F1ml+Gb2LlVTYemh2IFq[r
+6SI9e2,j6YXEf1h6HIQSB92BCcki5Zh!Gl20q,k[ArYhfAh@PeHkdrGI`jFGEr,i
+,*FpD,+iheZHd'JdRUFr0dr!p,`EHqbQ3!0V6Qm,'[1Dr[lQU`mhT[lpKk@EbPYV
+,BEh&b9,m[&rabRDk(ApTS,1lVmEJJNU5mMPY)2be,IKk'&fA-GcLj6Dj6@hQkdp
+Vr'KJdFTKi@5fZ4)82Ciler`l$i+H!r4LD6KmeFNVITaic5pi%RLpd!AL[K-H%Ua
+jb(3K1d@DkLq[UX[dD[#bPadA%qGc+6QMlfqcH8`Y(4cI[DPR4#GcImUAQm@-6Dk
+rY-j4bE8jk-qhi[5$m&5hSe*Zq[HJaD(HifYcBJE[GGA4bQXQcQh(jR%i!R&f4+e
+[3kBR8QZKTHr#6aRk3#d[b[JR9H(q[K9UXZY`pEP,LmQTe'5mqpZ3!*fNSjVrARU
+P'()dXhB8[-qL-6(fqJd&SLF#645SR+AR4[+(ICV*EUKYD'Y["RkY5aSkI@d0B$!
+*ed%lS86KrLMmhriIKrNE"$#GaI5DIZYl5h6AkZ(bX-N%l3fAEjQ%Y,6q[BEUhlZ
+V&aZ4prk'Ulhpf4aH6e@ep,,Dr@CMYFaaQqmAdq$jRa2)mrX1BkLffZ-5q1*-c2a
+[Ah[&Gh5r"ZUPVk@Ta[TH,a(h29dAUr0[-64qRQI2pEY2XDR'pMa21#,qld"qpZB
+HCMYhb(h2XG2dAVq,kZPqMbC,ir"pMTrMrdl&%kNIZfb#-m4*CY9T#Z8!mpN$E2j
+b)L$UjCmUl9A'MSX*iT`[S1la3&XJ2A$f@V'Dcb$G&-&MT*P"M,F&V`TDVSM3pC!
+!*l`qi,@BhLpECleN'c"FaRS4G8H@93b8)G8`GRqkb$p$[(FE#[!dZ!5["*MiC#(
+%`iZ(((rQYX8$Z3Kb!eq6KbF-U3Aqr,FfC0J61%&r`6THq($iN!$SSD@(bBI*Kdm
+2P3dm033Hi*rPrC`eX1f+E[d)I50BAC`lk(eBIAKpU(hBH*!!fd2)Kq1(Q`hF2c3
+r3DbIlSHP$I3rV$eSIjKl4r0%k+aLam9',LBV@+T&b%AZSVU,hXA,aCJeTFj&cX@
+HLk#,id@MLq4&ddA84G6&eF@SLqE&UBX+,@'YcfmAqmAG4E5,DaGp&i-Aei[Y4IG
+Lm5,E4H4&q1,c5%Rp8AlS[5LhdApB[@Lr[&rL,JaHh('DSDX3m33Zdiq2MbFI[)q
+9MjH2-4hXHGMq%3cp$(d8HNMk8KYkXK[l#2!)FrRakk2k%Hb)HIU4r@Mqc(rc(pq
+2m4E"mU2mXHlMr4(qU2pdIT4lk2qXIV4rjMpU5%NiVdf4EAT5FE*E5FL@flU6+&Y
+rhjEIc8QGNq&*Rj1KNk+655G,*e%R9bI-,GIcT+dQUN`j1dNf%RqmRG5E56[j2#N
+m16lNRrFRM5EQ6bj0e*rj*rp*jmQpNp16rq6qdRVbF+@+@ZPaal#U*F,iQALjH1P
+Ycp%[Gbj@APTHBPZjFh,m#@rCFCq2,TCHQPkJeBkk+Z2&`!C!4!3PmedM!-Ji`*-
+%5e18-'JjS@2,@l"63Bk%$S00#$S41K-eY(i$6YU(qJdq@#ITRQMTi3(mCCdlCre
+URm$6q(jq`dm@$S)$d6reRRMh6rm[2ErMr"3S'jq`FJE-j6'pX!f2RCJcPT!!SPV
+"PGNPAIA-fcK(@[ekMZIKBdhHmEC4mVC%YL1d+$2D-SM%#5ck,cH5hP!a2fF0T30
+B[[VQpD094NiDKar3mmFm@5peGk@`q(I``-PH!@2a2-kiSZJ)@jKaNQUCKD+6V+J
+p-Si&M+FJ+YZ-j*QDZ"jCcBN9T9IRUHQ0N!$Bc9[aqarCRY*YSqY![&jRRqhRYKL
+kq%1*j2U[aG6q$E3XS[2qCihVmhUlV%q0[ZZp!d-[F1VUD&1k[0%KjAaCkV[VAeG
+6[VcbX6R29klGI-aU20ih#e(2BF1Hq6(lr8@-9lXlQ+2`)FpEe#Y*ZZ[mBVArZiR
+,lV6rZ+p1$E6GSHB)YQFArjB#B`+%HUmETp$4lU%Z`4Ter6I'p[TlEZ+X+AVDcCe
+X@RGfFH8a0&0j&GIrY+rp`%h9eI!0%fR9[0#S1eSZ4D$!TGl5fmfh[X66M4kb`TE
+QT2jldqUMUA%APh0l(KhG#ac@5[+P[E'TTP2UD+DlZ1h!6fL"hCFmkYRCV4d4l+m
+b9lKD0PCqZrHi80"l[MmGK`ZGTBl5'+Hl(jU+'DVYGpN+%U+"m,%8$qFR43[iQ&#
+m`pd#5KJ-+&rRce#eB@&m#D-I@1ka#0i8$9LB82lVaX-YSXrjGKD45SG$#2G`q&M
+Bh"ch'hB5q5fR+q,k2,qpjUmeI0B35kqKfM#ASr!eS3mE,qT[[Cd[YEVJIep3J"p
+X*HdQ#A2q`k*GjDClmhAlV6f@QrPMr2i(f2NCIp[TiZBaYke0e%5qJ#Ab)$X4hE5
+eAb-[ZZVlY&lDSRkk%kjKRHikIS2B`m$KZaKRGVMpa4cI[SA(h[@`[RIbpZZSBQp
+p2f0cLD20(VdL"VIB[5RAbdpTLI*m$@c)RqejHhQlVHj(VYeTV#Pi'&FCr1BR2GT
+Ckh*@)*HjaEQqaEDKh[)SRm,QI9kkiqPPJRrdTBZ6eVbfQPEmK',[@6NCS@2%qfL
+KcfJZl#EX-jp5E98Fek20A[hFS*rb+qKLD5EFh'*SpVE)SEI-Af,e380(qr%q6ID
+qrc'-NrYk4+*h05`X+@[Q[FrQX5rl,)qcNZ,)(Z*brPAf,F9,Hmc"1&DRe,kj3QP
+ka%&PYA[8%`aJ`G&#dMr(h(6hmAqZ5,+f(i!8,fR@VILB8-hVQP$Tk0j-LKG08'K
+&"IE4aqrEc$UQ&$B81bcpi&#KJT3D+'%+#j[,I"9[9K3rjFR&A(V)Jp-VDl#J'-G
++aqq,lPbLId%lTk'ZKJiIKiIHdEh2hFZ#c-CcGq%r&Z0EpjK2(VEl&dS6p&DI4m(
+`2(FR%X*l-aP%rRZkmjaqr46BYcR0eGB9[V@%plc'EMXZK0HB5YddRk6,lV60*qK
+KX0h%RlT2UHRVSDU[c(9Gek@Af-*IQmemcaUrQrqmaLI'VmeZG0EdHaPeA"p$,qT
+cH,SrdmR`0j[HQiIL910lScq06kZ*TI6mMGDDEIC$'iALEVTqG8ifabRcpTAjI&p
+ppc'aYlma0RiM[2i*`Qj`9Vcr&hfAmh5pf"2Uqkr6pcrMr(iQkmkp)"FSA*59(R@
+J!IRU'f6XfDjPBc9J#,D[hM[P4VcA@CFb2hmD`9DQ4#X($,L,0HFeL%11,G4Del0
+FC!UHJ92QFC`B)BScSLi5lCcC`Ka$r'FBAEK!9BQXPAX#0HZ3!)@&KHLH[)T@BcS
+@"ME,V"Np1HPHJJj"A8@eNabVm4EC&b,ENBFL4DHl)Y1@Kc"b3jXLbjf(1`jk(2`
+d$)Y0($j%2pSIl3kJ[)r,Kmf'T1604DGT$B3rh16RkF1mKp5(eSH&$`iIFKrfFS1
+jKjF0e$mm2r)ITCbMlf(T`p5(!K`BHh&(&Aa6iV1,L)Z+Lik+hLZ6PAbXA,4Fa&G
+aCZ,i"8Id%Aa)[MaD8Lbq9&TSZYLkk,XBZbLl1,%LemAd)[T4E1,kNAeS[XaIm(,
+Vpk,m"bmlL,bS[baIQLrpLrE&[$PprR&kT&Kl%AZ4a%@%jRIYY)q,Mb-Ga(NSq6)
+X-[(c8HCM[SrJamr(rT(m@244p*(dmI94r,MqE(UBm+2@4pV(fmIFaph(YBqqMm+
+2`irZ4q*(YSr)Mr)4BITMrC(jmHpMrM(r52IariMpQ2'NPNX()X,@5T*b%RZL,$h
+Tk$F`rZ,$X*-#69bD`p$rE2r)X2cbIUNrG*qq6q8RU5F#6JbHfHM@[PRbfF[%5mC
+,6PYTELANCFR,lbAPCF[,c8ZCP[TIJbmr,rT,m@A4(-Adjc'r,PqE,UC+q5[MViJ
+#&m*`&,N4NB"N%"pTJ'3-D'QJjSFJi`$`'0"b!cS92'%D"R3bBb6mKjqKJr!3D*'
+MjV52BkImECmX!m1crVA2i4(m,6rV!2CkIYL(6k$r"-r5qI,SRra+8@bcLrPQlje
+J"$#CBi(P@Af`&@TQi5FlQqGcjGJYXhm,REd&2@pEdI9kF"(Dp4e2@QiV$[lcbXE
+'+12p94#aqk3-afY3-c@3!%$1)k"!bTZd$,K8dTHQrNJClj8XjILA5"RaPP3PkIi
+#"Rb&h5Cf#fN9,Bi(1&9qa'Ia)@+Tf)fXZScSf![rC9I'!VpB)I-X+I0p(mVSmce
+29p2B8rJp6mV4)&!!!*A@@JX!"`#I8Q&ND@0KE%0[FQY1Eh*Y6@&M9(P`D@jR5R9
+ZCf9bF`!'&%0[FQXJDf9jBQpKFQ4c+&0jFcBT!3!!!!KbFh*M8P0&4+ErGMDQrp$
+A!3!5UfNJ!!)!!!if!!!!!!!!"FN!!!!!%dCbBA"`C5e0B@-Y3fpbDbjdCAJ"!!!
+&d94&@&3U9%9BTaG2YDG"irB"!-QhL+)!"J!!'SB!!"BM!!!0j!!!#E@85f9jBQp
+KFQ4c)#KcHA0dC@dJ0bN!!JT'FQ&ZBf9$Eh*V!3!!(@TVCQPXE@pfFU3mG8#QrpE
+b%3!p`5jM!!)!!!K2!!!!!!!!"-S!!!!!#&8Z8bj$Eh*V!3!!)M4VCQPXE@pfFU3
+mG8#QrpEb%3"NI9i1!!)!!!L&!!!!!!!!"4-!!!!!&de[EQ&MEbC(C@jPGQ&*EN0
+[FQY1Eh*Y!3!!*dG'4NP-4%e29UEZ0DQR5(Hf!3!p!d&S!!)!!(Af!!!!!!!!3[X
+!!!!!CkB!!!:
diff --git a/language/typingtex/Seroul-8bit-Textures-cpt.hqx b/language/typingtex/Seroul-8bit-Textures-cpt.hqx
new file mode 100644
index 0000000000..8bb1dfefb7
--- /dev/null
+++ b/language/typingtex/Seroul-8bit-Textures-cpt.hqx
@@ -0,0 +1,548 @@
+(This file must be converted with BinHex 4.0)
+:'90PFQpeE#Gc1#e#DA48CAKdGA*PFbeMF(3!8%&$9%033e3"!!!!CJ!!!!!!D3S
+"!@(C!!"JJ)!e9QCRCi"`B)K`QB#!J(!)!)J!J(Gf8("`"`D3!'N)!'"iG`Ch!(!
+'Gh!)8)"JJ!!!#!H(J!B!F(@!D)J!!!#!!(GJJ!J!!)!!J!!!N!#3!!!!!!#!!)!
+(!)!!"i!!!!L)!!!*#3#!!!!!!(!!!)!!F)!)!!#!!)!(H(F!!!!!N!!*"`B)!!%
+MC8!!F(!%%N-&8)L4"2m!U#BEFeZE9VkYG#%%F)F)kpfMGm1e4hY["4jpc,RfleV
+5[qEbjQGiU0V1PMI`e*lPkI0!T,m%Ih%DI%&UrZp[[h)LVmBLA6X@G$MY6@TV[d3
+E3irkk2Pk8%Yc6Ap$*9,CeV1Yr2cQ[S9f[9CeRA[8rhXG9qihBjpMR55aCXA,&cX
+cfjP`8Y2Yqb8aQp(haIqCrm4[b9)[4Q4,*d#('ljaA#JQ0a9Af2p%8FRfL@+1@IH
+M2q!)pF5G2ma4%d9UAFNqXCm9T1Y*Sa0*@Nej2qaj#*rI'Uq2bERK[lT@k-BldC%
+Q"lbfb*1PLhm08%C!)b&HdiU4@$Z3!!6*5&rq"&2RbdATj5'B$a)@cFh8ZcJMq,Q
+TVS4TA*qlT!MAZE1ahJ4i)hX@*EZRcC6#d6Tmhl8Z4KQfT#PbX-i''ITKR#KJ!!"
+#!!!)N!!!!!8!!!N!!!!!!!!jJ!N)"`#@B!Kj#!Kj#BL3!!LC!*!!#!#(H*!!GfF
+!F!#3!!!%G94RC!"Q99"84AH'!!!!#)!J!!%d4&B&"h"`B!!!!!!!!!!!!!!!!!!
+!!!!!!!!(!!3(-M-dCRB(-1fA2PPMKqPed4(A+PB[P'-ihbTD-j9LH0q@NieaLf@
+YYX4mq)RGE4aR&q@2R25e+eRVTG1d@R@+hk8cYADS5qNYG*if%Cq[hr(jhAGZf1k
+HQ@[(f#TREA10q@NGAL&ZkIK(T5h!42fX,DXC"T`Q0Dqi+UdVB5Qm$0QcC%SjCB8
+hdRK(APM+r+2iM2+Q0S!hP,2-61r)1kBLXVV5emUMcPai[&RX@c%LYSi%YVPbRF(
+qJ25'AI`PT+qdp+`!k-h5@2P12Edp@cTphZ55,CRVffRp[A'qK9RdF%a(T`TI`J#
+DHFNXB%M,ZG(TBi4j8meTcNUQB6hdaTDK1R#M`m2!,'GY249mpqa,lm2MmIkMU8L
+eTqU,LiA(cl1lGhrjZqIel1i4hhr(Up[4(H(hD-2!9pXL0eX9G8JIZ9*[cbedLjj
+iXFhaTI*'bZmei%S`MaQ0crIVfES&-,1qHfi6hT3'N6RR+R'AL@!%hIBq20)m0MT
+k)riqArqQ1BKh[#b(B1(K1@"q'8eVVFmjZrB!0qr4(pc+a-qIa`TMj#X@VB8$+mL
+*T,(RijBFl[6J55XBj@Cc9-EbIDe1I#CmBrl1GfJ$YV2cRLRCA,pprQ-K`DHP$R9
+'#LYbIJ[PbcdR`QIb5MEEKfYacFFh(0acFFriljI6kI*-Jh(YalFHh(YalFHpai4
+)hH[AMDM"CF#r)!!!J%999QCRGfKhCiQ*Q'QCLBGhL)UULCUEU'HSUSQ)QTQ(H)L
+*LBQUQCQ)LTLTR+UCURHAL+QCQTUBLCQCQRQTL*KiL)L)LCU*Q)Q+UVZ*ZUUAQCQ
+CZTPjZpZDZEUDfUZUQ(LAUSL*QSUSQDUjZTQkUCKhYkUBQUZDU(LSQVKiQ(Pf&!!
+"-d99ChGiPiL!U*J)L3!!!!#J253cC)GjGjQ)GhGRH)KiU(LCLBN*HSLBKeJ*S*U
++#DU)CB"i!+N!!!!!#3!!#TS!UT!!!+!!X!!!#AH!!!#`K#)"2MIj`KP`%KFkQ@i
+dfRlLCd2DDMYp64crEkRXH[Z,IYY2PY*TqbYrTkHXrrDI(p*U1bYlM8IhI,di4GM
+PHRdr8jRV1[lEYHCM$h3D$SZMB$CrT1QqB3ak-@-K$j[T`eZZVIm[VFhfS%6IMj6
+kHRk22p"S*G0Ep2R*r8GGTqddpMdADcY"erCDEiRa2LBc4@rEA(A@2bqfYqdlE6p
+TAI,lI8kIY,(1kM8I6drD@rCGE9pUJaBpIFDMXTr@@qQ8*UR"liHjp[h[(dHLb(m
+Yck1(erYAP,d[XH9qMepcj(KildDATEIbIjF+UlR(IaqajAUl2brPSL-Ck'h!H@T
+#K#&6N3Ui9XcpN!#UK-'2e)-dT!&TcEB"TdY%&EES)4C@%,@%8S(8!Bak%IaDQYe
+dc$VJ'SBIV!eTVS&D[-J,AcTe&)T34UUV`0I`r2j!"rqI$iIR`frND[q[q["eAq[
+RiIHiF+RkV#R$NF2Ae,U%+kki&6#X,2cm1GHehKbSS,!0F-M'GHJ*qhm("KUm+&J
+!N@&Df'4LZZ4I`cD3!,V$X)E@iTEbcfNrH@DK+J[IIlG,EERI@X)IKlABmE9rTLP
+k$KGcl06f-MKqK3k[KA2$iQeb(CiQYc-f1%qK4h)JbqH4[9EM3AJ[2%d&jH49A*k
+ATrTkA5mYHH6Sr*KhfLj23`[,cBr0ZTD2Hkh+C@aj2j2BH6-YD[Eb`YVU(*hPjHH
+6&8Kcr3iG'Cd@9q2$Ak+%ZPd8[+k+ej1bMYEc`iFd3[9A,j91fkc5q"m$FkDaK[G
+VdNqECaak!&GKNmGc1Hb0a5r0bYRYFEi&$GpM)+QM4RZbTq%arhmL@!PMmlJkUZ,
+-q4Il2If'KUZ4`pM8ZTE(T['MRf0KmRZdPREciDh2mPGT,-95ASGp,QGYk19Y)Dr
+#TAHViYaj'&iYTDkkhH*Cd,j@'eRHlZ-V5lHaLdXr5m1ECrmmHVpEH9q`XXGc@Gr
+d&K9@HeVkr(CcH4EVp2GIKaI"m,cIamLdmEP[1fhUE6PNPRl[RhPjf[fq&TG'5jr
++m[,2bGPXG*k[FqTHAQkqEG@&VcALlZIP[lCrX2+ll4mYY*r4pCP-GT5@I+rG#EX
+G&($[ZLbAfFPVqSrIirUp2pLbdALkA5Ipk5mqlIV,,5TfVLN8&MkA68DACFILG"A
+q25lce+80aGqpAmEl[ZmhRHM`IE`m#[f[J9H8YcIhXpVT,2r(l1rZ-KZmRbhHE6a
+0J5LMrp[Hm2cb#2IiQ2i1VX22pkcip9Xree0"CmMKpi5cG@(MC+IP,ZA0qpe(U@'
+dSlMBBkPD"Vlf6U9+RTb90Y[EklcR3B8Q8prhGcAm6NV[jr#hr)p[FGfrNX[CB6[
+i99i5c(TE(Zk@ibd[(a[YNXj2NqDcY#iRlk[VqqdFZIXKB8pYqUcm,l)CjV*mYY1
+mVpT'NXq6[,bmfG5TkT,*Jb[,2bUVBp*rE3I&@@CDR[H0MTq8qc,c9jm#eUrXdIV
+bikPmF0CFfb@IXjbVqrdA-p4l9KTHRh0PSmEpR5EcSlcbGaf$lPRD4kA'kDPTXP9
+p"RqJTELbaXFCIK&6c++RmeIAr-q,X0KC`KdY2Difcm(liCc2JhQqlfUfl8Xrai(
+$mrB@8r9Y5cf[(j6CqK`G"cI)iIJ92&XB9hM8XUb@EfZmIErAReH9@@E*Q$,lZlR
+fR4FcK98ZVi[AC2qYAp#ehQNI-XlE$HemR*I0RfXG$0FMBF+[r6kNYIlI(pR%jM)
+ll&SGA1cZ"@j6)DE%ViX2R1"hAUF6`G,pEmH(Frpp"Q0Ck1h@@Im[1[,cZ[Cib5b
+B-[+rdmQrf1Nj2Z[eAPji(cI&Y+R[IMiIYj65f(0H9heV9q,iHUiI(hhad`CF&Q)
+[mh3lheFa`qSrMBDA46[ZG4NIMf@JYlclYF3Y9h-(E-"#A1(S5M6,a05h['*Eh-R
+@%@'R"9BQFB"!+RZ5'R"VBZh"VK`REq`cZ0j($m4FahKQ*'`KQdi0EUfSN!!$aQ1
+[3FL`TpkCMXiCPFM--adEYQ1eZZjD5#)fGBS'4AYXfJG61[`(V%&k1G6L,RS&ePM
+46L[j@4&[,5)RM!RV,9#D*"6R8%%#8"04-125ZKMSFV$)`bF-V$qk(aSCU'EKRSC
+k'KKdN!$53kL(93YiI4Kp+'TKfm2U`eN0K$[)Gr$km0c$lN2Z3m+(N3mZ(Q3r&$G
+3[SEf(jiHR$eBIXKqk(X3`)He$fiIcKr@('KL4446BUb+M&MBXG&5LjL+bLq$&cF
+9R&Q)[N4@XA34I*LkD,TiZSLkU+hLqM&p1,Y)[U4DU,@aE1,DaIALh-Ah)[(LmZ,
+c)[[aIrmAj)Vf,HaISLp5,rU,pX9r&r#,q8Ap)Z,&KaFH,%MK(*(2MaNH0MamH3M
+XSrJame(PSrM4jU1eMk#2j-I64k12jNIcip0(f%HTMlL294kk2D4pr(pL2`Br#Mm
+H1mMmb2lmIiSpe(q@2dBq"(kXIrFIX4i-ImBq((lXI[53!**XPC*4Nj56)5@-R`*
+2KbCD6,bCU60bCk63bG,*dmRcC2S5DD6X*1eNZC1lNf%RHbED6l%RfT2(NmZ6ldR
+iT,f6H5ISNrA*qk6rb6K5B8R'Na*CNY#ANTD8Z4PbN[05djFa,D5k'A45k@AjdY[
+,eXZTPlHAZTGK,pDA`*Gc,Gbq4,jF[qd[iCGe,qDAIbrUPrC,l%[Y5rqbm5AMbiX
+b1C2Q9Xc(61AQC+CPCRa*RaTR1c,@CS*R4c0*-kQCmqCTTRB606-lL%f%e!4X)!5
+Hd%3I!ip#8fDFjFq+I&11FqE#C(1LR46ikZ1E&1MQ&l+G&-!4"CJ-!J16$HJUSdL
+Tj'N"'`bVF'#(SUTJT(9UC*!!p0"5HX40P#a9'U'4!1$#"MBJX%463QQa9EhD#$c
+S+BD0"cK%lP898L`!LDK!V@UQ%%PBT03MUT+%KBiJe&933%253SiJ8PQde"D1H&P
+@mT3(UU)X)$kXMV$dr*!!ib!P"Sk$!K4"0i3-SNPC#+Hi00**rei+T8-N[F,dNHl
+#[UBTdN9N+-hmB$*dNG8RjbeD$bBa0*6!ASC#fUEL*EKAHNJedB#j+GVEq#C!XE1
+[iNc)BZFX+Q(&Bp$8aE@T8haT+q9K3N`M*VA9-55SCI)BNj,@lUda)X1Z[iVfHG2
+3Fbi53RhB0fJ4KQ%Q+K3C`P$RD2[GKPEqkh#CjN0FG+C4%3FbLLXV+VEX415ZkQ(
+(4ql8aEbT8rj%B)QTrp1rT&B+LCj%drG9,f`qpZN42Ta`R1)NXD)lKDHajq*$YF+
+%lJiX,842([FJL*Lf9+h!2B6d"Q"LJhEC,9eqCh!FCE(q&@F,GGcIdE+U`H$cr'U
+INVYlI5drbFAJmrLdVHqeq*Dr#ZU0M#M@bd6Th&8ZI5Um#qS8`$p$(D+qRbe@1Th
+h,E+PeQbTCrC8BDlPCE1)M+E5YCmqMX*rKq(G8I5YpK&2RRVkReF))J+-@,#MR52
+l,SXjX)Gl4K&4p#'6fq`LUl(*4TfM2TEff5m['RY8ZSDR$YqGRaE+MBdDXMkK4cP
+9&d%fj4*j+PEj6A8,EQle&[4PKBZbhh'6BYi8EiP18#GP5Y3$)cee*LhUaEdCq`R
+dA&[S6&kk@mGMRGCVCEISSE#+EBBZ2p2d)C!!d@`LS8FQD5T23IeEe2+afKXK&I-
+fqFq5,FL6(G(6hDVISTRR#6[9@q1XFcE6XAZH0YkRTpChrl1Ii['Y2EYrVprBHMZ
+1BBZ14KAeC`1HpfRk'If9,jk3!0@(kGGbRE@H3mQhf'0T@ZXXCGPMjpMZX,mY[XE
+j&a9E2`,(lD%q2r(#+acYeRYKEp&NYMhdfM&c02d2kC5MhZ6aRc[&lh(iFHFH9Hk
+A'Ikl$TfANh826frIr@iHZqVbffr,P0Y8cPG`HQimACbfGp3Y-b,LPRmT6XB)p0A
+3TkE[-cI8-cHl5hh(D8I!fN5VKPqe'#,KBDaYIVZ9a,6*HhEl2&,$,@2C8YKBq"4
+f&PX[Md0cRjq0d0IBq+T9RGT$GAd,%R$0l+3Q,dDGpAjj&aqlZp*5cqJ0lap,MRV
+$4fAe1,a0[i%@dTCrBm@%H8q`NiCkUXY(,6[[GXj8A'Ccp*&aVU@MS8lR[%80-A'
+5Vl)[)Z,@LlVM()Z+GmASmN,Lk,a@KBZ+UKZINl6*8l(`pfT9R[BUAqHKDBILC[*
+E,*GlBF3Kf[f&(`2JBcUHXb3Z-kqPaR-AQXVk41%A+EL,%TCrB8EU@A60,MSKF5d
+pGNUAdmSHTC9aBH!Ni)Tk#,M'el[1&KV-4iA(+-A'G&a8UE+PSQ,MPCmr5EGdZ1l
+fN!$`mp#aRq*2KXXPT+-Hcp09aQU&,V%R"phk0THD(mTKJV+2f,+V&a5kEIC)9kV
+MS&A(SC,(HEP+q@J,M!ee+[SI'kc`88mHdr9Z1daaD+aDj$8T`&KGT9KHilr(I%e
+eIfe2"T,ISA%[EH'Uiq"2RfqLaZLYG'a*PEU*KJqYC6miLiPcP(d2kE#RiIN9H9k
+c[D@Gq5eISfH'p,M9E6m@0KX+ZZX2CUZ&X1jrPBdE,hE6Rq0KFrAHcRX5Rq56dra
+f@$CAeIL5f0K[HleI'p2%bY[ejDlKDVkR4r6lkTk,5ip$rhc,kXiIRNiC*GpMUqi
+j+p,4l6UbF0G5daqXHci@km2EqRGf5El&[SUlEDcp+VM(lV&MV[3eQYS@@EcHapM
+fE$hHK-D(DqRa-'Uhh9cFIVH,I1Z-HpKc-k'0K,06VSM-VKr0D!Xf@EBf&kZZimY
+$`XCaZYmE%$NKZS6UQ,#T8[3$1*56rkGK@[$UHr*8rHDr-9GRV15'pXBc-fcMB-m
+-(ENKPTR*$2ANKY5"%dHFa3AAV26XYakFV3MAK#6dS*@)9ejb@VVP0Rjm39LI@kl
+PbX#CfNrQh@kk`311@$@kka`LM68$5aAkr4bV@PYHViUNJA'4Tp&XJR0C+J8[0hp
+5Ne6A966heif&)TRP)Fe#R$-3jk'G+Ap,$TBG2$jX,BTIf-1dKFMP0!-0[$qq(fi
+H,$bBIrd2pbP2iSIm&,Gp$J3pH&r$rb(m&T,lX2rL`lhiT$RaS&*D8@4LbNA048b
+N224Fr&D4CpD4k@,UiVL,ViY4&fmAG,4r[SYa&i-9h&j"4rldAi#MYp&k-A!+0rZ
+LrmLpZ,#LidA[aa'T@XMj+2PLLH5MbXIa#L21afK4(j8I5ak52UBqUMZ)q[Me%IE
+ape(VBpR(YBpa(ZBlZ2r+2r12rD2m%IiBr2MhXHpMr4(qZ2eiq$(r#2rf2L4mD2h
+j**+U5ZNj16Pj,+6i8Rpbd0Y*-qj3ffNqM*f-RD080qY*Yj2lj2YbH(*j#d2r"*q
+16d*0p*qQ6rTD)ra+)iFTJ2+)ifAPCFP,m1@cPjf@ePd%[6&$qUPkbAVTHd+'kfA
+[9SEi8[MbhN[Q5qG,q1AHbm#ArZA!Pi8[mjH,,L,3Q[Q8TQ4QI#@Jr26-r-q9-dF
+cU*PY-dmck8cXjReCQXQE'CYCQiQIi62#QH2-mHCrT-mkCj`#IL1T'HJ)f%1`C"q
+$MJ99RU$N5H*mYG(2NQ(kFcC+U@K(,,3NPN"L4lQdUMeA-S(`62JZpKkFrdC9D!a
+'8i"+XkmdlD@aa1aqI)P(d$(80*!!Nb&MXMB*5*fKeErh)e!L`mp$&9)X*$fD%T&
+86,%&#+%bZQ0"K(aVR!K!4J-feNXUS(lDZK4!6'%!($bN$5eFYDdE*'5Ja%L@#-J
++FL#NS+kN&*dSI9+L4N!d8Ld*j5NepNFF8*piZCj)X&aLpa[FJcC*@Mj9`Z)Nq$K
+P0RBUGKq0qdG!KpN8aRFhB'`*Ded[BZNYTRBPYfY5TIb8me8UF@'XUBPa8UHe)CQ
+#TPGIPUC5HS[NpBA[2*!!ZGS''$PTIQ-+QQbP,G8c'6,4Bh[je5rK&L*6e2+)JSJ
+FbGf!89Dm+65@j%*h)[FM55MP(0`RAHfi0h8h9[LfPpHl[Gq&hH4lZdUAep[m,RU
+G+pT@d9dE,Eh)aDh@hkF18e@&-LqhHXBG2pS`jY,kG5TaVSBI&U9-'GGhX,5TUUl
+KZ--9YKHpf&0Gr6Q'f(K`b*fR[i`q2Ge,q,MM$X,YYKm+p60A1Hl&SDLTIe19h+@
+3!1*fI&[q(`0eZMLjKV,$EF(Je1$8U-D1"ZYCDDc@-D0TKhipEe'MQhTShfY9SmV
+YK88+'pU9-6pZXUHrpUT8`0V`8D1)0(,M4R0Y(k+0'TD-D2Q3!,f'4VA'MABJ&10
++6hcd#)dSYIGlZ&G`lqFND6@012AcD&+REE[A4U$Y"c!IN81[q$EqEb9!8Nl&i[)
+iR$i1kh95kTdXpDIZ`r@ZEQRE@qjSAelJm6Li2Qi0Y5(*khBfQ(E&LLZ5Q'pXm16
+HleU(TB%A'"U+E3Sm[R0I+SFIPM6cPl2c9ePpI0Ri`j@+G+E4YEDfYVfImMR!2cN
+,&(26(2+Ub4ceerGQRDIQ[YdV'E1R9)66jD4E2dmpG6mc6S,(Y&deCD$mGYrDFIi
+0aPlKAEXrpU@Al'P&JB&eE8*,E$Z@hE[,fTam$!`'1hIlqRFdqAS3kfT`,[JdrIp
+r@i0p`04DDbdr6V2Db22F#ZVZ2p[IZ2$%aD&,,AHEeBm)CcAc2HS8XcFkR@EDRR1
+jp[0EC(KbU2#R*4YDG1fi2YjVK6DcGlZ&MZ4'dqATCIpkVAMhm)k9MZUNFh-XH%X
+,k`fpYpZfpc4ClCCR-mp[m,pf$`)DbkGhP"rRP8ql[-hF80hG3aRR8k@B9jAr!pU
+E[,R@EQPV0eeY6Fd-5ppMqD2,8SmYlYDIV8mM0A(&,pkT8e[#hUB08GpfM[eM826
+2I(ID'S5E3j+KR0I1!j(IGqCR+Q(DAIKDqEA9*Xq,&YSY[fIik3ll(GcDl",cqeL
+e[KC'ch21HkX$92rUF@j1KRCUlqEc!lm'dp1fmrLHj4d'mc21rNpcepeaUPe8GhI
+1HA#pRIbZciZeb0a@qTVF6'E+RCqjU1$Vl6@Icff$3hqXUHXdlm1pp(KB'$JB[2)
+llkEElQNB5XKFh1&a2[E2Ckhh0jCm3X0iQlf@4jlIm@KBC$9Fqh(1flmFR%`5pLV
+bV9HA4dm,1F$$Y2`qbaj3ThX26l2&S@frh`mUh,SmT*0eQl2Fj[RPJE[meF`qKIh
+m9e0c0TL8XcN6#McRdG6EB2,l-HAAI)ml@ISbqBXlVH!QkE@JIVbbm9c5bqHaR$i
+Q*bZbTfq*U+QmeQkfd)YV[q$Kh0+jTfq"i1ehplZm(!U@p5DVbN[U52+NBF1,lim
+MlbB"HX[lG(PF81Fb'T0r0MbVNFQAiA!H(Pe5[,-iA&-+GQ2+c2(IXm'NdmXMR0r
+Iq&F6E2#Y[@jl)-HAFpdC4cMDa1ZbhZdXepV'6UQ44j@&G4k2VGpc[R@QmHlbd,p
+H96GjA,rH[XC`m+&Rje1pY-+jhP[V8HA!1!0TjE`cVB',Ei1[A#RVGP5S02,MDXH
+@)dmV2C@'U(PER(8m2,R1bpKiHA8MbU02+h4j9+Q&fH$6DH9!HAfKjAplFY[,fX[
+8`l&APCE#PQ["m'@'C-+f$ND#2,-jMRR`mV9q2+k(Pe[%[Uhe,U&RXV1kBmYEYX'
+'pTA)b&H5D#1,IpVJ$bqMl1rhHeBmX1jTiPRXpRi(YITBmZ9lrPrF-+flGRPBC%F
+R2A2%(PcB(Y2,8i4Nhc2((NZ&CMbYR,dN,(cIScX[IhZUe6(PYM36e+I'('EjYjG
+LC0aj8qTc(A$br2Pm[Pi2,bccp[5I4VX2Ie%bEb@q+4iZ&BbEd,DjeKMd`YCJ9-5
+qU(,eE@P[8T91HUHYElE$QMb6Na-QqciR#aE2!#UrpqTaplb,ZTahCj9(@6VT'C1
+V5TKI3i2QCbK2Y+RQY2)JHL4AEErfmRa*YGa4jB(R591lUF2h'2)dqaEDrh95GAE
+6*rPTCEMAFkT[$34q6MEh#kR-CR,HecRJrDZ-[$&,flTYG'f&%C[KjF6DqcElQ,C
+5AZ),MVH"XV5dl'fS8,6$eR!i2"`V5haF0(Pi9YB@q,5lZPJB4q(Te+,&VN(r-UE
+,!`HiXdjbVr%i[VDr,iahH8cqIp$3h`GdCr+rC-d0jE8DRTM3hL6l6G@Q[Qe@YQe
+[@V,'E(PFMbV-!d0i(R4BYT8i@r9jDlMe-51FD5ikfIm,pp,i2@Mb63hZF("p29G
+hQIKEc,drfMbe3*ZXpR!GHifkK&Nc`[`SYNFd*UcS8k4r63&9bq[ZI5N'DRX%Tc@
+G3NTUC6QGS1DLMl!9-%pL3U8kM31[dpi%0CKef(6b05Tb)UQ,eVRpN!$R8EGC#&1
+4qG4Y[GTU+TXkM8rMUDedF*hkRZ)YMX&2$*1`((-9LGG!N49-r&VDUKl#"'-81j1
+NR@#Ke25&+e8+IjDX3kPBQ!@c5&Ua2#$+kNpY5*eN'c$a66AG@SDmS3B9K3&Sdl"
++(4,iX+#V!kB-Da2&R+ff(#YGi(5`cil$V)UG,dC+#SG0qD#!QT6lV6Jrj1'3!$r
+81DKC`c*XUd"jRG2$jd2R3kb(ARQCp3UlXBE8mb2mBH)9EreKjd2b3r+HB(kLUrV
+`rD9Epb(pSScrYUdUIbN@3+Rr#Lq)94j`UES)ZP0eh9&5q`Ll1,Z5T1[Lf5lU["L
+m-U6jXAr"8ImmAkS[AL`)[iaF1,$AZ2Viq90bA-afDlMY$(SLlRV)qaMlBZeZMF0
+hdIq"GRidIPaqDEJ[3AF"q`ZYrHEIX+2qdN4GAAbFUA8j@6iNRaj1I,TqPNqC*mq
+66bI5Nl+6YT0C*XT1qAEGiXRP5HBA2qHEE[dbHUA1i-RmT1**Kb9#jh'5ikAPjE+
+A+bjBffCZAS*HMPq@EE,LAX#jhkTFlY*HrPqa,pUAa9ZGr",jjYUi%[r4YSi8[$P
+imb5C9VFhBc2KPc2b*R3c1PQD@CEc1ZQGT-lQCVCRI62"QH(-mZCr[-r*-r,-r2-
+r9-pHCIc1&-pfCLcDbEMC[+cE+Ec-hidhRTZHQp*0kHEmkETjZSQpa0ZT[H6IVcI
+mC[L6Ip*[qmhrLEk%hp%hrQEqfEqqElNhqXhhTdXkP1XTh`jhaCfDR@XlSCh5cY,
+1kUGF6Z`RGR1ZCfXRE+GhUILT!4X)GJb$m((!UK2P6jiib3mJcjkc*#j'5X2hMQ5
+eXN`qIG@Gj+!MZE'b`Vc3+meFPDp3SRm#S%9MiM#K''JE*iBcic[T,Md'+THm&I2
+L5H9jUJBG3dhi1e6$j1pGEU@"cqYa2'9!4U"!`I*-P58MDUPD%L`C3LA'X@8YDAJ
+Q"L&f-+QeE5F3'BA8%&T+f6'5)21SH+Xbij)5PVCDf@[@)'%@-3k@G'3%9P@DQ3e
+@4#bPSRRa@V'MlFc2%q'KYMj#'*A,4(eMUMkd98$rejrm8q6NB#4"*mEr1%-Z!KG
+G-ZY99*Pab%1`K&S1QkATi53aS%Cm&-kReDRc0AdFG98U(FR,#CUqRMUd$-Ck3'D
+'1Y3-jM2JCR`HR43bpX"PV0k68GPEh'SD"`!!J$4JGPC(G`G`GiK`F(!!F(!!!!!
+!GhJ)F'!!!!!!!!!!F!GRB!!(G`!!Ge#!J'G`!(8("R!(!'GQJ'#(!(!!!!"QB!!
+!F!!!!!"`!!!!"`F!F)!)F!!(!!!!!!"`!!!!!)!!!)!!!!!!F!!!!!!(!!!!!!!
+!"`F!!)!!!!!!!)!((`!"0%"399"3!!!!!!!!!%!!!!!!!!!!!!!!!!!!!&!$%d0
+$L*)%ZJ9!P[Tmr8"V$1M'K1M`B,pA0Jq[&G`i1UpYIQleeK[6ZrHRC!U3!-F'GNG
+m4ZHNBmQIirVpmX4SHj,2*NLBHIH0M$Tl&(2q,eA4I"If!L8DYBp+&erBLDLRmc[
+#+,@++0lILch8aCMk4mj8bl391@T,EMAPAP`brq@BHAX00)#D&AqM-,VP2CZ*mI*
+Trd&DS-PK2M"RbfEI"5#0D-Aam!M0LGcI8-aj+mlPS!!!J!!!Q3!!!!F!!!!!N!!
+!!!!!@C!!P`J!!!!!!*!!!!#3!!!)!!!!S!S!!*!!#C!!#BN!J!"!N!#&GQ9hK3K
+fGQKf9R#DT!F!L(L)L)L)LCL)L)L)L)L)QBL)L)L)L)L*Q)L)L*Q)L)L*Q)L)L)L
+)L)L*Q)L)L*Q)L)L*Q)L)L)L)L)LCL)L)L3S!!eC`#'4$)PB)%40&9f9QC@GRGR#
+)F)#!!(L!Xl1bXV2Mi1mpkbXj*DFYDL@LHVF55f*,LVBZTN%AbDqbI(*D6d9d93T
+5d8UY1Dr3`9lK,5SRZTT**)8jVA"4ZfRm'6q$"qm*qm"r#%rK!I`T2i8(m-6q'"r
+$NrK`Ia"2iK$ldpLAmH`GjlVKr%aKIT@SX8kLa8BI5L*NMaCNH,&"B`RmB$q0*r'
+V82eZcrki`T58QSrXBMpaa(pNBAUDlNXQ*-FC,MNY2-f#imSFHPTP3j!!+()4Km#
+)@@*b*4C%@Sb42j*E8C-RXQP!3RDLbK4C4+"F4-NH9+2+LJXX6q@"r,NrPeU(-%p
+Q%U'UX!c*4CN4r0%rQJIcC2jYCpR#HcLB!X03rD82fT6k)@5(lLLqjC!!jdRXl'&
+%Ub,2&&RNh*RZ9h+cj4jq-2qbe+JiZd"5k"D)d*2D'-2RKJ*VQiNq+Y3e6SLTd8B
+9V&)ETD-T0'XVdK2D5-,5DKI(ZP+25aKFhp-E28@Q+,64KE2VCkFTG1-GkJRp3$q
+T*r8VBE9%pUS`Z*X#X"eC4kX5$lbIqpC"q"2IK'%pV8U)FKEdkY&H%e[AQJm&@Um
+iD`ZGBQN04U(@P$VB`Yekcea3kj1cJa$VbLekehX#Hf%B9&bRX5Kf-8$@ie$f45E
+*0dClCc%,e*q*5IM'(c,FcmLKr*,Q$ehXfSVHDMCh[i@3!!fKJ'dM$k+eHHhUh#`
+ADP2Y4LRE%rYP[GYbHfmB5fpDrM*@i+AF,!pb6fj6c'jUdX$r-TIc@"rS6hk*UV,
+8Y+DpX0d8ZkM#[JEPI,ql+2GaKG5h0DrVS[[#PhNBI8U(HP$[B`rilV$[LNhb@eX
+9QSYq8@r4&+L*PeH!8I!'RA"*rJJr`LIi32m-Rq'$r%*rL!ra5IiUkBFBRZ0'-+X
+efX#ij5FH0h*Cb8Ve0ASNZUUC&SPRZCT2IC&q3@I)6p2Alij*3mP25ii0r8S[e@Z
+2f*lpNf$X@PHCGKH88[+F5eLPjC5mY,Jh8ebe(c#MjLHj"mGjT4FeDYja2Fj1S+k
+ldmmSZI'&p(823+,S,)[h*lpdX,8QYPc6r"5Ia'(b[b4NRk*5p&C2dLHk8B6B'a2
+G05G-T1QR&`jhkK4G4,RZ)Q82e5MkSbTeLIkbe0ebHklQcPV4rjU6q5NrQ-2rRrp
+rSSrkHHJjRrlil"9GKD2l*2GQ-2NII5ID+AY4KJ*DeBD1pXTHfXSlK2Gb-,jIcC6
+ZP*h8`#%AH+,[*cdl"Zq8RI4*28Q(j4i#Pm!`(i5Im+f-m42H*1HRIQhM+6aTm9F
+lV-N[N!#MmJS6bNrj3ImarP2-$rpPprB2ri6rq!rjbImi2qJRr3$rT*rdJrkLIp3
+2qXRr@$rX*rf!rl5IpS2rk6rqaZ`!!)"&D'GhK`!)!(#!L!"J!(L!#!!!!(GJL)"
+f#(!(J(J!#(J!GhJ!#!F!F!"h!(!(!)!&KBD!GJK`93KPD)"`!!!!L(!!!!!!"QK
+QKJ"`J)#!#)J!F!#!"B"J#)!(#&!!!!!!!!!)!!!!!)!!!!#)!!"`!!H!!!!!!!!
+!"i!!!!L!"`S!!5-%!!!!!&!&!a)d9B3L36a!9"0@r6b@EhbZi1eSG#5D@Hj(,lU
+H5j`FlCfF8P(A`q2*XccafZcFXle3Al'TYE&F#N*R`khPrm29[eAbQ9`phheaITP
+9mjVH(&i-%2[PNI2jj2EZBEQj(F[F0D%,VA'CBaD0&M0[AIC$Lir$LmerErG'CLe
+m%8RVScH#Tq+hekH(&*ThErIkR`rh(cID(dXAVcYT4j*VDeXHlZiCCTHaFQYcfTT
+F)rUdrbLd#Y6!Yb"1iJQ4qFI@QPMNQld0$Yj80$4p'P[i-H)mXJRaaZ,EKR3jm9*
+eb%9SY+'F"[e8hXNjRTBq0VlXGU9lid+[p[j&)+b`C&E2(!cSepA@9aeBHRQjKlM
+9HABBA#'e#Vbji!!!$8aK)'aPG(4bC5"RFQ9MFA9P)#4FB@a`D'%N,#!NA'*PG'%
+N,#"PG'-Z$3f1E)jYC@jdB@PbC5`JB@e`Mh*PEBpdFQ@!4'9@C@Gh#!C`J!"i!!"
+`KiF)!!J!!)!)!)"`!)!!!!H!!'!!!!L)!!"RK`"`J'!!CSKPJ)J(H!#!GfF!J!!
+!"fCJ!!J!!("i!!L!!!!!#!!!!)!)F(J!!)!!!!!!!!L!B!!!!)F!!!Kh!)F!!!!
+!!)!!!!L!!)!!B!!!!)!!F&3+!!%M!%!!!!"3"3-5!##%)S*h!+JQ#1+1+1@DpBl
+fRDc3aj-qeQeqRJUP+9(Rp1jKhDHl@%r$pZ6MmAKYkSmeS9EI6#'Vm(bf2*Sr,Aq
+2##,%IH0e1IcmJq[&"ED#e4V9U*p#cTD2El'ehrV+pMbim8PG94UQP4+e9UG1[rq
+$0,pbbbBeBkMRdmTG'cbI4"(#1MCNck4B9S6JEV3RXAEqjkr4IVhI,6K[cAHe60G
+[8K[2K2(laqFH+2ZHbB6qhf6rJ&DF,N)fr"XH3'GABmGcXLRVdFc8eHIPr9(-K0L
+%r,rD1H'F*Y8'Ikc[E[Q`Am1rkV1$H`X*!!#!0&"@CAG`#)"iB!#!!!"`J(D(!!"
+`!(CJF!!!!!!)!)!!"e!)!!KR"i"fF!!!Kh!)"JGR!)B!"h!!CQD!!)!!F)GJ!!#
+!F)#!F!"`F!"`J!#!!!"`J)!!!!H)F!!!!!J!!!K`!)J!!!"R!!#!#!!!!!!!!!"
+`!!!!!!!(!)!!#!B+!!%N"83!!!"J"J)5-iL5#H%#S*GVaqBf[I46[F'#pKq-F@1
+VqScSrJ8cV@,ISXk0LajG(8Q&I`r(eqQ[DTVN"i)kGlc4&IRIPZ,(Rr2FTp5LTHe
+"ZU0Z1Z16NPUSGq`GrA$Zd(Ij`lraYblc4e59B(q0SqIl4QSYaP6mTHLHVXB[CI[
+AdDRpdH5I*'[28eVQlkea+*QHDH*5X[#04pqBQqqR0bJV3MCL92RYqN'9VHeXk3T
+m9'6,P9I0hG&'4#DX6Gh04f'&L1q$1(-`ApflF`iYr-Zi-,")!!!!J$0RD(9BJ(#
+!Ci!!!!"`F)"QKi!)!!F!#)!!!!#!!!!!D)KSL!L)GRG`Ci!!!(!!!!F(H!"`!!J
+!J)Gi"`!!!!CSH!J)GiKiKiJ)L)J(#!L!J!!!J)#!!!#!!!!!!!!)!)!!!!!!!!!
+!H!!!!!!!!!L!!!!!!)!!!)!(!!KJ!("e#J!"*!4!!!!!"38$%b4!L*36TJ9"05+
+X0r$9`hq'VL[m999qT"(#!*4FcY$RhG,6V#hFr(fqYh-Z@M"BmmlZGH)YI"mYiGQ
+ammlqfJ4Lcp2h9Ka0fV$&&AqM%rKZ[b'+p(5cmr-)S&j1EdVYj5IBkQEP)4Sj(@[
+GAV)9d2q"XABbXIHjQ`bi9h@`4&Hh%8fBLaBL,0-4EVa'#Y%fCLYhS`9qM&ZR*Lc
+Bj-@,0#D4M!E)M'RCRbcj*mFqqI&1e1j2VRh6jTffR[41l2R$(aRERdcl*hTq8qf
+I8pqQAppANGN&C-ASQjfY$4"R+d1hHbK6bk0qUSjRMCI"UdEk%iXCI"Y8IU11*ZD
+$0bR@lqRUD@[i1l6UDfZ`5!!!!)"%9fCPCQGQChGhGhChGfGh9hJ)F!!!L!#)H!!
+)!!!!#)GfF!F!#)GiF(C`!!#!J!!'"QH!K`Ki"h"RD!#!#)J)"h!!#)J!L)J!!!!
+!!!!)!)!!J!#!J!!!J!!!!)!!#!!!!!!!!!!!!(J!J)!!#!!!!!!!!!#!N!!!!*F
+!!!!!!!F4!!%d-&!!!!"88!!!!!!!!&!%%b"!3)3L"-$q`K)")A3KCVD[&aF'pZf
+q$acF@rF[`j1@V6m1r`Alfp0f1ceVdJSphjqhefHlVk-3l1rlHf(L3(`rRUIcr!L
+K1l3'U5I6TTVl0(BYhq'pVF2Q#ZCke+8YQhFeG[EXpA8#Z9*"5drDlfYDki5Vb3d
+bLp8012RMkBpZ2JMk0+ENjG,4!ZYS!A3c`,Rj`&cV!&XCS&cF`#jQ@"F[+!Z9A!Y
+I*!Z6N!!&b-F#iq-"FE&!Z,L!A%``,Ki3&`U`&V93,9U!@TJJA"TJ@R5!Y+L"D-S
+&PS!@K2!XqF"Cf"000*0-Aqd9[`MmBqb2[MmSdSdN#1#(5$k#0*[dcIIa5rJ&@)E
+N)krFYGm'BYVGh1N+FqAQk1JlLI0cp5AQ363K0chCIe!a%RYK0rrlSmGkjGYhr,j
++0hM[X%J!!)"$9fGQ9QGhGhKSGhGiD(GhChJ!!!!(KR#(#!!!!!!!J)#(F)J*#BH
+!J(C`!)#3!*J!KSPhN!!!!)J!!)KRQ3J)L3!(B!!!G`Q)L)L*N!!!#!J)N!#3!!!
+!!)#!!)#!!!!!J!!*#BL!!!Q3!!!!"hJ!F!!!!)!)QB!!!!#!J!Q3!!!)#!J!QBJ
+4!!%N8%!!!!"9!!!!!!!!!&!%%c4%"*5J#AAq5P-"*DXYLj2r[1!e$$!YhjBi3Kf
+,P+Yp('dUpLaa+r+eVIhfZS`AU@ZId0DeVfTNUkrlH,`kA*dFY,U(hDh)!q$q[[q
+AM"&'KC8Si-[j35LPc4ZbMq&,b5qf,L&ac*9)m8ZqTR2+T,f1#rhPrmYZ0+P0jrk
+6lEPmTHZ1D$rl3re4bjHf2aRRiqIBiHG`ml24@JU40,0-CfTCXG@2M(m4m)p%Gf2
+`MLapFGE-Vl&c-b`,aXS#j@5"FR)!Z4MJA(hi&hpB#eYm"GpM!A'a3,LiJ&a--#i
+H%"F,HJAHe3,9hJ&hQ#"F(!!Z"IJ@r[J,IAS&[E`#hP3#e+B&TcJ@HN"D9%#dEX#
+hG!#d,U[AVc9kjZ2-,[fBr52cM[4fifSl8E-GL2"&1+D#0%1N(d%8h[dd1jjD2r!
+V(PTbM4qQcp3-UfG66i!TbD@jmrQZ4d0fh5h%*Sbd0hc8[6)K%hj!ch6p2TICUfV
+H[dCpATff#3!!!)"$B&GQCfB(#)G`#)"i!)"`D!L!!!!!"J#!!!!!!(J!J(#&F!J
+(#)C`"fG`#!#!F!!'"Q8!#!#(#!"R9SH)#)J!#(!!!)J!H)GiJ)!!#!!)B(!!!!#
+!F!!!!!!!!)!!K`!!J!!)F!!!!(J!H!!!!!!!!!!!!!!!J!!!!!F)#!K`"`N!!5-
+%!!!!!&8#%J+8S362!U#B-AMS`be0rX!b[,elGDDS"V1ETGbjDYfqhDdk+GUpjf&
+ke(QTSY9"6ZF+#F(eZGr4ka(CFZe4h4YdGrPjV))UaM!f9-"FMH&qAd,Pkri-2LT
+Sdr*LmY&l%rBG,)X!DD1c+60ScN*hqArd!6lK,U9*@"Pdj@)p%Ik2c(pMm4mBp8D
+%DmHPaVhaMMj4mihSpXEXHb2G(dHlT6r$l9HB&G@9f8D2HeI#$-c9eV[A&1G@iqI
+R9r2bF9EM3QV+Ipc9[e,*%eU8r*r+qcK[i,e1,BVi0QPK)!!!J%0JH'4SF&!!F(!
+!!!L!F(!'"i!!!!B!#!"`!!!!!!!!!("3"`#)GJB!CR!!!(!!!!H(@!"J!!F!!(C
+R!!!!!!!'D)F(GSKhGiJ(GiJ(!!GiJ!!!F("`!!#!!!!!!!!)!!!!!!!!!!!!G`!
+!!!!!!!"`!!!!!(!!#!!'!!#!!!!'#J!")`3!!!!!8!8#%L#8S36@!U#9CX@1Mr!
+@IrPLajd!U[1hYlRYTZAU`Jirlhpe[BTXXeq(aej5XrTmYLak(lZHHU#+mGT#Ar)
+#qS29T8!EebSMPMQMNMLMVM*(fMSMUMXMTMlZ2BiqNF-F%IQ2N!#6MMRMm4pBb2G
+dVAm[jrZ"@P+l++IIHfJCShYQlU#R6RiCXaKqLePqFr"#DmV@@QIM,dLEf!brB`E
+fj9YiGrGX9B-,#3!!J%0RGf9)F!!!J(#)J)!!J)"R"`!!!!#'F)F'!!!!J!#!J)C
+`H!J)KS#!GR!!F)#(!)F)CR!!!!J!!)CS#)J(L!!(B!!!H!L)H)L!J!!)"`K`J!!
+!!("`!!#!!!!!F!#(#)L!!!L!!!!(G`"J!!!!J!L)J!!!!)!!!(!!!)J)!)L(#3!
+")e93!!!!"3-5!c#8S36P!9",8Y+p2Hk`'`H'"F,CMNL(5[8FA-YpblEU9D[,UG+
+hGlHIh@&mrQf+Y)Eq,D36Bel(4bF9,m+hcJ0`IAqX$&"&10C8R)Pmd%TT!m0ddIi
+8[C,3LmbV0PKaX5e9CcPKbr$J[h5rdYZ,&&,iIC2YZArPpBcJIpd2qNG1AjM`cRP
+C&@YMeXI)4A"@%T%(+A%*68M@Md4kBmXH#2*'R(MMe1QY'2j(bMpamBmmGq1C(9M
+[2p@[jYQRr39aTCFSbHKCkJ-a,1CPi`Tip'j[lkXUpqr4Z)66PA[qqMGP`"08"RY
+RFl2AYCphYGLGUjGB5!!!J%ChH(GSHAQ*H)Q*LiQBL)GTLCU*LTThCiL+LTL*LRL
+)KhKiGhL+L@Q)L(L*QCU+Q)HBKiLBQBKRHRKiQTZ,QjTjLUUCHTZ+L)UYMCU-Qjb
+,HUUEUAD-QSf,QTf3!*YlLTb,V*U*LA#EQiQVUT!!QkZFLTf,QSU+HiTlHib0HhY
+TCQ8J!!)M0&9@ChGiLCQ3!,U3!+LkS,`!b`Z`!!!!`!$!!!!+#N!N4%CQC@CfChG
+hH(H(H*L*H)L)H)L)L)L)Q)L*QBLBQ)LCQBQCQ*Q+LUQDQDUCUVZiQEU*Z+ZTUF$
++UDZ*UCQCK#-!6[2GK$@!%S[1Lm[J51[lcIEZlh9CU,LAip[GAG%##[eZYeRHDba
+lAYD3!!EN(X3mDG$bq"8qMp[r5S!45khC"",b+)$@9!*R)3Sr$!4(!*)K$69d)dc
+%#"IH+GbT[cj-VC3KDI[M3QGE@IYKH5[#PEk9XU(9Y2hdFH`lLYV)[NPB'LmTX+m
+,`1(@k10)deG6FqCI5DUXXiZY@bBZY+`2SHKBEbIaFj,!KNp9r'IaDfSVDi*&4!D
+j,#,J%)QILdS8,f3@5i3[Y)!LKeE#A&0VUEB@@NXSXEBm-V&TT-@-UCD(%VUS$%k
+dPd1X8fde-"6@DV$SGDVU0IjPE5f&PPj)'U8)idCG,5H6#-iL6$Vhd1XNqMVe2CP
+d1VZ`pQ[Xj8f,a5V!"-DU#T1LDp338-flS-X0CqfTjKL!XITE$`4%*mGTqqQMq!'
+3!+ERf(TeYF)eU5CqD69I1XiZRi($QG[*UUfQdeG'#Z4Zi+$6-`%)kGr[5i&rjS"
+XIIqFAXU,1'1$f@4C$pdV9IaLpV`1(SkDPe00rMTXF6+Cl2FeAcIYE@$K"@k!KeT
+cDfPQI6*mfbAXfQmRqS%Da`"1b#FHF!6XVrdrR!@RqX!EP6rBdYC2`+5cK8r4Xjq
+!!cf0KCJ+pJ((,"CibRK1)!iV!F4G-!h+LkPT,LkD4p&ITQPNaBB3EX0*CaBC$12
+,L`V6fq(1K4!5a4("84GB'Aaf'jX0b$+LX0cIqRi($+#%@-Y&KZ5cPKh&Kh&JM[5
+X$ZU4(mq61E`!PVfIN`[)G[+`*pUCNSHmkQ5a!J'*+`2Raa-PaK-PL*-PaR*N[Rj
+G5,2S962a"R[DdeGM`#3T*@"S-1dhP"S3a`%1JkM'N!$c&0-ljiLJq35-I+LLBeK
+@6q)!6lhdI*K5cr2!a[L[drd[!iB4,l-QU#l8c5SChY%(,m3!q-`!XZmlfaPE++J
+B!-6bM#HD9Y22K@8+%@Qadcrbp5II#9BX0c-qJ6CY@ZD)M[K$dC!!QGj-d,58@1[
+f@[%e'%DYKQSK562lC09R,21@YE8AqZ-6&&l,U*MU"lZT+`-pbQ"(0@V3)SZT@j0
+TM-pc#2613J-d9IHB%AL)TZ(Y&'cc9X+*6!ME[`NAK-(Xq+A$@ma(9G+r5ZPK-Uq
+BJK9&&1&A6U,9d%(TaNd@R,jrU9dQ+GQ,+Ke!V#)TRI@UkUX&E3Ka(,6Qr&bBXBR
+3(28B5FSUK@@XA@Ua035!'A@+5#%3%LFDqb0(`,29BDHB+l@%h'GiE"EF2Pl&&!%
+*1a'lSf1RhHc1jPK4QQ"'LIGl-lRf$e+PT4r6hCrbRYlUhc(kHkYmTK*`(rAZVIX
+X01rIGlUh42PlP&!%CXd@0@`0KDkrYL#-YNIH%m'9cNZ%Hc`i[A$IDV+I&V[mBTc
+jRbf*X"F`AI1A@k1MiJ",d2eSp,9#aTkY4,LjmAUlL%-qi6!HfUMc`G5J#@3()0$
+JDi4Y!Lj*G"S@X269"+hLU*&!TRpLS9-qqJTbK&8b3U5,2`P%p%0Kk)$UYJ4B0bE
+HLj*Y*VL2#LS@p+ERfQrS[9QIq#*)qa0U*3LXa(%JV254)1-"VM!1peJ4d@dJicL
+3!&Cm6"lP##(i3#AciJTpjN&,j)+HSA#EJSD#,jB+ChZ4+"kJJTa8JS88ck38[b(
+%F5#PqX&+cZ@%NNUJ)+HN)+HN5!'AT,&-#,dLF038V-k`dT!!38qmm38!Y9r)3J8
+8F&AUMEp(Uib285$i@"(0FHUVhk29a30F8"hi@"(X0[9aA(UUc@!)pjL8J2kHb63
+H(X+,8VEfF9lHcje"K*4&8RrVf9G)TTmliA`pK&[B)3,SQ[0K5dhm01MfF9(X*!9
+X)4k!RBj8cd'6a#I5Vp9CiPTNbSTNNre5Yp(fqpZp[EAHqhN$6C(hYeYR!k%$6j`
+IcFLr1K-d%#UCkTckV#6#1(XeX9!!fI60FR-aX"ISV*)8LF&JNNBX26!0kS&YRQ!
+%3MkZ63pAF`K6U,I,d@Y$5%"LjBK4kYN`Tp-%L0Ri!JcJ"INqi3Drr!TG)fQciFV
+RJ`k4kA4[c61GIkd%A5[lY-c$p6HCKj+5fB39,#[pk3B&e-a'X8!Q(-qid,"l*fU
+QaEp+e@(-i4AU+E-ql*-$2)%G%hVkEF`4$1NU'62X5TX*-V!aUl,#$drL!1XGL-H
+#Km1CUXYCS)D"XDlN!QE'!bDEl!3M"!45!)jjb3J%I#!LP!4qaV#'$36NLZCUH9I
+KLEkJ!5GTUbIa5Yc"MCR8kFeI"QQI[M4lr@ZiiUcI`lT-3!aXGb*@"(8'HkPKkCY
+X9Y3*GZD3!+c&V#S#J"#M,&#"Nk%Qh++*DX5r'2S0"jJBb1V0!@iJ&Va,A(+PB%9
+jQDS#&bqEM`(*+@c18N89#9JI0a8QBQXQUpH9JGc(D%J4B$,Bdk9JGA$,B0cU%mk
+#P3cI2@QC`jPbV`MKG!VJ*TUL`"B!5FNVh4C+pqYkPHk5L`UaI'JKd'j)ZN)R[))
+3@-CTm$2LUm0JT5TSrFkCj68YJGM`GLDch5!*d!LA2c09Q,1+KU`T!GD2Q$B'R!Q
+fU"9!"@bH%J%X!5$K!BdU$##&Ch4K3bAb-*C11!LL!4bf3%pPN!!6ef3%jUTK&iS
+#*`6M@P,S'[JL9-RmkS"-+Cpa&`kX`BT@VX`@CFbN*CL4SJTee*UY&jS8+R)eSZA
+&%V1*H'k+[4-q`j,X*F-8dX$#SJ&3L'&4`G*Cd-8U*3aG*,SBY$'29D%IcikphcH
+![AZ%Xf-kkdf-lkdhc9Z'6Ad5H(A#T*Vl,k0P2iT84[#-mKbKkF9QbSX%Bc,(J`m
+-jG*K["U!Zf$T!%6m9HU9D5jq-#$"*J3bdPcX966YqEUX1IM@H(1a3T(BjAr6AHp
+&1I[ZTCcMY0*2G-"2H'!cRi9D3T8aAU19JGaqTp'NYaY2CPcm9YY01Yc54Y,9E@d
+ejUR6IBI&8lM*5!+*ThV*91[Ac91DX,Gad@`VmiZ)D`B+)SU!`8"'Tq+CGPT`SF3
+f1Ll$0ikD`f`(0i,Z22G"PfLTIH2BbQC`pJ"m9CKY34Rff1')"D*fA0NJ0NjQJ6C
+fD1XBR4R1'-aM9QlK546NE,''ijdkfVKPErq"TiGfM'E9'9GECQXFfc-jGl@'FY3
+K8H,UJ'U&SJ-X"",qrB('pC($'AGrkcaYmH`LcET"VrZC,#bPrr50m$Nl+cde-,Q
+(+[rrS!hUS&IG)8"ce"[49'QTVrlYrabmerq"L6'a-36Q,[c%@E('Em"hFL*@(F0
+#NV!cIb-*#F(JQ2"FrC!!#Jq8!p)+TaE6fkdBX&$#PB(c111deb`k'mRmaA3I#$!
+S9"N`L#JQeDM#@3EjPpR0j2i)L5U8LBbDS35k+Hh%YI$YI(YjBTG!9eZUNKR9%0-
+SNhfR&DV#XjX02B@HC0-!e[#4&C2R#pFCV00AH9pm95YQq95qClbe2T@qb[+l[[Y
+$hH[qVj'qmMHIcH4ifel[3GhR*(DbHPjCb1NS89G-e8Vh)JZ'LDRQc9,i($#a6Ll
+eKkBDJAHML0),6@aEF),6D`9*S4h*X$b(4QYN+!BE*VXK$+Ub!bUKLR8+!""@ZSG
+8j+"#SS61'&k6+ZlhrF8R#Ve3'1K6CA5Eq(R8*fBhm2-S8'6R83R1lqZ1ATcIZ6S
+90SE(%j`3dPP#285iBq+GF#iQHYPi5N3QUp'c%6dl4J8(F3c[CMZ&&%'jf[8#l8p
+Q#*b,`+X1hmYJkLlRZ3rhbiC9KmY!&NjXp1aJE0d82CXJY'bdPP2`aDBa"E#`kkQ
+e4-Y6fJlZQQ(IXLbrIL4UGKM*QmkdPr,KVDiUZh&VM%Xm2jF0bh%,8@'fX`k[J83
+)SC0!S%QILE!8F!kc2IM)bLJKif`6U,Jk(KmN3ciK&`FqaBZ%D*BZ)`mqcrjT(PR
+,6p&EMJc!m@QDY'0jL2,5CN6c2PT*craT-cShpY)fdNdi6'9c'rMIHS$%f(91[5f
+&TDbX$-5Pc#Y@--38TFN-"M+1&6M8D96-ab5TLBTf-iTMK8FdB%`aKMM"4$'5lAY
+kMNM6JLLaK-j6eRNJ-dbIMTMD38$6XBiqdiie`"2P'+BFE,-C-hr!f$T*#Z%2JDA
+$,mGQGe0LP%8-H!RBJ%NmmS3iU63m9qbq)d[cY'R`[`L8DAk4Z(lVpmU,pmU,eD5
+jV&qbqb9ITVdNJSQG#5eI$HkM5&MH%I6m6"@#54!5lJ+jb(UBVe0*C8-Ch-9T063
+Qe`VaH0PDLbKTTH5e8f'"SkATGjBkRVp"VBUFAZ"K)C)N9*C3cS2TS[LD0Xble$+
+mIXCD&KN1["'ke"0$!$`Vk8*[m*4(!&6[L&Q`"JRJSBcFm'c&L++JE%4fh003R$1
+UR(TK'DK0FlbKc24k1)mdJQX0[)c@E@JGDlIaYNe*jfRS[%eR(%[NepjV1dR**G0
+%eNeqT,XYP6GXRM8'SH3cUC&IM-j05C`#""2PQV)pfPd*(JLRbZN85CceQPJl1Fh
+-ji6e-jGP#(jQFl58dYcdM5+j2q*j9cj89cj89J3kBVRCr!UZ6ATX"$Td*2Y$Slc
+'9CA5HYjJk!#9h1*8Eb&02mmiaa%"R'FJ#8Gf*80@bkGL2DA1X54rqPQPHdXRp"r
+T,*`jiU2+RVZ6[MCeh(1HT1Zj1(&"1q5rhSf8%[NCIf&rI345BUEaKjM)Nec1R*U
+0IjTb["Id(QBBBIC0q$-@G$TkV$RG-+Gdh&1#j$eY'Ti8N!$Jd#pG19JImi,E223
+ereGYY-p$@0ikDf$q&1bf+iTdpr+R$Bb46Ujm+F`DaZNq&1D01Q4#Cf4"JQ9$`44
+JF#(mm*Jp+b&3rIU'2'GKjq[A$i'k01,iHdRC+aNl*3j2*`d&*arCJAh*rN!8(2N
+45H43EMNrRJ8'i3iLKfU!L&+%iaNp[RRJLPZ2G1#`B[L1,K2)Khi*"rVKf5BdGj*
+2qFB%PJmNRr)iV(K#-3%QC,,-hL21!3I"Tq-"%F"(jfEj'-GAlH3KQJ%Bm@jZd'K
+eMZKCkAk0c5b[PZD++2&PiXl&RBXkRKmT4JbaMiI+(b#e*'LaK&P+ACH-`4JdXPa
+[V"lUCb6,Y-QXV"N`F*!!2mk*1c-5RaRI)%HJhb&dEK58H0l+MK'U4)XeaYHqqZ0
+UP-B`SiU0,NpQNM'@2V')dGMUR,Y@UM"jTX)ba4$8'l6hKF)m@KK1Z%Bq8`DK9!R
+JNmqAb3+FefNbpeV,CN$"q8$D5-'$+"0f,8S"i6%3TGAEVH)"5bH46&bS&$l,R3T
+rrb(U4$!C)Kc@5)IT""R@GjJb)GZ!LR%L'AHT%0"&D4@N@eLfX@eEN5AlMXJNL8d
+5*DpPXV#GjJLYJmq6"1pKLYpl!IPN2&4DXld&4SZA#-RIZU4Q@0q5KVJ#eSdp$F5
+RMX'4SiLfTCq%IHPeFC*$ZU,,(@CZQ"-TiF5IM*Y#I!H-S$diIddlXlB6aASa9JP
+r*`Q9k-*,d#5%5X$XD4TFQr&jPab)*rEaCjKji*kU89mcajGq1dm1*jJiGp3"'6m
+4GU,jS0SD*3bYU*QFB2@V1e%dL@58)bRb$DBa4ef"N!$aPUQFjVDL6dH(c@4aC5M
+6q+-BVIV4!AFriq*(F(j4,I8BKemHaFPH,LVfhMMY(e-(*`8F26Q8Zl(efebR3d6
+"6e',3dLALX9U-iV6@fdk8k8LR68GKQfpP%Q%ej6!C4M&SB1GPK*IDS&8YHk@jLL
+CPY@*VDXC0a'ZbpGjlehCFek9U$LYBRV+V6SZ((Fek9MpUM6%$UdCa$,J-B`A-L`
+52NX(+!JjLY`F2-Bb3lXXqEU3!)1BTm+$K-E,&$&5b`dRf95cjM2mSKNqLdL#&ck
+4,*ZQq9N2!iFbFV#&N!$rIe8$(m-&NlPT-[!iDT)H!!ImBblKP-S+Lc5B@ZTlqeP
+E+%$&N!"rZ!-XbmG41(+d+QI+Xe34JGSl)e#j&LIJCeJN(MTLY6e*"e1"F'6I5Y(
+*"-2%3H''P&eJJ3a))ZXZAN&Fa(6XBL1`ciYGMbA*ZP1URdAPHTlUFBrD)Br'hQQ
+[$c-LXl(9XHDDXE$4G2INZbkPdmf&'%5,40Gb!GM5V,SdJLG)ai)XPmMU`Nd+Fj,
+#8Tb6bIaNi5$c3&@-q1pP[idZ)rbC0(8+m0[QJq4-4,d!JQDc!#$qhdASEQ%BIS3
+"MdK60I#NiI!UT&T`rQJ)L$aX#),X2cQ)T9+S"!XLh`58236UYD!E)A'29DSHJ[9
+DU06$4L[jN!"46XqA#XfX"XaFC[CLr88d(8+jK4)@f1-["eer-*KCiFrM1AHJT!d
+9U(S$dHHi[M)b158f#"+G$@3krc(i1XS+pR'CkkY!ceeHXR(NIiD[K-9S`#Cm0YP
+9EC`F$RFH9JC"HGM'qL2rA6r3AV",!VADQacakLL`@6m3S#cP@')6)69Xe))&"Q@
+HNjp+bH)K1`ma4*bTdNc"rrb1mS2608qNDP`pU4aTUk9JGGJ5DT2+J4bp*)R(C[i
+H%!6[jRp#C5RkAR+8Rc8NfS62ZTdh"qCKS3RcCRf!DCS!QA!*P!#9-cqKVq8%aQ2
+,i&3&5j`JiGIMhKj`Z)!3C0dEp`"-SRR+pjVc5$%Bm*d6C8!RSJ%N+6*jUJ1-p)%
+`9R0mP9V"X16&KUq3!)V,jZ+bJGH)L&4lb&(`#(h`#5)iCJ#+M$(i$AdA5BG$qUK
+mP[JVFQ#,M+J$#MRN)Afp9(*&&hb!%k,RdbMATqQ8rR%D5UN-pUKJYr5l&2kT,4Y
+f&J-U6&(dZ`8V!0Pdpq5l*UA6m&T%"p*ZJdA!-rBRkBB)mQde+"#&B`Fc#!*e@@M
+-,CmfaTHj'9KJFQ,TE6p&MMX%CQN-")N%PB4QZUIfq1QNHGB"Rl$Q'%-QI(9e35S
+CD#ZCehS))"p0,l&&)VUV9f33l4Y"brUT3`4'&R#%#9$TJ%k)"2LQId(TM8hq9Kk
+Fcl5FpP#CeRdXQ5Uj-@'M8BBbC-)j-N9@&Bk1[2RSk)[a@SmZ(1DV&81!aBXUdYP
+2KVlbPUH1j)1ZjEZ5#RjD`BLS%%2qJJlRiKLfB+`Lir*L`6#BFrAJJb2[S)BICXP
+84H(aF3Jr1UEb%cRKcfG,@M1XJkq3!-HJ4VLZ0RcX&iVMEB[rUTSL66qV5bJGI40
+)4L(6d[e)$c,!`k%cGS`Q'1qPKJQmj"ip%`TUQH)m$NY(5k%c`9ehNq['"eZD!JF
+2@+GAM@$9Bj`#,%GP!kh`V6453%D#5)eUMc4@iM$9+cD"4jjX[5)+1Y8lP4Ha&c)
+ZG&ch1l8cCZ(ef-AM0Qci(kfE!fA%CU[*m1$KC(RU%$U)l9cP[MVYDkeKMbX-eKM
+N)%UQ&X%)(Mj'#amkf1'[Li,3hArKqLHQ0aLf6l$hf3285$f81-Nci`(Bi2aJjlH
+[p36AqmpUe&$I[i@EL#0M4`hCCLCI,Pc1$LE#()3LXMhK(C&+`)qGeAmCr'V4X8!
+5bDA'KHmMfLQaX@1E%br"bblc[E(B@Z[lCG9DMJX4@2'$$69e2L28DafTTdcbc1G
+69HCUYM`jPhPkVJPRM2p1QIBX0b$c!%l6@k`PlBYe#1[[SL,iCN6AI#[&T3S6,*1
+NT3QHZl[C0G!6-dK*M2rli`%H2+`1K6RYd&4[LTdU'83%2#PB(kpD!MC#KcMJ)P1
+G'haA6R4XC$0+%k10S*[-iGai6G5"Z$1jZ1,&k-AT$h&HY&b`$HdmUSZUF,,`3Jr
+I"-r1LM8S4cERYl!%fBUGCpD#ZYkl+#Y'Y"Arci&S+rqAcrDQHU&#pH,fBZD!MhS
+[JHP-2V)J2Vp6REd(rMMN,CYI1K3[!'Gd`-+MGbSC&T8hV%QdM31mi!Jj)A`!)15
+&qc9K9Jb95N!M032"45jH`h-c40*pXe6i@1U0pV(4rq@L(B5AYY#[*9VAk'+ePBZ
+L!E,aG)$(4Dq&&r-#TH5I*dPK,mS$KTb*09T$N!#arcK&Nb5-`[2b6r5pRmNqr&b
+E)%b'-%IU!0mK,0K66Sc2Q',J'(EbDSBHR3jIQRXS)N&8H!)TF,Dh!,i"c-0QB-H
+)JZ*GJ)S`%FaP9Lp91[R@FrdPi)PXQ$#fIK`NAlUQ)!kie&iLIcGdl$c6&YBHCA9
+e&$hI0eIQE,fl'Qc!GK`BMZaMU1$%Cf-B3dR-)-GP"60*(d1dTH3k3!Rm`hKAZSr
+0eS4`G@,U&()p-2F'%@#($N'LkPr[AGZSXmr5!#),ThpfTX3DCQKAikKq59rqU9J
+IYm9"6YJ$G0k4BF+9((QHXb0`AZZAjSV2Cp2%PG,L)$"Pkerq4+'"MG(6qQIfbDV
+1@ClIerVK(T5AqY0rU+)'f&-ZFc9"f+$1k9iCiS#-"d0Q!cAU'80HI%BSC&fjpPM
+"Mi@IGCK-P%2&SC2-&P`cml2%SeiM-%9h1)!M5L`CNfX)UVmNj'aXC#6!$9&lS"1
+F,D("#j5jQ5[k%chCQGe8hhI8(H!rQ+p@'jN99m09cr!6%FqV[aI@SI)bqPM(6S1
+QmD2,rFb"J%c3TmV+q&6+m,0(5%pq9J3cGCU)9)T5mKd+C+Xdlb+CVD,K$CQ&KHC
+S)Yp2p(Ld9MjIEK(2Tmd"A!X2XD+ZK9IkrdIkrEreiR%i(M8XIre#'eSZI`0GlXA
+8eH1h0&BhRpe+!El%VhqhUXeY-r950TRDUYSY"$P9pa4D#0X,$H4rl-IZ+AAB-8h
+P9jA`TC!!cXJ5kCSmGdZ&6BDHTUE#[b@4iPIifFf&IVrYj[9Dqpd%EYl6mXICB)r
+Ab`m@Rrqm-IX9Ui91eMb0AQ[TDlR4I(V2fe%'Q#cYE#NrGDCUiK5kr9@&&)qX1Q"
+Aj,+lQRr9'f&IN[KehZ#Lk'ikC9M0E6*F$peTd1C+jmLi#JA%+JRPa9jqYK5h'EX
+,$*e2V9qmc0IL9-2dkIeUrGaml4F3SYTmPc0KT`KA1LRE@LX-LiQeaT81Y%81BI9
+HDY&3$8Im9-!J&Iie,8rjNk"K5l$6m@[mDNepKcl!Q96H-M@f8@*BG`E0#Habjc'
+dK(-P'DfJP!eNQmPI9ZB9Z2ch-ST%VIA-0VLk[48A#mAZC(N4XlU-D0Nj%ILIGZk
+MPF#hbQDehDmk0NmeH"B[)SZ4QVf4`2IQ3U*@q[YXU'IJc8Qp'LGki$0TIGX!Ve%
+#[Q5EcaD@`qq"$d3#HH5S#`U!4F&#$jS#Z!J9h)#[)3+e3#TD"@V!9YllZJ$EA09
+8J44!8NjU[2`Z)C)pLLU*A[U-9X,lk1D[#TQ5#4A-+R+eZ2eFEFdPpDl@Lr$DT1a
+leIKaHpfXZ'3KNXm*ASC5`cN1d!*PV#rKPlk!PbMjqrKPG*TiC)hC[fcKH!6rS#R
+30)m-VI4J38lA5%ehpqeSYErHk4b2#3#LTKP6-"fZZKfpKiN+X*!!5GA'h&*I8@e
+SVkM+3%Hc9r$1'%c%S-GA-#$F`)083b9pN`89,&8bMG%MK*6S`dH'8[Zb"9N#4$T
+-0N5MLP&pf,d4FS%A+!jNN35T9bVk2Up2Z-S&`bpp85)qSkF*'D&4V0FQ&4IGH%!
+44%@c))JM6C0U3L#Bpk5TTqUJ2eN51&NJh@AD*$8kQHj-LNE62IYTjXVRe[N8@*!
+!T&UQH"hYEA(0J'#kRQAb98XM)UYc)NDH4VFlPFq+ihUkHANVQ'`Vpc5e19prQEA
+&UDRAkHqNYEe9h'NE6689E(r*KAB`64GDlT@#(m9%$8S6aRBB#U53!()bU8#Ue"L
+!'0TVHpPFqfd&YRlE1fdQfUlEZEE1@fEYZhYXeE5,E-ffAYZdYXVEC5fbGYNVDTY
+XKE9&Y6fdHfTEDNYU+9pA86BX'49F6lI2[!Qd!Qhl`k!X38Bq04rR3@fZ$TDVf3k
+!j(,SL@E!*DE!EE9b+E$SR$5!q@m'*p"hrC3'2F[rZD@UVJi(SfIJMVp3M[XL8JL
+9TDN'2aF1EBZP"m[T"[$X+*kUMPQ4[F'MFI98F@l*$rEQ-6*F@i#@3V,@,'V0h!H
+3!'2,&IhHF!0T0h#bSBCMD[ldBb@03a!$6U#H3C2bD!)G[LJ2abSB[(Pd1UGMDJI
+Z)aRA*aM(Zb)D"MTR[$-mU$I15leq$65D'(IhVVi(C"+6Km$Sd!4I(ImBhTQFJJl
+q5DkA9QIF)--53FT88krQ(TJ%%[rk9')9*",rP)JArCFj4ElLkQ%N+*l2*5)5SV$
+0e8R8#!9(6%FEm"!8V$*J0)DS%@Kr9$2TSQ$U)$jV(bp2Ac8'J*Y[C'cJhb9$hp2
+mI3!,*&-fc5B0r6C%b"X2h!3f,E229%`jR%)-A1'3!"CNk*d-Jmk24p*&--[*i3C
+mIAaVd!!1ri03i6-I#2k`mJ4`FYI`X2-8I4J1p9S,Q&4C3V1q'BFRAXRH%1k"lTc
+'UPSQ(PUdeb(ZHc3jS3fkP&Nqq,aXU2[Ndd[*DSG&eGMZP+XE,VY"YBUFGJ,C0)Y
+P&PdArP`9Brh"8&(%jRTbVi8@jGRF3LlpYPZ'[FL9bU1*hh+%h'1d5BK0aL&1lel
+V(8@RdQLS`fQILGbp(2XTXU4JGUl0Ulapa4crXjDP@0KCricS8pRe)8@NhYc!qXJ
+jFbqmDKQej3RNS'VaeZAq@jS[U-H$B@Aq$"SH&MVB(jGV5Q+3!2B#GHkTdiLIY4D
+q%$lK*RY4EpQI&QbR6bPQQqIF`2DBT)62+DjB#aQ0Ymb$5RTKr&PQCrMq%6Frh42
+,BDM%A4'PjdFjZaC'Y4@SSKXfEZ&,&e@#hMX&ZNJYK(A`iil[fVXaQK&DU!%ZX",
+%BZh9!CKRfb$ZhCN"Nkdp[KcJr!p&3%XZ"+Df*BS--AS#F+P%H"%%V*'J!$"kLdc
+,,bS-MS'qTf%FDaKh11`&13m-LfZUkQ2*9Ir8bii'Y8-6LYU0(6@Rk+h(Are1dUX
+'PI*0h`LmD+Y&6@RY9Y*Ir8bY9hhY@0*cU@p'Ra$*["Pi4ZZ2!PY#S6GBVIKCX4e
+Z1GB`323%B"$$BMR$#f&QY6BrHmI2B4`#@6f0NRUUZJ-GBLPG6,34T05P9BZB)64
+85MQM$[GRpSHXLcKM`S!rh*UX-DQP4A$khI&CY0!@#!aL[!ai3XIGCYG22GUifV4
+`mQaEBfH92A'a3F6M@F%"UKB$-M35!KqD$Pf69IaRB&E8#[GcVrFI1#r6[9!01RH
+[DEbGkYrq*!Em""R,X`S`JR@5)*KkDZNC#CrX$6$RFF!h9RIK(VJaChip,@6[Biq
+mRHX*CRh,,p#ce%,"KZ*DB""R!39QmRAjhqThU4G,5EbGbNhT$K4(J%T83$SSJ(5
+4!-+GbPKSY5UTd1Ke1TXE'`X'JJI)CDj#X-PkL)G+aYS*QFGHD$UNU#HFH,&!0q'
++D&#r'*b!UKZH*N8&3X9'ZQSee#Gq0pM*5l+62pQBHJk4QFUCRq`GMeV6fqJ2m3I
+4XjhX&3!#B&rr@dSJc-ZkM#e6MiSS[PMC2Y+q4Fh9aFh'pNEHhNGj[YhGlUXfea,
+mHhZV[h$YL4U`!dIkmBQ8F'9a6@@kfhLEUhZUD9FElalHfhd*3J"hZqmHkh9elNL
+(H`KefTPh9[ZGe[EZkYlU'T(Dd+"8Q5XYej&[G5,EI50[`YjEA9eEEQh)[efYZZ&
+Z1(G@m[E@qpE5qNTYG[YeGhB2pFEL2LaU*LHrh8fTfqkZpeF5kD[PbppZ`3q#dN&
+,U,MIA)%Hr(JNe&aFKBBDK![GNR%F+Nq2XGpFl[GI9h`&,'%+E8lMF@ff!CB&+*%
+-j$(4ZpMIp#EC,TAAUjqS9c`r%L&0'p#'@MIZ!pN+DeZLi9e'e`'Xa$YShjBD&4U
+Ne8[HbH18[c%+i#qYB,l$IA-QM[JAGV$[`K'l8AMkREH*E5pcEhAp4-UU(RJEj#M
+G,lNLcZ*(DmNI[e#UKlF1iME#0rR"(1TZI6lUAFlklNEIGh!UZ3p8C*rPm$(A%1Y
+$l%DaT+,[IT)(aYL!rqZNDI$Q%9TiBk(D3e9lMp3UF50'@YX4UG@X*9l5DQ@JL#I
+@`lQ0k965lfkffUPh*%l%#Hh!R6EHhhYf"6e961RKpH(d+@MVplYLK0a$4J3Yk@M
+XEIEIrLN1k!MaD@MY,Ib)i@[-`k-,D0Da[kQ-9lq2#4H)da2Z`aj0G$$iiI5MCeT
+LGL!rG!2H'*b3!'*c4BPNC5X6S3J0S'*Tl'fPlf4ZlIHY-IX!aqHU54kU'6Ki%,D
+PTYKFEkk%1ZX5(`!+lU'rTDLa$1lUAE'&"Q8ahG`i-09$p#0#LFDS#2J%4$4G*6[
+JJl!L'Lk50&ra$aBeI'mmG-C)&8hkFIEh'VZ2$X9D69Ml#3Ejf'h%`h1DD3E23@,
+,A[Fq&RC&eElbjhBQEhP[,Zpl)YpaZ,IEAHqi3#TFM`Xp)hYZ+Ba'**!!KP3dPP0
+rPpEk`%,"p)jfYIUY6)))36h$9km2Gm2H@mMYC%M9@-M552#cZ55FkC!!ZShd)h#
+EB$p8IHfhMfl&r`B8USTQBGc$rUpl[@@mLlY[$hBV'b,D4`V[K50jFEIGEMGF+V#
+hYeLdM+8Cfba150-Mqed2S3eN2"[FGhZqh8M4T&$D`l+(L3rPT+J6'1keq1mD'8%
+#pr5C"PJ@4[H&Ffee`P02a`m506dP(+Z*D),i`%IVJ4DPcBP[#K`)F1m@PhQ3!2j
+BhG4[0EDEpFHAEr@f(L@pZDYYmV6H$$Xi5iIcY4%q$$c`(cAQBQS%X'AKJhZ4CD8
+EFr4lXMqE%'ZkK`+@S@ZKZpeZCD@EK2,Ni@B'HZY5B5+rBDM9DSU6QiHD$(P9-E2
+I%U!B!$rihY+`kJ+IhYHrJaecG@qi)jaK8@ImAMX`[%fpl5[m@ih``X$EIPh'm-*
+YlFA9hZVGDRDX"ke,NYCh(L@qqZVG#$IEMF#iNlBDS%T&b,Ki&e10#'(X``jLYbd
++b!M5&41M9FUI%TEE``QhZ"Fq,#M*Kf%2Y3VBIeb++Q2e9C+cLaqclc"hf$Zm'l`
+GeJeQ$YX'i`CH$iq$Ei0eJhD-,hSU"l5094qif0hZYhZVZfh3@%BKGeElEa,F9f!
+Yefm8(SDq(#[KG3rK(bNb4+Nb2TH*EEZfZr$YVVqA"pr"chGk,3T3a'%S*r21%DV
+2rI"BZK$ZiBkRf"VX@Zk%kXI@'0'4,jIBkff6&!fiEk@Pk,HqijK2VK*Mq&i4U,q
+Xh$++&)Hlaerrkbkh)mI25Fk"+QVpEVGBNKr"r0b,p+T0*frHDbal8U4UY4+lBUG
+#m)cCDr8f6JF9RX3@Nab14l()`%50MBfAY"+p2NDUKRKhe+QaeTh2)8Q4U31J)33
+jm+R)l5KRU,6d@RXIVd2DM`ki$IAC'3,TfRK8@*!!LTKMmM(!4BrAR@0&Ti3b1Zb
+14%2h%`B%$h1AK8J42988i'p+!6(3UBe*H909pR6e09l8J"&68ep0M9-k%I)J%)4
+8kF!Ja`mPb14HJ)Y-P#mMe2)j(13)D%'JKl%#%+F4kU+,'0dmTj948!#4%%[!#F`
+!RaJ%a#5%%D#(X3Ib32h(!RP0H2lM%Ih'*`+DRK54[CMHR'i8EKL9[q5&*5l1fhG
+ciPYMYRiG[Gfe(XqiYk2Cl@h5G@(HHl#'X!*4HG#QedJ9C4mp!'GKU1pXG5#(JGj
+UC@a%eASGpUT3bUiHcU*9VV"0aJf1XldHX+05f1U!K64["VpCVl8)PJ(G5!4c6d$
+!)r5IXUK4aZKBr5f!`68@3@FLLl4CZU,0f%UaeJ%0+Xl&&Up9U1p'FA4H'06b+3Q
+D0-kCX[k!+`QDf"L%+miqP*'0RH&Ie%$+)KPKF)Cmp!crfi'DK+"DEhd$2Q)'IT3
+-XN$2mN$0bJCqT!cJZM`j(l$ba[A$c8lp``XY1JCqXKPR@S'I!JBFG5NTm3KPTbA
+5+ITG)Tb(5+HLiU'TQZNJYR53!'YF5!9!(%Jr`G(Q%iBDT0+08ie@q63rpT!!-rQ
+3!$2F3-pK`NeRpMLZDcm6Smr[0K4!Vfc9I[%#rmb&q@JAmMJYrZ`,N3eImM#'4$k
+@@G*,9%-!!!!06'%JE'9dG(*P)'GbC@0aG@8J*,iN,#!NTb3X)'9dBbi0$BjXMQe
+PER4KDA*P,#"KEA#2FQ9YMh4bCB"&GeGQChJ'!)#!!!J!!)#!9JF)#!!!D'L!"J#
+!"`!!"`"SH)!)#)F!!'G`!)#!8(#&Ge9JKJGACR"R9JL!"`L!"Q!!#!!!J(J!#!!
+!!!#!!!!!J!L!F!!!!!#!!!!!#(!!!)!!GJ!!!(J!!!!!!!!!!!!!!!!!J!!!!!!
+!!!#!"`S!!5038!!!!!93!a*$3)3L36`J9"*d0fZ[VKBq1p$0RMLmV$2F`cc!c@h
+D29F`BDDXP'$5&[crI2qG[dl9SK[($pF2rI*$[XrICqh3#+dAel(Ri-H+5pPUUai
+[KENjCGr"*HZq)&hGMBZh*,2Hm'E2EXbm8h$38GRb6C-G1'h*HZ@j(4Nf+H5rMbd
+d91'1@A(62)FET3M!hEK(@PQTirE0U5lp&8fR,hk01Af8"[@K(&d4IL,QLqMfjMq
+A[Mk3!&Gb&mm2dERV"RDh0frVLRZeqShQE2U4k2jAkN*V3MdIk[rBDSQY!cTXFQ6
+JRQUbm9LINUB5!!!!$8aK)'aPG(4bC5"RFQ9MFA9P)#5q*#`J*+FN,#"PG'-Z$3f
+1E)jYC@jdB@PbC5`JB@e`Mh*PEBpdFQ9PHbIS!")!'de[EQ&MEbe6CA*[G@`S9'9
+B1%*TG(-T,Q4[B`%!!!!)9%9B9#T849LQSUaXTUJ&dJ%!aJ+cVJ!'!!!#3`!!"VN
+!!!(6!!!#H"a0EfjKBfmY8f9bEh9X+&4P@$KLDA4c+5j'6dj8!3!!"&0'4NP-4%e
+29UD,,(1QLbcY!3!ClJlT!!)!!$8N!!!!!!!!((i!!!!!%8e[EQ&MEbe6CA*[G@`
+ZG'9i!3!!)0&849K8+P4&@+DLT@#QSUaf!3"Q$0fZ!!B!!!'V!!!3k`!!!98!!!5
+DM%eeE(4T3fpZGQ9bG!!1#@9cFf&T,R4PH!%!!#E!9%9B9#T849LN2j`UT$qF,!%
+!DFa1$3!#!!!"U!!!!%3!!!'Q!!!!4!GQD@adFQ8b!3!!++U-[DUS68a%)D3rRBb
+N2jf-!3"!+9k-!!)!!!'6!!!!!!!!!AS!!!!!KfCTE(4bCA-!"`FZ)#dY2L!X!3!
+!+L5-[DUS68a%)D"F4&qJA%4I!3!2aE29!!)!!!&k!!!!!!!!!9d!!!!!"d428bp
+0B@-"!!!VJBbpUUK06%3KS%rU)D"2kL%"!,CUAH8!!J!!!DB!!!!!!!!"R!!!!!!
++CQPXG(*P)$-h-!%!!#dGM,fUU%e-4#'J-YEUS$,@kJ%!Bb(D"3!#!!!%2`!!!!!
+!!!(5!!!!!"T*3NdJ,5dq)%jPG(GKH5!Y,6iJ9'&LE'9KG3%!!#l[M,fUU%e-4#'
+JpIkZS2AqVJ%!*C%&EJ!#!!!%8`!!!!!!!!)-!!!!!"K*3NdJ,5dq)%jPG(GKH5!
+Y,6iJ9'9iG'8"!!!`qibpUUK06%3KS2Am#k$er!X"!,crJZ%!!J!!!Ci!!!!!!!!
+"DJ!!!!!(6@&M,d428`%!!$*PM,fUU%e-4#'J6qSbS%rU-J%!168033!#!!!"TJ!
+!!!!!!!%h!!!!!"K8CAKdC5!Y,6iJ6Q9dGf&j)#dY2L"*3Nd"!!!cR)bpUUK06%3
+KS2B$)D$f!b%"!2@dE6i!!J!!!Ci!!!!!!!!"J`!!!!!06A9XG'NY3fpZGQ9bG!%
+!!$8I39"36%e-4#'FLGX-T4+)Bb%%Hkf`j!!#!!"39J!!!!!!!#Pc!!!!!!e3CA*
+YCA0cB@NZG'9i!3!!AT*849K8889%-D3rR9DN2je@!3!1GZLQ!!!!!!!!!!!!1`!
+!!!!!!!!l#P4P@#jQD@adFQ8"!!"HcBbpUUK06%3KT$qF[U3rR,i"!*B@`"J!!J!
+!!C-!!!!!!!!"H!!!!!!,T5"PFh0KD5jdCAJ"!!"J494&@&44483aT$qGqD3rRIN
+"!!jfk+B!!!!!!!!!!!!l!!!!!!!!!$YeE#!h1L!J35"cC@0[EQ3JC'9`BA*dE@9
+ZG'&X)$)d-$!JBQ&eC#"YEf4PE5"SBA-JBQ9PEL"KC'4PC#"dEb"bD@9YB@jZ,L!
+J9'KP$5!J)#!J)#!JG'9XCA"SEfjP)'jeE@*PFL"TFcSJ16Fi,6Fc1$!Z)#!S9'K
+P)'pdD'9b)'e[C'9Y)'Pc)(0dD@aX)'&MBf9cFfPLE'8JBA30)#!J)#!J)#!j0cJ
+Y-c3f-biT$3d0$8CbEfdk#80$8%j(9cSk)P""6%&*8d"#58j"5#j$3bj#8N&14%9
+*8bj&4&8L)#!j,8T96#da16Nb)$!j1M%c1M)i,M-`$94[1JPcD@9LC@jYB@jZ3%a
+"6%0-8bjNC@0ZCA303d-k#3e6G@*U1JPZG(-0$94[1L!J3Q&bBQ&bB5"#C@9dEfi
+J)#!J)%*13N"0394),N&08bj$6dd0)#!J)#"-BA*bH5"6D@9LC@jYB@jZ)#!JFfP
+PBQ9ZE@&ZEN"-38a$6&-Z58ib8$-Z4P)0)#!J)#"8D@dJ6A9bF'KjV*d!!!:
diff --git a/language/typingtex/ascii-on-the-macintosh_system7.doc b/language/typingtex/ascii-on-the-macintosh_system7.doc
new file mode 100644
index 0000000000..0beaf1da2f
--- /dev/null
+++ b/language/typingtex/ascii-on-the-macintosh_system7.doc
@@ -0,0 +1,153 @@
+
+
+ *** ASCII-on-the-Mac.doc ***
+
+
+ When the Macintosh stoops to converse with the rest
+of the world on the email (= electronic mail) network the
+Macintosh user has to adapt to the old ASCII system
+(=American Standard for Computer Information Interchange of 1963).
+Since, on the Macintosh, ASCII is neither clearly delimited
+nor optimally implemented, some learning and adaptation on
+the part of the user is required. The following comments
+may help.
+
+ Leaving aside details of little interest, one can say
+that under the ASCII regime the Mac user is simply required
+to use only TEXT files and therein use only the characters
+
+ 9 (tab), 13 (carriage return), 32 (space)
+ and 33 -- 126, which are :
+ !"#$%&'()*+,-./0123456789:;<=>?@
+ ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`
+ abcdefghijklmnopqrstuvwxyz{|}~
+
+Roughly speaking, these are the common unaccented caracters
+and diacritics of American typewriters the early 20th
+century. Unfortunately there are problems:
+
+ (A) The following common diacritics are not ASCII and
+must not be used although they may be marked on the keyboard:
+
+ section (= \S in TeX)
+ degree
+ dieresis
+ pound sign
+ yen
+
+
+ (B) The following ASCII characters are often somewhat
+inaccessible (depending on your Mac model and software!)
+
+ \ | @ #
+
+You do well to hunt them down and mark them somehow.
+
+ (C) The following characters are marked but on
+"dead-keys" (=keys that give bo result on first being struck)
+ ` ^ ~ and perhaps ' "
+
+On early Macs the dead keys were typed by double-striking
+them. From the coming of the ADB (=Apple Desktop Bus)
+keyboards in 1987(?), dead keys became spooky; the
+double strike to obtain the dead-key character was
+invalidated and replaced by the dead-key followed by
+spacebar. For many users that takes twice as long as the
+original double strike.
+
+ In 1988 Fabien Samuel wrote at my request a low level
+system patch (for the KeyTrans ROM routine) to restore the
+original behavior of dead-keys. It comes in the form of an
+INIT file called KeyTransPatchInit to be put in your system
+folder. It is given immediately below in binhex coded
+form. Put the binhex code and preamble in a TEXT file on
+the Mac and decode with BinHeX or CompactPro or Stuffit
+to obtain the INIT file.
+
+(This file must be converted with BinHex 4.0)
+:(%YPH94bB@jc8'&dBfK*EQPd+'4PB@3YDf9jFbN!58j*9%CK8f%K!!!!!!!!!!2
+-%1d!!!!!!3!!!!-"!!!#!3!!!-[!!B!2i!'!(r!"J"ji!B!m2!'!1"`"J(!i!B"
+`1!'!i"a,CAP8FQ&ZFe"KG'0S5@jTG#KNC@&N,@YPHA-T,3)!!!"*6NP84Q&6B5!
+!rmF!!!!!!!!!!!!!!!!!!!!!!!!!!+,YU3d!!!!!!!!$c)!!!!+!!!!#J!!!!S+
+UUS+!!!!#L!!!)S!!!!+)!!!LJ!!!!SJ!!#+!!!!#L!!!)S!!!!+)!!!LJ!!!!SJ
+!!#+!!!!#L!!!)S!!!!*rrrrm!!!!J!$rr`!"rrq!!rrr`!Iqrq!2r(r`(qaRq$r
+%4rara%Iqrd4(rrj%4rrq4%IrrN3!!!")B!3!!!!!)&mLAc!I)Km[#%j@!!")ja!
+J*%P#J`J!!!GQ!LB53UF[!6m!,`NJH[r86T!!,9m!##)$C`BN[!!!!!"-h`3)6Pj
+1G3!!!!3!!!")!!!"!2rrrrq!!!!"[R2[4D+)L%@LL)Kp[[L)4D#)L%@JL)p&J!!
+!!Irrrrq!!!!"QUUUUB!!!!'9999CJ!!!!CUUUUQ!!!!"KArr8B!!!!'!!!!"rrr
+rri!!!!(rrrrrrrrrr`!rq!!!!i!!!!%!!!!!!!!!!!!!!!!!!!!!!!!!!!!!rrr
+rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
+rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr!$r
+i!!!$J!!!!3!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!F4Q&6B3!!!!&'8N9'!!!
+!!!#!5801)`!!!!!!J!!!!!G*6NP8!!!!!!!!0M!i!9S-3!3!DbT#Tbmm5h43-8*
+RUD!LAb!*CaJ[#DQ5-$`"`k&')P%M5!!#-$`"`b"*S%G1G3!!!%"#5f9j9(*KER0
+3BA4MD#"*EQPd)#dJ3fp`HA*TCfKd)%CKBQPPEL"6B@eeC@`J-6Ni1#!J)#!J)#!
+J)#!J)#!J!!!"!!!!!`%!!!)"!!!!b`!+JB`6'J!!!"`!UJ!'5h43-3!!!$TcHA0
+k!!!!4NP$6L-!!!"53Nj%6!!!!&j'8N9'!!!!DNCK8f%!!!"f58j*9!!!!))!!!!
+!8!!!!!!!!!!!!!!1)!!!6!!!!!!!J2rr*!!!9!!!!!!!J2rr)!!"@!!!!!!!J2r
+r!!!"H!!!!!!!!2rr)!!"[3!+JA`!!!!@%!!"J`!!!!!05f9j9(*KER03BA4MD!G
+,G("6DATP#NYdF%PZFh4KE'bcL`:
+
+
+ There is still a minor bug or two in the patch; perhaps
+someone will take up the challenge to fix it?
+
+ With the above patch, the Mac on its own types and
+displays ASCII reasonably well with almost any Mac prose font.
+But the situation may take a turn for the worse once the Mac
+is connected to the net. The "terminal program" often fails to
+establish full ASCII communication between the Macintosh
+and the host computer on the net.
+
+
+NCSATelnet
+
+ One bad example still widely used is the NCSATelnet program
+(non-TCP form); it allows the Mac to be a Telnet node on a local
+network, usually ethernet or Apple's Local Talk. The most
+freindly versions seem to be 2.2 and 2.3. About ten ASCII
+characters become inaccessible and have to be replaced by
+command keys on the numerical keypad: Command 0, ... Command 9.
+
+ The following seems a suitable arrangement
+
+ 7 ` 8 < 9 >
+
+ 4 { 5 | 6 }
+
+ 1 ~ 2 # 3 \
+
+ 0 @
+
+To retain these from one session to the next one should
+add to the configuration file the following lines:
+
+key0= "@"
+key1= "~"
+key2= "#"
+key3= "\\"
+key4= "{"
+key5= "|"
+key6= "}"
+key7= "`"
+key8= "<"
+key9= ">"
+
+ This is just one terminal program of recent times. Expect
+similar problems with others. That being so, the Mac user is
+well advised to collect means that let him survive with a
+crippled keyboard. The device of copying from and pasting to the
+terminal program window is one of the most powerful. It permits
+one to do essentially all typing and editing in one's favorite
+text editor.
+
+ Another helpful item is the KeyFinder desk accessory
+available from sumex.stanford.edu. It lets one type with the
+mouse.
+
+ This collection of "helpful hints" for Macs in the ASCII
+world is highly subjective. Readers are most welcome to suggest
+useful additions.
+
+ Larry S <lcs@matups.matups.fr>
+ \ No newline at end of file
diff --git a/language/typingtex/cortex-email.dir/CorTeX-lex-script-Mai93 b/language/typingtex/cortex-email.dir/CorTeX-lex-script-Mai93
new file mode 100644
index 0000000000..ab9dcf5eda
--- /dev/null
+++ b/language/typingtex/cortex-email.dir/CorTeX-lex-script-Mai93
@@ -0,0 +1,203 @@
+
+Date: 21 May 93 09:13:32+0100
+From: Pascal AMSILI <amsili@chm.irit.fr>
+Message-ID: <199305210813.AA00960@chm.irit.fr>
+To: GUT Distribution List <gut@dmi.ens.fr>
+Subject: Re: Une fac,on portable ? (Enfin)
+Reply-To: GUT Distribution List <gut@dmi.ens.fr>
+Received-Date: Fri, 21 May 1993 09:21:57 +0200
+Errors-To: listman@nef.ens.fr
+X-Sequence: 6
+Status: R
+
+ Merci a` Laurent S <lcs@matups.matups.fr>, je comprend maintenant
+l'inte're^t du port a` gauche des accents, bien que mon sens
+esthetique (et mes habitudes anciennes) soit choque'. Vivement la
+ge'ne'ralisation de l'ISO-8859 pour simplifier tout c,a !
+
+ En attendant, voici un petit fichier lex qui peut constituer une
+alternative a` email-fr.sty. Son auteur est H. Garavel (imag).
+
+Ses de'fauts :
+ - Il ne permet pas l'emploi de 8-bit (je pense que lex n'est pas
+ << 8-bit clean >>)
+ - Il ge`re aussi les ligatures oe et ae, de fac,on assez
+ intelligente, SAUF si on a des morceaux en anglais (does -->
+ d{\oe}s)
+ - Il fait a` tort la conversion dans \verb|...|
+ - Dans certains cas (mode mathe'matique, par exemple) il faut
+ e'viter soi-me^me des conversions abusives : $e'$ sera converti
+ en $\'{e}$, au grand dam de TeX (Please, use \mathaccent in
+ math-mode)
+
+ Je donne un petit extrait du manuel, puis le fichier lex lui-me^me.
+J'espe`re que ce sera utile.
+
+P Amsili (amsili@irit.fr)
+
+PS : J'ai re'cupe're' tout c,a (package CorTeX) il y a longtemps, a`
+Grenoble, et je n'ai jamais re'ussi a` joindre l'auteur. J'ai beaucoup
+transforme' et appauvri l'ensemble pour l'adapter a` notre site, mais
+il y a des ide'es inte'ressantes qui me'riteraient d'e^tre reprises
+(e.g., ge'ne'ration automatique d'un Makefile a` partir du fichier
+tex...).
+
+------------ Cut Here ---------------------------------------------------------
+Tabulations
+ Les tabulations sont remplacees par un nombre convenable
+ d'espaces, quelle que soient les options de CorTeX, y
+ compris (et surtout) dans les environnements "verbatim" et
+ "verbatim*"
+
+Ligatures
+ Les caracteres accentues suivants sont reconnus et
+ transformes en format TeX standard, sauf dans les environne-
+ ments "verbatim" et "verbatim*" qui restent inchanges. Dans
+ les environnements "tabbing", cette convention fonctionne
+ encore.
+
+ a` a accent grave
+ a^ a accent circonflexe
+ a" a trema
+ e' e accent aigu
+ e` e accent grave
+ e^ e accent circonflexe
+ e" e trema
+ i^ i accent circonflexe
+
+Sun Release 4.1 Last change: IRIT Juin 92 2
+
+CorTeX(LOCAL) MISC. REFERENCE MANUAL PAGES CorTeX(LOCAL)
+
+ i" i trema
+ o^ o accent circonflexe
+ o" o trema
+ u` u accent grave
+ u^ u accent circonflexe
+ u" u trema
+ c, c cedille
+
+ Les memes conventions s'appliquent aux lettres majuscules.
+
+ Laisser un espace apres les virgules, quand elles ne denotent
+ pas la cedille. Les cas suivants sont correctement traites:
+ Franc,aise
+ Franc,oise
+ Gerc,ure
+ Donc, il semble
+ j'ai aime'
+ ``j'aime''
+ ``j'ai aime'''
+
+Ligature OE
+ CorTeX essaie de reconnaitre automatiquement quelles sont
+ les situations ou "oe", "Oe" et "OE" doivent etre liees. Les
+ seules bogues constatees concernent les mots
+
+ moelle (qui s'e'crit sans ligature)
+ oerstite (qui s'e'crit avec ligature)
+ OErsted (qui s'e'crit avec ligature)
+
+ En revanche les exemples suivants sont correctement traites: Boer,
+ coefficient, coercitif, foehn, foetus, Noe"l, noeud, oecumenie, Oedipe,
+ OEdipe, oeil, oekume`ne, oenante, oestre, oeuf, oeuvre, poe^le, poecile
+ poe`te, poe'sie, soeur, voeu ...
+
+ L'utilisateur peut toujours forcer la ligature en ecrivant:
+ {\oe} ou {\OE}
+
+ Il peut egalement l'interdire en ecrivant:
+ {o}{e} ou {O}{E}
+
+Ligature AE
+ Les ligatures "ae", "Ae" et "AE" ne sont jamais faites
+ automatiquement. L'utilisateur doit les faire explicitement
+ a l'aide des notations
+ {\ae} et {\AE}
+
+Sun Release 4.1 Last change: IRIT Juin 92 3
+
+CorTeX(LOCAL) MISC. REFERENCE MANUAL PAGES CorTeX(LOCAL)
+
+------------ Cut Here ---------------------------------------------------------
+%START VERBATIM TABBING
+
+%%
+
+"\\begin{verbatim}" {ECHO; BEGIN VERBATIM;}
+"\\begin{verbatim*}" {ECHO; BEGIN VERBATIM;}
+"\\end{verbatim}" {ECHO; BEGIN INITIAL;}
+"\\end{verbatim*}" {ECHO; BEGIN INITIAL;}
+
+"\\begin{tabbing}" {ECHO; BEGIN TABBING;}
+"\\end{tabbing}" {ECHO; BEGIN TABBING;}
+
+<INITIAL,TABBING>"\\"[A-Za-z]+ ECHO;
+<INITIAL,TABBING>"oe"/[BbCcDdIiKkLlNnSsTtUu] printf ("{\\oe}");
+<INITIAL,TABBING>"OE"/[BbCcDdIiKkLlNnSsTtUu] printf ("{\\OE}");
+<INITIAL,TABBING>"Oe"/[BbCcDdIiKkLlNnSsTtUu] printf ("{\\OE}");
+
+<INITIAL>"a`" printf ("\\`{a}");
+<INITIAL>"A`" printf ("\\`{A}");
+<TABBING>"a`" printf ("\\a`{a}");
+<TABBING>"A`" printf ("\\a`{A}");
+
+<INITIAL,TABBING>"a^" printf ("\\^{a}");
+<INITIAL,TABBING>"A^" printf ("\\^{A}");
+
+<INITIAL,TABBING>"a\"" printf ("\\\"{a}");
+<INITIAL,TABBING>"A\"" printf ("\\\"{A}");
+
+<INITIAL>"e'''" printf ("\\'{e}''");
+<INITIAL>"E'''" printf ("\\'{E}''");
+<TABBING>"e'''" printf ("\\a'{e}''");
+<TABBING>"E'''" printf ("\\a'{E}''");
+
+<INITIAL,TABBING>"e''" printf ("e{''}");
+<INITIAL,TABBING>"E''" printf ("E{''}");
+
+<INITIAL>"e'" printf ("\\'{e}");
+<INITIAL>"E'" printf ("\\'{E}");
+<TABBING>"e'" printf ("\\a'{e}");
+<TABBING>"E'" printf ("\\a'{E}");
+
+<INITIAL>"e`" printf ("\\`{e}");
+<INITIAL>"E`" printf ("\\`{E}");
+<TABBING>"e`" printf ("\\a`{e}");
+<TABBING>"E`" printf ("\\a`{E}");
+
+<INITIAL,TABBING>"e^" printf ("\\^{e}");
+<INITIAL,TABBING>"E^" printf ("\\^{E}");
+
+<INITIAL,TABBING>"e\"" printf ("\\\"{e}");
+<INITIAL,TABBING>"E\"" printf ("\\\"{E}");
+
+<INITIAL,TABBING>"i^" printf("\\^{\\i}") ;
+<INITIAL,TABBING>"I^" printf("\\^{I}") ;
+
+<INITIAL,TABBING>"i\"" printf("\\\"{\\i}");
+<INITIAL,TABBING>"I\"" printf("\\\"{I}");
+
+<INITIAL,TABBING>"o\"" printf ("\\\"{o}");
+<INITIAL,TABBING>"O\"" printf ("\\\"{O}");
+
+<INITIAL,TABBING>"o^" printf ("\\^{o}");
+<INITIAL,TABBING>"O^" printf ("\\^{O}");
+
+<INITIAL>"u`" printf ("\\`{u}");
+<INITIAL>"U`" printf ("\\`{U}");
+<TABBING>"u`" printf ("\\a`{u}");
+<TABBING>"U`" printf ("\\a`{U}");
+
+<INITIAL,TABBING>"u^" printf ("\\^{u}");
+<INITIAL,TABBING>"U^" printf ("\\^{U}");
+
+<INITIAL,TABBING>"u\"" printf ("\\\"{u}");
+<INITIAL,TABBING>"U\"" printf ("\\\"{U}");
+
+<INITIAL,TABBING>"c,"/["aAoOuU"] printf ("\\c{c}") ;
+<INITIAL,TABBING>"C,"/["aAoOuU"] printf ("\\c{C}");
+
+<INITIAL,TABBING>"... " printf ("\\ldots\\ ");
+<INITIAL,TABBING>"..." printf ("\\ldots ");
+------------ Cut Here ---------------------------------------------------------
diff --git a/language/typingtex/cortex-email.dir/Email&CorTeXQuedMac.doc b/language/typingtex/cortex-email.dir/Email&CorTeXQuedMac.doc
new file mode 100644
index 0000000000..de59b45451
--- /dev/null
+++ b/language/typingtex/cortex-email.dir/Email&CorTeXQuedMac.doc
@@ -0,0 +1,604 @@
+Email&CorTeXQuedMac
+ May 1993 alpha version (not yet complete)
+ Master posting on ftp matups.matups.fr
+ in directory TeX/TypingTeX.dir
+
+ *************************************************
+ ******
+ ****** Conversions:
+ ******
+ ****** TeX <-- email-fr <--> CorTeX --> TeX
+ ******
+ ****** on the Apple Macintosh.
+ ******
+ *************************************************
+
+Note aux francophones :
+
+ Des renseignements assez d'etaill'es sur CorTeX et email-fr
+apparaissent avril-juin 1993 dans les transactions de la liste
+'electronique GUT, affich'ees sur le serveur ftp ftp.cicb.fr (login:
+anonymous). Voir aussi un r'esume 'eventuel juxtant ce fichier
+sur ftp matups.matups.fr.
+
+*************************************************
+
+***** INTRODUCTION *****
+
+*************************************************
+
+--- email-fr is a scheme for efficient typing of French
+accented characters in which one types ' for \' (accute
+accent), ` for \` (grave accent), ^ for \^ (hat accent), and /
+for for apostrophe (at least before before e and E).
+The French abstract avove is in this style.
+
+ --- CorTeX is a similar scheme which differs in that ' ^ `
+follow the vowel, and / is not used for apostrophe. It was
+set up by by Hubert Garavel (imag) and modified somewhat
+by Pascal Amsili <amsili@chm.irit.fr>. See a partial posting
+by Amsili on ftp matups.matups.fr. Many users find CorTeX
+conventions just a bit more natural, probably because
+they are closer to handwriting.
+
+ CorTeX also allows " for diaressis following a vowel.
+But one one should avoid its use on terminal vowels:
+type aigu\"e, Malm\"o, not aigue", Malmo" to avoid
+confusion with " as closing double quotes (guillemets).
+
+ In both systems of typing Knuth's more prolix syntax
+for accents remains available.
+
+ The email-fr typing is acceptable to TeX once a small macro
+pakage email-fr.sty has been loaded; email-fr is thus
+perfectly portable.
+
+ CorTeX requires a preprocessor, which is given as a lex
+script (lex is a unix utility). This script performs a couple
+of extra services:
+
+ (a) Conversion of tabs to spaces. This trivial feature is
+neglected here since it can be done readily by a
+wordprocessor at any time.
+
+ (b) Conversion of oe to \oe when french typography
+requires it. This non-trivial feature is retained here and
+adopted for all conversions concerning email-fr since it manages
+to do gracefully what many of us neglect. Please complain
+if mistakes result!
+
+ Because lex is not conveniently accessible on the Mac but
+the editor QedM is, there was a need for a QedM version of
+CorTeX. It is the macro:
+
+ **post-acc2tex : CorTeX --> TeX
+
+For users of email-fr who want to have ".tex" file
+blend most easily with Knuth's syntax (perhaps at
+the cost of readibility) there is also:
+
+ **pre-acc2tex : email-fr --> TeX
+
+ For good measure converters between email-fr and CorTeX
+are provided:
+
+ **post-acc2pre-acc : email-fr <-- CorTeX
+
+ **pre-acc2post-acc : email-fr --> CorTeX
+
+And also three converters from standard TeX typing to various
+more readable formats:
+
+ **tex2pre-acc : TeX to email-fr
+ --- useful for making a French language .tex file readable
+ without while leaving it portable ie ascii and typesettable
+ anywhere. Do not forget to add essential email-fr commands.
+
+ **tex2mac : TeX to full Macintosh 8-bit encoding (Mac Times)
+ --- useful for spelling checks by Mac spelling checkers
+ for French or for freeding to non-TeX Mac formatters
+ such as Microsoft Word.
+
+ **tex2swt : TeX to Sweet 8-bit encoding (Sweet-teX).
+ --- The font Sweet-teX is a 12 point bitmapped screen font
+for Macintosh that combines essential accents, formatting
+"roadsigns", and math symbols. It is part of the TeX
+preprocessor Sweet-teX for math typeseting that is available
+on ftp matups.matups.fr.
+
+ All these macros are located in an appendix in ascii form
+or as a binary Macintosh file of type QMAC and creator
+QED1.
+
+
+*************************************************
+
+***** USE OF THE MACROS *****
+
+*************************************************
+
+ (0) Only the macros whose names begin with stars **...
+are intended to be used directly; the rest are
+"subroutines". Choose a work folder by opening a file in
+it. Run the macro ***initialize to be sure that a work
+file "ctwk" exists in it. The action of a two-star macro
+such as **post-acc2tex will be restricted to the active
+window and further it will not change that window without
+approval of the user; instead, auxiliary files are used.
+
+ (1) To process a file open it and save a copy to the
+folder work folder. The window of the fiel to process must
+be selected a macor is run. Further, if some text is
+SELECTED in the active window the macro ignores everything
+but the selection. This is useful to make a quick trial
+run on a critical part of the typescript. This may equally
+be useful and necessary to avoid parts of a typescript
+that are typed in distinct fashion. In such heterogeneous
+typescripts, QuedM allows one to mark various chunks of
+the typescript in such a way that they can be selected
+instantly at any time. (Select the chunk and use the Set
+Marker... option in the Search menu.) For example, one
+might mark text from \beginemailFR to \endemailFR for
+conversion to ordinary tex syntax. If one takes care to
+use a *copy* of the original typescript, one can then
+progressively paste in the converted chunks offered by the
+macros.
+
+ (2) Contrary to the original CorteX policy, the
+character " following a terminal vowel is not interpreted
+as a dieresis thereon, but as a double quote --- unless the
+word in question is aigue" or Malmo" or oither exceptions to
+be added. This allows Knuth's use of " for closing
+double quotes to be maintained in practice.
+
+ (3) A fundamental weakness of these macros is that they
+do not distinguish math mode rigourously. In math mode ^,
+_ or <comma>, ', (each without \ before it) have
+meanings that may conflict with their meanings in prose.
+Hence the inspection macros will be provided in a separate
+macro file to warn of possible conflicts with the CorTeX
+and email syntax. They give a report on possible
+difficulties. It should suffice to arrange that the above
+characters are separated by a space or at least something
+that avoids possible interpretation as an accent. These
+inspector macros will also warn of possible problems
+outside of mathematics.
+
+
+ Laurent Siebenmann, May-June, 1993
+
+ <lcs@matups.matups.fr>
+
+
+*************************************************
+
+***** USE OF THE MACROS *****
+
+*************************************************
+
+ (0) Only the macros whose names begin with stars **...
+are intended to be used directly; the rest are
+"subroutines". The action of a macro will be restricted to
+the active window and further it will not change that
+window without approval of the user; instead, auxiliary
+files are used.
+
+ (1) If some text is SELECTED in the active window the
+macro ignores everything but the selection. This is useful
+to make a quick trial run on a critical part of the
+typescript. This may equally be useful and necessary to
+avoid parts of a typescript that are typed in distinct
+fashion. In such heterogeneous typescripts, QuedM allows
+one to mark various chunks of the typescript in such a way
+that they can be selected instantly at any time. (Select
+the chunk and use the Set Marker... option in the Search
+menu.) For example, one might mark text from \beginemailFR
+to \endemailFR for conversion to ordinary tex syntax. If
+one takes care to use a *copy* of the original typescript,
+one can then progressively paste in the converted chunks
+offered by the macros.
+
+ (2) Contrary to the original CorteX policy, the
+character " following a terminal vowel is not interpreted
+as a dieresis thereon, but as a double quote --- unless the
+word in question is aigue" or Malmo" or oither exceptions to
+be added. This allows Knuth's use of " for closing
+double quotes to be maintained in practice.
+
+ (3) A fundamental weakness of these macros is that they
+do not distinguish math mode rigourously. In math mode ^,
+_ or <comma>, ', (each without \ before it) have
+meanings that may conflict with their meanings in prose.
+Hence the inspection macros will be provided in a separate
+macro file to warn of possible conflicts with the CorTeX
+and email syntax. They give a report on possible
+difficulties. It should suffice to arrange that the above
+characters are separated by a space or at least something
+that avoids possible interpretation as an accent. These
+inspector macros will also warn of possible problems
+outside of mathematics.
+
+
+ Laurent Siebenmann, May-June, 1993
+
+ <lcs@matups.matups.fr>
+
+
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+APPENDIX: TEXT FORM OF THE MACINTOSH QEDM MACROS
+
+NB. The working form is the resource file:
+
+ **Post&PreAcc7BitTeX-QuedMac
+
+which is a Macintosh binary file.
+
+
+
+%%%%% ***documentation
+%%%%% ***initialize
+%%%%% **post-acc2tex
+%%%%% **post-acc2pre-acc
+%%%%% **pre-acc2post-acc
+%%%%% **tex2mac
+%%%%% **tex2pre-acc
+%%%%% **tex2swt
+
+ %%%%%% Auxiliary macros
+ %%% de-oemacros
+ %%% re-oemacros
+ %%% de-verbatim
+ %%% re-verbatim
+ %%% de-verbatim-loop
+ %%% re-verbatim-loop
+ %%% post-acc-pre-trans
+ %%% pre-acc-post-trans
+ %%% post-acc-tex-trans
+ %%% oe
+ %%% tex-mac-trans
+ %%% tex-pre-acc-trans
+ %%% tex-swt-trans
+
+
+
+
+%%%%% ***documentation
+<Option>thedoc
+
+
+%%%%% ***initialize
+New "ctwk"
+Key
+
+Save
+Set Line Width...
+Key
+
+Chicago
+12 Point
+
+
+%%%%% **pre-acc2post-acc
+
+preamble
+pre-acc-post-trans
+postamble
+Key post-
+Key <enter>
+
+
+%%%%% **post-acc2pre-acc
+
+preamble
+post-acc-pre-trans
+postamble
+Key pre-
+Key <enter>
+
+
+%%%%%**post-acc2tex
+
+preamble
+post-acc-tex-trans
+postamble
+Key std-
+Key <enter>
+
+
+%%%%% **tex2mac
+
+preamble
+tex-mac-trans
+postamble
+Key mac-
+Key <enter>
+
+%%%%% **tex2pre-acc
+
+preamble
+tex-pre-acc-trans
+postamble
+Key pre-
+Key <enter>
+
+
+%%%%% **tex2swt
+
+preamble
+tex-swt-trans
+postamble
+Key swt-
+Key <enter>
+
+
+%%%%% preamble
+
+Save As
+Copy "8"
+Key <command>.
+sub-preamble
+Open "ctwk"
+Select All
+Paste
+Key <cursor-left>
+Copy "0" ""
+Copy "1" ""
+Copy "2" ""
+Copy "3" ""
+Copy "4" ""
+de-verbatim
+
+
+%%%%% sub-preamble
+
+Copy "0"
+Set Marker "the-sel"
+Select All
+Copy "1"
+Jump "END"
+Key
+Find "^" "gt"
+Key
+Jump "the-sel"
+Key <shift><cursor-left><shift><cursor-right>
+Jump "the-sel"
+Copy "4"
+Open "ctwk"
+Select All
+Paste "4"
+Clipboard 1
+Find "..." "gT"
+Copy "8" "ctwk"
+Clipboard 0
+
+
+%%%%% postamble
+
+oe
+re-verbatim
+Open "verbatims"
+Clear
+Close
+
+Clipboard 8
+Open "ctwk"
+Save As
+Paste "8"
+Select All
+Key <cursor left>
+
+
+%%%%% de-verbatim
+
+Open...
+Open "ctwk"
+Find "...zzz..." "tE"
+Clipboard 9
+Copy "9" ""
+de-verbatim-loop
+New "verbatims"
+Clipboard 9
+Paste
+Copy "9" ""
+Clipboard 0
+Save
+
+%%%%% de-verbatim-loop
+
+Change "\(\\begin\s*\r-\s*\{verbatim\*-\}.*\\end\s*\r-\s*\{verbatim\*-\}|\\verb\s*\r-\s*\(.\):.*\2\)" to " zzzverbatimzzz " "grT"
+<shift>Copy "9" '\1 \r\r' "tg"
+
+de-verbatim-loop
+
+
+%%%%% re-verbatim
+
+Open "verbatims"
+Find "...yyy..." "tE"
+
+Open "ctwk"
+Find "...zzz..." "tE"
+
+Clipboard 9
+Copy "9" ""
+
+re-verbatim-loop
+
+
+%%%%% re-verbatim-loop
+
+Copy "9" ""
+Clipboard 0
+Open "verbatims"
+Find "\(\\begin\{verbatim\*-\}.*\\end\{verbatim\*-\}|\\verb\|.*\|\)" "gtTr"
+Key < cursor left>
+Copy "9" '\1' "g"
+
+Open "ctwk"
+Find "zzzverbatimzzz" "tT"
+Paste
+
+re-verbatim-loop
+
+
+%%%%% post-acc-tex-trans
+
+Open...
+Open "ctwk"
+
+Change "\\[A-Za-z]+:>["",\'\`^]" "& " "agt"
+
+Change "\([aA]\)\([`^]\)" to "\\\2\1" "gat"
+Change "\([eE]\)\([\`\'^]\)" to "\\\2\1" "gat"
+Change "\([\i\I]\)\([\^]\)" to "\\\2\1" "gat"
+Change "\([oO]\)\([\^]\)" to "\\\2\1" "gat"
+Change "\([uU]\)\([\`^]\)" to "\\\2\1" "gat"
+Change "\([aeiouAEIOU]\)"":>[a-zA-Z]" to "\\""\1" "gat"
+Change "\(aigu\)\(e\)""" to "\1\\""\2" "gat"
+Change "\([M]alm\)\(o\)""" to "\1\\""\2" "gat"
+Change "\([cC]\)\(,\):>[aAoOuU]" to "\\c{\1}" "gat"
+
+%%%%% post-acc-pre-trans
+
+Open...
+Open "ctwk"
+
+Change "\\[A-Za-z]+:>["",\'\`^]" "& " "agt"
+
+Change "\(\(^|[^A-Za-z]\)[CDLMNSTcdlmnst]\)'\([Ee][A-Za-z]:<[^AEIOUaeiou]\)" "\1/\3" "gat"
+
+Change "\([aA]\)\([`^]\)" to "\2\1" "gat"
+Change "\([eE]\)\([\`\'^]\)" to "\2\1" "gat"
+Change "\([\i\I]\)\([\^]\)" to "\2\1" "gat"
+Change "\([oO]\)\([\^]\)" to "\2\1" "gat"
+Change "\([uU]\)\([\`^]\)" to "\2\1" "gat"
+Change "\([cC]\)\(,\):>[aAoOuU]" to "_\1" "gat"
+Change "\([aeiouAEIOU]\)"":>[a-zA-Z]" to "\\""\1" "gat"
+Change "\(aigu\)\(e\)""" to "\1\\""\2" "gat"
+Change "\([M]alm\)\(o\)""" to "\1\\""\2" "gat"
+
+%%%%% pre-acc-post-trans
+
+Open...
+Open "ctwk"
+
+Change "\\[A-Za-z]+:>["",\'\`^]" "& " "agt"
+
+Change "\(\(^|[^A-Za-z]\)[CDLMNSTcdlmnst]\)/\(['^`][aeiou][A-Za-z]:<[^aeiouAEIOU]\)" "\1'\3" "agt"
+
+Change "\([`^]\)\([aA]\)" to "\2\1" "gat"
+Change "\([\`\'^]\)\([eE]\)" to "\2\1" "gat"
+Change "\([\^]\)\([\i\I]\)" to "\2\1" "gat"
+Change "\([\^]\)\([oO]\)" to "\2\1" "gat"
+Change "\([\`^]\)\([uU]\)" to "\2\1" "gat"
+Change "_\([cC]\)" to "\1," "gat"
+
+
+%%%%% oe
+
+de-oemacros
+
+Change "[o][e]:>[BbCcDdIiKkLlNnSsTtUu]" to "\\oe " "gat"
+Change "[O]e:>[BbCcDdIiKkLlNnSsTtUu]" to "\\OE " "gat"
+
+Change "\(m\)\\oe \(lle\)" to "\1oe\2" "gat"
+Change "\(m\)\\OE \(lle\)" to "\1OE\2" "gat"
+
+Change "\(oe\)\(rstite\)" to "\\\oe \2" "gat"
+Change "\([O]e\)\(rstite\)" to "\\\OE \2" "gat"
+Change "\([O]\)\(ersted\)" to "\\OE rsted" "gat"
+
+Change "\(mes|hyp|pr\)\\oe:b*\r*:b*" to "\1oe" "gat"
+
+re-oemacros
+
+
+%%%%% de-oemacros
+
+Change "\([\\][A-Za-z]*o\)\(e\)" to "\1qqq\2" "gatT"
+
+de-oemacros
+
+%%%%% re-oemacros
+
+Change "\([\\][A-Za-z]*o\)qqq\(e\)" to "\1\2" "gatT"
+
+re-oemacros
+
+
+%%%%% tex-mac-trans (sorry about the eight bit octets after `to' !)
+
+Open...
+Open "ctwk"
+
+Change "\\\(\'\):b*\r*:b*\([E]|{[E]}\)" to "ƒ" "gat"
+Change "\\\(\'\):b*\r*:b*\([e]|{[e]}\)" to "Ž" "gat"
+Change "\\\^:b*\r*:b*\([A]|{[A]}\)" to "å" "gat"
+Change "\\\^:b*\r*:b*\([a]|{[a]}\)" to "‰" "gat"
+Change "\\\^:b*\r*:b*\([E]|{[E]}\)" to "æ" "gat"
+Change "\\\^:b*\r*:b*\([e]|{[e]}\)" to "" "gat"
+Change "\\\^:b*\r*:b*\([I]|{[I]}\)" to "ë" "gat"
+Change "\\\^:b*\r*:b*\([i]|{[i]}\)" to "”" "gat"
+Change "\\\^:b*\r*:b*\([O]|{[O]}\)" to "ï" "gat"
+Change "\\\^:b*\r*:b*\([o]|{[o]}\)" to "™" "gat"
+Change "\\\^:b*\r*:b*\([U]|{[U]}\)" to "ó" "gat"
+Change "\\\^:b*\r*:b*\([u]|{[u]}\)" to "ž" "gat"
+Change "\\"":b*\r*:b*\([A]|{[A]}\)" to "€" "gat"
+Change "\\"":b*\r*:b*\([a]|{[a]}\)" to "Š" "gat"
+Change "\\"":b*\r*:b*\([E]|{[E]}\)" to "è" "gat"
+Change "\\"":b*\r*:b*\([e]|{[e]}\)" to "‘" "gat"
+Change "\\"":b*\r*:b*\([I]|{[I]}\)" to "ì" "gat"
+Change "\\"":b*\r*:b*\([i]|{[i]}\)" to "•" "gat"
+Change "\\"":b*\r*:b*\([O]|{[O]}\)" to "…" "gat"
+Change "\\"":b*\r*:b*\([o]|{[o]}\)" to "š" "gat"
+Change "\\"":b*\r*:b*\([U]|{[U]}\)" to "†" "gat"
+Change "\\"":b*\r*:b*\([u]|{[u]}\)" to "Ÿ" "gat"
+Change "\\[\^]:b*\r*:b*\(\\i\(:b+\r*:b*|\r+:b*\)|{\\i}\)" to "”" "gat"
+Change "\\`:b*\r*:b*\([A]|{[A]}\)" to "Ë" "gat"
+Change "\\`:b*\r*:b*\([a]|{[a]}\)" to "ˆ" "gat"
+Change "\\`:b*\r*:b*\([E]|{[E]}\)" to "é" "gat"
+Change "\\`:b*\r*:b*\([e]|{[e]}\)" to "" "gat"
+Change "\\`:b*\r*:b*\([U]|{[U]}\)" to "ô" "gat"
+Change "\\`:b*\r*:b*\([u]|{[u]}\)" to "" "gat"
+Change "\\[c]\(:b+\r*:b*|\r+:b*\)\(c|{c}\)\([aouAOU]\)" to "_\3" "gat"
+Change ":<[_\^`']{\([aeiouAEIOU]\)}" to "\1" "gat"
+
+
+%%%%% tex-pre-acc-trans
+
+Open...
+Open "ctwk"
+
+Change "\(:[^a-zA-Z\-][cdlmnstCDLMNST]\)'\(\\'|'\)-\(\s*\r*\s*\)\(e\)" to "\1/\2\4" "gat"
+Change "\\\(\'\)\(:b*\r*:b*\)\(e|{e}\)" to "\1\3" "gat"
+Change "\\\([\^]\)\(:b*\r*:b*\)\([aeiouAEIOU]|{[aeiouAEIOU]}\)" to "\1\3" "gat"
+Change "\\[\^]:b*\r*:b*\(\\i\(:b+\r*:b*|\r+:b*\)|{\\i}\)" to "^i" "gat"
+Change "\\\([`]\)\(:b*\r*:b*\)\([aeuAEU]|{[aeuAEU]}\)" to "\1\3" "gat"
+Change "\\[c]\(:b+\r*:b*|\r+:b*\)\(c|{c}\)\([aouAOU]\)" to "_\3" "gat"
+Change ":<[_\^`']{\([cCaeiouAEIOU]\)}" to "\1" "gat"
+
+
+%%%%% tex-swt-trans
+
+Open...
+Open "ctwk"
+
+Change "\\\':b*\r*:b*\([e]|{[e]}\)" to "Ž" "gat"
+Change "\\\^:b*\r*:b*\([aeiouAEIOU]|{[aeiouAEIOU]}\)" to "ß\1" "gat"
+Change "\\\^:b*\r*:b*\(\\i\(:b+\r*:b*|\r+:b*\)|{\\i}\)" to "ßi" "gat"
+Change "\\"":b*\r*:b*\([aeiouAEIOU]|{[aeiouAEIOU]}\)" to "¬\1" "gat"
+Change "\\\([`]\)\(:b*\r*:b*\)\([a]|{[a]}\)" to "ˆ" "gat"
+Change "\\\([`]\)\(:b*\r*:b*\)\([e]|{[e]}\)" to "" "gat"
+Change "\\\([`]\)\(:b*\r*:b*\)\([u]|{[u]}\)" to "" "gat"
+Change "\\[c]\(:b+\r*:b*|\r+:b*\)\([c]|{[c]}\)" to "»" "gat"
+
+Change "{\([\^""]-[aeiouAEIOU»ˆ]\)}" to "\1" "gat"
+
+Change "\$\$\(:.:+\)\$\$" to "ÒÒ\1ÔÔ" "gatr"
+
+Change "\$\(:.:+\)\$" to "Ò\1Ô" "gatr"
+
+
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
diff --git a/language/typingtex/cortex-email.dir/Email&CorTeXQuedMac.hqx b/language/typingtex/cortex-email.dir/Email&CorTeXQuedMac.hqx
new file mode 100644
index 0000000000..89af662673
--- /dev/null
+++ b/language/typingtex/cortex-email.dir/Email&CorTeXQuedMac.hqx
@@ -0,0 +1,327 @@
+(This file must be converted with BinHex 4.0)
+:%d9YB@PX*N0[FP4P@&&eC@40B@-!88e"3e&&4$%"!!!!!!!!!$cBY33!!!!!!3!
+!!$QZ!!!iVJ!!!bS!"m!!!!rJ!!!Hm!!!2(J!!(Jm!!$`(J!"jmm!!mlRJ"0&E@&
+TE#C$Eh*8C9K4G@9N6@&M!J!!!&&03804483a!!"468&$889%-3%!!%S!+3!!!!!
+!!!!!!!!!!!!!!!!!!+JTM58!!!!!!!!mf!!!!!%!!!!$J!!!"m!!!!rJ!!!Im!!
+!2rJ!!(rm!!$rrJ!"rrm!!rrrJ!Irrm!2rrrJ(rrrm$rrrrjrrrrqrrrrrRrrrri
+rrrrq(rrrm!rrrq!(rrr!!rrrJ!(rr`!!rri!!(rm!!!rq!!!(r!!!!rJ!!!(`!!
+!!i!!!!%!!!!!!!!!!!#96h"PELiZ,Je2F'9Z)#*MG(GV)Je'D@jN)#)Z,LjkHRS
+Z,LiL)#!J)R4&)Je$E'P`BQpKFQ3J13e$Eh"j)#)j)L!L)JeNC5efCA*LBA4TE5e
+XEfp`$8jPGb!LGQ9bBQ&dD@ec)Je$E'P`BQpKFQ3J13e3BA0dC3e$Eh"j)#)j)L!
+L)Je$E'P`BQpKFQ3J-!e6BACP$3d!!!#56h"PEL!LGQ9bBQ&dD@ec)Je'D@jN)#)
+Z,LjjHANZ,LiL)#!J)R4&)Jd06h"PEL!LBh4hDb)04QPZC#!L,LiZHRTk,LiZ)L!
+J)#*d45)0$80XDA"LEf&bC#!j$80[F(NJ)MNL)#)L$3ebC5efCA*LBA4TE5eXEfp
+`$3e$Eh"j)#)j)L!L)Je$E'P`BQpKFQ3J-!d!!!!fF(*PB@eLE'80F(*P,@&MBbe
+`Eh0d,A4bB@jc$A"[Fh4KE@*XC3e,CANJF'pcG#d05f9j)!d0!!!!0A"bC@&YBQa
+P$A"[Fh3YB@0M,A"bC5edFQ&ZF`e`Eh0dB@eLE'805f9j)("bC5d05f9j)!d0!!!
+!1("bC@&YBQaP$A"[Fh3YB@0M,A4PH#edFQ&ZF`e[C3e`Eh0dB@eLE'805f9j)(0
+dC#d05f9j)!d0!!!"c%p`C@iZ,Li06h"PEL!LBh4hDb)0$80SB@jRC5!J)PaF@d%
+Y@Q%YHPdV1MjE)L)XA#GFB&jG)L!J)#)Q)#)J)#!LB@Gd)Jd03fKKEQGP)#!LA#K
+F+&jm@ej",9TK,ATGA#PE3d4-68j69'0NE'eZFh4GA#N[A#KE*ejJA9YKC@P[G9e
+E35eDB5ekA6Sm@ejKC@P[G8&&58p9A9`T)L!J)#*F-5GF-b)J)#!LB@Gd)Jd03fK
+KEQGP)#*F+&YJAPeF+9`S@f&"A9`T)L"dEb!J)#*F-P`a)L!J)QGKG#)03fKKEQG
+P)#*F+&YFB&`RAPeF+9`S@f9&A9`T)L!J)(4[)#!J)P`bA$%L)#!J)QGKG#)03fK
+KEQGP)#*F+&YFAPeF+9`S@eaTA%PGA#NL)#!J)(4[)#!LA$*F-5)J)#!LCf&d)Je
+$D'&ZCf8J)P`S@eaHA9`TA#KEEdpGA#NL)#!J)(4[)#!LA$*F-5)J)#!LCf&d)Je
+$D'&ZCf8J)P`S@eaJAPeF+9`S@h99A9`T)L!J)#"dEb!J)P`bA$%L)#!J)QGKG#)
+03fKKEQGP)#*IA#KEBd0GA#NL)#!J)(4[)#!LA$%X)L!J)#*RBA3L$3d!!!"#3fK
+KEQGP)#*F+&YFA&eE35eDB5ekA5T[A#PF+'9F+5)JG'mJ)P`aFA&aA$)L)#!LCf&
+d9#)0$@4P,@pPE@&MFQpc!!!!3N0SB@jRC5!LA#KEA&aG@d%Y@Q%YHPdUEe`TFA&
+aA#KPA#NL)(4[)#*F-9`b)L!J)QGKG&3L$3ebC5e[C@eKBh*[F`!!!$4`FQ9KE@*
+XC3e`FQ8YB@0M,A4PH#edFQ&ZF`e`Eh0dB@eLE'805f9j)(0dC#d05f9j)!d0!!!
+"T%p`C@iZ,Li06h"PEL!LBh4hDb)0$80SB@jRC5!J)PaF@d%Y@Q%YHPdV1MjE)L)
+XA#GFB&jG)L!J)#)Q)#)J)#!LB@Gd)Jd03fKKEQGP)#!LA#KF+&jm@ej",9TK,AT
+GA#PE3d4-68j69'0NE'eZFh4GA#N[A#KE*ejJA9YKC@P[G9eE35eDB5ekA6Sm@ej
+KC@P[G8&&58p9A9`T)L!J)#*FA&`a*e`c)L!J)#*KCh3L$3e$D'&ZCf8J)PYJAPe
+K)L"dEb!J)#*FA#BL)#!LCf&d)Je$D'&ZCf8J)PYFB&`RAPeP)L!J)(4[)#!J)Pa
+F*L)J)#!LCf&d)Je$D'&ZCf8J)PYFAPeEA'PF59dL)#!J)(4[)#!LA&`Q)L!J)#*
+RBA3L$80SB@jRC5!L@eaHA@mL)#!J)(4[)#!LA&`Q)L!J)#*RBA3L$80SB@jRC5!
+L@eaJAPee)L!J)#"dEb!J)PaF*L)J)#!LCf&d)Je$D'&ZCf8J)P`SAe`TA#KMA#N
+k2PYK3@p2G99G)L!J)#"dEb!J)PaFBhYF-RdL)#!J)QGKG#)0$3!!!Kp2F'9Z,Li
+Z$8p`C@iJ)Q0dGfXL$3e$D'&ZCf8J)#*FA&Y",9TK,ATG+cSq@b)L,&`RA'"HA5)
+J)#!L*L!L)#!J)Q&RG#)0$80SB@jRC5!LA#KEB8&GA#PF+&YJAPeF+5)JG'mJ)#!
+LA&aF-P`a)L!J)QGKG#)03fKKEQGP)#*F+&YP49eF+9`S@eaJA#GHA9`T)L!J)(4
+[)#!J)PaFA$*F-5)J)#!LCf&d)Je$D'&ZCf8J)P`S@eaTA%PGA#PF+&YFAPeF+5)
+J)#!JG'mJ)#*FA&`bA$%L)#!J)QGKG#)03fKKEQGP)#*F+&Y[6eeF+9`S@eaHA9`
+T)L!J)#"dEb!J)PaFA$*F-5)J)#!LCf&d)Je$D'&ZCf8J)P`S@h99A9`TA#KEA'"
+HA9`T)L!J)#"dEb!J)PaFA$*F-5)J)#!LCf&d)Je$D'&ZCf8J)P`S@f&PD@pe389
+*6e9GA#NL)MSq@f%YHN%Y@PdL)#"dEb!J)PaF)L*F-5)J)#!LCf&d)Je$D'&ZCf8
+J)P`SB@PRG9`TA#KPA#NL)L)J)(4[)#*F-9aF)L*F-L)J)#!LCf&d)Je$D'&ZCf8
+J)P`S@deGB@aYA#PF+'pF+5)L)L!JG'mJ)#*F-9aF)L*F-L)J)#!J)QGKG#)03fK
+KEQGP)#*F+&YM3eeF+9`S,&`T1MjEB8&[6h99A5)J)#!JG'mJ)#*FA'0lA$&p)L!
+J)#*RBA3L$3d!!!*a6h"PELiZ,Je2F'9Z)#*MG(GV)Jd03fKKEQGP)#!LA&aE35e
+DB5ekA5Xk2PXL)LaF*eaJAPdL)#!J)LBJ)L!J)#*KCh3L$3e$D'&ZCf8J)#*F+&`
+SARaEAN%Y@Q%YHPeF+9Y$4%a06P08Bf4XE@jcG&eF+5GF+&Y&C9eE35eDB5ekA6S
+m@ej"48P29@&PD@peA9`T)L!J)#*F-5pF-b)J)#*RBA3L$3e$D'&ZCf8J)P`S@f&
+"A9`TA#KEB&jGA#NL)(4[)#!J)P`bA$%L)#!LCf&d)Je$D'&ZCf8J)P`S@f9&A9`
+TA#KEA'"F*ejGA#NL)#!JG'mJ)#!LA$*F-5)J)#!LCf&d)Je$D'&ZCf8J)P`S@ea
+TA%PGA#PF+&YFAPeF+5)J)#!JG'mJ)#*F-P`a)L!J)#*RBA3L$80SB@jRC5!LA#K
+EEdpGA#PF+&YFAPeF+5)J)#!JG'mJ)#*F-P`a)L!J)#*RBA3L$80SB@jRC5!LA#K
+EG99GA#PF+&YFB&jGA#NL)#!J)(4[)#!LA$*F-5)J)#!LCf&d)Je$D'&ZCf8J)P`
+S@f0$A9`TA#JXA#Nk2PYK3@p2G99G)L!J)#"dEb!J)PpF-5)J)#!LCf&d)Je$D'&
+ZCf8J)P`S@f&PD@pe389*6e9GA#NL)MSq@f%YHN%Y@PdL)#"dEb!J)PaF)L*F-5)
+J)#!LCf&d)Je$D'&ZCf8J)P`SB@PRG9`TA#KPA#NL)L)J)(4[)#*F-9aF)L*F-L)
+J)#!LCf&d)Je$D'&ZCf8J)P`S@deGB@aYA#PF+'pF+5)L)L!JG'mJ)#*F-9aF)L*
+F-L)J)#!J)QGKG#)0$3!!!,303fKKEQGP)#*F+&aFBQ9RD@jFFbTFFLeFFbTFHhC
+PFQ*KG'PYA#SYA(dZ+PaFC@jNA(-UA()YA(-UA(YfCA*LBA4TE9`U,9apI&aFGQ9
+bBPac+Pab,9ac+P`S,P`T1LiUA$*F+5)J)(4[)#!J)L"kHRTfCA*LBA4TEATkHL!
+L)#*RFP3L$40$Eh"j)#)j)L!J*e`a)&abA()R)#!J)R4R)Jd0C'8YGQ9bBQ&dD@d
+YE'p[F!d!!!$I6h"PEL!J)RCPFQ*KG'PYFb)04QPZC#!LA#KFA'*PCfPZA(-UA()
+YA(-UA(YfCA*LBA4TE9`U,9ap,LTFA'9ZC&ac+Pab,9ac+PalGQ9bBQ&dD@eF+Le
+FIAaFA(CPFQ*FFbTFFLeFFbTF+#jF+6SZ+P`bA#NL)#!LCh48FL)05f9j)"`03fp
+`H5!L15)J)#GF-5FJ)#!LCb)0$8p`C@iJ)#*MG(GV)Je'D@jN)#)JHRTkGQ9bBQ&
+dD@ekHRSJ)L!J)#*d9#)08'&cG'80$3ebC5efCA*LBA4TE5eXEfp`$3!!!$4`FQ9
+KE@*XC3edCAJYF(*P,@&MBbedFQ&ZF`e`Eh0dB@eLE'805f9j)("bC5d05f9j)!d
+0!!!!-A"bC@&YBQaP$A4PH#ecGh3YG(*KER-0F'pcG'&YBQaP$8YPH5"cGh3Y$8Y
+PH5!0$3d!!!#!Ef80$A*P,ACPFQ*KG'PY$8p`C@iJ)RCPFQ*KG'PYFb)03faPBA)
+03fa[Ff80$80XDA"LEf&bC#!i$8p`C@iJ)#*MG(GV)Je6CA3J6'PZC5"AD@4dD-N
+05f9j)!d08f&fC5""F`e3BA0dC5!L1#)08f9XC@0d)%&XE!e,CANJ(!d!!!+R6h"
+PELiZ,Je2F'9Z)#*MG(GV)Jd03fKKEQGP)#*FA&`R1Q)UA()U1Q)UA#KEC9emHeY
+PAAeF+5)JG'mJ)#!LML)J)#*RBA3L$80SB@jRC5!LA&aFAMTL+Pab+MTL+P`S@f&
+PD@pe389*6e9GI(YEB@9TEh9"48P299epA#NL)(4[)#!J)YpF-5)J)#*RBA3L$80
+SB@jRC5!LA&aFAMTL+Pab+MTL+P`SA&aTA#JkBLYFFLSkBLTmA()V1Q)UA#PmHea
+FDAeF+5)JG'mJ)#!LhfNL)#!J)QGKG#)03fKKEQGP)#*FA#)L1Q)UA()U1Q)UA#K
+EB@9TEh9"48P299emHeYKC@P[G8&&58p9AAeF+5)JG'mJ)#!LV&`a)L!J)QGKG#)
+03fKKEQGP)#*FA&`S@f"GA#PF+$TL+Pab+MTL+P`TA#KEB9emHeYKAAeF+5)JG'm
+J)#!LL#)J)#*RBA3L$80SB@jRC5!LA&aF+&YJA9`TA#JkBLTFFLSkBLTF+9`S@f9
+GI(YEC9epA#NL)(4[)#!J)SmL)#!LCf&d)Je$D'&ZCf8J)PaFA#KEB&eF+9`S1Q)
+UA()U1Q)UA#PF+&YeAAal@h9GI9`T)L"dEb!J)#+G)L!J)QGKG#)03fKKEQGP)#*
+FA&YMA9`S1Q)VA()U1Q)UI&ab+cTL+P`TA#KEBeemHeYMAAeF+5)JG'mJ)#!LZb)
+J)QGKG#)0$80SB@jRC5!LHe`S@eaH)L*G,9YKC@P[G8&&58p9ZiLGMeeF+AdL)(4
+[)#!J)P`a)L!J)QGKG#)0$80SB@jRC5!LA#4F*&`S1Lik+e`TA#4F*#)JG'mJ)Y,
+5A$(8e#)J)QGKG()L$3e$D'&ZCf8J)P`NA#Jk,MSVA#PF*#)JG'mJ)Y*F-G3L)#*
+RBA4b)J!!!!N0$8jPGbiZ,Jd!!!$Q$80[F(NJ)M!L$90PG#"0BA*VCA)J)R4SC5e
+cC@`L$90PE'9MG#""E'`03fp`H5!L-5)05R9YF#!L48j%)Je,CANJ)!e'D@jN)#*
+H)L!J)QGd)Je,CANJ)!e+G@e`)#*dD'8YFf9X)Je,CANJ%a`6(3e+G@e`)#*dD'8
+YFf9X)Je$Eh"j)#)d)Je2F'9Z)#*MG(GV)Je6C@aPBh3J3@aX$9"KFh4P)#)d)Je
+$E'P`BQpKFQ3J-3e'D@jN)#)Z,LiL)#!J)QG8)Je$Eh"j)#)i)L!LBh4hDb)03fa
+TF'*[BA*N)$!0$3d!!!!)&(4SC@4[B`d!!!"#6Q9h)#*MG(GV)Je,CANJ)#!0$90
+KGQ808f9d)%aTEQ8J9fPNG'JZ,Li05f9j)!d03fKTBf&RE`da-L"3EfPZG!d0!!!
+!FN0SB@jRC5!LAMTL+MSm@ejFA&eF+#8Z+P`TA()kBLSL)(4[)#!J)L!J)#@`A()
+J)#!L)#!LCf&d)Je$D'&ZCf8J)PYHA&aGA#JP@ek`A5iUA#PFFMTL+L)JG'mJ)#!
+L)#!J*EeFFL!J)#)J)#*RBA3L$3!!!+B0$90KGQ8J3A-03fp`H5!L1#)05f9j)"%
+Z$A0eBLe`FQ9KE@*XC3e2F'9Z)#*MG(GV)Je6C@aPBh3J3@aX$9"KFh4P$8YPH5!
+G$80[F(NJ)M!L)#!L)Je$Eh"j)#)a)L!J)L)03fp`H5!L-L)J)#)L$80[F(NJ)M-
+L)#!L)Je$Eh"j)#)d)L!J)L)0BfaPB@iYBfpYE@9ZG(-0C'8YGQ9bBQ&dD@d0!!!
+#+%p`C@iZ,Li06h"PEL!LBh4hDb)0$80SB@jRC5!LA#Jk@ejK,AT",9TF,9eEBf4
+XE@jcG%0%6%e18e4GA#NRA#KFA#Gm*e`T,9`SA(-UA()UA(-UA#PF+'9F+5)JG'm
+J)#!LA$%[A$*F0#)J)#*RBA3L$80SB@jRC5!LA&aF+&`RA#PF+$TL+Pab+MTL+P`
+TA#KPI(YPI9`T)L"dEb!J)#*F-9`c)L!J)QGKG#)03fKKEQGP)#*FA&`S@eaHA9`
+TA#JkBLTFFLSkBLTF+9`S@f&PD@pe389*6e9GI(YEB@9TEh9"48P299epA#NL)(4
+[)#!J)P`aA$-L)#!LCf&d)Je$D'&ZCf8J)PaFA&ikBLTFFLdkBLTF+&YTAAaFA&Y
+TA9`S1Q)VA()Y1Q)UI&ab1Q)UI$Sq@ejK,AT",9TGA#PmHeYTAAeF+5)JG'mJ)#!
+LAQNL)#!LCf&d)Je$D'&ZCf8J)PaFA#KEB&eF+9`S1Q)UA()U1Q)UA#PF+&YKCA9
+"499GI(YEB@9e3899AAeF+5)JG'mJ)#!LA$&F-b)J)#*RBA3L$80SB@jRC5!LA&a
+EBeeF+$TL+eab,6TL+RaFFLXkBLTF+9`SBhalBheF+9`S@f&[G8&299eF+5)JG'm
+J)#!LAe`bA$-L)#!LCf&d)Je$D'&ZCf8J)MSm@epFAQ!RAAYF+&YM3f&PD@pe389
+*6e9GA#Pp)L"dEb!J)#*F-5)J)#*RBA3L$3!!!,9`FQ9KE@*XC3edCAJYE@&M,A4
+bB@jc$@pP$80SB@jRC5!LA&aEEeeEC9eF+$TL+eab,6TL+RaFFMTL+R`k2PYHB5e
+k35eDA9`T)L"dEb!J)#,2)L!J)QGKG#)03fKKEQGP)#*FA&Y2A9Y&A9`S1Q)VA()
+Y1Q)UI&ab1Q)UI$Sq@ejK,AT",9TGA#NL)(4[)#!J)XiL)#!LCf&d)Je`Eh0dB@e
+LE'805f9j)'eKBbd05f9j)!d0!!!#43eNC5e[C@eKBh*[F`d03fKKEQGP)#*EEee
+EC9dk2PY#BN0M4'4*D8YV6'a1EP0c9(49G9dL)(4[)#*FA'pP)#)J)QGKG#)03fK
+KEQGP)#*E6eeP1MjE3Q*$Bd4N5@P,DdaX6Qj6Fe4d9A9G)L"dEb!LA&a245!L)#*
+RBA3L$3e$D'&ZCf8J)P`SE9`TA&a[C5"F+'aXC9`T)L"dEb!LA$&[C9`b)L!LCf&
+d)Je$D'&ZCf8J)P`SE9`TA&a245"F+'aXC9`T)L"dEb!LA$&249`b)L!LCf&d)Jd
+03fKKEQGP)#*F+'pPA#PF+(*cG'PdC9`T)L"dEb!LA&aFEf8JA$)L)#*RBA3L$80
+SB@jRC5!LA#KE6eePA#PF+(*cG'PdC9`T)L"dEb!LA&aF6d8JA$)L)#*RBA3L$80
+SB@jRC5!LA#KE6eeF+9`SCA*cG'9NA#NL)(4[)#*FA%p&)(*cG'9N)L!LCf&d)Jd
+03fKKEQGP)#*F+'*TI&YHB5ek35eDA@0m@ejK,AT",9TGD@jMI'9ZC(aPH(aSHA"
+mDA0mE@pZI'eKBh*mE@9cI'eTBh*mF(*F+9aFEf8kBLTFFLSkBLSL)(4[)#*F-@p
+P)L!LCf&d)Jd03fKKEQGP)#*F+'0F+9Y[A9YPA9`SGA*F+5)JG'mJ)P`aA&aFEf8
+JA$)L)#*RBA3L$80SB@jRC5!LA#KMA#PE6eeE49eF+(9bA#NL)#"dEb!J)P`aA&a
+F6d8JA$)L)#*RBA3L$3ebC5e[C@eKBh*[F`d0!!!(2%p`C@iZ,Li06h"PEL!LBh4
+hDb)0$3e$D'&ZCf8J)PaFA#KF*e`T1Q)UA()Y1Q)UA#KE49emHeY&AAeF+5)JG'm
+J)#!LJb)J)#*RBA3L$80SB@jRC5!LA&aF+&`RA#NkBLTFFLdkBLTF+&YPAAal@f9
+GI9`T)L"dEb!J)#+1)L!J)QGKG#)03fKKEQGP)#*FA&aH1Q)UA()Y1Q)UA#KE39e
+mHeY"AAeF+5)JG'mJ)#!Lj5)J)#*RBA3L$80SB@jRC5!LA&aFAMTL+Pab,6TL+P`
+S@f&GI(YEB9epA#NL)(4[)#!J)SNL)#!LCf&d)Je$D'&ZCf8J)PaFA&ikBLTFFLd
+kBLTF+&Y&AAal@d9GI9`T)L"dEb!J)#,Q)L!J)QGKG#)03fKKEQGP)#*FA&aH1Q)
+UA()Y1Q)UA#KEC9emHeYPAAeF+5)JG'mJ)#!LN!!L)#!LCf&d)Je$D'&ZCf8J)Pa
+FA&ikBLTFFLdkBLTF+&Y*AAal@dPGI9`T)L"dEb!J)#,V)L!J)QGKG#)03fKKEQG
+P)#*FA&aH1Q)UA()Y1Q)UA#KED9emA&aED9eF+$TL+eab,6TL+RaFFMTL+R`k2PY
+HB5ek35eDA9`TI(YED9epA#NL)(4[)#!J)T3L)#!LCf&d)Je$D'&ZCf8J)PaFA&i
+kBLTFFLdkBLTF+&Y2AAal@dpGI9`T)L"dEb!J)#,[)L!J)QGKG#)03fKKEQGP)#*
+FA&aH1Q)UA()Y1Q)UA#KEEeemHeY[AAeF+5)JG'mJ)#!LQ5)J)#*RBA3L$80SB@j
+RC5!LA&aFAMTL+Pab,6TL+P`S@e9GI(YE99epA#NL)(4[)#!J)[-L)#!LCf&d)Je
+$D'&ZCf8J)PaFA&ikBLTFFLdkBLTF+&YeAAal@h9GI9`T)L"dEb!J)#+H)L!J)QG
+KG#)03fKKEQGP)#*FA#)L1Q)UA()Y1Q)UA#KE39emHeY"AAeF+5)JG'mJ)#!LJ#)
+J)#*RBA3L$80SB@jRC5!LA&`L)MTL+Pab,6TL+P`S@f&GI(YEB9epA#NL)(4[)#!
+J)SSL)#!LCf&d)Je$D'&ZCf8J)PaF)L)kBLTFFLdkBLTF+&Y&AAal@d9GI9`T)L"
+dEb!J)#,S)L!J)QGKG#)03fKKEQGP)#*FA#)L1Q)UA()Y1Q)UA#KEC9emHeYPAAe
+F+5)JG'mJ)#!LN5)J)#*RBA3L$80SB@jRC5!LA&`L)MTL+Pab,6TL+P`S@dPGI(Y
+E59epA#NL)(4[)#!J)Z`L)#!LCf&d)Je$D'&ZCf8J)PaF)L)kBLTFFLdkBLTF+&Y
+TAAaFA&YTA9`S1Q)VA()Y1Q)UI&ab1Q)UI$Sq@ejK,AT",9TGA#PmHeYTAAemHea
+F@fPGI9`T)L"dEb!J)#+9)L!J)QGKG#)03fKKEQGP)#*FA#)L1Q)UA()Y1Q)UA#K
+E6eemHeY2AAeF+5)JG'mJ)#!LK5)J)#*RBA3L$80SB@jRC5!LA&`L)MTL+Pab,6T
+L+P`S@fpGI(YEEeepA#NL)(4[)#!J)TSL)#!LCf&d)Je$D'&ZCf8J)PaF)L)kBLT
+FFLdkBLTF+&Y9AAal@e9GI9`T)L"dEb!J)#+')L!J)QGKG#)03fKKEQGP)#*FA#)
+L1Q)UA()Y1Q)UA#KEG9emHeYeAAeF+5)JG'mJ)#!LRb)J)#*RBA3L$80SB@jRC5!
+LA&aEA&jG1Q)UA()Y1Q)UA#KED9emA&aED9eF+$TL+eab,6TL+RaFFMTL+R`k2PY
+HB5ek35eDA9`TI(YED9epI(YFA&YTAAeF+5)JG'mJ)T3L)#!J)QGKG#)03fKKEQG
+P)#*FA'!kBLTFFLdkBLTF+&Y"AAal@d&GI9`T)L"dEb!J)#,,)L!J)QGKG#)03fK
+KEQGP)#*FA'!kBLTFFLdkBLTF+&YKAAal@f&GI9`T)L"dEb!J)#+))L!J)QGKG#)
+03fKKEQGP)#*FA'!kBLTFFLdkBLTF+&Y&AAal@d9GI9`T)L"dEb!J)#,T)L!J)QG
+KG#)03fKKEQGP)#*FA'!kBLTFFLdkBLTF+&YPAAal@f9GI9`T)L"dEb!J)#+2)L!
+J)QGKG#)03fKKEQGP)#*FA'!kBLTFFLdkBLTF+&Y9AAal@e9GI9`T)L"dEb!J)#,
+d)L!J)QGKG#)03fKKEQGP)#*FA'!kBLTFFLdkBLTF+&YeAAal@h9GI9`T)L"dEb!
+J)#+G)L!J)QGKG#)03fKKEQGP)#*FA&YMA9`S1Q)VA()Y1Q)UI&ab1Q)UA#PF+'0
+mHf0pA#NL)(4[)#!J)PpF-P`c)L!J)QGKG#)03fKKEQGP)#*IHeYMAAemAeYMA5)
+JG'mJ)#!LM5)J)#*RBA3L$80SB@jRC5!LAhYE3eepI&pE3edL)(4[)#!J)S)L)#!
+LCf&d)Je$D'&ZCf8J)MSm@eaHB#GGHe`S@f&PD@pe389*6e9GA#Pp)L"dEb!J)#*
+F-5)J)#*RBA3L$3d0!!!CXN9YB@PX*N0[FP4P@&&eC@40B@-J)!dJ)#!J6@&j)$%
+j16-JB@a`D'%JGQ9bFfP[EL!SEQpd)(PPG#"MEfe`E'9dC5N0)#!J)%eKFh4PFL"
+`Eh0dD@jR)'pZ)#"QG(!J)#"YBA4eF(-ZE@&dGA"c,QCb$5!J)#"TEL"NDA*PBh4
+[FRNJ9'9B,e4jF'PZCe4P@#jNDA)0$5!U+LSU+LSU+LSU+LSU+LSU+LSU+LSU+LS
+U+LSU+LSU+LSU+LSU+LSU+LSU+LSU+LSU$5!U+LSU+LSJ$5!U+LSU+LSJ3fpZGQ9
+bFfP[ER-k$5!U+LSU+LSJ$5!U+LSU+LSJ)#!J)#"8C9JJ2#dY)'9YB@PX,@Cb)$`
+Y,6iJ3fpb9'9B)#dY2L"8C9JJ$5!U+LSU+LSJ$5!U+LSU+LSJEfiJG'KP)%&`F'a
+P)%eKBfPZG'pcD#i0)#SU+LSU+L!0)#SU+LSU+LSU+LSU+LSU+LSU+LSU+LSU+LS
+U+LSU+LSU+LSU+LSU+LSU+LSU+LSU+LS0$8j[G'8JBA9i)'CbB@jMEh"SEfjPFb!
+k$3dJ)#!J)%4PFb"bC@jcC@PREQ9YC@jdFb"KFh0PHL"N*f9dB@PXE#GPFb"cGA)
+J3fpb9'9B)'9d)'9YB@PX,@Cb$@&`F'&bB@PcFf9ZG#"KGR*TE#eUG@PZ)$%j16-
+JC'&ZFb"XCA-JG(*KER0KBh4TEfjc)'4P)'aK)'aTFh4P$5GPE'9MG(*[EQPaG@8
+J4e98,#"KCQCTBfJRC@9c)(0eFL"XC5"cCA*fCA9b)#"QG(!JCR4`,Q0TBf)ZCR)
+J+'a[CfPZ1JeKEQpZH@e[GA-T,L!J)&C[DA)JBA9cFfNJG@iJFLGPFh9YC5!RCAC
+PER4eC@`JDR9iG'&ZG#"MC5"QD@0SD@9b)!ecGA)J)'CdF#!J)'eKG(9`FbjYBA4
+eF(-ZCR)Z$3dU+LSU+LSU+LSU+LSU+LSU+LSU+LSU+LSU+LSU+LSU+LSU+LSU+LS
+U+LSU+LSU+LSU)!d0+LSU+LSJ58j88Np%980858p1)#SU+LSU)!d0+LSU+LSU+LS
+U+LSU+LSU+LSU+LSU+LSU+LSU+LSU+LSU+LSU+LSU+LSU+LSU+LSU+L!0$5dY,5!
+JC@eKD@`YCR)JDA-JB5"cBfKPE@8JCQpb)'9QCQPMD@9ZG#"dHA"TEQFJEfBJ4R*
+PEQ0S$@&MBf9ZG'9N)'0SBA*KBh4PFR-JD@iJGfKTBfJJEfjP)(4jF'9c)#FJCQp
+b)&`R)#KKBf0eG'80B@0MC@jd+5`JB#"QEh)JA'!J+'GbBACP)'&MBf9ZG#NX)#"
+H)'C[FL"FAL!SD'&d)'&MBf9ZG#NX)'&ZC#![$@C[FL"QEh)JBA"[Fh4bEh"SC5!
+SBA3JE'9KFh3JBQ9QEh*P)'*PCQpbC5"P)'&ZC#"&+5i09'KP)%CbC@jMD#"KBR0
+dFQ&MG#"KGQpfC5"TFb"TEL"dD'Pc)(0dH@aP,Jd0)#!Y,5dJ3fpb9'9B)'Pc)'%
+JFfPYD@aKFL"cBfKPE@8JGfKTBfJJC'PQCQ9bFb"TEL"dD'&d)#FJAL"J$@C[E'a
+[Gb"dD'8JGQphC@`X)'&ZC#![)'Pc)'j[G#"eFf9N)'C[FL"KF'pcG(*[F'KP,L"
+*G#"hBA-0Ff9d)(9`)'*j)'*j)%KeBQ9bG#"(BA*KGQ9X)#KTE@&R+5"KEQ3JE@p
+ND@CTC@3JFfpYCAGSBA3J$@*j)&"KFf0KE#""EA0TE'NJ2'&YFfPXD8"MD'dZDA*
+TG#jQFMiZ)#"6C@8JB5"`BA*dD@&X)("[Fh4TEQF0BRNJ3@ecD@aT)#"[EL"QG(!
+JE@&dGA"c,QeKG(9`FbjQFLiJ)%eKERNJGA0PFR-JCQPZC#"$Eh*8C9J0BfpZGQ9
+ZG'P[ER-JDR9cG#"K)'*TG#"YEh*P)'jKG(9bB@`X)("bEf*KBQaj)'*PBf&eFf8
+0G'KPH5"KFQ8JBfa[Ff9b)(4[)'KKEQ4hFQPdD@jR,Jd0)#!J)%0[FP4P@#"KE(0
+[)'&XE'phFb!J)L!JCQpb)'4TBA*PFh0TFb"QEfaXEhGTEQFJB5"fEhGPE#i03R9
+d)'pZC5"[EQ8JFfK[G@aN)'&fEfPN)'PdFb"eFf8JEfiJG'9bE@PZB@`JGQphC@a
+c1L!0G(P`C5"KD@GeA#*P,#"0B@aYA#*[,#"ZEh3JB@PRG@8L,#"0B@aYEb)JG'm
+JBAC[D@3J$@0[EQCeFfP[EL"hDA4S)#!L)#"KFb"ME'pcD@jR)'4[G@*XC5"aG@p
+dCA-J+'GeD@aXC@ePG(-T,Jd0)#!J)%PZ)'*[G'JJFhPcG'9YFb"[CL"dHA"TEQF
+J5fjeG'JRFb"YEh*P)("bEfaTH#"cH@jdBAJJ$@C[FL"KBf0PER4c)(*PE@&TER-
+JBACKD@aKBQaP,Jd0)#!J)&4SC5"PE@&TE#eQFL"dHA"TEQFJDA-JB@0MCA"dB@*
+XC5"dEb"8C9JJEfjMC5"K)(0YB@aX)'eKBh*[$A"KDf&RC5"PE@&TE#eQFLjcG(N
+JD'&c)'*PC@iJE'pKC'9N1b!JC@eKD@`YCR)JDA-JG'KeF`e`CA*QC@0dE(NJF'p
+bG'&LE'8Z$3dJ)#!J3fpb9'9B)(*PFA9TFQ9c)'%JF(*PF(*[Bf9cFfpb,#"hD'P
+MD#"TFb"RDACPEL"KFb"K)'aPH!ecBh*TF(3J+'aPH#"TFb"K)(9ZDAJJGA4TE'P
+dH5NZ)#"8D'Pc)(0MFQP`G#"`CA*QEh*YFb"K)'0[GA"XC5!0EfBJCAKdFQ%JFf9
+bGQPMCA-k$3dJ+'%T)%0[ERCPFR0TEfiJEfBJG'&LFb"dEb"cF'&MCA-Z)#"8D'P
+c)(4bDACTB@`JCQ9KG(9bC5"TF`eZC@GXC@0dC@3JD'9bC5"cD@jMC5"TG#"MB@i
+JBQ8JC'pZC5"bC@&ND@aj)'*j)'%0GfpbC("bEf0PFh0[FL"KG#"KERNJG'PYC5i
+0$5!SBLNJ3fpZGQ9bFfP[EL"[CL"[C5"dEb"FEf8JGfKPEL"QFQ9ZBfJJG(P`EfG
+bBA"SH3ebCA&eDA*PFb"TG#iJ9'KTFb"ZEfiYG(*TGQPKE#"QC@&dGA*P)'Pc)(*
+PG'&TEQ9N)'KPFQ8JB@jN$@&NEh"dC@3JCQpb)'&XE#"MEfjfCA*cD@pZFb"MEfj
+MCA*ZD@jR)'9YB@PX,@Cb)(0TEQ0P)'Pd)'eKEQ&RCA-0G'mJC'mJCh*KBf9QG@a
+XH5"hD'&d)'eKERNJEfBJGA-JEQ9RE'9MG#iJ)&"XC@&cC5"MEfe`E'&TEJeTCL"
+YDA0dB@YPFb"bCA0eE(3K$3dJ)#!J)#"#C@0KGA0P)'aPH#"TFb"ZEh3JBfpZGQ9
+ZD@9ZG'aj)'&MBf9cFfPLE'8JEfiJG'KP)%eKBb"LGA30G'KP)'9NDA4[FL"4C@4
+0)'Pc,#"dD'9bC5"hBA-JB5"ZC@9N)'C[FL"K)&&PC%dJGQ9bFfP[EL"[CJe$Eh*
+8C9JZ)#"*G#"TFb"dD'8JE@&MFQmk$3dJ)#!J+LT`Eh0d,@&MBc*dCAJJ1L!J)#!
+J3fpb9'9B)#dY2L"8C9J0$8C[FL"eFf9bFb"[CL"PE@&TE#eQFL"hD'mJGf&ZG#"
+dEb"SBACP)#)ZG'9i)L"QD@aP$@*XC@jN)'e[Fh3JC@&cD@aj)(GTG'JJ5fjeG'J
+RFb"cH@jdBAJJ+("PFQKKF(-JBA3J$A4SC5"MEh0d)'pQ)(*PB@4TBQPXDA4j+5"
+dD'9bC5"TFb"KE(0[1Jd0)#!J)#SUF(*P,@&MBc*dCAJJ1L!J)#!JC@eKD@`YCR)
+J,5dq)&4P@!d0)#!J)#"'Eh)JCfp[C#"YC@&cGA*P)'0[ERCPFR4PFR-JBQ9dGf9
+PEL"PE@&TE#eQFL"KEQ3J3fpb9'9B$@&bC5"`FQpfD@4PC$S0$5!J)#!U+R"[Fh3
+YB@0M-R"bC5eKBf-J)#!k)#"PE@&TE#eQFL!m,5dJ3fpb9'9B$3dJ)#!J+LT`FQ8
+YB@0M-R"[Fh3YB@0M)#!J1L!JC@eKD@`YCR)J)#dY2L"$Eh*8C9J0$8&ZC#"KE(0
+[)(4SFQ9P)'0[ERCPFR4PFR-JCR*[E5"cG'&ZC'&bC#"8C9JJG(P`D@jR)(4[)(C
+KFQP[GA-0E@pbC5"bC@&NB@*XC5"QEh*YBA4c1Jd0)#!J)#SUG'9i-R"bC5eKBf-
+J)#!k)#"8C9JJG'mJ)'9YB@PX,@Cb)!dJ)#!J,5dY)(9cC@CeE#"QEh)JE@&VD@j
+R)'%J4R*PEQ0S)'aKEQGeB@GP)#jdCAJJCQPXC5"bC@&NB@*XC3dJ)#!JGfPdD'p
+eG#"hD'PXC5"XC@&fD@jR)'Pd)("[FR4KBQaP)'PP)'&cBfPT)'&ZC#"dHA"PFf9
+dG'&LE'80)#!J)'&ZHAGSCA*P,L!J4'mJEQpd)'C[FQGPG#"dEb"KC'3JCA0cC@j
+dD@&X)'9YB@PX,@Cb)'0[E@eKEQ4c,Jd0)#!J)#SUG'9i-QeKBb!J)$SJ)&4P@#"
+dEb!JCR9XE#"0B@0TER4[FfJJ1#eLDA3JC@jMEf4TEQFJ+%eKBb"8D@ePFbN0)#!
+J)#dY,5"eFf9QG@`JCQpb)(0`C@aXD@jR)'0SC@0VFb"LH5"0B@-JFh"PE'aTEQF
+JBfKPBfYPFR-0)#!J)'C[FL"'FQ9ZBfJJEh)JCQpb)'CbC@9ND@jR)(4[)'j[ELe
+8C9JJ6@&M)'C[FQeKG(4PFR-0)#!J)(0eBfJJBA-J6@PMFQpcEfCd)&G[FQ3Z$3d
+J)#!J+LTdCAJbFhGd)#!J1L!J9'9B)(4[)#"6Gf9PG#!i,@*TG#"PEQ0[C'PZCb!
+S8hGPCA3YG'9B+5i0)#!J)#dY,5"8D'8JCQpZG#"6Gf9PG#edC9JJDA-JB5!a-L"
+`EfPZG#"LDA4YBA"`C@3JFf0bC@9Z)'C[ER3J$@C[FL"0B@0TER4[FfJJG'KKG#"
+MEfeLD@jPFb"PFh0PER4TB@`JB@0MC@jdFb`JCQpbE@&dG'PZC`dLFQpKC(0TCfj
+c)L`JB@jN)'eKG'JJFhPYBQpXFbiJ)%Pd)'Pc)("KFR3JEfBJG'KP)&4P@#!0F(*
+PF(*[Bf9cFfpb)&0hC@9d,A4P@#"QEh)JE@&dD#"dHA"PFf9dD@jR)(4SBA3JDA-
+JBACKD@aKBQaP$@pZ)'CdF#"YBA4eF(-ZE@&dGA"c,QCb,Jd0)#!J)#""E'`JG'K
+PFf8JE@&MFQpc)'&bC5"XEf0KG'9N)'PZ)'&Z)'&`F'9ZC'Pi)'PZ)'&cBfPT)'C
+[FQd0Eh)JBA-JB5"LD@jKFRNJ6@&MD@jdEh0S)'CTE'8JEfBJG(P`C5"468&$)'&
+ZC#"MFQ9KG'pb$9&&4$%Z$3d0+LSU+LSU+LSU+LSU+LSU+LSU+LSU+LSU+LSU+LS
+U+LSU+LSU+LSU+LSU+LSU+LSU+Jd0+LSU+LSJ990&)%p')&4)45"038056e-J+LS
+U+LS0$5SU+LSU+LSU+LSU+LSU+LSU+LSU+LSU+LSU+LSU+LSU+LSU+LSU+LSU+LS
+U+LSU+LS0$5!J+$!T)#"2EQaj)(4SC5"YB@0bEh-JGfK[Ff8JEQ&YCA-JBQ9RD@i
+JGfPdD#"cG'&bFb!U+LiZ,JeKFQ8JD@jdC@jNC@3JG'mJBQ8JGA0PC#"NDA*PBh4
+XH6XJG'KP)(*PFh3JBA*P$5*cG@*bEh9dD@jPFb)Z)%0SEfpcC5"K)(G[FQXJCQp
+XC'9b)'*j)'p`C@jTEQFJB5"QD@aP)'PZ$@Pd,L!J8R9Z)(4SC5"YB@0bEb!U+LT
+TEQPdD@&XDATP)#"dEb"LC5"cGA*P)(4SBA3JB5"hEh*V$@CTE'8J)Q0dGfXL)'9
+iDA0dFb"TEL"TG#iJ9'KP)'&MG'P[EL"[CL"K)(4hEbecG'&b)'eKBh*[$A0eBfJ
+JBA-J+LT`Eh0d,@&MBc*dCAJJ)(GTE'`JBQ8JFQ9cG(*TBh4PC#"dEb"dD'8JB@0
+dDACP$AGTEQ4[Gb"KEQ3JCR9bG'KPFL"TG#"hD@aX)'j[G#"MD'&ZCf8JG'KKG#"
+hD@jNEhFJGfPdD'peG!eKF("bEhCKE#"[CL"dD'8JGA0PFMXJD@jcG'9KC#`JBA9
+iD@aTBA*j)'CTE'9c)'&bC5"eFf9N,Jd0)#!S-5NJ)&4[)("bEf0PFh-JB5"QD@a
+P)'p`C@iJDA3JB@jN)(0KGQ8JB5"MEh"j)(4[)(4SC3eQEfaNCA)JGfpbDb"QEfa
+NCA)Z)&4SC5"hD@jNEhFJEfBJG'KP)'CTE'8JG'mJF(*[Bf9cFb"YGA0d$@*P)(0
+PE'9MG'9N)(GSC@iJB5"YB@0bEb"TFb"bG@iZ)#"'GA*dD'9b,#"TCL"cEfeP)(4
+PH(3JDA-08d9-4808483JD@iJG'KP)'&MG'PfC5"hD@jNEhFJG'KP)'eKBh*[)'P
+REQpbCA-JCACPFRPdD'PZC`eLGA3JG'KP)(0PE'9MG'P[ELiJ9'KTFb"TFb"eFf9
+QG@`JG'mJE@&VC5"K)(&eD@0V)(4bD@&X$A*eEL"[EL"K)'0bDA4TBf&X)("KFR3
+JEfBJG'KP)(4jF'9cBh*TF(3Z)&4SDA-JE@&j)'9aG@&XE(N0BQ8JGA0PCR9X)'&
+ZC#"ZC@0PFh0KFRNJG'mJBAC[D@3JF'&bG(-JEfBJB5"dHA"PFf0bDA"d$A4SBA3
+JBA*P)(4jF'9N)'PZ)'4TFh4TEQ0d)'CKFfKTEfiZ)#"*EL"cG@0S)'KPG'9bEfG
+PEQ9[GA-0G(P`CA0MFQP`G(-X)&&eC@40)'&XE'phFb"[EQ8JG'mJE@&bDb"fBA*
+TEh9c)'0SG@jVFb"[CJedD'8JG(P`CA0MFQP`G#"TEL"cG@0S)'%JGf&j)(4SBA3
+JG'KPH5"MB@iJBQ8JFf9XC@0dC@30D@jcG'&ZG'aj)'&d)'&ZH5"dD@eP,L!S8f9
+XC@0d)(4SC5"MD(9ZDb"KEQ3JGA0P)(4SC5"6CA306@&bDf9b,LiZ)'p`G'P[EL"
+TEL"dD'8J8f9KFQ0S)'ePER8Z+5!J4Qpb)'9iB@e`E'8X)'pZC3eYD@GSG#"YBA*
+V)(4PH(3JCR*[E5"FBQ9RD@jPE@&TE%C5)(4[)#"FC@jNC@eKD@a'8L"QEh)0Bfp
+ZGQ9bFfP[EL"dEb"[FQ4TEQ&bH5"dCAJJFhPZG'&i,L!J5@BJEfjP)(4KDf9c)'0
+KFQ8JG'm0GA0P)'%J+Q0[F(NU)'pQ)(4SC5"[FQPRD@jKE#"dHA"PFf0bDA"d,#"
+[EQ8JBf&Z)(4SC@i0F(*[Ch*PFh0TGQ9XH5"`BA0dC5"TEL"dD'8JBfpZGQ9bG'9
+N)'0SG@jVFb"[CQCPFQ9N)'*j)(4SC3eYB@0bEh-Z$3dJ)#Jb+5!J3fpZG(*KFRN
+JG'mJG'KP)'pbD@GTEQ&X)%0[FR4P@#"`EfaTBhNX)(4SC3eMD'&bB@0dCA)J)#)
+J)'C[E'a[GfPZCb"K)(4PFQeTEQ&X)(C[Gf9X)'Pc)'j[G#"TER4PFR"bCA4PC!e
+KFb"K)'4TCA*PFfPc)(4SCA*PEfiX)'*eG#"KFb"K)'4[G@*XC5"aG@pdC5!Y,5d
+JG@jXCA0c)(4SC3ehEh*N)'PZ)(&eCA0dD@pZ)'Pc)'&TCh9P)L"[FL"0B@aYEb)
+JEh)JEfPdD'9b)'9iBf9`G'P[ER-JG'm0BQ8JB@4NC@3Z)#"8D'Pc)'&XE'phFb"
+,ER9dD#Gc)(9cC5"[CL!J)L!JCQpb)'0XEh0TEQF0C'peBQaP)(&eEh4PFb"dEb"
+LC5"YB@PZG'&TEQ9N)'PZ)("bB@0dD@0P,Jd0)#!S-bNJ)%%JCR9ZC'&YC@jdB@`
+JGf9KDfjPFh-JEfBJG'KPFf8JE@&MFQpc)'Pc)(4SBA3JG'KPH3eNEb"ZEh3JC'P
+cG'PZCh9TFfJJE@&dD#"YEf4P)(*TCfpeFQpeFfaj,L"*EL"YBA4S)'e[C'8JAL`
+0Ab"[FL!J2'0[E@eK2L`J*b`J+'9KBfJJGfPdD'peG#"F)'*PCQpbC5"TG#NJ)'K
+KGQ80E@9KEQPZCh-JG'KKG#"YBANJBfpZCQaTBh3JGfPdD#"dD'9TFL"YC@&ZD@j
+RFb"TEL"`FQpcC5i05'9ZBf8JG'KP)'PZFh"PBh4TEfiJE@&MFQpc)(GTE'`JBQ8
+JF(*[GQPNC@3JD@iJB5"cCA"KFQ&dC3eYB@0bEb"QD@aP)(4[)(GKFQiJEfBJF'p
+cFfPLE'8JBfpZCQaTBh4c)(GTG'JJG'KP)%0[FP4P@!eKEQ3JC@eKD@`JFhPZG'&
+i,L!J9'KPH5"RDACP)'%JFQ9`Eh*d)'pZ)("[Fh0TBQaP$@4TCQCTBh9XG'PPFbi
+J)%Pd)(0SEh9XC#"cG@CQD@0P)(4[)'&bFQ&ZCf8JG'KKG#"dD'8JB@*[GQ80BfK
+KFQ&MG'9bFb"KFQ8JFf9`BA*KG'9N)'*j)'%JFh"KBf8JEh)JBA3JE'9KFh3JFfp
+YCA4SD@jR$A4SBA3JBAC[D@4c)("[Fh0TBQaP)'PZG'9bF(*PG'&dD@pZ)'&c)'&
+Z)'&MBf9ZG#iJ9'KPFf80D@jcF'9MG'pb)'eKBh*[Fb"hD@aX)'&XFfmJGf&bEL"
+[CL"`Eh0cD@*XC5"`FQpLE'9YF`e[GA4cD@4P)'pQ)'eKG'KPE@&dD@0c,Jd0$5!
+J)#"-BA9bC@jd)&0TC@*PEQeKEQiX)%eKH5e+G@jP,#!a16Nc$3dJ)#!J2'aMFd"
+YBA4eF(-ZE@&dGA"c,QCb2Jd0!!!!0("bC@&YBQaP$@eKBbe`FQ9KBf-YG(*KER-
+0F'pcG'&YBQaP$8YPH5"`FQ8Y$8YPH5!0$3d!!!%!!!!jVJ!!1+i!!!-U!!H-6"9
+1!!!!(!'1!!"468&$!"d!#QA6!!!J!!'L!!K[!&X@!!mJ!!&T!!Kee&(p!#)J!!%
+[!!K[#!mV!$8J!!!!!!KfF$9A!%%J!!#C!!KfH'`Q!%dJ!!YU!!KZe'[m!&iJ!!U
+b!!KZc"9a!'mJ!!Jp!!KZd'ca!))J!!(H!!KZj!42!*8J!"8h!!KZi!Bk!*JJ!!B
+D!!KZh%G#!+XJ!!1Z!!KZq'B#!,FJ!!2d!!KZr#d(!--J!"$J!!K[%$fK!03J!"'
+S!!KZp&--!0dJ!!bk!!K["(9Y!1FJ!"l!!!K[-#&q!1iJ!!3k!!KZf#QX!2`J!!4
+b!!K['"QD!3iJ!!rf!!KZl'e9!4XJ!"*5!!K[((Ba!5dJ!!a0!!K[+!fE!6XJ!"H
+!!!K[&'5Z!8NJ!"4q!!KfG$&B!9-J!!b&!!K[$"V&!9dJ!!dq!!K[*%RT!@XJ!!r
+T!!K[0$T3!A8J!"$X!!K[)(U9!B-J!"%b!!KZk$Y4!C)J!$Kf!!K[1!iU+R"[Fh3
+YB@0M-R4PH")U+R"[Fh3YB@0M-R"bC5eKBf-5+LT`FQ8YB@0M-R"[Fh3YB@0M#f4
+P,ACPFQ*KG'PY#h*P,ACPFQ*KG'PY%(*P,ACPFQ*KG'PY,@a[Eh!3C'8YGQ9bBQ&
+dD@dYE'p[F"*`Eh0d,@&MBbe`FQ8YG(*KER-5F(*P,@&MBbe`Eh0d,A4bB@jc!Qp
+P%R"[Fh3YB@0M,A4PH#edFQ&ZF`YNC5e[C@eKBh*[F`YbC5e[C@eKBh*[Fa!U+LT
+NEf0eE@9ZG'&dD@pZ#("bC@&YBQaP#A"[Fh4KE@*XC3CdD'9NEf-0+LT`FQ8YB@0
+M-R4PH"&`FQ8YB@0M,A4PH#edFQ&ZF`acG@)YF(*PB@eLE'84G'9i,A"bC5eKBf-
+YG(*KER-0+LTdCAJbF(*P,@&MB`edCAJYE@&M,A4bB@jc#5SUG'9i-QeKB`NU+R4
+PH$*cGh30G'9i,A0hG#edFQ&ZF`PcG@)YE@&MFQm0+LSUD@jTG'PKE'PkC3jME'9
+KELeMEfeYC@jdF`NU+QeKBc*`FQ8AK!:
diff --git a/language/typingtex/email.dir/email-fix.pub b/language/typingtex/email.dir/email-fix.pub
new file mode 100644
index 0000000000..b0f1ba01d0
--- /dev/null
+++ b/language/typingtex/email.dir/email-fix.pub
@@ -0,0 +1,148 @@
+email-fr.fix
+
+~t gut@dmi.ens.fr
+
+*** email-fr : le caillou est parti!
+
+ F'elicitations `a ceux qui ont r'ealis'e les correcteurs
+d/orthographe fran_ais. C'est un 'evenememnt que
+j/attendais impatiemment.
+
+ Je vais vite annoncer le petit progr`es suivant en mati`ere de
+saisie des r'edactions qui doivent ^etre simultan'ement francais
+.tex et email. Car au rhythme du progr`es courant, on aura pour Noel
+un correcteur d'orthographe `a 100% *automatique* et *portable*
+qui 'eclipsera email-fr.fix (?)
+
+ Le standard ASCII `a 7 bits est d'une importance primordiale
+pour l'utilisateur de TeX, car il est le standard "de facto" de
+communication par email, et le seul standard commun aux trois
+grands environements informatiques : UNIX, PC et Macintosh.
+
+ Mais le codage pour TeX `a 7 bits de manuscrits fran_cais reste
+probl'ematique. Voici o`u on en est apr`es nos vifs d'ebats du
+printemps.
+
+ De l'avis de tous, la saisie pour le fran_cais selon les
+conventions de Knuth est d'une part incommode, et d'autre part
+illisible. La communaut'e TeX francophone a donc invent'e deux
+syst`emes de saisie nouveaux:
+
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ % Accents a` droite : (cortex super-cortex;
+ % tox de la distribution gut pour unix)
+ % ' accent aigu apre`s: e (sauf e''),
+ % apostrophe ou co^te' droit sinon
+ % ` accent grave apre`s: a e u
+ % ^ accent circonfle`xe apre`s: a e i o u
+ % , ce'dille apre`s c et avant a o u
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ % Accents `a gauche : (email-fr.sty)
+ % / pour <apostrophe>, du moins devant e et E
+ % ' ` ^ _ pour \' \` \^ \c respectivement
+ % \" inchang'e
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+Malgr'e les pr'ejug'es des rares gens engag'es
+s'eri'eusement dans ces voies, j/estime que ces syst`emes
+sont d/ergonomie 'egale --- aussi bien pour la saisie
+que pour la lecture directe `a l/'ecran.
+
+ Malheureusement dans l/'etat o`u nous les avons
+laiss'e au printemps 1993, chacun a un grand d'efaut et,
+en consequence, ni l'un ni l'autre n'a re_cu l'attention
+universelle que sa bonne ergonomie semble m'eriter.
+On a tendance en France `a soit omettre (pr`esque) tout
+accent. C'est peut-^etre mieux que de passer `a
+l'anglais, mais n'est-il pas possible de faire
+pour au moins les communications plus formelles
+qu'on veut lire `a l'ecran et/ou imprimer.
+
+ Le port des accents `a droite n'ecessite avant la
+composition par TeX, l'intervention d'un pr'eprocesseur
+comme (super-)cortex, tox, ou ou emacs. `A mes yeux,
+cela le disqualifie provisoirement pour la communication
+formelle par email, car le destinataire risque tr`es fort
+de ne pas pouvoir le composer avec TeX --- faute de
+pr'eprocesseur. L'impuissance!
+
+ Avant ce printemps on aurait du reprocher au port `a
+gauche la m^eme impuissance. J''etais donc content d'offrir
+le style (La)TeX email-fr.sty qui le compose directement.
+En principe cela donnait une marge de sup'eriorit'e au
+syst`eme email-fr, et (plus important) un int'er^et pour
+l'utilisateur moyen de TeX.
+
+ H'elas pour moi, (et pour l'utilisateur) une
+s'erieuse faille s/est vite r'ev'el'e dans le syst`eme
+email-fr.sty. Bien que l'utilisateur tape rapidement, il
+commet fr'equemment la m^eme erreur :
+
+ ' <eaccute> `a la place de / <apostrophe>.
+
+Pire, il est condamn'e `a commettre cette erreur toute sa vie,
+car l'ASCII ne domine pas dans l'univers tout entier du
+traitement de textes. La perte de temps et de confort est
+consid'erable et l/exp'erience total est humiliant d`es qu'on
+vise un manuscrit correctement imprim'e.
+
+ J'ai imm'ediatement construit un pr'erocesseur sur Mac
+(sous QEDM) capable de corriger ces erreurs
+semi-automatiquement. L/exp'erience fut d'ecevant --- ce
+genre de pr'processeur est d'une portabilit'e tr`es
+m'ediocre. Il m'aurait fallu r'einventer l/esclavage pour
+porter le pr'processeur vers les autres environements,
+m^eme les plus importants. En plus, l/environement du
+pr'eprocesseur impose un fardeau de plus `a l'environement
+TeX qu'on accuse souvent de lourdeur.
+
+ Au d'epart, email-fr fut donc un syst`eme de plus `a
+pr'eprocesseur et de portablilit'e douteuse. Il avait
+effectivement le vertu unique d'offrir comme produit final
+un fichier .tex parfaitement lisible et portable. Un
+syst`eme interessant donc, mais fautif.
+
+ La situation vient de changer `a temps pour la r'eunion
+annuelle de GUT. Apr`es un 'et'e en jach`ere, ce probl`eme
+vient de porter un fruit inattendu. Je viens de r'eussir la
+construction d'un programme universel "email-fr.fix" capable
+de supprimer *automatiquement* ces fameuses erreurs. Ce
+programme est une configuration de TeX lui-m^eme, d'o`u une
+parfaite portabilit'e.
+
+ Je suis assez content de ses performances; on va
+peut-^etre se moquer de moi quand on trouve que la
+composition par TeX se d'eroule, elle, deux ou trois fois
+plus vite. Mais calculez bien. Il me semble probable qu'on
+corrigera un manuscrit une seule seule fois (apr`es la
+premi`ere frappe rapide) --- car l/erreur fatale n/est
+plus mena_cante `a l/'etape plus tranquille des 'epreuvages
+multiples. Si on recompose 10 fois (je recompose souvent
+plus!), la correction ne co^ute pas bien cher en fin de
+compte!
+
+ Un autre point pourrait interesser les TeXperts. Le
+syst`eme d'hyphenation de TeX m'a permi d'apprendre `a TeX
+un nombre important de r`egles d/orthographe. C/est peut-^etre
+la premi`ere utilisation r'ellement exotique de ce point
+fort de TeX.
+
+ J/esper`ere que la version alpha que je viens d'afficher
+est d'ej`a utile. Prendre tous les fichiers:
+
+ email-fr.*
+
+dans le directory TypingTeX.dir de ftp matups.matups.fr.
+
+ Cordialement
+
+ Laurent S <lcs@matups.matups.fr>
+
+ ------------------------
+
+Qu'il porte `a droite o`u `a gauche,
+le francais est fier de son accent.
+
+
diff --git a/language/typingtex/email.dir/email-fr.dmp b/language/typingtex/email.dir/email-fr.dmp
new file mode 100644
index 0000000000..c93a20cbfa
--- /dev/null
+++ b/language/typingtex/email.dir/email-fr.dmp
@@ -0,0 +1,123 @@
+
+ %%%% email-fr.dmp
+ %%%
+ %%% Laurent Siebenmann, November 1993
+ %%% Master Posting in 1993: anonymous ftp matups.matups.fr
+ %%% (perhaps) in directory TypingTeX.dir
+ %%% Support: lcs@matups.matups.fr
+ %%%
+ %%% Description: This file is a
+ %%% format compilation utility for email-fr.fix.
+ %%% Run under initex, it dumps a format
+ %%% which has the following magical property.
+ %%% If email-fr.fix is run under this format
+ %%% with the "automatic" option on, it is able to
+ %%% AUTOMATICALLY correct the one characteristic
+ %%% typing error one makes in email-fr typing,
+ %%% namely the use of 'e (e-accute) for /e (apostrophe e).
+ %%% Otherwise email-fr.fix needs
+ %%% lots of dialog with the user.
+
+ %%% emailFR hyphenations
+
+ %%% Educate virgin TeX about catcodes
+
+ \catcode`\{=1 \catcode`\}=2
+ \catcode9=10\relax% tab is space
+ \catcode`\#=6 % hash mark is macro parameter
+
+ \def\temp{\immediate\write16}
+
+ \temp{}%
+ \temp{ **********************************************}%
+ \temp{ *** Taper <retour> pour cr'eer un format emailFR}%
+ \temp{ *** qui sert pour email-fr.fix}%
+ \temp{ **********************************************}%
+
+ \show\courage
+
+ %%%% Quickly input Plain without US hyphenation
+
+ \let\primimmediate\immediate
+ \def\immediate#1#2#3{} %% suppress \immediate\write16 for now
+ \let\priminput\input
+
+ \def\input hyphen{\relax}
+
+ \priminput plain.tex %% lplain must be standard
+
+ \let\immediate\primimmediate
+
+ %%% Have Plain TeX without any language or patterns defined.
+
+
+ %%% Now define language emailFR
+ %% along with pattrns suitable for
+ %% email-fr.fix
+
+ %%%% \LoadEmailFRpatterns below can be added to other
+ \begingroup
+ \catcode`\@=11
+
+ \gdef\InstallEmailFR{{
+ %
+ {\catcode32=12\relax\gdef\OtherSp@{ }}
+ %
+ \catcode`\'=12
+ \catcode`\?=12
+ \catcode`\-=12
+ %
+ \lccode`\'=`\' %
+ \lccode`\?=`\? %
+ \lccode`\-=`\- %
+ \lccode32=32 %
+
+ %%% use special language for compatibility with other formats
+ \csname newlanguage\endcsname\l@emailFR
+ \language=\l@emailFR
+ %%
+ \patterns{%
+ %%.c3? .d3? .j3? .l3? .m3? .n3? .qu3? .s3? .t3? %% not needed
+ %% but could be used with "three syllable" criterion
+ ?3eff ?3ect ?3ecze
+ ?3edel
+ ?3eid ?3einst ?3elb ?3eld
+ ?3ell
+ ?3emb
+ ?3emm ?3emp
+ ?3en.
+ ?3en-
+ ?3enc ?3end ?3enf ?3eng
+ ?3enh ?3enivr ?3enj ?3enk ?3enl ?3enn
+ ?3enq ?3enr ?3ens ?3ent ?3env ?3enz
+ ?3erb ?3erg ?3erm ?3erp ?3err ?3ers
+ ?3esb ?3esc ?3esg ?3esk ?3esp ?3ess ?3est
+ ?3ethn
+ ?3eu
+ ?3evzone
+ ?3ex
+ ?3ey
+ %% ecceptions from Greek
+ ?3ego
+ ?3egos-
+ %% exceptions from Computer Sci
+ ?3email
+ ?3emacs
+ ?3e-
+ %% Proper names
+ .S?4ego.
+ %% Quandry in French: signal by >>2 syllables (not yet)
+ %.n3?3e3s.
+ %% test
+ zz3zz
+ }
+ %
+ \let\Install@EmailFR\relax}}
+
+
+ \endgroup
+
+ \InstallEmailFR
+
+
+ \dump \ No newline at end of file
diff --git a/language/typingtex/email.dir/email-fr.fix b/language/typingtex/email.dir/email-fr.fix
new file mode 100644
index 0000000000..656d1077a3
--- /dev/null
+++ b/language/typingtex/email.dir/email-fr.fix
@@ -0,0 +1,947 @@
+ %%%% email-fr.fix
+ %%% Error correction utility for email-fr.sty (same postings)
+ %%% Laurent Siebenmann, October 1993
+ %%% Master Posting in 1993: anonymous ftp matups.matups.fr
+ %%% (perhaps) in directory TypingTeX.dir
+ %%% Support: lcs@matups.matups.fr
+ %%% Documentation: after \endinput
+
+ \catcode`\@=11
+ \def\wlog#1{\relax}
+
+ %%% \SIN@0#1@#2@ : Is 1st exp of #1 in 1st exp of #2 ??
+ %% Answer in \ifIN@
+ %% Further if true, then \Initialtoks@ \Terminaltoks@
+ %% contain the parts before and after.
+ %% while \Initialtoks@{#2}%
+ \newif\ifIN@
+ \newtoks\Initialtoks@ \newtoks\Terminaltoks@
+ \def\m@rker{\m@@rker}%
+ \long\def\DeleteMarker@ #1@@#2\m@rker{\Terminaltoks@{#1}}%
+ \def\SIN@{\expandafter\SINN@\expandafter}%
+ \long\def\SINN@0#1@#2@{%
+ \long\def\NI@##1#1##2##3\ENDNI@
+ {\ifx\m@rker##2\IN@false\Initialtoks@\expandafter{#2}%
+ \else
+ \IN@true
+ \Initialtoks@{##1}\DeleteMarker@##2##3%
+ \fi}%
+ \expandafter\NI@#2@@#1\m@rker\ENDNI@}
+
+ \def\END{\output{\shipout\box255}\end{document}}
+
+ \catcode`\!=12\catcode`\;=12\catcode`\:=12\catcode`\?=12
+ \catcode`\'=12 \catcode`\/=12 \catcode`\>=12 \catcode`\"=12
+ \catcode`\_=12 \catcode9=4
+
+ \newread\emailFile@
+ \newwrite\emailNFile@
+ \def\ms@g{\immediate\write16}%
+
+ \def\iWrite#1#2{\toks0\expandafter{#2}%
+ \immediate\write#1{\the\toks0}}
+
+ \def\iWr@#1{\iWrite\emailNFile@{#1}}
+
+ \begingroup\lccode`_=32\lccode`C=`C\lccode`C=`C
+ \lccode`S=`S\lccode`T=`T\lccode`E=`E
+ \catcode`\^=12%
+ \lowercase{\endgroup
+ \gdef\FirstScreen@{\ms@g{}%
+ \ms@g{_***********************************************}%
+ \ms@g{_**************__email-fr.fix__*****************}%
+ \ms@g{_*******__Correcteur_pour__email-fr.sty__*******}%
+ \ms@g{_**_Sert_`a_assurer_que__/__est_employ'e_pour_<apostrophe>}%
+ \ms@g{_**_`a_la_place_de___'___l`a_o`u_il_convient}%
+ \ms@g{_**_d/'eviter_une_confusion_'eventuelle_avec_<accute>.}%
+ \ms@g{_***********************************************}%
+ \ms@g{_****_Taper_le_nom_du_fichier_`a_corriger,_se_trouvant}%
+ \ms@g{_****_dans_le_m^eme_directory_que__email-fr.fix.}%
+ \ms@g{_****_Ensuite_taper__<return>__(=_retour_de_chariot).}%
+ \ms@g{_*******_Le_nom_par__d'efaut_est__corr.in.}%
+ \ms@g{_**********_Taper__x__et__<return>__pour_avorter.}%
+ \ms@g{_***********************************************}%
+ \let\FirstScreen@\relax}}
+
+ \gdef\ConfigScreen@{\ms@g{}%
+ \ms@g{ ***********************************************}%
+ \ms@g{ ** Les tabs sont interdits dans le fichier d'entr'ee.}%
+ \ms@g{ ** Le nom du fichier de sortie sera corr.out.}%
+ \ms@g{ ** Le traitement co^ute quelques secondes par page.}%
+ \ms@g{ ** La documentation se trouve apr`es \space\string\endinput.}%
+ \ms@g{ ***********************************************}%
+ \ms@g{ ** Tapez <return> pour les choix par d'efaut.}%
+ \ms@g{ ** (ie. "automatique" et "dialogue")}%
+ \ms@g{ ** Tapez \space o \space et <return> pour d'autres options.}%
+ \let\ConfigScreen@\relax}%
+
+ \gdef\OptionsScreen@{\ms@g{}%
+ \ms@g{ ***********************************************}
+ \ms@g{ ** \space a \space pour "mode intelligence automatique"}
+ \ms@g{ ** \space d \space pour "mode dialogue"}
+ \ms@g{ ** \space f \space pour "mode flag" (avertisseurs dans la sortie).}
+ \ms@g{ ** \space p \space pour "protection par espaces" des modifications.}
+ \ms@g{ ** \space i \space pour "ignore protection" `a l/entr'ee.}
+ \ms@g{ ** \space m \space pour l'insertion d'un espace `a la marge.}
+ \ms@g{ ** \space '' \space pour *ne pas* convertir
+ \space l''etat \space en \space l/'etat \space etc.}
+ \ms@g{ *** --- toute combinaison et order, puis <return>.}
+ }
+
+ %\ms@g{ ** \space e \space ent^ete autonome de macros email-fr.}
+
+
+ \gdef\DialogScreen@{\ms@g{}%
+ \ms@g{ *** Frappe douteuse >>> \DialogWord@}%
+ \ifHomonym@
+ \ms@g{ *** In the line : }%
+ \ms@g{ \emailLine@}%% guarantees enough context
+ \Homonym@false
+ \fi
+ \DialogSubScreen@
+ }
+
+ \def\DialogSubScreen@{\ms@g{ *** Taper <retour> pour confirmer; \space n \space d/abord sinon; }%
+ \ms@g{ *** et \space f \space pour flag (avertisseur dans la sortie). }%
+ }
+
+ \let\EX@=\expandafter
+
+ \newif\ifDialogs@ %% not dialog
+ \newif\ifSmart@ %%
+ \newif\ifSpProtect@ %%
+ \newif\ifFFlag@
+
+ {\catcode32=12\relax\gdef\OtherSp@{ }}
+ \edef\dOtherSp@{\OtherSp@\OtherSp@\OtherSp@}%
+
+
+\gdef\Preamble@{\FirstScreen@
+ \read16 to \YourChoice@
+ \def\Temp{\let\emailFileSpec@\YourChoice@ }
+ \def\temp{\par}
+ \ifx\YourChoice@\temp
+ \def\Temp{\def\emailFileSpec@{corr.in }}
+ \fi
+ \def\temp{x }
+ \ifx\YourChoice@\temp
+ \def\Temp{\end{document}}
+ \fi
+ \Temp
+ %
+ %\show\emailFileSpec@
+ \openin\emailFile@\emailFileSpec@
+ \immediate\openout\emailNFile@ corr.out
+ \relax %necessary to prevent precocious expansion of \ifeof?
+ \ifeof\emailFile@
+ \ms@g{}%
+ \ms@g{ !!! FILE NOT FOUND !!!}\show\Perseverence
+ \EX@\END
+ \fi
+ \ConfigScreen@
+ \read16 to \YourChoice@ %\show\YourChoice@
+ \SIN@0o@\YourChoice@ @%
+ \ifIN@
+ \OptionsScreen@
+ \read16 to \YourChoice@ %\show\YourChoice@
+ \else
+ \def\YourChoice@{ad }%
+ \fi
+ \SIN@0a@\YourChoice@ @%
+ \ifIN@
+ \Smart@true
+ \let\AutoAccCalc@\AutoAccCalc@Full
+ \else
+ \Smart@false
+ \let\AutoAccCalc@\AutoAccCalc@Nul
+ \fi
+ \SIN@0d@\YourChoice@ @%
+ \ifIN@
+ \Dialogs@true
+ \ifSmart@
+ \let\Acc@Dialog\Acc@Dialog@Option
+ \else
+ \let\Acc@Dialog\Acc@Dialog@Full
+ \fi
+ \else
+ \let\Acc@Dialog\Acc@Dialog@Nul
+ \Dialogs@false
+ \fi
+ \SendOutputSyntaxHeader@
+ \SIN@0f@\YourChoice@ @%\show\YourChoice@
+ \ifIN@ %\message{ *** f is IN!}%
+ \edef\Flag@{\XXXX }%\show\Flag@
+ \SendOutputBatchHeader@
+ \else
+ \edef\Flag@{}
+ \fi
+ \SIN@0p@\YourChoice@ @%
+ \ifIN@
+ \SpProtect@true
+ \edef\Flag@{\OtherSp@\Flag@}%
+ \fi
+ \SIN@0m@\YourChoice@ @%
+ \ifIN@
+ \let\Mspace@\OtherSp@
+ \else
+ \let\Mspace@\empty
+ \fi
+ \SIN@0i@\YourChoice@ @%
+ \ifIN@
+ \def\IgnorePD@test{\SIN@0\dOtherSp@\@@z@zg @\Spacy@\@@z@zg @
+ %%\@@z@zg "unique"!
+ \ifIN@\DoubleSp@true\else\DoubleSp@false\fi}
+ \else
+ \let\IgnorePD@test\relax\DoubleSp@false
+ \fi
+ \SIN@0''@\YourChoice@ @%
+ \ifIN@
+ \let\AigAigFix@\relax
+ \fi
+ }
+
+ \let\XXXX\relax
+
+ \begingroup
+ %%\catcode`*`=12 %%troublesome; by hand
+ \catcode`\%=12 \catcode`\<=12 \catcode`\>=12
+ \catcode`\^=12 \catcode`\_=12 \catcode`\#=12
+ \catcode`\'=12 \catcode`\"=12 \catcode`\~=12
+ \catcode`\*=0 *catcode`*\=12
+ *gdef*SendOutputSyntaxHeader@{
+ *iWr@{ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
+ *iWr@{ %% La frappe des accents fran_cais pour email-fr.sty :}
+ *iWr@{ %% / sert comme <apostrophe>, du moins devant e et E }
+ *iWr@{ %% ' ` ^ _ pour \' \` \^ \c respectivement; \" est inchang'e}
+ *iWr@{ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
+ *iWr@{ %% Commandes utiles `a l/'epreuvage : }
+ *iWr@{ %\input email-fr.sty %% master posting ftp matups.matups.fr}
+ *iWr@{ %% in directory TeX/TypingTeX.dir}
+ *iWr@{ %\frenchemail }
+ *iWr@{ %\BlockNonASCII }
+ *iWr@{ %\SmartQuotes %\noSmartQuotes %\flexcat! }
+ *iWr@{}
+ *gdef*SendOutputSyntaxHeader@{}}
+ *gdef*SendOutputBatchHeader@{
+ *iWr@{ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
+ *iWr@{ %% Dans le texte modifi'e suivant construit par email-fr.fix,}
+ *iWr@{ %% \XXXX marque les les sites d'erreurs 'eventuelles, par }
+ *iWr@{ %% confusion entre / <apostrophe> et ' <accute>.}
+ *iWr@{ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
+ *iWr@{ %% Apr`es avoir apport'e les corrections, il convient de}
+ *iWr@{ %% supprimer tous les \XXXX (faites-le automatiquement}
+ *iWr@{ %% si possible). Ensuite, transportez le}
+ *iWr@{ %% texte corrig'e dans son fichier d'origine.}
+ *iWr@{ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
+ *gdef*SendOutputBatchHeader@{}}
+ *endgroup
+
+ %%% Will use tripply (or more) nested loops:
+ %%
+ \def\Loop@#1\Repeat@{%
+ \def\Iterate@{#1\expandafter\Iterate@\fi}%
+ \Iterate@}
+
+ \def\Loop@@#1\Repeat@@{%
+ \def\Iterate@@{#1\expandafter\Iterate@@\fi}%
+ \Iterate@@}
+
+ \def\Loop@@@#1\Repeat@@@{%
+ \def\Iterate@@@{#1\expandafter\Iterate@@@\fi}%
+ \Iterate@@@}
+
+ \def\Loop@@@@#1\Repeat@@@@{%
+ \def\Iterate@@@@{#1\expandafter\Iterate@@@@\fi}%
+ \Iterate@@@@}
+
+ %{\catcode 9=13\relax \global\let ^^09\OtherSp@}
+
+ \newcount \aux@count
+
+ \def\HighASCIIOther@{%
+ \count@=128\relax \aux@count=256
+ \loop
+ \catcode\count@=12
+ \advance\count@ by \@ne
+ \ifnum\count@ < \aux@count %
+ \repeat}
+
+ \def\Transfer@{\let\OptionScreen@\relax\begingroup
+ \HighASCIIOther@
+ \endlinechar=-1 for above two lines
+ \catcode9=15 %% invalid because tabs spoil fix
+ \relax\catcode`\%=12 \catcode`\#=12 \catcode`\_=12
+ \catcode`\^=12 %\showthe\catcode`\^%
+ \catcode`\-=12 \catcode`\{=12 \catcode`\}=12
+ \catcode`\ =12 \catcode`\'=12 \catcode`\\=12
+ \Loop@ %\message{ * }%
+ \ifeof\emailFile@
+ \else
+ \read\emailFile@ to \emailLine@
+ %\edef\emailLine@{\emailLine@}
+ \TreatLine@
+ %\let\emailNLine@\emailLine@
+ \iWrite\emailNFile@{\emailNLine@}%
+ \Repeat@
+ \closein\emailFile@
+ \immediate\closeout\emailNFile@
+ \ClosingDialog
+ \endgroup}
+
+ \def\ClosingDialog{%
+ \ms@g{ *** FINI! : }%
+ \ms@g{ *** Voir \space corr.out \space
+ `a c^ot'e du fichier d'entr'ee.}%
+ \ms@g{ *** Taper <return> pout sortir. }%
+ \read16 to \byebye
+ \aftergroup\stopp}
+
+ \def\stopp{\end{document}}
+
+ \newtoks\Remaindertoks@
+ \newtoks\emailNLinetoks@
+ \newif\ifLMargin@
+
+ \def\TreatLine@{%\message{**TreatLine@}%
+ \LMargin@true
+ \Remaindertoks@\expandafter{\emailLine@}
+ \let\Remainder@\emailLine@
+ \emailNLinetoks@\EX@{\Mspace@}%
+ \let\emailNLine@\Mspace@
+ %%
+ \Loop@@
+ %\message{**TreatLine@loop}%
+ %\show\Remainder@
+ %\showthe\Remaindertoks@
+ \ifx\empty\Remainder@
+ \else
+ \LopLine@
+ \Repeat@@
+ \relax
+ %\show\emailNLine@
+ }
+
+ \newif\ifDanger@
+ \newtoks\BeforeAcc@etoks
+
+ \def\acc@e{'e}%
+ %\def\AutoAcc@{/e}\def\AltAcc@{'e}%
+ %\def\ChosenAcc@{/e}%
+
+ %%% \SetQWord@ gets \QWord@ for machine
+ \def\SetQWord@{%\show\Remainder@
+ \SIN@0\OtherSp@ @\Remainder@ @%% defines \Initialtoks@
+ %% no need revise remainder
+ \edef\QWord@{\space\the\Dangeroustoks@ ?e\the\Initialtoks@\space}%
+ %\show\QWord@ %% space?
+ }
+
+ %%% \SetDialogWord@ gets \DialogWord@ for man
+ %% also
+ \def\SetDialogWord@{%
+ \SIN@0\OtherSp@ @\Remainder@ @%% defines \Initialtoks@
+ \edef\DialogWord@{\the\Dangeroustoks@\AutoAcc@\the\Initialtoks@}%
+ }
+
+ \newcount\uc@cnt
+ \def\Cest@{C/est}
+
+ %%% Nibble@#1\endNibble@\endNibble@
+ %% gives \Nibblet@ (first token of #1) and \Butt@ rest (or empty)
+ %% If no token in #1 then \Butt@ is xequal \endNibble@
+ %% Spaces are omitted for \Nibblet@; not for \Butt@
+
+ \def\Nibble@#1\endNibble@{%
+ \expandafter\Nibble@@#1\endNibble@\endNibble@}
+ \def\endNibble@{\Term@}\let\Term@\relax
+ \def\Nibble@@#1#2\endNibble@{%
+ \def\Nibblet@{#1}\edef\Butt@{#2}%
+ %\show\Nibblet@\show\Butt@
+ }
+
+ \newif\ifHomonym@
+
+ %%% \Acc@Dialog@Option that is the question
+ %%
+ \def\Acc@Dialog@Option{%
+ \Nibble@\DialogWord@\endNibble@
+ \EX@\count@\EX@`\Nibblet@
+ \uc@cnt=\uccode\count@
+ \ifnum \uc@cnt=\count@ \relax
+ %\show\Cest@\show\DialogWord@
+ \SIN@0\EX@\relax\Cest@ @\EX@\relax\DialogWord@ @%
+ \ifIN@
+ \EX@\Acc@Dialog@Nul
+ \else
+ \EX@\Acc@Dialog@Full
+ \fi
+ \else %\show\DialogWord@
+ \SIN@0\DialogWord@\relax @ n'es\relax n/es\relax @%
+ \ifIN@
+ \Homonym@true
+ %\edef\BeforeDangerous@{\emailNLine@\Spacy@}%
+ \edef\DialogWord@{%
+ \the\Dangeroustoks@\AutoAcc@\the\Remaindertoks@}%
+ \EX@\Acc@Dialog@Full
+ \else
+ \EX@\Acc@Dialog@Nul
+ \fi
+ \fi}
+
+
+ %%% \AutoAccCalc@ : fn \acc@e and context
+ %% gives \AutoAcc@ and \AltAcc@
+
+ %%% \Acc@Dialog@Full : fn \AutoAcc@ and USER input give \ChosenAcc@
+ \def\Acc@Dialog@Full{\DialogScreen@
+ \catcode"D=5\read16 to \YourChoice@\catcode"D=14
+ %%must not break above line! 5=endline; 14=comment
+ \ifx\par\YourChoice@
+ \let\ChosenAcc@=\AutoAcc@
+ \else
+ \EX@\OtherDialogActions@
+ \fi
+ }
+
+ \def\OtherDialogActions@{%
+ \SIN@0n@\YourChoice@ @%
+ \ifIN@ %\message{** n IN**}%
+ \let\ChosenAcc@=\AltAcc@ %\show\ChosenAcc@
+ \else
+ \let\ChosenAcc@=\AutoAcc@
+ \fi
+ \OtherDialogActions@@}
+
+ \def\FFlag@{}
+ \def\FFlag@@{\XXXX}
+ \let\FFlag@reset\relax
+
+ \def\OtherDialogActions@@{%
+ \SIN@0f@\YourChoice@ @%
+ \ifIN@ %\message{** f IN**}%
+ \ifx\Flag@\empty
+ \let\FFlag@\FFlag@@
+ \def\FFlag@reset{\let\FFlag@\empty}%
+ \else
+ \let\FFlag@\empty
+ \fi
+ \fi
+ \SIN@0F@\YourChoice@ @%
+ \ifIN@ %\message{** F IN**}%
+ \ifx\Flag@\empty
+ \def\FFlag@reset{}%
+ \let\OtherDialogActions@@\relax
+ \def\DialogSubScreen@{\ms@g{ *** Taper <retour> pour confirmer;
+ d'abord \space n \space sinon.}}
+ \fi
+ \fi
+ }
+
+ %%% \Acc@Dialog@Nul : fn \AutoAcc@ and USER input give \ChosenAcc@
+ \def \Acc@Dialog@Nul{\let\ChosenAcc@\AutoAcc@}
+
+
+\def \LopLine@{% \message{**LopLine@}%
+ \SIN@0\acc@e @\Remainder@ @%
+ \ifIN@ %\show\ifIN@ %\message{**IN}%
+ \edef\BeforeAcc@e{\the\Initialtoks@}%
+ \BeforeAcc@etoks=\Initialtoks@
+ \Remaindertoks@=\Terminaltoks@
+ \edef\Remainder@{\the\Remaindertoks@}% maybe need later
+ \DangerTest@ %% result in ifDanger@
+ %% Spacy , Danger splitting
+ %\LMargin@false
+ \ifDanger@\message{*}%
+ \SetQWord@\relax%\show\QWord@
+ \AutoAccCalc@\relax%\show\AutoAccCalc@
+ \SetDialogWord@
+ \Acc@Dialog
+ \edef\emailNLine@{\the\emailNLinetoks@
+ \the\Spacytoks@\Flag@\FFlag@\the\Dangeroustoks@\ChosenAcc@}%
+ \FFlag@reset
+ \emailNLinetoks@\expandafter{\emailNLine@}%
+ \else
+ \edef\emailNLine@{\the\emailNLinetoks@
+ \the\BeforeAcc@etoks\acc@e}%
+ \emailNLinetoks@\expandafter{\emailNLine@}%
+ \fi
+ \else
+ \edef\emailNLine@{\the\emailNLinetoks@\the\Remaindertoks@}%
+ \emailNLinetoks@\expandafter{\emailNLine@}%
+ \Remaindertoks@{}\let\Remainder@\empty
+ \fi
+ %
+ %\show\emailNLine@
+ %\show\Remainder@
+ }
+
+
+
+ %%% New splitting of \BeforeAcc@e
+ %% into abutting initial
+ %\Spacy@
+ \newtoks\Spacytoks@
+ %% and terminal (no spaces)
+ %\Dangerous@
+ \newtoks\Dangeroustoks@
+
+ \def\DPrefixes@{ c d j l m n s t qu C D J L M N S T Qu QU }
+
+ \def\DangerTest@{%
+ \FindLastSpace@ %% last space in \BeforeAcc@e
+ %% Spacy, Dangerous : is splitting
+ \AigAigFix@
+ \ParenFix@
+ \SIN@0\Dangerous@ @\DPrefixes@ @%
+ \ifIN@
+ \Danger@true%
+ \else
+ \Danger@false
+ \fi
+ \ifx\Dangerous@\empty\Danger@false\fi%% correction
+ \ifx\Spacy@\empty
+ \ifLMargin@%\message{***Lmargin}%
+ \ifSpProtect@
+ \let\Spacy@\OtherSp@%
+ \Spacytoks@\expandafter{\Spacy@}%
+ %\LMargin@false
+ \fi
+ \else
+ \Danger@false
+ \fi
+ %\else \LMargin@false
+ \fi%% correction
+ \ifDoubleSp@\Danger@false\fi%% correction
+ \ifDanger@ %\message{ !!!!DANGER!!! }%
+ \else%\message{ ***No Danger*** }%
+ \fi
+ \LMargin@false}
+
+ \def\AigAigFix@{%% Following for l''ecart ==> l/'ecart
+ %% "not Dangerous" no dialog etc???
+ \SIN@0'\relax @\Dangerous@\relax @%% Is ' at end??
+ \ifIN@\message{*}%
+ \edef\Dangerous@{\Flag@\the\Initialtoks@ /}%
+ \Dangeroustoks@\EX@{\Dangerous@}%
+ \edef\BeforeAcc@e{\the\Spacytoks@\the\Dangeroustoks@}%
+ \BeforeAcc@etoks\EX@{\BeforeAcc@e}%
+ %\show\BeforeAcc@e
+ \fi}
+
+ \edef\Parens@{\string`\string"([\string{}
+ %\show\Panens@
+
+ \def\ParenFix@{%
+ \Loop@@@@
+ \Nibble@\Dangerous@ \endNibble@%\show\Nibblet@
+ \SIN@0\Nibblet@ @\Parens@ @%
+ %% Does \Dangerous@ begin with one of `"([{??
+ \ifIN@ % \message{ ***IN*** }
+ \let\Dangerous@\Butt@\Dangeroustoks@\EX@{\Dangerous@}%
+ %\show\Dangerous@\showthe\Dangeroustoks@
+ \edef\Spacy@{\Spacy@\Nibblet@}\Spacytoks@\EX@{\Spacy@}%
+ \Repeat@@@@
+ %\show\Dangerous@
+ }
+
+ \newif\ifDoubleSp@
+
+ \def\FindLastSpace@{%gives possibly degen splitting
+ \Dangeroustoks@\expandafter{\BeforeAcc@e}%
+ \edef\Dangerous@{\the\Dangeroustoks@}%
+ \let\Spacy@\empty\Spacytoks@{}%
+ \Loop@@@
+ \SIN@0\OtherSp@ @\Dangerous@ @%
+ \ifIN@
+ \edef\Spacy@{\the\Spacytoks@\the\Initialtoks@\OtherSp@}%
+ \Spacytoks@\expandafter{\Spacy@}%
+ \Dangeroustoks@=\Terminaltoks@
+ \edef\Dangerous@{\the\Dangeroustoks@}%
+ \Repeat@@@
+ \IgnorePD@test %% always gives false unless ignore option on
+ %\show\Spacy@
+ %\show\Dangerous@
+ %\ifDoubleSp@\message{ ***DoubleSp@*** }\fi
+ }
+
+
+
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %%%%% Syllable Counting macros
+
+
+ %\let\CountPause\relax
+
+ %% Conserve count registers by local use.
+ \countdef\TY@cnt=190
+ \dimendef\TY@hsize=200
+ \dimendef\TY@everypar=201
+
+ %%%% \PrepCounts@
+ \def\PrepCounts@{%
+ %%% Impose a suitable language
+ %% Check for and call language \l@emailFR
+ \ifSmart@
+ \ifx\undefined\l@emailFR
+ \ms@g{}%
+ \ms@g{ !!! Pardon, le mode "automatique" est disponible seulement avec}%
+ \ms@g{ !!! le language artificiel "emailFR" (fourni par email-fr.dmp).}%
+ \show\Perseverence
+ \def\empty{\END}
+ \fi
+ \fi\empty
+ \language\l@emailFR
+ %%% Exotic convention / hyphen character
+ %% (for display and to enable some hyphenation)
+ \hyphenchar\font=`\/
+ %%% Exotic convention '?- are letters for hyphenation
+ \lccode`\'=`\' %
+ \lccode`\?=`\? %
+ \lccode`\-=`\- %
+ %% prevents extraneous hyphenation at hyphen!
+ \lccode 32=32 %% just in case
+ %%% Clearly:
+ \lefthyphenmin=0
+ \righthyphenmin=0
+ %%% Horizontal changes
+ \SetTY@everypar
+ \SetTY@hsize
+ \hbadness=10000
+ \hfuzz=\maxdimen
+ %\pretolerance=100000 %% Alas no effect!
+ %%% Vertical changes
+ \topskip=0pt plus \vsize
+ \baselineskip=\vsize\relax
+ %%% Output changes
+ \maxdeadcycles=2000000000 %% two billion words at most!
+ \csname output\endcsname{\global\setbox255=\box\voidb@x}%
+ %%% use a standard font
+ \font\ft=cmr10 \ft
+ }
+
+ %%%% Gen@Count: the main macro.
+ %% will always be surrounded by grouping
+ \def\Gen@Count{%
+ \vfil\par\break
+ \let\Gen@Count\undefined
+ \let\endGen@Count\endGen@@Count
+ \deadcycles=0}
+
+ \def\endGen@@Count{%% defined \endGen@Count in time
+ \vfil\par\break
+ \errorcontextlines=0
+ \global\TY@cnt=\deadcycles
+ %\message{*}%
+ %\immediate\write16{\space
+ % *** \Count@Mode\space= \the\TY@cnt\space\TY@Msg}%
+ %\CountPause\CountPause %% gives pause
+ \deadcycles=0}
+
+ %%% Some defaults
+ \def\TY@Msg{(starting at input line \the\inputlineno) ***}%
+ \def\SetTY@hsize{\hsize=\z@\relax
+ \let\hsize\TY@hsize} %% uproot!
+ \def\SetTY@everypar{\everypar\expandafter{\the\everypar\ }
+ %% "\ " is glue allowing hyphenation of 1st word
+ \let\everypar\TY@everypar %% uproot!
+ }
+
+ %%% \SyllableCount: Simple!
+ \def\Count@Mode{SyllableCount}
+ \def\SyllableCount{\begingroup
+ \Gen@Count} %% language variation OK!?
+ \def\endSyllableCount{\endGen@Count\endgroup}
+
+ %%%%% End Syllable Counting macros
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+ %%% \AutoAccCalc@Full
+ %% uses \QWord@
+ %% will define \AutoAcc@ \AltAcc@
+ \def\AutoAccCalc@Full{%\show\Remainder@\show\QWord@
+ \SyllableCount \QWord@ \endSyllableCount
+ \ifnum\TY@cnt>1
+ \def\AutoAcc@{/e}\def\AltAcc@{'e}%
+ \else
+ \def\AutoAcc@{'e}\def\AltAcc@{/e}%
+ \fi}
+
+ %%% \AutoAccCalc@Nul
+ %% must define \AutoAcc@ \AltAcc@
+ \def\AutoAccCalc@Nul{\def\AutoAcc@{'e}\def\AltAcc@{/e}}
+
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %%%%% The action!
+
+ \Preamble@
+ \PrepCounts@
+ \Transfer@
+
+ \END
+
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %%%% Documentation for email-fr.fix
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+ Apology to French readers: This documentation is in English
+to facilitate construction of similar programs for other languages.
+However the user interface is in French.
+
+
+ *** Motivation ***
+
+ In typing French according to the email-fr rules, there
+is one unfortunate change of standard typing habits that
+one must cope with. An apostrophe followed by e or E should
+be typed as a slash / and not as ' . This is unambiguous
+and visually acceptable --- at least more so than a
+backslash in the middle of a word. The problem is that few
+typists are able to avoid reverting several times per page
+to ' for apostrophe, which may produce <eaccute> or
+<Eaccute> in TeX. One can, of course, correct the errors
+after typesetting; however this is inefficient to the point
+of nearly cancelling the time gain over Knuth's
+rather clumsy typing system.
+
+ A portable but tiresome solution consists in
+searching for and examining all occurrences of 'e or 'E.
+
+ An effective but elitist solution is to use a good text
+editor to search for the quadruple <space><letter>'<e or E>
+and replace it where appropriate by /e (or /E). As <letter>
+is one of many c d j l m n s t (not counting
+capitalisation and occurrences of qu) it should be treated
+as a wildcard or multiple choice; but only a sophisticated
+text editor operated by a sophisticated user can do that.
+
+ Thus a portable and preferably automatic typing
+correction tool should be made available to every TeX user
+wherever he may be. It is provided by the present ".tex"
+utility called email-fr.fix in conjunction with
+email-fe.dmp. Both are distributed with email-fr.sty.
+
+ Alternative utilities to accomplish the same tasks
+as email-fr.fix could be be based on on programmable word
+processors such as emacs or on a spelling checker that has
+the means to read email-fr typing. However TeX has proved a
+quite appropriate tool for this job because the tiresome part
+is rather trivial for TeX's hyphenation mechanism.
+Clearly, no alternative could be quite so portable.
+
+
+ **** Use of email-fr.fix ****
+
+ If you have many pages of typing to correct, you will want
+a format containing the special language "emailFR", for only
+with this language present is the action of email-fr.fix
+essentially automatic --- use default or the the "a" option.
+For just a few pages of typing, the "d" or "dialog mode" of
+operation is adequate on its own without language "emailFR".
+
+ Any French format built with the mechanism "format-dumper" in
+1994 or later will contain the (tiny) language emailFR (the master
+posting of format-dumper is on matups.matups.fr in 1993-1994). If
+your format does not have this language, you can quickly build one
+that does with the help of email-fr.dmp and initex. Note that the
+format for email-fr.fix need not be the one that composes your ".tex"
+typescript.
+
+ Here is how to start using email-fr.fix. Save your email-fr
+typescript under the name corr.in along side of email-fr.fix. Then
+"compose" email-fr.fix (not corr.in!) under a TeX format
+containing (if possible) the language emailFR. Do so just as though
+email-fr.fix were a typescript. Instructions are given
+interactively. Ultimately the corrected typescript will apear in
+corr.out along side of corr.in.
+
+
+KEY TO OPTIONS
+
+ The full gammut of options is only offered only if a default choice
+has been declined.
+
+ Each option is commanded by a one-letter key; one types any
+(unordered) subset of the keys listed below and then hits return.
+For example :
+
+ ad <Carriage Return>
+
+commands "Automatic" and "Dialog"; this is the default choice.
+
+ ********************************
+
+ m --- Margin space : add a space at the beginning of every line
+that does not already begin with one. Lines that do not begin
+with a space are occasionally subject to corruption
+in the email network.
+
+ f --- Flag All: always insert a "flag" \XXXX before the spot
+where where a possible error is detected. (Compare d.) If you
+wish to examine absolutely every change introduced (or even
+contemplated) by email-fr.fix this is the one and only way to do
+it. The dialog option below will reveal only changes that risk
+being wrong.
+
+ i --- Space ignore : ignore potential errors that are preceeded
+by at least three spaces.
+
+ p --- Space protect : "protect" all errors corrected
+by inserting three preceeding spaces in the output.
+
+ a --- Automatic mode : use the hyphenation patterns of the
+special language emailFR to make (or propose) corrections. Here
+lies the power of email-fr.fix --- use it! An asterisk is printed
+to the screen each time a significant automatic decision is made.
+
+ '' --- leave l''etat (etc.) as is. By default, there is
+otherwise an automatic conversion to l/'etat (etc.), which seems
+noticeably mode readable to me.
+
+ d --- Dialog mode : In this mode of action the user is
+asked to choose between / and ' whenever email-fr.fix
+cannot decide. Let us spell out what this means.
+
+ In case Smart mode is on at the same time, dialog is rare : it
+is skipped as unnecessary, unless a capital letter begins the
+possible error. In this case a proper name with non-French
+spelling may be involved and so dialog serves a purpose. The
+program proposes for the user's approval a correction by the
+automatic mechanism.
+ In case Smart mode is off, dialog always occurs and it just
+proposes what was found in corr.in.
+ In either case, the user has several choices
+
+ <Carriage Return> to approve the dialog proposal
+
+The other choices are provided by preceeding the <Carriage Return>
+with one or more of the following letters in any order:
+
+ n to decide the opposite of the proposal
+ f to flag this possible error in the output
+ F to impose f for all remaining dialogs
+
+A flag may be vital to permit later correction of a nonstandard
+error that you spot.
+
+
+
+ ****** Leftovers and Extensions ******
+
+ 1) n<eaccute>s and n<apostrophe>es are both legitimate
+in French. This is one of the extremely rare occasions
+when the change
+
+ <eaccute> <---> <apostrophe>e
+
+preserves French. It is treated as an exception,
+via dialog if possible.
+
+ 2) Remember that one can suppress all action of
+email-fr.fix at a given spot by insertion of three or more
+preceeding spaces, and then always using the "p" option above.
+For example the sentence of documentation:
+
+ Pour 'eviter l/erreur : `` Freud et l'ego''
+
+would be left intact --- as we clearly want.
+ When it is not possible to protect in this way, insertion
+of {} (although visually disturbing) should do the job ---
+indeed without calling on the "p" option:
+
+ Pour 'eviter l/erreur : Freud et ``{}l'ego''
+
+ 3) Some 'e occurring in mathematics may be wrongly converted
+into /e by email-fr.fix. This is statistically extremely
+rare. Furthermore, email-fr.sty (not .fix!) has been
+programmed to stop and warn the reader whenever it meets /e in
+math mode. (The user is then asked to insert a space to prevent
+recurrence of the confusion.) Thus, such rare errors will be
+mechanically caught before they get into print.
+
+ 4) The case of 'E in place of 'e is not treated by
+email-fr.fix although it could be. The reason is that such
+problems are rare and in any case risk involving a proper name.
+Direct search for 'E seems a perfectly adequate correction
+procedure. For example
+
+ La vie d'Egas, architecte espagnol, 1455-1534.
+
+would be maintained by email-fr.fix *if* e and E were treated alike,
+whereas only d/Egas is correct. The matter is complicated by
+frequent omission of accents on capitals.
+
+ 5) Proper names especially those of non-French origin, will
+be a small but inexhaustible source of failure of the
+automatic choices offered by email-fr.fix. For example,
+email-fr.fix changes
+
+ l'ego ==> l/ego
+
+But what of the S'ego lily of the American Indians (which
+would surely have an accute accent in Cajun French of
+Louisiana). As first based on existing French dictionaries,
+email-fr.fix wrongly proposed S/ego, and the user had to
+respond by switching back to S'ego. Progressively such
+exceptions (and others below) are handled by
+augmenting the tables in email-fr.dmp. Thus, dialog may
+gradually become superfluous.
+
+ 6) Bits of English used in French (often illigimately) will
+also be an inexhaustable supply of exceptions. Computer science
+is a big contributor because the spelling of English is usually
+retained and lower case is usual. Here here sample patterns from
+email-fr.dmp that handle such exceptions:
+
+ ?3email ?3emacs
+
+Here ? stands for a ' that may or may not become a /.
+
+
+NB. Users are kindly requested to report exceptions as well as
+true bugs.
+
+
+Laurent Siebenmann <lcs@matups.matups.fr>
+
+
+
+ **** Appendix :
+
+ %%%%%%%%%%%%%%%%%%%%
+ A test file: corr.in
+
+ ``c'est bon''
+
+ "c'est bon"
+
+ (c'est bon)
+
+ [c'est bon]
+
+ {{}c'est bon}
+
+Donc, tu n'es pas n'e hier; et vous autres
+vous n'^etes pas n'es hier non plus.
+
+ %%%%%%%%%%%%%%%%%%%%
+ corr.out :
+
+
+ ``c/est bon''
+
+ "c/est bon"
+
+ (c/est bon)
+
+ [c/est bon]
+
+ {{}c'est bon}
+
+Donc, tu n/es pas n'e hier; et vous autres
+vous n'^etes pas n'es hier non plus.
+
diff --git a/language/typingtex/email.dir/email-fr.sty b/language/typingtex/email.dir/email-fr.sty
new file mode 100644
index 0000000000..a815efd4ca
--- /dev/null
+++ b/language/typingtex/email.dir/email-fr.sty
@@ -0,0 +1,560 @@
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %%%% email-fr.sty
+ %%%% Master posting on ftp matups.matups.fr
+ %%%% Support: Laurent Siebenmann lcs@matups.matups.fr
+ %%%% After \endinput see an alternate paste-in header version
+ %%%% suitable for real email messages.
+ %%%% There is documentation toward the end of this file.
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %% Succinct French accentuation for Plain TeX (LS'93)
+ %% After \input email-fr.sty, \frenchemail activates macros.
+ %% Then 'e 'E for \'e \'E; / for apostrophe, at least before e E
+ %% ` ^ _ for \` \^ \c respectively; and \" is unchanged.
+ %% The command \SmartQuotes permits syntax
+ %% "#1" for smart quotes; \noSmartQuotes annuls (makes "inactive).
+ %% Problem: \input is forbidden with these macros in effect.
+ %% Solution (see documentation): Use grouping. Or environment:
+ %% \beginemailFR...\endemailFR
+ %% \begin{emailFR}...\end{emailFR} (LaTeX only)
+ %% and use \emailinput or \macroinput therein, but \input outside.
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \def\empty{}
+ \ifx\emailFRFlag\empty
+ \def\temp{\immediate\write16{}%
+ \errmessage{ Oops, email-fr is already loaded\string!}%
+ \endinput}
+ \expandafter\temp
+ \else\def\emailFRFlag{}%
+ \fi
+
+ \chardef\emailFRAt=\catcode`@ \catcode`@=11
+
+ \def\gobble#1{} \let\EX@\expandafter
+
+ \def\doemailFRChars@{\do/\do_\do^\do'\do`}
+
+ \def\emailFRChActive{\edef\do##1{\EX@\catcode\string`##1=13}%
+ \doemailFRChars@}
+ \def\emailFRChOther{\edef\do##1{\EX@\catcode\string`##1=12}%
+ \doemailFRChars@}
+
+ \bgroup\catcode`\"=13\relax\emailFRChActive
+ \gdef\@ActiveDQuote{"}
+ \gdef\@ActiveSlash{/}
+ \gdef\@ActiveULine{_}
+ \gdef\@ActiveHat{^}
+ \gdef\@ActiveRQuote{'}
+ \gdef\@ActiveLQuote{`}
+ \gdef\lqmole@{\ifx`\next\lq\lq\EX@\gobble\else\EX@\`\fi}
+ \gdef\ppmole@{\ifx'\next\EX@\@rqq\else\EX@\rq@\fi}
+ \egroup
+
+ \def\pprime@{\futurelet\next\ppmole@}
+ \def\@rqq#1{\futurelet\next\@rqqmole}
+ \def\@rqqmole{\ifcat a\noexpand\next\EX@\@@rqq\else\rq\rq\fi}
+ \def\@@rqq#1{\EX@\ifnum\lccode`#1=`e\rq\'#1\else\rq\rq#1\fi}
+ \def\rq@{\ifcat a\noexpand\next\EX@\@rq@\else\rq\fi}
+ \def\@rq@#1{\EX@\ifnum\lccode`#1=`e\'#1\else\rq#1\fi}
+ \edef\Excl@{\string!\string!\string!\string!}
+ \bgroup\EX@\let\@ActiveDQuote\relax
+ \xdef\@SmartDQ{\def\@ActiveDQuote##1\@ActiveDQuote
+ {\lq\lq##1\rq\rq}}
+ \egroup
+ \def\SmartQuotes{\@SmartDQ\catcode`\"=13\relax}
+ \def\noSmartQuotes{\catcode`\"=12\relax}
+ \def\MSlash@{\futurelet\next\MSlash@mole}
+ \def\MSlash@mole{%
+ \ifx\next e
+ \immediate\write16{}%
+ \immediate\write16{\string! Is this /e correct;
+ or is it 'e corrupted?\string!}%
+ \errmessage{ Stop and correct; or replace by / e \string!}%
+ \fi\string/}
+
+
+ \def\frenchemail{\emailFRChActive\noSmartQuotes
+ \EX@\def\@ActiveULine{\ifmmode\sb\else\EX@\c\fi}%
+ \EX@\def\@ActiveSlash{\ifmmode\EX@\MSlash@\else\EX@\rq\fi}%
+ \EX@\def\@ActiveHat{\ifmmode\sp\else\EX@\^\fi}%
+ \EX@\def\@ActiveLQuote{\futurelet\next\lqmole@}
+ \EX@\def\@ActiveRQuote{\ifmmode\EX@\@@prime\else\EX@\pprime@\fi}%
+ \def\@@prime{\sp\bgroup\prim@s}%
+ \def\pr@m@s{\ifx'\next\let\nxt\pr@@@s \else
+ \ifx^\next\let\nxt\pr@@@t\else\let\nxt\egroup\fi\fi \nxt}%
+ \edef\input{\immediate\write16{} \errmessage{\Excl@ No \string
+ \input\space please during email-fr typing \Excl@ }}%
+ }
+
+
+ \let\prim@emailFRinput\input
+
+ \def\beginemailFR{\begingroup\bgroup\frenchemail
+ \let\emailinput\prim@emailFRinput
+ \def\macroinput##1 {\egroup\prim@emailFRinput##1 \bgroup}}
+ \let\emailFR\beginemailFR
+ \def\endemailFR{\egroup\endgroup}
+
+ %%% \flexcat!
+
+ %\let\EX@\expandafter
+ \def\IW@#1{\immediate\write16{#1}}%
+ \newif\ifc@tOK
+
+ \def\flexcat{\begingroup\catcode`\!=11\futurelet\next\flexcattest@}
+
+ \def\flexcattest@#1{%
+ \ifcat a\noexpand\next
+ \c@tOKtrue
+ \else
+ \c@tOKfalse
+ \fi
+ \count255=`#1\relax %\showthe\count255
+ \ifnum\count255=`\!
+ \ifc@tOK
+ \IW@{*** Test passed; this \string\flexcat\string!
+ location on line \the\inputlineno}
+ \IW@{*** seems OK for category changes.}%
+ \else
+ \IW@{*** Test by \string\flexcat\string! failed
+ at line \the\inputlineno}%
+ \IW@{*** as category change was not immediately effective.}%
+ \IW@{*** \string\flexcat\string! must be in your .tex file.}%
+ \IW@{*** Only where the test succeeds
+ should you try catcode changes.}%
+ \errmessage{}%
+ \fi
+ \else
+ \IW@{*** Sorry, you must use \string! after
+ \noexpand\flexcat at line \the\inputlineno.}%
+ \errmessage{}%
+ \fi\endgroup}
+
+ \newcount\aux@count
+
+ \def\Invalidate@#1#2{%% invalid -ate #1 <= <#2
+ \count@=#1\relax \aux@count=#2
+ \loop
+ \catcode\count@=15
+ \advance\count@ by \@ne
+ \ifnum\count@ < \aux@count %
+ \repeat}
+
+ \def\BlockExtendedASCII{\Invalidate@{127}{256}}
+
+ \def\BlockLowASCII{%
+ \Invalidate@{0}{10}%
+ \Invalidate@{14}{32}}
+
+ \def\BlockNonASCII{\BlockLowASCII\BlockExtendedASCII}
+
+ \catcode`@=\emailFRAt
+
+ \endinput
+
+
+ %%% Header version for autonomous one-file email messages.
+ %%%
+ %%% Version francaise pour entetes.
+ %%% A inserrer par copier et coller
+ %%% apres vos macros et \inputs (apr`es \documentstyle{...}
+ %%% pour LaTeX) juste avant la saisie.
+ %%% Les macros sont alors de suite en vigueur.
+ %-------- selectioner
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %% email-fr: Accentuation francaise succincte pour TeX
+ %% Version entete portable (LS 3&4-93) ftp matups.matups.fr
+ %% Syntaxe: \begingroup <ces macros> <la frappe> \endgroup
+ %% La frappe: / pour <apostrophe>, du moins devant e et E
+ %% ' ` ^ _ pour \' \` \^ \c respectivement; \" inchang'e
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %% "#1" pour guillemets (anglais) si on active la ligne suivante
+ \catcode`\"=13 \edef"#1"{\lq\lq#1\rq\rq}%
+ \catcode`\/=13 \def/{\ifmmode\string/\else\string'\fi}%
+ \catcode`\_=13 \def_{\ifmmode\sb\else\expandafter\c\fi}%
+ \catcode`\^=13 \def^{\ifmmode\sp\else\expandafter\^\fi}%
+ \chardef\emailFRAt=\catcode`@ \catcode`@=11 \catcode`\'=13
+ \def'{\@prime}\let\EX@\expandafter\def\g@bble#1{}\let\FL@\futurelet
+ \def\@prime{\ifmmode\EX@\@@prime\else\EX@\pprime@\fi}%
+ \def\@@prime{\sp\bgroup\prim@s}\def\pprime@{\FL@\next\ppmole@}
+ \def\pr@m@s{\ifx'\next\let\nxt\pr@@@s \else\ifx^\next\let\nxt\pr@@@t
+ \else\let\nxt\egroup\fi\fi \nxt} \def\@rqq#1{\FL@\next\@rqqmole}
+ \def\ppmole@{\ifx'\next\EX@\@rqq\else\EX@\rq@\fi}
+ \def\@rqqmole{\ifcat a\noexpand\next\EX@\@@rqq\else\rq\EX@\rq\fi}
+ \def\@@rqq#1{\EX@\ifnum\lccode`#1=`e\rq\'#1\else\rq\rq#1\fi}
+ \def\rq@{\ifcat a\noexpand\next\EX@\@rq@\else\rq\fi}
+ \def\@rq@#1{\EX@\ifnum\lccode`#1=`e\'#1\else\rq#1\fi}
+ \count255=\catcode`\!\catcode`\!=12
+ \edef\input{\immediate\write16{}\errmessage{!!!! Les macros email-fr
+ excluent \string\input\space !!!!}}\catcode`\!=\the\count255
+ \catcode`\`=13 \def`{\futurelet\next\lqmole@}%
+ \def\lqmole@{\ifx`\next\lq\lq\EX@\g@bble\else\EX@\`\fi}
+ \EX@\catcode\string`@=\emailFRAt
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %-------- copier
+
+ %%%%%%%%%%%% ASCII (ISO 850) integrity check %%%%%%%%%%%%%%%%
+ %% Upper case letters: ABCDEFGHIJKLMNOPQRSTUVWXYZ
+ %% Lower case letters: abcdefghijklmnopqrstuvwxyz
+ %% Six punctuation marks . ? ! , : ;
+ %% Parentheses: ()
+ %% Braces: square, curly, angle : [] {} <>
+ %% Backslash, slash, vertical bar: \ / |
+ %% Underscore, hyphen, equal: _ - =
+ %% Quotes: right, left, double ' ` "
+ %% "at", "number", "dollar", "percent": @ # $ %
+ %% "and", "hat", "star", "plus", "tilde": & ^ * + ~
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+
+
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %%%%%%%% Succinct French typing for 7-bit ASCII email %%%%%%%%%
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+ --- This is documentation for the email-fr macros
+in their style file and header forms.
+
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ USER COMMAND INDEX: ("search" for information on them)
+ --- Indented commands are less ugrent.
+ \frenchemail (always after header material) switches on macros.
+ Switching on AND off:
+ \begingroup \frenchemail <succinct typing> \endgroup
+ \beginemailFR <succinct typing> \endemailFR
+ \begin{emailFR} <succinct typing> \end{emailFR} (for LaTeX only)
+ \flexcat! diagnostic test for switching
+ \emailinput or \macroinput replacing \input when macros on.
+ 'e 'E for \'e \'E; / for apostrophe, at least before e E
+ ` ^ _ for \` \^ \c respectively (\" is unchanged)
+ \SmartQuotes then syntax "#1"; \noSmartQuotes.
+ \<...\> Guillemets (with external definition)
+ \lq...\rq English single quotes replacing `...'
+ \BlockNonASCII to enforce strict ASCII typing
+ \BlockExtendedASCII, \BlockLowASCII
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+ **** Introduction ****
+
+ First off, read the documentation in the headers to the
+macros both in style file form (up to \endinput) and in header
+form (after \endinput). Above all, note the new usage of
+the five diacritics ` ' ^ _ / .
+
+ Let us imagine that an urgent letter in French is to be sent
+by email. It must be both immediately and easily readable in
+ASCII form and automatically convertible by TeX into good
+printed copy. With the ASCII 7bit typing recommended by Knuth
+in the TeXbook (1982), and employed by a majority French TeX
+users for a decade the ASCII form is of poor readibility because
+of backslashed control sequences used for accents : L'Ob\'eron a
+\'et\'e d\'em\^at\'e. The simplified typing that email-fr.tex
+makes available is more readible without degrading the quality
+or convenience of the printing : L'Ob'eron a 'et'e d'em^at'e.
+
+ There is another consideration. Most TeX users expect to
+employ some sort of a preprocessor to produce L'Ob\'eron a
+\'et\'e d\'em\^at\'e, be it a command key system or a stream
+processor. Except, that is, in various awkward circumstances
+that email so often creates on the various minitel sets and
+terminals one encounters. In such circumstances users will
+surely be happy to type L'Ob'eron a 'et'e d'em^at'e, and the aim
+of these macros is to make this directly acceptable to TeX
+
+ Similar considerations apply to many European languages.
+But just a few (notably German) have thus far develloped this
+sort of succinct typing style. To facilitate parallel efforts
+for other languages this documentation is in English.
+
+ Alpha-test notice: The applicability of the email-fr
+macros beyond basic Plain TeX is still a matter for cautious
+investigation (see below). Even under Plain there may still be
+bugs. Please proceed with caution and report problems.
+
+
+
+ **** Instructions Remarks and Limitations ****
+
+ The diarresis accent \" is so rare in French that it would
+be senseless to provide an abbreviation.
+
+ The accent macros \' \` \^ \c remain alive and well and can
+still be used; in fact, the email-fr macros relies on them to get
+output. You therefore have to be using a TeX environment
+in which they have been progammed to give the best
+accented characters your font system will permit. In particular
+Knuth's definition of \^ must have been modified so that
+\^i involves a dotless i. There are several ready-made
+setups found on anonymous ftp ftp.univ-rennes1.fr or ftp
+matups.matups.fr and the CTAN servers. I provide support
+for format-dumper, whose master posting is on ftp
+matups.matups.fr.
+
+
+ ** A common typing error and its painless remedy
+
+ There is one unfortunate disruption of standard typing
+habits that forced email-fr to evolve considerably. In order
+to be acceptable to email-fr.sty (or the email-fr header) the
+apostrophe followed by e or E must in principle be typed as a
+slash / and not as '. This rule is unambiguous and visually
+acceptable --- at least more so than a backslash in the middle of
+a word. The problem is that few typists are able to avoid
+reverting many times per page to ' for apostrophe, which may
+produce <eaccute> or <Eaccute> in TeX.
+
+ A classical remedy is to use a good text editor to search for
+the quadruple <space><letter>'<e or E> and replace it where
+appropriate by /e (or /E). As <letter> is one of many c d j l m
+n s t (not counting capitalisation and the occurrence s of qu),
+<letter> should be treated as a wildcard or multiple choice and
+only a sophisticated text editor (operated by a sophisticated
+user?) can do that. It is exceedingly tiresome to search for all
+'e or 'E.
+
+ Thus some automatic and portable typing correction tool can
+be reckoned a necessity; it is provided by a small ".tex" utility
+called email-fr.fix which in turn uses email-fr.dmp; both
+are distributed with email-fr.sty.
+
+ With email-fr.fix you can freely forget to use / for
+apostrophe --- and suffer no penalty!
+
+ Here is how to start using email-fr.fix; for more details
+see its own documentation. Save your email-fr typescript
+underthe name corr.in along side of email-fr.fix. Then
+"compose" email-fr.fix (not corr.in) under your TeX format,
+just as though it were a typescript. Then follow instructions
+given interactively. Interactive correction of possible errors
+is a minimum service. *Automatic* correction of errors is offered
+*provided* a special language "emailFR" with its very peculiar
+hyphenation patterns is available in the TeX format used. This
+(tiny) language is always present in French formats built with
+the format-dumper mechanism on ftp matups.matups.fr. The
+quickest way to get such a format if you do not have one is to
+use email-fr.dmp distributed with this file.
+
+
+ ** Guillemets
+
+ Because it is currently a font-dependant matter, no
+support is provided here for true (double) French guillemets.
+They are grammatically equivalent to ordinary double quotes
+--- but preferred thereto in most literary work. However, if
+you wish to import a definition, the macro "#1" can be
+redefined to print them. The most common syntax for typing
+them is \<...\>.
+
+
+ ** Single quotes are bannished as not French
+
+ The following English (prose) typing has also been invalidated:
+
+ ` for left single quote; use \lq instead
+ ' for right single quote; use \rq instead
+
+Single quotes are not used in French. But double quotes are
+and the usual syntax ``...'' works.
+
+
+ ** Smart Quotes
+
+ After the \SmartQuotes command, the syntax
+"<text>" puts <text> between left and right double quotes.
+When defined, the smart quotes macro "#1" provides double
+quotes that must be paired within each paragraph. A further
+alternative (always available) is offered by \lq\lq and
+\rq\rq.
+
+ In the header version, the smart quotes macro "#1" is
+activated by uncommenting a line at the beginning.
+
+ In the style file version, \SmartQuotes and
+\noSmartQuotes turn this feature on and off. When it is off,
+the character " is in its inactive state. With AmSTeX one
+will have to turn off the smart quotes feature when one wishes to
+use the syntax \tag"...", \item"...", or \footnote"..." ---
+unless perchance your AmS format has been patched appropriately.
+Similarly problems occur in LamsTeX and probably elsewhere.
+
+ \SmartQuotes activates " and hence the same prudence
+is recommended as with \frenchemail itself (see \flexcat! below).
+
+ A switch from French to English might reasonably
+automatically change the meaning of \SmartQuotes to use single
+quotes rather than double, and inversely. Then email-fr.sty
+is suitable for, say, an essay in English on a French subject.
+A TeXpert can arrange this for your TeX environment on demand.
+
+
+ ** Switching email-fr macros on and off
+
+ As a safety measure, the email-fr macros have been set
+up so that they have essentially no effect beyond any group
+within which they occur. Thus, once a block of succinct
+typing composes correctly under an unfamiliar format, it is a
+near certainty that the block can be included in a larger
+typescript under the same format without causing trouble ---
+provided grouping is used as in the recipe:
+
+ \begingroup <the header macros> <succinct typing> \endgroup
+
+Here <these macros> refers to the block of macros after
+\endinput above set up for cut and paste insertion.
+
+ When several blocks of succinct typing are being
+incorporated into a larger typescript one can avoid repeating
+the header by switching to the style file version
+--- replacing the header by \input email-fr.sty. Then
+there are two syntaxes available. The simplest is
+
+ \begingroup \frenchemail <succinct typing> \endgroup
+
+ There is also the environment syntax
+
+ \beginemailFR <succinct typing> \endemailFR
+
+and the LaTeX equivalent
+
+ \begin{emailFR} <succinct typing> \end{emailFR}
+
+This email environment makes available new macros
+\emailinput and \macroinput. They together replace \input,
+which, we recall, is then forbidden.
+
+ \emailinput <file>
+
+serves to input files of succinct email typing; for this the
+active catcodes for accents etc. are maintained.
+
+ \macroinput <file>
+
+serves to input non-email material, in particular macros; for
+this the active catcodes are momentarily restored to their
+state outside the environment.
+
+ How much of a manuscript can be typed with the email-fr
+macros steadily in force? The chief restriction is that TeX
+programming or unfamiliar syntax involving `'^_/ should not
+appear in your typescript while the email-fr macros are in
+force. However, normal use of `'^_/ in normal *math* is is
+perfectly OK. In well constructed TeX typescripts, all the
+programming is collected into a style file and \input at the
+outset; anytime thereafter the email-fr macros can hopefully
+be invoked by \frenchemail once and for all, even without the
+help of grouping or environment. See the appendix if you wish
+to use the email-fr macros still more liberally.
+
+
+ ** Where NOT to switch email-fr macros on or off.
+
+ The most important place to avoid is a segment of typing that
+is in fact a macro argument (or similar construct). The reason is
+that the category changes involved are then usually not not obeyed
+in time. Unfortunately, the user can often not tell whether a
+given spot on his typescript is in a macro argument or not. Hence
+there is a test macro
+
+ \flexcat!
+
+that one can temporarily insert to tell. Use flexcat! whenever
+you encounter trouble in switching email-fr macros on or off.
+
+
+ ** Hints on using TeX for email
+
+ No characters other than the ASCII characters 32--126 and
+carriage return should be used. All lines (carriage return to
+carriage return) must be of length much less than 80 (50 is a good choice).
+All lines should for safety begin with a space.
+
+ In particular, replace tabs (character 9) by
+a certain number spaces (and be sure not to to use
+tabs for anything but spaces in the first place).
+
+ While you can certainly assure these conditions by hand, you
+will find that many text editors provide suitable automatic
+functions.
+
+ Further, email-fr.fix will optionally provide
+ (i) the space beginning lines in its output
+ (ii) a check-list of ASCII characters 33--126 in the header of
+its output (32 is space).
+
+ For its part, mail-fr.sty will complain of characters
+127--255 if you issue the command
+
+ \BlockExtendedASCII
+
+And it will do the same for the characters 0--31 via the
+command
+
+ \BlockLowASCII
+
+(Exception: 13 and 10 are not excluded as they in some combination
+represent carriage return.) It is advisable
+to take *both* measures if you want a portable typescript; hence
+the single command
+
+ \BlockNonASCII
+
+for this purpose.
+
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+APPENDIX
+
+ *** Active characters and wider use of the email-fr macros ***
+
+ The following comments are for TeXperts only.
+
+ The email-fr macros make the characters /_`'^ active.
+This technique that is powerful but dangerous --- which makes
+it difficult to keep the email-fr macros in force all the time,
+a practice that would in many respects be most convenient.
+
+ The danger is fortunately limited to those characters that
+receive active category on input as a consequence of the
+email-fr macros. Characters input with the normal category 12
+(=other) keep category 12 forever and behave normally. Be aware
+that a given character's category is assigned at input by TeX,
+and the category of the resulting character token is not influenced
+by later occurences of the \catcode assignments.
+
+ There are two sorts of problems one encounters beyond the
+necessary avoidance of the single quotes syntax `...' that has
+already been mentioned. These extra problems fortunately do
+not often arise outside of TeX programming.
+
+ (I) Standard usage for the category 12 versions of '"`^ in TeX
+programming is unavailable when these characters have category
+13. In particular, where numbers are expected, watch out for ` '
+and " to indicate binary, octal and hexadecimal. Watch out for
+^^ to indicate octets being artificially input (such as ^^ff for
+octet 255 or ^^I for 9). These are used almost exclusively by
+programmers and the disabling of \input plus the use of grouping
+should avoid trouble most of the time. Fortunately, " can cause
+no trouble while the smart quotes feature is off. Also, there is
+usually a way to change the usage so that it does not matter what
+the category of these characters is; for example
+\catcode`\!=12 can be replaced by
+\expandafter\catcode\string`\!=12.
+
+ (II) TeX macro packages may use some of the characters
+'`^/_ in their private macro syntax. For example ^ is used
+for index compilation in Knuth's style file for the TeXbook.
+It is often possible for a programmer to fix things
+to achieve compatibility with email-fr.
+
+ Thus, the use of the email-fr macros beyond the context of
+straight prose and math for which they are chiefly intended is
+by no means impossible, but it does occasionally require some
+attention from a TeX programmer.
+
+
+Orsay, March and April 1993
+
diff --git a/language/typingtex/email.dir/email-sp b/language/typingtex/email.dir/email-sp
new file mode 100644
index 0000000000..a4dfcd81e8
--- /dev/null
+++ b/language/typingtex/email.dir/email-sp
@@ -0,0 +1,104 @@
+
+
+Date: 05 May 93 16:39:39+0000
+From: laurent@MATH.TORONTO.EDU
+Sender: TeX-Euro Distribution List for European TeX Users
+Subject: email-sp
+To: Multiple Recipients of <TEX-EURO@DHDURZ1.BITNET>
+
+
+
+ *********** email-sp ***********
+
+ > Werenfried Spit tel: 96-386 4550
+ > Departament de F%sica Tehrica e-mail: spit@vm.ci.uv.es
+ > Universitat de Val[ncia spit@evalun11.bitnet
+
+
+Dear W. Spit,
+
+ I notice from your address that you do not like "F\'isica
+... de Val\'encia", since you have unsuccessfully tried to use a
+non-ascii accented i and e. Are you aware that there is a very
+pracical compromise for Spanish, namely "F'isica ... de
+Val'encia"?
+
+ By practical I mean readable, typable, portable by email,
+and acceptable to TeX.
+
+ TeX does need to swallow a few macros before it can
+interpret "F'isica in Val'encia" correctly, but they are so
+succinct that you can put them in a header --- see below.
+
+ This header called email-sp improves on spaccent.sty of
+Pablo A. Straub <straub@cs.UMD.EDU> available since 1991, and
+posted on ftp moose.cs.indiana.edu. Notably, email-sp is
+compatible with mathematics and with case change by
+\uppercase,\lowercase, see (**) below.
+
+ Look for updates on ftp matups.matups.fr where you can
+incidentally compare the more elaborate French version
+email-fr.sty.
+
+ Laurent Siebenmann
+
+ <lcs@matups.matups.fr>
+
+
+
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %% email-sp (header form) Larry S.19-4-93 <lcs@matups.matups.fr>
+ %% Succinct Spanish-English typing: '<letter> for \'<letter>,
+ %% EXCEPT that (i) 's and 'S give apostrophes (for English)
+ %% (ii) 'n or \~n gives <ntilde>; 'N or \~N gives <Ntilde>.
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \count255=\catcode`@\catcode`@=11\catcode`\'=13\let\EX@\expandafter
+ \def\EX@@{\EX@\EX@\EX@}\def\g@bble#1{} \let\FL@\futurelet
+ \def'{\ifmmode\EX@\@prime\else\EX@\@pprime\fi}%
+ \def\@prime{\sp\bgroup\prim@s}\def\@pprime{\FL@\next\rq@}
+ \def\pr@m@s{\ifx'\next\let\nxt\pr@@@s \else
+ \ifx^\next\let\nxt\pr@@@t\else\let\nxt\egroup\fi\fi \nxt}%
+ \def\rq@{\ifx\next'\rq\EX@@\rq\EX@\g@bble\else\EX@\rq@@\fi}
+ \def\rq@@{\ifcat a\noexpand\next\EX@\rq@@@\else\EX@\rq\fi}
+ \def\rq@@@#1{\ifnum\lccode`#1=`s\EX@\rq #1%
+ \else\ifnum\lccode`#1=`n\~#1\else\'#1\fi\fi}
+ \let\emailinput\input \def\IW@{\immediate\write16}
+ \def\macroinput#1 {\catcode`\'=12\currinput#1 \catcode`\'=13}
+ \edef\input{\IW@{}\IW@{ !!!! With email-sp macros use
+ \string\macroinput} \IW@{ !!!! or \string\emailinput\space
+ for \string\input\space} \errmessage{}} \catcode`@=\count255
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+Notes on email-sp:
+
+ --- email-sp is for Spanish in the the ASCII world of email and
+ftp and telnet. The restriction to 7bit characters gives
+portability. Other features are immediate TeXing, easy typing,
+and readability.
+
+ --- email-sp typing can replace eight-bit typing. The converse
+is impossible since email is 7bit and the only universal standard
+is 7bit ASCII.
+
+ --- Why are 'n and 'N proposed as typing for <ntilde> and
+<Ntilde>? It seems impossible to use ~n for <ntilde>! Indeed
+\uppercase{~n} should then give the same as ~N. But longstanding
+TeX custom reserves ~N for <unbreakable space>N, as in
+R.~Nixon!
+
+ --- primes in math are OK (**)
+
+ --- \uppercase{'e} is <Eaccute> etc. (**)
+
+ --- English Apostrophe (rare): type O'{}Hara.
+
+ --- French Apostrophe: To type small amounts of French with
+email-sp note that the line
+
+ \catcode`\/=13 \def/{\ifmmode\string/\else\string'\fi}%
+
+would make / an apostrophe in prose. This allows efficient
+typing: L/'eternel vs L'{}'eternel.
+
+
diff --git a/language/typingtex/email.dir/email-sp.sty b/language/typingtex/email.dir/email-sp.sty
new file mode 100644
index 0000000000..54af20bc71
--- /dev/null
+++ b/language/typingtex/email.dir/email-sp.sty
@@ -0,0 +1,248 @@
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %%%% email-sp.sty: master posting on ftp matups.matups.fr
+ %%%% Support: Laurent Siebenmann lcs@matups.matups.fr
+ %%%% After \endinput see an alternate paste-in header version
+ %%%% suitable for real email messages.
+ %%%% There is documentation toward the end of this file.
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %% Succinct Spanish accentuation for Plain TeX (LS'93)
+ %% After \input email-sp.sty, \spanishemail activates macros.
+ %% Then '`^_ for \' \` \^ \c respectively and / for apostrophe.
+ %% T\" is unchanged. The command \SmartQuotes permits syntax
+ %% "#1" for smart quotes; \noSmartQuotes annuls (makes " inactive).
+ %% Warning: \input is forbidden with these macros in effect.
+ %% Suggestion: To avoid such problems use the syntax:
+ %% \begingroup \spanishemail <your succinct typing> \endgroup
+ %% for each block of succinct typing.
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+ \chardef\SPemailAt=\catcode`@ \catcode`@=11
+
+ \def\gobble#1{} \let\EX@\expandafter
+
+ \def\doSPemailChars@{\do/\do_\do^\do'\do`}
+
+ \def\SPemailChActive{\edef\do##1{\EX@\catcode\string`##1=13}%
+ \doSPemailChars@}
+ \def\SPemailChOther{\edef\do##1{\EX@\catcode\string`##1=12}%
+ \doSPemailChars@}
+
+ \bgroup\catcode`\"=13\relax\SPemailChActive
+ \gdef\@ActiveDQuote{"}
+ \gdef\@ActiveSlash{/}
+ \gdef\@ActiveULine{_}
+ \gdef\@ActiveHat{^}
+ \gdef\@ActiveRQuote{'}
+ \gdef\@ActiveLQuote{`}
+ \gdef\lqmole@{\ifx`\next\lq\lq\EX@\gobble\else\EX@\`\fi}
+ \gdef\rqmole@{\ifx'\next\rq\rq\EX@\gobble\else\EX@\'\fi}
+ \egroup
+
+ \def\@@pprime{\futurelet\next\rqmole@}
+ \edef\Excl@{\string!\string!\string!\string!}
+ \bgroup\EX@\let\@ActiveDQuote\relax
+ \xdef\@SmartDQ{\def\@ActiveDQuote##1\@ActiveDQuote
+ {\lq\lq##1\rq\rq}}
+ \egroup
+ \def\SmartQuotes{\@SmartDQ\catcode`\"=13\relax}
+ \def\noSmartQuotes{\catcode`\"=12\relax}
+
+ \let\priminput\input
+ %%% Special \input is needed with email-sp macros on:
+ %% (a) If <file> needs /_^'` active
+ %% \SPemailChOther \priminput <file> \SPemailChActive
+ %% (b) If <file> needs /_^'` other
+ %% \priminput <file>
+ %%% Similarly for " if active.
+
+ \def\spanishemail{\SPemailChActive\noSmartQuotes
+ \EX@\def\@ActiveULine{\ifmmode\sb\else\EX@\c\fi}%
+ \EX@\def\@ActiveSlash{\ifmmode\string/\else\EX@\rq\fi}%
+ \EX@\def\@ActiveHat{\ifmmode\sp\else\EX@\^\fi}%
+ \EX@\def\@ActiveLQuote{\futurelet\next\lqmole@}
+ \EX@\def\@ActiveRQuote{\@prime}%
+ \def\@prime{\ifmmode\EX@\@@prime\else\EX@\@@pprime\fi}%
+ \def\@@prime{\sp\bgroup\prim@s}%
+ \def\pr@m@s{\ifx'\next\let\nxt\pr@@@s \else
+ \ifx^\next\let\nxt\pr@@@t\else\let\nxt\egroup\fi\fi \nxt}%
+ \edef\input{\immediate\write16{} \errmessage{\Excl@ No \string
+ \input\space please during email-sp typing \Excl@ }}%
+ }
+
+ \endinput
+
+
+
+ %%% Header version for real email messages.
+ %%%
+ %%%
+ %%% Insert the following header by cut and paste after your macros
+ %%% and \input's, just before the Spanish typing
+
+VERSION 1.
+
+ %-------- select
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %% email-sp: header form : Succinct Spanish accenuation for TeX
+ %% allowing pleasant and readable typing (L.Siebenmann 4-93)
+ %% Syntax: \begingroup <these macros> <succinct typing> \endgroup
+ %% The succinct typing: (bug reports to lcs@matups.matups.fr)
+ %% 'n for \~n; ''u for \"u; and
+ %% 'a, 'e, 'i, 'o, 'u for \'a, \'e, \'i, \'o, \'u
+ %% No single quotes allowed: \lq...\rq instead
+ %% No apostrophes: \rq instead
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %% "#1" for smart double quotes if you activate the next line
+ %\catcode`\"=13 \edef"#1"{\lq\lq#1\rq\rq}%
+ \count255=\catcode`@ \catcode`@=11 \catcode`\'=13
+ \def'{\@prime} \let\EX@\expandafter \def\g@bble#1{}
+ \def\@prime{\ifmmode\EX@\@@prime\else\EX@\@@pprime\fi}%
+ \def\@@prime{\sp\bgroup\prim@s}%
+ \def\@@pprime{\futurelet\next\rqmole@}
+ \def\pr@m@s{\ifx'\next\let\nxt\pr@@@s \else
+ \ifx^\next\let\nxt\pr@@@t\else\let\nxt\egroup\fi\fi \nxt}%
+ \def\rqmole@{\ifx'\next
+ \EX@\EX@\EX@\rqrq@\EX@\g@bble\else\EX@\TildeOrAccute@\fi}
+ \def\TildeOrAccute@{\ifx n\next\EX@\~\else\EX@\'\fi}
+ \def\rqrq@{\futurelet\next\rqrqmole@}
+ \def\rqrqmole@{\ifx\next u\EX@\"\else\rq\rq\fi}
+ \catcode`@=\count255\let\currinput\input
+ \def\input#1 {\catcode`\'=12\currinput#1 \catcode`\'=13}
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %-------- copy
+
+VERSION 2.
+
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %% email-sp (header form) Larry S.17-4-93 <lcs@matups.matups.fr>
+ %% Succinct Spanish-English typing: '<letter> for \'<letter>;
+ %% Hence ' NOT apostrophe, \rq instead (only no-no for typist!)
+ %% ~n for \~n; (BUT ~ mostly kern; \~N for the rare capital ene)
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \count255=\catcode`@\catcode`@=11\catcode`\'=13
+ \let\EX@\expandafter \def\g@bble#1{} \let\FL@\futurelet
+ \def'{\ifmmode\EX@\@prime\else\EX@\@pprime\fi}%
+ \def\@prime{\sp\bgroup\prim@s}\def\@pprime{\FL@\next\rqmole@}
+ \def\pr@m@s{\ifx'\next\let\nxt\pr@@@s \else
+ \ifx^\next\let\nxt\pr@@@t\else\let\nxt\egroup\fi\fi \nxt}%
+ \def\rqmole@{\ifcat a\next\EX@\'\else\EX@\rq@\fi}
+ \def\rq@{\FL@\next\rqmole@@}
+ \def\rqmole@@{\ifx\next'\rq\EX@\EX@\EX@\rq\EX@\g@bble\else\EX@\rq\fi}
+ \let\oldtild@ ~\def~{\ifmmode\oldtild@\else\EX@\prosetild@\fi}
+ \def\prosetild@{\FL@\next\tildemole@}
+ \def\tildemole@{\ifx n\next\EX@\~\else\EX@\oldtild@\fi}
+ \let\emailinput\input \def\IW@{\immediate\write16}
+ \def\macroinput#1 {\catcode`\'=12\currinput#1 \catcode`\'=13}
+ \edef\input{\IW@{}\IW@{ !!!! With email-sp macros use
+ \string\macroinput} \IW@{ !!!! or \string\emailinput\space
+ for \string\input\space} \errmessage{}} \catcode`@=\count255
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+VERSION 3.
+
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %% email-sp (header form) Larry S.19-4-93 <lcs@matups.matups.fr>
+ %% Succinct Spanish-English typing: '<letter> for \'<letter>,
+ %% EXCEPT that 's and 'S give apostrophes (for English).
+ %% ~n for \~n; (BUT ~ mostly kern; \~N for the rare capital ene)
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \count255=\catcode`@\catcode`@=11\catcode`\'=13\let\EX@\expandafter
+ \def\EX@@{\EX@\EX@\EX@}\def\g@bble#1{} \let\FL@\futurelet
+ \def'{\ifmmode\EX@\@prime\else\EX@\@pprime\fi}%
+ \def\@prime{\sp\bgroup\prim@s}\def\@pprime{\FL@\next\rqmole@}
+ \def\pr@m@s{\ifx'\next\let\nxt\pr@@@s \else
+ \ifx^\next\let\nxt\pr@@@t\else\let\nxt\egroup\fi\fi \nxt}%
+ \def\rqmole@{\ifx\next'\rq\EX@@\rq\EX@\g@bble\else\EX@\rqmole@@\fi}
+ \def\rqmole@@{\ifcat a\noexpand\next\EX@\rqmole@@@\else\EX@\rq\fi}
+ \def\rqmole@@@#1{\ifnum\lccode`#1=`s\EX@\rq #1\else\EX@\'#1\fi}
+ \let\oldtild@ ~\def~{\ifmmode\oldtild@\else\EX@\prosetild@\fi}
+ \def\prosetild@{\FL@\next\tildemole@}
+ \def\tildemole@{\ifx n\next\EX@\~\else\EX@\oldtild@\fi}
+ \let\emailinput\input \def\IW@{\immediate\write16}
+ \def\macroinput#1 {\catcode`\'=12\currinput#1 \catcode`\'=13}
+ \edef\input{\IW@{}\IW@{ !!!! With email-sp macros use
+ \string\macroinput} \IW@{ !!!! or \string\emailinput\space
+ for \string\input\space} \errmessage{}} \catcode`@=\count255
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+VERSION 4.
+
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %% email-sp (header form) Larry S.19-4-93 <lcs@matups.matups.fr>
+ %% Succinct Spanish-English typing: '<letter> for \'<letter>,
+ %% EXCEPT that (i) 's and 'S give apostrophes (for English)
+ %% (ii) 'n or \~n gives <ntilde>; 'N or \~N gives <Ntilde>.
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \count255=\catcode`@\catcode`@=11\catcode`\'=13\let\EX@\expandafter
+ \def\EX@@{\EX@\EX@\EX@}\def\g@bble#1{} \let\FL@\futurelet
+ \def'{\ifmmode\EX@\@prime\else\EX@\@pprime\fi}%
+ \def\@prime{\sp\bgroup\prim@s}\def\@pprime{\FL@\next\rq@}
+ \def\pr@m@s{\ifx'\next\let\nxt\pr@@@s \else
+ \ifx^\next\let\nxt\pr@@@t\else\let\nxt\egroup\fi\fi \nxt}%
+ \def\rq@{\ifx\next'\rq\EX@@\rq\EX@\g@bble\else\EX@\rq@@\fi}
+ \def\rq@@{\ifcat a\noexpand\next\EX@\rq@@@\else\EX@\rq\fi}
+ \def\rq@@@#1{\ifnum\lccode`#1=`s\EX@\rq #1%
+ \else\ifnum\lccode`#1=`n\~#1\else\'#1\fi\fi}
+ \let\emailinput\input \def\IW@{\immediate\write16}
+ \def\macroinput#1 {\catcode`\'=12\currinput#1 \catcode`\'=13}
+ \edef\input{\IW@{}\IW@{ !!!! With email-sp macros use
+ \string\macroinput} \IW@{ !!!! or \string\emailinput\space
+ for \string\input\space} \errmessage{}} \catcode`@=\count255
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+Notes on email-sp:
+
+ --- email-sp is for Spanish in the the ASCII world of email and
+ftp and telnet. The restriction to 7bit characters gives
+portability. Other features are immediate TeXing, easy typing,
+and readability.
+
+ --- email-sp typing can replace eight-bit typing. The converse
+is impossible since email is 7bit and the only universal standard
+is 7bit ASCII.
+
+ --- Why are 'n and 'N proposed as typing for <ntilde> and
+<Ntilde>? It seems impossible to use ~n for <ntilde>! Indeed
+\uppercase{~n} should then give the same as ~N. But longstanding
+TeX custom reserves ~N for <unbreakable space>N, as in
+R.~Nixon!
+
+ --- primes in math are OK (**)
+
+ --- \uppercase{'e} is <Eaccute> etc. (**)
+
+ --- English Apostrophe (rare): type O'{}Hara.
+
+ --- French Apostrophe: To type small amounts of French with
+email-sp note that the line
+
+ \catcode`\/=13 \def/{\ifmmode\string/\else\string'\fi}%
+
+would make / an apostrophe in prose. This allows efficient
+typing: L/'eternel vs L'{}'eternel.
+
+
+
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %%%%%%%%% Spanish terminology; Maria Dolores 4239-1754
+ %% \~n is called e\~ne (tilde)
+ %% \' is called agudos; past of verbs tom\'o
+ %% \" is called di'eresis; example g\"uito=kernel, antig\"uedad
+
+ Ref: Grammaire Espagnol, licence et classes preparatoires,
+ par Jean Bouzet, E Belin, 8 r Ferou, Paris reimpression 1978 35F.
+
+ Ref Curso de gram'atica hist'orica espa'nola,
+The evolution of Spanish, an introductory historical grammar,
+T.A. Lathrup, 1980 c/o dept of languages and literature
+univ delaware, app'endices y commentarios
+Juan Guti'errez Cuandrado y Ana Blas, 1984
+Ariel (C'orciega, 270, Barcelona 8.
+
+. el punto ... los puntos suspensivos
+, comma << >> las comillas
+; el punto y coma --- el gui'on
+: los dos puntos () entre par'entesis
+?? ? signos de interrogati'on !! ! signos de admirati'on
+
diff --git a/language/typingtex/lehyphen.tex b/language/typingtex/lehyphen.tex
new file mode 100644
index 0000000000..7f24b6a42c
--- /dev/null
+++ b/language/typingtex/lehyphen.tex
@@ -0,0 +1,170 @@
+ %%%% LEHYPHEN.TEX %% LEtter count hyphenation patterns
+ %% for use with word tally.sty
+ %% to let \LetterCount<text>\endLetterCount count the letters
+
+ \begingroup
+ \catcode`@=11
+
+ %%% Globally set high ASCII to 12
+ %%
+ \count@="80
+ \loop
+ \global\catcode\the\count@=12
+ \ifnum\count@<"FF
+ \relax\advance\count@ by 1
+ \repeat
+
+ %%% Globally set their Cork default lc-uc codes
+ \newcount\Ct@
+ \newcount\Ct@@
+ \newcount\Ct@@@
+ \toks0={%
+ \loop
+ \Ct@=\count@\advance\Ct@ by 32
+ %% \count@ is Plain scratch counter \count255
+ \global\uccode\the\count@=\the\count@
+ \global\lccode\the\count@=\the\Ct@
+ \global\uccode\the\Ct@=\the\count@
+ \global\lccode\the\Ct@=\the\Ct@
+ \ifnum\count@<\Ct@@
+ \relax\advance\count@ by 1
+ \repeat
+ }
+
+ \count@="80 \Ct@@="9E \the\toks0 %% segment "80 to "BF
+ %% "9F is \S and "BF is pound
+ \count@="C0 \Ct@@="DF \the\toks0 %% segment "C0 to "FF
+ \lccode"BD=0\uccode"BD=0 %% !!
+ \lccode"BD=0\uccode"BD=0 %% ??
+
+ %% count figures as letters!?
+\lccode`0=`0
+\lccode`1=`1
+\lccode`2=`2
+\lccode`3=`3
+\lccode`4=`4
+\lccode`5=`5
+\lccode`6=`6
+\lccode`7=`7
+\lccode`8=`8
+\lccode`9=`9
+\lccode`==`=
+
+
+ \patterns{%
+1^^301
+1^^311
+1^^321
+1^^331
+1^^341
+1^^351
+1^^361
+1^^371
+1^^381
+1^^391
+1<1
+1=1
+1>1
+1a1
+1b1
+1c1
+1d1
+1e1
+1f1
+1g1
+1h1
+1i1
+1j1
+1k1
+1l1
+1m1
+1n1
+1o1
+1p1
+1q1
+1r1
+1s1
+1t1
+1u1
+1v1
+1w1
+1x1
+1y1
+1z1
+ }
+
+ \patterns{%
+ %1^^9D1 %% Turkish dot I
+ 1^^9E1 %% croatian \dj
+ %1^^9F1 %% \S
+ %
+1^^a01
+ 1^^a11
+ 1^^a21
+ 1^^a31
+ 1^^a41
+ 1^^a51
+ 1^^a61
+ 1^^a71
+ 1^^a81
+ 1^^a91
+ 1^^aa1
+ 1^^ab1
+ 1^^ac1
+ 1^^ad1
+ 1^^ae1
+ 1^^af1
+ %
+ 1^^b01
+ 1^^b11
+ 1^^b21
+ 1^^b31
+ 1^^b41
+ 1^^b51
+ 1^^b61
+ 1^^b71
+ 1^^b81
+ 1^^b91
+ 1^^ba1
+ 1^^bb1
+ 1^^bc1
+ %1^^bd1 %% !!
+ %1^^be1 %% ??
+ %1^^bf1 %% pound
+ %
+ 1^^e01
+ 1^^e11
+ 1^^e21
+ 1^^e31
+ 1^^e41
+ 1^^e51
+ 1^^e61
+ 1^^e71
+ 1^^e81
+ 1^^e91
+ 1^^ea1
+ 1^^eb1
+ 1^^ec1
+ 1^^ed1
+ 1^^ee1
+ 1^^ef1
+ %
+ 1^^f01
+ 1^^f11
+ 1^^f21
+ 1^^f31
+ 1^^f41
+ 1^^f51
+ 1^^f61
+ 1^^f71
+ 1^^f81
+ 1^^f91
+ 1^^fa1
+ 1^^fb1
+ 1^^fc1
+ 1^^fd1
+ 1^^fe1
+ 1^^ff1
+ }
+
+ \endgroup
diff --git a/language/typingtex/multicategory.tex b/language/typingtex/multicategory.tex
new file mode 100644
index 0000000000..47b23aabca
--- /dev/null
+++ b/language/typingtex/multicategory.tex
@@ -0,0 +1,682 @@
+ %%%% MultiCat.tex --- Le d'efi de Yannis Delmas-Rigoutsos
+ %% et Daniel Taupin.
+ %% Version alpha.
+ %% Affichage: ftp matups.matups.fr directory TypingTeX.dir.
+ %% Sur la liste GUT <gut@dmi.ens.fr> archiv'ee sur ftp ftp.cicb.fr,
+ %% et suite `a des critiques g'en'e'rales de Yannis, Daniel
+ %% a note (Fri, 11 Jun 1993) que:
+ %% <<\def\truc#1:#2>{....} se plante quand on a mis french
+ %% comme option de style.>>
+ %% Or, french est un logiciel de B. Gaulle qui souvent active
+ %% ; et > . Cette constatation s'applique `a tout logiciel
+ %% qui qui osera faire autant, et il semble que tous les logiciels
+ %% grands et petits qui offrent une typographie francaise
+ %% activent ; : ! ? du moins optionellement. C'est bien le cas de
+ %% fe-Plain de Desarmenien de 1987(?) et ses
+ %% extensions/revisions pour d'autres formats
+ %% fran_cais fournis par format-dumper-cm (ou -ck),
+ %% que j'affiche moi-m^eme sur ftp matups.matups.fr.
+
+ %% Voici tentatives de solutions en 'etat de marche, dont seulement
+ %% celle qui utilise \csname...\endcsname est `a retenir.
+
+ %% J'invite les tous les texperts fran_cais qui sentent
+ %% une m'efiance `a l/'egard de l'activation que je
+ %% pratique de formuler des critiques pr'ecises.
+
+ %% A la fin de ce fichier se trouve des pol'emiques sur l'activation
+ %% pass'ees par Yannis, Daniel ou moi-m^eme sur la liste GUT.
+
+ %% Pour simplifier l/'ecriture des exemples on supposera que
+ %% le macro \truc#1;#2> a le m^eme *effet* qu'un macro
+ %% \Truc#1#2. Ce n'est gu`ere une restriction. En effet,
+ %% \let\oldtruc\truc
+ %% \def\Truc#1#2{\oldtruc#1;#2>}
+ %% semble arranger cela.
+ %%
+ %% On supposera aussi que le \truc de Taupin
+ %% a 'et'e programm'e `a l'origine pour categorie 12
+
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ % -------- couper
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %%%%
+ %%%% (1) Solution de pure politesse
+ %%% --- on avertit l'utilisateur qu'il devra
+ %%% maintenir les s'eparateurs de cat'egorie other
+ \chardef\trucAt\catcode`\@
+ \catcode`\@=11
+ \def\trucms@g{%
+ \immediate\write16{}%
+ \immediate\write16{ *** Sorry, the macro \noexpand\truc requires}%
+ \immediate\write16{ *** both \string; and \string> to have category 12.}%
+ \immediate\write16{ *** Try switching off national typography mechanisms.}%
+ \immediate\write16{ *** Or seek help from a TeX programmer.}%
+ }
+ \newcount\scratch
+ \def\truc#1;#2>{\count255=\catcode`\;%
+ \multiply \count255 by \catcode`\>%
+ \advance\count255 by -144 \multiply \count255 by \count255
+ \ifnum\count255 >\z@
+ \trucms@g
+ \else
+ \Truc{#1}{#2}%
+ \fi}
+
+\catcode`\@=\trucAt
+
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %% Test
+\def\Truc#1#2{[#1][#2]}
+
+\truc aaaaa>>>aa{;}aaaa;{bbbb>>bbbbb}>
+
+\end
+
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ % -------- couper
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %%%%
+ %%%% (2) Solution 'econome *FAUTIVE* (voir remarque (B))
+ %%% --- semble applicable tant que les arguments de \gadget
+ %%% ne contiennent pas les s'eparateurs (entre accolades).
+ %%% Le macro et ses arguments sont prot'eges dans cette
+ %%% version par un groupement TeX.
+
+ \chardef\trucAt\catcode`\@
+ \catcode`\@=11
+
+ \def\truc{\trucA\trucB}
+ \def\trucA{\begingroup\catcode`\;=12\catcode`\>=12}
+ \def\trucB#1#2{\Truc{#1}\Truc{#2}\endgroup}
+
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %% Test
+ \def\Truc#1#2{[#1][#2]}
+
+ \truc aaaaa>>>aa{;}aaaa;{bbbb>>bbbbb}>
+
+ \end
+
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ % -------- couper
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %%%%
+ %%%% (3) Solution 'econome bis *FAUTIVE* (voir remarque (B))
+ %%% --- semble applicable tant que les arguments de \gadget
+ %%% ne contiennent pas les s'eparateurs (entre accolades).
+ %%% Pas de protection par groupement.
+
+ \chardef\trucAt\catcode`\@
+ \catcode`\@=11
+ \chardef\trucscoloncat@
+ \chardef\trucgrcat@
+ \def\truc{\trucA\trucB}
+ \def\trucA{\trucscoloncat@=\the\catcode`\;%
+ \trucgrcat@=\the\catcode`\>
+ \catcode`\;=12\catcode`\>=12
+ \Truc{#1}\Truc{#2}%
+ \catcode`\;=\trucscoloncat@\catcode`\>=\trucgrcat@
+ }
+ \def\trucB#1#2{\Truc{#1}\Truc{#2}\endgroup}
+
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %% Test
+ \def\Truc#1#2{[#1][#2]}
+
+ \truc aaaaa>>>aa{;}aaaa;{bbbb>>bbbbb}>
+
+ \end
+
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ % -------- couper
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %%%%
+ %%%% (4) Solution \csname ... \endcsname
+ %%% --- valable meme si les arguments contiennent les
+ %%% s'eparateurs ; et > (prot'eg'es par accolades TeX).
+ %%% --- une fragilit'e de cette solution est `a remarquer.
+ %%% Les changements de categorie de ; et > (par exemple
+ %%% induits par changement de langue) ne doivent pas
+ %%% intervenir `a l'int'erieur des arguments de macro.
+ %%% Ce probl`eme suggre la politique suivante:
+ %%% Les changements de langue routines ne doivent pas
+ %%% changer la cat'egorie de caract`eres.
+ %%% Le changement de cat'gorie est une affaire de texperts
+ %%% qui sauront le faire au bon endroit, en particulier
+ %%% pas dans l'argument d'un macro.
+ %%% Cette politique est d'ej`a suivi a peu pr`es par les
+ %%% formats fran_cais-anglais g'er'es par format-dumper...
+
+
+\chardef\trucAt\catcode`\@
+\catcode`\@=11
+\let\EX@\expandafter
+\let\@CS\csname\let\E@CS\endcsname
+\begingroup
+\catcode`\;=12\catcode`\>=12
+\EX@\gdef\@CS truc1212\E@CS#1;#2>{\Truc{#1}{#2}}
+\catcode`\;=13\catcode`\>=12
+\EX@\gdef\@CS truc1312\E@CS#1;#2>{\Truc{#1}{#2}}
+\catcode`\;=12\catcode`\>=13
+\EX@\gdef\@CS truc1213\E@CS#1;#2>{\Truc{#1}{#2}}
+\catcode`\;=13\catcode`\>=13
+\EX@\gdef\@CS truc1313\E@CS#1;#2>{\Truc{#1}{#2}}
+\endgroup
+
+ \def\truc{\edef\temp{truc\the\catcode`\;\the\catcode`\>}%
+ \EX@\@CS \temp\E@CS}
+
+\catcode`\@=\trucAt
+
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %% Test
+\def\Truc#1#2{[#1][#2]}
+
+\truc aaaaa>>>aa{;}aaaa;{bbbb>>bbbbb}>
+
+\end
+
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ % -------- couper
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %%%%%%
+ %%%%%% REMARQUES
+ %%%%%%
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+ (A) Chacune solution semble avoir une version robotise' dont le
+syntaxe serait du genre:
+
+ \reconstruct\gadget#1;#2>\endreconstruct
+
+mais la loudreur de ce genre de programmation est un grave d'efaut.
+
+
+ (B) Pi`ege: Savoir au moment de la saisie quelle
+cat'egorie recevera un caract`ere qu'on tape (il re_coit sa cat'egorie une fois pour
+toutes `a l'entr'ee dans TeX) est fort difficile. Par exemple
+
+\long\def\preread#1{#1} \catcode`\;=13 \preread{\gadget xxx ; yyy>}
+
+va faire en sorte que le ; dans xxx ; yyy recoit la categorie 13.
+
+ Ainsi "solutions" (2) et (3) font que d'elimitateur voulu ";" est
+introuvable. Solutions (2) et (3) sont donc s'ereusement compromises.
+
+ La solution (3) est l'eg`erement compromise. Elle ne change pas
+de cat'egories elle m^eme. Mais il ne faut pas que les changements
+de langue changent cat'egorie --- au moins dans des arguments
+de macro. Notons que pour fe-Plain fe-amstex etc. la ponctuation ;
+: ? ! maintient normalement cat'egorie 13 malgr'e les changements
+entre \Francais et \Anglais.
+
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %%%%%%
+ %%%%%% DIVERS POL'EMIQUES SUR L'ACTIVATION
+ %%%%%%
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+ #43 10-JUN-1993 15:10:15.04 NEWMAIL
+From: CCPNGW::"gut-request@nef.ens.fr"
+To: gut@dmi.ens.fr
+CC: delmas@clipper.ens.fr (Yannis Delmas-Rigoutsos)
+Subj: Re: ... (Super (La)ToX en fait...)
+
+[...]
+
+1) Les changements de catcodes posent des proble`mes avec des jeux
+de macros, par exemple pour tout ce qui est trace' de diagrammes
+mathe'matiques. Par exemple pour utiliser XY-Pic je dois rendre normaux
+< et >, d'ou` la ne'cessite' d'avoir:
+ /"<<"/ -> "\\oguill " ++
+ /">>"/ -> "\\fguill " --
+
+1') C'est la me^me raison qui fait que je ne m'amuse surtout pas a`
+ajouter des caracte`res actifs. J'ai ainsi eu a` m'arracher les cheveux
+pour saisir du Grec pour l'annuaire de l'Ecole: comme French.sty e'tait
+installe' il y avait un certain nombre de caracte`res actifs qui
+empe`chaient une ligature normale formant les accents, les esprits,
+ou le iota souscrit. On peut toujours faire un changement de catcodes,
+pour du texte mais c,a devient re'ellement du de'lire quand on doit
+faire cela pour des arguments de macros,... (\truc{\grec >'h}, me^me
+si \grec change les catcodes ne marche pas).
+
+2) Il faut une saisie spe'ciale des espaces devant les ponctuations pour
+contenter french.sty. C'est pre'cise'ment ce que font les re`gles:
+ /"(!"/ -> idem
+ /"~"?!/ -> "~!"
+ /"(?"/ -> idem
+ /"~"?"?"/ -> "~?"
+ /"~"?;/ -> "~;"
+ /"~"?:/ -> "~:"
+
+[...]
+
+ \
+ Yannis Delmas-Rigoutsos \
+ \
+----------------------------------
+
+adresse postale : Ecole Normale Supe'rieure
+ 45, rue d' Ulm
+ 75230, Paris CEDEX 05.
+te'le'phone : [33] (1) 44 32 20 65 (ENS)
+adresses e'lectroniques : delmas@ens.fr,@logique.jussieu.fr,(@FRULM63.bitnet)
+
+----------------------------------
+
+
+ #43 11-JUN-1993 05:45:11.31 NEWMAIL
+From: CCPNGW::"gut-request@nef.ens.fr"
+To: gut@dmi.ens.fr, kris@diku.dk
+CC:
+Subj: Translit&CorToX r'eponses ...
+
+
+[...]
+
+ J'accepte ce que dit ici Yannis en tant que louange de
+vertus de Translit. Quand on construit un pr'eprocesseur on
+essaie naturellement d'en tirer un maxi!
+
+ Mon approbation est pourtant mitig'ee par le constat que
+ces ~ f^achent l'oeil!
+
+ Malheureusement on peut interpreter ces remarques comme une
+requisitoire contre l'exploitation de caract`eres actifs et donc
+contre email-fr. D'accord qu'il faut une longue experience pour
+programmer un caract`ere actif qui se trouve dans le zone ascii;
+mais l'activation (de ;:?!) est une voie que j'emprunte (suivant
+Desarmenien) depuis d'ebut 1989 --- sans le moindre regret;
+l'activation de ` ' et ^ par email-fr ne m'affolle donc pas.
+Quant `a l'utilisateur, en cas de difficult'e, il d'esactive
+automatiquement en 'eteignant localement email-fr. Si on signale
+clairement `a un programmeur, comme K. Rose, auteur de xy-pict,
+que < et > etc. risquent d'etre actifs il pourra arranger ses
+macros pour les rendre *indiff'erentes* `a l'activation de < >
+etc. Dans le cas des formats pr'eexistants l'indiff'erence `a
+l'activation bien connu de ;:?! est r'ealise'e par de petits
+patchs (dus a Spivak et/ou moi-m^eme) lesquels se trouvent dans
+fe-format-dumper sur ftp matups.matups.fr. Et naturellement je
+crois tr`es fort `a ce que les prochaines versions de ces
+formats incorporent de tels patchs pour 'eliminer d'avance tout
+probl`eme.
+
+ Les plusieurs probl`emes d'activation que Yannis cite ont
+tous des solutions satisfaisantes, dont plusieurs ont d'ej`a
+'et'e mentionn'es sur cette liste. Me contacter pour des
+probl`emes sp'ecifiques, surtout en ce qui concerne email-fr ou
+(affaire en principe totalement disjointe!!) fe-format-dumper.
+D'ailleurs ce dernier contient une discussion utile sous forme de
+remarques. (On y trouve provisoirement amstexfr.sty qui permet
+l'activation de ;:?! pour AmSLaTeX; ce fichier appelle
+amstex.sty et ajoute un petit patch.)
+
+[...]
+
+ Laurent S
+
+From: CCPNGW::"gut-request@nef.ens.fr"
+To: gut@dmi.ens.fr
+CC: delmas@dmi.ens.fr (Yannis Delmas-Rigoutsos)
+Subj: French et caracteres actifs
+
+
+Bon, je ne vais pas parler de Translit & al. mais je vais (re)-soulever
+un point e'voque' par la discussion et qui concerne beaucoup de gens.
+
+Il s'agit d'un re'quisitoire contre l'activation des lettres,...
+
+Je me contenterais de poser un petit proble`me dont j'attends qu'on me
+propose une solution e'le'gante, e'ventuellement simple.
+
+a* French est PEUT-ETRE utilise' (on ne sait pas a` priori)
+b* on veut utiliser du grec, qui est appele' par \grec
+b'* d'autres langues peuvent s'ajouter arbitrairement
+ (j'utilise \viet et \russe)
+c* les divers e'le'ments (franc,ais, grecs et autres langues)
+ sont employe's comme arguments de macros.
+
+
+Les deux seules solutions que j'ai trouve' sont:
+
+1) on teste l'existence de la macros de french desactivant ce qui
+doit l'e^tre ou on de'sactive soi-me^me.
+
+-> proble`me: le point *c* n'est pas respecte'
+
+2) on defini <, > et e'ventuellement | comme valant la chai^ne les
+repre'sentant.
+
+-> proble`me: French peut changer, d'autres caracte`res actifs peuvent
+ e^tre ajoute's, au besoin en concurenc,ant les de'finitions
+ de French.
+
+2') on rede'fini tous les caracte`res actifs comme valant leur chai^ne
+naturelle.
+
+-> proble`me: ine'le'gant.
+
+
+Le gros proble`me de French, de ce point de vue, est qu'il fait
+tre`s salement ses de'finitions au niveau du \begin{document}.
+Autrement dit, on ne peut pas utiliser un style ne serait-ce
+que pour choisir des options de French. Sauf, bien entendu, a`
+rede'finir, comme French, la macro \document.
+
+Il n'est pas rare, ainsi, de voir dans mes fichiers de style:
+ \let\french@orig@begindocument=\document
+ \def\document{%
+ \french@orig@begindocument%
+ ...mes options...%
+ }
+
+J'en arrive donc a` ma grosse critique: les caracte`res actifs de French
+ne sont qu'une partie de l'iceberg, son GROS proble`me est de ne
+pas e^tre modulaire. French croit toujours qu'il est tout seul:
+de`s qu'il s'agit de faire des maths ou d'autres langues, c'est tre`s
+ge^nant (on ne peut pas modifier tous les jeux de macros qu'on rec,oit!).
+
+Voila, sinon French est tre`s bien.
+
+ Y
+
+__________________________________
+ \
+ Yannis Delmas-Rigoutsos \
+ \
+----------------------------------
+
+adresse postale : Ecole Normale Supe'rieure
+ 45, rue d' Ulm
+ 75230, Paris CEDEX 05.
+te'le'phone : [33] (1) 44 32 20 65 (Ecole), 47 46 96 41 (pers.)
+adresses e'lectroniques : delmas@ens.fr,@logique.jussieu.fr,(@FRULM63.bitnet)
+
+----------------------------------
+
+ #45 11-JUN-1993 14:33:09.44 NEWMAIL
+From: CCPNGW::"gut-request@nef.ens.fr"
+To: GUT@nef.ens.fr
+CC:
+Subj: RE: French et caracteres actifs
+
+Avis partage par DT quant a la non-modularite de French.
+
+Et les caracteres actifs ne peuvent plus etre utilises comme delimiteurs
+de procedures, ex:
+
+\def\truc#1:#2>{....} se plante quand on a mis french comme
+option de style. De meme, \write\xxx{ choses : machins }
+insere des \relac et des \penalty dans le fichier de sortie.
+Et quand on utilise TeX pour ecrire du metafont a usage ulterieur,
+c'est epouivantable (bien que contournable par essais
+et erreurs).
+
+Toutefois, \nofrenchtypography annule pas mal de catcodes actifs.
+(mais attention: les catcodes ne sont pas digeres au meme niveau
+que les macros !
+
+
+================== RFC 822 Headers ==================
+Received: by nef.ens.fr (5.65c8/ULM-1.0)
+Message-Id: <199306111224.AA29674@nef.ens.fr>
+Received: by nef.ens.fr (5.65c8/ULM-1.0)
+Received-Date: Fri, 11 Jun 1993 14:24:35 +0200
+Date: 11 JUN 93 14:28:34.28-GMT
+Errors-To: listman@nef.ens.fr
+Reply-To: GUT Distribution List <gut@dmi.ens.fr>
+X-Sequence: 77
+
+
+ #42 14-JUN-1993 03:36:16.19 NEWMAIL
+From: CCPNGW::"gut-request@nef.ens.fr"
+To: gut@dmi.ens.fr
+CC:
+Subj: activons-nous!
+
+
+ ***** activons-nous! *****
+
+ Craindre des caract`eres actifs est absurde, car on
+se nierait ainsi la pleine puissance du concept de macro
+qui est la fondation m^eme du langage TeX. Les texperts
+doivent remplacer leur peur par une combinaison de
+savoir, diligence, et prudence!
+
+ Yannis Delmas-Rigoutsos a r'ecemment remis
+l'activation en cause:
+
+ YDR> Je me contenterais de poser un petit proble`me dont
+ YDR> j'attends qu'on me propose une solution e'le'gante
+
+Mais il me semble que Yannis ne donne que des *solutions*
+en vrac `a des probl`emes non-sp'ecifi'es d'activation!
+Heureusement, Daniel Taupin offre ensuite deux probl`emes
+typiques et concr^ets qui surgissent quand : et >
+changent de cat'egorie entre 12 (=other la valeur le plus
+usit'ee) et 13 (=active, la valeur qui accorde le statut de
+macro).
+
+ DT> \def\truc#1:#2>{....} se plante quand on a mis french
+ DT> comme option de style.
+
+ DT> \write\xxx{ choses : machins } insere des [...] dans
+ DT> le fichier de sortie.
+
+Le deuxi`eme probl`eme est joliment r'esolu par le macro
+"inexpanded write" qui fut trouv'ee juste `a temps pour
+LaTeX 3.
+
+Pour le probl`eme de \truc, il y a une solution tr`es
+robuste. Il y plusieurs versions d'un tel macro \trucother
+\trucfrench, etc. --- chacune cuisin'ee par la m^me
+recette mais dans les conditions de cat'egorie
+appropri'ees. Ensuite le changement vers french doit
+s'electionner la bonne version, soit par \let
+\truc=\trucfrench. L'avantage est que #1 peut ^etre
+{...>...:...}.[Plus loin une petite fragilit'e va
+appara^itre, voir 17juin.]
+
+ Mais le d'efaut est que l'option french doit d'avance
+connaitre \truc. C'est raisonable pour un \truc de LaTeX
+ou amstex (de tels \truc's sont rares), mais parfaitement
+d'eraisonable pour un \truc de xy-pic.
+
+ Kristoffer Rose, l'auteur de xy-pic sera donc
+contraint `a utiliser d'autres id'ees pour ses \truc's `a
+lui, dont certaines que Yannis a mentionne'es. Par exemple
+\truc peut avoir l'expansion \trucA\trucB o`u \trucA donne
+cat'egorie 12 (other) `a : et > et m'emorise les
+cat'egories ant'erieures ('eventuellemnt par simple
+groupement). Ensuite \trucB a le syntaxe "apparante" de
+\truc mais les : et > sont de cat 12 (other); les
+cat'egories d'origine de : et > seront restaur'es `a la
+sortie. D'efaut-- : et > seront de cat'egorie other dans
+les arguments #1 et #2. [Cette solution a une faute
+fatale voir 17juin.]
+
+ Il y a bien d'autres d'astuces; je suis s^ur que
+j'en ignore certaines!
+
+ On fr^ole ici des limites arbitraires de TeX. En
+effet, un TeX 'etendu pourrait facilement r'esoudre
+d'efinitivement le probl`me \truc (sans laisser de
+d'efaut r'esiduel), en introduisant des "token classes"
+comme param`etres de macros. Les classes en question ici
+sont: "character token of ascii code `\:" et "character
+token of ascii code `\>". La variabilit'e de cat'egorie
+permise serait limit'ee par le programmeur, normalement `a
+12 et 13.
+
+ Les utilisateurs fran_cais de TeX se doivent de
+constituer un lobby vigoureux aupr`es des programmeurs
+pour assurer que les logiciels TeX supportent bien les
+changements de cat'egorie qui s'av`erent utiles en France.
+Commen_cons par l'AmS et continuons avec les individus de
+bonne volont'e comme Kristoffer Rose!
+
+ Laurent S
+
+
+
+Date: 14 Jun 93 13:28:29+0200
+From: TAUPIN@FRUPS51.bitnet
+Message-ID: <199306141106.AA21115@nef.ens.fr>
+Subject: RE: activons-nous!
+To: GUT@nef.ens.fr
+Reply-To: GUT Distribution List <gut@dmi.ens.fr>
+Received-Date: Mon, 14 Jun 1993 13:06:22 +0200
+Errors-To: listman@nef.ens.fr
+X-Sequence: 85
+Status: R
+
+Activer d'autres caracteres que ceux de plain.tex ou latex est aussi
+prudent que de construire SON installation electrique en 154volts et 277 Hertz.
+
+Ok dans une ile deserte, mais sinon on a des emmerdes epouvantables des qu'on
+veut utiliser ou transmettre des TeXtes a l'exterieur.
+
+En effet l'activation des caracteres se produit a l'entree et un caractere
+actif le reste meme dans une macro ou on a change son \catcode.
+
+Donc un principe: redefinir des MACROS est inoffensif, ou redefinir les macros
+de caracteres originellwement actifs. En revanche, activer ou desactiver
+des caracteres conduit a dix fois plus de desastres que ca ne cree d'avantages.
+
+Je pense en particulier aux pbs de french.sty quand on veut l'utiliser
+avec d'autres logiciels avec lesquels il n'a pas ete teste (y compris
+les logiciels et macros maison).
+
+
+Date: 15 Jun 93 00:32:08+0200
+From: Larry Siebenmann <ls@mathp7.jussieu.fr>
+Message-ID: <9306142211.AA00809@frmap711.mathp7.jussieu.fr>
+To: gut@dmi.ens.fr,
+ kris@diku.dk
+Subject: Macros multivoltage
+Reply-To: GUT Distribution List <gut@dmi.ens.fr>
+Received-Date: Tue, 15 Jun 1993 00:10:07 +0200
+Errors-To: listman@nef.ens.fr
+X-Sequence: 87
+Status: RO
+
+
+ ****** Macros multivoltage ******
+
+ L'anologie de Daniel Taupin entre categorie TeX et
+tension de courant secteur n/est pas mal au fond. Les
+emmerdements de tension, surtout dues aux normes divergentes
+120Volts (USA) et 220Volts (Europe) sont r'eels et actuels.
+J'ai travers'e l'Atlantique `a plusieurs reprises avec un petit
+Macintosh 220Volts et j'ai du acheter en catastrophe des
+transfos ou ouvrir le Mac pour changer un contact sur la carte
+d'alimentation. Pour tout dire j'ai aussi p'et'e quelques
+fusibles. Mais tout ca c/est FINI depuis quelques ann'ees, car
+Apple s/est reconnu fabricant INTERNATIONAL et fabrique
+dor'enavant des micros MULTIVOLTAGE et d'ailleurs
+multifr'equence!
+
+ Est-ce donc ridicule de demander que les logiciels TeX
+soient adapt'es `a bien supporter le changement de cat'egorie
+entre 12 et 13 pour les charact`eres ;:?! etc. qu'on a envie
+d'activer en Europe? Pour chaque logiciel TeX (AmSTeX par exemple
+ou xy-pic) il s'agit d'une r'evision peu couteuse en temps ---
+donn'ee la texnologie dont on dispose en 1993.
+
+ Comme j'ai d'ej`a dit, il suffit d'avoir la clairvoyance
+de demander ces petits changements --- question d'^etre un
+groupe d'utilisateurs de TeX suffisamment organis'es pour se faire
+entendre!
+
+ La pol'emique de Taupin contre l'activation termine sur
+une affirmation assez sp'ecifique:
+
+ > En revanche, activer ou d'esactiver des caracteres conduit
+ > a dix fois plus de desastres que ca ne cree d'avantages.
+
+ > Je pense en particulier aux pbs de french.sty quand on veut
+ > l'utiliser avec d'autres logiciels avec lesquels il n'a pas
+ > ete teste (y compris les logiciels et macros maison).
+
+Bon, si on suit mes conseils, il restrera quelques d'esastres
+quand on utilisera des jeux de macros "maison" c/est-`a-dire de
+la main d'amateurs inconscients. Grande prudence donc en Europe
+avec de tels logiciels jusqu'au jour o`u leur bonne tenue est
+verifi'ee! Entretemps, on peut 'eteindre l'activation quand il
+faut, ou 'eviter ce jeu l`a, ou encore demander `a un texpert de
+"patcher". Il serait bon que les programmeurs affichent leurs
+tolerances `a cet egard, par exemple:
+
+ %% The macros of this package tolerate category 12 OR 13
+ %% for the ascii characters : ; ? ! < > ` ' " ^
+ %% See TUG recommendations of 199X, ...
+
+aussi bien que leurs exigeances.
+
+ J'estime que Taupin recommande une voie sans activation
+qui m`ene l/Europe vers des environements de saisie barbares
+offrant une qualit'e typographique m'ediocre. Si par exemple on
+se d'ecide `a taper ~: ~; ~? ~! pour 'eviter d'activer : ; ? !
+la saisie est d'esagr'eable `a ex'ecuter, d'esagr'eable `a
+relire, et probablement charg'ee de fautes car on oublie
+fatalement quelques ~!
+
+ Si Daniel! --- l'activation rapporte d/'ej`a plus qu'elle ne
+co^ute; et si GUT se mobilise le bilan sera enti`erement
+positif.
+
+ Laurent S
+
+
+PS pour Jacques Andr'e: Par la m^eme logique je suis `a priori
+tout `a fait pour une norme `a huit bits pour le courrier
+'electronique comportant les lettres fran_caises accentu'ees.
+Mais il faut de me convaincre qu'il s'agit d'une possiblilit'e
+r'ealisable!
+
+Date: 15 Jun 93 12:10:08+0200
+From: TAUPIN@FRUPS51.bitnet
+Message-ID: <199306150948.AA03485@nef.ens.fr>
+Subject: RE: Macros multivoltage
+To: GUT@nef.ens.fr
+Reply-To: GUT Distribution List <gut@dmi.ens.fr>
+Received-Date: Tue, 15 Jun 1993 11:48:01 +0200
+Errors-To: listman@nef.ens.fr
+X-Sequence: 88
+Status: RO
+
+Activation: A moins d'etre introduite en des endroits definis au micron
+pres et avec des precautions exorbitantes, la macro:
+
+\def\truc#1:#2;{....} se plante avec french.sty, et marche sans.
+
+En outre: \write\xxx{mon baratin ; } insere un \relax avant le
+point-virgule avec french. On peut y remedier en definissant la macro
+qui fait le wrirte avant l'entree en scene de french, sans doute avant
+le \begin{document} (ce qui est streng verboten en principe). Or ceci
+cree des katastrofes si le texte ecrit est destine a etre compile
+ulterieurement en Pascal iou en Metafont !
+
+Je dis que si on veut un ; avec un comportement different, il ne faut
+pas activer le ; mais definit une macro comme \; !
+
+Pour la saisie des messages, tu auras raison quand tu aura contraint -
+le kalachnikoff dans le dos - MS-DOS a utiliser ISO-Latin1 au lieu de
+850, idem pour les Mac's. C'est pas piour demain. Sinon, navre, il n'y a
+que les caracteres codes de 32 a 126 qui soient portables!
+
+
+
+
diff --git a/language/typingtex/tally.sty b/language/typingtex/tally.sty
new file mode 100644
index 0000000000..657eb964e0
--- /dev/null
+++ b/language/typingtex/tally.sty
@@ -0,0 +1,874 @@
+%%%% TITLE: TALLY.STY, Laurent Siebenmann 5-93, alpha version
+ %%% --- a portable TeX tool for counting
+ %%% paragraphs, lines, words, syllables, letters
+ %%% MASTER POSTING: ftp matups.matups.fr in directory TeX/TeXTyping
+ %%% BUGS: To lcs@matups.matups.fr
+ %%% DOCUMENTATION: below, with more after \endinput
+ %%%
+ %%% SYNTAX : e.g. for word count
+ %%% \WordCount <text>\endWordCount, OR, for LaTeX (only),
+ %%% \begin{WordCount}<text>\end{WordCount}
+ %%%
+ %%% FUNCTION: Tells number of words (etc) in the <text> by
+ %%% switching to a simple one-syllable-per-page style and
+ %%% counting calls to a degenerate output routine.
+ %%%
+ %%% FEATURES
+ %%% Hopefully for all formats.
+ %%% Portable: uses TeX3.xx, nothing more (\LetterCount excepted)
+ %%% Extras:
+ %%% \LineCount <text>\endLineCount %% counts lines
+ %%% \SyllableCount <text>\endSyllableCount %% counts syllables
+ %%% \LetterCount <text>\endLetterCount
+ %%% Counts letters (and digits).
+ %%% It requires special format (see after \endinput).
+ %%% \AllCounts <text>\endLetterCount gives all 4.
+ %%% \AllCounts+ <text>\endLetterCount
+ %%% All 4 with math, punctuation, paragraph suppression
+ %%% plus deductions. Slow. LaTeX syntax is not available.
+ %%%
+ %%% ADVICE AND CAUTIONS:
+ %%% --- The <text> should contain the whole of
+ %%% any group environment etc. that it meets.
+ %%% --- Learn what "word" means in practice.
+ %%% "Jean-Pierre" is two words; J.~Bond is one.
+ %%% \centerline{Bla bla bla ...} is one, as are
+ %%% $<math>$ and $$<display>$$ and \hbox{<text>}
+ %%% and \vbox{<text>}. A texpert can change this somewhat.
+ %%% --- \WordCount <text>\endWordCount
+ %%% will crudely rip <text> from your document, so
+ %%% comment out "\WordCount" and "\endWordCount" etc.
+ %%% in production runs.
+ %%% --- To conserve TeX capacity when counts are not in use
+ %%% also comment out the input command for tally.sty.
+
+ %%%% Prelims:
+ \ifx\undefined\WordCountAt
+ \else
+ \def\temp{\immediate\write16{}\immediate\write16{%
+ tally.sty already loaded\string!}\endinput}
+ \expandafter\temp
+ \fi
+ %
+ \chardef\WordCountAt=\catcode`\@
+ \catcode`\@=11
+
+ %%temporarily suppress Plain's logging of allocations
+ \let\TY@wlog\wlog
+ \def\wlog#1{\relax}
+
+ %
+ %%% \LE for letter counts.
+ %% Syntax \begingroup \LE <text> \endgroup please!
+ %% Makes 0--9 and = counted letters. Nearly Pascal convention!
+ %% Other punctuation not.
+ \def\LE{%
+ \ifx\undefined\l@LE
+ \immediate\write16{}%
+ \immediate\write16{ \string!\string!\string!
+ Correct LetterCount requires special patterns.}
+ \immediate\write16{ \string!\string!\string!
+ See tally.sty internal documentation.}%
+ \else
+ \language=\l@LE
+ \lefthyphenmin=0
+ \righthyphenmin=0
+ \lccode`0=`0
+ \lccode`1=`1
+ \lccode`2=`2
+ \lccode`3=`3
+ \lccode`4=`4
+ \lccode`5=`5
+ \lccode`6=`6
+ \lccode`7=`7
+ \lccode`8=`8
+ \lccode`9=`9
+ \lccode`==`=
+ \fi
+ }
+
+ \def\QuietCounts{\let\CountPause\relax}
+ \let\CountPause\show
+
+ %% Conserve count registers by local use.
+ \countdef\TY@cnt=190
+ \countdef\TY@lefthyphenmin=195
+ \countdef\TY@righthyphenmin=196
+ \countdef\TY@cnti=200
+ \countdef\TY@cntii=201
+ \countdef\TY@accentcnt=202
+ \countdef\TY@Lettercnt=203
+ \countdef\TY@Syllablecnt=204
+ \countdef\TY@Wordcnt=205
+ \countdef\TY@Linecnt=206
+ \countdef\TY@Parcnt=207
+ \countdef\TY@SyllableLen=208
+ \countdef\TY@Gaps=209
+ \countdef\TY@LLcnt=210
+
+ %% Conserve dimen registers by local use
+ \dimendef\TY@hsize=200
+ \dimendef\TY@everypar=201
+ \dimendef\TY@baselineskip=202
+ \dimendef\TY@lineskiplimit=203
+ \dimendef\TY@parskip=204
+ \dimendef\TY@ChWd=205
+
+ %%%% Gen@Count: the main macro.
+ %% will always be surrounded by grouping
+ \def\Gen@Count{%
+ %%% Start
+ \vfil\par\break\let\Gen@Count\undefined
+ \let\endGen@Count\endGen@@Count
+ %%% Impose a suitable language
+ \SetTY@language
+ %%% Horizontal changes
+ \SetTY@everypar
+ \SetTY@hsize
+ \hbadness=10000
+ \hfuzz=\maxdimen
+ %\pretolerance=100000 %% Alas no effect!
+ %%% Vertical changes
+ \topskip=0pt plus \vsize
+ \baselineskip=\vsize\relax
+ %%% Output changes
+ \maxdeadcycles=2000000000 %% two billion words at most!
+ \csname output\endcsname{\global\setbox255=\box\voidb@x}%
+ %%% Initialize
+ \deadcycles=0}
+
+ \def\endGen@@Count{%% defined \endGen@Count in time
+ \vfil\par\break
+ \errorcontextlines=0
+ \immediate\write16{\space
+ *** \Count@Mode\space= \the\deadcycles\space\TY@Msg}%
+ \CountPause\CountPause %% gives pause
+ \global\TY@cnt=\deadcycles
+ \deadcycles=0}
+
+ %%% Some defaults
+ \def\TY@Msg{(starting at input line \the\inputlineno) ***}%
+ \def\SetTY@hsize{\hsize=\z@\relax
+ \let\hsize\TY@hsize} %% uproot!
+ \def\SetTY@language{}%
+ \def\SetTY@everypar{\everypar\expandafter{\the\everypar\ }
+ %% "\ " is glue allowing hyphenation of 1st word
+ \let\everypar\TY@everypar %% uproot!
+ }
+
+ \def\TY@Safe@Acc#1#2{%
+ \if i#2%
+ #2\csname @#1@\endcsname \i
+ \else
+ #2\csname @#1@\endcsname #2\empty
+ \fi}
+
+ %\def \TY@CaesarFix{%
+ % \ifx\@Acc\Safe@Acc\let\@Acc\TY@Safe@Acc\fi
+ % \let\Safe@Acc\TY@Safe@Acc
+ % \JDaccents\let\noJDaccents\relax}
+
+ \def \TY@CaesarFix{%
+ \ifx\JDaccents\undefined
+ \else \DSaccents\fi}
+
+%%% \LetterCount:
+ \def\LetterCount{\begingroup
+ \TY@CaesarFix %% fixes CaesarXX and HyAcc-CM
+ \let\accent\TY@accentcnt %% fixes Knuth
+ \def\Count@Mode{LetterCount}%
+ \def\SetTY@language{%
+ \LE %% then uproot various things in it
+ \let\lefthyphenmin\TY@lefthyphenmin
+ %% uproot \lefthyphenmin
+ \let\righthyphenmin\TY@righthyphenmin
+ %% uproot \righthyphenmin
+ \let\language\TY@language
+ }%
+ \Gen@Count}
+ %
+ \def\endLetterCount{\endGen@Count\endgroup}
+
+ %%% \SyllableCount: Simple!
+ \def\SyllableCount{\begingroup
+ \def\Count@Mode{SyllableCount}%
+ \Gen@Count} %% language variation OK!?
+ \def\endSyllableCount{\endGen@Count\endgroup}
+
+ \newlanguage\l@Unitas
+ %% hopefully saves time?
+
+ %%% \WordCount:
+ \def\WordCount{\begingroup
+ \def\Count@Mode{WordCount}%
+ \def\SetTY@language{\language=\l@Unitas
+ \lefthyphenmin=10000 %% enough to stop hyphenation
+ \let\lefthyphenmin\TY@lefthyphenmin %% uproot!
+ \let\language\TY@language %% uproot!
+ }
+ \Gen@Count}
+ \def\endWordCount{\endGen@Count\endgroup}
+
+ %%% \LineCount: Simple!
+ \def\LineCount{\begingroup
+ \def\Count@Mode{LineCount}%
+ \def\SetTY@hsize{}%
+ \Gen@Count}
+ \def\endLineCount{\endGen@Count\endgroup}
+
+ %%% \ParCount:
+ \def\ParCount{\begingroup
+ \def\Count@Mode{ParCount}%
+ \hsize=.5\maxdimen
+ \baselineskip=\z@
+ \let\baselineskip\TY@baselineskip %% uproot
+ \lineskiplimit=-\maxdimen
+ \let\lineskiplimit\TY@lineskiplimit %% uproot
+ \parskip=2\vsize
+ \let\parskip\TY@parskip %% uproot
+ \Gen@Count}
+ \def\endParCount{\endGen@Count\endgroup}
+
+ \def\kill@punct{%
+ \catcode`\.=10
+ \catcode`\,=10
+ \catcode`\;=10
+ \catcode`\:=10
+ \catcode`\!=10
+ \catcode`\?=10
+ }
+ \def\kill@math#1${$\ignorespaces}
+ \def\kill@display#1$${$$}
+ \def\kill@par{\catcode"D=10\relax}
+
+ %%% \AllCounts
+
+ \def\AllCountsPlus@Extras{%
+ %%% Mean syllable length
+ \TY@cnti=\TY@Lettercnt
+ \multiply\TY@cnti by 10
+ \divide\TY@cnti by \TY@Syllablecnt
+ \immediate\write16{}%
+ \immediate\write16{ ***
+ Mean syllable length = \the\TY@cnti\space char tenths}%
+ \TY@SyllableLen=\TY@cnti
+ %%% Mean word length
+ \TY@cnti=\TY@Lettercnt
+ \multiply\TY@cnti by 10
+ \divide\TY@cnti by \TY@Wordcnt
+ \immediate\write16{ ***
+ Mean word length = \the\TY@cnti\space char tenths}%
+ %%% Interword spaces per line
+ \TY@cnti=\TY@Wordcnt\relax\count255=10
+ \multiply\TY@cnti by \count255
+ \divide\TY@cnti by \TY@Linecnt
+ \multiply \count255 by -1
+ \advance\TY@cnti by \count255
+ \immediate\write16{ ***
+ Interword spaces per line = \the\TY@cnti\space tenths}%
+ \TY@Gaps=\TY@cnti
+ %%% Mean line length
+ \TY@cnti=\TY@Lettercnt\relax \TY@cntii=\TY@Gaps\relax
+ \divide\TY@cnti by \TY@Linecnt
+ \TY@cnt=5\relax\advance\TY@cntii by \TY@cnt\relax
+ \TY@cnt=10\relax\divide\TY@cntii by \TY@cnt\relax
+ \advance\TY@cnti by \TY@cntii\relax\TY@LLcnt=\TY@cnti
+ \immediate\write16{ ***
+ Mean line length = \the\TY@LLcnt\space chars}%
+ %%% Mean character width
+ \TY@cnti=\TY@LLcnt\relax\dimen8=\hsize
+ \divide\dimen8 by \TY@cnti\relax\TY@ChWd=\dimen8\relax
+ \immediate\write16{ ***
+ Mean character width = \the\TY@ChWd\space (for \string\rm)}%
+ \multiply\dimen8 by \TY@SyllableLen\relax
+ \TY@cnti=10\relax\divide \dimen8 by \TY@cnti \relax
+ \immediate\write16{ ***** Suggested \string\emergencystretch
+ \space= \the\dimen8}%
+ %%% Strain per interword space
+ \TY@cnti=\TY@SyllableLen\relax
+ \TY@cnt=50
+ \multiply \TY@cnti by \TY@cnt
+ \ifnum\TY@Gaps>0\relax\divide\TY@cnti by \TY@Gaps\relax
+ \else\TY@cnti=10000\relax
+ \fi
+ \immediate\write16{ *** Strain per interword space =
+ \the\TY@cnti\space char hundredths}%
+ %%% Badness of mean interword strain
+ \multiply \TY@ChWd by \TY@cnti
+ \rm\dimen0=\fontdimen3\font\relax
+ \divide\TY@ChWd by \dimen0
+ \TY@cnt=\TY@ChWd\relax \TY@cntii=100
+ \multiply\TY@cnt by \TY@ChWd\relax\divide\TY@cnt by \TY@cntii
+ \multiply\TY@cnt by \TY@ChWd\relax\divide\TY@cnt by \TY@cntii
+ \immediate\write16{ *** Badness of mean interword strain
+ (for \string\rm) \the\TY@cnt}%
+ \TY@cntii=8 \multiply \TY@cnt by \TY@cntii\relax\TY@cnti=100
+ \ifnum\TY@cnt<\TY@cnti\relax\TY@cnt=100\fi
+ \immediate\write16{ ***** Suggested \string\hbadness \space
+ = \the\TY@cnt\space for present \string\hsize=\the\hsize}%
+ \immediate\write16{}%
+ }
+
+ \def\AllCountsPlus{\begingroup
+ \kill@punct
+ \parindent=\z@\kill@par
+ \everymath{\kill@math}%
+ \everydisplay{\kill@display}%
+ \let\AllCounts@Extras\AllCountsPlus@Extras
+ \immediate\write16{ **** AllCounts+ starting at
+ input line \the\inputlineno \space ***** }%
+ \AllCounts@\gobble
+ }
+
+ \def\gobble#1{}
+ \def\AllCounts@Extras{} %% default
+
+ \def\AllCounts{\futurelet\next\AllCountsMole}
+
+ \def\AllCountsMole{\ifx\next+\expandafter\AllCountsPlus
+ \else\begingroup\expandafter\AllCounts@\fi}
+
+ \long\def\AllCounts@#1\endAllCounts{%
+ \def\CountPause{}%
+ \def\TY@Msg{***}%
+ \immediate\write16{}%
+ \LetterCount#1\endLetterCount
+ \TY@Lettercnt=\TY@cnt
+ \SyllableCount#1\endSyllableCount
+ \TY@Syllablecnt=\TY@cnt
+ \WordCount#1\endWordCount
+ \TY@Wordcnt=\TY@cnt
+ \LineCount#1\endLineCount
+ \TY@Linecnt=\TY@cnt
+ \ParCount#1\endParCount
+ \TY@Parcnt=\TY@cnt
+ \AllCounts@Extras
+ \endgroup
+ \CountPause\CountPause
+ }
+
+ \let\wlog\TY@wlog
+ \catcode`\@=\WordCountAt
+
+ \endinput
+
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %%% Simple test
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+ %\documentstyle{article} %% for LaTeX
+ %\begin{document} %% for LaTeX
+ %\input tally.sty %% for Plain and her children
+
+
+ aaaaaaaaaaaaaaaaaaaaaaaa
+
+\def\Hii{Hi! Hi! Hi! Hi!
+ %\footnote{*}{Foot foot foot}
+ Hi! Hi! Hi! Hi! Hi! Hi!
+ $x=y=z<yt$
+Frederico Frederico!\ }
+
+\Hii
+
+\SyllableCount
+
+Jean-Pierre approaches.%\showhyphens{approaches}
+
+$$x=y=z<yt$$
+
+\endSyllableCount
+
+\LetterCount
+
+Jean-Pierre approaches.%\showhyphens{approaches}
+
+$$x=y=z<yt$$
+
+\endLetterCount
+
+\LineCount
+Hi! Hi! Hi! Hi! Hi! Hi! Hi! Hi! Hi! Hi!
+Hi! Hi! Hi! Hi! Hi! Hi! Hi! Hi! Hi! Hi!
+Hi! Hi! Hi! Hi! Hi! Hi! Hi! Hi! Hi! Hi!
+Hi! Hi! Hi! Hi! Hi! Hi! Hi! Hi! Hi! Hi!
+Hi! Hi! Hi! Hi! Hi! Hi! Hi! Hi! Hi! Hi!
+Hi! Hi! Hi! Hi! Hi! Hi! Hi! Hi! Hi! Hi!
+Hi! Hi! Hi! Hi! Hi! Hi! Hi! Hi! Hi! Hi!
+Hi! Hi! Hi! Hi! Hi! Hi! Hi! Hi! Hi! Hi!
+Hi! Hi! Hi! Hi! Hi! Hi! Hi! Hi! Hi! Hi!
+Hi! Hi! Hi! Hi! Hi! Hi! Hi! Hi! Hi! Hi!
+\endLineCount
+
+\AllCounts+
+ %\def\insert#1{\ }
+ \Hii \Hii \Hii \Hii \Hii
+\endAllCounts
+
+
+zzzzzzzzzzzzzzzzzzzzzzzzzz
+
+ \end{document} %% for LaTeX
+
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+PUBLICITY FOR tally.sty: revised from TeX-Euro list May 1993
+ ---tex-euro@dhdurz1.bitnet of listserv@dhdurz1.bitnet
+
+
+ **** TEX COUNTS LINES WORDS SYLABLES LETTERS ****
+
+ Manuel Carriba (M.Carriba@dcs.shef.ac.uk) asked:
+
+ > ... I would like to know if there is a possibility to
+ > count the words in a LaTeX document...
+
+ Philip Taylor, RHBNC <P.Taylor@Vax.Rhbnc.ac.uk> replied:
+
+ > Use DVIspell from the emTeX suite [of E. Mattes], then
+ > count the resulting words using your favourite word counter.
+
+DVIspell is one of the recent miracles of TeX; it requires
+careful parsing of the .dvi file.
+
+ Yannis Haralambous <yannis@gat.citilille.fr> suggested
+what is potentially an ad hoc simplification:
+
+ > A weird answer (which could very well fit in a Lovecraft
+ > novel):...
+ > PS. if anyone ever tries this method, let me know please
+
+Yannis' idea is to use <beginning-of-word mark> and
+ligature/kerning to insert a tagging character to mark each
+beginning-of-word in the .dvi file.
+
+ As neither solution is very portable, I wish to propose
+a completely portable solution tally.sty based on TeX's
+line-breaking and \output.
+
+ tally.sty also provides paragraph counts, line counts
+syllable counts, and letter counts. The syllable counts are
+*not* available via tools based on the ".dvi" file. The full
+spectrum of counts help one evaluate and tune hyphenation
+performance, so several relevant auxiliary calculations are made.
+
+ I have a feeling this is a genuinely useful gadget.
+Enjoy!
+
+ Laurent Siebenmann <lcs@matups.matups.fr>
+
+
+Notes.
+
+ (i) tally.sty bore the name wordcnt.sty for the first
+ few weeks of its existence.
+
+ (ii) The present name tally.sty comes from Latin talea for
+stick. Notched sticks were used for counting and accounting;
+lengthwise splitting of the notched stick provided "carbon"
+copies.
+
+
+
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+ **** SPECIAL FORMAT COMPILATION FOR LETTER COUNTING ****
+
+ The letter counting macro
+
+ \LetterCount <text> \endLetterCount
+
+requires the special language LE in which each LEtter and
+each digit is a syllable. You have to add it at format
+compilation time with INITEX. Near where other hyphenation
+files are \input, it should suffice to add to your INITEX
+script the three lines:
+
+ \newlanguage\l@LE
+ \language=\l@LE
+ \input lehyphen.tex %% a very small patterns file
+ %% appended to this file
+
+The crudest way is to add these lines to plain.tex after:
+
+ input hyphen.tex
+
+Since the LE compiled hyphenation patterns are tiny (280
+bytes), it is perfectly reasonable to incorporate them into
+standard formats.
+
+ In case the LE patterns are needed but *not* present,
+tally.sty will issue a warning message.
+
+
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+ **** \AllCounts+ used to evaluate
+ and tune hyphenation performance ****
+
+ There are many hyphenation systems for Euopean languages
+freely available on the CTAN archives, and there are often
+several for the same language. Which is adequate? Which is
+best, all things considered? How can a given one be tuned to a
+given task?
+
+ The average length of syllables in a text is a good
+measure of performance of a hyphenation system. Indeed this
+length divided by two is the average stretch that will be
+imposed on a justified line --- with the important proviso
+that devation from the mean syllable length is negligible.
+
+ The formula to calculate this average is #G/#S where
+#G is the number of letters (Glyphs) and #S is the number
+of syllables.
+
+ The quality of the hyphenation is also dependant on the
+average word length and this is is chiefly a function of the
+language and of the nature of the text. The reason for this
+dependance is that the stretchiness present in a line is
+roughly the interword stretch multiplied by [N-] where N is
+the number of words in the line. Here [N-] is the greatest
+integer strictly less than N. (This is for a justified text.)
+
+ Thus, the average stretching imposed on a space in a
+justified line is roughly proportional to both average
+syllable length and average word length but inversely
+proportional to the line length. The product of the first two
+is a measure of the expected badness of the text with regards
+to line breaking; it is independant of the typesetting and even
+of the order of the words. And this quantity divided by line
+length in characters (see below) is approximately the strain
+on an a single interword space --- a useful measure of the
+expected badness of the linebreaking. A typographer-designer
+may wish to calculate these measures of badness, and contrive
+to keep them below some limit values that experience suggests.
+Line length, font, magnification, and hyphenation system are
+the main control paramaters he can vary.
+
+ The above discussion neglects punctuation and the spacing
+around it, hopefully a second order effect.
+
+ The syntax
+
+ \AllCounts <text>\endAllCounts
+
+shows all four counts. There is a further option
+
+ \AllCounts+ <text>\endAllCounts
+
+that provides helpful extras.
+
+ Before using \AllCounts+, best clean out unusual material
+like titles tables inserts rules from a representative page or two
+of prose. If the paragraph count is then >1 the cleanup has been
+less than perfect, but that may not matter.
+
+ \AllCounts+ forgets all math and displays and punctuation
+and paragraphs. Only those paragraphs indicated by blank
+lines are successfully suppressed.
+
+ \AllCounts+ calculates mean syllable length in characters,
+and the mean number of wordbreaks per line, plus a few other
+derived quantities.
+
+ One of them is the number of characters per line.
+The space between words is counted as a character; this makes
+the calculated value more nearly constant when word length varies.
+
+ Another is Knuth's badness for the strain on interword space
+that would occur for syllables of mean size. Knuth normalises this
+badness to be 100 when strain equals stretchiness; it then
+increases as the third power of the strain (thus eightfold when
+strain doubles). A setting for \hbadness is proposed by
+\AllCounts+ that will assure that a warning is logged for precisely
+those lines in which strain exceeds TWICE the mean stretchiness.
+
+ \emergencystretch is the quantity of stretchiness that TeX
+adds to renormalise its linebreak optimisation mechanism in
+case the arithmetic goes off scale. A setting for
+\emergencystretch is suggested that is twice the strain that
+would be caused by syllables of mean length.
+
+ A major factor in hyphenation has escaped us. Occasional
+long syllables have a disproportionate ill effect on
+hyphenation. Standard deviation from the mean might evaluate
+this; but tally.sty does not provide any measure of this
+deviation. However with the suggested settings of \hbadness
+and \emergencystretch one can hope to resort to ad hoc
+measures whenever a line creates an underfull \hbox warning.
+This is as Knuth intended. The reasonable settings suggested by
+tally.sty thus help make Knuth's concepts work.
+
+
+Summary for \AllCounts+ : The quantities calculated are
+helpful in choosing a hyphenation system, and in choosing a
+page design parameters (notably \hsize and \magnification).
+They may also help an author keep his manuscript within
+prescribed limits. Finally, they should help choose
+reasonable values of \emergencystretch and \hbadness to
+facilitate ad hoc improvements in response to underfull
+hboxes.
+
+
+ *** Hyphenation systems for specific tests.
+
+ HyAcc-CM.tex
+ CaesarCM.tex
+ CaesarCK.tex
+
+are tuned to several sorts of font. You will be able to see
+quite different performances depending on both the font and
+the macro settings. The format compilation mechanism
+format-dumper-xx (xx=cm or ck) compiles corresponding
+formats. All of these are found on ftp matups.matups.fr
+and/or the CTAN archives.
+
+
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+ **** LIMITATIONS AND REMEDIES ****
+
+ (A) Boxes: tally.sty messes up counting within boxes: a
+whole box of words will usually be counted as one or none. This
+is the case for
+
+ \centerline{My Title}
+
+There are usually ad hoc remedies --- in this case try:
+
+ \let\centerline=\
+
+ Many cases of this problem are well disguised by macros.
+In amsppt.sty bibliographies for example, one gets roughly the
+number of entries rather than the count requested. Again there
+is an ad hoc fix.
+
+ (B) Inserts: A somewhat different problem is posed by
+inserts, in particular footnotes. Inserts are excluded from
+the count and are stored up and printed after the count is
+complete. Try \def\insert#1{\ } to change this.
+
+ (C) Math: If you do not want each block of math to add
+one to the count try
+
+ \def\gobblemath#1${$}
+ \everymath{\gobblemath}
+
+Similarly for displays. See \AllCounts+.
+
+ (E) Initial words (a solved problem!): Normally TeX does
+not attempt to hyphenate the first word of a paragraph, since
+it looks foreward from glue items to find words to hyphenate,
+[TeXBook page 454]. Parindent is, as it turns out, not a
+suitable starting point, so the first word of a paragraph is
+normally not hyphenated! Thus the counting macros add some
+glue to the right end of of the \everypar token list. Drastic
+measures have been taken to prevent TeX macros from redefining
+\everypar and thus destroying this useful glue: the \everypar
+syntax is "uprooted", ie detached from primitive meaning and
+temporarily attached to a "meaningless" token register.
+
+Remark: This "uprooting" device is much used, for example to
+protect the typescript from commanding a \language change
+while a \LetterCount is under way. It may be the
+source of bugs still to be encountered, notably where applied
+to \hsize, and \baselineskip. However \par seems
+"non-uprootable", perhaps because it is secretly cited by name
+in the execution of other primitives of TeX.
+
+ (F) The automatic cleanup provided by \AllCounts+ intends
+to get rid of everything but words --- in order to evaluate
+linebreaking for plain prose; but it is imperfect.
+
+ (a) The punctuation is given category 10 (=space). That
+means that punctuation in predefined macro expansions does
+not evaporate.
+
+ (b) The carriage return is also given category 10 (=space).
+(Recall that \par cannot be "uprooted".) Thus paragraphs
+implicit in (sub)titles of various sorts are not eliminated.
+
+Add these to the list of stuctures you may wan to clean out by ad
+hoc means.
+
+
+
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %%%% lehyphen.tex %% LEtter count hyphenation patterns
+ %% for use with word tally.sty
+ %% to let \LetterCount<text>\endLetterCount count the letters
+
+ \begingroup
+ \catcode`@=11
+
+ %%% Globally set high ASCII to 12
+ %%
+ \count@="80
+ \loop
+ \global\catcode\the\count@=12
+ \ifnum\count@<"FF
+ \relax\advance\count@ by 1
+ \repeat
+
+ %%% Globally set their Cork default lc-uc codes
+ \newcount\Ct@
+ \newcount\Ct@@
+ \newcount\Ct@@@
+ \toks0={%
+ \loop
+ \Ct@=\count@\advance\Ct@ by 32
+ %% \count@ is Plain scratch counter \count255
+ \global\uccode\the\count@=\the\count@
+ \global\lccode\the\count@=\the\Ct@
+ \global\uccode\the\Ct@=\the\count@
+ \global\lccode\the\Ct@=\the\Ct@
+ \ifnum\count@<\Ct@@
+ \relax\advance\count@ by 1
+ \repeat
+ }
+
+ \count@="80 \Ct@@="9E \the\toks0 %% segment "80 to "BF
+ %% "9F is \S and "BF is pound
+ \count@="C0 \Ct@@="DF \the\toks0 %% segment "C0 to "FF
+ \lccode"BD=0\uccode"BD=0 %% !!
+ \lccode"BD=0\uccode"BD=0 %% ??
+
+ %% count figures as letters!?
+\lccode`0=`0
+\lccode`1=`1
+\lccode`2=`2
+\lccode`3=`3
+\lccode`4=`4
+\lccode`5=`5
+\lccode`6=`6
+\lccode`7=`7
+\lccode`8=`8
+\lccode`9=`9
+\lccode`==`=
+
+
+ \patterns{%
+1^^301
+1^^311
+1^^321
+1^^331
+1^^341
+1^^351
+1^^361
+1^^371
+1^^381
+1^^391
+1<1
+1=1
+1>1
+1a1
+1b1
+1c1
+1d1
+1e1
+1f1
+1g1
+1h1
+1i1
+1j1
+1k1
+1l1
+1m1
+1n1
+1o1
+1p1
+1q1
+1r1
+1s1
+1t1
+1u1
+1v1
+1w1
+1x1
+1y1
+1z1
+ }
+
+ \patterns{%
+ %1^^9D1 %% Turkish dot I
+ 1^^9E1 %% croatian \dj
+ %1^^9F1 %% \S
+ %
+1^^a01
+ 1^^a11
+ 1^^a21
+ 1^^a31
+ 1^^a41
+ 1^^a51
+ 1^^a61
+ 1^^a71
+ 1^^a81
+ 1^^a91
+ 1^^aa1
+ 1^^ab1
+ 1^^ac1
+ 1^^ad1
+ 1^^ae1
+ 1^^af1
+ %
+ 1^^b01
+ 1^^b11
+ 1^^b21
+ 1^^b31
+ 1^^b41
+ 1^^b51
+ 1^^b61
+ 1^^b71
+ 1^^b81
+ 1^^b91
+ 1^^ba1
+ 1^^bb1
+ 1^^bc1
+ %1^^bd1 %% !!
+ %1^^be1 %% ??
+ %1^^bf1 %% pound
+ %
+ 1^^e01
+ 1^^e11
+ 1^^e21
+ 1^^e31
+ 1^^e41
+ 1^^e51
+ 1^^e61
+ 1^^e71
+ 1^^e81
+ 1^^e91
+ 1^^ea1
+ 1^^eb1
+ 1^^ec1
+ 1^^ed1
+ 1^^ee1
+ 1^^ef1
+ %
+ 1^^f01
+ 1^^f11
+ 1^^f21
+ 1^^f31
+ 1^^f41
+ 1^^f51
+ 1^^f61
+ 1^^f71
+ 1^^f81
+ 1^^f91
+ 1^^fa1
+ 1^^fb1
+ 1^^fc1
+ 1^^fd1
+ 1^^fe1
+ 1^^ff1
+ }
+
+ \endgroup
+
+%%% end of lehyphen.tex for tally.sty