dolf@uva.UUCP (Dolf Starreveld) (04/29/89)
[SCSI Accelerator 2.10] Some one and a half year ago, somebody put on the net an INIT file that was reported to improve SCSI disk performance considerably. However, that file contained a huge bug. Shortly after that I put on the net a quick hack that fixed that bug. Since system 6.0x came out, I noticed that the init no longer installed the patches. The reason was that the init code checked the piece of code it was going to patch for the occurrence of certain instructions so that it could be sure that it was patching the right thing. After some hacking I found out that the patches were still applicable, but they had to be applied at a different position in the SCSI manager code. Thus, I fixed the INIT to check for both cases and handle them correclty. In the process, I also added an icon to the init, which will only be shown when the patches are really applied. I am sending out the archive below containing several variants of the INIT (see the READ_ME file) and some documentation. In the documentation it is explained how it works and for whom it will work. -- Dolf Starreveld Phone: +31 20 592 5056/+31 20 592 5022, TELEX: 10262 HEF NL EMAIL: dolf@uva.uucp (...!mcvax!uva!dolf), or dolfs@hasara5.bitnet SNAIL: Dept. of Math. and Computing Science, University of Amsterdam, Kruislaan 409, NL-1098 SJ Amsterdam, The Netherlands --- (This file must be converted with BinHex 4.0) :#8&MBf9X,R0TG!"6593K8dP8)3!!!!!beJ!!!!"TFe0*9#%!#3!!-YCb6'&e!3! !!!!!!!!#!`G548&%)%e&Bf0PE#eb-(F`Fc3!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"849K869"6)!%!S$e@,k!p9fX!!!&q!!! %&`!!!-%!!!*j4'SHF3!!!!!!!$6Q!!!%##L3!!P"J`&PE'YMDf&$KJiM3TciX1, #"%('M#R$aJ@C0f-%%+45"!Z9*P#QJ#$)XL9*NbK9YTa*FbDS(PCH"#4`)@!!2aB T5Ja+G+K4S8L,*MfUY#R6TdXT%N3#)%'60fl#M(N$!%3B0b#51%P#"B5C0'c+J+# $*JbG"RI#c!%KT``!!`!)!)$508!h!6hfp[hEiqD906YljPAXNq"!R`J"4*B"`)% K(JMS%13!J$+!Q&))+KM3lYqrPJpX83)@85ka)D8jFD(,,5@kd#cfff@m,)91edQ `LlPi89+*5*K0P"SK5+DU9IZ5jV0G3Z#mUTGV(G*"%GNGd(P)HHXYZq)6Ab`jIfG N%[$&m,plTp8G"[P2'@4ihZ0SqV1P86Ee'$ed3q[cC`Uq12%,F52`1dAi#YceCP- MjG,(!9NPZ)Mdip!aa8[p@G+Z0SqA6C0"$ce[B(*[B)m4AVVFAQl4AkXlirKI[G2 UMS0mmYARQ+8XjLr9RIFG))I9RH6H`4iKTNHf+fKRdb46&*mbb1pqPr(dI6b)I9R IUJSd2HMpVS`+mdYXYD)I9(`RFU,%I'8HSQcTk*Yp@GqU1D([bm"mU-a4!V9(`-C (HljH!jlk*Yf(0'2Vr#Gb[ZH[e4hcQqY3Q4hZq4AC01D@fYqG0dX9CrUc[2IPlf` j)pVkMkXlchd6Ei6Z90'2UMe0KGqUD-%HQVY&ICf4eR-8dB+MpchT$[I[eChkSq% lP4Ed#SpY0VI1$@RQ5@J[bEpqU-A@BIAj)miB0-3+RI2JGe`U%hi2Bp0djTp8H)@ iNICP*B&IPi!Mibhf,q2h(5#(e4ibb2'qZ9P4Q,lRVbAeIQE#hP)GC5$4p8-r,eU -Yh%39'Re4m+[N@XAmIPYRm`J)H8jjG2Vr9(0$d[k&2+qJfYlSh&b4l+p#HK3K@U 2K1j8@me(U*Dh&j``DBJ4ir,2X%JD-GlpqU20FUH115'[4mZQbD'M"9KMLXYq206 P0YhZqU2'@4ihTD`(e4kHT90dr6Y+paY&,q8Kl1b2"mhXK0R6G##SdqU2"mhXK0R 6G1HmlF8Q$C0"$Up(2I3pBY[+3pcep#Zcchd'e[SHX8J#!Jp"Bf0PE'9bBA4[FLj NEf-`Fc3!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!"849K869"6)!%!S$eAFk"%2b8!!!&q!!!CiJ!!!0%!!!l,A%'mE!!!!!!!!*! !rJ!!"!JSN!!*3B-"CH5SXE!K`iF1)kB!!!3La!05LJ3KmU9*%3%%U46"3U8*P#N J"J)!4*%J!!Z8!SSND4+P5TC!!Y+)j,*R6e!pVX`*Q%&F`!"q)PT8bR5TdkBj*PD %qV3UeDY@PdV0kT!!)")!#CUmF40Qc"X!B8!d+3Z&6Cdj)8!NS31LM"XdBGb-+6- (""dd!!`!)!!!#S#8h36d+(`i31)HS)Mm+%%dA1@!&8kS&%J`!%)!Rf8!%1'"b3% Y"$N!%!fJTK5##JDdqrH[j`JRa!"AN!!%S3*LbT!!+8PD""NbT!L6)P)'2T%#)XN 8%%'B--%Sj%N9+LiD0+##TJb)-'2'P'&64NiB1QrNJ,J6FmdF%'rFX-Q$dme*%%e 33Q&6Cdk)LR4!P('$*S`EP6ITP!3K9FkE1QI3`+Q6p)fCLLqH0(J$TqA,0$P[QSN *BXiE%'2#X'&*"S3B0QRFe*96*NaGThA[b%P$ab4CXh63ZTRM!S560e,cRP(+CSl *0(-DK$&MTXbB`Q4#MTc+0iaERe*I8TeD9XjD1@fFUX6j9@SCbcKERdd,ekPGNdZ E2Le6&h1$e%Q$`)($mX60-@r)Q)3*JXaEflJ2Zdc-'c-)&)""Y#QD9%bC&'hV%#C 1pDe`-L`eJl!6CR!C1Mbp9XHmKQUHXS`9p%BEKY9@%QleQ63('frFdG*U[N&@NK` "*S(D9'[0eD"N$C!!JGNB4FfKf%`QhC('A&6*e9mBBPb99'PeDEIEBMhYa)*GA+e QNSGcJ$L(L$QGY"aHYc@J"RNRhH3JLY3*YPjZL#R'@!0AP)5D5iYe0TJENj(a8KM Yi556'9DemC0"#&9AKKeTU(5MEAb"i*dEEme4ah)a*I8D#%h*3FBG#6E`hKa0V@( BK5B&0FC34Ad(jf8hZ89J6cVL"#G3+18&%k'hTG#B%*k&895"Uf('`R&6jE36#+A 0aG-FQj8B"Nr8@9GT%Q(*'G9EF,c"j&4S*J%A'QR!!F+HYTdNaf$dX8'EI'k8FBG GH45Q&%TS8*A'T(PF"8+dl1984Q02I!9G(4414qa0hLhBB'-NY96'DbBTae`C$@K U&4PeU&4AXL,FP4FC)N#jRC50'F'@`(SC21-FEdie4ajc&'DQUM`"5TKD-D&U8Rh -bN9ET@DN3@&jeCB4X8Pm96bbE@BQb'TIaIN%jKbaSFJJ@6-41dDf1p[8!&k'PMU ($JdN!%3-#E6aKKhMLT%!H$'N`!*i-U5`3Y)*N!!KKNYGfm$#dL+4j"f"6NA99&+ E&5E6QLh4LZ8F@SjmXf3X89[BbTL1SHNEK-i8aXBR*F@5DA4iV1fNe*@"KfGFU@X 5%8*%p"f,,S)3!`a`j6%'5h1JCakpaplhXf594SX(bSA"Zfkq0c()T9*dBTAYRR! MfKD$$VVFCedmpSFF4N0ql%CLIX2a%R[803@eMJfScMV,01I4Q)A(SN6(M8llAKr `r2AQNh3LQbM96``DITY4)%K"A,rFqH39UYk*3$l"LjX8PdrQRA3kh(84!drUi)B -H@KfbGSC('k8"KH-DfEmmKX#Tk,!i`c'@1FkhNNDYK8k*'Cf6SY6DQc@&VbCa'P 3Fi%Bj,3B1XJ"IL2+5k88D*IS@+m"jB,,9G,&`+mi#!3GT!T0a21dfl!U$9P*L[6 #e*HI@@T#0rVK'Hj$-X6G*R%Z6&[GKZHGA[dS$AFa#3V@3#F669!e2l39RC,L[)q "J!K0#))1MfH9ZE6%8b!`@fEDJ%3dP'FkEhL,'4"h,,C)bL5rfmmFE()MYmJT+E( *f%UFeErKrE#0B3ULZ-BLNa#Da!P2J!),+rE#cdMT0h4`d&+ZjF48[J@&84ZP#f' B&YF"jh%JLPrqa[)9-)&5P0l"'!KSd,R2'4%0$B+E(,MA,k#Y$d)q3GC8+'Hjm%L P+"'cLZdkf)$prBD&BbL0CHU51cRjd#6JUSX-("2+Ql5'L#N8`kGiNTG`pN9%%d4 R(GTJ(TR-$jBUP'8TimFZhG'`4@6)3a40BJCdA8SkpM50j%#J303983iPmFZT$RI !b9#RRZ*N6fYH%j[Kh%J-1G,2ZAKiNXTFjj8a-FQS4NDJ%2,N0BU$MR4#-S9k6T5 '*b)++CGAR*[B3)I5dCX4CAH'PFA*1dGbf9+ZNK8JXJ%PJ'`!AjL$e4N'dPMQbaD BP$!&LZ5&P,4%c9[!T$`kr)`p8+23L256`+p#L'e$5N14X$-Gck$"$@Q)3aeZicV [H-GafP[9(GC@U@!T*#8V33aEV%2B2*,QRN&#$[eZ3YQEV&&1EB#$9CihdTL8G$D CRBUL#P)%-98%9dP)!KjdGGI9!1k%f-T,NHb%*cQ`V5ej'KNF,&-(@m&4MPR-dS1 FPY6Kb39'Y!U$SCiM-re-dB1Sbi[L"&LBQjJ'Z%(kVQei!V)dT"!%#T0*C'iLcTc `$58UBFPff*)A`XbXSCE*c%GE+"GRE@`PA`Q['kT&V0P*k%%Mr-PU'6@P"L$K#9I )ia0!8)8TY$B*)"&*%#)eZ!$1+kBp"%'hkP#GYha@4YB#di+&HU2AA2H4$%b+L9$ dfE25SEmKD%!5[M*LCFN8Rj04X9"BA+R))2!YY[)1G8V@X-`Y9M9V'0M)#'K!iJc 0VM0f9X@#1T1D&&)Q)jB*G!U)4(60U,#F,80Cp(+6f14P9CNGST(2F,31K3mrC8& "k$CB&p'q!5TZN3N+C"JAh23BaFEcAh`P+j-@I3q2k6@D9M(VKNBU8f6d'Ba6k(! 6ZNkP[NR4+5,$m$ccV0,2E**1D#aE"[,'UErI#J1"b0!!a`B"XQaSJ4aiJ!FIh)% (HI$"((LJ"amd"JRbUK5[IA!MB2Z!cb!JpV0P"Z5mHHJ-K%-EB,Q%Y'8R)!(aqYB qqcQbAaE8-VjP6pXHe-4X!A5&-U`Vca"k8lE!5$)KFIDh`qf'F6p)2qBHC8Y!Fa) cZ)f9lLjL31003E[5qmXc'F`(cj!!lf,[HbVpjZHr[r*ZJDDeS&kGY`eT@`E"LS` k-[##Y%GcYVl3L)XqQ@+dA1+X(K2U+QbSbdb6"HUC%#CEGHeG8TB0E@HM5M9E4K& 0j'!6Rjm[c(-Xf4R-($pb$8I%hL*MJhV@TQb*+dbMiT[dk(IN%Y1f9Tj*3e+41Dd H!dU$e-PL8[96djL3!,GKFbJ,H`3iV%!#@A(5VUhE0`efbe`[jNXaLl2dd)-DG*R T0a(XNjE%KT!!C-&E6)j4MKEEp@MhZZM"RNp,J+4@%-b8lafFH%p)PD`N1!($"@d !e#G@X6+BUFSb#3pI@J3CI&I%3#EK[BaV`UkNH%IbeL,D5QM&@-h'PI52ErUH4Jb [+aU0@Y@j%elLSRS`P5a[B5AC`&TLH@rG[!ijEmZ0I4ZQlLCP[8iAkhcUN`E#Kjr SiA%f4HXcaHYpaEj,*c3pjNeqGJBY)b*3XbSZP"mj`MX2NR(p&#"%N!!6*c"mbk* 3fEFPNb&mP4)mX&-M2!%Md&C1D3"mI3-A,X%TGB%#R1G%5MB949%()M-aS386&p0 ,RXGX4YH#fD*NJ844$@)ehr)@VF)Rp@%Q@IC0eK%YSK&ZSXC#epG@6R4qk4H!mGG 5cK)m0i%#U+CfU$1!b(4Ed$-B5C5$S'GXEm3I5[*cGX%JBp!I)U)(4Z4FVbBHk*F Bpc)b+4Gi!GJ!Je4l&A051H)8qA%TGr&RF*J'FZKc+0)rld%A1V3XRN%(Ui)#dL5 'qM&L4mG'T,BMDPKEL(D&0dCRH"4Z-B&%H5%bm"9Cmb86!4JZ1T%($4"q04!$km4 GYr%#KrL'LQ36S[&J%AB%6r!%42"'6e!%&i&K)(!&%l%%2b!52A9eb4)XiZ%8B6" &-L'#iH%NeX)`-D)E"19M3235Ed8'0q*fA,C'$I"Lfi*U)Y85*#8EPm&M1p5,cP% Gc2)JR6@%5E&c`()3`P*5edKq&H%'QpJEZ'&IakFHbCF'KU+!c6F9C*!!Mkl)CFp 92@DA,,!b+9(@C'B`&R#3!"JjSiJcNL6TF3C69(Ye-5%U!e`k%LFdi3B9q%hMd8T [F3D$ia-Xb90hiN9I@)m6D9i2SJ+GT3+QKa[6#*!!eHJ'!lP-3!52TL@2M1KIS69 D+Y-KDVB8(88TbB*RT")m@%GLEG3B3H!6L"9D,)%d93"N2i%%a@J31-!j+"!&-RJ mq`3#85!$FBNHB"PqEC!!(hIJ%cjLJrJSP1V&@%6j"VGKP+1L103SN!$B5#)Jm', *NL'mJcT%`"p8X#d2%PXcBbGX`'P)d`"@3(qEpQhZiaGcN!!!9b"aYj%!8e!'C5! dG")YhlBj0R#E-&!$YiN$@J8$G`!$Fm#E#@!$-r"Y0R!$[DP9-A!(-6#FhiB$ajN !1#!$bcND*Q%3)"#AY!8QIHNc2FJaX2%5""GqB")$1K!$,13fKh0H5F"TFq4#[L* IhB3Y4J3Qd)'@pq'*Ld39,X',8N&9D(!M9M)Eb5)AhI0q0'&!S1@1"()m)4&TB#) &dF'ClI-%aVP1+$!&!e)[a3-#EJN#-J!$cS%HeL3aXVBM&#QCec@DTDPTai1D0,1 DVENHUaQEXjNCY9N'YfN$-0#M6*-!05!$[aQFd*N!Qj-$ZUQF3NUNFY#FcdQF-E! jZSN$hcDNCE-Z[8KEb1G'BQ"IlZ)J6SP55C&dc[)SY0@19[QJG0!B9D)D`S**kTJ (914ql1%G6mD*bl%8l')'$'3cC1!KZN3G4B%kFJ#F`PN$0b)XFZ&)I"'2leF5GYD IjJQ%BVUH,G'H$+8p-A%pN!$84dN49j,8L1UL'ZB4&c-e2caAP88%2&rLReVd)0[ 4NXQbBShL6BDLCUB(9QcS'jU5UAha2*S960&LU35*2F06D#eC@Z0jG65"IXA"UXp 66TiN'[E5(*a&NGlP8NFj8BpTMGMB50Fa&DkRM&6i&qT$5&BB9JIT&JB(+(cKUE5 PGB&C@iI82K8k+8(jI05L2$r5@%S*Q34jHA8`Leb'5A%R"hGA&fKM*b*8*l**)TI #&Tr9HUp(%!%SRQ&jH*1CH$5(0&(eIJS,ECEa3"Eb1F9eTaI545La"J0*@m%MNTd T,)id2!2S'freKSV6-RGi%f&Q'@aJ"VrBLFG#3$FbJ8%V%NMl&91`IRb4J,4'"'T @(h6!TL-6&$"c&Q2JA3dc"%m3@T%M%e2J0dZK%Je3"B$eI)54(em4"'e3HhiLD`f `"#q%'9IP'c3!!cR3!%Q+!`@K"##!%@rV0Pl5"YMT'2Fa)9I&CJd!"FJ8,6S!!LX `!qSjSL"3!cQ`6M8!!c*!T%A3!Ql'"T&V(8%,"(9!(bj3"98`"++%!Ll`ZL&3"`4 d(b(3"Q0!(hJ3!PT"!cS4Zr34!U6l&A[L+al5+3d!!J!5)&0$8dNY3@0MC@`YFM& h-(-e!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !58j*9(T[C@BK!+!pB6QJ2@%l!!!'5!!!!!!!!!2X!!!!!*65!!!!!!!!!!!r3!! !"!J)S)#NJ!31"V4&X+($Ka!K5J!aCFL8*#f#M"P6KNd,16(Z`*K63ii!JNQF*+' LjddC-`&6VQcj-U*0L+"kK-Rad!#5Qd#$#Ke+Y+M4Sa"K#)!!D#!!!M*Fa)"")ZT 8%#LU6%R"!N3U%$&bi-J"3N`H%%6HX$&$N8iB1A,+f1P)KZ#(J8d$$SMK!JB&[M# `DNe"d5*'+'rZP*'MLL#1'a8[JY$)NFhL-(6Hb!&K4M1)*Q('J)$#TXkFVR2Pc%R caJd)Ui(IX)8aimA8&f-*FU!*-f#!*%1FM(!)b)L8)ND)%c`JNiV$JIqLr`2NQlT !k`'`D`F!)IXY(0N"X!NJL*Zal!%'"9Jd*d!J3!B!"'[&$%!B3"LZ`cM3$rpe"[E "*amJ!lMAP(V8R8IGH05"4eehSS`KN!!YP)!3J#U8`"'!+24B+-SNerNQhBJNPQM LL5LQU1++,,ESSSZq3B2%132JB!)H$&$K`J+Hi#+!+fi%C)J,+`JJ!J1(8""0&-k BB3'4!TL!j$ri40'-'@c``)-!@@lT"KJJ31N,NNSbDBB98!Sc*6p@QU'%PJ,iiX1 @b[c!!`#!f!N!#NlS!S!2@6ca!Jp)&)&&%#$F'9#H!+3#LJKAN!!345U5S+!%0Y, F`)X6ZB!"`!Q-J#'!TGLS!i!!QR)+akH-`#%!%pp`!)`6G6KK48![,#$%+B-#*p` 2,J#JJ+-JI(!'##!!!8S+*L$a!J6!!S"!R`"3!-)5S+M`!J+TM',#&djiiF)RY)* KMkhpF$(M$a`Xi8kk5,MK$ckSZ"([2`5JmJB-1#6!`MKB+!!%"#(!JNF#,Tb"!31 i3"&'(@`SJ-FC#-6!Ml6qJQ&!$2JSi)Hr3EL$,``S!-!!!8$XL333r2VE!K"8[[` 22`B%#F)rrY3-`-hmQ"#N!Q(!d$),88QV"P4hSJ"0%$%!ibr!!K2F0-,hjYX(V$M `%bi)Ah$aL"23*#%b0bJXBJ!P"!'5!ap2258%+`!BN!!#fb$X,1`,$"3K-J&)U(% U%RS!`-+pq1Jj`+kSX%-!fS[LhIIIJ80!Z*i")-i1V3l9AAG!q!#!#!$N+1P%(++ 6(XhSTDGqZZQSVkjkkl#c,[[VXlYZHqbdjhjllEMEcZ4dY%TKK!`'U'1%!%%!B+` lj34444"%"1(%2K#B)i%QefH2rIEDGmrpppk($rlii[rZ5r$$&hpmmXY,!lhde+1 $e%-F!-#3!!'Tc5%3!$V`4T!!&%*`!K'B3"!['!Fj"&'$ViB6%$XdKb##+05K#1) )J84RF`m4`!8$3S1(E"!!9r$J2`J#SSB!iS1c)-i(ID(#Id"!)-*S)43!-!",0!3 #!")J8d0655e"Bf0PE#eb-(F`FcB!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!"*6NP8HQpPCL%!S$eJkk!pB1d!!!D)!!!!!!!!!qX !!!!!CN-!!!!!!!!!!2d6!!!%#!LJJ,5!"!i'Y%@`SF1(%#&+!$&Pb*3N,B+-'91 '63Xj-1l!Q'0$MJ##5C`NSD,R64Nc!91ZE2NbSNf)S(U!@II3!++E3)-+(8UdU0' M%'%)J!"S)!!#-Pc%J%%LkP33++T-5F%#4#S3-A,Jb!"i340k`-8146KJjFXV Bk8L'i)H"63-1L1%#"J@q-,"U68(4)NBSEqk8ND1+))iE&5q#d-L4cH)`G0l)!@& '-iJQBFD!J-+QcTbZFqA-5I2'$3LVJGq`K6(MaG3AB`PbS!NcB)!N3jb-F!M)L*3 L4SJ62##6LX1"rk,r!q5EZN$V!E"V"`!KqbdFf3'`#5#)Ql(X!3B&@$3R3#"!"J! %Dm8-3"K!'+l$10!2rh8'pX%R(b!$Z0H8HY5G4peie)&(AAHLM#'3!#f8J"#!+T6 !%B!Sp&JSbL6Aq5EGL#5@D1+*++DSiSSXYZLLLlj"Jm3j!q"J!Ki-81(#!TlJ)S! VEJ4NL!XV##!#!iG3%%d8cTKK!C%#Q)$N2rK%dB`CE2$!J`"CEZN''#"!k3Z55M* TKK93#M-P2eDDSB5@![ML`jE+r-!$!)$B#3!+6ZJ#J!pC22%#$dJ8J883)0`C8*i !T!++#&H3!""&+T+JS!3fdYc!La1jJ!(!#Bb!)B#Pf+J$J!#DFJV(Tic!)3!6hh! !M"0e1'&&3#mX)-3TJ`)Rh!mZ!+#!Sb"mF!B))!!"5JSQ)2%#"-!#J%#I!&!!`K+ JU2!#!UQ-BX)A6RMK`LHdJQ'2VIe`-H-2(#cK6VT)Z1%22ULi%Hmr"+$b"J`i*-$ #1&JS!!3%)F##4`)ZR)%"!lK!%8BGE#L!aaN)a-#2Y2k#B8!-q#MJKlp"Z)-[$#J !`!!"31b*""$mqYX#%&5qr!mr"J3*`Mrqe!c!cIbB%+3#BF$3-JY45DX'9(HL!%d 3-3$M,m!#%p`d`[IQf`HX12!6,JKIF2')%p!N)6)h+#aL!#8%!C)$(dmp*33V!"L 3!!,E)1`Xl!X-&#%b!8LSF5S5HJ$!`Vhik$R!VUL`3`$DLq,Gppq"3d#iRJ%JcJk Y$Y9GYd!i!+")!#3S+ASdSjG1qZQQTilkkUUhc[VVVXF1qqbbQmlN2hl3+S84-KM !MK%#"!(!$fHi)dd34!6Ka$i3S#1"*Xp($rhddPG2rIA@CirppYThcrhhhSF2r[D hjel(lVhr([c`a4qIr2,0)r83"`!`C%"UF`J%J!km%55&%%iJ!K-)iJAM))FJD[$ 9F!*LKqB34"#&1K4"(#'3!1KXlL%#X'"!D2!3$3,J#Khm"d&!e""!H(!@a2'J,e, i$`J)4"JXK!)!"Q#*KJ!#!")J8d0655e"Bf0PE#eb-AFaFc3!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"*6NP8HQpPCL%!S$eK)U! pB58!!!B)!!!!!!!!!qF!!!!!**d!!!!!!!!!!0Qi!!!%#!LJJ*5!"!i'Y%@`SF1 (%#&+!$&Pb*3N,B+-'91'63Xj-Hl%Q%0$MJ##5C`NSD,R64Nc!91ZE2NbSNf)S(U %%I(3!)+E3)-+(8UdU0'M%'%)J!"S)!!#-Pc%J%%LkP33++T-5F%#4#S3-A,Jb!& #6"i340k`-8146KJjFXVBk8L'i)H"63-1L1%#"J@q-,"U68(4)NBSEqk8ND1+))i E&5q#d-L4cH)`G0l)!@&'-iJQBFD!J-+QcTbZFqA-5I2'$3LVJGq`K6(MaG3AB`P bS!NcB)!N3jb-F!M)L*3L4SJ62##6LX1"rk,r!q5EZN$V!E"V"`!KqbdFf3'`#5# )Ql(X!3B&@$3R3#"!"J!%Dm8-3"K!'+l$10!2rh8'pX%R(b!$Z0H8HY5G4peie)& (AAHLM#'3!#f8J"#!+T6!%B!Sp&JSbL6Aq5EGL#5@D1+*++DSiSSXYZLLLlj"Jm3 j!q"J!Ki-81(#!TlJ)S!VEJ4NL!XV##!#!iG3%%d8cTKK!C%#Q)$N2rK%dB`CE2$ !J`"CEZN''#"!k3Z55M*TKK93#M-P2eDDSB5@![ML`jE+r-!$!)$B#3!+6ZJ#J!p C22%#$dJ8J883)0`C8*i!T!++#&H3!""&+T+JS!3fdYc!La1jJ!(!#Bb!)B#Pf+J $J!#DFJV(Tic!)3!6hh!!M"0e1'&&3#mX)-3TJ`)Rh!mZ!+#!Sb"mF!B))!!"5JS Q)2%#"-!#J%#I!&!!`K+JU2!#!UQ-BX)A6RMK`LHdJQ'2VIe`-H-2(#cK6VT)Z1% 22ULi%Hmr"+$b"J`i*-$#1&JS!!3%)F##4`)ZR)%"!lK!%8BGE#L!aaN)a-#2Y2k #B8!-q#MJKlp"Z)-[$#J!`!!"31b*""$mqYX#%&5qr!mr"J3*`Mrqe!c!cIbB%+3 #BF$3-JY45DX'9(HL!%d3-3$M,m!#%p`d`[IQf`HX12!6,JKIF2')%p!N)6)h+#a L!#8%!C)$(dmp*33V!"L3!!,E)1`Xl!X-&#%b!8LSF5S5HJ$!`Vhik$R!VUL`3`$ DLq,Gppq"3d#iRJ%JcJkY$Y9GGd#i!)!%!+)Sk83FST-HcHLPThkkkDL[VRVVX,- ZZqT-rM0V(9)B)B-"k"JK3"!!2(#'1q8%88834!6Ka$i3Q#1"*U-r(chdF8KI2IA @CirppY0hIlhhfYGqHqklprjlm--AIhcbbcH2e%-F!-#3!!'Tc5%3!$V`4T!!&%) i3336"2'#FC!!3a!eq'Si!E&$F`JLL%)GLL#1%%Kd0[F3!8``)$4ib!8"F!80rS- J)'S))$Bi#q*Xd"FQr!F%"#+-&%)"!!1`4%-!!J!5)&0$8dNY3@0MC@`YFM&h-A- e!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!58j *9(T[C@BK!+!pB4#J2@%5!!!'L!!!!!!!!!2r!!!!!(r,!!!!!!!!!!$TX`!!"!J )S)#dJ!31"V4&X+($Ka!K5J!aCFL8*#f#M"P6KNd,16(Za*K63ii!JNQF*+'Ljdd C-`&6VQcj-U*0L+"kK)(`d!#LQd#$#Ke+Y+M4Sa"K#)!!D#!!!M*Fa)"")ZT8%#L U6%R"!N3U%$&bi-J"3N`H%%6HX$&$N8iB1A,+f1P)KZ#(J8d$$SMK!JB&[M#`DNe "d5*'+'rZP*'MLL#1'a8[JY$)NFhL-(6Hb!&K4M1)*Q('J)$#TXkFVR2Pc%RcaJd )Ui(IX)8aimA8&f-*FU!*-f#!*%1FM(!)b)L8)ND)%c`JNiV$JIqLr`2NQlT!k`' `D`F!)IXY(0N"X!NJL*Zal!%'"9Jd*d!J3!B!"'[&$%!B3"LZ`cM3$rpe"[E"*am J!lMAP(V8R8IGH05"4eehSS`KN!!YP)!3J#U8`"'!+24B+-SNerNQhBJNPQMLL5L QU1++,,ESSSZq3B2%132JB!)H$&$K`J+Hi#+!+fi%C)J,+`JJ!J1(8""0&-kBB3' 4!TL!j$ri40'-'@c``)-!@@lT"KJJ31N,NNSbDBB98!Sc*6p@QU'%PJ,iiX1@b[c !!`#!f!N!#NlS!S!2@6ca!Jp)&)&&%#$F'9#H!+3#LJKAN!!345U5S+!%0Y,F`)X 6ZB!"`!Q-J#'!TGLS!i!!QR)+akH-`#%!%pp`!)`6G6KK48![,#$%+B-#*p`2,J# JJ+-JI(!'##!!!8S+*L$a!J6!!S"!R`"3!-)5S+M`!J+TM',#&djiiF)RY)*KMkh pF$(M$a`Xi8kk5,MK$ckSZ"([2`5JmJB-1#6!`MKB+!!%"#(!JNF#,Tb"!31i3"& '(@`SJ-FC#-6!Ml6qJQ&!$2JSi)Hr3EL$,``S!-!!!8$XL333r2VE!K"8[[`22`B %#F)rrY3-`-hmQ"#N!Q(!d$),88QV"P4hSJ"0%$%!ibr!!K2F0-,hjYX(V$M`%bi )Ah$aL"23*#%b0bJXBJ!P"!'5!ap2258%+`!BN!!#fb$X,1`,$"3K-J&)U(%U%RS !`-+pq1Jj`+kSX%-!fS[LhIIIJ80!Z*i")-i1V3l9AEG!1!#!5!!L+1P%(++6(Xh STDGqZZQSVkjkkl#c,[[VXlYZHqbdjhjllEMEcZ4dY%TKK!`'U'1%!%%!B+`lj34 444"%"1(%2K#B)i%QSeqI2ICaD0mpppk($rlifjIr[IRLSdrqqHbRhrlklXFrrZq !"$pmmFFR[hcccdFrII9)H3J(!-!3!k4Q$J)"J!ji3a!T#-%*4'!#3EaJ(1334!f q'Nj!l0!FJJLL8)FLL#-%%Th0283!*3`)$4k53J"FJBAr)!L)'J+)&Xk#1#hd"3l r`C-!#'1(8!$!!#c4%!)!%L"63e0*,8&MBf9X,A)aGc&c0J!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!%P1594kEf9Q)3#J2@%!S$e K!J!!"iJ!!!!!!!!%)`!!!!$+6!!!!!!!!!!!"p`!!!3)#-#!Y)!&$JDd4E#K`iF 3)8S!-@A)P#3YJS`C8iC0#cNalX5BBd11!)**R#5KSZG0'6-"8kjXq6+L6BLJHS5 "H!$4cCp!J`SG5V5S8BJ`"%!!0"!!!4NZBX!J!98U#"49TU4J!5)9L"JjF13!)5B 2##*[f*LK5#H-($PPl(3N3r$$3+B""m4`!B2#AKKAXkDJD"%MP$GhbXK444$(MBS A3@MNb%Ca'$T[j)!`NaP%Nc"M3%"K8fF19lPbjU4ji`C%9F"[eX+Bm8,U#l%%1G# %'6"!NL&14MJ%C%4+%52$#4k3!%R&iF"rd2m"kMeGB28!el-$J)$p&JlX!0J%%-6 0'2B!J`)XQK-J%#!$!)+eBJBJ$#!-eQ%Fk(II1S2klm8(b!$Y-CAHG1C0*pjdhdh (R5KM#'3,*5!%S!SPF!3J#Md9LM+*GEe&*q+)**CSiSNSTUMLLLbff'*[d#"acJ! iQ)!(!e5iX)!RZ!MJLKX"'H,##J+)`-!K&%36K60Q@$#N!#BFq3mq864M"KXmm#! !PPUk!3B)6rTbC**,QQ(&Nm*)b8q9CLL4T3#qq+#P-Mr`!!!JG3+!JK1k!1"$&Nq m`!-54@!4"!Kf"S3R!+Q!)X)9*%54LL3S+)'00$I`iN3ZB!"`!L0J#&!T0ZS!)%# QQm,K+50`#-$%0a`!id3G6PJ4d!X,#('+S,m&pi-,!#M3+!JIR!%##%#!NS)*5,` !`Dm!)-!R!"5!X!3S+Vb!3#UMQ2#&%ekim-QXB0K6DcpFb2J$"dZiJbi5E[L$$bT Z`2X2!DLm!3-1#E!`$KB+!!&"#,$JNB!,Cf$!!#j3K&%('`VJF3B#-I!6EEpJ'"! $2JVid@m3lY`,!`S!-%!!%(SL!F5qrEB!a*3Zrm12!8##m)mr0!0J-cmQ!+P!'$# `c!*8dDVaP*dS3"0%$-$dqfr!!c0pX,hip[%U$[b!#m)AA$cL"$4*K-`0#SXB3!P "J16!Ke01#F&+35QX$B,1`El!3"%K%i#%'UBLS3F!,0L,6ji$k)S+1`5FVDMGHrI p0`5#jaQ!iHc-kY$FFj[k(3*&*ZP%(*k$(XhRSCFqZZLNRfjkkUbMl[VUVkXZHqZ `ecjll,6IER[Z[12Zqqkrkbjmlm!A,rb5r`!`Ua4'b'!!1dB)%!3!2jcK6MP"9"% %%8%iX3m%jNLJbHILNcpq(1@MIhlkl+r[[[R`Uaprqr1r,rrpp10[Irlmlqprr3$ 8A`$l0m$r#I#!"%5J!F@(21A9JAR1JjldU'Fpl'Q2Hpi$he%H`J%!--3!U*Q$3!# JJpd34!T#F!)4Q%!3,a6R1!443kq%%a!l-)FJJL#8S3ML#)&!*h-2%F!2!d+$K`` 4!&F`B[)#mU''!1+)XaM1%AdKaAp!3#$#U#)8!$!!5c3%!J!5)&0$8dNY3@0MC@` YFM0h-h-e!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!58j*9(T[C@BK!+!pB@qJ2@&a!!!(J!!!!!!!!!3Z!!!!!'qX!!!!!!!!!!# QK!!!"!J)`)#bJ!81"V4&X+($Ka!K5J!aCFL8*#f#M"P6KNd,162Zc*K63ii!JNQ F*+'LjddC-`&6VQcj-U*0L+"kK(Rcm!#JQd#$#Ke+Y+M4Sa"K#)!!D#!!!M*Fa)" ")ZT8%#LU6%R"!N3U%$&bi-J"3N`H%%6HX$&$N8iB1A,+f1P)KZ#(J8d$$SMK!JB &[M#`DNe"d5*'+'rZP*'MLL#1'a8[JY$)NFhL-(6Hb!&K4M1)*Q('J)$#TXkFVR2 Pc%RcaJd)Ui(IX)8aimA8&f-*FU!*-f#!*%1FM(!)b)L8)ND)%c`JNiV$JIqLrrX TN!"k!1[BIIq%F2d@MZX!f!33a-hBp3#$!LbD%b!3)!-!JV9L"L!-)!c9B4cSGlm kJrV[a3I)!1dePGj2j[dNhNrIE4H!+'-)C!XP)!5J#L9`2%K2KD*-8Te[dS8SiSJ NPQMLL5LQU1++,,,S'c4)R$-!$LEJ`3!9,LcJ#5i#Z1*'3)DiX))!)M"`#!A441' -'4B)+B!*4[k$6a60Q-%'$c`)F'@@ES!"JT1q')QNNQCBiD3`8I*$T4P+B#Q!,cj NUF`22!!!#*d!S1#%,J$iN!$&%br`J%34@!3"3Td"h3P!+U#)F!8*8D3L#3T+B#2 0$E`iN3XB!*c!#"J#8)U01J!)J+QQF(6+#"`#-2%0"m!i8BF69J6d`J*#R")SF-, pi!)!#M!+`JGRJ!!#%+#NB!)5,d$J+`!)l!N!"5!X!BS+,b#3!-SS*RcKK"FZI#) V'2E3fJmA-Il!`4,ZR)Z%'rlJJiSElrj$!#T[`)"$!Lb-Ji8#3%!3!Lai*1$#'4J `J!X8BG6"KJ*iR)&!$2a!bbmB"X5!M`*qm"Z%1rE#J!)!$"!!4*j)!+%[[bd!)@A ,rr"M`)mJr122c!$8c)m*2bS3"J`VXa!9Y'T!95F+d!34!c$mqJZ``%XEA1qpIEL +!crIJ[!&&imi!8d5)(1$`L)'8%)3)$R`mG463V"58!TUJj!!-l![-&!%b!3JS8D T51J"!![eiS2R!,QL`Ji"CLGDYpjmq`e"i(J'8$JlXMSNYpbP`K!!!3*SJ+36FB! 1qZHKPdkkk('FERSdU)r1HZQZYjlkkkLV(M[XXmYZHqkilqillD[V$[cYY3r2Hr( #*pqlmEmVMrcbcUqZT,fb5Q'%$!DSBi3!33"!V$[R"0&&%%3%iF3q%*JMJ5DbVpm qqlLl(crmU-YI2rfPfjmrrU$VhcrrFI"I!!%S`!)5m)$[5q$m&(Jr"Zl2JIq$i!! PD-$T%D"kem[HpVVh[I#0VhcR5ap5(X)"!$$%!+QCJd!!S!2H%%3+3R!#%CK!%#m B"cN%831[KK-31c5()))B9+%)iJL"4!Gc$a(!%30#JiFX%3"AF1)r#1+KKJ$LLE- JcK0pSF9r3%!J`ZJL&!!`!%Xd"!)!%L"63e0*,8&MBf9X,A)aGc"c03!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!%P1594kEf9Q)3# J2@%jS$eK1`!!"NJ!!!!!!!!$l!!!!!#8dJ!!!!!!!!!!2d!!!!3)#+#!T)!%$JD d4E#K`iF3)8S!-@A)P#3YJS`C8iC0#cNalX#B8d11!)**R#5KSZG0'6-"8kjXq6+ L6BLJHS6*mG!!NTY!J`SG5V5SdD-3B3L!!'JJ!!)bA-5!35,U9"!SUNa*`3*%+K! aFZ$)!8*-(K"%hV!a3j&1'$PbbYMT5)EJKi&0!`k)i3)'"Ei`X'T03G%L4LK[lT5 4SiSJMKX9,i,3b*(0iM"dhXJ"B8BcL#CKaS#!`UE1R+jcjFa*mmB0#+Z"hl#&-H2 &e"GM#A+J#60JJ#4$R)a`#-L)P#*'L"-m)*1+`i(rS[m$j*Zk31X"X'X(!#(l,4c C!E!*))LEXH`""J9B0#G!)%!'!!4Va3a!'%!BVX-id!rrG3Ef`5FI)!1iej4ke*e (hAM8J8GGGk+-)C!!,C5!%)!UP-!4J#Md@#M+*0Ij*Yf)**CSiSNSTUMLLLbfk++ ,[N'$a$N$i'!#(Ja3iF)#RZ!LJ#YZ"'5)#bX))!)$Ke!36461Q'%"N3+BJ13rq%6 4M"PXm-#$!&PZk3BB)%$T#j*+-QQ'&9!+-b8r9TUKK*B#q1,$PXVm`!-!J0J*!!T 1k!+!$eNmm3)25"5"44!Jh"P3RJ#N!SS)9j!!%%8UNU#J"$E5h-#,%lQ!!F!*M)! KJ+ABU!1!!*Tb#XHRM-!K!"2IF!#-%h8iB89!,b`Ja#Q$!LIF$bi!S)#M)(a`"JJ J!!&+#LBJm3)%`!+!3*m!8!$#%U#Sm!)#UBaL`KG1H1(#*l5#BBqYrA!ai`mF,1& 1ZNLii3mqU,J4lcm%S2)'$$JN`-)i@#J!"!3K`)*(!LkFJ3%$Z%!44KeX+)$('3M %`)qdrS*K3!ci+1#([d'iJbm-+!$!!!&!l)N%%2ckf`)39,lm$cm'"!R#2rl8$-$ 0r*J3T!*K`0!b#e&*U`C8Gk)!64!a!1-[`!)6h$6#pqEE"k`im"-Z#&p`mBJ6d#3 K-MFS,')!*33"NJ-I6cdP"#X!'*!!!YXJl#cX#``8)6)"5+Ka+K*k!-$#[IMS1F# ZU,"$!0U,iYhhhi&$3,LH!5$1$Ud1e9eh32J!J!J!j#MT4"bLNal0k+@RIVVTU+q ZHZZ`Xbllkl1lER[XY1GqHqfifmlNG,4+BB3-"UKMK!""!'#X1q8%88834!6Ka$i 3Q#1"*YGRMrhffRI2rIIHK`rqq1,rlN[``aGrI2,,5`1pp05MJp4$(!$!N!!"UFd K%!!km%D3!"4#F!)4Q%!3,aJ(1344Jkq'%a!l0)FJJLM8S3ML#)&%Ch-2%F!&!d+ $Kf`3!&I`i$m)!U+'!1+$Xb$1"hfK`Rp!3#$#D#%8!$!!5c3%NRm!!!: ---