Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!tut.cis.ohio-state.edu!ucbvax!ucsd!orion.cf.uci.edu!uci-ics!zardoz!dhw68k!bytebug From: jln@accuvax.nwu.edu (John Norstad) Newsgroups: comp.binaries.mac Subject: Disinfectant 1.0 (part 1 of 3) Message-ID: <21164@dhw68k.cts.com> Date: 20 Mar 89 17:01:41 GMT Sender: bytebug@dhw68k.cts.com Organization: Northwestern U, Evanston IL, USA Lines: 494 Approved: bytebug@dhw68k.cts.com (Roger L. Long) [Disinfectant 1.0 - part 1 of 3] Disinfectant 1.0 is the first public release of a new program to detect and remove Macintosh viruses. Features: - Detects and repairs files infected by Scores, nVIR A, nVIR B, Hpat, AIDS, INIT 29, ANTI, and MacMag. These are all of the currently known Macintosh viruses. - Scans volumes (entire disks) in either virus check mode or virus repair mode. - Option to scan a single folder or a single file. - Option to "automatically" scan a sequence of floppies. - Option to scan all mounted volumes. - Can scan both MFS and HFS volumes. - Dynamic display of the current folder name, file name, and a thermometer indicating the progress of a scan. - All scans can be cancelled at any time. - Scans produce detailed reports in a scrolling field. Reports can be saved as text files and printed with an editor or word processor. - Carefully designed human interface that closely follows Apple's guidelines. All operations are initiated and controlled by 8 simple standard push buttons. - Uses an advanced detection and repair algorithm that can handle partial infections, multiple infections, and other anomalies. - Careful error checking. E.g., properly detects and reports damaged and busy files, out of memory conditions, disk full conditions on attempts to save files, insufficient privileges on server volumes, and so on. - Works on any Mac with at least 512K of memory running System 3.2 or later. - Can be used on single floppy drive Macs with no floppy shuffling. - 8500 word online document describing Disinfectant, viruses in general, the Mac viruses in particular, recommendations for "safe" computing, Vaccine, and other virus fighting tools. The document can be saved as a text file and printed with an editor or word processor. We tried to include everything in the document that the average Mac user needs to know about viruses. I wrote Disinfectant with the help of an international group of Mac virus experts, programmers and enthusiasts: Wade Blomgren, Chris Borton, Bob Hablutzel, Tim Krauskopf, Joel Levin, Robert Lentz, Bill Lipa, Albert Lunde, James Macak, Lance Nakata, Leonard Rosenthol, Art Schumer, Dan Schwendener, Stephan Somogyi, David Spector, and Werner Uhrig. These people helped design and debug the program, edit the document, locate copies of the viruses for testing, and analyze the viruses. I wrote all the code, but I could not have written the program without their help. Disinfectant is an example of a new kind of cooperative software development over the internet. It was developed over a period of three and a half months starting on December 1, 1988. During this period I sent out nine development releases and nine Beta releases to the working group, and we exchanged several hundred notes. The result is a program that is much better than any one of us could have produced individually. We are offering this program free of charge as a public service. We hope that the Mac community finds it useful. John Norstad Academic Computing and Network Services Northwestern University Bitnet: jln@nuacc Internet: jln@acns.nwu.edu AppleLink: a0173 --- (This file must be converted with BinHex 4.0) :%%4TFfPZCQ9MG'&ZG#jcDA3!8dP8)90*9#%!!!!"")J!!!!!rpe6593K!!%!!35 )FNaKG3%!!!!!!!!!!J)-4'PcD@jQC@0dB@jd`%#"d3j!JG%B3)(4+%r[!!01V4k +@)p+4`!lm0B!14IN!$aDJJ1#!4-!)J!"!!!!1r$`39"36%4'3e3"!+"*2P+J59e J!!'G*J!!"!B!!3("!!!#36VS2kF!!!!!!!#6-`!!"!JB!"-BJCF1!L"Jc-)06MF #%JJ)!%,!"J&EZ-V3D)!5*NiSLJ4`3%iC0QA#c#NMJ')3+&#B%$%bK!T"*J#!LA4 a)1$,Q$0VhX`jXUK48%Pm5*&S3'!R%b-*N!#M'##(dB!*N!!*c#&!cY@[B-1+(8Z fV0J!pJ!i!,!#K0ZhF12+P8XNcC`dEXb8'8-RM"Xk)'+iJ!%J"a58+XZ!-"Q'$!J kD"6MR80(6KfqDGkiQ30#6"NcEd`ZVZ2'$Gic)1VHcEZhlem3,d$,H4`CK*NdFLJ r6Y1QM!Zh3pLN'E-'K'EDLS1)H9-(X*MQG$5l!""M#TbpDF+`!E'Q6"i3FqUdD40 '6TlI)*!!['(MQ-bE1fk3!(2hMQ*1#K"hd+4"#B,''1(%R@CFI*!!+6E&'(iC0jY UH1R&9fI35HF@#P18S9L")'J`@@@AdC(CCVD&"J)CCI5eha`ZT!#!#dkm-9mHR28 !`S%*LNL'A3ff*Yp++2&94RYfVH(#$8r!iH&ahAdR)ihafBJMD`q'!GjTr)('AKQ cLAJE5LlJ--3EirRP@*)Jb$JMJNh1GZ0U$J)Qj8Tae&'''f-SpSBCYV(a"Ka`T&% 'LN3Dq5%)BS,`CCKZM1PGM'I@U1D6E4,+aRCNb*''(Ap1*a!0!%33d!+Ur4F'EeK LG%%$5I`PaaYNG2JK4PLJZKQ(Q'Nf"dEJ)'"&''1-J9FC$DJ6J!F35,%AQ,dP'XD 4Qf%8`#J48&(EJD(p#B)9Z09aD`$82##YBQjBNB38efClU`!152!Y#%NiN339)-L 3!%1jPYf+J3!a4&YE%lcbLaUfp6BJ3"AHeKD%%e3N3Dqf!U[K`"4KY!%(ImE#%4S G$E!K!$-4@)HGGL!BN4)GGCKdk`!42&#%(+[1eX5IFi4aaTm0$1$)!8'J*!FG*h- M`4-&cJD`YL"3mFCkY`*#J!i43,(U'A*%h0YX,G*"-`&J6""%FfL)@1J3*Yh)-dB !#0!*!"F!`!#$8,T'"`!,@)(PAFF*4TJ$r-Sa"KU"jF"#hcKB"F!(SE)akY5%*QV SRRPBHJBDJ&8pA"NBp'$jjCKRV[RP!"M"GTYq!8EHGj'a!3F)H6!hBSNk&QT5'fp J#KkBL[(Vkep[c-'h(HCQbLiG5iaZfkME43H#RJKDREKM*X%akQacd!j#MMikYUA [9D`d[CZ!T9kbFI!Y&U3,3$K44KT"baF'ek(pVF3ED-6ABQjpNI'h'b,UaeNC%ZZ C"jCrQapNl[!RUmR"$8DSJQN`P4[djH&[j1P1iVjcKr*%l5m2"-(jdPF'2-$"C*` 4%@mQjLIli3GpI$2CGIJ5!H0"aLkc-`-G+QL5kIMJ5h"SA"SH"jK8!!i(IiY"$J) A`)ZKJB#8`9*m&(LTZ6R`0e$!8K[X3VIif+8)8![GMalMSJJUTP"VUN`DRU1m-Hc *6b(%d`Xj%cdCdV!-IrYJl0*!)XHX-3PV%K@TCP-S-qE3FC!!!`(q2&3R3SRQJhr #%UBFFacYE-H2D2c0ZYSi`r+8J3E#'q6IZNC!"[l0-l0MMi*'C"FaNR',XJ'"('p $"dd&K!(K!%!3'*!!UXU`bP@D5F$Q,!H!)`aY*C`Te"[5Y`DmN!!KMDZMM'8`)cX c5U`j@)TK*8@$KM$)cM21r+)ELS#A-6"Q0@GJ`hG@BLRQF%D1BN"*'kC(S0Si%`l 0%G!G3X1Hhk4+2VE$5h4d9`4RYS%d$[`ElqTP,62q"5pbiL*i%0QBaB5K6f33jr* 15#*a5V)fk&5R%9E#2miB$j4r@Q&f*[8GAN'68)!"+!2[iL(IrG*DGpM2)cAM)6F N0$SG3*!!YK56dBk'#(V5me"[TV1%))"JS%5$SC6kY"FliFQ-*+,0XP$DPleC#hd m8U1,KKQCfFJaLfe!%3LH3#I&H1m)PSP2JUKR0FGm0@TYq"Z'N!$+Q6J0C`d5R30 $MkP3ld%24PCEjrAQF)4#'BqVdD6N'hrc8MEZe6DV@UGQDXFVIHD1EmEc#f*R`lX `b!"$ZLZ2J-"B5NZ4F9"hBQHEYUKB5dkR#)d&JI"!+3h2Q1B-ETM'++9"(Z(J0R3 Zd+d3jV6$q0$9@Xd$d,,J##%k$+&!hh'2))G*9IiC5D(5p8XHAZJ'e24f1*R4eQq -)+)14QaLc)@ZE-13!)FNH+B-F2MEQLE'AYR#6'E@1JjS[@NK0rc04Lk+AQqiLjU 6D!m[q"Y$(FcjbHB)3Eh5(53lVAC3c6Mb1jA"X)ZbkiES4Jbr[b'VI$B,JQSQLJ9 $q1j[Ah2F1I`0,i3LJpJ'CEcN$QGCTj'[LjB9f1XDM``IRYN3"&`LrA4h[1A&`hP 4mZ*f+LB*3QJ##+!`"2c3dikeN8B5jK#eNk4"Yh6&MdU)m&DTEG&i&C4J(8jA+#` PTX6PDBqP-"A#q'bjbfbS"QG54D,V*'T1G5)!N!$2!`!KA1',SQ(JGf4$-MFX9kU !qI'M(FNGr)8[RlM6h9&l&db6+-'faE8RB'#Sk1P*l'+K8bKMK+-(jR+b$*k%Y!B a&4p3ihE6"*d$%L`T+GMT4MX9K0')JTcM@FpTHRK#hr3i!p#rc)PCf[N0[cUXbM, XL6rjHB-3ULQl$Pl(8S$H)PXra"PZ+kCj&pYL6m0k3XM)"hpbk1d4pZ4QCKP(MC( "$3J`[8md-*E6aZR9QVr6'pLCCk*V+SjHHF9F-4PKMF[@)2lUm$L&kP4lk`lQT$V c(DbHa!cfM)rcGMDF1KK1$J,P0"2-B*)i29ZLqX55AN368hGr8*qRZDKh*"@pic8 4T8I&dRIdG)IM`GV!l%31HEq0iqk#"l$mQbLD*Lac,%NQ2U6aGQZf''c1e*a[*"i jciL3!&V33Vd0[cNdR'@RRClR-AC@GmaccX!C'2XD-#f@0CTHF((&C0f$K[Z9Blb TNXJ%8h(+p-[-1P-'EQG'$UrpA'Y5[G*"f@daam*Y'PVYd@QCd@6h%aHjJK$kFB& !#(p$J[2S`))M"#%*4*M#hpVeVRMj$33(5pK%EHF[A1p8V%N!6%`h[KahNmKU$jS VTh(J1[JqccElX4CNTQTZaKqEV9X8!iCVdq,T`"j5Nhr0m,FMBC1B8I1YPY4f,$D (Zk46-5f1KQBNLU(*eKd`eCa$%GiE(i2HjJ`PXd@&8QEMF@BZBRj[J(kq`5ji)L9 Z8!C&&fBLNRKiN332G4hPi@,iS4MMYhBAdN@XNJCQX(dmp64`T@UCCaVTKcjr8bM HFd+6BJ,9Cc`cibD#")%Ji%II8ABBCB)4-afq"(#k`abL*''Jj(mlj4KICacT3`G jF"h)4#,+j#UbdeSQX32KX6H%`KR5-%ra0JHk95M53!@VSJB*dM@jN5QkY5kpF50 [BL(VC$cQ*J6G&"VQ4`F5GB'VFR2,K@8A)N8J)!edT9XrpLIH0%CIY(&1#)Ah9J& 55#XH8S9h-Nfqd6P'eB@Kd3DkT95Uj)0a@%f!B@2*Bbf&SPH-F8`0"KMZB5d5aQ1 mJJC(i(&XS&9-f&@GQ)"`*9B+*"`5*#9dp@+Uq!DX5&dY9`Him88PPMZ4pJC(%"j b`$YXTcLLZ&aTPiR-&KiAYP#Rf'j'4LK6dPhmm8l3P#9b-'m-j)d21%1K84bT*Bi '*&EI8P+L)@'QQ"*BYLS8KeQe%9U@iR4h8J3%#)qeFAFE1#NYX!D@&KrQe6q5dAQ +B358*N3iJ!08Gd!PBQAaaJ*'N!!I`m%hf1FBT"8clqFB+m&!)!-CjP3SC`"h"j3 XEU)i+Z9%6[J"9H!Z@*!!Jf!#6qqBG'p#*BSaD00K"*G)KQpJK['"KLZaLF&dLf! PDaHB%VQ"A3&'1`3'!MYP"LEh0rp$"i8PBqMc)GQiLQa%P8D''Sqi6*'S'*jKC)l K9jh"+d+#H`UTC!bjE%@!)G*3)AM`(8c3''LN@dM`K&Jb"(%'(P@e"Rr$N9VSCL[ 4PX`a'p8N"h,fFab*%N$`JJQ)%RkBJj'45!JL3Eb"Ar"BKQFB'X!d)Lj5I[#PA&B c(8)JHAb4DQ)jAGc6BmXBBj8#-r+4FIH'NH`Q*Jj!P%DCM'Q))L+"!2Y!(4#`,Y4 L-JYc+lZ813#!"%(3+k&a)djR2!pi"jb"EMZMJ4M5R0B5CKANGCC#"a6'FGki*P" $'RMi)d"!J&-MDJZ&(EH")#4&9A$T8I2%P,NSD`3N'U4")R)J"#5#+AS#"bi*G2V c8iMc6YU&C$Y$'XXP6[Hc3EE)JaFb6d)3N!"LYMrRD"+)dCJ+K5%cmi"4XhjeN!" 1`r%EiZPe+J&pp"-#EmG!iZCN-h*crSJR%SN$Vr8YSU&8#UN5&&4IaX04b)BkUP0 p8[+LUY8D(a*LIUDN*G1-CaFL9m*(LQ09a#%I`f%V2b8I9D-B80"3KA)J83-(br% 'a6&B,[!ZN6&1A@0bMU%RE1Tc%L3Fk-NIr(CC[T-%q,CcGPSF'f+2H+U@KZ-'D`! %ZQ-K201Ec[0Yh2JB*I1!C0!#lK%qRiHL'ZL@9UJBq@GpEM!"(kQH,cSG6""m%FG qlXFI(m96jH%Kf9LUfRFQeA*i*1NK'eGpm0CE)$#Q1e#Q)+NiD2T3DdUS"L9@Al) CCH"bIf'K'iKjrM3Rc%-DTY&G5J#EEU03AT5$@')LmH'T9`T$%[D4Ih0d9S3R,fK Z$G#V)21PQc%GXIGj9p8fR1'@8h"f4D3m`YU#a%TiDRSd#RHPE[Sl4G"f,X*Ibm@ I,S)A[01ULM&B55HZ554Bkd'JJK3a@j5Ap!U'&UJidN!%Il)'dA%kdr!E@D!kD%+ 2&X*1$cY'94*pASG#c"&TY6%UM)3RaU*rBM0[308EY4K0mD5Rhd'![d&fY)Q6HE& 6YQSbeH#b12*qU6'b*DX%ec1T'')%aS3PHJDe%$ZeFd#bH`*p+"%0kX@VA#8J2qB LAlF%+D'&Qk9c)E1eFY#e)KZf*8ZfLL%FG!Cd',)Ue)85#$SJ92SSBDZ40AXA8@9 f&BZP"*UBqX%I,rUdGbZfTh1eI&Z[LRXKNE&P"(Za@2)E14-pIc1jB'ZjHJYRKkG "H&!CEq)mKE3hjF%V"S45&)!Ke0UE@*@a3`8!4H#NXeQZE60+X(-M)iLD#VDJJb9 rET!!Khc#QZ5f2!d`"`3VXd(TT$9iIjcKD%$,FQ$LT@l`XP,,XEHU@eFlID-''!T V0FCj"&63Ri-@6$)8643E@)bA6AAA0Mp5ZKh,H'F`'3T9M`d9(5,cLS6b[$GQEbq B9R)lEXIa"J)APCia3rd9,a-e!l+&81a,Q2-l'brS'Iq,SdCE0,@KYAqQTBj""%D eDiQL-eD*MIQ*X%1!6G,cN4,k'(X42cHf(GpN+hp$C2iC-CdQ'H14G9bN!!lX"N! )[-+i[G39FaAQD2QCB9)j3F0'(SY(BY0()!'f9eV,-amh8DlBT4LLM[AT+rFCa'& &Rl-*`3U@3rCPF#@9+%D3!(!,aA#Ep"j(Kh)6"A&6ehHhq(kr5A`G"mDc#%A@KPj '8(hHf9D"V%lRe)meK4U&SLd#BMY%%$9&9bK&J!Ge`JBk*aU@4!3)#ajl$$*cPlp 0+hfJL*0dQS2VSch8flL%ekJKP#9"8`&r4eq#ahL1&aUZ"!!&B!N!-!,kmQ6Z!Lr bmT`1%*h5L36V3R[+2#pKGK[dFm!B'$C*CcM+dk0Tpj1T59d)q4kbG4Pm%`E,d4` ,X,ZKX80iiAh5E(X4ed'9`6mRm4e)K4*r3Cm#c&HPPUCdC&%JX)YT)%&1kR$K-Lj DU6S44PdcH)#NN6MB$,h(N8V+pUVCp+69i`*%30!'hEq&NY"5-([*,-p69bJGb&D pTSa@I$dXJ!6Ga!CeJ*f8M-$*3firA,dSSB&J"-(Lm@ak+eCNPla!29Ll&U6kDd* NK"cb##l8C9"pmErQ*,GK0RAc0dk2e9NM--[f+l'&FS%8(4pZ#J",%-r,(+U6059 4p4Q4JVkBKbPYYcf4R%KPC8rUUMT8E$b6mDd3H6`3h"h@Nk"`E-H0p(505k[IBGD hpi)G@)2)!3&@3R5MT60dS!0X)4IVBXI5J!HFcGQkpB!r`KP6"'qBjcbiJ5)I3"F Z`YLT9Q21TfrSm`1p"+K8DXUFUe58M4q4mB$Rq)*l[62HL$b!R5GlNN2!'(&5XT+ X-J2'P-!deXVe'h8`K0MX8Y,bmPT"-,2ZGY#+)p)NAA[,(,a2l'a4R)ej[@%leQ& )!'4BE#G0D',DD+LbD!DTZ$f`h(qaA)*[)-MEZmF&XY-S8J6h*(BPGh)r,$hAF@f JDNhR"PrTjPDV`YqGL(2q'"pFh9&eNG56UYMIl)%mjb*D"fjPj4MN3@dA[NkeE(J X!*!!%3l*NpS%*ZFK*[bi%e@(%S0MBV!IA`P6+'6+*VNGP"'VDlB#lN(8Ie&RKKe BqEYD5YMM(1klC198mM&3)'-bMeNR`54M"UM4MLbaYDVBUSXFQI`R9hiKJKQ)dKb 'L[1hC&ibK34lYJHj(4PaR'6I+jQqFe!!h&Z*&'%!S!!!*,#Fqp)[-X2-cS`j[VX Z[&ISBID8PZ3B-#DbGG)'RX((%RN$&d9UjS,FE0"ci``I3"#MH$RQGm!#ZL803R" "QDVQML%08F4`B'BZp0R1)Gb(59FJ88C6UhC[pjPIH,,ShL8cBD!([b,R@JK$GDj XGblA[&Z*3q$4R1[HYYKLI`2XU$Q-ScDmB1hF2M`JiK3%qGUi"DZUY)iAYKkM8K+ BhdDBNQQBF0RXV@iq44F%ceX'5H!dYm3A+,+'qhLB5JZZV#8p(93RJQ*Kq@Na6[+ r(Y*UEM8F*'-bj"@Sb"%IfiPlp3iH+aZk)(!&ZldMrPkHSi'MBGE24q"#lP3b*[' X*F9-LR(LHTYf(8pLCL$Bd48NR!(9Sh+YCi!%iGl9-VZ"SK%HBJ!RFU,bl%41MJa M8M,ca9hcB6XLFaEY[MF(+p$2*6SY1TeI1-VdI"**[63&hI4&0SeMB-TV%LDm6+k H`(lFr5cDjLaEe5)%Fd"dp!IIpCFqHBF##BjHi"'C,CreEUq&!'keaIKbfjFJkX@ 2BNp#0fdV+3)#48"VY-%F&DGmpD)JlZaSED8HDT8HJLN(l*kVF(RFiJdB9RpBk42 Na+'"9ke32Fmr"M$@4@$Y)#qI@ej"bZDHqf(aPV)G-K"%3`4%kP-D6C3EjE'$CV! %'+*2Up)UYG)N%Qmll*)%FQ[0ZL&88Zrb)"rN1l0&DcBJVRGc[Jrm%bPAh,ITmf8 ir`15pY9qq!@TEfXR1$S(r(9XBT)#"4)I&F8kN!"Zb(ML[Cr)3'5pkaAfpJfK3`f eca1eS3$fF6"9!8&,a`f'N!!'AR62C)eI)3+I+Z+8UL8%FHM+d3)rX8Rmb*3Ea%$ q'maB!JK)!GQhjQ2DCN1T'Lar3`eSLf`(bl6(ZQ*`X`0SPCU,43)5MYI4$eTSL[! 3`c3#3BN0!`$C#J4ZUqEa2$K$mI&)'Zle#CDI9bK+&56aGFK"26J1FlFGe"f@3"$ Y6[A&*GVfJXjEb*-262!BLEiZj39"AjcK!#QYr558")%P@NElLaNc)jJYJ(3!!-4 !!i!BGDPLA)`&F1J!!*b+@1Y"XMQGKF6hKK"hmND0$!5FU(U6I8S++@%681SiT"A #eD3k9JXS9C%*5$bp5Y&%TN-$D!,IiDLPX+MR!94$F9J65H`-FVqfiJ)X3!b3!!% [)!EBJ"G3rJ)$$0!"-)!'k)"EL(ZD`'"S!FJ`'5V$CFJ-Qk%cI)E*F!'J`LRMLHB !!RJ,KD8hc)%()"HQ`*V"%YQ`$(#!%8!1jaCrS'kRkJ6d*Ge3[%33YiX2-5!'[!" Ff![Mi6#X!F!3Jd%"BqJ!Y"Cr5)0KiaK#`i&)%!YL#j!!KYm"hi'915!"hX)9Z%l 8%),"$02N!15#lEJ#jdNFNX-4B!k[6YUV9HP`(BU1%(5Ib"ima)8aS!E`3Z'($f' !$0!"0'"Hl%-Ad!qM6fPl(Mp#)"V%RFJ6@m!I[&,N*8XTJ,G3Z8V@1#b(rY!MEKf jmae#SNSBLFEV(3B'P$J$9Z,IH)Nd!!I!4"J`CBaK!dL+U`-Pd%)Bd"2,BN(mLBd V+"+S"2!@CKb@1)SF%5bL`ilP!Y6K8i4l8E(aRF4F5!1X)JLB!F$`*FS!'Y!9D5* B")JjN5bDaFAS$0'Lr9+,@!)#[)8a0@8D5P+%Laf4beA#9BBLl#)l*)P5m4EQ`UV B#l'L9T`"K(%QeX4rq0S#SQ*NM,!a'6V'U!-Cj3"EG!X[#M2+43d(%ZQLCi5+lP! [6XA4k"G0S`kB!IV3+i,&r6F@Bk0cp)P5-'5!,MN3!Gj#X3TBGqSbEX6-1"G[99d 8LAJa1*V%i4J$5+2`-iicS!B8aYABi&TJBRb1XA%fVT2DH"YRa0R4M6Da1jU-lhJ Aff&*Y$HLX6`@4jLS&@N!9e50Kl%e[NIib"K2B5SX6*RXjlM#5aJ,0q%l%BXjd4D La&eB$hmK$$L0A$%)'%-!J!#mBCJ`$jB0!J`4`KJGqX*fF&-*J#[@3G2N!MS!4C* B'l$(RDS,3*&Hi-pVNG%'!)5!Jb8(K%-"dBc@)rVSJ"Ra$FZ4a[U0iI%r@Kjj5!q &Rce-LIQ`-#,"G@%i2Q0H()p!KRhGZYS3#AR096)jBFTe"3LRNkQF6",3(p(Ki*5 L-YHEeNVEL&)$$BE92D9B25DD92`kck8f3#8MU4Zk*(#8NXFK6$DN(8%R045ALe) !J!J8!4G`"Pa!NpN45kBpAJa#X4``4HPUNZ%`iZ#ZmN!SXaf6+baMMeNNTKiR*3a PP*5+LV)haF0j+,GFhY8U6h4)`p80UQMADYYq!hL1kA[SS0lN$Ep0U#3bf#r8GE$ !3#Ap&D5lDh9!4ZQ'#f,IGZ9S0(r(TPL#3iheSC3!1N&RHh*fZ$NTYrcZT)4)@G& b#,dbR*GmpP'M$&4(J!$eXC032#,$*jSU"8,IC%!BmLh65FI4F0(K$D!XjP!%e+8 SSB!a4AZ`bjH8"jB$'IJ1"ZB$kEE[G30Parq5I&F`MI`Z8-NY[3De55eZLF6ib*h f5IC#IN-1qR)5[C%+)$a+Q4&-DY0"#G!fE48kZPBN(#5XE+UmLD`R+J8PU83MTR) T,J'A4KYJ5'r`#jd(ApkX92RFTNVIf8cP6SSpbJGQ"ST!G&XRj-T&k)RZ%Ndd`hq C$E`YQS!mVbNIl*KR%"$dcbpB+KHJ")C!C1K5P#CNTJmI#!*33#L%HNd%9a'hV[F RlN0Q38r@j6BKMqAb@@V$q@TPc#rIRCRcGrQ-ap@F$Np!@X#3!'+L1&+,Ap!1-'+ k16&6k8KJ&R0CDXTQkS#5-lNGB)bD&""Li0f&!3SJZf"-DNPLaSNL6!"S!!$kJ!0 B'AE`CELrQ6%('-#Kk`%!i!G)6MD5#8%%)PN*4dlpp#DDq4HkeSbF$GS3$rk**T- $Y!-FU#B6E)FT#"UhK+5%'!!hH-,E*+VaQ&VH&YKj300K!fc(hIJ4[d0RifbZ#9h 1KUXehALM*I5!JHKpiJ'Pp'ikTX5M+aH!3R5XdM0kcK8G'!-TBMU8J29T%`RFV,+ I)%"r6SF9)$p6&lq-95-&jN"3Ab6V!)!%f)j-iVjpXT`)!&!!ZK5K*d%!B6a(35( 0CAaJB!"!"Qa(),8S*FbFS(amSq#%"Jh$QIC#FB!ied0H-8rK%k-SP05L34ITKZD M1,C$,FlEr+''-rTN1X)52GmI$,%VbL0Ue"!3F%+&B##KBQP&jk8'*CKUK"f-q6S eL`M!1$BJiqL@h#*)&&#L!$)H"%1HCmp8QK%V2eT$pSCIb-"dQ!%cY+[881UL4#Z 1$MdiVUd&&Nh1%%46`(Dm!N&!#VJ,*h!%PZ6`Y+"X4&H9cU3@!J#!6##MVq(i,%@ *&J[e5a4P-XhP3eNP4h0%AB4M+k4S`!JF8Ki+%,I(&,f$9V5Z'+-XkPUiU1V`ST( Qi)64dl!%KLLK1!-jMa[9V(d6ip+!@i3m*%`a`0'#9J(R+,kTSb`M0(!!'1,@-!6 pj!amG'Ei83$!!J)T$2QQ%)*k54fe59f1d"-PS8ZJJPiY-r,+M*!!RI!cU%4%R#, 8D6+CPMHeL5"21jbL(H4RLX!5'RJbl5k`R9kKQfS9%!XlRZL@9Y(&Bc!C5I2+!d0 0`@3*#kG)SSN2['(Nj"c463)LVC!!4HjbD`Z-Im!G)J"D1ZVmM#bhb2QT5RF(h,j I5he'd86k@6+RijES5[!j'TeZE`kf)1%Xck!a"B"6EY-&c+$+pA,)&28!&C93f)% h3%G5eh03Tmr61,8!FmT)p@JkR@1$KjdkKrD)%rfS)bf(N!"8NVD,5NV#cUPAT3` Mm#0edRMkQ&)A25e#lI5HcSPm1K[Z`(RLTi$XRf)EG-F'"UTa++J19AT!9&cdJk) Th0-0rZ3i@00&UN'bU3[X6YEU0(`I6"J#8mS*BkCXe*QkdD)K*j(T'D9Cc3'dYY% 6GNZIja$!E6f(9AP1hACXdLEaFcSKeD2D[,SjS+)*KSSQce4"')%eZPS*9!S!U5l e%Ui"Vp2JTY@DJfkUihA!R4hK8Sd!8T8M-[9$r,#q8&02addp4cS9R"5ZUFG&N!# '8'd[#DHSEX+M#P-Y(p&BUSb8jYh5U'T0U#SCL!"AkkT#6-YUR&i!9m@N9kb2VY2 5N!"AHbKa)+&$S%pT'SNeJrU6f,PPJ8Jf,0GTB,E)C*[6'iK3$K3(`a)CeYZb@(V V#1BG'f2+TCDV0k+I`450+"4kJk1Xh,J%9#'fVBUfql*iMLD)k+DeS8&NS[&)'DS &T'Za&lD3!%KBQ,BjMiTfU+SZ&X1UPKdl8cdQZhJ"6k#bfN%hK[+i6Z5k%1EK0$! "ecE!6ZN#bQ`IpUF8"q%"9iR2eDNU,mNaD!Y`ZB$)LjV`D5jTD2l)"L8"pH4hD%@ 2M(rFX'fR&r@QVCbcGL%*D)Xkm%"[a#K+QUD2,!N)'%*1`X[FSb#V`ZP`3#ml8Ea ($BLUbBAKf,IZ@@RH3ha3ES1(FI3Q`9U*B-"r4DIK9!"Y+E(+H'kL'R3"+q#40PH 6qPbRbJYLMVHYUh+*XmS4dqSNCDZA&*f@f8h+j$VT%C!!Tel9A+95BeUMiNi1,$, b*0)L3"35I#JY'-%1G86@K%iLj"MXk5hk0K)&-IT4ahUe4JF6',DYYP5j)0849A' Y,C@a8PD%&0R)kPp5DHLX%4%XkC!!KN%,-PJ+S@8@aSN*4,NT36,'iaN&J[S)QpT "UjC[TeX$8LY-mcM8ce0CU``1jkS4$fMU&G8Aa'-#Td*K@Jm9lbP9S-T&NN!Y*E@ -4cDFQmcUG)DSh#)aB3DqhVG"%J4-6%54TXf8lm(1EiXPS"@(h6R)NP4`"X3J1`S %+BZiqLr)h#M`m2DN4,#4055@eGC5p*%!j!Li*66UXa`U%+h6*qdS#LJ0EZ#i!J! JF%RYD&59-&3@QUSU'iYSNB0SQ#h)D1k`Nf)+5P[*aZ0!h"DEQCrXS$b8M3LUEI2 NP5&2pSFcVpiAB4pbS)iC)Y-L6k"VY!a3i+ca(K[FC9N$MNB0L&0Q4,8mN6+#P!$ PYB-fKG*&NdDfG$(%4&e!Y%ff[Tm@e1N#61iL'P*#"qd!4hNiT`V)1jZi0H-TSBl hH89%fJf)!%!&20*)qQZA*0J0DSDNj@P5*0P*Ld$CVEbR9`2+`G+lMm3$H6Ji+q( jq5e"@6N$&3TdF-$YlfSA*)Pm)@q)'&#kEFlGe@jEB-AYZ8)K@',rp&2YS9l-Vhi G*GMNC!B0$K5MN!"P@G)JRBi$59YZP!")lA53!+&SPILZe59j3KXDrX'"'-,U4T1 E`cY3!ZmdYH8`Xc$8pS0mBFa$PAK@JN#*P5P!1f*Y1F54l54h)-)X*GVUbmXXYX& h1cEJF2D!C3HrN!!JEP2a@!X+((eQaJRBMLC["@-XR)FAe&D$#U)DB$ZUUTA9IK@ N@4fqDT@5@Y)Mr&DAVe`&!$qi(-lJT&9p+X4$qRNmf!,$%5$X)S$SG"`[2qrVQ-i M2"dY`(CN`Q29`!+fkF"VI@QdG-!HcJY,4aBmi5T`'FL$C*LbKQ#09aZe@cFb`eR +$CG$10aU5b`*G3%bH%RK`!F%IfH$(Nk+6X`5Yka#,(c,B4Mq`p+R$,2K,(9,"l% F8-3FN4'l8ap+3Tf[i9%-G[6d$V&P%al%63-bC6KeINl(H8BRQ)1cd@Db!3NS*Vl aJ[!(DZ,#%,Jf2#!X&c2Nj!D1C*HL"rX1Sb&9l5Yb@!P&)+Y'+`48J'TYpiLZ+VA SlU2NHPfE(bkTYl03#GM8FCb,$H!BH'%#SUH1A22D9*dHBTSSklAZFJ#NkPip#P# 0Vdd[Q$8!C`!!R)!"b"RI+Xp**b9`5E1[[6QHcdEME)I8-N5lPRC)b*I5HQ,2%U% pVa-!+3'FpR[kLI!*H#kR[5QI"Qbb6!FN8!VFJP%*-f4fqB)5f[9cl)j+PC1)4l& #brRjmi5(ZIN")Q,phLrTB4*XQ"hZHhQA0l3K[PX"63ChrFBP3`NSf(-QM5+D-6@ M5N`kcJE2-#hr4)cV91af6SN5TabV#0rhDT9rEB[%h(pmAT8V2VE+GIHB*P0q$)V @frLB%5fVA%kKjmG)4B6&A4dQ)ULLJ2p`9`JAKP!1bj5-4)H`khdihV&j39L88#a ,+3%,A@M)qaXNpSRkBpZ@T,4,,0*`%X[mJJEdZiB9`q8eI)5#j5@jU'1+Hk9f)3' Lf4HE%)KcNF2[A%1HY(",hUcF&UT'meD1%2(+XHkXTpaF&R22r%QIBAf`8IT%PVp 6B+UV8ePZ)HE8UTL2JdMZ,Xc'ZaU-G1BFhJ!HQ"d@8'AjKHrECDr1AJDiFLX+l0, LI"b`+'FBSXBZKpBANa(M60KiPAidE,5KKU)--adVB5SVfk%k[p!58DNfXqR0H3l !$HQ*DCXShX0dD!%YHBabeLABV)b4FiU1-m!&b)"4`Xe#9qF`TXAS'(%'$+fK1I4 b8E[3mM%)8jD,'T40)h%$EZYR*KCpY@P()%4q$E5CXSRBF+@b!!3l`P&2B!Q`CcG `!C50HcDmFiZeGSS)r345DfUCTGlRNYEQ8A1ERidYPY"X*G@NP4$LT2%%P2iG5,Q H$K-GN!"fGh4Y)maGbT3UKL!pT,&dfdJel[P"4qM$N!!5Y-F%r'[iq(``+q#')4, 1NY5I5*!!$1)e4,TKP'"`5mZ"VHNT9m`FPmZ!'QJ0$NQj&KE&SC1b-f@GdVpK&q( Tj[2EE0C2ZX['G2`)JI84(FJ$)FP')-`$Vkc4)SeDSa(qe%q[rai0YA+[##Cr4RV [pS41(ApD'rlc*f[6T9P5I#Z,iaGqGB&!!I3QDYLEj[2`Z*Km)!qRY8(IJHR`!5) da*!!(C(3-kKF%)"&*jPX1`+1Q8G(bmJ-RqeELGh-51V[XMQ,!Gb)-)M3,X'$aPS ,L`DDV4F$XQpLbIcKYQ(0,df'P4kh0$6j)J()B",8%R#H!p%J#dc2Ar8'LUU[2JP b5f%l3H$FLHMDSk,-)b8"3CSM)"CVGE6F'dH$rYD'`AQ5*9l-@#5Pl@,m-!BAU4Z CXla,(5p11pB@dDD20"T0V5Il9DIXR5'h(MBEH!%#'[-dD`-pN!#5DDJf*JiD!1# !#,dZjQRHpEBR1r[-AkPRamkTb3&P[84+jcC(&jAqEKNNe1!""dU*5#JLm0*dTJ1 kC6PmCk[4ZPL!%[Lj3DV)`Y,&F$3N#ikbBdFU'HG4,Q%SI,4KVJe"qJ!)k1N`"*L fK@AA9,UmGSBG3TrqL@i!*9&ElRb'DR'Q%`483bL9k*01k&36UK,%QT&8`Q'+!)C 8!PSf$lNmh"G$fV#d[BGYC-S4#*YEqBZBJIC*@8-hqZL9,`LlAJCN9'UfjRi'[cC V@EaY2V%UAK%VDhQQfqH)lSAfH%HJBm[4hfT9ZKXc*U!ed,8Z!p2'-IKX&i8$Z@P Y)"&Q3$Nl"q$-ceMfEX+J93jiEb&[a,ET!")JQ[m"+V9XpAdE6S)*k5-d"A0(DY[ DXi[e54M5rF4r"pApNL"ZY[T#$2d)08`JDk+c'aRZPX4X"`2kT,CmiTMhHS'BMlT G`ZVLJ(Y4Jffe9%d'9iH"*@#mCJj35km6*@UM3I9Y5UG+`[Q!QeX%EKb98"bma`K `ECfkE!B*aS-fG@p3-Y``C&K5j,JFU[K2J"@R6BCfFp"km6AI4p")Q0)801E%c&Z RN61'T+c$XT*T$dH4q8!'DI#2*D3!k#"8PCPpU2B+BrRKqTLqTfbT3pS`FBI@`VF PQ`IX"2Y,%3$M8rb5#JmEUfhTZ+JL[l9ULBZAHhe("SPi2-N4$#a(5mFGLX*aVP8 P'&6"R"bF"-H'H!cR5NM9,GNa&QJi#SQbiE5I,Mj)!e#V@i3iRR#j)U%!b!-!B!) JJ%+%+iKM6'h$hmNjK)$#m+[$T1@G-Kj@"YDXe#TH*LF8QaVdXU!UFVN4$hiK#F3 F14#qkm6!M*DmKS#`JBb'CM*LQ-UBSpCGMNZF&&A@E4e!!Y@R$43Y+8*&D)b,B&T q9eaRLI!K4c)ica"G'dGKd2!l#T@*`-@8TSY[$eQ+4m0Ia-E%UU[S,$&lje&5j(l D2R1Xd@0F9J#SXLKK6"1!!PI!82c&`3#%)[48"@A[Z!9FLrA`ddaCMl!hR39[4L2 (i+Ke429Z3DSXb#N,bB3#L1B5XKM`j(3N#fLqZV5$!G&mT6"54QMqRG%hZN`$@SA #&+r3feSTdi-4Q!+ljkK,+@Mc)UHM#YKcIq0U3I8qeP9Jai$4VAT&r4NR*4#KQiF ,k1Q#%,K03Q8p+%)5IIQA''p96!S"8ErC``M'JB2E"ZMU"$'SJ%iTmLD*F'IcM2T Q3rejJ8!l!)!(41L!hKbq1JM3k'Hl-`cd'pdAQ%@Q2NhVHP-#Fbj"eL*d$CVGKKf a[dV@iKU!6,YMXDP,3@YXYpDajF01Q3dJ@`9VJ0r+4aaAefcY343!h)!)2E434%p [!REKNb8UDd-dKYD1ZdDE%8-%G%`KVb,d',!$2,ZR"i(im0!MqP+e1*UK",*[HTD k-SXTFeD&*,9-!5SJ"8C!#dLb@1kaFjdHemMd*Q([cRJJ8f6Y!e5KMf6XC4b*bCS $GF#3!0DH0-6mk*&f11!Q%')Y2!24qCT*!&T["k$HPVqDZj-BV+8"0SEFe(kfb*a !826'RX!J)*Hl1'irb8PA2'E8*ARTeRl2BkA[%Qqi4r&@36)RP52CXVeDA#TCKSi Y-BmH#'SYrVMcDD"D9+9%Y`UL#$e6'J&j5@U%cT5B)T2FH*6VTDDlXGakfZ%hiJl Yd"XJ(1#UdbP8$F9bNPIE5Y#9i+"`i!"J"kb,-#0+Y@p)LS8-2H+d)MY!20KX-$- !Ji#F5S#YJC*3Q+%)'eMP!G"bAX)!hNImB0MdSc'FJ1V8'2L(IMm81SP91`EcSBi d,&jq4T0M$P`!!A*%#SJ5'@J,4#EP!3NJ!flK[*J#AB@1*!JTm!BD!`H)I%Kc-Fq HYBirB)J0F)NIFU"0J5$3+HJ3(8K(5e)0X!%h!!4X#UmB!aUJPLL4%K(VChfS'`2 abJhFJ6VJ!Rj%(B!!p!kp-!'mX!D@C"L!!6(J"X`!!2!!VN#2ff)Q0MTB0KP`"IV mkG%6E3"Uc)Qr`83UMa2U6B4*1-J'da!'5PH#U!Yrq!d!!EGT+6L$%,JBC"-L5A+ VS@bXIGMUV5$!",#,[-"NE`bjMr30K0rM(Eq3!!##3&Ja)1cYp1bhp!!ZQd1VB30 r`pUcKhR#+QD%bV3N`T-hJ!!8'-[@`*l!%`(%*)+-)@#PGE%PET,Z5%!Nql"'pGl (rfB#X!E'r!dK)!5F`1)SBUDKcbi11F#Z6@)*i259$M$Jr,qJ"iV)cQMd5H5!32V Lae,bJ!HJ3aYRf6Z2dZ8DC)0M+2H5[J6NM+32!TK!EhAk!m645hf`Rr$c!!jifpV 3(BH"HkcSIX31D`(H8!lm,rc8Yi[`'#KG,Q!)9,[p8%(U3(FS!b'J,j@9AcAh2bc Ap`YHIqUEqc`!!h#qK@PhR"ihG`f-lr(G#+q4'hmK!('',d(d3i0*&!&"!,JG#$6 `drJBEXIVP'6S&heQd30)@AaBr36Nck#S[m&0b-#*dJ6Y*lIA"LU3!-0-!rfV$HT KEacrB2ihY%$*k%JGB!TBMHZC)%J`l$J$H5!09$YHN6fL59mDHL+!P2%1aq!aq%, lq&8i+'8CHVCIp82!SE&)Xk%+S!((FI#T[J2T6F4IbFb"5(P*PcP10hL5%$jb1U3 @8aPj&H,XG@V-e)#VL#ar!HYh&ca&jFC*F"fd"hp#FB&`P!&b9lPQphPUb)Y"ahS N!55EDAC'B%(pf,a@YK83JPlLJ$QP(b8Jm)%IV!T@`pZQL,J6V-,RP&ST$%+CK&& pq&AS3hS5JANLbP4UP5p"*K,JG!!%'&0##ZZ5+G9*0dM436RP,$K*XSCM5#+HRdQ JH%&i#JT3`j+!,cGGL8#IJ$`(bNP!Ec!5jmK5J59N"P!J`@BK3#598mC96F`LF%m $Q%PK8"A1e$,T9$U"!IRMSk3'cepfdU"m'fJJZi!%i'E'3@TeV5"R@1##)U*8FAV 6)AKkP!KM@`U9'""YH*H'G4SB!9!$Fa"I6"3NeF"MBSK62SkEX4f`ISQ#0S-c#53 06RM!4L%hDXc!KMJ&2Rc$"&1lE$&@6(f(*a!03PRe8H6G+$I#q%GSN45Z4%Y!%@J !2J!!J!M3%V-#@N*Zk"+lK1m5VX&M,9GF"Q2X,Y*!CGBQR!Dk48YR%`&%pd(a`Pc X&%T!F!AP3B(%P@Ke`XJ91mC899@TA[`"El+%h&pM64$`$&U$8%ThBF&&9E13!&9 bZF"85`r0ijDj$U4"%F"HI5rHP(aeP%99hFVVmM&X"i,)20ET6!0(3$f@*[f"*32 lm@8C6[jJ91@ZH51QR(`J"Hd!400l9mP*2-(9e@,JGB5S("0!K["3h8UGX$-N8bK 9AE@@Q9G9@j&PP(9rQ%qY``BS!F,0&M(c06LDPh,9PhN`G48fjbK&4i9#5@Lp-!& -!*l@Tqe`KF,KGcSS'cdK51)Q+#*#9c53!(F`BLU0a+)C'!&9S9!95B!!8J"FGXP 0&,bDJ5!k8@c'3iQ&(#`"-f&3KEGe%A1IDIDY`)5Y$2k3!(%j5QVJhND+)$9-$Mb 6SM9E@XV8K)i4Cpp2*LF61S6J&&3)Nk`%RPGYS+fdD8I+5G1U+9*a8ehP!ldBaGj [N!!CIJqKN!!,3!Ve,GlFE2"X(#-ibD43228Q6CAAicNBDTqKi@*L649T$ICcY0" JapJ(KKc%&402b,0P+&ET3d"590d'8Sa%33pUF*L(EJ!bDBBfc`0A"k4q%FeLY4# PA*4E"#%JZ)6J5RJ@,98I&a,V)%i-&e'$S@AVp'-@h#EdYqa`U39rGJhb9(A9L41 8"!(,%XFP'VJ('GGa1-Rm$FdC91Bbm!S$`Yjb&f%re+&*!$D`D,9JF&J0h9,5&@P )EA5%r4LN`3)!8d53!*Pe2*3-P&1,TXkjBed,P&CS#'V48Mjf&KBfZd+[m#Zd!() %mZ()9($A`Uhh+ea`C)DrpKTJE0U"aUDfE5%9BTMbE8`4`Cpqi5*)!`ZH0c)%2!' 58R*BjT`X53"DdGTB@#i(C9"KD8jZ'ZL!Sf9Cf3PlKaPD%I8DPj!!"(441d3J88( JD'@BG@(kp6iB4U@5)SU)Hq(XPRla"r)KV$CZG"F24cTSM3Ph"&EfabCPE(6(Ek# 12@jfi8YS1T9KBQ+)H$ZS*Hq1CR#`Q&Ea34SRVL9Id)Ia&aQ3!!%K`*Mi*dBFHB5 f3+,B(C6Em8%mm#3&Nr1KV1PbfPH(jJ+e%c"%3HH5G$MF@,+!CGKD$!d0pJ0X#*5 'RlJL(JIb@12%PXf&e9K9"A'X'bXCKfK8a@@&6@&K0EJYm!@@3#,#J+-8L[L#-(, 5%PI5)aT6aS1[@!B!Lpp'ep,NJAKpQ$3'NL"GBS@4q"F)K(%CTI'*m8jeNc53!"5 a1S()cU*EI)XQi'`J$3!0AB@T%`6N*@F(ZCLAI"c6`('PPF%pJ'("pm$%"miLY!K !F'B&`PDc'RS)ldQV`bj'%lp%dI#2R5aNMCYPE(aDM%(Y%M2S"8l)Lj'L94pKBG3 %-KL&$3LfH,!J(S#2"6GeZ&ZN9YYP6-8-`SBPX35S@kdDUlKa0"YT$cC(PpN*@j! !e03DrLR3%JNRLYN&I`26`LbbGe6HZYE*S4)r%PdS3@#(bC4I`3&SM%'9qBAf,%9 !#"YLY-9P-B@d&ZC3*09EqU@&3$9U(E-M"6),PJeAjaC%5#-Gj121S3FiBB'J2@5 04dS+K4cD-D`0PcM8,3&1`S5QFkb0"aY'8Kc)3)850FA8('-`aNrBYDKdRKdMi@G %K$D4D&I8V3YNSm''RNK@H8$meRRJ)a8(TE%FJSD&#GdN*K!"%Z&(j9J9!HiFX!E Ff4%J6ZMB$bTU,acZFAM)J$IG&-KF[#!R6HZ9JrKYDTTEYZG-&&,KXfC11)k,'3j 31V3(RTC#iGJX&A[#pc26q4a1(L@cF9b1XZ&@CkeCKLQ-%S3fLQaUBB)3Y&@'L-r hYX1p)$`#e1J%('dEKe[i&$ipp0Sef1f!6X,(##4KQ%%!d3-`-UPh48$D+"NDDYG MJ!%pYP"YMIEip(#2EL-YG!58FDZ2"Q(!A#hPBr&8i`&1%X1MNNJp(pT&"r!qYPh +"R&i6-4-ppldjRNN#)A#C*JelS,V#53BI6!2kPZ`eYD4!Hm$MS)5b""UcHR@mY3 r@GNc5-"C%6F2KXFkL)bH'r9B!Y!rDPf!9KiS&,`$$S+l("5L!CDR%YU2,*4pk)f !%c%,Ik!P6%GjM#M4*SdB"8pm3#C8*YJEQPBMeSiKP)LJ3C*[4ePMFj(!L!ZDV&( DH3mD32H)(&iY5b3T9QK3BhB&FC!!9eJeKSY+miCJGe,1cDL"E(l!BrK3)1`!rN4 8Z(03NE2MA5%JB*&`C*0SdT&[kpe39q90D-S6l1#HU'8FR6E841D4Y3CA!88ZDiN #%Y"(+Jj*`JpN%eQ4Jb51NN8Z#23M&hP*l3R-JK*3Chd'D*,A"X&&FD)",CM@h%f MS6B4,)NCFL19CcQD!3A!AlH5%3&p)#AMPZQ5ETG9acTmLZ+KQ23$iL+kLD2%[d9 6$dG94j9%%c"%kf00P(P55d9cY3f6D!,`NEK*')cGJ$!$#(@fP3CbYC56Ap03Kdc N9XdM8A&2,(KILBi)$D)'qd81qCE`-E!M"LNlTSAk)-)42&S3li%4d%N'-(MG$+J T!6HT%h&!3r!95k3FX&$@'A[,LUJcl3C!#`SJJL3"ENQ5X"`8*U'+fUJBG*,f)M@ '3qCeh`q!%6kN06KN"604BMmV$Kk*QZL40##LS#K3%&G@a4EmqB&qa`$iCS82!+8 6k"e)%Qq!%5!$53a)@UT'e)d5ZBZMj,)P)djNm2J%b3HE*"P`!j3LqJ%+19!#NXH 6H)8KP*3lT9U46IQ8K-B5B+da102M)eFrKQhLf%(T*L`PlG[,dd8kEerNPY(C&5B 9cp@L10+)m4KHdmAB*b5)AUHhG#fhSjL`"*!!E(M5ZK!*-9S-$NLbP&a%ePaE'4) q9fSPp''r%9Qc)e3baD%!ki*Mq8PDM`e13e&aX66MPr6MK8!i%P(liA[*!3M!"JM -U!M[JSZJSpJJ5b8rHEe4KJ&'pmCkp)C-LeX5[Ne9'C%,-&VH)XcBDDP"L!ePfeB aT3`JNS`YK35T(DAL5H9iSC@fj)6c)QiFjCdB@8TB-E"68$,A@6KLQbNcFM`DN9! UB6kjCG`MQT!!6ZD6&JkDF-H0AjSMiU'hi5586Lp6AD)lhdJii4I+,Gb-!D%H4*' V5L4RFT!!5L8&mEBRl(2+Jk%ie)P4Ff64Nphp2i+0DaLKR@hS`589Y$P#NCUS#05 NLCL(Aq*d@"VL(A+3!!6-PQHP#LF5PK4X*A@(if8hNdTj4d1+(*+-#S"bl96#j'm T4`5Aj-K`L6i!-jh$GXQY'50Zj(F`9(TAkFdiX4Sk5KEQDe#VJ**eB)(3M!b-k-- jK+2d"GRN8d&64'4rflQ4*CSqG)3+H8*)Dr'6H)Ce8)pTA9kA1Y@B@b@ES6JmN6h PLi#Z&C4X3!9!X1&3C41Fp@bXC!lMHmH3!&J0aU%)BX+p"NpJRF5G+ACVfm'"C#T `)S`RiJ2!+k2%-YQ8h)iL3Z9a()4HH'#`"Ud9LNMEY)B%4@MEQeXJB9*X5S9UeLS NF0`NdY4KqPdTfTDiM!`"D)+aYSqJ#FrFII2K2!CRcU&3iT!!!5p!&&&1N!#1+04 fm#D`QTj8K+DHh@jZ`DqT32BJM"AD3FLKEX$0Y(Kir%[QifCJ`A8JRN'(iL)k-Yf 6@V'eK5f59rS30piQ+PaNYc28!0SDjGDYj4a(@HcBFb`LLS'X+5Dm!&'!3S&&%@i Re0P&cS!5KTAai$2'CD4E&(A0f)E491V(2q3m'!XG"8l*QDr"25ID8'ik9V`a(Te hlTKPS6XF!AP("PPhYCV#`cDLE&JD53TMBaHJ!HQN5G#XF4%1J-8*'(L+HK!f!!$ i!!H!UrL!'!#D!a)%2T)Ie%@*U#0i+KqI+%-SkJC*6$6`bBe!9`e2#-&-'TIKmi& )m!lQK!D9pR`U0ic-qIcFJf)C'6!$m*-UT`LS+U`(N!$F!d)T%*b!!3SJcI!G"iV BK34%RFGCIFNI%#3M"+V"BTJ,,F$r!6QS,53AH[R#S&jF#FM$!`*1YFCh3(E%"kP 1m*KD$!&&31G(L449IKFM9E!a<LaP94%3%c'CQh(l"CN!!&a94AlCEYM2*`fJ@ !QQ#$S4V@&)TGR0&NG)&dJ!P3(Z`06F6I-+hS$5-&,XBle!RTC)p93jbFc1@ad)f j&6*(*M*D'*+GP5+TP0Pp&FTh%'i+L#kMF1"d4*hSB#0f&kjKU1,hX#ma'pG+B$L G8'1pTk0Bl%!pKFk)UEYN1ij6HrLjN!"Ld956i'G%NqQQVN0ePLP@Cc+aB6eM1a3 D"PP1$`B&%iJ'2#%eB,bKhi%f0aGBL-kN8+e1e%NZ@T'%#l"j3R8J5-Tlpp0"2qF AD[G%(3&UQqp`Jq@*f5'1pB'BQA,(-&'U!CTrS@Rf6Ye[hYJ18-Ed*e1%M+&%2L# cQ)6KL!&X(8pqH*ra#YTP@*ChP6,0*mISI'CF`CUY0"dK%pU&eG*JjNa3fGZj[Xe #,F$hicPZHBbK@bD&(#+H`Bm9!ZKPN!")p*)%$Mc`K@-A+993dNr@9(3SRE53!1V SecJG-FV9T%U"NbB"dDNYL"-VBe*M`4&GLJ(BfAZU@RC%TE*&0")'*88CAGjDEd! 4i)%q8I+"0*!!-h3Gm'@I`+G!G0A0Z`#'(&Bc9H!jc181AiYXB$@eKc@Ra*5Im8R 8*U[d-Ie2!%HNf1$p@#92Je*NfPdSjK*bP5N1PU2)*5XL$AP-*`&!`"D&*cL$lI! k%eM9m5"!S@AGcAN9VKq!k'b&P6`mC3!#d(hi,JiMKX#9!3DS+0Q%KjQ4(+!FbJE 3SHq%6G6FjD&8!"LbG$Kf%Tql!HB8#VN($QJR43T@U,V@S+#5Ji*GN!"DXP+DLEb L+l+2%Fdc1NV*5b"L+$SXjR*p8J@A")#Gd+C`SckJ*k02T3@GmBFG#'ZRf&%kSm3 Rq-`T!4h)3j-F%QF`KMb+)+`%&i@fB$(k5Q*!GZL!i#$bNTLJc(9RP!k%p3R@(3@ )'i*RdT52fD"'5d8d,!KPaAE*'NTQa5-[3BJ[f#J9b%dp(HE2+)FT(I*5!IRm`$c ,4@q6+ZSB5BXCe"G)%)SQA''@V425Mr'3!*0#LI5NLb""pSH%bc"@Se'AT%'[9*0 '$-X'611&eMJT'VT5F18R2kRRjJC!S9Z%lI"XaP9Y3`B!@K5LIpY8B6X%*HMSXQ" 9$)9-Pei"ATJ6e88#ZCRj4iZ'[AC2!$(rk*p`""b,p8Ar58V%L*3-YXNH4NZTa)e BcXQ62++-!3N&@@8!)E*M['p590qATZ%SdS#ff&DNE@bK+h9"i+,NA)jBE`9PY+1 6335%,-6&M`#C2Sl1'SP!EILPPUPcH)a*',e9RUFij!FN#&T"Q%BF(4aZXVqX$Y4 '"&DC9K&r3f4fP2+'@P`C!!1BT1)MXGQ8U+4++")3EcDG'DCM%(9f,I2(LVJK+)0 J5LVaPeQ+*i+8-RP&"NI!XQ*,E!IJjdNJHQDQmS%BDP!89IKRlCJUR'INKZ#'52i !bjfNd$UQ*3U&'"UTpBX@JU5bGBi""mS0Bh'C-,+"UBCDm)[,KEr)ab!T,CAf46" U*S()`5JdE$T'!p,!-&)%#S"1S!-%*mUBk2'F%%,1M1p5RA`H0)e#XCed*m!EH&+ KQKl9c'RM*[!*PZ@2"IQ8$26'h(AT!*ii#K2Kb%Kr#d[5-5Kp"pi-lM&beQRdAFC &jK'BU!@m4*l%+(-RKG(KI$UM9Rq51Yd&laJ&iQaUMA`$5B@I-)3L$Hia$GJ!BNL 9LRU3!)YQc(pJIm!bUQ'VShSX#r,Lka&l""I65CA+D)d3,J`YH+TX2"f2XM('Q&K A8`4NVlb&d4(4K$jH1cEKm))K8%E#bLKa(4dV-&k0ieb82MP)a+K0r%[L5a,T1e5 T4U9MX8p&L8',("!%m&NQ%85kP1@HdYZF`J&ZD)0'@-4Hl'Kl$$S#J4aGM)r"K9R 9@mV')EVNM&+hTd4kch5Uba5')!1d!$-!%6$DR"39aDJUK5iK,mU"!l4i+,b'8QE %k$8Z&![!8T8`G-Y%SF*3I#f-d'*R[CU(+**89%fL)i"A-iq-0fQ2AbE&M90-3"! `ZTQSJS5&DP38#N+!Yr-G6#1Y#CakR3T!iSjACId%6GA$VZ(+r')DN!"T)+Z`'PY 1$!!$r+Yb#cf&ViD+Hm(Vm+qT*fQ0q65`N3Sl`VJb"hBrDYBQ@!8PEL3#Iq'5"(I pbAJ*)2S&fj5'JkRD'c!%$&8%Z*!!01!M14X`"Q-T#0"UV!VPUZPK92#I9)R3T8& 8BQ(EGe!0DJE9J(2K2!4pfH$IK@P3!GS"SC+r"$PKkTMdpiJldp&p)#+m&kH$49N erDa"UjJhhK#Y#'S,HRdD9lG82[U80!N)K-Xc#hdrR&DrT11FHkQ&2+3,IB%M8#P 66D#SK@,(-jkT@dKAa,%*KDd4$MScYL)rJB&+G![YJHqN9c*6'BSI#rReX9DMUfV ,1RTFF$9V)%)IjUa9jh"!L-38f9hX"PrFF*!!+h0"YqihGL[4)L[03c@!$I"DN!# X)U$*QQ'QV#YVDQ+KTUX`ki!KXc+Y[i'@bUF1!4iST3'eXJ&abEV!Y%jiF!EEbJQ YCZ[%ehSkG%p*J0LUZCDY[*!!k#*fULAe+HkkYNiT"UBhfLIaH(1!%M#hXNU"61C krk8@0m!,-!2)!-DVHl#Lm!HhUpDUZcD[9#+6S`*!VfI3jCSkj6M$+irb!YJ!0)! fQVLaJaQ@iBTl6"5ZUr&JUN@A+`%Hm!Z'@r#&1BCkZUDUi#56G&3m@b'BN!$ML&% 29MCh2RJ9PX54!m0PDAr"%Y#"4%*Z64B#GXaZTXKS!4L+T,UR*9QPRU[GcHRU,'N !(BJ%9L5YUkh4ENK83$ZF%EB8YddABJB2K@I@5m@RKj-JU+Q@'GrS[Y8UJmTSS4r bVK6R$,3VISJrLl366G!9$d#ACfmX986&`18S86QmA%+(B@8jf4DbQ[Ci1AH@KGT 4@PK@E*hJBTijdS"hSeX)TFJ11D2X2$'2bTkcNP@L1Y)!CEp5@8b&%f4*cP))a`k hF+#H9"eZ-ePX8r[$a&(j*#`R8mDaNUd,BbVHXHQ!222U*@4'f#JUDSIf3r`'R3c "-lTj$EB"$M,DK!Ba!2+K`r"p*Cc989CS)(jSPRP3m(hDbHNDP+`,CLT50k4f9GF -BEKdU3H63KA%h(fH(#IJN!!$L#k'f!Q3!-Mq$DdX+hJAe#9HDTPS[`S"`F`!S#* 8!"4UFS!`+!brK1p8#0N!V1`c5eieXPcEdQ8%A"#Hh*!!XX,UXN!)$([h6$ZF"M" Vc5+U+JhMi[2`EH614I@CY3R"",Bi8FJmD4M#P4cb$e,,i!UQS!#q3DANYMe6pU+ UJXi1,j0S8%1I`"!!cVmM-cKD8S@6)60C0p5-Z9$Ir'8iMe6cAYNpRXHYJVpDU0d (Q'BAG#LYU0555L`93#"'8m0S11K+NZ+(`QiKMrF"6%T-8S)R'r5"$(D&KQA1kKk )UY@M-fdF"QBj+!l1!5T!%M,VA&6a6@2`!adE2qhE18j4*iEBL+'*rKihVF)!3pJ D@CP!fm3N,4eA!PR&`'ZT9UADd"Der8p@`FZDH"X(YC1-H+*mc,ePi@K5$`!JBmJ D3T1%'1&db+(2E"L#SQBJh%L`pSY!UA51'JXB,$ZlLaXV%M3!c)$[!J'8Ik9R!31 ,3LHrdh35SDNU2Gl"8ADqK(,MUT'mZ691E!S)%#eD5BfFYG0%(&L8#0Jr*$"NU(f $l'5*%N8FGIKiDU*-d%18@4*'3&c+A*fQ$SfBd!lZ)6hAHA!3)UIEb2LS4b!1H&3 -B&5+83*R"lLJ'"CeSAh6D"@GK)EB5(YZ+k,6bX@e@M(Hi%6fke3@Q8D8bLVYU(G 4$A!,#@PhJLaeNi&9pP(MNU&YD#)#bAPhH6MX5p,6SdSd@BFEB',8#Bk"l@!%H,F bJ*!!"UaH+HIY2([,[Q1(!93l)a4-XmH@893P!8N!(Y$85N%63!d`'2`0RLYA9#K %Z"VD$qF@5,&i3Pe&(UJ"0N)&H'ZX*(%0b+1r*VGA'4["TRi4ZJEpqR(*-U,B9*( 5iJqR*imM)6+HpUDZNV`"QfU(ZH&jJ4ZiCQ4$cJL1aeb*8j%dFiS"!**PqTkNb-f M*r!)*+BU%G*5GMp!K)B%FL(&5l6"laK0+F'0p9`bBNb,&,)'k(XdTSSP)[LdcDU m0!I8(+#RT&96qU($e*%KB`N"B'"D!m8`GG#+m@#lFB#UephDQdL(Z3J,X-c0(2) %p8VPeBd98P(Uf)k0FGR8S8X'RIV'8iN%((9*(9,R1B)pi%JCd!*X,Q4!%Q!J`3" #QKf*+2*EqBP$"qRfTmZ#R+0%cNflPCNdVH)&#m#MLp54ZUh%b4QK2B-Ih#!C4pj *9'Kmm"0LHV`'1lQS)4[rBk2@LjQX5iP3PdS)T@`S-TC@BKielBm!jZSQT'N9SB% B8mUQ4"1,b@Y'Uel(!U3!f#BF%+QCBZ4TrQC6('p$AF`NjFCPBS3`pfhdTl#-5B# 9E!Gf9)P&ENj+rUapSm++%bCAL1U@[E[`,Rr'3!%B#ZSB$`8#&),@)afC9+%D EiHmf%J#[!PQS-C+eKED3!!I)LkN@'@#qf'[I`L"SI4drfaFXeRfYF)JE$M-TH'a *b[i&p#bUm9CZ!-qa!5)$p#@[k8fbQ&l(f@ka2ip41DP)!aZ4UB-#M,JdUEdN3+T 6aX02'UaKHFkYpDI%FKBpD)qS9bb%J3KHS"rN1('5N!!i,ZfK3Hr2Sr5i!EkLED* 3$*e&6A-3J"L'3NeFKUK+&fZ%U)&(0$'Gk"k$(kBJPqdVe[6+Yf2%MDRbkKC@l5L DV'5CXm&Iad8JRSJS6X-*USr8K4P%-[UmLC+9T`Q4"Ze,K"CE"&eaAeHVci))(PM 69F0bT((+c$9--!(dCMHkLKC9M1pi!R#d2Jj8U$ZmM$Z*'m+b"+Li)feejb+%T(h 5CaP,`MGT$Ijd6a!N'XT+F'k*&"[M*-LSRB9+45[PDZ@pAKE`-FGT3+G'm2Gq&!' TK%Pkll+`LT3'Hf*&(rk+hM9J-Q8TEiU"l@T1Y4J)#SZj[,[6V29kYPfh9JUP2"3 )"8"XC`5FZfFKh(AdZ%J)DQ(MkrDQ6"'qH(&aV@9![$3h(!I$E)cM&r"fMaE&@9r !R`a3,kVi@,bT#ipK@N!63`*1Z,-8!IlF"!)FfL*Ab`E)GP+GDmXLYC+K[a5Xk1# #q4dNbR&J1c5eaKJY'IAiYhR)m4S4qS1eT)Z#'$+J4f`'h(LZ%l(LHc8VMJpY%hL +)B#1Kb4SUP#8G!q#Tr+8kD"hQI`BXD$!8Brbdl$XD4`JhD4aDKVBBjU!2lB'(Fi -`Z0Z[5*+TdF'l"TTD-,TRai(aK6m+AJ5K2f1N!"c1Y#+S`e[B,U4!0+!4+Jle!' cQqpj"ZJ@DTSXFhB%A"M`QbE$`CbU#1[`)$b3!#9[jFYVL"e-S26("V-55`!Z'hV f`6Y(p@(%'43Pd*B6djUB!&@2NbXK!4e%1LQ0HJG%J#*F`E`6r*d*`3Kr+l1Tek! hk!FS@f)&Y!bcLqGXi0Xj)5eLX@QD9Kr1VeHcQVBf4L-#LKIZ(!jBE%Y6*&1`N`@ (,*)'X!X8&AAd%A$S9MQ9`L9%idi6c%!!EJ!!i!9%!!VUFk)`)Jh0$#fAY3P5L'+ *Xi1N$ba(bd*9@K*[a056GPkC%h#RmaY3`M0X'!!@ATH1dTHkK!LP*"@[%Ei"HGN "(r-1JNr`T8X56("R4m"iUC+9Q`R#mqEc)P8%#DMeGXi'QH#DSB%m"jFRM,&45LB ZaJS`H[S+rCBLNHM"U*bR)3&kdKR634$`B"i8i'GJi!))"[Y'4a)'r'ql4Qm!bYL [!0&i-AJf#L"#HdN'e!!*)LYLS@DABa6lBa"cZ'*!dP&AYEI'54(`%AX)#D2G-#R jR5C'c!!#(!'8$K,3ZPUS,A()m")c#BeKf)+VB!!emICb%lY33I'$kIlFP)L-mM" --- end of part 1 ---