[comp.sys.atari.st] Virus Killer

woodside@ttidca.TTI.COM (George Woodside) (03/27/88)

In article <4132@batcomputer.tn.cornell.edu> braner@tcgould.tn.cornell.edu (braner) writes:
>
>Another suggestion: could somebody make a dump of the boot sectors of
>a standard SS floppy, a DS one, standard HD setup, etc?  These dumps could
>be compared with what's on a disk that is suspected of having been hit
>by a virus.  One could even write a program that has these dumps embedded,
>compares with what's on the disk, reports about differences, and,
>upon request, replaces what's on the disk with the standard.
>
>Is this a good idea or am I completely ignorant as to how viruses work?
> ...[edited]...

It's not quite that simple, but that's not a bad idea.

The boot sector of an ST floppy disk contains disk configuration information
(sides on disk, tracks, sectors per track, FAT size, etc.) which can,
and frequently does, vary from disk to disk. It also contains a serial
number which must vary from disk to disk, or you get deep trouble when
changing disks (GEMDOS won't know the disk changed).

But, that all fits in a small portion of the boot sector, within the
first 30 bytes.

Many format program leave all sorts of junk in the buffer they use to
write the boot sector (including the desktop). While this will also
vary, it is not harmful.

When should a disk contain an executable boot? Only if

1) It is designed to be a self booting disk (some games, commercial
   software, alternate operating systems, etc.)

2) You have specifically placed a self-boot program on the disk (such 
   as a clock setter, RAMdisk loader, etc.)

Note that hard disk autoboot programs vary from supplier to supplier,
but generally do not expect any kind of boot code on a floppy. If your
hard disk boot does not care what disk is in the floppy drive, then
it doesn't need an executable boot on the floppy.

No other disk should contain self-booting code unless you are still
running with TOS in RAM (Is anyone really still doing this?).

The only other way I can think of a virus getting into an ST is in an
/AUTO folder program. If you have something in your /AUTO folder which
is spreading a virus, you are out of luck. 

If a disk is MS-DOS compatible, it must contain certain MS-DOS data
to be useable, and the statements above do not apply.

With that in mind, I whipped up this disk sterilizer, which I named
(with tounge only slightly in cheek) PENICILN (Yes, I know that's not spelled
correctly, but you only get eight bytes :^> ). It will kill any kind of
virus I can imagine, and anything else in the boot sector. It reads the 
boot sector, saves the disk serial number and configuration information,
wipes the rest of the boot sector clean, replaces the saved data, forces
a non-executable checksum, and re-writes the boot sector.

*** WARNING ***

This program is the equivalent of blind, deaf, and dumb flame thrower
approach to virus killing. It WILL kill anything in a boot sector. If you
use it on a disk which must contain a boot (games, etc. mentioned above)
you will destroy the disk. I therefore disclaim any responsibility for
the results of the use of this program. 

The program is specified as a .TTP, so you can run it from a shell or the
desktop. It expects the input on the command line. It accepts an option of
"-m" to write an MS-DOS boot sector, or an option of "-k" to become keyboard
driven. Otherwise, it expects either "a" or "b" to name which floppy to use.
If you enter the drive name only (a or b), it will clean the boot sector on
the named drive and exit. If you specify -m, it writes an MS-DOS boot sector
on the named drive. If you enter -k, it enters a loop. Each time you press
"a" or "b", it will clean the disk in that drive. Any other keypress will
exit.

Note that this program will not alter anything other than the boot sector,
so any files or programs on the disk are safe and unaltered, regardless of
how the disk is formatted.

Since I take this virus situation seriously, I am including the source
for the program so anyone can see exactly what it does before running it.
I also encourage everyone to distribute the program, with the accompanying
explanation, as widely and as quickly as possible. 

Nothing like a shot of "peniciln" to keep a virus from spreading :^)

table
 !"#$%&'()*+,-./0123456789:;<=>?
@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_
begin 644 peniciln.arc
M&@A014Y)0TE,3BY#    1A   'H0$$TK+=8T   ,+U1 8O*B@8* (" I45'Pz
MH H03=Z0J<.FC(Z$!>"4<9-F3!HV;ER,23B#H4&$"DTZ!&&DCILQ=-*\<7,1y
MT@ I9=J\L5,&1!@W>4# >3-G3AHQ%4'822.GSARA<MZ<D1.FS5,S4=N $//Fx
M#1T0<\K ?",GH0*5*!<V1 @EZM2J;<K(N7BD#-DS/:6X '&E*QFC9'I"6H'Vw
M8<JU#XF$H6,QX8$F8>2,00-"Q@T6(&+DP($C84#$"=6>%$C0X.B!H),X&<*Dv
M"I$B+),P*3(E(8_"J$TK&)'F)9LZ@4'PF$.'C$P7:'P8Y.T;>$\>1,7T)H-<u
MN8+E@<WT[@EB2I$A4Y)H@0U)08T8,A(N0&B&S1LX<(*&'5O6J![!#U0:[/T5t
MA-7V89P!0@\@P+!#0A@@Y(97()#Q1F\"-C%%"T0\41M7#,Y'!UD8J<0?"""Ls
M :" !!J84 8(K5%&'EQ%1@8([KT'PH@)Y=>002X9=88;9;P(PF21@7A4'69Lr
MX1UXXA71Q8'E(=0;''5\A>%7&G(H!I%FR)50 BKEF,:./8((9%D@O'%ED4>&q
M-]Z29B'T1I102MD5E6)M6-:9698%"0)=NJ$CCSZ."6(;9QKYG9I*#K@E0A)2p
M:.%6<X)5IY58:KFG2GL8!"(,>!0A!&:<SD #J'CD  .I-.2 J@RH$D&J#*<6o
MB >LI,XPPZM%U,JJK##$RBD,K&K*ZZZ_QD!JK\<2B\<-ON*!K*Q!- M##:0:n
MH2JOM_(J[;6_GBKLK\H^V^VQTI9+[KG:HCMNNNE^ZZRY[*XK[[OJTLNK$?6*m
M:^^X[L)@;+QX&!%$K=ER.D2S..0J*Q'-"C%$O3<\+&L,-AQ[F:Q"?.KN#3C4l
M.T/%L@Y!K:PS7,QI# IS6@/()[.,1PT%XR$$OK+*\*FL$9,JA*K]WCRO$1)Sk
M&D30L[J,0[,SN KP#:-B^ZK1 _-*K;M!1,TI#E;C,433G!:AK!'__NIR##1?j
MS2T>-)CLK+)#J V#VC:SL#'11OBLM=(GQWR#LC:H'2VI,32;LZR;50OWV!7/i
M?6S,,(Q-]."_,NXR#"DO2W00,<]0MN6D8BZW IOB43*ID,O<<<WP<FK$X8"'h
MS;FL.-B-\K%VY]QOS$/$3,/IJJMM!..N-UZKVJ5GG._(0AOKKN:D$UT$[Z5.g
MWC#T_B9+ZO.=9ZWOWH#S##KL=M>M\]DPV*VO$)4/@?>RZ__>N<LW(._L^CBXf
MNO'FM&)<.1'0W[#^SK2KE_N@!3^NX2$&T$/?YT)G@\KY[WK0LT'PD*:L(AA0e
M?8!S60TJ1S92X6!S,!B5NSZ(*@,"BU08G-C9%(@QXJW/4]>S6Q!<%P.B36N!d
M)(L9$;ZFMH\%$&=T2U^S@J"L&3SN<JX;G>*@E;GU%<]\TO);$HGG/.C1P%Q4c
MHV'_B"8#[;EL!K4CVA5)58-F84]6-*B<OFK0L8VQ#7_4^^(123<Y&P;OBU0Tb
M' XY)8/)A7%QI.)?# -Y-JSA"G#R*YTA)Y:X[ZG.B?237>62UKSK:2]UR\+Da
MT(XU,'<=C'0&E(&RA&#"RAF/5VYK5@I/9L;P%?%6[MJA'DDVMBU6*WW*XDP&z
M:_7'' 8R6(X,6 _'EC5%0H]BKRKFY3)WMM+E3F<B#.8)P;=+DC63:$*XXR^Oy
M-[FL^9!D?QRAW8:0-1RXK B%S!HR964$2'K0FR[K8B5#9K]@Q@!WC%L?#+*6x
M1E+98',-?-7Z8$:Z9NK-@#:86C!ML+[\<<H&"#6H/^WF4#S\DW3*JBA$_2E1w
M=]F HLU**$9'*JN+XBQ<^LQ:#?B6R) ^S*.NLT',1(HZ?\:T<ANM*<X.2M*'v
MGNVC>[2H_#1ZTX*^*J1VHRFG;G"VBMY ;3:(H$(96#FGLM2F_C0@4X^5TGQUu
M%8W19*!$2PK25?D3H)MCVE']Z3()<M2?+PUF_'HJ5*YRLEZI,BL:UT<#9>45t
MC?CS5C K2@/=;8X&?#U;7UM50E1MCJ ZY6.S"AM4&AQ6GYC4EV8SR]E\"39Ts
MF_6L: $66M)VME^=E54-Y%<U@_2!229 R$9>U*@*72A25;I3I?1$ /TX)#<Kr
M&0(:Q+(&$-!AN#]Z0QO:\),7L6$[,^+0<7M"!CFD@2?&?4.#TF 4-V0))@C"q
M36D4P-S>H" R9Q@#"]!KAQ3LQPU?@00!T#L&)G$ (>BM0US@FUR7Q'<"*A$4p
M"%3 WBVP"1(:P*\<SJ#?C7QE*/R1RU,@ 0%,"4L.93@#=QE#I@_)%[U,B@!"o
MQE '.6"8O_G=;WPCH!(085C#Q-$2"#Q,@#0P:0(($4,>&--?^%JJ BT&P8LWn
M+&,!JT ,<*"#')@$@1SO5B@/\K&> -P0%V>8R&0R<G6O6P8F/0 A6\;NAGY4m
MD9^ H YP2$B%;_2]-)CAO L>"0\JDX*$)/@A;@;!@GRRX ;#=\(2:+%\,P4Zl
M2!@ #M:%[YM%4(4Y!*@Q&N&(1T "@BVT8 UMZ$*#K(O=/82Y#'W@@AM$D((#k
M(<0H;8!#4ISRZ(080-"'3C0=%IV0"%PZ(0-8PHI:)(<7Z20PHB:UJ1_RGIC,j
M)$1F@36B^4-K2-A:*S:I[:.F)"GZ!+O4('!3DF7B!O]TJ,J&+@,>TD '%,  i
MVPB6[;B_<@=RH^%-7Y%+5/1D(TW)MP\)&8%LW?"B/:?8P1-F,9M!A&0E*\I,h
M1&+2G:'\H3$O2 [,94.9X!2EK3Q9OD$V UE0D 9%F:CC<TY3D@Z4AA6LH,Y-g
M>H@9*")Q/&G)/H(1N+U[6W YF-SC[V)2!49<YK),=^)TB)/%S9"G9 \\NG* f
M,XDR<R#T"H?/Z6WZ@DV.\@.PAT-E",-DA%R&.-2A#,2IM: )0&A7?UI1!4;Oe
M@9O\$+Q\Y><0EG)" @UN [@9!2HX>P\(=((6G #E(L:S&7P"HZP;QPT"(D,8d
MYD 9"@L: 9\V.9,2]) YK"$-:2:WG7WKZCFTFPZ3P?NG44Z!$0]W#,7]^9,Jc
M#@FZVQL!92_/&!;?DQ.$X00UV?E#SAZ&S8-; ;,/"PA.$ 3<VYL!8RBS&[XPb
M)7.CVP$\SWJWT;QI+A/>V8)F@!@P'(8U[$ W9@E^[<6 ^X3HOOK8%8/O[0U\a
MV@]?",8O-/*5S_PYH2 &SX^^F:E_=O5C']S:QWW>!WZRYWXGL ;E!PGGIR(Lz
M\@8N B-=D6:_AA^"UG["=P)+$'\)P0 BP@8!HB@QP"02<&IE\!4,R&O.%8'^y
M(1&"L0#9MWU9-X#746@66'MMD(#G%Q9?(6VU02.M5X'B-WQ-H(&0P #_X8%+x
M%X*U1H([."&V!2D9,BEZXH( "(/=]WTS:!;9$08400<Z<'S+IF@H( *1UA$?w
M01,SY@9V$ ;/]2(8YG5@]Q4E, ;!Q@)YQVEE@&T(@6%#(0?Q9F(<\H("B(4)v
M@0#X!@D?L&\OXGGDMG60< %C=XCZ]A"SA73KEX4S]F8=&" HUP%.,G@.)A<0u
M$B*[YH"]MH+!<2G@1G;V%FO,-H9M 79/87LG4"9E<0+DEUUD)GW;97EI:%QHt
ML!CH5P8L<&W#!A7*E60@HFRRMF@<\A-!X17#518,J(OB1FXN8(S9]A#-!0+Bs
MIFIAT!O>N&X;&(GYIHBDV( /B&C)&%\.P'D@< =H\!%E@ *;> 8HMW"+!X&(r
MYQ-/(8XG:(J^QH*N-G:Q9P","'J4@0(<!U\I, 14<0<>X08HD (HMQX/P7TOq
MTGO5^(B/%WLU.'RWEWM@AH?7IP% :(#%]X7REWS25W]>X7Q, GT/X9+[EV:\p
M)W95.(@$&)*XB(,E:7W^AY*_%X0G '\LN8$VN7S-AW\SJ7_3AY,FZ7\R)W]6o
M*(/LMX5=F)1%>(\>)X+JIGD!^8 Q(H$$61Z"&(-8^'J'F(B4R&_IB()@\7F.n
M^(ZK*(GH.):G.(%J!H\81@<E1I'G9E]AR6[N!F_>"(CTIA*'> +H6%[=!@D9m
MX%L! 5P(,03*=V9I]G/4EEL-LAB]!PEVB!C M90P66YDL"#NI0 TEIIOP"2>l
MN'LFZ0;Z)08_9F'?,V0Q1B;NT8\VP8=LD =>AA!)\ )/P'6J%A20@ %!IIL<k
M)B3\)5]C, ?ZQ62F1US4J15K^!N"0647=F6[*2;!2"8J8 9)MF1J-F+O$118j
MH5P@,(W=V9S@^9P_,I[+&'1*9ITUN9ZZ")_F)Y\P1I]&5@;GJ9]@L2%I-@;\i
MZ9^0X)V86!=T@&1B@ *NB6X+9Y-E$1?&T7M @G@46&7(&9R*(@5W$ 9B, ?Fh
MQ@)#8@8L8"RG4J%,@@ (H61!\7,:^9]'=W? F0>=^(F$=Z/RQB$_N(H'&8:Sg
M-H9E.&EH"*2*"0(EP 9D4(<[JH>[QUW@&!1!6A8*FHH% &M_&9A,L@$( 271f
MV0'F" F3Z(UP*09AX(:&AZ/@EXDH<(2<F!#W)7CQ:%TQT8\\"(7Q184S=Y#Fe
M:7 $LJ(@L *9$0-,8*#$$1E?(8PZQAA/H1'U(86%"&OX618$0BA$<JB)NJCId
M^1!CUJ?LN"%TD <:D1!V.7-X^9:TY833%BE#*BQEP ;"!PDBH"!D$7%^6FUVc
M4B,&V8J#JJDS=B:>B@.@ZFRG1@>.ZA-T8EULJ&>U:2F 6F@&D*D'9ZR(BJPAb
M-J/:E1-)%A0NIR>N5V@$T*IJ^B)+V:N>683P2*"$6JR=BJ@S  /)6GJ5AZ#Oa
M*1>"P9Q')X_TB +#"@(A0"#P*@<HAV,/07UC]G,>&':1VA-WT!,\$B:&-G8Jz
MD*DW1R#E>9Z2-W?J&1_ V!,*ZEU?4F*+P6V?R:P%F:-O1J?X:*<^>@=Z.HI]y
M2FV04*T)00 [.J(E>J+WQP*<RJ(NR@(PZFH(0;/DUA.:)YE!5JNWFJO<N(MFx
MUIF6"@FK:JX'.9WZI2B3L0;9B0((9P;YUW8E.'1%-QG8V;58"VM<JQ4$\K8@w
MX 6R8@;RQ20-@!!NEQDG\!0*FFH5H6+ 6G=CNP7G 0.:1B H,"8IL+C9"0(^v
MX ,@@ /H1@!,^)Y?0AD1FQ 4 &N%>QXQD+@@L+CCV;AR:P)U2[8'LHV2\A7Nu
M<0=;L6." 61UU[,$0J(FBJ+&,K8MR@(OJII,8KD/H;0\UK23>9?GZ*IZ-A,Mt
M<+.X=;4' (\Z2J#!V:-XVGM,.F]S%ZS6:J2+EJ1G>!'$VQ-9ZJ10"B(BP )3s
M>HS&,0=7FIC:NZ6"T5MU-[W).2 $T@+WQ 2 AQ#,):X2JZ<]4:IU8K$ZNR?>r
M.X8H< 4"# )MX14%3 8I(&P[BQ!Y0*"8H7DE.F$6P(RO* +:J(!.XB<E)K$#q
M+&O;B[QHBHYL^B+CR[F,F1".J;SKBK,.>AKC=9G)&"4D>WI@V[5O,'B]-ZX)p
MT0+BU1!?&[8UMYK.*6,?,F U=V-.1G1:TJ;5)8L)X:!EQW4!ZL3\!19L.P Eo
M@K?X-08DU@84L1AAHK:H][B0T   BF70V1\*ZE^*@@+GD1XO !9I<!]!W)!Tn
M8)$@T ),Q[K\\8_=1L054129L8S_.H\5L;AO E\MT (H1WF6N')LT'(75ZX[m
M^[@KP+$U][$BS(UD\"(,BUR*Q[*SBHE?*@<4F9T6JK="J77%Q<8_#&WUI@"-l
MB8ZX_+A$W+8- 1H(4$5.24-)3$XN34%. +8#  !Z$.U*"L3Q!0  # T40"GBk
M),F0)$R<@(#D8 H5$%#DO#DC)TR;-F7DG)@#HDD8-W7"L%GX8&#!@PD#!G02j
MI$F1@ L+F#2(4&$+$%+*M'ECIPP(.&_FS$DCAHU/.VGDU.$(1R)%BQS-2&P#i
MP@R;-W#@Y %!)LV<-7-4*IB2Q<D3*%.23($)J0"<,F[2C$G#Q@V(+2W6M.G"h
M54Z:GG==0!I QF_/+F*)%)DR1$H2*%22/''"UBU<N73MWDGSEN.;.G1 B!Q9g
MQXV;,F/*" TC9RN9,'3"@$ACEPX:GV+>O D]!S6=-W) O#$CNK)5K%JY>EWCf
M D22T+3GU)&C&H1MV-9O4P?AY@V(,GA0@PY3%+?NT$TG5FQ3^4WMV\J_L@!Qe
M!PU=GTU59T3JYDQVG[WY)1)W=;0A1D;S=?5596.X9T8:9TP'6QKN<05;&/-]d
M1(9H;(STH%%S-.<$<&V,EL=\;\4U5UT@C&'41YZYP48>E=GF4V%_^>2&165Lc
M6*&-+;YQD88@L$%;&?/9:!=X:= 1HE@QY;70 /7!E9U7PL%!!X5V83G'6W,]b
MV&.2\*7W%%6;=5BD;G#,=T<83=+F'UL*F &<:""L448>N;&V88-#ND%&<TOLa
MR=$)89P@FJ @G""&HFF.-$882_G4I'7>N5C&1R#0":2":\SV'G8X]N2F?48Mz
MNM5NVN6Y)WUT24II;__]Y-1ZGGK')!TN0-E6"U0-9AN66&U9X:25<@2DF>MAy
M2I]?=/C$:1-3M$#$$U,$V08<$Y8'0FZ[T=G;&+_),5]%-@9WG5UZ9/2&G,*!x
M5NMKL?6J0$!"5''$6@K$E")F+&+)*7ESO,$&: !&ZY>1>DQ8(;,6-9<$<9\Nw
M!P)U<=21E&J5<0J>>+%Y"RX=\TDW!AJB<=0;&V:T,#*\9_#H67" 8B3'7 ,6v
M; 8=;U+'0F671OKMC:K1(5$>/2ZZX;*W6@2KF@<"ZE.E((;XTV4KNE'9'&A\u
MQL:&W85VX,6E"6>7;*""4%K5\UJ,9:4;VAG<'.6&<89/[LUH;T!!5$$%$D](t
M4=D190!W-T[-7:$;&4.1X1,D#0PA)!R5R@$8"#?84,,,-[ 0PPPTR-!IOVW5s
M($,,.8 P!:=&E&$DSMV!0(0<S4&2P!%%Q/7X 4>X<,433Q"1EF*5*?X&&6P0r
MB42L<\PW1!C-Y?"Y#32,7ED54Q!4!!4Z@."""R'L8?0=<HC!!QRH$LS'&-*Yq
M<?Y0=H2!1Q\AT+$E&9.&<,?BC9<A5D2TB=:&8#"#%\C@!B_  0X6 H,8! 0:p
M"%!%3DE#24Q.+E144 #*&0  >A @35(IVB(   Q@-   8 '20  %A PD0 4 o
M) <JW@ @ *(-  S1V@'@0,(B"R& 1"!1(N$,%!&*3"@AD46)!C/\4)(\PX/!n
M!@!!S+"S"4"*&7,\CY@!Q].*&6T\>YA1H&3"&0,CE@W<0$A()A )4*IDZ1*Fm
M3 EFY)D 8$:&5:PB^$TU540C( H:D @2(@,$ #D@X)ZQ0"O &7Q3E(A0IE=!l
M7S/XA*CX]P^,.:LB$DS+-Q75B&"57219D63BBP8CD V\ .<%@A< ) $B%VA*k
MD!\!)C5[D>"SD#,_> !0XB2(-[4,E PRXR+W1.,"G.0:^("<#T#*!T*0\8,/j
M  '7A5R)#J#Y<^[3L3SAY(Q[ !&_ 2CX 8#[ QW&F?1V8N4?/"378 !CX.8Zi
M  1LT/"";@!D@ =W ^ BWH #9= )@@H^P6"!PD HWFWNZ4#%$RI8!X ')EC'h
M@!'8L6& $!U(8008]/@1@"_] 2@'# <@ 4PYB(  1#3NJ(<"% Q0 $ +9@@@g
M!2,04( $("!X6!  ,NB& !@"8($$+%A<D<P_^H  A1/0@*$#ALM=9\:&8+@ f
M1P#L@0'/FC, ,YH=8'@ IYP 7$ '&!0DN21[$V; #H1</"'%$6 @HD0><Y[!e
MP80:*&"AA 1JD,.DBS;* QP'L-?;ADT.9($Q44Y$I958:LFEEV""80V9 PEPd
MYA-@*+-FF_ (P6B>=/(B!!!,Y >,$UXX40=]_["#'P[ _.#"?YQZVH1XSOYWc
MVZT 3,B!"=<2(&UZ#CRKQ"%G4/#" 9!2 2$4M ZD3:9YTG$&1!YR$ ,*'EXPb
M"!@,=#@0!R[@.Y '+H3X+Q&[+',& 1AT P8^\.IYA@35(G MF]D2> $>8!@Qa
M(8@(&B2>;C 8H  0C)%L #A ++GD!'B"0$+) @ !P#\N P+S0""44/'%@!((z
M(K9P>-M>$^"*2ZZ Z%;JQKI/,'#(/Y ,,(\9#D"JR*20<C)IL,P2:RRR]. 'y
M C JQ.@' #SH]D_)4QBA!! +>],%BS0&>[;8QUHQ$!(Q0HH+=P28P"[?]/W=x
M'P,O/(L X88_@7A]Y@#^CSFY 9*MX]PA@$EZ"@ .  .6FP,YNZ7?!H(;_^#Cw
MA$&%3OX/)?C! $@+B__#S^JZ_XB%*[I#P,&2/HQN<PEG:*#$$6< ,( 9C?_Wv
MPP&K_P<"&@!(\#H A8*A#1P@](#RF_^(GRP<Y:/LCO#$CW[$D%BO:;X\[ -2u
M/!@$",&Z/ R\#X,9#( ##,P'C_H5KW\ 4($93, [?E !>/SH 122Q08(R ]Et
M\H"!"Y)%!""8CQT&!  85*"_9"$0!FT  0)SX 8-:#!9P5"+ J!Q! +8;( Hs
M ^'P["="I+S/!6900@@1J$ *-/"!NI/@/]:WP_N1D'7N.&$*5]C"%[HCANJAr
MH0T!@,,EAM!["&3# H?X/C),#(%O. ,#$%B'IR 0#V9  (UJ]H]O% \$#B" q
MYJH&AA:@C!XJ ,(%_X$.&H6*(.PHE0-.=:4L;:E+7PH3  *@A"-"4(G@4 +Kp
MP,$&![P0'!TT'SC@T (-  ,.ZP& L_X!CL]PYP"\8%<@P3!)":"2/9;4W0\@o
M (913LD=<."E.AK8@@F"XW>Z4P+P..D $&P0E+=#V2A+><I4-HZ5KBP3 E  n
M.C"PXI8 :. +()#-@6P3=(%$)C]H"0!2P&%*W@BF]QH( @B(  43\2,K6Q"$m
M?Y #"A#\S"K=<4UR7!,<TW,/%=+#RYM)H83H(.8$\1''%CB)'*U3IS-;IT] l
M D$)'9B8)I?8!GN H $& 1X^8 '%-ZAC"HT  PH@FDM^P  "I@2#!<1)3LZ5k
MJ7#LHN4_L+!1>J#FA<H"1C0N 8(/&*01YE,'&_+'.G6,5!YF8,)(T7$&&/"'j
MB_8Q PIX1P\&0 !^'H@> L@J!>#1 P(0^%,X8W2][&VO4"]\:57G=@8%J'65i
M\ "#-\@:BV:0 01J9:M;X2K7ZJT5>]J#':VP<=7F\0,6>9W"7ND& 'Z(XJ\;h
MA(=CZQI9[M&*&\&RG>S4839@^.!9_7*"$$HP1\W=[!^ Z)$#=',&$=1V((S)g
M+0 <@(26 >%7Q=51--22)R-L  (^,  8G#$]U7UAN:-Q+@244 $U.K:M_X% f
M)]SDS/_H;5C%ZML_Q%$[0*3M/Z\%  22X [&"($$<. BNC8W.NY,P SLTJ<[e
MSH!?_:(F>@SP+RO8I5SF7L (&8  [I8X.C 0HWH,P&YS(ZP$"BQ, ]QXV$E3d
M"YWT(HL?GWEO,QVG D"LP&8(6(&'$L""X0JA!031X.@ZN .;K;$-@ C Z"JXc
M S[\X1^CD_% $B"![($AQAY"@#JR=U(5?$%V*&[ >Q4P!8LP@ T6\S+ZP*  b
M$%1!"I70,0(@X-XKF[@^6=ZRF=&L9C9;&<LICI$4O/R&,(]NS&L]<R5^!=<[a
MOUEW>?Z/$EKQ'S/<%,<66%+-S$0Q'F"'.Q7 PX9>W&@)*'ETDACNIQO "B>[z
M0<($D;3-9"4#5%] KN!1Q(;XZH%=,%<#N#"#!3Z] %B(VD,.< *5<3PE$_#:y
MUPX8M0ZRYVI8ETD!!MB0C:#!: 2TF-/Y\[*AQP;G<V%+"*>H&'A4P2[8 H)Jx
M!#!#_H  !D\>0 "V#2X_L%-<%WP SUH.7 .XDP I+*@!%1GN]L2S;?7BPVSVw
M8W%__+KO,O7[W],+>&D+I;<2<QO16O;0!GB0A4: H FQN#4[RK#=2IP!'B^Hv
M '<4  SQ@($<!4?6P:\! O?&"-61!L2D Z#N,0.AG !8  G$4[QF \)397H u
M)F9=[3-@ .>J-A/CB(UID3WAQCD^0,5E-_.:O]?/9H5TU"%@!C. H (&830!t
MBO<&#4SO!3@F@-&1/I (_/,)L! *"9;7!@X$' %!0 =V8E$- (* V->V&0'Ps
MMX(J3.178  !#'(P&C?8B %['  (XJBKRH/! $.2+T'0M_5#=]WF_]GSZ"22r
M&J +73QS,\- ;,& ,@5[(!I0!M8$QYW7/^'P_S& ;;&3]N-D*^YS;T^9(" -q
M=O'8QPRP&<^],/G*7S[SF[?8KB[@AL^'_JP6$(*7.P8#'#- ]0P(. $, HP5p
M(&$B<QXT$.!:=+'KW&8@F!<"&]"\?S !@1K05S32;DK@968@)\0V>OY'<Q:Go
M7OJ0: A0>P-Q>P"0>[M7*8-3)KXG?G^&,9;C#\D''LT7-2CS#V=  WP%),^Bn
M ?_@#P $=?<73F90$\_2 "WX@O8W:9MG"X2V0?X@4]67)Y:W']C'>=O7?0[Pm
M?03A?0EH >@3<_5Q>O%E;0N'0 I@!B0 @SKH=)\!!PU =P#0 #I0*-''&#W7l
M&##094,F D#G ,P >T!@!A%%;,(7*PX! &HW!4#08Z,3?S3"9J5W<?: <%.Xk
M91UP!"UHA6:GA?A7+EWXA<HW$*1&AB5X!E[ @6&7:C%(=D[0AF_X!+$G2![(j
M.B"(8Z]V=)$( ';'+M$W2>HV@))'>4)X?0ZA>4;H>:"'8^!'>@S(=82H<.JAi
MB%F8@XV( 8\(AL%&B69( &/& YCX=X$W>(67-0TW$+X7>X,E:'\("*UXA=38h
M>T,'BG$H#'G3BX<69S='C!/15Y\1<,%F=>I'>&+ .-48=.$(!C2 +6=7? 1@g
M(Z@1@LM';E%S;I"0;LS8& K0>(_G9;\"A0.Q<I(@;DE'"!LR.0,Q(1N':>8@f
M'MB2(17Y9@^9=.H"DJKD.'# !)X2!.)AD:/3'P7P'VY ,3XU$!(  1O2BD-Pe
M!B@ !S_ 'A))DVA +2;I RFY(*DX 03@<@+P*WC6*299!$7Y!,53033BCT>9d
ME+0B C_);!LB/O_1!@Y0,0E5)A(0E$] (_;6E&+Y+ H@!T8 &[U1*,43>RBPc
ME379E3#6!A:PENK!'64I'CJF .U6E<" &OZ%E6E)DG9IDR0( $/0<P% )4RIb
MF,\2EHX3/0H !T*0DJ!CF&6"E"MY:/=!<P@UDUS9F(\Y$,Q@'1 @BQLP#>W3a
MFE,A#2X##'4( !L@#8&D6<-E$0#@"%-P!&Q !G 0!3N#F](@!*XY#1@I#> 4z
MEU() &!&F.Q$"> $!P+ 'G P -)2*-AYG+DIF[@)FSPDGKE9F[>9FX$$ T<0y
M#<V 2FP& 1VP),O& $50@>JV-GQ2/0H 7@H  86@(O:I'K+W#VYP4GHTF^ Ix
M#1-P#%,Q#24#!B2 F3I&7(59DM#2D^WA&\#AF0,!FD^@-^# DA1:F599,7  w
M!)S9H5<9FA<GA8Y#(U8 !*TH &+  >6 !#"P(PYF!:P2)BH !U  !B8 !T$ v
M!B( !T-0)WP'$;M"%<'9!@@ 4H@!:-SU%Q!0 4L2B ;WBXIV!&"I D]*"%$Zu
MI1U0I0AYI?@0F!H "%PJ<UXJ1P<PHS4J!DB0HSNJ81<@!C\JIE-!"%FZ)'FGt
M1MS5<PYC E(04^QP4@91)E0!ALV!)@[@!TOJ#'YPI,K@!T-J#'"P#6_J-[OAs
M"O]10>6% $0 "'%2>6-&$9R37B(@$5-" $/P#O_!AA.A!@) !(%  A& JT0@r
M"$&@#P @70/!!TJ &@2@!L$1"&=@)("@!!&P!K$*K;X*'77PJO^!/[-:J\C*q
MJ\$ZK.S$&]<*J]I*JPC J[XJ"+9* -]*K #  B#@%TR!K&I  )3 ),DQKMDJp
MJ^;*J^OZK8M'$0%@+.BC!()@!@:07V B#H@@"X(P!@8P#HI !O8@#I(@"8) o
M!@(@#8(P#@9!!O1@!- !#<@RFC@ ""[@.%!P"%)S6^ @!@-A""W['P! !@;@n
M @2" -ER -QA 2A <$#P<2&';F< !DK@J,Y@!A)@ DT  @LP GBR ;  M5/!m
M"D0* D_J#(6U%%'0""MK A:Q>!*  ED;!8P  DQ@ MA# "G0!/!W %&@.=+7l
M8B!P -#0"%2+F\Z  D!@MF@K! :1 DLP$6#3@"5;.\"P-J7*!8 P!??7@C7&k
M"Z** #8+$NQD#)G #'Z*FZQP4F> %Q7P+/!6BWZ!!"HT+W5+1_X0#920%\^Bj
M DR  DW@"X8P!C+@"890MYA7BP1 !F56 :K;8GRB KEK '>;MQO0N4_:N8=Pi
M4E@ "&! !ID[+M[U;BCC#W<[2P2@ F&["Y3!N6;@"*<+%<Q0M5+PI+00A!M h
M"S5:!ER&OD*%!2]@ /Y%#@MBFA2 "$ [!>@[8L+"DOFE9AX* /GKHEW*@*6:g
M!>[U495@!C2P-NRI81M@"T)T!I)W (>2I\PUP8R%BMBIG=QY--U##>Y!" !0f
M":3[J1CW=5>J 8(3J*B(M;BG#'=E*#$E#H(#3C)<@30L65#8.O@! ,"0LHIVe
M"& & CR ;F   ^,21R"0 U0S (M' E+0O-;;@L_B;4B0DH528V= #2!@O(< d
MM5%,$080+$+,DFIFE3W[LY*37C@Q$ %@"P"@$),D#  PN),D&FX[2=(  &$@c
MQW0,LW<, &L@QZ+AFP'PQT$@Q]P0Q]E1Q[$B;($<R82<') L %2P!TY0!4S b
M!'U0BT0P$ 4@K$\P$ 8 !0#@>,,* P" !:C<$&. RLI0LZ2L"@!0!J@,R[(Wa
MK+#</+X, *Q7 /)P%ZC\R'. RHP  '5 RN(  'A RO8  *,\$5   S$@ S- z
M S5@ S>  SD0!$(P!$10!$9 DS9 D\N6/<63/=.</<6</3T""0JP#C1@$$D@y
M!$T+ C/@ C)P'0(@9 *07Z!0 /DP  "0 /X!"13P  Y! $*F#W'B"-# "P# x
M!Q9P +L0S390##?@ 59@ 5/P"S*6"PO06:Q@ H#0 P! !P-@ HI0 *J@",0@w
M#O%@ !^0"$<@ ,=P #*V#\TP 7)P!J   7R "?=@ A; !P-@ !S U ;@ 'PPv
M"M4Q"C? ![A@%TD= 7RP"!ZP $P]#$AP#_,0  9PU;N $*%0'>A@"0" "P$@u
M .B RW*0 8NP#R8- +[0#'TP#Z90!PW0"'\  KZ #7V0UWY-!Q@ (WV #H$Lt
M ^30#!;@!1_P" 3P"$0@ ,V0 ;YP"WVP#NL0"AQ0 #,@#?=@ V#M#\ @"CS s
M!Z%PU:/0 WR0U@?PVGR #C83"AC !RI@ $4&!%" #L*&!7+P#"A@ *UM!PQ@r
MUE>=U& ] -BP#MF@""Y0 7R@"!;0#WW@U;(]90"07ZS <G0@ K3@ +MP  #0q
M#!"P#O)0VJ>]V_X@#(A@ 47FWC:@ 7PPWQTR"CG !\- "P*P"!;0W[%@ -)@p
M#@I@ T6V",I@".F W=JM"#;0(4$]# T@*6_@!BW OW- !V600F20!G.P!B#Po
M!G@1XB,. F4@!W)@XA<N!64 !VP0!F-0!B 0!FYP6!TN!VFP!C:.XWD  CX>n
MY'> !F5PH')0!F% !GEPX6&H $0@XB0N!&_P!G2P>6&0!FQ0!TGNY/G<!$*0m
M!+\' D/P!$WPY43P!%,  F1NY@ZQ 56@"E4P!V%P!F6@ R  !T>>!F.@Y0>Zl
M!2VP!FW0!2! !CQN!S:^!X:>!HC>!PH03I 0 8$. E6S!&60!V+P!F$@!X?5k
M!F] !NX+Z9*>0E73!%/0 FF^YIENY2 P!V4P!G1@XH^NYV[ YWZ.YVG@!G80j
M!FR0!H>5Y'%0!V70X3TS!H\.!4D^!W,  B<0!B=0XGAQ F+P[+$. F/ !DI^i
MH"A.XKD. G2 !F%PY8N.Z"SPZ"9^XVX0Y%9NY'@QY-[^!BJ.!VE !RXPZWO>h
MYVS@!GB>Y$NNXBQ^[B4PG/9>Z_BN[R!P!SSNX?[>XG@1\(=E%RAP!0EOX\ANg
MY:_NX620 NKA$!%P,@.A &00 @XQ 1ZO'B$O9) @ 24/\B- ? 2@ 9Z >[B f
M>W\,"420!6]0!Q51!\0^!F_0!G"@Y39^!_..!MYNY(=G=F\ !W20!AG^[B"0e
MZ]=>!Z">YSSN!G0@5BFP>6R@Z4WO!A8,!V^0ZW3PT!N "$,P!$$ !3\ "1C@d
M$ :@LY"P $+0[V)/]BL>]0=J!DE>!B[@Y)"0 $P@ C(0U3"   Z   K  !P0c
M]XZO  A@ QR@\@Y@  R  (Z_9AP  3"@ 9:/^9@?U1* ^1H 5XT/ 8X/! : b
M 9,? (1@!%"  4+  4P0  X@ 42  0I  2Y  @J "8GO 9>/^&OF A,N @H0a
M+A+@ 4IP4RZ01YA/ GWB!@2 ^1P@!!!@!!K !2 P^1  !"3  4&+ O]I^1#@z
M A9@ 2S@ !0  Q9  19  QB@\@I@ 09@ "Q@,@E^_R8  R;  3+@ PK  7*$y
M#Q3  '%O1!]E "3  /?/ %6C !R!4R+   Z@ "P0_@Q@ )#0 )7_$!2P?@40x
M %6#! 1@ 01@ =5/ .LW$ <0 ! 0 (_NRE5C$!;@$ K@#;5(!@0P$%1  ' Ow
M#"\)"0C ]V50!E_@$ MP5E5C$!7 !FW ZUT_!E_@$&M6BXA  6V0Y6[P!0ZQv
M &=5-2(0 &D@!G5@!E_@$ M0 ;7X_RLN!V[P!E_@$+M?BVYP 5]@!G9.!V+Pu
M!0Z1 &=5-;"P %]@!G9.!V/P!0Z1 &=5-9+  %]@!D%?ZW3P!0ZQ9K7HNU] t
M!AYN!F?P!0Z1 &=5-53P %^PXTM_Y%_@$ =P5E6#"0C0!F)0!V;P!0ZQ $)2s
M-7AP 0@_[V7P!0[QG[5(#A'P!F)0!V;P!0ZQ !50BR;@ 5_0X6LP!VF@!V7Pr
M!0YQ $)2-:BP 5]@YUF/!G20!WK^!0Y1 &=5-1 @ 7,@!G*P!E_@$ MP5E6#q
M!Q;P!1T.ZBS^!0Z! $)2-=*@ 5\0!E\P!V. XW#P!0YQ $)2-:RP 5\P!FU p
M!FX0!FU0!E_@$ <@)%5C"AOP!68 !U_@$$%2B^R@ 5_ ZVD0!G-@!FCP!0YQo
M &=5-9P@ 6W ZUT_!E_@$ EP5E6#!Q5@!G!P]5G_!0ZQ9K4H#0/0!G-@!C-^n
M!E_@$ D@)%5#!Q=0!O).!U_@$ MP5E6C P_P!:Z>]6A !WF@YU_@$ 5P5E6#m
M!A) !G4 !S+P!0ZQ &=5-:W&!L/)Z ZQ &=5-2;P7]?^!J[^!0Z1 &=5-<"@l
M &S !DEN$7-_5E6C!Q/P!68 !W5 !V+P!0Z1 &=5-3K0 %]@!G!0!W0P!E_@k
M$ EP5E7#"@WP!1T>XF[P!0Z1 $)2-9Z@ 4=N!VG0XF[P!0Z! $)2-7!P 6S j
MZ8SN$ MP5E7# A/P!1U.!CE/!U_@$ @@)%6#"QK !BS^X0ZQ &=5-3JS!F8Pi
MXV?P!0ZQ^[5H!Q=@!\/)Z ZQ &?%1Q,P!W!P]5G_!0ZQ9K6H#@/P!6'P!6:0h
M!G+0X5_@$ <@)%4#"QM@!VR0Y!8Q]V=5-:8P 5] !K$>!E_@$/]9BW;P &6Wg
MY7. !E_@$ EP5E5# @M !G4 !U_@$&95B^3P %_@](@.ZR;^!7 O)%5#"!LPf
M!FBP!G-0!VWP!0Z1 &=5-08Q '!0!W0P!U_@$ MP5E5C#A5@!YS.Z ZQ &=5e
M-68P 7; XA_N$ MP5E7#"A/P!1V^Z73P!0Z1 &<%"07P!:[NX2SN!F_P!7!_d
M5E5# !/P!68 !W5 !W3P!0Z1 &=5-4[@ '!P]5G_!0Z1 &=5-;@P &S@ZF6Pc
M!E_@$/]9BZH  =?^!J[^!0[QG[6("0]P[=G^!:M.!U_@$ 5P5E53)%]0!O).b
M!U_@$/]9BX3P '80XG;@$&95B\#P7[D^[U_@$/]9BU*0 /Q.!E_@$ MP5E4Ca
M#1#P!68 !ZY>!FOP!0ZQ9K7(# [ !G,@!G*P!E_@$/]9BRA@ 2(>[G20!U_@z
M$ EP5E6C"!#P!69@YW2PXU_@$ =P5E7# @GP!6:0ZR*.!E_@$&M6BY*@ %]@y
1!F>0Z_/^!0ZQ9K4(! H &@#@x
 w
end
-- 
*George R. Woodside - Citicorp/TTI - Santa Monica, CA 
*Path: ..!{trwrb|philabs|csun|psivax}!ttidca!woodside