Peter_Van_Epp@cc.sfu.ca (01/07/90)
This is the posting (several people have requested it) of the installation of Terrence W. Holm's original EMS driver into Minix 1.5.0 (part of the original post is reproduced below), as well there is a seperate kludge (and it is a kludge!) of the Ramdisk load in fs to not require the whole ram disk to be loaded (when you got 2 megs and only need to load 500k the saving is substantial!). A couple of disclaimers: I have only used the Zucker board modifications (the cdif files were created on the system using the 2M ram disk so I know at least that works), but NOT with a real Intel Above-board because I haven't got one, and since I modified the original code for conditional assembly to select either my board or the real thing the Above-board setting may not work ( I would like to know and get the fixes if you fix it though!). If you have a clone board (like the Zucker that I have) you may have to disassemble the DOS EMS driver to find the I/O port addresses and the initialization sequence (that is how the Zucker driver came to be). Of course we all owe a round of thanks to Terrence Holm for both this EMS driver and all the other good stuff that he has done for Minix over the years. Now for installation: this posting is in 2 files, shar ed and then uue encoded (this is being sent from an IBM host which likes to mangle tabs and spaces) cdiff ed from 1.5.0 sources which match Ast's crc list. The first part is the is the actual EMS driver and is independent of the ram disk mod, changes here are all in the kernel (except for /usr/include/minix/config.h which has the config info for the board, NOTE! you will need to change the settings in config.h to match your board!). Since I see someone just now asking about EMS for a 386, this seems to work on my PS/2 model 55 sx at work with a 386sx processor, but I have problems making root file systems that work on the machine (and a kernel that doesn't use EMS doesn't work at all!) so this may or amy not work on 286 and 386 machines with Minix 1.5.0. You should only need to apply the difs and remake the kernel to get EMS installed, part of the modification returns the amount of EMS ram availible to the mm (you need to set the amount you have in config.h the system doesn't check but will crash if you lie to it!), and will install the ram disk in EMS automatically. The second modification (it is seperate because it is a temporary kludge!) is to modify the super block (super.h), mkfs and the fs (fs/main.c) to load less than the full number of ram disk blocks. This works as follows (and only for a root file system made from a prototype file and then not modified on the fly!), one more field (media size) is added to the second line of the prototype file (ie. number of blocks, number of inodes , media size (new!) for example 2000 974 360 for a 2meg ram disk with 974 inodes that is going on a 360k disk). The media size byte should keep you from putting to much data on a disk (should because I just realized I didn't test this!). At the end of the file system create, mkfs reads the superblock again and writes the last zone number used into a new field in the super block. When the file system is loaded, the fs only loads the number of blocks mkfs wrote instead of the whole 2 megs (allowing you to load root from a floppy and saving time loading from a hard disk). This will eventually (I hope!) be replaced by the fs reading the zone map on the disk and only loading those blocks which have data in them (which will allow you to change the root image after mkfs makes the system, and which Andy (who suggested this method!) has said he will make part of the system if I do it). Here is the text part of the original EMS posting, followed by the 2 uuencoded shar files. ________________________________________________________________ Message: 1037797, Posted: 2:38pm PDT, Wed May 18/88, 217 lines To: userID=MINX From: tholm@UVICCTR.UUCP Subject: need test site for expanded memory EFTH Minix request - May 1988 - need test site for expanded memory We are looking for Minix users who would like to test our "expanded" memory handler on their PC/XT. We converted to "expanded" memory because our two AT clone keyboards would not work with "extended" memory. (Yes, its true.) The following code has been tested on AT's with real Intel Above Board "expanded" memory. We want someone with a PC/XT to try this code. If you know about the real hardware for the expanded memory, then please tell us - or fix up this code to the standard. [We had to reverse engineer the card and disassemble LIM 4.0 to obtain what we have so far.] .... (beta test site request, old minix information and original code deleted!) To install this you must do all of Tanenbaum's updates for "extended" memory, then insert this routine into klib88.s INSTEAD of his "em_xfer". Note that you must update definitions for where the i/o location is (see the switches on your memory card) and where to place the mapped-in pages into memory. Only the stretches C0000-CFFFF or D0000-DFFFF can be used (see if there is anything else in the way, like a disk controller). ("definitions" above are noww done in /usr/include/config.h ) original from - Terrence W. Holm EMS changes (cdiffed, shared, and uue uuencoded). ----------------- cut here -------------------------- table !"#$%&'()*+,-./0123456789:;<=>? @ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_ begin 644 ems.shar M96-H;R!X("T@8V]N9FEG+F@N8V1I9@IS960@)R]>6"]S+R\O)R ^(&-O;F9Iz M9RYH+F-D:68@/#P@)R\G"E@J*BH@+W5S<B]S<F,O,2XU7V)A<V4O:6YC;'5Dy M92]M:6YI>"]C;VYF:6<N: E7960@1&5C(#(W(#$X.C(X.C4P(#$Y.#D*6"TMx M+2 O=7-R+VEN8VQU9&4O;6EN:7@O8V]N9FEG+F@)5V5D($IA;B @,R P,CHRw M-SHR.2 Q.3DP"E@J*BHJ*BHJ*BHJ*BHJ*BH*6"HJ*B U,2PU-R J*BHJ"E@@v M("-D969I;F4@1$5&055,5%]#3$%34R @(" @(# )+RH@9FQO<'!Y+F,@+2 Su M(&]R(#4@=&\@9V5T(&]N;'D@=&AA="!S:7IE("HO"E@@("-D969I;F4@3$E.t M15=205 @(" @(" @(" @(# )+RH@8V]N9FEG+F,@+2!W<F%P(&QI;F5S(&%Ts M(&-O;'5M;B X," J+PI8(" C9&5F:6YE($Y/7TA!3D132$%+12 @(" @(" Pr M"2\J(')S,C,R+F,@+2!D;VXG="!U<V4@0U13+U)44R!H86YD<VAA:VEN9R Jq M+PI8(2 C9&5F:6YE(%-455!)1%]724Y)7T%$2E535" P"2\J("IW:6YI+F,@p M+2!S:VEP(&]D9" Q<W0@<V5C=&]R(&]F('!A<G1I=&EO;BHO"E@@( I8(" Oo M*B!4:&5S92!C;VYF:6=U<F%T:6]N(&1E9FEN97,@8V]N=')O;"!D96)U9V=In M;F<@86YD('5N9FEN:7-H960@8V]D92X@*B\*6" @(V1E9FEN92!&3$]04%E?m M5$E-24Y'(" @(" @, DO*B!F;&]P<'DN8R M(&9O<B!F:6YE('1U;FEN9R!Fl M;&]P<'D@9')I=F5R("HO"E@M+2T@-3$L.3 @+2TM+0I8(" C9&5F:6YE($1%k M1D%53%1?0TQ!4U,@(" @(" P"2\J(&9L;W!P>2YC("T@,R!O<B U('1O(&=Ej M="!O;FQY('1H870@<VEZ92 J+PI8(" C9&5F:6YE($Q)3D574D%0(" @(" @i M(" @(" P"2\J(&-O;F9I9RYC("T@=W)A<"!L:6YE<R!A="!C;VQU;6X@.# @h M*B\*6" @(V1E9FEN92!.3U](04Y$4TA!2T4@(" @(" @, DO*B!R<S(S,BYCg M("T@9&]N)W0@=7-E($-44R]25%,@:&%N9'-H86MI;F<@*B\*6"$@(V1E9FENf M92!35%50241?5TE.25]!1$I54U0@,0DO*B J=VEN:2YC("T@<VMI<"!O9&0@e M,7-T('-E8W1O<B!O9B!P87)T:71I;VXJ+PI8(2 C9&5F:6YE($%$05!414-?d M,C W, D@(" Q"2\J('AT7W=I;FDN8R M($%D87!T96,@,C W,"!R<FP@8V]Nc M=')O;&QE<B J+PI8(2 C9&5F:6YE($5-4PD)(" @,0DO*B!%35,@*&5X=&5Nb M9&5D*2!R86T@:7,@<')E<V5N="!O;B!T:&ES('-Y<W1E;0DJ+PI8(2 *6"$@a M(VEF($5-4PI8(2 *6"$@(V1E9FEN92!%35-?4D%-7U-)6D4@(" @(" @,C Pz M, DO*B!H;W<@;75C:" H:6X@2RD@:7,@<')E<V5N= D)*B\*6"$@(V1E9FENy M92!:54-+15()"2 @(#$@(" @+RH@8VAA;F=E(%I50TM%4B!T;R!!0D]615]"x M3T%21"!F;W(@(" @("HO"0I8(2 *6"$@(VEF($%"3U9%7T)/05)$"E@A( I8w M(2 C9&5F:6YE($U!4%]004=%(" @"2 @(#!X0S P," O*B!7:&5R92!T:&4@v M97AP86YD960@;65M;W)Y(&%P<&5A<G,)("HO"E@A("-D969I;F4@34%0,0D)u M(" @,'@X, D@("\J(%1H97-E(#0@<V5T('=H97)E('1H92!P86=E<R!A<F4@t M(" @("HO"E@A("-D969I;F4@34%0,@D@"2 @(# )(" O*B!M87!P960@*#!Xs M0S P,"!O<B P>$0P,# I(" @(" @(" @(" J+PI8(2 C9&5F:6YE($U!4#,)r M"2 @(# )(" O*B!#:&%N9V4@=&AI<R!T;R P>#@P(&9O<B P>$0P,# A(" @q M(" J+PI8(2 C9&5F:6YE($U!4#0)"2 @(# )(" O*B H86YD($U!4%]004=%p M('1O;R$I(" @(" @(" @(" @(" @(" J+PI8(2 C9&5F:6YE($584%]03U)4o M(" @"2 @(#!X,#(U." O*B!&:7)S="!I+V\@<&]R="!T;R!C;VYT<F]L(&5Xn M<&%N9&5D(&UE;6]R>2 J+PI8(2 C9&5F:6YE($Y%6%1?4$]25" @"2 @(#!Xm M-# P," O*B!/9F9S970@=&\@:&EG:&5R('!O<G1S"0D@*B\*6"$@(V1E9FENl M92!.15A47U!!1T4@( D@(" P># T,# @+RH@4&%G97,@87)E(#$V2PD)"2 Jk M+PI8(2 C96YD:68@*$%"3U9%7T)/05)$*0I8(2 *6"$@(VEF(%I50TM%4@I8j M(2 *6"$@(V1E9FEN92!-05 Q"0D@(" P"0I8(2 C9&5F:6YE($U!4#()( D@i M(" P"2\J(%1H97-E(#0@;6%G:6,@;G5M8F5R<R!S970@=&AE(&%D9')E<W,@h M*B\*6"$@(V1E9FEN92!-05 S"0D@(" P"2\J('=H97)E('1H92 Q-DL@14U3g M('!A9V5S(&%P<&5A<BP)*B\*6"$@(V1E9FEN92!-05 T"0D@(" P"2\J("@Pf M>$0P,# @:6X@=&AI<R!C87-E(&9O<B!T:&ES(&)O87)D(2 J+PI8(2 C9&5Fe M:6YE($584%]03U)4(" @"2 @(#!X,#(U." O*B!&:7)S="!I+V\@<&]R="!Td M;R!C;VYT<F]L(&5X<&%N9&5D(&UE;6]R>2 J+PI8(2 C9&5F:6YE($Y%6%1?c M4$]25" @"2 @(#!X-# P," O*B!/9F9S970@=&\@:&EG:&5R('!O<G1S"0DJb M+PI8(2 C9&5F:6YE($U!4%]004=%(" @"2 @(#!X1# P," O*B!7:&5R92!Ta M:&4@97AP86YD960@;65M;W)Y(&%P<&5A<G,)*B\*6"$@(V1E9FEN92!.15A4z M7U!!1T4@( D@(" P># T,# @+RH@4&%G97,@87)E(#$V2PD)"2HO"E@A("-Ey M;F1I9B H6E5#2T52*2 *6"$@"E@A("-E;F1I9B H14U3*0I8(" *6" @+RH@x M5&AE<V4@8V]N9FEG=7)A=&EO;B!D969I;F5S(&-O;G1R;VP@9&5B=6=G:6YGw M(&%N9"!U;F9I;FES:&5D(&-O9&4N("HO"E@@("-D969I;F4@1DQ/4%!97U1)v M34E.1R @(" @(# )+RH@9FQO<'!Y+F,@+2!F;W(@9FEN92!T=6YI;F<@9FQOu M<'!Y(&1R:79E<B J+PHO"F5C:&\@>" M(&UI<V,N8RYC9&EF"G-E9" G+UY8t M+W,O+R\G(#X@;6ES8RYC+F-D:68@/#P@)R\G"E@J*BH@+W5S<B]S<F,O,2XUs M7V)A<V4O:V5R;F5L+VUI<V,N8PE7960@1&5C(#(W(#(Q.C0X.C4X(#$Y.#D*r M6"TM+2 N+B]K97)N96PO;6ES8RYC"5-U;B!$96,@,S$@,30Z,#$Z,S @,3DXq M.0I8*BHJ*BHJ*BHJ*BHJ*BHJ"E@J*BH@-C8L-S$@*BHJ*@I8+2TM(#8V+#<Wp M("TM+2T*6" @"0EM96U?='EP95LS72!\/2 Q.PI8(" )?0I8(" @('T*6"L@o M(VEF($5-4PI8*R @(&UE;5]S:7IE6S)=(#T@:U]T;U]C;&EC:RAE>'1?;65Mn M<VEZ92D["E@K(" @;65M7V)A<V5;,ET@/2!%35]"05-%(#X^($-,24-+7U-(m M2494.PI8*R @(&UE;5]T>7!E6S)=(#T@,3L*6"L@(V5N9&EF"E@K( I8("!]l M"E@@("-E;F1I9B O*B H0TA)4" ]/2!)3E1%3"D@*B\*6" @"B\*96-H;R!Xk M("T@:VQI8BYX+F-D:68*<V5D("<O7E@O<R\O+R<@/B!K;&EB+G@N8V1I9B \j M/" G+R<*6"HJ*B O=7-R+W-R8R\Q+C5?8F%S92]K97)N96PO:VQI8BYX"5=Ei M9"!$96,@,C<@,C Z,S(Z-#(@,3DX.0I8+2TM("XN+VME<FYE;"]K;&EB+G@)h M5V5D($IA;B @,R P,CHS.3HU.2 Q.3DP"E@J*BHJ*BHJ*BHJ*BHJ*BH*6"HJg M*B U,C L-3(U("HJ*BH*6"TM+2 U,C L-3(V("TM+2T*6" @"7!O< EB< D)f M?"!S=&%C:R!F<F%M92!N;W<@86=R965S('=I=&@@96U?>&9E<B=S"E@@( EJe M"5]E;5]X9F5R"E@@( I8*R C:69N9&5F($5-4PI8(" *6" @?"H]/3T]/3T]d M/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]c M/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3TJ"E@@('PJ"0D)"65M7WAF97()"0D)b M"2 @(" @*@I8*BHJ*BHJ*BHJ*BHJ*BHJ"E@J*BH@-C0R+#8T-R J*BHJ"E@Ma M+2T@-C0S+#@S." M+2TM"E@@( EP;W )8G *6" @"7)E= I8(" *6"L@(V5Lz M<V4*6"L@"E@K('P]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]y M/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T*6"L@x M?" @(" @(" @(" @(" @(" @(" @(" @(" @(" @("!E;5]X9F5R"E@K('P]w M/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]v M/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T*6"L@? I8*R!\(" @(" @u M(" @(" @(" H0VAA;F=E9"!F<F]M(&5X=&5N9&5D(&UE;6]R>2P@(" @,3DXt M."U-87DM,2 @969T:"D*6"L@?" @(" @(" @(" @(" @*&UO9&EF:65D(&9Os M<B!:=6-K97(@0F]A<F0@14U3(" @(#$Y.#@M4V5P="TR,"!P=F4I"E@K('P@r M(" @(" @(" @(" @("AM;V1I9FEE9"!F;W(@,2XU+C @(" @(" @(" @(" @q M(" Q.3DP+4IA;BTU(" @<'9E*0I8*R!\"E@K('P@('-T871U<R ](&5M7WAFp M97(H('-O=7)C92P@9&5S=&EN871I;VXL(&-O=6YT("D["E@K('P*6"L@? I8o M*R!\(" @(%=H97)E.@I8*R!\(" @(" @('-O=7)C92 @(" @(#H@061D<F5Sn M<R H,# P,# P+3 Y9F9F92P@,3 P,# P+3)F9F9F92D*6"L@?" @(" @("!Dm M97-T:6YA=&EO;B Z($%D9')E<W,@*# P,# P,"TP.69F9F4L(#$P,# P,"TRl M9F9F9F4I"E@K('P@(" @(" @8V]U;G0@(" @(" @.B!.=6UB97(@;V8@=V]Rk M9',@=&\@=')A;G-F97(@*# M,C P,"D@6S$V2V(@;6%X70I8*R!\(" @(" @j M('-T871U<R @(" @(#H@06QW87ES(# @*$]+*0I8*R!\"E@K('P*6"L@?" @i M17AE8W5T92!A('1R86YS9F5R(&)E='=E96X@=7-E<B!M96UO<GD@86YD(&5Xh M<&%N9&5D(&UE;6]R>2X*6"L@? I8*R!\("!4:&4@<V]U<F-E(&%N9"!D97-Tg M:6YA=&EO;B!C86X@8F4@:6X@96ET:&5R('1H92!L;W=E<B V-#!++"!O<B!Of M;@I8*R!\("!T:&4@9FER<W0@,DUB(&5X<&%N9&5D(&UE;6]R>2!C87)D+"!Te M:&5Y(&UU<W0@8F4@;VX@82!W;W)D(&)O=6YD87)Y+@I8*R!\("!4=V\@,39+d M8B!P86=E<R!A<F4@;6%P<&5D(&EN(&9O<B!A;B!E>'!A;F1E9"!M96UO<GD@c M<F5F97)E;F-E+"!S;PI8*R!\("!T:&%T('5P('1O(#$V2V(@8V%N(&)E('1Rb M86YS9F5R<F5D('=I=&AO=70@=V]R<GEI;F<@86)O=70@=&AE('!A9V4*6"L@a M?" @8F]U;F1A<GDN"E@K('P*6"L@?" @3F]T92!S971T:6YG<R!I;B!I;F-Lz M=61E+VUI;FEX+V-O;F9I9R!N965D('1O(&)E(&-H86YG960@<F5L871I;F<@y M=&\@"E@K('P@('!O<G0@861D<F5S<V5S(&%N9"!W:&5R92!T:&4@;65M;W)Yx M('=I;&P@8F4@;6%P<&5D(&EN+@I8*R!\(" *6"L@"E@K($U!4%]$051!.B @w M(" @(" @(" @(" @(" @(" @(" @?" @5&5L;',@;65M+B!C87)D('=H97)Ev M('1O(&UA<"!I;B!P86=E<PI8*R @(" @(" @("YB>71E(" @34%0,2 @(" @u M(" @(" @('P@("@@=F%L=65S(&1E9FEN960@:6X*6"L@(" @(" @(" N8GETt M92 @($U!4#(@(" @(" @(" @("!\(" @+W5S<B]I;F-L=61E+VUI;FEX+V-Os M;F9I9RYH("D*6"L@(" @(" @(" N8GET92 @($U!4#,*6"L@(" @(" @(" Nr M8GET92 @($U!4#0*6"L@"E@K(%]E;5]X9F5R.@I8*R @(" @(" @('!U<V@@q M(" @8G @(" @(" @(" @(" @('P@(%-A=F4@<F5G:7-T97)S"E@K(" @(" @p M(" @;6]V(" @("!B<"QS< I8*R @(" @(" @('!U<V@@(" @8G@*6"L@(" @o M(" @("!P=7-H(" @(&-X"E@K(" @(" @(" @<'5S:" @("!D> I8*R @(" @n M(" @('!U<V@@(" @<VD*6"L@(" @(" @("!P=7-H(" @(&1I"E@K(" @(" @m M(" @<'5S:" @("!D<PI8*R @(" @(" @('!U<V@@(" @97,*6"L@"E@K(" @l M(" @(" @<'5S:&8@(" @(" @(" @(" @(" @(" @?" @4V%V92!$1B!F;&%Gk M"E@K(" @(" @(" @8VQD(" @(" @(" @(" @(" @(" @(" @?" @075T;R!Ij M;F-R96UE;G0@*$1&(#T@,"D*6"L@"E@K("-I9B!:54-+15(*6"L@"E@K(" @i M(" @(" @;6]V(" @("!D>"PC15A07U!/4E0K,2 @?" @6G5C:V5R(&)O87)Dh M(&EN:71I86QI>F%T:6]N"E@K(" @(" @(" @;6]V8B @("!A;"PJ,0I8*R @g M(" @(" @(&]U=&(@(" @(" @(" @(" @(" @(" @('P@*&YO="!N965D960@f M9F]R($%B;W9E7V)O87)D(2D*6"L@(" @(" @("!M;W9B(" @(&%L+"HP>#@Qe M"E@K(" @(" @(" @;W5T8@I8*R @(" @(" @(&UO=B @(" @9'@L(T584%]0d M3U)4"E@K(" @(" @(" @;6]V8B @("!A;"PJ,'@X, I8*R @(" @(" @(&]Uc M=&(*6"L@(" @(" @("!M;W9B(" @(&%L+"HP"E@K(" @(" @(" @;W5T8@I8b M*R C96YD:68*6"L@"E@K( I8*R!\("!,;V%D('1H92 T(&)I="!M87!P:6YGa M(&1A=&$@:6YT;R!T:&4@97AP86YD960@;65M;W)Y(&-A<F0L('-O"E@K('P@z M('1H870@:70@:VYO=W,@=VAI8V@@<V5T(&]F(&%D9')E<W-E<R!T;R!U<V4@y M=&\@;6%P(&EN('1H92!P86=E<RX*6"L@"E@K(" @(" @(" @;6]V(" @("!Sx M:2PC34%07T1!5$$*6"L@(" @(" @("!M;W8@(" @(&-X+",T"E@K( I8*R Cw M:68@6E5#2T52"E@K( I8*R @(" @(" @(&UO=B @(" @9'@L(T584%]03U)4v M(" @('P@(&DO;R!A9&1R<R!O9B!M87 @<F5G:7-T97)S"E@K("-E;F1I9@I8u M*R *6"L@(VEF($%"3U9%7T)/05)$"E@K( I8*R @(" @(" @(&UO=B @(" @t M9'@L(T584%]03U)4*S$@('P@(&DO;R!A9&1R<R!O9B!M87 @<F5G:7-T97)Ss M"E@K("-E;F1I9@I8*R *6"L@<V5T7W5P.@I8*R @(" @(" @(&QO9&(@(" @r M(" @(" @(" @(" @(" @('P@($QO860@9G)O;2!-05!?1$%402!V96-T;W(*q M6"L@(" @(" @("!O=71B(" @(" @(" @(" @(" @(" @("!\("!/;FQY('1Hp M92!T;W @8FET(&ES('5S960*6"L@(" @(" @("!A9&0@(" @(&1X+"-.15A4o M7U!/4E0*6"L@(" @(" @("!L;V]P(" @('-E=%]U< I8*R *6"L@"E@K('P@n M(%!R;V-E<W,@=&AE('-O=7)C92!A9&1R97-S"E@K( I8*R @(" @(" @(&UOm M=B @(" @87@L-BAB<"D@(" @(" @('P@(%-O=7)C92!M<V(*6"L@(" @(" @l M("!T97-T8B @(&%L+"HP>&8P(" @(" @("!\("!497-T(&EF(&EN(&QO=R!Mk M96UO<GD*6"L@(" @(" @("!J;GH@(" @('-?97AP(" @(" @(" @("!\("!*j M=6UP(&EF(&YO= I8*R *6"L@(" @(" @("!M;W9B(" @(&-L+"HQ,@I8*R @i M(" @(" @('-H;" @(" @87@L8VP@(" @(" @(" @('P@($UA:V4@:6YT;R!Sh M96=M96YT("L@;V9F<V5T"E@K(" @(" @(" @;6]V(" @("!B>"PT*&)P*2 @g M(" @(" @?" @4V]U<F-E(&QS=PI8*R @(" @(" @(&UO=F(@(" @8VPL*C0*f M6"L@(" @(" @("!S:'(@(" @(&)X+&-L"E@K(" @(" @(" @861D(" @("!Ae M>"QB> I8*R @(" @(" @(&UO=B @(" @9',L87@@(" @(" @(" @('P@(%-Od M=7)C92!S96=M96YT"E@K(" @(" @(" @;6]V(" @("!S:2PT*&)P*0I8*R @c M(" @(" @(&%N9" @(" @<VDL(S!X,# P9B @(" @('P@(%-O=7)C92!S=&%Rb M="!A9&1R97-S"E@K(" @(" @(" @:FUP(" @("!G971?9&5S= I8*R *6"L@a M<U]E>' Z(" @(" @(" @(" @(" @(" @(" @(" @("!\("!3;W5R8V4@:7,@z M:6X@97AP86YD960@;65M;W)Y"E@K(" @(" @(" @<W5B8B @("!A;"PJ,'@Qy M," @(" @(" @?" @061D<BX@,3 P,# P(&ES(# @;VX@8V%R9 I8*R @(" @x M(" @('-H;&(@(" @86PL*C$*6"L@(" @(" @("!S:&QB(" @(&%L+"HQ"E@Kw M(" @(" @(" @;6]V(" @("!B>"PT*&)P*2 @(" @(" @?" @4V]U<F-E(&QSv M=PI8*R @(" @(" @(&UO=F(@(" @8VPL*C$T"E@K(" @(" @(" @<VAR(" @u M("!B>"QC; I8*R @(" @(" @(&%D9&(@(" @86PL8FP@(" @(" @(" @('P@t M(#<@8FET('!A9V4@<V5L96-T:6]N("@Q,C@@*B Q-DL@/2 R36(I"E@K(" @s M(" @(" @;W)B(" @("!A;"PJ,'@X," @(" @(" @?" @4V5T('1H92!E;F%Br M;&4@8FET"E@K(" @(" @(" @;6]V(" @("!D>"PC15A07U!/4E0*6"L@(" @q M(" @("!O=71B(" @(" @(" @(" @(" @(" @("!\("!-87 @:6X@=&AE('!Ap M9V4*6"L@(" @(" @("!I;F-B(" @(&%L"E@K(" @(" @(" @861D(" @("!Do M>"PC3D585%]03U)4"E@K(" @(" @(" @;W5T8B @(" @(" @(" @(" @(" @n M(" @?" @36%P(&EN('1H92!F;VQL;W=I;F<@<&%G90I8*R @(" @(" @(&UOm M=B @(" @87@L(TU!4%]004=%"E@K(" @(" @(" @;6]V(" @("!D<RQA>" @l M(" @(" @(" @?" @4V]U<F-E('-E9VUE;G0*6"L@(" @(" @("!M;W8@(" @k M('-I+#0H8G I"E@K(" @(" @(" @86YD(" @("!S:2PC,'@S9F9F(" @(" @j M?" @4V]U<F-E('-T87)T(&%D9')E<W,*6"L@"E@K( I8*R!\("!0<F]C97-Si M('1H92!D97-T:6YA=&EO;B!A9&1R97-S"E@K( I8*R!G971?9&5S=#H*6"L@h M(" @(" @("!M;W8@(" @(&%X+#$P*&)P*2 @(" @("!\("!$97-T:6YA=&EOg M;B!M<V(*6"L@(" @(" @("!T97-T8B @(&%L+"HP>&8P(" @(" @("!\("!4f M97-T(&EF(&EN(&QO=R!M96UO<GD*6"L@(" @(" @("!J;GH@(" @(&1?97APe M(" @(" @(" @("!\("!*=6UP(&EF(&YO= I8*R *6"L@(" @(" @("!M;W9Bd M(" @(&-L+"HQ,@I8*R @(" @(" @('-H;" @(" @87@L8VP@(" @(" @(" @c M('P@($UA:V4@:6YT;R!S96=M96YT("L@;V9F<V5T"E@K(" @(" @(" @;6]Vb M(" @("!B>"PX*&)P*2 @(" @(" @?" @1&5S=&EN871I;VX@;'-W"E@K(" @a M(" @(" @;6]V8B @("!C;"PJ- I8*R @(" @(" @('-H<B @(" @8G@L8VP*z M6"L@(" @(" @("!A9&0@(" @(&%X+&)X"E@K(" @(" @(" @;6]V(" @("!Ey M<RQA>" @(" @(" @(" @?" @1&5S=&EN871I;VX@<V5G;65N= I8*R @(" @x M(" @(&UO=B @(" @9&DL."AB<"D*6"L@(" @(" @("!A;F0@(" @(&1I+",Pw M># P,&8@(" @("!\("!$97-T:6YA=&EO;B!S=&%R="!A9&1R97-S"E@K(" @v M(" @(" @:FUP(" @("!C;W!Y"E@K( I8*R!D7V5X<#H@(" @(" @(" @(" @u M(" @(" @(" @(" @('P@($1E<W1I;F%T:6]N(&ES(&EN(&5X<&%N9&5D(&UEt M;6]R>0I8*R @(" @(" @('-U8F(@(" @86PL*C!X,3 @(" @(" @('P@($%Ds M9'(N(#$P,# P,"!I<R P(&]N(&-A<F0*6"L@(" @(" @("!S:&QB(" @(&%Lr M+"HQ"E@K(" @(" @(" @<VAL8B @("!A;"PJ,0I8*R @(" @(" @(&UO=B @q M(" @8G@L."AB<"D@(" @(" @('P@($1E<W1I;F%T:6]N(&QS=PI8*R @(" @p M(" @(&UO=F(@(" @8VPL*C$T"E@K(" @(" @(" @<VAR(" @("!B>"QC; I8o M*R @(" @(" @(&%D9&(@(" @86PL8FP@(" @(" @(" @('P@(#<@8FET('!An M9V4@<V5L96-T:6]N("@Q,C@@*B Q-DL@/2 R36(I"E@K(" @(" @(" @;W)Bm M(" @("!A;"PJ,'@X," @(" @(" @?" @4V5T('1H92!E;F%B;&4@8FET"E@Kl M(" @(" @(" @;6]V(" @("!D>"PC15A07U!/4E0K3D585%]03U)4*TY%6%1?k M4$]25 I8*R @(" @(" @(&]U=&(@(" @(" @(" @(" @(" @(" @('P@($UAj M<"!I;B!T:&4@<&%G90I8*R @(" @(" @(&EN8V(@(" @86P*6"L@(" @(" @i M("!A9&0@(" @(&1X+"-.15A47U!/4E0*6"L@(" @(" @("!O=71B(" @(" @h M(" @(" @(" @(" @("!\("!-87 @:6X@=&AE(&9O;&QO=VEN9R!P86=E"E@Kg M(" @(" @(" @;6]V(" @("!A>"PC34%07U!!1T4K3D585%]004=%*TY%6%1?f M4$%'10I8*R @(" @(" @(&UO=B @(" @97,L87@@(" @(" @(" @('P@($1Ee M<W1I;F%T:6]N('-E9VUE;G0*6"L@(" @(" @("!M;W8@(" @(&1I+#@H8G Id M"E@K(" @(" @(" @86YD(" @("!D:2PC,'@S9F9F(" @(" @?" @1&5S=&ENc M871I;VX@<W1A<G0@861D<F5S<PI8*R *6"L@"E@K('P@($5X96-U=&4@=&AEb M(&-O<'D*6"L@"E@K(&-O<'DZ"E@K(" @(" @(" @;6]V(" @("!C>"PQ,BABa M<"D@(" @(" @?" @3G5M8F5R(&]F('=O<F1S('1O(&-O<'D*6"L@"E@K(" @z M(" @(" @<F5P(" @(" @(" @(" @(" @(" @(" @?" @0U@@=&EM97,*6"L@y M(" @(" @("!M;W9W(" @(" @(" @(" @(" @(" @("!\("!$4SI322 @+3X@x M($53.D1)"E@K( I8*R *6"L@?" @4F5S=&]R92!R96=I<W1E<G,*6"L@"E@Kw M(" @(" @(" @<&]P9@I8*R @(" @(" @('!O<" @(" @97,*6"L@(" @(" @v M("!P;W @(" @(&1S"E@K(" @(" @(" @<&]P(" @("!D:0I8*R @(" @(" @u M('!O<" @(" @<VD*6"L@(" @(" @("!P;W @(" @(&1X"E@K(" @(" @(" @t M<&]P(" @("!C> I8*R @(" @(" @('!O<" @(" @8G@*6"L@(" @(" @("!Ps M;W @(" @(&)P"E@K( I8*R @(" @(" @(&UO=B @(" @87@L(S @(" @(" @r M(" @('P@(%)E='5R;B!C;V1E(#T@, I8*R @(" @(" @(')E= I8*R *6"L@q M(V5N9&EF"E@@( I8("!\*CT]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]p M/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]o M/2H*6" @?"H)"0D);W5T7V)Y=&4)"0D)(" @(" J"B\*96-H;R!X("T@<W1An M<G0N>"YC9&EF"G-E9" G+UY8+W,O+R\G(#X@<W1A<G0N>"YC9&EF(#P\("<Om M)PI8*BHJ("]U<W(O<W)C+S$N-5]B87-E+VME<FYE;"]S=&%R="YX"5=E9"!$l M96,@,C<@,C,Z,#@Z,C<@,3DX.0I8+2TM("XN+VME<FYE;"]S=&%R="YX"5-Uk M;B!$96,@,S$@,30Z,#$Z,S@@,3DX.0I8*BHJ*BHJ*BHJ*BHJ*BHJ"E@J*BH@j M,3@W+#$Y,B J*BHJ"E@M+2T@,3@W+#$Y-" M+2TM"E@@('P@4%5"3$E#('4Qi M-E]T(&=E=%]E>'1?;65M<VEZ92@I.PI8("!\($%S:R!T:&4@0DE/4R!H;W<@h M;75C:"!E>'1E;F1E9"!M96UO<GD@=&AE<F4@:7,N"E@@( I8*R C:69N9&5Fg M($5-4PI8*R *6" @7V=E=%]E>'1?;65M<VEZ93H*6" @"7!U<VAF"0D)?"!Gf M86LA+"!00R=S('-E="!T:&4@:6YT97)R=7!T(&5N86)L92!F;&%G"E@@( EMe M;W9B"6%H+"-'151?15A4345-7T953D,*6"HJ*BHJ*BHJ*BHJ*BHJ*@I8*BHJd M(#$Y-RPR,#,@*BHJ*@I8("!G;W1?97AT7VUE;7-I>F4Z"E@@( EP;W!F"E@@c M( ER970*6"$@"E@@( I8("!\*CT]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]b M/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]a M/3T]/2H*6" @?"H)"0D)9V5T7VQO=U]M96US:7IE"0D)"2 @(" @*@I8+2TMz M(#$Y.2PR,3$@+2TM+0I8("!G;W1?97AT7VUE;7-I>F4Z"E@@( EP;W!F"E@@y M( ER970*6"$@(V5L<V4*6"$@"E@A(%]G971?97AT7VUE;7-I>F4Z"E@A( EMx M;W8)87@L(T5-4U]204U?4TE:10I8(2 )<F5T"E@A( I8(2 C96YD:68*6" @w M"E@@('PJ/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]v M/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]*@I8("!\*@D)u M"0EG971?;&]W7VUE;7-I>F4)"0D)(" @(" J"B\*96-H;R!X("T@<V-O;G-Tt M+F@N8V1I9@IS960@)R]>6"]S+R\O)R ^('-C;VYS="YH+F-D:68@/#P@)R\Gs M"E@J*BH@+W5S<B]S<F,O,2XU7V)A<V4O:V5R;F5L+W-C;VYS="YH"5=E9"!$r M96,@,C<@,C(Z-3DZ,#4@,3DX.0I8+2TM("XN+VME<FYE;"]S8V]N<W0N: E3q M=6X@1&5C(#,Q(#$R.C4Y.C4S(#$Y.#D*6"HJ*BHJ*BHJ*BHJ*BHJ*@I8*BHJp M(#$L,R J*BHJ"E@M+2T@,2PV("TM+2T*6"L@"E@K("-I;F-L=61E(#QM:6YIo M>"]C;VYF:6<N:#X)+RH@=&\@9V5T('1H92!00R!%35,@9&5F:6YI=&EO;G,@n M:68@<F5Q=6ER960@*B\*6"L@"E@@("\J($UI<V-E;&QA;F5O=7,@8V]N<W1Am M;G1S('5S960@:6X@87-S96UB;&5R(&-O9&4N("HO"E@@("-D969I;F4@2$-(l M24=(7TU!4TL),'@P1@DO*B!H+W<@8VQI8VL@;6%S:R!F;W(@;&]W(&)Y=&4@k M;V8@:&D@=V]R9" J+PI8(" C9&5F:6YE($A#3$]77TU!4TL),'A&, DO*B!Hj L+W<@8VQI8VL@;6%S:R!F;W(@;&]W(&)Y=&4@;V8@;&]W('=O<F0@*B\*+PIHi h end Root file system load changes (cdiffed, shared, and uue uuencoded). --------------------- cut here -------------------- table !"#$%&'()*+,-./0123456789:;<=>? @ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_ begin 644 root.shar M96-H;R!X("T@;6%I;BYC+F-D:68*<V5D("<O7E@O<R\O+R<@/B!M86EN+F,Nz M8V1I9B \/" G+R<*6"HJ*B O=7-R+W-R8R\Q+C5?8F%S92]F<R]M86EN+F,)y M5V5D($1E8R R-R R,CHS-SHS,R Q.3@Y"E@M+2T@;6%I;BYC"5-U;B!$96,@x M,S$@,30Z,3(Z,3(@,3DX.0I8*BHJ*BHJ*BHJ*BHJ*BHJ"E@J*BH@,C0L,S @w M*BHJ*@I8(" *6" @(V1E9FEN92!--C1+(" @(" P>$9&1D8P,# P3 DO*B Qv M-B!B:70@;6%S:R!F;W(@1$U!(&-H96-K("HO"E@@("-D969I;F4@34%87U)!u M32 @(" @(" @,38S.#0)+RH@;6%X:6UU;2!204T@9&ES:R!S:7IE(&EN(&)Lt M;V-K<R J+PI8(2 C9&5F:6YE(%)!35])34%'12 H9&5V7W0I,'@S,#,)+RH@s M;6%J;W(M;6EN;W(@9&5V('=H97)E(')O;W0@:6UA9V4@:7,@:V5P=" J+PI8r M(" *6" @1D]25T%21"!V;VED(&)U9E]P;V]L*"D["E@@($9/4E=!4D0@=F]Iq M9"!F<U]I;FET*"D["E@M+2T@,C0L,S @+2TM+0I8(" *6" @(V1E9FEN92!-p M-C1+(" @(" P>$9&1D8P,# P3 DO*B Q-B!B:70@;6%S:R!F;W(@1$U!(&-Ho M96-K("HO"E@@("-D969I;F4@34%87U)!32 @(" @(" @,38S.#0)+RH@;6%Xn M:6UU;2!204T@9&ES:R!S:7IE(&EN(&)L;V-K<R J+PI8(2 C9&5F:6YE(%)!m M35])34%'12 H9&5V7W0I,'@S,#<)+RH@;6%J;W(M;6EN;W(@9&5V('=H97)El M(')O;W0@:6UA9V4@:7,@:V5P=" J+PI8(" *6" @1D]25T%21"!V;VED(&)Uk M9E]P;V]L*"D["E@@($9/4E=!4D0@=F]I9"!F<U]I;FET*"D["E@J*BHJ*BHJj M*BHJ*BHJ*BH*6"HJ*B R,S@L,C0T("HJ*BH*6" @("HO"E@@( I8(" @(')Ei M9VES=&5R('-T<G5C="!B=68@*F)P+" J8G Q.PI8(2 @(&EN="!C;W5N=#L*h M6" @("!L;VYG(&M?;&]A9&5D.PI8(" @('-T<G5C="!S=7!E<E]B;&]C:R Jg M<W ["E@@(" @8FQO8VM?;G(@:3L*6"TM+2 R,S@L,C0T("TM+2T*6" @("HOf M"E@@( I8(" @(')E9VES=&5R('-T<G5C="!B=68@*F)P+" J8G Q.PI8(2 @e M(&EN="!C;W5N="QL87-T7V)L;V-K.PI8(" @(&QO;F<@:U]L;V%D960["E@@d M(" @<W1R=6-T('-U<&5R7V)L;V-K("IS<#L*6" @("!B;&]C:U]N<B!I.PI8c M*BHJ*BHJ*BHJ*BHJ*BHJ"E@J*BH@,C@T+#(Y,B J*BHJ"E@@( D)<&%N:6,Hb M(DEN=F%L:60@<F]O="!F:6QE('-Y<W1E;2(L($Y/7TY532D["E@@(" @?0I8a M(" @(&-O=6YT(#T@<W M/G-?;GIO;F5S(#P\('-P+3YS7VQO9U]Z;VYE7W-Iz M>F4["2\J(",@8FQO8VMS(&]N(')O;W0@9&5V("HO"E@A(" @<'5T7V)L;V-Ky M*&)P+"!&54Q,7T1!5$%?0DQ/0TLI.PI8(2!G;W1?<F]O=%]D978Z"E@A(" @x M:68@*&-O=6YT(#X@34%87U)!32D@<&%N:6,H(E)!32!D:7-K(&ES('1O;R!Bw M:6<N(",@8FQO8VMS(#T@(BP@8V]U;G0I.PI8(" @(')A;5]C;&EC:W,@/2!Cv M;W5N=" J("A"3$]#2U]325I%+T-,24-+7U-)6D4I.PI8(" *6" @(" O*B!4u M96QL($U-('1H92!O<FEG:6X@86YD('-I>F4@;V8@24Y)5"P@86YD('1H92!At M;6]U;G0@;V8@;65M;W)Y('5S960@9F]R('1H90I8+2TM(#(X-"PR.3@@+2TMs M+0I8(" )"7!A;FEC*"));G9A;&ED(')O;W0@9FEL92!S>7-T96TB+"!.3U].r M54TI.PI8(" @('T*6" @("!C;W5N=" ]('-P+3YS7VYZ;VYE<R \/"!S<"T^q M<U]L;V=?>F]N95]S:7IE.PDO*B C(&)L;V-K<R!O;B!R;V]T(&1E=B J+PI8p M(2 *6"$@("!P=71?8FQO8VLH8G L($953$Q?1$%405]"3$]#2RD["E@A(&=Oo M=%]R;V]T7V1E=CH*6"$@(VEF($5-4PI8(2 @(&QA<W1?8FQO8VL@/2!S<"T^n M<U]L87-T7V)L;V-K7W=R:71T96X["2\J(",@8FQO8VMS(&]N(')O;W0@9&5Vm M('1O(&QO860@*B\*6"$@("!I9B H*&QA<W1?8FQO8VL@/B!-05A?4D%-*2!\l M?" H8V]U;G0@/"!L87-T7V)L;V-K*2D@<&%N:6,H(E)!32!D:7-K(&ES('1Ok M;R!B:6<N("-B;&]C:W,@/2 B+"!C;W5N="D[( I8(2 C96QS90I8(2 @(&EFj M("AC;W5N=" ^($U!6%]204TI('!A;FEC*")204T@9&ES:R!I<R!T;V\@8FEGi M+B C(&)L;V-K<R ]("(L(&-O=6YT*3L*6"$@(V5N9&EF"E@@(" @<F%M7V-Lh M:6-K<R ](&-O=6YT("H@*$),3T-+7U-)6D4O0TQ)0TM?4TE:12D["E@@( I8g M(" @("\J(%1E;&P@34T@=&AE(&]R:6=I;B!A;F0@<VEZ92!O9B!)3DE4+"!Af M;F0@=&AE(&%M;W5N="!O9B!M96UO<GD@=7-E9"!F;W(@=&AE"E@J*BHJ*BHJe M*BHJ*BHJ*BH*6"HJ*B S,S(L,S,X("HJ*BH*6" @("!I;F]D95LP72YI7VUOd M9&4@/2!)7T),3T-+7U-014-)04P["2\J('1E;7 @:6YO9&4@9F]R(')A:&5Ac M9" J+PI8(" @(&EN;V1E6S!=+FE?<VEZ92 ]($U!6%]07TQ/3D<["E@@(" @b M:6YO9&5;,%TN:5]D978@/2!I;F]D95LP72YI7WIO;F5;,%T@/2!R;V]T7V1Ea M=FEC93L*6"$@("!F;W(@*&D@/2 P.R!I(#P@8V]U;G0[(&DK*RD@>PI8(" )z M8G @/2!R86AE860H)FEN;V1E6S!=+" H8FQO8VM?;G(I(&DL("AO9F9?="D@y M0DQ/0TM?4TE:12 J(&DL"E@@( D)(" @($),3T-+7U-)6D4I.PI8(" )8G Qx M(#T@9V5T7V)L;V-K*%)/3U1?1$56+"!I+"!.3U]214%$*3L*6"TM+2 S,S@Lw M,S0X("TM+2T*6" @("!I;F]D95LP72YI7VUO9&4@/2!)7T),3T-+7U-014-)v M04P["2\J('1E;7 @:6YO9&4@9F]R(')A:&5A9" J+PI8(" @(&EN;V1E6S!=u M+FE?<VEZ92 ]($U!6%]07TQ/3D<["E@@(" @:6YO9&5;,%TN:5]D978@/2!It M;F]D95LP72YI7WIO;F5;,%T@/2!R;V]T7V1E=FEC93L*6"$@(VEF($5-4PI8s M(2 @(&9O<B H:2 ](# [(&D@/#T@;&%S=%]B;&]C:SL@:2LK*2!["2\J(&]Nr M;'D@;&]A9"!T:&4@=W)I='1E;B!B;&]C:W,A("HO"E@A("-E;'-E"0I8(2 @q M(&9O<B H:2 ](# [(&D@/"!C;W5N=#L@:2LK*2!["E@A("-E;F1I9@I8(" )p M8G @/2!R86AE860H)FEN;V1E6S!=+" H8FQO8VM?;G(I(&DL("AO9F9?="D@o M0DQ/0TM?4TE:12 J(&DL"E@@( D)(" @($),3T-+7U-)6D4I.PI8(" )8G Qn M(#T@9V5T7V)L;V-K*%)/3U1?1$56+"!I+"!.3U]214%$*3L*+PIE8VAO('@@m M+2!S=7!E<BYH+F-D:68*<V5D("<O7E@O<R\O+R<@/B!S=7!E<BYH+F-D:68@l M/#P@)R\G"E@J*BH@+W5S<B]S<F,O,2XU7V)A<V4O9G,O<W5P97(N: E7960@k M1&5C(#(W(#(S.C(Q.C(W(#$Y.#D*6"TM+2!S=7!E<BYH"5-U;B!$96,@,S$@j M,30Z,3$Z,S @,3DX.0I8*BHJ*BHJ*BHJ*BHJ*BHJ"E@J*BH@,S@L-#,@*BHJi M*@I8+2TM(#,X+#0T("TM+2T*6" @("!T:6UE7W0@<U]T:6UE.PD)+RH@=&EMh M92!O9B!L87-T('5P9&%T92 J+PI8(" @(&-H87(@<U]R9%]O;FQY.PD)+RH@g M<V5T('1O(#$@:69F(&9I;&4@<WES(&UO=6YT960@<F5A9"!O;FQY("HO"E@@f M(" @8VAA<B!S7V1I<G0["0D)+RH@0TQ%04X@;W(@1$E25%D@*B\*6"L@("!Ue M;G-H;W)T('-?;&%S=%]B;&]C:U]W<FET=&5N.PDO*B!T:&4@8FQO8VL@;G5Md M8F5R(&]F('1H92!L87-T(&)L;V-K('=R:71T96X@8GD@;6MF<R J+PI8("!]c M('-U<&5R7V)L;V-K6TY27U-54$524UT["E@@( I8(" C9&5F:6YE($Y)3%]3b M55!%4B H<W1R=6-T('-U<&5R7V)L;V-K("HI(# *+PIE8VAO('@@+2!M:V9Sa M+F,N8V1I9@IS960@)R]>6"]S+R\O)R ^(&UK9G,N8RYC9&EF(#P\("<O)PI8z M*BHJ("]U<W(O<W)C+S$N-5]B87-E+V-O;6UA;F1S+VUK9G,N8PE7960@2F%Ny M(" S(#$R.C(V.C4P(#$Y.3 *6"TM+2 N+B]C;VUM86YD<R]M:V9S+F,)5V5Dx M($IA;B @,R Q,SHU-CHU." Q.3DP"E@J*BHJ*BHJ*BHJ*BHJ*BH*6"HJ*B Vw M,2PV-R J*BHJ"E@@("-E;F1I9@I8(" *6" @"E@A(&EN="!N97AT7WIO;F4Lv M(&YE>'1?:6YO9&4L('IO;F5?<VEZ92P@>F]N95]S:&EF=" ](# L('IO9F8Lu M(&YR8FQO8VMS+"!I;F]D95]O9F9S970L(&YR:6YO9&5S+"!L8W0@/2 Q+"!Dt M:7-K+"!F9"P@<')I;G0@/2 P+"!F:6QE(#T@,"P@;W9E<G)I9&4@/2 P+"!Ss M:6UP;&4@/2 P+"!D9FQA9SL*6" @:6YT(&1O;G1T97-T.PD)"2\J('-K:7 @r M=&5S="!I9B!I="!F:71S(&]N(&UE9&EU;2 J+PI8(" *6" @;&]N9R!C=7)Rq M96YT7W1I;64L(&)I;E]T:6UE.PI8+2TM(#8Q+#8Y("TM+2T*6" @(V5N9&EFp M"E@@( I8(" *6"$@:6YT(&YE>'1?>F]N92P@;F5X=%]I;F]D92P@>F]N95]So M:7IE+"!Z;VYE7W-H:69T(#T@,"P@>F]F9BP@;G)B;&]C:W,L(&UD8FQO8VMSn M+ I8(2 @(" @;&)L;V-K/3 L(&EN;V1E7V]F9G-E="P@;G)I;F]D97,L(&QCm M=" ](#$L(&1I<VLL(&9D+"!P<FEN=" ](# L(&9I;&4@/2 P+ I8(2 @(" @l M;W9E<G)I9&4@/2 P+"!S:6UP;&4@/2 P+"!D9FQA9SL*6" @:6YT(&1O;G1Tk M97-T.PD)"2\J('-K:7 @=&5S="!I9B!I="!F:71S(&]N(&UE9&EU;2 J+PI8j M(" *6" @;&]N9R!C=7)R96YT7W1I;64L(&)I;E]T:6UE.PI8*BHJ*BHJ*BHJi M*BHJ*BHJ"E@J*BH@.#(L.#@@*BHJ*@I8("!I;G0@87)G8SL*6" @8VAA<B Jh M87)G=EM=.PI8("!["E@A(" @:6YT(&DL(&)L;V-K<RP@>F]N97,L(&EN;V1Eg M<RP@;6]D92P@=7-R:60L(&=R<&ED+"!B861U<V%G92 ](# ["E@@(" @8VAAf M<B J=&]K96Y;34%87U1/2T5.4UTL(&QI;F5;3$E.15],14Y=.PI8(" @($9)e M3$4@*F9O<&5N*"D["E@@(" @;&]N9R!T:6UE*"DL(&QS.PI8+2TM(#@T+#DPd M("TM+2T*6" @:6YT(&%R9V,["E@@(&-H87(@*F%R9W9;73L*6" @>PI8(2 @c M(&EN="!I+"!B;&]C:W,L(&UE9&EA7V)L;V-K<RP@>F]N97,L(&EN;V1E<RP@b M;6]D92P@=7-R:60L(&=R<&ED+"!B861U<V%G92 ](# ["E@@(" @8VAA<B Ja M=&]K96Y;34%87U1/2T5.4UTL(&QI;F5;3$E.15],14Y=.PI8(" @($9)3$4@z M*F9O<&5N*"D["E@@(" @;&]N9R!T:6UE*"DL(&QS.PI8*BHJ*BHJ*BHJ*BHJy M*BHJ"E@J*BH@,30V+#$U,2 J*BHJ"E@M+2T@,30X+#$U." M+2TM"E@@( D)x M"6EF("AB;&]C:W,@/B!.7T),3T-+4RD*6" @"0D)"7!E>&ET*")";&]C:R!Cw M;W5N="!T;V\@;&%R9V4B*3L*6" @"0D):6YO9&5S(#T@871O:2AT;VME;ELQv M72D["E@K( D)"6EF("AT;VME;ELR72D@>PI8*R )"0D);65D:6%?8FQO8VMSu M(#T@871O:2AT;VME;ELR72D["E@K( D)"7T@96QS92!["E@K( D)"0EM961It M85]B;&]C:W,@/2!B;&]C:W,["E@K( D)"7T*6" @"E@@( D)"2\J(%!R;V-Es M<W,@;6]D92!L:6YE(&9O<B!R;V]T(&1I<F5C=&]R>2X@*B\*6" @"0D)9V5Tr M;&EN92AL:6YE+"!T;VME;BD["E@J*BHJ*BHJ*BHJ*BHJ*BH*6"HJ*B Q-3<Lq M,38S("HJ*BH*6" @"E@@( D)"2\J($UA>6)E('1H92!P<F]T;W1Y<&4@9FELp M92!I<R!J=7-T(&$@<VEZ92X*6" @"0D)("H@0VAE8VL@9F]R('1H870N("HOo M"E@A( D)"6)L;V-K<R ](&%T;VDH87)G=EMA<F=C72D["E@@( D)"6EF("ABn M;&]C:W,@/" T*2!P97AI="@B0V%N)W0@;W!E;B!P<F]T;W1Y<&4@9FEL92(Im M.PI8(" *6" @"0D)+RH@3VLL(&UA:V4@<VEM<&QE(&9I;&4@<WES=&5M(&]Fl M(&=I=F5N('-I>F4L"E@M+2T@,38T+#$W,B M+2TM"E@@( I8(" )"0DO*B!-k M87EB92!T:&4@<')O=&]T>7!E(&9I;&4@:7,@:G5S="!A('-I>F4N"E@@( D)j M"2 J($-H96-K(&9O<B!T:&%T+B J+PI8(2 *6"$@"0D)8FQO8VMS(#T@871Oi M:2AA<F=V6V%R9V-=*3L*6"$@"0D);65D:6%?8FQO8VMS(#T@8FQO8VMS.PI8h M(" )"0EI9B H8FQO8VMS(#P@-"D@<&5X:70H(D-A;B=T(&]P96X@<')O=&]Tg M>7!E(&9I;&4B*3L*6" @"E@@( D)"2\J($]K+"!M86ME('-I;7!L92!F:6QEf M('-Y<W1E;2!O9B!G:79E;B!S:7IE+ I8*BHJ*BHJ*BHJ*BHJ*BHJ"E@J*BH@e M,3<U+#$X," J*BHJ"E@M+2T@,3@T+#$Y," M+2TM"E@@( D)<W!E8VEA;"AAd M<F=V6V%R9V-=*3L*6" @"E@@( D);G)B;&]C:W,@/2!B;&]C:W,["E@K( D)c M;61B;&]C:W,@/2!M961I85]B;&]C:W,["E@@( D);G)I;F]D97,@/2!I;F]Db M97,["E@@( E]"0D)+RH@96YD('-W:71C:" J+PI8(" @('T)"0D)+RH@96YDa M('=H:6QE("HO"E@J*BHJ*BHJ*BHJ*BHJ*BH*6"HJ*B Q.#8L,C T("HJ*BH*z M6" @"7-T871I8R!S:&]R="!T97-T8EM"3$]#2U]325I%("\@<VEZ96]F*'-Hy M;W)T*5T["E@@( I8(" )+RH@5')Y('=R:71I;F<@=&AE(&QA<W0@8FQO8VL@x M;V8@<&%R=&ET:6]N(&]R(&1I<VME='1E+B J+PI8(2 );',@/2!L<V5E:RAFw M9"P@*"AL;VYG*2!B;&]C:W,@+2 Q3"D@*B!"3$]#2U]325I%+"!3145+7U-%v M5"D["E@@( ET97-T8ELP72 ](#!X,S(T-3L*6" @"71E<W1B6S%=(#T@,'@Qu M,49&.PI8(" ):68@*'=R:71E*&9D+"!T97-T8BP@0DQ/0TM?4TE:12D@(3T@t M0DQ/0TM?4TE:12D*6" @"0EP97AI="@B1FEL92!S>7-T96T@:7,@=&]O(&)Is M9R!F;W(@;6EN;W(@9&5V:6-E(BD["E@@( ES>6YC*"D["0D)+RH@9FQU<V@@r M=W)I=&4L('-O(&EF(&5R<F]R(&YE>'0@<F5A9"!F86EL<R J+PI8(2 );'-Eq M96LH9F0L("@H;&]N9RD@8FQO8VMS("T@,4PI("H@0DQ/0TM?4TE:12P@4T5%p M2U]3150I.PI8(" )=&5S=&);,%T@/2 P.PI8(" )=&5S=&);,5T@/2 P.PI8o M(" ):2 ](')E860H9F0L('1E<W1B+"!"3$]#2U]325I%*3L*6" @"6EF("AIn M("$]($),3T-+7U-)6D4@?'P@=&5S=&);,%T@(3T@,'@S,C0U('Q\('1E<W1Bm M6S%=("$](#!X,3%&1BD*6" @"0EP97AI="@B1FEL92!S>7-T96T@:7,@=&]Ol M(&)I9R!F;W(@;6EN;W(@9&5V:6-E(BD["E@A( EL<V5E:RAF9"P@*"AL;VYGk M*2!B;&]C:W,@+2 Q3"D@*B!"3$]#2U]325I%+"!3145+7U-%5"D["E@@( ETj M97-T8ELP72 ](# ["E@@( ET97-T8ELQ72 ](# ["E@@( EI9B H=W)I=&4Hi M9F0L('1E<W1B+"!"3$]#2U]325I%*2 A/2!"3$]#2U]325I%*0I8+2TM(#$Yh M-BPR,30@+2TM+0I8(" )<W1A=&EC('-H;W)T('1E<W1B6T),3T-+7U-)6D4@g M+R!S:7IE;V8H<VAO<G0I73L*6" @"E@@( DO*B!4<GD@=W)I=&EN9R!T:&4@f M;&%S="!B;&]C:R!O9B!P87)T:71I;VX@;W(@9&ES:V5T=&4N("HO"E@A( ELe M<R ](&QS965K*&9D+" H*&QO;F<I(&UE9&EA7V)L;V-K<R M(#%,*2 J($),d M3T-+7U-)6D4L(%-%14M?4T54*3L*6" @"71E<W1B6S!=(#T@,'@S,C0U.PI8c M(" )=&5S=&);,5T@/2 P>#$Q1D8["E@@( EI9B H=W)I=&4H9F0L('1E<W1Bb M+"!"3$]#2U]325I%*2 A/2!"3$]#2U]325I%*0I8(" )"7!E>&ET*")&:6QEa M('-Y<W1E;2!I<R!T;V\@8FEG(&9O<B!M:6YO<B!D979I8V4B*3L*6" @"7-Yz M;F,H*3L)"0DO*B!F;'5S:"!W<FET92P@<V\@:68@97)R;W(@;F5X="!R96%Dy M(&9A:6QS("HO"E@A( EL<V5E:RAF9"P@*"AL;VYG*2!M961I85]B;&]C:W,@x M+2 Q3"D@*B!"3$]#2U]325I%+"!3145+7U-%5"D["E@@( ET97-T8ELP72 ]w M(# ["E@@( ET97-T8ELQ72 ](# ["E@@( EI(#T@<F5A9"AF9"P@=&5S=&(Lv M($),3T-+7U-)6D4I.PI8(" ):68@*&D@(3T@0DQ/0TM?4TE:12!\?"!T97-Tu M8ELP72 A/2 P>#,R-#4@?'P@=&5S=&);,5T@(3T@,'@Q,49&*0I8(" )"7!Et M>&ET*")&:6QE('-Y<W1E;2!I<R!T;V\@8FEG(&9O<B!M:6YO<B!D979I8V4Bs M*3L*6"$@"6QS965K*&9D+" H*&QO;F<I(&UE9&EA7V)L;V-K<R M(#%,*2 Jr M($),3T-+7U-)6D4L(%-%14M?4T54*3L*6" @"71E<W1B6S!=(#T@,#L*6" @q M"71E<W1B6S%=(#T@,#L*6" @"6EF("AW<FET92AF9"P@=&5S=&(L($),3T-+p M7U-)6D4I("$]($),3T-+7U-)6D4I"E@J*BHJ*BHJ*BHJ*BHJ*BH*6"HJ*B Ro M,C$L,C,Q("HJ*BH*6" @("!R;V]T9&ER*&DI.PI8(" @(&EF("AS:6UP;&4@n M/3T@,"D@96%T7V1I<BAI*3L*6" @"E@@(" @:68@*'!R:6YT*2!P<FEN=%]Fm M<R@I.PI8(" @(&9L=7-H*"D["E@@(" @97AI="@P*3L*6" @"E@M( I8("!]l M"0D)"2\J(&5N9"!M86EN("HO"E@@( I8(" *6"TM+2 R,S$L,C0Q("TM+2T*k M6" @("!R;V]T9&ER*&DI.PI8(" @(&EF("AS:6UP;&4@/3T@,"D@96%T7V1Ij M<BAI*3L*6" @"E@K(" @=7!D871E7W-U<&5R*"D["0DO*B!U<&1A=&4@=&AEi M(&QA<W0@8FQO8VL@=W)I='1E;B!F:65L9"!I;B!S=7!E<B!B;&]C:R J+PI8h M(" @(&EF("AP<FEN="D@<')I;G1?9G,H*3L*6" @("!F;'5S:"@I.PI8(" @g M(&5X:70H,"D["E@@( I8("!]"0D)"2\J(&5N9"!M86EN("HO"E@@( I8(" *f M6"HJ*BHJ*BHJ*BHJ*BHJ*@I8*BHJ(#(V-"PR-CD@*BHJ*@I8+2TM(#(W-"PRe M.#$@+2TM+0I8(" @('IO(#T@-TP@*R H;&]N9RD@3E)?24Y$25)%0U13"E@@d M( DK("AL;VYG*2!.4E])3D1)4D5#5%,@*DY27TE.1$E214-44SL*6" @("!Sc M=7 M/G-?;6%X7W-I>F4@/2!Z;R J($),3T-+7U-)6D4["E@K(" @;&)L;V-Kb M(" @(" @(" @(#T@:6YI=&)L:W,["E@K(" @<W5P+3YS7VQA<W1?8FQO8VM?a M=W)I='1E;B ](&QB;&]C:SL*6" @("!Z;VYE7W-I>F4@/2 Q(#P\('IO;F5?z M<VAI9G0["2\J(&YR(&]F(&)L;V-K<R!P97(@>F]N92 J+PI8(" *6" @("!Fy M;W(@*&-P(#T@8G5F("L@<VEZ96]F*"IS=7 I.R!C<" \("9B=69;0DQ/0TM?x M4TE:15T[(&-P*RLI("IC<" ](# ["E@J*BHJ*BHJ*BHJ*BHJ*BH*6"HJ*B Sw M,3DL,S0U("HJ*BH*6" @"E@@( I8(" *6"$@"E@A("\J/3T]/3T]/3T]/3T]v M/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]u M/3T]/3T]/0I8(2 @*B @(" @(" @(" @(" @<F]O=&1I<B @+2 @:6YS=&%Lt M;"!T:&4@<F]O="!D:7)E8W1O<GD*6"$@("H]/3T]/3T]/3T]/3T]/3T]/3T]s M/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3TJr M+PI8(2 *6"$@<F]O=&1I<BAI;F]D92D*6"$@:6YT(&EN;V1E.PI8(2!["E@Aq M(" @:6YT('H["E@A( I8(2 @('H@/2!A;&QO8U]Z;VYE*"D["E@A(" @861Dp M7WIO;F4H:6YO9&4L('HL(#,R3"P@8W5R<F5N=%]T:6UE*3L*6"$@("!E;G1Eo M<E]D:7(H:6YO9&4L("(N(BP@:6YO9&4I.PI8(2 @(&5N=&5R7V1I<BAI;F]Dn M92P@(BXN(BP@:6YO9&4I.PI8(2 @(&EN8W)?;&EN:RAI;F]D92D["E@A(" @m M:6YC<E]L:6YK*&EN;V1E*3L*6" @?0I8(" *6" @"E@@( I8(" *6" @"E@@l M("\J/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]k M/3T]/3T]/3T]/3T]/3T]/3T]/3T]/0I8(" @*@D@(" @96%T7V1I<B @+2 @j M<F5C=7)S:79E;'D@:6YS=&%L;"!D:7)E8W1O<GD*6"TM+2 S,S$L,S<T("TMi M+2T*6" @"E@@( I8(" *6"$@+RH]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]h M/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]"E@A(" Jg M(" @(" @(" @(" @("!U<&1A=&5?<W5P97(@("T@('5P9&%T92!L87-T(&)Lf M;V-K(&9I96QD"E@A(" J/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]e M/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]*B\*6"$@"E@A('5Pd M9&%T95]S=7!E<B@I"E@A('L*6"$@("!S=')U8W0@<W5P97)?8FQO8VL@*G-Uc M<#L*6"$@("!C:&%R(&)U9EM"3$]#2U]325I%73L*6"$@"E@A(" @9V5T7V)Lb M;V-K("@@,2P@8G5F*3L)"0DO*B!R96%D('1H92!S=7!E<B!B;&]C:R J+PI8a M(2 @('-U<#T@*'-T<G5C="!S=7!E<E]B;&]C:R J*2!B=68["0I8(2 @('-Uz M<"T^<U]L87-T7V)L;V-K7W=R:71T96X@/2!N97AT7WIO;F4[("\J('1H96X@y M=7!D871E('1H92!L87-T(&)L;V-K(&9I96QD("HO"E@A(" @<'5T7V)L;V-Kx M("@Q+&)U9BD["0D)+RH@=&AE;B!W<FET92!T:&4@<W5P97(@8FQO8VL@;W5Tw M("HO"E@@('T*6" @"E@@( I8(" *6" @"E@K("\J/3T]/3T]/3T]/3T]/3T]v M/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]u M/3T]/0I8*R @*B @(" @(" @(" @(" @<F]O=&1I<B @+2 @:6YS=&%L;"!Tt M:&4@<F]O="!D:7)E8W1O<GD*6"L@("H]/3T]/3T]/3T]/3T]/3T]/3T]/3T]s M/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3TJ+PI8r M*R *6"L@<F]O=&1I<BAI;F]D92D*6"L@:6YT(&EN;V1E.PI8*R!["E@K(" @q M:6YT('H["E@K( I8*R @('H@/2!A;&QO8U]Z;VYE*"D["E@K(" @861D7WIOp M;F4H:6YO9&4L('HL(#,R3"P@8W5R<F5N=%]T:6UE*3L*6"L@("!E;G1E<E]Do M:7(H:6YO9&4L("(N(BP@:6YO9&4I.PI8*R @(&5N=&5R7V1I<BAI;F]D92P@n M(BXN(BP@:6YO9&4I.PI8*R @(&EN8W)?;&EN:RAI;F]D92D["E@K(" @:6YCm M<E]L:6YK*&EN;V1E*3L*6"L@?0I8*R *6"L@"E@K( I8*R *6" @"E@@("\Jl M/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]k M/3T]/3T]/3T]/3T]/3T]/3T]/0I8(" @*@D@(" @96%T7V1I<B @+2 @<F5Cj M=7)S:79E;'D@:6YS=&%L;"!D:7)E8W1O<GD*6"HJ*BHJ*BHJ*BHJ*BHJ*@I8i M*BHJ(#$Q-38L,3$U." J*BHJ"E@M+2T@,3$X-2PQ,3@X("TM+2T*6" @?0I8h 3(" *6" @(V5N9&EF"E@K( HO"E@Mg f end -------------------------------- Peter Van Epp / Peter_Van_Epp@cc.sfu.ca