ain@j.cc.purdue.edu (Patrick White) (07/08/88)
Submitted by: barrett@crabcake.cs.JHU.EDU Summary: Runs a program in the background without attachments to the CLI. Poster Boy: Patrick White (ain@j.cc.purdue.edu) Archive Name: sources/amiga/volume5/runback2.d.sh.Z binaries/amiga/volume8/runback2.d.sh.Z tested. NOTES: I tried it, but didn't tru compiling it. Reshared it to separate sources, docs, and binaries. It worked perfectly except when I tried to runback the info.library.. but that is a dumb thing to be doing anyway :-) (did it cause older versions died when you tried to run soemthign that was not there). . -- Pat White (co-moderator comp.sources/binaries.amiga) ARPA/UUCP: j.cc.purdue.edu!ain BITNET: PATWHITE@PURCCVM PHONE: (317) 743-8421 U.S. Mail: 320 Brown St. apt. 406, West Lafayette, IN 47906 [archives at: j.cc.purdue.edu.ARPA] ======================================== # 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: # README # README.peck # This archive created: Fri Jul 8 11:32:50 1988 # By: Patrick White (PUCC Land, USA) echo shar: extracting README '(2561 characters)' cat << \SHAR_EOF > README RunBack: Run a program in the background. *** Now searches your command search path. *** A revision of Rob Peck's "RunBack" program and Carolyn Scheppner's "Which" program. Author: Daniel Barrett Department of Computer Science The Johns Hopkins University Baltimore, MD 21218 barrett@cs.jhu.edu ins_adjb@jhunix.UUCP Note: Both the original RunBackground and Which are in the Public Domain. So is all my code that I added. Use it however you please. INTRODUCTION ------------ This is my altered version of Rob Peck's fine program, RunBack. RunBack, similar to Run, allows you to startup a CLI program and let it run in the background. Unlike Run, however, RunBack then allows the original CLI to be closed. Run would hang the CLI if you did this. See the file README.peck for Rob Peck's original documentation. Also unlike Run, the old RunBack did not search your command search path; you always had to specify the complete pathname of your command. My new version eliminates this hassle -- it searches your path. The path-searching code is largely taken from Carolyn Scheppner's "Which" program. Thanks, Carolyn!! A PROBLEM I HAD TO OVERCOME --------------------------- The original RunBack program I obtained was a binary version, compiled with the Lattice C compiler. I use the Manx (Aztec) compiler, version 3.6a. When I compiled Rob's original program with Manx, something did not work anymore... quoted arguments on the command line. The Manx version completely drops the quotes! The way RunBack works is that it translates: RunBack myProgram arg1 arg2 into: Run >NIL: <NIL: myProgram >NIL: <NIL: arg1 arg2 So a Lattice RunBack would translate from: RunBack c:emacs "my file" into: Run >NIL: <NIL: c:emacs >NIL: <NIL: "my file" HOWEVER, Manx-compiled RunBack translates it into: Run >NIL: <NIL: c:emacs >NIL: <NIL: my file which is clearly WRONG. What did I do about it? I added a few lines of #ifdef AZTEC_C code to the runback.c program, plus the file aztec.c. I am effectively replacing quotes around quoted arguments. My algorithm is this: if an argument has a blank space in it, then it must have been quoted, so put quotes around it. If you don't like this algorithm, the source code is included and you can change it any way you like. Since I don't have the Lattice compiler, I cannot be sure that my changes will work under Lattice. That is why I made all my changes #ifdef AZTEC_C, a constant that is automatically defined by Manx C after version 3.4a. Enjoy the program! SHAR_EOF if test 2561 -ne "`wc -c README`" then echo shar: error transmitting README '(should have been 2561 characters)' fi echo shar: extracting README.peck '(2695 characters)' cat << \SHAR_EOF > README.peck /* -------------- runbackground.c --------------- SUMMARY: A Workbench Disk can be used to autostart an application through the use of the startup script and close the startup CLI. Users have commented that it is not possible to start a process going from the startup script and then cause the initial CLI to go away. Here is the solution to that problem, named appropriately: RUNBACKGROUND which starts and runs a background task. This does indeed allow you to create a startup script that will set up your workbench running any programs you might wish, removing the initial CLI in the process. Your s/startup-sequence can contain lines such as the following: RUNBACKGROUND -3 clock RUNBACKGROUND utilities/calculator RUNBACKGROUND -5 utilities/notepad where RUNBACKGROUND is the command and the second parameter is the filename which may be preceded by a flag-variable that specifies an optional delay time. The delay can be from 0 to 9, for the number of seconds that the startup script should sleep while allowing the background task to load and start. I've put that in to minimize thrashing of the disk as it tries to load several projects at once. LIMITATIONS: The program that you run cannot require any input from an interactive CLI that starts it. Additionally, you cannot specify any file redirection in the command line since this program provides the redirection for you already. If you need to use redirection for your command, you can modify the source code where shown, thus allowing the redirection to become one of the parameters passed through to your program. RUNBACKGROUND does pass your command line parameters to the program you wish to start, but limits the total length of your command string to 227 (255 minus the 28 characters for "RUN >NIL: <NIL: " preceding your own file pathname and ">NIL: < NIL: " following it.) LINKING INFORMATION: (Amiga/Lattice C) use -v option for pass 2 (lc2 -v filename.q) to disable stack checking code installation. (stack checking code sometimes is incorrect). FROM lib:Astartup.obj runbackground.o TO runbackground LIBRARY lib:amiga.lib, lib:lc.lib **************************** NOTE: ******************************** If you use Lstartup.obj, it won't let the startup CLI go away. This is because the source code for Lstartup.asm either opens its own window or uses an existing CLI window (Open("*",....)), so that it has some guaranteed place to put the output. Astartup.obj does not do this. ********************************************************************* Hope this helps. robp. */ SHAR_EOF if test 2695 -ne "`wc -c README.peck`" then echo shar: error transmitting README.peck '(should have been 2695 characters)' fi # End of shell archive exit 0
ain@j.cc.purdue.edu (Patrick White) (07/27/88)
Submitted by: barrett@crabcake.cs.JHU.EDU Summary: Runs a program in the background without attachments to the CLI. Poster Boy: Patrick White (ain@j.cc.purdue.edu) Archive Name: binaries/amiga/volume8/runback2.b.sh.Z tested. NOTES: I tried it, but didn't tru compiling it. Reshared it to separate sources, docs, and binaries. It worked perfectly except when I tried to runback the info.library.. but that is a dumb thing to be doing anyway :-) (did it cause older versions died when you tried to run soemthign that was not there). . -- Pat White (co-moderator comp.sources/binaries.amiga) ARPA/UUCP: j.cc.purdue.edu!ain BITNET: PATWHITE@PURCCVM PHONE: (317) 743-8421 U.S. Mail: 320 Brown St. apt. 406, West Lafayette, IN 47906 [archives at: j.cc.purdue.edu.ARPA] ======================================== # 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: # runback.uu # This archive created: Fri Jul 8 11:33:10 1988 # By: Patrick White (PUCC Land, USA) echo shar: extracting runback.uu '(10122 characters)' cat << \SHAR_EOF > runback.uu begin 644 RunBack M #\P # ( 9\ K $ /I &?$[Z"&A. M5?[<0JW^W$*M_N@K? '_^ RM @ (;19(>@)T(&T #"\H 1.N@@* M4$]*@&9.2'H"8$ZZ#+A83TAZ H].N@RN6$](>@*Q3KH,I%A/2'H"TTZZ#)I8 M3TAZ O=.N@R06$]*K?[H9PY(> $$+RW^Z$ZZ&/A03T*G3KH6*EA/(&T #"MH M 3^]"!M_O12K?[T#! +694(&T #"MH C^\"M\ _[L(&W^] P0 #!M M)B!M_O0,$ Y;AP@;?[T$!!(@$C D+P P<C).NA=>4H K0/_X#*T # M AM /].4ZT "& 2(&T #"MH 3^\"M\ O[L+RW^\$ZZ R!83RM _N!* MK?[@9A(O+?[P2'H";$ZZ"]103V _Q!(>0 ! !(> $$3KH8$E!/*T#^Z$JM M_NAF'B\M_N!.NA>X6$](>@)23KH+HEA/0J=.NA506$]@+B\M_N@O+?[@3KH7 M(E!/*T#__"!M_NA*J $;Q(O+?[P2'H",DZZ"VY03V _JI(> $$+RW^Z$ZZ M%]A03R\M_N!.NA=>6$](> /N2'H"+TZZ%RI03RM _N1(>@(F2&W^^4ZZ!E10 M3R\M_O!(;?[Y3KH*)%!/2'H"&TAM_OE.N@H64$]3K0 (4ZT "$JM AO;$AZ M @U(;?[Y3KH)^E!/("W^[.6 (&T #"\P" !.N@7<6$\K0/[<2JW^W&<.2'H! MXTAM_OE.N@G.4$\@+?[L4JW^[.6 (&T #"\P" !(;?[Y3KH)LE!/2JW^W&<. M2'H!M4AM_OE.N@F>4$]@BB\M_N0O+?[D2&W^^4ZZ%C1/[P ,*T#__$JM__QG M#B\M_O!(>@&%3KH*<%!/+RW_^$ZZ%>983TY=3G4_ %5S86=E.B!254Y"04-+ M1U)/54Y$(%L@+3QL;V%D9&5L87D^72 \;F%M93X@6SQP87)M*',I/ET* " @ M(" @(" @("!W:&5R92!O<'1I;VYA;"!L;V%D9&5L87D@:7,@,"TY+ H (" @ M(" @(" @('-P96-I9FEE9"!I;B!S96-O;F1S(&9O<B!T:&4@0TQ)"@ @(" @ M(" @(" @=&\@<VQE97 L('=A:71I;F<@9F]R('1A<VL@=&\@;&]A9 H (" @ M(" @(" @("AM:6YI;6EZ97,@:6YT97(M=&%S:R!D:7-K+71H<F%S:&EN9RD* M "5L<SH@0V]M;6%N9"!N;W0@9F]U;F0* %)A;B!O=70@;V8@;65M;W)Y(0H M0V%N;F]T(&]P96X@)6QS+BXN(&UA>6)E(&$@9&ER96-T;W)Y/PH 3DE,.@!2 M54X@/DY)3#H@/$Y)3#H@ " ^3DE,.B \3DE,.B ( B "( 4W1A<G1E9" E M;',@87,@82!B86-K9W)O=6YD('1A<VL* !.5?[\+RT "$ZZ "I83R\ 2&W^ M_$ZZ ]A03TAX__Y(;?[\3KH4?%!/*T#__" M__Q.74YU3E7^BD*G3KH4]%A/ M*T#__"!M__P@* "LY8 K0/_X2JW_^&8*2'@ "DZZ$B183TAY $ 4AX 01. MNA2P4$\K0/_P9A1(>@&@3KH(3EA/2'@ %$ZZ$?I83R!M__PK: "X_^P@;?_\ M(7S_____ +A";?_>0JW_VF <("W_VB!M @,, Z" !F"#M\ '_WF 64JW_ MVB\M A.N@,P6$\B+?_:LH!MTDAM_MHO+?_P+RT "$ZZ 4A/[P ,.T#_XF<< M2FW_WF86(&T "$H09PXO+0 (2&W^VDZZ N)03TIM_^)F "$2FW_WF9\.WP M ?_@(&W_^" H CE@"M __1@2B!M__0O* $3KH2_EA/*T#_Z$IM_^!G#BMM M_^C_Y' .T#_X$C 2&W^VB\M__ O+0 (3KH R$_O P[0/_B(&W_]" 0Y8 K M0/_T2JW_]&<&2FW_XF>J2FW_X&8*+RW_Y$ZZ$J983TIM_^)F2$IM_]YF0DAZ M (5(;?Z*3KH"/E!/+RT "$AM_HQ.N@(P4$](;?[:+RW_\$AM_HIA8$_O P[ M0/_B9PY(;?Z*2&W^VDZZ @I03R!M__PA;?_L +A*K?_P9PY(> $$+RW_\$ZZ M$T903TIM_^)G"D'M_MH@"$Y=3G5P ?]T(&5N;W5G:"!M96UO<GD* $,Z M $Y5__I";?_Z2'C__B\M A.NA)>4$\K0/_\9S0O+0 ,+RW__$ZZ$@Y03TJ M9Q@[? !__HO+0 0+RT #"\M__QA&$_O PO+?_\3KH27%A/,"W_^DC 3EU. M=4Y5__)";?_R(&T $$(0*VT "/_X2JW_^&=T+RT #"\M__A.NA&V4$]*@&<T M(&T # PH " "&\H(&T $$H09PY(>@"P+RT $$ZZ +!03R!M Q0B"\(+RT M$$ZZ )Y03RMM__C_]"\M__A.NA'66$\K0/_X2FW_\F<,+RW_]$ZZ$<Y83V & M.WP ?_R8(8@;0 ,#"@ ( (;SY"K?_\8"0@+?_\(&T $ PP "\( &80("W_ M_"!M ! 1O Z" !@%E*M__PO+0 03KH JEA/(BW__+* ;<I@#$AZ !HO+0 0 M81A03R\M !!.N@"*6$].74YU+P!204TZ !.5?\ +RT "$AM_P!.N@!<4$\O M+0 ,+RT "$ZZ $Y03TAM_P O+0 ,3KH 4%A/T*T ""\ 3KH -%!/3EU.=4Y5 M__PK;0 (__P@;?_\2A!G%B!M__Q2K?_\#! (&8&< %.74YU8.)P &#V(&\ M!" ((F\ "!#99OQ.=2!O 0@"$H89OR1P" (4X!.=3 \?_]@!# O Y30&L4 M(&\ !")O BQ"68,4TA*&%?(__9P $YU8P1P 4YU</].=6%P0^R"6D7L@EJU MR68.,CP %6L(= BPE')__PI3X)>+'@ !"E.@F)(YX" ""X ! $I9Q!+^@ ( M3J[_XF &0J?S7TYS0_H ($ZN_F@I0()F9@PN/ #@ =.KO^48 1.N@ :4$]. M=61O<RYL:6)R87)Y $GY !__DYU3E4 "\*2'D 0 ,"R"3L'\ 8O $ZZ M$% I0()J4$]F%$*G2'D 0 3KH0$%!/+FR"7DYU(&R":D)H 0@;()J,7P M 0 0(&R":C%\ $ "B!L@EX@+()>D*@ !%" *4"";B!L@FX@O$U!3EA"ITZZ M$ @D0$JJ *Q83V<P+RT #"\M @O"DZZ +(I? &"<B!L@FH :( 0@ M;()J &B *3^\ #&!"2&H 7$ZZ$"1(:@!<3KH/YBE @G8@;()V2J@ )%!/ M9Q @;()V(F@ )"\13KH.K%A/+RR"=B\*3KH">"EL@G:">E!/3KH.V"!L@FH@ M@$ZZ#PX@;()J(4 !F<62'@#[4AZ "Q.N@[J(&R":B% Q03R\L@GHO+()^ M3KKU^$*G3KH,FD_O PD7TY=3G4J $Y5 !(YPPP)&T $"!M A*J "L9Q@@ M;0 (("@ K.6 * @1" H !#E@"9 8 0F;()0$!-(@$C T*T #%2 *4""@D*G M+RR"@DZZ#N(I0(*&4$]F"$S?##!.74YU$!-(@$C *@ O!2!+4H@O""\L@H9. MN@&.(&R"AM'%0_H!6!#99OPO+0 ,+PHO+(*&3KH!3B!L@H9",%@ *7P ! M@GX@;(*&T<4F2%*+)$M/[P 8$!-(@$C *@"PO "!G(+J\ "6<8NKP M ,9Q"ZO UG"+J\ "F8$4HM@S P3 "!M ",#!, (F8R4HL@2U*+ M$!!(@$C *@!G("!*4HH0A;J\ (F80#!, (F8$4HM@!D(J__]@ F#28$0@ M2U*+$!!(@$C *@!G,+J\ (&<HNKP )9R"ZO QG&+J\ #6<0 MNKP *9P@@2E**$(5@PB!*4HI"$$J%9@)3BU*L@GY@ /\\0A)"IR L@GY2 M@.6 +P!.N@VF*4"">E!/9@A"K()^8 #^OGH )FR"AF >( 7E@"!L@GHABP@ M($L@"$H89OR1P%.(4HC7R%*%NJR"?FW<( 7E@"!L@GI"L @ 8 #^@B ,#Q_ M_V $,"\ #B!O 1*&&;\4T@B;P (4T 0V5?(__QG D(0("\ !$YU3.\# $ M( @B+P ,8 (0V5?)__QG!E)!8 )"&%')__Q.=4Y5 !(YPXP)&T "$*G2'H MCDZZ#3PI0(**4$]F"$S?#'!.74YU(&T #")H "0O*0 $3KH-;"@ 6$]G4DAZ M &T@1"\H #9.N@T^)D!*@%!/9S1(> /M+PM.N@Q$+ !03V<D( ;E@"H ($4E M: ( *0E1@"<2'@#[4AZ #A.N@P@)4 H%!/+P1.N@T*6$\O+(**3KH,8D*L M@HI83V" :6-O;BYL:6)R87)Y %=)3D1/5P J $Y5 !(;0 ,+RT "$AZ!*!. MN@"03^\ #$Y=3G5.50 2.<(("1M ! ,K0 0 %&8((&T ""@08!1*K0 , M;P@@;0 (*!!@!B!M @H$$*M !1*K0 ,;!)$K0 ,2H1L"D2$*WP ! !0B M+0 ,( 1.N@/60>R E.*%+ ( "(M P@!$ZZ \XH &;>2JT %&<&4XH4O M M( I,WP003EU.=4Y5_Q1(YP@P)&T ""9M Q"K?_X*VT $/_\($M2BQ 02(!( MP"@ 9P #-+B\ )68 PY"+?\B*WP !__0K? "#_\"M\ G$/_L M($M2BQ 02(!(P"@ L+P M9A!"K?_T($M2BQ 02(!(P"@ N+P P9A0K M? ##_\"!+4HL0$$B 2, H +B\ *F8:(&W__%BM__PK4/_H($M2BQ 0 M2(!(P"@ 8#1"K?_H8")R"B M_^A.N@G>T(20O # K0/_H($M2BQ 02(!( MP"@ 0>R %0@P )( &;2N+P N9F(@2U*+$!!(@$C * "PO "IF&B!M M__Q8K?_\*U#_["!+4HL0$$B 2, H & T0JW_[& B<@H@+?_L3KH)=-"$D+P M P*T#_["!+4HL0$$B 2, H $'L@!4(, "2 !FTBM\ !/_DN+P !L M9A8@2U*+$!!(@$C * K? 3_Y& 4N+P !H9@P@2U*+$!!(@$C * @ M!& ((K? C_X& <*WP *_^!@$BM\ $/_@8 @K?/____;_X"\M M_^1(;?\B+RW_X"\M__Q.NOVR*T#_W" M_^31K?_\3^\ $&!<(&W__%BM__PB M4"M)_]P@"4H99OR3P%.)*TG_Y&!*(&W__%BM__PH$$'M_R$K2/_<$(1@*)"\ M 8V?B4X!GDI"\ "V< _VQ9@&>R58!G /]L5X!G /]P8,Q![?\BD>W_ MW"M(_^0@+?_DL*W_[&\&*VW_[/_D2JW_]&=P(&W_W P0 "UG"B!M_]P,$ K M9C0,K0 ##_\&8J4ZW_Z"!M_]Q2K?_<$!!(@$C +P!.DK"\_____UA/9@IP M_TS?#!!.74YU8!@O+?_P3I*PO/____]83V8$</]@XE*M__@@+?_H4ZW_Z+"M M_^1NVD*M_^!@)"!M_]Q2K?_<$!!(@$C +P!.DK"\_____UA/9@1P_V"J4JW_ MX"!M_]Q*$&<*("W_X+"M_^QMRB M_^#1K?_X2JW_]&8J8!I(> @3I*PO/__ M__]83V8&</]@ /]P4JW_^" M_^A3K?_HL*W_Y&[88!@O!$Z2L+S_____6$]F M!G#_8 #_2%*M__A@ /S ("W_^& _SA(YT@ 0H1*@&H$1(!21$J!:@9$@0I$ M %A/DI$9P)$@$S? !)*@$YU2.=( $*$2H!J!$2 4D1*@6H"1(%A&B !8-@O M 6$2( $B'TJ 3G4O 6$&(A]*@$YU2.<P $A!2D%F($A!-@$T $) 2$" PR( M2$ R H+#, %"04A!3-\ #$YU2$$F 2( 0D%(04A 0D!T#]" TX&V@6($DH-2 M0%'*__),WP ,3G5.50 2&R K"\M A.N@ (4$].74YU3E4 "\$*"T ""\M M PO!$ZZ #2XO I03V8F(&T #! H Q(@$C " !V<42'C__R\M Q. MN@#\4$\H'TY=3G5@^$Y5 O"B1M P@4K'J 1E&B M C O /\O "\* M3KH SE!/)%].74YU(%)2DA M L0@$B 2,# O /]@Y$Y5 O"D'L@)8D M2"!*U?P 6+PAA$%A/0>R"3K7(9>HD7TY=3G5.50 2.<(("1M AX " * M9@IP_TS?!!!.74YU2BH #&=2""H @ ,9PQ(>/__+PIA5"@ 4$\0*@ -2(!( MP"\ 3KH%-(B ""H 0 ,6$]G"B\J A.N@(\6$\(*@ % QG$B\J !).N@+8 M+RH $DZZ B)03T*20JH !$*J A"*@ ,( 1@CDY5__Y(YP@@)&T "$'Z_T0I M2(*.""H ! ,9PIP_TS?!!!.74YU""H @ ,9S0@4I'J @H""\$+RH "! J M U(@$C +P!.N@*6L(1/[P ,9Q (Z@ $ Q"DD*J 1P_V"\#*W_____ QF M$ BJ ( #$*20JH !' 8*)*J@ (9@@O"DZZ *183PQJ $ $&8P&VT #___ M2'@ 4AM__\0*@ -2(!(P"\ 3KH",K"\ 4_O QFF" M Q@ /]>)*H M"# J !!(P-"J @E0 $".H @ ,(%)2DA M \0@$B 2,# O /]@ /\N M3E4 "\*0>R EB1(2BH #&<8U?P 60>R"3K7(90AP "1?3EU.=6#B0I)" MJ@ $0JH "" *8.I.5?_\+PHD;0 (2'@$ $ZZ ,(K0/_\6$]F\ $ $"!* MT?P .)4@ ""1?3EU.=35\! $ CJ $ #"5M__P "! J U(@$C +P!. MN@#>2H!83V<& "H @ ,8,Q.50 2.< ,"1L@EI@%"92("H !%" +P O"DZZ M!.!03R1+( IFZ$*L@EI,WPP 3EU.=4Y5 O"D'Z_\8I2(*20J<@+0 (4( O M $ZZ!(8D0$J 4$]F"' )%].74YU)*R"6B5M @ !"E*@EH@"E" 8.9.50 M+RT "&&V6$].74YU3E4 $CG #"7RR1L@EI@#B!M A1B+'*9Q(F2B12( IF M[G#_3-\, $Y=3G4@"V<$)I)@!"E2@EH@*@ $4( O "\*3KH$-G 4$]@V$Y5 M O"G(&("T "$ZZ N D0-7L@FI*K0 (;1(P+().2, B+0 (LH!L!$J29A I M? *"EG#_)%].74YU<@8@+0 (3KH"J"!L@FHO, @ 3KH#)$J 6$]G!' ! M8 )P ?E4 "\M A.N@+.2H!83V8.3KH"^"E @I9P_TY=3G5P Ϥ M $CG#" H+0 (3KH =G(&( 1.N@)2)$#5[()J2H1M#C L@DY(P+B ; 1*DF82 M*7P "@I9P_TS?!#!.74YU,"H !,!\ -F#"E\ !8*6</]@XB\M ! O M+0 ,+Q).N@+@*@"PO/____]/[P ,9@Q.N@)R*4""EG#_8+H@!6"V3E7__$AX M$ !"ITZZ U K0/_\" #%!/9Q)*K()R9@@@+?_\3EU.=4ZZ 9P &#T3E4 M $AX 1(>@ <3KH"7B\ 3KH"?$AX %.N@ .3^\ $$Y=3G5>0PH 3E4 $JL M@HYG!B!L@HY.D"\M A.N@ (6$].74YU3E7__"\$*VT "/_\2JR":F<L> !@ M"B\$3KH _%A/4H0P+().2,"X@&WL,"R"3L'\ 8O "\L@FI.N@)R4$]*K(*2 M9P8@;(*23I!*K()49PHO+()43KH!XEA/2JR"FF<((&R"FB"L@IY*K(*B9PHO M+(*B3KH!_EA/2JR"IF<*+RR"IDZZ >Y83TJL@JIG"B\L@JI.N@'>6$]*K(*N M9PHO+(*N3KH!SEA/+'@ ! @N 0!*6<4+PU+^@ *3J[_XBI?8 9"I_-?3G-* MK()V9BI*K(*&9R(O+(*"+RR"ADZZ <X@+()^4H#E@"\ +RR">DZZ ;Q/[P 0 M8 Y.N@&F+RR"=DZZ =983R M__PN;()>3G4H'TY=3G5.50 2.<.("@M AR M!B $3KH 1"1 U>R":DJ$;0XP+().2,"X@&P$2I)F$BE\ H*6</],WP1P M3EU.=3 J 3 ?( 9@@O$DZZ "Y83T*2< !@X$CG< T <3 )@%(0\; 2$-" M0]2#2$# P4A 0D#0@DS? Y.=2(O 0L;()F3N[_W$[Z (B+P $+&R"9D[N M_X(B+P $+&R"9D[N_SHB+P $+&R"9D[N_[A.^@ "3.\ !@ $+&R"9D[N_YI, M[P . 0L;()F3N[_(BQL@F9.[O_*+&R"9D[N_WPB+P $+&R"9D[N_RA.^@ " M3.\ !@ $+&R"9D[N_ZQ.^@ "3.\ !@ $+&R"9D[N_^(L;()F3N[_Q"(O 0L M;()F3N[_+D[Z (B+P $+&R"9D[N_Z9,[P . 0L;()F3N[_T$CG 01,[R" M PL;()B3J[_E$S?((!.=4[Z (B;P $+&R"8D[N_F).^@ "3.\ P $+&R" M8D[N_SI.^@ "(F\ !"QL@F).[O[:+&R"8D[N_WQ.^@ "(F\ !" O @L;()B M3N[_+B!O 0L;()B3N[^C"QL@F(B;P $("\ "$[N_=@B;P $+&R"8D[N_H9, M[P # 0L;()B3N[^SB!O 0L;()B3N[^@$SO P !"QL@HI.[O^@(&\ !"QL M@HI.[O^F(&\ !"QL@HI.[O^R /L 0 $ C> _( M /J EC Q,C,T-38W.#EA8F-D968 @(" @(" @(" P,# P," @(" @ M(" @(" @(" @(" @()! 0$! 0$! 0$! 0$! 0$ ,# P,# P,# P,0$! 0$! M0 D)"0D)"0$! 0$! 0$! 0$! 0$! 0$! 0$!0$! 0$! "@H*"@H* @(" @(" M @(" @(" @(" @(" @) 0$! ( ! $ M 0$ ! $" 0 M M M M M M M M F 4 _( /K 0 _( end SHAR_EOF if test 10122 -ne "`wc -c runback.uu`" then echo shar: error transmitting runback.uu '(should have been 10122 characters)' fi # End of shell archive exit 0