koreth@panarthea.ebay.sun.com (Steven Grimm) (10/27/90)
Submitted-by: rosenkra@convex1.convex.com (William Rosencranz) Posting-number: Volume 4, Issue 18 Archive-name: popen popen(3) for TOS (rosenkra 14 Oct 90) ------------------------------------- This is an implementation of popen(3) and pclose(3) for TOS. It does not rely on MiNT or other multi-tasking systems. It uses temporary files (and is thus limited to maximum number of open pipes as open files). It is farily robust and has worked for me for the things I use it for. Only source is posted here. The source can be run standalone, with a main program (included). Just define STANDALONE in config.h and compile. Run with no args. If you do this, you might as well set debugging on by setting global _pipdebugging to 1 (by #define DEBUG and #define DEBUG_ON in config.h). To install, compile (after #undef STANDALONE and turning debug off) with: cc -c popen.c and add to your library. You can #define DEBUG but #undef DEBUG_ON to compile with debugging in the code but not turned on. The caller can then declare extern int _pipdebugging and set it to 1 to turn it on at run time. Note that popen and pclose use system(3) to invoke the command. I have included my own system(3) here, though it is renamed _xsystem in the source. This system follows the PATH to find an executable, so you can do: system ("grep whatever"); and it will search PATH for grep.ttp, grep.tos, and grep.prg. It does not handle Bourne shell commands, however. If you do not have a decent system(3), pull it out from the source, compile, and add to your library. Note that _xsystem (which should in this case be renamed system) calls a lower level routine _system, which actually does the Pexec. As far as I recall, _xsystem only calls getenv(3) and access(2), and probably string stuff. Nothing fancy. It should be pretty portable between compilers. There is also a system call included called _psystem which attempts to do the command via gulam. I have not tried this (successfully), however. It should be possible, though. The code is setup to use _xsystem. If you want to play with gulam invoking the command, #define SYSTEM to be _psystem. I have not been able to get this to work properly. Maybe someone can explain it to me. It runs, but then the prompt flakes out, oscillating rapidly between the prompt and the emacs "Mark Set" string, effectively locking up the system and requiring a soft (or hard) reboot. If you have an environment variable TMP set, popen puts the tmp files in that directory. Otherwise it uses the current directory. There is a manpage included. Also included is output from executing the standalone code with full debugging (file "out"). Note that the manpage only is setup to make the standalone executable, not any library additions. You can do that pretty easily, though. Finally, before compiling the standalone executable, look at the main program for the commands I execute for the read and write popens. They are specific to my config and may need changing for yours. Enjoy... -Bill Rosenkranz rosenkra%c1yankee@convex.com MANIFEST Name Length Stowage SF Size now Date Time CRC ============ ======== ======== ==== ======== ========= ====== ==== CONFIG.H 1011 Crunched 33% 682 14 Oct 90 5:33p 6a6f MAKEFILE 1905 Crunched 44% 1083 14 Oct 90 5:21p 5804 OUT 4070 Crunched 54% 1897 14 Oct 90 4:10p 4f90 POPEN.3 2915 Crunched 42% 1697 14 Oct 90 4:16p d7f2 POPEN.C 24996 Crunched 54% 11645 14 Oct 90 5:28p 414c POPEN.MAN 2894 Crunched 42% 1698 14 Oct 90 4:17p 4213 README 3003 Crunched 40% 1804 14 Oct 90 5:27p 3876 ==== ======== ==== ======== Total 7 40794 50% 20506 table !"#$%&'()*+,-./0123456789:;<=>? @ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_ begin 644 popensrc.arc M&@A#3TY&24<N2 #_J@( $X5*8QO:O,# ,+U0T4 !"18(Q;]R827/&z M!1H0+4 @5,BPCIPR(."\@5/H9*086?#%PX @R91:ZP4BDB) J1Q) (A 0y M!$HS(.B\ 3'D21,H29@4 6'FC1R;9<34.7,FC9LS(TW>=,K2)<PO3YS('%#Sx M9LZ=="RZ 9$0J5*F3L^P^+I3!4D%)U-2!3&%2A G1((PR5ID:]>47T$X'<.Fw M#LJ<9>;0 =$FC%,08LJP>7,G*MPZ;KPB"6*E"%8G1; DH>)7!5*<.D'4F8,Qv M81D\:>B@2!&8\!O6EF46J+F03>*U:7#F>5,'!)HP=EJOA"V;MENI<E?2S5*Wu M2),$";[@F9-'<9DV"6JBH1S8J9TW:S"&D=B&# @V<Y\KT%WS"QSNWMNH9CT't MQ)DZ;(31QEK:X4?'=X+U)Q]]IK4Q5QB9210&&VST9R""89AQX%%PA$''0PM"s MLIMI:5A81AARC(%&&62X ((;;QRH PC#%3<&A"!<Y(: &(4X(@@%=G>@?JE=r MJ!^$[H5!AGNQ!>9C334>!9\8<J"8AXM-WDAA?U\8Z:)\(P3G54LO'6&28&:,q M:=41GPWD%!W9P9$&'"B=U=13(/0 0@P[8%<3:XNE%D-@=2[UWAM:LI&'92. p M(!EK;KH!IWUS%HH6GGK"L,.9'9$1G$F=?JJ 26("5M==>>T%VD !B630A&SDo MA$:)-KV16((@S)%&&P!ZB)$(%4(4*Q_^700'8Q"*(-A88UBDXV*>RN$BC >Zn MFL"''@IF''(8M;$H96-AE@8>+<"7WGO](=1&8Q$FRB*ZQ:UX4:X[U0C"'6E0m M:"T<<KPA1AAB*/IB&>^FIB*$9V#T88DN0#* JV\U.I5T4A01!!%#-$%$ L#.l M45RY(IPY,4972#%:QAN+,(8.7' AAE,MGV$LLFZ$#%>H9@P$&@A-04M%1DE,k M10 #_.P0 $X5IXH$6'$' ,(T"T";.FC)DT;,J ,/-&#@@X;^"4<0,"j MA9,G5(KH /'	L\"QN"F$,GC!LR8=AT5%@&3YDQ=4J*20C")!F!)N&$.5,Fi M!*0!*1HH&"$T($HZ939"(C"E#L4G8^B B$%CJ@T=-&#HF&%C:HX<,(J"L%-&h MSIPT'3?&<!%VJ- I189029"@!X@9;ZL(@2N7;@^A5()(.5)D;MV'$2>ZH$,'g MCM F09Q "4+8+V*);ER00,&72HK-4_1V#JI@2! JDRL?AHC9Q9@P=!Y'GB)Ef MB&76B@>Z$2IXB)$D3(K<3IPYC)PQ;Y$(_AU\-7$7<]#($5JE2A'FPIVWKE.Ge MC% D18(0*2)EBN4Q'0^><8'F;6WSAS>#%T]^2HK+BI$KP B^O&4Y981!1AL*d M#530031M!ID3M UQWQLQ"45$$E-0@9UY=FW&7WWW@?8>:4\(H01\=N&6V1M"c M^<8$920*Q0011JQX!(D@M#"'BTGLY9=L3DPHQ7DZ<*&;D":!%I=G0DE1A62"b M-;&C DI>5(5A=OD 86P*""46&6D &!5:;LSAPD]%"<6EEW2 .8<.0M$%Q$MHa MO $"'7E(!(((!BJ4$ALBS"FG&'4@)-5F@0U6&&ENPBDGG7;B29!":819$AM\z M^@D"H(*^$"E)>X) J&"$(:E HF/$.6>="CE:T)QED-0G'8NV.B@*A8:*: )Oy MEKHHJG?F"<(8"9GTJIP MO$&61R)H<9+=-PX*JZ*GMJHK\"^(88890T+0K''x M*F3MLE'-4=-)GM(*ZJ%M0JNKM*GZ:MP8VOHZ!X3'Z7D<&FD@NUEOV-V:JZF,w MMOOH2&@8%^_ \]91+\'&+8200J I)T6_Z?Z[Z[0#<U?&P:MJ[ 9Z9)1QTZ>&v M>E9N==<!5P1I6@Z%4Z1S&L<3'6,.4*8">^I %\FVMLSSH3IK**)]Z6XVA(/Eu MOA@CB_>U(.?/)@L]8H<H,)$CT5EF'9!N.O%441US*(0I&W2T +,+NKD&V[9Ut M))1"S3=SO5-2"2@866HK^XS"@GBG$#0*IJ%&6=[/3B13N8'W72[?@[.L@-&Gs M]?WW@@TZWG) L+)-41HTD^F6 DB1I'/=YI9\*]141SF9%$VDON034UKN<N:;r M3LH&")S#_7GM.2? .Z5?Z-;R[VP$;]+D=S>>[AAP+)X\850OZ&,*7-C-)/05q M1WM11AMU]!%.;G2MT!UAB$N\R+I?SA$=:)0EIN=$*0!L@&ZP^:P<;90;XM0@p ME&46XI%37M:J=:VRZ&Q^)DD7_LI5JT,Y[WJ$$\J[[+<S%/3F/F$H%[]41K4)o M5>A"_HH6&5:"DS5$Z@P:K W%LJ8Q"I(.94X8PA/&0[4&BHI4IAJA&PI$D!.>n MS#HK%$ITC./"B FF@Q2RD,KL P(?&'%B',S>NG3(0Q.Z 85/#*+60! RS(3Lm M8VEHE>[B9R(7O$%G91S#K]*3AO6T1P$:"$]55 !&24Q% /]I!P 3A56l M@9!/Y@\ QMPJ1QHP/$F#!LV(" \P9.&3<HV,RI Z(%&Q8@1,@1D:*! H8.k M"1I\TR:@&S(]^$BD:)$/1CIY'*:4XQ+$P#1T>L#P"/)A03=AVI0!$3#AFS$@j MY)2ALU GI $V9,2((8-G0Y\@@ I->48'%SIMX'#Y\@5.&H=D7<!XRL=JR()*i MPY I."7+%"I%FD2<6%&ACZY?PXXM>[9,VK4#.BKX@F=.GCETRK0I""4(%20Ih M7; +&8@BS%>.[MA4<;KG#=ZWHAYXX:+Z,]>V:01PT5RF#%S8'.1+4;WTC&Zg MV1Q%Z-HSZ-W#+QZ7@YNTUS-!R^2>6WPT:-UM[@ _/L=A0MUFRI#13:8,]#EMf M%S=^''GRPJ=;0,#HDCD]8\>0)1>$ Q]$#/I\<#:0?>OEYQY_ \0G X#'B48@e M?NWMU]\, );&Q6FIK=::@Q[=QYY^[R4( @T,QC9;;0'A]N"'!_970XF[S;:Bd M@1**: .,O\T888CQW0"C< >Q49V.("(8'PX_)D=DBR+F "-SZ'58X(Y&QC!?c M2A9")U24ZD%8)'Q3 4@=AUVR6.,65)6XY)DQ4)C2<=F-L2:/,9#XIFG>L3%Gb ME2_>R45X9,RI51DIK;3G'"" D-*<,#DDGY1>NG?;&-(ABH(+NTWD AUTP($1a M#(IY2",(DU8*PJ69UN$"''*<\6FH4X)8ZAR68KK2IF_D)A^LD18TJZ4"MG8Kz MIY[NZE$+D!1@$U-EX)$&9(@B6P"D9H+P1:2G'N&5$$DXP0434U3A A540-$7y M"']Y!9989)F%UA=J/15JKR.5%,9)!8' A[9<<.LMN.*2"X5]]-(A$!L%)<N'x M1>@"MNY@[AH&+V($5VMP&@JQ@94,,W3HKEQS@6"&4P/48(0000R!T1@DF822w M2GRUA-&@*?%+11-0# 9%$E 4<1A;&-V!1A@Y[;38QV2$7!2022W5%&)1M5G5v MT6>!O!_)4<\P-6%P6+U0"SY\00<97XR,F,DH#^%QU4GO![;89+-L[TF%QJSGu MVEVW_7788W]!\[Y>W9PS63OW_/, ]B$=,AQO]RTTT3KA[37C?)/M1K-%0X* t MY'J+_089;\@&&=92:>T65G&%;/93:*?L44 #%12D0CU!U.! 7)RA%!Q$W8N1s M"'=P=+I(<KOLIVBY[]Z[&S4U2B@?=]1T4TXQ#/]3=+T;A9123,%!>@PU3%W[r M]5L%J*Y@[19V& PQI#<^"'?(@5-I(E_EQJD.H\^UQ&JQ'ZKB!5E=R4Z&LI6Uq M[%XONUUK=%<&WIFD)G^S&<YTQC.?38Q]-7D<]3BG-(0PC7M/>TK4;K U (80p M*E(A(0?=5KFRD0QM*%OAWN#VA>(A\'BX8Z #[Y4XMBVN<9:+3LT"-T'"57!]o M[9,AY6BHP1Y4CVIY^V$++X>'S*%0:C+T'.A$9\41BL]^!8G?_ +X0@(&X74"n M$0EDPB 'IJ1N(&=82&%<\!2>G.4+J2L('=Y@,(7@X(GNPF,9Y%(0,LCA#L@Zm M0*)@(!\00.(!C'S"&)A2)__(0 <SF $(Q!"&-=@1#H(D9$4.F<A%-A(2#) !l M#&Y Q!(DI*MC($-= #&X"@#'*0PQP^&<J0M8"4D%!D(QF)RAC@@)6NG*1_k M8AD#'=0 ![U;0QG,@+$R\#*/HT1D,$U)S 5P[ 8QR$$R8>F?6<*@!@NQGPO&j M<,U!^A*8PF0D,5.)@Z>,<YG+Q&0K:^<"D[13E+_49CQ/N8 8W."9T'PE/F5)i MRQND,R0N>,,_WWD'/"#+ -QTI#=AD(.HW+.2#%WE0Q^RJ4Y-M" !+>4P-4J5h MCJ)3H2"E 2UC,%(WS, %;&3G1^Z(S91N<Z6/C*0R03I+*X% #W7\R!B$,P?Zg M";!U:E,J4^E7'HU%YFI0*YWXEIHK^@U*9$H9"@JR.A49* 8.7&UJ02 CASHHf MTPQA/159M:88V(D$K5,]52!3EX*F,<5H=EVKP=H(/_G1 8YR= @=!\"3M#JUe MC$*(H52[6I!FE6$,=;@J".IRE[R<2H'):^#R0, #"0[N"X6S8/]B<%;'DF\Hd M<"V#6,D:OM9.5;!M?6M<QRK"%)J56J.JS&4RLYG0&,>XH[$0AE3#FNH$YT2Vc M:<YQ>.,;.FPG-LEQ[G23HQLH.2=WT9D.<F&#'>WHICME^,YQ $4>\X2!2Z*Bb M4G^NQ <7[*D__^$*<N\KH@7AD'G E:^(W,0'Y:*&N1L:4("_)"([\6&ZT$T1a M?&/%I/CTZ<$F$@-_XW,C/^5HP14&@8_\!"3BD"F^##Y2DH*T81 XR4]0VK"5z M*O2<\,HXOWP8DX++-*HJ^1?#,B8PG+0C8P=S)T\ROO!ZQ2,H(6*X.J&%PZ$2y MQ97=,2HF0^D8CW?TJ\\B-\HE+1:HCI6L9=W26="J2+) 7)!KL>A40]A6M[APx M!"D4 0KC*M=H2TO$TZ86B?.JE@WQE2@^Q+E?<Z[SG?,\L X5[& )*P ?3$):w MTU+0<!=,XF(>C3$0:$PD,J#!L>"9453*H)X#^&@L93J#?:K3GPH([$(<J]<[v MBI$.?06AT4!WN<5ZQ",:"%!/4$5.+C, /^A!@ 3A4<@O+78PL Q.u M@C0I @)$ P4)X+R!4\8-"Q!PQK!Y,Z<,B!8)%I:1$X9.FC=N0("$F(;A'(,*t M#D[)XN0)E"E)IA0\F&!$&C<2ZY"QR&,.'3(?7:#Q09.FD21,"*I0R# DBC%Os MVK0)XX;,0SIY&*:@.09-&#D@5$"52M5J6*P,=Q1%&'%B11 H?,HI$Z;-5H1'r MDX:52[>-VI0*B!29,D1*$BA4DCQQ,A,A%(TAQ\SM6.9DF(0E+8HI0^=.F88@q MZ*"Q."8,&S8WST"4\V9,9<M50X\&,79J;)ITWH#87+ ,GC)CZM I0\8%"$@$p MJ(Q. .+KF3IM&M(YF1LBY.9S$[ZY.5P.==UNZIS&O;'-3<ID0,A-?1*J&SIAo M;J8&,7<.PS$>[91ADZ=YP3FCG590;645E!M-O@$G7!G,%=A<2" D\<(3!;7Qn MQDX/@5!&&J)M5) (<H@ @AEO@#494&ZH5B(((MPA(HERT'2''!RF9AP(REEDm MAVEU6#07'77(X09Q(*0Q1P)AJ$?'9&T4I!!W'LK6$7.E0;@93754E%YHNLW(l MH475=:AD65^E=Q,<PHED1@)B$AC;BB>.R%H;-'%XDD]DRI'>&\*A2<>-!]$4k MA)),BM04<0F(T1]3H#51Q114[&81;6X1N5M_$$E$41DN,#<H20S1!!FB,!;Dj MI4<I@D#&&Y6!X,8;=&CX6W##@5#'>VFP(1N#?-559'N5DB$CAVAD6NF-06#&i MD*$-$0EC B>FEB$:;WBFGQP9&IE @K02)^-H(7&8@)',#EE<8S0) 5P863)Xh MG1FYMOJ510#.:U:2:%D$HHANIE>EI+9JV=Q)-%%5I!M^CIAK=P\5B&]6^KJ(g M)&PB]9DFO&QT!RA@+5$Q6&,)/!'2JVZTT(9X'L$WQQKSS9&'3V6T<1(*:;C f M*8Y/3)$""\K*.U>1;<#!1LS2$1D&P0@-%W2)7V&*<:L'&S@;4'/A5V)_]@&7e M!KQ$*KJKAF[8D09K;D3W'DT[TAB&&$/CV 04(LDQ;DAM!CG7>ZJ.#5QN<N2Qd M\4%Y?8Q2 B10\3877WP!1V:)NX ') .P&;-"'/6M\-!'HO#X +\F /D7(*0c M ^1W'50$%@)!D11S-"&QD47:&NQ;74+32^T=\]T>>D6QU@&'?R?V_."65.]=b MYW05TY%P=9>=:M'B#/V-D$TXL:$33SX!]8901"'$E5=@0:["B5^,T49Z/;#(a MQDDML"'"7PET]=5Q ZAP:OGG@Y"^"&/HP(48-^'"&>8"!^TTY7UK2<!4;@*7z MNR1@#S39%AZZ$Y+ '8< 2[D."E( /PE2\&!T2(BFWK)!^$4P<,R!Q &64I(Oy MG&@'"7B!"@C5EQ'!B2XH4HT*7G!"I!0AA2N$WA=.!4,9TM!7I3K5?'880?G)x M+5%U,,,68@ #&="@"T6<H1BB: 8/E2I.3/0>0F*H@@B&A7[721+T+/)%'-H(w M!*/YF6= H(8LQ6I5#U+?'$3@ C/.$')BLN"/@F0N$,SQ7QT*2?#,,*<^CC$Lv M/!SCUN"" B'&J0<&! T*R&<^L^PK!2G07_I0@$(5A-()56 "$QSX0)I S@QPu MH-%[UA27GVP$6RR"BGC(D(!7Q>HZ<5JC"#CHR@'XAD-PB0$QQ]B'!)+1CVALt MBG_6:$.P*#%%QHFC1>:(QR2)8(!E@ ,?H0G(V0B2,X0DTB$-EDA#TJA6N7%Ds M I@3QGE.$@65;.&I])=)I]RODP]IT3!#V8-1EO*4J5QE!"&(D%?&DCNTS-XMr M ZI+-O#2E^5RYY= 589AP@]RQXP5"I39P6:*<9XR).< ;L(F-)!K(@MYR!SCq MQ,BHM-1'..0H7-9'FZC8A@RL/"/D"N2\T(FIJ-1$ 3A_UZ\4&,>78/(*'51Zp MU'<^+S.J8M5),#J9T_3'*W"0YJT\HJLYMF535)T--=E &3D8QS2Z$DU'X!B&o ML#;D)-K\U=?H$+3+E4&EI:KJ1M>8@#-PYB08&]JY/!,_/EFT.>O3#<:ZHU+4n M#.DDFX'1-M\YG^H(\50/F>0<[T"5X13'CY&<YQU<VK:1LI*A"7BE89&'@BV:m MX2%4E,$,'F))'"XSMBLU URZ^ ;AYA,.+O2M Y$CALFLX:,#@*4LZ4#+S[XSl MH"78XT-L^]M7FL%Z (*+=3GTVP28- $13.DC_SB $4;UJB8QSFI!<\A*[2H!k M2,U,:&.52)6NJE5VDHV-((?:")Z5A+T- U [>&"+''>([_QM!$,*%QC\UJ0Jj M*0)!@L"$*5!H<"1J"@IFL+,1N7?$)789S-J 8I0 &@A03U!%3BY# #_i M?2T $X5G8M,0:1A ,(]*X&<.F#IDR($2,>>/&3)HS+M"(:*" X@L5%$&Hh M2 #G#9PR;EB @$/PS1R$9NH,I).&X1P09M[( 4'ER100*(*P&9.'(0@:+F+0g M@,DFC!V9+B -2)$1HP*-"0(.+'@0!(\Y=,BTC.BC:=,$1I(P*:*QXT<W.,>@f M"3-3Q<(V;<*X(2-2+5N-=/)\9/ITHT Z(TN>Q!EVK$:L<LJ$:<-7X]<@=-BFe MH6D3A)TR<N:T1"LF#P@A:=BP 2'%),@U<N3JP2G'M!O484J,B9%'[IHR98 Ld M=',9CXNWC3<*!?%D#. 8.7+ </$YS$DR( 2.9 O89Y,I+8A4OIQY,P@Q=0"Cc M46PGM.>U8VY#CRGG:\V;*!;"R2/G(1K 80"+>4.'SILV(+QA!DRAE9&""U[Ub ME0 =: AT!@AVN7%&&= )1)!!9>B0(%0M@!"7:&^, <(<<(0Q!DHR@>#&8F6\a M)!UB=1@'PA<U:0<"&VE@E=9_<<TU(AWU2?@5"".B\48=;$ G!D)A@#A&?A1^z MY]F3HF$67 (=)H;C:S?FJ%\9[*&46!D.>EA&&S)YAH(98ZK(HDC^O7%EAV&0y M =U!)[H!V!QY8'4F"C.D &&3HZ'P!1Q\^@D@>R"<@>1BT;UD1E&WY0&GD76<x M@<:<$/(($F ,(G2'D6P@Q&"9<D%7YYUE@'?&&64>20<<X7W5H7PMU?$29JW-w MI%89Z:'JXT)5)0:C<74$>8:M'LJ$4(JESO$2%#8E@<4+03@Q11+,SH%IDM\Av MU)$<D8E1*@C^-:OC%%1TV@8<!6:&TT&7L>%1E'>DP2 (.O'$$*>$)F0OE2)8u M)ED8YK8H4DHK;3:'2&70,09S6%$'0K[[JG109@LEAM,7P;U $45275C555D=t M9 97)%M(%4(HDX&C&%PEH-1%,*7XX< 02ZR1R J4_+)56&GU!LL5)7W15U"8s MI%G"()C(DDL!HB772/>Z$:5#I38%] @J"X00$46,1441"20 \EA:PU"$5@4r M,4059Z<=P\A!IV&&ROPR,4063SA!<G1FS 6F96^D0<;@(+2-T%&*I_W7X"!Iq M90;)E>N-MT5.034>&W"D-%I<8[0V1U(#>,TVF&+?Z)S$:\F!PAPI)(#"["ELp M@5BI;N#>0@Q=U(YS43K:-9-T8?RH[,^K.^0V',3#SA;N"9AP.^VZ \F[[\ +o MK\)(0*+[1G2 J0 TWDLKR(1 ZG6IHX#H-BCA2^F2,7Y^@=D[&$MME(&ZZ@HXn M%F!H] 3M4&0/% &+6- & D@<0 5?R,H7S+"#M.'," 6Z&),\=@>9K"%6:$%!m MNLP@& ,Q3P$),%X"&OC ")+A"ROJ7P5QY@06!6A H4+7NPAT+A&.3R5;6H.@l MS)= %;(0@A)\2X_(,,/O#8%'J1(?",J !V"%!R%$1.%?TN;"+XPJ/TT$P176k M JKQV0\G<),;W<B2(K*9K0A#!%H"!#BC&CVA@0- X@NUA@<ZA-$)5-P3D&)$j MAV0A1#I!C!*.=)3%/NQ@<PI('U3.8"\Q-&D. *P82T1$1P+:"!($0.(;[+=(i MP/0 !#!@0ACA$+YT58Q<-^S2:Q3II1.BKW,;89AQ' ; @.SM<$@(@A6*\(7 h MP2T)5*"()M,@HBU^H82'2L-'7H*"%(1Q"*6Z6AW@ !.5[-(G*&#"$X80!";$g M$7-ST5P ([/)Z.@I =$LD9UP8DT+?F]54O3/&4N)$W&2TYPG+ P#':@"LX"$f MGH]4P!8Y4D*$4F2A4\@"NXK0!(3:,WXY*M*1P'6&\2$R#6+@9!D^DAHZE($-e MGLDB)"_2 DAX((L7@2>\Y$D&F^41:"QU:1:7V4P]S6BF^%Q37: X%Y'$L PBd M^2(=^")0/*J @A0QGE.5F*J$2E4I*CAJ0K>HU(0B4&FX3 ^D\<UA(C # 63c M@TK<4*8<4M5'"B$J&0KFD[(FY*@%2U>HOL)/^$G-85)<4N,8PB10C6>*<V%.b M#O_JDXR2"%AZ2T.4!/(5I3(G,864 UI^5S68A"$TAA0)# @7H#4@J"]?R2&0a M<'.C-[QA#2_!T6TP2LTPF,&D,YE#C$XDK31<9E"BH9V&4*L@@>@K#4W200(<z MDAG 4(D-RCW);J#S7.6>2@[4)91R(S8QI7P%E%^)X"C?4$IXZI.\7C+O>,LKy M7E)Z:4A\2!L(^ "^=+7OB" +WXA40 G5($)3%@A??GK7P +N(']_2\3]'M@x M2!C "PU^<(2]P.#Y-M \;6P@S,\8 Q7N,-<:"D!N!#A$(.2Q!HV@(E'_&$$w M?P&41.*PBV$\WP87X,4$B/&03#P 'Q0XP"#@L0_X$ ,=T5?&+VC!D(L,F",?v M.,E+-O)\OSN "_,!QTZV,'WGB^4::SG&7>8#E:W,1SKPH04O./"6^5#F,Z?Yu MR_-M,YK'[$ 1JQF/=OZR4D3\70) 6,OX%;."0"EC$R< Q?0U-!?Z+&/^XCC&t M-G[TE =-@ P+F0\R\%&6Z0ME3&MZTE A] HW'.8[<YG0H-Z(4HC423N.&L-Rs M?O.18QSK[Q: A7F>]9[!.^@#:/F[ODYT2P\-; W?F,:"#K6O+ST#[/ZZUU8.r M<[$W7&MHUYG7CE'0J YZ!X1T5(HG88M:<C:3J[U!#&H %F"DD\-2)A4AK\3/q M ,];RJ]$L8-R6$. DG6Q,'C&DNFY UO(\# 0;#-^IAH3<]J+7ATU2>!]PMI?p MZ/>&U!YV/_WY3RQ5.R:1Z*H.A/),NU]7-2;9B4+,(8G^1!6:T; )-Q9OT;/0o MK>Z"SV%\'&=M&W3U)1!HB7T4$HD:>.[.00VFVX-M5F(L?K48!&@F,L#:64X'n MP 2VNH!WQ"H<$MJR7PZ(;$*HPA$2J+>/S?0@KH*5A/B2@*^FS0QP"!(=!C2[m MK/"*!0E4B@CBN2H=P*0')8 !#MB AZ'")54]X$,)YL 'H[(H\8MO_,7("'@Rl M<,$-(L ["I5B!L,OT?']2RH9K9G /J#3<GA+0/I6^#VE3&A/_T%(_] D!\\Pk MZE0O.7>Z9<3NPR82.J7\'PI/R!$0G++N:I61)^^H D'M+$0X08%*-',&K9%!j M4)K10QG@AWQ"UA'K*2"]%NG.S1X<_^HV:CX(?LSVK_J2;V 7>P(34'9#G;U5i MF5+[&=C>]KP/ .YR1W=%<W=Y1P![!U1VXG?/)R+PLWS*XWUF\%FE0@8N<'DBh M('YI8WI!DSF7@T()@%G)$D*_@X$:V'7P5P1A-W;C9W;2A';YYR#M-W\ ^!<"g M:'=R( <B<8#2U'<>0BC0AUDC 7B"1W@6*!(H8"]K-Q(D>'KJE$"KIQ%XQ#6Cf MT7L(82ZV\1(8@P8(AU'SHT$J@AO0D2X:,SY%@5O"QWIR! =*UD4#XD"G!%4He MI(8^T$5O!1VG5(<)Q1%K*$%'U4 $<$I:E4!RV$5*Y8>GU%6"N(=[%$B&."/Td MYB5YR'#\Y&"GM'5X\WZ'$W\J2']T%T\N^"HPF$!NMUQQ1X,X,8 WF(-\EX!!c M&'B#AP=%B!-(N']*F(>D&("G:(,XF!"K2 9^-X@29 9"^(JQ>(0,08O ^$)Fb M@(&W:(IUMS&[J(,T]8N*^$QR!7F,%XO):(V'-Q?,.(-Z4H/0J(H(Z(LC48U'a MA8U\H(WHR"+?6(KAF(OCR(OE2(US*$%*57GL>(\OI%3OB(O/>'?TN(.LN(UEz M-HQ$B'E&.(N"8I"!](_.B(K1V(M^)XE>@I"PJ)"R>(R"8I%8L80;F$X=^($1y M$X(X 0/B5X))PSDM]5(XM1$&Y08V!5,JT))9U%0%E34[THUT@2Y\<55YA(=1x M%3M.Y4<'Q#E?H9/),U,HXBMRE1!U2%<XI!=F10<%@P(SD2)W<"!? 82L-!.Nw MM%J0DB)N@"2C\96DQ2M(474HI$() !YF8 9;( ,U8 -=D(=&1%"!V):Q,VH/v MQ$KODH<"Y9=/E8<\Y4YT0']L94JHQ'5)@XE?AX+RMX+VUX+X!XIK)XHR"(]Su M)X\"*0(QZ7=UJ(YP0I6DZ4[ZHH\*Z7]U""<B85Q+E8<:. (<F'I/V'H# )O(t MA2/:QQQUE0;-A5A 8BDC$C$&QTW/16XEAP?Z,GG,A 8)!(5*01"*X08O<7 Ys MQ)0N@A9/,ABZ@AF-HS@JPA_Y8QK,82&)T3]Z$IVX>9AV<#!0 YOG.2"$Q9QTr M4$V#U2+C"1A4Y"5"1W3@\2[LB4<+H1*X%34^PAZO%S7[$1[D<UIH:(+ )$S$q M9$Q8@$QD1W<A )LQZ('U%P+UV9R& DW:&7[^!X*:%7TX*2CL9XLG=1+^!YLKp ML *RB3EL *-:M)@SFE"T*9(@<!'!-$S%Y 3'1 4JE32JYQ2LAT=Q,5O)8U+Oo M(A-L87L%HECCX3%L4841<Z 05W#@85@9E5'.XS\#.IWCD1Z(90?*205- 7An MF1C&D280<Z,(\9T0<@<4Z(5VJEMCP%N:<1EE.@!EV09+(B]LHG&CE2ZEHQ@Fm MQ4/Z"3\YQ!X LG?Q5 9?\ 4N -ZUS,3PYYR5'\H )CEUR@1 Q)JB@(BP*90l M<(&"8GYI093JQWZ:Z:%TAP)]>$H+B!,Q8 /A9WS')U7JAY+SYWYZ<X(I&*.=k M>']I%XJ;-P!N!TK@V)D!F8H)$9INTC\]Z"2>52"6AWD8J!2S69O-BJ(AA (Kj MNGX*QHRS6:R9*)F;R(DL" >?J'_\]ZS_QYGB^)G6VH>YZI48680%:(Q)>%3Ji MRH0C.4?XBA-'I8J5>JDN$'@S,%>ON9@C6*,H]*)E,*N24ZNWFJT#DXMRP#LXh M(:J"L@(@L*N]ZJKQ :N"(JP>2*Q>!P*:B*SQ.J_,:E//2@#1FJ_4"II9XW?\g MZH,B$H'<:H'?.@#A*I(G6I(I>COGVJ+SMZXQ.[.T6K.72:_#ZG\[ZYD]NZ\Vf MU*_&"0?_NIJ;1P "2XL$:XM)BWI5>X2O(U6A2@?OTJJG= )<P 4GP'9*02( e MN; )L7B7RI0."[$2"S[O,K'Z4K'SA['^Q[?.Z+<BL'AW&[C29*F82KB99[APd M@+ATH+@H)+7&.IGP6IGR>K4W.XI;.ZW1Z+7]HXZQF+:E9["VJ:32.0"C\IQ1c M\TTAE!AU\G074Q\FE0(_X*E6AS'CA@(JL%0:VYT(<0)R< +#94_S5[N\FZ<Gb M 1@'5X=2Q)3DDWOA02MEI$/<5%80NJ1*$2IH0456U*CZ8J4'I9,Y!)J56S#Da M.[U9E#:.&X\H )>=][<OX0.+E[FM>:T&XIB0*;/N.G_UYXFFFYDOJ[4)J[HYz M:*W5ZW<1-5%-@ *+EP*QR+\%&Y)LJ\!T=\%G4U'[6P=Q*2A\0%^W,R!OJ).Vy M^B8)(0>LZJN$L4 :P:+I6J\2&IG'VJP+K*POZ, X6X"I*Y&:9S,%X+-GX7<5x M# (D3%&^JY-$RP9&FX?@*KOCRK3E^K3IJK:0)+T>6+OX9%?IXI%T0#$68BH-w MXB(O4;TBP5AHD2^B8;]X)%CU<U*E6G0J9YZDU8O?\1]B4'!(MQN:L3%V?+YMv MC*!3=(,I$D7DBJX =I[5X08H%<B$ZB(#LH")_'\2>#K>-<;W.[J +%3N\GD$u M+!)N5 1G8Z(/W*PDM'(XL8P\RJX^++I*\:$,O*Q$#$I Q#X*ZXX\RKC-^LM<t M$L/](WX]RK8V%<E.B\.Q^L51&\9)VLEEAW0+BGN>M8MEP!UY<"H2,A*M84GFs MXAGXUCZO5;[4R\5;B!B* 2")$7<RIR=M=5BR KZQ5(?V^S6VC, _O+%6R\O[r ME[6P',%(7*T_ZW.*88["Z(H)F;EG*RBT/,T@K$YIX\SF"LT2+7ZIQ[P@< )Wq M +WSMWKF:[O ZS_[R<;X@W3VXP8GP)]5- 97A*#?+#\/D@?&::"A,1*5:\TOp M44+0<7,@T!-U )-4 7L4I[[,S[9?%@'H1F) 1W&@B1T$ +VV\G,]3YGL85Ro M.[Y5&LKRE44'3+4 3;HV2\3]5] >=!,#!)^=P<G[7<QL=4:3#NO*\P4O<P6n M/;IK8GPY0]>0>P<UK+)>#& \G#=3F\! G*R6*=!ZZZQ&;-"Z.,$)#=?ZDB$!m MLM55?,7^M[86K1087=CF!,8KZ8$D3<;SU)QZ=5AHK,8#P<9ABH4G'<>Z>S$Ml MU\EX/#[J*]/LBQ9]?!+J/,I!3)#08<H#[+=I-#>M?-@V%<NF,<O*W,]DG<L:k MNLM#/-!E:\SZALP%;*,X:E/:'<S)/,Q*BZ2@S<[/;!C1;-BDG7K5+,IX%,DYj MY,Z+L<\][,^B2\I"C)G8G3;V>L23C=!-_+N7+==C"]$,"1,?K-<'&]H:K>".i MF4 J$P94';WO'=9XI)9R<(81BMBA^Z[#7;J.3=#-+=GSV-9NX'<37N&_>XSHh M0I6<[8&>W>#HG='JK</L';L*H)*W9),OR5 K-Y,OZ>,/Y5._C1!KPE0XC%5Pg M^%5(J2 -96Y;S92799RC57:O-:># 82_PY9S-$C*9T=.M;G32U#R; =XV9=Of MB<)R29=VF>9LD39'-9=U>9=D]TY?GA^Z$N$>WJ[_'.)GW=^H:^+Z6D(&[M 9e MB> <">$ZSN"S&Z@"QP;ZUF[^V5JO52:W=U@= Z>"Q+L ,D(*E]*!RB#X@\82d MIR<4MX71P],?P1Q(IS51<N92]'.O,>J^5TO;AA8WUS_@_" 9=1"E8E)YFM6@c MD@;8FE%70T4GPDJ;$:ADD"SUC!"T;EJ6SDV5@X7C,<?2KACCMNIK IP.YR10b M<GV!RI2B]]QE=NITD.H_-I]>&.6BP>H*HT&!ZBT;!1UK\5NFWA%_(47M3KPHa MQ"BAZM=HO ,C8?"R7HDB,:H.V4<=*L88GLOTL\@Y1%A25$(_ -8=7M;;Z,)Oz MR-Q["R1C,!_BC53GR(\PA-?F/0!S8+Q:&*K5Z(_^9Z\>O<IG$[V@M'HPAIM(y M9_-D4;WR#LJI4[8G--:*;3,$ .@-W-^@]*P% .#CF'<& )J&WCAZ;%*_>.!)x M[& 178L%..,%J/,YAILO!V\E<B)1(^["KIP"Y.H92_3M^2U2?5+ 3.DZ0NQ6w M#?=R!$KU5WZGA,;>0R#!25BH0WR.]H@Z0HDGWT5EAL4$0,Q*?.;HR(B5./E]v M5,N)_<]\S]@B?MUZ2P!.#_4$N'E3?^1 :T-ECQ.(SL%D:S,&T/4&J?)*+/JIu M*/54OW)^1T>IK\%#B >LGWE2#_O?2@!@7[:['_OC;<1M$JH<7;9B7[L-%:E?t M/?1(;_A)3W?./1A);L-%\ 1&\/DP^^%Y5P"ZO-]82_KAS=W*#/G\E?ZP6]$Cs MR5^:I"M^W?U&X/B@Z^>X_/AT2EHH$ +6S=\@8 (F8'"6#,SJ;Q6HI+<%,/\Or M<4KV/\QT6H 8Z__N[XY6@4IZ6P#S_Q*G9/_DS<R@Q/X%,/\O<4HPX)A([\SSq M3SN.:5,>G=QKA/,$\/P\CQ#)O48$WJC:.7D'!=0%F&W5WYXYC9QR=88[O_<$p MD+_2RK\YN'A6$<!;7P#;.,#(W]U]?LN;N/D![?D%&/J$7OND?_NFX7>[?446o M+%$EK/IVW?H.YL'XK\5(__QDWR8D8B),HO9;DR)M3^]PCT?VCB1S'T2J7DMXn M7X#6W_<V#/A)*OCOHS6%?[^'OUZUI/@-;Y1ER_X%(/DHG^Z5C_*-?]_3??T!m M[?D%&/J$7OND?_NF<?K8NONK#["D#_OMF/R;]_2$7OND?_NFD?M@#AB[O_H l M2_K"C_]:C/3'WX[);_S+#P?-C_3/CYN[/=-N]911U%!E58 G=!$A@%5IMODXk M$<4F[,'@/_[9C^03W>>WO(G\5?Z-[?E2[_XJ3YMT.O[NK_*.OGD%,/\O<4KVj MC_\%B+'^G_U(OHS<[_W@?]_33?[5;?XWZV#NK_*T2:?C[_XJ[^B;5P#S_Q*Gi M9/_X?]_3S?^#4?Z-?=T@8 (F8'"6#,SJ;Q6HI+<%,/\O<4KV/\QT6H 8Z__Nh M[XY6@4IZ6P#S_Q*G9/_DS<R@Q/X%,/\O<4HPX)A([\SS3SN.:5,KS@9T@/,$g M\/RXJ>$*.S[TS1@%:/W.;/]'JX$9J.-.2+NXJ>$*.S[TS1@ 3Y*9%4+VGY*0f MQ)(Z]>//M'*5.@=I0Y-$OD[YP4R(.2,D6KG4Q!=.'DEAA4W5>9Q18U@(43G,e M 0)#0"A1TAE;&*+BD2JELHME9Q02B#"E(GRV=+%]A!EHL45'[E!(BGY9ET>6d M^)C2??1*/^(H-.AK'>![1Z*5.P=^]RF8@3HQG@#%OUPI,O!_C_A^=/ CX=<-c MK[P>>.0C6XT3C:3.C)()Q>.E#4GWS2[90@3E9$RW9'&Q'37HTB* $7=O< :Ib M\>GC _3W=M)!GX.:L7-L$!E:<R1S@%(B<%I0X0;\(2H;M.V(P4QKGRZ[^C%.a M$';?'_0]R)P[UP:G94MY,Q480C19L15HT!5) Y0J4+W/U 9V2!I%$ 1$, 1-z M0 05E*00T@85(BUU$"7I O3<FT5 J0*630?/U 9V*$92@$Q#T 1$4$%)"B%My M4"'24@=1DBZ6W:C<>Z1Q(1THP!9G, 9Q+ =G8 =\L45L<09C8%5$B55L<09Vx ML 5VK@!N%TB8@19-!4HY2=<8&$B8@19;=.0.A:2#>40S]075&T;TO2@I4KUEw M<K^#>40SY47 &T;TO2A:";QE<K]N"9=;$ ,P( ,T<)=)^AUL#IZ, O3WNU"8v M]07S/P=AQ"A'#B%GJF]'ZH2TBYM**>_*6;T.PAQ7*BH(,70Z<D97(P(W*@(0u M6KLYU%3DBB\(\21H@;X*W;N'V@802GRT'XUQ(1"B&3 Q6=<BP04B( =<<(&Qt M6+W/U ;7EX>@.E-? /25",/5^TQMT),B0,,I>WRB_?#-J+]L7:#@X@;DJ9- s MSY0QGC;]"1@H$ ,@^>C#AYM**>_*:=DL(2',<:6B@A!GE#PB< ;Q+ (06KLYr MU%3DBB\(\21H@;X$WJC^ :'$1_O1&!<"(9H!$Y-U+1)<( )WP 47&(N630?/q MU ;7EX>@.E->!+Q^'9,X8=ET\$QMT),B(-@I>WRB_?#-J+]L7:#@X@;DJ9.6p MW:A,&>-ITY^ @0(Q )*//GRXV7L992\>\6X*W;N'^NF'!?3<>X0_+5>"DBJ0o M?M+Y=%B6W:C<BP)G$,^GG"H'DM+Q@S\Y9-DF5>Z5FY\OX0;DR;NB<1YA =;n MK=.C@71'OH7<6X:8 :%D'.^D+AYA =3!P)7>D@3;RH[9%>9+BHG+>^DNNZ!m M*H4H!_#-J+]L'1<"D?N1 4O56R94KA17')<%X2U<*P<8>+L]% ,/OURO1TUPl M*1(Q ,R, ,++TU?4+W,6']FL'WD)TU?4+VN;%-BP+MK8(NTO[K2] 5/', Bk M 9?U%)<%X2U<*P<0J;\SY47 FX,!+!)P64_+-2FZ\O(SY47 "Y*//GRX&?V'j MI9VNGNWO+LLY9-F-:N[D@W!H83\M$JCZ,O$.<H;$AUE?,/\O48D-%:K2] 75i MBX&T'XUQ(1"_V%"A*DU?4+V" H0ET*V9BUE?,/^TXYC-J+]L'1<"D?N1 4N6h MS1+A3.5*<<5Q61#>PK5R@(&8]07S_Q*5V%"A*DU>!+P82/O1&!<"\8L-%:K2g MY$7 *RA 6 +=FKF8]07S3SM\3HKA04TBT-+^HQ27%XL2V?P)T)^ @0(HF5 \f M7MHLJ5,_?BB) J5I0Y-$_I@N@R%681)B(! 4B 9=\9B. \5(4#9, 5I<SO e M&JQX ,T8 8V8$Y).B)] J4&4Q\(<RYB[3@@< 1?T 1!< 1), 1I P-X ,Qd M, ,U8%,XPP13< 6QY"A% 2!Q 2LB(M:. P)'\ 5,T 1!< 1), 1J@P<T( ,Pc M$ ,S4 ,!EJ3=%.^.4A0 $A>P(B)'VN^'DBA0FA9M0'! \I-$B55CT 8$!R1>b M=4L6%]M1,R)] J7 -1JW.V[?^1*.4A2?KMLQ/=-N]92455QN@,^(X2!6FE&Aa M.M5Q4<Z" BN7<9TOT23(=1(%5R(,PJFG94LH-(OX:Q26*BU;EZ3*.07;!)ZSz M8Q11(BUP<$XH9._D@K]H\ 5Q 2MC$$;V#DMQ 2LB<K^SB+]H\ 5L$!>P,@9Ay M-(L]""LB<K]Y^4!T< 9?64%)^B-2.B'*Z1^.\@6&7P X4W9$K= A=S'WWB6Sx ME2[YCD5[7P XTYSUH2ET<"D'10=G@);VCB1*PB2&7P XP^]Z I[I CFJ\AW-w M"3]OP!T?)!I95%_\A3,^D=0ZT +GE*.):3MN<09PD +5M$J)HR?@J:B$XBA%v MT0;X"4KWRU\X<TGCLQN1(1 4YRA?(!)?2B3WRU\X\Z14&2GA&9>8\2E')$>0u M4U.VHP*4! <I4$VKE#AZ I[I\GI;TLW(50=E@)_WNU!C< 9P\ 68%4:1?*@ t M,@9GP$U'>M]DK?0CCD*#OM8!?H") J6BV08$!R2NJY%CT 8$!R0@Z>A(>IMXs MM*#><E)GF3AZ IXH\"+;!)YH<A AP';$-P=&8:G2,JI3L$W@B0*IA(%T< 9Hr M"4JGI )3@ 1EPP10D(=3L$W@.3M&8:G2 @?1G?FBJ_0CCD*#OM8!?H") J5^q M1P=G\)5:OY%)2 =G\)4@Z>A(>IL$>J;Z%A>P(B*#6JAG2'S>\@5Q 2LBHA2Gp MI +78R2PU'PB= 9HV2$X$'Z&B09?P 9Q 2LBXM<J<#NSF,,B= 9HV2$Q@)(8o MZ"U?P 9Q 2LB8@*G! -X ,P8 0.IDH9>HIH\ 5Q 2LB$@*G= 1?T 1!< 1)n M, 3S15_>\@5L$!>P(B(A<$I'\ 5,T 1!< 1), 0=:O3_K-^-[?DDSGF$WK.'m MDBA0^M:M$<YQ 2LB\IX%@1"!1P-X *(#K!EZRU?$!>P,@8BX2U?P 9Q 2MCl ML.#B>M'H[;D)P.,H=)MXY 9O< <].%N1ZDU38YT ?Q$AH!0I= :CJ@*WT^_(k MFP+5)"AT< 9?:4TT&0)*D0"4-*HJ<#N04]S-5TV"(D)G@)8=PJO6=+]C< :Cj MB@+]CKPI4$V"0@=G\)5Y2$FCB@*04]S-5TV"(D)G@)8=PJL&+-U'K_0CCD*#i MOM8!?H") J6B>09BB^@B04EBB^@ VZQ=/P9GL+D;F824! <@Z>A(>IL$&C".h M4A0 DH6GG"IG2'QC< 9P\ 5 >'QN<09PD +QT08$!R3-;_1_SOF!_O#-J+]Lg M?2B) J6B>09P\ 68I9H"? 9P\ 68!9*.CJ2W&=_L7(B.4A0 HA7%W9_.Q1!:f M,34A(<XM4@=Q4<YL1WS./ 9G =?@%DI"4D]KE,__@5XD"A0FC8T2>1)<YA e M"4&L-!Y]M 5=X-=[( (NT!]PD'DBX )Q=P:9)P(NX!]SD'FIY$A).D4Q/=-Vd M%4AH<:3]_@5XD"A0"K(_2918A1A>E4"!A!G<292@I *O9ZH.=;%]A!G<292@c MI ("<1!XX% 7VT>8P9U$"4HJ$"0'@0<.=;%]A!EHX4R) J4.A:17M0 %I11Tb M_N9%I.:LA 9;$ ,P( ,T8.=\&><IU 9D0.=O7D1J/N<Q( ,X8.=\&><+(H%;a M$ ,R@ -VCD*) 2M^XBM$61:1$1IYF!BPXB>^0I1EP4IHD(>) 2M^XBM$619Sz MD(>) 2M^XBM$619S$ -YF!BPXB?'\TYID(>) 2M^<CSOI 9YN%!Y\1%^#0-Yy M^.C#AYO:UQK[MB=GWY2=0O+P4R(, O#+E2(H,!FG! ,+STI:6(D,8O"3P0,Gx M"P,R0 ,&GP8SRG\%Q4IH,*-^;;<P< *.>>&UNZ ELB^'"B"F"IP,H9YT /!\w M#0>LI(6G]'JFBA,B 5!0 5(,-B_RK*H]/ DF5DA% ,R< ,@Z82TBYOR(7+Cv M<R0SP;^8 ?!?+@<CKR:LA 8+STJ;@OGB3YG6S=\/WXSZR]9?@ >) J5^!P5!u M0 5(X+H:R4J;8K&.CD*W&84M5W2+)0=G8 <M(%L;E!J> 3_\KB>8D>KS#20.t M@DG#=[\"/QFG! ,+_Q*5R" +/P=.5XD,8O %-0<(/P<S^O"C6U OX:HGP (Gs M,%_T55 OX:HGL ,G,%_T55 OX:HG\-$@GT>(XM=V"P,G@,4# =*L05IT 5^r MC2@Q@,4#@"A.5XDO8;(Q@/GBO]@![?DS']EK'>![AP>) J6_J!1;4 (R0 9=q MX+JMSU]IL/!*L05I$#Q8C+1:;%-IL*,4G0 :R!%*L05IT 5^O;)W$:Q\?N&Up MNZ#:VX>'"B "@<^(X2 _^5R,/)JXK>(@8$"CRA^K55E,0<(/P<S^O"C6U Oo MX:HG\-'S15\%]1*N:K=T< +S15\%]1*N:K<N/5_T55 OX:IV^[P@GT>(XM=Vn M"P,G@,4#P$H2Z-<SBBA8/ !BP+MK0-H)H)(77KLG<4@#TIQM8!_XP0;5>QY&m M@1)F.1W[$D4N$$@ SQ$O<4HF,.>[<U#J#P(=0@-V_IC2??1*/^(H-.AK'>![l MAP>) J6GW[J*EXT:^?YO1^@]^P5XD"A0^HLO87R*EXT:B2@@Z>B4B;R(8L,Gk MX (GD$ F8 (X$0*(,08[%*H%)P(NT!]P<('S15\A@!ACL$.A6G BX )Q=P87j M.%_T%0*(,08[%*H%)P(NX!]S<(%@;0(FX$X'@0<E+Q)VB[>NG-807]*,&$4Ei MLB^P<AENP!QGU)Q7ZC\:3WP+0I5^'0,&+-U'K]^-[?DDSGF$WK-?@ >) J5^h MEQ<? 0(ET*V9FQ=[0=J.[H&(,?)J,@9MT)/OC[\BCS_QT08]63 7:(N(\22 g M$1]MT).L)('-?]'H_06) J5IT0;7!Y()@+'^C[R(8L,GX (GD$ F8 (X$0*(f M,08[%*H%)P(NT!]P<('S15\A@!ACL$.A6G BX )Q=P87.%_T%0*(,08[%*H%e M)P(NX!]S<(%@;0(F (;:CAX4/(B8;=XZ\II#?$ES8A1Y 1W5"+[ BN7X0;Vd M[8%Y\1%^+0,6FP 8Z_\%]1(A4+<N< (@8 (FX$X'@0<E+Q)VB[>NG-807]).c M<$>,^*73L2^P<AEN8-\>F!<?X=<S8+%&_^><'^@/WXSZR]9?@ >) J5^EQ<?b M 0(ET*V9FQ=[8;&.CJ2W2:!Y0)WQTQJ9HH7<KH4ELB^?4GL OUPI@@*3<4HPa M@/!*L05I<)?1,:,/?^$E#1ZA 1U'9=\>*/!JX-<P8/"'$BI]M 5J<)<@H 8Sz M"O*Y27=Y\1$@$ *G%"@S7X"(,?)J,@9MT)-PH!1;D ;!X_B(\22 $1]MT),By M<+<7Z/B(\22 $1]MT)/O;U,::%/L3P"(,?)J,@9MT)/O;U/UEQ<? 0(A<$HRx M\/F(\22 $1]MT).'$BI]M 5J$#P&+-U'3]T![?DS']EK'>![AP>) J5^9R)^w MJOH%AY( NWD%, 9M<'U8C+1:;%/U9R)^FA9MT),H:<,N6\1]?LN;N/D![?D%v M&/J$WK,M=6O-V9]8\1(M50 QCO3%C_2(\22 $1]MT),%<X&.CQA/ ACQT08]u MR4H2V/Q&K_G7']">7X"A3^@]^P5XD"A06I&) J6J;]>M[V!CT ;7A_]:C/3.t M_ 6) J5IT0;7=[0:F($ZGGK.' ,R< ,I"4DLJ5,__@6) J5"SI(Z=3YY,Q48s M8A7&095((S088A4F(08"08%HT!6/Z3B2'&!JLV!!XSA&'0180 5!(!9V(P,Wr M@#?]_@6) J5IT0;DK@! Z19MP$1'"59?L=M7]!+)4X=5GEG6><I1U)^"I.>Yq M-Q._(P,WD):.W![%A1;:W!KA(3:GE6U0$1FW\1+)@QC" AW@ZR+KIB?W0VX p M @6[;7"&TURI,@?#E6U0 4^) J4XH1 Z<+=B(!!W._(N$'</4E9.5U8R<($)o ME6U0L21OT2(;LA$) 6[?9(Y. 8Z<+=B(!!W._(N$'=GD+DB@ =EY71E)0.9n MFTKBEVU0L6T>@P>1$C52TJB[$1G&%<[M!A)GL"^0JNE/&1D[_>VE$@.H<R61m M:I;3L2^KC1#:>]1)+5BP<AEN<%K9!A7/-2V[+1*[ Q(B@1@C3YPY0B(F@N3&l M094]6#IR<EJV=+%]A!EHL46[<U#5E(>!A!G<292@I *(,?)JTOPI1)2@E$)Rk MM04Q( ,XT 4LD*0@0"H$=\I1U(?WVT (L" 22.=OGJ0@0"H$=\I1%!D[?;^)j M 2M^XBM$619YF!BPXB?'XU.@Q#MYN%"8Q><77KMBP+OZEKU/^1?CH[U1I+V1i M$1H0FFTE'6]2TBGS42;:>Z@ (A#XC!@.<H;$)_"CBH<:,09M !TF8 (@L*'2h M<O9([A9M<'T&7U SZM=NT09D,*/\EX<%Y==V"P,GX)@77KMN\ 9W,"(?Q$U6g M^!K;Z4[XC!AMQ=3&R19G4'!E)Q=Y<(;$=[L]Y!9M !TF8 *10B(F@N1NT0;7f MQW]CT 9DL*.//GRX^2MH&AD[S3MGP"!G2'R@*K*GM#L'%1]M<'V"X@.GU 1!e M@ 54$ 1BT:%&_\_ZW=B>3^*<1^@]^P6) J5^%QD['2>M%<X:?'T 6[8H\!>"d MPCL++JX7C=Z_(P,W4$])*CYD>(PA0'PJ>>&U>[WH(H$W A)GL"_20>Q2TJCHc MVRDD'QFA<8;$%QFAL04PT 5^O;)L(2B\8Y@B3_(H8 *1$1I; #QUT0;7A_GBb M3YG6S=\/WXSZR]9?D"A0*IIRY7?S%7FQ6(<0J;]L_06) J5^%QFAX7?\I7C9a MJ)$F$!FAL07=8XNT/Y&) J5^%QD[S3M^5P+="M%_(2B1$1I; /!8[&.CJ2Wz MB4=GI"\A "$- BX"<:7ZXKTS8:K R1#JF<9@37Q >'Q_(2A0L-LGZ7FI B<2y M:(3 BN.CG7K.C%DI>8D<^*,JP"[90@3E9$Q'&E.6]!Q\;#$^L>OP)B!T(' >x MPRC7D1V5T1G#E6U0@0)#("A/-!_UH2G'D0,X@ ,B@1S*(;,MT0:*DU%3 "]:w M(QHYPAPZ,1KUH2GKKM G(0>7D:<;LA%20"%>4A]?ZAU19*<O<B1R@/91) 8"v M,:7DU@8OD:4C@1EMH"_"_A5Q]P;E<1!A2$9;B#!O\%OR01_V 1ANP!_,Q"0^u MHLTEDAIGD!IPH(59^A7/#CW,-.Y%%S!\JH62^A)11.KXX0:>83\RK9[LM!F:t M!Q5UPATLH1GA'!>XM9L%%T7\<:4]B%N[^<8G->[@%B/0J2!:@1@@%1[>$45Vs M:B)KX 9O< <3."'Q@S_S+2!T(' <Y!Q67R_WLC@*TADRVQ)MH#@9-07PHC6Br MD2.G!154@ 1)<!-3X/U4< 5!( 5DD00W 052\ 16D 1D0P0@ 9@$ 0WD013q M< (GP"].0 1BA$Q(\ 1TPR].D 5O@P50( 5%, 4W\012\!5)T*9,D 1%0 1Bp M% 12( 790@5)4 13(!))X 1#P 150 1)X 1'(!)7@$Q(\ 1T P),D 1-@$Q!o M0 5)$#@B005(0!9)T*9,D 1%0 1?<05!( 52D"U4D 1%<!/>;]1%( 5#$$Q.n M0 5)( 1B@4Q9P"].0 0@$!940*13<!-&\ 12P"\@ 5!( 54D 1SPP1!( 4@m M 55( 74,@5%<%K9!A6:\=JT-9YW$"YL$5OZ0@?G8BQGDC"OG4_V7!]JUR1Ql M[".:\=H6EU%:$G$^T0:>\09WH.N%%)>O.5@N#1AKX 9O< >DI<WR01_VL6YOk MK!BBD0=).2!VNMK/4A]JUR11$QY&LN$@8"3=QAUU$=7-N6T>LZA:L6XO\>S^j M$\HG!!H(4$]014XN34%. _Z(& !.%2R"$T)."P #"ZH( $!Y0F4(DY i MS A0@1#APU!/''")(F3(@T4N)@RT$F0)A@5P'D#IXP;%B#@C&'S9DX9$"U h MD"PC)PR=-&_<R-0))TW).1DW#IR2Q8G!*4FF!'5C)N.(-&Y6UB'SDL<<.F1Pg MND#C(V-&(TF8% &A8F1)G2C&O&G3)HP;,BCIY"F9(N,8-&'DD%7+UBU<LG)+f M[O J<F7+ERBNRBD3IDU=!6#%DE7,N,U@C6;2!.4(@DB1*4.D)(%")<G$H$D(e MSG1C=['-,G- A$GI\Z68,G3NE#$)@@Z:EV/"L&$#]4Q*.6_&P([MM_=O$'S;d MONW]!L1M$&7PE!E3ATX9,BXR4GF>]TR=-B;IQ*;S!G7*U1GSOAP)U;N<]=7=c MU!G>FV8;J*^1 8)BQ<6FEAMTA %5<1DM-D=)8]QD1QELY"';@+_Q%UUS[&&Gb M'7?>R3:=6R D\<(3(+3Q!E4HE9&&;S0Q)(=#9KPA1X.,9>6&<38R= >-/=XAa MQXO%A:? >"_9(5P=+RU&1QURN/$="&DP-R =KK7Q7GTQ^F83="1>5X=+ G8Hz MY(LO=0AC1E?YE9> 4,'1G4QF. ?<6M()V*-K IJ!G)8OQM;F6V_*U)V<=!CIy M A109!3$E5G*=-:48N3AGEDF9=1$%5-081UP+)%IG:4:)2%%2H:Y!(*1C_94x MDJ0F35FC7F?>M",(9+P!&PANO$&'A]MU]U(="*;!AIV05D:E@:%^E]$=+Z*!w MVJDJ-;NJH[2]NIJL>^98'$IHO*';A'*@5"6P($YYQV\ZO;@LK%*"%Q2C&0FQv M71ACOK0:")FQL:M\&,KWUVR!O23"C-#AV5QP.HDI:AC,M>L&HAGU:Q]*S1$\u ME\$_RA:QH70@RJ^Q]BG*F5%4?);1$SKUZD8+;>QW4X)SK%'<@'E<548;L:&0t MA@MEN "%4],D0)*KOZ[&)5MP.$O>@A."7%&WC5M8UX6]KLK5,AFM5B$-EKXs MX'9I9$:IA3!BYX8=:2#G!M2_*CED&&+XZQX5332J0(]<I\V='(LAB&O;V[$Gr M1QXF#Q29RAHQE1$)>$/!!1=??)%TY2[@ <D "50]4DV'C^QOSYH/\"X,FU,'q M0@Z;/^9"9IL-5 06'T$A5D9(T/32N21FUYC3+\T1+K2W#J^Z2[_6 <>%?&;[p M4G->%TZE>B!3K$"'L]4Z7VV*/KA44PH\%14;4U5U559O;-65 G;AI=?F*O#Yo MQ1AM"-@#0VS$U@(;(EQV5UX@@%^MYE<_$-Q/!&/0P>3$ )7)G6$QR\.4&_I'n MF+9P#06/V4-&$I =^^AD<0$D0%GVA<'+<! /'J02@A)0K<. H(2$2<#B$A# m M Y3%)U_@TPX2\ (5)*LQ_.I6&'1D'!6\8(,SK.$-X?"%6NVPAS_4TJQ 4*N;l M&7&#_Y-# A(@ACJ880LQ@($,:-"%)_JPBV8P0XRFV+PKLD\!/%3!!LD2P 'Lk M:S9)"Z)>^%0D$/QF:;H!@1K&]*M<B0A_<Q"!D6CHP\VE#81.@E*\J @<$L%(j M)\WSTUH6298CPK%L+T2!JW*8(P.^YRPOE!_]_G(P$:0@!0:\'PI J )8.J$*i M3&#"8Q*@03@FP QP&!*"ZI08K-"D7 Q1RWX$U*M?[:MY2>/"!%-@PA.Z"P4Qh MH.8&^Q##'LZQD79$)1YKHT<J#LE69Q#:'U\22$/.1@0/+ ,<%/G-.CXR+&.)g M9)3454F=7-*<:*(.)]V8 %"B0)0XK)4I)?C" :X2)2+XT2MC^4):VA*7NMQ@f M+[<(3&'2@9CG.R9$E<D&9OH*7@ -432G6<WL7#.;)N3F&^-8S\WU#0WG8@E)e M4!+(3/X)6= D)PKRE["^O&67=-Q<<[2GNK0Q-8\HB.?R-G14H34S37BA0TT'd MX-1S;N]5N=I5,T'@FN%8""]P0"6Q;G*L0+;0)5M-6Q[9\!HY"$TXQ_+2K]!Zc MEMBL\UUIHT/31%>&K4ZQJP'-XQEP$YM^^0L\E$S8,F63O^I8C"9;)8Z48G.;b M6;'SG#?KT"AK9:XZ!?(.;O&.O.#8R0VNRUB(R:9&-_C+Q5(/!6A$21AE, .Da MX9!/VO2E0=7X!F*.$KB[W)P87+.&:G:T/L9-Z#DA6H(Y2%,$*$%C<#EJ!O()z M[X6C/>=V9;I!;[(6G*G"ZE=A([1U\2:0Z4764VMCKE]=<JMAC4V@G%.DS7W3y MDRR,+T*9"%P3OA4QX7U1<#?HTE^A ;!E>GK-*,1SHA@"D482Q"8,(4GB*!Bx MJT'!#([&K_2*F,1SR%G53AR4V64$&@A214%$344 04X #_# < $X59HMVw M.+L+ ,<-[ *>,&Q8P4(,R\D0."RI,I(%#(>3.'X!HY84#$J 'BR1@Z('+ v M2-% 00M()4J6I((FS1P0+D&$<0.S#1PV9=H0I!.&3IHW--^8 1%P8,&#,MV0u M(3J&#<4R!A$J9.APB@L024"2>5/FI9LW=$K**<,F#PB@()JD<4+E+$.P:,HPt M;%.'C<\6/.>L2>/F#(@Y>>;0R3GG:E80=2J^'&QS81@Y9LVDP?D2Q4PR)6/2s M09,8!)LT;=(,7DKG#8@V8?" KM,&A!O68N2>'2J0(-$T U^&>5F;IF3**5RHr M5' XIIG'D\U.%),8Y&40:':#N+-P39FE4T^72;@0Q.;MF_F>>9D$<468(*<*q M5_#$3=F_;^K(&;,]9D#!UZ'++;-^95SX\M$'PA@S@1 ;"'+409-@EX7AE!MEp ML#"=:&C(=%H8?!$UT1D8M88"7TW50<9UP8&@1',EC2@9A"!,04403A 1!!-/o M.%$$3#2- 91D9[A0X7,ZVC09?R!(H>"$F[EFVF/C&394'O&!L)5W+<W!0DE0n MUG%:&F>@X=Q+=Y#%QE]E:%4&<V><(=Y9-(EA5D5T^-07"&<X)8:#('P!!VXCm MHJGFG*5I%)&;)8V@(E_;$5&$$%4<D=12AI:Q8J*+-OI%C3@.N".7/@8W'!6Fl M\<4@&VQ(&.2>.$44AAF#,32"@BJV^&*,,]9XXW-TR.?&FGW6X9=09B!T!X4Zk M#)? &&. T$*R11'DPAC#/1<&&:29EB5#GXF!$61791$E@31%.BD(BC+J*',@j MO:J4I.16>L2E3GCW1DFG#HEDA;VFN6:&WVDZHH%U@/052+G* >%20%W%TG8$i MDBH;N%02E&(933VV71EXM$H37R#IR>>9OO[IUW-PHB>OH($6O#%(:/6$X)$^h MZ=2? DZ !5YT(#5+TW-P-/64>=L!AE\;49W,EQUO6!>QIFV@II1AT(5A1QF9g MN1'BB$NU8=8;=RP8&&-%QS66A)O%UZ7),8WE1A@Z+?4%'D(SEFF_<\0W'W_^f MQ11W3MR1RO5B_T$1!!5(G+SB4@5B3'' 88B!DX1U@Y#E@ 5N5:P")26PMX<Be M<%@&'-/A7,;4<HB0P@[1*F7RL*22^=@8%0I..'<,>0Z'"W'"(:'MN%,DX7.\d MPR%'CUAIQ9578)44G5*I"F$WBW/$U7J03I-A)71<CRZ7DY)'.>7 44]MX8CTc MN0'2YE%=J0 <=8TIVED!)S11:W3;39^I;PCY^*,R47ORM9Y)@[8>DX>KU&PPb M5.I)2=ZVN8C<H26P^PL:XL.&I?"K2I0[SX'4QK;\; XA#6.#;CR3/6QICPUBa MB8^<MO.%S4GH@6F(8!@^4@<'O6<K75D:%!0WAJL$X27'88ATRC.6$$J(@5_+z M24F \IX0ON0,92*('8HF+61U90XHD$$*?J<ZX;WA3HY[$QWDL";!U,$,9C @y M7-9T'*L5L"2'B1X%EW(@X96)#F8)B!QXXKCMQ(8.8;)-O7 BA\)\2FSUT8T(x ME_27)+8FA#BZ6GY"F!\]-1"&,HQ33N! A\689BLEZ1?UGF.'-&3D#'5A&]2Bw M(S[PC3$-^0E/9>90!RO.80YF:%\>MHB],)'.,&%1@!SK0L?MW&<. MQ?V7R%v M!H7]1T?_TEN9Z@"Z0"6&A7!S)/<F=X>9!#-0-PF#68:5)%2R@6TX0MI> /7,u M_%5/0N)"5(NRX*(B-.%D![*D-N$8ONV +S:V:5RJ @5%@F$P4-21PQHT5!LYt ME.4J31#G@>JF$Z P+'%X""=?,D,PT\BL>"]SP_70%3&:],N+-DG/.:W#FX!)s MB")CF,PYY>07C.R)#._Y8R#=$,K_H)23_.M73F;X$A%$5*$M*I,(_O+*ODA(r M4F:@F$^F]AZGC&&=?J'FTC97DN>,)0YU2 ,9YY21NK$J(MV)CAS(@)"QB.$-q M8)E9$IX4)59N)W%N*.5$W* 3\X' #L@1Z':HT 0HD(D.$M(940(&./#8)"%#p MFD/5$J@5L4IU(07LR'?D,*SSO.^:C1V0?-16V2*6AEN'W ],1N@T.(0!BI%Do M@XBNX\-%QG:V%FPI'=B7GOF!@(<!6]-W2L(@I3C(HO[:#CDKE,O6Y4MD$?G-n M=D2@0M.I$8&;<5F_6OM:JBF B6:19JZJZ=$P*(UN/#'N@RZ&A\7Q<7_@FXE9m MLK4MLTR+#*+YB4C7XRTM06Q*V<W96.)DEC+L)CEDFR S9V8$OM@P#Q**S508l MEC]4"?<_Q27#<5D$W/=&B(1)DXE!MX.:C:YO0QVBW=)&J13R_+:]8PC8=K+3k MK[%,BW]W(","=5:8AL0E#UT=RU\&$E/))"M06M.4&WC$/]28!4*37!YTLW,Mj M0V). 45P@QK>4$!(#& X)6F!$&1:I*>XX2(ST4,**W)FC)1@##'(PTRL4P8@i +Z"BO&'M6_DH"&@!(h g end