Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!uwm.edu!rpi!zaphod.mps.ohio-state.edu!uakari.primate.wisc.edu!aplcen!haven!udel!princeton!notecnirp!nfs
From: nfs@notecnirp.Princeton.EDU (Norbert Schlenker)
Newsgroups: comp.os.minix
Subject: Re: Andy's comments on 1.5
Summary: More bug reports and fixes
Message-ID: <24236@princeton.Princeton.EDU>
Date: 17 Feb 90 05:05:51 GMT
References: <5441@star.cs.vu.nl>
Sender: news@princeton.Princeton.EDU
Reply-To: nfs@notecnirp.UUCP (Norbert Schlenker)
Organization: Dept. of Computer Science, Princeton University
Lines: 426
In article <5441@star.cs.vu.nl> ast@cs.vu.nl (Andy Tanenbaum) writes:
>................................... 1.5.3 will be coming up within a week.
>I think something like 200 odd files have been affected since 1.5.0. However
>I hope that 1.5.3 will be stable. That will be the base for P-H's 1.5.
>
>Andy Tanenbaum (ast@cs.vu.nl)
I log on to send a message regarding problems with 1.5.0's commands, and
I read this! Here we go anyway, in case some of these haven't been fixed
yet.
Norbert
-------------------------------------------------------------------------
This is a short summary of my experience installing the contents of
Minix 1.5.0's /usr/src/commands, along with context diffs where I think
fixes should be made. But first a few comments.
An extraordinary number of commands generate warnings when compiled,
most of which are caused by the definition of NULL as ((void *)0).
I hear rumours that this problem will be fixed in subsequent releases
by inserting into each program (after the #include's) the lines:
#undef NULL
#define NULL 0
This is almost certain to cause long term problems on any system where
sizeof(int) != sizeof(void *), like the Atari. I hope the rumour is
unfounded. Better to fix the programs themselves (or the compiler!).
Some very good programs that were posted on the net some time ago were
not picked up for this release. I refer specifically to: Peter Housel's
expr (13618@ea.ecn.purdue.edu/14047@ea.ecn.purdue.edu) which supports
the colon operator; Peter Housel's login (8771@ea.ecn.purdue.edu) which
updates /etc/utmp, just like init does in 1.5.0; and Terrence Holm's versions
of leave, users, and who (422ubc-bdcvax.uucp), all of which use /etc/utmp
instead of grubbing through /usr/adm/wtmp. Their absence in 1.5.0 must
have been an oversight.
What happened to termcap(1)?
Quite a few programs use obsolete library functions, like the
Berkeley string routines, or _cleanup(). These should be changed.
Now to individual programs:
ci.c rindex() --> strrchr()
co.c rindex() --> strrchr()
date.c Uses gets(); fgets() would be better
ed.c Uses a public function named setbuf(), which conflicts with
the ANSI function of the same name. It should be changed
(I used setupbuf() in the cdiff below).
Calls _cleanup() unnecessarily.
fsck.c Needs a definition of _POSIX_SOURCE before any headers are
included, because it uses NAME_MAX and LINK_MAX, neither of
which can be visible in an ANSI header.
Needlessly prints carriage returns in normal operation.
Does a putchar(*--p), an operation virtually guaranteed to
fail with an ANSI library.
gres.c index() --> strchr()
Needless use of printf() when puts() would do.
id.c A little code rearrangement makes this go faster.
mkfs.c Needs a definition of _POSIX_SOURCE.
mv.c rindex() --> strrchr()
nm.c Uses %X to print long integers; should be %lX.
paste.c Calls _cleanup() unnecessarily.
printroot.c Needs a definition of _POSIX_SOURCE.
readfs.c Needs a definition of _POSIX_SOURCE.
rmdir.c rindex() --> strrchr()
Needs a definition of _POSIX_SOURCE.
size.c Uses %D to print long integers; should be %ld.
strip.c rindex() --> strrchr()
tset.c index() --> strchr()
tsort.c Uses sys_errlist directly instead of perror(); such
code is likely to fail in an ANSI environment, since
sys_errlist is going to be name-space-polluting.
tty.c Needless use of printf().
which.c index() --> strchr()
Here are the cdiffs for the above, shar'ed, compress'ed, and uue'ed.
All cdiffs are relative to the 1.5.0 versions, since those are smaller.
------------------------------------------------------------------------
table
!"#$%&'()*+,-./0123456789:;<=>?
@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_
begin 644 diffs_15.Z
M'YV-9<:@>0,"#X@6(,:D<3&&3!HS"N:4(0/BQ LO6%[,><'Q! @?"1%%Gy
MCAR-& %$YTR>E!\>+#);H9WD$&H@@?VDN65Z-;]R8(Z,[NM'C5T"^*->F+='E&0XXL) #p
M#<>]Y5I?J9T1)0I3)'$$%45(T01[F%HJ!Z4@N#;"0_69 8(04Q#QW8Z^HN!$o
M%4PPP5AC*,"1&WWZX8&"&6FP409[%IV0PK:N)>!L8]1:JV!??97!AD3=KK "n
M' H."0(.-8BZUI MG/K@DZNV^FJLL_H()*ZZ\JJ?K\ *NR>Q(!B+K+(],/OMm
M@Q%&A4:0X5Z+DK;Y$(<%1QYH.!&&7?,8<<8[ D]!J/+]:4""M#:]W/00V/+ L:YG;"#k
MU5V"(.A@@.6A8K5E@'!'M6R ($;8(G0\A0AY-IHFP@HGNVS"3YOQ,';:^0RTj
MT>R)<(<(VZ8 PA[=9B>''(.A(()".B2$U0D]CA%:&,^!,(450VA=AF1=453;UOUh
MU75JSKD<77]MK=ADFXVVVFPCYW;.),7-,+-UW_U&=MOY3K1C?P<^>.'0(1[Dg
MXFDT/L;CD4]>^>69;XV\YZ"7;'*G*'LF@PTVL"###62!F>W&<)@#H< IW],*f
M'5+@* $AD#TJ4*#'"(<%A)3+4&I20=.DA:N^S.@X))L>["(T!IZA0(%%BPJCe
MW+6_&?C/!DBBE_WNYRD0_(\&_L,!#$J%OQB]#035VV$(&A.&,8RA#!(1(0CDHQ\]!LAS"?*6O#0D(A7)R-8$z
M9" %R2-5&"*;B$P$)1C1"$=2\I&$O(&:)#')Q6HXS3'$9"9AP8E.>'(6LZB,y
M+4>IH%*8XA2H2(4J5L&*5J;R37->X9HVP0D(A@(#'.@@!F:I00W@.4.3U7 &x
M+J3!#@78P#6M:'-P**46N>C%!&3-/\@C$'>^AH<7P(%R @&B&^!@F[;YL%!]w
MJ@EUK*,"O&T'=PT"T ?-@QZ,WL<,'(I/"B"(QJ$>)S_[\5A.P1*["?7HI!?*v
MT'$XY"$0B0A@:=HII"1U'S%82#M5%))2(,J"&>0 =?42H12)(RB-GC*5'A4.u
M2(M(AY%2JZ0GI4-*#2'DGOI7QRT$X#Y5-<+55G3JU05#5$U0^%2$>YRNJ?t
M5+!5''7UJW74U/U.]I:!D@X'IZ/H#^U&'SJ8X8!TT,_A^E8"X[0 )*WE@AM$s
M4+3?>54BN;DM6 U8L6UY;%A +-88KY&^FFL.6FH:PPZ"((^-!(A-^@?#L@R21_FC+0\.BV$5"L'q
MUKH6MG.0+6T'R![=YA:S8>TM5I,6W(2A8#K5.8[@ACNW P[MN.!*[G:6VUSQp
M?=);Y9,N5:KK!LA=-[N6PQQWO0M%\(J7O.;-WV;GDK^<%+1E,2"5 ,-8+ A1o
M#@6Z98\)("0&P9UDAWS@@U_:\ 81Y1AB8G !A+Y 9/V 0,@PD,'*? P"#Pn
MEH8SG^(V[+@.1PX-37Y0;:(2MHJ1.+)@9*7<&E;P[^G@C"X-QNY2S(m
M"8.OI>3KYKZ-X"WP8\(3AK"$SK86!"4@@W[94]E)L>=$8UC#:8QJA@S/TLT6l
M=J.>38M:^O:-R^OS,@@@O09$YW>VM3T:,0&)A_"B8+RA0XC*2!>#&)RNO:NLk
M,1UN?.0=TZ''):GRDX4LD";C^*M%^[62Z<#D(H<-RE*V<0#SK6!$4S3!;>2S7&&L(HD'.>^T3EC4+RSD*<%FOBF&PY^!C3Fi
M!$UH0QLGT8L6FXTL:U123YH]E8[NI<=@MTS?4+Hg
MWA'*3HET2*&JSYN3&?0OQO-2DHHW*W(:Q NA>CEYSROI2A 4\8A)W&0GQZ>Qf
MM5*1E%C<*"J]^!T:)XS!96S6LY J+5JR$=Z@Q&5TY'C"-'R]E]]S%C#WV,>/e
M?]>8@[1['959-6;&.BP6QZE?/)-"9^-RNBU+PA0S[6\F^)[.Cd
M 4[-3<97]F86$XLC=^K)=P]"D>Z\U+H[-&['L<@3+^7&/#(Q#PI#UGX12IHc
MQ2?O+$)=B-"SBA:*CV=SY+.N>XN-UY-NC)WKESBL!D-IO,:2?TFL:[+Y['D^UZ'H_5U2GY?7a
MYWF@-UFBIWW 8(_XU(<&%0H0(,B2((Fy
MB$HHN'TJR((N^'TE\19-$ 0DV )E\ 9F\!8S&((V"%S9UV!MHFXVA0)MTC?Ax
M4WE09&WG VK6)3G853EMTE?@1DRA00?>Y@8Y5U[ 52-@((#U' @8 (FH#-CH!XZV#=&B(1.H(1,^!;ZM7IV8QL?B(>"81LI^#I]v
M809C<"(2@864"(1Z0F!PN#S64W5U&(D_DX<\R(?&M7T'*&XH$ *M1XB2* (Du
ML5\SP(5Q=R&A=EJ%Z!@D\1P0 @(DP%[N@6ADL%\F (P1(AH<5SVG\1&-H8R3t
MMG]QEP!UX 8TN 9U-QN"TH!IN(:KEF)@Y'D,AFY5^&9Y"HH7.U8KDYX5;s
M5G%AZ#YA4X8M96;>^![@Z$8IQG]S4&][AF-U8 :&V!*)IHA-V!(!)XW,J$H>r
M%8IA,XITB(.]J(<]Z 0_*#B *(BR>(IF,Y"KYU&/:(>]>(X.P1ZWR'WM=P/QDH%H92^E>(<>:9&JB&E!V((5 8.Gp
M\80U^%0)$R .'F(1+F) JP)1AXY126"P'-E,*o
M!@+ER"SGB%QPEH7@TX[4B&$*%X\?9YAHEYA069&IV)B8YH[5 XNY-(@R.8NUB).XR'ISL(M1V3>_l
MB$0],HP'48R)AHP,:0?-6"S/Z /12)S3>&$>=8W9N(T7)1GYJ(: R8]E)X#Dk
MEI9KF3!M&6%PIHX8Q8X.AX#P.%UWV3YC6(^V88;XN&H)\)=LZ)VW](^E=5IBj
M,) %J0('F9D*B6J:$SL-^9V$N9H$>)BCIR**.92QB9%5^9C?27ZL-YFYZ9'_i
M:08AF0 CZ9FTTHDG.9JE2:(L*8%A4YLQ&9R.49,W"0(YR744R&*=)0,RX$(Xh
M:GP;^$DZ)R \AV;D,H7H=D9LYS-5M$88TW*@A)\@4$=M&$C=XJ3.TG>'AZ,Zg
M*@.,IW1]X:,9%*1E69@-.IYJ5WH1(TM(>B!*:DM0Y*10:B]2JC%46GN_1X$Uf
ME*,Z:E8\Q&)=:B]-12%0A2$:XB&_=3 OV9IF= >YT5A6A0(%d
M2F#5@UH2 JBO*E4J4(!5URR*VAB,^EB/^EB1.J6>^AEW<*EWD*E5%*6XUZG"["')+ *X$P"01 &z
M@1!D0#EE $X0(1$481'9M!$=T4TM^QPP6Q(GD2TUE+,O:TXR01,!E1,[$0,]y
M(0,&!5$,)4\(04]/@4#\E$]9L1% "Q/_1!%%.U!5E@-G$0,'M18Q4!3Q5*,Bx
MQP)((D#" ;1Y!)"7$A@2T2,%-HP18 0),\ 9OD ?:w
M$85ILBMQQ 9UX&0\, =YL!%TD ?9,019H.9J[B,.U^5 ;H!D[B;6Q)S^[*6JR?MA[8_F29Ku
MZ[)M6UJ" ;?OH36*4K>QX;)XJ[>#T;=_&[B#6[AD>;B&H;FQ^[B0(;E(1+NBt
M>[VPR[D$PKW>NQRO>[N=2P:?N[O6:[NQFUJSR[XQ [[HF[O>ZT-FVV(R$"\Ss
MD+8;"#> <0:TQV8R0)O%H@(!; ?B.B6-<0(MX!'RFL +O,!/5F5X8 /2QF8Gr
M$ ?:,I<@&AKL)KMNT#-8YN>UHB(%M08"U?Q1R6 AW+q
M^QR-TP1-0 1$D 59@ 9@U@87X@(@0 5H4+BIV2-24 144 52X 0NT(@.F0 Xp
MF+M?T*$<%[=?D+LH@,5:G**TX^1Q4+\&T,("\!R(,!S4\!S63T(7,@*K,9SX\ 0O+%In
MW 44#&47G,$-S,'N^,%+"&/,EL_$-NO$"J=(FH;,<(\L88VR9YW&IUQ<>NX7*AU- $[0/YO,\"XL\ +04,S4<[G<\Xh
MLAH@H-!.,-0.?<\\;= 23='58]%WG-&"$Z**\]$]$M)O,-(M\@8FK6@&.E_Eg
M8[)J]14M#0K"EQ[+7%]+0)5, >0#!2'L\T, YH"UE=ZZR_3&X!T;GBLY[,K"B3=JR?-JIW0:K/0>MK=[T!@X7&X8UXH"TTKRQQD +/6-+,7D1$Va
MRTT@,1$[*TX^VV(@8N8 <(E0!>(1UB$0-DH18Z4 - L7A-ZRY0:T]3>Q55z
M^P(A?DY$F^)'FU &!0,+-;9ML70TI+^0]#(;^ 1"H 13P!@)$ 9PP#T3;AS?y
M-P=UD&14O@9G<")8'AME8 9L0 =*YN5L,.9D\ :#..6Q\09;+JI*Q@7V9G?@%]'E1C3BU9,>8<8@9N0.CO<2YBGE_VPB%N4 =Mw
M@.AT\!4O:QQ4%2&2+@=H0+F6_AYTX!QC;AB<#@)J\ :&,>97L096CN5P;JA$v
M5MACOCT=0CEC'K>U_AX=6NM7#B&2GE>HCE*;/N8W NQO;B_7>!Z^;AQ50>S&u
MD>IED.QF$UY7 0=UWK)S@ 9CCD0B;AR."R&;HV2O,Q$ZD D@ )*SN0S[4A't
M_KM]<>Y-W@-/'N4S,^95?N7TKN5<;N9?'N;Z7N;&<>9I7N=MSNIQOCW1L>AKs
M/CEX#M9[7ND2GNV ;AR"KN:%?NB=3@>*7NP_Y.B0+NF4WNN8?O&:/NH<\ND(r
M+^IC7NJGWNQAH.KVSNBN_@:PKNQJ#>VVSNWZ" >YSNV[CO!41>LLKU?!;AS#q
M+O0:GS/'O@;0ONQ&S_)K\.Q '^V1 >75;B'8WN>_6>N/FQ[@+D+B3N[FON13p
MX-9VVF(Q)@.*QZTGUWXT@/8Q)LC;'5@ PB.?(0==_ ;::%@81/>@\04Z"%F'o
M)01)0 5'" 6 TO(W(>U0_B)]=%AV8.H4$;=UH/,#"5FN(1Q-4$2(8QQ..0(#n
M X4QC<8LT&,)\'EAX ,]]@-AH ,]MLYQ(7(P8 /$%_L\*L]>2O^VY02:4$[F,7:C44RP!+-PY8=Q6Q\@3S'L:_,#4l
M/\D4S&;21D'M%_LX-&L[A&NW;RD00SGLD0:\SX3'#_R?"#LYWZ&0U1?&__O)k
MK]ETP/SO[7C07\C2;RUL).Z'_1J8]AN UD^-=;_&\/U<'V=)&2HC!\ 8*;.Gj
MW$@"\&,>!0-.M5W3(]A,$7@"1D GQ9TOD(FPRZ,;%!Q'CU$W**(!=0WEF!M&i
M((L$ 2:PR<);#*0",Q $Q HI\ 2D ((K:^UB!)9 K##Y((M'B6U_! /*,1'Ph
M Q);^ZDU+*/6C*W?]=9<@I29 6CO"OHO>6:N/-4>:VQ"JC.\D>%G!F""4Q(.g
MY^M].81O8KEL$!JD7TY&!$RZ-W N*E?T0!-]X0VZ+[3!X=# '20Z5_ N7$'Mf
MEE9RQG0#@]]!#$H^RE<&S];'X]_A"Q(,@@]XM85V7d
MZV0"=%"[ZH4AZ!?Z0AWC"\G+&/ V; L- 8V N386Z 5?*%(8**>/BV!VYc
MT \NXBZ,FF8H"U/::0(!M3#RS3_BA]?L16C@A
DE![1:[)=;\NX24JAJ^2, G)XNJ "&[#+:*%GE0# L@&\BA]v
M948TB^SR1Z8:OI!4"4 %P %U434>F$-:4,X")(2!*^/";(-F5 %)P1.E"74&u
MO#P#%"!>-S%LS BZ@L-$'" \$OX#_EA#S.@:F<1F) .=L<9\1C!L!W-P'SDr
M/N-H?>"61-)A&D=F-(Z)1 YHBU4S,,) '0ASC2..9<<@45,.I'TB%V)@"+?A$P"IK!V'FB2 UCD"GR,VS(><4%)"3ND!E9X2$,o
MDB]G(3$DN7B0VC%'-B 0*2))Y)-$D2H2/8:<%H,%T1Y$V8)\JAIYBREY4I!Cn
M. H8>_$P]L4@\!<#(Y,<1[/A_74:D9D,+RK%#'I_*.8.Q728SF$0\08D'HD>PA@J4I^l
M6P*0Z %!I+57*4^E/LO)4%K)4N=LF"ZOT;2#Q'"&0@-E&LDQ*QK0K, XLT""0>S>RE,GC5.6DS$3)@Z[B%RQ)Y@h
M5LX"DJB(1&?&22U\8N/VR<6$"4BL#CS$=U%E8$#8\@E'*R2J26QE]J:AR<$?g
M[6<:WK1!5KWFUQYDC/"+$A+&LA@[# -;E%]>\6?R@-#@'O M4.:NN+SU: Cf
MA 4L4L)0&6B![ &?.]4_F)8 V2GR;7/,@11!)?*;>V@<%].SM8 SL!@D F!(e
M*:$!#C##(^+9*@8(< %XT[7-%H^Q4T #F]-4E:)'G $P!]F>X6:(*YYA1S(&d
MD/ 5V(#7.'-?0PX$HU5GT=10@3 39D('M0V$<%AVRI%:(3(EP=04=H-5^L)5c
M, QH# #*RS/ G%P#W8M^5XIT8$$J6/8Z2PU@&34 RYG!&RH JPJ#8I&=@=&X H0'a
MFQDN[FB^^,[# 3P19N-@FOC$69B!, VQ-KXT6/0TUY8-R(A 17*Z7,[!C#NZ3V9y
M!=-TH+O*=(7/U#(^S\?^1)_84T6P3VOA/O^( HV>,Y.=M1@;@$-NP$2YC)Y'x
M^J@'[8EO'$,+ !QS@]IT'[]I?SJ-86 /U),]Q,W8D0*-29$D/[7*,/@*\Y0Ww
M:&@I#_0Z"T01P_]9."AA@[1"%%$<8NKQ#YF28FZI2;Zu
M1AU#A9&CS"(\95 I2IVHJ!?5G^83!&!14:-%QP_YP9_DDX9R44QZ/A*;6\0!t
MI&-4N$==^$'20(YBE/*B6WM*TPYH6!H($);LT,)@Iq
MWH$"@"FV&*;),6$<4P88()4I^82D2*1Q--,:]$R?'F)#H-TB3KG%T5$Z;F: $5TU&Y!RE(8R@LAR7VFPA]VB)46WN+,$8XN! J;9K"_0o
M1G<1UTH'>_&5WB*B.LWU1U'W*'M;HRY0#1D'CBHX/*IQ *D:0Z2&C-9HAU Jn
M"E6I>L(M(I2C8P,LX^Y49,#TD3$3P1$BLKY6FQ,3\PH)4M*m
M"KTP"4P!9& 2.*HI! Q.9I@B-M(%Q0,! 05(5'M:97P+<"FIIV:_&%5M^2B%l
M@[=$?Y3N0>RZ\&(;5(,1DQ[M1Z&T#!N0=.*>Y\$/'4JJ+A*J6B:Q:L+0JHV!k
MJ_H K]HA I98?8UEM7N>U06E5@EG6PU$;S6NSE6*:F44'"K;J[/Q=?A5XA58j
M*2=AO9R'+D_@PVB"$$)$/V28%TZ;/$P@,N$FIH=#B"W&MV;$':=.CA;']%JFi
M,,;-DZ80M:)"C=,G&T&Y)H"4N3*1Q,H("D"A!IP.D)E"7Y_^BA=.9Y26"ZNRh
MJ-Y#&8!44:HP4 1@Y5[EJ^4S5+7*0\Q7$!"L1(15J:!UM7# 2Q'06A(-'>L;g
M5J4'[!>KTC>VJ+,*&5UHP!98,E!@Y\"!=0P)=L&&B+ZA.&)/AE!6S$I-;5$'f
M*ST=E1QX&!SB8-I7^0I@=6B$M3<$UL)2V#FPPN2K@F4/\K7!GIER0N&=0P=EK^>V-=R,$-L91(\U1 B/d
M'?F8$@9[+2-9%CFJ2A\;D&*L@;6P:':%A=DB&V8Y['[1KR"VCO0-**O@7%+Uc
M^+*9];^6';QZ9M5LA@6B#-8QD%C\:I9,+(I]#RKVL5A/+2LXN"SU5P9J8*@LKZTJC^6_z
M(M+B$B$22Z#2505(4E5:(?MG04"@91L[5D4)V!_+:M$LM26R&I;3(MDW^V%]y
M *82M3@4F)78@WEHZ4"B%1&3ML&T*B5;&YS%(G6GV[;, ED:VSMM^:UC\+=&5MR*@"3+;IFLW4.W=%:52$\\RQST;.?)KU+EV%Y9N:ILw
M>]6\?;8:(MI^)X)[:?O&FM6TUS;)PEESNZP@[J %(W'*A:W:/FMRJVV;C;6Xv
M0WJ>6DFK9#J!):3-Q-F RQ!F3,C7BTP):4:7%GA;RZB[L+$QPBWWV+7ZO%C5>9s
MJ53'7^UC,6S/?^!:4+E="4+ZC$,WD8#ZS8-Y(^IC4B-!20 +L =K*Q'4!^TAr
MO&. 7>J)HR@UP\92;(JA%RI*Q61I%=L75F2,6I%[42ZD61;#8GC9O:$K1NS6q
M"%>3V.X_%*X:CJW9 8-8,3M+\5VN&M.Y!@7H^C%EIHRCKC2.9&+7%_!\39R9p
MV(ADP=;X!+\;,X><6R0YHY1HYEZNR'N_8N/27KF/++K?5!$ERI>0ZIR3!>>\o
MCGF;^R!&LHD!A8JFM8QL&O?4+^32O?)7:78[C< !$_#M;5SX C'87Z(9(8QFn
M5W0-_)<#^E^( 8"3:NUT"34@5+!0]9I!Z" 9T"UMB.ZE@>#WDK 0&SC!-:PQm
MH!$3O*:6K8L%)2;8OS0&$_Q@CPD441_X!Z<+E8 %KZ' S-EH5TW$.D49H4[OAE.k
M(#ZI,DPSCFO=[2QD>"&2.+UK>'DGA7U'9E4HF1LA#D/?PZLRj
M6IQ!>2?D5:GBJ):AM$;II(I61W6$B(&RP2SF+38B$WY%<%R%KS8&/@^/$!PHi
M((EE%^C@ L) 1,L#1.P/63 CP(I#H(+;@),XBKK3N539/(UC:"WOR>IP8N'Eh
MN-K J"H;NV82EX& TUO0D*="H>UG$:LXN'<7'_$^^B%^3#+%XDK<;"G$)0Y&g
M&7030QI/;"E L2A6+:7X%*?B0 0#\$ K=L523==,8VI\JWK$-<[$&I06RS&^f
M5E]N\1S(Q20-S?%B5/R+M488$,;$&&S\$?R$0I5J>FD9\,P1)X"MF(4K0AV e
MCLC'+/$8-O!:W$!$RT2O2A4[@2\P!)A $)@"8V]N#($O4 2P !40' R9J%6$d
M(. 1$,()" ,0&92T'A,B:B=R17:R[ $'7)_J\0:^@&D5''A5!Y2 @@(C2@#Mc
M,:G[I6*P@.^4,R0Q1?8!%ODG*BZ+P9#90QVYNB,5,TI8HHQHCG)>33:3^"9+b
MY3I E;F75:XB*;76SL6#' ,2,J[Q*"FY@3UD8E*K;#)4OLC,\$)H9([LD4'Ra
MLAW))?DD:PWNI9)/ $O.(R\Y)LL=73([JJY=MLBB5B<[))[LD]DJ4%ZU0KF@z
ML(&B[)4#LK58RDVR*4OCIQR5$0-99@]5^4FA98>$=;7RC]7,G#GCC+5?0YJ_y
MP%@NR]GA+!^(M.S@PC"$:UNP,&A5$W_8,)&O&H8J.FON-E^7@)R#UMZUPVTYx
M#WNMO+"'ET(?MJ[:]\8UYZ[P?5-<^ 4*,09F-BVW>#O1J.Z,D_WLHZDU(S:Vw
M\D\. *6J]QN6Q?(1JB;P_ V:]EEICJ_L8'])1$RA>_3Y#3B_2]AZ/Z\3"+VHv
MRS-8",$0Y4C3->F40\":THK $ 2T *S(' BM#7B-$FF#("4(4 )-H4<@- Z=u
M!,0&5I!;EA=[QB'#&!B(0%,4,P,D#[*%>K8%0s
M=0<.:U%$BH(N;#B!)T $3% 2: (>)09$S:18@ZK % @"1Z (>!090'3*L^RSr
MANGYV8DYHN">X?/;J%[FR_WN9]T5N@*UT@S0^?D!-T;V9:@5=046H!?XP$GT'3G20p
MOKS+@T6# !?=Y.9 57@/R:MG>F@>[:-E7MCHE$UA2#\Z(G:DW7%74]+0(0\To
MZ04-I8U8MZ32_]A*1ZXL?0*V-%CSTFLZ3*LE,FVFT70"4-.2FDV'#3<-I^5Tn
M J#3Y?4!>H8;( 'A1?IMO0F@(S?%(D $/,KG4:0IH 6,EVP-A5 )$1A!?=%>m
MGR71F:\+6/S;I6V #!00U%QO#<=][3G7CDJ[R]A@6HN&:3T\!WF]6$,P'8+Bl
MM:"9 O1:8.-K?=F#F5)!Y]G)(B DIG=?0M,(2J0U4j
M?4@UO::3-UV/1,]@:XB/GEJ%VE9CG#F),!,00^H48*N3.16/CU:VRT9SGM'Di
M@@32L!-8_Q;<.;.5R5@"VIJ=J:HD([O.(4);GEE X> $P%IL@'3.8E)VJ(1Ch
M@\@/5JL,BWN<.*H5XP%$Y#!3+f
M3011((G\"@7BT96!XG$$"(*9Z)23\F=)GL=M:W$,K)X2$74#^2%5M>2B4P/AOS$W1D* JH6U[XH/U2N#R0?! a
MV"6V]52SL0$X\!= 3^5),\&MFYP +<#1"x
M,'7!:(4"9-H+)SH2!>U)E%[I6#'X93LT'%QP>7 0#C9$>)HKX<3DA%]5: QM8"G/P($0E3AL+'%u
M(O-($S ,\9$\"% D8C:\1A#("EZ#"F %[>!5(%U\]B&L5UR#@-?K%&4O%)N*t
MA%$QHJ\%S)"!KT3/7E;+[CC@Q?A^-T+\W5W#-X\H/+D[G(&KVQVN(SUAMF&Zs
M6T-2>N'5B-/\H)@%=G[-^7 VQ\Y_>/NZ='-RXC1F^/5:;4^FFW/N?:-T%)P$r
MA"YD!I0_GFG#_K&U:'9J]TD3!(0YZ4(#^]X<0=I)0 D)?-"-(H%6Z P]]D;%q
MATY['Z4!WE[L-_@FS0>,B2Q%F6N_2M/WCD60[IL+IFE(V!K=#!/GX(K,08)]p
MG"+,UYF[A+^>UY]S<\T)/VXZ+]XA=WUO^CW)Z3>.L,L![@S.QX+1^H@^88@-VWm
M-+Z\[=J<&%0UUP88WQ,'@)QL8A.@1/P[>IXZ@'[_U?V]D/_WS1'@j
M"SS;B(\%?L C>% .-QZ&Z0D2KZ<*2UL)#Z<&;FZP\&97#$>XU,C#E??[L@i
M@<<+YW#"TEN,D'_IS!4B1F<8,)U)14VWSH[]NMZX(\_3NW,X9R=V03H/]0C>h
M8G)G$2;!4PWJ(8_G(#BJ50%1R=]X"\ *D\Q*^P)).Q!M(#<<$#$OO!!\FA\"g
M2* )%($FL!CZ2)I?\U1@,32..Y_G]_P:2\'%XAL;3>?(3TFE'6(;FL,Y<($>f
MD"P*0'D1?BTMN82#/IX?Q@.*"R5L+: "(PZ4O J"_UIYX.F'I2K^I3/5(Ne
MWW=.S0?F+@#KL\L6 (PXD-:#@#0/+*8 K03(?&_+ F7=H?W[6MZ$WC]4K\;0/&W8^UN-Y/<_GA4FVc
M9_,;?->+^T+/Y\E+]5#T I31UU5''Q\@_7.0])0^9UEZ2F\V,GV/V/1KH-.3b
M>,]!:^.8J'_!J![AMWJ%;^H9O@U@^"+\W ?Z6D\&;KT,_/6=1]W;^EZOZX5]a
M&R#V;,#8J^;=+-"4_9%$A"$=F%1@:J?73;K#3+Y%D^6O].7L&6(^DH^^6-X&z
MM+CR:Q&Q>75][-O;G:C7!5&ASI7"^%OJ!=C]MO7@+MW1y
M5QAP 6U"N*O!^&7[9Ox
M";MO[2#0)DL=>=U!\(+$E)OS.0=T7[ 6\C!V /XTA>P1?<( _+6GFSB!(*#Gw
MOP 7>15(0'"<*Y+=AJ0/308:.'GD%W[@>AI,5)CNA[RA^QE\$'#\J@?R2_UBA ,KOu
MIYQV8SX0I[_O](TYX5V>(*WY'];P_,W]_/1#=LKJ]_NCIG#-T\%_E4L_XM?]t
M(&'Q-_['KT6"/RDG_C_$\L\.UU]UNS_GKR*G7PJC*=LO:DD_=S?]GO][SF+:s
MWQCH?Q6!_:6?]B,$_T^W^DCNGW[AG_?[?B< _*]+M$H8Z#]GJ'_\'QB4OV-@r
M_OPAY6L-6]?RV^[+5\/PX3T$=N3:6>##>[CYA#BQ[_SJ+#)Q>M"'#+:NRE=Vq
M%6=#7*;XK35;GNF8O?NJ'S%^ 0X!0QIPZF7 )N+$(U8^M /=p
M1 )T,,[K:@J\!ONS"#'980-P\2#?[P0@?U^0*%DC\QD$P'\&;J*HQG%Z190Qo
MY$3>^0KT$1O)0J *L.)8T1>P)@W(&E,@#1@SP> K /GZ&!2WZ"/-!NB0R &Un
MD%*D5PAW[)3]9^W#"N[PG T>:G>&&E6C:E2->@M%40R6=H^"6.(1*Q_:@6XB 3H8YW4U!5Z#B?KK/^JP+T),l
M=M@ 7#S(]SL!R-\7)$K6R'P& ?"?@9LHJG&<7A%E##F1=[X"?<1&LA"H JPXk
M5O0%K$D#LL842 /&3##X"D"^/@;%+?I(LP$Z)') G4'VG[4/*U"[,]2H&E6Cj
M:M1;*(IBL+1[E%'(V8N$P1JEIW,[1+^TS:2(M@ SVN5!@G$>A% .J[_=;U;Vi
M0I&:@3O[0[!&?S2*7)FEM:)^&EAVBD!=$@&3]$D=:_T R*'0I S6g
M$O))0X= S@;4K:%Z_0ZM!AS.K#$$!H*S8$*^XC&$,K9Q4GJB1TGPH4DX2*]2f
M,_FNNI=;GQ=2;D&'0 Z,"3-"PW%Z190Q9(]BN*#XM!BDV^$QO >IL/_R $->e
M88<4]=/ LE,$ZI((F*1/ZEAK41RG5T090U:WANJ51BBIU/O)/Q) .(VV,>32d
MSK-3_E$1: ]28?_E 8:\P@YI@\'7&K3L%(&Z) (Fy
MZ9,ZUEH4Q^D54<:0U:VA>J412BKU?O*/!!!.HP7C8VH6N\J=\H^*2$.6/J>Gx
M%WD$8@HC==!JBQ"#7P<)#EFS3'Q/U@B*Z5V8=AB/8K@^:;S( 8$;/>O NB0"w
M)NF3.M83#P0H:WX&R T#8A#5.$ZOB#*&?&9HXW+X#M_!".2'+T %H$,;6!^#v
M I ;!L2@*G<*(#<,B"'L?K><(<.A0QM8'QF%"HQD(5 %6'&L"*@K=%.u
M+HI 71(!D_1)'>N)!P*4-3\#Y(8!,8AJ'*=71!E#/C.T<3D8@?SP!:@ =&@#t
MZV-0 '+#@!A4Y4X!Y(8!,2CMG"'#H4,;6!\9A0J,9"%0!5AQK BG;-_LK0P8s
M\T*YH*.'8;!"5O2 UK(#%A)T".1LP%8NA^_P'8I 72)B9T!5#I:Q&7:_VWN9r
MQ^NM;\"']] X7CU;&YOEC,$=GAR ]HJ"AE^"L$)6](#6L@,6$G0(Y&S 5BZ'q
M(E"7B-@94)6#96PJ[?1B=.#/F2PU3V1Z(-?&^(RT4)0^.GFE[/#o
MD)3XV>W%YGW]1,3Z'9+2'_VZR;Z>/\7"#( P.#/)GB@S@U<-!E_'XS_JRNNQn
M""@""J=Q'!J$\.KKWM]TS(^K@X(@"+$% O2A=R/@G07R+C,:*CJWAM^\KY^(m
M6+]#4OJC7S?9U_.G6)@!$ 9G)MD396;PJL'@ZWC\1^'1YG7_MP2\L\#DD/*Ul
M1N3R\2<]^>Z_/!#8D6MGV7]YX.83XI[P$\9O=1:9.#WHBS*B#W[+PD$Q*#AJk
MRS,=LU@@! A9B?92-)& %j
M#%>C_OKXF5$+J9VR_ZQ]6,FY>^)T;H?HE[:9%-$68$:[/$@P5@K^YF+IL(:Ii
M*W(QA#P2%*.5UL#==<0FXL2:$!HVQ]^" D8,"EB(]5$VDH 5,%R-^NOS]NK>h
MJ+\^?F;47A]]D?WYTI_W!-T[G=LA^J5M)D6T!9C1+@\2C)52D,9;%\&\68I^g
MAZS+PB0-=;8;F:X7 3V\'=D9X4 $"()(2TV%')@(,32P'$S:";#J""TU /X>f
MT62((@B8\& $KP:^6.1Re
MLH(#P>^0QO'>YB?BJ8L:OE9%OT/696&2ACK;C4S7BX >WH[LC' @ @1!I*6Fd
M0@Y,A!@:6 XF[018=826&@!_CV@R1!$$3'@P@LJ^6.2Z_>QT3,UB!+__\L#Mc
M;QPBH'"/-*T1N4BM'MM_>>#VL],QY4YG8'[/ONY<&\:,4N$ AU(*a
M,,$N$J-"W$2)%Q^;0T"P#4Z=*,8_DQTVRO0(TO.P0@I4!!U0=Y<#YKK/:[ _z
MQ_#)PB&T0TO#'9ZSP4-MNG0W)!7w
MX!^,7%#CY8A&D8=QI/(*&F /97H$Z7E8(06:DS[]%HT!?%K . B?.0*6#74v
MM(&7%= -14I(;L@K\ ]&+JCQ