Path: utzoo!attcan!uunet!lll-winken!ncis.llnl.gov!helios.ee.lbl.gov!nosc!ucsd!sdcsvax!ucsdhub!hp-sdd!hplabs!felix!dhw68k!macintosh From: omh@brunix.UUCP (Owen Hartnett) Newsgroups: comp.binaries.mac Subject: TransSkel.p Version 2.0 (part 1 of 4) Message-ID: <19141@dhw68k.cts.com> Date: 26 Jan 89 16:00:26 GMT Sender: macintosh@dhw68k.cts.com Organization: Brown University Department of Computer Science Lines: 486 Approved: bytebug@dhw68k.cts.com (Roger L. Long) [TransSkel.p Version 2.0 - part 1 of 4] Here is the Pascal version of TransSkel version 2.0. It contains a few new features to help you make better programs, some bug fixes and supports the conditional compiler variables that the C version did. It now has conditional compilation switches for MPW support and smaller code generation. TransSkel is a transportable modular skeleton program which works similarly to the "Extender" program packages out there. However, TransSkel provides all the source code, so you can modify it for personal use *and* (best of all) TransSkel is completely public domain and free for use by everyone. In this release of TransSkel, both Paul DuBois and myself, Owen Hartnett have tried to make a more professional system, including better DA support, more checks for out of memory conditions, handler cacheing (caching?), etc. Unfortunately, the old TransSkel code will break on this version without modification. Fortunately, the modifications are fairly easy and are discussed in the documentation. My apologies to everyone who asked me for an e-mail copy of this w/out response. My mailer is extremely finicky and very often does not work. TransSkel also comes with two companion modules, TransDisplay and TransEdit. These allow the user to provide transportable text edit functions. Yes, Virginia, there is a C version 2.0 in the works, but I'll let Paul distribute that one. TransSkel is excellent for getting some code up and running very fast, and it allows you to modify and extend while keeping the basic framework intact. To paraphrase Victor Kiam, of Remington Razor fame: "I liked it so much, I ported it to Pascal." Actual Pascal I used was Lightspeed Pascal version 2.0 (great, great, great product!). I put in conditionals for MPW users. TML and Turbos may want to add conditionals of their own, if so, send them to me and I'll incorporate them into the next version. Owen Hartnett Brown University Computer Science omh@cs.brown.edu.CSNET omh%cs.brown.edu {ihnp4,allegra}!brunix!omh "Don't wait up for me tonight because I won't be home for a month." -W.C. Fields --- (This file must be converted with BinHex 4.0) :$94bB@jc8fYPE#jcDA3!8dP8)90*9#%!N!-"C@d!N!3q%90*9#%!!3!"C@eb6'& e!3#3"b!J$P4bB@jc8fYPE#$%,Qj`!*!lR9R88jr&Xa)!N!8#HC-!N!8"C1F!N!S f!#!J#%4TB@a[Cb$%E#$%,Qj`!*!lR9R89Cr&X[S!N"TVi`!#$%4TB@a[Ce0VC@` ZF!#3-e4&@&435Ne0!3#F%LNERm@4KJ#3"KZD!*!'$4B!!&8X!*!'Mfal3&""NfB 1#$KbhTb4%kB0#$PPiY4*!p'J3)CZjNaC8iD0#cJX3%LTiiC1QMCPA,"*)`C%'$G N3#3T@8D1Q6"M8UjXQFB0#$TSbS#Bdl"-JMi0!L*mSkE-'$SZ3%J&%B60R$F2)dk X##,2QcSrXFiT3qGRd+aAkmM*#F*-'MC#k@!PNLB-'i8I%kTa)@I1@K!pc3U93a, %'cJQhf3%J63JP$Td$0D"!d)'#$*elji")HB0RM*c3Yj"mfBXB$TPfKJ-BmD-dl* !KEk*,HGbCS8*FMFqq%B1kTKb36#C!J*+Q$PMl(,1!q,*R6)qNB6alBBXRC!![G! iR2,'$*dldi81HH-LYrQM58(F!+(NCChTc'2N`(%$rCiC-%!3FCTD6%d3mY%(3JX JM)('5fH!ePC[)0K4daaT+&DC#c$NYpX9dlR4daNkJ$"H'h#m*439*`PPah4eL3( A8*2"d4XGQ0QPN!""J9'"N8BFH84C'hA-8CCr3j%9eNq%P4%#B`ddX04#$HPhfaN EGE4$NJRd#&T5*#4Ka"!J91%%%88BNB3644!K%"*M,[%&&%&--8336##9@a1TdC% ((+#&&-9%Bka""N0hK26%&$24B8C)9,ca"KZ&(PSF6QXd'K+@4A`jK*`*f2J5MP) Qf8!#BbMQikF*Y%'%CP)Sf!1!&F)`C@jKG!CC9EkPDY#U-93B``i*""5%V&#j%*9 G0C99d9GV#H9'(@hi9aY5T-j"fKfR+K3$#,MbQPY!4SJ)!Th,RTBD#-Xfqk"jQ%V l"V@D@EDU$+mQ)&%DCDe+`j5NNN3'9YQ#F&k[)"5"@9NSK8[[Z18kDa#QBd#',3J ca"XU(-cC'bmFak(fF!d5`cAG`cEJQjXBN!$*jFDefCiA8)bDLHY3`JmLQ9XC!k0 F@E`qKQ(5'$C(6#T$Q,eKmldrKa'dZb"`A(63-i!XF9"pfRc$ddkYJ631m9STKmd jL'`RRU3@i@"*80"4fkTHL!dG(DQ'+JFC)TmS"kQQDKC$5(8V*%1(G-Pi4YPbL*a !'U'ki35cG`0@q1&Yl!dB63N'6Q8#C$$E4KiG#U'SafjSqbr!EB6"(*!!9XCN"S- SYG%EFk'l%8D#"CF&E3*,j93j42S"QN6K)+"!KQCm2`Ri$Ljhf"0UNDF3VpbN*S" '5!Hh)4e-F(8irHpPa$XiDQe3F@FCaN0HNrE4Yde(KqDrkYmC2C&k"&P%*-'pljT "clhpUAQ2*rl5[i3prqC6(UR5B)E,Y'a9H6[$Y@,MKZDK!33k@0Alk,!laD#!F)T KA!a53+U1M-@"%*3J@C)`(MGFF((-NS%!F`1&Ze#`F"INR[P#JSB93JGZ9$)$5Ci 5)Cp-N!!)6f&$lhkRN!$Jq@eiaAXFmQU5JXaYVJ`[%4ccc"1pke82"&E-A[1LTcr `+E%-N51I$&q$[YH)E(hYbmd2jCFDqLQ%IrcV)[qb#-$AV$!"2a`#(B3B34"SEP& 301%%pFJ'+pLP$Q9!33R0YUJXaM!e"k*H'9*!b9IG8'5eSjPDK$)&q"&bL-"cdK( 04VcSK@q*J@[3)Ehi4mi*N!"88ma0&Ieha5b+-ArI1b8BalI&-6kPM%p4(aM6L%I iXE%0EM`$(&dQ4jI4d@8"M&FRk8")3l)"NBT8$#2Ci-KC5M)&d"1I(&"`SQY1dSB ``@4#E,G*%2`30AJS5c+0U"NNQ[+,B94PEA`NK`j0`@`bU%%0ATQE@'i[09Qd(Lf e5%AZG9'ABHaPDX`(6$UFFCJ09+-ajdG%CESXMYqEid,Vq*3l6M!*9#K$2"rC2dQ 'K*rSa1'R-RNl6X)[TI%%C4&&@8p5*[&iZd`P2rd*8)(HdD$Ha*j#*AR,lZ85Rla Xk%6*+")cIJU0'5dQ(H,(dITpP*NKGHC)S@P(DBi3Th4Jk60KDXPd8SQQlC`Q%D# `6TebL+F+X5Ih)$UqJh5)VQmB!q#11Kf*YP5T@&aS8am+9FP*Y3d8V@S`ViT4pff dM4eG*KI$QP5iN!#8$RH8+dSakpASJA4rLC8N#Z!!6V+@Y+dbTGdk0BNlZ8V"D"' b+chckY0l!M9j8LbXH6"'RCVXpQqN0'a#8iZpa6leYe'9T5r2*eQ,8TCp@58Z(DT 6QclfVDIMR1!98Q@'%LDcNU55+b'6'4+J45KadAZBHi8@@NrZNEd2`HdEC-!rqHT AK@EGkRScQeqQpAG9mjh"(3PiN!$TE2Fr#+b@!J@6eF'KX!hAkQ0m#66I'(63+QA BiS8YSf(Z$DM!laAF'ZHRAHk'4'[`G5KRZII-mT8e[@5"`SY@kf$ZhR%Qj63I5k2 jU8ZqGEBe$GMBj1PEF4+[$%[ZN!$Db'BfJLE!S$L4Laa#dQ,MiK@jMXf05IESaAr +)D"+-dmj%HP%3%DaHCI$8aR@d+%Vp'4IGi"#'HDX[FXCD$TYjYa&X@YC1ZMB0bM )FQrZf1AZVZUl[!d[@FCEK[*D80&b3'pZNQ1Dq(DRH55MJmPLd+(Q*3#VTYBU%G# Dk+Id*L3dSeILaJbA1jTRQPFJ%CPjA0`Yri4HYGCH!SaXRJkAqMbfe@qVYGaHr@j 3Hr0eR+Q6(E4P[aV&ql9eJSppDrMGYYUBEME6E'fJUT%D"+C'pEr@,*3qZQ%f[F[ MIF2Y-NdMfljXX,D[6DY+FpTDPJ9Npm0Z!Q)+TcS"5%J$'FTJCjLXLpF2cR5U24M LcdeK@Jh(-m4p,'aLEaTU9Z2fb#UllP@'N!"Fm%D"[200lh,h5BAr6S"kjqeUAl[ FDL&KGmcM[1FeR$cMkp,cR$I14'%2,Z!QCq$"rA`J4a-*N4-(mG,cm'HR%h`XJM- 2cqIX"4HFi3e"!%mHM-#'ejfFkG2TZ&[0-jZJb1%1"DRiX0GZj*NLZCe$Z![@*iI PQR1jaek'0*J(6F`*(MUYQ'Bdi*dZH-#TI0,N0@rLljM`K32p$[UZVi$[fqL3!0` mF9HI*'c9'9MDLZFZBR"@F1GQRYJ)rVM$Sj+kYATi&,Mq5AHNbaaF0!I"fciSJSm T[[D3!)"ZVDKJB)NNpZ3`1lMLMJK[-(iC`!8@P[)edi62+UH&iQNc0%pGl,+@b%p 0mR[$j5QA4d%#RjhULkmVrHZ2qFccR8$q&JMNXbl5[cfH!2",@0VR-A[GGRjd!(r r*hmBGfF29hrbKfrU*f'*mhNKB6D)Y(pVPa[c3Ph6PL0A3"TK%#r%9RI%Pd8"-c! JJ(`ZBa#R8a[`9"C`jh"hd(ahpha[)$$d3Rfpdf5SC'8'GAYq!h[*TAAI-fGeTS" jeR2NF`E["K(APhfNiS-Yieh#BcBSB!3*84+AGdGEjh0pG(P#Y`Dr9`E"&bm-YS9 Gpi*iYJ4hpM!XSa"U#"-'CalEjc+'iAhRd6!Dq#m#D"kRFJC$!"PK1)B(P`C+f"[ YYLTD8"0[-!9M`""`B(5$8iLiddG88!5*`SL1D(6m"bU(J6RSTSIPGajp1"i8%iL i"iQ%Z)5(#!+*Q"#B'!D21)L5Z)U9H)Q0#)ZDH)'jJ6%qiN@TYSHb0)XR9iP@q!C Ym)Uaq$PpD"bpD)Tq%h1E1!BHddqI+)TXF!El!4HSiBbDB@XKk&C*JA!,&53%f%0 e5"A!NJadD!B*i4""!!G`F(c383Fb@(T*"RfrmKA@"8[#&BbUf)6A48bTD)JR9aA &NQM!3LYXNbINmKE#Pd-lP"JqX4qU)hLp3fYP9P3F!`*i%"+H#&fC"S55`iqX*fE !pb3LkB3Q+BC2FR)6j!4P3#e2mS#S`T!!'X)')H'&90J#'h4(6I!'$T*q82K'(1Q 4)4&kQTGV`*C)3qP4'(P(PG-'Ph0b8F)'[YH8)3%%8hBG)!!%H9FDCC!!P9qCHN9 (+K6j"KEC4ddjHP355fh3)G4R5dQLEKKN1)KcFUlb+AA*1#5f+RNTFcNb%r5#!MB 3%MHj3PAjM['B5#H3!)q3!#&i95NX,R!#@BQ2`,*#$Y&(-(N(e)F#Z9)K)A%#dRF #+k5B0p5CE4#DlRF(A`BJ1l#DV3N[+0!#1l!Rp2)#88#DVa+98pP(9BQDP4Pp)N* pK[N@4fNABd&3QENUQpQCRjNi*f#$G+#ERf+D-!'F)(!#+&!&$[F#@V!$XlN$IdJ (,i!&iYQ*,c!%1m#-U2%#9L#HddLGP'-jc1'E1B+G3!"pdNQF$BQ66bGk9,*q*hH @[RF#2lP`F$%("Q'4-8#C53-$)9%$-)#CrcHJUB'@-fQJEi#JS,'J,5N$$KS$%KS 5-P!KL!PjP@CH1MP1m4F5Gq%'f*9@$(LL"4Kj&V5L0+NhVI@L-CUM#U4TFX9Uk`G V041D"pS4(4UEmKQN+L@MrdHNXQDN'iUN#YUD$8UMFl912TSi-&DCZP-i@!TBBq# MpYHPA8N%AkSB@,TH3iTYq9H"Vc*rC#TZlc@"qKHR$YLQ%[LIDhTIpHGjq'HRF2S TFUUR)'Gr&!LJ-THR6hTr9B1SGdUS#3L$@iUBNkTa$#Jb[aN'24'R16+@UYF!0q3 #!J!84'PKE'pR8fYPE#j`FQpU,R*cFQ-!N$-"!*`BXr@F',2f!!!#a3#3"J(R!*! %UMX!N!Me@3!!"!J)3-#8J!%1"T3$J"a#$!5G%Ca)-!#EJ!,m8!4!J8LD-'cHR*Q bTJ`E&h$N[&(M3XiF1@28#0K)Fq0!JS!Br!&!U1C'6KKQeGXSS"K"&33463``d`" #8!%*S)RS%m!"@`%I3+%*SbT&+J6P,CejJ#!fK&-$5[3C!&r!!9Xh)[#km3-!'3! N!&!9S#X"K"3(S&2JT-`G%"j"LL5)#m$FL4#[!@!4B!)"!d('M#N$K`j&$3!8!%# D$0,'!9B"6!!J"4'$)QlSP*%$JNSD1Qc+k+#)Ya!!)`#%'6#3!'6-'cFJZNi%lPX ,J'($Lam(%B1LFppZJNFhMKc[4"i!)'kp8Z#!P64cdSM*2BcL9SKN!+JTN!"J5-J jC8!)HB-(p83J!*J$!"J"'!#)!'N&")C!&(8a)!"a!-!*!3)mX34&$UJ'`%'P)2* $BL'09")E)0Ja@hV6aH!#$!dd3)8FBEJa"dNQJG$''f5B9-BFFi"!aNFKqPM'M6, 5!5-GD4`R@N!-!,#E$3$F!S!k!k4$""'!BD433J3a"!!c)!$J!d%F!'"'383`mF3 4"'P!4"*8--'J#8%`)39B!INJf$rr8"6!$4"8'9#B!(`MN!!0j1cj$k%M6#5S!@% '-)4!,e"43"KL[&%((CGQZLNK)3K%D@&XEfFJa'`Ja#jZF!#31jeCe&@IaE,k!*! D9"mJ)!T0B@jj9fPZC#$%a#jZF!#31jeCe&HIaE,m!*!DAU-!!JT0B@jj9fPZC#j `,R"bEfSZFR0bB`#3+e4&@&435Ne0!3#F%)#+Rm@4cJ#3"Kb'!*!'$T`!!)"P!*! 'B+Yl%M3*ibE2P64Zb)#J)SIJR#PVbV!"3DC-QcGZjY"T5#F0aMi0'J5NJLE0("" Ki-"KNfC-Q)iB8E*KmqE1b6T`30"jSr01'6GdmS#iJj!!6-f61d')+30LM*`b,mX SI!N#ijJb,%!'*%S(M8id6*f8Z3-L$4f,)1SN,#2R+e-MDGJ`EI1cMJX3#m'#F"1 'EP8c)+#1m8SdB8fY#9,#J5VRjYUfACNH0'`6"&dhG8#JZ&0bF0Q6EYl3DISdUN+ e(5G5P4Y')f+-6!XE*9X'MdNkFe,F"6&&BTNa(GfFF6ZdD-fpICQDNI1Q$I(*Xdp HVS0BM"b%Cj!!kT9p2'PN%-XadYPYj%hE-REB#Z91eLR8Xf4Bm)iid56LR@`8*R8 I&HAHX5#J34!CFXQa@a+!IFIH#5H03G-F6)Ra"KkI0FA5'"(&GjpH!LC8)!K2AC5 HGV%C4aCIISARh(I3(@9CAI+4B4)FEd!iafX*EQHLI!1#D0%E)jD&Qd5!U8JFH`% 1q#&,'KeSaSBP8MC8Dm5adGTSl-R(SSR5eC@NKfcj+')C0iU8J&N3XP%NFb[U0Gf A")E*j(JJQAN&@'i3CdBDM@&TBSAm`FFM#%1m390EEiE"aK`m+FEB(,Z4C*qCLY* 8fAGM''VHAm4P#Y42SceeKNGj[T'MFX`"GC&'a8Qj8h9-$8E3'9)G10SCEj!!LG) GBDb(Cj9AYMSES!r@@ZG)2-94KeRbTIRED&%X1jU4hm%PeiZB939C(SXee9`E!lB 3K3[(#N53!%&&8I4M4KY&G4)CHD$BNV$(pIKQS+5LP""&-pDS+,PQ*M'DSSb#-!F D,L*-9SGaYJ8(FeH48FG6d[@U&&-(Kr(89"F*"fH"C3CNaUBbQQ%'@k$5Da2!CT, %e-0[U2'X`3MAN9pCEMKB4d9IQ34HA&JYe&"'%%RN3NiSE"S'##aCTl&3e5h,aV4 X#Ze3d@`FRB*m8U#@"PdZ0+f[3NPm+SFCB9`9GKTLJ-"b3$,J!))5DM%93`iif*! !3!*3K'%c#%68)F3EN`Cd`p`%eI%d#(IMF2J62Z@*K-CdZ&%'(A6)e`XDcNeK+Kf m2NAS'biNS"8)#GJ`Gpf-ibhh%dM)*kY`ZSlF9RU0j5Z$#c$!!%+G-*r4N!"c!a8 %h3iK*9#(M5+4N!#%%81!8)864"4K4"*1&%(%3NKJ[m3A8!3aa4""-!(5hNeB&04 LFmJAE8YVN!$4d"hb26&&fA5B)4m9EaL+[riJk"Z'rLHIjK@"HN-iA`)BFMAk)+m "#I#84L#B!($K!6SJk!%)C!#$(54J$jB*JfhD8!IRB+B05fQ,U94fNYVF"MXS'Be 9Q&+R[B8KICKa3JNcb$J2JM!)+VR@Qa4S"Kc@3BI1dD!-22K"%&KV,Pj5i"f-L%3 HcS#*)'a4CBC)`6&3FBFDT!%@4hFSE'@QKJQ`(&Nd'!2Nl8eCCV(L!rFfKMZCK5P XG'-%Q8#()c4%+%V8iaMmD$%0AV',4&J$)3%*!M&f83K@`K!2Dc"(1fL-JRZ5La( P`jj0HZY34Y3"#)`i16$0-3'b+44U4)Q3!,235Jiqh%X*8mLT-8cX+8"KJe"FU"% BXZFN8L`+%N9*%q'd-TCT8-J+VF3U*!9++Vp,AJ)NeSBfj%'8Jc-890``4R!*C5P TJC!!3QchSS[)35MJiJZY,M1D'X)XBK0MbN!LSN8hfLjdC($M1k856m#pi3T$+*B pcB221Hj6BU)M`MqV!!Fb41@8PT3$"4-3'5LBK`kL*+3CS,#415jP9'kJi"%ZCe% jd!%&&EeS#[4BK)C!5!V23LPB5NS(,acYSM!&cNUEq"3iK+'93hQ"'0+f"Z'p35d +m5RQf*+RmrdNRmNlD$m9fS5![N%-Y*4T'8)jbVU8-NiV6Gj(%8*")[3,3NE8UK( $QS#R'K4Lr%cS'jjS4-hFX3fXr03V``V"XBD8MUeKbPhr-P%iBK3%%dd!eZldKM# -m5`cQBp%"S)3R54,@Y(F@aV()XV%cV--p@`LZ#,L(c@U,,0Y6BJEh4U5J*Ke$M5 #%+IBXaZXK6!L*jP$2lp$)j0@L%DYK+&h`))Ba6$RB@RS6jB-aT1Zq%bUSR0*RLT b&MQd!5'ak3aK6)3BRb8&R$+#EBfN)Tm9FU9QSeQ+F!fPN!$DV+3PCY%Pbb!)ADB S&+!d`5TE)(T*cDE8T"PYb%Bl+YBbJ&5N*,fS9QQk8mf#8(KK-%0[C3JB*#8P[,& PbJS9q0S-Da%&@Z5S("DX8VDbeNa$k"#YL$08$"N9U5"3DR9,G5V`T)S1Ur)6C3j dKY!mTEXe$Jp36ZZcT4%K##TM@3,Ukmp#JG*,+,KVAPh*&VlZ,D)6[B-S3eb'-Ua "MkL8`CC0*'+2'TLXHb1,$M6)C5qM`!JheQ*Bpe!+[25'$M3&-CNhXTN80(K[He# "S*fB"Ma!8`ae'%jPcC-'N!!ULS8*+%8A&*L'#YZ828Y)P`mdk,[)j-R"0KC2K8) cQL1I9S%*m'YLA5,E`CSUX4'dieNkUeR0#S'SI6XTCql)ePU2JBq,T(@Y%h"V$18 D"90EC+me1mJr#V[@a9l$X5'FKfA6-C("4Zb`LBhVPk#!$)VmSl8M#%QL2Y[@h6k T'#+j"QZcYYChN!!"#0B-JK$cq3l@EQPJFkTV'GKd`[aHpVY26&qi)Y5qrc44AD0 m&VcLM-TbX()#X+cC0&!K[N'l`mAT)"G46Q%M-UJ"*E-mCXT!SFYI,[#"pcC51JM -)TY41)b%C"(j@"cM+dAGJbph@K64N!##DQBcQ9(qjMLEU0Hl[KCCH1#$[F5&)Qq BU+TVhI)VE&`ZHMEj[EFfP+ZA`GU9"N%4P+@SMep(1&(f1LI9$Kk#"@dMGILk@rj DkkN2ZcGb!Fk(l6eLI)mEPI2@S"[L!ZDp[E[L&3B"djdq%8r$1ZK$XDRPm%#(HNj di+TYVEP)DeVDiS8*Eh$*@@+SQ4Md6MkQKd%+bJ+Bd&3P-QhjTA`N!L%FQ3&#SjN $5mk!"Si,a8K#e[&X)U8M9f'm3YqC2"d3Jk36CM8'mT'"I'BJ(aGBAcGi39$26Z* G[HbT6bU6A@R1!U9kFfPXC0c8G##&Pb#3!%%ra4p@4cM1&#TpKjQMZ5Z1RR2qkE` Y!GVh(4Ed06[N6%FeC!*b%N[a%ck50Q!4(r`b"f'`EQ%")*89'BMa4'DNC%cf@CC (345ACL8h'f8f8A)J(h)JCL$!Ef!f"ai(FL*RCLZR@*I$EbK`JL!!!r+KJaYdHSa 6!kUR4j!!"fILBAPl%hCVa(Kc0e&2B$+iCi-iQ(USecXT3%'d9`C5GfCdYcFT'(L 4Ge-Q*34SiJ)5JP4c8(K0D!Ch"SA4jcXY!#+l)aGQN!!j23J#EjL#,V!6F!"fJ(' $B9-'F`J#68F$1+"kfU)C"U+(JJJ#-d#&FpG%%9%'14%6Fq!H$)KUHj1'6aK61%J $EJJLIcL(mZ'*GJL+HLK`QEFhd&&&p#BE*`3#+p"$&)4%r'0ff"&c#B&%cB*dALJ @Gr"KJmF'+0JX@L)(F4FMS9G#S!)&%#-II)F#,4!$A!Gh341%&%40eZ5&Lf8LQb% I`HL0F5%I3("I$193C`'1`JJ#irK29J8KiRKI$R*9+B51mS%fLr*e3PJ8UM4NVDL 2"cJDXGK'&)5%rSJDT4J$204T[p*%BIGpcE3MT2%H6'&DkiGDUDD&UkBTFP"Ap1D ,DH9&GD',)(!#6QBH*f"Y3,3B#I'4'ZP**b"VCE!$60"S[3F#Ll3$0`Ni'V-'0[P (1`!#jBBK*ePif#J8p)Be,2PNQ2'1Ee#5'cPckeK9q6@2EAH2eYC*AY+4Bj&@8a5 5*53I,mNP3jPB4DQ0p-'9-VH8kRKID9N(6#Q9mXJ@a4KhU!K9Hj156i@@P1&*ZD& ("*N3qcJD'Q4"'14iQ[9D%bJA,pF'+*!!59XeFfTNBTPR*Ne`9,,&+`eb)4Q#-aB bANSa)EX"8f0b*(r#-"qb'GU&'#ka2,UL)(rbA8b"BH1P6'E!G6e5%A)aHUjTI25 ('05L&eV8*CMK*+3T*CJ*,+`#'c(L'lT*A(CbIMhLP'E83N$"*a+4"rpR@k1P+lS P1Vae8Ep&10AT-F09IbTaA0HKA"$*+"[bA!EA6p+P,Y9eACBc&0Te@J+L%'M5QE) P)46L)2"$AXaR&ZKe-HYe-qje)I'&RHldRR+&Aq2&Aa,PAc0e83%@B5@S@3j(5NS 5Na19"[,4"S[TJJpRB2[eS@bRF4MhJLNBJbU(CJR3FRRfAh6`C`mQB"-f@kr*%q! 8Mq+%@PARG9P(JRa'SebRS[6ADeJM"@f3!"l3-D3e)@)NCP*qPSq!qBpHQ%TBqSB #HB399T!!3mCT5kKCGVFh5pUNMiNCZ$JEDa9,q(GDEaL2qS8SG3&-LA@QkC'8jY' QPjF39RL2@3K56D3'bc-DG"!'T(98&'C'&PP"[EL9GE%CAp3'B"QFBePV)YT`*d& [JGN%)lUQ0F'RY8C1DH#&#*N8Q@S4la*e`eDQQY9bL`QUADQ@)&S@A[GhB8GUBNG fE'#,D(Gcp,Gf'&H2EMHAFQHBfiDA+aQTP'UV1&GiU@@AQS@RD9S(XYUQ228Mk9% 90a1FM)U*@*NYp0B'6!4Sk)F3'P%Trd%@X0'SCAQ8CaQTiHU@DjP`H`Q99'99FfU XGFP5I%'"XHUBRK5CX45ILX)VHG!JieGrSm%Db9QIjM54aq&8NpN!UJC"d"'BAYK "'#Y-1d4[(+YBp&%fCS%#0S#1IlCYjSS3CT&F,+%(2bHb%T'5@(F#*i#bj6TX)'5 DX8NQ2*Nf9c%(M()GZR)q!TZ9'Z54N9T%AYQX*r"%3fQZfdPS3Z3P20X@jk1XC*! !9NHVPLIJLbrJ"$X!M6[`2R6`!P&`U9MM4c8a1'D)!Ym)!N!iKI)"K$cBL0Bi65@ 8MI!k@8X,0*kdMR5&Vfm!PrZU%mD)Ma#%P$r&65S,DM6a"MPa!UN"!QCV-,i"(0" d2PLMVbQ8XcTV)GZ8&MN"%NrP!L%K#NeKERPAD@jN)-6%,Qj`!*!lR9R89jr&X[` !N"TKAb!J#QeTEQP6Df9X)-6%,Qj`!*!lR9R8ACr&X[S!N"ST&3!##QeTEQP6Df9 X,R!ZF(*[DLjbFh*M!*!V9%9B9&"+68d"!*`+qEDIaC(N!*!'"-m!N!B$AJ!!mTi !N!EArRX58*%6aXfF+@[+X!&"TNbE0`ET%+56"U)1%##DT('6TNfBK@(J`''6CN` BLK$l0'L`K`UD0(0!`*(cjJc"0JcIP)RTjJfGPfl1J""6Kil-SL$U`!&4%%33N@c +J'K6aNdGPAX`BVb6jLI$R@ZBMKQcFmiE1@PfJQ$"e!dCTL#-T)NkY@SG%&LeJZ$ U03b)+(@kJZMU%)3,%#kPeTP64Ji)Nfj!b+N6Q8J3%#GL8UDi%,"JQ#!B4ae$Tmc EXirIY2(SYN@8`6(Tj)&MfS9+PSPPdP46KR4S0'rUX(QlF3bE1Je"r!4YCUj8YJ- ,(Nc)aJ@F[#K!S2C,8Ja"1AQ'"QCMe!a0R0%0)P4S(85+Y5#NE1jBaNAhYQq6Z#N Yad`BX[DP)BCKYqdK``dJ+%'C9$(NJ)-0)%!4KR!J%&'(%'r!P&F--54B8"eKJ!G #JcJJq-3G9B'!4)KdZ&%'(A3NJ&8[D1!da4YQd(&(L&)0mFCK)pS`3h`PS4(L@d5 JC8FCd+@aT"ad3-5@&%Q!!)--*H)J)dXc`&"KE`k*dGL)$TU)a'0'"U@@'DJp18G &NFRJ!JaHhMC666G0Y9%Dkl'a`dS0*,$B6Lb4N!#%%81!8)864"4K4"*1&%%%BNK !ZX3A8!3aa4""-+&5!JNdiC!!E,60`CCRBka""N&hX2A%&2V4B3CdElc"4Ubc4[M I'VLb9@J4M!laU8!%U8IGRi(D%@+J#E4aNDK@VHK@9(q#5NBGUq9a%BDfPP%3XJR F5GDeFNK&a"Yb43AYA5J3jZaJqj9a4Q-Tl*!!3&CTR0&6Z@qeS"`DMC@4QACZX"& H()(TY#BKjaNE-pRN&F'(B#qV&''G&K8),pGP%'"XTp`B)#(H&mDG9NB'X`a! Rd1HHG+"J!eXFX9%[aMMI#i*qADAa84TkP*(c`S(fqG4)CD"``JNdchAcd+"Q*5d CG"%"PP0MPA9@@R0Fr#P11[3!JK0Ph,%Z#M+`G8+k!MqGFeC$P(Z591X1rHR4+Cr GKYUHdI&#&#I8'qLefB)30JJHfiA#hL!!F5lEkcE0"PX5e9('c4TcM&LaFe!R-JK T8Lf9b85l60h('eN-GG3JX&(V8Tb4R("S#[9@'KNR&dhG%+k,)DBFUN1GPA(H4UB 8e#UPl!)K)3TYD@jT8fYPE#$%a#jZF!#31jeCe&fIaE,k!*!D&ZNJ)!Y0G@adD90 VC@`Ja#jZF!#31jeCe&kIaE,l!*!D!6J!!JKMEfeYEfiZF'`Ja("bEfSZFR0bB`# 3+e4&@&435Ne0!3#F$G8$Rm@5q3#3"J6U!*!'!bd!!'fG!*!'j1"l%JajdkE0'cF JUVK*3mF&#"!$hG!*NmE0(""cbYJT)bF-'a"bhY5K8l(-a6YSdSa"!b+-R$)JkQ3 N!d*-(S`D1AS%mFC-R`Clk+#"q8BSc$S,kFaa#1,RRLYb'0)TJr!'##9Kh04aH60 '$Ka@RpbK#J+*5cTZbY#K``*%,c4Y3%cT5HH15jJ$AIaXJ*3KL$%%$EVCdD""aDP bc)3C8kC`!TNQJC*)BQ4)3LG%LKK*iU3)%4"8N!"`A[)&5T!!+81#-2QC)%'6-Qh Sj)&MXQf81LVAN!$TH+IYNbP***TT5qA0'cE"k3`(!@AaQZ6,*4I"2)4eJMCef*! !R,+Q$*XME0k)m6L(X'-i)4Q6UI-5""(H4d,H%I)'$`J8GbU5d3(LL[ihGd""Ka` T%*B!HQqSaaj-8kMPRaYN$-&''R$FPaq%r$e)"S!#%QJJJJUf*i9*$ZSR)BAQTG% '('c!4Y9%*"hNQ"dZ0G$DF4&1#!Gr8TcKKPN3YQKH3%fN-3GME,#494NLA4655#A 0i93#9!b9%3J6GIIAA6bC!F*ZB9ai"TC$JA#'I$A9ea+%C-)dB9SYKHI''9-D"9) DCk"""`KPN!"a"P&HfRRKKVfY59021+e9dCKCdI454SV1fHCI1NljdKPT()6P'em Dk9&iGhc*fk)J9%4Q'(Y'PHHHIIjCddef&M@8(++'ZDLP)T'8eP*l(CKHR`Zk"jp mp1&KAQXdbQ&MDh,`@-BBG"Ki)aXj8XLMMd#5)D4MBT5"U4[,dUT$$b!-kS8,F,` K"adM3LZY(#kdD-DHii,NJUTkJY!##$(8X%0VHp3DkN&Xh1643@2LbkUI-&Q(iiN 9eZY%'AId10Lb4kJ&-3S2keMJXK#h5`F+(LllATMa!CJ%B'lJTpr(V69)amBG8`K c!N3BQ@j'&R0-,F3`8dA'X5!#fjl-'N*mE!,*,TY!Xb#)I'bhhiB,3VhQSUXZZmp ''qkpH1CE,l`+kmZ[[`"rHG!*Hi)CkX'5PYeU`m[@($'j%eIXSl3CckbMcpA#FA2 )AC-F0)4%rlUHL#65NE518hYEdE)bdrbcap,Q2-I1CI4Xpq&$0b#d#`!##de6Df9 X4@4TG#j`F(*[DLjbFh*M!*!V9%9B9&"+68d"!*`1h[HIaC+1!*!'$EB!N!B(l!! !%0S!N!EFTRX58*%6aXfF+@[+X!(4TJiE1QRJX#R6iNiD0f6Hh!&"TNbE0`ET%)3 )8JF)+QA`d#P#*JdGKQr)1#c6Td'$J&63T*N$8qC%%'J+NTR)-`b)1@RD5#ac-ZA +PLmYBY6)!X4&%(GdMN%$JSj6KQ(bJ""$mfB#1RRJP#%$3ZK41N,$b'%lT!kG&d2 H`-Rc!NUB19la6T3,3QqCN@P!mQ`6GLa6YA,-[*(6CUf,QJ'V6,A+dmfEPh2U`)% cf5ZCUTlPF1lkGFiB1@rBX,PijV,0J$&SJ&"5a`h6'$P`f%L3!-#[3a"%kJKjXa0 cJKZl#pD4+aBiMKX*RY`Ti`B%%VPdI01KNm$j$"M)bica5&DeGHK2N!#!f&V`c&S 3NPAE1B`8*)JB,X!`!`Je0G#E5b!dJC!!3LbjY)00&hN9@4MVfC4!(A18-FG0*#4 Ka"!J91%%%88BNB3644"a%K)R,[%&&%&--833604%A"-HSDA@(&9&88FDBka""N& h92A%&%Qi3BFC99(a4Qa*,PQ9Ad&'b53)("BaiK!f*Y#%3a!Yb-B4E,`K4KKXm$M I'femj%D6""NNjS-0*!!(E1[**!G6$G*aa89N*1PJRAHqN@FGHi,3jjmBpBQM'h@ !J)*,(TN8B4RfbC%#R3dNY94P5SC"NKXhJE!@JU"'5QNE)%$D4RXm&CM!')V48HH &QrA`hi2%M@%A#,V1`1ZXHSQP+`h$`['A9m##8-1`B`bQQUifd*Q!(A,GkP@I*P& 4a(FB6E3$FAX!*G42G,c"QNTB!DT48bVe#F+HY-j&S)@&(TVSG`pC5pBC&phU,4% lNCBK#YY#YHQY3j5C)D-ChB(#UAi#ZR!#h*&KEEjV)FT8%N19i5qQ!42R,FJ6)9a 'RjXQ8+iBXlQa4PG"[H5V((0-&X+p''1d-CiG*jU3!&JSE'85IA,Xd0-FPLU*k@% ,erP[b3)9X83CH4504P8*Zh4aaTcD#E5H6$Aa"SC-)Ba''9$3B4)8c#QTY0XJP1N '`()[hE4AQ9im0DNQ&p%`N!"VU-df(98Y&eXC"D%JK%Y"B)6#4f5S1BG1CY"aG4i TT-$ebJVc#[CY#93""aQL-Z89Ze*&l!))*kd0JQLS-e['INSbP-BCD,a%PPAGl6N (D3DTVQiBcVAqV["Tk%(Ekb!NBFC4Ee6&["kUbdi[(89K0+pkD)j"-e-aD`LA(0` lpmEdG-Lq1Kh31rNp8YL2rrdBh&F&%KYLYFq8(,[VRDR)B*r#X'pYcZN)B+5JRTI ijMkrSmrGlQ1iXA`QADcD5DXq-lX-RDBYh[0IhFU3!$N3NX%jkB,$8G"`0MD`a61 qBiS%l81'&,`Z*dba3aV+F!F'iQq&,@6,lqKhRh50ccQZf40hE%1SXANX4+G,RD5 ZYaD6+'i`ESJDFE!PKeXP3!iQm5%G4SDh@kP'"lUL'-5mi!,5S%q-`bS#36)N4K4 SDPKbF-&%5SM'HHQ4K#pC!3L3!'9'&iMKJQ`#34rcH-Ma*,)&)*!!!4jGN!"#4HS UMj88T#3,#8$H[@54,ZLN!#%*R''PBAT8C)[r!%HF[hRa,+"cL4IBU%!kL$'8!Ic N*A(Tb@%4TfYdQ+8,G-K$-9TbAVkXfK$3K"+9U)aP[K`GFBK!T#2!jJl,`F2%S!+ aLeA0G,8VJadr"mdkMDk*KJSD8i+![c4JLeNSS""%pQ2&*f&4LkkFCM@[QFeYZU5 ETTbH20fC2Hji-Cr%U4SljjQkCiEZP35E3aKJ9SBNH+80rU6$SqT3PGjNa*Xp)m1 Y&*+KJj+-PB%M!Z2Dq8ja!K1N#5L#'bBk%BYk*+-ElHK83#V0F`B%A#&6&&3B`Ke 9AC3Rq9PA90ae"ePaM'a#r5HJ(&98DedV@`RGA@V+X,HR*8eU*lh9'2l#P&8Cd)Z qSK[TdRS8K63`-@m#!4aqG49[J@!+V`N$(+S5,FDT*PS41D4Ff1+@ZG,"1AC0SPk "CjA$@LLK#%fSYqT#"iGk,CN*d1TNQ0*(,4cQ$AJP#"``UpP%pG&E6JUYAT-Tc9i 9bb4V,9CE*p*1raM4VUVGkhbNYG[![Q'`*T5VA4"EK+2N9B9AFBQX)"[@K!BZ,hZ a,"eJQYNcE2@Bf)10BNIlbZTHpl4&51ea@HXc,bS,-&c&NPRXBl2C`%'`pSU3!,S 5HpbU'2BNaGdZm)a)XIY0jS52E@9cR9YDcZV+@dD!64YbLeP[q3@pdS9TDfFP,GL DT5-6B9D'D$ZUGVA[E#ma,%6ZYYrjj[HiKIQVHq%,i&F1c+eHLE![2l-f19LNT-i G9Nr,LdjpmBQEJ",8''r&45q#%34`p#*JMVaN'G6J@9jF!a[U3-$dfJe[3dlSNZ% JNVH*K)a88b1JMRQ%-Y$"#6b%Q%Bb#M%'UXN0D@"$9G4mKlE*!38YL%(RKL@60SQ PMf+L-jX"948JQ!eYKGjFSF'CZN)[e*f0EP@F#md[a)%!##JV!pIN8)FbH,1CG$! #5#S,JdmlC3V0%fHTmAK--@1%M@kdC3-RZ8GGqV(@)"!N)BR$5%5b#T50a#!)),P *AP05,mI%*,)e18P4fMU2cKlfIh)`,'!HdeYSPTJFV1I0*4rc"$R4S!C&q,i"ZS3 flCV+(9a`JQ%YfFl("-+5Kb9P+KH`MeH1%!VH,C)8j(TAYq,h'A9PCa68ZmUI,N+ 5-S5qIB[%cPA*Yj*3-*'lYFrKQ[)FDmSCdJGPc!8!!JY08fYPE%KPE(!ZF("bEfS ZFR0bB`#3+e4&@&435Ne0!3#F$a)DRm@5TJ#3"K[N!*!'$IN!!"4K!*!'jC0l%P# 4%mE0R#PVbV!"dDB1'cTTi,!Tdq*1'MGNhY`"3DC-QcF'k4#%#&)(##3+i6"m3mC KQ6i0'J5NJLE0R*8Y*i*!8j!!c-5EBADQ"'%4SdB@)#i5V6N'$3JkCI$3B4JQ$`J aC8$-'52R$CZ*C+l@S3-cS*Xh8mZ3!%N$PB`,%###J+!5P8k4Y92PP"Rc4NjBQb$ Uc&(lp-e1Vf(TS-N+95T5a@rUR%(M!UE-"$&SJ&"5adh@'$P`f%L3!!"+')FJL03 4mXCQf33h0KHX%dD19G!iET6ZflB`##CT*Y1C!UF-BG0E`b`8BrA*R6*Z6YDQijN 1(G)*A[G#d`E%P$GQk0bTRAA)QcC`#ZE"cVipDFZGfB*SJP!K5MC`GX5m#&@1Q6" MP"&6!S+9-BG-*#4Ka"!J91%%%88BNB3644!a&a)6,[%&&%&--8336-"%@K-HdC& (FA-J&88GDBba"KN%hB(8%e-Ni3BGCL"&a4YHfBJM8UDjk'11)#"Ba)0$L*K!%`j "9"mE4l$aKKM+T3J#Afemj)D1""RdT(i0*!"(9`'fT0G*+9ea%4NfXJ9Q'ZK0e!C dG)4"NKX$fP&EQ!P!G4mF*P&4"")p6E3$DA[X9#KMKLf'(e&VDM4AAAI*TaGIIS' JT+0`6-'99fbBC0k0AE&"+%D'*T!!++H3!"Ued9DP,PHETRab#TaR52(%KKQQR9' '5Ib9iDXFKbE+aN9CM9'(((VGb)C9GKDQ%RLYCV54NZkT#S)EGE5"P4`J8(ZXCcF TTDXC)!49P,@dKMRQ'f8ZQa@K$i'C!&CRA-5RS%6B"-FEJk(JCdSTk%GD[h2m1pL S)RQ&!UHHaPS`Rd0)1CLDVMkFjTS6*`!G'@!'&$'S[LQ@E&qA6U8`@fQ!p"B)E"# K8*e*h@6bDf&me0P8G"Jf""*"1(&%%8mYGZ@bc8i&+mQ$@AI4'9IP8GQ!lmCl*K& [M2`9##M%2(-B`0iSE"Pb6-bRRR,`QB"RGpckDe*L$fX[[[U5aVEE)1M3Je$iiEd #c$)r&)E"#D5"lYh)JX!$#$!8$ChDL(Z@ppi`%'liYQAF-@j@2S"`4"Pd$%%('df %JBI'q'R04JU1iiNGfjY2lMRSST0Z1ZUGI[T9a`P-3I[S9LKA4aQiUij8j'A`lVA JXZ11G`ZBYidXkbT`26"qARMK`ZBS"BF'(E`,UMS+-##eI*f2PI%RllBQVRIdEK[ mFFJ*'*('3f5$8$8)C[6e&%%ZHYT+#Q5Yk#KPD9ZMNKaH4T1XT%F18q&,4ej$,C2 TEcVKNN0`,U+FCqe%2S#C3mrd%TB`f-aSI#'99dj`%lfBJ@c3#G"Vp-5'i8h0A@4 5LlcQ!X!eU-jkLe'GU%$5-&-YDJFAK+"j1K)fU!c,E+4"QpV1"cDi1C&XFa0@h3U (,K3m-(3XbFVH2KFk+C6"$+-5@""eYcV@QFaeT+%E(%Nc"K-kF$T,c!Tie%DDLe3 "$N)B5mrFB")qNSD+XQY"$!L(RBYJl3jZ#+4e5P)Npb$bIBXdj%9k9BBr&Y+5JD2 CqeT`,NibXSpZi13M#9R*pPabEk8-Jkp1Q3#d,%B1&KQ-)40`b[Ra%@[MSb,[2)B 4q48c*J%jP8qb8K-kP#Xk#*59(#`MTKbD+5Y0L-aJJ&J'+0$"*&"ScBf3!2K0Q)% NAq2%b4bD1,Dbf5X"8X51b8`$3D3%jbakBDIF"L4(2Xd6JqqML`JC9UVLXI%aLr% Qlblh6`L#B'mAS8Qha0!kYI@62IIX5eB#fN1#1JaL"h@F0iph[f%Q!*KX4!%CDaH m'K)2T")$!I3iYEPKISa2#YNQ3a1+34jdVR&[Y+J@jpJlfTN4M5!aD+c-GdlqU,' EddQ"560k*Si#D!dHCB053BA3EY)"+8!Bb&99Cp0M%K0Nb%c!(mPJ*fB1C9dDBD$ 4kJ!(YN)&"'@`!jdBiVfTB!9Z)0",`N#bcCkPkc9`hBKJdk#(TldX#HLD`aZ3!,* B26$'D#N$#NB#ZaIPM-&a-%1@#+Fc"`ULbi+0S3-$$92CbfBPXdJ"L3FYU%(Ki*8 -[JVAD4IcQSk)d)aMQ)TR#22ATK6%9f&jkPA3dV2Z!1BX8b%J8RS#fSQ%*edBH8h 29$)(0%5'$@'"lP@5a4-h)$F&EfNJ#1b3!)E-!9GThR9)@2ik"mB5aV!hZ`bXM11 'Pd(")3Y*,8FdBX$$lF9!FkL093aVK[XY*,%hV#DmG(JQZYSe+bKS,4P-`KU[P+% J8)6RRV!M"j1mPj(XRB2EV'5U-[6e-@q!`iU20f1YX,('9(eEX2BCTSXQ!&c[ia6 'b+#pId(`a(`U!N%'mpi-,a4G'UiSGRa-QJ9DGbV[Xr)CTr)h'TabJ@*JlRPN"fB aG`Gk-[Lb#lC,jMA('!4r5c-I&eMEll@jcP1"(QMH5CVV`5&l,[!Y(GlV!McIZDq Rp$1JfH[H[@"jEm6LSk#'S"bk5%9JkL2B+9[F9pNT@R[FFl&`6ZQ'&AXkdpM6AUP &HmS8QrTp'AC"Q#GjjX#k'3kX@iXGB0Dp8I-aPVPpRkY&bj%dl&V1l0RZUrF@DcC $lp1"0Y#J(AhVA"ZEek,qhLQMZHcefX68d%2"UXNP8fQYH+TGj$DaImSkkJSXaUC QYj6C3q9'4[E'kcBhXB1D,@lEb%#HKMHVGbQqP*E2aV%bGI8i,CcdVBq@[Q52ZXR p[R%$((V$*YFTfbFj@#r3f8p"pCqe*fK#EpIDZfDiYY2k%EeL0bbY"@ddVc)V%a* &)@b3!'Y@@TS'-Vch5KfXfB!pmaUXe,&!S%9#cmZ3!09dNB%-*cbC#TF6'BcF*-a i+0PFkpV@eqJPAb!TpafBiT3lI$FX[[,-5,*5%&[Qcm*YaDYHEa3#Z%cK)J'51pR bS*LR[FCAcZ3XM-)!bI&+58DJjER2(5ed![UQMQi)8)#hIZ%)BdIT(FRU9RIhCGN *H8e&jJf5fD2PkfDjd*h@F`h821[QYVReBpDcPqGmkcD$2*1N4leY6frS[q%H1hH hV1CKbP9E'aTkTIqUV@&Ikir(f+6Ce1[`8f)m@eqCXY8qjH8XIK1-Ij[BL`2UBSK DZ$2JFk18if01"G5H(-Z1qq91mHEQF%VIK@jdT6XGmEpL6r0Ve+6fae,#me,8&e) FPccejeeh-(fT`dCPK9B(%b0(d"9h`"VkYc%B`6Y%%#0C03Hi-f3&SbdN&#-)4c) +4#Y9GQTrXQMYG3HM*a"&X&CYP@%1TfQ))RJN+'"VN6"X8"8SQ!#+ef5IKa'KGf5 1eM'qG"PA-(kJP9KAFKi!"b!3S9G)XB0K)!BkB8'9-K9c`Ld[pd'6F5c#S9e'-h- RZ&-`P#jRSKkK4@lLP@*TJ)9CS43@P%*3F50HTd8Z!aG,#"e0'#NE!4JG)BA'ePC NJ"63FB9CD$4Eb"$383F[paUG38VH)iCfCN&Q@"X49M88PK9"%&b&H&FS3)Kka@% m-K%JpNlae%IqPdp@e%jCK%jmXS'%0i%DBB%Ib$'@JbkNk&Tc9'm)SiKPN!!%80% '++!@E%%Lh))8-)"ZXh0rYR1"$4K62c9[MG5+k-FikXF'ZY4qf#Jl-P!$UmG(5JF F8-'!ZE085B'0$iK6h-KqF648I&3%EL#-a1J4aiJAbPJ(c'K5jFJ@6%G%"E9rE)! 8i9J$$dJiY(J(qbJ%Y@&-D)9$%hC0D))I3pBQG+#+)eCP*ZCSM*4DbM34*K'5CB" LhdFZ5$&a"U*2@-42mNJD3aJ@ld0'6T!!181Q%EQ)%@CN*@j`2dKaNhIJ6A+!!SS N9B66%PPL&Hrc*%#CNiF)!N#3!%d&3P)&#C8b#"9JpBP6f&C8#9EdSR`p@C8L-6c K8aG'3%6N8jC5%Ac%dic["'5`K)&%jJ*'0Qh"46M*efCA"QFJ-(Y9*QYQpRU"L@C i@AZRafCa9TL'aRZT"`*ljNmL*cZ#8T0h3)1"a6XJZ5Lb3dBl'4Pb%#!SF!+#JJ9 8F!+jNK+@0Qec%)+USKGK%"DXNPT+JJ4-!#pVJ'P53C,K8`3f-KJ3K*Yd3**HJ"4 N4**X#Cbk@B2i`6Y)8!9Z)#8ZJTb,`MYQK)T-CL#H#CUCL5S)U#dC)6N@S4K*SAb 5"3*R`#0N`"aCB4N"i355dQ"RX%14-48+5"9ZB"Ac"bPEdf"63BG'ii689CpYS"k )j@$EJKB[)c2pd3D*Bd(FiLhj)bl%CLl+`B[9mTlq8b#[3BFp*%"MF#`ZmNbJP4k j49GI5+*C88#F"AB'S9Z1maUCZ%"`d8$4`48IGPHBb%Bd"bi[8cS*S48lC%&KjKG NFa-8T&Gbd)-UB8&1D!B%-5GID%&1QM0kY&YCF3B8Z&aim"E8"%mR#A!H"jLd9Ql 1Kf[&YQ[3&QU)aLFUH42[!fh`jhdU0R!`@D'F*$XC"h#k"J,)PJ!dj6k8JjHH*jG &D*FCb5GjbCLfTAU&bAb#1DDb9jKXGTK[TQH+f@Q+DQHq4cq"G$q*8BBkUN!*#K) R)&c'N4L'-@Zh&()L*%"M"cUVfM1[840Kf'Rbi6r3PC*iGeR4BK%*P+)J-BI4)9M rBK#-mU+A3BTaPeGdBRN%+6Z8LBj$4PP)F3+Qq6r$FjTpJbc-Q*,iKT)Pq"81+3G 33#Ep5$mdDC1!D*l336CYT9Q"`A9haD`h`Mrq3bGTF#Ce5@L[3@Q4Ta$MUD[r#PV -DKYpCek+FRAma4%a%Kh+iCTNN!!(,2!D84%JF$!9r3-Z&S5PNS*eA$0f,9*f"[T AJeGi5N'XK285Pi&I4U1XmcThi'0j3HKS6PQSli@%ar3a,J!!!JT08fYPE&*RELj `N!0bEfSZFR0bB`#3+e4&@&435Ne0!3#F#c5&Rm@5[J#3"K4P!*!'#Zd!!(+l!*! 'Xbel%P#4%mE0R#PVbV!"dDB1'cTTi,!Tdq*1'MGNhY`"3DC-QcF'k4#%#&)(##P PcU3"bI!0'BGPqM4S%*!!#TSdFeUqR!J#68%b%h1'!@%4SdB3&iRH()-'""ddC9V @Q41e6CJm)-4%(F-QcCL%C%$mP"Q3!!c"-fI+K+AcKL2"MA,+M+&6m%a3&b"!f)` DGfl11@h0KVRM4QaF%'2HY"&c85e50fc**KJkjk*G[LPAZQ(K&#U)0hASG(86pBd CT9kEiR3lf!hHNh,Tj"4-'29%b8qMcVPTKJk)K&KA3f860Q2Y-)IRe"%M-XaFafE N+1k-@59)&j+*J"BcX39AVfXX8jG+&I&%j$PcFm3TmHVV*+I9&c@1G)lNZ*AeU1@ X2Ule`Nq&iGYUY"@f'RjTk"G@'$RGS4!Ef-d88!`dJ+"%(D5"%%-110L3!%!#8)6 K%!K%e#(%'cM*4&-#3rMN4PTck#!C$$Hm!!-1,h3)3SYe13DDD)f"!&KR!L*&a`Q c[98BJf)aK&`FGC444S3"3I''((3iaKB)6+4a"KTd6!'(P''&1-FBB5adJi8&eB% F9K[LF-1(G%SQ"&C21&JB%XM434SGG($@#aTYJ$#&DA6FJ9`CG$DDJ'3c`%#LA"j T*BH'(+lj""+)ZCM@@QdT"`FF9rTQ4aPb9-C5$#l!-!-)+Q+BKQp0)+53!"4RZ,& $!aGP+BFCcT8a8`*6P6%(653NBF33)&6K""&&'*'%%d83S4F5dbla"44"6$&%%%c )p'%6(Y'4ajKcF"C&(H$4aYN68b3"Q4QF8I(''fc)5`Hp))6iPElm)P[%Xd1)Qd" c"YR+"QF02C5'`NH`mBBBDDD,Q')Ik6SX(0+0S9BGKq(UaK8AN5([V,[1P%BE%RP 8"Q3#DMDX(FJem+%FZ9U**8TcQF3c(6XNX!F)T1iFQj!!#8E9!JKQA-P4'9R1*Gj m)*`Kh4dj'8c94(1*l(1ZI')d8G"#)`CbA*!!JH#ICNkeT49VY@QY8'aA31@'54+ rf#[C3d284QQRXF'JEppp"D[0#@a00e4aQ@6PhQ9,M#C*KCN'JZ"c%0k9i3CE*3H 88SC)Kq-#qUUac4briI&,K`dKX4L@TTb!9LUjJ6J4l,e"PFJS+0jeVLRXqU(VZTG "XP&hS)$cb#8(Er2,C+3F80eTm244XI9aT0&QF&G0%&Dq8kjfE(AaP*4kBjcp-Kf 5&8h(DbM4!6+!RZ(R%&eTpc9JB@4Nr[0VHaRIA,+A*NAP`6iVqXkSY03@p+N[EHl lRiT3el'2(8Bl8jKEeil@1lTJkA'3!$%*UIB'!TTGURpdq*R2BZ-ma*N3F3Q!3k" BF`BSM+jI+)+-m'lQZSLXF#il2"K8G(E$)a$%$$D83a$Ypa#6R!KIC5K)%1%3Shk pE!Tdb9)3df#5AU8%9E+Mh883G`5S%4%&Z5'LmhMB&6L!3!FpS!i4[H###-CQKh, S)4aF)!F[JHQ0FFaM'rRS4pmX,3Bef'%Ck3#&+fDa$#LJiKT"p$,4SF"U9jPN)ph 3"*G!%Ji#`X+9*LQB'[S'MN,b)#0c#$6%f9!'2d0"+@h)Q9R1%)8rQk34#2+h@1+ 5K6Zm`deiJXAUX8%lYFN)$-9SZdBYXT2&LL3G*[QK0*c'$@r`64'JP#BE5V1@Cl& K#UMMKV*GVc`qbFP(6N8'cM#P4q2lcq%Fa8`BdQQABHKPE'6T2f$Dmd1f"#64@ZN S%0%"P[Zd*@FbebF3hV+IFk%QRCKibMKQF)0ci@F+Bm-C38DNPK#GCK$[bFXbq$+ N%[e3dbk9"S&+DNXaJ)&-YII2$idd!G!,BNi4KdppC[5A%3hDd&$&S+KJcMIkQfF #-XK)4`VSNh0BidiTU$S,4U8*6iU55A-&!Z9pc3eK!dSC@[LK&p)*$SjcUKDAkF3 mV*91A(a-PY+La'(9md1,h#3@RaT*69C53#M`(1M+)$UrFY+6N463%0i!KccSXU5 mNm-NQDVA4rCeKf)3U'#e+VSY`+!,I"-5Eh`$5N#KUM!V"3&Tm%#i0#h%B+PY+5T IfKBEd*41Q`fGJ,D3!)BZD$DVZU8$Ed'`!Jf"&R'j*HaZEq"E9)T"H&10B39C&j8 NL&9f#6"V0EX)Q5r@e@ChA5V8MNF'25S[9q5G*&BrTeAHK8pN`5XEEB5N3I'YM58 r'Ne8$)B5UY#"[(SN@pR``jE$F+`-GPM*9-`6%6L)4ea6$FJ6q,HGlK4Z$HimckA QSj(A6"KT,q,*KF%j'1pGKEjFSpapb"ILU$!TEfF3LcT"8alK++3ifh[2DBTe`VI N"*YZD)&(C)J9rE%!0hB6#aR#-UZfM5GmE,[[NM!b[[Rf*c-J3G*R3U0I+L8!2Nm HE3Z!3a3Q'BGlZ5Q-FTK$N!!"UJI+,*(bBc)A46*)jLG9INZ%0MCGN!"GPFC43H- 3EqM3(6J&Eb#T(G"d8N8[dT@XfDhC4(p)d*[PkUYK(CYG-p2-"&`+PFXM,ahY#%6 %@911lfX+$p4'b#mC8N-e)1H(KYD3!-bT0TX-0Pa5qZKU%+JP,8UG(DIYH@SdJQ" TiD[Ebd$!JcJZNJMFSF,+aLVVSFe+bd2*b()X[,Ne"2Y$i@e8XT-mfp"Qa!dRm!e G%U,D-V!fepif-hHmdqe[IiLT!'lMHCQ(NC3QS!J%f9fZHPGIq0id!IdGEmN#A&1 Q&S&PjR*[`B%R920%m9*b0KLGS'G2K9$PRq'QdlLAM8UJ0@TSGB!$'Ci+la)L*`e Ki)kal*fiqLVl-#8Ip-%a@2"pTR''NUhiI1&F'2f9Elme268fY3Ra2-45XZ5XUE" V*r9r"hbVEL"iLJeHpC%ATYa9Ajj!R9#'1iMXi"rk@@4ce9&r9r-d+"$#V(i5@*G BE$I@T--5bZ$BFI,!"b"iUGeQl44Mq3E[[IN0hfP1*pbC`3`5hcVEe6Ejp`+[kKi A9N(T*#Z3!%3q0L,VD18RlJDh*`"hFb#9`,1q2,I[e&'[rp$V)ia`YEaP21Q6!pU 3!)TPeq3&c2)Tf9%8P4-%+DLMaNSDNU[$YLfCB9ClPQj9UGXXPE0FHFPAN!!6lh@ HdQ0AZjkQG"L(r5'!&rATk#hCU%Z9bafHf[KDXYXbb6p4JBCDrA9NrahYZ6`LrSr AI`4U19-UqY0UIh4)L54I@HBEf!1![[&VJ%-8`VF4'ZGT"PK4V1D!a`CV)i99F2" j[m-prDGrFp&f)c@#4M0!!XK[C,"q+8J(-"4l42!@4U34*i)(qjCHlRGGci-4XT- kUq0R)"!%8N-c@G*9cJ%4Tl*p8&33C"9H-cJB0AJ(0jL$cH0qTj'%DA!U8GGi1"& c%j%%@G)'++!@Xd)ZEP!(R!%$+B!iQ3G$4H!'B&J'BZJ4C8J'CrJbDKKiNa5&Gi# '*S)Fd1@$I$Cp3LJbj(8bV34Hp)G&GI"i51"Z+!!%b58kR(%#-'!'FM)'-e!'-@! '0))$-c!'-9!'*c"*pdGPU,4)C(F(j+849SJ4rF8CEP!pR2'+Gj!!4#M3!M'3!!+ N9!GYd!CBJ8S+JiZaf%iJ!!634"@dD)[*Q()VPb@F!34DD)4Pd)`,Nic%!cZS-Sh @04(m)3G4-NR@PLYA%KA!F@&CJcK$JdhQ86a%dc(c0$4iQ(UkNbEaU$T+C@eLPBp MF$L)Ji)ETB+"P(iBiB)$@@Q@ph9ae)TR9cEKiaKb0Q6QmKLc!R0X`!CBS5)IiR8 Z9A(2PbUD!ak)84$TPK94X@l,*QpX3'mN#@'%#$dZ!!!##de6Df9X@Qp[E5j`F(* [DLjbFh*M!*!V9%9B9&"+68d"!*`1c*ZIaC,5!*!'%mB!N!B,)!!!E`F!N!D0qRX 58*%6aXfF+@[+X!(4TJiE1QRJX#R6iNiD0f6Hh!&"TNbE0`ET%)3)8JF),@rHY*& 5CJ`GKQr)1#c6Td'$J&63T*N$8qC%%'J+NTR)-``)LaJeJVKi91FB0#$Qe"NcTXb F1@RXP!&"-'NE0RP!R#RMTXc)-Q4U"T66NNl"-d4"K'%EpH-E1QM!,R9$abbF0fc #p#@cPmiE%##h&Vb,aU`,%#"bEL@c8f+B2'S6l'bDTLpL0b$%""kcKJARTebY1U6 $NqNFP9X[pQ8l"k+E-b$Jb(NMfL02&(2+d,bC3!X4JRH1l,iMj!dHdfEHb0PEZf$ 9&)mM0qCB1A$B-'68e+RGQV9#-b!-Tpq19Fr`J'r3ipf+01-GdkrA#ekr98r+0P' CPBC9FV&aaf8mX6%J#'4"a*CH&Z&e8@Ec(A@4IGN0S5"T&q&@i8IMa3CDKI8T"8F B)I*8)@9c@"C@(AbP`3D&fiP4"af'JEECJf@%%4`C,Y4%A!`dJ+!%M&[&N!!$$MB NN!!!&#JZ4%3GcHf8f3e'&P6(A'%TLF-0#I`Paf$T(FC%'QHJ3FF8F!K('*4cM"( '3Q+%pF3GC)'!a&adP)@MN`PNeJXD!%i4(ad(dM@%5LHkNBF,J%BUDD!f03"MCb! dJC!!3LLTY)00XTPP4KK9fC4!LMH4N!#%%81!8)864"4K4"*1&%&%C%M3ZX3A8!3 aa4""-&'6Ndei4%FHEFjK@K4eT%%D'FLCpX385I"PKQP8T-4'YA4F#`+8T((VEDT &`$V%X!NdX9SDQl*a""ZmcDNX#'1Sp*%Ef(Ce8%*XI0T!Q,Y9*40GRECaaBA9GZC ['Qe)j&'$JU8"8U8*e"[5[`RiTp)8IF("8`mJa&$$$NlZ!F))UER8QSjmq39Ba&S &+-H!2!QCJ"ecBD`(5bkC0"G"H@`"J`XZD0`'af9ih!9Lk2&-"mN*Q"cF5r%9jR* JC,,PdPYaSD[(&(+-iE4*6RrUC(YPB)&I'ZjPB9+SBmN"GFP4XEe9e59Za"3FDH# K8-fQk[D'`(A3088CG"3mKGhq1SQc("JR)!ICE68Z4KPRA)6aG$U!E26"'(RKJTK dP,fj#c1Rq9,RA+'1TTSJY"$bb*'DR*%E*l`8)PH[[i6@@##JLcB@),!ZKqZUQjd !fPN8$r,aBYaP@"YQNd@'[fXKAMM,IF8G'Z*ijZRHER*Ka&!BH)#!`N9MX$&H9Q9 J"jQ28V9"B"[S,c9(CQk!e%*CCi"C'B*N+M2!b#85!id8K+)qr1(KE5f,@`SJf$f c01jQ13-8(5L)13ZDkR+CF`2'9JHb"AT&H@P!$`TH`J-3`#!&r"'K"TdAZkGKc)5 %BGe,2N)B&$J3"#X)@3UUKa(X*B"E9a2-hFU5-VIFjLGcX!YHp#+E`baQ2XH$6"% )%Kcqj)BYGT!!f(Jb%jbC%FK(ALc,4K+M2iiJa`d%r*IJ#%FAScP0IA+)J@RN)!2 +Z@5)TX)Jj!#9aiQBJ3jlM)&Ki-$"Z#N[!@``c3DYjXM)UD'4(J38'SL3!%*[fB' 6C[#@4FJ!5QqTUC5BP&[Nj'!D-D6bNA)i'"RfL)4*`Xf$r`+KjTa8b$)FNSCjG)% KEFK,4Ei"$X#-J3X@UEa0GK+B-K#Q,emLZeiH%QTlq!Y@)"+c&-)NM,FT%qp8&cb -II+CaS[Q)Q2(&@2#!C[Dl!cmPS+HMi!60rCaJj0X*MPC*K0jX+YQ$)DT2$R8mTr 4`j&+f*P(CQ*XP+@N)3Vi#&"UFL@D`i4K0@AC6$T%P(86M@C#TmG3G4j6SebTT4' Pdj(T9+d-1(0Ia%$54SD4VL![B8U&Y2D5HV(d)NUNejc'i*!!Q4U%J!("LKZU8U# &c+8cK%+FXfSD3E1B*Jp[U)03FIH51B3KCK#aAfM#)LFf%"9V(FU-'PjJ0+4jV(b %H9mimE)IfAAQ"'aBb(LfP0H`A!i%ihY$(*d8RHQSJBBa%'GE1mD6M%41Pc)%P"% )BMqRS@"REGR#B@8AJbi-XAB-iU*LQXLeVD$,53XahN#R#86e1618)&!"#03!3mV B!E$rFHXF(TN!%VCcR8&%`6PK+e[DFZHfLdhDEL-R14SZ*)La6!0KJJ[4CaDhYPR "lFBBbeXad2!Pd$eSF%pThGPL&lQjj5jc$eHkYPc@DCTPCfG0%mRdl,'9J)c8C-0 3@IGLeLAajDaR(fNp)Pi[F!&$5q'fNS5KP1'#MiYF'PiC16M33BqjS8-I[r8'f6b 5$,8C'`K-Pd[-l6)"l)8#(9"JB3cM%$Kf`d)+620LjUAJXbBE5eR1!J)e0V'F6NV aLLdX!aS,"FEZNE'4-B,N-Q6KaL3c'310*Xl1l"0M+TD"C9YX'L+E"X6YrD2bf!X k-QJS)TIp6jNr5lIEjFk0BG!ED&)(ZpqC&Q-&XqcA`ZDd,iHi,IP0!%ZQ9ZBc[e0 RB"0E@fJ)CY-PS-!f#BKiDT-E&(@4bLab%@Gq!U)ZjY0QFe3`ACU3!08ZVV!a+ME *AcbF(T2!kcDXjZ%F8TPIb$j8*cp"!FGNa!BLD-30YAe$j(B!'C-G#&-`JXK#1Vd 9'bPdcJVTdBq!$'RL(#I1AMc$FN,MR,e`aM-d&3fTeT!!RCaXCM-LFGBDmQ!5HRS aEjNjYaY)aFdb5()lfPC+p0*RNEaq$mjh!)fi5@-D0'*U$QM)+KX)FlRX#1&'mCE 2G[,@4RV$lpl0lRDr&c)&+L5"#8ci0l6L,2$4V1%chbj$#$*M++"mG5[UH8T,6Rk (aQ$ah4G5bQBX(M2Tp2JZjGj1AbKGf-c`I#Y"8G&KrRUlVFL*,3EXDlY*P210i'r HhUZ0G!JNJaV8!+iZc%aKdb1(1LM'I+0L3h"-dlqAX'91h!C-Md!68l22BE#K(YK --- end of part 1 ---