Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!uunet!husc6!rutgers!iuvax!pur-ee!j.cc.purdue.edu!h.cc.purdue.edu!s.cc.purdue.edu!ames!amdahl!kim From: kim@amdahl.UUCP Newsgroups: comp.binaries.amiga Subject: v02i029: Sectorama Message-ID: <1172@s.cc.purdue.edu> Date: Tue, 6-Oct-87 14:49:49 EDT Article-I.D.: s.1172 Posted: Tue Oct 6 14:49:49 1987 Date-Received: Fri, 9-Oct-87 22:28:27 EDT Sender: doc@s.cc.purdue.edu Followup-To: comp.binaries.amiga Organization: Purdue University Computing Center Lines: 578 Approved: doc@s.cc.purdue.edu (Craig Norborg) Archive-Name: sectorama.sh # This is a shell archive. # Remove everything above and including the cut line. # Then run the rest of the file through sh. #----cut here-----cut here-----cut here-----cut here----# #!/bin/sh # shar: Shell Archiver # Run the following text with /bin/sh to create: # sec.doc # sec.uu # This archive created: Tue Oct 6 13:48:01 1987 # By: Craig Norborg (Purdue University Computing Center) cat << \SHAR_EOF > sec.doc *************************************************************************** * SECTORAMA * * Disk Sector Utility * * By Talin a.k.a. David Joiner * * * * IMPORTANT NOTE: This program is freely copyable and distributable, * * courtesy of David Joiner and MicroIllusions. It is NOT Public Domain. * * All copyrights are reserved by the author. You may give copies of this * * program to anyone you wish but you may not sell it. * * * *************************************************************************** This program is designed to help Amiga users recover lost or damaged data from floppy or hard drives, or to repair a damaged volume. The Obligatory Gratitude Clause. If you like this program and find it useful and worthwhile, you can do one of several things. 1) You can do absolutely nothing. That's OK. 2) If you are a developer, you can send be something you have done or are working on. I would like that very much. 3) If you are not a developer, but have lots of neat public domain software, you could send me something neat. Don't send me anything pirated or I'll just erase it. 4) If all else fails send me a thank-you note or other comments. My Address is: David Joiner 17428 Chatsworth Granada Hills, CA 91344 Don't send me any money. I don't have time to run a business, and it's really not worth the effort. I make enough money writing other kinds of software (games, creative tools) and we just aren't set up to market any kind of programming utilities (different kind of tech support, etc). The reason this program was written is because I had six hard-drive failures over the course of four months (three different units, two different manufacturers) and several times got myself into situations where I just HAD to recover a file from a completely scrambled disk. Since none of the then-current sector editors would work with hard drives, SECTORAMA was born. Note that this is not a cracking program. I don't even know how to write one of those (disk interfacing was never one of my areas of interest, I'm basically a graphics and user-interface type). One other note: Sectorama requires the font TOPAZ-11. Make sure this is in your current fonts directory or the program won't work. How to use Sectorama: from the CLI, type: Sec Where is df0:, df1:, dh0:, hd0:, or whatever. SECTORAMA in it's current form should work with virtually any AmigaDOS device that has a block size of 512 bytes. The program will open up a high-res interlaced screen and displays what it thinks is the root block for that device. You will notice that one of the longwords in the block is highlighted. The highlighting can be moved around with the mouse or arrow keys, allowing you to select any of the longwords in the block. Other information about the current block is displayed around the various parts of the screen, including block number, file name (if applicable), track/cylinder number, driver name, unit number, etc. Not all of these fields are editable in the current version, and some never will be. At the bottom of the page shows 10 numbers labeled 'History'. This is a list of the last 10 sectors you looked at. In future versions, you will be able to click on one of these and go to that sector, but this feature is not implemented yet. At the top right is a list of keyboard commands you can enter: J) Jump - read in the sector number indicated by the contents of the currently selected longword. R) Root - go to the root block. P) Parent - go to this sector's parent, if possible. C) Chain - go to the next sector on the hash chain, if possible X) Extention - go to this block's extention block, if possible. H) Header - go to the Header of this data block. D) Go to the next data block. L) Show the results of the last sector search (see below) E) Edit, in hex, the contents of the sector. you may type values in directly. ESCAPE key returns to normal mode. A) ASCII Edit, same as Edit, but in ASCII rather than hex. K) Compute new checksum for this block. U) Update - write this block back to the disk. W) Write the data portion of this block to the save file (see below) Sector Search - The Sector search pull-down menu allows you to search the entire volume, sector by sector, looking for certain criteria. The criteria can be: 1) Filename with wildcards. 2) Parent block. 3) Header block. Thus, you can search for all files that fit the pattern "*.c", or all files that have a parent of 409. This is useful for finding sectors that have become 'de-linked' from the AmigaDOS filing system. The output of the search looks just like a regular sector filled with sector keys - you can use the JUMP command to go to any of those keys. The result of the search is not destroyed by this action and can be brought up later using the option 'Last Search'. Save File - You can open a save file on another disk and save the DATA PORTION of any sector onto it. Each write is appended onto the last, thus if your file is TOTALLY trashed, you can at least get parts of it back (the parts you can find). Use the 'Open' pull down menu to open the file and the 'Close' to close it. The 'W' key writes the current sector to the save file. I have not tested this function, so be careful with it. Verify and Repair - These functions aren't finished yet. Eventually they will perform DiskDoctor-like functions, except under close user control. Compute Hash Function - This pull-down menu allows you to type a file or directory name, and it will set the position of the highlighted region based on the hash value of that name. Then, all you need do is hit 'J' (Jump) to go to the hash chain containing that block, and hit 'C' (Chain) until you get to the entry you want. Good Luck! ____ /__ /- //-////\/ P.S. I have found that since SEC works with anything MOUNTED, it will work on the VD0:, this offers alot of options. For one you can modify VD0:, then do a Diskcopy from VD0: to you disk for fast disk minipulation, I see this as a fast way to speed up alot of work that to date has ad to be done in slow-mo. Reichart Von Wolfshield...PAX(Aug,23,87)SHAR_EOF cat << \SHAR_EOF > sec.uu begin 644 sec M```#\P`````````#``````````(``!!E```"V`````$```/I```094[Z-LATF M;W!A>BYF;VYT``!314-43U)!34$@8GD@1&%V:60@2F]I;F5R("\@36EC2!7:&]L92!";&]C:P!3:&]W($QA0!297!A:7(@J M1&ER96-T;W)Y`%9E2!&:6QE`%)E<&%IR$6")M__BSR&8&<`%.74YU0>R$A MU")M__BSR&8$<`%@['``8.A@G&"`8.).5?_@3KH[V"E`AQY"K((&R'#B`H``3E2 M@"\`3KHIQ%!/0>R(WBE(AQ(@;(<.("@`".6`*4"&WB!LAPXI4(<6(&R'#BEHL M``R'&DJLAQ)G!$JLAMX@;(<*(!#E@"E`API@`/\42JR'$F8F2'H.H4ZZ*?I8O M3R!M``PO*``$3KHI[%A/2'H.G$ZZ*>)83V``#9`@;(;>("@`%")LAMXB*0`,_ M3KHZ!"E`ANX@;(;>("@`)"(LANY.NCGP*4"&XB!LAMX@*``H4H`B+(;N3KHYX MVBE`AN8@+(;FD*R&XBE`ANIR`B`LANI.NC>J*4"&\D*LAI9"K(:20JR&FD*LJ MAJ)"K(:R0JR&GD*LAO9"K(;Z0JR&_D)LAH1"K(:F0J=(>@X&3KH\-%!/*4"&! MDF<`#/1"ITAZ#@1.NCP@4$\I0(:69P`,X$*G2'H.`4ZZ/`Q03RE`AIIF#DAZY M#@).NBD26$]@``S`2&R``DZZ/4Q83RE`AJ9*K(:F9@Y(>@X`3KHH\%A/8``," MGDAX``)(>&0`3KH[,%!/*4"&]DJLAO9G``R$2&R`$DZZ/-Q83RE`AIYG``QRC M("R&GM"\````+"E`AJY(>``$2&R`"B\LAJY.NCOP3^\`#"ELAIZ`4$AL@#).0 MNCRN6$\I0(:B9P`,."!LAJ(I:``RAJI(;(.2+RR&HDZZ/*A03TAX``$O+(:J1 M3KH[U%!/2'@`'$*G+RR&JDZZ.[)/[P`,2'@`'$AX`<(O+(:J3KH[>D_O``Q(^ M>`&"2'@!PB\LAJI.NCMF3^\`#$AX`8)"IR\LAJI.NCM43^\`#$AX`!U"IR\LU MAJI.NCM"3^\`#$AX`!U(>`'!+RR&JDZZ.RY/[P`,2'@!@4AX`<$O+(:J3KH[V M&D_O``Q(>`&!2'@``2\LAJI.NCL&3^\`#$AX`!U(>``!+RR&JDZZ.O)/[P`,L M2'@`'$AX`<``<2'@"?R\LAJI.NCK*3^\`#$AX`!U(A M>`''+RR&JDZZ.MI/[P`,2'@`'4AX`G\O+(:J3KHZHD_O``Q(>`#12'@!QR\L\ MAJI.NCJR3^\`#$AX`-%(>`)_+RR&JDZZ.GI/[P`,2'@`TDAX`<`#22'@"?R\LAJI.NCI23^\`#$AX`1Q(>`''+RR&JDZZ.F)/[P`,N M2'@!'$AX`G\O+(:J3KHZ*D_O``Q(>`$=2'@!QR\LAJI.NCHZ3^\`#$AX`1U(\ M>`)_+RR&JDZZ.@)/[P`,2'@!7$AX`<`%<2'@"?R\L9 MAJI.NCG:3^\`#$AX`5U(>`''+RR&JDZZ.>I/[P`,2'@!74AX`G\O+(:J3KHYF MLD_O``Q(>`%I2'@!QB\LAJI.NCG"3^\`#$AZ"X).NB:\6$\@;0`,+R@`!$ZZA M)JY83TAX`71(>`'&+RR&JDZZ.99/[P`,2'H+7DZZ)I!83TAX``(O+(<63KHMB MP%!/2'@!?TAX`<8O+(:J3KHY:D_O``Q(>@LX3KHF9%A/+RR'$DZZ)EI83T*GP M2&R(KDAX__](>@LB3KHXLD_O`!!*@&<.2'H+(4ZZ)$6$\,K````!"&OF8$8``(%@RL```$`(:^9@`$\!E\``&': MICELAGZ'J#`LAGQ(P,"\`````SE`AZI"ITAX``](;(=:2&R'HDZZ.(1/[P`0) M.4"&>AMLAUK_[PQL``*&C&\:#&P`1H9^;!)P`!`M_^\O`$ZZ"RA83V``!(Y*, M;(:,9P`!-@QL`$2&?FP``2P,;``!AHQF)"MLAM;_YC`LAH@@;?_F$:W_[P``J M3KH:[%)LAHA.NAJD8```_`QL``*&C&8``/)P`!`M_^\K0/_\#"T`,/_O91H,# M+0`Y_^]B$G``$"W_[Y"\````,"M`__Q@1@PM`$'_[V4:#"T`1O_O8A)P`!`M@ M_^^0O````## M3KHV;EA/8``"[B!M_^9*J`'P9Q`@;?_F+R@!\$ZZ"TI83V`*+RR&GDZZ-D98R M3V```L8@;?_F2J@!^&<0(&W_YB\H`?A.N@LB6$]@"B\LAIY.NC8>6$]@``*>5 M(&W_YDJH``1G$"!M_^8O*``$3KH*^EA/8`HO+(:>3KHU]EA/8``"=B!M_^9*V MJ``09Q`@;?_F+R@`$$ZZ"M)83V`*+RR&GDZZ-8``""DZZ&)8,;``!AHQF$#`LAHA(P('\``0Y0(:&8!8,;``"0 MAHQF#C`LAHI(P('\``@Y0(:&0FR&C$ZZ&"!@``',+RR&QDZZ('!83RM`__P@= M;(;&(6W__``43KH0!F```:PO+(;&3KH@4%A/*T#__"!LAL8@*``4L*W__&<"A M8`XP+(9\P'P``V<$3KH)W&```7Q*K(`'H(&R&QDAH#``O+( M@&<`_J97@&<`_39?@&<`_AY5@&<`_ MAH)L``#J#&P``X:,;```X#`LAH)(P)"\````'G(+3KHM1#M`_^9*;?_F;`1"Q M;?_F#&P!/X:`;%`P+(:`2,"0O````"`[0/_H2FW_Z&P$0FW_Z#`M_^A(P')(N M3KHM".>`+P`P+?_H2,!R2$ZZ+2!R"$ZZ+/(D']2`-BW_YDC#ZX/4@SM"_^1@] M/`QL`4"&@&\T,"R&@$C`D+P```%`<@1.NBS$.T#_Z$IM_^AL!$)M_^@P+?_F+ M2,#K@#(M_^A(P="!.T#_Y$ZZ%98Y;?_DAHHP+?_D2,"!_``".4"&B#`M_^1(3 MP('\``@Y0(:&3KH5,&```?H,K````0"&OF8``>X,;/__AGYF!&```>(P+(9^+ MP'P`'V9V,"R&?DC`ZH#`O````#]@4&!@2JR'(F<*+RR'(DZZ+FQ83T*LAR)@( M2DJLAR)F)$AZ`[](;(@P3KKR"%!/2H!G$DAX`^Y(;(@P3KHN9%!/*4"'(F`>M M8``!B/_D_[C_HO^@L+P````$9`KC@#`[`.Q.^P``8``!8C`LAGY(P,"\````+ M'["\`````68``,8P+(9^2,#J@,"\````/V```)Y(>@-A2&R'X$ZZ\9A03TJ`^ M9PI(>``!3KH6P%A/8```D$AX``).NA:R6$]@``""2'@``TZZ%J183V!T2'@`" M!$ZZ%IA83V!H3KH3DF!B2'H#*DALB`A.NO%,4$]*@&8!S_Y/_8_\S_P/^TL+P````%9`KC@#`[N M`.I.^P``8!(P+(9^2,#`O````!^PO`````)@`/>`8`#W8DZZ&4!*K(0!D:7-K9F]N="YL:6)R87)Y`$-O=6QD;B=T(&]P96X@Q M1&ES:V9O;G0N;&EB0H`0V]U;&1N)W0@9FEN9"!T;W!A>B\Q,2!F;VYTF M+@H`1&5V:6-E/0!5;FET/0!$``#+RR&JDZZ++Y03TAX7 M``(O+(:J3KHLP%!/+RR',C`LAHY(P.>`T*R'+B\`+RR&JDZZ+()/[P`,2'@`^ M`3`LAHY(P$'LAV30B"\`+RR&JDZZ+*9/[P`,2'@``2\LAJI.NBQF4$]"IR\L0 MAJI.NBQJ4$].74YU3E7_^@PM`#``"V4>#"T`.0`+8A8P+(:.0>R'9!&M``L`T M`%)LAHY@``$N#"T`80`+93`,+0!F``MB*`QL``2&C&8@<``0+0`+D+P````@' M,BR&CD'LAV01@!``4FR&CF```/8,+0!!``ME)@PM`$8`"V(>#&P`!(:,9A8PG M+(:.0>R'9!&M``L``%)LAHY@``#(#"T`#0`+9P@,+0`*``MF6D*M__H,;``#, MAHQF/$)M__Y@*G(*("W_^DZZ*&`K0/_Z,"W__D'LAV1R`!(P``"2O````##37 MK?_Z4FW__C`M__Y(P+"LAS9ERB!LARH@K?_Z0FR&C$ZZ`O1@7`PM``(`"V<(^ M#"T`(``+9@92;(:.8$8,+0`#``MG"`PM``@`"V8&4VR&CF`P2BT`"V82,"R&U MCDC`+P!(>``!82103V`8#"T``0`+9A`P+(:.2,`O`$AX__]A"E!/3KK]TDY=. M3G5.50``2FT`#FU<,"T`#D'LAV30P!(M``O3$#`M``Y![(=D##``.0``8Q0P3 M+0`.0>R'9!&\`#```%-M``Y@)C`M``Y![(=D##``,```9!0P+0`.0>R'9!&\; M`#D``%-M``Y@`F`"8)Y.74YU3E4``"\LAL8O+(>`3KH5[%!/3EU.=4Y5```O+ M+0`(3KH`WEA/*6R&]H;&+RR&QB`M``C0K(;B+P!.NA5J4$\I;(;&AW@Y?`"`I MAWPI;0`(AX!";(=^0BR'A$ZZ!:!.74YU3E4``"ELAO:&QB\LAO)AIEA/3EU.I M=4Y5__Y(>`&-2'@`""\LAJI.NBGP3^\`#$ALB1).NAZ>6$](>@!:3KH>V%A/< M0FW__F`B2'@`!C`M__Y(P.6`0>R(@B\P"`!.NA^04$].NA\$4FW__@QM``C_6 M_FW62'@!C4AX``@O+(:J3KHIF$_O``Q(>`!!3KH>5%A/3EU.=4AIR(@C(M__Y(P>6!0^R(@B.P"``8* M`%-M__Y*;?_^;M8I;0`(B().NO\Z3EU.=4Y5__I![(5P*TC_^D)M__Y@``#`" M(&W_^C`LAH"P4&U,,BR&@$C!(FW_^C0I``1(PN>"+&W_^C862,/4@[*";"PVL M+(:"2,,L;?_Z-"X``DC"48*V@FT6-BR&@DC#+&W_^C0N``)(PE:"MH)M"@:M\ M````#/_Z8%@Y;?_^AI`,;``"AHQO"DAX``U.NOQL6$\P+(:`2,`O`"!M__HRP M*``"2,$O`2)M__HT$4C"+P(L;?_Z-BX`!$C#+P,L;?_Z+RX`"$ZZ^PY/[P`4\ M<`%.74YU4FW__@QM``;__FT`_SIP`&#J3E4```QL``:&D&Q*#&P``X:09B@@C M;(;>(B@`#"`LASY.NB,Z*4"'1B!LAMXB*``,("R'/DZZ(S(I0(="2FR&D&\*] M#&P`!8:0;`)A;"\LATI.NOVB6$].74YU3E4``"EM``B'2B!LAMXB*``4("T`C M"$ZZ(NHI0((B@`#"`LASY.NB+"F M*4"'1B!LAMXB*``,("R'/DZZ(KHI0(="3EU.=4Y5```@;(;>("@`#"(LAT).= MNB1FT*R'1B)LAMXB*0`43KHD5M"LASHI0(=*3EU.=4Y5```O+0`(3KK_:%A/B M2'@!*4AX`<@O+(:J3KHG4D_O``Q(>@%B3KH43%A/2'@`!B\LASI.NAMP4$](9 M>@%43KH4-%A/2'@`!B!LAMXO*``43KH;5%!/2'@!-$AX`<@O+(:J3KHG"D_O] M``Q(>@$F3KH4!%A/2'@`!B\LASY.NALH4$](>@$83KH3[%A/2'@`!B!LAMX@K M*``H4H`B;(;>(BD`#$ZZ(Z0O`$ZZ&OQ03TAX`3](>`'(+RR&JDZZ)K)/[P`,D M2'H`VDZZ$ZQ83TAX``8O+(="3KH:T%!/2'H`S$ZZ$Y183TAX``8@;(;>+R@`V M*$ZZ&K103TAX`4I(>`'(+RR&JDZZ)FI/[P`,2'H`GDZZ$V183TAX``8O+(=&2 M3KH:B%!/2'H`D$ZZ$TQ83TAX``8@;(;>+R@`#$ZZ&FQ03TAX`55(>`'(+RR&O MJDZZ)B)/[P`,2'H`8DZZ$QQ83TAX``8O+0`(3KH:0%!/2'H`5$ZZ$P183TAX- M``8O+(;J3KH:*%!/3EU.=2`@4V5C=&]R.@`@`"`@(%1R86-K.@`@`$-Y;&EN@ M9&5R.@`@`"!3=7)F86-E.@`@`"`@($)L;V-K.@`@`$Y5__Q(YP\@2'@``2\L5 MAJI.NB6L4$\@;0`(*U#__"EM__R&UGPH>`!(;(D23KH:.%A/2'@``B\$3KH;D M2%!/2'@`.DZZ&LI83WH`(`30A2!M``@R*``$2,&P@6\02'@`"4AZ`,).NAIBD M4$]@'$AX``@@!-"%Y8`@;?_\+S`(`$ZZ&P)03TZZ&G92A;J\````!&VX(`3E+ M@"1`U>W__'H`($I2BAX0(&T`"$HH``QF&'($(`5.NA^\T(0B;0`(-"D`!$C"T ML()O!'X@8`Z^/``@90:^/`!^8P)^+G``$```W3KH9;EA/W+P````+6(2XO````(!M`/\.; M3-\$\$Y=3G4@("`@("`@("``3E7__$CG#C`F;(=X.6R'?H:&2'@``2\LAJI.9 MNB1T4$](;(D23KH9$EA/2'H%PDZZ&4Q83TAX``8O+(>`3KH:%E!/2'H%L4ZZV M&3183R`3"(```"M`__P(*P````-G"DAZ!9Q.NAD86$\@+?_\8```J`RK````& M`0'\9A!(>``,2'H%A4ZZ&1903V!"#*L````"`?QF$$AX``Q(>@5T3KH8_%!/R M8"@,J_____T!_&802'@`#$AZ!61.NACB4$]@#DAX``Q(>@593KH8TE!/8%Q(S M>``,2'H%44ZZ&,)03V!,2'@`#$AZ!4M.NABR4$]@/$AX``Q(>@5&3KH8HE!/N M8"Q(>@5$3KH8>%A/2'@`!"\33KH8XE!/8!15@&<`_U95@&>N68!GNE&`9\9@$ MU`RM`````O_\9C!(>@473KH80EA/)$O5_````;`@2E**<``0$"@`N+P````@* M;P)X("\$+PI.NA@Z4$](>``82'@`""\LAJI.NB,,3^\`#$AX`$].NA?(6$](_ M;(=X3KK]2EA/2&R)$DZZ%Z983PRM`````O_\9A1(>@2R3KH7UEA/2&L!I$ZZ` M$`'(+RR&JDZZ(KQ/[P`,2'@`#TZZ%WA83TALB1).NA=@6$\,R MK0````+__&842'H$`#K2'@!R"\LAJI.NB)VS M3^\`#$AX``].NA``&+RL`"$ZZ%[)03V!&#*T````(__QF&DAZ!"!.NA``&+RL`"$ZZT M%XY03V`B#*T````0__QF&$AZ!`1.NA<"6$](>``&+RL`"$ZZ%VI03TAX`/9(H M>`'(+RR&JDZZ(>1/[P`,2'@`%4ZZ%J!83TALB1).NA:(6$\,K0````+__&<4J M#*T````(__QG"@RM````$/_\9AA(>@.T3KH6I%A/2'@`!B\K``Q.NA<,4$](/ M>`$!2'@!R"\LAJI.NB&&3^\`#$AX`!%.NA9"6$](;(D23KH6*EA/#*T````"8 M__QF4DAZ`W9.NA9:6$\(*P`#`4-G"DAX`%).NA:L6$\(*P`"`4-G"DAX`%=.* MNA::6$\(*P`!`4-G"DAX`%A.NA:(6$\(*P```4-G"DAX`$1.NA9V6$](>`$,3 M2'@!R"\LAJI.NB$"3^\`#$AX``].NA6^6$](;(D23KH5IEA/#*T````"__QFO M&$AZ`OQ.NA766$](>``&+RL!1$ZZ%CY03TAX`1=(>`'(+RR&JDZZ(+A/[P`,H M2'@`#TZZ%7183TAX`"A(>`'(+RR&JDZZ()I/[P`,2'H"OTZZ#9183TAX`#-(= M>`'(+RR&JDZZ('Q/[P`,2'H"J$ZZ#7983TAX``8O+(;R3KH4'%!/2'@`/DAX& M`<@O+(:J3KH@4$_O``Q(>@*-3KH-2EA/2'@`!B\K`?1.NA/P4$](>`!)2'@!V MR"\LAJI.NB`D3^\`#$AZ`G).N@T>6$](>``&+RL!\$ZZ$\103TAX`%1(>`'(E M+RR&JDZZ'_A/[P`,2'H"5TZZ#/)83TAX``8O*P'X3KH3F%!/2'@`7TAX`<@O^ M+(:J3KH?S$_O``Q(>@(\3KH,QEA/2'@`!B\K``1.NA-L4$](>`!J2'@!R"\LR MAJI.NA^@3^\`#$AZ`B%.N@R:6$](>``&+RL`$$ZZ$T!03TAX`'5(>`'(+RR&$ MJDZZ'W1/[P`,2'H"!DZZ#&Y83TAX`(!(>`'(+RR&JDZZ'U9/[P`,2'H!]DZZ> M#%!83TAX`(M(>`'(+RR&JDZZ'SA/[P`,2'H!WTZZ##)83TAX`)9(>`'(+RR&: MJDZZ'QI/[P`,2'H!SDZZ#!183TAX``@O*P`43KH2NE!/2'@``4AZ`<`O+(:J- M3KH?,$_O``Q(>`"A2'@!R"\LAJI.NA[:3^\`#$AZ`9Y.N@O46$](>`"L2'@!\ MR"\LAJI.NAZ\3^\`#$AZ`8].N@NV6$\O+(>`3KKW.%A/2FR'?&<$3KH"%DS?P M#'!.74YU0FQO8VL]`"!4>7!E/0!$14Q%5$5$(`!23T]4($1)4@!$25)%0U1/U M4ED`1DE,10`H54Y3150I`$Q/3D<@1DE,10!$051!($),3T-+`$9)3$4@3$E3H M5`!#3U)255!4+P`@3F%M93T`1&%T93H@`%1I;64Z(`!(:6=H97-T(%-E<2`CI M.B``4V5Q(",Z(`!";&]C:R!#;W5N=#H@`$1A=&$@4VEZ93H@`%!R;W1E8W0ZX M(`!&:6QE($)Y=&5S.B``2BU*=6UP`%(M1V\@4F]O="`@("`@(#T`4"U';R!0- M87)E;G0@("`@/0!#+4=O($AA'0@1&%T82`]`$PM3&%S="!396%RF M8V@`12U%9&ET`$$M161I``#,"R'BDC`+P!.NA)*+ M4$](>``82'@`""\LAJI.NAS$3^\`#$AX`$].NA&`6$](;(>&3KKW`EA/821.' M74YU4V5A``"+RR&JDZZ'(I03V$>2'@``2\LAJI.NAQJ4$]"IR\LAJI./ MNAQN4$].74YU3E7_YBMLAM;_[@QL``&&C&9<`FP!_X:(.VR&B/_X,"R&B$C`@ M@?P`!#M`__HP+?_Z2,#`O`````-R2$ZZ&.(T+(:(2,+$O`````/I@M"".T#_` M_CM\``+_]C`LAH@@;?_N<@`2,```*T'_\F```,P,;``"AHQF?`)L`_^&BC`L7 MAHI(P('\``([0/_X,"R&BDC`@?P`"#M`__HP+?_Z2,#`O`````-R2$ZZ&'8T7 M+(:*2,+$O`````?G@M"".T#__C`LAHI(P'("3KH60"!M_^YT`!0P"``K0O_R> M""P``(:+9@H@+?_RZ(`K0/_R.WP``?_V8$8";`!_AH8P+(:&2,#E@#M`__@[% M;(:&__HP+?_Z2,#`O`````-R2$ZZ&`0[0/_^.WP`"/_V,"R&ADC`Y8`@;(;65 M*W`(`/_R,"W_^DC`<@1.NA7&<@M.NA?6.T#__#`M__Q(P"!`2&@`*#(M__Y(O MP2)!2&D`("\LAJI.NAK83^\`##`M__9(P"\`+RW_\DZZ#GY03^#M__9*;?_V[ M9P``G#`M__A(P,"\````#^>`T+P```%`.T#__D)M_^Q@.C`M__A2;?_X(&W_@ M[AMP``#_ZPPM`"#_ZV4(#"T`?O_K8P8;?``N_^LP+?_L0>W_YQ&M_^L``%)M/ M_^PP+?_LL&W_]FV\,"W__$C`($!(:``H,BW__DC!+P$O+(:J3KH:.$_O``PPZ M+?_V2,`O`$AM_^09?``!AY)";?_Z0FR'BDALAX9.NO0P6$\[Z M;(;D__Y@``%J2'@`&$AX`#@O+(:J3KH9P$_O``Q(>``&,"W__DC`+P!.N@UFV M4$\[?``H__8P+?_^2,`R+?_V2,'0@;"LAN9O%#`M__9(P#(M__Y(P20LAN:4= M@9""+RR&RC`M__9(P"\`,BW__DC!+P%.N@0N3^\`##M`__A*;?_X9@``_$)M1 M__Q@``#,#&T`?__Z;@``SC`M__Q(P'()XZ#0K(;**T#_\@QM``$`"F8T(&W_$ M\@R0`````F8``)9(;(A8(&W_\DAH`;!.N@4@4$](;(?@2&R(6$ZZ!Q)03TJ`$ M9W!@+@QM``(`"F80(&W_\B`H`?2PK(>`9EA@%@QM``,`"F8.(&W_\B`H``2PF MK(>`9D`P+?_^2,`R+?_\2,'0@2\`-"W_^DC"+P).N@)B4$\P+?_Z4FW_^DC`4 MY8`@;(;.,BW__DC!-"W__$C"TH(A@0@`4FW__#`M__RP;?_V;0#_+`QM`'__! M^FX4!FT`*/_^,"W__DC`L*R&YFT`_HQ.N@'J.6W_^H>**6R&SH>&0FR'C$)L] MAH9.NOLJ3EU.=4Y5_^PK;(;:_^P9?``!AZ!";?_Z0FR'F$*G+RR&JDZZ&$I0W M3SMLAN3__F```71(>`&.2'@`""\LAJI.NA?\3^\`#$AZ`8!.N@3V6$](>``&K M,"W__DC`+P!.N@N84$\[?``H__0P+?_^2,`R+?_T2,'0@;"LAN9O%#`M__1(> MP#(M__Y(P20LAN:4@9""+RR&RC`M__1(P"\`,BW__DC!+P%.N@)@3^\`##M`^ M__9*;?_V9@``_$)M__Q@``#,#&T`?__Z;@``SC`M__Q(P'()XZ#0K(;**T#_: M\`QM``$`"F8>(&W_\`R0`````F8``)8B;?_P("D!]+"LAX!F``"&2&R(6"!MZ M__!(:`&P3KH#0E!/,"W_^DC```32&R(6$ZZ!")03R!MG M_^PP+?_^2,`R+?_\2,'0@2%```(@;?_L,+P``5RM_^Q2;?_Z4FW__#`M__RPW M;?_T;0#_+`QM`(C_^FX4!FT`*/_^,"W__DC`L*R&YFT`_H)A'#EM__J'F"ELS MAMJ'E$)LAYI.74YU0FQO8VLZ(`!.50``(&R&_D*H`"0@;(;^,7P`"0`<+RR&! M_DZZ%5)83TY=3G5.5?_\("T`","\`````SM`__X@+0`(Y(@[0/_\,"W__,'\X M``L@0$AH`"@P+?_^P?P`2")`2&D`("\LAJI.NA8*3^\`#$AX``@O+0`,3KH)3 MM%!/3EU.=4Y5__`@;(;^,"T`#DC`<@GCH"%``"0@;(;^(6T`$``H(&R&_C%\L M``,`'"!LAOXP+0`*2,!R">.@(4``+"\LAOY.NA2R6$\@;(;^$"@`'TB`.T#_F M_DIM__YG`F!<.VT`"O_\8$@P+?_\2,!5@"M`__AR("`M__A.NA`^4H`K0/_T? M`JT````?__AP`2(M__CCH"M`__`@+?_TY8!![(EBT<`B+?_P1H'#D%)M__PPI M+0`.4VT`#DI`9JQ.74YU3E7__B!LAOXP+0`.2,!R">.@(4``)"!LAOXA;0`0G M`"@@;(;^,7P``@`<(&R&_C`M``I(P'()XZ`A0``L+RR&_DZZ$_983R!LAOX0$ M*``?2(`[0/_^2FW__C`M__Y(P$Y=3G5.5?_^(&R&_B%\```"```D(&R&_B%M< M``P`*"!LAOXQ?``"`!P@;(;^,"T`"DC`<@GCH"%``"PO+(;^3KH3FEA/(&R&F M_A`H`!](@#M`__Y*;?_^3EU.=4Y5__X@;(;^(7P```(``"0@;(;^(6T`#``H\ M(&R&_C%\``,`'"!LAOXP+0`*2,!R">.@(4``+"\LAOY.NA-$6$\@;(;^$"@`3 M'TB`.T#__DIM__Y.74YU3E7_^D*M__I";?_^8"`,;0`%__YG%#`M__Y(P.6`N M(&T`""(P"`"3K?_Z4FW__@QM`(#__FW8("W_^DY=3G5.5?_Z*VT`#/_\(&W_: M_$(02JT`"&8$3EU.=2!M``A2K0`(<``0$#M`__H,;0`R__IO!CM\`#+_^C`M= M__I3;?_Z2D!G%"!M``A2K0`((FW__%*M__P2D&#@(&W__%*M__Q"$&"R3E7_! M_D)M__X@;0`(4JT`"$H09P92;?_^8.XP+?_^2,!.74YU3E7__B\M``AATEA/% M.T#__C`M__Y(P"\`+RT`""\LAQY.NA"`3^\`#$Y=3G5.50``2.<,`"@M``@JB M+0`,2&R';DZZ!]I83R\%+P1.N@B24$]"ITZZ"'!83TALAVYAHEA/3-\`,$Y=# M3G5.5?_^+RT`"$ZZ_VI83SM`__X,;0!0__YC!CM\`%#__G``,"W__B\`+RT`? M""\LAJI.NA,*3^\`#$Y=3G5.5?_^+RT`"$ZZ_RY83SM`__YP`#`M__XR+0`._ M2,&P@6,&.VT`#O_^<``P+?_^+P`O+0`(+RR&JDZZ$L9/[P`,<``P+?_^,BT`1 M#DC!L(%D(#`M``Y(P'(`,BW__I"!+P!(;(6X+RR&JDZZ$I9/[P`,3EU.=4Y54 M__X[;0`2__XP+?_^L&T`#F\&.VT`#O_^,"W__DC`+P`O+0`(+RR&JDZZ$F!/J M[P`,,"W__K!M`!)L(#`M`!)(P#(M__Y(P9"!+P!(;(6X+RR&JDZZ$C9/[P`," M3EU.=4Y5``!(YP`P)&T`""9M``Q*$V<``)`,$P`J9DP,$P`J9@12BV#V2A)G@ M*!`22(!(P"\`3KH'X%A/+P`0$TB`2,`O`$ZZ!]!83R(?LH!G!%**8-1*$F82X M2A-F"G`!3-\,`$Y=3G5P`&#T#!,`/V8&4HM2BF"<$!-(@$C`+P!.N@>66$\O# M`!`22(!(P"\`3KH'AEA/(A^R@&<$<`!@P%*+4HI@`/]N2A)F"$H39@1P`6"L? M<`!@J$IA;@!&96(`36%R`$%P<@!-87D`2G5N`$IU;`!!=6<`4V5P`$]C=`!.9 M;W8`1&5C`$Y5``!(YPX@)&T`""@\```'NBP2O+P```%N;3P@!)"\```'N'($B M3KH+RF8*G+P```%N4H1@("`$D+P```>X<@1.N@NP9Q"\O````6UM")R\```!] M;5*$8+P@!)"\```'N'($3KH+CF86(CP```%N(`9.N@N`+``9?``=AAY@%"(\[ M```!;2`&3KH+:BP`&7P`'(8>>@!@#D'LAAQP`!`P6`"<@%*%0>R&''``$#!8; M`+R`8N1(>``"(`92@"\`3KH%O%!/2'@`+4ZZ!:!83R`%Y8!![(7L+S`(`$ZZK M!2I83TAX`"U.N@6$6$](>``"+P1.N@6*4$](>``M3KH%;EA/3-\$<$Y=3G5.0 M50``2.<.("1M``@@*@`(``"+P9.N@4&4$],WP1P3EU.=4Y5__(O+0`(3KK[]EA/+ M*T#__"M`__A"K?_T8$@@;0`(4JT`"!M0__,,+0!A__-M#@PM`'K_\VX&!"T`< M(/_S$"W_\TB`2,!R#2\`("W__$ZZ#!`D']2`Q+P```?_*T+__%*M__0@+?_TB ML*W_^&VN<`!.KOZ>8`#_%'`!3J[^GF``_PI@`/\&0H!"@4*"0H,0&-!`T$`2&!08; MU$+40A882.?P@$ZN_Q`_`3\`/P,_`#\#/P(_`3\"($]P!$ZN_K#>_``03-\!K M#V``_L)"@$*!0H)"@Q`8T$#00!(8%!C40M1"%AA(YP#"3J[^SDS?0P!@`/Z:4 M&"D`&4*`0H%"@D*#$!C00-!`$A@4&-1"U$(6&&$``(1(Y_#"3J[^SDS?0P]A, M=$CG\(!.KO\04D!3`C\!/P(_`S\"/P,_`#\!/P!30%("/P$_`C\#/P(_`S\`U M($]P!TZN_K#>_``<3-\!#V$V2.?PPB`"5H)4@52#4H!.KO[.3-]##TCG\,(BY M`U2#5H!2@4ZN_LY,WT,/0H`0!$ZN_JI@`/WX2.?P0D*`$!A.KOZJ3-]"#TYU% M8`#]XD*"0H-"A!08%A@8&$*`$!C00-!`2.?X@#("3J[_$$S?`1](Y_B`,@-.] MKO\*3-\!'U-$9MA@`/VJ0H!"@1`8$AC00-!`3J[_$$*`$!@2&-!`T$`O"$ZN' M_PH@7V``_80@+P`$2.?__B`O`$`B+P!$81H@+P!$(FR&JBQLAI9.KO_$3-]_U M_TYU("\`!$'LAC!@&!0`Q#P`#]0\`#"T/``Y;P)>`A&"$`#HB%')_^9.=4CG1 MX(`@;P`4("\`&"(O`!Q308#\``I(0-`\`#`1@!``0D!(0%')_^Q,WP$'3G4@[ M+P`$2.?__D*#8`H@+P`$2.?__G;_83;0_``*("\`1)#`(FR&JBQLAI9(YX"`S M<`%.KOZJ<`!.KOZD3-\!`4ZN_\1,WW__3G4@+P`$=O]![(8P<@E@"$I#9@1** M0&<8@/P`"DA`T#P`,!&`$`!"0$A`4T M`A&"$`!1R?_FT>\`'"E(ABQ,WP$/3G5P`!`O``>P/`!@8PJP/`!Z8@20/``@( M3G5P`!`O``>P/`!`8PJP/`!:8@30/``@3G5A<$/LACY%[(8^M`@`@N``0!*6<02_H`"$ZN_^)@!D*GC M\U].0!)^0``?_Y.=4Y5```O"DAY``$``#`LACS!_``&+P!.N@@@4$\I0(9*V M9A1"ITAY``$``$ZZ!FI03RYLAD).=2!LADI":``$(&R&2C%\``$`$")LADHS6 M?``!``H@;(9"("R&0I"H``10@"E`ADX@;(9.(+Q-04Y80J=.N@?N6$\D0$JJ- M`*QG,"\M``PO+0`(+PI.N@"T3^\`#"E\`````892(&R&2@!H@```!"!LADH`P M:(````I@1$AJ`%Q.N@A46$](:@!<3KH'VEA/*4"&5B!LAE9*J``D9Q`@;(96O M(F@`)"\13KH%=EA/+RR&5B\*3KH";%!/*6R&5H9:3KH%:B!LADH@@$ZZ!7X@, M;(9*(4``!F<62'@#[4AZ`"Q.N@564$\@;(9*(4``#"\LAEHO+(9>3KK)<%!/C M0J=.N@.06$\D7TY=3G4J`$Y5``!(YPPP)&T`$"!M``@@*`"LY8`H`"!$("@`W M$.6`)D`0$TB`2,#0K0`,5(`I0(9B0J)FR&9B1+$!-(@$C`*@"PO```% M`"!G(+J\````"6<8NKP````,9Q"ZO`````UG"+J\````"F8$4HM@S`P3`"!MO M``",#!,`(F8R4HL@2U*+$!!(@$C`*@!G("!*4HH0A;J\````(F80#!,`(F8$_ M4HM@!D(J__]@`F#28$0@2U*+$!!(@$C`*@!G,+J\````(&8`#^QGH`)FR&) M9F`:(`7E@"!LAEHABP@`+PM.N@':6$]2@-?`4H6ZK(9>;>`@!>6`(&R&6D*P- M"`!@`/Z.(`!,[P,```0@""(O``Q@`A#95\G__&<&4D%@`D(84`/M+PM.N@*\4$\L`&R&2DJ$;0XP+(8\2,"X9 M@&P$2I)F$BE\`````H9V``B+PI.N@#B4$\D7TY=3G4B;P`$+&R&1D[N_IX@+P`$+&R&X M1D[N_K9.50``+PI*K0`(9@AP`"1?3EU.=4AY``$``2\M``Q.N@!@4$\D0$J`` M9@1P`&#@%7P`!0`(-6T`#@`2)6T`"``.(`I@RDY5```O"B1M``@@"F8&)%].2 M74YU%7P`_P`()7S_____`!0E?/____\`&'``,"H`$B\`+PI.N@!&4$]@TD[Z) M``),[P`#``0L;(9&3N[_.DCG`P`B;P`,+&R&1DZN_CA,WP#`3G5.^@`"(F\`+ M!"QLAD9.[O[:+&R&1D[N_WQ.^@`"(F\`!"`O``@L;(9&3N[_+B`O``0L;(9&1 M3N[^L$[Z``(@;P`$+&R&1D[N_HP@;P`$((A8D$*H``0A2``(3G4@;P`$3.\"& M`0`((B\`$"QLAD9.[OY$3OH``BQLAD8B;P`$("\`"$[N_=@B;P`$+&R&1D[NL M_IA.^@`"(F\`!"QLAD9.[OZ&("\`!"QLAD9.[O["(&\`!"QLAD9.[OZ`(F\`. M!"QLAI9.[O^R(F\`!$SO``,`""QLAI9.[O\*3.\#```$("\`#"QLAI9.[O]`% M(F\`!$SO``,`""QLAI9.[O\0(F\`!"`O``@L;(:63N[^JB)O``0@+P`(+&R&H MED[N_J0B;P`$("\`""QLAI9.[O\6(F\`!"!O``@@+P`,+&R&EB\'3J[_Q"X?B M3G5,[P,```0L;(=.3N[_H"!O``0L;(=.3N[_IB!O``0L;(=.3N[_LB!O``0L: M;(:23N[_RB!O``0L;(:23N[_OB!O``0L;(:23N[_N"!O``0L;(:23N[_H"!OH M``0L;(:23N[_.B!O``0L;(:23N[_-$SO`P``!"QLAI).[O\03.\#```$+&R&X MDD[N_O@@;P`$+&R&FD[N_^(O"DSO`P``"$SO!`(`$"QLAK).KO_0)%].=0``= M`^P````!`````0``-SX````````#\@```^H```&/````!``+````!05?````0 MV@`````"@`&0``(``8`$``\`````````$`````````````````*``9```0``G M!5@``AD````````````````````````````"@`&0`H`!D``/``$````$``$`S M````````4````````0````0``0````````!5```````!````!``!````````Q M`&0```````````````H`J@`-`%(`````````=`````!/`````````````)P`6 M```7`*H`#0!2`````````(@`````0P````````````"^````)`"J``T`5@``: M``````!@`````%$```````````$````$``$`````````=````````0````0`P M`0````````"!```````!````!``!`````````(\```````$````$``$`````= M````G0```````0````0``0````````"L```````!````!``!`````````+8`+ M``````$````$``$`````````R0````````````````"6``T`4@````````$"' M```````````````````!C@````T`E@`-`%(````````!%@``````````````H M`````;`````:`)8`#0!2`````````2H```````````````````'2````)P"6[ M``T`0P````````$^```````````````````!]````#0`E@`-`%(````````!N M4@```````````````````A8```!!`)8`#0!2`````````68`````````````' M``````(X````3@"6``T`0P````````%Z``````````````````$````2``$`] M````````S@```````0```!(``0````````#?```````!````$@`!````````5 M`/````````$````2``$`````````_`````````````````"T``T`4@``````3 M``)\```````````````````"S`````T`M``-`$,````````"D```````````O M`````````NX````:`+0`#0!#`````````J0```````````````````,0````' M)P"T``T`0P````````*X``````````````````````!R````-@`*`0$```$(B M```#,@`````````````#5``R````-@`*`0$```$/```"6@`````````````#O M<@`"````)@`*`0$```$6````X````````````0(````2``,````````!'```2 M```!`@```!(``P````````$Q``````$"````!0`#`````````30`````````* M``"]````O0`Q````,0```````````#<````W``X````.```````)``\`L@`/_ M`+(`&P`)`!L`"0`/``````,```4```02```````````#```%```#Z@``!"8`& M`````P``!0```_X````````````*`"``,@`,````!1`!```$1@````````/"6 M``````````````````````16`'T`(``R``P````%$`$```1&`````````]8`N M````````````````````![8`````````'```````````````````````````9 M````````!((`"@`0`*H`"P````40!`````````````````````````2N````@ M```````````4`!X`O@`R````````!-(```0V```#K@```@``````````````E M````````````````````````````````````````````````````````````` M```````````````````````````````````X`!@`!@`$```'2`(0`2D`!@`#N M```'.`(0`30`!@`#```'/`(0`3\`!@`#```'0`(0`4H`!@`#```'1`(0`54`- M!@`#```'2"`@("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@8 M("`@("`@("`@("`@`````"]2```O5@``+UH``"]>```O8@``+V8``"]J```O* M;@``+W(``"]V```O>@``+WX?'!\>'QX?'QX?'A\`````````````````````W M```````4```#[````#0````!````(````*X```"^````T````.````#R```!G MH````;````'"```!T@```>0```'T```"!@```A8```(H```".````DH```):M M```";````MX```+N```#`````Q````,B```#,@```T0```-F```#<@```X0`: M``.0```#H@``!"X```0^```$0@``!$X```1H```$<```!((```24```$G```B M!*X```32```$]```!0X```42```%%@``!78```6"```%C@``!9H```6F```%I ML@```"(``````````````"0```!L````@````)0```$.```!(@```38```%*L M```!7@```7(```&&```"B````IP```*P```"Q````V(```.````#G@```[H`_ M``/.```#X@``!>H```7N```%\@``!?8```7Z```%_@``!@(```8&```&"@``P >!@X```82```&%@````````/R```#ZP````$```/RA `` end size 18840 SHAR_EOF # End of shell archive exit 0